kjetilkl Skrevet 23. januar 2022 Skrevet 23. januar 2022 (endret) Jeg har forsøkt meg på å få vist forbruk i kr pr dag på noen devicer som jeg har strømmåling på. Min første tanke var å kjøre dette som SQL-spørringer direkte mot Device History-databasen, men det stoppet seg litt da det ble noe for komplisert for min begrensede SQL-kunnskap. (Spørringen må hente ut alle registreringer innenfor en klokketime, og så regne ut hvor mange kwh det er innenfor denne timen, eventuelt så må den trekke fra maks forrige time fra maks denne timen og vise forskjellen som jeg så kan gange med strømprisen den timen - hvis noen er god på SQL og har en enkel løsning på dette tar jeg imot med åpne armer) Så, leste jeg en post her som jeg ikke finner igjen om å skrive en verdi til en virtuell device. - Det kunne kanskje vært enklere, så hvis jeg kunne fått lage en virtuell device som kun hadde antall kWh forbrukt pr time, så kunne jeg nok enklere gange verdien i denne med strømprisen - muligens, hvis jeg skjønner hvordan jeg skal spørre på en spesifikk time Jeg har søkt endel, for jeg tenkte dette var noe noen hadde gjort før, men har egentlig ikke funnet noe som passer helt. Er det noen som har gjort dette, eller har et forslag til hvordan det kan løses? Har begrensede SQL-kunnskaper og lite vbscript-kunnskaper .... Endret 23. januar 2022 av kjetilkl Siter
Moskus Skrevet 24. januar 2022 Skrevet 24. januar 2022 Til dette må det nok litt scripting til. Det er ikke egentlig vanskelig, men det er litt nytt å tenke på. Å skrive en verdi til en device er bare hs.SetDeviceValueByRef(DEV_REF, value, True). Det er det andre som er litt mer komplisert. Hvis du har Device History kan du hente ut snitt, max og min-verdi for den siste timen, og regne på det: max-min = forbruk hvis du henter det ut kl. HH:59. Siter
kjetilkl Skrevet 25. januar 2022 Forfatter Skrevet 25. januar 2022 (endret) 21 hours ago, Moskus said: Til dette må det nok litt scripting til. Det er ikke egentlig vanskelig, men det er litt nytt å tenke på. Å skrive en verdi til en device er bare hs.SetDeviceValueByRef(DEV_REF, value, True). Det er det andre som er litt mer komplisert. Hvis du har Device History kan du hente ut snitt, max og min-verdi for den siste timen, og regne på det: max-min = forbruk hvis du henter det ut kl. HH:59. Mja, det er selvsagt så - i forhold til å gjøre det slik så er det nok scriptingen jeg lurer mest på. - og når du sier det, så trenger jeg jo egentlig bare høyeste verdi innefor hver time - denne times verdi minus forrige times verdi. Men - er det vbscript som må benyttes? og hvor enkelt er det å starte med? Eller er vet noe om noe lignende som kan tilpasses? Er helt blank på det området... Endret 25. januar 2022 av kjetilkl Siter
Moskus Skrevet 25. januar 2022 Skrevet 25. januar 2022 Det er VB.NET, heldigvis. Stort sett bare forskjellig syntax mellom VB.net og C#. Det er litt her: og så er det mange scripts å se på her: https://www.hjemmeautomasjon.no/forums/forum/44-scripts/ ... og muligheter for å spørre. 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.