Муфты электромонтажные от производителя Fucon
РадиоЛоцман - Все об электронике

Тысяча первый способ управления радиорозетками

Мастер Кит MP1516

Михаил Сергеев

Заинтересовал меня DIY-гаджет под названием RF-TOY, купить который можно здесь, у автора этого открытого проекта или на Родине под названием MP1516 RFToy — Универсальный Ардуино совместимый радиомодуль.

Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Тысяча первый способ управления радиорозетками

Фактически это специализированная плата Ардуино на ATmega 328P, 8 МГц, заточенная под эксперименты с передачей данных по радиоканалу – либо бюджетному 433 МГц, либо «продвинутому» 2.4 ГГц. Подкупило наличие небольшого, но графического экрана и возможность визуализировать процессы. Изучение начал с простого — управления радиорозетками.

Сам модуль размером со спичечный коробок, в комплекте дополнительно приемник и передатчик на 433 МГц с амплитудной модуляцией (ASK), литиевая батарейка.

Тысяча первый способ управления радиорозетками

Чтобы заработал приемник 433 необходимо питание 5 В от USB. Также есть разъем для установки радиомодуля nRF24L01 (приобретается отдельно) и ряд свободных и служебных ног микроконтроллера, выведенных на край платы. Назначение на рисунке.

Тысяча первый способ управления радиорозетками

Подробнее можно посмотреть на указанных сайтах. Там же есть и хороший ролик. На английском, но, в принципе, все понятно. Подключается IDE Arduino без особенностей, через USB; микросхема USB-адаптера – CH340. Плата прошивается как «Arduino Mini w/ ATmega328», 8 МГц, а библиотеки и примеры скачиваются с GitHub и устанавливаются стандартно.

Я установил пример с названием: RFToy_RFRecorder. Это скетч, который позволяет запомнить до 7 комбинаций команд пульта Включить и Выключить, то есть можно перехватить управление семью радиорозетками или радиопатронами для лампочек.

После включения первый экран выглядит так:

Тысяча первый способ управления радиорозетками

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

Различается длина нажатия на кнопки. Клик и удержание (длинное нажатие).

Я кликнул «ОК» и попал в рабочее меню, где с помощью длинных нажатий на кнопки S1 или S2 можно записать коды кнопок включения и выключения. А короткими кликами потом можно управлять. На экране также есть подсказка. Зажимаю S3 и попадаю в режим записи кнопки включения.

Тысяча первый способ управления радиорозетками

Записываю код кнопки, подношу брелок (пульт тоже есть в моем комплекте), нажимаю…

Тысяча первый способ управления радиорозетками

Код считался и на экране выглядит вот так:

Тысяча первый способ управления радиорозетками

Теперь запишем код кнопки выключения и нажимаем левую кнопку платы.

Тысяча первый способ управления радиорозетками

Код выключения пишется «поверх» кода включения, и суммарная командная строка становится такой:

Тысяча первый способ управления радиорозетками

Остается теперь короткими нажатиями на кнопки включать и выключать радиорозетку с модуля RFToy.

Тысяча первый способ управления радиорозетками

Да, проверяю — работает!

Далее можно заполнить все ячейки памяти модуля. Нажимаем «ОК» выбираем свободную ячейку и повторяем запись.

Тысяча первый способ управления радиорозетками

Ниже видно, как заполняются ячейки. Вторая строка относится к соседней кнопке пульта.

Тысяча первый способ управления радиорозетками

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

Интересно, на строках 3 и 4 команды включения и выключения записаны по отдельности. Явно в конце строки у нас пишется адрес устройства, а код кнопки пишется то в первые шесть знакомест, то во вторые.

Посмотрим, что интересного есть в скетче.

#include SPI.h
#include RCSwitch.h
#include «U8glib.h»
#include avr/eeprom.h

Видим, что используются популярные библиотеки для вывода на экран, управления передачей данных RCSwitch и записи в EEPROM. Действительно, после выключения питания считанные данные не теряются.

// определяем используемый дисплей. Разрешение 128х64 точки
U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE);

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

В постоянном цикле крутится только отслеживание нажатия кнопок управления.

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

  1. Выбираем свободный вывод микроконтроллера, программно подтягиваем его к 1, а выключателем коммутируем вход на общий провод (подаем логический 0) для состояния Включено и размыкаем (возвращаем логическую единицу) для состояния Выключено.
     
  2. Далее нужно определить номер строки (1-7) с необходимым кодом и записать его в переменную… Хотя не думаю, что это всем интересно, если возникнут конкретные вопросы — обратитесь, пожалуйста, в службу техподдержки Мастер Кит со ссылкой на эту статью. Вместе разберемся.

Успехов!

Мастер Кит

8 предложений от 8 поставщиков
Мостовые выпрямители 15A 100V
KIT MP1516
Мастер Кит
1 316 ₽
LifeElectronics
Россия
MP1516DJLFZ
Rectron Semiconductor
по запросу
ТаймЧипс
Россия
MP1516DJ-LF-Z
Rectron Semiconductor
по запросу
MP1516
Rectron Semiconductor
по запросу
Электронные компоненты. Бесплатная доставка по России
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя