КАПИТАН КОМАНДЫ ЕЖЕЛЕВ ГЕОРГИЙ ИГОРЕВИЧ
Мне 14 лет
Опыт в робототехнике 5 лет
Мне 14 лет
Опыт в робототехнике 5 лет
Мне 14 лет
Опыт в робототехнике 5 лет
В роботе используются 2 платы: основная плата, на которой обрабатывается вся информация, плата линии, для считывания опознавательных линий на поле и плата повышения напряжения, используемая для увеличения силы удара мяча. Основным микроконтроллером является STM32F407, который выполняет написанную для робота логику. На плате линии для удобства и простоты программирования используется микроконтроллер ATmega328P.
В роботе используются датчики:
- Локатор IrLocator360, для обнаружения инфракрасного мяча относительно робота;
- Гироскоп imu 9dof razor, благодаря которому робот не поворачивается вокруг своей оси и выравнивается при столкновении с противником;
- Камера OpenMVh7, с помощью которой робот видит все поле, включая ворота и линии, ограничивающие зону аута. Для того, чтобы камера видела на 360° было выточено на токарном станке конусовидное зеркало, обработанное до идеальной гладкости для четкого изображения;
Главными особенностями и преимуществами конструкции являются омни-платформа, благодаря которой робот может свободно перемещаться по полю, не поворачиваясь при этом вокруг своей оси; центр тяжести робота, который находится максимально низко и отцентрировано относительно окружности описывающей робота.
Основной микроконтроллер STM32F407 программируется на языке C++ в среде Keil uvision5, реализованы такие алгоритмы, как конечный автомат(переключение состояний поведения робота в зависимости от внешних факторов), регуляторы положения робота(пропорционально - дифференциальный регулятор для движения за мячом, пропорционально-интегральный регулятор для выравнивания вокруг своей оси), регулятор управления омни-платформой.
Камера программируется на языке micropython в среде OpenMV IDE. Камера обнаруживает свои и чужие ворота, как компоненты связности и отправляет данные о положении робота относительно ворот.
Микроконтроллер Atmega328P(управляющий платой линии) программируется на языке C++ в среде Arduino IDE. Микроконтроллер, с помощью 16-канального мультиплексора поочерёдно перебирает значения, приходящие с оптопар(датчиков линии) и сравнивает с пороговыми и отправляет полученные данные на основной микроконтроллер.
Для взаимодействия с функционалом STM32F407 используется библиотека SPL(Standart Peripherals Library). Для каждой функции микроконтроллера(управление пинами, ШИМ, протоколы передачи данных, АЦП, работа с датчиками и т.д.)
используется отдельный класс с заголовочным и основным файлом. В основном файле идёт управление микроконтроллером через функции этих классов.
СТРАТЕГИЯ
У робота есть две возможные роли, которые выбираются перед запуском робота: нападающий и вратарь.
Основной целью нападающего является следования за мячом - если мяч находится спереди, то робот с помощью пропорционального регулятора движется на мяч. Если мяч находится сбоку, то робот его объезжает по окружности. Также робот корректирует свой курс относительно расположения ворот (если робот расположен сильно сбоку, то он объезжает мяч только со внутренней стороны поля; также если робот находится сбоку от ворот, то он корректирует желаемый угол до мяча для регуляторов).
Вратарь движется по окружности с центром в середине ворот и выравнивается на такой угол, чтобы находиться на одной прямой между центром ворот и мячом.
Оба робота выравниваются по гироскопу с помощью пропорционально-интегрального регулятора и используют камеру и плату линии для защиты от вылета в аут.
Как решается задача, заданная регламентом лиги
ПЛАКАТ