Подписываемся на VK

Ежедневные новости, видео и приколы...

YouTube канал

Подбор моторов

TOP статьи

Вход




RC Магазины





Home Технологии Оборудование Доработка шестиканальной аппаратуры (хоббикинг и подобных)
Доработка шестиканальной аппаратуры (хоббикинг и подобных)
Технологии моделизма - Ремонт и доработка оборудования
Автор: Роман   

Добавление дискретных каналов в шестиканальную аппаратуру

Все, наверное, слышали про эту аппаратуру, продается под разными названиями, насколько я знаю, отличия лишь в наклеечках. Был про нее обзор на сайте, там же есть ссылка, где купить. Мне досталась под именем FlySky CT6B, в комплекте с 6-канальным приемником:
alt


Идея доработки аппаратуры вот в чем:

Для полноценного управления среднестатистическим самолетом нужно 4 канала. На всякие штуки типа закрылков/парашютов/шасси/бортовых огней и т.д. остается 2 канала. Все-таки отдавать пропорциональные каналы под такие функции - расточительство. Поэтому появилась идея сделать схему, которая бы заменяла один из пропорциональных каналов в передатчике на 6 дискретных.


Что для этого потребуется:

1) Естественно, в пульт нужно установить дополнительные тумблеры. Я поставил 4 тумблера и 2 кнопки - в зависимости от назначения канала, может оказаться удобнее использовать тумблеры (шасси, фары, закрылки...) или кнопки (выброс парашютов, затвор фотоаппарата...). Чтобы освободить место в верхней части пульта, пришлось "крутелки" от 5-го и 6-го каналов перенести в нижнюю часть пульта (заодно заменив на линейные потенциометры).
2) Нужна схема в пульте, которая будет кодировать состояние 6 тумблеров в один пропорциональный канал.
3) Нужна схема "на другом конце провода", которая будет втыкаться в один из каналов приемника и выдавать 6 каналов на выход.

По части механической переделки пульта ничего особо сложного нет, вот что в итоге получилось после установки всех тумблеров и кнопок:

 


Самое интересное начинается со схемы, которая должна кодировать сигнал. Известно, что каждый пропорциональный канал представляет собой импульс на выходе приемника, длиной от 1 до 2 мс. Принцип кодирования дискретных каналов в данной схеме состоит в том, что при всех выключенных тумблерах длительность должна составлять 1 мс, а далее, первый тумблер при включении добавляет 500 мкс, второй - 250, третий - 125 и т.д. Т.е. каждый тумблер добавляет в 2 раза меньшую длину импульса, чем предыдущий. Получается как бы число в двоичной форме, которое показывает состояние тумблеров. Таким образом, по длительности импульса на выходе всегда можно будет определить состояние всех 6 каналов.

Было 2 варианта, как это сделать. Первый, который сразу пришел в голову - генерировать аналоговый сигнал и подавать в электронику пульта вместо сигнала с одной из "крутилок". Из-за ненадежности пришлось отказаться от него в пользу второго - перехватывать уже готовый PPM сигнал на пути к радиопередатчику. Этот вариант лучше еще тем, что не зависит от всяких микшеров и настроек в пульте.

PPM сигнал представляет собой последовательность из 6 импульсов, соответствующих каждому каналу, идущих один за другим с интервалом около 350 мкс. Вся последовательность повторяется с периодом около 20 мс.
alt

(картинка из гугла, поэтому там 8 каналов, а не 6, но суть та же)

Соответственно, задача кодера - получить на вход сигнал, а на выходе повторить первые 5 импульсов из каждой пачки, а 6-й подменить на собственный, сгенерированный (и кстати, схема будет работать только на 6-канальной аппаратуре, для другого числа каналов нужно поменять пару дефайнов в прошивке). Схема собрана на МК ATtiny2313 (он же используется и в приемной части):


Есть одна загвоздка с питанием - радиомодуль работает с сигналом амплитудой 3.3 В, поэтому надо либо применить преобразователь уровней, либо (как я и сделал) запитать сам МК от 3.3 В. По-хорошему, надо бы поставить преобразователь напряжения на питание, но я ограничился стабилитроном и резистором на 220 Ом, прекрасно работает и так :)

Схема подключения всего этого в пульт представлена ниже:
alt

К радиомодулю от цифровой части идет 4 провода: красный и черный - питание, желтый - PPM сигнал и еще один (не помню цвет) - точно не знаю для чего нужен, предположительно для настройки канала в передатчике. Плата подключается в разрыв желтого провода через переключатель, таким образом, получается возможность выбрать: либо все 6 пропорциональных каналов, либо 5 пропорциональных + 6 дискретных.

С передатчиком вроде все, теперь о приемнике:
Тут задача проще - нужно получить на вход импульс, измерить его длину, и на основании этого включить нужные выходы. Я решил добавить на плату еще 6 перемычек - для настройки выходов, т.к. для разных целей может оказаться удобнее получить на выход сигнал под серву (импульс длиной 1 или 2 мс) или просто логический уровень (1/0). Например, для закрылков или шасси нужен сигнал под серву, а для включения огней или DC мотора (через транзистор, естественно) достаточно просто логического уровня. При снятой перемычке на соответствующем выходе будет логический уровень, при одетой - сигнал для сервы.
Вот схема приемной части на все том же МК ATtiny2313:

 

А вот плата в сборе:
alt

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

Калибровка декодера:

При изготовлении данного устройства я заметил такую особенность, что приемник выдает импульс на несколько микросекунд длинее, чем то, что поступает на вход передатчика. Для исправления данной ситуации в декодере программно добавлен сдвиг длины сигнала на это значение (около 55 мкс). Однако, как оказалось, эта величина может варьироваться на разных передатчиках и при повторении устройства это вызывает проблемы, т.к. для работы декодера нужна точность порядка 6 мкс. При работе с неправильным значением смещения некоторые переключатели начинают влиять сразу на несколько каналов, некоторые не работают, а некоторые каналы могут дергаться сами по себе. Если у вас при повторении устройства наблюдаются похожие эффекты - калибровка специально для вас :) Принцип в следующем: при замыкании вывода PD6 на землю декодер записывает текущее значение входного сигнала в EEPROM и далее использует его в качесстве эталонного. Порядок калибровки следующий:

1) прошиться прошивкой decoder_calibrated.hex (лежит в архиве)
2) подключить декодер к приемнику, включить передатчик и приемник
3) (ВАЖНО!) на пульте перевести все (имеется в виду все, которые подключены к кодеру) тумблеры и кнопки в положение ВЫКЛ (разомкнутое)
4) взять кусочек провода и на плате декодера коснуться одновременно GND и ножки PD6 контроллера (она в противоположном углу от точки на микросхеме)

После этого устройство должно заработать как положено.

Ниже видео работы:




В архиве прошивки для МК с исходниками, схемы .gif и печатные платы .lay и .png


Естественно, у обоих МК фьюзы надо настроить на работу от кварца.
Если кто надумает повторить устройство и будут вопросы - обращайтесь :)

 





Последние сообщения форумаПоследние созданные темы
1) Полетник Matek MATEKSYS F405-SE не выдает сигнал на Vbat
2) Чертежи плосколетов
3) Акб для Pilotage Junior Fighter
4) DroneDrive - ModelDrive
5) Гироскопический момент
6) Стабильность полета крыла без вертикальных стабилизаторов
7) Подскажите, подойдет ли пульт от коптера для самолета?
8) Чертежи скоростных авиамоделей
9) Крыло без элеронов, но с 2Д поворотом мотора
10) Чертежи планеров и мотопланеров
1) Полетник Matek MATEKSYS F405-SE не выдает сигнал на Vbat
2) Акб для Pilotage Junior Fighter
3) Подскажите, подойдет ли пульт от коптера для самолета?
4) Чертежи скоростных авиамоделей - радиоуправляемые самолеты для скоростных полетов
5) Гироскопический момент
6) Стабильность полета крыла без вертикальных стабилизаторов - а так можно?
7) Здравствуйте, вопрос про настройку пульта.
8) DroneDrive - ModelDrive - Техническая секция для детей (авто/авиа/дроны)
9) Крыло без элеронов, но с 2Д поворотом мотора - Хочу сделать такое, и хотел бы почитать кто уже такое делал
10) Требуются программисты и мастера. - Поиск умельцев.