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

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

YouTube канал

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

TOP статьи

Вход



Happy Cow 777 - 216 Mini RC Racing Submarine Boat Remote Control ToysDW Wing RQ7 RQ-7 Shadow 2000mm Wingspan Balsa Wood RC Airplane KITALZRC Devil 505 FAST RC Helicopter Standard ComboJumper T8SG Multi-Protocol 2.4G 10CH Compact Transmitter for Flysky Frsky DSM2 Walkera Devo FutabaP-51 650mm Wingspan EPO RC Airplane Warbird Funfighter Brushless Version PNP Zeta New Version FX-61 Phantom FPV Flying Wing EPO 1550mm Wingspan RC Airplane PNPEachine LCD5802S 5802 40CH Raceband 5.8G 7 Inch Diversity Receiver Monitor with Build-in BatteryBoscam FPV 5.8G Wireless Audio Video Receiving Module RX5808 for RC Drone FPV Racing

RC Магазины





Home Технологии Компьюторные USB адаптер сигнала PPМ на основе платы Arduino Pro Micro

2.4G Multiprotocol TX Module For RadioLink AT9 Transmitter 2.4G CC2500 A7105 Flysky Frsky Devo DSM2 Multiprotocol TX Module With AntennaSunnysky New V2216 KV650 KV800 KV900 Brushless Motor For RC ModelsDIY 5.8G 40CH FPV AV Receiver RX Module Auto Search with LED Display For FPV Monitor DisplayerEachine VR-007 Pro VR007 5.8G 40CH FPV Goggles 4.3 Inch With 3.7V 1600mAh Battery for RC DroneiRangeX iRX6 Multiprotocol TX Module for Flysky FS-i6 i6x Transmitter301 1/16 2.4G Electric Dual Motor RC Racing Boat Kids Children ToysGofly-RC Falcon CP90PRO 100mm Mini RC FPV Racing Drone F3 OSD 25mW 100mW 40CH VTX Runcam Nano 650TVL

USB адаптер сигнала PPМ на основе платы Arduino Pro Micro
Технологии моделизма - Компьтерные Технологии
Автор: Андрей   


  Недавно в продаже появились дешевые RC приемники, которые вместе со стандартными выходами сигналов сервоприводов, выдают так же композитный PPM сигнал. Для бортовой электроники это, в некотором смысле, революционное явление, потому что композитную PPM гребенку гораздо проще обрабатывать, чем 6-8 отдельных импульсных сигналов сервоприводов. Такой приемник может быть удобно подключен к периферийным устройствам с помощью только одного 3-х жильного кабеля и серво разъема, по которому так же передается напряжение питания.


 

   Поэтому, имея источник PPM сигнала я решил воплотить свою давнюю мечту - собрать беспроводный адаптер пульта управления моделью для подключения пульта к программе-симулятору полета на персональном компьютере. В качестве обработчика PPM сигнала была использована плата Arduino Pro Micro удобная своей дешивизной, миниатюрными размерами и наличием встроенного micro-USB разъема. Написать программу адаптеру так же не составило большой трудности - в сети легко найти скетч обработчика PPM сигналов для Arduino, а так же  библиотеку обслуживания USB джойстика.

Компоненты и материалы

- Приемник OrangeRx R615X DSM2/DSMX. Если пульт управления работает с приемниками другого типа, можно взять и любой подходящий приемник, выдающий PPM сигнал.
- Плата Arduino Pro Micro. Она обычно имеет цену в несколько долларов и продается во многих интернет магазинах.
- Кабель-удлинитель сервопривода с JR/Hitec разъемами.
- Конденсатор 50-150 nF
- Кусочек термо-усадочной трубки шириной 4 см.

Изготовление преобразователя

  RC приемник подключается с помощью JR/Hitec серво разъема непосредственно к выводам платы Arduino - отсюда так же берется напряжение 5V, достаточное для питания приемника. Для подключения приемника к Arduino используется кабель, сделанный из половины кабеля удлинителя сервопривода. Провода части кабеля с "мама" разъемом припаиваются непосредственно к выводам платы Arduino (чтобы избежать облома провода в месте пайки, перед впаиванием проденьте его через свободное отверстие на плате). Разъем надевается на PPM выход приемника, таким образом, с Arduino на приемник пойдет питание +5В, а обратно на Arduino пойдет PPM сигнал с приемника. Схема подключения:

  Как видно из схемы - кроме распайки кабеля, необходимо сделать еще одно действие - припаять конденсатор 0.05 - 0.15 мкФ между ножками RST и GND.
После монтажа и проверки на плату надевается кусочек термоусадочной трубки и осаждается феном.

Программирование


Здесь я не буду детально описывать особенности программирования платы Arduino Pro Micro. В сети есть большое количество ресурсов посвященных этой теме. Отмечу только самые важные моменты:

- Установить и сконфигурировать среду программирования Arduino. Если программа уже установлена, необходимо проверить ее версию - она должна быть не ниже 1.6.6 - встроенные библиотеки обслуживания USB соединения появились относительно недавно.
- Проверить, что драйверы платы Arduino Leonardo установлены и подключенная плата детектируется средой программирования. Если драйверы не установились автоматически - установить их вручную.
- Загрузить библиотеку Joystick ( Это ссылка на zip-архив. Его надо скачать, раззипировать, найти в архиве папку Joystick и положить ее в директорию библиотек среды Aduino  ... /Arduino/libraries/.)
- Загрузить скетч PPM_Joystick.( Это ссылке на страницу с текстом программы. Можно не скачивать программу специально, а создать новый пустой скетч и скопипастить в него текст программы.)
- Подсоединить библиотеку к скетчу выполнив команду Скетч->Подключить библиотеку->Joystick
- Подключить плату Arduino Pro Micro к USB разъему и откомпилировать и залить скетч в непосредственно в Arduino.

Подключение к компьютеру

Для подключения такого устройства к программе симулятора не отличается от подключения стандартных USB-PPM кабелей - не надо делать никаких дополнительных действий. При первом подключение устройства компьютер сам устанавливает все необходимые драйверы, что через некоторое время должно привести к появлению стандартного устройства джойстика в директории "Устройства и Принтеры" контрольной панели.

Тестирование адаптера

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

- Кликнуть по иконке джойстика правой кнопкой мыши.
- В появившемся меню выбрать "Параметры игровых устройств управления"
- В появившемся окошке выбрать строку Arduino Leonardo и нажать на кнопку "Свойства".

В результате этих действий появится окно состояния джойстика:



Маркер '+' и красные горизонтальные полоски соответствуют пропорциональным каналам джойстика. Они должны "шевелиться" при изменении положения рукояток подключенного пульта управления моделью.

Изготовления USB-PPM кабеля для передатчика

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

Кабельный вариант адаптера тоже работает без нареканий. Какой метод подсоединения пульта лучше - это я оставлю выбирать уже пользователям устройства. Беспроводное соединение очень удобно, но в конце концов я остановился на кабельном соединении - при подключенном кабеле тренерского разъема передатчик пульта не работает и не потребляет энергии батарейки - заряжать ее надо гораздо реже. То что я получил в результате обычный PPM-USB кабель меня не слишком расстроило -  теперь я понимаю, как он работает и могу, если надо, изменить его параметры.

ЧаВо

  Сколько каналов управления может поддерживать преобразователь?

Текущая программа поддерживает 6 канальный PPM, которые трансформируются в 6 пропорциональных каналов джойстика - (Z, X , Y, ZRot, XRot, Thr). Как я понял, общего стандарта соответствия каналов PPM нет и, вполне возможно, что для некоторых симуляторов нужно будет изменить программу и установить другое соответствие. Число поддерживаемых пропорциональных каналов может быть увеличено до 8, но в моей реализации в этом не было необходимости, так как используемый RC приемник выдавал 6-канальную PPM.

  Зачем припаивать конденсатор к RST платы Arduino?

Плата Arduino Pro Micro является ремейком платы Arduino Leonardo и использует ту же библиотеку, что и прототип. Но у есть некоторые конструкторские отличия - Aduino Pro Micro инициализируется гораздо быстрее, чем Arduino Leonardo. В результате, при подключение платы к компьютеру, она опрашивает USB интерфейс раньше, чем тот успевает инициализироваться и быть готовым поддерживать соединение. Конденсатор на ножке RST некоторое время (3-10 сек) после включения питания сохраняет низкий логический уровень и отодвигает время начала работы контроллера Arduino, тем самым давая возможность драйверу USB компьютера подготовить соединение.

  Почему именно Arduino Pro Micro? Можно ли использовать плату другого типа?

Можно, но надо понимать, что Arduio Pro Micro использует процессор ATmega32U4 с встроенной поддержкой USB соединения. Такой процессор установлен только на последних модификациях платы - Arduino Leonardo, Arduino Micro, Arduion Mega. Более старые варианты типа Arduino Uno построены на процессоре ATmega328p, который аппаратно не поддерживает USB соединения, поэтому с библиотекой Joystick они не будут работать. Кроме этого, плата Arduino Pro Micro является одной из самых маленьких и дешевых реализаций платформы Arduino. Другие платы на основе ATmega32U4 гораздо больше размером и стоят существенно дороже.

  Что делать если мой пульт имеет другой тип тренерского разъема?

Аудио-разъем используется в большинстве современных пультов управления, старые модели часто использовали 6-штырьковые PS/2 разъемы. Для подключения такого пульта возможно воспользоваться кабелем от старой "проводной" мыши или клавиатуры.

 





Добавить комментарий

Защитный код
Обновить

Последние сообщения форумаПоследние созданные темы
1) Eachine E013
2) Inav – это просто. Или автопилот с минимальным вложением средств.
3) Самодельный ЧПУ станок на Ардуино
4) Домашний 3D принтер
5) КиберРоссия
6) Скидки на RC товары
7) Отношения семейные...
8) Не модельное но прикольное
9) Надо больше золота!!! (с)
10) Не модельный юмор 2
1) Самодельный ЧПУ станок на Ардуино - + электроника
2) СЯокат
3) Радиоуправляемая машинка RGT EX86100 1/10 2.4G 4WD - Троффи модель на радиоуправлении
4) Продам квадрокоптер Tarantula X6.
5) Тинивуп коллекторный
6) Хочу собрать новый электролет! - Просьба о помощи!
7) Продам заготовку под квадрик на 10"
8) Продам тушку Bixler 2 - Тушка с сервами, регулем, двигателем, винтом и цангой.
9) Не работает один мотор на квадрокоптере после сборки - Не работает один мотор на квадрокоптере после сборки
10) ЧПУ пенорез своими руками - Вопросы-ответы-решения