DiderikFrom Skrevet 18. mai 2016 Skrevet 18. mai 2016 (endret) Edit April 2019: Dessverre har dette skriptet sluttet å virke grunnet endringer i Weather Undergrounds tjenester. Forhåpentligvis kommer det en ny versjon her, men tidsaspektet er uvisst. Edit: Dersom du hopper til denne posten, finner du en lua-implementasjon for HomeSeer med dette skriptet: https://www.hjemmeautomasjon.no/forums/topic/122-real-time-solar-data-without-any-hardware-sensor/?do=findComment&comment=7954 Dette er jo det jeg har drømt om: https://www.domoticz.com/wiki/Real-time_solar_data_without_any_hardware_sensor_:_azimuth,_Altitude,_Lux_sensor... Supert initiativ med lux og diverse andre værdata beregnet real-time og ut fra tid, vær, skylag. Jeg synes lux-sensorer for mange formål blir vel lokale. Dessverre er jeg ikke så stødig i LUA, forøsøkte å gjøre dette om til noe jeg kan bruke i HS3, dvs, bare et skript som gir meg tallene slik at jeg bruke curl for å oppdatere en virtual device i Homeseer, men no luck. Endret 27. april 2019 av DiderikFrom Siter
Moskus Skrevet 18. mai 2016 Skrevet 18. mai 2016 Det er en viss forskjell mellom LUA (*grøss*) og .NET, men jeg er enig, dette kan se spennende ut. Vi får se hva som egentlig skjer, å scripte det i etterkant burde være enkelt. Siter
DiderikFrom Skrevet 3. desember 2016 Forfatter Skrevet 3. desember 2016 Da har jeg endelig fått dette i opp og i gang! Det er ikke pent, for jeg kan ikke lua, men jeg har knotet meg til en slags bash/lua-hybrid som gjør at jeg hvert femte minutt får oppdatert fire virtuelle devicer i HS: Octa (skylagets tykkelse 0-8) basert på data fra Ogimet-stasjoner Solens høyde (nå er den 40 grader under horisonten) Azimuth (noe greier med solens vinkel mot nord, trengs for den siste devicen) Lux eller utendørs lysintensitet (estimert ut fra de foregående) nokså nøyaktig, virker det som så langt. Jeg har ikke vært så fornøyd med mine lux-sensorer fordi de er så avhengig av å plasseres riktig, og jeg har ikke villet la dem oppdatere seg så ofte pga. batterilevetid. I tillegg kan man legge til alskens devicer som angir "Solar Radiation" og lignende, men jeg nøyer meg med dette foreløpig. Jeg følger litt med på verdiene i HomeSeer før jeg tar dette i bruk, men planen er å la dette overta for lux-sensorene som måler belysning utenfra og styrer dimmere og fargetemperatur. Når man i tillegg får solens høyde, kan det være nyttig å kombinere med lux (ev. "Solar Radiation") for å stye rullegardiner &c. Siter
DiderikFrom Skrevet 4. desember 2016 Forfatter Skrevet 4. desember 2016 Jeg måtte visst kode litt mer lua. Det viser seg at ogimet ofte sender tom octa-data, og da kan ikke lux beregnes. Det er tatt høyde for i det opprinnelige skriptet ved at forrige octa-verdi hentes fra domoticz -- jeg måtte finne en alternativ måte å hente forrige verdi, men nå håper jeg det blir stabilt. Jeg legger så til (når jeg gidder) "direct" og "scattered solar radiation" i W/m2. 2 Siter
aeklo Skrevet 4. desember 2016 Skrevet 4. desember 2016 Dette er skikkelig tøft!Gleder meg til å følge utviklingen i denne tråden!Når kommer plug-in'en? [emoji1]Sent from my iPhone using Tapatalk Siter
DiderikFrom Skrevet 4. desember 2016 Forfatter Skrevet 4. desember 2016 Så bra noen andre synes dette er gøy! Enda mer lua, men nå skal siste octa (skydekketetthet) lastes inn som lua-variabel ved starten av scriptet. Og så har jeg også lagt til direct, indirect (scattered) og total solar radiation. Nå er jo solen gått ned, så det meste er "0". Plugin aner jeg ikke hvordan man lager, men kjører man HS3 på linux er det bare å konfigurere høyde over havet, by, land, lengde- og breddgrad samt nærmeste Ogimet-stasjon (for skydekkedata), samt få en konto hos weather underground, og så funker det. Jeg kjører dette jevnlig sammen med de andre skriptene mine, men man kan bare lage en event i HS der man "Run another program or process" hvert kvarter eller hvert femte min. Dog er det ganske lite som er linux-spesifikt av det jeg har gjort, så det skulle være ganske lett å portere til Windows/.NET. Og sikkert til gjennomført lua også, men da må man kunne lua bedre enn meg... 3 Siter
Moskus Skrevet 4. desember 2016 Skrevet 4. desember 2016 Wow, det var helt rått! ... men jeg ser ikke helt hva du har gjort? Har du eller har du ikke konvertert lua-koden? Siter
DiderikFrom Skrevet 4. desember 2016 Forfatter Skrevet 4. desember 2016 1 hour ago, Moskus said: ... men jeg ser ikke helt hva du har gjort? Har du eller har du ikke konvertert lua-koden? Jeg har delvis skrevet om lua-skriptet slik at det ikke krever domoticz. Og så var det noe som ble for vanskelig til å skrive i lua. Jeg kunne nok oppdatert HomeSeer-devicene rett fra skriptet, men "octa" trenger en del prosessering, og det ble for vanskelig... For å oppdatere hver av de virtuelle devicene starter jeg fra lua-skriptet et annet program med verdien som devicen skal ha som input. Jeg starter ett bash script (men det er bare å angi path til os.execute dersom man vil bruke noen annet enn bash) med to input: device og verdi. Dette gjør jeg fordi octa ikke oppdateres korrekt hver gang skriptet kjøres, men ofte bare returnerer "/". Da bruker jeg forrige octa-verdi, som i det opprinnelige skriptet hentes fra domoticz' uservariables lua-array. Tilsvarende fikk jeg ikke til i lua., men måtte ta en omvei om et språk jeg kan. Det som er skrevet i bash er vedlig begrenset og sikkert enkelt å kovertere til .NET. Siter
Moskus Skrevet 5. desember 2016 Skrevet 5. desember 2016 10 timer siden, DiderikFrom skrev: Jeg kunne nok oppdatert HomeSeer-devicene rett fra skriptet, men "octa" trenger en del prosessering, og det ble for vanskelig... 10 timer siden, DiderikFrom skrev: Det som er skrevet i bash er vedlig begrenset og sikkert enkelt å kovertere til .NET. Okay, jeg må se enda litt nærmere på dette. Hvis det krever mye beregninger, så er muligens plugin veien å gå. Om ikke annet for å kjøre beregningene i en annen prosess... Hvis du føler du har noe å dele, så send gjerne en PM. Siter
DiderikFrom Skrevet 5. desember 2016 Forfatter Skrevet 5. desember 2016 @Moskus Det skal ganske lite til (nå som jeg har skjønt hva man må gjøre) for å endre lua-skriptet til å fungere uten domoticz. Det eneste jeg slet med, var å finne en måte å laste inn siste octa-verdi til bruk dersom ny verdi ikke er tilgjengelig (dvs. ogimet svarer med "/"). Dette skriptet vedlikeholdes på domoticz' wiki, og jeg tenker det er litt undøvedig å finne opp hjulet to ganger, men heller gjøre enkle tilpassinger for HomeSeer. Det er i hvert fall veldig mye mindre arbeid, men forutsetter at man kan/vil kjøre lua. Dersom man ikke kan kjøre lua, må man oversette skriptet helt. Hva har du tenkt å gjøre? Dersom du vil oversette helt eller delvis (bare det jeg har skrevet i bash) til .NET, eller lage plugin, er jeg gjerne med (med min begrensede kunnskap om .NET og plugins). Sender gjerne en PM senere i dag nå rjeg har tilgang til scriptet. Siter
Moskus Skrevet 5. desember 2016 Skrevet 5. desember 2016 4 minutter siden, DiderikFrom skrev: Det eneste jeg slet med, var å finne en måte å laste inn siste octa-verdi til bruk dersom ny verdi ikke er tilgjengelig (dvs. ogimet svarer med "/"). Hvis den svarer med "/" trenger du jo ikke oppdatere noe, så det kan du jo bare hoppe over. Et øyeblikk siden, DiderikFrom skrev: Det er i hvert fall veldig mye mindre arbeid, men forutsetter at man kan/vil kjøre lua. Ja, det er vel det jeg vil unngå. Begynner å bli ferdig med å gå over bekker etter vann. Siter
DiderikFrom Skrevet 5. desember 2016 Forfatter Skrevet 5. desember 2016 51 minutes ago, Moskus said: Hvis den svarer med "/" trenger du jo ikke oppdatere noe, så det kan du jo bare hoppe over. Det gjorde jeg først, men da oppdateres heller ikke LUX igjen (man får Nan: not a number) basert på nye verdier for altitude og azimuth, og ev. annen data fra wunderground. Derfor henter jeg (og det opprinnelige lua-skriptet) den sist lagrede verdien for octa i (domoticz) HomeSeer slik at den kan brukes i beregningen. 56 minutes ago, Moskus said: Ja, det er vel det jeg vil unngå. Begynner å bli ferdig med å gå over bekker etter vann. Ja, hvorfor ikke. Man kunne kanskje lage eller opprette et sted her der man kunne samarbeide om et prosjekt. En ting for denne saken er å få rådata ut av wunderground, ogimet &c, en annen å få regnestykkene å plass i klartekst, en annen ting å få dem skrevet i .NET/bash/lua, og til sist å få det hele satt sammen som et skript eller plugin. Jeg har så mye annet på tapetet at jeg ikke klarer å skrive om hele skriptet fra lua til et annet språk alene, men tar gjerne deler av oppgaven (og er godt i gang). Og jeg har jo noe som funker for meg. Siter
Moskus Skrevet 5. desember 2016 Skrevet 5. desember 2016 7 minutter siden, DiderikFrom skrev: Det gjorde jeg først, men da oppdateres heller ikke LUX igjen (man får Nan: not a number) basert på nye verdier for altitude og azimuth, og ev. annen data fra wunderground. Derfor henter jeg (og det opprinnelige lua-skriptet) den sist lagrede verdien for octa i (domoticz) HomeSeer slik at den kan brukes i beregningen. Aha, da forstår jeg problemstillingen. Men her kommer fordelen av å ha alt i HomeSeer, man kan jo mye enklere hente de verdiene som ligger der allerede. 8 minutter siden, DiderikFrom skrev: En ting for denne saken er å få rådata ut av wunderground, ogimet &c, en annen å få regnestykkene å plass i klartekst, en annen ting å få dem skrevet i .NET/bash/lua, og til sist å få det hele satt sammen som et skript eller plugin Tenker jeg starter med et helt grunnleggende.NET console program. Og så løses et problem om gangen. Mulig jeg kan spørre deg om hva "det eller det" returnerer, eller hvilken verdi du får. Siter
DiderikFrom Skrevet 6. desember 2016 Forfatter Skrevet 6. desember 2016 (endret) 19 hours ago, Moskus said: Tenker jeg starter med et helt grunnleggende.NET console program. Og så løses et problem om gangen. Mulig jeg kan spørre deg om hva "det eller det" returnerer, eller hvilken verdi du får. OK, greit å kunne lime noe inn i scriptboksen i en event. Jeg har skrevet om det originale skriptet enda en gang... Nå gjør jeg alt i lua i ett skript, og bruker curl fra lua-skriptet til å hente ut gammel octa-verdi samt oppdatere devicene. (curl til HomeSeer for å stye med JSON). Tenkte teste litt videre, men ser ut til å funke utmerket (dog er jo solen så mye nede på denne tiden av året). Endret 6. desember 2016 av DiderikFrom Siter
DiderikFrom Skrevet 7. desember 2016 Forfatter Skrevet 7. desember 2016 (endret) Da begynner jeg å bli veldig fornøyd med min versjon av dette, og jeg deler gjerne. Vi får se om @Moskus får lagd en plugin (som sikkert blir enda enklere), men oppsett av dette skulle være ganske greit. Veldig greit på linux, og sikkert passe greit på Windooze. På Windows har jeg ikke testet, men med riktige dependencies burde det fungere. Det du får: I HomeSeer, automatisk oppdatering av utendørs lysstyrke (LUX), skydekketetthet (octa), direkte, indirekte og total solstråling (i W/m2) samt solens høyde (i grader) og solens Azimuth (vinkel mot nord, også i grader). Det du trenger: HomeSeer, lua og curl. For å installere lua og curl på debian/ubuntu (dersom du ikke allerede har det): sudo apt-get install lua5.1 curl En annen versjon av lua fungerer sannsynligvis også greit. lua er et programmeringsspråk, og skriptet er skrevet i lua. curl brukes for å kommunisere med HomeSeers innebygde JSON API slik at vi kan oppdatere devicene. Start med å lage virtuelle devicer som under: For hver av devicene, noteres "Reference ID", under "Advanced". Og slik har jeg (f.eks. for LUX) satt opp "Status graphics" for at det skal være mulig å oppdatere via skriptet (dvs. JSON som skriptet bruker). Obs! Under Status-Control kan det gå galt, devicen oppdateres ikke dersom denne står på en spesiell måte. Edit 2: Jeg har satt en vid value range slik at jeg er sikker på at oppdatering ikke feiler fordi verdien ikke er tillatt for devicen. For LUX, som over, For Solar Altidue/Azimuth: -360 til 360 °, for Radiation 0-200000 (aner ikke hvilken verdi man når på en solrik sommerdag, men sannsynligvis langt under 200000 W/m2 -- det skader ikke å ha litt høy maxverdi), og Octa:0-8. For Radiation-devicene samt Solar Altitude og Azimuth, kan du vise decimaler dersom du vil, men det tror jeg er et unødvendig presisjonsnivå. Skriptet består av en hovedfil og en hjelpefil. Hjelpefilen må ligge i samme mappe som hovedskriptet og lastes automatisk for å dekode JSON-formatert input fra Weather Underground, HomeSeer, Ogimet og mer. Nå er det bare å lagre mappen med de to skriptfilene et sted, oppdatere innloggingen og sted for Weather Underground, lengde- og breddegrad for der du bor (ev. ønsker varsel), høyde over havet samt "Reference IDs" du noterte lenger opp. Du må også oppdatere banen til hjelpeskriptet. Sjekk at skriptet er kjørbart ('sudo chmod ug+x SolarSensor.lua'), og test med './SolarSensor.lua' Edit: Devicene oppdateres hver gang skriptet kjøres. Den enkleste måten å få det til å kjøre regelmessig er å lage en Event i HomeSeer som kjører automatisk så ofte du vil. Jeg gjør det på en annen måte, men forslagsvis: Det er litt vanskelig å poste begge skriptene her, men jeg tenkte gå igjennom og kommentere Jeg har gått gjennom skriptet og kommentert hva jeg har gjort, og lagt til header der jeg gir all ære til de som opprinnelig laget skriptet -- jeg har bare knotet meg gjennom et programmeringsspråk jeg ikke kan for å få skriptet til å snakke med HomeSeer i stedet for domoticz. Men det funker utmerket! Og støter du på problemer, sjekk først om reference IDs er riktig definert i skriptet, samt at du har satt opp devicene som i guiden. Dersom devicene i HomeSeer feil satt opp, tar de ikke i mot curl/JSON-oppdateringer. Gi lyd under dersom du er interessert! Skriptet finner du nå som vedlegg til denne posten: solar_data_for_distribution_vH.1.zip @Lazarus har nå lagt til støtte for OpenHab i tillegg til HomeSeer i en ny versjon, tillegg er støtte for Windows sikret og testet: solar_data_for_distribution_vHO.1.zip Ny versjon 09.01.17 @Lazarus: solar_data_for_distributionv2.2.1.zip (Mulighet for å velge desimalskilletegn samt mer omfattende instruksjoner for windows, og både windows 32- og 64bit-støtte.) Post gjerne erfaringer under. Edit: Og slik kan det se ut i bruk på en desemberdag: Jeg har brukt disse ikonene: LUX/radiation: /images/HomeSeer/status/luminance-00.png octa: images/HomeSeer/status/cyan.png Sun, *: images/HomeSeer/status/yellow.png Men det fins sikkert mye bedre ikoner der ute et sted dersom man gidder lete. Endret 9. januar 2017 av DiderikFrom 7 Siter
ZoRaC Skrevet 7. desember 2016 Skrevet 7. desember 2016 1 time siden, DiderikFrom skrev: Gi lyd under dersom du er interessert! Lyd! Siter
DiderikFrom Skrevet 7. desember 2016 Forfatter Skrevet 7. desember 2016 @ZoRaC Jeg har sendt PM. Da håper og tror jeg det skal funke greit Siter
eivtress Skrevet 7. desember 2016 Skrevet 7. desember 2016 1 time siden, DiderikFrom skrev: @ZoRaC Jeg har sendt PM. Da håper og tror jeg det skal funke greit Jeg vil også ha! Dette ser dødsbra ut. Siter
DiderikFrom Skrevet 7. desember 2016 Forfatter Skrevet 7. desember 2016 @eivtress PM til deg også! Siter
ZoRaC Skrevet 8. desember 2016 Skrevet 8. desember 2016 Gjorde et par slurvefeil når jeg satte det opp, men når de ble fikset så fungerer det utmerket! Sola er endelig på vei opp, så jeg får testet - 8 lux nå. Siter
DiderikFrom Skrevet 8. desember 2016 Forfatter Skrevet 8. desember 2016 3 hours ago, ZoRaC said: de ble fikset så fungerer det utmerket! Sola er endelig på vei opp, så jeg får testet - 8 lux nå. Supert! -------------- Jeg har utvidet posten med installeringsguide. Sender fortsatt gjerne PM med filer til de som vil ha. Ev. om det er en løsning med å hoste filene på forumet, eller som et attachment? Og post gjerne erfaringer i tråden her. Siter
ZoRaC Skrevet 8. desember 2016 Skrevet 8. desember 2016 Hvordan har du satt opp grafikken på devicene dine? Ser litt bedre ut enn mitt Siter
DiderikFrom Skrevet 8. desember 2016 Forfatter Skrevet 8. desember 2016 15 minutes ago, ZoRaC said: Hvordan har du satt opp grafikken på devicene dine? Jeg har brukt disse ikonene: LUX/radiation: /images/HomeSeer/status/luminance-00.png octa: images/HomeSeer/status/cyan.png Sun, *: images/HomeSeer/status/yellow.png Men det fins sikkert mye bedre ikoner der ute et sted dersom man gidder lete. Og så er posten min oppdatert med samme info! Siter
ZoRaC Skrevet 8. desember 2016 Skrevet 8. desember 2016 5 minutter siden, DiderikFrom skrev: LUX/radiation: /images/HomeSeer/status/luminance-00.png Vet du hva som er normale maksverdier på disse? Tenker på hvordan man får "fordelt" lumiance-XX.png på en fornuftig måte. Siter
Moskus Skrevet 8. desember 2016 Skrevet 8. desember 2016 Har du en Aeon Labs multisensor eller et Fibaro øye? For den er grafikken satt ganske bra til Lux. Siter
Anbefalte innlegg
Bli med i samtalen
Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.