голосовое оповещение про открытую дверь

Подключение исполнительных устройств, датчиков, контроллеров.

Модератор: immortal

DimSun75
Сообщения: 318
Зарегистрирован: Вс янв 01, 2017 8:32 pm
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 44 раза

Re: голосовое оповещение про открытую дверь

Сообщение DimSun75 » Пн мар 20, 2017 10:39 pm

yurat2008 писал(а):turnon turnoff только для записи времени открытия-закрытия, по большому счету они не нужны

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

$this->setProperty("statusText","открыто");
$this->setProperty("updatedTimestamp",time());
У вас по изменению status вызывается Statuschanged. Эти методы вообще никогда не вызываются. Если вы используете свойства statusText и updatedTimestamp, то добавьте в Statuschanged. Ну и методы turdOff и turnOn можно удалять
За это сообщение автора DimSun75 поблагодарил:
yurat2008 (Вт мар 21, 2017 11:45 am)
Рейтинг: 1.16%
th1s
Сообщения: 9
Зарегистрирован: Ср май 17, 2017 2:30 am
Благодарил (а): 5 раз
Поблагодарили: 0

Re: голосовое оповещение про открытую дверь

Сообщение th1s » Ср май 17, 2017 2:33 am

Автор, можете подробно описать что за датчик используете и как реализовали всё это, очень интересно и хочу повторить
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: голосовое оповещение про открытую дверь

Сообщение nick7zmail » Ср май 17, 2017 6:23 am

Обычный геркон с магнитиком, подключенный к ESP, если я правильно помню, как начиналась эта тема.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
yurat2008
Сообщения: 147
Зарегистрирован: Сб мар 04, 2017 7:04 pm
Благодарил (а): 15 раз
Поблагодарили: 13 раз

Re: голосовое оповещение про открытую дверь

Сообщение yurat2008 » Ср май 17, 2017 11:08 am

все просто - на дверь ставим смк (датчик с герконом для охранной сигнализации)
Подключение рассмотрим на примере GPIO14 (esp8266)

первый выход датчика подключаеем к GND, второй через 4.7кОм подлючаем на выход GPIO14 модуля ( кроме того Подтягиваем GPIO14 резистором 10кОм к +3.3в.) ,

Указываем (в настройках прошивки wifi-iot ) GPIO к которому подключен датчик в поле "Int1 on GPIO14", где 1 - номер прерывания 1. Выбираем режим "Active send". Драйвер 1. В нижней части выбираем режим mode в зависимости от требований. Если указать "Any" , то событие будет обрабатываться как при начале движения и его окончании. При указании "Pos" будет срабатывать только при начале движения. Во вкладке Gpio выставляем Gpio14 input.

На сервере MajorDoMo или MQTT вы должны увидеть прерывание gpioint1 И изменения состояния gpio14, так вот ориентируемся на 0 и 1 на gpio14 . 0 будет при закрытых дверях будет логический 0, при разомкнутом датчике будет логическая 1). Создаем обьект, свзываем свойство обьекта с состоянием gpio14 в модуле esp8266_wifiot. Дальше стандартно. В настройках передчи данных на сервер Majordomo (esp8266) ставим опрос 600сек, при сработке датчика Active send передаст изменение состояния мгновенно, а засорять эфир частыми опросами нет смысла

Код в методе обьекта такой

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

if($params['NEW_VALUE']!=$params['OLD_VALUE']) {
 if(gg("BoilerRom.status")=="0") {
  ClearTimeOut("ReminderBoilerRomTimer");
setGlobal('BoilerRom.timeclossed',timeNow());
setGlobal('BoilerRom.dataclossed',date("d.m.y")); 
setGlobal('BoilerRom.statusText',"дверь котельной закрыта");  
say("дверь котельной закрыта",5);
} else {

setGlobal('BoilerRom.timeopen',timeNow());
setGlobal('BoilerRom.dataopened',date("d.m.y"));
  setGlobal('BoilerRom.statusText',"дверь котельной открыта");  
say("Внимание! Открывается дверь котельной.",5);
SetTimeOut("ReminderBoilerRomTimer","runScript('ReminderBoilerRom');", 15*60);  
}
}
настройки объектов
СпойлерПоказать
1.jpg
1.jpg (141.89 КБ) 6485 просмотров
2.jpg
2.jpg (144.18 КБ) 6485 просмотров
настройки прошивки
СпойлерПоказать
IMG_20170512_203246.jpg
IMG_20170512_203246.jpg (95.16 КБ) 6484 просмотра
IMG_20170512_203244.jpg
IMG_20170512_203244.jpg (63.6 КБ) 6484 просмотра
IMG_20170512_203238.jpg
IMG_20170512_203238.jpg (91.36 КБ) 6484 просмотра
За это сообщение автора yurat2008 поблагодарили (всего 4):
ferrumlogic (Ср май 17, 2017 1:48 pm) • th1s (Чт май 18, 2017 2:28 am) • Jilber (Вт авг 15, 2017 2:20 pm) • Taras81 (Вт янв 08, 2019 11:37 pm)
Рейтинг: 4.65%
th1s
Сообщения: 9
Зарегистрирован: Ср май 17, 2017 2:30 am
Благодарил (а): 5 раз
Поблагодарили: 0

Re: голосовое оповещение про открытую дверь

Сообщение th1s » Чт май 18, 2017 2:28 am

Спасибо огромное за инструкцию!
Jilber
Сообщения: 684
Зарегистрирован: Ср май 03, 2017 7:41 pm
Благодарил (а): 113 раз
Поблагодарили: 107 раз

Re: голосовое оповещение про открытую дверь

Сообщение Jilber » Вт авг 15, 2017 11:06 am

yurat2008 писал(а):первый выход датчика подключаеем к GND, второй через 4.7кОм подлючаем на выход GPIO14 модуля ( кроме того Подтягиваем GPIO14 резистором 10кОм к +3.3в.)
Я правильно понял ?
СпойлерПоказать
Геркон.jpg
Геркон.jpg (21.39 КБ) 6047 просмотров
olehs
Сообщения: 1115
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 85 раз
Поблагодарили: 342 раза

Re: голосовое оповещение про открытую дверь

Сообщение olehs » Вт авг 15, 2017 1:40 pm

Получился делитель напряжения. На GPIO14 будет 1,05В.
Может лучше без 4,7К?
Jilber
Сообщения: 684
Зарегистрирован: Ср май 03, 2017 7:41 pm
Благодарил (а): 113 раз
Поблагодарили: 107 раз

Re: голосовое оповещение про открытую дверь

Сообщение Jilber » Вт авг 15, 2017 2:13 pm

Как лучше не знаю, главное, что работает ? :-)
Zubkov
Сообщения: 35
Зарегистрирован: Вт сен 13, 2016 8:43 pm
Благодарил (а): 9 раз
Поблагодарили: 6 раз

Re: голосовое оповещение про открытую дверь

Сообщение Zubkov » Ср авг 16, 2017 3:01 pm

olehs писал(а):Получился делитель напряжения. На GPIO14 будет 1,05В.
Может лучше без 4,7К?
Вообще схема подтяжки GPIO неправильная... верно подключить на GPIO через резистор 4.7 кОм от +3,3 В (так называемая, подтяжка на плюс)...
геркон замыкает прямой ноль без всяких резисторов!
Zubkov
Сообщения: 35
Зарегистрирован: Вт сен 13, 2016 8:43 pm
Благодарил (а): 9 раз
Поблагодарили: 6 раз

Re: голосовое оповещение про открытую дверь

Сообщение Zubkov » Ср авг 16, 2017 3:06 pm

yurat2008 писал(а): Указываем (в настройках прошивки wifi-iot ) GPIO к которому подключен датчик в поле "Int1 on GPIO14", где 1 - номер прерывания 1. Выбираем режим "Active send". Драйвер 1. В нижней части выбираем режим mode в зависимости от требований. Если указать "Any" , то событие будет обрабатываться как при начале движения и его окончании. При указании "Pos" будет срабатывать только при начале движения. Во вкладке Gpio выставляем Gpio14 input.
зачем двойное использование GPIO14 ?
достаточно ИЛИ через прерывание 1 сделать со свойством "any" и ловить в мажоре топик "Int1 on GPIO14" с нулем или единицей
ИЛИ ловить вход на GPIO14 простой ноль или единицу
Ответить