Fail-Safe - Автопилот для полетов по камере
Во сколько обойдётся решение с GPS с нуля? Про облака… Если в поток попал, то и GPS не спасёт…
Рублей в 3000-5000 . Это не дорого. Планер стоит 30000 - 50000. GPS как раз спасет из любого потока. Ибо скорость в пикировании легко превышает 200 км в час. Проблема в том, чтобы пикирование из облака было в сторону пилота, а не в противоположную.
Поставил на радиоуправляемую а/машинку автопилот из GPS приёмника.
Началось всё с идеи беспилотного самолёта.
Опыта авиапилотирования не было. Только симулятор.
Купил парк флаер Protech Piper Cub AFR. Собрал, поставил батарейку большей ёмкости,
но самик так и не взлетел.
Пришлось для экспериментов с автопилотом перейти на авто.
Купил внедорожник масштаба 1/8, выбросил “родную” электронику оставив только двигатель.
Поставил цифровую рулевую машинку, регулятор хода и, собственно, GPS приёмник.
На GPS приёмнике запрограммировал управление рулём и двигателем (PWM сигнал).
Движение возможно с указанным азимутом; через массив путевых точек (LAT, LON);
либо с азимутом, проходящим через путевую точку.
Нашел у себя в загажнике такойже ГПС приемник БУ353
хочу поцчаствовать с вами 😃
На GPS приёмнике запрограммировал управление рулём и двигателем (PWM сигнал).
Как называется приемникGPS, позволяющий программировать PWM - сигнал?
Вот и мне интересен уже реализованный проектик - потому как сам думал, что на ползающей модельке автопилотик безопаснее настраивать - направление мыслей сходное.
Ну то есть - в ГПС приемнике для внутренней обработки используется достаточно мощный проц.
Вопрос в том - есть ли в доступе люди, способные дописать/модифицировать прогу/прошиву ентого проца ?
Или всё-таки алгоритм автопилота реализован на внешнем для GPS микроконтроллере, как енто обычно делается ?
Обычно никто ВНУТРЬ алгоритмов/проги ГПС модуля не суётся, а ведь хотелось бы - для уменьшения долбанного 1 сек интервала обновления в частности - потому как летающая моделька - енто не то же самое что ползающая - скорость перемещения в пространстве слегка повыше будет - оперативность принятия решений поважнее соответственно.
Вот и мне интересен уже реализованный проектик - потому как сам думал, что на ползающей модельке автопилотик безопаснее настраивать - направление мыслей сходное.
Ну то есть - в ГПС приемнике для внутренней обработки используется достаточно мощный проц.
Вопрос в том - есть ли в доступе люди, способные дописать/модифицировать прогу/прошиву ентого проца ?
Или всё-таки алгоритм автопилота реализован на внешнем для GPS микроконтроллере, как енто обычно делается ?
Обычно никто ВНУТРЬ алгоритмов/проги ГПС модуля не суётся, а ведь хотелось бы - для уменьшения долбанного 1 сек интервала обновления в частности - потому как летающая моделька - енто не то же самое что ползающая - скорость перемещения в пространстве слегка повыше будет - оперативность принятия решений поважнее соответственно.
Мне кажется, что с учетом того что ГПС имеет погрешность ±10м то будь то 1 или 2 или пол секунды
огромной роли не сиграют.
Ведь даже при большом количестве принимаемых спутников, около 5-6 спутников , сидя\стоя на месте , координата в 3D пространстве всёравно меняется !
Мне кажется, что с учетом того что ГПС имеет погрешность ±10м то будь то 1 или 2 или пол секунды
огромной роли не сиграют.Ведь даже при большом количестве принимаемых спутников, около 5-6 спутников , сидя\стоя на месте , координата в 3D пространстве всёравно меняется !
Для повышения точности и получения непрерывного потока измерений используют экстраполяционные фильтры семейства фильтров Калмана. Есть даже открытые реализации для автопилотов вроде. Фильтры правда лучше связывать с еще доугими датчиками, чтобы предсказывать положение без GPS, а GPS использовать для коррекции дрейфа раз в секунду.
Возможно, прогу и можно прошить в GPS. Я видел всякие SDK вроде под проци в GPS. Возможно, опытный serj скажет более подробно 😃
Могу посоветовать зайти сюда www.uav-dpla.narod.ru и связаться с хозяином. Вся аппаратура самодельная и самолет тоже, может он подскажет чего… Я видел как это летает, любо дорого посмотреть. Уводят по дальше, задают на ноутбуке точку, выключают передатчик, и он сам возвращается в эту точку и кружит на одном месте пока не получит команду чё ему дальше делать.
Как называется приемникGPS, позволяющий программировать PWM - сигнал?
Приёмник фирмы Javad Navigation Systems с процессором Motorola MPC566.
Весь автопилот реализован непосредственно в GPS приёмнике.
Сначала работал на частоте 1Hz, но оказалось мало для ровной езды.
Сейчас позиция считается 10Hz по методу наименьших квадратов ( без Калмана )
Шум позизии около метра-двух
Фильтруется только направление скорости на интервале 0.5 сек
Машинка едет ровно и гладко.
Ввёл режим движения от одной точки до другой с заданным азимутом,
имитируя движение самолёта вдоль ВПП. Ездит туда - обратно пока батарейка не кончится.
Подключил GPS и RF приёмники к рулевым машинкам через мультиплексор.
Теперь одни каналы могу отдать на время GPSу (курс), а другими управляю с передатчика (тяга, высота). Легко отрабатывать посадку.
Приёмник фирмы Javad Navigation Systems с процессором Motorola MPC566.
Весь автопилот реализован непосредственно в GPS приёмнике.
Получается, что люди, способные понимать/модифицировать внутренности ГПС всё-таки есть в природе.
Сначала работал на частоте 1Hz, но оказалось мало для ровной езды.
Сейчас позиция считается 10Hz по методу наименьших квадратов ( без Калмана )
Об ентом Серж насколько я понимаю только мечтает - увеличить частоту принятия решений с 1 Гц до 10 Гц хотя бы.
Шум позизии около метра-двух
Фильтруется только направление скорости на интервале 0.5 сек
Ну про шум мне трудно сказать, но точность без ВААС минимум который пишет ГПС - 4 метра.
А ВААС вроде как только над Штатами работает.
Машинка едет ровно и гладко.
Ввёл режим движения от одной точки до другой с заданным азимутом,
имитируя движение самолёта вдоль ВПП. Ездит туда - обратно пока батарейка не кончится.
Хочу сказать простое и надоевшее слово “ДАЙ”. Можно в личку, можно здесь. Если вообще можно. Ну то есть тоже хочется попробовать на мини кваке ну и быть могет на электро планере ушастом в будущем.
Подключил GPS и RF приёмники к рулевым машинкам через мультиплексор.
Теперь одни каналы могу отдать на время GPSу (курс), а другими управляю с передатчика (тяга, высота). Легко отрабатывать посадку.
Ну енти детали реализации важны, если на “Дай” найдётся ответ " Возьми".
Желательно с исходниками естественно. Потому как самому изобретать ентот велосипед силёнок-то может и не хватить.
Однако всё-равно радует, что хоть кто-то могёт, хоть для какого-то частного случая проца в ГПС. Особенно про ненавистные 1 и 10 Гц расчета позиции/принятия управляющих решений.
В идеале (не бюджетном) мне кажется данные с нескольких ГПС антенн/модулей разнесенных/разноориентированных по квадрату крылья/фюз обсчитывать в одном процике с учетом разницы их пространственного положения.
Хотя лично я в ентой математике как детёныш.
Получается, что люди, способные понимать/модифицировать внутренности ГПС всё-таки есть в природе.
По-моему, не столь суть важно, где живет клиентская программа - во внешнем процессоре или подгружается к ядру в процессор GPS. Главное, чтобы сам приемник мог выдавать координаты чаще, чем раз в секунду. JavadNS, судя по мануалам, могут работать до 100Гц, но цены на их приемники измеряются в тысячах $$
Приёмник фирмы Javad Navigation Systems с процессором Motorola MPC566.
Весь автопилот реализован непосредственно в GPS приёмнике.
Мнда… Размерчик великоват. В таком формате и с таким весом есть готовые навигаторы с удобным вводом и отображением маршрута. Однако на борт планера такой девайс не поместить.
Скажем, вариант использования штатного дешевого eTrex с RCAP получается по габаритам меньше, а по весу - столько же. Так это с индикатором и многоточечным маршрутом.
Насчет частоты обновления - 4Гц запросто дают приемники u-blox, а больше оно и не нужно.
JavadNS, судя по мануалам, могут работать до 100Гц, но цены на их приемники измеряются в тысячах $$
Ну вот блин, а я то наивный полагал что ГПС до $100 стоимость. Какова же глубина моего заблуждения - цены ОТ $3 000 до $56 000. Ентот ценовый диапазон для модели Боинга 1:1 приемлемо наверное.
Хотя да, 100 Гц принятия решений ето конечно круто. Однако просто не по деньгам удовольствие. Ну то есть не игрушечное явно.
Так что моё “ДАЙ” снимается с обсуждения - не мой размерчик.
Зато судя по ценам и сложность исходной задачи вполне можно оценить.
Зато судя по ценам и сложность исходной задачи вполне можно оценить.
Если исходная задача - приведение устойчивого аппарата в заданную точку с точностью в несколько десятков метров, то вполне достаточно скорости и точности дешевого GPS приемника, как правильно заметил vovic.
Сам приёмник точно не бюджетный и преднозначен для другого сектора.
Поэтому и дал название фирмы.
Антенну поставил “ширпотребовскую” GlobalSat 4см. в диаметре
одночастотную с магнитиком.
Позиция считается без всяких WAAS дифференциальных систем.
Т.е. с точки зрения позиции всё по-честному.
Просто мне удобно с ним обращаться.
Хотел прежде всего поделиться моей реализацией.
В процессоре MPC565/566 есть модуль Modular Input/Output Subsystem
На нём и запрограммировал PWM сигнал
Позицию пишу во внутреннюю память.
Используется только “голая” плата весом 150грамм.
Данный приёмник используется чисто в хоббийных целях без всех его возможностей.
Математика простейшая, нацеленная на микроконтроллер.
Просто у меня нет отдельного микроконтроллера (хотя в дальнейшем перейду на дешёвый GPS и отдельный контроллер), а есть дорогой приёмник.
Мне сейчас удобней использовать такой вариант (всё в одном флаконе).
Наверняка в других приёмниках можно сделать похожее.
Испытывался не сам GPS приёмник, а его реализация и, собственно, алгоритм автонавигации с простой математикой.
Коммерческие варианты не интересууют. Хочу сделать весь комплекс сам и с “подручными”
материалами с нуля, с чисто хоббийными целями.
GPS приёмник дорогой, но он у меня есть, и ипользую его как маленький компьютер с позицией.
вес - 150г.
Возможности GPS приёмника для расчёта сверхточной позиции не используются.
Т.е. он у меня как дорогой макет для будущей дешёвой реализации.
А вот на любые вопросы связанные непосредственно с автоуправлением отвечу с радостью.
Реализация мультиплексора:
Поставил нашу отечественную микросхемку К555КП12, стоимостью 10р.
Она умеет в зависимости от уровня управляющего сигнала подключать выход к одному из 4х входных цифровых сикналов.
Таким образом на входе мультиплексора
с радиоприёмника
1й канал - курс
2й канал - управление
с GPS приёмника - курс
Ко 2му каналу RC прёмника подключил регулятор оборотов. Выдаёт либо высокий либо низкий уровень для мультиплексора
На выходе мультиплексора сигнал либо с RC приёмника, либо с GPS. Управление вторым каналом с RC передатчика.
Также и тяга и т.п.
Таким образом в любой момент с RC пульта можно управлять курсом самому, либо брать с GPS.
Давно ищу себе соучастника вот в таком деле. Есть готовый проект:
rcpilot.sourceforge.net/modules/rcap/index.php
С открытым софтом - исходники выложены на сайте.
Он хорош простотой и доступностью любому желающему. Мною испытан и отлажен. Но плох тем, что работает только с навигатором, задающим курс на цель. С обычными GPS- приемниками работать не может.
Цель замышляемого дела - модифицировать софт так, чтобы он смог работать с любой GPS-головкой.
Я заткнулся на том, что не смог написать расчет азимута на цель по известным координатам на Пикбейсике без библиотек функций. Ну, не программист я. 😊
Может кто возьмется помоч ?
Давно ищу себе соучастника вот в таком деле. Есть готовый проект:
rcpilot.sourceforge.net/modules/rcap/index.php
С открытым софтом - исходники выложены на сайте.
Он хорош простотой и доступностью любому желающему. Мною испытан и отлажен. Но плох тем, что работает только с навигатором, задающим курс на цель. С обычными GPS- приемниками работать не может.
Цель замышляемого дела - модифицировать софт так, чтобы он смог работать с любой GPS-головкой.
Я заткнулся на том, что не смог написать расчет азимута на цель по известным координатам на Пикбейсике без библиотек функций. Ну, не программист я. 😊
Может кто возьмется помоч ?
Синусы/косинусы и обратные функции в Пикбейсике есть?
Я заткнулся на том, что не смог написать расчет азимута на цель по известным координатам на Пикбейсике без библиотек функций. Ну, не программист я. 😊
Может кто возьмется помоч ?
Если это поможет, могу проконсультировать по численным алгоритмам. С Пикбейсиком я не работал и нет желания с ним разбираться.
Если исходная задача - приведение устойчивого аппарата в заданную точку
Мною имелась ввиду сложность/дороговизна реализации задачи принятия управляющих решений 10-100 раз в секунду.
А по численным алгоритмам - енто конечно круто, не вопрос.
Но мне кажется всё-таки, раз уж в (пик) бэйсике нету обратной тригонометрии, всё-таки (хотя бы)математику писать на Сях, поскольку в стд либ есть потребные арк функции, ну а Си есть условно бесплатный.
Ну а всякие обработчики входного текста NMEA - можно и на асме.
Ну а о платформе как обычно два лагеря - АВР супротив ПИК (пора уже хоть 18).
И там и там приверженцы/сторонники/противники.
P.S.
А в BU353 асинхронный NMEA выход нашёлся под антенной, естественно. Лень фотать, но выход нашёл.
Но ещё даже к своей макетке 18пик+20*4 лсд не подключал, обработчик NMEA текста не писал - как-то не с руки было.
Кстати, про сирф-3 вроде до 10 Гц пишут обновление позиции, или я чего-то путаю ?
Нет, не путаешь, так и пишут 😃
Как на нем антенну снять ? нужно пипку по центру в антенне распаять ?
А по численным алгоритмам - енто конечно круто, не вопрос.
Но мне кажется всё-таки, раз уж в (пик) бэйсике нету обратной тригонометрии, всё-таки (хотя бы)математику писать на Сях, поскольку в стд либ есть потребные арк функции, ну а Си есть условно бесплатный.
Да в том то и дело, что девайс готов и работает. Его только подправить надо.
А если Вас послушать - то нужно переписывать все заново, соответственно - все отлаживать заново. Именно на это, как правило, энтузиазма не хватает.
Отлаживать там есть что, потому что даже в готовой и работающей программе я нашел ошибки, приводящие к дрожанию сервомашинок.
Как всегда - недостатка в советах нет, но вот помоч - это всегда дифицит.