Самоделки на микроконтроллерах

авторский проект Александра Писанца

+38 097 8875581
 Skype: alex
Е-mail: im48@yandex.ru

×

Внимание

There was a problem rendering your image gallery. Please make sure that the folder you are using in the Simple Image Gallery Pro plugin tags exists and contains valid image files. The plugin could not locate the folder: media/k2/galleries/16

Arduino модуль - беспроводной модуль JDY-40

Оцените материал
(3 голосов)

Cейчас я увлекаюсь разработкой различных радиомоделей, в том числе и детских. И когда искал детали на Aliexpress для очередного беспроводного устройства, сразу решил для себя, что выбирать буду по принципу «чем дешевле, тем лучше», потому что управление для модели должна быть недорогим.

Мое внимание привлек arduino модуль, а именно китайский беспроводной маломощный трансивер JDY40, работающий на частоте 2,4 Гигагерца.

arduino модули

Его преимуществом были невысокая цена и возможности, которыми обладают более дорогостоящие модули. Мне стало интересно, как он будет работать на практике и насколько его реальные возможности соответствуют заявленным.

И оказалось, что это устройство отлично подходит не только для разработки радиопульта, но и для элементов управления «умного дома».

                                      

В сопутствующей документации приведены различные схемы подключения модуля к микроконтроллеру, в зависимости от выбранного режима. Сразу уточню, что общение с модулем производится через USART, соответственно, на модуле расположены два вывода – RX и TX. Для настройки модуля используются AT-команды. Чтобы модуль воспринимал AT- команды, на вход SET подается низкий уровень. В противном случае АТ-команды воспринимаются как передача данных и, естественно, никак не выполняются. Полный перечень АТ-команд расписан подробно в даташите к модулю.

        модули из Китая

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

Режимы работы модуля

Модуль может работать в трех режимах:

1. Режим последовательного порта.

радиомодули для Arduino

С его помощью, например, можно дистанционно передавать данные с микроконтроллера, установленного в теплице, на домашний компьютер.

Одним словом, модуль, работающий в таком режиме, дает возможность обмениваться данными между микроконтроллерами беспроводным способом, используя usart. Согласно прилагающейся документации, расстояние между устройствами по прямой видимости должно быть не более 120 метров. Я проверил, действительно, модуль работает на таком расстоянии.

Максимальная скорость передачи данных, на которую рассчитан модуль, составляет 19 200 бит в секунду. Я испытывал устройство при скорости 9 600 бит в секунду на расстоянии по прямой видимости около 100 метров.

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

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

2. Режим джойстика или радиопульта.

модули для arduino

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

модули для arduino

Соответственно, используя два модуля, можно собрать радиопульт для моделей. Нажал кнопку – машинка поехала, отпустил – остановилась. Поведение выводов можно заранее прописать.

Чтобы перевести первый модуль в режим пульта, выберите режим работы С0 ( AT+CLSSC0 ). При этом порт модуля автоматически перенастраивается на вход, и тогда ко всем восьми входам модуля можно подключить тактовые кнопки.

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

Исполняющее устройство может работать в четырех режимах:

AT+CLSSC2, AT+CLSSC3, AT+CLSSC4, AT+CLSSC5

Режим C1. При нажатии на любую из тактовых кнопок на пульте, на приемном модуле кратковременно формируется положительней уровень.

В режиме С3 изначально присутствует высокий уровень на выходах приемника. При нажатии тактовой кнопки на выходе приемного модуля кратковременно формируется низкий уровень.

При режиме С4 на выходе приемного модуля формируется высокий уровень и остается в таком состоянии, пока на пульте будет оставаться нажатой тактовая кнопка. Соответственно, если кнопку не нажимали, на выходе присутствует низкий уровень.

Логика работы режима С5 позволяет выходы переключить в тригерный режим (состояние выхода приемного устройства будет изменяться на противоположное каждый раз при нажатии на тактовую кнопку). При отключении питания от пульта приемный модуль продолжает сохранять на выходе текущее состояние.

Выбрав один из этих режимов, мы определяем логику работы порта на приемном модуле, который реагирует на нажатие тактовых кнопок.

3. Режим взаимодействия с мобильным телефоном. В этом режиме доступно управление через мобильный телефон по Bluetooth. Но для этого понадобится еще один Bluetooth –модуль JDY-16.

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

Прочитано 869 раз

Галерея изображений

{gallery}16{/gallery}

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


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