Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Huawei EMMA template #17338

Merged
merged 10 commits into from
Nov 20, 2024
Merged

Conversation

Mungg1818
Copy link
Contributor

@Mungg1818 Mungg1818 commented Nov 18, 2024

Template for Huawei Emma A02

  • Grid
  • PV
  • battery status

--> no battery control

Sorry, could not reopen the old PR

@Mungg1818 Mungg1818 mentioned this pull request Nov 18, 2024
@andig
Copy link
Member

andig commented Nov 19, 2024

Sorry, could not reopen the old PR

Could have done that for you! The comments from the old PR still apply here...

@andig andig added the devices Specific device support label Nov 19, 2024
@Mungg1818 Mungg1818 marked this pull request as draft November 19, 2024 19:53
timeouts removed
battery control removed
@Mungg1818 Mungg1818 marked this pull request as ready for review November 19, 2024 19:58
@Mungg1818
Copy link
Contributor Author

Mungg1818 commented Nov 19, 2024

Ich habe die erwähnten Änderungen noch gemacht.

templates/definition/meter/huawei-emma.yaml Outdated Show resolved Hide resolved
templates/definition/meter/huawei-emma.yaml Outdated Show resolved Hide resolved
templates/definition/meter/huawei-emma.yaml Outdated Show resolved Hide resolved
@andig
Copy link
Member

andig commented Nov 20, 2024

Ich bin nicht sicher ob id: 0 funktioniert. Kann gut sein, dass 1 der default ist.

@Mungg1818
Copy link
Contributor Author

Ich habe keine Möglichkeit den Modbus mitzuhören und so zu verifizieren, dass die ID auf 0 steht. Auf meinem System auf einem Raspi läuft das Template.

@andig andig merged commit 0dad8b8 into evcc-io:master Nov 20, 2024
mabunixda added a commit to mabunixda/evcc that referenced this pull request Nov 22, 2024
* master: (58 commits)
  Add Huawei EMMA (evcc-io#17338)
  Config UI: device value formatting (evcc-io#17258)
  chore: upgrade npm dependencies (evcc-io#17344)
  chore: fix template
  Easee: fix PhaseGetter returning used, not configured, phases  (evcc-io#17326)
  chore: refactor
  MacOS: add gobuildid
  Script: simplify setters
  Tariffs: formula, charges, tax > advanced fields (evcc-io#17301)
  Push: add custom messenger (BC) (evcc-io#17211)
  Script: add missing string setter (evcc-io#17314)
  Sofar: fix docs (evcc-io#17324)
  Polestar: skip test
  Polestar: fix authentication (evcc-io#17276)
  chore: fix line breaks
  chore: fix quotes
  Add Tessie (evcc-io#17274)
  PUN: update api endpoint (evcc-io#17270)
  Revert "EM24: add pv usage & fix energy (evcc-io#17173)"
  Enphase: fix soc
  ...
@SolarPowerEV
Copy link
Contributor

Toll, dass jetzt auch die EMMA von evcc unterstützt wird! (Weil ich über einen Umstieg vom SDongle zur EMMA nachdenke)

Kurze Frage zur EMMA und dem oben erwähnten "no battery control":
Ist noch geplant, das zu implementieren, oder kann die EMMA das von Haus aus grundsätzlich nicht?
(Zumindest der SDongle und der Smartlogger von Huawei unterstützen ja die aktive Batteriesteuerung)

@Mungg1818
Copy link
Contributor Author

Mungg1818 commented Nov 26, 2024

So wie ich das sehe, kann die EMMA keine komplette Batteriesteuerung (Einschränkungen mit den Control Registern) machen. Jedoch ist es möglich via EMMA direkt auf Inverterregister und somit auf das Batterymgmt zuzugreifen. Konnte ich leider noch nicht abschliessend austesten. Habe aber schon die Register mit einem Tool ausgelesen.

@SolarPowerEV
Copy link
Contributor

Ich begebe mich jetzt zwar auf sehr dünnes Eis, aber ich meine, so ist auch die Batteriesteuerung unter SDongle und Smartlogger umgesetzt. Also durch einen direkten Zugriff auf die entsprechenden Register, die direkt für das Batterieverhalten zuständig sind.

@Mungg1818
Copy link
Contributor Author

Ich werde mal einen Versuch starten mit dem SUN2000 template und Modbus via EMMA.

@Mungg1818
Copy link
Contributor Author

Gestern habe ich den Versuch gemacht.
Das Auslesen der Werte via EMMA vom Inverter funktioniert, das Battery control leider nicht. Die Batterie wird entladen, obwohl ich die Einstellung Batterieunterstütztes Fahzeugladen auf über 100% und Starten mit genug PV Uberschuss. Auch die Option um das Entladen beim Schnell und geplanten Laden zu verhindern ist aktiviert.
Nun stellt sich mir die Frage, ob der Watchdog vom Template anschlägt (EVCC intervall 30 s --> Watchdog 30 s Problem?) oder das EMMA Device die Einstellungen um den discharge zu unterbinden wieder überschrieben werden. Ich habe leider kein Equipment um die MODBUS Kommunikation mitzuhören.
Hat jemand eine Idee woran das Problem liegen könnte?

@klein1785
Copy link

Hallo,
um das nachzuvollziehen könntest du modbus poll verwenden.
Damit kann man die Register auch fortlaufend auslesen und so sehen, ob da etwas ankommt oder wieder überschrieben wird.
https://www.modbustools.com/modbus_poll.html

@christoferconrad
Copy link

Toll, dass jetzt auch die EMMA von evcc unterstützt wird! (Weil ich über einen Umstieg vom SDongle zur EMMA nachdenke)

Kurze Frage zur EMMA und dem oben erwähnten "no battery control": Ist noch geplant, das zu implementieren, oder kann die EMMA das von Haus aus grundsätzlich nicht? (Zumindest der SDongle und der Smartlogger von Huawei unterstützen ja die aktive Batteriesteuerung)

Laut Huawei FusionSolar Webinar vom 04.10.24 soll die Verarbeitung von dynamischen Stromtarifen „bald“ per Update kommen, dies würde eine Steuerung - in welcher Form auch immer - voraussetzen.

@Mungg1818

This comment was marked as off-topic.

@SolarPowerEV

This comment was marked as off-topic.

@andig
Copy link
Member

andig commented Dec 1, 2024

OT. Bitte beim Thema bleiben.

@SolarPowerEV

This comment was marked as off-topic.

@andig
Copy link
Member

andig commented Dec 1, 2024

Das hat nichts mit EMMA zu tun.

@Mungg1818
Copy link
Contributor Author

Das Testen wird schwierig wenn ich nicht auch noch Informationen zum System bekommen kann. Ich finde das Projekt genial und wollte einen Beitrag dazu leisten und hätte mir mer Unterstützung vom PO erhofft.
Deshalb hier nun mein abschliessendes Fazit:
Ich konnte über EMMA das SUN2000 Template nutzen und auch die Batteriewerte auslesen. Wenn ich das richtig verstanden habe, wird in Min/PV die Batterie nicht gesperrt nur bei PV und Schnell (bei der richtigen Einstellung). Beim Ladevorgang am Freitag wurde mit PV keine Energie aus der Batterie bezogen bei einem Einbruch der PV-Leistung. Somit denke ich, dass es keine Erweiterung des EMMA Templates braucht und man das SUN2000 Template mit IP von EMMA und MODBUS ID vom Inverter gebrauchen kann.

@SolarPowerEV

This comment was marked as off-topic.

@SolarPowerEV
Copy link
Contributor

SolarPowerEV commented Dec 1, 2024

Deshalb hier nun mein abschliessendes Fazit: Ich konnte über EMMA das SUN2000 Template nutzen und auch die Batteriewerte auslesen. Wenn ich das richtig verstanden habe, wird in Min/PV die Batterie nicht gesperrt nur bei PV und Schnell (bei der richtigen Einstellung). Beim Ladevorgang am Freitag wurde mit PV keine Energie aus der Batterie bezogen bei einem Einbruch der PV-Leistung. Somit denke ich, dass es keine Erweiterung des EMMA Templates braucht und man das SUN2000 Template mit IP von EMMA und MODBUS ID vom Inverter gebrauchen kann.

Ich bin mir nicht sicher, ob ich den Umfang Deiner EMMA-Implementation jetzt vollständig verstanden habe.
Nach meinem Eindruck ist die EMMA etwas anders in evcc integriert als die Alternativen SDongle und Smartlogger, oder?

Du gehst jetzt also für die Kommunikation mit der Batterie den Weg durch den Wechselrichter und nicht auch durch die EMMA, richtig?

Konntest Du denn erfolgreich testen, ob beim Schnellladen die Batterie dann auch gegen ein Entladen gesperrt wird, wenn in evcc im Konfigurationsfenster "Hausbatterie" der Schalter "Verhindere Entladung im Schnell-Modus und bei geplantem Laden." aktiviert ist?
Denn Min+PV verhindert ein Entladen der Hausbatterie vor allem dadurch, dass der Ladestrom so niedrig gehalten wird, dass die Batterie gar nicht benötigt wird. Wenn aber der PV-Strom für mehrere Minuten komplett einbricht, dann sollte der Mindeststrom zur Aufrechterhaltung des Ladevorganges (also i.d.R. die 6 A) allerdings schon aus der Hausbatterie geliefert werden, sofern ihr SoC über dem in den Huaweis FusionSolar-Settings festgelegten Mindest-SoC liegt.

@Mungg1818
Copy link
Contributor Author

Mungg1818 commented Dec 2, 2024

Unten der Auschnitt meiner Konfig:

meters:
- type: template
  template: huawei-emma 
  id: 0  
  host: 192.168.1.173  
  port: 502  
  usage: grid  
  modbus: tcpip
  timeout: 15s  
  name: grid1
- type: template
  template: huawei-emma 
  id: 0  
  host: 192.168.1.173  
  port: 502  
  usage: pv  
  modbus: tcpip
  timeout: 15s  
  name: pv2
- type: template
  template: huawei-sun2000 
  id: 51  
  host: 192.168.1.173  
  port: 502  
  usage: battery  
  modbus: tcpip
  timeout: 15s  
  storageunit: 1 
  capacity: 10
  name: battery3

Bei mir hängt nur die EMMA am Netzwerk. Der Inverter ist via MODBUS (ich glaube RS485) ID 51 an die EMMA angeschlossen. EMMA ist bei mir also nur wie ein Gateway.
Heute habe ich den Versuch gemacht mit dem Schnellladen und die Batterie wurde gesperrt. Dies konnte ich an den Werten und an der Mitteilung neben der Batterie und dem Batteriesymbol von EVCC erkennen.
Nun stellt sich mir die Frage, ob das EMMA Template noch mit der Batteriesteuerung ergänzt werden soll oder nicht? Wenn ja, bräuchte ich Unterstützung, da ich beim Smartlogger Template nicht durchblicke, wie hier das Weiterrouten funktioniert.
z.B. folgende Zeilen (vorallem die 3.):

 power:
    source: modbus
    {{- include "modbus" . | indent 2 }}
    timeout: {{ .timeout }}
    connectdelay: 1s
    register:
      address: 32278 # Active power
      type: holding
      decode: int32
    scale: 1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
devices Specific device support
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants