Принципы построения малых мобильных роботов - мобильной платформы "Crazy Mouse" и робота-собаки "Робик"
Методы построения аппаратных и программных частей робота-собаки "Робик" для обеспечения гибкости архитектуры. Устройства для обработки сигналов от датчиков мобильной платформы "Crazy Mouse". Организация системы связи с внешней компьютерной системой.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | доклад |
Язык | русский |
Дата добавления | 15.06.2018 |
Размер файла | 406,4 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://allbest.ru
ВИНИТИ РАН
Принципы построения малых мобильных роботов - мобильной платформы «Crazy Mouse» и робота-собаки «Робик»
Добрынин Д.А., к.т.н.,
научный сотрудник,
Москва, Россия
Малые мобильные роботы занимают определенную нишу среди мобильных автономных робототехнических устройств. Подобно своим «большим» собратьям они имеют тот же набор технических устройств на борту:
- управляющий модуль, который является «мозгом» робота. Он обрабатывает сигналы от различных датчиков, принимает решения, реализующие некоторое поведение, и выдает сигналы на исполнительные устройства. В качестве главной управляющей программы используется операционная система, под управлением которой работает программа управления роботом;
- датчики, которые преобразуют информацию о препятствиях вокруг робота, положении робота в пространстве и внешних раздражителях в форму, удобную для обработки управляющим модулем;
- исполнительные механизмы - двигатели, индикаторы и другие «эффекторы»;
- механическая часть - колеса или другие движители, двигатели, редукторы и т.п.;
- системы связи с внешней компьютерной системой - для программирования, оперативного управления, обучения и реализации других функций.
По сравнению с большими системами на все бортовые устройства малых роботов накладываются серьезные ограничения по массе, габаритам и потребляемой мощности. Поэтому технические решения, которые позволяют построить малого робота, отличаются от тех, что используются для создания их «больших» собратьев. Большие роботы часто представляют собой уникальные системы, построенные для определенных целей. Модификация их представляет собой достаточно сложную и дорогую техническую задачу. Для уменьшения стоимости компоненты малых роботов должны представлять собой некий «конструктор», части которого легко собираются в системы разной степени сложности, имеют единый интерфейс и допускают простую замену компонент без переделки всей системы.
На базе кружка технического детского творчества «Родник» были разработаны два мобильных робота - мобильная платформа «Crazy Mouse» и робот-собака «Робик». Несмотря на большие внешние различия эти два робота построены по одним принципам, что позволяет говорить об их близком «родстве».
Робот «Crazy Mouse» состоит из несущей платформы, на которой установлено два двигателя с редукторами. Каждый двигатель управляет отдельным колесом. Для свободного движения с поворотами платформа имеет третье колесо, которое свободно двигается. Максимальная скорость движения составляет порядка 30 см в секунду. Конструкция представляет собой две платы соединенные между собой стойкам. На нижней плате крепятся двигатели с редукторами, свободное колесо, датчики определения полосы и датчики столкновения. На верхней плате расположен главный контроллер, со встроенной операционной системой Robos 1.1, коммутационная плата, контроллер двигателей, блок питания, аккумулятор и датчик определения препятствий.
Робот «Crazy Mouse» создавался в целях отработки электронной «начинки» малых мобильных роботов. Он позволяет обнаруживать препятствия на расстоянии от 5 до 50 см, обнаруживает контрастную полосу. Возможна установка дополнительных датчиков, например, оптических для обнаружения источников света. На этом роботе можно изучать алгоритмы управления движением, движение с объездом препятствий, движение по полосе и др.
компьютерный мобильный программный робик
Робот-собака «Робик» состоит из коробки, на которой крепится привод передних колёс и редукторы приводов задних колес. Сверху к коробке прикреплён привод головы, внутри коробки располагаются аккумулятор, управляющий контроллер, контроллер двигателей, контроллер привода передних колес и головы, усилитель звуковой частоты и хвост. Голова робота-собаки может вращаться на 360 градусов. В ней установлены глаза и детектор дальнего действия. «Робик» умеет произносить фразы, записанные во Flash памяти управляющего контроллера.
На поворотном кронштейне передних колес устанавливаются датчик определения препятствий ближнего действия и детектор полосы.
«Робик» имеет более сложную механику, чем мобильная платформа, и большее количество исполнительных механизмов. Управляющий контроллер и датчики идентичны тем, что установлены на роботе «Crazy Mouse». Таким образом, различны только контроллеры приводов и механическая часть этих двух роботов.
Бортовые системы управления больших роботов обычно строятся на стандартных компьютерных компонентах - обычных компьютеров, ноутбуков или промышленных контроллеров. Для малых роботов такой подход не применим в силу ограниченных габаритов и снижения стоимости, поэтому для них необходимо разрабатывать малогабаритные контроллеры на основе широко распространенных микроконтроллеров. При этом остро встает проблема с операционной системой, поскольку для стандартных компьютеров существует множество готовых операционных систем, начиная от DOS, и заканчивая Windows и Linux, а для микроконтроллеров только микроядра операционных систем, обладающие ограниченными возможностями.
Управляющий контроллер, на котором построены описываемые роботы, реализован на микроконтроллере ATMega128 фирмы Atmel и имеет встроенную операционную систему, представляющую собой законченную ФОРТ-систему. Контроллер имеет 128К памяти программ и дополнительно 128К ОЗУ, разбитого на две части. Для сохранения образов операционной системы и хранения звуков дополнительно используется DataFlash объемом 1 Мбайт. Для программирования и оперативного управления роботом может подключаться к компьютеру по USB интерфейсу. Управление идет в режиме терминала, то есть пользователь при помощи простой терминальной программы вводит команды, а ФОРТ-система их выполняет. Загрузка программы внутрь контролера происходит в виде текста - контролер сам компилирует программу, а потом её при необходимости исполняет.
Использование языка ФОРТ в качестве операционной системы для мобильного робота дает следующие преимущества:
- компактность кода (общий размер ядра ФОРТа составляет порядка 16 КБайт), ОЗУ 64 Кбайт хватает для достаточно серьезных приложений;
- высокое быстродействие (всего лишь в 2-раза медленнее, чем программа, написанная полностью на ассемблере, в десятки раз быстрее Бейсика);
- язык высокого уровня - программа на ФОРТе понятна и легко изменяется;
- интерактивный язык - для управления устройствами робота (двигателями, датчиками) в реальном времени можно использовать простой текстовый терминал;
- компиляция в системе - не требуются сложные компиляторы. Программа на ФОРТе в виде текста загружается в контроллер, компилируется им самим и сохраняется в ОЗУ. Содержимое ОЗУ можно записать во Flash память для последующей быстрой загрузки;
- высокая скорость отладки - терминальный режим позволяет исполнить части кода непосредственно, при этом мгновенно проявляется эффект - идет управление оборудованием в реальном времени и ошибки находятся на ранней стадии написания программы.
При сопряжении управляющего контроллера с исполнительными механизмами и их контроллерами встает проблема создания «хорошего» системного интерфейса. В отличие от больших систем, где существуют скоростные параллельные интерфейсы, использование интерфейсов параллельного типа в малых роботах приводит к большому количеству межмодульных соединений, что сильно усложняет конструкцию. Обойтись простым интерфейсом с подачей сигналов прямо на выводы микроконтроллера тоже нельзя, поскольку при большом количестве датчиков и исполнительных устройств просто не хватит выводов микроконтроллера. Целесообразным является использование простого последовательного интерфейса, желательно синхронного типа, чтобы снизить точность поддержания частоты при передаче сигналов и повысить скорость обмена. При построении программного интерфейса необходимо обеспечить «сокрытие» структуры исполнительного контроллера от управляющего, чтобы сделать однородное управление всей системой.
Все датчики и контроллеры описываемых роботов подключаются к управляющему контроллеру по системному последовательному интерфейсу. Интерфейс построен на основе аппаратного SPI интерфейса, и позволяет обмениваться информацией с 32 ведомыми устройствами. Для управляющего контроллера ведомое устройство представляется набором виртуальных регистров, которые можно читать и записывать. Таким образом, для управляющего контроллера все внешние устройства представляют собой набор регистров с одинаковыми правилами чтения и записи. Скорости обмена по системному интерфейсу хватает для обработки датчиков в реальном времени.
Датчики, используемые в роботах, построены на собственных микроконтроллерах и являются в некотором смысле «умными». Например, датчик определения препятствия позволяет определить не только наличие препятствия перед роботом, но и зону (слева, прямо или справа) его нахождения, а также определить дальность с точностью до сантиметра. Датчик полосы измеряет уровни яркости на 4-х фотодатчиках и позволяет калибровать порог «светло»-«темно» чисто программными средствами. Таким образом, датчики производят предварительную обработку информации, значительно разгружая управляющий контроллер.
Построенные мобильные роботы являются модульными системами, что позволяет, во-первых, упростить всю систему в целом, во-вторых, обеспечить гибкость архитектуры, и в-третьих, уменьшить стоимость и сроки разработок новых систем за счет унификации компонентов.
Список литературы
1. Leo Brodie Thinking FORTH A Language and Philosophy for Solving Problems//Englewood Cliffs, N.J., Prentice-Hall, Inc., 1984
2. М.Келли, Н.Спайс Язык программирования Форт: Пер. с англ.- М. Радио и связь, 1993 - 320с.
3. Современные микроконтроллеры: Архитектура, средства проектирования, примеры применения, ресурсы сети Интернет. Под ред. Коршуна И.В.; Составление, пер. с англ. и литературная обработка Горбунова Б.Б.-М: Издательство «Аким», 1998 - 272с.
4. http://www.atmel.com - сайт корпорации Atmel.
Аннотация
Принципы построения малых мобильных роботов - мобильной платформы «Crazy Mouse» и робота-собаки «Робик». Добрынин Д.А., к.т.н., научный сотрудник ВИНИТИ РАН, Москва, Россия, dobr@viniti.ru
В докладе описываются принципы построения малых мобильных роботов, требования к их структуре, обосновывается необходимость модульного построения аппаратных и программных частей роботов для обеспечения гибкости архитектуры, уменьшения стоимости и сроков разработок новых систем за счет унификации компонентов.
Annotation
The designing principles of small mobile robots - mobile platform “Crazy Mouse” and robot-dog “Robik”. Dobrynin D.A., p.h.p., VINITI RAN, Mocsow, Russia
In paper describes the designing principles of small mobile robots, demands to there structure, bases necessity of module construction of hard and soft parts of robots for guaranteeing architecture flexibility, reducing cost and designing periods of new system by means of component unification.
Размещено на Allbest.ru
Подобные документы
Классификация колесных наземных мобильных роботов. Обзор приводов мобильных платформ. Особенности стабилизации скорости мобильной платформы Rover 5 с дифференциальным приводом. Разработка алгоритмов управления на основе микроконтроллера Arduino.
курсовая работа [1,3 M], добавлен 04.05.2017Классификация мобильных роботов по сферам применения. Структура мобильного робототехнического комплекса. Беспилотный военный автомобиль Guardium. Датчики робототехнических систем. Интерфейс для датчика оптокоммутатора. Открытый интерфейс iRobot Create.
дипломная работа [4,2 M], добавлен 05.08.2010Понятие и типы мобильной системы связи. Особенности построения и функционирования. Система обеспечения защиты информации. Понятие и классификация угроз. Виды представления информации и возможные каналы ее утечки. Сценарии несанкционированного доступа.
курсовая работа [278,1 K], добавлен 23.11.2013Отличительные черты смартфонов и коммуникаторов от обычных мобильных телефонов, их дополнительные возможности. Назначение и конфигурация платформы J2ME, ее функции. Порядок проектирования приложения для мобильного телефона на основе платформы J2ME.
дипломная работа [3,6 M], добавлен 05.09.2009Проектирование и реализация мобильной версии приложения учета и движения товаров на базе платформы Android и языка программирования Java. Создание таблиц базы данных. Взаимодействие объектов и экранные формы. Способы идентификации классов анализа.
дипломная работа [1,8 M], добавлен 01.09.2016Информационно-измерительные системы мобильных роботов. Системы технического зрения; дескриптивный подход к обработке, анализу и распознаванию изображений. Разработка программного обеспечения для создания СТЗ мобильного робота для ориентации в комнате.
дипломная работа [5,5 M], добавлен 10.05.2014Програми лінійної та розгалуженої структури. Програмна реалізація функцій для роботи з датою та часом. Робота з візуальними компонентами керування. Створення інтерфейсу користувача стандартними подіями. Глобальні ідентифікатори Screen, Mouse, Application.
отчет по практике [1,3 M], добавлен 24.02.2015Анализ техники ходьбы по количеству точек опоры шагающих роботов. Обзор существующих конструкций. Функциональная схема устройства. Выбор электронных компонентов. Трёхмерная модель робота и его модулей. Исследование цифровой системы на устойчивость.
дипломная работа [3,2 M], добавлен 04.08.2014Область применения промышленных роботов. Тенденция увеличения парка промышленных роботов в современном производстве. Компоненты промышленных роботов, принципы их работы и построения. Датчики, применяемые для сбора информации в промышленных роботах.
курсовая работа [1,1 M], добавлен 06.04.2012Анализ популярности мобильных операционных систем в мире и России. Разработка структурно-функциональной модели. Реализация серверной и клиентской частей программы. Алгоритм поиска события в мобильном приложении. Тестирование программного обеспечения.
дипломная работа [748,3 K], добавлен 10.07.2017