PPM SUM - это просто (очередное простое решение проблемы)
под это дело есть своя штукенция с открытыми исходниками
store.diydrones.com/product_p/br-ppme.htm
Ни кто не в курсе куда переехала ссылочка ?
Впрочем можно поставить тини2313 прямо в коробочку приемника и не заморачиваться.
pro mini тоже нормально помещается.
Добрался я до PPMSUM
Напомню. Arduino pro mini. Спаял по схеме из первого поста. Но там прошивка для 168 (у меня на 328).
Есть прошивка …3drobotics.com/…/8-channel-ppm-encoder-version-2
Она для 328. Но по какой схеме то она спаяна фиг поймешь. Пойдет она для pro mini ? Смотрю там по дефолту частота 8 MHz в мейкфайле прописана. Но у mini pro она же 16 ?
Фьюзы не трогать ? Загрузчик ардуиновый помрет после прошивки ?
то что написано для 168, спокойно пойдёт на 328 без перекомпиляции…
V2 и выше если есть на 16МГц…
V2 и выше если есть на 16МГц…
не очень понял это. Плата на 16 MHz.
Пойдет что ? Прошивка из первого поста или “8 Channel PPM Encoder Version 2” из …3drobotics.com/…/8-channel-ppm-encoder-version-2 ?
Фьюзы не трогать ? Загрузчик ардуиновый помрет после прошивки ?
фьюзы трогать не надо, стереть флеш и еепром перед заливкой, лодырь помрёт - но это не страшно, всегда можно новый залить если понадобится…
“8 Channel PPM Encoder Version 2”
от неё паршивка пойдёт…
wiki.paparazziuav.org/wiki/AT…_Encoder_Board
Ага, читаю. Но фьюзы то они там вроде прошивают
avrdude -p m328p -P <Insert port here> -c <Insert ISP type here> -U lfuse:w:0b11110111:m -U efuse:w:0b111:m hfuse:w:0b11011001:m -U flash:w:ppm_encoder_v4_3+bootloader_16Mhz.hex
не ну если в дудке настроено - эт нормально атмега по умолчанию идёт просто 1МГц на внутреннем генераторе…
если это ардуино, то можно фьюзы и не трогать - они уже правильно стоят 😃
если шить дудкой то просто по инструкции - ничего страшного и не будет 😃
блин уже начал забывать, что такое AVR 😦
если это ардуино, то можно фьюзы и не трогать - они уже правильно стоят
Ага, становится понятнее.
Прошил. PPM на выходе есть судя по осцилографу. Ща проверим что там.
Работает все кроме первого канала. На ардуину PWM 1-го канала точно приходит.
UPD разобрался. У меня ардуина поддельная. И RXI по длинной стороне не звонится на RXI по короткой стороне. Перепаял на короткую сторону, все заработало.
Все упаковалось внутрь приемника.
А вот только у меня мысль появилась глупая. Можно ли заюзать стабилизатор стоящий на ардуине для питания приемника ? Ну а снаружи все это питать 12 вольтами.
Алексей, все немного не так.
Для FlySky приемников (типа hk-tr6a) нужен ВЧ модуль на A7105. Например XL7105-CL
Далее по той теме есть куча работающих проектов под разные нужды. Есть на С подобном языке - arduino. Уже с ppm выходом.
модули наконецто пришли…
сначала решил проверить как работает оригинальная схемка прошивка с внутренним осцилятором на 8мгц
взял последнюю версию схемы, платы скомпилировал и прошил хекс в ардуинку, но поскольку выриантов схем было много ввтч на 328 атмеге не обратил внимание что опубликованы фьюзы для M8 (а у меня только 328 в наличии)
по ошибке влив в нее фьюзы от m8 окирпичил ее.
поскольку времени на раскирпишивание жалко - побыстрому перепаял на новую и оставил заводские фьюзы, вроде как заводские на внутренний осцилятор 8 мгц - но почему то ардуинка не запустилась (наверное с фюзами чтото не так) получасовые поиски инфы о том какой набор фьюзов используется для 328 на 3,3 вольта с внутренним 8 мгц осцилятором успеха не принес, - полно конфигов на 8 мгц 3,3 вольта с внешим кварцем, а с внутренним нет.
попробовал пару вариантов от фьюз-калькулятора - невышло. сделал простейший скетч чтоб в сериал писал строку - для проверки - молчит.
немного поразмыслив о том что в финале мне все равно 8мгц 3 вольтовая вресия нужна не будет по следующим причинам:
- ппм и пвм выходные сигналы мне будут нужны пятивольтовые
- при использовании низкой частоты возможен джиттер по каналам
посему пришел к выводу что нужно соединять радиомодуль с ардуинкой через конвертеры уровней
из дополнительного ништяка это позволит на стадии “доработки скетча” использовать стандартную ардуину (с бутлоадером) с стандартным 5 вольтовым ftdi без риска спалить радиомодуль
но с другой стороны искать сейчас чип левел-конвертера - потерять кучу времени.
простенький левел конвертер который используют в сд-кард ардуино адаптере выглядит так:
но у меня есть некоторые сомнения касательно не будет ли такой конвертер заваливать фронты на той частоте на которой работает радиомодуль с ардуинкой.
есть идея заменить нижний резистор в этой схеме стабилитроном на 3 вольта, а номинал верхнего уменьшить до 200 Ом
в даташите на чип радиомодуля пишут что критическое напряжение питания 3,6 критическое напряжение по сигнальным линиям 3,9
странным показалось что в рцгрупс прошивка под 16мгц есть а как сделали схему - нет
я забыл отписаться,
со стабилитронами все получилось,
очень удобно когда ардуино стандартно от 5 вольт на 16 мгц работает и прошивается через arduino ide
при этом не надо отсоединять передатчик чтоб не сжечь его.
все прибиндилось, сигналы есть, фаилсэйв работает
осталось сделать тест на дальность, антенка не переделывалась - вытравленный на печатной плате патч - если будет работать на 1 км то ничего переделывать не буду
Народ подскажите, как из PPM получить PWM ? На AIOP надо максимум (мне ) 6 каналов. Остается еще 2 (фриска 8 кан.) . Как эти два выдрать из PPM и сделать именно 7 и 8 канал обычным ШИМом ? Хочу камерой крутить курсовой. Может есть какое решение “на коленке” ?
ЗЫ Я так понял вы тут обсуждаете как из PWM получить PPM… Мне надо наоборот =)
самое логичное если используете по с открытым кодом для AIOP то дописать вывод нужных каналов на свободные выходы напрямую
как раз вчера это делал… делается банально, правда у меня на другом проце вий так что могу ошибится… я правда делал на 1 канал… попробую на 9 и 10 пин АИО сча сделать
в def.h добавляем строчку, чтобы можно было отключать
#define AUX34_ON_OUTPUT
в output.ino в ф-ции void initOutput() в конце добавляем
#if defined(AUX34_ON_OUTPUT)
// timer 2 is a 8bit timer so we cant change its range
TCCR2A |= _BV(COM2B1); // connect pin 9 to timer 2 channel B
TCCR2A |= _BV(COM2A1); // connect pin 10 to timer 2 channel A
OCR2B = 1500>>3; // pin 9
OCR2A = 1500>>3; // pin 10
#endif
далее в mixTable() после кода
/**************** neutralize Servos during calibration of gyro&acc ******************/
#ifdef SERVO
if ( (!f.ARMED) && ((calibratingG > 0) || (calibratingA > 0)) ) servos2Neutral();
#endif
вставляем
#if defined(AUX34_ON_OUTPUT)
OCR2B = rcData[AUX3]>>3; // pin 9
OCR2A = rcData[AUX4]>>3; // pin 10
#endif
это справедливо для любого приемника, что ппмсум что стандартного, что сбас и т.п.
О спасиб. Попробую - отпишусь )
и так тему пытаюсь читать, и эдак… нифига не погу понять 😃
то 2313, то ардуина, то фьюзы шить дудкой - “смешались в кучу кони, люди…”
От нефиг делать сделал PPM SUM со встроеным RSSI метром для турниги
вот это интересно - но только мне похоже, никакого отклика в теме; стоит повторять - там автор про какие-то проблему некритичные, но неприятные писал - насколько они неприятные?
хочется отвязаться при подключении к мультивию от пачки проводов + индикатор rssi был бы полезен для осд; правда я пока не знаю, полезен ли и как его использовать
купите FrSky DF 2.4Ghz Combo Pack for JR w/ Module & RX, просто, надежно, многофункционально
у меня такой передатчик, но приемников уже 5 штук не-телеметрийных, что ж их, ради такого менять?.. не, надо что-то выдумывать 😃