Robo.com.ua Портал любителей робототехники

Главная · Проекты на Робо · Форумы · Ссылки · Статьи · Файловый архив · Поиск November 25 2020 08:06:50
Навигация
Главная
Проекты на Робо
Форумы
Ссылки
Статьи
Файловый архив
ЧаВо
Поиск
Блоги
YouTube




Последние статьи
Новая система складс...
Эксперимент с ИК при...
Проект ROBER или роб...
Программатор STK200 ...
Схема программатора ...
Партнерские ссылки
Балансирующий робот nBot
Я работал над двухколесном балансирующем роботом nBot.

Этот робот был показан как самый классный робот недели NASA 19 мая 2003 года. После того на сайте ScAms определил сайт НАСА как одну из 10 лучших разработок и технических участков сети 2003 года, ссылка на nBot есть в её тексте. Основная идея довольно проста: поворачивать колеса в том направлении, в котором падает робот. Если колеса можно поворачивать таким образом, чтобы оставаться под центром гравитации робота, он остается сбалансированным. Практически это требует двух датчиков обратной связи: датчик наклона, чтобы знать угол наклона робота относительно гравитации и кодирующих устройств на колесах, для измерения позиции базы робота. Достаточно четыре момента, чтобы определить движение и положение этого <перевернутого маятника> и таким образом балансировать робота, это: 1) угол наклона, 2) его первая производная, угловая скорость, и 3) положение платформы и 4) его первая производная, скорость платформы. Эти четыре момента суммируются и отправляются платформе как напряжение питания двигателя, которое является пропорциональным вращательному моменту, балансирует и перемещает робота. Вот схема алгоритма с некоторым кодом и примечаниями.

Корпус робота был построен в моем домашнем механическом цехе. Здесь есть некоторые виды сборки моторной платформы и компонентов двигателя, также как дополнительные колеса, которые я сейчас убрал, использовались для испытания и калибровки двигателей и кодирующих устройств перед тем, как способен балансировать на двух колесах. В роботе используется МК НС11, разработанный для курсов робототехники M.I.T. 6.270, тот же самый МК, который использовался на LegoBot.

Первый этап. Это начало эксперимента, чтобы изучить, как управлять перевернутым маятником. Я начал с трехколесных роботов с вращающимся третьим колесом, используя 3-х футовый деревянный штырь, на котором был оранжевый шар. В качестве стержня использовался 5ком потенциометр, который измерял угол наклона. Для большей стабильности я переместил пакет батарей поверх заднего колеса. Вот mpeg на котором робот балансирует шестом в моем офисе. Этот mpeg - более короткая версия, и вот другой фильм.

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

Третий этап. В третьей версии была добавлена третья палуба батареи, переместились на верхний уровень. Это позволяет роботу производить большой вращающий момент без необходимости далеко наклоняться. На виде сбоку видно батарею и интерфейс на верхней палубе, МК и Н-бридж на вредней палубе, и двигателях и осях на самой нижней палубе.

Третье колесо и угловой датчик были заменены пьезоэлектрическим гироскопом и акселерометром ADXL202, установленным чуть выше моторной палубы. Эти датчики были в конечном счете заменены коммерческим инклионометром FAS от MicroStrain, также состоящего из акселерометра ADXL202 и гироскопа, таким же платам и наборам, доступным от romotion. На этом боковом виде показано все в сборе.

Четвертый этап. Новая основа и двигатели для nBot, используя двигатели Pittmann GM8712DC с кодирующим устройством собственного производства. Еще я добавил 18 NiMH 1800mAh перезаряжаемые ААА аккумуляторы общим напряжением 24 вольта., также и большее количество оборотов в минуту. Результатом стало то, что робот стал более устойчивым и может ответить более быстро.

Балансирование.

Чтобы сделать инерционный датчик, гироскоп и акселерометр, были объединены с дополнительными фильтрами. Акселерометр ADXL202 дает точную статическую информацию о наклоне, когда робот не ускоряется. Его можно объединить с гироскопом, чтобы получить точную динамическую информацию о наклоне, но интеграция имеет тенденцию дрейфовать через какое-то время.

Объединение этих двух датчиков дает правильное измерение инерции. FAS-F осуществляет "Weiner" - фильтрацию, чтобы объединить эти два датчика в единственное измерение проекта автопилота sourceforge. Платы, доступные от rotomotion.com используют фильтр "Kalman". Некоторая действительно хорошая информация относительно инерционных единиц измерения доступна в проекте автопилота sourceforge.

Вот- видео балансирующего робота. На нем видно, как его толкают, а он восстанавливает свой баланс.

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

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

Движение.

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

Этот темный фильм показывет, как робот, кружащийся по полу, пока не сталкивается с моей ногой. Из-за PWM-компенсации колеса, центры далеко от столкновений и продолжаются; он похож на <бампер>, без наличия без фактического физического бампера. (действительно слишком темно, чтобы увидеть то, что происходит. Скоро я попробую сделать лучше.)

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

Навигация.

Подобно остальным моим роботам (кроме camcar), nBot - автономный робот. То есть он не управляется человеком по радио. Вместо этого у на борту него есть плата с компьютером, который все принимает решения помимо того, что робот балансирует.

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

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

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

Вот версия 4 робота, который движется по неровной дорожке в федеральном парке Ilse DuBois. Я думаю, что двухколесный балансирующий робот оказывается более устойчивым, чем другие мои 3-х колесные роботы. Вот видеофильм, на котором видно, как робот движется вверх и вниз по склону. Заметьте, как он наклоняется назад, поскольку он спускается и вперед, когда возвращается.

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

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



Оригинал: www.geology.smu.edu/~dpa-www/robo/nbot/index.html


Опубликовал admin May 24 2004 - 00:00:000 Комментариев · 15858 Прочтений - Для печати
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Сейчас на сайте
Гостей: 3
На сайте нет зарегистрированных пользователей

Пользователей: 651
Не активированный пользователь: 2520
Посетитель: knevech
Last Seen Users
disop12 weeks
EpicOne59 weeks
overlocker84 weeks
Driver_UA84 weeks
knevech92 weeks
Petro99 weeks
admin126 weeks
BOBKA137 weeks
salavat150 weeks
nik22157 weeks
Мини-чат
Вам необходимо залогиниться.

Нет присланных сообщений.
robo.com.ua Copyright © 2004-2015. EMail admin_shs()robo.com.ua