1шт icstation icse013a Micro USB 5V 2-канальный контроль USB модуль реле

Цена: $2,25

Всем привет!
На картинке слева — весьма полезная для некоторых целей штука — USB реле.
Как и следует из названия, этим реле можно управлять (включать и выключать) какими-либо внешними устройствами.
В наших магазинах цены начинаются от 1000р, эта же была куплена за копейки на аукционе Ebay.
Как можно это реле использовать и для чего, прочтём под катом
Итак, после не вполне удачной покупки IP модуля для камеры видеонаблюдения, который периодически намертво зависает в жару, потребовалось как-нибудь решить эту проблему. Используемый мной для видеонаблюдения софт Axxon Next даже в бесплатной версии имеет достаточно мощный функционал. В том числе — возможность запуска внешней программы по событию. В моем случае, событием является то самое зависание, при котором поток от камеры пропадает. Ну а запуск некой программы должен временно выключить питание убогой камеры. Поиск исполнительного устройства вывел меня на упомянутый аукцион, где моя ставка сработала и это реле обошлось мне примерно вдвое дешевле.
По ссылке «Перейти в магазин» приведён выигравший аукцион. Продавец, как я понял, является представителем магазина (производителя) и само реле доступно к покупке и через их сайт.

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

Пакет с покупкой был отправлен на следующий же день и пришел менее чем через две недели.
Продавец упаковал посылку на совесть — в пупырчатый изнутри «мелкий пакет» было вложено реле в запаянном антистатическом пакете — заводской упаковке, которая была обернута плотным вспененным полиэтиленом.


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


Это всем хорошо известная по USB-COM переходникам Prolific PL-2303HX (мануал, драйвера)
И микроконтроллер STM8S003F3P6 (мануал)

Далее все просто. Установили драйвера, если их ещё нет в системе и пробуем.

Вариант 1: Управление реле при помощи утилиты производителя.
Скачиваем утилиту (со странички производителя) В архиве будет документация к утилите и, собственно, сама незатейливая программка с интуитивно понятным интерфейсом, рассчитанная на все выпускаемое семейство реле — 2-х, 4-х, и 8-и портовые.
После выбора нужного порта с подключенным реле можно понажимать на экране виртуальные кнопочки реле, что будет сопровождаться его щелчком и окрашиванием соответствующим цветом статуса реле.


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


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

Вариант 2: Управление реле через виртуальный Com-порт
Установив драйвера, у вас в системе появится новый Сом-порт

А вот им уже можно управлять откуда угодно. Причем нет необходимости писать программу на каком-нибудь языке программирования. Достаточно и штатного для Windows CMD.EXE

Как можно прочесть из описания реле на сайте производителя, для реле необходимо подать в порт байт 0x51h. C этого момента микроконтроллер будет считать все поступившие в порт байты, адресованные ему для управления реле. Для нашего двухканального реле в байте отведены биты 0 и 1. Для первого и второго реле. Записью в бит значения 1 реле включается, записью 0 — выключается.
Таким образом, нам почти что все равно что будет в старших битах. Почти, потому что, например, 0x51h используется для обращения к реле, 0x50h — для обращения к каскаду доп. реле, которые можно припаять к выведенному на плате отдельно Com-порту. 0xABh — 0xADh также используются для каскадного подключения нескольких модулей, но я это не тестировал и рассматривать далее не стану.
Контрольному коду 0x51h соответствует символ Q, а символы 1,2,3,4 (отбросив неиспользуемые старшие биты) годятся для управления реле.

Значит, тогда:
4 = 0x34h = xxxx xx00 — выключить оба реле
3 = 0x33h = xxxx xx11 — включить оба реле
2 = 0x32h = xxxx xx10 — включить реле №2 (и выключить №1)
1 = 0x31h = xxxx xx01 — включить реле №1 (и выключить №2)

Сразу скажу о непродуманности модуля — однажды отправив в порт значение контрольного кода 0x51h, модуль считает все остальные байты, отправляемые в порт, управляющими и при следующем запуске вашей программы код 0x51h будет воспринят как команда управления реле, будет разобран на биты и включит 1-е реле (0x51h = xxxx xx01). Считывания из порта также не предусмотрено. Таким образом, выходом может быть запись 0x51h в порт при старте ПК, а в дальнейшем — только отправка кодов управления. Я лично считаю этот вариант ненадежным.
Можно использовать второе реле для размыкания цепи питания модуля, чтобы сбросить его после каждого цикла выполнения команд, но это какое-то извращение.

Однако, я обещал управление через CMD.EXE
Жмем Пуск, набираем cmd и жмем Enter. Открылось новое окно.


Вводим <nul (set/p a=Q3)>com2 и жмем Enter (вместо com2 вписываете номер порта в вашей системе).
Можно было бы организовать вывод в порт через команду Echo, но она неизбежно добавит перевод строки, который нам не нужен.
Здесь у нас Q — это контрольный код 0x51h, 3 -xxxx xx11 — включить оба реле, как я писал чуть выше.

Можно сделать т.н. пакетный файл, разместив в нем необходимую вам последовательность.
Например, создайте в блокноте файл test.bat
Скопируйте в него

REM Инициализируем порт
@mode com2 baud=9600 parity=n data=8 stop=1 dtr=off rts=off xon=off to=on odsr=off octs=off idsr=off

REM Обращаемся к контроллеру - все следующие байты будут управлять реле
<nul (set/p a=Q)>com2

REM Включаем оба реле xxxx xx11
<nul (set/p a=3)>com2  

REM Пауза 5 секунд
@timeout 5

REM Выключаем оба реле xxxx xx00
<nul (set/p a=4)>com2

@timeout 5

REM Включаем реле №1 xxxx xx01
<nul (set/p a=1)>com2

@timeout 5

REM Включаем реле №2 xxxx xx10
<nul (set/p a=2)>com2

REM Выход с errorlevel 0
exit 0

и сохраните на жестком диске (см. описание).
Вот его и можно указывать вашим программам, почтовым скриптам и проч.

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

При желании, вероятно можно и переписать программу микроконтроллера (ссылка на SDK естьв конце мануала) и значительно расширить функционал устройства.

Нагрузку можно подключать к имеющимся на плате модуля реле зеленым (в моем случае — синим) клеммам «под винт», в разрыв цепи. Реле впаяно обычное — рассчитано на 220 вольт и 10 ампер (~2кВт — примерно один эл.чайник). Имеется нормально замкнутый и нормально разомкнутый контакты — замкнутый или разомкнутый при отсутствии питания реле в модуле.

Минусы — нет программного сброса устройства. Нет возможности считывать текущее состояние реле.

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

13 комментариев

AlekseyA
Купил такой же модуль, только не 2 релейный, а 4 релейный. При подключении USB-кабеля — все реле включаются. Подобру должно быть следующее: при подключении кабеля USB — реле не включаются. Обращение к производителю результатов не дало. Сказали, что пересмотрят прошивку и вышлют другой, но уже 2 мес. на повторные обращения не отвечают.
S_N
Нет, не включаются. Ну оно и логично — не включаться при подаче питания.
К тому же там и нормально замкнутые и нормально разомкнутые контакты.
А у вас по USB вообще управляется?
AlekseyA
Да, управляется. Подключаю кабель — релюшки включаются, запускаю программку, открываю порт, нижимаю кнопки — релюшки выключаются, после этого работает нормально. Только при нажатии кнопок включения — релюшки выключаются. При нажатии кнопок выключения — релюшки включаются. Такой модуль мне не подходит, т.к. я его планировал на удаленное включение, выключение газового котла отопления на даче. Если ставить этот модуль, то когда комп. включается, то и котёл включается, что не есть хорошо. Производитель модуля точно такой же как у Вас, а прошивки получаются разные. Покупал на алиэкспресс. Если у Вас работает, как полагается, то теперь думаю купить этого же производителя, только с двумя релюшками. Может придёт без этих глюков.
S_N
Не, ну дергать реле при подаче питания ненормально. Тем более, у него есть как нормально замкнутый, так и нормально разомкнутые контакты. Глюк какой-то.

Лучше тогда уж спросить перед покупкой.
www.icstation.com/icstation-micro-control-channel-relay-module-p-4012.html
Lekha05
Добрый день!
Собираюсь заказать четырехканальное реле. Наткнулся на Али похожий отзыв:

«Пришел бракованным, прошивка в STM8 кривая залита, команды отрабатывает инверсно, при подаче питания или подключения по юсб все реле включаются, после видео доказательств и скриншотов продавец вернул деньги, за это ему ставлю 4 звезды.»

Или это Ваш отзыв? Производитель ответил Вам?
S_N
А вам тоже такой пришел? Это мне повезло что-ли, получается? Или мне пришла обновленная версия как раз.
У меня сейчас нет времени изучать этот микроконтроллер. Если с него можно слить прошивку — скажите как, я сделаю.
Lekha05
Может быть, не весь комментарий высветился. Я скопировал коммент на Али под таким же 4-канальным реле и задал вопрос AlekseyA — его ли это комментарий, его ли это случай. Если нет — то стоит задуматься, брать или нет его…
AlekseyA
Брать модуль с 4 реле не рекомендую. Надо подождать, когда производитель начнёт нормальные прошивки на них ставить.
AlekseyA
Именно это модуль я купил (www.icstation.com/icstation-micro-control-channel-relay-module-p-4012.html). По указанному на сайте www.icstation.com адресу эл. почты написал претензию, они мне ответили следующее:
Dear Aleksey,
Thank you for your email!
We should upload the revised firmware to the chip and the manufacturer should produce the updated module for this issue.
We had reported this issue to our manufacturer and hope that they could revise it for next new batch.
We'll email you when we get the updated module.
Thanks and have a nice day!
Best regards,
Wanita
Это было 5 декабря 2015 г. После этого, на повторные обращения не отвечали.

У меня на даче уже больше 7 лет работает система видеонаблюдени c ip камерами (6 шт.). Все это время использую программу WebCam Looker 6.2. Программа в целом устраивает, но не поддерживает камеры формата H.264. Раньше когда настраивал систему видеонаблюдения определялся с выбором программы, изучал используемый Вами софт Axxon Next, знаю, что он поддерживает такой формат. Но он тогда был и сейчас платный. У Вас прозвучало в статье бесплатный, можно поподробнее и ссылку? Если у Вас ознакомительная версия, то, согласно описанию на офф. сайте:
-работает с 8:00 до 18:00
-1 месяц работы после первой установки
-любое количество камер, серверов и удаленных рабочих мест (УРМ)
-без ограничения размера архивов.
Это не совсем устраивает, т.к. у меня система работает круглосуточно.
S_N
Axxon рекомендую версии до 4.хх — «четверка» глючная, грузит проц. и вообще толком ничего не заработало у меня с первой попытки.
Попробуйте 3.6.4, она последняя из рабочих — www.itv.ru/support/downloads/axxonnext.php
Есть бесплатный режим — все открыто, кроме интеллектуального поиска, но имеется ограничение на архив 1ТБ максимум. Мне подходит.
И да, есть упомянутый режим полной дневной функциональности. Нужная бесплатная лицензия выбирается после установки перед первым запуском.
По поводу реле нечего сказать… странные они, разные модули с разной прошивкой выпускают зачем-то. Ну или разводка на реле разная получается…
AlekseyA
Lekha05 отзыв на Али экспресс не оставлял, но полностью его поддерживаю. Там видимо все 4 релейные модули продают с такой глючной прошивкой. Заказал себе 2 релейные модуль, на ебее, как у автора статьи. Жду посылку. Как получу, отпишусь.
EVG
День добрый. А не могли бы Вы помочь?

Пытался использовать Ваш BAT файл, но он не работает. При запуске первой строки идет ответ — состояние порта номер 10 — такое то. Все остальные строки как в пустоту — реле не реагирует. В чем могу ошибаться? знаний на этом уровне, увы сильно не хватает…
bulca
Сначала инициализируем порт, потом посылаете P (что пропущено у автора), потом Q, потом 1 или 2 или 3 или 4 (или 0)
В моем случае чип ревизии А, а не Д, т.е. паленый(посмотреть можно прямо на микросхеме, какая буква там стоит), поэтому драйвер на 10ку не ставится и я работаю на семерке или w2008. Соответственно для своего случая и пишу. Ваша ошибка похоже свидетельствует о том что, у вас драйвер не установился по той или иной причине…

Оставить комментарий