domoticz delta, bra...
 
Powiadomienia
Wyczyść wszystko

Problem domoticz delta, brak wyniku z wyliczenia

16 Wpisów
2 Użytkownicy
1 Reactions
1,047 Wyświetleń
(@nototojazda10)
Wpisów: 23
Praktykant
Autor tematu
 

witam czy mzona prosic o pomoc w  obliczeniach delty w domoticzu 

dodałem taki skrypt

return {
on = {
devices = {
12
}
},
execute = function(domoticz, device)
domoticz.devices(32).updateTemperature(domoticz.devices(12).temperature - domoticz.devices(13).temperature)
end
}

utworzyłem wirtualny czujnik temp idx32

dwa czujniki temp idx 12 i idx 13 

dodałem do dzVents device i cisza nic mi nie pokazuje

czy o czyms zapomniałem?

dziekuje z góry

Pozdrawiam.

 

 
Dodane : 13/09/2022 8:13 pm
(@nototojazda10)
Wpisów: 23
Praktykant
Autor tematu
 

dodam ze w ustawieniach domoticz mam zaznaczony dzVents 

dystrybucja ubuntu 18.04 

domoticz 

wersja 2021.1  13745

 

dzVents  3.1.8

 
Dodane : 13/09/2022 8:20 pm
isom
 isom
(@isom)
Wpisów: 5178
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
 

@nototojazda10 co masz w logach domoticz po dodaniu tego skryptu ? Czy w Konfiguracja- Ustawienia- Inne masz aktywne to okno

1

 

 
Dodane : 13/09/2022 8:25 pm
(@nototojazda10)
Wpisów: 23
Praktykant
Autor tematu
 
image

mam zaznaczoną tą funkcje 

w logu pokazuje mi tylko właczniki nic po za nimi

 
Dodane : 13/09/2022 8:36 pm
isom
 isom
(@isom)
Wpisów: 5178
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
 
Dodane przez: @nototojazda10

w logu pokazuje mi tylko właczniki nic po za nimi

Wstaw ten skrypt zmieniając nazwy na swoje ( podałem Twoje idx) , a czujnik Temp Test to twój czujnik z idx 32 . Jak nie będzie działał to wstaw tu logi z domoticz 

return {
   on = { devices = { 'Temp dwanaście' } -- nazwa czujnika idx 12
       }, 
    logging =   
    {
        level = domoticz.LOG_DEBUG, 
        marker = 'Delta z dwóch temp',
    },    

   execute = function(dz, item)
       
       local Temp1 = dz.devices('Temp dwanaście').temperature -- nazwa  idx 12
       local Temp2 = dz.devices('Temp trzynaście').temperature -- nazwa idx 13
       local decimals = 2
       local Tempavg = dz.utils.round(Temp1 - Temp2 ) , decimals
       dz.devices('Temp Test').updateTemperature(Tempavg)
       dz.log('Delta wyliczona temperatura: ' .. Tempavg, dz.LOG_INFO) 
   end
}
 
Dodane : 13/09/2022 8:43 pm
(@nototojazda10)
Wpisów: 23
Praktykant
Autor tematu
 

@isom czy ma to wyglądac w ten sposób

Delta _czujnik_temp idx 32
Woda_Cwu_Góra idx 12
Woda_Cwu_Doł idx 13

return {
on = { devices = { Woda_Cwu_Góra } -- nazwa czujnika idx 12
},
logging =
{
level = domoticz.LOG_DEBUG,
marker = 'Delta z dwóch temp'
},

execute = function(dz, item)

local Temp1 = dz.devices(Woda_Cwu_Góra).temperature -- nazwa idx 12
local Temp2 = dz.devices(Woda_Cwu_Doł).temperature -- nazwa idx 13
local decimals = 2
local Tempavg = dz.utils.round((Temp1 - Temp2 ) / 2 , decimals)
dz.devices(Delta _czujnik_temp).updateTemperature(Tempavg)
dz.log('Delta wyliczona temperatura: ' .. Tempavg, dz.LOG_INFO)
end
}

 
Dodane : 13/09/2022 9:03 pm
isom
 isom
(@isom)
Wpisów: 5178
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
 

Nazwy są ok , ale ja zrobiłem błąd , sprawdź poprawiony skrypt wyżej zmiana to 

local Tempavg = dz.utils.round(Temp1 - Temp2 ) , decimals

 
Dodane : 13/09/2022 9:59 pm
(@nototojazda10)
Wpisów: 23
Praktykant
Autor tematu
 

Nic to nie zmieniło niestety dalej głucho   w logu tez cisza i to mnie zastanawia? ze tak dodam jakis tam skrypt termostatu działa normalnie bez problemu w dzVents  a tutaj cisza.

 
Dodane : 14/09/2022 12:38 am
isom
 isom
(@isom)
Wpisów: 5178
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
 

@nototojazda10 co to jest za czujnik idx 12 ? Co go aktualizuje ? Jeśli ten czujnik działa i pokazuje na bieżąco swoją temperaturę, a jak twierdzisz inne skrypty dzvents działają , to w logach powinny być chociaż błędy . Nie może być NIC , bo skrypt wymusza zapis w logach.

NIC może być tylko gdy ten czujnik idx 12 nie działa.

 
Dodane : 14/09/2022 7:12 am
(@nototojazda10)
Wpisów: 23
Praktykant
Autor tematu
 

Jest to czujnik ds18b20 stoi na esp8266  odświeża co 2 sec w Domoticzu tez wartość się zmienia co chwile bez problemu 

Nie  mam w logu niestety nic poza wlasnie przelacznikami z termostatu i jakieś z powiadomień, 

 
Dodane : 14/09/2022 7:22 am
isom
 isom
(@isom)
Wpisów: 5178
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
 
Dodane przez: @nototojazda10

Jest to czujnik ds18b20 stoi na esp8266  odświeża co 2 sec w Domoticzu

Pomijam bezsens odpytywania co 2 sek czujnik zasobnika CWU , czy jest szansa że ta woda tak szybko zmieni temperaturę ? Takie częste odczyty to dobry krok w stronę szybkiego zawieszenia się serwera . Ile jeszcze takich odczytów bez sensu masz w swoim systemie ? 

Ale do rzeczy , masz tu poniżej skrypt który musi działać, albo wywalić błędy w logach. Skrypt się wykonuje co minutę i wklej go dokładnie w takiej postaci , bo z tego co widzę w nazwach usunąłeś cudzysłowy a to jest obowiązkowe.

return {
on = { timer = {'every minute'} -- skrypt się wykonuje co minutę
},
logging =
{
level = domoticz.LOG_DEBUG,
marker = 'Delta  dwóch temp'
},

execute = function(dz, item)

local Temp1 = dz.devices('Woda_Cwu_Góra').temperature 
local Temp2 = dz.devices('Woda_Cwu_Doł').temperature
local decimals = 2
local Tempavg = dz.utils.round(Temp1 - Temp2 ) , decimals
dz.devices('Delta _czujnik_temp').updateTemperature(Tempavg)
dz.log('Delta wyliczona temperatura: ' .. Tempavg, dz.LOG_INFO)
end
}
 
Dodane : 14/09/2022 7:44 am
(@nototojazda10)
Wpisów: 23
Praktykant
Autor tematu
 

niestety jest dalej głucho i w logu nic dodatkowego nie ma

wiec od początku moze:

image

 

image

 

image

 

image

 

image

 

 

image

 

i tak to wygłada jeden idx się zmienił ale oczywiscie mam to na uwadze, podam jeszcze skrypt ktory mi działa dla termostatu

 

 

-- Skrypt termostat zaczerpnąłem z sieci więc nie jest mojego autorstwa
local heating_probe = 'Woda_Cwu_Doł'
local thermostat_setpoint = 'Termostat'
local heating_unit = 'Grzanie'
-- Use when a combined sensor (e.g. temperature and humidity) is used
-- Replace in "otherdevices[heating_probe]" to "otherdevices[heating_probe]" by "temp_only" (in the 2nd "if" and in the "elseif".
-- Remove the -- in the next two lines:
--local naartekst = (tostring (otherdevices[heating_probe]))
--local temp_only = (string.sub(naartekst,1,4)) -- the digits (1,4) do point out what characters of the string are needed.
local hysteresis = 4
commandArray = {}
-- loop through all the devices
for deviceName,deviceValue in pairs(otherdevices) do
if (deviceName== thermostat_setpoint ) then
if tonumber(deviceValue) < tonumber(otherdevices[heating_probe]-hysteresis) then
if (otherdevices[heating_unit] == "On") then
-- commandArray['SendNotification']='Heating is off'
commandArray[heating_unit]='Off'
print("Heating is Off")
end
elseif tonumber(deviceValue) > tonumber(otherdevices[heating_probe]+hysteresis) then
if (otherdevices[heating_unit] == "Off") then
commandArray[heating_unit]='On'
-- commandArray['SendNotification']='Heating is on'
print("Heating is On")
end
end
end
end
-- loop through all the variables
for variableName,variableValue in pairs(uservariables) do
end
return commandArray

 

 

 

 

wcześniej zle napisałem bo  to mam uruchomione w lua jednak. Przepraszam teraz dopiero sprawdziłem.

to moze faktycznie sa jakies bugi w tej wersji, to moze dla lua coś sprobować.

 
Dodane : 14/09/2022 2:43 pm
isom
 isom
(@isom)
Wpisów: 5178
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
 

A mogę zobaczyć listę dodanych zdarzeń ? Np ten skrypt zapisałeś jako Script#1 , a reszta jak wygląda ? Strefa czasowa w domoticz ustawiona na swoją ? Jak wygląda okno w  Ustawienia > System > Sieci lokalne (bez nazwy użytkownika/hasła)

 

 
Dodane : 14/09/2022 6:39 pm
(@nototojazda10)
Wpisów: 23
Praktykant
Autor tematu
 

Temat do zamknięcia  problem stał po stronie dystrybucji zrobiłem aktualizacje i wszystko jest OK skrypty działają no i LOGI w koncu tez są.

image

jeśli chodzi o odpytywania czujników jakie nominalne ustawienia Pan proponuje.

Dziekuje za pomoc.

 

 

 
Dodane : 14/09/2022 7:13 pm
isom
 isom
(@isom)
Wpisów: 5178
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
 

@nototojazda10 po pierwsze proponuję zmienić w skrypcie

Dodane przez: @isom

level = domoticz.LOG_DEBUG,

na level = domoticz.LOG_ERROR,

Skrypt nie będzie zaśmiecał logów

Odczyty z czujników trzeba dobrać do potrzeb, np bojlera nie wychłodzimy w 2 min nawet o stopień , na zewnątrz temp nie zmieni się w 5 min , a temp spalin w kotle może skoczyć w kilka sekund. Do tego potrzeba tylko trochę wyobraźni

 
Dodane : 14/09/2022 7:30 pm
(@nototojazda10)
Wpisów: 23
Praktykant
Autor tematu
 

@isom OK więc zmienię ten parametr i spowolnię  odpytywania 

bardzo dziękuję za poświęcony czas

Pozdrawiam.

 
Dodane : 14/09/2022 7:34 pm
isom reacted
Udostępnij: