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

oleg70

Короче, провел тесты (я про RPi), из под Питона по i2c стабильно можно общаться с периферией максимум 200 Гц, + при этом произвольно возникают задержки (Linux)… мораль - даже если нахлобучить на нее отдельный контроллер, то алгоритм управления ШИМом размещать внутри самой RPi нецелесообразно (особенно для коптеров)… Или ждать пока кто нибуть RTOS под не родит, или испольовать в качестве супер пупер OSD + камера + программа автопилота с питоновскими примочками, графикой, беспроводными интерфейсами и прочим…
Приблизительно общая структура вырисовывается, буду ковырять…

ssh
oleg70:

из под Питона

разьве питон подходящий язык, когда дело касается скорости?

нагуглил:
To increase the speed on the Raspberry Pi, you can pass an optional baudrate parameter via modprobe to the I2C module

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

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

oleg70
ssh:

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

Внутри себя она конечно мощнее чем любой контроллер, но “бутылочным горлышком” является периферия, и дело даже не в частоте i2c (200 Гц за глаза…), а в том что эта частота прерывается неконтролируемыми паузами, что в реале приведет к “подрыгиванию” серв или моторов…

ssh
oleg70:

ждать пока кто нибуть RTOS

Да ось вроде же есть. ChibiOS для Rpi.
Да и с линуксом тоже вроде не так все плохо, есть же примеры.

ssh:

Да ось вроде же есть

Правда, че-то она не поддерживается…

algama
oleg70:

…из под Питона…при этом произвольно возникают задержки (Linux)…

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

oleg70
ssh:

Да ось вроде же есть. ChibiOS для Rpi.

Есть, и патчи к линуксу есть, но тогда автоматом теряется поддержка камеры и всех остальных вкусностей…, как бы - и нафиг тогда 700 мгц, (чего ими делать то ?) , у меня щас один stm32f407 и OSD и реалтайм 500 Гц и RTOS успевает обсчитать и особо не устаёт…

ssh

Да, все же интересно было бы, если бы вы повторили эксперимент на c/c++.

oleg70
ssh:

Да, все же интересно было бы, если бы вы повторили эксперимент на c/c++.

Люди уже проводили (в сети всё есть), да, скорость общения с интерфейсами увеличивается в разы, аж до 22 Мгц!, но проблему “дропов” это не решит…
Я к осциллографу подключал выход GPIO и программно из запущенной задачи (на С) выводил меандр (получилось ~5 Мгц), все низкочастотные “дропы” наблюдаются, но засинхронизировать их не получается из за непостоянного характера их возникновения… так что реалтайм процессы обсчитать не получится…
Не, есть конечно плата “NAVIO Rpi”, и и там якобы всё работает, но во первых подозрительно это как то (не верю), во вторых эта тема с ней как то заглохла (что подверждает “первое”)

SergDoc

Первое - стоимость NAVIO уж очень большая и смысла нет от неё… есть одна задумка - кто мешает 405/407 с датчиками повесить? готовая реалтайм инерциалка, а малина пускай трудится во благо родины с видео и т.п.
т.е. малинопилот берёт всё с полётника и корректирует ins по её задумкам (опять же видео, лидар сонары лазерные дальномеры и т.п.) плюс может вести свои логи рассчитывать оптимальный маршрут…
я тут немного отстал от жизни ))) киньте что почитать по малине - порты интересуют…

oleg70
SergDoc:

есть одна задумка - кто мешает 405/407 с датчиками повесить?

Вот и у меня, Сергей, такая же задумка, щас вот прикидываю - как по-удачней организовать интерфейс/мост между RPi и stm (что б потом сто раз плату не переделывать ))), а инфы по портам RPi море, гугл рулит…

algama
oleg70:

…все низкочастотные “дропы” наблюдаются, но засинхронизировать их не получается из за непостоянного характера их возникновения…

тоска однако. я питал некоторые иллюзии в адрес RPI.
а с WIOT играться не пытались?

oleg70
algama:

а с WIOT играться не пытались?

Там только i2c … , в принципе пойдет, библиотеки все и для Питона и для Си есть, но надо еще подумать… , я б у них и SPI соединил бы (хуже не будет), а UART оставил бы родной “распберрипишный”

algama
oleg70:

Там только i2c …

я имел в виду другую операционку…

ПС: питон, конечно, штучка модная, но чур меня… он для других целей.

rual

Привет всем! Рад что тема поднялась, а то на конфе полная грусть. У ардушников только иногда что то проскакивает (

oleg70:

Вот и у меня, Сергей, такая же задумка

Олег, а вы чем малину занять хотите? Корректировать через неё мозжечек будет никчемно, ибо петелька длинная, проще тогда вообще ничего не корректировать -точнее будет. А для полетов для конкурсов типа Крока или круче её уже мало…
Остаётся только “мегамозг-питононоситель”, тоже может быть полезна для отработки “интеллектуальной автоматики”

oleg70
rual:

чем малину занять хотите?

Я тут (за два года, в охоточку) софт для своей платы вроде отладил в объеме - GPS, стабилизация, OSD, но для дальнейших экспериментов необходим гибкий интерфейс типа как у Арду, коэфициэнтики/настройки менять и прочее…, под винду делать такое не умею, вот и закралась мысль…
Питон позволяет быстро сваять любой GUI + OpenCV + camera с возможностью (?) HD FPV (она же пишет на флешку)+ WiFi SSH… , как и что, конкретно пока вот размышляю… В сети нашел - люди делают прошивку STMa прям из распберри (по моему круто ?)
Может и пустое это всё… незнаю , пока вот камеру испытал - крутизнаа (аж заказал себе ещё четырехядерного клона распберри, та аж 4к жмёт!)
Может в этой ветке кто идейку интересную подкинет ? делать то что то надо…

SergDoc
rual:

Остаётся только “мегамозг-питононоситель”, тоже может быть полезна для отработки “интеллектуальной автоматики”

не мегадатчеГ ))) и кто сказал рвать петлю? петля сама по себе, плюс цветное осд положенное на видео сразу… за одно гуй прямо на аппарате - поставил в чисто поле - пальцем натыкал точек и в добрый путь )))

oleg70
SergDoc:

за одно гуй прямо на аппарате

Или например - не ставить Rpi на борт, а сделать из нее компактный “карманный программатор” для полевых условий , всё таки ноут/нетбук таскать с собой проблематично… (идея+)
кстати ложка дёгтя относительно OSD - превью окна с камеры работает прям на GPU и как следствие - наложить на видео “поверх” графику никакой процесс не может… т.е. инфу можно выводить только в стороне от окна видеокамеры, прада есть возможность включать степени прозрачности видео (альфа канал 0-255), пробовал, кстати, тоже прикольно смотрица, типа “радар” на заднем фоне картинки…

9 days later
oleg70
oleg70:

аж заказал себе ещё четырехядерного клона распберри

Приехал клон (4 ядра, 1.6Ггц, 1гб озу), испытал, - жрёт на 100 ма больше (~300), камера от RPi не подходит…- другой стандарт интерфейса (😦) придется пока баловаться с WEBcam, но производительность порадовала… UBUNTU летает (по ощущениям даже шустрей чем на i86)…
Вообще прихожу к мысли, что ставить на борт такую штуку оправдано если нагружать ее именно обработкой видео, иначе как то не к чему это всё… Попробую OpenCV помучить, чего она вообще может (?)…

AlexSneg
oleg70:

Попробую OpenCV помучить, чего она вообще может (?)

пробовал на CubieTruck2(два ядра по 1ГГц) OpenCV для распознавания области нахождения лиц. Получил ~5 сек на один фейс. Так что не особо надейтесь на тему обработки видео на этих штуках.

AlexSneg

Это слишком простая картинка. И там 1 фейс черно-белый и он почти 1/4 картинки. Групповую цветную человек на 10 подсунь с площадью каждого фейса не более 5%. И будешь ждать секунд 40. Иногда у меня и до двух минут доходило с разными картинками.