Dokumentation

Modbus-Register

Diese Register sind verfügbar für Modbus RTU und Modbus TCP. Der cFos Power Brain Controller unterstützt die Modbus-Funktionen

  • 03 Lese mehrere Holding Register
  • 06 Schreibe in einzelnes Holding Register
  • 16 Schreibe in mehrere Holding Register

Wir unterscheiden vier Geräte:
2 S0-Zähler, 1 Ladestation und 1 angeheftete (Modbus-)Zähler, die unterschieden werden durch die Modbus Slave ID und (für Modbus TCP) den TCP port.

Hinweis: Schreibender Zugriff auf die Modbus Register bewirkt Schreiben in den Flash-Speicher des cFos Power Brain und sollte daher nicht regelmäßig stattfinden. Folgende Register werden nicht permanent gespeichert und können daher regelmäßig verändert werden: charging_cur_limit, fixed_current, charging_enable, disconnect_cp, relay_select, relay2. Bei allen anderen Registern wird bei Veränderung ins Flash geschrieben, also sollte die Anzahl Schreiboperationen begrenzt werden!

Standard Slave IDs

WallboxSlave Id 1TCP-Port 4701
S0-Zähler 1Slave Id 2TCP-Port 4702
S0-Zähler 2Slave Id 3TCP-Port 4703
angehefteter ZählerSlave Id 1TCP-Port 4701 (via Wallbox Register)

Je nachdem, um welches Gerät es sich handeln und ob z.B. bei der Wallbox ein Zähler angeheftet ist, gelten die folgenden Register:

Register (r = nur lesen, w = nur schreiben, rw = lesen/schreiben)

Register für S0-Zähler und die Ladestation

NameAddresseRegisterBeschreibung
vendor_id80002 rEindeutige Hersteller-Id, 0xcf05
product_id80021 rProdukt-Id, 1
device_id80031 rGeräte-Id im Produkt, 0x100
product_version80042 rProduktversion, major.minor
product_build80051 rProdukt-Build-Nummer
mapping_version80061 rmajor.minor Version dieser Registerzuordnung
padding_180071 rReserviert
serial_no80088 rSeriennummer als Text
name801616 rProduktname, "cFos Power Brain"
slave_id80401 rwModbus Slave ID

Register für S0-Zähler

NameAddresseRegisterBeschreibung
input80411 rReserviert
pulsesperkwh80422 rwImpulse pro kWh für S0-Eingang
phases80441 rwBitmaske der simulierten Phasen, Bit 0 = L1, Bit 1 = L2, Bit 2 = L3
voltage_l180451 rwNominelle Spannung L1 [V]
voltage_l280461 rwNominelle Spannung L2 [V]
voltage_l380471 rwNominelle Spannung L3 [V]
pulses80504 rwAbsolute Anzahl der Pulse auf dem S0-Eingang
timeperpulse80542 rZeit zwischen den letzten zwei Pulsen auf dem S0-Eingang [ms]
level80561 rMomentaner Eingangswert auf dem S0-Eingang
0 = Strom fließt, 1 = Strom fließt nicht
meter_flags80571 rbit 0: 1=has individual phases
energy80584 rwAktiver Import [Wh]
power80622 rAktive Leistung [W]
current_l180642 rMomentaner Strom L1 [0.1 A]
current_l280662 rMomentaner Strom L2 [0.1 A]
current_l380682 rMomentaner Strom L3 [0.1 A]
reset_pulses80701 wPulszähler zurücksetzen [1]
reset_energy80711 wEnergie zurücksetzen [1]

Register für angeheftete Zähler

Es stehen die Register 8057 bis 8068 zur Verfügung (s. S0-Zähler)

Register für die Ladestation

Standardwerte nach Neustart:

NameAddresseRegisterBeschreibung
def_fixed_current80801 rwStandardwert cable_current [0.1 A] (*)
def_charg_cur_limit80811 rwStandardwert Ladestrom-Limit [0.1 A] 6-63 (*)
def_charging_enable80821 rwStandardwert "Laden möglich" [0/1] (*)
(*) Dieser Wert wird nach einem Neustart so gesetzt.
fail_safe_duration80832 rwAnzahl der Sekunden ohne Lesen/Schreiben über Modbus, bevor fail_safe_current angewandt wird, 0 zum deaktivieren. Default-Wert ist 300 (5 Minuten)
fail_safe_current80851 rwStrom bei Inaktivität in 0.1A, 0 = Laden deaktivieren
disconnect_cp80861 rwSchreiben: Anzahl Sekunden der Abschaltung CP, Lesen: Verbleibende Sekunden
relay_select80871 rwSchreiben: 0=3-Phasenschütz, 1=1-Phasenschütz, bei Wallboxen, die das unterstützen (mindestens controller Rev. F)
relay280881 rwSchreiben: 0=Relais 2 aus, 1=Relais 2 an (nur wenn Relais 1 aus ist), bei Wallboxen, die das unterstützen (mindestens controller Rev. F)
cable_current80901 rPP: Maximaler Kabel-Strom [0.1 A], 0: kein Kabel
fixed_current80911 rwÜberschreibe cable_current [0.1 A]
charge_pilot_state80921 rCP: 0 = A (warten),
      1 = B (Fahrzeug erkannt),
      2 = C (laden),
      3 = D (laden mit Lüftung),
      4 = E (kein Strom),
      5 = F (Fehler), 9 = DC Sensor Fehler. Alle andere Werte: Fehler
charging_cur_limit80931 rwLadestrom-Limit [0.1 A] 6-63A, kann wegen modellbedingter Einschränkungen begrenzt sein (z.B. für Power Brain 11kW ist es auf 16A begrenzt)
charging_enable80941 rwLaden möglich [0/1] 0 = ausgeschaltet, 1 = eingeschaltet
charging_current80951 rLadestrom [0.1 A] 6-63
last_rfid809615 rLetzte erkannte RFID (hex-string)
detected_rfids81111 rAnzahl der RFID Eingaben
has_meter81121 r1, falls ein Zähler angeheftet (dann sind die Register 8057-8068 lesbar), andernfalls 0
s0_inputs81131 rBit 0=Zustand S0-Eingang 1
bit 1=Zustand S0-Eingang 2
bit 8=ist Umschalten auf 1/3-phasig im eingesteckten Zustand erlaubt? (1=ja)
bit 9=bit 10 ist gültig
bit 10=2. Relais vorhanden (1=ja, wenn bit 9=1)
bit 11=Relais 2 wird von extern kontrolliert (s. Reg. 8088)
count_restart81202 rwAnzahl der Hardware-Neustarts