Mäta elförbrukning, Raspberry Pi & Domoticz.

I detta forum hör diskussioner gällande teknik i största allmänhet och hemautomation i synnerhet hemma.

Moderator: elf98

Kategoriregler
Vill du visa bilder i ditt inlägg? Använd funktionen "Ladda upp bilaga" nedanför textrutan!
moffe
Wannabe
Inlägg: 20
Blev medlem: 10 mar 2014, 19:47
Ort: Sweden

Re: Mäta elförbrukning, Raspberry Pi & Domoticz, vad behövs?

Inlägg av moffe » 14 mar 2014, 12:03

Inga sensorer som har id 68 eller 69... :/ de närmaste jag har är mellan 1 och 37 och sedan allt över 163.
moffe
Wannabe
Inlägg: 20
Blev medlem: 10 mar 2014, 19:47
Ort: Sweden

Re: Mäta elförbrukning, Raspberry Pi & Domoticz, vad behövs?

Inlägg av moffe » 14 mar 2014, 12:08

Kom att tänkta på en sak...
247 RFXCOM 4500 0 kW2 Temp + Humidity Viking 02035, 02038 1.6 C, 8 % 7 100 [Remove Device] [Log] 2014-03-14 11:04:56
248 RFXCOM 4400 0 kW1 Temp + Humidity Viking 02035, 02038 2.0 C, 9 % 7 100 [Remove Device] [Log] 2014-03-14 11:04:56

jag har ändrat i skriptet så att den använder kW1 alltså idx 247. Är det fel?

Edit: jag yyrar...har inte ändra på skriptet.
-- Dummy counter Idx value
kwCounterIndex = 252

252 Energi mätare 82251 1 Elforburkningen Energy CM119 / CM160 5812.980 kWh 10 - [Remove Device] [Log] 2014-03-14 11:04:56
Senast redigerad av 1 moffe, redigerad totalt 14 gånger.
Användarvisningsbild
NiclasF
Tar hemautomation på allvar
Inlägg: 160
Blev medlem: 24 sep 2011, 00:55
Ort: Stockholm

Re: Mäta elförbrukning, Raspberry Pi & Domoticz, vad behövs?

Inlägg av NiclasF » 14 mar 2014, 12:08

Räknar man på det så håller min teori.
1970-38=1932kW för mycket.
Om vi antar att det är en termometer som sänder extrainformation så sänder den ca 1ggr per minut. 1932/24/60=1,34
Medeltemperaturen råkade inte vara ca 1,3°C igår?
moffe
Wannabe
Inlägg: 20
Blev medlem: 10 mar 2014, 19:47
Ort: Sweden

Re: Mäta elförbrukning, Raspberry Pi & Domoticz, vad behövs?

Inlägg av moffe » 14 mar 2014, 12:13

NiclasF skrev:Räknar man på det så håller min teori.
1970-38=1932kW för mycket.
Om vi antar att det är en termometer som sänder extrainformation så sänder den ca 1ggr per minut. 1932/24/60=1,34
Medeltemperaturen råkade inte vara ca 1,3°C igår?
Hej, det tror jag inte...


Här är alla viking sensorer jag ser:
247 RFXCOM 4500 0 kW2 Temp + Humidity Viking 02035, 02038 2.1 C, 16 % 7 100 [Remove Device] [Log] 2014-03-14 11:11:57
248 RFXCOM 4400 0 kW1 Temp + Humidity Viking 02035, 02038 1.9 C, 17 % 7 100 [Remove Device] [Log] 2014-03-14 11:11:57
246 RFXCOM 20992 0 Unknown Temp Viking 02811 11.3 C 4 100 [Add Device] [Log] 2014-03-13 17:38:19
249 RFXCOM 52736 0 Unknown Temp Viking 02811 10.2 C 5 100 [Add Device] [Log] 2014-03-14 11:12:20
250 RFXCOM 35328 0 Unknown Temp Viking 02811 9.4 C 6 100 [Add Device] [Log] 2014-03-14 11:11:55
251 RFXCOM 2816 0 Unknown Temp Viking 02811 11.4 C 4 100 [Add Device] [Log] 2014-03-14 11:11:57
260 RFXCOM 42752 0 Unknown Temp Viking 02811 7.7 C 4 100 [Add Device] [Log] 2014-03-13 19:20:19

Kanske jag har fått nån fel temp sensor...men det verkar konstigt. när de inte är så kallt.
moffe
Wannabe
Inlägg: 20
Blev medlem: 10 mar 2014, 19:47
Ort: Sweden

Re: Mäta elförbrukning, Raspberry Pi & Domoticz, vad behövs?

Inlägg av moffe » 14 mar 2014, 13:56

så här ser kW1 ut för 24h:
kW1
kW1
här är kW2:
kW2
kW2
johanb2b
Wannabe
Inlägg: 15
Blev medlem: 21 nov 2013, 22:35
Ort: Sverige

Re: Mäta elförbrukning, Raspberry Pi & Domoticz, vad behövs?

Inlägg av johanb2b » 14 mar 2014, 17:39

Du använder nog enbart mitt modifierade script som kör enligt nedan för att visa energimätaren i watt per timme istället för senaste minutens watt.

tString = otherdevices_svalues['kW1']
-- Parse out the value I want, the temperature. Turn it to a number and multiply by 10.
newValue= f*600*tonumber(string.sub(tString,1,string.find(tString,';',1,true)-1))
-- print("Test", newValue)

Om du ändrar f*600 till originalscriptets f*10 kommer din mätare istället att visa runt 16Watt vilket alltså är den senaste minutens förbrukning men då kommer kurvorna för KWh att stämma sen.

Det är där för jag lagt till två stycken virtuella energiräknare med olika idx och det ena scriptet kör räknarens (kw1) data gånger 10 för att ge mig en korrekt historik och den andra tar kw1 gånger 600 för att ge mig momentanförbrukningen i watt alltså 1000W för om man just då kör brödrosten t.ex.
moffe
Wannabe
Inlägg: 20
Blev medlem: 10 mar 2014, 19:47
Ort: Sweden

Re: Mäta elförbrukning, Raspberry Pi & Domoticz, vad behövs?

Inlägg av moffe » 14 mar 2014, 20:42

Okej...där var felet. Hade ingen aning.
Tack för svaret. Jag skall testa att göra som du.
Användarvisningsbild
NiclasF
Tar hemautomation på allvar
Inlägg: 160
Blev medlem: 24 sep 2011, 00:55
Ort: Stockholm

Re: Mäta elförbrukning, Raspberry Pi & Domoticz, vad behövs?

Inlägg av NiclasF » 14 mar 2014, 21:55

Tack johanb2b för klargörandet!
moffe
Wannabe
Inlägg: 20
Blev medlem: 10 mar 2014, 19:47
Ort: Sweden

Re: Mäta elförbrukning, Raspberry Pi & Domoticz, vad behövs?

Inlägg av moffe » 15 mar 2014, 13:14

Hej johanb2b...

Nu kör jag som du sa... har två script ena som räknar watt per timme och senaste minutes watt.
Men kWh blir ändå samma. Konstigt.
Screen Shot 2014-03-15 at 12.12.21 .png
johanb2b
Wannabe
Inlägg: 15
Blev medlem: 21 nov 2013, 22:35
Ort: Sverige

Re: Mäta elförbrukning, Raspberry Pi & Domoticz, vad behövs?

Inlägg av johanb2b » 15 mar 2014, 14:33

Hej

Jag råkade ut för samma i början. Det är för att det totala värdet räknas upp i filen "effect-counter" som jag just nu inte minns vilken mapp den ligger i men du måste radera/rensa den filen för att börja om på nytt. Du måste även se till att det skapas två filer en för varje script/räknare.

I mitt första script står det:
-- write the lastValue to disk
writeFile("effect-counter",tostring(lastValue))

Och i det andra:
-- write the lastValue to disk
writeFile("effect-counter_kwh",tostring(lastValue))

Jag får då alltså två olika filer men den ena av dem uppdateras med korrekt värde. Den andra kommer att visa totalen på momentanmätaren och då helt fel men den första kommer summan att stämma på.

Johan
moffe
Wannabe
Inlägg: 20
Blev medlem: 10 mar 2014, 19:47
Ort: Sweden

Re: Mäta elförbrukning, Raspberry Pi & Domoticz, vad behövs?

Inlägg av moffe » 15 mar 2014, 23:49

Tack igen för svaret, men tror du skulle orka lägga hit båda skripten (hela, så de inte blir några konstiga fel)? :) är inte själv så bra på sådant.
Jag skulle gärna har som du har! :)
johanb2b
Wannabe
Inlägg: 15
Blev medlem: 21 nov 2013, 22:35
Ort: Sverige

Re: Mäta elförbrukning, Raspberry Pi & Domoticz, vad behövs?

Inlägg av johanb2b » 17 mar 2014, 16:49

Du får nog börja med att radera filerna i rootmappen "effect-counter" och "effect-counter_kwh" om de redan ligger där så nollställer du räknarna. Sen ser du det första scriptet som jag tog rakt av från denna tråd och sen det andra som bara är lite juserat för att skapa en ny counter-fil och kopiera data från den till en andra virtuell energimätare.

Första för korrekt historik i KWh

Kod: Markera allt

commandArray = {}
-- Scriptname script_device_kwcount.lua
-- v1.0 20140202

-- Factor to calculate actual effect consumption
-- For 800 blinks per kW f=1.25, 1000 blinks per kW f=1, 10000 blinks per kW f=0.1
f=1

-- Dummy counter Idx value
kwCounterIndex = 103

-- File functions used to keep track of updated total value
-- The file effect-counter is saved to /
local function readFile(sPath)
  local file = io.open(sPath, "r")
  if file then
        local tLine = file:read()
        file.close()
        return tLine
  end
  return nil
end

local function writeFile(sPath, sLine)
  local file = io.open(sPath, "w")
  if file then
   io.output(file);
    io.write(sLine)
    io.close()
  end
end


-- My temperature device is kW1 and kW2. Where kW1 is the primary and kW2 is secondary
-- I do not use the secondary one (kW2) in this script.
if (devicechanged ['kW1']) then
   -- Get the latest count into a temp variabel
   tString   = otherdevices_svalues['kW1']
   -- Parse out the value I want, the temperature. Turn it to a number and multiply by 10.
   newValue= f*10*tonumber(string.sub(tString,1,string.find(tString,';',1,true)-1))
--   print("Test", newValue)
   
   -- Read the latest total counter into lastValue
   lastValue = 0
   local aLine=readFile("effect-counter")
   if aLine then
         lastValue=tonumber(aLine)
   end
   -- Add our latest count to lastValue
   lastValue=lastValue+newValue

   -- write the lastValue to disk
   writeFile("effect-counter",tostring(lastValue))
   
   -- Construct the string to use for updating our dummy counter.
   effectString=tostring(kwCounterIndex) .. "|0|" .. tostring(newValue) .. ";" .. tostring(lastValue)
   -- print("New Value", newValue, effectString)

   -- now use this counter for our virtual effect sensor
   commandArray = {}
   commandArray['UpdateDevice']=effectString
end
return commandArray

Andra som visar momentan förbrukning i Watt men historiken blir fel.

Kod: Markera allt

commandArray = {}
-- Scriptname script_device_kwcount_kwh.lua
-- v1.0 20140202

-- Factor to calculate actual effect consumption
-- For 800 blinks per kW f=1.25, 1000 blinks per kW f=1, 10000 blinks per kW f=0.1
f=1

-- Dummy counter Idx value
kwCounterIndex = 104

-- File functions used to keep track of updated total value
-- The file effect-counter is saved to /
local function readFile(sPath)
  local file = io.open(sPath, "r")
  if file then
        local tLine = file:read()
        file.close()
        return tLine
  end
  return nil
end

local function writeFile(sPath, sLine)
  local file = io.open(sPath, "w")
  if file then
   io.output(file);
    io.write(sLine)
    io.close()
  end
end


-- My temperature device is kW1 and kW2. Where kW1 is the primary and kW2 is secondary
-- I do not use the secondary one (kW2) in this script.
if (devicechanged ['kW1']) then
   -- Get the latest count into a temp variabel
   tString   = otherdevices_svalues['kW1']
   -- Parse out the value I want, the temperature. Turn it to a number and multiply by 10.
   newValue= f*600*tonumber(string.sub(tString,1,string.find(tString,';',1,true)-1))
--   print("Test", newValue)
   
   -- Read the latest total counter into lastValue
   lastValue = 0
   local aLine=readFile("effect-counter-kwh")
   if aLine then
         lastValue=tonumber(aLine)
   end
   -- Add our latest count to lastValue
   lastValue=lastValue+newValue

   -- write the lastValue to disk
   writeFile("effect-counter-kwh",tostring(lastValue))
   
   -- Construct the string to use for updating our dummy counter.
   effectString=tostring(kwCounterIndex) .. "|0|" .. tostring(newValue) .. ";" .. tostring(lastValue)
   -- print("New Value", newValue, effectString)

   -- now use this counter for our virtual effect sensor
   commandArray = {}
   commandArray['UpdateDevice']=effectString
end
return commandArray

moffe
Wannabe
Inlägg: 20
Blev medlem: 10 mar 2014, 19:47
Ort: Sweden

Re: Mäta elförbrukning, Raspberry Pi & Domoticz, vad behövs?

Inlägg av moffe » 17 mar 2014, 21:26

Tusen tack för hjälpen! Skall testa.

Dock har jag problem för tillfället...ser inga sensorer what so ever. Verkar som något i område stör ut all signal.
:(

Klockan 16:50 på lördagen var sista signalerna... Inte ens oregons egen skärm ser sina sensorer fast de ligger riktigt nära.
Konstigt...
moffe
Wannabe
Inlägg: 20
Blev medlem: 10 mar 2014, 19:47
Ort: Sweden

Re: Mäta elförbrukning, Raspberry Pi & Domoticz, vad behövs?

Inlägg av moffe » 18 mar 2014, 20:55

Äntligen kom alla tillbaka... klockan 11 idag. Vad konstigt, något har stört så inga sensorer har synats sedan Lördagen.

Men tack johanb2b!
Ser ut att fungera skulle jag tro:
kW
kW
moffe
Wannabe
Inlägg: 20
Blev medlem: 10 mar 2014, 19:47
Ort: Sweden

Re: Mäta elförbrukning, Raspberry Pi & Domoticz, vad behövs?

Inlägg av moffe » 25 mar 2014, 09:34

Hur skulle det vara bäst att "kalibera" mätningarna?
Ser ut som det kastar ganska exakt 5kWh per dag... domoticz visar 33kWh, vattefall säger för samma dag 38kWh.
Och samma ser det ut för alla andra dagarna. :)
Skriv svar