Tak czy siak Browar się należy a Matka zawsze siedzi z przodu , teraz do brzegu , proszę w takim razie o wskazanie różnicy w tym co zrobiłem a tym co poniżej
return {
on = { timer = { 'every 2 minutes' }
},
logging =
{
level = domoticz.LOG_ERROR,
marker = 'średnia temp pokojowa',
},
execute = function(dz, item)
local Temp1 = dz.devices('Salon Temp/Wilg').temperature
local Temp2 = dz.devices('Temp Biuro').temperature
local decimals = 1
local Tempavg = dz.utils.round((Temp1 + Temp2 ) / 2 , decimals)
dz.devices('Temp Termostat').updateTemperature(Tempavg)
dz.log('Średnia wyliczona temperatura: ' .. Tempavg, dz.LOG_INFO)
end
}
I pomijam tu uruchamianie skryptu od timera , bo w tym przykładowym przepływie go nie ma co nie znaczy, że tak zostanie.
Mam na mysli samą matematykę , w skrypcie dzvents , również pierwsze co się wykona to suma dwóch wartości , dla jasności powiem , że robiłem próby gdzie w nodach change zmieniałem string na number , ale to nic nie wnosiło . Mniejsza o to , ciekawy jestem wyjaśnienia różnicy bo w dzVents gdy zostawię tylko a+b i a = 22 natomiast b = 21 to dostanę sumę 43, a nie zmieniony string typu 2221.
PS.
W NR wskazuję wyraźnie o jakie wartości mi chodzi , wybierajac wskazania samej temperatury a nie np tamp + wilgotność , w dzVents muszę to wyraźnie zdekalarować bo w domoticz nie mam dwóch oddzielnych “czujników” tylko zespolony , zrozumiałbym że wyjdą bzdury gdy podstawię dwa różne typy np temp i odległość , ale wtedy powinienem dostać błąd , albo obie wartości konwertować do samych liczb. Dobra nie będę się rozwodził , chcę tylko poznać różnicę , jeśli mogę .
Dla spójności poniżej lokalne zmienne tak samo nazwane
local a = dz.devices('Salon Temp/Wilg').temperature
local b = dz.devices('Temp Biuro').temperature
local decimals = 1
local Tempavg = dz.utils.round((a + b ) / 2 , decimals)
dz.devices('Temp Termostat').updateTemperature(Tempavg)
dz.log('Średnia wyliczona temperatura: ' .. Tempavg, dz.LOG_INFO)
end
}