Создание собственной системы стабилизации

rual
Alexsis1109:

прошу прощения за тупость. расшифруйте ДУС?

ДУС- датчик угловых скоростей. Гироскоп это вроде как прибор указывающий абсолютное отклонение от установленного положения.

Alexsis1109:

чтение одного без другого (имею ввиду с разной частотой) не имеет смысла

Отчегож? Вы ведь систему стабилизации строите, и на неё не только Р/У воздействует, но и текущие параметры полёта ЛА. Задавать полжение Вы можете достаточно нерасторопно, но система должна компенсировать все отклонения от заданого гораздо быстрей. Иначе она вовсе не нужна, коли Ваши руки быстрее реагируют на все возмущения. Для примера запустите коптер на одном лишь приёмнике, без мозгов и вертолётных гироскопов.

Alexsis1109
Geniok:

что считывать положение стиков с частотой больше 10Гц смысла не имеет. Хотя конечно данное утверждение на практике еще не проверено.

это все на практике нужно проверять, но 5Гц точно никак. мне кажется логичным чтобы плата контроллера не тормазила работу машинки как бы быстро я не дергал стик. думаю после 5Гц я переду сразу на 25Гц

SergDoc

Йоо-хооу собрал!!! 😃
в общих чертах: немного поизголялся над makefile, далее в папке libmaple - есть ещё один проект под одноимённым названием - надо собрать /build/libmaple.a, потом отыскать в закромах мапловской ide файлик ld.exe и положить в свои патчи (директорию с компилятором), далее залезть сюда github.com/bubulindo/libmaple_F4/tree/…/ld забрать две библиотеки libcs3_stm32_high_density.a и libcs4_stm32_high_density.a ну или скомпилировать их так же как и с libmaple лежат AeroQuad\Libmaple\libmaple\support\ld\libcs3_stm32_src\ и AeroQuad\Libmaple\libmaple\support\ld\libcs4_stm32_src\ нифига себе квестик😵
ну и ладно теперь у меня живёт AeroQad32 под Eclipse 😃

Sir_Alex
Geniok:

SirAlex меня поправит, если что, но по-моему в пирате положение стиков читается не каждый цикл.

100Hz, правда я в последней версии снизил до 50Hz - но это просто попытка найти проблему в PPM декодере.

Geniok
Alexsis1109:

это все на практике нужно проверять, но 5Гц точно никак. мне кажется логичным чтобы плата контроллера не тормазила работу машинки как бы быстро я не дергал стик. думаю после 5Гц я переду сразу на 25Гц

Это практически невозможно. Плата в любом случае будет затормаживать реакцию, более или менее. Если говорить конечно про устойчивый полет, а не попытки поймать стиками равновестное положение. Тут хоть 100Гц поставь! Или отключать большинство датчиков и рулить ручками…

mahowik

Кому интересно, нашел демо проектик для STM32F3Discovery под CoIDE (CooCox). Попробовал, собралось! Мой первый билд под stm32 😃
Правда заливал через STM32 ST-LINK Utility, т.к. похоже flash driver-а нет соот-го для STM32F30x под CooCox (Error: Flash driver function execute timeout)

Что нужно чтобы собрать проект:

  1. качаем/устанавливаем CooCox CoIDE V1.7.0 www.coocox.org/Index.html
  2. качаем/устанавливаем gcc под ARM launchpad.net/gcc-arm-embedded/+download
  3. берем Demo Project for CoIDE www.coocox.org/forum/topic.php?id=2219
  4. компилим, находим *.hex или *.bin и заливаем через STM32 ST-LINK Utility

радуемся! 😃

DVE

С почином 😃 После STM на AVR смотреть неохота 😃

Но весь прикол st-link - в совершенно прозрачном процессе отладки, поставил точку останова и она сработала, а через hex, это все совсем не то 😃
Купите stm32F4Discovery, цена вопроса-то смешная, судя по ссылке около 15$ (у нас тут подороже конечно).

Плюс эта плата встроенный ST-LINK имеет который можно использовать для отладки других плат (пробовал, работает), отдельно он 30$ стоит, тут получается вообще даром.

SergDoc
mahowik:

радуемся!

а что оно делает?

т.к. прошивка AeroQad довольно маленькая, занимает 83к флеши, то наверно первую плату я соберу под него (всё что нужно имеется), да и всё можно задействовать - посмотреть как работает, в общем просто протестировать плату, ну а если всё хорошо, то можно будет и vgt6 проц заказывать, и тогда получится довольно универсальное устройство, с поддержкой практически всех проектов под F4 😃 надо только IDE своё переделать, а то сейчас поддерживает только maple, ну и по идее должно работать с ардуино (компиляторы встроил библиотеки не проблема), но проверять у меня не на чем…

SergDoc

Так, я помоему чему-то полезному научился 😃 , перетащил проект мелкоплаты так же под Eclipse - всё работает 😃

mahowik
DVE:

После STM на AVR смотреть неохота

да ладно! 😃 Если низкоуровневых вещей не касаться, то и там и там С++ по сути. Флопсов да, конечно побольше в стм-ке. Настроил вот матрицу поворота акселя по трем осям в глоб. систему координат gps. Думал AVR-ка удавится от 6-ти sin/cos-в и кучки float перемножений. Фига! 😃 С библиотечными sin/cos всего 900-1100мкс, с апроксимационными 700-800мкс, а с табличными так вообще 500-600мкс. Так что жить AVR-ке еще долго 😉, на том же вие к примеру, т.к. atmega2560 имеет 256кб флеша на борту, а прошива вийная со всеми феньками сейчас тянет всего на 40кб…

DVE:

Но весь прикол st-link - в совершенно прозрачном процессе отладки, поставил точку останова и она сработала, а через hex, это все совсем не то
Купите stm32F4Discovery, цена вопроса-то смешная, судя по ссылке около 15$ (у нас тут подороже конечно).

по ценам, если с доставкой и налогами, то примерно в 2 раза дороже выходит… а купил уже пару мес. назад, сперва F4, потом F3 (т.к. сенсоры на борту сразу для поиграться), где только время на все взять? 😃
серьезно, вопрос всем, где вы берете время? есть возможность прямо на работе ковыряться? (хехе… сейчас загадим Сергею темку! 😈)

DVE:

Плюс эта плата встроенный ST-LINK имеет который можно использовать для отладки других плат (пробовал, работает), отдельно он 30$ стоит, тут получается вообще даром.

что на STM32F4DISCOVERY что на STM32F3DISCOVERY, и там и там ST-LINK на борту…

SergDoc:

а что оно делает?

Ну главная фишка - это сам проект для F3 под Coocox, т.к. в списке чипов при создании проекта нет F30x…
а так это офиц. STM32F3DISCOVERY демка. После загрузки моргает светодиодами по кругу. Далее жмем User батон/кнопу запускается демка ДУС. Еще раз раз жмем, запускается демка магнетометра… вроде так…

Razek
SergDoc:

Показать картинки (1) Йоо-хооу собрал!!!

Так под какой проц то собрал?

DVE
mahowik:

да ладно! 😃 Если низкоуровневых вещей не касаться, то и там и там С++ по сути. Флопсов да, конечно побольше в стм-ке.

Да я не про флопсы даже, просто у stm как-то все удобнее. Памяти больше, флеша больше, отладка и заливка одним кликом, IDE удобная, все гораздо приятнее получается.
На AVR всякие мелкие вещи делать прикольно, DIP-корпус рулит 😃

mahowik:

серьезно, вопрос всем, где вы берете время? есть возможность прямо на работе ковыряться?

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

SergDoc
Razek:

Так под какой проц то собрал?

под F4, пока родное от AeroQad который F4

Razek
SergDoc:

под F4, пока родное от AeroQad который F4

Странно что тогда такой квест получился

SergDoc
mahowik:

хехе… сейчас загадим Сергею темку!

Я думал это ты не спишь 😃 , у меня получается т.к. я с ноутом выгнан на кухню, то в обед, ну и вечером после 8-ми поковыряться, ну а просто потрещать можно и на работе 😃

Razek:

Странно что тогда такой квест получился

наверно как-то можно библиотеки скомпилить автоматически, но я ещё толком не разобрался как делать makefile…
проекту нужны скомпилированые библиотеки libcs3_stm32_high_density.a, libcs4_stm32_high_density.a и Libmaple.a которых в проекте не было… ну это и к лучшему ибо libmaple.a мне точно под свою плату переделывать…

rual
mahowik:

Так что жить AVR-ке еще долго

Ну это да! Живее всех живых! 😁 Вию ещё долго на АВРе телепаться.
А я 1.5 года назад, когда решил заняться автопилотом, пересилил себя и полез в СТМ32. Хоть это и затянуло получение результата, но получил опыт и “утоптанную поляну” для продолжения разработок.
Чем лучше СТМ:

  1. Быстрее.
  2. Удобней в разработке ПО (“толстая” встроеная арифметика, работа с длиными данными).
  3. На пару голов выше перифирия (ПДП, векторные прерывания и т.п.).
  4. Доступные и удобные средства разработки (платы Discovery, JTAG).
  5. Дешевле АВР.
mahowik:

по ценам, если с доставкой и налогами, то примерно в 2 раза дороже выходит…

Мне 3 платы Ф3 обошлись с доставкой (а она дорогая, транспортной компанией) от официалов в РФ в 2000 руб (~$60).

mahowik:

Серьезно, вопрос всем, где вы берете время? есть возможность прямо на работе ковыряться?

У меня времени на работе больше, чем дома:), с утра пока всех развезёшь, вечером соберёшь . Потому и брал дисковери, что можно иметь несколько макетов для разработки: 1-летает, 2-для разработки дома, 3-для разработки на работе.

Razek
mahowik:

серьезно, вопрос всем, где вы берете время?

Времени мало очень, а то что есть съедает какая-то мелочевка, то подвес пилить то раму восстанавливать то глюки от куда-то сыпятся, давеча потратил 2 вечера на поиски глюка с датчиком тока, хотел добится от него прецизионности, он все врал безбожно, в итоге оказалось что опорное напряжение у него 5.6 вольт а не 5, а его гнал регуль у которого в обвязке висел резистор на 204 когда по расчетам должно было быть 240.

Вообще это ты поделись тайными знаниями где ты время находишь на релизы собственных бранчей вия =)

oleg70

Подскажите, кто знает, зачем у STM несколько питающих (VDD) и “земляных” ног, c каждой стороны ?
На AVR-e делал запитку с любых удобных, но не уверен что прав… Не могу нигде найти инфу по этому поводу.
(плату почти развел, а тут затык…)

SergDoc

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

Razek
oleg70:

STM несколько питающих (VDD) и “земляных” ног, c каждой стороны

Да и на каждую пару желательно вешать кондеи

mahowik
rual:

Вию ещё долго на АВРе телепаться.

так и будет… хотя если учесть, сколько клонов вокруг (в том числе и на стм32), то вий уже давно переехал 😃
кстати, ради ознакомления, (опять 😃) советую посмотреть на проект от ziss_dm (от вия там давно ничего не осталось, еали кого пугает сам вий 😃)… там HAL реализован для AfroFlight32, STM32f3Discovery и ардуинки

rual:

Чем лучше СТМ:

читал пару обзорных статей по стм32… тут споров нет…

rual:

Мне 3 платы Ф3 обошлись с доставкой

тоже самое по сути… что то более 20 енотов за штуку вышло…

rual:

У меня времени на работе больше, чем дома

иногда так же, но начальник за спиной сидит и каждый раз когда открываю Notepad++, пописать че нить, то на стреме постоянно ))

rual:

1-летает

кстати, ты давно видео не выкладывал на ф3… если не пропустил, то было только видео первого подлета на ф3 и тогда коптер по горизонту вроде как гулял… сейчас стабильно все?

Razek:

Вообще это ты поделись тайными знаниями где ты время находишь на релизы собственных бранчей вия =)

вот на них пока все время и уходит, как “урванное” рабочее, так и свободное домашнее + еще дебильный саппорт дофига времени тянет… а по сути от “монетизации” хобби одни убытки получились, как моральные, так и материальные… писал в RC1 ветке как-то…