Робот-колхозник: испытания 08.20

Ну вот, наконец-то авральные работы закончились и я немного пришел в себя. Теперь можно написать как оно было. Работы по доработке робота и сами испытания длились с середины июля до конца августа.

Доработки

Блок управления

Прежде всего, на робота был установлен свежеизготовленный блок управления с автопилотом и прочей электроникой. Внутри блока располагается автопилот Pixhawk, установленный на макетную плату с разъёмами и объёмным монтажом. Бортовое питание у робота 24В, но но часть потребителей у нас питается от 12В, поэтому на входе сразу же стоит DC/DC преобразователь из 24В в 12В. Параллельно ему включен DC/DC 24В/5В, который питает плату реле. Плата реле — нужна для управления дополнительным оборудованием. Можно было бы взять плату с 12В реле, тогда бы не пришлось ставить дополнительный DC/DC на 5В. Но эта у меня уже была, да и DC/DC тоже нашелся в закромах.

Внутри также установлены 2 радиомодуля (на фото они ещё не установлены): телеметрия для Pixhawk’а и передатчик FPV камеры. Оба два прилично греются во время работы (особенно передатчик камеры). И чтобы они не перегревались был установлен вентилятор, который протягивает воздух через весь блок от приточных отверстий в передней стенке до выпускного отверстия в задней стенке. Так как машина предназначена для эксплуатации на улице и в различных метеоусловиях — пришлось закрыть впускные отверстия в передней стенке самодельным фильтром, чтобы внутрь блока не летела пыль, грязь и брызги.

Блок управления изнутри

Снаружи на передней стенке блока располагается вентиляционная решетка с фильтром, FPV камера и Safety Button от Pixhawk’а. По бокам располагаются антенны от радиомодулей и разъёмы для соединения с бортами робота. На крышке блока управления расположен GPS-модуль, совмещенный с антенной и магнитным компАсом.

Блок управления в сборе

Разъёмы на бортовые рамы

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

Панель для разъёмов установлена на бортовую раму

Потом в панель были установлены разъёмы и припаяны провода. В блоке управления на каждый борт установлено по одному разъёму — для сигнальных цепей. В бортах робота разъёмов установлено по два — один сигнальный, второй — для силового питания (до 20А на борт). Тащить силовое питание через блок с электроникой я посчитал плохой идеей, для распределения питания был использован отдельный блок.

Панель с разъёмами
Блок управления установлен

Блок распределения силового питания

Блок распределения силового питания — это обычный корпус с DIN рейкой для трех автоматов. Собственно, они там и установлены. Один отключает нагрузку, второй АКБ, третий солнечные панели от всего. Солнечные панели отключать обязательно, иначе возможна ситуация, когда вроде всё отключил, а питание на систему подаётся. Это уже проходили на плате парника. Блок распределения питания установлен под блоком управления и имеет удобный доступ спереди к автоматам.

Блок распределения питания

Светосигнальная подсистема

Так как робот будет в процессе испытаний передвигаться (хоть и не по дорогам общего пользования) в местах, где возможно движение других транспортных средств — необходимо было оснастить его спецсигналами. Чтобы предупреждать незадачливых водителей (и пешеходов), что перед ними высокотехнологичный объект, от которого можно ожидать чего угодно.

Спецсигнал )
Тест световых сигналов

Испытания

И вот, наконец-то, всё было смонтировано и надо было начинать испытания. Первым делом робот был полностью вывешен ибо хрен его знает, куда он там решит поехать, а весит он порядочно и остановить его будет очень непросто.

ArduRover

Сначала надо было проверить взаимодействие автопилота с драйверами. Тут сразу же выяснилась одна неприятная особенность Ardurover’а — он изначально заточен под авиацию и соответствующие авиационные драйверы двигателей. А у них принято, что PWM > 1500 (условно) это вперед, а меньше 1500 — назад. Но у меня были установлены драйверы общего назначения, которые для регулирования направления вращения колес используют отдельный сигнал F/R. Этот казус я обошел просто — благо, в талмуде с параметрами есть MOT_PWM_TYPE, где можно выбрать BrushedWithRelay и автопилот будет считать, что у него установлены коллекторные двигатели постоянного тока, где реверс осуществляется отдельным сигналом (реле). В нашем случае это не совсем так — двигатели у нас бесколлекторные, но механизм взаимодействия автопилота с ними тот же. При этом для Pixhawk’а сигналы управления направлением F/R должны быть подключены на AUX5 и AUX6.

Настройка типа мотора и реверса

Следующая проблема также была связана с колесами. Дело в том, что колеса на левом и правом бортах установлены зеркально — это нужно, чтобы провода выходили внутрь агрегата, там их сложнее случайно повредить. Но из-за этого, направления вращения для бортов отличаются, т.е. для того чтобы машина ехала вперед надо подать на левый борт сигнал вперед, а на правый — назад. Вроде бы, ничего сложного — просто инвертировать один из сигналов F/R. Но я так и не нашел никаких настроек на этот счёт. Всё, что касается способа управления моторами с отдельным сигналом F/R сведено к параметру MOT_PWM_TYPE. В общем, началось длительные танцы с бубном — изменение настроек автопилота, переключение обмоток моторов на драйверах и много чего ещё. Если честно, я так и не понял, что именно из этого помогло, но в какой-то момент все колеса стали нормально управляться.

Но это были ещё не все проблемы с колесами. Дальше нужно было выровнять скорости колес, т.к. при одном и том же управляющем воздействии колеса явно крутились по-разному, причем все 4. Это удалось сделать только примерно — мерить обороты было нечем, так что подкрутили «на выпуклый военно-морской глаз».

Связь

После того как вопросы управления были отработаны, робот был отпущен на свободу. Но первый же заезд выявил существенные проблемы со связью. Управление с пульта проходило на ура, но вот телеметрия и изображение с FPV камеры пропадали уже на расстоянии 40-50 метров. Причем, сначала исчезала телеметрия. Это было тем более странно, что телеметрия работала на частоте 433 МГц и по расчетам должна была нормально работать на расстоянии как минимум 1 км. С камерой как раз было всё понятно — передатчик работал на частоте 5,8 ГГц. Для летающих беспилотников это нормально — там почти всегда прямая видимость, а вот для ползающих это не подходит.

Во время первого заезда пришлось немножко потаранить соседский забор при развороте из-за резкого ухудшения качества FPV картинки 🙂 Но всё обошлось.

Уже по возвращении в СПб я притащил блок управления на работу и смог проверить комплектные антенны телеметрии. Результат был немного предсказуем — антенна, заявленная на 433 МГц, по факту имела пик в районе 390 МГц. Но не это было главным — основной ущерб радиосвязи наносили кривые настройки радио-трансивера. По умолчанию он был настроен так, что минимальная частота 433 МГц, а максимальная 414 МГц. Т.е. максимальная меньше минимальной. Не знаю, зачем так было сделано и как оно вообще могло при этом работать, но после перенастройки частот на максимально допустимый диапазон (от 414 МГц до 460 МГц) RSSI вырос аж на 100 (!!!) попугаев (RSSI этот трансивер меряет попугаями, их потом надо переводить в децибелы по специальной формуле). Изначально у меня на дальности в 1 метр было около 120 попугаев, после перенастройки стало 220. Т.е уровень сигнала вырос с -64 дБм до -11 дБм.

Навигация

А вот тут всё сложнее. На предыдущем видео хорошо видны постоянно вылезающие ошибки типа «Bad Gyro Health» и «Error compass variance«. Гироскоп, действительно, всё время показывал какую-то нездоровую активность. То всё нормально, то вдруг на ровном месте (буквально — т.е. стоя на столе на ровном киле) показывал, что мы уже куда-то поворачиваем, причем, весьма лихо. Я пока не нашел способа справится с его загонами. Возможно, неисправен сам гироскоп.

С магнитометром (компасом) всё обстояло не так однозначно. Откалибровать его нормально на большой и тяжелой машине не так просто. К тому же, сама машина — это примерно 80 кг стали, что не лучшим образом сказывается на показаниях магнитометра. С этим пока тоже непонятно что делать.

И, наконец, GPS. Штатный GPS приемник, выданный китайцами на сдачу от покупки Pixhawk’а, годится только для определения в каком полушарии вы находитесь. Дальше у него точности не хватает. Никаких выдающихся результатов я от него и не ждал, но то, что он продемонстрировал — это просто днище. Он еле-еле попадает в 10 метров. Для автономного передвижения робота потребуется точность существенно выше. Скорее всего, придется ставить RTK-шный приемник, но это недешево.

Аэрофотосъёмка

Mission Planner по умолчанию использует карту от гугла. Там можно переключать и есть много разных вариантов, но ни один из них не даёт нужное мне разрешение спутниковых снимков в заданном районе. Поэтому в один из прекрасных августовских дней я напряг брата, у которого простаивал без дела DJI Mavic Pro. Надо было извлечь хоть какую-то пользу из этого жужжащего китайского кукурузника. Поэтому с высоты 150 метров был сфотографирован район проведения испытаний. Получилось 8 кадров, которые потом были соединены при помощи Image Composite Editor. Программа предназначена для сшивания панорам, но для моей задачи тоже неплохо подошла.

Сшитая панорама

После того, как снимки были объединены в один кусок, получившуюся карту нужно было привязать по координатам. Это относительно легко делается в специализированном ПО Global Mapper. Для этого нужно снять координаты каких-либо объектов на местности, а потом обозначить их положение на карте. Для этой карты были взяты 5 точек (одна в центре и 4 по краям карты). После этого нужно выгрузить т.н. Google maps tiles и уже их подсовывать Mission Planner‘у. Мануал в картинках тут.

Аэрофотосъёмка, подсунутая Mission Planner’у

В общем, получилось неплохо, да и времени (с учетом замера координат на местности) заняло — один вечер.

А пока шли испытания, главный инженер занимался своим обычным делом 🙂

Главный инженер

Выводы

  • Оно работает) Кое-как, но работает. Т.е. концепция платформы в таком виде вполне жизнеспособна. В процессе испытаний был произведен прогон платформы по картофельному полю с ботвой.
Выезд на картофельное поле

А также по уже выкопанным бороздам.

Едем по выкопанному

Сама платформа движется неплохо. Нормально поворачивает. Имеет хорошую грузоподъёмность. Иногда не хватает подвески;

  • Требуется некоторая доработка конструкции для крепления action камеры;
  • Нужно что-то делать с навигацией. В текущем варианте ни о каком автономном движении и речи быть не может;
  • Со связью вроде бы всё понятно, но на всякий случай надо установить нормальные антенны (и на робота и на базу);

Планы

Следующая порция испытаний назначена на конец декабря. К этому должны быть внесены следующие изменения:

  • Замена передатчика телеметрии на более мощный (500мВт);
  • Замена антенн на самом роботе и на базе;
  • Замена передатчика и приемника FPV камеры с переходом на более низкие частоты (1200 МГц);
  • Замена GPS приемника на роботе;
  • Установка антенного поста с выносом антенн на крышу гаража для робота;
  • Установка солнечных панелей на робота;
  • Установка бортов на робота.

About the Author: admin

Добавить комментарий