Примеры применения
13.09.2013

Пример использования устройства NetPing 2/PWR-220 v3/ETH

Пример использования устройства NetPing 2PWR-220 v3ETH

Два года назад я приобрёл на дачу NetPing 2/PWR-220 v3/ETH – устройство удалённого управления розетками питания 220 В по сети Ethernet. Устройство понравилось простотой настройки и многофункциональностью. Этакий на все руки мастер (картинка для привлечения внимания).Итак, встречайте. Герой сегодняшнего обзора NetPing 2/PWR-220 v3/ETH:

NetPing 2PWR-220 v3ETH

  • 2 независимые управляемые электрические розетки 220 вольт;
  • Суммарная мощность нагрузки до 1000 ватт с произвольным распределением мощности нагрузки по двум каналам;
  • Управление через собственный web-интерфейс и по протоколу SNMP;
  • Функция «сторожевого таймера» (watchdog), позволяющая автоматически производить перезагрузку подключённого оборудования по питанию в случае его «зависания» или по заранее составленному расписанию;
  • К устройству можно подключить ряд датчиков для удалённого мониторинга: датчики температуры, наличия напряжения в сети 220 вольт, открывания двери, протечки, задымления и т.п.;
  • Встроенный Ethernet switch на 2 порта

На Хабре уже был обзор похожего устройства UniPing RS-232. Поскольку принципы и интерфейсы у них практически идентичны, сосредоточусь на практических примерах применения устройства.

1. Internet watchdog

Изначально NetPing приобретался для перезагрузки роутера со вставленным в него и регулярно зависающим модемом от SkyLink. С поставленной задачей устройство справилось прекрасно. Работает по принципу «поставил и забыл».Настраивается вполне несложно. Сначала в разделе «Сторож» выставляем:

NetPing 2PWR-220 v3ETH
Потом в разделе «Управление 220V» выбираем режим «Сторож».
NetPing 2PWR-220 v3ETH

После чего NetPing регулярно пингует указанные в найстройках IP адреса и, в случае их недоступности, на секунду снимает напряжение с розетки. Факт перезапуска, что приятно, фиксируется в логе NetPing.

2. Включение нагрузки по расписанию

Весной и вначале лета приводил в порядок дренажную систему вокруг подвала. Проблема заключалась в малом объёме накопительного колодца и слишком длинной отводящей трубе, из которой после выключения насоса часть воды возвращалась обратно в колодец. В результате классическая система с поплавком практически не давала насосу остановиться. Ставить обратный клапан или ещё как переделывать трубу не хотелось, так как система была временной. Тем не менее, нужно было дать возможность насосу отдыхать, но при этом не слишком долго, чтобы подвал не затопило. Мне казалось, что расписание вида «включить на 10 минут в начале каждого часа» будет в самый раз. Но подключив насос к NetPing, и зайдя в web-интерфейс понял, что количество включений/выключений по таймеру в день весьма ограничено.

NetPing 2PWR-220 v3ETH

В розетках-таймерах, которые продают в окрестных магазинах, количество включений/выключений в день побольше, но тоже не 24. Что же делать? Подождите, но ведь менять режим розеток в NetPing можно по сети с другого устройства.

Берем следующий perl-скрипт.

#!/usr/bin/perl
use strict;
use warnings;
use Net::SNMP;

my $snmp_host = '192.168.0.130'; # IP или hostname
my $snmp_community1 = 'SWITCH';
my $snmp_oid = '1.3.6.1.4.1.25728.5800.3.1.3.2'; # npPwrManualMode.2 - 2 розетка
my $PowerOn;

my $snmp_session;
my $snmp_error;
($snmp_session, $snmp_error) = Net::SNMP->session(
-hostname => $snmp_host,
-community => $snmp_community1,
-version => 1,
) or die('Connect failed! Не удалось соединиться!');

$PowerOn=1; # или 0, если нужно выключить розетку

$result = $snmp_session->set_request(    
-varbindlist => [$snmp_oid, INTEGER,$PowerOn],) or die('Request failed!');
print "OID $snmp_oid updated to $PowerOn\n";

$snmp_session->close();

Запускаем его на сервере с помощью cron: в 00 минут каждого часа включаем, через 10 минут выключаем. Готово! Теперь розетку можно включать по любому, даже самому хитрому расписанию! В качестве сервера использовался NAS Synology DS411slim.В логах NetPing отражает такую ситуацию как ручное включение/выключение нагрузки.Особо порадовал запас по коммутируемой NetPing мощности. Всё-таки насос потребляет 600 Вт. За несколько месяцев работы проблем с этим не возникло.

3. Включение нагрузки по условию

На зиму поставил греющий кабель в трубу, идущую от колодца к дому. Первое время включал ее просто по таймеру на ночь, так как ночью, как правило, холоднее, плюс нет расхода воды, а значит замерзание наиболее вероятно. Несколько раз приходили в голову мысли, что хорошо бы автоматически корректировать расписание исходя из температуры на улице. Например, если мороз под -30, то пусть подогрев работает круглосуточно, а если оттепель, то подогрев можно и на ночь не включать. Правда, до реализации дело пока не дошло, но думаю, по аналогии с предыдущим примером всё должно быть не сложно.Зато дошли руки протянуть датчик температуры в подвал. Теперь можно настроить включение обогрева в зависимости от значения датчика температуры.

NetPing 2PWR-220 v3ETH

Такой подход в теории выглядит идеально – греет только когда есть угроза замерзания. Однако меня терзают сомнения. Чтобы это гарантированно работало, датчик должен быть установлен в самом холодном (потенциально замерзающем) месте трубы. Однако, учитывая, что большая часть трубы лежит в земле, и к ней доступа уже нет, определить «самое холодное место» и установить туда датчик несколько проблематично. Так что окончательно перейти на автоматическое включение я пока не решился.

4. Датчики температуры

Помимо управления розетками NetPing может работать с целым набором датчиков. На пробу я заказал несколько датчиков температуры. Тут не обошлось без минусов:

  • Все датчики подключаются в одну колодку параллельно. Выглядит это как паук из проводов – никакой эстетики и удобства подключения;
  • Сама колодка требует специальной тонкой отвёртки (некоторые производители в таких случаях включают отвертку в комплект поставки);
  • Датчики температуры подключаются с помощью четырёх тоненьких проводов без разъёма на конце. Если хочется нарастить кабель, нужно доставать паяльник;
  • NetPing хранит значение температуры как целое число, поэтому не зависимо от точности датчиков, получить можно только целые градусы. По большому счету в этом нет ничего страшного, просто графики часто получаются зигзагообразные: «19-20-19-20-19-20…»;

Значения термодатчиков можно увидеть на специальной странице в web-интерфейсе NetPing.

NetPing 2PWR-220 v3ETH

Программно можно получить значения датчиков по HTTP простым GET запросом или с помощью SNMP. Для примера ниже perl-скрипт для сохранения значения датчика температуры на cosm.com (ранее Pachube).

#!/usr/bin/perl 

use strict;
use warnings;
use Net::SNMP;
use Net::Pachube;

my $snmp_host = '192.168.0.130';
my $snmp_community1 = 'SWITCH';
my $snmp_oid1 = '1.3.6.1.4.1.25728.8800.1.1.2.1'; # температура в котельной

# Устанавливаем соединение
my $snmp_session;
my $snmp_error;
($snmp_session, $snmp_error) = Net::SNMP->session(
-hostname => $snmp_host,
-port => 162,
-community => $snmp_community1,
-version => 1,
) or die('Connect failed! Не удалось соединиться!');

# Для краткости не приведен код обработки нештатных ситуаций
my $result = $snmp_session->get_request(-varbindlist => [ $snmp_oid1],);
my $TempSensor1 =$result->{$snmp_oid1}; # В $result будет ссылка на хэш вида: OID => Значение
$snmp_session->close();

# Теперь полученное значение сохраняем в cosm.com
my $feed_id = "<<your ID>>";
my $APIkey ="<<your API key>>";
my $pachube = Net::Pachube->new(key=>$APIkey);
my $feed = $pachube->feed($feed_id);
$feed->update(data => [$TempSensor1]);

Результат работы аналогичного скрипта, вызываемого раз в минуту, можно посмотреть тут: https://cosm.com/feeds/83996

cosm.com NetPing

Обратите внимание! Зарегистрировавшись на cosm.com и написав несколько десятков строк кода мы:
– получили вполне удобный внешний интерфейс для NetPing в режиме «только для чтения» с графиками – храним историю с интересующей нас частотой – и самое главное, что при аварии или пропадании связи мы знаем точное время аварии и значения датчиков на момент аварии! Как черный ящик у самолета!

5. Интеграция с системами домашней автоматизации

В данный момент NetPing скорее заточен под системы мониторинга серверной, чем под системы домашней автоматизации (нестандартные датчики, малое количество одновременно подключаемых датчиков, мало поддерживаемых типов датчиков). Однако сама идеология NetPing, когда датчики подключаются не напрямую к серверу, а к некому промежуточному устройству, которое в свою очередь подключается в общую Ethernet-сеть, мне кажется весьма правильной:

  • Датчики остаются простыми и дешёвыми (как в 1-wire), но при этом в сети может быть более 1 мастера;
  • Можно расположить устройство или несколько устройств поближе к датчикам – более простая топология сети, меньше ограничений на длину провода от датчика до устройства;
  • Выше отказоустойчивость и легче диагностика (каждый куст работает независимо);
  • Простую логику (если холодно, то включить обогрев) можно опустить на уровень контроллера и не занимать этим сервер домашней автоматизации, но при этом сохраняется возможность интеграции в общую систему;
  • За исключением датчиков температуры, мало какие датчики выдают непосредственно измеряемое значение. Как правило, они выдают напряжение или силу тока. Конвертация измеренного значения в нужные единицы, как раз работа для контроллера (устройства наподобие NetPing);
  • Еще одной хорошей идеей, реализованной в NetPing, мне кажется встроенный Ethernet switch. Что позволяет воткнуть устройство в любую Ethernet –розетку, даже если она занята. Ведь сколько ни закладывай запасных проводов, а в нужном месте всё равно одного порта не хватит.

Конечно, можно взять промышленный PLC и подключить датчики к нему. Но там и уровень цен другой, и устроено все зачастую чересчур сложно для домашней автоматизации. Перейдём от теории к практике. Недавно тестировал систему домашней автоматизации openhab. В ней заявлена поддержка SNMP, но только с помощью TRAP (GET и SET не поддерживаются). Для датчиков температуры этого оказалось достаточно.

a) В разделе «Настройки» указываем «сервер для посылки Trap сообщений»…

b) А в разделе Термодатчики -> «посылка trap сообщений» указываем «период посылки» 60 сек.

NetPing 2PWR-220 v3ETH

c) В openhab заполняем конфигурационные файлы. NetPing раз в минуту отправляет TRAP – openhab принимает и отображает. Все работает. С другими датчиками такой фокус пока что не возможен. Управлять розетками тоже пока нельзя.

6. Оповещение о нештатных ситуациях

Если температура выходит за пределы указанного диапазона, устройство делает соответствующую запись в лог, который также может дублироваться на внешний Syslog-сервер.В последней прошивке NetPing разработчики добавили возможность использовать их Syslog-сервер, который в свою очередь может отправлять уведомления по электронной почте. Когда я настраивал свою систему, такой опции еще не было, поэтому в качестве сервера на даче я использовал крошку Synology DS 411slim. Для него есть штатный сервер Syslog, который и присылает мне письмо в случае, если температура вышла за пределы указанного диапазона. К сожалению, о пропадании/восстановлении интернета письмом узнать не удастся, так как запись в Syslog генерируется только в момент пропадания интернета, но не после восстановления связи. Вместо Syslog-сервера, можно использовать SNMP TRAP Server. NetPing может при выходе температуры за пределы указанного диапазона отправлять TRAP, который можно обработать на сервере и запрограммировать соответствующую реакцию. Возможно, позднее попробую этот вариант, тогда вместо письма можно будет отправлять SMS (или и то и другое вместе).

7. Счетчик импульсов

На закуску расскажу об одной недокументированной возможности NetPing. Предыстория: Расход воды на даче не очень регулярен, а фильтры в системе водоподготовки требуют плановой замены. Для того чтобы точно знать момент, когда пора менять фильтры, я установил счётчик холодной воды. А раз счётчик оснащён импульсным выходом, сразу зачесались руки его к чему-нибудь подключить. Сначала я искал специализированные устройства, но те которые используются в ЖКХ, имеют закрытые протоколы и, как правило, стоят неразумных денег. Я уже было забросил затею подключить счётчик, как в голову пришла мысль: «А ведь у датчиков открытия/закрытия двери и у импульсного счётчика похожий принцип работы… Интересно, а NetPing запоминает количество открытий двери?»

датчик открытия двери

«Разъединились половинки – уровень сигнала перешёл из «0» в «1», соединились – снова вернулся в «0».»Берём MIB Browser и смотрим, какие значения выдаёт NetPing:

MIB Browser

Параметр «.1.3.6.1.4.1.25728.8900.1.1.9.1» подозрительно похож на то, что нужно! Подключаем счётчик воды по схеме датчика открытия двери.

Подключаем счётчик воды по схеме датчика открытия двери

Ура! На каждый литр воды, счётчик действительно увеличивается на единицу! Получить значение счётчика можно с помощью того же perl-скрипта, только делаем запрос сразу по нескольким oid:


my $snmp_oid1 = '1.3.6.1.4.1.25728.8800.1.1.2.1'; # температура в котельной
my $snmp_oid2 = '1.3.6.1.4.1.25728.8900.1.1.9.1'; # счетчик воды
my $result = $snmp_session->get_request(-varbindlist => [ $snmp_oid1, $snmp_oid2],);

Обратите внимание, что пока сервер выключен, перезагружается или просто занят более важными делами, ни один импульс не потеряется, ведь NetPing считает импульсы независимо от сервера! Согласно документации к NetPing можно подключить до 4 аналогичных датчиков. Получаем простой вариант для квартиры: к одному NetPing можно подключить счётчики и горячей и холодной воды, а ещё два входа останутся для датчиков протечки!

Заключение

Плюсы:

  1. Стабильная работа 24/7 в течение 2 лет;
  2. Отлично работающий режим «Сторож» для интернет-канала;
  3. Две независимые розетки;
  4. Коммутируемая нагрузка до 1 кВт;
  5. Встроенный Ethernet switch на 2 порта;
  6. Возможность подключения различных датчиков;
  7. Легкая интеграция с другими устройствами и системами

Минусы

  1. Неудобное подключение датчиков;
  2. Низкая точность датчиков;
  3. Немного путаная документация

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

P.S.: Посоветуйте, плиз, аналогичное устройство, чтобы к нему можно было подключить (по возможности без паяльника) датчики избыточного давления, гидростатический датчик глубины и получить на выходе значения по SNMP или HTTP поверх Ethernet.

Денис market-adventure@yandex.ru

Оригинал статьи: http://habrahabr.ru/sandbox/56751/


  • Устройство NetPing 2/PWR-220 v3/ETH

Основные теги


Каталог устойств мониторинг серверных комнат и шкафов
Все устройства
Устройство UniPing v3
Устройство UniPing server solution v3/SMS
Устройство NetPing 2/PWR-220 v1/SMS
Устройство NetPing IO v2
Устройства NetPing
Каталог датчиков для устройств NetPing
Устройство NetPing 8/PWR-220 v3/SMS
Устройство NetPing 2/PWR-220 v3/ETH
Устройство NetPing 2/PWR-220 v2/SMS
Устройство NetPing 4/PWR-220 v3/SMS
Устройство NetPing SMS
Устройство NetPing /PWR-220 v3/ETH
Адаптер WiFi VAP11N
Коммутатор PS104GT
Устройство NetPing Mini-UPS
Коммутатор NP-SM4
Сплиттер POE 12В (стандарта 802.3af)
IRC-TR v2 (ИК модуль расширения)
Каталог устройств удалённого управления и распределения электропитания NetPing
Устройство UniPing server solution
Устройство UniPing server solution v3
Датчик разбития стекла (Стекло-3 ИО 329-4), 2м
Переходник для NetPing IO v2
Блок питания 48В 1,5А (мод.HRS20005)
Датчик температуры TS, 1м
Датчик температуры, (T811), 2м
Датчик температуры WT, 1м
Датчик протечки, модель 2605, 2м
Датчик протечки H2О
Датчик температуры 1-wire, (THS), 2м
МАЯК-12-СТ
Датчик движения (PYRONIX COLT QUAD PI ПИК детектор), 2м
Датчик движения (SWAN-QUAD ИК детектор квадросенсор), (2м)
BM8070D Силовое реле 16А/250В на DIN-рейку
MP701 Исполнительный элемент (4 независимых канала по 2 кВт 10А)
Датчик дыма комбинированный (дым/тепло) ИП 212/101-2М-A1R с базой Е412NL
МОЛЛЮСК-12/1,5
Внешний ИБП SKAT-12DC-1.0 Li-ion
ИКС-1 извещатель охранный инфракрасный активный однолучевой
Датчик охранный (Извещатель охранный ИО102-20/Б2П, 2м)
Блок розеток SNR-PDU-08S-1
Устройство NetPing 2/PWR-220 v4/SMS
Устройство UniPing server solution v4/SMS
Устройство NetPing 8/PWR-220 v4/SMS
VT592 кабельный датчик протечки
WLC10 кабель протечки
NetPing Connection board v2 (коммутационная плата для UniPing v3)
Инжектор питания POE (стандарта 802.3af)
NetPing датчик наличия электропитания 995S1
Устройство NetPing 2/PWR-220 v12/ETH
Устройство NetPing 2/PWR-220 v13/GSM3G
Датчик наличия 220В (мод. HRS05005), 1.5м
NetPing удлинитель-разветвитель 1-wire на 5 портов, модель R912R1
NetPing датчик качества электропитания 1-wire 910S20
PLController R15250 силовое реле 15A/250В на DIN-рейку
NetPing адаптер датчиков с аналоговым интерфейсом 0-20мА, модель 886A01
Устройство NetPing server solution v5
Устройство NetPing ИК модуль, модель 3801
Устройство NetPing server solution v5/GSM3G
Устройство NetPing 4/PWR-220 v6.1/GSM3G
Устройство NetPing 4/PWR-220 v6.2/GSM3G
NetPing IO v3
NetPing Input+Relay v1
NetPing NP-GB322
Устройство NetPing 4/PWR-220 v6.4/ETH
Датчик удара PI-99D, 1м
▼ Все теги
Новинки
NetPing датчик освещенности 813S1
NetPing датчик освещенности 813S1— это компактный датчик наличия светового потока, предназначенный для подробнее...

Цена: 2 340 руб.

NetPing Zabbix server (Software)
ISO-образ, позволяющий протестировать и развернуть преднастроенную систему мониторинга Zabbix с возможностью подробнее...

Цена:  руб.

Датчик удара Z09-1
Датчик удара позволяет регистрировать удары и вибрации поверхности, на которой он установлен, а также подробнее...

Цена: 1 045 руб.

NetPing Monitoring Server 90Z02
NetPing Monitoring Server 90Z02 — это контроллер на базе полноценного компьютера с предустановленной подробнее...

Цена: 42 500 руб.

NetPing v4
Устройство удаленного мониторинга датчиков по сети Ethernet/Internet на DIN-рейку. Позволяет удаленно подробнее...

Цена: 10 650 руб.

Источник питания СКАТ MOLLUSK-VRK 12/2
Адаптер питания может использоваться для питания устройств NetPing и некоторых моделей управляемых коммутаторов.Выходное подробнее...

Цена: 950 руб.

Устройство NetPing 4/PWR-220 v6.4/ETH
Устройство удаленного управления розетками электропитания по сети Ethernet/Internet (IP PDU).4 канала подробнее...

Цена: 15 730 руб.

NetPing NP-GB322
Коммутатор Ethernet на 5 портов 10/100/1000 BASE-TX с поддержкой PoE (электропитание по Ethernet-кабелю) 5 подробнее...

Цена: 4 290 руб.

NetPing Input+Relay v1
Компактное устройство удаленного мониторинга датчиков по сети Ethernet/Internet. Позволяет удаленно подробнее...

Цена: 6 200 руб.

NetPing IO v3
Компактное бескорпусное устройство удаленного мониторинга датчиков по сети Ethernet/Internet. Позволяет подробнее...

Цена: 2 875 руб.

Устройство NetPing 4/PWR-220 v6.2/GSM3G
Устройство удаленного управления розетками электропитания по сети Ethernet/Internet (IP PDU) c поддержкой подробнее...

Цена: 20 280 руб.

Устройство NetPing 4/PWR-220 v6.1/GSM3G
Устройство удаленного управления розетками электропитания по сети Ethernet/Internet (IP PDU) c поддержкой подробнее...

Цена: 20 280 руб.

NetPing блок розеток 1-wire 888S0201
Блок розеток предназначен для удаленного управления нагрузкой. Устройство не является самостоятельным, подробнее...

Цена: 10 980 руб.

Устройство NetPing ИК модуль, модель 3801
ИК-контроллер для дистанционного и автоматического управления устройствами с инфракрасным интерфейсом подробнее...

Цена: 8 580 руб.

Устройство NetPing server solution v5
Устройство удаленного мониторинга датчиков по сети Ethernet/Internet. Позволяет удаленно получать информацию подробнее...

Цена: 18 000 руб.

Устройство NetPing server solution v5/GSM3G
Устройство удаленного мониторинга датчиков по сети Ethernet/Internet. Позволяет удаленно получать информацию подробнее...

Цена: 27 300 руб.

PLController R15250 силовое реле 15A/250В на DIN-рейку
Силовое реле в корпусе для крепления на DIN-рейку предназначено для удаленной коммутации мощной нагрузки.Напряжение подробнее...

Цена: 1 429 руб.

NetPing адаптер датчиков с аналоговым интерфейсом 0-20мА, модель 886A01
Адаптер предназначен для подключения аналоговых датчиков, передающих сигнал изменением протекающего подробнее...

Цена: 3 354 руб.

NetPing датчик качества электропитания 1-wire 910S20
Датчик предназначен для мониторинга качества электропитания в розетке. Датчик должен быть подключен подробнее...

Цена: 2 240 руб.

NetPing удлинитель-разветвитель 1-wire на 5 портов, модель R912R1
Активный удлинитель-разветвитель для подключения датчиков 1-wire к устройствам NetPing5 портов для подключения подробнее...

Цена: 1 400 руб.

Устройство NetPing 2/PWR-220 v12/ETH
Управляемый блок удаленного распределения питания по сети Ethernet/Internet (IP PDU)2 независимые управляемые подробнее...

Цена: 8 973 руб.

Устройство NetPing 2/PWR-220 v13/GSM3G
Управляемый блок удаленного распределения питания по сети Ethernet/Internet (IP PDU) c поддержкой управления подробнее...

Цена: 15 700 руб.

NetPing датчик наличия электропитания 995S1
Датчик позволяет определить наличие напряжения в розетке питания. Выполнен в корпусе блока питания с подробнее...

Цена: 1 224 руб.

WLC10 кабель протечки
Чувствительный кабель для использования совместно с датчиком VT592. Может быть смонтирован в труднодоступных подробнее...

Цена: 6 700 руб.

VT592 кабельный датчик протечки
Датчик предназначен для работы совместно с кабелем протечки WLC10. Возможность подключения датчика к подробнее...

Цена: 3 800 руб.

-+ руб. руб.
Итого руб.

Данные о заказе