Проект Мегапират на самик!
Интерпретатор у нас один - на борту.
В НСУ открыт udp-сокет, к нему приконектил внешнюю прогу-интерпретатор, но не с VB, а сишный - это и есть второй(который уже есть).
В КИ на борту написал printf(“rpy %f f %f\n”,…); строчка прилетела в stdin наземного с-скрипта.
Он ее прочел и решил подрулить, сказал printf(“cmd”); строчка cmd прилетела на борт.
Вроде так?
Засада в том, что интерпретатор на борту думает, что это ему, а не передает как есть в stdin бортового скрипта.
Штатное поведение интерпретатора - передать свой вход прямиком в скрипт, проверял.
Можно ли разделить данные: из НСУ - в интерпретатор для обработки, а из udp - прямиком в stdin бортового скрипта ?
Или, м.б., сделать обертку: to_script(“str”), чтобы str прочесть fgets’ом на борту ?
(Т.е на земле говорить: printf(“to_script(\“str\”)”), to_script съест бортовой интерпретатор, а str пойдет в скрипт.)
…можно грузануть сразу из файла одной кнопкой. А можно сидеть и построчно вбивать в окошке терминала. Результат будет одинаковый.
Позапускал в своем, закоментировав ScriptControl_API, все ОК.
Но, если передавать только параметры для ф-ии без самого текста, то меньше трафик.
Или, м.б., сделать обертку: to_script(“str”), чтобы str прочесть fgets’ом на борту ?
Пургу написал 😃
Этот вариант и так уже есть. Все отлично, нет проблем.
Можно писать пилотажные скрипты 😁
Можно писать пилотажные скрипты
Вполне. Вывод серво от скриптов есть 4 канала прямо на микшер. Хоть подруливать, хоть самому рулить скриптом.
С таймингами нужно будет поизвращаться, примерно как на ZX-спектруме, когда на бордюре рисовали. Но время обработки одной инструкции - суть величина детерминированная. В мануале цифры есть.
Нарисовал немного скриптов на пробу.
//фото-змейка(план), фотик в автомате
void fzp(float hdg1, long dis1, float hdg2, long dis2, long dis3) {
AP_SetFlightMode(FM_ALT);
do {
AP_GotoHdgDisAltC(hdg1, dis1, 0);
AP_GotoHdgDisAltC(hdg2, dis2, 0);
AP_GotoHdgDisAltC(hdg1 + 180.0, dis1, 0);
AP_GotoHdgDisAltC(hdg2, dis2, 0);
} while (XPoint_home.dis < dis3);
AP_SetFlightMode(FM_RTH);
}
//фото-круговая панорама
void fkp(short k) { short az;
AP_SetFlightMode(FM_STAB );
az = XPoint_home.hdg;
AP_WSriteRC(CH_РНаправления, k);
while (az == XPoint_home.hdg);
delay_ms(1000); //если качнет ветром
while (az != XPoint_home.hdg);
AP_WSriteRC(CH_РНаправления, 0);
}
А это на тему “пилотажные скрипты”. К бочке еще бы надо приделать разновидность стабилизации но направлению.
//петля
void petlya(short k) { short pt;
AP_SetFlightMode(FM_MANUAL);
pt = X_pitch;
AP_WSriteRC(CH_Двиг, Двиг_max);
AP_WSriteRC(CH_РВысоты, k);
while (pt == X_pitch);
delay_ms(1000);
while (pt != X_pitch); //не застрять бы
AP_SetFlightMode(FM_STAB );
}
//бочка
void bochka(short k) { short rl;
AP_SetFlightMode(FM_MANUAL);
rl = X_roll;
AP_WSriteRC(CH_Элероны, k);
while (rl == X_roll);
delay_ms(500);
while (rl != X_roll); //
AP_SetFlightMode(FM_STAB );
}
//поворот по дуге
void ppdug(short ang) { short y;
AP_SetFlightMode(FM_STAB );
AP_WaitForCompletion(0);
for (y = (X_yaw + ang) % 3600; y != X_yaw;
AP_GotoHdgDisAltC(X_yaw + 30, 100, 0));
AP_WaitForCompletion(1);
}
Так ?
Когда авторежимы на коптеры ждать?
Вторая зима уж пошла, народ жаждет автоматические режимы!!!
Сам не знаю. В настоящее время не имею возможности заниматься коптерами.
народ жаждет автоматические режимы!!!
А уже забил что либо ждать от Олега… Уже игловектора жду))
Правду говорят, проект который ведет один человек, чаще всего остается недоделанный и заброшенный…
Правду говорят, проект который ведет один человек, чаще всего остается недоделанный и заброшенный…
ничего себе недоделанный!
просто ап этот больше самолётный чем коптерный. ИМХО принять это как факт и успокоиться.
в дальнейшем да, придётся Олегу что-то придумывать чтобы вовлечь народ в разработку.
но ему это лучше видно
просто ап этот больше самолётный чем коптерный.
Олег обещал полную коптерную поддержку. Для этого и покупал… На самолетах у меня есть чему летать. А вот на коптер приличной ОСД за приемлемые деньги, еще не было.
На коптеры и я повелся.
Олег а есть вариант того же ардупилота портировать на твою плату?
Без авто режимов летает твой вариант изумительно, пофиг на вибрацию, чем страдают усякие ардупилоты.
По поводу обещаний, “повелся” и т.п. Когда вы покупаете железку, у нее есть заявленный функционал и ему она должна соответствовать. И соответствует ведь.
Не устраивает функционал - в барахолку ее и ставьте то железо, где четко заявлено “у меня есть авторежимы для коптерофф” и т.п.
недоделанный и заброшенный…
Текущая версия прошивы 2.0.5149 и наземка 87 (на русском). Давность- 23 февраля.
Такой вот заброшенный проект. А человеков в нем - два.
Олег, не парься - продолжай работать! А поболтать тут есть кому…
И соответствует ведь.
Понятно.
Если вы считаете что правы пусть так и будет. Значит это я себе на фантазировал лишнего…
А поболтать тут есть кому…
Умолкаю…
Умолкаю…
Алекс без обид…
Я имел ввиду что Олег и так очень оперативно прошивки меняет и обновляет. если какой косяк вылезает - то и в течении суток поправляет!
А на счет коптерных режимов… Думаю, что и к ним придет черед, просто не надо сразу с плеча!
прости если мои слова задели…
Сегодняшний (уже вчерашний…😉) полет…
Все штатно и предсказуемо!
Жаль “девушка” мало слов изучила…😆
ПС прошивка и наземка - крайние…
Решил на Н-квадрика перекинуть, скачал свежую наземку build86 и прошивку 5152
Что то не нашол калибровку компаса, спрятали или пофиксили?
И напомните пожалуйста Mag. Declination, сколько ставить для Сургута ХМАО, 61°15′00″ с. ш. 73°26′00″ в. д. / 61.25000° с. ш. 73.43333° в. д. / 61.25000; 73.43333
Да, еще, подключил Блютуз Хобикинговский, HB-06, работает, обновлять прошивки можно через него или не стоит?
подключил Блютуз Хобикинговский, HB-06, работает, обновлять прошивки можно через него или не стоит?
я бы сказал, запрещено. 100% гарантия слета прошивки. Только по проводам!
компас самокалибруется, склонение Сургута 16.7.
Наземка свежая теперь тут, на русском (№87) dl.dropbox.com/u/63786348/mpx/mpx_gcs_rus.zip
Чето не понял я с Н-коптером, выбираем и подключаем как Х-коптер?
Такая же фигня как с мультивихой, по дигонали моторы заводятся, пыьается поднятся и облом.
Ну да, как обычный Х. В квадриковом варианте моторы ВООБЩЕ одновременно крутятся до определенного газа.
Запиши лог старта, если есть (длинный юсби-кабель / модем / самописец / КСТ).
В руководстве в приложении 2 есть “распиновка” моторов и направление вращения.
Еще проверь ограничители углов в общих настройках, это не влияет, но будет мешать управлению.
Похоже проблема в компасе, сильно уводит как только газу чуть даешь, убираешь, а он все равно пытается его выровнять при следующем добавлении, в итоге по диагонали и как попало работает.
Логи с дома закину.
А что за галочка выключить самокалибровку, похоже компаса, если отключаю, то где в ручную откалибровать его?
эта галочка останавливает непрерывную самокалибровку компаса.
“Вручную” закалибровать можешь, побултыхав плату в воздухе с отключенными моторами. Вообще, оно само калибруется при эксплуатации, но медленнее.
Чтобы наводки от движков не сбивали калибровку, ставишь эту галочку, когда компас начинает работать удовлетворительно.
От съезжания азимута набекрень это не спасет, но зато выправится сразу после снятия наводок.
В общем, уводи силовуху подальше от компаса. Летал же на трехе замечательно!