Категория:Open Robotics

Материал из roboforum.ru Wiki

Перейти к: навигация, поиск
Концепция
проекта
Электронные модули
и документация к ним
Общая
документация
Общие
файлы
Примеры
проектов
Где купить OR-WRT прошивка
Новое!
OR-4WD-Rover
платформа Новое!
Форум



Содержание

Цель проекта

Основная цель проекта Open Robotics — обеспечить по разумным ценам всех желающих конструктором, состоящим из набора взаимно совместимых (в том числе по разъёмам и типоразмерам) электронных модулей с объявленными открытыми интерфейсами и готовыми прошивками. Ассортимент модулей позволит решать большинство типовых задач любительской и спортивной робототехники. Такой подход поможет значительно сократить затраты времени на разработку роботов и обеспечит всех общей платформой. А это значит, что не только появится возможность создавать программные решения которые могут быть без труда применены на практике всеми обладателями такой же платформы, но и все начинающие смогут в кратчайшие сроки догнать своих опытных товарищей и вместе с ними двигаться дальше, не занимаясь месяцами созданием своей платформы, на завершении строительства которой у большинства силы и заканчиваются.

Кроме того для большинства людей приходящих в робототехнику необходимость сразу изучать программирование микроконтроллеров становится достаточно серьёзной проблемой, которая уже на первом этапе может их остановить. Чтобы избежать этого мы в обязательном порядке создаём готовые прошивки для наших модулей, позволяющие использовать их, управляя всеми основными функциями с персонального компьютера по радиоканалу или через проводной интерфейс.

Текущее состояние и ближайшие планы

В ходе проекта (за прошедшие 2 года с момента запуска проекта) разработано и запущено в продажу 12 видов модулей, в состоянии проектирования, закупки компонент, сборки прототипов и тестирования находится еще 5 видов различных модулей.

Перспективы проекта

В ближайшем будущем (в рамках 2011 года) планируется:

  1. Обеспечить компоненты для сборки шагающих роботов, манипулятора и поворотной платформы для камеры\датчиков;
  2. Создание библиотек для решения различных задач на ПК (техническое зрение через радиокамеру, навигация, построение карт помещений, управление манипуляторами, шагающими роботами и т. п.);
  3. Создание драйверов устройств для модулей Open Robotics под платформы MS Robotics Studio и Player/Stage/Gazebo;
  4. Продолжить написание в вики набора статей по типовым проектам, построенным на модулях Open Robotics;

В чем отличия этого проекта от других

На самом деле принципиальных отличий с одной стороны не очень много, но с другой стороны в этом проекте мы постарались собрать большое количество мелочей, повышающих удобство использования модулей, которые, как мы считаем, обеспечат переход из количества в качество и сделают работу с модулями по сложности не многим более тяжелой, чем сборка машинок из детского конструктора, но при этом останется огромный простор по дальнейшему развитию системы.

Вот лишь некоторые отличия нашего проекта от других (разумеется некоторые свойства есть в других проектах, но нам не удалось найти готовое решение, включающее в себя значительную часть этих свойств, хотя возможно к моменту прочтения вами этих строк такие конкурирующие решения могут уже начать появляться):

  • Прошивки модулей архитектуры ORFA, позволяющие собирать роботов управляемых с ПК/КПК без программирования микроконтроллеров. (Это опциональное отличие, может использоваться, а может нет, хотя мы надеемся, что именно этот вариант будет наиболее часто используемым начинающими).
  • Использование логических уровней 3.3В — это позволяет нам использовать высокопроизводительные контроллеры, экранчики от сотовых, акселерометры, карты памяти и прочую электронику подключая их напрямую к выводам МК без всяких конвертеров уровней, а значит наши модули будут проще и дешевле как в опытном производстве, так и в массовом изготовлении;
  • Использование стандартизированных разъемов, — RoboBus, RoboGPIO, RoboMD2, RoboI2C, RoboServo позволяющих быстро соединять соответствующие типы устройств в электронно-вычислительную сеть робота и решать почти любые задачи просто компонуя уже готовые устройства, не используя паяльник, макетные платы и т. п. (подробнее о стандартах на разъемы см. ниже).
  • Стандартизованные типоразмеры плат и правила расстановки разъемов. При их соблюдении модули можно собирать в «бутерброд», что значительно упрощает размещение их в компактных роботах и соединение между собой шинами данных.
  • Поддержка на русском языке — тут наверное не нужно объяснять чем это хорошо, впрочем значительному кругу лиц всё равно на каком языке читать документацию.



Основные достижения проекта

Разработана архитектура построения прошивок модулей Open Robotics Firmware Architecture (ORFA), позволяющая быстро создавать как Master, так и Slave устройства на шину i2c, управлять всем оборудованием робота через стандартный UART по унифицированному протоколу, быстро добавлять новые типы поддерживаемых контроллерами устройств не затрагивая уже имеющиеся и т. д.


В ходе реализации проекта (хотя не всегда в рамках именно этого проекта) были утверждены стандарты на разъемы, питание и уровни сигналов:

  • RoboBus — стандарт на шину межмодульного взаимодействия мобильных роботов (шина из 14 линий, включающая питание +3.3В и +5.0В и интерфейсы UART, I2C, SPI + линию RESET и 3 линии общего назначения);
  • RoboMD2 — стандарт на разъем подключения драйвера двух двигателей к контроллеру (шина из 12 линий, включающая питание от баттареи, сигналы направления и ШИМ для каждого двигателя + выходы с датчиков тока и перегрузки двигателей);
  • RoboGPIO — стандарт на разъем для подключения устройство общего назначения (разъем из 4 контактов, включающий питание +5.0В, опционально 3.3В / неочищенное входящее питания и одна сигнальная линия от МК);
  • RoboI2C — стандарт на урезанную шину межмодульного взаимодействия мобильных роботов (шина из 4 линий, включающая питание +5.0В и интерфейс I2C);


Для удобства компоновки зафиксирован стандарт физических размеров печатных плат модулей проекта, позволяющий удобно компоновать такие платы одну над другой на стойках и использовать их в роботах габаритами от 10х10 см.

Варианты использования модулей (кроме ORduino)

Вариант 1: Мобильный робот с радиоканалом до ПК

Вариант 2: Мобильный робот с ноутбуком на борту