Fail-Safe - Автопилот для полетов по камере
А вычитать просто так с малой разряднотью нельзя.
Вычитать - конечно, нельзя! Еще раз повторю свою мысль: точность абсолютных координат важна. Но над ними делается только простая операция (вычитание). Дальше такая высокая точность не нужна, поскольку результат арктангенса нам нужен с точностью в проценты и его можно вполне брать по таблице. Причем выгодно бить круг именно на октанты, тогда результат деления дельт всегда будет в диапазоне от 0 до 1. Если одна из дельт близка к нулю (или гораздо меньше другой дельты по абсолютному значению), то это можно считать вырожденной точкой. Таким образом, имеем точное вычитание, точное сравнение абсолютных значений и знаков, неточное деление, поиск по таблице длиной в несколько десятков значений и коррекция по октанту. Т.е. все довольно просто.
Т.е. все довольно просто.
Просто программисту, но не мне. 😦
Мне уже помогли надыбать кусочек готового кода кусочно-линейной аппроксимации:
www.dattalo.com/technical/software/…/arctan.asm
Как раз для октетов.
Но у меня опыта не хватает все это вместе объединить и встроить в уже готовую программу RCAP.
Как бы взглянуть на исходники?
Извините, только в 4 часа прошлой ночи заработало. Понятность кода соответствующая 😕
А реально ли, скажем, в Москве купить в розницу какой-нибудь OEM GPS модуль с документированной системой команд и форматом данных? Если да, то где, как и сколько это ориентировочно будет стоить?
Извините, только в 4 часа прошлой ночи заработало. Понятность кода соответствующая 😕
Спасибо, поразбираюсь. Для начала вопрос, а зачем Вы читаете два NMEA-сообщения, если в GPRMC есть и координаты и текущий курс? Разве не проще и короче читать одно сообщение?
А реально ли, скажем, в Москве купить в розницу какой-нибудь OEM GPS модуль с документированной системой команд и форматом данных? Если да, то где, как и сколько это ориентировочно будет стоить?
Для наших приложений лучше всего использовать стандарт интерфейса NMEA. Для целей навигации автопилота лучше всего подходит строка $GPRMC. Ее поддерживают практически все GPS-приемники любых фирм.
Спецификаця стандарта есть в сети www.navgeocom.ru/support/nmea/index.htm
Если есть интерес - могу прокоментировать его.
Купить OEM GPS в Москве - как за хлебом сходить.
Во, Андрей уже автопилот строит 😃
Я даже предполагаю их будет два- по числу работающих на данный момент приемников 😃😃
на дельтаплане, на котором ты летаешь- очень плохо получится 😃 а вот на планере , как у Володи- вполне. надо что- нибудь большое, самолетящее, желательно ушастое- тогда и через атлантику перелететь можно. 😃
P.S а чего это у тебя в конце файла nmea мои координаты указаны? 😃 это явно неспростааа… 😃😃
А реально ли, скажем, в Москве купить в розницу какой-нибудь OEM GPS модуль с документированной системой команд и форматом данных? Если да, то где, как и сколько это ориентировочно будет стоить?
Конечно - 1500 р.
Во, Андрей уже автопилот строит 😃
Я даже предполагаю их будет два- по числу работающих на данный момент приемников 😃😃на дельтаплане, на котором ты летаешь- очень плохо получится 😃 а вот на планере , как у Володи- вполне. надо что- нибудь большое, самолетящее, желательно ушастое- тогда и через атлантику перелететь можно. 😃
P.S а чего это у тебя в конце файла nmea мои координаты указаны? 😃 это явно неспростааа… 😃😃
почему два ? 😁
почему плохо получится ? Из-за ветра ?
координаты - это я добивал память до 4k - у меня программатор глючил на неполной прошивке 😃
если у тебя нету инерциалки, самолет должен лететь сам, если бросить ручки, и не завалиться в спираль,если имеет место небольшой крен, или еще куда нибудь- 😃. и скорость желательно поболе, а то против ветра не улетит…
Во время поворота самолета на заданный курс нужно будет знать текущий курс в реалтайме. Иначе, придется подбирать коэффициенты для конкретного дрынолета при конкретной скорости в конкретную погоду 😕 . Для быстрого определения текущего курса может помочь трехосевой магнитометр.
Почитать про магнитометры можно здесь . Так же имеется довольно приличное описание проекта автопилота с магнитометрами HMC1022+HMC1021. Правда, весит этот проектец под 8 метров и проц там ARM7-TDMI. Пока выкладываю фрагмент исходничка для магнитометра и навигации. Если будет интерес, выложу все остальное.
Вот тут - www.maxxprod.com/mpi/mpi-16.html кое что на эту тему.
Тема живая - что не может меня не радовать.
Купить OEM GPS в Москве - как за хлебом сходить.
А я вот чего-то не нашёл в Москве ОЕМ Sirf Star-III приемничка, по ентому пришлось прикупить парочку в корпусах:
Голубозубый и USB версии. Ну у голубозубого на контактах мини-USB разъёма похоже асинхронный сигнал сидит - потому как с обычным USB кабелем девайс то появляется то пропадает и ничего не определяется, а для USB идет только фирменный шнурок с конвертором посередине. А вот с USB версией у меня прокол - разобрал, а там - хрен чего разберёшь/отличишь, где там USB конвертер, а где - собственно GPS приемник. (Быть может Серж подскажет по фоткам, чего там надо от чего раздраконить) По ентому при необходимости подключать по USART придётся пользовать голубозубый, хотя он и дороже. Зато возможен дистанционный контроль на старте - наверное.
если у тебя нету инерциалки, самолет должен лететь сам, если бросить ручки, и не завалиться в спираль,если имеет место небольшой крен, или еще куда нибудь- 😃. и скорость желательно поболе, а то против ветра не улетит…
Я других самолетов и не держу, только те, что летают с брошенными ручками. Пилотаж и фанфлай не для меня 😃 Так что рулить можно и хвостом.
А в сильный ветер я не пускаю.
Тема живая - что не может меня не радовать.
А вот с USB версией у меня прокол - разобрал, а там - хрен чего разберёшь/отличишь, где там USB конвертер, а где - собственно GPS приемник. (
Тема не так чтобы живая, к сожалению… 😦
USB там и не отделишь от финишной части приемника, расчитывающей координаты. На чип-сете АНТАРЕС, к примеру, USB - это просто один из периферийных интерфейсов микроконтроллера, занимающегося расчетами.
Только нафига вам USB? На борту самолета хост USB организовывать - не приведи Господи, такой геморрой! Надо брать стандартный выход СОМ-порта в NMEA-формате. Тогда ваши наработки будут взаимозаменяемыми с другими GPS-девайсами. А если затянет под конкретный фирменный интерфейс одного производителя - можно попасть в лужу, - не факт что через год данный девайс будет на рынке, так что распространение наработки и даже тривиальный ремонт после краша может оказаться в тупике. А уж тем более блю-тус - не стоит заморочек.
Извините, только в 4 часа прошлой ночи заработало. Понятность кода соответствующая 😕
Андрей, я повторю вопрос - зачем читать два сообщения NMEA: GPGGA и GPVTG, если координаты и курс есть в одном - GPRMC?
И второй вопрос - софт уже отлажен и проверен в работе? Или тока поезд в пути?
извините за дурацкий вопрос: а гироскоп тут не поможет?
Он же должен сохранять ориентацию при любых маневрах модели (во всяком случае тот, в котором крутится маховик)
Надо брать стандартный выход СОМ-порта в NMEA-формате. Тогда ваши наработки будут взаимозаменяемыми с другими GPS-девайсами.
Золотые слова. Приемник с USB у меня уже валяется без дела именно по этой причине. Так же стОит брать приемник сразу со встроенной активной антенной.
Андрей, я повторю вопрос - зачем читать два сообщения NMEA: GPGGA и GPVTG, если координаты и курс есть в одном - GPRMC?
Мне тоже интересно было бы узнать чем не понравился GPRMC?
Так же стОит брать приемник сразу со встроенной активной антенной.
А вот это не факт. Я взял антенну активную отдельно. В узком носе Сопрано, к примеру, намного проще размещать авионику, когда антенна отдельно. Тогда GPS-антенну можно поставить под радиопрозрачный колпак носа, а сам приемник GPS со своими приблудами запихнуть внутрь углепластикового фюза. В самолетах с большим и широким фюзом это не так важно, - но лучше делать девайс универсальным. По деньгам отдельная антенна стоит дешевле тысячи деревянных - несерьезная цена.
извините за дурацкий вопрос: а гироскоп тут не поможет?
Он же должен сохранять ориентацию при любых маневрах модели (во всяком случае тот, в котором крутится маховик)
Если говорить о временнЫх интервалах 10-20 секунд, то это так. Дальше пьезогироскоп даст дрейф в десятки градусов. В инерциалке относительно гравитации обнулить гироскопы можно с помощью акселерометров, в навигационке (по курсу) - с помощью GPS.
Я думал о применении ADXRS150 для смены курса (там секунд 10 на маневр нужно), но реальный эксперимент пока не проведен, точно ничего сказать не могу.
А вот это не факт. Я взял антенну активную отдельно. В узком носе Сопрано, к примеру, намного проще размещать авионику, когда антенна отдельно…
На счет активной антенны может я и не прав. Но не понравился мне этот прибамбас в коробке с магнитами и здоровенным мотком кабеля. Если вес и габарит не сильно жмет, то лучше, конечно, активная антена в отдельной коробке.
Но не понравился мне этот прибамбас в коробке с магнитами и здоровенным мотком кабеля. Если вес и габарит не сильно жмет, то лучше, конечно, активная антена в отдельной коробке.
Дык магниты выкинуты, кабеля оставлено 15 см. Осталось литое силуминовое основание антенны - тоже можно выкинуть грамм 30 - 40. Но было лень. 😊
Можно и я свои пять копеек.
ОЕМ модули в Москве можно в фирме ЭФО. Это модули U-blox. (Сори, если это реклама). У меня антена была в пластиковом корпусе, после того как разобрал и выкинул всё лишнее облегчилась гдето в половину. Но, антена сделана на кирамическом основании. Так что поосторожнее разбирать надо, чтобы не переломить керамику.
Андрей, я повторю вопрос - зачем читать два сообщения NMEA: GPGGA и GPVTG, если координаты и курс есть в одном - GPRMC?
И второй вопрос - софт уже отлажен и проверен в работе? Или тока поезд в пути?
Софт не отлажен и не в работе. Во первых, глючит heading на базу. Во-вторых, я пока не хочу сразу автопилот делать, а хочу просто просто вывести курс на базу и расстояние на OSD для полетов по камере - так проще возвращаться, если заплутал. Да и не влезает все в контроллер, который в OSD стоит - буду на PIC18 с 16k мигрировать.
Насчет GPRPM - у меня GPS так настроен, что выдает только те 2 сообщения. И у меня не получилось задать маску сообщений чтобы выдавал иные. Так что что имеем, с тем и работаем.
А вообще на Sirf III облизываюсь. Там где у других шум в пределах 20 метров, у него 1.2-2 метра !!! 😃
Можно и я свои пять копеек.
ОЕМ модули в Москве можно в фирме ЭФО. Это модули U-blox. (Сори, если это реклама). У меня антена была в пластиковом корпусе, после того как разобрал и выкинул всё лишнее облегчилась гдето в половину. Но, антена сделана на кирамическом основании. Так что поосторожнее разбирать надо, чтобы не переломить керамику.
Эти Ublox вроде паять трудно - или к ним шлейф прилагается ?
если у тебя нету инерциалки, самолет должен лететь сам, если бросить ручки, и не завалиться в спираль,если имеет место небольшой крен, или еще куда нибудь- 😃. и скорость желательно поболе, а то против ветра не улетит…
А вот к Сержу есть пара конкретных вопросов - что лучше использовать для навигационки:
- Быстрый GPS и брать текущий курс прямо с него
- Компас на трехосевом магнитометре
- Курсовой гироскоп (на поворот в горизонтальной плоскости)
И какой из быстрых GPSов наиболее пригоден для данной задачи?