Автономный робот. Автономный робот с авто навигацией на Arduino. Управление по Bluetooth

Чтобы наработать опыт в работе с платой Arduino, так сказать в качестве учебного опыта и просто для интереса был создан этот проект. Целью проекта было создать автомобиль, который может автономно перемещаться, объезжая различные препятствия и не сталкиваясь с ними.

Шаг 1: Список компонентов и стоимость проекта

1. Игрушечная Машинка с радиоуправлением (radio controlled).

Стоит эта штука около 20 баксов, если у вас есть возможность потратить больше, то можете использовать и получше.

2. Arduino Uno микроконтроллер - 25 долларов

3. Motor shield для контроля электромоторов - 20 долларов

4. GPS для навигации. Adafruit Ultimate GPS Shield - 50 долларов

5. Магнитометр в качестве компаса для навигации. Adafruit HMC5883 Magnetometer - 10 долларов

6. Ультразвуковой датчик расстояния, чтобы избегать препятствия. HC-SR04 - 6 долларов

7. ЖК-дисплей для отображения состояния транспортного средства и информации. LCD Display Blue 1602 IIC, I2C TWI - 6 долларов (можете использовать другой)

8. Инфракрасный датчик и пульт.

9. Arduino sketch (программа C++).

10. Тонкая древесная плита в качестве монтажной платформы.

11. Макетные платы. Одна длинная и узкая, а другая маленькая, чтобы отдельно установить на ней магнитометр подальше от других элементов.

12. Перемычки.

13. Набор для монтажа ультразвукового датчика - 12 долларов

14. Паяльник и припой.

Итак, в общем на всё ушло около 150 долларов, это при условии, если закупать все эти компоненты, поскольку возможно у вас уже что то имеется из этого.

Шаг 2: Шасси и монтаж платформы

Радиоуправление изъяли из ненужной игрушки, которая стоила 15 баксов.

Машинка здесь с двумя двигателями. С помощью одного движка пультом контролируется скорость движения робота, а с помощью другого контролируется рулевое управления.

Использовалась тонкая доска в качестве монтажной поверхности, на которой были прикреплены макетные платы, Arduino, ЖК и т.д. Батарейки размещены под доской и провода пропущены через просверленные отверстия.

Шаг 3: Программа

Arduino управляется через программу С ++.

Исходный код

RC_Car_Test_2014_07_20_001.ino

Шаг 4: ЖК-дисплей

Во время работы экран отображает следующую информацию:

Ряд 1:

1. TH - Задача, курс к текущей маршрутной точки

2. CH - Текущее направление робота

Ряд 2:

3. Err - Направление по компасу, показывает в каком направлении движется робот (влево или вправо)

4. Dist - Фокусное расстояние (в метрах) до текущей маршрутной точки

Ряд 3:

5. SNR - Sonar расстояние, то есть расстояние до любых объектов в передней части робота

6. Spd - Скорость робота

Ряд 4:

7. Mem - Память (в байтах). В памяти Arduino имеется 2 КБ

8. WPT n OF x - Показывает, где робот находится в списке маршрутных точек

Шаг 5: Избежать столкновения с объектами

Чтобы робот избегал препятствий, здесь использовался ультразвуковой датчик » Ping». Было решено совместить его с библиотекой Arduino NewPing, поскольку она лучше, чем простая PIng библиотека.

Библиотека была взята отсюда: https://github.com/fmbfla/Arduino/tree/master/NewPing

Датчик был установлен на бампере робота.

Когда речь заходит о строительных роботах и 3D печати домов, большинство людей представляет высокотехнологичный механизм под управлением человека. Таким роботам, как минимум, нужен один оператор и помощники - люди, которые будут их обслуживать. Инженеры из Массачусетского технологического института решили заглянуть в будущее и разработали прототип автономного робота-строителя.

Робот представляет собой самоходное шасси. В передней части «строителя» находится «рука» - умный многофункциональный манипулятор.

За «рукой» с компьютеризированным механизмом управления размещается платформа со строительными материалами.

На данный момент для отработки концепции робот возит за собой ёмкости с ППУ (пенополиуретаном) и пенобетоном, из которого он строит купольный дом по технологии несъёмной опалубки. Сначала возводится внешняя и внутренняя ППУ-стена, а промежуток затем заполняется пенобетоном.

На возведение купола диаметром 15 метров робот тратит около 10-14 часов.

При этом робот не нуждается в управлении человеком и сам, сориентировавшись на местности по меткам, принимает решение, как ему возводить сооружение.

Если раствор заканчивается, робот уезжает на базу для дозаправки, после чего продолжает строительство дома.

По словам разработчиков, выбор материалов и методики возведения обусловлен тем, что так проще «научить» робота строить и внести соответствующие корректировки в программное обеспечение.

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

Для работы с разными строительными растворами предусмотрен набор насадок-распылителей.

Кроме этого, по мере совершенствования робота научат работать с арматурой, сварочным аппаратом.

И экскаваторным ковшом.

По замыслу инженеров, со временем на базе прототипа получится создать полностью автономного робота.

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

«Denning Mobile Robot Company» — первая бостонская компания, которая предлагала готовых автономных роботов, которых в дальнейшем покупали, в основном, исследователями. Среди других компаний, выполняющих заказы робототехников на производство готовых роботов, были «RWI Inc.» Гринелла Мура (создавшая робота В-21), американская компания «Nomadic Technologies» Джеймса Слэйтера (разработавшая машину «XR4000») и швейцарская компания «K-Team» Франческо Мондэйды, (на основе ее разработок был создан подвижный робот «Khepera») ставшие пионерами данной отрасли. Однако, из-за высокой цены этих машин возможность их приобретения появляется лишь у некоторых аспирантов и военных исследователей. В конечном счете, в 1995 году была представлена совместная разработка «RWI» и «ActivMedia Robotics», получившая название «Pioneer». Именно благодаря появлению этого робота и его приемлемой цене произошел серьезный прорыв в области мобильной робототехники, речь о которой пойдет в данной .

источник изображения: «Фотобанк Лори»

История

По состоянию на 1999 году компания «Denning» уже не существует. В 1998 году «RWI» объединилась с «ISRobotics», в результате чего появилась компания «iRobot». Изначально она была более известна за счет своей серии дистанционно управляемых роботов «PackBot» , но позднее она сместила свои акценты с автономных исследовательских роботов на рынок военных исследований. Также рынок был покинут компанией «Nomadic Technologies». Компании «MobileRobots Inc.» и «K-Team» продолжают поддерживать сообщество исследователей.

В 2003 году Управление перспективных исследований и разработок при Министерстве обороны США заключило контракт с компанией «Segway» на преобразование пятнадцати Сегвеев в портативные роботизированные платформы. Сигвэи и необходимые запчасти были доставлены управлению в апреле. В июне Управление начало сотрудничество с Тихоокеанским центром космических и военно-морских систем для поставки запчастей правительственных и научных исследовательских организаций.

Аппаратура для автономной навигации

Работа в помещении

В течение 1990-2000-х годов исследовательские роботы совершенствовались для автономной работы в помещении. Роботы, созданные на основе исследований, включают в себя сенсорную систему, мобильность и необходимые вычислительные мощности. Среди подобных проектов – «Pioneer», «PatrolBot», «PowerBot», «PeopleBot». Эти платформы способны создавать планы зданий и использовать такие нестандартные методы навигации, как SLAM, вариации метода Монте-Карло/локализации Маркова, модифицированного величинно-итерированного поиска без каких-либо двухмерных дальномеров. Подобный метод создает карту рабочего пространства для робота, которую может прочитать человек, управляющий роботом во время движения. Американская компания «Evolution Robotics» предлагают программы для работы совмещенной камеры по VSLAM-методу, который заменяет дальномер сопоставлением с визуальным образцом, но недостаток этой системы — в том, что эта система не способна создавать удобочитаемую для человека карту. Другие группы заняты созданием VSLAM-системой с использованием стереокамеры, так как она обеспечивает данные для дальномеров, что позволяет роботом создать карту и двигаться по ней. Разработка компании «K-Team» под названием «Khepera», платформы на основе сегвеев и другие исследовательские роботы могут связываться с внешними вычислительными ресурсами для использования подобных программ.

Точность системы зависит от точности датчиков, зернистости изображений и скорости вычислений. Лазер дальномера может обеспечивать точность с погрешностью в ±1 см, в то время как цифровая стереокамера ограничена в своей точности до 0,25 пикселя, что делает ее радиус действия ограниченным. Визуальные системы требуют больших вычислительных ресурсов, чем простые дальномеры типа лазерных, но могут использовать цифровой сигнальный процессор, встроенный в камеру. Уступки по цене в пользу точности привело к появлению более дешевых визуальных систем для роботов потребительского класса, в то время как коммерческие, промышленные роботы и транспортные средства с автоматическим управлением часто имеют системы лазерной дальнометрии.

Работа на открытом пространстве

На открытом воздухе автономный исследовательский робот определяется местонахождением посредством GPS-систем. Однако, сигналы спутников часто могут рассеиваться из-за помех. Исключением являются роботы, использующие счисление координат и отслеживание движения по инерции. Счисление координат зависит от соответствующего движения колес и может подвергаться накапливающимся проблемам с буксованием. Отслеживание движения по инерции использует скоростные гироскопы и акселерометры для измерения движения. Точность зависит от калибровки и качества датчиков. Системы «The Segway RMP 400» и «Seekur» являются примерами платформ, разработанных специально для подобных исследований. Большинство других подобных роботов являются лишь имитациями существующих моделей.

В ограниченных открытых пространствах такие роботы, как «John Deere Gator», часто окружены радиомаяками и используют простую триангуляцию из трех и более маяков для определения местоположения и навигации. Также маяки используются на фабриках более старыми транспортными средствами с автоматическим управлением.

Программирование

Большая часть программ для автономных исследовательских роботов являются открытым или свободным ПО, среди которых – операционная система ROS, набор инструментов «Carmen» от Университета Карнеги-Меллон , «Player/Stage/Gazebo», разработанная Университетом Южной Каролины, и API от компании «MobileRobots Inc.». Набор для разработки программ «URBI», относимый к свободному программному обеспечению, используется во многих университетах.

Среди коммерческих программ присутствует «Webots», разработанная в 1998 году и используемая по лицензии более чем в 500 университетах. Она работает на ОС «Linux», «Windows» и «Mac OS X». В июне 2006 года «Microsoft Research» предложила бесплатные бета-версии наборов для разработки программ «Robotics Studio» для ОС «Windows XP».

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

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

Вот подборка из 10 наиболее перспективных роботов для сельского хозяйства.

1. Adigo Field Flux Robot — специалист по азоту

Азотные удобрения выделяют N2O, который негативно влияет на экологию и может повредить растения: пожелтение листьев, разрушение мембраны или замедление роста. В первую очередь, чтобы предотвратить негативное воздействие закиси азота на растения нужно определить количество N2О на поле. В среднем такой тест занимает 27 часов , но компания Adigo разработала робота, который может это сделать за час. Внешне аппарат напоминает коромысло, он опускает алюминиевые блоки на землю и проводит анализ почвы.

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

2. Ecorobotix — теннисный стол, который борется с сорняками

Робот Ladybird или "Божья коровка" был спроектирован и построен специально для овощной промышленности. Его используют для наблюдения за фермой и составления технологических карт. На нем установлен целый ряд датчиков и солнечных панелей, которые позволяют роботу следить за ростом растений и появлением вредителей круглосуточно. Тесты показали, что робот может работать три дня без подзарядки. У "Божьей коровки" также есть механическая рука, которая позволяет удалять с поля сорняки.

4. Rosphere — колобок, который найдет больные растения

Робот-колобок Rosphere. Источник:

Исследователи из Мадридского университета создали сферического робота для сбора информации о состоянии почвы и посевов. Принцип передвижения робота напоминает зорб или прогулочный шар — внутри Rosphere находится маятниковый механизм, способный двигаться в двух независимых направлениях по команде электронной системы управления. Конструкция позволяет роботу не только катиться по прямой, но и совершать повороты. Робот-колобок оснащен GPS-трекером и целым рядом датчиков, благодаря которым он собирает информацию о здоровье посевов, составе почвы, ее температуре и влажности. Затем он передает эту информацию на компьютер фермера с помощью Wi-fi.

Еще один робот Дэвида Доурхаута. Aquarius способен перевозить 114 литров воды и используется для полива тепличных растений. Робот работает в двух режимах: фиксированный и пропорциональный. В первом случае, аграрий сам устанавливает нужную дозу для полива растений и потом уже аппарат работает по заданным настройкам. Второй вариант — робот с помощью сенсоров анализирует сколько воды нужно каждому растению и сам решает вопрос дозировки.

Помимо полива растений Aquarius может также открывать двери и перемещаться между комнатами — это весьма удобно, если растения находятся в разных помещениях.

8. Vitirover — робот, который не любит сорняки на виноградниках

Робот-виноградарь Vitirover.

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

Материалы:
- Ультразвуковые датчики 2 шт (4 шт для модернизации в дальнейшем)
- Сервоприводы 4 шт
- Arduino (автор использует модель Uno)
- Макетная плата
- Провода
- Аккумуляторы 9,6В 2 шт
- Батарея 9В
- Колёса 4 шт
- Изолента
- Гайки, болты и т.д.

Шаг первый. Механическая часть.
В первую очередь роботу требуется прочное шасси. В статье имеются фото робота, но какое шасси использовать и как его делать не имеет значения. Автор делал три разных варианта робота. В статье рассмотрены только два варианта, так как третий был не особо удачным. Первый вариант робота имел форму, напоминающую грузовик. Он имел большой размер, но имел довольно малую скорость и плохо разворачивался. Кроме того, большого робота не очень удобно использовать. Второй вариант сделан более продумано, он получился намного меньше и компактнее.
Сначала на шасси ставят сервоприводы, таким образом, чтоб на их валы была возможность надеть колёса. Автор использует четыре колеса. Если взять мощные сервоприводы, тогда вообще можно использовать два колеса. Но шасси при этом нужно устроить так чтобы хватило места для аккумуляторов, печатной платы и Arduino.

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

Далее, устанавливается батарейный отсек. Автор взял зарядное устройство Vex, и модифицировал его для питания двигателей, а не зарядки батарей. Теперь берётся плата, с неё отпаиваются провода «плюс» и GND, которые пойдут в разъём для зарядки батарей. Потом чёрные провода от двух батарей припаивают к проводу зарядки GND, а красные провода от батарей к положительному проводу зарядного устройства. Затем эти провода подключают к плате. После этого автор делает крепления для установки датчиков ультразвука на передней части робота. Если понадобится добавить дополнительные датчики потребуется удлинить крепление.

Шаг второй. Электронная часть.
Для этого шага больший знаний в электронике не потребуется. Аккумуляторы 9,6В соединяются параллельно, если же используется батарейный отсек от зарядного устройства, то ничего делать не потребуется, так как это уже сделано. Далее, согласно схеме, расположенной ниже, подключаются все компоненты. Следует учесть что в зависимости от длины шасси требуется подбирать провода, или же удлинять их, так как они могут недоставать до платы. Один сигнальный провод используют для первого и второго сервоприводов, а для третьего и четвёртого другой. Сделано это для синхронной работы первого и второго сервоприводов, потому что они расположены на одной стороне, то же самое касается третьего и четвёртого сервоприводов.

Для добавления дополнительных датчиков или сервоприводов всё делается по тому же принципу - к Arduino подключается сигнальный провод, GND к чёрному, а питание 5В к красному проводу. Следует помнить что GND от двигателей обязан быть подключён к GND батареи и Arduino.

Шаг третий. Программная часть.
Для написания кода автор использовал Processing. Для навигации используется двумерный массив (arraything), в него вводятся значения 0 или 1. Если ввести 1 это будет обозначать объект, значит, робот будет ездить только по 0. Код можно скачать ниже.

Понравилось? Лайкни нас на Facebook