Gå til innhold

Hjemmeautomasjon - Hva er det og hvorfor skulle jeg bry meg? (Automasjonskaféen)


Anbefalte innlegg

Men dette er vel kjent for deg, når jeg tenker meg om... ;)

 

Jada DEN biten er velkjent.

 

Jeg har foresten begynt å lage en tom main i filene og heller pakke sammen flere rutiner i samme familie

(Kan en droppe main helt tro?)

 

En kan jo egentlig pakke begge variantene inn i samme fila da, så de kan kalles fra begge steder. Er jo greit til testing.

 

Sub Main(ByVal parms As String)
End Sub
Sub DoItScript(ByVal param As String)
 Dim params() As String = param.ToString.Split("|")
 Call DoIt(params)
End Sub
Sub DoIt(ByVal parms() As String)
 ' do it here '
 SomeThing = params(0)
 SomeOtherThing = params(1)
End Sub

Lenke til kommentar
Videoannonse
Annonse

Vet noen om det er mulig å kalle script direkte fra HSTouch og bruke KONSTANTER i parameterne?

Jeg har bare fått det til med text fra andre controller.

Jævla sølete å måtte lage en usynlig text/label bare for å kunen sende inn en fast parameter :(

Lenke til kommentar

Jada DEN biten er velkjent.

 

Jeg har foresten begynt å lage en tom main i filene og heller pakke sammen flere rutiner i samme familie

(Kan en droppe main helt tro?)

 

En kan jo egentlig pakke begge variantene inn i samme fila da, så de kan kalles fra begge steder. Er jo greit til testing.

 

Sub Main(ByVal parms As String)
End Sub
Sub DoItScript(ByVal param As String)
 Dim params() As String = param.ToString.Split("|")
 Call DoIt(params)
End Sub
Sub DoIt(ByVal parms() As String)
 ' do it here '
 SomeThing = params(0)
 SomeOtherThing = params(1)
End Sub

Skal ikke si helt hva eksempelet ditt prøver å oppnå, du unngår jo ikke parameter-arrays så vidt jeg ser. Men det er jo ikke så nøye.

 

Jeg tror ikke du trenger å ha noen Main-sub i scriptet ditt, så lenge du kaller funksjonen direkte.

 

Main-sub'en er jo i hovedsak brukt når du "bare kjører et script", uten behov for sette noen inngangsparametre (f.eks. at de hentes selv).

Sub Main(ByVal parms As String)
Dim p(1) as String
p(0) = hs.GetDeviceValue("A1")
p(1) = hs.GetDeviceValue("B3")
DoIt(p)
End Sub

Sub DoIt(ByVal parms() As String)
   ' do it here '
   SomeThing = params(0)
   SomeOtherThing = params(1)
End Sub

Endret av Moskus
Lenke til kommentar

Skal ikke si helt hva eksempelet ditt prøver å oppnå, du unngår jo ikke parameter-arrays så vidt jeg ser. Men det er jo ikke så nøye.

Ø ja den var vel ikek så pedagogisk den koden der :)

 

Det er 3 delt:

 

#1 Jeg vil ikke bruke MAIN som rutine for da ender jeg lett opp med å kalle feil script (i feil fil)

 

#2 Når jeg kaller et skript fra HSTouch får jeg parameterne inn som ett array (enten jeg vil eller ikke)

Som rutinen "DoIt"

 

#3 For da å kunne kalle samme koden fra et skript kan jeg da lage en liten alternativ rutine "DoItScript" som tar imot de samme parameterne delt med pipe (|) og bare pakker dem om og sender dem inn i hoved rutinen. "DoIt"

 

Isteden for å kalle den med ("Main","p1|p2") kaller jeg den da med ("DoItScript","P1|p2")

 

Kapich?

Lenke til kommentar

Kapich?

Ah, ja. Jeg kaller veldig sjeldent scripts direkte fra HStouch, da jeg stort sett enten definerer egne DeviceValues (med hs.DeviceValuesAdd) eller lager knapper (med hs.DeviceButtonsAdd) på virtuelle devicer. Da oppnår jeg to ting:

1) Har "automatisk" en device som kan holde en verdi og en display tekst,

og

2) har en unison måte å kjøre scriptet på uavhengig om jeg bruker web-grensesnittet, en annen plugin (som f.eks. Squeezebox, min en TextSeer til WP-appen min), HStouch på mobil og HStouch på større skjermer.

 

... voliá! Jeg kan både huske en verdi og enkelt kjøre tilhørende scripts. :)

Lenke til kommentar

Ah, ja. Jeg kaller veldig sjeldent scripts direkte fra HStouch, da jeg stort sett enten definerer egne DeviceValues (med hs.DeviceValuesAdd) eller lager knapper (med hs.DeviceButtonsAdd) på virtuelle devicer. Da oppnår jeg to ting:

1) Har "automatisk" en device som kan holde en verdi og en display tekst,

og

2) har en unison måte å kjøre scriptet på uavhengig om jeg bruker web-grensesnittet, en annen plugin (som f.eks. Squeezebox, min en TextSeer til WP-appen min), HStouch på mobil og HStouch på større skjermer.

 

... voliá! Jeg kan både huske en verdi og enkelt kjøre tilhørende scripts. :)

m! Elegant!

Da får du jo opp alle Buttons innei HSTouch designeren også...

 

-Vil det si at du da alltid går via en HS Trigger for å kalle ett script fra HStouch?

Og at "parameterne" da blir overført som verdier i virtuelle devicer?

 

Men skaper du disse devicene fra script? Er det fordi er det klønete å lage dem "for hånd" i Webinterfacet til HS?

Lenke til kommentar

Jeg har to enkle senger som er satt sammen til en dobbelt seng der begge har (hver sin) motor-lift på ben og rygg.

 

Jeg ønsker å styre den fra Homeseer slik at jeg kan gi kommando "Kjør opp i preset lesestilling 1" og at "Godnatt" kjører sengen ned, skrur av Squeezebox og slukker lyset.

 

har snakket med leverandøren men motorene er for gamle til å kjøpe noe av det (bluetooth) utstyret de selger nå. Motorene har imidlertid 5 pol DIN plugger så jeg tenkte å rigge opp noe releer.

 

Skal jeg styre dem sammen trenger jeg 4 skal de også kjøres hver for seg trenger jeg 8. Etse kretskort og lodde og sånn er greit men jeg trenger noe som kan ta imot noen X10 eller Nexa kommandoer.

Kan godt være Z-wave for jeg må vel dit en dag uansett. Men jeg har ingen PC på soverommet (viftestøy) så USB/RS232 er ikek aktuellt.

 

Jeg kunne brukt iTach/rele men da må jeg ha 2 eller 3 stykker og de er ikke akkurat billige.

 

Noen som har noen gode forslag??

Endret av Fermate
Lenke til kommentar

m! Elegant!

Da får du jo opp alle Buttons innei HSTouch designeren også...

 

-Vil det si at du da alltid går via en HS Trigger for å kalle ett script fra HStouch?

Og at "parameterne" da blir overført som verdier i virtuelle devicer?

 

Men skaper du disse devicene fra script? Er det fordi er det klønete å lage dem "for hånd" i Webinterfacet til HS?

Hvert script har da i utgangspunkt en Install- eller Setup-sub, som tar seg av det å sette opp devicevalues eller knapper.

Dette brukes for scripts som ikke blir trigget automatisk eller av andre eksterne kilder (som Z-wave lys eller andre input'er).

 

Termostat-scriptet og vekkeklokkescriptet er fine eksempler på ting som enkelt håndteres slik. Da har man både ferdigtygget logikk for å kontrollere scriptet (uavhengig av HVA som kontrollerer det), har en fin lagret verdi og en annen pen tekst som synliggjøres.

 

 

Hva er dette?

Se under: Går lynkjapt i virkeligheten, selv over 3G, forstår ikke hvorfor emulatoren er så treig.

http://www.youtube.com/watch?v=LrTv5n9PZoM

 

Jeg har to enkle senger som er satt sammen til en dobbelt seng der begge har (hver sin) motor-lift på ben og rygg.

 

Jeg ønsker å styre den fra Homeseer slik at jeg kan gi kommando "Kjør opp i preset lesestilling 1" og at "Godnatt" kjører sengen ned, skrur av Squeezebox og slukker lyset.

 

har snakket med leverandøren men motorene er for gamle til å kjøpe noe av det (bluetooth) utstyret de selger nå. Motorene har imidlertid 5 pol DIN plugger så jeg tenkte å rigge opp noe releer.

 

Skal jeg styre dem sammen trenger jeg 4 skal de også kjøres hver for seg trenger jeg 8. Etse kretskort og lodde og sånn er greit men jeg trenger noe som kan ta imot noen X10 eller Nexa kommandoer.

Kan godt være Z-wave for jeg må vel dit en dag uansett. Men jeg har ingen PC på soverommet (viftestøy) så USB/RS232 er ikek aktuellt.

 

Jeg kunne brukt iTach/rele men da må jeg ha 2 eller 3 stykker og de er ikke akkurat billige.

 

Noen som har noen gode forslag??

Hack en joystick, kjøp en USB-over-IP extender (de har jo ingen vifter) og bruk Direct Input plugin'en. :)

Jeg håper DI-pluginen blir oppgradert til HS3, men jeg vet ikke. Stipus er nå iallfall aktiv enda.

Endret av Moskus
Lenke til kommentar

Eller du kan bruke en Arduino med nettverkstilkobling eller Netduino (med vb.net-støtte ;)) for å styre den. :)

Har ikke noe nettutak på soverommet (skjønner ikke hvor jeg hadde hue hen da jeg byggde i 2001) så noe USB over IP blir det ikke. (Kunne prøvd det over Powerline men er redd det hadde blitt sølete)

 

Men den Netduino'en så jo lekker ut.

Alt jeg trenger der.. Og VB! mmm :)

 

Har noen prøvd en slik?

Bestille fra hvor?

Lenke til kommentar

Rollertrol.com. ;)

Frakten er ikke direkte billig, men verdt det nå. Iallfall målt i "geek-value". ;)

Jeg renner over av spørsmål:

 

# 315Mhz eller 433Mhz radio?

# Var det greit å putte den i IKEA rullegardina?

(Måtte du tilpasse mye)

# Hvilken modell valgte du (og hvorfor)?

# Jeg kan klare meg med bare motoren? (Uten styringa) og kjøre over RFXCOM?

# Den skal da ha et 12 eller 24 V power inn i enden av gardina?

Lenke til kommentar

Jeg renner over av spørsmål:

 

# 315Mhz eller 433Mhz radio?

# Var det greit å putte den i IKEA rullegardina?

(Måtte du tilpasse mye)

# Hvilken modell valgte du (og hvorfor)?

# Jeg kan klare meg med bare motoren? (Uten styringa) og kjøre over RFXCOM?

# Den skal da ha et 12 eller 24 V power inn i enden av gardina?

 

1. 433 MHz.

2. Ja. Men ha gaffa-teipen klar for å legge på litt (står forøvrig beskrevet i manualen til Rollertrol). Måtte litt tilpassing til, men jeg la på for mye så jeg måtte ta av en del tape igjen. Og husk det er bare den innerste delen som skal tepies (du forstår det når du har det i hende).

3. Rollertrol Mini (18 mm)

4. I teorien, ja. RFXCOM-plugin'en kan nå sende lære-kommandoene som brukes. Jeg kjøpte fjernkontrollen for sikkerhetsskyld, men kunne nok klart meg uten.

5. 12 V.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...