Делаю OSD, автопилот и инерциалку...

baychi
Diman_Y:

для меня этот проект как побочный продукт.

И этим, к сожалению, все сказано. 😦
Извините, Дмитрий, но по-моему Вы играете не в ту игру. Получить максимум деталей на халяву и сделать одноразовый автопилот - может быть забавным только в проекте. На практике это не реализуемо.
Мне кажется, Вы новичек не только в авиамоделизме, но и в программировании (а возможно и в электронике). Нельзя ли узнать, какие проекты Вы реализовали на сегодняшний день?

Diman_Y
baychi:

И этим, к сожалению, все сказано. 😦
Извините, Дмитрий, но по-моему Вы играете не в ту игру. Получить максимум деталей на халяву и сделать одноразовый автопилот - может быть забавным только в проекте. На практике это не реализуемо.
Мне кажется, Вы новичек не только в авиамоделизме, но и в программировании (а возможно и в электронике). Нельзя ли узнать, какие проекты Вы реализовали на сегодняшний день?

Я ваш скептицизм отчасти разделяю. 😃
В любом случае плату я сделаю. Она мне нужна для другого проекта, который к автопилоту не относится. Софт для автопилота это на 90 % из другого проекта. А 10 % на автопилот это не так много. Пока что все упирается в наличие платы. 😃

Я уже как 15 лет работаю инженером, так что проектов достаточно, поверьте, но скорее всего они Вам ни о чем не скажут. Как пример усилитель B&O в Audi A8 частично моя работа. 😃
Автопилотами я конечно не занимался, но я не вижу большой разницы в обработке вибраций, обработке аудио или радиосигналов. Обработка везде одинакова - читай, считай, пиши, только коэффициенты меняй. 😃

Я уже писал, что основная фишка данного автопилота будет наличие нормального мощного процессора для обработки данных. Лично я не понимаю, почему все ОСД и автопилоты используют хилые процессоры для обработки, когда там только обрабатывать и надо… Понятно что 400 МГц это много, но хотябы 100 МГц процессор можно было поставить?
Короче, поживем - увидим. 😃

PS. А кроме скептицизма есть у кого конкретные замечания и предложения? 😃

Frr:

> Какие устройства можно подключать к автопилоту?
Джойстик(аппа с сим.шнурком), мышку или маленькую клаву - для подстройки в поле.
> Управление будет еще с IR пульта
А чем управлять? пульт от телевизора? Зачем ставите, если не будете писать софт?

Увы, не возьмусь.

IR будет на случай если кто-то захочет под него что-то написать. У меня есть netbook, который и будет всей этой фигней управлять. Мышку и елаву подключать к автопилоту это просто лишнее.

leprud
Diman_Y:

наличие нормального мощного процессора

Ха, а что есть мощный? 😃 CortexM3 - мощный? А почему AtMega328@16MHz - нет?
Вы же явно не прикидывали, сколько операций в секунду нужно. Опять же, Калмана или метод кватернионов использовать будете? А какого, а зачем, а когда, а с какой частотой и скважностью?

Мне это все напоминает байку про необходимое количество знаков у числа Пи для определения числа атомов во вселенной

Для справки: в масштабах Земли и её окрестностей число пи с 11 точными знаками после запятой даёт погрешность вычисления несколько миллиметров, в масштабах солнечной системы достаточно 16 знаков, а уже 39 знаков π достаточно для вычисления окружности, опоясывающей наблюдаемую Вселенную, с погрешностью, не превышающей радиуса атома водорода; для вычислений в масштабах свей Вселенной достаточно 70 точных знаков после запятой…

Frr
Diman_Y:

У меня есть netbook, который и будет всей этой фигней управлять. Мышку и елаву подключать к автопилоту это просто лишнее.

Действительно это мелочи, приятные, но не имеющие отношения к вашей задаче:

Diman_Y:

Если формулировать кратко, то мне нужна демонстрация работы моего продукта. А автопилот и все остальное было выбрано потому что мне это интересно. Автопилот и инерциалка это не мой продукт, а просто демонстрация.

Какие сроки сдачи/демонстрации продукта?

Diman_Y:

Понятно что 400 МГц это много, но хотябы 100 МГц процессор можно было поставить?

Было что-то на omap3 600MHz, вроде даже успешно рулило твинджетом, при отключении одного мотора.

Sergey70

Сколько критики, так нельзя, так руки кому угодно отбить можно.

Diman_Y:

Решил сделать своими руками OSD, автопилот и инерциалку. ОСД здесь самое простое, но об этом позже.

Дмитрий (Diman_Y) мне не все понятно, хотелось бы ну если не схему то хоть по блочно понять суть всего проекта в виде блок схемы. Я очень далек от программирования, но паять умею.

И еще. Можно ли предусмотреть передачу телеметрии по дополнительному каналу, а не только вместе с видеосигналом. Как это реализовать не знаю, но работая с видеокамерами по радиоканалу, часто случалась ситуация когда сигнал слаб ну и со всеми вытекающими. Может конечно то, что пишу чушь, но иметь отдельный поток данных телеметрии это и по сути журнал событий который можно писать, да и отображать на экране телеметрию можно собрав её на земле. Не, что наверное не мешает реализовать это скажем дополнительным режимом, куму как удобно.
Конечно это наворот, даж представляю сколько критики услышу.

Но все же прошу рассмотреть 😃

Готов участвовать в реализации и проекта.

Diman_Y
Frr:

Какие сроки сдачи/демонстрации продукта?

Q1-Q2 2011.

Frr:

Было что-то на omap3 600MHz, вроде даже успешно рулило твинджетом, при отключении одного мотора.

А что именно не скажите?

Sergey70:

Дмитрий (Diman_Y) мне не все понятно, хотелось бы ну если не схему то хоть по блочно понять суть всего проекта в виде блок схемы. Я очень далек от программирования, но паять умею.

С блоксхемой все просто. Есть датчики (3Д акселерометр, гиро, компас, давление, скорость, темпиратура) которые подключины к DSP, внешняя GPS по UART, есть пик который только выводит инфу на ОСД и подключен к DSP (потом можно другую ОСД поставить, тут главное протокол написать), есть пик который подключен к ДСП и только обрабатывает PPM и сервы. Есть FTDI USB подключенная к DSP для связи с компом. Есть флеш, еепром, microSD карта. Для всего этого сделано питание.
ОСД сейчас это пик, мультиплексер на 4 видео канала и MAX7456.
В принципе схема простая. Все из даташитов.

Sergey70:

И еще. Можно ли предусмотреть передачу телеметрии по дополнительному каналу, а не только вместе с видеосигналом. Как это реализовать не знаю, но работая с видеокамерами по радиоканалу, часто случалась ситуация когда сигнал слаб ну и со всеми вытекающими. Может конечно то, что пишу чушь, но иметь отдельный поток данных телеметрии это и по сути журнал событий который можно писать, да и отображать на экране телеметрию можно собрав её на земле. Не, что наверное не мешает реализовать это скажем дополнительным режимом, куму как удобно.
Конечно это наворот, даж представляю сколько критики услышу.

Но все же прошу рассмотреть 😃

Предусмотрена такая штука - XBee-PRO 868. Там дуплексный канал туда-обратно (обещают 40 км). Это внешний модуль под который предусмотрен разьем. Но это уже как развитие проекта, как и подключение IR пульта. Сначала все по минимуму.

Sergey70:

Готов участвовать в реализации и проекта.

Это замечательно! 😃

Сейчас я доделываю схему и печатаю плату. Потом делаю базовый фреймворк (драйвера для датчиков и протов), после чего Вы сможете поиграться с программированием. 😃
Языков программирования там знать не надо. Чисто графический редактор (типа симулинка, или как редактор схем). Рисуете алгоритм и выставляете параметры. 😃
А дальше? А дальше фан и полеты. 😃
Или есть другие предложения? 😃

Enigm
Diman_Y:

Языков программирования там знать не надо. Чисто графический редактор (типа симулинка, или как редактор схем). Рисуете алгоритм и выставляете параметры.

А ссылочки можно ?

Frr
Diman_Y:

А что именно не скажите?

В прошлом году где-то пробегала ссылка на клип, может быть не на этом сайте.
Ссылку потерял, ключевые слова: “адаптивный АП” (на англ.)

Diman_Y
oscill:

Дмитрий не скромничайте, я так понял Вы и есть автор пакета SADF ?

Да.

Diman_Y
Frr:

В прошлом году где-то пробегала ссылка на клип, может быть не на этом сайте.
Ссылку потерял, ключевые слова: “адаптивный АП” (на англ.)

Спасибо. Нашел.
Очень интересный девайз.

msv
Diman_Y:

Рисуете алгоритм и выставляете параметры.
А дальше? А дальше фан и полеты.

Уже высказывался о своем имхо по сомнительной пользе подобного подхода. В моем представлении программирование любого проекта чуть сложнее уровня “Hello World” состоит из следующих частей

  • проработка логики,
  • математика,
  • кодирование.
    Автокодеры исключают только последнюю, самую простейшую, хоть и рутинную, часть этого процесса. Правда какой ценой… Дествительно о 16мгц проце можно забыть…
    В нашем случае, например: известно, банальный ПИД, можно построить на БИХ-фильтре n-порядка. Все просто- “выставляете параметры” (как расчитать коэффициенты?) и ПИД с нужными (какими?) характеристиками готов! 😃. Уж не говорю о пресловутом Калмане, для которого самое сложное, построить достоверную модель объекта… Что-то у меня сомнения, что человек, решивший все эти задачи не осилит Си… 😃
    Но это только ИМХО, может чего и неправильно понимаю…
    Желаю удачи, конечно!
Diman_Y
msv:

Уже высказывался о своем имхо по сомнительной пользе подобного подхода. В моем представлении программирование любого проекта чуть сложнее уровня “Hello World” состоит из следующих частей

  • проработка логики,
  • математика,
  • кодирование.
    Автокодеры исключают только последнюю, самую простейшую, хоть и рутинную, часть этого процесса. Правда какой ценой… Дествительно о 16мгц проце можно забыть…

В данном случае мы не говорим об автокодерах. SADF это не автокодер. Там совершенно другой принцип. В большенстве случаев работает быстрее чем рукописный код. 😃
Даже на 16 мегах может все работать. Просто для данной задачи в любом случае 16 это мало, и во вторых, если действительно под автопилот достаточно 16 МГц, то я могу TI на этих-же 16 мегах и гонять. Проблемы нет.

Теперь по поводу частей разработки.
Вы забыли еще несколько этапов: отладка, настройка и модификация.
Вот тут как раз все проблемы и возникают. 😃

Фишка SADF как раз в том что она охватывает и связывает все этапы разработки от моделирования до модификации.
Но это отдельная тема…

msv:

В нашем случае, например: известно, банальный ПИД, можно построить на БИХ-фильтре n-порядка. Все просто- “выставляете параметры” (как расчитать коэффициенты?) и ПИД с нужными (какими?) характеристиками готов! 😃. Уж не говорю о пресловутом Калмане, для которого самое сложное, построить достоверную модель объекта… Что-то у меня сомнения, что человек, решивший все эти задачи не осилит Си… 😃
Но это только ИМХО, может чего и неправильно понимаю…
Желаю удачи, конечно!

Спасибо. 😃

msv
Diman_Y:

Просто для данной задачи в любом случае 16 это мало

Честно говоря с трудом представляю задачу, для которой нужно столько математики в сек, что этого не хватит… 😃 На разве обработка видео в реальном времени… Тем более в той многопроцессорной структуре, которую Вы планируете, где каждому процу предстоит решать по сути небольшую группу задач.

Diman_Y:

Вы забыли еще несколько этапов: отладка, настройка и модификация.

Вы немного меня не так поняли, я говорил не о этапах программирования, а о составных частях, которые в той или иной степени присутствуют на всех этапах, от постановки вплоть до сопровождения. Во всяком случае у меня…
А с SADF действительно не знаком, поэтому больше не буду оффить…

Diman_Y
msv:

Честно говоря с трудом представляю задачу, для которой нужно столько математики в сек, что этого не хватит… 😃 На разве обработка видео в реальном времени… Тем более в той многопроцессорной структуре, которую Вы планируете, где каждому процу предстоит решать по сути небольшую группу задач.

У пиков там очень простые задачи для удобства отладки и модульности системы.
А вот по поводу обработки посудите сами:
Есть 9 сенсоров. 6 работают с частотой ~ 100 герц, еще 3 работают на 1 кГц. Есть еще сенсор которые работает на 200 кГц и есть еще несколько сенсоров. Плюс еще некоторая обработка. Плюс PPM канал c модема и т.д.
Сигнал там надо будет отфильтровать и преобразовать. Плюс оверхед на перефирию и прерывания. Плюс отсутствие ассемблера.

В итоге 16 мегагерц там будет в притык при условии наличия плавучки. А вот на фиксированной точке я даже не возьмусь такую задачу решать.
В любом случае, иметь прототип у которого есть неограниченный запас ресурсов это всегда хорошо. Вот когда все будет работать, тогда можно будет поменять один TMS на другой, пусть даже с фиксированной точкой. SADF позволяет переносить решения без проблем (извиняюсь за офф.)…

Ну вот, пока суть да дело, попробовал развести плату.
Вот что получилось: 😃

Блин, картинка не вставилась…

Так, пробую еще раз:

Ура! Получилось. 😃

20 days later
Diman_Y

Итак, заказал я две платы. На следующей неделе должны придти. 😃

11 days later
Diman_Y

Итак, очередной апдейт по поводу проекта.

Сегодня мне выслали платы. Завтра придут. Все компоненты есть. Стоимость всех компонентов не более 100 евро. Плюс плата 70.

Проект будет реализовываться в три этапа:

  1. Сначала я напишу софт под пики. Их 2. Один управляет ОСД, второй управляет машинками. Под ОСД софт почти готов. Осталось только порт запрограммировать.
  2. На втором этапе я подсоединяю к TMS ZBee Pro 868 (его еще надо купить) и делаю PC-шный софт для управления модели джойстиком. Еще к TMSу я подключаю ЖПС и вывожу данные на ОСД.
  3. На третьем этапе я делая все остальные драйвера: скорость, давление, компас, гироскоп и акселерометр.
  4. На четвертом этапе реализуются алгоритмы управления. 😃
    По идее первые три этапа я планирую сделать в ближайшие 2-4 недели, если конечно производители платы с платой не накосячили. 😃

Вот фотки платы:

Diman_Y

Вот на выходных платами занимался: 😃

morion15

Интересно как ты считываеш даные с гиры, применяеш какойнить фильтр типа Калмана или Рунге-Кута, я пока провожу интегрирование методом трапеций, дык результат пока не сходиться😁

Diman_Y
morion15:

Интересно как ты считываеш даные с гиры, применяеш какойнить фильтр типа Калмана или Рунге-Кута, я пока провожу интегрирование методом трапеций, дык результат пока не сходиться

Я еще ничего не считываю. Сейчас ОСД отлаживаю. 😃

По поводу гиры.
У меня нет ограничений на методы. У меня полноценный ДСП с 2.4 ГФлопа.
Я поставлю нормальный интегратор с двойной точностью 0.0001 Гц и все будет нормально. А дальше корректировать надо по высоте, скорости и азимуту. Там достаточно сложный алгоритм коррекции будет.