Søk i nettsamfunnet
Viser resultater for emneknaggene 'events'.
Fant 5 resultater
-
Hei Jeg har brukt lunchen til å mekke litt på en event, men har savnet en noe fleksibilitet. Jeg har laget følgende event som skal trigge på samme hendelse, men har en forskjell i condition: Finnes det funksjonalitet som gjør at jeg ikke trenger å "bygge så mye", men istedet gjøre: Ikke noe undergang om ikke mulig...men ville bare vært kjekt!
-
Endelig, litt automatikk! For at heimen faktisk skal bli smart, må heimen gjøre som du vil uten at det er du som gjør det. Alt vi har gjort til nå er å legge til rette for fjernstyring, som i "weee, jeg kan styre lyset fra mobilen" (noe som man blir lei av ganske raskt), men HomeSeer har en fantastisk motor for automatikk. Og den skal vi nå benytte oss av. Bli kjent, med begrepet Event Ordet Event er selvfølgelig engelsk, det mest passende norske ordet er vel "hendelse". Jeg bruker ordet "Event" på norsk, akkurat som jeg bruker ordet "Device". Et Event er delt i to: Det har en trigger (med en eller flere conditions) og en eller flere actions. Trigger En trigger er det som setter Eventet i gang. Som i "kjør dette eventet når klokka slår 06:00" eller "kjør dette eventet når lyset i gangen blir skrudd på". Condition En condition (altså "betingelse") hører til en trigger. De begrenser triggeren, som i: "kjør dette eventet når klokka slår 06:00 men bare på en mandag" eller "kjør dette eventet når lyset i gangen ble skrudd på men bare hvis klokken er 17:00 eller senere, det har regnet 3 mm OG ingen har ringt på døra på 4 timer". Action En action (en "handling") er det som faktisk skal skje. F.eks. at man skrur på av eller på et lys, kjører et annet event eller et script. I utgangspunktet ganske enkle verktøy som man, med litt trening, kan bruke på ganske så avanserte måter. Event-oppsett Vi går til View -> Events. Hvis vi ikke har lagt til noen eventer, blir vi bedt om å navngi vårt første Event. betyr selvfølgelig "Legg til". Det kan være legg til et Event til gruppa, en trigger/condition eller en action. kjører Eventet slik det er nå, helt uten å ta hensyn til eventuelle conditions. deaktiverer eller aktiverer et event. sletter et event, en trigger/condition eller en action. kopierer eventet slik det er. utvider eller minimerer alle Events eller conditions. indikerer at du nå kun viser basis-valg, trykk denne for å se: avanserte valg. MERK: Det er en god idé å minimere triggers og actions når man er ferdig med dem, for da får man opp eventuelle feilmeldinger. Hvis et en trigger, condition eller action ikke lar seg minimere, så er det et tegn på at noe er galt eller at linjen ikke er ferdig konfigurert. Vi kan velge en trigger (i den blå linjen, øverst). Her er trigger-kategoriene som kommer med en helt vanlig HS-installasjon: En trigger-kategori har flere tilhørende triggere: For actions er lista lenger: Igjen har Actions flere underalternativer. Hvis man velger "Control a Device" får man opp valg om å velge en device å controllere. Når man har gjort det, blir alle CAPI-verdiene (se del 6) listet opp. ... så hvordan ser et Event ut? I sin enkleste form, kan det se slik ut: Dette leser vi som at kl. 06:00 blir lyset satt til 17%. Organisering Ved siden av Event-navnet, kan man velge en Type hvis man ønsker det. Ved siden av Typen, kan man flytte eventet til en annen gruppe (eller lage en ny). Grunnen til dette er at man skal finne igjen eventene sine. Når man har 5-10 stykker så er det enkelt. Når det er 300 så er det verre. Jeg sorterer forskjellige typer Eventer i forskjellige grupper (jeg bruker ikke "Event Types" så mye). Men det gjør det overraskende fort å finne frem i eventene. Skal du kikke på eventet som styrer lyset i gangen basert på en bevegelsessensor? Kikk i gruppa "Bevegelse". Hva med lyset som går automatisk i ferien? Kikk i gruppa "Automatisk (ferie)". Hva med de trådløse bryterne? "Brytere". Og hvordan får dere beskjed tilbake? "Notifikasjoner". "Referencing Device(s)" er veldig hendig hvis du skal finne eventene som styrer eller blir styrt av en bestemt device. Si at et lys skrur seg på og av når det ikke skal, og du lurer på hvorfor. Da er det bare å velge devicen i Referencing Device(s), så blir Eventene dine filtrert til å kun vise de som har med denne devicen å gjøre. MERK: Hvis du bruker scripts vil disse ikke komme med i filtreringen, det er kun de som har en Device spesifisert i en ren Event trigger, condition eller action. Når du er ferdig med filtreringen er det en god vane å trykke på "Show All" etterpå... Blant de mest brukte: Bevegelsessensor I utgangspunktet er det enkelt. Vi velger bevegelsessensoren som device, og velger CAPI-verdien "Motion" som trigger. I dette eksempelet vil jeg styre lyset på badet i kjelleren. De to nederste linjene er enkle. Den ene skrur lyset PÅ, og den andre skrur lyset AV etter 10 minutter. Så langt er alt vel. Men hva skal vi med "Remove Delayed Device Actions"? Jo, "lyset av etter 10 minutter" blir nettopp det; en "Delayed Action". Disse Delayed Action'ene blir kjørt etter den aktuelle forsinkelsen. Når bevegelsessensoren blir trigget, så blir alle eventuelle slike Actions (som i vårt tilfelle skrur lyset av) fjernet først. Sluttresultatet er at lyset blir værende på så lenge det er bevegelse i rommet, men blir skrudd av etter 10 minutter hvis bevegelsen stopper (for da blir IKKE denne Delayed Actions fjernet). På toalettet i 1. etg er det både en bevegelsessensor og en magnetsensor på døren. Det kan jo selvfølgelig løses med å lage to forskjellige eventer, men siden det er det samme som skal skje uavhengig av trigger, så velger vi heller at Eventet skal ha flere forskjellige triggere. For å få til flere triggere trykker du på den grønne -knappen, men istedenfor "AND IF" til venstre, velger man "OR IF". Dette blir en ny trigger. I tillegg har jeg her noen conditions som gjør at dette Eventet kun kjører når det ikke er natt (dvs. på morgen, dag og kveld). Da jeg skulle lage Natt-versjonen av dette Eventet, kopierte jeg det ved å trykke på -knappen. Så endret jeg condition fra "Device Value Not Equal To" til "Device Value Equal To". Lys-kontrollen ble endret fra "On" (som betyr 100%) til "Dim 10%". Planlegging Hvis du ikke har sett på Events før nå, så vil det sannsynligvis begynne å demre for deg at det er enormt med muligheter her. Og det har du helt rett i! Hemmeligheten for å finne frem i kaoset er rett og slett å prøve seg frem, og å spørre hvis det feiler og du ikke finner ut hvorfor. Andre her har lang erfaring med å sette opp Eventer og har sikkert gjort samme feil selv som du har gjort. Alt koker ned til en ting: Logikk. Dette er programmering. Men istedenfor å måtte bruke et tastatur og kode hver linje, er de aller fleste valgene bakt inn i programmet. Hvis man installerer plugins, vil disse også kunne ha sine egne triggere og actions. Det man må gjøre når man skal begynne å automatisere er å planlegge. Det er veldig fristende å kaste seg hodestups ut i eventene, men man sparer seg mye frustrasjon hvis man tenker gjennom problemstillingen først. Hvorfor skal noe skje? Er det en bestemt hendelse? Som at noen kommer hjem? Eller står opp av senga? Eller noe så enkelt som et bestemt klokkeslett på bestemte dager? Hva er det egentlig som skal skje? Er "Når det er morgen skal ganglyset komme på" det eneste som skal skje? Skal det skje noe annet? Er det andre betingelser man skal ta hensyn til? Skal ting skje i en bestemt rekkefølge? Har jeg nok inn- eller ut-data? Hvordan kan man eventuelt ordne det? Eller kan jeg komme rundt det på en akseptabel måte? Hvis jeg vil koke kaffe når jeg står opp, så må jeg faktisk vite når jeg står opp OG jeg må ha muligheten til å koke kaffen. Hvis man alltid står opp kl 07:00 så kan det være så enkelt som å ha en trigger 15 minutter før. Alternativt kan en bevegelsessensor i gangen på utsiden av soverommet være en indikasjon på det ("HVIS bevegelse AND Time is after 07:00"), eller man kan (etter hvert) bruke en sensor, som et smart sengelaken. For å trakte kaffen kan man bruke en vanlig kaffetrakter med en plugin-modul, eller man kan integrere en smartere kaffetrakter. For å sette opp en dagsrutine, må man faktisk tenke gjennom hva man gjør gjennom en vanlig dag, og hvordan man ønsker at det skal være. Del dagen i små biter og ta del for del, så blir problemstillingen mindre og mer overkommelig. Utenom det er det bare å sette i gang! Eventer justeres etter hvert, og automatikken bygges ut fortløpende. Event-valg Hvis man kikker under selve Event-definisjonen (under actions), så ser man teksten "Options". Utvider man denne menyen, ser man dette: Her gis det enda flere valg til hvordan eventet skal trigges. "Priority Event" skal visstnok prioritere denne triggeren, som navnet antyder, men jeg har ikke hørt om situasjoner som blir løst av å bruke denne. "Include in Powerfailure Recovery" kan være grei hvis du har Eventer som MÅ kjøre etter at HS har blitt avsluttet av et strømbrudd (ikke blitt avsluttet skånsomt). Jeg bruker ikke noen av disse. "Security" er derimot hendig. Hvis man velger "Time is 14:00" som trigger, og huker av Security, vil dette eventet få en ny random tid etter hver gang det er blitt kjørt. Tiden som brukes til å gi intervallet den nye random-tiden er valgt fra, definerer du under valget Setup -> "Security Offset +/- (minutes)". Hvis du velger 15 minutter, så kan altså neste trigger for eventet være alt mellom 13:45 og 14:15. Veldig hendig hvis du ikke vil at det skal se ut som om hverdagen avsluttes kl 23:00 hver ukedag hele året uansett. "Remove This Event After Trigging" er det sjeldent man bruker på eventer man definerer selv. Men de er mer praktiske når vi kommer til Scripting. Alle Actions som er satt som delayed, blir i praksis et nytt event med dette valget huket av. "Do Not Log This Event" velger jeg på de fleste Eventer. Jeg trenger ikke fylle opp loggen min med unyttig informasjon om eventer som gjør som de skal. "Cannot Re-Run for XYZ time" er også veldig viktig. Av og til kan en trigger bli trigget svært raskt etter hverandre, og det kan gi litt kluss for Action'ene som dermed kjører nesten dobbelt. F.eks. kan man ha flere RFXtrx433-tranceivere, og alle disse vil motta et signal fra en Nexa-bryter. Dermed vil et event som bruker Nexa-bryteren som trigger kjøre flere ganger etter hverandre. Da er det lurt å sette "Cannot Re-Run For" til minimum 1 sekund. Betingelser for Actions En trigger har betingelser/conditions, men det hender at det er praktisk å ha betingelser for Actions også. F.eks. har jeg en dørlås (en Danalock v1) som man kan "låse" så mange ganger den vil. Det vil si: Hvis jeg velger "Lock" vil kjøre motoren uansett hvor mye den er låst fra før, og resultatet er at tannhjulene i låsen "pusser tenner". Jeg er redd det går ut over låsen i lengden. (Dette gjør heldigvis ikke Yale-låsen vår, eller ID-lock). Men jeg vil jo fremdeles at huset skal låse døra når vi går ut eller legger oss HVIS dørlåsen er opplåst! Da ville det vært praktisk å ha conditions for Actions, men HS støtter ikke dette direkte. Man må bruke et ekstra Event. Først definerer vi selve eventet som låser døren. Merk at det er en MANUELL trigger, men MED conditions. ... som vi leser som "lås døren hvis den ikke er låst". I Eventet som kjøres når nattmodus blir satt, eller som kjøres når hus-alarmen blir aktivert, så legges denne Action'en inn. Det viktige her er avkryssingen for "Run Only If Other Event Conditios are TRUE", som du muligens må trykke på det røde -ikonet for å få se. Dermed blir kjellerdøren kun låst hvis den ikke er låst fra før! Dette gir også andre muligheter. Jeg vil at huset skal gjøre en vurdering av Lux-nivået i stua, og justere lyset deretter. Dette skal vurderes hver gang Lux endrer seg, eller når vi kommer hjem (alarmen blir skrudd av) eller at det blir morgen (Tidsstatus skiftes fra Natt til Morgen), altså er det tre forskjellige triggere. Dette kunne jeg løst med å lage 6 forskjellige eventer, og bruke en haug med (forholdsvis like) conditions for hvert event. Det blir mye å holde styr på, så jeg samlet triggere i et Event, og Lux-vurderingene i to andre (fordi de har forskjellige Actions, et skrur lyset på et annet skrur det av). Først selve vurderingen for å skru lyset av: ... eller på: Og så et event for når disse vurderingene skal skje: Som du ser er det ingen overlapping i Lux i eventene som skrur det av eller på, så de to øverste kan ikke bli trigget samtidig. Og en bonus er at siden jeg sjekker om lyset er "På" eller "Av" istedenfor hhv. "ikke Av" eller "ikke På", så vil ikke automatikken ta over hvis jeg har dimmet lyset i stua. Og som du ser i devicen "Settings - Options - Automatisk lys i stue" kan jeg overstyre automatikken med en virtuell device. At Lux-vurderingen gjøres når Tidsstatus blir "Morning" er hendig både om sommer og om vinter. Hvis det er behov for lys, så får du det. Men om sommeren kan det jo fint være lyst nok til å slippe det når klokka er 06:30. Den skarpe leser vil legge merke til at det ikke er definert hva som skal skje hvis Lux blir målt til å være mellom 300 og 650, og svaret er enkelt: Det skal ikke skje noe, og det er faktisk et poeng at det er et relativt stort sprik mellom av eller på, ellers ville en lettskyet himmel være nok til at lyset omtrent ville flimre (avhengig av hvor ofte Lux-verdien blir lest). Tips: Bruker du slike virtuelle devicer for å styre når automatikken skal virke, så er det alltid en god idé å lage et Event med en gang som setter devicen tilbake til det du mener skal være standard-verdien. "Settings - Options - Automatisk lys i stue" blir hos oss satt til "On" når huset går i natt-modus. Da er det bare å begynne å automatisere. Vanne plenen, anyone? FAQ Q: Hva er forskjellen på triggerne "Device Changes and Becomes" og "Device Was Set To"? Er de ikke like? A: Nei, de er ikke helt like. Hvis et lys er på, og det får et nytt PÅ-signal vil "Device Was Set To" bli trigget, mens "Device Changes And Becomes" ikke blir. For at "Device Changes And Becomes" må verdien være en annen før triggeren skjer. Q: Hva er forskjellen på triggerne "Device Has Been X for Exactly Y time" og "Device Has Been X for At Least Y time"? Vil det ikke være best å bruke "At Least"? A: Som trigger er "At Least" veldig skummel å bruke, et eksempel på hvor galt det kan gå kan du lese her. Grunnen er forskjellen i hvordan disse to trigges. Nå er det litt mer komplisert enn det som forklares her (og sjekkene skjer oftere enn det), men la oss for enkelhets skyld si at alle eventer blir sjekket hvert sekund. Normalt skal et Event kun kjøre en gang, med mindre det er gode grunner til å kjøre det flere ganger, men sannsynligvis aldri så ofte som hvert sekund Et event med trigger "Taklys has been OFF for exactly 2 minutes" vil kun kjøre den ene gangen, og ferdig med det. Et event med trigger "Taklys has been OFF for at least 2 minutes" vil kjøre etter 2:00, 2:01, 2:02... altså hvert sekund etter at det har gått to minutter siden taklyset ble skrudd av. Jeg tror grunnen til at folk ofte velger "at least" istedenfor "exactly" er at "exactly" høres så usikkert ut. "Oi, tenk hvis den bommer! Da vil jo 'At Least' være sikrere". Og det finnes tilfeller der "At Least" absolutt kan være nyttig, den er spesielt hendig som en condition. Men hvis du vil bruke den som trigger, så må du legge til andre conditions som gjør at eventet ikke trigges i det uendelige... Q: Hvordan kan jeg endre rekkefølgen på Actions (eller conditions)? Må jeg slette alle Actions og legge dem til i rett rekkefølge? A: Neida, det er rett og slett "drag and drop". Minimer action/condition, og ta tak i den. Dra de så oppover (eller nedover) og slipp når du er fornøyd. Dette kan du ikke gjøre med en touch-skjerm, dessverre, man trenger en mus. Oppsummering Da har vi vært gjennom en kort introduksjon til automatisering, tro det eller ei. Og ja, nå begynner det å dra seg til! Event-motoren er utmerket, og det er enkelt å redigere og utvide etter hvert. Event-motoren er et kraftig verktøy, som tidvis kan være ganske komplisert. Det vil ta seg litt tid å lære, men når man har satt opp de første Eventene (og navngitt dem skikkelig), så går det raskt å sette opp flere. Øvelse gjør mester! Det er mulig vi kommer tilbake til eventer senere, det er litt avhengig av tilbakemeldingene. Savner du noe, gi lyd i kommentarfeltet under. HomeSeer-skolen har tidligere dekket innkjøp (del 1), oppsett (del 2), Z-wave-konfigurasjon (del 3 og del 4), 433 MHz utstyr (del 5) og device-håndtering, -sortering og -oppsett (del 6). I del 8 skal Fermate vise oss hvordan vi kommer i gang med HStouch Designeren!
-
Endelig, litt automatikk! For at heimen faktisk skal bli smart, må heimen gjøre som du vil uten at det er du som gjør det. Alt vi har gjort til nå er å legge til rette for fjernstyring, som i "weee, jeg kan styre lyset fra mobilen" (noe som man blir lei av ganske raskt), men HomeSeer har en fantastisk motor for automatikk. Og den skal vi nå benytte oss av. Bli kjent, med begrepet Event Ordet Event er selvfølgelig engelsk, det mest passende norske ordet er vel "hendelse". Jeg bruker ordet "Event" på norsk, akkurat som jeg bruker ordet "Device". Et Event er delt i to: Det har en trigger (med en eller flere conditions) og en eller flere actions. Trigger En trigger er det som setter Eventet i gang. Som i "kjør dette eventet når klokka slår 06:00" eller "kjør dette eventet når lyset i gangen blir skrudd på". Condition En condition (altså "betingelse") hører til en trigger. De begrenser triggeren, som i: "kjør dette eventet når klokka slår 06:00 men bare på en mandag" eller "kjør dette eventet når lyset i gangen ble skrudd på men bare hvis klokken er 17:00 eller senere, det har regnet 3 mm OG ingen har ringt på døra på 4 timer". Action En action (en "handling") er det som faktisk skal skje. F.eks. at man skrur på av eller på et lys, kjører et annet event eller et script. I utgangspunktet ganske enkle verktøy som man, med litt trening, kan bruke på ganske så avanserte måter. Event-oppsett Vi går til View -> Events. Hvis vi ikke har lagt til noen eventer, blir vi bedt om å navngi vårt første Event. betyr selvfølgelig "Legg til". Det kan være legg til et Event til gruppa, en trigger/condition eller en action. kjører Eventet slik det er nå, helt uten å ta hensyn til eventuelle conditions. deaktiverer eller aktiverer et event. sletter et event, en trigger/condition eller en action. kopierer eventet slik det er. utvider eller minimerer alle Events eller conditions. indikerer at du nå kun viser basis-valg, trykk denne for å se: avanserte valg. MERK: Det er en god idé å minimere triggers og actions når man er ferdig med dem, for da får man opp eventuelle feilmeldinger. Hvis et en trigger, condition eller action ikke lar seg minimere, så er det et tegn på at noe er galt eller at linjen ikke er ferdig konfigurert. Vi kan velge en trigger (i den blå linjen, øverst). Her er trigger-kategoriene som kommer med en helt vanlig HS-installasjon: En trigger-kategori har flere tilhørende triggere: For actions er lista lenger: Igjen har Actions flere underalternativer. Hvis man velger "Control a Device" får man opp valg om å velge en device å controllere. Når man har gjort det, blir alle CAPI-verdiene (se del 6) listet opp. ... så hvordan ser et Event ut? I sin enkleste form, kan det se slik ut: Dette leser vi som at kl. 06:00 blir lyset satt til 17%. Organisering Ved siden av Event-navnet, kan man velge en Type hvis man ønsker det. Ved siden av Typen, kan man flytte eventet til en annen gruppe (eller lage en ny). Grunnen til dette er at man skal finne igjen eventene sine. Når man har 5-10 stykker så er det enkelt. Når det er 300 så er det verre. Jeg sorterer forskjellige typer Eventer i forskjellige grupper (jeg bruker ikke "Event Types" så mye). Men det gjør det overraskende fort å finne frem i eventene. Skal du kikke på eventet som styrer lyset i gangen basert på en bevegelsessensor? Kikk i gruppa "Bevegelse". Hva med lyset som går automatisk i ferien? Kikk i gruppa "Automatisk (ferie)". Hva med de trådløse bryterne? "Brytere". Og hvordan får dere beskjed tilbake? "Notifikasjoner". "Referencing Device(s)" er veldig hendig hvis du skal finne eventene som styrer eller blir styrt av en bestemt device. Si at et lys skrur seg på og av når det ikke skal, og du lurer på hvorfor. Da er det bare å velge devicen i Referencing Device(s), så blir Eventene dine filtrert til å kun vise de som har med denne devicen å gjøre. MERK: Hvis du bruker scripts vil disse ikke komme med i filtreringen, det er kun de som har en Device spesifisert i en ren Event trigger, condition eller action. Når du er ferdig med filtreringen er det en god vane å trykke på "Show All" etterpå... Blant de mest brukte: Bevegelsessensor I utgangspunktet er det enkelt. Vi velger bevegelsessensoren som device, og velger CAPI-verdien "Motion" som trigger. I dette eksempelet vil jeg styre lyset på badet i kjelleren. De to nederste linjene er enkle. Den ene skrur lyset PÅ, og den andre skrur lyset AV etter 10 minutter. Så langt er alt vel. Men hva skal vi med "Remove Delayed Device Actions"? Jo, "lyset av etter 10 minutter" blir nettopp det; en "Delayed Action". Disse Delayed Action'ene blir kjørt etter den aktuelle forsinkelsen. Når bevegelsessensoren blir trigget, så blir alle eventuelle slike Actions (som i vårt tilfelle skrur lyset av) fjernet først. Sluttresultatet er at lyset blir værende på så lenge det er bevegelse i rommet, men blir skrudd av etter 10 minutter hvis bevegelsen stopper (for da blir IKKE denne Delayed Actions fjernet). På toalettet i 1. etg er det både en bevegelsessensor og en magnetsensor på døren. Det kan jo selvfølgelig løses med å lage to forskjellige eventer, men siden det er det samme som skal skje uavhengig av trigger, så velger vi heller at Eventet skal ha flere forskjellige triggere. For å få til flere triggere trykker du på den grønne -knappen, men istedenfor "AND IF" til venstre, velger man "OR IF". Dette blir en ny trigger. I tillegg har jeg her noen conditions som gjør at dette Eventet kun kjører når det ikke er natt (dvs. på morgen, dag og kveld). Da jeg skulle lage Natt-versjonen av dette Eventet, kopierte jeg det ved å trykke på -knappen. Så endret jeg condition fra "Device Value Not Equal To" til "Device Value Equal To". Lys-kontrollen ble endret fra "On" (som betyr 100%) til "Dim 10%". Planlegging Hvis du ikke har sett på Events før nå, så vil det sannsynligvis begynne å demre for deg at det er enormt med muligheter her. Og det har du helt rett i! Hemmeligheten for å finne frem i kaoset er rett og slett å prøve seg frem, og å spørre hvis det feiler og du ikke finner ut hvorfor. Andre her har lang erfaring med å sette opp Eventer og har sikkert gjort samme feil selv som du har gjort. Alt koker ned til en ting: Logikk. Dette er programmering. Men istedenfor å måtte bruke et tastatur og kode hver linje, er de aller fleste valgene bakt inn i programmet. Hvis man installerer plugins, vil disse også kunne ha sine egne triggere og actions. Det man må gjøre når man skal begynne å automatisere er å planlegge. Det er veldig fristende å kaste seg hodestups ut i eventene, men man sparer seg mye frustrasjon hvis man tenker gjennom problemstillingen først. Hvorfor skal noe skje? Er det en bestemt hendelse? Som at noen kommer hjem? Eller står opp av senga? Eller noe så enkelt som et bestemt klokkeslett på bestemte dager? Hva er det egentlig som skal skje? Er "Når det er morgen skal ganglyset komme på" det eneste som skal skje? Skal det skje noe annet? Er det andre betingelser man skal ta hensyn til? Skal ting skje i en bestemt rekkefølge? Har jeg nok inn- eller ut-data? Hvordan kan man eventuelt ordne det? Eller kan jeg komme rundt det på en akseptabel måte? Hvis jeg vil koke kaffe når jeg står opp, så må jeg faktisk vite når jeg står opp OG jeg må ha muligheten til å koke kaffen. Hvis man alltid står opp kl 07:00 så kan det være så enkelt som å ha en trigger 15 minutter før. Alternativt kan en bevegelsessensor i gangen på utsiden av soverommet være en indikasjon på det ("HVIS bevegelse AND Time is after 07:00"), eller man kan (etter hvert) bruke en sensor, som et smart sengelaken. For å trakte kaffen kan man bruke en vanlig kaffetrakter med en plugin-modul, eller man kan integrere en smartere kaffetrakter. For å sette opp en dagsrutine, må man faktisk tenke gjennom hva man gjør gjennom en vanlig dag, og hvordan man ønsker at det skal være. Del dagen i små biter og ta del for del, så blir problemstillingen mindre og mer overkommelig. Utenom det er det bare å sette i gang! Eventer justeres etter hvert, og automatikken bygges ut fortløpende. Event-valg Hvis man kikker under selve Event-definisjonen (under actions), så ser man teksten "Options". Utvider man denne menyen, ser man dette: Her gis det enda flere valg til hvordan eventet skal trigges. "Priority Event" skal visstnok prioritere denne triggeren, som navnet antyder, men jeg har ikke hørt om situasjoner som blir løst av å bruke denne. "Include in Powerfailure Recovery" kan være grei hvis du har Eventer som MÅ kjøre etter at HS har blitt avsluttet av et strømbrudd (ikke blitt avsluttet skånsomt). Jeg bruker ikke noen av disse. "Security" er derimot hendig. Hvis man velger "Time is 14:00" som trigger, og huker av Security, vil dette eventet få en ny random tid etter hver gang det er blitt kjørt. Tiden som brukes til å gi intervallet den nye random-tiden er valgt fra, definerer du under valget Setup -> "Security Offset +/- (minutes)". Hvis du velger 15 minutter, så kan altså neste trigger for eventet være alt mellom 13:45 og 14:15. Veldig hendig hvis du ikke vil at det skal se ut som om hverdagen avsluttes kl 23:00 hver ukedag hele året uansett. "Remove This Event After Trigging" er det sjeldent man bruker på eventer man definerer selv. Men de er mer praktiske når vi kommer til Scripting. Alle Actions som er satt som delayed, blir i praksis et nytt event med dette valget huket av. "Do Not Log This Event" velger jeg på de fleste Eventer. Jeg trenger ikke fylle opp loggen min med unyttig informasjon om eventer som gjør som de skal. "Cannot Re-Run for XYZ time" er også veldig viktig. Av og til kan en trigger bli trigget svært raskt etter hverandre, og det kan gi litt kluss for Action'ene som dermed kjører nesten dobbelt. F.eks. kan man ha flere RFXtrx433-tranceivere, og alle disse vil motta et signal fra en Nexa-bryter. Dermed vil et event som bruker Nexa-bryteren som trigger kjøre flere ganger etter hverandre. Da er det lurt å sette "Cannot Re-Run For" til minimum 1 sekund. Betingelser for Actions En trigger har betingelser/conditions, men det hender at det er praktisk å ha betingelser for Actions også. F.eks. har jeg en dørlås (en Danalock v1) som man kan "låse" så mange ganger den vil. Det vil si: Hvis jeg velger "Lock" vil kjøre motoren uansett hvor mye den er låst fra før, og resultatet er at tannhjulene i låsen "pusser tenner". Jeg er redd det går ut over låsen i lengden. (Dette gjør heldigvis ikke Yale-låsen vår, eller ID-lock). Men jeg vil jo fremdeles at huset skal låse døra når vi går ut eller legger oss HVIS dørlåsen er opplåst! Da ville det vært praktisk å ha conditions for Actions, men HS støtter ikke dette direkte. Man må bruke et ekstra Event. Først definerer vi selve eventet som låser døren. Merk at det er en MANUELL trigger, men MED conditions. ... som vi leser som "lås døren hvis den ikke er låst". I Eventet som kjøres når nattmodus blir satt, eller som kjøres når hus-alarmen blir aktivert, så legges denne Action'en inn. Det viktige her er avkryssingen for "Run Only If Other Event Conditios are TRUE", som du muligens må trykke på det røde -ikonet for å få se. Dermed blir kjellerdøren kun låst hvis den ikke er låst fra før! Dette gir også andre muligheter. Jeg vil at huset skal gjøre en vurdering av Lux-nivået i stua, og justere lyset deretter. Dette skal vurderes hver gang Lux endrer seg, eller når vi kommer hjem (alarmen blir skrudd av) eller at det blir morgen (Tidsstatus skiftes fra Natt til Morgen), altså er det tre forskjellige triggere. Dette kunne jeg løst med å lage 6 forskjellige eventer, og bruke en haug med (forholdsvis like) conditions for hvert event. Det blir mye å holde styr på, så jeg samlet triggere i et Event, og Lux-vurderingene i to andre (fordi de har forskjellige Actions, et skrur lyset på et annet skrur det av). Først selve vurderingen for å skru lyset av: ... eller på: Og så et event for når disse vurderingene skal skje: Som du ser er det ingen overlapping i Lux i eventene som skrur det av eller på, så de to øverste kan ikke bli trigget samtidig. Og en bonus er at siden jeg sjekker om lyset er "På" eller "Av" istedenfor hhv. "ikke Av" eller "ikke På", så vil ikke automatikken ta over hvis jeg har dimmet lyset i stua. Og som du ser i devicen "Settings - Options - Automatisk lys i stue" kan jeg overstyre automatikken med en virtuell device. At Lux-vurderingen gjøres når Tidsstatus blir "Morning" er hendig både om sommer og om vinter. Hvis det er behov for lys, så får du det. Men om sommeren kan det jo fint være lyst nok til å slippe det når klokka er 06:30. Den skarpe leser vil legge merke til at det ikke er definert hva som skal skje hvis Lux blir målt til å være mellom 300 og 650, og svaret er enkelt: Det skal ikke skje noe, og det er faktisk et poeng at det er et relativt stort sprik mellom av eller på, ellers ville en lettskyet himmel være nok til at lyset omtrent ville flimre (avhengig av hvor ofte Lux-verdien blir lest). Tips: Bruker du slike virtuelle devicer for å styre når automatikken skal virke, så er det alltid en god idé å lage et Event med en gang som setter devicen tilbake til det du mener skal være standard-verdien. "Settings - Options - Automatisk lys i stue" blir hos oss satt til "On" når huset går i natt-modus. Da er det bare å begynne å automatisere. Vanne plenen, anyone? FAQ Q: Hva er forskjellen på triggerne "Device Changes and Becomes" og "Device Was Set To"? Er de ikke like? A: Nei, de er ikke helt like. Hvis et lys er på, og det får et nytt PÅ-signal vil "Device Was Set To" bli trigget, mens "Device Changes And Becomes" ikke blir. For at "Device Changes And Becomes" må verdien være en annen før triggeren skjer. Q: Hva er forskjellen på triggerne "Device Has Been X for Exactly Y time" og "Device Has Been X for At Least Y time"? Vil det ikke være best å bruke "At Least"? A: Som trigger er "At Least" veldig skummel å bruke, et eksempel på hvor galt det kan gå kan du lese her. Grunnen er forskjellen i hvordan disse to trigges. Nå er det litt mer komplisert enn det som forklares her (og sjekkene skjer oftere enn det), men la oss for enkelhets skyld si at alle eventer blir sjekket hvert sekund. Normalt skal et Event kun kjøre en gang, med mindre det er gode grunner til å kjøre det flere ganger, men sannsynligvis aldri så ofte som hvert sekund Et event med trigger "Taklys has been OFF for exactly 2 minutes" vil kun kjøre den ene gangen, og ferdig med det. Et event med trigger "Taklys has been OFF for at least 2 minutes" vil kjøre etter 2:00, 2:01, 2:02... altså hvert sekund etter at det har gått to minutter siden taklyset ble skrudd av. Jeg tror grunnen til at folk ofte velger "at least" istedenfor "exactly" er at "exactly" høres så usikkert ut. "Oi, tenk hvis den bommer! Da vil jo 'At Least' være sikrere". Og det finnes tilfeller der "At Least" absolutt kan være nyttig, den er spesielt hendig som en condition. Men hvis du vil bruke den som trigger, så må du legge til andre conditions som gjør at eventet ikke trigges i det uendelige... Q: Hvordan kan jeg endre rekkefølgen på Actions (eller conditions)? Må jeg slette alle Actions og legge dem til i rett rekkefølge? A: Neida, det er rett og slett "drag and drop". Minimer action/condition, og ta tak i den. Dra de så oppover (eller nedover) og slipp når du er fornøyd. Dette kan du ikke gjøre med en touch-skjerm, dessverre, man trenger en mus. Oppsummering Da har vi vært gjennom en kort introduksjon til automatisering, tro det eller ei. Og ja, nå begynner det å dra seg til! Event-motoren er utmerket, og det er enkelt å redigere og utvide etter hvert. Event-motoren er et kraftig verktøy, som tidvis kan være ganske komplisert. Det vil ta seg litt tid å lære, men når man har satt opp de første Eventene (og navngitt dem skikkelig), så går det raskt å sette opp flere. Øvelse gjør mester! Det er mulig vi kommer tilbake til eventer senere, det er litt avhengig av tilbakemeldingene. Savner du noe, gi lyd i kommentarfeltet under. HomeSeer-skolen har tidligere dekket innkjøp (del 1), oppsett (del 2), Z-wave-konfigurasjon (del 3 og del 4), 433 MHz utstyr (del 5) og device-håndtering, -sortering og -oppsett (del 6). I del 8 skal Fermate vise oss hvordan vi kommer i gang med HStouch Designeren! Vis full oppføring
-
Jeg skriver dette for å få ut frustrasjon, hjelpe andre i samme situasjon, og dersom noen har bedre forslag tas de imot med takk. Etter at jeg oppdaterte til HS3 3.0.0.318 (Linux) (godt mulig jeg har hoppet over et par versjoner), kommer denne feilmeldingen på Plugins-->Manage: Det vil altså si at man får ikke oppdatert sine plugins eller installert nye... Dette skyldes at fra HS3 3.0.0.312 endret man protokollen fra http til https. På linux kreves mono for å kjøre HomeSeer3. Standard versjon av mono på debian jessie (både raspbian og «vanlig») er mono 3.2.8, og den versjonen har ikke støtte for ssl. Det løste man tidligere ved å laste inn sertifikater fra mozroots, men det er en stund siden mozilla sluttet å tilby dette, og det virker nå på færre og færre distribusjoner etter hvert som mozroots blir mer og mer utdatert. I denne tråden kommer HomeSeer-folka med utdatert info de har sakset fra nettet om hvordan fikse dette, men mozroots er altså ikke lenger støttet, og dette fungerer ikke! https://board.homeseer.com/showthread.php?t=187612&page=7&styleid=8&styleid=1 I debian jessie er det meget enkelt å oppdatere mono ved å legge til monos egen repo: http://www.mono-project.com/download/#download-lin-debian Problemet med dette er: Dersom man migrerer HS3 fra mono 3 til mono 4/5 eller windows, mister man alle triggere på eventene. Man kan ikke bare legge til triggerne, men må lage alle eventen på nytt. For meg er det ikke et alternativ å legge inn alle eventene på nytt -- då må jeg bruke hele ferien. Så hva gjør jeg? Løsningen for meg ble å hacke til en oppgradering til mono 3.12.0 -- den siste versjonen av mono 3, og med innebygd støtte for ssl (ca-certificates-mono installeres som del av mono-complete). Dessverre fins det ingen pakke fra mono-project for mono <5 for debian jessie, så jeg legger i stedet til pakken fra forrige debian-versjon: wheezy. Fjern først mono fullstendig, alle pakker, jeg gjorde (kjør dette som to separate kommandoer): sudo apt remove --purge --auto-remove mono-complete sudo apt remove --purge --auto-remove mono-runtime 'dpkg-query -l | grep mono' skal nå ikke gi noe output. Nå kan du legge til mono 3.12.0 fra monos eget wheezy-repo: #Legg til nøkkel sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF # Legg til mono repo fra wheezy, låst til versjon 3.12.0 echo "deb http://download.mono-project.com/repo/debian wheezy/snapshots/3.12.0 main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list sudo apt-get update # Legg til mod_mono repo echo "deb http://download.mono-project.com/repo/debian wheezy-apache24-compat main" | sudo tee -a /etc/apt/sources.list.d/mono-xamarin.list # Legg til libgdiplus echo "deb http://download.mono-project.com/repo/debian wheezy-libjpeg62-compat main" | sudo tee -a /etc/apt/sources.list.d/mono-xamarin.list sudo apt-get update sudo apt-get install mono-complete Og ikke glem å reinstallere de ekstra pakkene HS3 krever iflg installasjonsveiledningen. Noen av dem vil ha blitt slettet da du fjernet den gamle versjonen av mono. sudo apt-get install chromium mono-vbnc libmono-system-web4.0.cil \ libmono-system-design4.0.cil \ libmono-system-web-extensions4.0-cil \ libmono-system-runtime-caching4.0-cil flite (Et annet alternativ hadde vært å nedgradert operativsystemet til debian wheezy, og så lagt til monos repo og låst mono til 3.12.0, men wheezy har ikke så lang tid igjen med oppdateringer/support.) Nå skal HS3 igjen starte, og ssl/https virker i HS3/mono, og du beholder alle eventene! Dette er i det store og hele ganske sløvt av HomeSeer. Dette gjelder ikke bare for oss som kjører HS3 på «vanlig» linux (eller pi), men det gjelder migrasjon fra Zee til Zee2, eller annen troller. Dersom HomeSeer bare hadde nevnt i installasjonsintruksene at man låste seg til mono 3 dersom man brukte det, kunne man bare installert mono 4/5. Mono 4 har vært ute i årevis. Sisteposten her oppsummerer dette godt: https://forums.homeseer.com/showthread.php?t=184607 Jeg håper ommleggingen til ssl tvinger frem en offisiel løsning siden mange har trollere med mono 3, og mozroots kommer nok snart til å slutte å virke. Jeg håper dette hjelper noen...
-
Endelig, litt automatikk! For at heimen faktisk skal bli smart, må heimen gjøre som du vil uten at det er du som gjør det. Alt vi har gjort til nå er å legge til rette for fjernstyring, som i "weee, jeg kan styre lyset fra mobilen" (noe som man blir lei av ganske raskt), men HomeSeer har en fantastisk motor for automatikk. Og den skal vi nå benytte oss av. Bli kjent, med begrepet Event Ordet Event er selvfølgelig engelsk, det mest passende norske ordet er vel "hendelse". Jeg bruker ordet "Event" på norsk, akkurat som jeg bruker ordet "Device". Et Event er delt i to: Det har en trigger (med en eller flere conditions) og en eller flere actions. Trigger En trigger er det som setter Eventet i gang. Som i "kjør dette eventet når klokka slår 06:00" eller "kjør dette eventet når lyset i gangen blir skrudd på". Condition En condition (altså "betingelse") hører til en trigger. De begrenser triggeren, som i: "kjør dette eventet når klokka slår 06:00 men bare på en mandag" eller "kjør dette eventet når lyset i gangen ble skrudd på men bare hvis klokken er 17:00 eller senere, det har regnet 3 mm OG ingen har ringt på døra på 4 timer". Action En action (en "handling") er det som faktisk skal skje. F.eks. at man skrur på av eller på et lys, kjører et annet event eller et script. I utgangspunktet ganske enkle verktøy som man, med litt trening, kan bruke på ganske så avanserte måter. Event-oppsett Vi går til View -> Events. Hvis vi ikke har lagt til noen eventer, blir vi bedt om å navngi vårt første Event. betyr selvfølgelig "Legg til". Det kan være legg til et Event til gruppa, en trigger/condition eller en action. kjører Eventet slik det er nå, helt uten å ta hensyn til eventuelle conditions. deaktiverer eller aktiverer et event. sletter et event, en trigger/condition eller en action. kopierer eventet slik det er. utvider eller minimerer alle Events eller conditions. indikerer at du nå kun viser basis-valg, trykk denne for å se: avanserte valg. MERK: Det er en god idé å minimere triggers og actions når man er ferdig med dem, for da får man opp eventuelle feilmeldinger. Hvis et en trigger, condition eller action ikke lar seg minimere, så er det et tegn på at noe er galt eller at linjen ikke er ferdig konfigurert. Vi kan velge en trigger (i den blå linjen, øverst). Her er trigger-kategoriene som kommer med en helt vanlig HS-installasjon: En trigger-kategori har flere tilhørende triggere: For actions er lista lenger: Igjen har Actions flere underalternativer. Hvis man velger "Control a Device" får man opp valg om å velge en device å controllere. Når man har gjort det, blir alle CAPI-verdiene (se del 6) listet opp. ... så hvordan ser et Event ut? I sin enkleste form, kan det se slik ut: Dette leser vi som at kl. 06:00 blir lyset satt til 17%. Organisering Ved siden av Event-navnet, kan man velge en Type hvis man ønsker det. Ved siden av Typen, kan man flytte eventet til en annen gruppe (eller lage en ny). Grunnen til dette er at man skal finne igjen eventene sine. Når man har 5-10 stykker så er det enkelt. Når det er 300 så er det verre. Jeg sorterer forskjellige typer Eventer i forskjellige grupper (jeg bruker ikke "Event Types" så mye). Men det gjør det overraskende fort å finne frem i eventene. Skal du kikke på eventet som styrer lyset i gangen basert på en bevegelsessensor? Kikk i gruppa "Bevegelse". Hva med lyset som går automatisk i ferien? Kikk i gruppa "Automatisk (ferie)". Hva med de trådløse bryterne? "Brytere". Og hvordan får dere beskjed tilbake? "Notifikasjoner". "Referencing Device(s)" er veldig hendig hvis du skal finne eventene som styrer eller blir styrt av en bestemt device. Si at et lys skrur seg på og av når det ikke skal, og du lurer på hvorfor. Da er det bare å velge devicen i Referencing Device(s), så blir Eventene dine filtrert til å kun vise de som har med denne devicen å gjøre. MERK: Hvis du bruker scripts vil disse komme med i filtreringen, det er kun de som har en Device spesifisert i en ren Event trigger, condition eller action. Når du er ferdig med filtreringen er det en god vane å trykke på "Show All" etterpå... Blant de mest brukte: Bevegelsessensor I utgangspunktet er det enkelt. Vi velger bevegelsessensoren som device, og velger CAPI-verdien "Motion" som trigger. I dette eksempelet vil jeg styre lyset på badet i kjelleren. De to nederste linjene er enkle. Den ene skrur lyset PÅ, og den andre skrur lyset AV etter 10 minutter. Så langt er alt vel. Men hva skal vi med "Remove Delayed Device Actions"? Jo, "lyset av etter 10 minutter" blir nettopp det; en "Delayed Action". Disse Delayed Action'ene blir kjørt etter den aktuelle forsinkelsen. Når bevegelsessensoren blir trigget, så blir alle eventuelle slike Actions (som i vårt tilfelle skrur lyset av) fjernet først. Sluttresultatet er at lyset blir værende på så lenge det er bevegelse i rommet, men blir skrudd av etter 10 minutter hvis bevegelsen stopper (for da blir IKKE denne Delayed Actions fjernet). På toalettet i 1. etg er det både en bevegelsessensor og en magnetsensor på døren. Det kan jo selvfølgelig løses med å lage to forskjellige eventer, men siden det er det samme som skal skje uavhengig av trigger, så velger vi heller at Eventet skal ha flere forskjellige triggere. For å få til flere triggere trykker du på den grønne -knappen, men istedenfor "AND IF" til venstre, velger man "OR IF". Dette blir en ny trigger. I tillegg har jeg her noen conditions som gjør at dette Eventet kun kjører når det ikke er natt (dvs. på morgen, dag og kveld). Da jeg skulle lage Natt-versjonen av dette Eventet, kopierte jeg det ved å trykke på -knappen. Så endret jeg condition fra "Device Value Not Equal To" til "Device Value Equal To". Lys-kontrollen ble endret fra "On" (som betyr 100%) til "Dim 10%". Planlegging Hvis du ikke har sett på Events før nå, så vil det sannsynligvis begynne å demre for deg at det er enormt med muligheter her. Og det har du helt rett i! Hemmeligheten for å finne frem i kaoset er rett og slett å prøve seg frem, og å spørre hvis det feiler og du ikke finner ut hvorfor. Andre her har lang erfaring med å sette opp Eventer og har sikkert gjort samme feil selv som du har gjort. Alt koker ned til en ting: Logikk. Dette er programmering. Men istedenfor å måtte bruke et tastatur og kode hver linje, er de aller fleste valgene bakt inn i programmet. Hvis man installerer plugins, vil disse også kunne ha sine egne triggere og actions. Det man må gjøre når man skal begynne å automatisere er å planlegge. Det er veldig fristende å kaste seg hodestups ut i eventene, men man sparer seg mye frustrasjon hvis man tenker gjennom problemstillingen først. Hvorfor skal noe skje? Er det en bestemt hendelse? Som at noen kommer hjem? Eller står opp av senga? Eller noe så enkelt som et bestemt klokkeslett på bestemte dager? Hva er det egentlig som skal skje? Er "Når det er morgen skal ganglyset komme på" det eneste som skal skje? Skal det skje noe annet? Er det andre betingelser man skal ta hensyn til? Skal ting skje i en bestemt rekkefølge? Har jeg nok inn- eller ut-data? Hvordan kan man eventuelt ordne det? Eller kan jeg komme rundt det på en akseptabel måte? Hvis jeg vil koke kaffe når jeg står opp, så må jeg faktisk vite når jeg står opp OG jeg må ha muligheten til å koke kaffen. Hvis man alltid står opp kl 07:00 så kan det være så enkelt som å ha en trigger 15 minutter før. Alternativt kan en bevegelsessensor i gangen på utsiden av soverommet være en indikasjon på det ("HVIS bevegelse AND Time is after 07:00"), eller man kan (etter hvert) bruke en sensor, som et smart sengelaken. For å trakte kaffen kan man bruke en vanlig kaffetrakter med en plugin-modul, eller man kan integrere en smartere kaffetrakter. For å sette opp en dagsrutine, må man faktisk tenke gjennom hva man gjør gjennom en vanlig dag, og hvordan man ønsker at det skal være. Del dagen i små biter og ta del for del, så blir problemstillingen mindre og mer overkommelig. Utenom det er det bare å sette i gang! Eventer justeres etter hvert, og automatikken bygges ut fortløpende. Event-valg Hvis man kikker under selve Event-definisjonen (under actions), så ser man teksten "Options". Utvider man denne menyen, ser man dette: Her gis det enda flere valg til hvordan eventet skal trigges. "Priority Event" skal visstnok prioritere denne triggeren, som navnet antyder, men jeg har ikke hørt om situasjoner som blir løst av å bruke denne. "Include in Powerfailure Recovery" kan være grei hvis du har Eventer som MÅ kjøre etter at HS har blitt avsluttet av et strømbrudd (ikke blitt avsluttet skånsomt). Jeg bruker ikke noen av disse. "Security" er derimot hendig. Hvis man velger "Time is 14:00" som trigger, og huker av Security, vil dette eventet få en ny random tid etter hver gang det er blitt kjørt. Tiden som brukes til å gi intervallet den nye random-tiden er valgt fra, definerer du under valget Setup -> "Security Offset +/- (minutes)". Hvis du velger 15 minutter, så kan altså neste trigger for eventet være alt mellom 13:45 og 14:15. Veldig hendig hvis du ikke vil at det skal se ut som om hverdagen avsluttes kl 23:00 hver ukedag hele året uansett. "Remove This Event After Trigging" er det sjeldent man bruker på eventer man definerer selv. Men de er mer praktiske når vi kommer til Scripting. Alle Actions som er satt som delayed, blir i praksis et nytt event med dette valget huket av. "Do Not Log This Event" velger jeg på de fleste Eventer. Jeg trenger ikke fylle opp loggen min med unyttig informasjon om eventer som gjør som de skal. "Cannot Re-Run for XYZ time" er også veldig viktig. Av og til kan en trigger bli trigget svært raskt etter hverandre, og det kan gi litt kluss for Action'ene som dermed kjører nesten dobbelt. F.eks. kan man ha flere RFXtrx433-tranceivere, og alle disse vil motta et signal fra en Nexa-bryter. Dermed vil et event som bruker Nexa-bryteren som trigger kjøre flere ganger etter hverandre. Da er det lurt å sette "Cannot Re-Run For" til minimum 1 sekund. Betingelser for Actions En trigger har betingelser/conditions, men det hender at det er praktisk å ha betingelser for Actions også. F.eks. har jeg en dørlås (en Danalock v1) som man kan "låse" så mange ganger den vil. Det vil si: Hvis jeg velger "Lock" vil kjøre motoren uansett hvor mye den er låst fra før, og resultatet er at tannhjulene i låsen "pusser tenner". Jeg er redd det går ut over låsen i lengden. (Dette gjør heldigvis ikke Yale-låsen vår, eller ID-lock). Men jeg vil jo fremdeles at huset skal låse døra når vi går ut eller legger oss HVIS dørlåsen er opplåst! Da ville det vært praktisk å ha conditions for Actions, men HS støtter ikke dette direkte. Man må bruke et ekstra Event. Først definerer vi selve eventet som låser døren. Merk at det er en MANUELL trigger, men MED conditions. ... som vi leser som "lås døren hvis den ikke er låst". I Eventet som kjøres når nattmodus blir satt, eller som kjøres når hus-alarmen blir aktivert, så legges denne Action'en inn. Det viktige her er avkryssingen for "Run Only If Other Event Conditios are TRUE", som du muligens må trykke på det røde -ikonet for å få se. Dermed blir kjellerdøren kun låst hvis den ikke er låst fra før! Dette gir også andre muligheter. Jeg vil at huset skal gjøre en vurdering av Lux-nivået i stua, og justere lyset deretter. Dette skal vurderes hver gang Lux endrer seg, eller når vi kommer hjem (alarmen blir skrudd av) eller at det blir morgen (Tidsstatus skiftes fra Natt til Morgen), altså er det tre forskjellige triggere. Dette kunne jeg løst med å lage 6 forskjellige eventer, og bruke en haug med (forholdsvis like) conditions for hvert event. Det blir mye å holde styr på, så jeg samlet triggere i et Event, og Lux-vurderingene i to andre (fordi de har forskjellige Actions, et skrur lyset på et annet skrur det av). Først selve vurderingen for å skru lyset av: ... eller på: Og så et event for når disse vurderingene skal skje: Som du ser er det ingen overlapping i Lux i eventene som skrur det av eller på, så de to øverste kan ikke bli trigget samtidig. Og en bonus er at siden jeg sjekker om lyset er "På" eller "Av" istedenfor hhv. "ikke Av" eller "ikke På", så vil ikke automatikken ta over hvis jeg har dimmet lyset i stua. Og som du ser i devicen "Settings - Options - Automatisk lys i stue" kan jeg overstyre automatikken med en virtuell device. At Lux-vurderingen gjøres når Tidsstatus blir "Morning" er hendig både om sommer og om vinter. Hvis det er behov for lys, så får du det. Men om sommeren kan det jo fint være lyst nok til å slippe det når klokka er 06:30. Den skarpe leser vil legge merke til at det ikke er definert hva som skal skje hvis Lux blir målt til å være mellom 300 og 650, og svaret er enkelt: Det skal ikke skje noe, og det er faktisk et poeng at det er et relativt stort sprik mellom av eller på, ellers ville en lettskyet himmel være nok til at lyset omtrent ville flimre (avhengig av hvor ofte Lux-verdien blir lest). Tips: Bruker du slike virtuelle devicer for å styre når automatikken skal virke, så er det alltid en god idé å lage et Event med en gang som setter devicen tilbake til det du mener skal være standard-verdien. "Settings - Options - Automatisk lys i stue" blir hos oss satt til "On" når huset går i natt-modus. Da er det bare å begynne å automatisere. Vanne plenen, anyone? FAQ Q: Hva er forskjellen på triggerne "Device Changes and Becomes" og "Device Was Set To"? Er de ikke like? A: Nei, de er ikke helt like. Hvis et lys er på, og det får et nytt PÅ-signal vil "Device Was Set To" bli trigget, mens "Device Changes And Becomes" ikke blir. For at "Device Changes And Becomes" må verdien være en annen før triggeren skjer. Q: Hva er forskjellen på triggerne "Device Has Been X for Exactly Y time" og "Device Has Been X for At Least Y time"? Vil det ikke være best å bruke "At Least"? A: Som trigger er "At Least" veldig skummel å bruke, et eksempel på hvor galt det kan gå kan du lese her. Grunnen er forskjellen i hvordan disse to trigges. Nå er det litt mer komplisert enn det som forklares her (og sjekkene skjer oftere enn det), men la oss for enkelhets skyld si at alle eventer blir sjekket hvert sekund. Normalt skal et Event kun kjøre en gang, med mindre det er gode grunner til å kjøre det flere ganger, men sannsynligvis aldri så ofte som hvert sekund Et event med trigger "Taklys has been OFF for exactly 2 minutes" vil kun kjøre den ene gangen, og ferdig med det. Et event med trigger "Taklys has been OFF for at least 2 minutes" vil kjøre etter 2:00, 2:01, 2:02... altså hvert sekund etter at det har gått to minutter siden taklyset ble skrudd av. Jeg tror grunnen til at folk ofte velger "at least" istedenfor "exactly" er at "exactly" høres så usikkert ut. "Oi, tenk hvis den bommer! Da vil jo 'At Least' være sikrere". Og det finnes tilfeller der "At Least" absolutt kan være nyttig, den er spesielt hendig som en condition. Men hvis du vil bruke den som trigger, så må du legge til andre conditions som gjør at eventet ikke trigges i det uendelige... Q: Hvordan kan jeg endre rekkefølgen på Actions (eller conditions)? Må jeg slette alle Actions og legge dem til i rett rekkefølge? A: Neida, det er rett og slett "drag and drop". Minimer action/condition, og ta tak i den. Dra de så oppover (eller nedover) og slipp når du er fornøyd. Dette kan du ikke gjøre med en touch-skjerm, dessverre, man trenger en mus. Oppsummering Da har vi vært gjennom en kort introduksjon til automatisering, tro det eller ei. Og ja, nå begynner det å dra seg til! Event-motoren er utmerket, og det er enkelt å redigere og utvide etter hvert. Event-motoren er et kraftig verktøy, som tidvis kan være ganske komplisert. Det vil ta seg litt tid å lære, men når man har satt opp de første Eventene (og navngitt dem skikkelig), så går det raskt å sette opp flere. Øvelse gjør mester! Det er mulig vi kommer tilbake til eventer senere, det er litt avhengig av tilbakemeldingene. Savner du noe, gi lyd i kommentarfeltet under. HomeSeer-skolen har tidligere dekket innkjøp (del 1), oppsett (del 2), Z-wave-konfigurasjon (del 3 og del 4), 433 MHz utstyr (del 5) og device-håndtering, -sortering og -oppsett (del 6). I del 8 skal Fermate vise oss hvordan vi kommer i gang med HStouch Designeren! Vis full oppføring