FHEM Forum

FHEM => Sonstiges => Thema gestartet von: laserrichi am 13 September 2017, 18:49:26

Titel: Modbus für Solarlader Tracer2210A von EPSOLAR
Beitrag von: laserrichi am 13 September 2017, 18:49:26
Ich brauche mal Modbus Spezialisten, ich habe einen Solarlader Tracer2210A von EPSOLAR, der ist über einen ESPEASY Seriell über IP erreichbar.
Mit der PC Software von EPSOLAR kann ich alle Daten auslesen, jetzt soll das aber in Fhem rein über ModbusAttr:


defmod Solarlader ModbusAttr 192.168.1.9:23 TCP
attr Solarlader userattr obj-c3104-poll obj-c3104-reading obj-c3104-showGet
attr Solarlader obj-c3104-reading batt
attr Solarlader obj-c3104-showGet 1

ich habe keine Ahnung was obj-c h d j usw bedeutet
Muss ich für meine RS485 zu seriell über espeasy auf IP Port 23 nun TCP RTU oder ASCII nehmen ? Wird ja im prinzip nur durchgereicht, die Windows Anwendung von EPSolar geht ja zumindest über den weg

Von EPSolar habe ich eine Modbus Dokumentation gefunden und da steht z.b. folgendes

Examples:
Read real-time battery voltage
Device ID:0x01
Function code: 0x04
Register Address: 0x3104
Register count: 0x0001
Send command: 01 04 31 04 00 01 7E F7
Receive command: 01 04 02 04 CE 3A 64

Read Holding Register Value: 0x04CE
0x04CE (hex) = 1230 (dec)
1230 / 100 = 12.3 volt

Wie setze ich jetzt sowas in attr um ?
Titel: Antw:Modbus für Solarlader Tracer2210A von EPSOLAR
Beitrag von: StefanStrobel am 13 September 2017, 21:36:07
Hallo,

im Wiki findest Du einige Infos zu Modbus, auch zu den Datentypen: https://wiki.fhem.de/wiki/ModbusAttr
Zitat
Read real-time battery voltage
Device ID:0x01
Function code: 0x04
Register Address: 0x3104
Register count: 0x0001
Send command: 01 04 31 04 00 01 7E F7
Receive command: 01 04 02 04 CE 3A 64
Die Modbus-Id ist offenbar 1, die wird beim Define angegeben.
Function code 4 ist zum Lesen von Input Registern (obj-i...)
Die Batteriespanung steht wohl im Input Register mit Adresse 0x3104 (sollte dezimal 12548 sein), also obj-i12548- ...

Am besten das Wiki zu Modbus komplett lesen, bei Bedarf die Modbus-Spezifikation auf Modbus.org lesen (http://www.modbus.org/docs/Modbus_Application_Protocol_V1_1b3.pdf) dann wird alles ganz einfach ;-)

Gruss
    Stefan
Titel: Antw:Modbus für Solarlader Tracer2210A von EPSOLAR
Beitrag von: laserrichi am 14 September 2017, 13:01:42
Hallo Stefan,

vielen Dank, jetzt klappt es, jetzt habe ich es Verstanden wie es aufgebaut ist.
Scheiterte an 3 Dingen:  die ID in HEX = dezimal,  die Simple Attribute Buchstabenzuordnung und der Wert in Dezimal, und ich dachte das h steht für HEX so wie man es normalerweise auch schreibt (h256 = hex wert 256).

Hatte die Wiki nur nicht verstanden, vieleicht etwas unglücklich gschrieben was wie zugeordnet ist.
Titel: Antw:Modbus für Solarlader Tracer2210A von EPSOLAR
Beitrag von: springber am 01 November 2018, 20:48:19
Hallo ich komme gerade auch nicht weiter. Wie genau hat es denn geklappt? Wie sieht denn das RAW definition aus?
Titel: Antw:Modbus für Solarlader Tracer2210A von EPSOLAR
Beitrag von: laserrichi am 03 November 2018, 21:45:28
Hier mal meine Definitionen:

    define Solarlader ModbusAttr 1 <deine IP-Adresse:PORT> RTU
attr Solarlader userattr dev-c-defShowGet dev-c-read dev-c-write dev-h-defShowGet dev-i-defShowGet event-on-change-reading obj-c0-poll obj-c0-reading obj-c0-set obj-c0-showGet obj-c2-poll obj-c2-reading obj-c2-set obj-h0-poll obj-h0-reading obj-h0-set obj-h36864-name obj-h36864-reading obj-h36864-set obj-h36865-name obj-h36865-reading obj-h36865-set obj-i12296-poll obj-i12296-reading obj-i12544-expr obj-i12544-poll obj-i12544-reading obj-i12544-set obj-i12544-showGet obj-i12545-expr obj-i12545-poll obj-i12545-reading obj-i12545-showGet obj-i12546-expr obj-i12546-poll obj-i12546-reading obj-i12548-expr obj-i12548-poll obj-i12548-reading obj-i12548-showGet obj-i12549-expr obj-i12549-poll obj-i12549-reading obj-i12550-expr obj-i12550-poll obj-i12550-reading obj-i12556-expr obj-i12556-poll obj-i12556-reading obj-i12557-expr obj-i12557-poll obj-i12557-reading obj-i12558-expr obj-i12558-poll obj-i12558-reading obj-i12559-poll obj-i12559-reading obj-i12560-expr obj-i12560-poll obj-i12560-reading obj-i12561-expr obj-i12561-poll obj-i12561-reading obj-i12570-format obj-i12570-poll obj-i12570-reading obj-i12800-poll obj-i12800-reading obj-i12801-poll obj-i12801-reading obj-i13056-expr obj-i13056-poll obj-i13056-reading obj-i13060-expr obj-i13060-poll obj-i13060-reading obj-i13061-poll obj-i13061-reading obj-i13062-expr obj-i13062-poll obj-i13062-reading obj-i13063-poll obj-i13063-reading obj-i13064-expr obj-i13064-poll obj-i13064-reading obj-i13065-poll obj-i13065-reading obj-i13068-poll obj-i13068-reading stateFormat
attr Solarlader dev-c-defShowGet 1
attr Solarlader dev-h-defShowGet 1
attr Solarlader dev-i-defShowGet 1
attr Solarlader event-on-change-reading .*
attr Solarlader obj-c0-poll 1
attr Solarlader obj-c0-reading ChargingOnOff
attr Solarlader obj-c0-set 1
attr Solarlader obj-c2-poll 1
attr Solarlader obj-c2-reading ManualControlLoad
attr Solarlader obj-c2-set 1
attr Solarlader obj-h36864-reading BattTyp
attr Solarlader obj-h36864-set 1
attr Solarlader obj-h36865-reading BattCapacityDefault
attr Solarlader obj-h36865-set 1
attr Solarlader obj-i12296-poll 1
attr Solarlader obj-i12296-reading Chargingmode
attr Solarlader obj-i12544-expr $val/100
attr Solarlader obj-i12544-poll 1
attr Solarlader obj-i12544-reading Panelspannung
attr Solarlader obj-i12545-expr $val/100
attr Solarlader obj-i12545-poll 1
attr Solarlader obj-i12545-reading Panelstrom
attr Solarlader obj-i12546-expr $val/100
attr Solarlader obj-i12546-poll 1
attr Solarlader obj-i12546-reading PanelPowerL
attr Solarlader obj-i12548-expr $val/100
attr Solarlader obj-i12548-poll 1
attr Solarlader obj-i12548-reading Battspannung
attr Solarlader obj-i12549-expr $val/100
attr Solarlader obj-i12549-poll 1
attr Solarlader obj-i12549-reading Battstrom
attr Solarlader obj-i12550-expr $val/100
attr Solarlader obj-i12550-poll 1
attr Solarlader obj-i12550-reading BattPowerL
attr Solarlader obj-i12556-expr $val/100
attr Solarlader obj-i12556-poll 1
attr Solarlader obj-i12556-reading LoadSpannung
attr Solarlader obj-i12557-expr $val/100
attr Solarlader obj-i12557-poll 1
attr Solarlader obj-i12557-reading LoadCurrent
attr Solarlader obj-i12558-expr $val/100
attr Solarlader obj-i12558-poll 1
attr Solarlader obj-i12558-reading LoadPowerL
attr Solarlader obj-i12560-expr $val/100
attr Solarlader obj-i12560-poll 1
attr Solarlader obj-i12560-reading BatteryTemperatur
attr Solarlader obj-i12561-expr $val/100
attr Solarlader obj-i12561-poll 1
attr Solarlader obj-i12561-reading ReglerTemp
attr Solarlader obj-i12570-poll 1
attr Solarlader obj-i12570-reading BattCapacityRemaining
attr Solarlader obj-i12800-poll 1
attr Solarlader obj-i12800-reading BattStatus
attr Solarlader obj-i12801-poll 1
attr Solarlader obj-i12801-reading LadeStatus
attr Solarlader obj-i13056-expr $val/100
attr Solarlader obj-i13056-poll 1
attr Solarlader obj-i13056-reading MaxPV_Volt_Tag
attr Solarlader obj-i13060-expr $val/100
attr Solarlader obj-i13060-poll 1
attr Solarlader obj-i13060-reading EnergieVerbrauchTag
attr Solarlader obj-i13061-poll 1
attr Solarlader obj-i13061-reading EnergieVerbrauchTagKW
attr Solarlader obj-i13062-expr $val/100
attr Solarlader obj-i13062-poll 1
attr Solarlader obj-i13062-reading EnergieVerbrauchMonat
attr Solarlader obj-i13063-poll 1
attr Solarlader obj-i13063-reading EnergieVerbrauchMonatKW
attr Solarlader obj-i13064-expr $val/100
attr Solarlader obj-i13064-poll 1
attr Solarlader obj-i13064-reading EnergieVerbrauchJahr
attr Solarlader obj-i13065-poll 1
attr Solarlader obj-i13065-reading EnergieVerbrauchJahrKW
attr Solarlader obj-i13068-poll 1
attr Solarlader obj-i13068-reading EnergieTag
attr Solarlader room Garten
attr Solarlader stateFormat Batterie: BattCapacityRemaining %  Battspannung V BattPowerL W PANEL: PanelPowerL W Panelspannung V LAST: LoadPowerL W