Автопилот Arduplane - открытое ПО
2 bababababa
вы хотите дописать прошивку ардупилота или написать полностью свой код?
если ардупилот переписываете то пины с колодки заняты управляющими объектами класса описанного в RC_Channel
как инициализировать эти каналы и устанавливать на них сигнал есть в примерах внутри папок библиотек
если пишете полностью свой код то весьма трудно о чем либо говорить не видя этого кода
для того чтобы понять к какой ноге чипа идет радио канал нужно открыть схему APM2 например выходной канал №6 колодки сервовыходов идет через резистор на порт PE5 это 7 нога чипа и соответствнно digital out 3 ардуино
это для UNO/Mega
а какие номера пинов здесь?
А почитать ? Не посмотреть картинки, а почитать ?
The APM2 schematics and board files are here.
Разобраться в схемах, что на какую ногу идет ?
Поковыряться в сырцах : Arduplane 2.65
Поставил батарейку на GPS время на фиксу уменьшилось. Плюс батарейки на 4 выход как по даташиту, резистор на 150 Ом удалён. Держалка батарейки приклеена к плате циакрином.
Супер-пупер прошивка минимосд! Два переключаемых полетных скрина прям с пульта управления, домашняя высота и куча вкусностей, все легко настраиваеммо из конфигурилки.
Все опции работают, только RSSI куда подключать в АРМ1? Какой аналоговый вход для этого предназначен?
Поставил батарейку на GPS время на фиксу уменьшилось. Плюс батарейки на 4 выход как по даташиту, резистор на 150 Ом удалён. Держалка батарейки приклеена к плате циакрином.
имеет смысл поставить вместо выпаянных 150 ом - диод, батарейка будет быстрее заряжаться. без онного она минут пять заряжается
имеет смысл поставить вместо выпаянных 150 ом - диод, батарейка будет быстрее заряжаться. без онного она минут пять заряжается
Я понял из даташита что это должна быть литивая батарейка, типа как в компьютере, но она не аккумулятор - одноразовая. Тоже самое ставят в RTC в часах реального времени. Я не прав?
в даташите не указывается тип батареи, лишь показан принцип куда подключать
я ставлю ионистор на 0,22фарады он не боится переразряда и дозаряжается без контроллера заряда.
пробовал оставлять на несколько часов - держит, на сколько максимально хватает - не засекал
Алексей, спасибо большое за подсказку с RC библиотеками, нашел нужные коды.
Но серво все равно не двигается.
Залил немножко измененный код из примера APM_RC
Purple Radio
#include <Arduino_Mega_ISR_Registry.h>
#include <APM_RC.h> // ArduPilot Mega RC LibraryArduino_Mega_ISR_Registry isr_registry;
APM_RC_APM2 APM_RC;void setup()
{
isr_registry.init();
APM_RC.Init(&isr_registry);APM_RC.enable_out(CH_1);
APM_RC.enable_out(CH_2);
APM_RC.enable_out(CH_3);
APM_RC.enable_out(CH_4);
APM_RC.enable_out(CH_5);
APM_RC.enable_out(CH_6);
APM_RC.enable_out(CH_7);
APM_RC.enable_out(CH_8);Serial.begin(115200);
Serial.println(“ArduPilot Mega RC library test”);
delay(1000);
}void loop()
{Serial.print(“CH:”);
for(int i = 0; i < 8; i++){Serial.print(APM_RC.InputCh(i));
APM_RC.OutputCh(i, APM_RC.InputCh(i));
}
}
С инпут идет 1200 - пульт не подключен.
Серво втыкал во все 8 outputs. Все безрезультатно.
Если воткнуть в inputs-серво оживает, совершает непонятные движения)) но за плату при таком подключении боязно))
“рейка” выходов в отличии от рейки входов с приемника не питается от юсб ни при каком раскладе, вы подключили какое нибудь внешнее питание на средний контакт?
нет канечн) меня же никто не предупреждал)))
а код то верный?
ну тоесть серво надо питать отдельно, ясно, спасибо огромное, надеюсь больше подводных камней не встречу))
RSSI куда подключать в АРМ1?
На форуме люди пишут: I think it just gets the RSSI via mavlink which is not really RSSI but reports the quality of the signal by measuring packet loss. I have the same set up and just installed MinimOSD. I’m also wondering how to set the min max values to work with ezUHF. At the default 0-255 it doesn’t seem to work using those values. diydrones.com/…/how-to-setup-rssi-with-ezuhf-and-a… Это значит, что РССИ берётся расчётным путём из потока передач МАВлинка. Однако в программе resiver_rssi_pin !=-1 это что-то значит привязку к пинам или где? Я дальше программу пока не смотрел, но помню что приёмник подключить можно, где-то в мануале было написано. Ну если не найду пина ничего, можно и так пользовать, достаточно информации от РССИ канала телеметрии.
Супер-пупер прошивка минимосд!
Обнаружилась такая ошибка : когда ёмкость аккумулятора подходит к нулю ОСД (версия 2.1) продолжает показывать, но уже отрицательные проценты. В планировщике такого нет , т.е. скончался акку стоит ноль. Пришлось добавить в Мавлинк
if (current_total1 != 0 && g.pack_capacity != 0) {
battery_remaining = (100.0 * (g.pack_capacity - current_total1) / g.pack_capacity);
if(battery_remaining < 0)
battery_remaining = 0;
Все опции работают, только RSSI куда подключать в АРМ1? Какой аналоговый вход для этого предназначен?
Я думаю, что в один из портов PF0-PF7 , там где аналоговые входы 0 и 1 заняты измерением напряжения и тока. Есть пример как подключается RSSI code.google.com/p/arducopter/issues/detail?id=417&… Но там что-то не получилось с портом 8, а потому пользует 7. Однако не думал, что программу нужно добавлять, искал готовое решение в 2.65, но там этого нет. Да всё это ерунда мне кажется эти децибеллы от РССИ по делу нельзя использовать, ну пропал сигнал, а дальше что делать, антенну повыше поднять или мощность добавить?
code.google.com/p/minimosd-extra/
Супер-пупер прошивка минимосд! Два переключаемых полетных скрина прям с пульта управления, домашняя высота и куча вкусностей, все легко настраиваеммо из конфигурилки.
Залил прошивку, потом чарсеты.
Теперь вместо графики иероглифы… попробовал еще раз то же самое.
Попытался вернуться на стандартную, в графике теже иероглифы. 😦
Шо может быть и как решить?
Попытался вернуться на стандартную, в графике теже иероглифы
Я же говорил, что ЧИППРОГ очень полезный программатор! Обычно в таких случаях я этим программатором стираю всё и перезаписывая взад вместе с бутлуадёром. Не зря там в опциях есть проверка флеш и ЕЕПРОМа на стёртость перед загрузкой новых кодов. Иногда повторяю несколько раз если не проходит на стёртость, что там за поцессы с этой памятью не знаю, однако если такая опция существует значит это нужно делать. Поэтому совет стереть и перезаписать. Можно также применить AVRISP mkII и через АВР студию перезаписать хекс, там предусмотрено стирание перед записью. Где-то писали что когда микросхему часто перезаписывают возникают глюкоподобные неожиданности.
Никаких проблем обсалютно с этой прошивкой, летаю через день, могу предположить криво встал чарсет, но это должно вылечится, залей стоковый mcm через _стандартную_ конфигурилку, потом перепрошей.
Залил прошивку, потом чарсеты.
Теперь вместо графики иероглифы… попробовал еще раз то же самое.
Попытался вернуться на стандартную, в графике теже иероглифы. 😦
Шо может быть и как решить?
Никаких проблем обсалютно с этой прошивкой, летаю через день, могу предположить криво встал чарсет, но это должно вылечится, залей стоковый mcm через _стандартную_ конфигурилку, потом перепрошей.
так пробовал заливать оригинальную прошивку и потом еще кучу всяких чарсетов перезалил. нифига.
Иероглифы даже не то чтобы исчезли, даже не изменились.
Спасибо Алексею Козину. Проблему с минимосд решил.
Оказывается надо и цифровую часть питать и аналоговую.
А я платку снимал, ложил на стол и подключал FTDI. 😃
Естественно видеочип оставался без питания и не принимал в себя чарсеты.
Стандартная нормально пашет. Пробовал екстру прошивать, чистый экран.
То есть вначале пишет что типа миним осд экстра бла-бла-бла и потом чистый экран с камеры.
В итоге пока обратно оригинальную вернул прошивку.
Естественно видеочип оставался без питания и не принимал в себя чарсеты
А я их сразу “срастил” по питанию чего и Вам советую.
А я их сразу “срастил” по питанию чего и Вам советую.
Ну я не знал про такую фишку… А читать инструкции не привык. 😃
Ну я не знал про такую фишку… А читать инструкции не привык. 😃
)) читайте Володь доки, они рулез!) ты когда “экстру” залил, конфигурилкой экраны хоть прошил? Вполне возможно у тебя второй эран пустой после перепрошивки и на восьмом канале переключалка режимов (так по умолчанию в прошивке), так?)
По minimOSD в Вики очень даже подробно расписано: code.google.com/p/arducam-osd/wiki/minimosd
Charset действительно лежит не в eeprom контроллера, как обычно кажется с первого раза, а в микросхеме видеоконтроллера, поэтому если ее не запитать, он не прошьется.
Кстати MinimOSD Extra тоже работает:
)) читайте Володь доки, они рулез!) ты когда “экстру” залил, конфигурилкой экраны хоть прошил? Вполне возможно у тебя второй эран пустой после перепрошивки и на восьмом канале переключалка режимов (так по умолчанию в прошивке), так?)
Я знаю что такое RTFM. 😃
Но все равно лень. 😃
Я предполагал такой вариант поэтому все 3 экрана сконфигурил и залил.
Пробовал потом читать настройки, нормально все.