Страница 4 из 5
Re: голосовое оповещение про открытую дверь
Добавлено: Пн мар 20, 2017 10:39 pm
DimSun75
yurat2008 писал(а):turnon turnoff только для записи времени открытия-закрытия, по большому счету они не нужны
Код: Выделить всё
$this->setProperty("statusText","открыто");
$this->setProperty("updatedTimestamp",time());
У вас по изменению status вызывается Statuschanged. Эти методы вообще никогда не вызываются. Если вы используете свойства statusText и updatedTimestamp, то добавьте в Statuschanged. Ну и методы turdOff и turnOn можно удалять
Re: голосовое оповещение про открытую дверь
Добавлено: Ср май 17, 2017 2:33 am
th1s
Автор, можете подробно описать что за датчик используете и как реализовали всё это, очень интересно и хочу повторить
Re: голосовое оповещение про открытую дверь
Добавлено: Ср май 17, 2017 6:23 am
nick7zmail
Обычный геркон с магнитиком, подключенный к ESP, если я правильно помню, как начиналась эта тема.
Re: голосовое оповещение про открытую дверь
Добавлено: Ср май 17, 2017 11:08 am
yurat2008
все просто - на дверь ставим смк (датчик с герконом для охранной сигнализации)
Подключение рассмотрим на примере 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 (141.89 КБ) 7351 просмотр

- 2.jpg (144.18 КБ) 7351 просмотр
настройки прошивки

- IMG_20170512_203246.jpg (95.16 КБ) 7350 просмотров

- IMG_20170512_203244.jpg (63.6 КБ) 7350 просмотров

- IMG_20170512_203238.jpg (91.36 КБ) 7350 просмотров
Re: голосовое оповещение про открытую дверь
Добавлено: Чт май 18, 2017 2:28 am
th1s
Спасибо огромное за инструкцию!
Re: голосовое оповещение про открытую дверь
Добавлено: Вт авг 15, 2017 11:06 am
Jilber
yurat2008 писал(а):первый выход датчика подключаеем к GND, второй через 4.7кОм подлючаем на выход GPIO14 модуля ( кроме того Подтягиваем GPIO14 резистором 10кОм к +3.3в.)
Я правильно понял ?

- Геркон.jpg (21.39 КБ) 6913 просмотров
Re: голосовое оповещение про открытую дверь
Добавлено: Вт авг 15, 2017 1:40 pm
olehs
Получился делитель напряжения. На GPIO14 будет 1,05В.
Может лучше без 4,7К?
Re: голосовое оповещение про открытую дверь
Добавлено: Вт авг 15, 2017 2:13 pm
Jilber
Как лучше не знаю, главное, что работает ?

Re: голосовое оповещение про открытую дверь
Добавлено: Ср авг 16, 2017 3:01 pm
Zubkov
olehs писал(а):Получился делитель напряжения. На GPIO14 будет 1,05В.
Может лучше без 4,7К?
Вообще схема подтяжки GPIO неправильная... верно подключить на GPIO через резистор 4.7 кОм от +3,3 В (так называемая, подтяжка на плюс)...
геркон замыкает прямой ноль без всяких резисторов!
Re: голосовое оповещение про открытую дверь
Добавлено: Ср авг 16, 2017 3:06 pm
Zubkov
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 простой ноль или единицу