Robot Car

Решил тоже сделать своего робота. Мне больше интересен сам процесс, чем уже готовое решение, так как когда создаешь что-нибудь, изучаешь многое интересное прокачиваешь себя))
Робот представляет собой платформу которая может управляться с пульта, и ли компьютера (пока слишком тупая, чтобы принимать решения самостоятельно но я над этим работаю)

Железо
Итак, с чего же состоит мой робот:
1. Платформа с 4 независимыми моторами и редукторами, машинка с радиоуправлением стоит дороже, и не сильно ее можно переделать:

2.Драйверы двигателей — нужны чтобы управлять направлением и скоростью движения.

3.Для питания использовал два Step-Down преобразователя, выходное напряжение можно настраивать.

4.мозг робота:

www.synapse-wireless.com/SM700_rf_engine — радиомодуль на ARM7, с зашитым интерпретатором языка python (к сожалению). Модуль хорош тем что можно не использовать микроконтроллер, можно загружать Python скрипты (обрезанная версия python) в модуль по радиоканалу. Плох модуль тем что нельзя программировать на чистом С.

Программирование
Для программирования модулей используется среда Synapse Portal. После написания скрипта, его можно сразу загружать в радиомодули по беспроводному каналу связи! Для программирования можно использовать два варианта:
1. Написать два скрипта, каждый под свой радиомодуль (платформу и ПДУ)
2. Написать один скрип с функциями двух радиомодулей, а нужний код выбирать при конфигурации переключателей, или перемычек.Я выбрал первый вариант, он проще и мне больше так нравиться. На рисунках среда Synapse Portal. На первом отображаеться список устройств (нодов). На втором пример загрузки скрипта в модуль.


Принцип работы
4 двигателя подключены каждый к своему каналу драйвера, 1 драйвер имеет 2 независимых канала управления. Подробнее о драйвере двигателей уже написано здесь.
К драйверу идут 2 источника питания: 5V — питание логики драйвера, и 8V силовое питание для двигателей (питания двигателя 6V, но на транзисторах драйвера падает примерно 2V).
5V и 8V создаются 2 Step-Down преобразователями.
Питание робота от китайской Li-Ion батареи, 14.V 5200 mA. Знаю, батарея большая и некрасивая, но у мене пока другой нет. Да и для первого прототипа нормально.
Сигналы управления двигателя с драйверов идут на радиомодуль. На радиомодуле бегает прошивка(скрипт). Задача радиомодуля принимать команды от другого радиомодуля, обрабатывать их и подавать сигналы управления на драйверы двигателей («0», «1» и PWM).
К другому радиомодулю подключена клавиатура (самодельный джойстик) для управления платформой, вместо джойстика можно использовать UART и управлять с компьютера.
Что в перспективе хочу сделать. (кнопками с программы запущенной на компе управлять движением робота и в нее с робота выводить показания снятый модулем на роботе).
Между радиомодулями полнодуплесная связь. Можно создавать сеть с нескольких радиомодулей. Поворачивается робот по танковому принципу. Планируется сделать пропорциональное управление. И разворот робота на месте с минимальным радиусом (при повороте одна пара колес двигается вперед, другая в тоже время назад).

Результат
движущаяся платформа:

Пульт дистанционного управления:

и видео:

Разработка очень сырая, и пока робот не принимает решения самостоятельно, еще рано называть его роботом)
Думаю с рисунков должно быть все понятно, если есть вопросы — задавайте, с удовольствием отвечу на все!
  • 0
  • 19 апреля 2013, 13:42
  • Nemo

Комментарии (0)

RSS свернуть / развернуть

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.