Опрос датчиков через плату с WebServer
Модератор: immortal
-
- Сообщения: 22
- Зарегистрирован: Вт авг 12, 2014 4:53 pm
- Благодарил (а): 2 раза
- Поблагодарили: 1 раз
Опрос датчиков через плату с WebServer
Планирую сделать вариант распределенного умного дома. Сервер MDM установлен на ПК, связь с датчика осуществляется с помощью самодельной платы на STM процессоре (на плате поднят WebServer). По 10 раз прочитал темы где описан опрос датчиков через плату. Но одного не могу понять, как связывается MDM с платой для опроса? Везде показана только верхняя часть. Описаны объекты, свойства, а вот связь с платой не описана, подскажите как она реализована.
з.ы. возможно я просто пропустил самое очевидное(
з.ы. возможно я просто пропустил самое очевидное(
- sergejey
- Site Admin
- Сообщения: 4284
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 75 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Опрос датчиков через плату с WebServer
Самое простое: если поднят WebServer, то можно через модуль Веб-переменные организовать "вытягивание" данных из устройства в объекты системы. Т.е. в модуле указывается ссылка на страницу с данными и шаблон, по которому берётся конкретное свойство.Kele6ra писал(а):Планирую сделать вариант распределенного умного дома. Сервер MDM установлен на ПК, связь с датчика осуществляется с помощью самодельной платы на STM процессоре (на плате поднят WebServer). По 10 раз прочитал темы где описан опрос датчиков через плату. Но одного не могу понять, как связывается MDM с платой для опроса? Везде показана только верхняя часть. Описаны объекты, свойства, а вот связь с платой не описана, подскажите как она реализована.
з.ы. возможно я просто пропустил самое очевидное(
- Рейтинг: 1.16%
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
-
- Сообщения: 22
- Зарегистрирован: Вт авг 12, 2014 4:53 pm
- Благодарил (а): 2 раза
- Поблагодарили: 1 раз
Re: Опрос датчиков через плату с WebServer
c вытягиванием понял, а как быть с управлением некоторыми устройствами?
-
- Сообщения: 284
- Зарегистрирован: Сб ноя 24, 2012 11:47 am
- Благодарил (а): 29 раз
- Поблагодарили: 28 раз
Re: Опрос датчиков через плату с WebServer
если по http протоколу, то обычно через geturl
примерно так
у каждого устройства своя система команд, но принцип одинаков.
примерно так
Код: Выделить всё
//вкл выход
$cmdUrl = "http://ip&Out1=ON";
getURL($cmdUrl,0);
//выкл выход
$cmdUrl = "http://ip&Out1=OFF";
getURL($cmdUrl,0);
-
- Сообщения: 22
- Зарегистрирован: Вт авг 12, 2014 4:53 pm
- Благодарил (а): 2 раза
- Поблагодарили: 1 раз
Re: Опрос датчиков через плату с WebServer
Благодарю.
Ещё возник вопрос про элемент меню типа "Выключатель", можно ли на него повесить и включение прибора и выключение?
п.с. повесил на выключатель метод rele.switch там почему то всё инверсивно 0_о то есть при единице он не хочет переключать, а при нуле переключает.
Так работает
А так - нет =(
Ещё возник вопрос про элемент меню типа "Выключатель", можно ли на него повесить и включение прибора и выключение?
п.с. повесил на выключатель метод rele.switch там почему то всё инверсивно 0_о то есть при единице он не хочет переключать, а при нуле переключает.
Так работает
Код: Выделить всё
$status=$this->getProperty("status");
if ($status == 0) {
$this->callMethod('turnOff');
else {$this->callMethod('turnOn');
}
Код: Выделить всё
$status=$this->getProperty("status");
if ($status == 1) {
$this->callMethod('turnOff');
else {$this->callMethod('turnOn');
}
-
- Сообщения: 867
- Зарегистрирован: Вт янв 17, 2012 12:31 pm
- Благодарил (а): 121 раз
- Поблагодарили: 78 раз
Re: Опрос датчиков через плату с WebServer
Вечером выложу правильный код на переключение.
вот так должно работать
Код: Выделить всё
$status=$this->getProperty("status");
if ($status) {
$this->callMethod('turnOff');
} else {
$this->callMethod('turnOn');
}
-
- Сообщения: 22
- Зарегистрирован: Вт авг 12, 2014 4:53 pm
- Благодарил (а): 2 раза
- Поблагодарили: 1 раз
Re: Опрос датчиков через плату с WebServer
Именно так и не работает, работает если
Если отрицание не ставлю, то в меню он возвращается обратно после нажатия
Код: Выделить всё
$status=$this->getProperty("status");
if (!$status) {
$this->callMethod('turnOff');
} else{
$this->callMethod('turnOn');
}
-
- Сообщения: 284
- Зарегистрирован: Сб ноя 24, 2012 11:47 am
- Благодарил (а): 29 раз
- Поблагодарили: 28 раз
Re: Опрос датчиков через плату с WebServer
позволю себе влезть, но судя по словам "...в меню он возвращается обратно после нажатия.." в методах turnOn turnOff видимо зачем-то снова дергается этот же переключатель. т.е. получается "закольцовывание", вот он и возвращается обратно.
-
- Сообщения: 867
- Зарегистрирован: Вт янв 17, 2012 12:31 pm
- Благодарил (а): 121 раз
- Поблагодарили: 78 раз
Re: Опрос датчиков через плату с WebServer
Kele6ra писал(а):Именно так и не работает, работает еслиЕсли отрицание не ставлю, то в меню он возвращается обратно после нажатияКод: Выделить всё
$status=$this->getProperty("status"); if (!$status) { $this->callMethod('turnOff'); } else{ $this->callMethod('turnOn'); }
Выложите скрины что у вас и где прописано. И каким образом вы меняете свойство объекта.
Вышеприведенный код рабочий. Поосто возможно у вас в другом где то затык.
-
- Сообщения: 22
- Зарегистрирован: Вт авг 12, 2014 4:53 pm
- Благодарил (а): 2 раза
- Поблагодарили: 1 раз
Re: Опрос датчиков через плату с WebServer
У меня работает вот с таким кодом. То есть если ставить отрицание перед $status в методе switch, то работает нормально, иначе ползунок всегда возвращается в своё положение.