This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm that you accept these cookies being set.

Homewizard Energy API P1 Telegram
#3
Code:
--P1 poort van slimme meter via HomeWizard uitlezen

require('socket.http')

ip = '192.168.1.192' --Vul hier het IP adres van de HomeWizard P1 meter in

socket.http.TIMEOUT = 5
data = socket.http.request('http://'..ip..'/api/v1/telegram')

if data then
  --log(data)
 
  -- Totaal verbruik tarief 1 uitlezen kWh
  tarief_1 = data:match'1-0:1.8.1%((%d+.%d+)'
  tarief_1 = tonumber(tarief_1)
    --log("Tarief 1: " .. tarief_1 .. " kWh")
  grp.update('8/0/1', tarief_1)

  -- Totaal verbruik tarief 2 uitlezen kWh
  tarief_2 = data:match'1-0:1.8.2%((%d+.%d+)'
  tarief_2 = tonumber(tarief_2)
  --log("Tarief 2: " .. tarief_2 .. " kWh")
  grp.update('8/0/2', tarief_2)

  -- Totaal verbruik tarief 1 + 2
  tarief_totaal = tarief_1 + tarief_2
  --log("Totaal verbruik: " .. tarief_totaal .. " kWh")
  grp.update('8/0/0', tarief_totaal)

  -- Totaal verbruik €
  verbruik_prijs_kWh = grp.getvalue('8/0/11')
  totaal_verbruik_€ = tarief_totaal * verbruik_prijs_kWh
  --log("Totaal verbruik: €" .. totaal_verbruik_€)
  grp.update('8/0/13', totaal_verbruik_€)

  -- Totale retourlevering tarief 1 uitlezen kWh
  retour_1 = data:match'1-0:2.8.1%((%d+.%d+)'
  retour_1 = tonumber(retour_1)
  --log("Retour 1: " .. retour_1 .. " kWh")
  grp.update('8/0/4', retour_1)

  -- Totale retourlevering tarief 2 uitlezen kWh
  retour_2 = data:match'1-0:2.8.2%((%d+.%d+)'
  retour_2 = tonumber(retour_2)
  --log("Retour 2: " .. retour_2 .. " kWh")
  grp.update('8/0/5', retour_2)

  -- Totale retourlevering tarief 1 + 2
  retour_totaal = retour_1 + retour_2
  --log("Totaal retour: " .. retour_totaal .. " kWh")
  grp.update('8/0/3', retour_totaal)

  -- Totaal retourlevering €
  retour_prijs_kWh = grp.getvalue('8/0/12')
  totaal_retour_€ = retour_totaal * retour_prijs_kWh
  --log("Totaal retour: €" .. totaal_retour_€)
  grp.update('8/0/14', totaal_retour_€)

  -- Actuele tariefstand uitlezen T1/T2
  actueel_tarief = data:match'14.0%((%d+)'
  actueel_tarief = tonumber(actueel_tarief)
  --log("Actueel tarief: T" .. actueel_tarief)
  grp.update('8/0/10', actueel_tarief)

  -- Actueel verbruik uitlezen kW
  actueel_verbruik = data:match'1-0:1.7.0%((%d+.%d+)'
  actueel_verbruik = tonumber(actueel_verbruik)
  --log("Actueel verbruik: " .. actueel_verbruik .. " kW")
  grp.update('8/0/6', actueel_verbruik)

  -- Actueel verbruik W
  actueel_verbruik_W = actueel_verbruik*1000
  --log("Actueel verbruik: " .. actueel_verbruik_W .. " W")
  grp.update('8/0/7', actueel_verbruik_W)

  -- Actueel verbruik €
    verbruik_prijs_kWh = grp.getvalue('8/0/11')
    actueel_verbruik_€ = actueel_verbruik * verbruik_prijs_kWh
    --log("Actueel verbruik: €" .. actueel_verbruik_€)
  grp.update('8/0/15', actueel_verbruik_€)

  -- Actuele retourlevering uitlezen kW
  actueel_retour = data:match'1-0:2.7.0%((%d+.%d+)'
  actueel_retour = tonumber(actueel_retour)
  --log("Actueel retour: " .. actueel_retour .. " kW")
  grp.update('8/0/8', actueel_retour)

  -- Actuele retourlevering W
  actueel_retour_W = actueel_retour *1000
  --log("Actueel retour: " .. actueel_retour_W .. " W")
  grp.update('8/0/9', actueel_retour_W)
 
  -- Totale gasverbruik uitlezen m³
gas = data:match'.+%((%d+.%d+)'
gas = tonumber(gas)
--log("Gas: " .. gas .. " m³")
  grp.update('8/1/0',gas)

  -- Totaal gasverbruik €
  verbruik_prijs_M³ = grp.getvalue('8/1/1')
  totaal_gasverbruik = gas * verbruik_prijs_M³
  --log("Totaal gasverbruik: €" .. totaal_gasverbruik_€)
  grp.update('8/1/2', totaal_gasverbruik)
end
Reply


Messages In This Thread
Homewizard Energy API P1 Telegram - by tigi - 25.10.2022, 08:40
RE: Homewizard Energy API P1 Telegram - by Danny - 25.10.2022, 09:09

Forum Jump: