Экспериментальный робот для слалома

admin   22.05.2021   Комментарии к записи Экспериментальный робот для слалома отключены

large_frontКаждый раз для соревнований мы стараемся подготовить нового робота как конструкционно, так и алгоритмически. Для соревнований по слалому в 2020 году мы приготовили робота с ПИД алгоритмом и двумя датчиками цвета. Особенностью этого роота стало то, что мы сделали конструкцию с наклонными двигателями (колесами). Нам эта идея пришла от грузовиков марки Tatra, у которых колесная база находится под углом к поверхности.
К сожаленью, данный робот так и не принял участия ни в одном соревновании, поэтому мы провели ряд экспериментов дома. Мы провели ряд тестовых заездов с разными параметрами. Первая часть эксперимента заключалась в том, чтобы поставить на роота колеса разного размера без изменения алгоритма езды и параметров программы. Вторая часть заключалась в том, чтобы под каждый тип колес подобрать «оптимальные» настройки для максимальной скорости прохождения одной и той же трассы.


large_front large_side large_back
medium_front medium_side medium_back
small_front small_side small_back

В результате экспериментов мы получили следующие результаты.
Условные обозначения:
T — время прохождения трассы в секундах.
Sd — скорость вращения двигателя.

Колеса Ширина
робота
T
Sd 50
T
Sd 65
T
Sd 80
Маленькие
d45мм
19 см 51.25 41.34 33.77
Средние
d70
26 см 35.06 26.91 вылет с трассы
Большие
d85мм
30 см 28.35 вылет с трассы вылет с трассы


Для каждого типа колес можно подобрать оптимальный набор параметров для скорости и ПИД алгоритма, чтобы получить максимальную скорость на трассе и обеспечить устойчивость (не вылет). Однако в нашем случае только робот с маленькими колесами удовлетовряет требованиям соревнований — ширина робота не должна превышать 25 см.
Именно под эти колеса мы подобрали лучшие значения различных параметров, но это уже совсем другая история.
Вы можете скачать нашу программу для EV3 и провести свои эксперименты.
Файл содержит несколько версий программ, но вам нужны две:
1) calibration — программа калибровки датчиков цвета.
2) duo-pid — программа для слалома.
Первый раз необходимо запустить калибрацию датчиков цвета. Робот делает оборот на 360 градусов, считывая показания ооих датчиков и находит среднее значение. После этого он вычесляет корреляционный коэффициент между датчиками и сохраняет его в файл.
Основная программа при старте считывает этот коэффициент и использует его для нормализации показаний датчиков цвета при езде по трассе. Это сделано из-за того, что разные датчики имеют разную точность и диапазон измерения цвета (силу отраженного света) и данный подход позволяет сгладить эту погрешность. В нашем случае левый датчик показывал силу отраженного света на белом цвете приблизительно на 10% меньше, что без использования корреляционного коэффицианта практически сводило использование ПИДа к нулю.