Ardupilot на omnibus f4pro\matek f***-wing

Sensorisis

вот кстати сейчас тоже думаю на лоре собрать хотя бы односторонняя будет. если у вас работает, то значит можно собирать. я так понимаю у вас и управление через Qczek LRS ?

РД00
Sensorisis:

Какие есть доступные средства для этого?

Использовал UltimateLRS. Плюсы - MP работает почти с той же скоростью, что и по USB. Минусы - 1000 мВт 430 Мгц передатчик на борту наводит на все. И не для коптеров, антенну надо выносить. У меня в московском грязном эфире дальше 1.5 км не получалось. Плюс закрытый код. Описывал вот здесь.

Собираюсь пробовать openlrsNG gitsly fork, специально доработанную под Mavlink. В вариантах 433 и 925 МГц. Скорость телеметрии поменьше, дальность побольше и все настраивается.

Железо - HobbyKingовские модули OrageLRS, их же приемники, или самодельные модули и приемники на Arduino mini и RFM22/23bp (100 и 1000 мВт). Bluetooth в модуле, мобильник с Tower или ноут c MP коннектится к нему.

Ну и Bluetooth на борту, самое простое. Вообще ничего не надо, мобильник коннектится к борту метров на 10-15.

Очень интересно было бы добавить код OpenLRSng в сам Ardupilot. Разъем SPI на Omnibus’ах есть, к нему цепляется RFM23BP. Но это надо с силами собраться.

РД00

Присобачил к KingKong F4 20x20 барометр и запустил Ардупилот на нем.

Такую пайку не рекомендую никому 😃

AndreyI
Sensorisis:

да, они добавили 2812 но это только начиная с версии 4.0, но нет управления как в айнав.

Там как оказалось, есть не очевидный нюанс с подключением этих диодов.
Если подключаем например к F405-Wing, нужно учитывать что выходы S1-S9 разбиты на группы 1-2, 3-4, 5-6, 7-8-9. Каждая группа использует свой таймер. И если скажем на S8 мы повесим диод, то S7 и S9 уже не смогут работать как PWM выходы для серв.

РД00

Угу. Это видно в hwdef.dat для платы. Для Omnibus :

#pwm output. 1 - 4 on main header, 5 & 6 on separated header w/o 5V supply, 7 & 8 on CH5 and CH6 pads

PB0 TIM1_CH2N TIM1 PWM(1) GPIO(50)
PB1 TIM1_CH3N TIM1 PWM(2) GPIO(51)
PA3 TIM2_CH4  TIM2 PWM(3) GPIO(52)
PA2 TIM2_CH3  TIM2 PWM(4) GPIO(53)
PA1 TIM2_CH2  TIM2 PWM(5) GPIO(54)
PA8 TIM1_CH1  TIM1 PWM(6) GPIO(55)
PC8 TIM8_CH3  TIM8 PWM(7) GPIO(56)
PC9 TIM8_CH4  TIM8 PWM(8) GPIO(59)
Raider

Есть вот такая пищалка со светодиодами xt-xinte.com/Alarm-Buzzer-Board-WS2812-PLC-Ultra-L…
Помогите запустить светодиоды на 4.0.1 и F405-wing.
Буззер пищит, всё нормально, а вот что не делаю с параметрами ntf_led - никак светодиоды не запускаются. Или оно с 2812 не умеет работать?

AndreyI
Raider:

Или оно с 2812 не умеет работать?

Так только обсудили это, сообщением выше 😃
Попробуйте NTF_LED = 256, SERVO 8_FUNCTION = 120, диод подключайте на 8 канал.

Raider

Спасибо, оно заработало но как я понял - я лишился 7 и 9 каналов.
Странно почему в прошивке не использовали контакт который специально под LED выведен.
И что за значение 120 в servo_function, что оно включает? Пересмотрел все допустимые значения - 93 в описании самое максимальное что нашел.
И светится, почему-то, только один светодиод из двух…

AndreyI

Более подробно про реализацию работы с этими диодами, можно почитать тут: discuss.ardupilot.org/t/…/48580
Информации подробней я не встречал. Что бы светились два и более диодов, это должно быть реализовано в прошивке. На данном этапе, поскольку нет ни какой настройки функционала этих диодов, поддержка более чем одного диода, не имеет смысла. Про вывод LED, полностью поддерживаю ваше недоумение, но у меня ответа нет, видимо разрабы хотят универсальности и не хотят ковырять каждый контроллер индивидуально.

РД00

Научился пересобирать код. Для KK_F4 сделал новый hwdef, изменил подключение барометра с SPI на I2C, а сам I2C вывел на выводы SmartAudio. Туда же сядет и магнетометр.

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

И OSD можно править как угодно под себя. RSSI все-таки начнет показывать failsafe.

ardupilot.org/dev/docs/porting.html
ardupilot.org/…/building-setup-windows-cygwin.html…

19 days later
nemo61

Не получается настроить канал газа на плате Matek. При калибровке радио все индикаторы отклоняются. На газ настроена серва 3. В Mission Planner смотрю выход серв. 1 и 2 индикаторы отклоняются, а 3 нет. И по звуку от ESC слышно, что сигнал от контроллера не поступает.

AndreyI

Что бы заработал канал газа, контроллер надо заармить.

nemo61

По умолчанию 1 канал - Roll - подключен на серву 1. А в Matek на серву 1 подключен канал газа. Не хотелось бы менять подключения к плате. Как можно переназначить 1 канал радио на 3 серву?

Raider

Так в Mission Planner можно назначать что угодно и куда угодно.
https://ardupilot.org › common-rcoutput-mapping
Для удобства есть вкладка Servo Output в Mandatory Hardware - Initial Setup, выбираете нужную функцию рядом с номером канала и все.

18 days later
nemo61

Не получается настроить компас. Компас внешний. Подключал как описано на сайте арду. Сколько бы не крутил крыло больше 33% не получилось. И в настройках “Enable compasses” неактивна.

Raider

А он у вас действительно развёрнут на 180 градусов относительно нормального положения?
В COMPASS_TYPEMASK выбран тип используемого компаса?

nemo61

Значит я не правильно понял описание. 😦 Думал, что система при калибровки сама определит положение компаса. На inav у меня компас работал 270 flip. Попробую поставить.

nemo61
Raider:

В COMPASS_TYPEMASK выбран тип используемого компаса?

Стоит значение 0. А что там нужно прописывать? А что недоступно для выбора “Enable compasses” это нормально?

Raider
nemo61:

А что там нужно прописывать?

Тип компаса который стоит у вас.

COMPASS_TYPEMASK: Compass disable driver type mask

Note: This parameter is for advanced users

This is a bitmask of driver types to disable. If a driver type is set in this mask then that driver will not try to find a sensor at startup
Bitmask Bit Meaning

0 HMC5883
1 LSM303D
2 AK8963
3 BMM150
4 LSM9DS1
5 LIS3MDL
6 AK09916
7 IST8310
8 ICM20948
9 MMC3416
11 UAVCAN
12 QMC5883
14 MAG3110
15 IST8308