Умная входная дверь!

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

Модератор: immortal

Ответить
directman66
Сообщения: 2801
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 693 раза
Контактная информация:

Умная входная дверь!

Сообщение directman66 » Сб фев 17, 2018 8:40 am

Просто решил поделиться своими наработками увеличения уровня дзен по автоматизации двери:
Дано:
1)Замок обычный, механический )
2) На двери датчик открытия двери aqura, подключенный к шлюзу через плагин Xiaomi Home.
3) Объект простые устройтсва OpenClose1
4) IP-видеокамера, установленная напротив двери.
5) Выключатель света Sonoff touch с прошивкой wifi-iot

Задачи:
1) Отправка сообщения об открытии и закрытии двери в телеграмм
2) Включение света при открытии двери и выключение через 5 минут
3) Уведомление о необходимости закрыть входную дверь.

Решение:
СпойлерПоказать
Безымянный2.png
Безымянный2.png (268.57 КБ) 4852 просмотра
сценарий dvertelega:
СпойлерПоказать

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

$image_url="http://192.168.1.32/webcapture.jpg?command=snap&channel=0";
$result=getURL($image_url,0);
$save_to="./cached/cam1.jpg"; // куда сохранять
SaveFile($save_to, $result);



include_once(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();

echo gg("Openclose01.status");
$open=gg("Openclose01.status");
echo $open;



if ($open==1) 
{$text="Входная дверь закрыта!!!$dver";
//cm('Relay12.turnOff');
SetTimeOut("Relay12OffTimer","callMethod('Relay12.turnOff');",300); 
} else 
{$text="Входная дверь открыта!!!$dver";
SetTimeOut("dveropen","rs('dvertimer');",180); 
 
cm('Relay12.turnOn');}

//$telegram_module->sendMessageToAll($text);




$telegram_module->sendImageToAll($save_to,$text); 
Сценарий dvertimer:
СпойлерПоказать

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

$image_url="http://192.168.1.32/webcapture.jpg?command=snap&channel=0";
$result=getURL($image_url,0);
$save_to="./cached/cam1.jpg"; // куда сохранять
SaveFile($save_to, $result);



include_once(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();


$open=gg("Openclose01.status");
echo $open;

if ($open==0) 
{$text="Внимание, вы забыли закрыть входную дверь!!!";
$telegram_module->sendImageToAll($save_to,$text);
say ($text,3);

SetTimeOut("dveropensay","rs(saygoogle, array('text' =>$text)); m.  ",10);
SetTimeOut("dveropen","rs('dvertimer');",180);  
} 
Метод change объекта OpenClose1
СпойлерПоказать

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

rs("dvertelega"); 
В плагине XiaomiHome устройство Magnet 2017-08-20 привязано к нашему объекту.
no_close: 300; status: 1 (Openclose01.status); voltage: 3035 (Openclose01.voltage);

Результат:
СпойлерПоказать
Безымянный2.png
Безымянный2.png (268.57 КБ) 4852 просмотра
Не забывайте про кнопку "спасибо" )
За это сообщение автора directman66 поблагодарили (всего 5):
VooDooN (Сб фев 17, 2018 9:58 am) • ypiter2006 (Сб фев 17, 2018 10:04 am) • Molostov (Сб фев 17, 2018 8:41 pm) • xxxShahxxx (Ср мар 21, 2018 12:12 pm) • Traktor (Пт апр 13, 2018 11:33 am)
Рейтинг: 5.81%
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
directman66
Сообщения: 2801
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 693 раза
Контактная информация:

Re: Умная входная дверь!

Сообщение directman66 » Сб фев 17, 2018 4:15 pm

В планах:
1) По камере (нейросети, облачные системы распознавания (гугл и амазон), пока идет тестирование методов, похоже недостаточно разрешения камеры для распознавания, и место установки выбрано не подходящее.) или другим косвенным признакам (пингование телефонов, бт браслетов) определять кто пришел и приветствовать информационным сообщением (если до этого был статус дома никого нет:
а) если пришел взрослый, то рассказать какие письма есть непрочитанные в почте (в моем конекте есть пример получения данных гугл почты), какие оценки получил ребенок за день (сетевой город - пока не могу победить).
б) если ребенок, то рассказать ему про распорядок дня (погулять с собакой, разогреть обед, сделать уроки).
За это сообщение автора directman66 поблагодарил:
lanket (Сб фев 17, 2018 9:06 pm)
Рейтинг: 1.16%
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
zhulen820
Сообщения: 4
Зарегистрирован: Ср май 24, 2017 10:29 pm
Благодарил (а): 1 раз
Поблагодарили: 0

Re: Умная входная дверь!

Сообщение zhulen820 » Вс фев 18, 2018 11:45 am

Бьюсь несколько дней. Хочу реализовать то же самое, что у Вас. Не могу получить снимок с камеры. Камера ip купленная несколько лет назад в Китае, соответственно какой-либо информации по ней нет и не найти. Вывел на сцену изображение с нее, а вот как сделать снимок не пойму. Где Вы брали $image_url="http://192.168.1.32/webcapture.jpg?comm ... &channel=0"; для своей камеры??? Читал тему Telegramm, там много примеров получения снимка с камеры, ни один не подошел. Не могу разобраться в механизме получения этого изображения. Камера вещает RTSP поток, но ведь на сцене вывод получается не онлайн, а серия снимков с периодом в несколько секунд. Вроде как этим занимается ffmpeg, но как разобраться какую команду дать для получения снимка не знаю. Подскажите куда копать
Аватара пользователя
Eraser
Сообщения: 1085
Зарегистрирован: Вт окт 21, 2014 7:31 pm
Откуда: Киров
Благодарил (а): 14 раз
Поблагодарили: 868 раз
Контактная информация:

Re: Умная входная дверь!

Сообщение Eraser » Вс фев 18, 2018 12:45 pm

zhulen820 писал(а):Бьюсь несколько дней. Хочу реализовать то же самое, что у Вас. Не могу получить снимок с камеры. Камера ip купленная несколько лет назад в Китае, соответственно какой-либо информации по ней нет и не найти. Вывел на сцену изображение с нее, а вот как сделать снимок не пойму. Где Вы брали $image_url="http://192.168.1.32/webcapture.jpg?comm ... &channel=0"; для своей камеры??? Читал тему Telegramm, там много примеров получения снимка с камеры, ни один не подошел. Не могу разобраться в механизме получения этого изображения. Камера вещает RTSP поток, но ведь на сцене вывод получается не онлайн, а серия снимков с периодом в несколько секунд. Вроде как этим занимается ffmpeg, но как разобраться какую команду дать для получения снимка не знаю. Подскажите куда копать
Вот например, получаю не один кадр, а видео 15 секунд

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

 $video = "/var/www/files/out.mp4";
    exec("ffmpeg -y -i http://192.168.0.187:8081 -t 5 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=640:h=480:force_original_aspect_ratio=decrease -r 15 /var/www/files/out.mp4");
    include_once(DIR_MODULES . 'telegram/telegram.class.php');
    $telegram_module = new telegram();
    $telegram_module->sendVideoToAdmin($video,"Входная дверь"); 
Connect ---- Telegram
ЮMoney для благодарностей за помощь: 410012076838296 или нажмите кнопку "Спасибо"!!! :D
zhulen820
Сообщения: 4
Зарегистрирован: Ср май 24, 2017 10:29 pm
Благодарил (а): 1 раз
Поблагодарили: 0

Re: Умная входная дверь!

Сообщение zhulen820 » Вс фев 18, 2018 1:20 pm

А вот порт у Вашей камеры 8081 это порт чего: вебки, rtsp или вывод медиа(не знаю как он правильно называется)???
lihodeev
Сообщения: 148
Зарегистрирован: Ср июл 25, 2018 10:37 pm
Благодарил (а): 43 раза
Поблагодарили: 8 раз

Re: Умная входная дверь!

Сообщение lihodeev » Ср фев 17, 2021 1:19 pm

Имею такой датчик , логика его работы не очень понятна. При сработке присылает код открытой двери, через примерно 5 секунд присылает код исходного(зарытой двери), то есть факт забытой открытой двери установить невозможно? Это особенность или я чего то не понял? Может был у кого то опыт работы с подобным девайсом?
Вложения
3c7d873a-c6de-4877-b04e-aac7231f8389.jpg
3c7d873a-c6de-4877-b04e-aac7231f8389.jpg (16.16 КБ) 2110 просмотров
Raspberry 3, AMS 16, arduinka 2560, Orange pi Zero, Broadlink RM3, Xiaomi Mi Robot Vacuum SKV4000GL
Ответить