Проект Speebo.
И вот, прошли соревнования «Roborace кубок Бреста». Несмотря на то что удача покровительствовала команде SRS, всё прошло не так гладко как хотелось бы. Проанализировав результаты выступления Speebo, мы приняли решение заморозить разработку этой платформы. Но, что бы сохранить для «потомков» заслуги робота, мы хотим немного рассказать о процессе подготовки к соревнованиям и достигнутых результатах.

История создания платформы берёт своё начало в январе 2011 года. В то время будущая платформа была всего лишь радиоуправляемой машинкой. На этой платформе основатель команды SRS, Склипус Дмитрий, начал разработку автономного мобильного робота для соревнований Roborace.
Спустя месяц напряженной работы первая версия роботизированной платформы увидела свет. Её рождение было приурочено к третьему этапу Roborace, проходящему в Черновцах 26.03.2011. Высокая скорость и стабильная работа электроники сразу сделали робота Speebo фаворитом на этих соревнованиях и обеспечили ему победу.

Несмотря на успешный дебют платформы в Черновцах, соревнования вскрыли несколько существенных конструкционных недостатков робота. Основным недостатком была сложность программирования робота. Для обновления прошивки требовалась частичная разборка робота. В качестве программатора использовался JTAG, требующий подключение к сети переменного тока 220 В, что накладывало определённые ограничения на выбор рабочего места для программирования.
До следующих соревнований Decoded оставалось немногим больше месяца. Это дало время на устранение выявленных конструкционных недостатков. Дальномеры были перенесены с капота в бампер машины, для защиты от механических повреждений. Такая схема расположения позволила роботу “замечать” препятствия высотой от 3см. Также в дополнение к контактным датчикам были установлены бесконтактные оптические датчики, порог срабатывания которых 15-10 см. Таким образом робот получил возможность предотвращать столкновения. Центральная плата управления была заменена на Arduino Mega. Также мы заменили драйвер двигателя на более производительный. Драйвер разработан в группе BRSTU-Robotics. Стоимость электроники составила 100у.е.
Для ориентирования робота по линиям, была куплена беспроводная камера. Предполагалось что обработкой видео сигнала будет заниматься удалённый компьютер. К сожалению такая схема управления запрещена регламентом соревнований.
Во время тестовых заездов, на соревнованиях Decoded, робот успешно проходил трассу. Однако в гонке на результат он участвовать не смог из за сгоревшего драйвера двигателя. В ходе соревнований был выявлен конструкционный недостаток связанный со сложностью замены элементов питания.

В середине июня к проекту присоединился Никонович Валентин. Несмотря на то что к тому моменту робот модернизировался, механика и электроника уже имела практически завершенный вид, такой какой она имеет на сегодняшний день. Дело оставалось за алгоритмом.
Уже в начале июля робот был полностью собран и пришло время приступать к разработке алгоритма. Примерно в это время у команды появился партнёр, им стала компания «Эрикполь-Брест».
Первым делом мы начали с моделирования, но в виду отсутствия в симуляторе «физики», невозможно было учесть в модели заносы, проскальзывания и инертность серводвигателей.
http://www.youtube.com/watch?v=kURNK3hTr3QtedВремени до брестского этапа соревнований Roborace оставалось не так много, в связи с этим мы решили тестировать алгоритмы непосредственно на самом роботе, в реальных условиях.
Так как сенсорика робота была ограничена двумя дальномерами и о полноценном контроле ситуации на трассе не могло быть и речи, нами было принято решение разрабатывать алгоритм движения вдоль одной из стен.
Первая версия алгоритма использовала функцию тангенса для управления рулевыми колёсами и систему имитации коробки передач для управления скоростью.
http://www.youtube.com/watch?v=yycOj4dW_30Эта версия алгоритма хорошо показала себя на прямых участках, однако на извилистых трассах машина не успевала как следует разгоняться. А функция тангенса используемая для управления рулевым сервомотором отнимала слишком много времени на настройку управляемости робота.
В следующей версии алгоритма мы учли предыдущий опыт и заменили функцию тангенса на систему из пяти линейных функций. А систему передач, заменили на более гибкую систему управления скоростью.
http://www.youtube.com/watch?v=_rD-sBZXwgcС этим алгоритмом мы и приехали выступать на соревнования «Roborace кубок Бреста». После нескольких тестовых заездов и финальной настройки робот чувствовал себя на трассе достаточно уверенно. Однако в первом же заезде он устроил нам неприятный сюрприз, потеряв левое рулевое колесо. На трёх колёсах робот «прополз» еще три круга, пока окончательно не сдался. Но пройденные роботом 12 кругов обеспечили ему участие в финальном заезде.
Предфинальный пит-стоп был целиком потрачен на восстановление колеса, поэтому к финальному заезду робот был в строю. Хотя уже и не так уверенно, но в финале робот прошел круг за кругом всю дистанцию и занял первое место.
http://www.youtube.com/watch?v=v1iRH3aE5gcПо результатом соревнований стало ясно что игрушечная модель, которой является платформа Speebo, не достаточно надёжна для участия в гонках. А также возникают определённые сложности с заменой деталей шасси заводской модели. Поэтому было принято решение заняться разработкой новой платформы с возможностью быстрой замены основных узлов.
Исходные коды алгоритма можно найти по адресу:
http://speebo.googlecode.com/svn/trunk/До встречи на гонках !!!
Технические характеристики:
Шасси:
Классическое, передняя пара колёс управляет, задняя ведущая.
Длина........................................................ 470 мм.
Ширина..................................................... 200 мм.
Высота...................................................... 140 мм.
Колёсная база.......................................... 260 мм.
Клиренс......................................................12 мм.
Диаметр колеса........................................ 64 мм.
Вес............................................................. 1700 гр.
Материал................................................... пластик
Максимальный угол поворота колёс...... 30°
Двигатель:
Коллекторный мотор, пластиковый редуктор, привод на заднюю ось, дифференциал, драйвер на полевых транзисторах.
Максимальная скорость...........................10 км/ч
Электроника:
ArduinoMega 1280.
Сенсоры:
Sharp GP2Y0A21YK0F Analog Distance Sensor 10-80cm...................x1
Sharp GP2Y0A02YK0F Analog Distance Sensor 20-150cm.................x1
TSOP1736.............................................................................................x3
Контактные сенсоры............................................................................x2
Питание:
Раздельное. Электроника питается от 6 батарей типа AA. Электромотор и рулевой сервопривод от 8 батарей типа АА.
Прошивка:
Исходные коды.....................................
http://speebo.googlecode.com/svn/trunk/Управляющий алгоритм........................release.cpp