volkszaehler / mbmd

ModBus Measurement Daemon - simple reading of data from ModBus meters and grid inverters
BSD 3-Clause "New" or "Revised" License
239 stars 83 forks source link

Missing Registers on HTML page for SMA products #178

Closed DerTod2 closed 3 years ago

DerTod2 commented 4 years ago

Maybe im to stupid or don't understand the configuration correctly but the html page shows only specific data.

I have two SMA products installed, one "SMA Tripower 8.0" Solar Inverter and one "SMA Sunny Island 4.4M-13" Battery Inverter. The webpage shows following entries for the battery:

The webpage shows following entries for the solar inverter:

and that is the problem ^^

With the inspect commend all registers are displayed but with run only the listed above. I need the current generation and some more data, how can i add the entries to the deamon?

Using the current master branch self compiled. Thanks for any advice :)

andig commented 4 years ago

Please show inspect output wirh required registers. We can add more.

DerTod2 commented 4 years ago

Full Inspect for Solar Inverter:

mbmd inspect -a 192.168.188.31:502 -d SMA:126 2020/11/06 21:42:12 config: creating TCP connection for 192.168.188.31:502 --------- Model 1 common --------- Mn SMA string Md Solar Inverter string Opt 9347 string Vr 3.10.11. string SN 30076xxxxx string DA n/a uint16 Pad 0x8000 pad --------- Model 11 --------- Spd 100.00 uint16 CfgSt 0x0003 bitfield16 St 1 enum16 MAC 00:40:??:??:??:?? eui48 Nam string Ctl n/a bitfield16 FrcSpd n/a uint16 --------- Model 12 --------- Nam string CfgSt 1 enum16 ChgSt 0x0000 bitfield16 Cap 0x0005 bitfield16 Cfg 1 enum16 Ctl 0 enum16 Addr 192.168. string Msk 255.255. string Gw 192.168. string DNS1 192.168. string DNS2 string NTP1 string NTP2 string DomNam string HostNam string Pad 0x8000 pad --------- Model 103 inverter --------- A n/a uint16 AphA 3276.80 uint16 AphB 3276.80 uint16 AphC 3276.80 uint16 A_SF -1 sunssf PPVphAB n/a uint16 PPVphBC n/a uint16 PPVphCA n/a uint16 PhVphA n/a uint16 PhVphB n/a uint16 PhVphC n/a uint16 V_SF -1 sunssf W n/a int16 W_SF 1 sunssf Hz n/a uint16 Hz_SF -2 sunssf VA n/a int16 VA_SF 1 sunssf VAr n/a int16 VAr_SF 1 sunssf PF n/a int16 PF_SF -3 sunssf WH 1374820.00 acc32 WH_SF 1 sunssf DCA n/a uint16 DCA_SF n/a sunssf DCV n/a uint16 DCV_SF n/a sunssf DCW n/a int16 DCW_SF 1 sunssf TmpCab n/a int16 TmpSnk n/a int16 TmpTrns n/a int16 TmpOt n/a int16 Tmp_SF 0 sunssf St n/a enum16 StVnd n/a enum16 Evt1 0x00000000 bitfield32 Evt2 n/a bitfield32 EvtVnd1 n/a bitfield32 EvtVnd2 n/a bitfield32 EvtVnd3 n/a bitfield32 EvtVnd4 n/a bitfield32 --------- Model 120 nameplate --------- DERTyp 4 enum16 WRtg 8000.00 uint16 WRtg_SF 1 sunssf VARtg 8000.00 uint16 VARtg_SF 1 sunssf VArRtgQ1 n/a int16 VArRtgQ2 n/a int16 VArRtgQ3 n/a int16 VArRtgQ4 n/a int16 VArRtg_SF 1 sunssf ARtg 12.00 uint16 ARtg_SF 0 sunssf PFRtgQ1 n/a int16 PFRtgQ2 n/a int16 PFRtgQ3 n/a int16 PFRtgQ4 n/a int16 PFRtg_SF -3 sunssf WHRtg n/a uint16 WHRtg_SF 2 sunssf AhrRtg n/a uint16 AhrRtg_SF 0 sunssf MaxChaRte n/a uint16 MaxChaRte_SF 1 sunssf MaxDisChaRte n/a uint16 MaxDisChaRte_SF 1 sunssf Pad 0x8000 pad --------- Model 121 settings --------- WMax 8000.00 uint16 VRef 230.00 uint16 VRefOfs 0.00 int16 VMax n/a uint16 VMin n/a uint16 VAMax 8000.00 uint16 VArMaxQ1 n/a int16 VArMaxQ2 n/a int16 VArMaxQ3 n/a int16 VArMaxQ4 n/a int16 WGra 20.00 uint16 PFMinQ1 n/a int16 PFMinQ2 n/a int16 PFMinQ3 n/a int16 PFMinQ4 n/a int16 VArAct n/a enum16 ClcTotVA n/a enum16 MaxRmpRte n/a uint16 ECPNomHz 50.00 uint16 ConnPh n/a enum16 WMax_SF 1 sunssf VRef_SF 0 sunssf VRefOfs_SF 0 sunssf VMinMax_SF -2 sunssf VAMax_SF 1 sunssf VArMax_SF 1 sunssf WGra_SF 0 sunssf PFMin_SF n/a sunssf MaxRmpRte_SF 0 sunssf ECPNomHz_SF 0 sunssf --------- Model 122 status --------- PVConn 0x0001 bitfield16 StorConn n/a bitfield16 ECPConn n/a bitfield16 ActWh 1374818.00 acc64 ActVAh 0.00 acc64 ActVArhQ1 0.00 acc64 ActVArhQ2 0.00 acc64 ActVArhQ3 0.00 acc64 ActVArhQ4 0.00 acc64 VArAval n/a int16 VArAval_SF n/a sunssf WAval n/a uint16 WAval_SF n/a sunssf StSetLimMsk n/a bitfield32 StActCtl n/a bitfield32 TmSrc string Tms n/a uint32 RtSt n/a bitfield16 Ris n/a uint16 Ris_SF 4 sunssf --------- Model 123 controls --------- Conn_WinTms n/a uint16 Conn_RvrtTms n/a uint16 Conn 1 enum16 WMaxLimPct 125.81 uint16 WMaxLimPct_WinTms n/a uint16 WMaxLimPct_RvrtTms n/a uint16 WMaxLimPct_RmpTms n/a uint16 WMaxLim_Ena 1 enum16 OutPFSet n/a int16 OutPFSet_WinTms n/a uint16 OutPFSet_RvrtTms n/a uint16 OutPFSet_RmpTms n/a uint16 OutPFSet_Ena 0 enum16 VArWMaxPct n/a int16 VArMaxPct n/a int16 VArAvalPct n/a int16 VArPct_WinTms n/a uint16 VArPct_RvrtTms n/a uint16 VArPct_RmpTms n/a uint16 VArPct_Mod 1 enum16 VArPct_Ena 0 enum16 WMaxLimPct_SF -2 sunssf OutPFSet_SF -4 sunssf VArPct_SF -2 sunssf --------- Model 124 storage --------- WChaMax n/a uint16 WChaGra n/a uint16 WDisChaGra n/a uint16 StorCtl_Mod 0x0000 bitfield16 VAChaMax n/a uint16 MinRsvPct n/a uint16 ChaState n/a uint16 StorAval n/a uint16 InBatV n/a uint16 ChaSt n/a enum16 OutWRte n/a int16 InWRte n/a int16 InOutWRte_WinTms n/a uint16 InOutWRte_RvrtTms n/a uint16 InOutWRte_RmpTms n/a uint16 ChaGriSet n/a enum16 WChaMax_SF 0 sunssf WChaDisChaGra_SF n/a sunssf VAChaMax_SF n/a sunssf MinRsvPct_SF n/a sunssf ChaState_SF 0 sunssf StorAval_SF n/a sunssf InBatV_SF -2 sunssf InOutWRte_SF n/a sunssf --------- Model 126 volt_var --------- ActCrv 1.00 uint16 ModEna 0x0000 bitfield16 WinTms n/a uint16 RvrtTms n/a uint16 RmpTms n/a uint16 NCrv 1.00 uint16 NPt 8.00 uint16 V_SF -2 sunssf DeptRef_SF -2 sunssf RmpIncDec_SF 0 sunssf -- Block 1 -- ActPt 4.00 uint16 DeptRef 2 enum16 V1 100.00 uint16 VAr1 0.00 int16 V2 100.00 uint16 VAr2 0.00 int16 V3 100.00 uint16 VAr3 0.00 int16 V4 100.00 uint16 VAr4 0.00 int16 V5 100.00 uint16 VAr5 0.00 int16 V6 100.00 uint16 VAr6 0.00 int16 V7 100.00 uint16 VAr7 0.00 int16 V8 100.00 uint16 VAr8 0.00 int16 V9 n/a uint16 VAr9 n/a int16 V10 n/a uint16 VAr10 n/a int16 V11 n/a uint16 VAr11 n/a int16 V12 n/a uint16 VAr12 n/a int16 V13 n/a uint16 VAr13 n/a int16 V14 n/a uint16 VAr14 n/a int16 V15 n/a uint16 VAr15 n/a int16 V16 n/a uint16 VAr16 n/a int16 V17 n/a uint16 VAr17 n/a int16 V18 n/a uint16 VAr18 n/a int16 V19 n/a uint16 VAr19 n/a int16 V20 n/a uint16 VAr20 n/a int16 CrvNam string RmpTms 10.00 uint16 RmpDecTmm 1200.00 uint16 RmpIncTmm 1200.00 uint16 ReadOnly 0 enum16 --------- Model 127 freq_watt_param --------- WGra 40.00 uint16 HzStr 0.20 int16 HzStop 0.20 int16 HysEna 0x0000 bitfield16 ModEna 0x0001 bitfield16 HzStopWGra 10.00 uint16 WGra_SF 0 sunssf HzStrStop_SF -2 sunssf RmpIncDec_SF 0 sunssf Pad 0x8000 pad --------- Model 128 reactive_current --------- ArGraMod 1 enum16 ArGraSag 0.00 uint16 ArGraSwell 0.00 uint16 ModEna 0x0000 bitfield16 FilTms 60.00 uint16 DbVMin 65526.00 uint16 DbVMax 10.00 uint16 BlkZnV 70.00 uint16 HysBlkZnV 5.00 uint16 BlkZnTmms 0.00 uint16 HoldTmms n/a uint16 ArGra_SF -2 sunssf VRefPct_SF 0 sunssf Pad 0x8000 pad --------- Model 131 watt_pf --------- ActCrv 1.00 uint16 ModEna 0x0000 bitfield16 WinTms n/a uint16 RvrtTms n/a uint16 RmpTms n/a uint16 NCrv 1.00 uint16 NPt 8.00 uint16 W_SF -2 sunssf PF_SF -2 sunssf RmpIncDec_SF 0 sunssf -- Block 1 -- ActPt 4.00 uint16 W1 100.00 int16 PF1 0.00 int16 W2 100.00 int16 PF2 0.00 int16 W3 100.00 int16 PF3 0.00 int16 W4 100.00 int16 PF4 0.00 int16 W5 100.00 int16 PF5 0.00 int16 W6 100.00 int16 PF6 0.00 int16 W7 100.00 int16 PF7 0.00 int16 W8 100.00 int16 PF8 0.00 int16 W9 n/a int16 PF9 n/a int16 W10 n/a int16 PF10 n/a int16 W11 n/a int16 PF11 n/a int16 W12 n/a int16 PF12 n/a int16 W13 n/a int16 PF13 n/a int16 W14 n/a int16 PF14 n/a int16 W15 n/a int16 PF15 n/a int16 W16 n/a int16 PF16 n/a int16 W17 n/a int16 PF17 n/a int16 W18 n/a int16 PF18 n/a int16 W19 n/a int16 PF19 n/a int16 W20 n/a int16 PF20 n/a int16 CrvNam string RmpPT1Tms 10.00 uint16 RmpDecTmm 1200.00 uint16 RmpIncTmm 1200.00 uint16 ReadOnly 0 enum16 Pad 0x8000 pad --------- Model 132 volt_watt --------- ActCrv 1.00 uint16 ModEna 0x0000 bitfield16 WinTms n/a uint16 RvrtTms n/a uint16 RmpTms n/a uint16 NCrv 1.00 uint16 NPt 8.00 uint16 V_SF -2 sunssf DeptRef_SF -2 sunssf RmpIncDec_SF 0 sunssf -- Block 1 -- ActPt 2.00 uint16 DeptRef 1 enum16 V1 100.00 uint16 W1 100.00 int16 V2 100.00 uint16 W2 100.00 int16 V3 100.00 uint16 W3 0.00 int16 V4 100.00 uint16 W4 0.00 int16 V5 100.00 uint16 W5 0.00 int16 V6 100.00 uint16 W6 0.00 int16 V7 100.00 uint16 W7 0.00 int16 V8 100.00 uint16 W8 0.00 int16 V9 n/a uint16 W9 n/a int16 V10 n/a uint16 W10 n/a int16 V11 n/a uint16 W11 n/a int16 V12 n/a uint16 W12 n/a int16 V13 n/a uint16 W13 n/a int16 V14 n/a uint16 W14 n/a int16 V15 n/a uint16 W15 n/a int16 V16 n/a uint16 W16 n/a int16 V17 n/a uint16 W17 n/a int16 V18 n/a uint16 W18 n/a int16 V19 n/a uint16 W19 n/a int16 V20 n/a uint16 W20 n/a int16 CrvNam string RmpPt1Tms 10.00 uint16 RmpDecTmm 1200.00 uint16 RmpIncTmm 1200.00 uint16 ReadOnly 0 enum16 --------- Model 160 mppt --------- DCA_SF -1 sunssf DCV_SF 0 sunssf DCW_SF 1 sunssf DCWH_SF n/a sunssf Evt 0x00000000 bitfield32 N 6 count TmsPer n/a uint16 -- Block 1 -- ID 1.00 uint16 IDStr string DCA n/a uint16 DCV n/a uint16 DCW n/a uint16 DCWH NaN acc32 Tms n/a uint32 Tmp n/a int16 DCSt n/a enum16 DCEvt 0x00000000 bitfield32 -- Block 2 -- ID 2.00 uint16 IDStr string DCA n/a uint16 DCV n/a uint16 DCW n/a uint16 DCWH NaN acc32 Tms n/a uint32 Tmp n/a int16 DCSt n/a enum16 DCEvt 0x00000000 bitfield32 -- Block 3 -- ID 3.00 uint16 IDStr string DCA n/a uint16 DCV n/a uint16 DCW n/a uint16 DCWH NaN acc32 Tms n/a uint32 Tmp n/a int16 DCSt n/a enum16 DCEvt 0x00000000 bitfield32 -- Block 4 -- ID 4.00 uint16 IDStr string DCA n/a uint16 DCV n/a uint16 DCW n/a uint16 DCWH NaN acc32 Tms n/a uint32 Tmp n/a int16 DCSt n/a enum16 DCEvt n/a bitfield32 -- Block 5 -- ID 5.00 uint16 IDStr string DCA n/a uint16 DCV n/a uint16 DCW n/a uint16 DCWH NaN acc32 Tms n/a uint32 Tmp n/a int16 DCSt n/a enum16 DCEvt n/a bitfield32 -- Block 6 -- ID 6.00 uint16 IDStr string DCA n/a uint16 DCV n/a uint16 DCW n/a uint16 DCWH NaN acc32 Tms n/a uint32 Tmp n/a int16 DCSt n/a enum16 DCEvt n/a bitfield32 --------- Model 129 lvrt --------- ActCrv 1.00 uint16 ModEna 0x0001 bitfield16 WinTms n/a uint16 RvrtTms n/a uint16 RmpTms n/a uint16 NCrv 1.00 uint16 NPt 3.00 uint16 Tms_SF -3 sunssf V_SF -1 sunssf Pad 0x8000 pad -- Block 1 -- ActPt 3.00 uint16 Tms1 0.20 uint16 V1 184.00 uint16 Tms2 10.00 uint16 V2 45.00 uint16 Tms3 n/a uint16 V3 n/a uint16 Tms4 n/a uint16 V4 n/a uint16 Tms5 n/a uint16 V5 n/a uint16 Tms6 n/a uint16 V6 n/a uint16 Tms7 n/a uint16 V7 n/a uint16 Tms8 n/a uint16 V8 n/a uint16 Tms9 n/a uint16 V9 n/a uint16 Tms10 n/a uint16 V10 n/a uint16 Tms11 n/a uint16 V11 n/a uint16 Tms12 n/a uint16 V12 n/a uint16 Tms13 n/a uint16 V13 n/a uint16 Tms14 n/a uint16 V14 n/a uint16 Tms15 n/a uint16 V15 n/a uint16 Tms16 n/a uint16 V16 n/a uint16 Tms17 n/a uint16 V17 n/a uint16 Tms18 n/a uint16 V18 n/a uint16 Tms19 n/a uint16 V19 n/a uint16 Tms20 n/a uint16 V20 n/a uint16 CrvNam string ReadOnly 0 enum16 --------- Model 130 hvrt --------- ActCrv 1.00 uint16 ModEna 0x0001 bitfield16 WinTms n/a uint16 RvrtTms n/a uint16 RmpTms n/a uint16 NCrv 1.00 uint16 NPt 3.00 uint16 Tms_SF -3 sunssf V_SF -1 sunssf Pad 0x8000 pad -- Block 1 -- ActPt 3.00 uint16 Tms1 0.20 uint16 V1 264.50 uint16 Tms2 60.00 uint16 V2 280.00 uint16 Tms3 n/a uint16 V3 n/a uint16 Tms4 n/a uint16 V4 n/a uint16 Tms5 n/a uint16 V5 n/a uint16 Tms6 n/a uint16 V6 n/a uint16 Tms7 n/a uint16 V7 n/a uint16 Tms8 n/a uint16 V8 n/a uint16 Tms9 n/a uint16 V9 n/a uint16 Tms10 n/a uint16 V10 n/a uint16 Tms11 n/a uint16 V11 n/a uint16 Tms12 n/a uint16 V12 n/a uint16 Tms13 n/a uint16 V13 n/a uint16 Tms14 n/a uint16 V14 n/a uint16 Tms15 n/a uint16 V15 n/a uint16 Tms16 n/a uint16 V16 n/a uint16 Tms17 n/a uint16 V17 n/a uint16 Tms18 n/a uint16 V18 n/a uint16 Tms19 n/a uint16 V19 n/a uint16 Tms20 n/a uint16 V20 n/a uint16 CrvNam string ReadOnly 0 enum16

For Total Pac: The register should be 40200 (named W, one register) for SunSpec or 30775 (named GridMs.TotW, two registers) for SMA but can't correctly confirm because it is night here :)

For Pac for each phase is not available in SunSpec only for SMA registers :/ Good would also be the daily production but can't find the SunSpec register only for SMA :(

When it is day here i'll reply with the inspect/data and really needed registers.

andig commented 4 years ago

Wenn SunSpec nicht ausreicht kannst Du immer nich ein eigenes Mapping für SMA anfertigen- mir fehlt dafür leider die Zeit :/

DerTod2 commented 4 years ago

Wenn ich wüsste wie, ich habe die komplette Mapping Tabelle von SMA vorliegen. Gibt es eine Beispiel-Datei wo Mappings bzw. die Register-Adressen drinstehen die genutzt werden dann kann ich schauen das ich das hinkriege ^^ Oder kommt das von irgendeiner Abhängikeit?

andig commented 4 years ago

Die Mappings findest Du alle in https://github.com/volkszaehler/mbmd/tree/master/meters/rs485. Jeweils Register auf generischen Wert.

andig commented 3 years ago

Hat sich das Thema erledigt? Was kann hier noch getan werden?

DerTod2 commented 3 years ago

Habe das vergessen da ich es zu umständlich fand und dann doch nun direkt per Modbus auf meine Wechselrichter zugreife.

Daher hat sich das soweit erledigt :)