Самодельный конвертер сингала PWM в PPM для регуляторов БК двигателей
С нетерпением буду ждать. Пока выпилю адаптер, чтобы не перепаивать постоянно, а вставлять и ножки поджимать.
А я себе такой стенд сделал: к сашиному конвертеру (чип на плате) припаял шлейф и разъем. К плате вертолета тоже разъем. И еще один такой же разъем есть у программатора. Понятное дело, что это настольный стенд, зато переключиться с программатора на плату вертолета можно за пару секунд.
Кабель бы только найти… Куда я его дел…
Исправленная прошивка.
files.shelek.su/…/pwm_to_ppm-RXL-2.0.4-hex/
Тестил только в отладчике. За пределы сигнал не уходил.
Цикл - 6 мс. Импульс от 1.1 до 1.9 мс.
Исходники.
files.shelek.su/…/pwm_to_ppm-RXL-2.0.4.zip
Ненужные имена секций удалил.
Попробовал pwm_to_ppm-2.0.4-202.hex. Стартует иногда сразу, иногда с середины газа, причем нестабильно. Если потрясу хвостом, то стартует. В полете ведет себя аналогично прошлому разу. Короткий момент удержания хвоста, примерно секунда-полторы, потом короткий рывок градусов на 10 по часовой (увеличение газа), потом почти полный оборот против часовой. И так циклически. Сейчас еще параметры пошевелю, посмотрю что будет.
А какой у тебя вертолет? Хвост БК или коллекторный?
Увеличил в параметрах частоту ШИМ на 8 кГц, включил фильтры. Поведение такое же, но теперь хвост держит секунды две и проворачивает против часовой аж на два оборота.
У меня Solo Pro. Все эксперименты ставлю с БК хвостом, потому что это единственное что останавливает от полной переделки на БК.
Частота у Прохи 4 кГц. Параметр частоты, по сути, вообще не нужен - ставь всегда 4. Но частота ШИМ (не настройка - физический сигнал) должна быть кратная 4 кГц, иначе будут разнообразные спецэффекты.
Попробуй в ppm_loop.asm так:
ppm_loop
PPM_IMPULSE 1 ; 2 ms
PPM_DELAY ; 1 ms
PPM_IMPULSE 2 ; 2 ms
PPM_DELAY ; 1 ms
goto ppm_loop
и так
ppm_loop
PPM_IMPULSE 1 ; 2 ms
PPM_DELAY ; 1 ms
PPM_IMPULSE 2 ; 2 ms
PPM_DELAY ; 1 ms
PPM_DELAY ; 1 ms
goto ppm_loop
К данном куске кода строчки можно переставлять в любом порядке, добавлять и уменьшать задержки.
Попробовал оба варианта - не помогло:(
К слову о старте только на середине газа. Если уменьшить чувствительность гироскопа, то регуль вообще не стартует. Если увеличить, то стартует, если подергать хвостом, но если перестать дергать хвост - останавливается. Ну то есть газ процентов 20, движок стоит, хвостом брык - вжик, стоп. Еще раз брык - вжик, стоп.
Результаты могут быть неверными! Развалился подшипник в движке, ротор задевал статор!
А в инструкции к регулю ничего не сказано про калибровку? HK, например, калибруется входом в режим программирования.
Однако…
А ведь тогда надежда, что прошивка рабочая, увеличивается! 😃
Заменил подшипник. Подключил к основному каналу. Вот видео. На нем прям слышно как циклически гуляет сигнал PPM.
Одно уже хорошо - регуль сигнал не теряет.
Какие были настройки? Моя сборка или своя?
этта… могу показаться нахалом, но похоже есть вариант заставить стартовать по нормальному… была такая фигня у меня с хк регами при переделке коптера нав стандартные реги… дык вот. фича этих регов в том , что при включении они выжидают 3 сек и тот импульс что был в этих 3х секундах принимают за ноль газа… то бишь прогу надо подправить - типа что при начальном включении конвертер генерил 3-5 секунд ппм типа газ ноль - то бишь 1 мс и тока потом принимал шим с штатного рега и превращал его в ппм… как то так…
Плата Прошки стартует всегда с нулевым газом. Сперва идет соединение с пультом, потом на пульте ручку надо перевести в ноль и только тогда можно дать газ. Все это время конвертер выдает 1.1 мс. Т.ч. такая проблема тут исключена. Я полагаю тут проблема с детекцией, но не уверен. Мне бы самому на железе потестить. В симуляторе микроконтроллера все путем, но это рафинированные условия.
Пробую в симуляторе задать не точную частоту, а чуть меньшую или чуть большую - ±60 Гц. Тестирую на скважности 50%. Есть девиация на уровне ±4%, но не более.
Существенной девиации (12%) удалось добиться при уходе частоты ШИМ аж на 400 Гц - 3600 вместо 4000 Гц. Сомневаюсь, что у нас такие некачественные чипы. В даташите указана точность встроенного генератора на уровне 1-2%.
дык в том то идело… на коптере тож так было… и из за этого все таки стартовали реги уже почти на полгаза… а как тока сделали выдержку все сразу ок
У хвостового двигателя специфичные условия работы. Я там намерял скважность ШИМ от 0 до 100%, в то время, как на ОР - от 40 до 77%. Но видео показывает, что обороты нестабильные даже на столе без движения.
Вот если собирать из исходников и поставить CFG_PWM_FREQUENCY = 8, то на 4 кГц ШИМ точно будут проблемы. Возможно даже похожие.
Насчет девиации в 4% я ошибся - 1.6% 😃
Одно уже хорошо - регуль сигнал не теряет.
Какие были настройки? Моя сборка или своя?
Сборка моя с помощью MPLABX. С вот этим куском кода:
ppm_loop
PPM_IMPULSE 1 ; 2 ms
PPM_DELAY ; 1 ms
PPM_IMPULSE 2 ; 2 ms
PPM_DELAY ; 1 ms
PPM_DELAY ; 1 ms
goto ppm_loop
Фильры были отключены, частота 4 кГц, сигнал с затвора ключа.
Понятно: ищу кабель и проверю на своем регуле.
Кабель не нашел - пришлось корячиться.
В общем, прошил 200i.
ESC HK 3A. Движок AP-03. Снимаю сигнал с ключа (резистор 2 кОм).
Работает на обеих источниках - и ОР, и ХР. Тестировал только первый канал - программно они идентичны.
Всем привет!
Александр и Роман, песпект за проедаланную работу! Ваш конвертер походу самый легкий, легче тех буржуйских что продаются.
Саш, а можно как-то получить ваш конвертер в готовом виде? Собираюсь тоже переделывать mCpx в БК, как в сосоедней теме, но вот с программированием микроконтроллеров не очень дружу 😃
Можем если что в личке обсудить? Благо Киев недалеко, могу и подъехать. 😃
Спасибо, Юрий, проедали мы как следует 😉
Как видите, с ОР - все путем, а с ХР не все. НЕт тестовых данных, что последняя прошивка работает нормально.
У меня на столе работает ровно. У Сергея - плавает. Нужно еще несколько тестеров.
Что касается тестирования на mCPX - вопрос к Саше (Сушке).
За вес спасибо Саше. Я произвожу только невесомые байты.
Да ладно Ром, не скромничай, прошивку написать - это тебе не 3 буквы на заборе 😃
На mCP-X пока что нормально работает ОР, облетал на выходных. Но нужен пиньен 9Т. С хвостом нужно продолжать эксперименты, а то у меня мотор ХР убился (