Контроль соединения с контроллером

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

karsotrade
Сообщения: 119
Зарегистрирован: Пт июн 09, 2017 11:18 pm

Контроль соединения с контроллером

Сообщение karsotrade »

Подскажите пожалуйста как можно осуществить контроль за наличием соединения с контроллером температуры (Arduino Nano с DHT датчиками, данные передаются через вэб переменные). В случае пропадания связи МЖД с контроллером хотелось бы, чтоб при этом показания температуры и влажности обнулялись (в вэб переменные или в свойства элемента сцены прописывались нули). Может уже есть готовые решения, хотелось бы знать о "пропадании" контроллера.
Аватара пользователя
Vovix
Сообщения: 1155
Зарегистрирован: Пн янв 27, 2014 1:43 am
Откуда: г.Ижевск
Контактная информация:

Re: Контроль соединения с контроллером

Сообщение Vovix »

karsotrade писал(а):Подскажите пожалуйста как можно осуществить контроль за наличием соединения с контроллером температуры (Arduino Nano с DHT датчиками, данные передаются через вэб переменные). В случае пропадания связи МЖД с контроллером хотелось бы, чтоб при этом показания температуры и влажности обнулялись (в вэб переменные или в свойства элемента сцены прописывались нули). Может уже есть готовые решения, хотелось бы знать о "пропадании" контроллера.
если он у вас через локалку подключен, дак и проверяйте пинг ip адреса! хоть в ручную, хоть через Устройства ONLINE!
Мой -CONNECT-
Windows 7(PHP 7.2) + Raspberry Pi(освещение на 1-Wire) + MP751(управление) + ESP8266(сенсоры) + LAN(сенсоры)
-=: Если вам помогло моё сообщение, нажмите кнопку "Поблагодарить за сообщение автора: Vovix" (кнопка Спасибо) справа! :=-
Берендей
Сообщения: 125
Зарегистрирован: Ср окт 18, 2017 9:44 am

Re: Контроль соединения с контроллером

Сообщение Берендей »

Я зделал это через анализ updatedText, та как если контролер в сети, но данные не шлет, то пингование не выявит проблемы...
OrangePI PC/ARMBIAN 5.36 + DS3231+433Mhz. Esp8266(ArduinoIDE). Arduino MEGA2560 + Oregon THGN132N.
Sonoff RF Bridge + sensors
karsotrade
Сообщения: 119
Зарегистрирован: Пт июн 09, 2017 11:18 pm

Re: Контроль соединения с контроллером

Сообщение karsotrade »

Берендей писал(а):Я зделал это через анализ updatedText, та как если контролер в сети, но данные не шлет, то пингование не выявит проблемы...
Если датчики "отваливаются" то всё нормально, данные сразу обнуляються, а вот если контроллер отсоединить, то в МЖД в вэб-переменных остаётся последнее значение и оно не обнуляеться. Вот и хочу этот вопрос как то разрешить.
Берендей
Сообщения: 125
Зарегистрирован: Ср окт 18, 2017 9:44 am

Re: Контроль соединения с контроллером

Сообщение Берендей »

Я делал так:

Это вызывается в Cron каждую минуту

Код: Выделить всё

if (substr(gg('Sensor_temp03.updatedText'),0,8)=="5 мин") 
{ sg('Sensor_temp03.alive',0);
  say("Внимание нет связи с метеостанцией",2);
}
 

Через 5 минут после последнего обновлениея значения датчика сбрасываем alive в 0, и сигнализируем о проблеме.
OrangePI PC/ARMBIAN 5.36 + DS3231+433Mhz. Esp8266(ArduinoIDE). Arduino MEGA2560 + Oregon THGN132N.
Sonoff RF Bridge + sensors
karsotrade
Сообщения: 119
Зарегистрирован: Пт июн 09, 2017 11:18 pm

Re: Контроль соединения с контроллером

Сообщение karsotrade »

А не подскажите как мне обнулять значение температуры и влажности. Например, в МЖД в сцене есть элемент "Температура/влажность гостинной" с кодом:
%DHTSens1.Temp%℃
%DHTSens1.Hum%%

Соответственно созданы вэб переменные DHTSens1.Temp и DHTSens1.Hum которые опрашивают периодически контроллер.
Каким кодом и где обнулять данные?
Molostov
Сообщения: 53
Зарегистрирован: Пт янв 17, 2014 1:47 am
Откуда: Карпинск, Свердловская область

Re: Контроль соединения с контроллером

Сообщение Molostov »

Код: Выделить всё

sg('DHTSens1.Temp',0);
sg('DHTSens1.Hum',0);
 
Вроде так.
Берендей
Сообщения: 125
Зарегистрирован: Ср окт 18, 2017 9:44 am

Re: Контроль соединения с контроллером

Сообщение Берендей »

Выше советовали пинговать Нанку. В Cron создаете событие каждую минуту, в нем пингуете, и вслучае неудачи присваиваете переменым "0".
OrangePI PC/ARMBIAN 5.36 + DS3231+433Mhz. Esp8266(ArduinoIDE). Arduino MEGA2560 + Oregon THGN132N.
Sonoff RF Bridge + sensors
Аватара пользователя
xor
Сообщения: 2044
Зарегистрирован: Сб ноя 22, 2014 8:45 pm

Re: Контроль соединения с контроллером

Сообщение xor »

Если данные читаются через веб-переменные, можно вывести ещё одну - счетчик любой, типа время или счетчик внутреннего цикла - и читать кроме ваших влажностей и температур и значение счетчика. Если счетчик не меняется, то - всё. Пинговать - время терять, неск. секунд.
Аватара пользователя
Vovix
Сообщения: 1155
Зарегистрирован: Пн янв 27, 2014 1:43 am
Откуда: г.Ижевск
Контактная информация:

Re: Контроль соединения с контроллером

Сообщение Vovix »

Вы тут сейчас насоветуете человеку.... Crone....
Пинговать... я как раз рекомендовал бы через Устройства ONLINE, т.е. завести там запись!
Обнулять... сделайте код с двумя строчками указанными выше (или еще туда чего-нибудь затолкайте)

Код: Выделить всё

sg('DHTSens1.Temp',0);
sg('DHTSens1.Hum',0); 
и вызывайте его стандартно вписав в "Действие при переходе в Offline:" в устройствах ONLINE

любители Линукса блин...:-), а если у человека MDM на Windows? Он ведь не указывает систему?
Мой -CONNECT-
Windows 7(PHP 7.2) + Raspberry Pi(освещение на 1-Wire) + MP751(управление) + ESP8266(сенсоры) + LAN(сенсоры)
-=: Если вам помогло моё сообщение, нажмите кнопку "Поблагодарить за сообщение автора: Vovix" (кнопка Спасибо) справа! :=-
Ответить