IHC® Captain – fjernbetjening, automatisering og overvågning



http://jemi.dk/ihc/

Introduktion

IHC® Captain er et webbaseret “værktøj” der kan overvåge en IHC® styreenhed (ofte kaldet controlleren) og reagere på ændringer i IHC installationen. Er du ikke bekendt med IHC® systemerne kan du læse mere på lk.dk.

Princippet bag er basalt set at man installere IHC® Captain på en computer af en art (helst en Raspberry Pi) også kan softwaren forbinde med IHC styreenheden (controlleren) og udlæse alle informationerne i denne. Når dette er gjort kan man via en hjemmeside vælge en ressource/indgang/udgang som skal overvåges og sætte et simpelt regelsæt op som skal opfyldes for at udføre en handling, som f.eks. at stoppe musik afspilning.

Fra og med version 0.9990 er der også kommet mulighed for at benytte IHC Captain som fjernbetjening af IHC installationen – så man kan styre hele IHC installationen direkte fra IHC Captain på computeren/mobil – og dermed slukke/tænde lys/ventilation med mere.

Et eksempel

Hvis man glemmer at lukke garagen som er koblet til ens IHC installation kan man få en notifikation på sin mobiltelefon.

Et andet eksempel

Man har fået lavet en knap til at slukke alt lyset i hele huset – men man har samtidig også installeret SONOS® musik system. Så kan man lave sådan at når funktionen til at slukke alt lyset i huset aktiveres så stopper musikken også.

Historien bag…

Det hele startede som et hurtigt forsøg for at se om man kunne få en controller der ikke var af typen Visual til at snakke med “internettet” – det var relativt nemt også, opstod der lidt sjov om man kunne lave en måde at få en computer til at reagere på ændringer/input/outputs fra controlleren, for at på den måde bryde lidt ud af begrænsningerne som der er i LKs systemer.

Lidt efter lidt opstod det aktuelle IHC® Captain software som er noget webkode (PHP) som er bygget omkring en Raspberry Pi.

Pt. understøtter systemet overvågning af næsten alle ressourcer på controlleren og kan udføre en række funktioner

Funktioner

  • Fjernbejtjening af IHC installation
  • Tænd og sluk af lys/kontakter
  • Sæt temperatur
  • Sæt lysniveau
  • Generelt alt hvad der er muligt via IHC installation
  • Sonos styring
    • Stop afspilning
    • Start afspilning
    • Start/pause afspilling
    • Pause afspilning
    • Skip fremad
    • Skip bagud
    • Skrup op for lyden
    • Skrup ned for lyden
    • Sluk for lyden
    • Tænd for lyden
    • Sluk/Tænd for lyden
    • Afspil favorit
    • Afspil playlist
  • HEOS styring – skal tilkobles via kontrolpanel.
    • Stop afspilning
    • Start afspilning
    • Start/pause afspilling
    • Pause afspilning
    • Skip fremad
    • Skip bagud
    • Skrup op for lyden
    • Skrup ned for lyden
    • Sluk for lyden
    • Tænd for lyden
    • Sluk/Tænd for lyden
  • Phillips HUE styring – skal tilkobles via kontrolpanel
    • Styring af rum/grupper
    • Styring af lamper
    • Tænd, Sluk, Kip/Skift (også pr. gruppe)
    • Sæt farve
    • Sæt lysstyrke
    • Sæt overgangstid
    • Alarm
    • Effekt modul
    • Styring af lysstyrke(lysdæmper) med special IHC funktionsblok
    • Frekald scenarie
  • Indikation af om et input/output er IHC Wireless
  • Batteri og signal status vises ved wireless enheder
  • Log/Gem værdi til disk eller website – temperaturer, fugtighed etc kan så registeres og gemmes
  • Kør lokal kommando
  • Send e-mail
  • Pushover notifikation – se mere på pushover.net

  • Video gennemgang af installation/mulighederne/funktioner

     

    Kom igang!

    Alt nedenstående tager udgangspunkt i en hvis grad af kendskab til linux/ubuntu etc. – og antager at du benytter en Raspberry Pi til at installere på – læs også gerne http://www.raspberrypi.org/help/quick-start-guide/.

    Ny installation

    Der findes 2 måder at installare IHC Captain på – den nemmeste er vha. SD kort installation, alternativt kan der benyttes Automatisk installation.

    Læs om de forskellige installationstyper herunder – men husk kun at følge en enkelt vejledning og det anbefales at følge SD kort installation.

    Helt klart den nemmeste måde at installere på hvis du har en “ren” Raspberry PI der skal installeres.

    1. Hent SD kort filen her – bemærk filen er pakket med ZIP og fylder 507 MB. Udpakket fylder filen ca. 2 GB
    2. Pak filen ud
    3. Følg guiden for hvordan du installere SD korter herunder – vælg ud fra dit operativ system:
    4. Benytter du Windows kan du alternativt benytte Winflash Tool som er super nemt at bruge – husk at markere “Resize the last EXT2FS partion….” – se evt. videoguiden herunder
    5. Når du har lavet SD kortet skal du isætte SD kortet i din Raspberry Pi, forbinde denne med netværk og strøm
    6. Herefter åbner du blot http://jemi.dk/findmypi i din browser.
    7. Herfra kan du tilgå IHC Captain ved at trykke på “Åbn” knappen ud for din Raspberry PI og følg vejledningen på skærmen / læs Manualenfindmypi

    Manual

    Opstart

    Ved første opstart åbnes der en login dialog som skal udfyldes med brugernavn og adgangskode til IHC® controlleren. Det anbefales at lave en specifik bruger til dette via IHC administrator softwaren. Controllerens IP adresse skal også udfyldes.

    Bruger du andre porte end standard IHC opsætning kan du angive webport bagefter controllerens ip adresse i formattet: xxx.xxx.xxx.xxx:portnummer (f.eks. 192.168.1.20:8123).

    Har du din Raspberry PI til at sidde så den kan tilgås ude fra offentligt netværk anbefales det at du IKKE fjerner afkrydsningen i “Login altid påkrævet” – det anbefales også at lave koden om på din Raspberry PI hvis den står på et åbent netværk – raspberrypi.org

     

    Hvis du indtaster de korrekte oplysninger og det hele virker burde der nu komme en oversigt op med de forskellige lokationer i venstre side (i højre side som slidein hvis du er på mobil/tablet). Man skifter til de forskellige lokationer ved at klikke på dem, derved kommer ressourcerne på lokationen frem.

    Som standard starter IHC Captain op i fjernbetjening modus – der kan skiftes til at lave “handlinger” ved at trykke på blyant ikonet i øverste højre hjørne

    fuldvisning 

    Generelt kan man start, stoppe og genstarte overvågningen af controlleren via  knappen i nederste højre hjørne.

     skifter til handlingsredigering.

     frakobler handlingsredigering.

     giver adgang til: Opsætning, fuldskærmsvisning, Genstart af Raspberry Pi, Sluk af Raspberry Pi og Log af.

     knappen sortere rækkefølgen af de forskellige lokationer.

    overblik 

    Hver ressource har en knap med teksten Opret (Ret hvis der tidligere er lavet en regel) – ved at klikke på Opret knappen kan man sætte en regel op for ressourcen.

    regler

    Man kan sætte hvornår reglen skal udføres, hvilken handling reglen skal udføre og sætte eventuelle parameter for handlingen. Derudover kan handlingen også testes med “Test” knappen som gør det muligt at kontrollere at f.eks. E-mail eller notifikationer afsendes korrekt.

    Vigtigt! Du skal altid genstarte IHC Captain vha. knappen i nederste højre hjørne (læs mere) når du har lavet om i reglerne.

    BEMÆRK: for at benytte Heos styring skal du tilkoble Heos module via kontrolpanelet

    hue styring

    Til at styre Sonos/Heos enhederne er der lavet en specifik IHC funktionsblok som gør det nemmere at styre det vha. IHC knapper. Sonos/HEOS styring filen kan hentes her.

    For at bruge funktionsblokken skal du pakke den ud og ligge den ind i mappen FunctionBlocks hvor dit LK IHC Visual program ligger – typisk er det C:Program Files (x86)LK IHC ControlIHC VisualFunctionBlocks – put evt. filen i mappen 07. Mine egne fb

    Nu skal man inde i LK IHC Visual programmet vælge det rum (i højre side, “Funktioner”-siden) du ønsker at styre Sonos/Heos fra, og lave et højreklik og vælge FunktionsBlokke og vælge Sonos Styring

    sonos styring

    Når dette er gjort skal man have forbundet et “input” (f.eks. venstre tanget på et tryk) fra venstre side (Installation) af LK IHC Visual til "Play/Volume op/Skip Back i Sonos/Heos styring blokken i højre side(Funktioner).

    Derudover skal du også have forbundet et andet “input” (f.eks. højre tanget på et tryk) fra venstre side (Installation) af LK Visual til Stop/Volume ned/Skip fwd i Sonos/Heos styring blokken i højre side(Funktioner)

    Når det er gjort og programmet er lagt på IHC controlleren så skal man i IHC Captain bare gøre som i videoen – altså for hver Udgang under Output (i Sonos/Heos funktionsblokken, Sonos/Heos styring) tilkoble den relevante Sonos/Heos funktion – så under Output->Play sætter man den til at køre Sonos/Heos modulet hvis værdien er sand, med “Start afspilning” i hvad nu rum den skal gøre det.

    Herefter fungere styringen sådan at der er 3 typer tryk alt efter varigheden af trykket på knapperne

    1. Hvis du holder knappen inde i mere end 1.5 sekund så starter/stopper afspilling på de to inputs
    2. Hvis du holder inde i mere end 0.5 sekund men under 1.5 sekund springer Sonos/Heos afspilleren et nummer frem/tilbage i playlisten
    3. Hvis du laver et kort tryk (under 0.5 sekund) så så skruer du ned/op

    Se Sonos opsætnings videoerne herunder

    Vigtigt! Du skal altid genstarte IHC Captain vha. knappen i nederste højre hjørne (læs mere) når du har lavet om i reglerne.



    For at benytte Phillips Hue styring skal modulet først tilkobles vha. kontrolpanelet.

    hue styring

    Bemærk at første gang skal IHC captain forbindes med Phillips Hue bridge – følg anvisninger på skærmen i IHC Captain

    hue styring

    Til at styre HUE lys er der lavet en specifik IHC funktionsblok som gør det nemmere at styre det vha. IHC knapper til dæmpning. HUE styrings filen kan hentes her.

    For at bruge funktionsblokken skal du pakke den ud og ligge den ind i mappen FunctionBlocks hvor dit LK IHC Visual program ligger – typisk er det C:Program Files (x86)LK IHC ControlIHC VisualFunctionBlocks – put evt. filen i mappen 07. Mine egne fb

    Nu skal man inde i LK IHC Visual programmet vælge det rum (i højre side, “Funktioner”-siden) du ønsker at styre Sonos/Heos fra, og lave et højreklik og vælge FunktionsBlokke og vælge (07. Mine egne fb >) HUE styring/dæmper

    hue styring

    Når dette er gjort skal man have forbundet et “input” (f.eks. venstre tanget på et tryk) fra venstre side (Installation) af LK IHC Visual til Input->Indgang i “HUE styring/dæmper”, i højre side(Funktioner).

    hue styring

    Når dette er gjort skal man gemme og overføre sit projekt til IHC Controlleren

    Herefter skal resten af opsætningen laves i IHC Captain så det ren faktisk kan styre noget. Først skal IHC Captain sættes i handlingsredigering mode

    Så vælger man rummet hvor man har anbragt HUE styring/dæmper funktionsblokken, i eksemplet er det soveværelset. Så ruller man ned og åbner “Funktioner” sektionen ved at klikke på overskriften

    hue styring

    Nu skal HUE lamperne forbindes knapperne – Tryk “Opret” ud for “FadeOp” – og sæt “Hvis input værdien er” til at være “forskellig fra..”, vælg “Brugerdefineret” og indtast 0. Vælg “Phillips Hue” i “så kør handlingsmodul”

    hue styring

    Under fanen “Phillips Hue” skal du vælge de rum eller pærer du ønsker at styre – i eksemplet herunder er valgt “Pære 1”. Vælg “Tænd” i “Tænd/Sluk”. Resten skal stå som standard.

    hue styring

    Vælg nu fanen “Avanceret” og i “Lysstyrke justering” skriver du “40” – og tryk “Gem”

    hue styring

    Gør nu det samme for “FadeNed” som du lige har gjort for “FadeOp” men under avanceret fanen skriver du: -40 ved “Lysstyrke justering” også “Gem”

    hue styring

    Så trykker du “Opret” ud for “Sluk/tænd” – her sætter du reglen til at input værdien skal være “sand” og den skal køre “Phillips Hue”

    hue styring

    Under fanen “Phillips Hue” skal du vælge de rum eller pærer du ønsker at styre – i eksemplet herunder er valgt “Pære 1”. Vælg “Kip/SKift” i “Tænd/Sluk”. Resten skal stå som standard – tryk “Gem”

    hue styring

    Nu skal du blot genstarte IHC Captain vha. knappen i nederste højre hjørne. Læs mere

    Du har nu følgende funktioner på et tryk

    1. Tryk og slip for tænd/sluk
    2. Tryk og hold inde og lyset tænder og skrues op for i lysstyrke…
    3. … slip og tryk hurtigt igen, og hold inde – så skrues derned for lysstyrken.

    Du skifte “retning” på lysstyrke dæmpning ved at slippe og trykke hurtigt igen

    Videoguide er på vej…



    Det er muligt at modtage notifikation direkte på smartphone eller tablet vha. pushover.net

    Se notifikation opsætnings videoen herunder

    Vigtigt! Du skal altid genstarte IHC Captain vha. knappen i nederste højre hjørne (læs mere) når du har lavet om i reglerne.



    Det er muligt at gemme dataene fra IHC controlleren enten til lokal disk eller internettet.


    Se hvordan der gemmes til lokal disk herunder

    Vigtigt! Du skal altid genstarte IHC Captain vha. knappen i nederste højre hjørne (læs mere) når du har lavet om i reglerne.



    Se hvordan der gemmes til internettet herunder

     

    Gemme data til data.sparkfun.com

    1. Dette eksempel tager udgangspunkt i opsætning af en pir sensor log – altså hver gang der registreres bevægelse gemmes der data i datasparks “sky” – bemærk der kan “kun” gemmes 50mb data og når dette maximum opnås roteres dataene således at de ældste gemte data slettes når nyt indsættes
    2. Start med at oprette en stream på https://data.sparkfun.com/streams/make – læs http://phant.io/docs/management/create/ for en forklaring af felterne.
    3. Beslut hvilke felter du skal gemme i din “stream” – skriv dem i fields feltet, adskilt med komma. Bemærk der vil automatisk blive indsat et tidspunkt når dataene gemmes. I vores eksempel laver vi dog to felter: “lokaltid,bevaegelse”. Som udgangspunkt behøver du altså ikke at logge tiden da systemet selv gemmer et timestamp men det kan være “forvirrende” at oversætte til danske tidspunkter 🙂 
      1
    4. Når du trykker “Save” kommer der en række “koder” frem som du skal gemme – start med at få nøglerne sendt via e-mail – benyt “Send yourself a copy of your keys” – så har du en backup til senere. 
      1
    5. I en ny browser fane/tab åbner du nu “IHC Captain” og finder det input/output du vil gemme data fra.
    6. I vores tilfælde ønsker vi at gemme når PIR aktiveres, så derfor sættes “Hvis input værdien er” til at være “sand”. Hvis du altid bare ønsker at gemme dataen ved ændringer skal du sætte “Hvis input værdien er” til at være “forskellig fra…” også vælge “den sidste aflæste værdi”. 
      1
    7. Vælg “Gem til URL” under “så kør modul”
    8. Under fanen “Gem til URL” skal du udfylde følgende:
      • URL: http://data.sparkfun.com/input/[publicKey] – hvor du indsætter “Public Key” fra punkt 4. istedet for “[public key]” – i vores eksempel er det så: 
      • Parametere: private_key=[privateKey]&bevaegelse=[newval]&lokaltid=[date][time] – erstat selv [privateKey] med din privatekey fra punkt 4. [newval] bliver automatisk erstattet med værdien fra aflæsningen, i vores eksempel vil den så altid indholde “true”/”sand”. [date] og [time] bliver automatisk erstattet med lokal dato og tid.
      • Type: get
      • Dataformat: form/get


      1

    9. Tryk nu “Test” og indtast en “værdi” du ønsker at gemme – f.eks. 1 – der skulle gerne komme en “cURL Weblog HTTP response: 200” frem. Kommer der noget andet frem så check din “privateKey” og alle punkter i 8. 
      1
    10. Besøg nu “Public URL” som kom frem i punkt 4 – i vores eksempel her: 

      – her kan du se dataene og hente dem

    11. Tryk nu “Luk test” og derefter “Gem” så skulle dataene altid blive gemt
    12. Du kan slette alt det gemte data vha. https://data.sparkfun.com/streams/clear – du skal bruge nøglerne fra 4 – og hvis du helt ønsker at slette alt dit data er det her: https://data.sparkfun.com/streams/delete

    Bonus læs evt. http://phant.io/graphing/google/2014/07/07/graphing-data/ for at lave fine realtime grafer med google – kræver lidt nørderi.

    Eller besøg mit eksperiment her som burde kunne lave grafer:  http://jemi.dk/ihc/sparkfungraph.php

    Der er flere måde at fejlsøge hvis der er problemer – prøv at benyt nedenstående som burde give mere information som kan bruges i fejlsøgning – skriv evt. inde på http://www.ihc-user.dk/forum/forums/forum/39-ihc-captain/ med hvad du oplever af problemer.

    Prøv først at tilføje #debug til URL’en – så det bliver til: (DINRASPBERRY PI IP)/index.php#debug – det giver lidt mere forklaring på hvad der sker.

    Du kan også overvåge selv overvågningen – dette gøres ved at logge ind på din Raspberry Pi og køre:cd /opt/ihccaptain/tools/ og derefter ./showmonitor.sh – dermed forsøger den konstant af forbinde med den “proces” som kører overvågningen.

    Versioner

    Version 1.01

    • Phillips HUE styring – HUSK HUSK: at tilkoble modulet under kontrolpanel!
    • Ny IHC funktionsblok til fader/dæmpning op/ned primært tænkt til Phillips Hue – Hent her: jemi.dk/ihc/files/HueStyring.zip
    • HUE og HEOS moduler er nu standard frakoblet da det er begrænset hvor mange der har disse og de tunge at starte
    • Nyt Phillips HUE modul til styring af lys
    • Styring af rum/grupper
    • Styring af lamper
    • Tænd, Sluk, Kip/Skift (også pr. gruppe)
    • Sæt farve
    • Sæt lysstyrke
    • Sæt overgangstid
    • Alarm
    • Effekt modul
    • Styring af lysstyrke(lysdæmper) med special IHC funktionsblok
    • Frekald scenarie
  • Bedre fejlhåndtering af ajax/login fejl
  • Bedre håndtering af login/opstart
  • Forbedret håndtering og visning af IHC ikoner
  • Indikation af om et input/output er IHC Wireless
  • Forbedret håndtering af input dialoger på små skærme og ved “skæve” opløsninger
  • Spring/link imellem tryk/ressourcer
  • Batteri og signal status vises nu ved wireless enheder
  • Mulighed for at “gentage”/Import sidst gemte handling indstillinger – ved masseredigering af f.eks. SONOS styring er det meget nemmere, tidligere kopierede den automatisk medover = forvirring
  • Løst problem med at gemme web indstillinger fra kontrolpanel
  • IHC inputs er nu tilpasset IHC egne max/min regler
  • Ved login “imod” controller vises nu controller information
  • Løst fejl ved volumestyring på Sonos grupper
  • Mange forbedringer ved Sonos styringen
  • Forbedret visning/opdatering af regler i brugerfladen
  • Fremtiden

    • Kombinationsmoduler – så en ændring kan udføre flere moduler: gemme i log + starte SONOS
    • Mulighed for at den automatisk starter igen hvis controlleren genstarter
    • Controller log (lav batteri på wireless) -> skal kunne trigger en “custom” alarm – f.eks. pushover om lav strøm
    • Sende e-mail modul
    • Sonos modul
      • Mulighed for at sætte bestemt input

    Donationer

    mobilepay

    Er du glad for det jeg har brugt lang tid på, så overfør gerne en skilling via mobilepay på 30 92 04 13 eller overfør med PayPal

    Du kan også sende mig elektronik som du gerne vil have mig til at prøve at se om IHC® Captain kan understøtte – send mig en e-mail på ihccaptain@jemi.dk og spørg løs…


    Kontakt

    Du kan altid skrive til mig på ihccaptain@jemi.dk


    Denne side er ikke en del af Schneider Electric Danmark A/S/Lauritz Knudsen/LK og er ikke på nogen måde forbundet med disse. IHC® er muligvis et registeret varemærke tilhørende Schneider Electric Danmark/LK. Eller sagt på engelsk: We are not affiliated, associated, authorized, endorsed by, or in any way officially connected with Schneider Electric Danmark A/S/Lauritz Knudsen/LK, or any of its subsidiaries or its affiliates. The official Schneider Electric Danmark A/S/Lauritz Knudsen/LK web site is available at www.lk.dk. IHC® og LK are registered trademarks of Schneider Electric Danmark A/S/Lauritz Knudsen/LK. 



    Posted in IHC |