26.07.2025, 14:53
Good day,
I have a problem with false data, some time the inverter answer 768 in a modbus TCP register (inverter in foult) although it is not in this condiction then in the next reading after about one minute it answer again 20 (system ok). This register generates an event script to test the value and as you can see in the script it generates an alarm. My question: is it possible wait for example wait 2 minutes and check it again before generate the alarm?
I thougt to insert a delay and use first istance then check again the value. but I don't know if it is a good idea.
Thanks for any other suggest.
BR Cristian
I have a problem with false data, some time the inverter answer 768 in a modbus TCP register (inverter in foult) although it is not in this condiction then in the next reading after about one minute it answer again 20 (system ok). This register generates an event script to test the value and as you can see in the script it generates an alarm. My question: is it possible wait for example wait 2 minutes and check it again before generate the alarm?
Code:
evento = event.getvalue()
-- scansione se in un inverter c'è l'allarme (check what kind of event value)
data = grp.tag('Allarme')
for i = 1, 18, 1 do
--log(data[i].value)
if data[i].value == 768 then
status = 'error'
log('Inverter in errore : ',data[i]) --who is
break
else
status = 'ok'
end
end
-- invio comando di chiamata (there is an error 768 so make a call with dealers)
if status == 'error' then
grp.checkwrite('Uscite Combinatore - Relay 1',1,1,'Uscite Combinatore - Relay status 1')
log('un inverter è in blocco')
else
grp.checkwrite('Uscite Combinatore - Relay 1',0,1,'Uscite Combinatore - Relay status 1')
--log('tutto ok')
end
Thanks for any other suggest.
BR Cristian