Проект Мегапират на самик!
Саш, а ты с дефолтной конфигурацие пробовал подрубать вортекс? Интересно просто, работает ли всё остальное.
Олег, а можешь рассказать, что это за команды:
- 16 Remote Control commands (override RC by 0.5 seconds from last packet)
roll,pitch,thro,yaw- 24 MASK - IMU channels reverse
PIDs SET/REQ GYRO_RATE,RC_RATE,IMU_R,IMU_P,IMU_Y
16 - это и есть команды с джойстика: крен, тангаж, газ, руддер типа uint16, диапазон 1800…4200, нейтраль 3000.
При поступлении пакета команды с пульта РУ блокируются на 0.5с. По истечении этого времени управление с пульта восстанавливается.
В моей гуйне также есть экспоненты, реверсы и триммирование джоя и регулируется скорость выдачи.
Для экспонент великий тов. Прикупец вывел гениальную формулу, которая замечательно работает:
rcopen.com/blogs/5271/694
Сигнал управления нужно нормализовать к диапазону -1…1
Вот код в удобоваримом виде
float getExpo(float x, float percent)
{
// Thanks to Andrey Prikupets for his formulas!
// were taken from here
//A=10^( (2^(%/25))/4 )
//Y=100*((A^(X/100))-1)/(A-1)
float a,result;
a=pow(10,pow(2,(percent/25))/4);
if(x>=0) result=(pow(a,x)-1)/(a-1);
else result=-(pow(a,-x)-1)/(a-1);
return (result);
24 - это конфигурация миксера. Каждый параметр в формате uint8. Диапазон значений 0-2.55, умноженный на 100
Побайтно:
1 - реверс каналов IMU, биты : 0 - крен, 1 - тангаж, 3 - руддер
2 - gain гироскопа 0-2.55 *100
3 - gain радио 0-2.55 *100
4,5,6 - стабилизация крена, тангажа, руддера 0-2.55 *100
Пустой пакет с кодом 128+24 - запрос параметров без их изменения.
Для чистого алгоритма определения положения можно взять новейшую микроплатку от ST:
- которая будет доступна в конце 12 года
- на 103 проце екф на 2 входа будет тупить 5-10мс, а его ведь еще передавать на основную плату надо
По поводу М4 вы правы.
F407 со своим 16-канальным DMA позволяет формировать видеосигнал, отрывая процессор лишь раз в 64 мкс для указания позиции следующей строки. То же самое с последовательными портами. даже буфер на прерываниях делать не надо.
Коптерконтрол пал жертвой минимализма и злого пиара, гы.
Краткий список изменений:
гуглокарту с кешем на диске сможешь прикрутить? если да, то от своей корявой наземки откажусь нафиг 😃
гуглокарту с кешем на диске сможешь прикрутить?
Эм…, Олег, вообще-то гугля напрямую в лицензии запрещает использование своего статического сервиса сторонними приложениями вне броузера. Т.е., для получения картинок нужно открывать броузер. Связано это с тем, что по лицензионному договору они не имеют права позволять третьим сторонам сохранять кеш aerial данных. Можно конечно положить с прибором на все эти лицензионные ограничения как делают многие. Но это пахнет жареным. Яндекс вон жесточайший дрын вставляет за каждое нелицензионное использование своих карт.
П.С. А шо GPS уже заработал в пирате?
А Леонид просил тебя (на сколько я понял…) - добавить в твою Гуйню управление Вортексом при помощи обратной связи с компа (ждой или другой контролер…)
Да, думаю это несложно будет реализовать. 16 Remote Control commands у Олега для этого и предназначена. Если надо добавлю в ближайшей версии.
использование своего статического сервиса сторонними приложениями вне броузера.
Давай подойдем к процессу формально. Вставь в форму объект TBrowser, можешь даже адресную строку вбить, чтоб парнуху открывало. В GET-хидере в поле browser type пиши Mozilla, в поле referrer - мапс.гогле.ком
Короче, представь, что ты соорудил типа браузер на одну страничку, и совесть будет чиста у обоих.
Также можно йузать google earth API
И да, сохранять будет не 3rd party а end user’s browser
Для гугл ёрз апи нужна сама гугл ёрз. Ладно, посмотрим. Тем более, что в лицензии вроде как какой-то новый пункт есть:
You must not use the Static Maps API(s) outside of a web-based application unless:
(i) your platform does not have a web browser; or
(ii) if your platform does have a web browser, you provide a link that shows the location concerned either (x) in the Google Maps native application (if your platform has one); or (y) on the Google Maps website.
Т.е., теоретически можно использовать их статик АПИ без броузера, но обязательно должен быть виден урл на гуглоМапсах той картинки, что отображается. А это уже хорошо и даже удобно.
это уже хорошо и даже удобно
вот и официальный выход из ситуевины. Отображение кликабельной урл-ки поверх скоченных карт
А для одноплатного варианта АП+OSD, ИМХО надо сразу STM32F4xx ставить. Вон проект OpenPilot/CopterControl - на ST32F103 - уже скушал все ресурсы (128 МБ программной и 20 кБ ОЗУ), даже не реализовав EKF и теперь растет вширь, плодя сущности: одна платка MEMS, другая OSD, третья - модем телеметрии.
Мдя… вероятно, это следствие множества разработчиков (может, там индусы сидят которым платят за каждую строчку кода, , как в ST-шных библиотеках? ) получается очередной папарацци…
вероятно, это следствие множества разработчиков
Это следствие “академического подхода”. Зато весь код открыт, универсален, многоплатформенен, прекрасно документирован и с хорошей поддержкой на земле. Впрочем любой желающий может передалать его под себя, выкинуть лишнее и реализовать на сэкономленых ресурсах полноценный автопилот.
Например еще одну Фишку. 😃
Сделал небольшую табличку IMU-шных решений сегодняшнего дня, для сравнения:
docs.google.com/spreadsheet/ccc?key=0AnOacOXMTM_5d…
Надо бы сюда еще и Мегапират добавить. Не подскажите детали, чтоб не рыть ветку?
код открыт, универсален, многоплатформенен, прекрасно документирован
А толку?
перерыл весь сайт и вик этих “академиков”, так и не нашел в этой “прекрасно документированной куче” ни ссылки на гит, ни сорца фирмваре, ни товара в наличии. Для скачать надо вступить в секту и вымолить ссылку у хозяина?
любой желающий может … выкинуть лишнее и реализовать на сэкономленых ресурсах полноценный автопилот.
ага, любая кухарка может теоретически управлять страной 😁 на 103-м проце…
После атмеги и так зубы ноют после одной только инициализации таймера на 407.
Вон проект OpenPilot/CopterControl - на ST32F103 - уже скушал все ресурсы (128 МБ программной и 20 кБ ОЗУ)
Как они умудрились?
Функционал коптерконтроля ничем выдающимся не блещет ведь.
Как они умудрились?
Мда, смешно. MP X со своим текущим функционалом, в т.ч. наземкой, на 8-битном проце ест 24 из 256 кБ флеш и около 1 из 8 кБ sram. На волшебном АРМ будет еще меньше размером, т.к. там микрокод гораздо плотнее. А от DMA я вообще в трансе: жаль время упустил, раньше не занялся.
К сож, на 407 проц нет симулятора вообще. В кейле только ядро, без учета adress base и периферии. Придется плату ждать, а ее только 18 отправят 😦
После мешочка гимора запустил-таки MARG в симе на 407-м ядре. 200мкс по сравнению с 1900 на 103-м и 3000 на AVR 😃 FPU рулит.
А можно уточнить по поводу заказа дискавери? Где , что брать 😃) Вообще старый дискавери с ST-Link имеется, если в самолет подобную плату пихать то не очень удобно, разве что в Скай. Может лучше камень взять да развести?
Придется плату ждать,
Олег, откуда камушек заказал, и по чем? Раз уж ты туда смотришь, походу надо то же брать, чтоб потом не ждать 😃
перерыл весь сайт и вик этих “академиков”, так и не нашел в этой “прекрасно документированной куче” ни ссылки на гит, ни сорца фирмваре, ни товара в наличии. Для скачать надо вступить в секту и вымолить ссылку у хозяина?
Заходите сюда: wiki.openpilot.org/display/…/Building+on+Windows
Скачиваете Гит, затем одной командой вытаскиваете весь проект к себе на винт, как написано здесь:
wiki.openpilot.org/display/Doc/Getting+the+code
Списываться с командой нужно только если захотите выкладывать свои наработки. Все остальное - полностью доступно анонимно.
платка называется stm32f4discovery , на ней сам 407-й чип и jtag отладчик-программатор, плюс всякие железки, в нашем деле не нужные. По размеру как ардуино мега.
Найди, где тебе ближе, их везде полно (кроме омска), по цене 500-800р. В Питере всяко есть.
Функционал коптерконтроля ничем выдающимся не блещет ведь.
Это игрушка больше для разработчиков, чем для пользователя. Программеры могут в реальном временени на наземки наблюдать значения всех глобальных переменных и объектов (и это достаточно прозрачно и изящно сделано). Плюс универсальность - хоть через USB управляй, хоть через телеметрический модем, хоть через доп. порт.
Беда в том, что вся эта программерская красота и удобство мало что дают пользователю цель которого полетать. ИМХО, если бы весь OpenPilot вместо конструктора сделал, как фейтех, 3-4 законченных модуля (стабилизатор, АП для самика, АП для коптера и OSD) было бы куда полезнее для моделистов.
После атмеги и так зубы ноют после одной только инициализации таймера на 407.
Дык все бы мы с радостью от I8051 не уходили. 😃 Кому на старости лет охота новую архитектуру копать?
С одной стороны вукенг с назом прут, с другой ОП интеллектом давит. Чо делать разрабу? Переквалифицироваться в юзера! 😁
Мужики…
Мы как то от темы ушли…Нет?
КК - это другой проект и ветка про него другая…
А Мегапират - это туточки…
как то от темы ушли
ок, вернемся к теме… где видео твоих полетушек???777 😉
ок, вернемся к теме… где видео твоих полетушек???777 😉
Видео с бортовой сегодня нарежу и скину…
А с наземки нет - не писал пока ОСД небыло, а с ОСД еще не летал…
ПС Костя. Пытаюсь подключиться к твоей Гуйне по АРС - пока никак…
Пойду еще одну идею проверю - отпишусь…
Короче - не знаю почему но:
С Олеговой гуйней все пашет нормально и без проблем…!
С Костиной гуйней - при подключении по ЮСБ (шнурок) и коннекте - показывает версию прошивки, заливает прошивку, усе… остальные функции не пашут…
При подключении по АРС - происходит коннект (гаснет окошко подключения, кнопка Коннект меняется на Дисконнект) - больше ничего не меняется - приборы не реагируют (кликал на приборах и правой и левой кнопками мыши…), версия прошивки не читается, окно терминала пустое…
Какие мысли?
С Костиной гуйней - при подключении по ЮСБ (шнурок) и коннекте - показывает версию прошивки, заливает прошивку, усе… остальные функции не пашут…
При подключении по АРС - происходит коннект (гаснет окошко подключения, кнопка Коннект меняется на Дисконнект) - больше ничего не меняется - приборы не реагируют (кликал на приборах и правой и левой кнопками мыши…), версия прошивки не читается, окно терминала пустое…
Какие мысли?
It’s a magic. На самом деле, у меня, как я тебе и говорил и видео выкладывал, после перепрошивки по юсби, через некоторое время плата перестаёт слать на usb большую часть команд, а шлёт только на serial 3. Соответственно дома я отлаживаю через serial 3, подключив к нему USART-USB переходничёк. Если у тебя есть такой, попробуй вместо АРСшки подрубить на serial 3.
По поводу терминала – там ничего и не побежит пока ты галочку Log не чекнешь на терминале.
Саш. А можешь запустить гуйню не двойным кликом на джарнике, а так
java -jar apscope.jar
Оно тогда ещё откроет вместе с основным окном консольное, куда будет логировать определённую инфу. А после этого, загрузи дефолтный session и попробуй подконнектиться к serial 3.
БТВ, а ты дефолтный session грузишь или свой собственный? Если твой собственный и ты не делал маппинг компонент на команды MPX – естественно ни один показометр ничего показывать не будет.
Да, Саш, если данные по юсби вдруг перестали идти или не идут вообще при подключённой гуйне – попробуй кликнуть на Reset defaults или повбивай 10ки там где частота обновления и понажимай на IMU Report freq, Radio report freq, servo rep freq.
P.S. И питание проверь, у меня когда просаживается питалово Вортекса автоматом отваливаются интерфейсы…