Как сделать пропорциональное управление радиоуправляемых моделей

Обновлено: 05.07.2024

В общем случае системы радиоуправления делятся на две группы по типу передаваемых команд: дискретное и пропорциональное. Дискретные системы предназначены для включения и выключения различных устройств (например, освещения). Органами управления в таких системах обычно служат всевозможные тумблеры и кнопки. На сегодняшний день их возможностей для управления моделью явно недостаточно. Потому они используются только в детских игрушках и как составная часть более сложных систем. Вторая группа систем предполагают возможность плавного изменения какого-либо параметра модели пропорционально отклонению управляющего органа от нулевого (базового) состояния. Например, можно задать любые обороты двигателя (от нуля до максимальных) передвигая стик газа из нижнего положения в верхнее.



Человек, при помощи органов управления (джойстики, кнопки, тумблеры и пр.), формирует команды управления. Эти команды в виде электрических сигналов поступают на вход шифратора. Дискретные команды обычно представляются логическими 0 и 1. Напряжение, близкое к напряжению питания, на соответствующем входе шифратора обозначается логической единицей, а близкое к нулю – логическим нулем соответственно. Для пропорциональных каналов обычно применяются аналоговые датчики. Так двухосевые джойстики управления чаще всего представляют собой пару переменных резисторов, каждый из которых отвечает за соответствующую ось и представляет отдельный канал управления. Резистор подключается к шифратору по схеме делителя напряжения. При этом изменение положения джойстика вдоль некоторой оси приводит к пропорциональному изменению уровня напряжения в канале управления.

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



Полученные таким образом точки кодируются при помощи широтно-импульсной модуляции (ШИМ, PWM в английском переводе). Т.е. уровень в каждый момент времени преобразуется в ширину импульса. Так в общем случае нулевой уровень соответствует ширине импульса в 1000мкс, а максимальный – 2000мкс.

Преобразовав так все каналы, шифратор уплотняет их в один канал. Импульсы каждого канала выстраиваются друг за другом в порядке следования каналов. За импульсом последнего канала идет синхропауза, обозначающая конец пакета и начало следующего. Такой способ кодирования называется PPM и является стандартным для большинства выпускаемых сегодня аппаратур. При длине пакета в 20мс он позволяет передать 8 каналов. Частота дискретизации при этом будет равна 50Гц, т.е. информация о каждом канале будет передана 50 раз в секунду.

Далее PPM-сигнал поступает на вход ВЧ-модуля. Главной задачей последнего является передача сигнала на приемник. Его основными характеристиками является несущая частота и выходная мощность. Обе эти характеристики напрямую влияют на дальность действия аппаратуры. Повышение несущей частоты позволяет модулю передавать больше информации за промежуток времени, что дает возможность использовать различные алгоритмы помехозащищенности и увеличивать максимально возможное число каналов аппаратуры. На сегодня самыми многообещающими являются модули с частотой 2.4гГц. Использование столь высокой частоты позволило передавать с пакетом идентификационный код. Это в свою очередь дало возможность снять ограничения на использование нескольких аппаратур одновременно разными моделистами в одном месте. Для соединения передатчика и приемника производится операция привязки (binding). В рамках этой операции идентификационный код передатчика запоминается приемником. После этого приемник принимает только пакеты, подписанные этим кодом. Таким образом исключается сама возможность взаимного влияния двух аппаратур, работающих в одном диапазоне частот.

Так же были разработаны различные системы кодирования PCM – pulse code modulation. Но это уже тема отдельной статьи. Очень хорошо все плюсы и минусы PCM рассмотрены в этой статье.

Но у повышения несущей частоты есть и свои минусы. И заключаются они в основном в свойствах волны. Дело в том, что чем выше частота, тем хуже она преодолевает препятствия. Поэтому для дальнобойных систем(LRS – long range system) чаще всего используются вч-модули с несущей частотой 433 и 868 мГц.

На стороне модели сигнал аппаратуры принимается вч-модулем, превращается обратно в PPM и передается дешифратору. Дешифратор разделяет суммарный сигнал на канальные ШИМ-сигналы. Именно эти сигналы передаются на исполнительные устройства, где они преобразуются в механическое действие. Принимающий вч-модуль и дешифратор обычно выполняются в виде одного неделимого модуля приемника. Делается это с целью уменьшения размера и веса аппаратуры на стороне модели.

С той же целью различные настройки модели, микширование и прочие функции выполняются на стороне передатчика в пульте управления. Но с развитием микроконтроллеров это становится все менее актуально.

Дальнейшим развитием аппаратуры управления стало использование двунаправленных вч-модулей (трансиверов) и передача со стороны модели на аппаратуру управления информации о состоянии элементов, текущих характеристиках, географическом положении и пр. – телеметрии.



Фактически в системе появляется дублирующий набор таких же блоков с той разницей, что находятся они на противоположной стороне. Роль органов управления на стороне модели выполняют различные датчики – напряжения, гироскоп, барометр, компас, ускорения, оборотов двигателя и пр. На стороне аппаратуры управления роль исполнительного устройства обычно выполняет дисплей, который отображает показания датчиков модели.

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

Радиолюбитель

– аналоговые схемы радиоуправления;
– разработки на микросхемах;
– схемы радиоуправления на микроконтроллерах;
– готовые модули приемник – передатчик;
– самодельные модули приемник – передатчик;
– применяемые антенны;
– вопросы настройки самодельных модулей
– и многое другое, что связано с радиоуправлением.

Подборка статей Владимира Днищенко для конструкторов аппаратуры радиоуправления:

Книга Владимира Днищенко для конструкторов аппаратуры радиоуправления:

Благодаря очень дешёвому китайскому радиомодулю JDY-40 c Алиэкспресс который работает на частоте 2,4 ГГц сейчас можно сделать радиоуправление для различных поделок и при этом можно даже обойтись без микроконтроллера. Электронный модуль JDY-40 позиционируется для работы совместно с Arduino или микроконтроллерами но он может работать и без них, как автономное устройство, причём один модуль можно установить в роли передатчика, а второй как приёмник делая таким образом из них радиоуправление до 8 независимых каналов но в связке с Ардуино или микроконтроллером у него конечно становится больше возможностей но в данной статье мы обойдёмся без них.

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Модуль JDY-40 очень компактный и можно его запитать от любого литий-ионного аккумулятора на 3,7 В, что позволяет встроить его в любые модели. Радиус действия радиомодуля до 120 метров в прямой видимости, что для большинства устройств вполне достаточно, если нужна большая дальность то можно подпаять наружную антенну, например от Wi-Fi роутера.

Для обмена данными с микроконтоллером или Ардуино у модуля JDY-40 осуществляется по USART интерфейсу с максимальной скоростью 19200 бит. Для подключения периферии к модулю доступно 8 портов ввода-вывода. Этот порт модуля можно использовать на прямую в качестве пульта на 8 команд.

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Ниже приводу простейшую схему подключения модуля JDY-40 совместно с Н-мостом для двигателей в роли модуля L9110S и управления или 2-мя кнопками по радиоканалу.

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Надо помнить при подключении вывода CS радио модуля на плюс, то есть положительного потенциала он уходит в спящий режим, если негативный (минус питания) то модуль выходит из спящего режима. Если модуль используется в роли джойстика то этот вывод не используется.

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Также радио модуль JDY-40 прежде чем использовать в качестве ДУ следует настроить подключив каждый их них по очереди к компьютеру и настроив передавая AT команды по USART интерфейсу. Чтобы модуль принимал AT команды на вход SET модуля надо подать низкий уровень, в противном случае эти команды воспринимаются просто как данные и никак не выполняются. Перечень всех AT команд приведён в даташите к модулю.

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Подключить модуль к компьютеру можно через USB–UART TTL RS232 конвертер и воспользоваться любой терминальной программой на компьютере. Например в программной среде Arduino имеется встроенный терминал им и воспользуюсь. Для этого сначала выберем виртуальный COM порт к которому у Вас будет определено подключение модуля.

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Изначально модуль поставляется с заводскими настройками, они приведены в этой таблице:

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

В ней как мы видим скорость передачи данными по умолчанию выставлено 9600 бод. Также здесь приводятся ID модуля и сети, канал приёма и передачи данных, здесь может быть максимальное значение – 127. Далее идёт выбор мощности передатчика, здесь можно понизить её, если нужно уменьшить влияние от других модулей которые работают неподалёку допустим если каждый модуль трудится в каждой из комнат квартиры на одном канале и можно с помощью одного пульта управлять разными модулями по всех квартире переходя из комнаты в комнату.

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

— Режим А0 переводит модуль в последовательный режим работы, этот пункт относится для обмена данных с микроконтроллером.

Остальные режимы относятся к работы модуля в качестве пульта управления:

— В режиме С0 модуль переходит в режим пульта управления, он выступает как передатчик, при этом режиме порт модуля ввода-вывода переводится только на ввод, в таком режиме на все 8 портов можно навесить кнопки. В данной схеме в качестве демонстрации я подключил 3 кнопки.

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Другой модуль нужно перевести в режим исполняющего устройства, то есть в роли приёмника, это могут быть режимы: С2, С3, С4, С5. Они отличаются друг от друга по типу срабатывания. Причём приёмный модуль здесь может быть не один, а сразу несколько и все они будут выполнять команды одновременно. Выводы портов при этом у передатчика и приёмников должны совпадать. Итак, разберёмся что же означают данные режимы С2, С3, С4, С5.

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

В режиме С2 при нажатии на пульте кнопки на порте приёмника, что соответствует такому же порту на передатчике с нажатой кнопкой формируется кратковременный импульс и светодиод вспыхивает и тут же гаснет, не смотря на то что кнопка ещё не отпущена.

Режим С3 точно такой же по логике как и С2 с отличием лишь в том, что на выводах порта изначально присутствует положительный потенциал и все светодиоды светятся изначально, при нажатии кнопки светодиод на таком же порту гаснет на несколько миллисекунд и снова засвечивается.

В режиме С4 при нажатии на кнопку передающего модуля на приёмном модуле на таком же порте появляется положительный потенциал и зажигается светодиод и он горит до тех пор, пока нажата кнопка, при отпускании светодиод гаснет.

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

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

В режиме С5 все выхода приёмника переходят в качестве триггеров, то есть, при нажатии кнопки на передатчике, в приёмнике на этом выходе появится положительный потенциал и он будет в таком состоянии даже при отжатии кнопки, чтобы выход приёмника перешёл опять в отрицательный потенциал и светодиод погас то нужно снова нажать на ту же кнопку.

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Делаем радиоуправление на радиомодуле JDY-40 без микроконтроллера

Вот мы и познакомились с радиомодулем JDY-40 и его возможностях в качестве простого ДУ для управления моделями по радиоканалу. Всё достаточно просто и имея эти крохотные модули можно оживлять любые игрушки и любых размеров добавляя им радиоуправление.

Долгое время не мог себя заставить заняться вновь, любимым раннее в детстве делом, электроникой и конструированием моделей. Всё можно купить готовое и оно дешёвым будет и заведомо лучше, чем ты сможешь сделать сам, не имея кучи соответствующего оборудования.


В общем в очередной раз достал коробочки с деталями. Последние несколько лет заказывал с Китая разное, кое-что разбирал из хлама. Есть несколько игрушек старых неисправных и несколько совсем новых.

Вот модель Фольксвагена Гольф 1/12 на радиоуправлении. Все колёса подпружинены, есть дифференциал на заднем мосту. Но радиоуправление простейшее не пропорциональное, в итоге в квартире на ней не поездишь, расколотить можно влёт.

Есть задача, переделать управление на пропорциональное. Пусть будет для начала неказистая коробочка управления, главное пока сам процесс Для этого нужны кодер и декодер PPM, на микроконтроллере. Вместе с регулятором хода и прочими необходимыми функциями.

Проблема обоих публикаций, программа для прошивки делалась на Асме и я так и не нашёл исходников. Если бы я делал какой-то узел автоматики и была бы проверенная, отлаженная схема с прошивкой, то понятно можно было бы просто повторить её. Но во-первых, для хобби что-то делать, не добавив кое-что от себя не правильно как-то. Во-вторых отсутствие понятного исходника убивает весь интерес, как обезьяна копируешь, не понимая до конца что и как работает. Не обижайтесь, пожалуйста те, кто примет последнюю фразу близко к сердцу.

Таким образом хочу написать новую программу на Си (поучившись это делать заодно) вместе с вами.

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

Соответственно в развитии проекта сделать некоторый набор кодеров/декодеров для разных возможных применений.

Читайте также: