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

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

YouTube канал

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

TOP статьи

Вход



ZOHD Nano Talon 860mm Wingspan AIO HD V-Tail EPP FPV RC Airplane Kit1/18 2.4Ghz High Speed RC Car Rock Crawler Racing Car RC Truck Off RoadRX-F82DA 8CH Receiver compatible Frsky X9D Plus DIT DFT X9E X12S Transmitter for RC FPV Racing DroneEachine TX01 NTSC Super Mini AIO 5.8G 40CH 25MW VTX 600TVL 1/4 Cmos FPV CameraQTmodle 8060 8x6 inch Efficient 3 Leaf Blade Propeller for RC Airplane2.4G Multiprotocol TX Module For RadioLink AT9 Transmitter DC Boost Converter 2A Power Supply Module 2V-24V To 5V-28V Adjustable Regulator BoardXFX 450 DFC 2.4G 6CH 3D Flybarless RC Helicopter Super Combo

RC Магазины





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

4WD 1/24 RC Remote Control Light Up Racing Car W/ 3D Flashing Lights Drive ToySkyzone THEER 860mm Wingspan EPP FPV Flying Wing RC Airplane KIT With LED Board2 Pieces APC Style 5050 5x5 DD Direct Drive Propeller Blade CW CCW For RC AirplaneTY Model NO.7 292mm Wingspan Wood Park Flyer RC Airplane KITEachine VR011 5 Inches 800x480 Diversity FPV Goggles 5.8G 40CH Raceband Without DVR for RC Drone QiJun 1812-1 2.4G 30KM/H High Speed Wireless Remote Control  Rc Boat With BatteryiRangeX IRX4 2.4G CC2500 NRF24L01 A7105 CYRF6936 4 IN 1 Multiprotocol STM32 TX Module With CaseAnniversary Special Edition Martian 215 215mm Carbon Fiber RC Drone FPV Racing Frame Kit 136g

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 разъемы. Для подключения такого пульта возможно воспользоваться кабелем от старой "проводной" мыши или клавиатуры.

 





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

Для вопросов используйте Авиамодельный форум!
Обсуждения, желательны, там же.


Внимание! Включена борьба со спамом!
Ссылки в комментарии ведут к отмене публикации комментария!

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