Съдържание:

Получавайте сигнали за имейл от вашата система за домашна сигурност с помощта на Arduino: 3 стъпки
Получавайте сигнали за имейл от вашата система за домашна сигурност с помощта на Arduino: 3 стъпки

Видео: Получавайте сигнали за имейл от вашата система за домашна сигурност с помощта на Arduino: 3 стъпки

Видео: Получавайте сигнали за имейл от вашата система за домашна сигурност с помощта на Arduino: 3 стъпки
Видео: Aqara H1 EU и Aqara E1 EU глобальные версии zigbee выключателя и шлюза, интеграция в Home Assistant 2024, Юли
Anonim
Получавайте сигнали за имейл от вашата система за домашна сигурност с помощта на Arduino
Получавайте сигнали за имейл от вашата система за домашна сигурност с помощта на Arduino

Използвайки Arduino, ние лесно можем да модифицираме основната функционалност на имейла на почти всяка съществуваща инсталация на система за сигурност. Това е особено подходящо за по -стари системи, които най -вероятно отдавна са изключени от услугата за мониторинг и в противен случай биха имали ограничена полезност. Това НЕ замества услуга за наблюдение.

Има търговски продукти, като envisalink, които добавят допълнителни комуникационни и контролни функции, но те не са евтини.

Този проект може да бъде завършен за под $ 10.

От какво имаш нужда:

  • Arduino - за предпочитане Uno или Mega
  • W5100 Ethernet щит
  • Система за сигурност - Използваната тук е DSC Power 832 PC5010, но почти всеки модел с програмируем щифт (или всеки извод, който има измерима промяна в състоянието) може да се използва.
  • Ръководство за инсталиране и работни листове за програмиране - ще ви е необходим и инсталационният код, за да направите необходимите промени.
  • Дължина на жица с твърда жила, подходяща за свързване към щифтове за заглавки на Arduino.
  • 10k резистор за изтегляне на входния щифт на arduino към земята.
  • 1.5k резистор за ограничаване на тока към LED страната на оптрона. Стойността се основава на входното напрежение и максималния ток на оптрона.
  • Оптрон - Използвах FOD817, но това е много проста схема с широки изисквания, така че има буквално стотици други, които ще работят с отдалечени подобни спецификации.
  • Ethernet кабел.

Стъпка 1: Програмирайте системата за сигурност

Програмирайте системата за сигурност
Програмирайте системата за сигурност

Предупреждение:

  • Достъпът до защитния панел или извършването на промени в конфигурацията за инсталиране може да предизвика предупреждение за подправяне, ако в момента сте абонирани за услуга за наблюдение.
  • Също така не забравяйте да следите всяка направена от вас промяна, за да можете да я върнете по -късно, ако е необходимо.

Това, което се опитваме да постигнем, е да прочетем промяна в състоянието от системата при задействане на алармата. Повечето системи имат програмируем изходен щифт, който можем да използваме за сигнализиране на Arduino. Възможно е също така да се използва сигналът от сирената (без да се налага да се правят промени в системата), но ще бъдат необходими допълнителни схеми и модификация на кода на Arduino - не отидох по този път, защото основната ми цел беше да разреша проблема код, така че така или иначе ще променя конфигурацията.

Как точно да го програмирате се различава между моделите, но основната концепция е една и съща - вижте инструкциите за инсталиране на вашата система за подробности. В системата DSC използвам:

  • Зададох PGM1 щифт да се активира при задействане на алармата. Раздел [009], Вариант [01].
  • В тази система вие също задавате атрибутите за това как и при какви условия функционира щифтът - Раздел [141]:

    • Задайте атрибут 3 на ON, така че щифтът да е нормално отворен и да се превключва на земята, когато алармата е активирана. Винаги внимавайте входните щифтове на Arduino да не достигат повече от 5v (някои са само 3.3v толерантни).
    • Всички други атрибути са зададени на OFF.

Повечето системи за сигурност имат вграден модем, предназначен да комуникира предимно с централна станция за наблюдение през телефонни линии. Ако те не получават постоянно потвърждение, че изпратените данни са получени, ще се покаже код на проблем. Някои могат да бъдат настроени да изпращат пейджърни съобщения или да се обаждат на лична линия, без системата да търси отговор (като по този начин не показва код за неизправност), така че ако вашият го направи и имате стационарен телефон, можете да го програмирате да се обажда на телефона ви) в допълнение към изпращане на имейл в събитие.

Ако не използвате услуга за наблюдение и/или вашата система не може да бъде програмирана да извиква обикновен телефонен номер, без да изпраща код за неизправност, деактивирайте комуникатора и монитора на телефонната линия (tlm) в конфигурацията.

Стъпка 2: Програмирайте Arduino

Програма Arduino
Програма Arduino

Първо трябва да се регистрираме за услуга, от която да изпращаме имейла си.

Услугата, която използвах, е smtp2go, която е безплатна и работи с Arduino - изходният код, използван тук, се основава на кода за настройка от техния сайт.

www.smtp2go.com/

След като се регистрирате, трябва base64 да кодира потребителското име и паролата (намерени в „Настройки“> „Потребители“), за да може да се използва в скицата.

www.base64encode.org/

Програмен код:

github.com/hzmeister/arduino_alarm_email

Конфигурирайте разделите с // коментари към вашите изисквания.

Качете в Arduino.

Актуализация:

имейлите на smtp2go в крайна сметка влизат в папката за спам след известно време (дори ако не сте ги настроили). Опитах temboo, който беше по -надежден (тъй като използва gmail), но профилите изтичат след месец, така че това също не е жизнеспособна опция. Включих кода за изпращане от gmail с temboo с помощта на w5100 щит, ако някой се нуждае от него (кодът им изисква да използвате прекратения и скъп юн).

Тази версия използва temboo gmailv2, който удостоверява, използвайки по -надеждния OAuth с маркер за опресняване, за разлика от паролата за приложение, използвана в gmailv1.

Източник:

github.com/hzmeister/temboo-gmailv2

В крайна сметка се спрях да използвам моя имейл, предоставен от isp, който има отворен порт 25. Можете да използвате всеки smtp имейл сървър/порт, стига да не изисква връзката да бъде криптирана (тъй като w5100 не я поддържа). Ползата от използването на isp при условие, че една е, че Google не го маркира като спам. Кодът arduino е почти същият като при smtp2go, но с няколко малки промени/актуализации.

Източник:

github.com/hzmeister/arduino_alarm_emailV2

Стъпка 3: Инсталирайте хардуер и тествайте

Инсталирайте хардуер и тествайте
Инсталирайте хардуер и тествайте
Инсталирайте хардуер и тествайте
Инсталирайте хардуер и тествайте

Инсталирайте щита w5100 върху Arduino и го монтирайте в кутията. Велкро лентата работи добре, тъй като е непроводима и се отстранява.

Използвах фотодвойка, за да изолирам 13.7v pgm1 сигнала от 5v arduino входа и земята. Това е верига "неинвертиращ оптрон".

Когато алармата е активирана, pgm1 превключва от отворено към земя, завършвайки веригата.

Тествайте системата.

Използвайте серийния монитор в Arduino IDE, за да видите състоянието на изхода.

Проверете папката със спам, ако серийният монитор показва, че имейлът е изпратен успешно, но не го получавате във входящата си поща.

Препоръчано: