Formule berekening via Script
Formule berekening via Script
Hallo,
Ik zou graag een berekening willen maken middels een script in HS waarbij ik de uitkomst gebruik als weergave en om in een later stadium hem weer tegeven in een grafiek.
Alleen mijn VB kennis is niet van die maten dat ik dit voor elkaar krijg.
Daarom bij deze mijn vraag is er iemand die mij hierbij kan helpen.
De berekening die ik wil maken is Q=m*c*Delta T
Waarbij de m en de c 2 vaste waarde zijn die ik weet en de Delta T ik via 2 sensoren in HS inlees alleen de Q wil ik weergeven in mijn HStouch.
Dit omdat ik de vermogen van oa mijn cv ketel inzichtelijk wil maken in kW (kJ/s)
En omdat ik wel draadjes aan elkaar kan knopen maar met VB nog niet uit de voeten kan komen vraag ik bij deze hulp [;)]
Gr,
DJ
Ik zou graag een berekening willen maken middels een script in HS waarbij ik de uitkomst gebruik als weergave en om in een later stadium hem weer tegeven in een grafiek.
Alleen mijn VB kennis is niet van die maten dat ik dit voor elkaar krijg.
Daarom bij deze mijn vraag is er iemand die mij hierbij kan helpen.
De berekening die ik wil maken is Q=m*c*Delta T
Waarbij de m en de c 2 vaste waarde zijn die ik weet en de Delta T ik via 2 sensoren in HS inlees alleen de Q wil ik weergeven in mijn HStouch.
Dit omdat ik de vermogen van oa mijn cv ketel inzichtelijk wil maken in kW (kJ/s)
En omdat ik wel draadjes aan elkaar kan knopen maar met VB nog niet uit de voeten kan komen vraag ik bij deze hulp [;)]
Gr,
DJ
Re: Formule berekening via Script
Beginnetje:
Code: Select all
Sub Main(ByVal Params As String)
Dim Q, M, C, T, lngDeviceValue As Long
Dim strDevice As String
strDevice = hs.stringitem(Params, 1, ";")
m = hs.stringitem(Params, 2, ";")
c = hs.stringitem(Params, 3, ";")
t = hs.stringitem(Params, 4, ";")
Q = m * C * T
lngDeviceValue = Q
hs.setdevicestring(strDevice, lngDeviceValue.toString(), True)
End Sub
Alexander
Re: Formule berekening via Script
Dank je wel voor je reactie.
Hier kan ik hoop ik zeker wel mee verder, als het goed is komen er nu 4 vrije dagen aan dus met een
beetje geluk kan ik hier mee verder gaan.
Momenteel heb ik alle temperatuur voelers op de juiste plekken zitten en meten nu de juiste waarde.
Hier kan ik hoop ik zeker wel mee verder, als het goed is komen er nu 4 vrije dagen aan dus met een
beetje geluk kan ik hier mee verder gaan.
Momenteel heb ik alle temperatuur voelers op de juiste plekken zitten en meten nu de juiste waarde.
__________________
Re: Formule berekening via Script
Ik blijf alleen nog even hangen op "Delta T ik via 2 sensoren"
Wat is de formule Delta T waarin die twee sensoren zijn opgenomen?
Wat is de formule Delta T waarin die twee sensoren zijn opgenomen?
Alexander
Re: Formule berekening via Script
Dat zal het temperatuurverschil zijn, die is dus al in een eerder stadium bepaald zo te zien.
Re: Formule berekening via Script
de delta T is de het verschil van de retour temperatuur en de aanvoer temperatuur die ik meet.
Voorbeeld:
Ta = Aanvoer temperatuur 80ºC
Tr = Retour temperatuur 60ºC
Td = Verschiltemperatuur
Td = Ta-Tr
Td = 80ºC - 60ºC
Td = 20ºC
Dus deze waarme moet eigenlijk wel in de som nog mee genomen worden (Q=m.c.(Ta-Tr)
Voorbeeld:
Ta = Aanvoer temperatuur 80ºC
Tr = Retour temperatuur 60ºC
Td = Verschiltemperatuur
Td = Ta-Tr
Td = 80ºC - 60ºC
Td = 20ºC
Dus deze waarme moet eigenlijk wel in de som nog mee genomen worden (Q=m.c.(Ta-Tr)
__________________
Re: Formule berekening via Script
Waar sla je het verschil van die waarden dan in op? Of heb je hiervoor ook twee devices die de waardes weergeven?
Alexander
Re: Formule berekening via Script
De 2 temperaturen die meet ik al maar zou ik dan de uitkomst van die 2 eerst weg moeten schrijven dan of kan je dat via de script laten onthouden tijdens deze berekening?
__________________
Re: Formule berekening via Script
"De 2 temperaturen die meet" is voor mij een beetje nog te abstract. Waar toon je die waarden of schrijf je ze weg?
Alexander
Re: Formule berekening via Script
Sorry voor de onduidelijkheid
Die 2 temperaturen meet ik via de RFXsensor die ik ontvang in HS en weergeef in RFXcharts en via het normale status scherm de huis/sensor code J6 en J7 (Zie screenshot).


Die 2 temperaturen meet ik via de RFXsensor die ik ontvang in HS en weergeef in RFXcharts en via het normale status scherm de huis/sensor code J6 en J7 (Zie screenshot).

__________________
Re: Formule berekening via Script
Negeer mijn script en probeer dit eens binnen HS (via de button control en dan in de sectie "immediate script command"):
&hs.setdevicevalue("V1", &hs.devicevalue("]6") - &hs.devicevalue("]7"))
Waarbij V1 een device is waar je delta T in wilt wegschrijven. Als dat werkt kun je de formule uitbreiden (ik weet de rest van je devices niet of waarden).
&hs.setdevicevalue("V1", &hs.devicevalue("]6") - &hs.devicevalue("]7"))
Waarbij V1 een device is waar je delta T in wilt wegschrijven. Als dat werkt kun je de formule uitbreiden (ik weet de rest van je devices niet of waarden).
Alexander
Re: Formule berekening via Script
Ik heb zojuist de script er in gezet waarbij ik V1 heb veranderd in V10.
Nu krijg ik zelf geen foutmelding te zien als ik hem uitvoer, alleen de virtuel device die ik heb aangemaakt onder V10 laat nu alleen een lamp zien die aan gaat en niet de uitkomst.
Kan dat?
Nu krijg ik zelf geen foutmelding te zien als ik hem uitvoer, alleen de virtuel device die ik heb aangemaakt onder V10 laat nu alleen een lamp zien die aan gaat en niet de uitkomst.
Kan dat?
__________________
Re: Formule berekening via Script
Doe eens een status only device en als dat niet afdoende is "&hs.setdevicevalue" vervangen door "&hs.setdevicestring". Ik denk alleen dat daar een error door gaat optreden omdat de tweede parameter nu een long is ipv een string.
Alexander
Re: Formule berekening via Script
Als eerst nog via deze post voor iedereen de beste wensen namens mij
@Alexander, ik ben van het weekeind hiermee verder gegaan omdat ik hem toch aan de gang wil krijgen zeker omdat ik hiervan een begin wil maken om beter wegwijs te worden in HS en de functie's er van.
Ik heb zelf even een nieuwe device naam gebruikt er voor namelijk V11 omdat ik er achter ben gekomen dat al eerder de V10 die ik gebruikte was weg geschreven waardoor ik alleen een lamp kreeg te zien die brand.
Omdat ik V11 heb gebruik zonder een status melding er achter krijg ik constant "Unknown" te zien.
Is er toevallig een soort van handleiding of debug scherm waarin ik kan zien wat er gebeurt in die immediate script command?
Want ik krijg het idee dat daar wat mis gaat.
Ik hoor het graag.
Groetjes,
Dieuwert
@Alexander, ik ben van het weekeind hiermee verder gegaan omdat ik hem toch aan de gang wil krijgen zeker omdat ik hiervan een begin wil maken om beter wegwijs te worden in HS en de functie's er van.
Ik heb zelf even een nieuwe device naam gebruikt er voor namelijk V11 omdat ik er achter ben gekomen dat al eerder de V10 die ik gebruikte was weg geschreven waardoor ik alleen een lamp kreeg te zien die brand.
Omdat ik V11 heb gebruik zonder een status melding er achter krijg ik constant "Unknown" te zien.
Is er toevallig een soort van handleiding of debug scherm waarin ik kan zien wat er gebeurt in die immediate script command?
Want ik krijg het idee dat daar wat mis gaat.
Ik hoor het graag.
Groetjes,
Dieuwert
__________________
Re: Formule berekening via Script
Momenteel probeer ik even bij het begin te beginnen om een device die ik heb aangemaakt als `virtual V11´ alleen een status mee te geven waarnaar ik de formule kan verder kan opbouwen.
Daarvoor heb ik nu de volgende code gemaakt:
Deze code laat ik nu met een manual trigger lopen in de "Optional parameters (function,param)
ie: ("main","lights")"
Alleen nog steeds zonder reactie op het virtual device.
Zie ik iets hier over het hoofd?
Ik wil het event één maar per tijds eenheid laten draaien (en later na het starten van een trigger op een device) dus ik moet hem wel via de event laten lopen.
Daarvoor heb ik nu de volgende code gemaakt:
Code: Select all
(Sub main(ByVal parm As Object)
hs.setdevicedevice("V11",100)
end sub)
ie: ("main","lights")"
Alleen nog steeds zonder reactie op het virtual device.
Zie ik iets hier over het hoofd?
Ik wil het event één maar per tijds eenheid laten draaien (en later na het starten van een trigger op een device) dus ik moet hem wel via de event laten lopen.
__________________