Alarm z existujících PIR senzorů v chytrém domě

Alarm z existujících PIR senzorů v chytrém domě

V chytrém domě, kde PIR čidla neslouží jenom ke spínání světel při pohybu, je možné tyto čidla vyžít k zjištění přítomnosti osob v dané místnosti. Na těchto informacích se dá postavit poměrně spolehlivý domácí ne-certifikovaný zabezpečovací systém. V tomto postupu naleznete logiku jakým způsobem to může fungovat v softwaru OpenHAB 3 na našem demo příkladě chytrého domu.

Hardware

PIR senzor pohybu HC-SR501

Pi-Home - pokud nemáte, viz sekci Jak na to

Software

OpenHAB 3

Aplikace

Využijeme existující PIR čidla SP111 - SP241, kterých položky "Items" jsme si založili v tutoriálu.

Založíme si ještě dvě nové Items:

Alarm - slouží k nastavení alarmu a druhu (Plné zabezpečení, noční (zahrada+spodní patro), jenom zahrada, jenom spodní patro.

V Add Metadata -> State Description nastavte například tyto stavy (Options):

0=None
1=Full
2=Night
3=Garden

Panic - spuštění poplachu např. cizím pohybem (konkrétní popis ve které místnosti k alarmu došlo) nebo například upozornění na kouř, vytopení atd. dle dalších senzorů

V Add Metadata -> State Description nastavte tyto Options:

0=None
1=Burglar 111
2=Burglar 131
3=Burglar 141
4=Burglar 151
5=Burglar 152
6=Burglar 201
7=Burglar 211
8=Burglar 221
9=Burglar 231
10=Burglar 241

Logika:

Zbývají nam nastavit pravidlá - Rules. Námi zvolená logika je: Pokud zaznamená specifický PIR senzor pohyb a nastavení Alarm není 0 (None), ale je například Night anebo Full, aktivuj položku Panic a přiřaď ji stav dle označení PIR. Další pravidlo hlídá položu Panic. Pokud se změní na nenulovou hodnotu a Alarm není 0 (None) odešle email dle typu alarmu (konkrétní PIR které vyvolalo událost).

Příklad pravidla pro PIR, v tomto případě SP102 což je senzor na chodbě v přízemí a má posílat alarmy pokud je nastaveno Full nebo Night. Přidejte nové pravidlo a v záložce záložka Code vložte:

configuration: {}
triggers:
  - id: "1"
    configuration:
      itemName: SP102
      state: ON
    type: core.ItemStateChangeTrigger
conditions: []
actions:
  - inputs: {}
    id: "3"
    configuration:
      type: application/vnd.openhab.dsl.rule
      script: |-2
         if(Alarm.state == 1 || Alarm.state == 2){
           sendCommand(Panic, 2)
           }
    type: script.ScriptAction

Příklad pravidla pro Panic (také záložka Code):

configuration: {}
triggers:
  - id: "1"
    configuration:
      itemName: Panic
    type: core.ItemStateUpdateTrigger
conditions:
  - inputs: {}
    id: "2"
    configuration:
      itemName: Alarm
      state: "0"
      operator: "!="
    type: core.ItemStateCondition
actions:
  - inputs: {}
    id: "3"
    configuration:
      type: application/vnd.openhab.dsl.rule
      script: |-
        val mailActions = getActions("mail","mail:smtp:mailserver1")
        if(Panic.state == 1){    
          mailActions.sendHtmlMail("vas@email.com", "Alarm Hall", "")
                 }
        if(Panic.state == 2){    
          mailActions.sendHtmlMail("vas@email.com", "Alarm Office", "")
                 }
        if(Panic.state == 3){    
          mailActions.sendHtmlMail("vas@email.com", "Alarm Technical", "")
                 }
        if(Panic.state == 4){    
          mailActions.sendHtmlMail("vas@email.com", "Alarm Living Room", "")
                 }
        if(Panic.state == 5){    
          mailActions.sendHtmlMail("vas@email.com", "Alarm Kitchen", "")
                 }
        if(Panic.state == 6){    
          mailActions.sendHtmlMail("vas@email.com", "Alarm Stairs", "")
                 }
        if(Panic.state == 7){    
          mailActions.sendHtmlMail("vas@email.com", "Alarm Bathroom", "")
                 }
        if(Panic.state == 8){    
          mailActions.sendHtmlMail("vas@email.com", "Alarm Guest Room", "")
                 }
        if(Panic.state == 9){    
          mailActions.sendHtmlMail("vas@email.com", "Alarm Bedroom", "")
                 }
        if(Panic.state == 10){    
          mailActions.sendHtmlMail("vas@email.com", "Alarm kids Room", "")
                 }
    type: script.ScriptAction
  - inputs: {}
    id: "4"
    configuration:
      type: application/vnd.openhab.dsl.rule
      script: >2
           val telegramAction = getActions("telegram","telegram:telegramBot:YOURTELEGRAMBOT")
        if(Panic.state == 1){    
          telegramAction.sendTelegram("Alarm zádveří")
                 }
        if(Panic.state == 2){    
          telegramAction.sendTelegram("Alarm chodba")
                 }
        if(Panic.state == 3){    
          telegramAction.sendTelegram("Alarm hosťovská")
                 }
        if(Panic.state == 4){    
          telegramAction.sendTelegram("Alarm obývací pokoj")
                 }
        if(Panic.state == 5){    
          telegramAction.sendTelegram("Alarm spíž")
                 }
        if(Panic.state == 6){    
          telegramAction.sendTelegram("Alarm toaleta")
                 }
        if(Panic.state == 7){    
          telegramAction.sendTelegram("Alarm technická")
                 }
        if(Panic.state == 8){    
          telegramAction.sendTelegram("Alarm hala")
                 }
        if(Panic.state == 9){    
         telegramAction.sendTelegram("Alarm šatna")
                 }
    type: script.ScriptAction

Nyní stačí zkopírovat a upravit pravidlo pro SP102 pro všechny další PIR a vyzkoušet funkcionalitu. Nastavení emailu naleznete v návodu zde.

Doporučuji se také podívat na notifikace na Telegram přímo z vašeho OpenHAB zde.

Hodnotit článek:

Zatím nehodnoceno

Přidat komentář:

Přidat komentář

Nejlépe hodnocené příspěvky

PiHome - Chytry dum mereni spotreby elektriny
Měření spotřeby domu po fázíchHodnocení: 
0%

V tomto příspěvku ukážeme jak lze řešit měření aktuální spotřeby po fázích v rodinném domě. Lze použít různé komerční zařízení, bohužel nativní MQTT zařízení jsme nenašli. V našem případě jsme tedy zvolili kvůli existující síti Z-Wave produkt Aeotec Home Energy Meter Gen5.

DIY Alarm
Alarm z existujících PIR senzorů v chytrém doměHodnocení: 
0%

V chytrém domě, kde PIR čidla neslouží jenom ke spínání světel při pohybu, je možné tyto čidla vyžít k zjištění přítomnosti osob v dané místnosti. Na těchto informacích se dá postavit poměrně spolehlivý domácí necertifikovaný zabezpečovací systém. V tomto postupu naleznete logiku jakým způsobem to může fungovat v softwaru OpenHAB 3 na našem demo příkladě chytrého domu.

Arduino PIR - možnost deaktivace, časovač a denní doba
Pokročilé nastavení PIR čidel pro řízení světel v OpenHABHodnocení: 
100%

PIR čidlo HC-SR501 obsahuje mechanické nastavení dosahu záběru a délky sepnutí. V inteligentním domě ale chceme mít možnost variabilně parametry PIR měnit. Ukážeme jak PIR čidlo nastavit tak, aby šlo v aplikaci nebo vypínačem deaktivovat a volitelně nastavovat délku svícení.

Centrální tablet pro chytrý dům
Centrální tablet pro ovládání chytrého domuHodnocení: 
80%

Centrální tablet nebo starší smartphone se perfektně hodí jako centrální ukazatel informací o stavu v domě a také k jeho ovládání. Zpravidla nahrazuje videovrátného a můžete si na něm pustit například oblíbenou hudbu při vaření nebo číst recepty. V článku popíšeme funkční příklad takového "wall" tabletu a jeho nastavení v tzv. kiosk módu, aby nesvítíl po nocích a reagoval jenom když je někdo poblíž.

Persistent linux live USB
Vytvoření persistent live USB LinuxuHodnocení: 
0%

Většina distribucí linuxu existuje v "live" provedení, tz. že po rozbalení jej můžete používat přímo z flash disku nebe externiho SSD. Po uložení práce se vám ale klasická live distribuce znovu uvede to výchozího nastavení. Toto řeší tzv. persistent live instalace. Ukážeme si jak jej vytvořit na Linuxu nebo Windows.

Jabltron propojení s chytrou domácností
Propojení Jablotronu s OpenHABHodnocení: 
0%

V tomto článku si představíme užitečný "binding" pro OpenHAB hlavně v tuzemských instalacích kde je hodně zastoupen alarm od firmy Jablotron. Propojení alarmu s chytrou domácností nám umožní reagovat na stav zakódování/odkodování domu. Typicky při zákodování domu zhasnout všechna světla, zavřít přívod vody, vypnout cirkulaci TUV, vypnout spínáne zásuvky a cokoliv dalšího co nepotřebujete v provozu nejste-li doma.

Thunderbird vs Exchange email and calendar
Thunderbird vs MS ExchangeHodnocení: 
0%

V tomto článku si ukážeme jak provozovat firemní poštu a kalendář postavenou na MS Exchange 20xx s Thunderbirdem na jakḱoliv distribuci Linuxu. Používám toto řešení k spokojenosti přes 8 let od verze Exchange 2013 - 2016 - 2019.

Konfigurace OpenVPN na MikroTiku
OpenVPN na routerech MikroTikHodnocení: 
90%

Máte-li doma smart-home, NAS atp., je dobré myslet na bezpečný přístup do vaší sítě zvenku. Zde bych aktuálně volil komerční router jako Turris, nebo levnější variantu routerů MikroTik. V tomto článku ukážeme postup, jak si zřídit zabezpečený přístup do domácí sítě z venku jak z počítače tak z mobilu pomocí OpenVPN na routerech MikroTik.

Nastavení OpenVPN v iOS
Nastavení OpenVPN připojení v iOSHodnocení: 
100%

V tomto článku najdete podrobný návod, jak se připojit k OpenVPN v iOS.

Nastavení OpenVPN na Androidu
Nastavení OpenVPN připojení v AndroiduHodnocení: 
100%

V tomto článku najdete podrobný návod, jak se připojit k OpenVPN na Androidu.