Строим автономного робота на платформе HandyBoard Назад
 
 


3. Построение шасси

     После ознакомления с аппаратными возможностями контроллера HandyBoard и софтом, моим естественным желанием было подарить ему мобильность.
     Возможностей изготовления специфического и нестандартного шасси у меня не было, поэтому, не долго думая, в качестве первого шасси я взял игрушечную машинку "Монстр-2". Ее особенностью был независимый привод каждой пары (левых и правых) колес. Как у танка. Именно на такую концепцию шасси я и ориентировался, когда обдумывал будущую механику своего мобильного робота. Третью точку опоры в виде подвижного мебельного ролика я подобрал в соответствующем магазине исходя из имеющегося ассортимента и габаритов ведущих колес "Монстра".

   
     Особенностью HandyBoard является довольно высокие требования к питающему аккумулятору. 8 элементов АА являются довольно габаритным и тяжелым довеском к основной плате. Я решил спрятать их под брюхом робота. В первой версии этого шасси батареи были примотаны к корпусу обычным скотчем. Благо HandyBoard имеет на борту стандартный разъем для зарядника и рассматривает аккумуляторы как свою неотъемлемую часть. Короче, необходимости в изготовлении съемного отсека для батарей не было и я его делать не стал.
     Подсоединив провода от моторчиков к HandyBoard, я смог увидеть своего будущего робота в движении. Скоростью и направлением движения HandyBoard управлять очень просто. В библиотеке "Interactive C" есть готовые функции для включения каждого из моторов со скоростью от -100 (задний ход) до +100 (полный вперед) с шагом 1. Целых 200 скоростей - это немало. Разумеется, реальная скорость тележки зависит от мощности движков, имеющегося редуктора и размеров колес.



     После того, как я получил в свое распоряжение первое реальное управляемое шасси, вылезла проблема, о которой я мог только догадываться, будучи теоретиком. Несмотря на "идеальное" программное управление движением, робот идеально двигаться упорно не хотел. Его заносило в разные стороны как ребенка, который делает свои первые шаги. Это было, впрочем, вполне предсказуемо. Проблема заключалась не в дешевых китайских моторчиках, которые, естественно, никто не юстировал - они работали как умели :). И уж, конечно, не в ковровых покрытиях с различными коэффициентами сцепления с колесами. Просто мой новорожденный робот ничего не чувствовал. И не имел ни малейшего представления - как выполняются команды "мозга" его же "телом".
     Мне бы нужно было бы в этом месте избрать путь оснащения робота органами чувств и адекватного реагирования на не идеальность выполнения команд. Но меня понесло в другую сторону. Я решил потратить свои силы на создание более совершенного шасси - максимально близкого к идеалу :))).

     Технической основой для будущего "идеального" шасси послужили конверсионные движки ДПМ и дружеская помощь Игоря Ефремова, который помог изготовить все детали нового конструктива. Поскольку второе шасси делалось специально под HandyBoard, оно в точности соответствовало его размерам. Я хотел его использовать для участия в соревнованиях "Робо" по прохождению лабиринта на скорость. Мы обсудили разные варианты и пришли к следующему. Шасси должно удовлетворять требованиям:
- точность отработки поворотов;
- легкость и простота конструкции;
- отсутствие мощных редукторов (для соревнований по Сумо все равно придется делать другое шасси) и хорошая скорость по прямой. Результатом этих усилий стало сие творение:

       

   
     Колеса и другие подвижные элементы ходовой изготовлены из твердого капролона и посажены на бронзовую ось. Все вместе это работает как подшипник скольжения. Усилие от мотора передается на колесо через резиновый пассик. Прижимной ролик используется для регулирования его натяжения. В качестве третьей точки опоры используется подвижный ролик целиком выточенный из того же капролона.
     В целом шасси №2 оказалось очень тихим в работе и показало неплохую точность на гладкой ровной поверхности. Но все же не идеальную :(. Ошибки рассинхронизации накапливались и здесь.



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

     Я купил редукторы с моторами в одном корпусе фирмы Tamiya. Манипуляции с шестеренками позволяли выставить большой коэффициент редукции – более 200:1. Я посчитал, что такой большой коэффициент вкупе с довольно качественными моторчиками позволит нивелировать погрешности их работы.
     Сказано – сделано:
     Получилась неспешная тележка с довольно шумным приводом. Несмотря на маломощные моторчики (работают от 1 или 2 батареек АА), усилие на колесах получилось значительным. Но требуемой точности как не было, так и нет.
     Временно приостановив свои попытки создания идеально точного шасси для робота, я решил призвать на помощь электронику. И установить на каждое из колес энкодер – датчик его вращения.
     Он позволит в реальном масштабе времени отслеживать даже небольшие повороты колес вокруг своей оси и на программном уровне подбирать скорость для каждого из моторов при которой оба колеса вращаются с одинаковой скоростью. Я также надеюсь, что робота, оснащенного энкодерами можно будет обучить поворотам на заданый угол с места и в движении. Для соревнований по линии это не последнее дело. Осталось только сделать эти энкодеры...

       


Киев
21.9.2005

[ Оглавление ]