OSD на ATmega1281

msv

Ок, спасибо. Датчик тока только вчера выкупил (кста- 380р. 😦 ), а это на открытый вход АЦП что-то набегает…
Раз уж вопрос о ценах подняли, может кто что посоветует по авиагоризонту в этом плане? Собственно варианта, как мне показалось, два:

  • пиродатчики (какие, где, почем?) Не очень меня этот вариант радует, но практически все делают на них.
  • трех-осевой акселерометр+двуосевой гироскоп. Это было бы классно, но цены на гироскопы невменяемые… Или у кого-то есть спец.предложения?
Aleksey_Gorelikov

Сергей, посмотри ветку “полеты по камере>телеметрия”. Там уже много чего обсуждалось, про пиродатчики в частности, и есть люди, у которых уже все работает (в т.ч. автопилот).

msv

Эту ветку я изучил вдоль и поперек… Наверное большую часть времени своего проекта ушла на то, что-бы перечитать эту тему с самого начала. 😃 Но здорово помогло кучу чужих граблей обойти. Правда без своих все же не обошлось…
Там псевдографика, автопилот на отдельном МК,- это не наш путь…
А вот датчик тока и GPS-модуль там подсмотрел.
Но с пиродатчиками ответа на вопрос не нашел. Те, которые применил уважаемый smalltim, достать за дешево непросто… Да и не очень нравится такой принцип определения горизонта. А вариант гироскоп+аксель там всерьез не расматривался. Возможно тоже потому, что слишком большая цена вопроса…

ukkr

Не знаю, то ли это, что Вам нужно, но работал с вот такими
IRA-E710ST0 Муратовскими
www.platan.ru/cgi-bin/…/id=309039614&group=1138
и IRA-E940ST1
Порядка 2х-2х с половиной баксов у нас они стоят.
Не знаю, может поможет
www.platan.ru/news/news.shtml?code=606
www.symmetron.ru/suppliers/sensors/pyro.shtml

Эх, ещё б кто-то кинул на материал, где разжовано, как используя пиродатчики получить авиагоризонт…

ukkr

ОФФТОП:
2 PigTail , большое человеческое спасибо!!!
Эх, жаль, что ща рабочий день и дофига работы, прийдётся украдкой почитывать…

Nick_Shl
msv:

Раз уж вопрос о ценах подняли, может кто что посоветует по авиагоризонту в этом плане?

Самое простое решение(но не самое надёжное) - один гироскоп, срабатывающи

msv:

Раз уж вопрос о ценах подняли, может кто что посоветует по авиагоризонту в этом плане?

Самое простое решение(но не самое надёжное и точное) - один гироскоп, срабатывающий на крен(поворот вдоль своей оси). Для определения положения самолёта в пространстве достаточно двух вещей: вектора направления движения и значение крена. Вектор направления движения можно получить по двум соседним координатам GPS. Для получения крена нужно на старте каким-то образом указать, что крен = 0, затем циклически опрашивать гироскоп и корректировать текущий угол крена.

msv

Спасибо за ссылки! (хоть они мне и знакомы) Про IRA710-e кто-то, где-то уверял, что они не выдают постоянную составляющую. По даташит этот момент мне непонятен. Вроде бы явных кондеров там не просматривается. Но проверить непросто…
Папараци молодцы, конечно… Но… PID - это классика управления. Вся хитрость в волшебных пузырьках (коэффициентах), о которых, как мне показалось, там скромно умолчали( хотя смотрел их сайт по диагонали).
2Nik_Shl Что-то не понял мысль… Вектор по GPS более менее точно можно определить по направлению ( и то этот вектор будет совпадать с продольной осью самолета при 0-вом боковом ветре). Высота по GPS может скакать до 100м ( причем эти значения практически не удается как-то отфильтровать/сгладить) и может быть использована только для оценки, но никак не для определения тангажа. Но самое главное- не понял, как, даже зная вектор продольной оси самолета, можно корректировать гироскоп крена???

Vad64
msv:

Про IRA710-e кто-то, где-то уверял, что они не выдают постоянную составляющую. По даташит этот момент мне непонятен.

msv, поздравляю, отличный проект!

ПИРОдатчики не подойдут точно, любые. Датчики на пироэффекте реагируют только на переменную составляющую (можно почитать, например, здесь cultinfo.ru/fulltext/1/001/008/089/311.htm). FMA используют thermopiles (термопары или термобатареи) - они реально могут выдавать постоянную составляющую.

Что касается авиагоризонта на акселерометрах и гироскопах, то тут, по-моему, все очень непросто в математике. И, кстати, я не уверен, что достаточно двух гироскопов, а не трех.

Nick_Shl
msv:

2Nik_Shl Что-то не понял мысль… Вектор по GPS более менее точно можно определить по направлению ( и то этот вектор будет совпадать с продольной осью самолета при 0-вом боковом ветре). Высота по GPS может скакать до 100м ( причем эти значения практически не удается как-то отфильтровать/сгладить) и может быть использована только для оценки, но никак не для определения тангажа. Но самое главное- не понял, как, даже зная вектор продольной оси самолета, можно корректировать гироскоп крена???

Гироскоп не надо корректировать. Гироскоп надо интегрировать. Постоянно. На выходе получаем угол крена. Зная вектор движения(вот про ветер я не учёл, а на машине почему-то высота не скачет, если конечно спутников много) и крен(его не возможно определить по вектору движения) мы точно знаем положение самолёта в пространстве. Правда, как заметил Vad64, с математикой запарка будет.

astr
Nick_Shl:

Гироскоп не надо корректировать. Гироскоп надо интегрировать. Постоянно. На выходе получаем угол крена.

Получите не угол крена, а интегральную ошибку, через небольшой промежуток времени после сброса, расчетный крен с реальным будет иметь мало общего.

msv

Может у кого есть ссылки, где можно купить (подешевле, конечно) эти самые thermopiles? Да и про FMA много слышал, но как-то не отложилось- где и почем?
2Nik_Shl Все равно не догоняю… Даже при идеальном определении высоты ее изменение вовсе не определяет тангаж.
После интегрирования по времени данных от гироскопа имхо можно получить только некоррелированную ошибку. В моем представлении данные от гиро наоборот надо дифференцировать по времени и складывать с проинтегрированным данными от акселя. Не вижу никаких проблемм с математикой, постоянные времени дифференцирования/интегрирования достаточно очевидны и определяются качеством (скоростью “ухода”) гироскопа. Хотя может чего не понимаю…

О… уже опередили…

Nick_Shl
msv:

Даже при идеальном определении высоты ее изменение вовсе не определяет тангаж.

Не высоты! С GPS мы получаем координаты и высоту. Их можно рассматривать как трёхмерные координаты - x,y,z. Имея координаты двух соседних точек мы можем определить положение самолёта в пространстве. Можем определить угол к горизонту. Однако этому положения не хватает “крена”. Можно самолёт представить насаженным на ось - и на ней он может свободно вращаться, а направление при этом не изменяется.

msv:

После интегрирования по времени данных от гироскопа имхо можно получить только некоррелированную ошибку. В моем представлении данные от гиро наоборот надо дифференцировать по времени и складывать с проинтегрированным данными от акселя. Не вижу никаких проблемм с математикой, постоянные времени дифференцирования/интегрирования достаточно очевидны и определяются качеством (скоростью “ухода”) гироскопа. Хотя может чего не понимаю…

Чего-то как-то слишком много умных слов… уже перестаю понимать 😃. Под интегрированием я понимал складывание(крен в одну сторону положительный, в другую - отрицательный). В результате имеем угол отклонения(крен) от продольной оси самолёта. А на счёт ошибки: разве не так работают гироскопы с удержанием хвостовой балки? Как я понимаю, их задача руля машинкой удерживать угол изменения в нуле(если хвост ушёл в сторону на 5 градусов, его надо повернуть в другую сторону на эти же 5 градусов). И ведь прекрасно держат…

Единственное что я не учёл - необходимо постоянное отслеживание положения самолёта в пространстве. В ситуациях когда мы развернём самолёт только с помощью руля направления или сделаем пол петли и направление движения самолёта и крен(относительно самолёта) будут одинаковы, а вот крен относительно земли будет отличатся на 180 градусов…

msv

Можно самолёт представить насаженным на ось…

Нее…, не можем… Я и пишу:

Даже при идеальном определении высоты ее изменение вовсе не определяет тангаж.

(Млин… себя начинаю цитировать… плохой тон…)
Самолет может терять высоту и даже набирать с нулевым тангажом. Для активного управления требуется знать именно тангаж, если конечно это не сверх-устойчивый планер, для которого и РВ не нужен, а высотой управлять, скажем, тягой двигателя.

Чего-то как-то слишком много умных слов…

Ну Вы первый начали про интегрирование… 😃

Под интегрированием я понимал складывание(крен в одну сторону положительный, в другую - отрицательный). В результате имеем угол отклонения(крен) от продольной оси самолёта.

У нас разное представление о гироскопе (вовсе не уверен, что мое правильное). В моем представлении гироскоп выдает абсолютное значение крена, независимо от скорости его изменения, как бы с постоянной составляющей. Поэтому непонятно зачем еще что-то складывать/интегрировать.
Вся беда, что это постоянная составляющая (значение, соответствующее нулевому крену) со временем уплывает, и его надо корректировать. Для этого и можно использовать сглаженное за достаточный период времени значение от акселерометра.
2МаркАнтоний это хорошие аклерометры (наверное), но для измерения крена объекта двигающегося с ускорением, их не достаточно…

Syberian
msv:

У нас разное представление о гироскопе

Лучший гироскоп - это трехмерный компас 😉
Немного калибровки, и вот вам крен, тангаж, азимут, а запомнив предыдущее положение, можно выявить переворот на спину.

astr
msv:

У нас разное представление о гироскопе (вовсе не уверен, что мое правильное). В моем представлении гироскоп выдает абсолютное значение крена, независимо от скорости его изменения, как бы с постоянной составляющей. Поэтому непонятно зачем еще что-то складывать/интегрировать.

В основном электронные гироскопы выдают скорость поворота, которую нужно проинтегрировать для получения крена. Вы же не собираетесь устанавливать механический? На счет балки вертолета - если пилот не будет подруливать хвостовым ротором, за 5-минутный полет балка сделает несколько оборотов.

Nick_Shl
msv:

Самолет может терять высоту и даже набирать с нулевым тангажом. Для активного управления требуется знать именно тангаж, если конечно это не сверх-устойчивый планер, для которого и РВ не нужен, а высотой управлять, скажем, тягой двигателя.

Всё дошло 😃. Признаю был не прав…
Давно не летал, надоело падать 😃. Падение с выключенным двигателем хороший пример - летит вроде вниз, продольная ось может кувыркаться…

msv:

У нас разное представление о гироскопе (вовсе не уверен, что мое правильное). В моем представлении гироскоп выдает абсолютное значение крена, независимо от скорости его изменения, как бы с постоянной составляющей. Поэтому непонятно зачем еще что-то складывать/интегрировать.

На самом деле(как уже заметили выше) пьезогироскопы - это угловые акселерометры, выдающие скорость поворота относительно оси. Самый простой датчик выдаёт скорость в виде аналогового сигнала, пропорционального скорости поворота. Как мне думается, что бы получить угол, нужно опрашивать датчик с высокой частотой и высчитывать угол поворота с предыдущего отсчёта как скорость поворота * время прошедшее с последнего измерения. Соответственно, что бы отслеживать изменение угла, получаемые значения нужно суммировать…

Русинов_Сергей
Nick_Shl:

это угловые акселерометры, выдающие скорость

Акселерометр не выдаёт скорость, он выдаёт ускорение со знаком. Т.о. для компенсации отклонения от оси необходимо выдать ускорение с противоположным знаком.
З.Ы. Про системы регулирования здесь писать ничего не буду.

Nick_Shl
Русинов_Сергей:

Акселерометр не выдаёт скорость, он выдаёт ускорение со знаком. Т.о. для компенсации отклонения от оси необходимо выдать ускорение с противоположным знаком.

Воспользовался термином не подумав. Зато могу подсказать как сделать в домашних условиях простейший акселерометр для баловства 😃.