расширение каналов
Представил себе что будет если такой комплект помеху поймает 😃
Э… на коленке на тини13 собирал декодер на 4 дискретных канала, можно и на больше расширить, текст проги и схему подключения инициатору темы приводились. Принцип простой, длительностью канального импульса, имеющую 16 фиксированных значений задается состояние 4 дополнительных дискретных каналов, увеличим до 32 значений и имеем уже 5 доп. дискретных каналов.
Автор посудник. Так что помехи ему не страшны.
Второе, предложенная схема ему не подходит, ему нужны независимые дискретные каналы. Поэтому ему нужен кодер, который будет перехватывать ППМ сигнал с пульта в 5й канал будет впихивать 8 независимых канала и возваращать эту ППМ пачку на передатчик. На приемной стороне в пятый канал приемника будет включаться декодер. который будет вытаскивать 8 дополнительных канала.
В отрывке статьи что я привел все толком объяснено. Повторить это на пиках не состовляет никакой сложности. Причем эти каналы могут быть как дискретные так и пропорциональные. Единственное что там упущено это наличие синхроимпулься для правильного декодирования каналов. поэтому вся посылка должна состоять из N каналов+синхоимпульс запускающий счетчик каналов. Чем больше каналов впихнете тем медленние будет работать и хуже помехозащищенность.
Я может и не кораблестроитель - но и не пасудник 😃
Все верно - надо незвисимые дискретные каналы используя один из пропорц
Тем кто предлагает поисковик - пробуйте и поймете …
Теоретически я понимаю процесс подмешивания , и могу собрать на логике ( даже уже собирал ) но размеры - сами понимаете
Потому и вопрос задал - может кто на контроллере делал ( я не силен в программировании)
Скорость работы - не особенно критична( в пределах разумного)
PigTail - спасибо Ваша тема работает и уже задействована … надо БОЛЬШЕ !
Дык объясните толком как влезаете в формирование канала в передатчике, тады будет понятно что можно сделать на контроллере, а то при неимении такого передатчика хрен его знает что и как там 😉. Надо больше - попробуем приделать больше 😃
По моему, так просто взять и в передетчике разделить один канальный ипульс, ещё на 8 не возможно, т.к. кодер в передатчике, считывает с переменного резистора джойстика, уровень напряжения, и уже внутри проца работает АЦП, после него программа, в зависимости от числа которое выдаёт АЦП, формирует длинну канального импульса.
Тогда если делить один канальный импульс, то нужно изменять программу в кодере передатчика, просто на АЦП подать ещё 8 маленьких канальных импульса, не получиться. Работать не будет.
Например, Футаба делает такие аппаратуры, у которых можно один канал разделить ещё на 8, но там видимо, схема и программа кодера в передатчике, специально заточена под это дело…
Да никто не предлагает делить канальный импульс, просто в этом канальном импульсе передается информация о дискретных каналах 😉 и с программой передатчика тож ничего делать не будется, просто в PPM подающемся на ВЧ блок импульс надо подменить на наш, ну или добавить наш.
Принцип простой, длительностью канального импульса, имеющую 16 фиксированных значений задается состояние 4 дополнительных дискретных каналов, увеличим до 32 значений и имеем уже 5 доп. дискретных каналов.
Второе, предложенная схема ему не подходит, ему нужны независимые дискретные каналы.
Они и получаются независимые! 😃 32 фиксированных значений канального импульса задает 5 независимых положений переключателей: 2 в 5-ой степени будет 32. Для создания восьми независимых дискретных каналов нужно 2^8 = 256 фиксированных значений.
Как кодировать много каналов с ухудшением быстродействия? Да все просто. Кодируем вышеописанным способом например 5 бит. Посылаем. В следующей пачке еще 5 бит. Посылаем. Передаем, например, 30 бит в 6 пачках. Кодируем-декодируем, например, кодом Хэмминга. Получаем довольно сносную помехозащищенность. Можно, в принципе, использовать любой другой код, не обязательно с исправлением ошибок, нам просто нужно детектировать ошибочность всей посылки, учитывая, что ошибок может быть большое количество, просто Хэмминг - первое что мне пришло в голову.
Начало кодовой пачки можно определять либо по импульсу специфической длины (например, нам нужно 32 отсчета для передачи бит, а мы используем 33 для индикации начала пачки), либо по структуре расшифрованных данных, например, используем несколько контрольных бит, а принятые биты сдвигаем в регистре, пока не детектируем структуру всей посылки. Помехи хорошо отсекаются при помощи контроля длины импульсов, пример - IPD.