Найти в Дзене
Кибер Электроника

Создание роботизированной колёсной платформы.

Вводное: Вообще это второй проект, которым я занимаюсь. так что я в этом новичок, прошлым был кораблик с управлением на пульте Flysky FS-i6 и по путевым точкам миссии в INAV. Для использования в проекте была выбрана платформа гироскутера Smart Balance 10.5 С добавлением к конструкции полетного контроллера GF30F405-ICM и GPS/Glonass модулем GEP-M10Q со встроенным компасом. Как оказалось, платформа не совсем подходит. Плата контроллера от TAOTAO TD18014-1.3 на процессоре GD32F103RET сильно не совпадает с доступными средствами изменённых прошивок от стандартной EFeru которая предназначалась для MCU на основе STM32F103RCT/GD32F103RCT. В оригинальной прошивке скутер не подаёт признаков жизни, совсем. В другой, из сети, уже дрыгает и крутит колёсами, но перепутаны фазы двигателей. С платой можно разобраться посредством обратного инжиниринга, и отредактировать прошивку под неё. Но на это, на данном этапе, просто не хватает времени. Перепрошивается контроллер просто, имея китайский клон STl

Вводное:

Вообще это второй проект, которым я занимаюсь. так что я в этом новичок, прошлым был кораблик с управлением на пульте Flysky FS-i6 и по путевым точкам миссии в INAV.

Для использования в проекте была выбрана платформа гироскутера Smart Balance 10.5

Smart Balance 10.5
Smart Balance 10.5

С добавлением к конструкции полетного контроллера GF30F405-ICM и GPS/Glonass модулем GEP-M10Q со встроенным компасом.

 GF30F405-ICM & GEP-M10Q
GF30F405-ICM & GEP-M10Q

Как оказалось, платформа не совсем подходит.

GD32F103RET
GD32F103RET

Плата контроллера от TAOTAO TD18014-1.3 на процессоре GD32F103RET сильно не совпадает с доступными средствами изменённых прошивок от стандартной EFeru которая предназначалась для MCU на основе STM32F103RCT/GD32F103RCT. В оригинальной прошивке скутер не подаёт признаков жизни, совсем. В другой, из сети, уже дрыгает и крутит колёсами, но перепутаны фазы двигателей. С платой можно разобраться посредством обратного инжиниринга, и отредактировать прошивку под неё.

Но на это, на данном этапе, просто не хватает времени.

Перепрошивается контроллер просто, имея китайский клон STlink v2. и несколько проводков клонов от DuPont.

наши иголки
наши иголки

Никаких проблем это не вызывает, есть только проблемы с поиском утилиты программы прошивальщика от STMicroelectronics - STM32 ST-LINK Utility, но и в этом добрые люди из всемирной сети помогают.

Разъем подключения программатора J4 обозначен на плате, контакты подписаны.

SWCLK - SWDIO - GND -  3.3v
SWCLK - SWDIO - GND - 3.3v

Изначальная прошивка защищена от чтения, так что стираем её полностью, у нас нет цели её сохранять, хотя можно попробовать её слить, но редактировать/декомпилировать её при этом всё равно не сильно получится (пока у меня нет таких знаний и оборудования).

К сожалению, как я уже указал - на это просто нет времени.

Ну и в результате - у нас ничего не произошло, молчание полное у контроллера, и даже при включении (теперь оно просто делается не нажатием кнопки, а замыканием контактов J2) никаких звуков что были на рабочем гироскутере уже нет. Да и схемотехника платы отличается от тех что перепрошивали другие любители самоделок.

Поэтому, мы заказываем другие платы подходящие для перепрошивки, на процессорах STM.

STM на мощных транзисторах
STM на мощных транзисторах

Пока это только начало, поэтапно буду дополнять, так как работать тоже надо. а более интересных тем пока нет. Работа над этим проектом проводится в стороне от основной работы.

Приехали платы 05,02,25, одна была прошита на ручку газа и тормоз, но мне это было не нужно, перепрошил СТлинком на нужную версию по UART, через радио канал по YRrc Radio сначала ничего не выходило, выдавал ошибку тайм аута по порту (3 звуковых тона). Попробовал с помощью CH341A - и всё заработало. С помощью веб управления candas1, с репозитория EFeru, управление колёсами заработало. Но пришлось перепрошить под вариант с PWM.

Теперь буду прикручивать полётный контроллер, для добавления автономного хода.

В дополнение - пришлось переделать. Установили Pixhawk, так как F405 не давал решения всех поставленных задач. Во первых он не виделся как надо в Mission Planer, а в INAV нет привязки к наземной базовой станции позиционирования, она нужна для точности. Хотели обойтись, не дорогими решениями, не получилось.

Но все равно пришлось повозиться с MP, GPS модуль M10Q никак не хотел определяться, пришлось прописать вручную в полном списке параметров раздела конфигурации. Модуль MVLink YRRC телеметрии вообще как то криво был прошит, что не хотел конфигурироваться, оказалось что частоты каналов максимума установлены на меньшее чем минимум, перевёрнуты так сказать, на обоих устройствах.

И пришлось потратить время на изучение документации на пикс.

Но если в INAV удобное тестирование моторов прямо в окне их настройки, и отключение безопасности одним ползунком, то в MP и QGC (QGroundControl) это совсем не удобно. надо отрубать для ровера безопасность в нескольких местах в конфигурации, которая следит за тем что бы двигатели не убежали. И проверку делать в другом окне, при чём она кривая, то есть настраивая реверсные двигатели они при проверке совсем не реверсные. Я честно не знаю, может я чего то не понял.

но в INAV не подключишь джойстики компьютера.

Бетафлай вообще не рассматривали, он для полётных устройств, чего-то колёсного я в настройках не нашёл.

Можно сказать теоретическая часть закончена, переходим к практической, всё нужно скрутить вместе на какую то платформу.

Ох и намучался я с модулем GPS/Glonass.

настройки GEP-M10Q в Mission Planer для board Pi CM4 Pixhawk 6x:

AHRS_EKF_TYPE, 3
AHRS_GPS_GAIN, 1
AHRS_GPS_MINSATS, 6
AHRS_GPS_USE, 1
EK3_GPS_CHECK, -85
EK3_GPS_VACC_MAX, 0
GPS_AUTO_CONFIG, 1
GPS_AUTO_SWITCH, 0
GPS_BLEND_MASK, 7
GPS_COM_PORT, 0
GPS_COM_PORT2, 5
GPS_DELAY_MS, 0
GPS_DELAY_MS2, 0
GPS_DRV_OPTIONS, 165
GPS_GNSS_MODE, 111
GPS_GNSS_MODE2, 0
GPS_NAVFILTER, 4
GPS_PRIMARY, 0
GPS_RATE_MS, 100
GPS_SBAS_MODE,1
GPS_SBP_LOGMASK,-256
GPS_TYPE,2
SERIAL3_BAUD, 115
SERIAL3_OPTIONS, 0
SERIAL3_PROTOCOL,5

CAN отключил совсем, пока он не нужен. остальное что принадлежит настройкам GPS не трогал.

Без косяков конечно не обошлось. замкнул случайно щупом мультиметра, пробило Q2: TIP127 - Транзистор PNP Darlington 100В 5А 65Вт [TO-220.]

схема включение платы ховерборда
схема включение платы ховерборда

Окончательно , ну я так считаю, разобрался с Mission Planer, по части управления двигателями. Правда замучался отключать и искать что отключать, для защиты при арминге (что то вроде, режим "зажигание", по русски). опробовал джойстик XBox через модуль ресивера из Китая подключенный к ноутбуку с полетной программой, для ровера там много кнопок не нужно.

теперь полевые испытания.