ArduCopter Mega: порт на обычную Arduino (тестим)

Musgravehill

Решено!
Проблема была в том, что регуль не мог инициализироваться от Пирата.

Для квадрика в Пирате правим motor_quad.pde. При дизарме мотор не крутится, арминг_мотор - мотор крутится на минимальных оборотах. В полете все отлично.

До первого дизарминга моторы тоже крутятся на минимуме!! Т.е включил плату- моторы крутятся. Сделал АРМ - крутятся, Дизарм - не крутятся. Буду разбираться… зато хотя бы прошитые регуляторы запускаются =)

static void output_motors_disarmed()
{
	if(g.rc_3.control_in > 0){
		// we have pushed up the throttle
		// remove safety
		motor_auto_armed = true;
	}

	// fill the motor_out[] array for HIL use
	for (unsigned char i = 0; i < 8; i++) {
		motor_out[i] = 1000; //ТЫСЯЧУ СЮДА
	}

	// Send commands to motors
	APM_RC.OutputCh(CH_1, 1000);//ТЫСЯЧУ СЮДА
	APM_RC.OutputCh(CH_2, 1000);//ТЫСЯЧУ СЮДА
	APM_RC.OutputCh(CH_3, 1000);//ТЫСЯЧУ СЮДА
	APM_RC.OutputCh(CH_4, 1000);//ТЫСЯЧУ СЮДА
Covax

как в мультивие теперь? ну наконецто 😃 спасибо 😃

SovGVD

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

вообще то правильнее в output_motors_armed() это сделать, там где


int out_min = g.rc_3.radio_min;
int out_max = g.rc_3.radio_max;

переписать на


int out_min = 1000; // смотря как регуль настроен, или например g.rc_3.radio_min+150
int out_max = g.rc_3.radio_max;

или в настройках планера эти же значения поменять (но опасно, так как с аппой косяк скорее всего будет)

тогда при арме будут пропы вращаться

upd: еще это надо делать в коде для своей рамы, а то кто-то сделает к quad, а летает на гексе и будут вопросы “почему не работает”

Musgravehill
SovGVD:

если честно - странно решение - сделать вращение моторов при дизарме, да еще и не смотреть на калибровку регулей - для суицидников

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

SovGVD
Musgravehill:

У меня регули прошитые не запускались, пришлось помудрить с кодом, лишь бы они инициализировались. В них наглухо вшита калибровка.

для специфичного железа имхо стоит писать сразу большими жирными буквами, что это только для %название_железки% - потому что щас кто-нибудь проверить на регулях откалиброванных например 900-1900 и получит пропеллером в глаз, пока питание подрубает

RA4ASN

Пора собирать регуль на ардуино 😃

Sir_Alex

Ура товарищи пираты!
Рад сообщить о выходе Альфа версии MegaPirateNG 2.1.1 R8. Версия основана на ArduCopter 2.1.1 R8 Alpha. Она предназначена только для тестирования!!!
В данной версии кардинально переделана система драйверов. Так что, если вы не найдете привычных файлов - не пугайтесь, что то осталось на старом месте, что то переехало в другое. Например Сонар теперь работает через свой собственный драйвер (файл AP_AnalogSource_PIRATES.cpp).
Самое важное дополнение - это поддержка новейшей платы датчиков FreeIMU 0.4.1 (Спасибо Varesano за предоставленный образец). На этой плате стоит сенсор MPU6000 (Гира и аксель), барометр MS5611 и магнитометр 5883L. Все датчики работают с этой прошивкой! См. видео.
Так же, начиная с этой версии тип сенсоров выбирается в APM_Config.h, параметр PIRATES_SENSOR_BOARD.
Кроме всего этого, множество изменений произошло в основном коде ArduCopter’a, список изменений можно почитать тут

Тем не менее, есть пара минусов у этой прошивки: Т.к. все драйвера переехали на новую либу I2C, то драйвер UBLOX GPS I2C пришлось временно убрать. Так же пришлось убрать поддержку акселя BMA020, т.к. были вопросы по коду и проверить правильность я не мог.

Теперь, самое важное, что вам надо знать, чтобы скомпилировать прошивку и сконфигурировать ее:
1. Прочитайте release_notes.txt и если у вас плата BlackVortex, то release_notes_BlackVortex.txt
2. Если у вас Arduino Mega 2560, то вам надо использовать специальную версию Arduino IDE 0022 с включенной опцией relaxpath. Скачать ее можно тут code.google.com/p/ardupilot-mega/…/detail?name=ard…
3. Тип датчиков теперь выбирается в APM_Config.h а не в файле AP_ADC_ADS7844.cpp
4. Маппинг каналов RC переехал в файл APM_RC_PIRATES.cpp

ах да, ссылка на прошивку

SovGVD
Sir_Alex:

пришлось убрать поддержку акселя BMA020

имхо тут никто и не летал кроме меня на этом датчике, так что не страшно
в итоге то - оно летает? или просто датчики работают?

Sir_Alex
SovGVD:

в итоге то - оно летает? или просто датчики работают?

Проверены только датчики, попробую сегодня полетать, если успею…

tusik

Из первых замечаний: не работает PPM SUM. В 49 работает

Li2n

Прошу прощения,я так и не понял для Ж-коптера, что и где заказать\купить, чтобы был контроллер,барометр,сонар,компас,OSD…все кроме GPS , Желательно управление подвесом.
Nano, mega адруину??? Где брать то не дорого???

Li2n

tusik Благодарю, а дешевле бывают исполнения, или аналоги?

ligor73
SovGVD:

имхо тут никто и не летал кроме меня на этом датчике, так что не страшно
в итоге то - оно летает? или просто датчики работают?

Всем здравствуйте в этом году.
У меня тоже плата с этим датчиком.
Поэтому я хотел бы попросить Sir Alex если будет возможность оставить код в прошивке.
С уважением.

Syberian

Только что вернулся с облета в полях. Прошива 49, трикоптер.
Мороз -15, ветер, а летает обалденно и на месте держится. Хотел ФПВ замутить и видосом похвастаться, но долбанный новый передатчик lawmate 1Вт подкосячил. Сплошные пшики на видео. Невозможно понять ничего. 😦

Sir_Alex

Это что, я вот вчера хотел полетать. Запускаю коптер, даю газу… а он не взлетает, я еще газу - он не взлетает. Смотрю, а он дует не в ту сторону!
Долго не мог понять, как я умудрился неправильно настроить вращение моторов. Уже пошел перепаивать и обнаружил что я просто неправильно поставил все пропеллеры, хы хы. 😃

Sir_Alex
tusik:

Из первых замечаний: не работает PPM SUM. В 49 работает

Странно, там вроде ничего не менялось…

Кстати, скоро должны снова появится в продаже FreeIMU 0.3.5_MS с барометром MS5611 😃

Sir_Alex
Syberian:

это такой новый ОСД называется Black Vortex HUD или bvHUD

Мне Сергей говорил что делает свой OSD.
На чем сделали по итогу? AVR или ARM. Видео чем обрабатывается MAX7456 или просто SYNC ловите?

Syberian

что там за Сергей? 😃
единственно кого я знаю - это Алекс Иванов. Сделано на AVR, полностью графический, без макс

tusik
tusik:

не работает PPM SUM.

Опять сам дурак:) Не то раскоментил. Пока все на столе работает. Только что-то подтормаживает. Толи новый планер, толи прошивка…