They see me rollin', they hatin'

Свершилось, пробный запуск платформы проекта Rhoby.

Видео с тестом платформы

Платформа управляется по Bluetooth через приложение BLE Terminal. На самой платформе стоит Bluetooth модуль который по UART подключен к плате на STM32F103 (BluePill). Микроконтроллер управляет четыремя двигателями постоянного тока через китайские миниатюрные драйверы MX1508. Данный прототип я собирал для того чтобы опробовать omni-колеса с Aliexpress, посмотреть как они будут себя вести на разных покрытиях. Детали платформы я распечатал на 3D-принтере, очередной раз убедившись в его полезности. В целом же, теперь у меня есть готовая платформа, начинку которой я могу менять по мере продвижения в разработке проекта.

Говоря о продвижении в разработке, что же дальше?

А дальше работа только начинается. В данный момент я занят разработкой кода под ПЛИС Spartan-6. Verilog для меня вещь диковиная как и сами ПЛИС, поэтому, думаю, это займет достаточно времени.

Почему вдруг ПЛИС?

Во-первых, ПЛИС вещь достаточно гибкая, я могу добавлять периферийные устройства, многое менять внутри нее без необходимости переразводки платы.

Во-вторых, ПЛИС это очень удобно при параллельности и когда хочется настоящего “реального времени”. В будущем я планирую использовать четыре шаговых двигателя с энкодерами для обратной связи. На мой взгляд самое оптимальное будет использовать ПЛИС для управления ими и всей остальной низкоуровневой периферией.

Несколько слов об архитектуре системы в целом.

ПЛИС по сути будет сердцем спинным мозгом робота, и управлять всем “низким уровнем” робота. Роль мозга же планируется отвести какому-нибудь одноплатному компьютеру вроде RaspberryPi или Jetson Nano от NVIDIA. Основная задача возлагаемая на “мозг” Rhoby – распознавание образов и принятие решений, с последующей передачей управления на нижний уровень.

В качестве драйверов шаговых двигателей я планирую использовать свою собственную плату на основе микросхем MX1508 или же DRV8833.

Сами шаговые двигатели будут небольшими – NEMA8 тип.

Для синхронизации и обмена данными со смартфоном планируется использовать BLE-протокол.

Продолжение следует…