AP-pixhawk

Некоторое время назад появился новый контроллер, под который появились прошивки Arducopter Arduplane и хотя сам контроллер не имеет к ардуино никакого отношения, фактически не форматен для моего сайта -тем не менее я решил его попробовать и опубликовать результаты этого знакомства.

Итак контроллер именуемый как Pixhawk это решение объединяющее полетный контроллер известный ранее как PX4 и плату ввода-вывода PX IO в одном. Принципиальное отличие от популярного ныне АрдупилотМега(APM) - новый  контроллер имеет высокопроизводительный 32-битный процессор, имеющий значительный запас памяти. Это делает его более перспективным для развития следующих поколений прошивок. В настоящее время существенным отличием является то, что программное обеспечение Pixhawk, в отличии от АПМ позволяет испытать работу фильтра кальмана для более точной обработки показаний сенсоров. Для конечного пользователя это может означать что такой контроллер (после того как работы над фильтром кальмана будут завершены) сможет работать более устойчиво в условиях вибраций.





"Первое пощупать"

Итак контроллер попавший мне в руки был уже прошит используя программное обеспечение "CGS Station"  это так называемый "нативный софт", честно говоря не возьмусь утверждать летает на этом софте кто или нет, но мне как фанату ардукоптера он вообще неинтересен. Поэтому первая задача - залить туда прошивку Arducopter.

первое что я ожидал (после установки драйверов)  соединиться по юсб с мишен планером, указал новый COM порт и скорость 115200 но многочисленные попытки ни к чему не привели . 
Затем я попробовал войти в терминал, выбрал тип PX4 скорость 115200. И то что я там увидел - меня шокировало. консоль линуксоподобной ОС. в которой есть файловая система, а ардукоптер для него - папка с программой. 

Что важно знать если на этом контроллере раньше стоял сторонний софт:
  • флешку надо отформатировать, желательно до заливки прошивки ардукоптера, форматируется она через картридер файловой системой  fat32  со стандартным размером кластера
  • прошивку "ардукоптер" надо загружать в полетный контроллер используя программу "мишен планер", программа "CGS Station" загружает альтернативное программное обеспечение, не имеющее отношение к ардукоптеру -его загружать ненужно.
  • После первой прошивки ардукоптера нужно держать нажатой кнопку которая подключена в разъем "switch" - при этом перегружается прошивка в pxio из основной части прошивки (процессор отвечающий за ввод-вывод) 
если этого не сделать то на флешке  в APM\BOOT.LOG ошибку No PX4IO board found. (файл можно посмотреть подключив флешку через картридер к компьютеру)
  • ряд проблем решается запуском в терминале следующих команд. это так называемая "чистка" 
            mtd start (enter)
            mtd erase (enter) 
  • Если флешка вставлена но в терминале вы видите приглашение операционной системы вместо версии ардукоптера и привычного меню - это означает что программа "ардукоптер" не запустилась, причину ее капризов следует искать в логах на флешке  в APM\BOOT.LOG
  • некоторые опции конфигурации (например включение PPM входа ) осуществляются путем создания пустого текстового файла с определенным именем (следует строго соблюдать регистр букв)
  • особенностью подключения пиксавк по USB в отличие от апм  - перед тем как подключаться терминалом, после включения кабеля следует подождать до 30 сек (он прилично по времени грузится и не отдает мишен планеру параметры пока идет загрузка)
  • после того как ардукоптер нормально загрузился в терминале возможно сделать настроек так как мы привыкли это делать на АПМ setup - reset - Y
  • Основное отличие Пиксавка от АПМ наличие расширенного фильтра кальмана, в момент написания этой статьи актуальна девелоперская версия AC 3.2RC7 , в ее параметрах это главное отличие выключено, для полноценного использования контроллера его следует включить. параметр находится в полном списке параметров AHRS_EKF_USE, для включения следует установить значение 1.
  • Чтобы предотвратить запуск программы ардукоптер и попасть в терминале в консоль операционной системы следует включить контроллер при извлеченной флешке




Описание разъемов


1 Spektrum DSM receiver - гнездо для подключения приемник радио управления стандарта "Спектрум"

2 Telemetry - подключение радиомодемов для связи с компьютером
3 Telemetry - подключение OSD (система наложения полетных показателей на видеокартинку при полетах по камере)
4 USB - подключение к компьютеру (есть еще боковое гнездо со стандартным микро-юсб разъемом)
5 SPI (serial peripheral interface) bus - цифровая шина общего назначения
6 Power module - разъем подключения оригинального модуля питания с сенсорами напряжения и тока
7 Safety switch button - кнопка "безопасности"
8 Buzzer - зуммер
9 Serial - последовательный порт общего назначения
10 GPS module - подключение навигационного приемника
11 CAN (controller area network) bus - цифровая шина для подключения устройств стандарта  CAN
12 I2C splitter or compass module - разъем подключения внешнего компаса
13 Analog to digital converter 6.6 V -порт аналогово-цифрового преобразователя 
14 Analog to digital converter 3.3 V -порт аналогово-цифрового преобразователя
15 LED indicator - многоцветный индикатор
Особенности
  • Привычные по АПМ 5-контактные разъемы телеметрии и жпс тут стали  6-ти контактными, поэтому кабели от комплектов АПМ не подойдут.
  • распиновка разъемов тут, следует отметить что порты телеметрии хотя и значатся как 3,3 терпимы к входному сигналу 5 вольт

1 Вход для подключения приемника радиоуправления со стандартом выходного сигнала PPM 
 (для использования следует создать файл на карте памяти # To enable PWM on FMUv1 on ttyS1 add a /fs/microsd/APM/AUXPWM.en file следует соблюдать регистр имени файла и расширения, файл может быть пустой)
2 Futaba S.Bus receiver input - подключение приемника  приемника радиоуправления Futaba
3 Main outputs - PWM основные выходы (подключение регуляторов оборотов мультикоптера)
4 Auxiliary outputs - PWM дополнительные выходы (например управление сервоприводами подвеса камеры)

Вывод:

с потребительской точки зрения у Pixhawk, в отличии от АПМ, отсутствуют  раздельные каналы PWM для подключения управления от приемников не имеющих выхода в стандартах PPM, futaba, Spektrum
Тем кто не желает расставаться с привычной аппаратурой без поддержки этих стандартов придется приобрести плату преобразователя "PPM Encoder"

Результаты тестов

Полетный тест №1 прошивка ардукоптер 3.2rc7


13 сентября 2014 примерно в 13 часов поставил китайский пиксавк на тестовый легкий квадрокоптер
попробовал в стабе повисеть потом в альтхолде
в режиме стабилизации вел себя адекватно, а в альтхолде мне показалось что держать высоту труднее чем в стабе.
решил что могут быть виноваты вибрации, настроил запись лога иму и пошел еще раз летнуть.
чуть повисел в альтхолде потом его постепенно стало кренить в мою сторону. я жму от себя а он на меня и уже идет на запредельный угол.
я как то даже неожиданно для себя спокойно отшагул в сторону пропустив его упасть на то место где я стоял.
высота была всего метр и из потерь - только проп один сломался

ну думаю ладно, главное сделано, гляну логи.
в логе номер 13 оказалось что вибраций нет - идеальная нитка
но там глитч у жпса значится (жпс модуль гаденький юблокс, причем гаже своих собратьев, просто неуда
чный), а я не отключил AHRS GPS GAIN в полном списке параметров. У меня давно сомнения на его счет что глитч детектор не успевает отключить коррекцию центрифугальных ускорений и в результате уровень в контроллере заваливается.

ну, думаю, ладно, отключу и попробую еще раз.
после ремонта - пробую включить не армится и конектится к компу через раз, то пишет AHRS BAD, то проверьте компас
попробовал перекалибровать компас а там офсеты 500-700.а это указывает на неисправность контроллера или глюк прошивки. Поскольку с прошивкой быстрее и проще - 
все сбросил перепрошил -но результат остался  тот же..
вскрыл коробочку а там оказалось что у гироскопа и компаса половина ног не запаяна.. на ногах проца капли от активного флюса которые начали его разъедать
появилась гипотеза почему высоту не держал - кусочек поролона положенный в корпус не то что не сжимается до половины объема как это надо - просто болтается корпусу.
Вывод: за китайцами надо все проверять под микроскопом...
надо будет все заново перепаять, помыть


Pinouts

TELEM1, TELEM2 ports

Pin Signal Volt
1 (red) VCC +5V
2 (blk) TX (OUT) +3.3V
3 (blk) RX (IN) +3.3V
4 (blk) CTS +3.3V
5 (blk) RTS +3.3V
6 (blk) GND GND

GPS port

Pin Signal Volt
1 (red) VCC +5V
2 (blk) TX (OUT) +3.3V
3 (blk) RX (IN) +3.3V
4 (blk) CAN2 TX +3.3V
5 (blk) CAN2 RX +3.3V
6 (blk) GND GND

SERIAL 4/5 port - due to space constraints two ports are on one connector.

Pin Signal Volt
1 (red) VCC +5V
2 (blk) TX (#4) +3.3V
3 (blk) RX (#4) +3.3V
4 (blk) TX (#5) +3.3V
5 (blk) RX (#5) +3.3V
6 (blk) GND GND

ADC 6.6V

Pin Signal Volt
1 (red) VCC +5V
2 (blk) ADC IN up to +6.6V
3 (blk) GND GND

ADC 3.3V

Pin Signal Volt
1 (red) VCC +5V
2 (blk) ADC IN up to +3.3V
3 (blk) GND GND
4 (blk) ADC IN up to +3.3V
5 (blk) GND GND

I2C

Pin Signal Volt
1 (red) VCC +5V
2 (blk) SCL +3.3 (pullups)
3 (blk) SDA +3.3 (pullups)
4 (blk) GND GND

CAN

Pin Signal Volt
1 (red) VCC +5V
2 (blk) CAN_H +12V
3 (blk) CAN_L +12V
4 (blk) GND GND

SPI

Pin Signal Volt
1 (red) VCC +5V
2 (blk) SPI_EXT_SCK +3.3
3 (blk) SPI_EXT_MISO +3.3
4 (blk) SPI_EXT_MOSI +3.3
5 (blk) !SPI_EXT_NSS +3.3
6 (blk) GPIO_EXT +3.3
7 (blk) GND GND

POWER

Pin Signal Volt
1 (red) VCC +5V
2 (blk) VCC +5V
3 (blk) CURRENT +3.3V
4 (blk) VOLTAGE +3.3V
5 (blk) GND GND
6 (blk) GND GND

SWITCH

Pin Signal Volt
1 (red) VCC +3.3V
2 (blk) !IO_LED_SAFETY GND
3 (blk) SAFETY GND

Светодиодный индикатор.

Видео YouTube


Ссылки

сайт разработчика аппаратного обеспечения тут (англ.яз)
схемы различных версий контроллера тут
официальный форум поддержки Ардупилот тут (англ.яз)
документация Arducopter тут (англ.яз)
ссылка на обсуждение Arducopter 3.2 betaX с разработчиками программного обеспечения (англ.яз)
обсуждение настройки и эксплуатации - русскоязычный форум ардукоптер тут
подборка материалов по ардукоптеру на русском языке тут
обсуждение проблем PX4 тут


Решение проблемы включения при низких температурах

BAD ACCELL HEALTH

http://diydrones.com/m/discussion?id=705844:Topic:2124935
если быть кратким то следует нагрузить питание сенсоров 3.3 вольта резистором 220 Ом

 "VDD_3V3_SENSORS rail needs to be connected to GND via 220 Ohm resistor"

Comments