-
-
Notifications
You must be signed in to change notification settings - Fork 725
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
Neuer Charger 'AC Thor 9S' #18020
Comments
Ich finde in der Doku leider nichts zu Modbus Registern- die bräuchte es. |
Dann macht es wahrscheinlich eher Sinn einen POST mit 'generiertem Body' abzusetzen mit dem HTTP Plugin? Geht das Plugin denn auch für chargers? Ansonsten geht Ansteuerung via Modbus RTU/TCP schon, aber dann halt mit den jewieligen Protokollen? |
Nein. evcc ist master muss den Thor steuern. Dafür brauchts Modbus Register. Bisher fehlen die... |
Da ist Thor der master. Das ist nicht was wir brauchen. Ausserdem scheint ja das Elwa Template fast zu laufen- also muss Modbus Slave möglich sein. |
Aber wenn die AC-THOR Nummer >1 ist, wäre er doch als Slave einstellbar? |
Es braucht eine Doku der Modbusregister. Ich mache zu bis die vorliegt. |
Diese reichen nicht? |
Das hilft. Der einzige Unterschied zur Elwa scheint das Leistungsregister zu sein- 1060 statt 1074? |
Mit der Version 1. AC Thor: Steuerungs-Einstellungen
2. Einstellungen EVCC
Hier ein Beispiel mit einem 6kW Heizstab, der bisher nie mehr als 5kW geschafft hat ... ;-) Ein Punkt, der nicht geht: Er liefert auch bei 'Off'/'Solar', wenn keine Sonnenenergie zur Verfügung steht die minimal mögliche Leistung. Das müsste egtl. '0' sein @andig ? |
Ich verstehe die Frage nicht. Falsche minCurrent am Ladepunkt? |
Also, wenn der Toggle auf 'Off' steht bzw. auf 'Solar' und KEIN Überschuss besteht, müsste bei Power eigentlich '0.0 kW' stehen, er lädt aber mit 28-30Watt permanent. |
Schau bitte ins Logfile. Für "aus" wird Register 1000 auf 0 gesetzt. Der Rest ist vmtl. Eigenverbrauch des Gerätes. |
Habe folgendes in den Logs:
|
Hättest Du nochmal mehr Log vorher? Ich frage mich schon, woher das
kommt? |
Ich melde mich heute Abend nochmals. Eventuell hilft aber das hier generell weiter: Ich habe übrigens den ACThor 9s. Und ein E3DC System, das den ACThor automatisch gefunden (und konfiguriert ?) hat und ich kann den dort nicht entfernen. Aber der ACThor sollte nur noch vom evcc System Modbus Befehle entgegen nehmen, das ist auf 192.168.1.50. |
Es kann nur einer steuern! |
Schon klar! Im E3DC habe ich dazu wenigstens den Haken bei "aktiviert" rausgenommen, aber komplett entfernen kann ich dort den ACThor nicht. Daher denke ich schon, dass nur evcc den ACThor steuert. |
evcc behandelt Status 2 als "laden". Sonst verbunden. Scheint als würde Thor ein anderes Mapping als die Elwa erfordern? Welches?
Gut möglich.
Register 1000 wird alle 30s geschrieben solange der Ladepunkt enabled ist. Fazit: wir brauchen wohl doch nochmal eine Doku der Register! |
Bin dran... Habe in Register 1000 eine Last von 8000W gesetzt und dann die Register 1000 bis 1079 ausgelesen. Der ACTHOR 9s hat 3 Ausgänge á 3000W. Das von Dir aktuell genutzte Register 1074 gibt nur den Wert für einen dieser Ausgänge zurück! Edit: Und den Wert von Register 1060 kann ich auch nicht richtig mit der von mir gesetzten Leistung korrellieren... Register 1000 gibt nach dem Schreiben lesend die Gesamtleistung zurück. Solange bis der Wert in "Zeitablauf Ansteuerung" abgelaufen ist, dann fällt die Leistung auf 0W ab. Standardmäßig sind das 10s, dieser Wert muss mindestens auf die 30s gesetzt werden, in der evcc die Werte neu schreibt. Am besten 60s nehmen, dann ist man auf der sicheren Seite. Die Register 1074/1075/1076 geben die Leistungswerte der einzelnen Ausgänge (Phasen) zurück. Also entweder alle 3 auslesen, oder warum nicht zyklisch Register 1000 lesen und die aktuelle Gesamtleistung bekommen? Das sollte, wenn ich die Doku richtig verstehe, mit allen MyPV Komponenten funktionieren, egal ob 1p oder 3p Geräte. Hast du schon Zeit gehabt dir dieses Dokument anzusehen? Dort ist eine gute Doku der Modbus Register der MyPV Serie. |
Die Elwa Doku nutzt nichts- der funktioniert ja. Und deckt z.B. 1074/75/76 auch nicht ab.
Das war das Register das mir genannt wurde. Ansonsten sieht du in mypv.go ja welche Register verwendet werden. Einfach anpassen bis es passt. Ich kann hier mangels Testobjekt nur nach Vorgabe arbeiten. |
Hier ist die Liste der Modbus Register, die der AC Thor und AC Thor 9s nutzt. Beim Status haben die Thors folgende Bedeutungen: Weiterhin kann man beim AC Thor 9s 1-3 Heizstäbe anschliessen mit 1-3 Temperaturfühlern. Die Anzahl der Temp-Fühler muss nicht gleich der Anzahl der Heizstäbe sein. |
Danke! Danach is 1060 die aktuelle Leistung, 1000 scheint weiterhin die VORGABEleistung zu sein.
Kann man ermitteln, welche der 3 jeweils relevant sind? Andererseits: auch der Mittelwert ist ja eher falsch. Theoretisch könnten das sogar 3 einzelne Speicher sein??? Status: bei der Elwa ist 2==Heat. Was bedeutet die 9==Operation beim Thor? Operation = Heizbetrieb? Falls nein: woran erkennen wir Heizbetrieb (Status C)? |
Das eigentlich Problem ist doch, dass evcc den AC THOR disabled (z.B. durch mode=off), aber noch nicht mit dem Verhalten des AC THOR zurecht kommt, da dieser selbst nicht aktiviert/deaktiviert werden kann. Und dann kommt komisches Verhalten, wie von @walburgf in seinem Video schön gezeigt. Hier eine Analyse meines obigen Logs Dann läuft er logischerweise in den "Out of sync", weil der AC THOR durch das Setzen auf 0x01c natürlich weiter heizt und das auch so im Status ausgibt. |
|
Ich kapiere es nicht: Wenn ich 1082 auf 0 stelle ist laden gesperrt, auf 1 ist laden möglich/erlaubt bzw. der Heizstab aktiviert. |
Ja.
Du meinst 1081? Das schaltet nicht die Ladung frei, sondern das Gerät in toto, ob Ladefreigabe oder nicht. |
@andig Danke für den Link. evcc möchte also mit enabled/disabled vom "loadpoint" wissen, ob er laden bzw. heizen darf. Das wäre dann wirklich Register 1081 wie hier erklärt: #18020 (comment) evcc sollte aber auf Register 1081 nur lesend zugreifen, sonst machen wir uns den nicht-flüchtigen Speicher vom AC THOR kaputt mit zu häufigen Schreibvorgängen. Edit: Hmm, aber wenn ich mir mein Log ansehe, dann werden wir z.B. im charge modus "off" immer in ein "Out-of Sync - expected disabled, got enabled" laufen, da der AC THOR über 1081 stets "1" zurückgibt. Außer wir schreiben ins Register 1081 und dass soll man lt. Doku nicht häufiger als 1x am Tag machen. Mein Vorschlag ist daher sich enabled merken, z.B. wenn die gelesene Heizleistung im Register 1000 > 10W ist und wenn die gelesene Heizleistung <10W auf disabled gehen. |
D.h. für mich stellt sich das dann wie folgt dar:
Ist mein Verständnis korrekt? Oder habe ich etwas vergessen? |
Hier werden immer wieder Steuerung durch den Ladepunkt und Eigenschaften des Gerätes durcheinander gewürfelt... |
Modbus kennt unterschiedliche Funktionstypen, darunter auch seperat Lesen (0x03) und Schreiben (0x06) von Registern. Ein Register muss man sich auch NICHT NUR wie eine Speicherzelle im Gerät vorstellen, sondern im Code für Lesen und Schreiben des Modbus Registers kann auch was anderes programmiert sein. Aber es kann eben auch nur den Inhalt einer Speicherzelle gelesen und geschrieben werden. |
Danke für den Fix! Habe ihn eben kurz getestet. Soweit funktioniert es, wie es soll. Hinweis für Anwender: Der Loadpoint sollte (auch wenn der AC THOR 9s den Heizstab 3phasig ansteuert) als 1p in evcc konfiguriert sein. Da du als Limit 0W gesetzt hast, läuft er aber noch einmalig in einen [lp-3 ] DEBUG 2025/01/13 18:57:48 set charge mode: off
[lp-3 ] DEBUG 2025/01/13 18:57:48 charge power: 228W
[ac-thor] TRACE 2025/01/13 18:57:48 modbus: send 00 fb 00 00 00 06 01 03 03 eb 00 01
[ac-thor] TRACE 2025/01/13 18:57:48 modbus: recv 00 fb 00 00 00 05 01 03 02 00 09
[lp-3 ] DEBUG 2025/01/13 18:57:48 charger status: C
[ac-thor] TRACE 2025/01/13 18:57:48 modbus: send 00 fc 00 00 00 06 01 03 03 e9 00 01
[ac-thor] TRACE 2025/01/13 18:57:48 modbus: recv 00 fc 00 00 00 05 01 03 02 01 ff
[ac-thor] TRACE 2025/01/13 18:57:48 modbus: send 00 fd 00 00 00 06 01 03 03 e8 00 01
[ac-thor] TRACE 2025/01/13 18:57:48 modbus: recv 00 fd 00 00 00 05 01 03 02 00 e4
[ac-thor] TRACE 2025/01/13 18:57:48 modbus: send 00 fe 00 00 00 09 01 10 03 e8 00 01 02 00 00
[ac-thor] TRACE 2025/01/13 18:57:48 modbus: recv 00 fe 00 00 00 06 01 10 03 e8 00 01
[lp-3 ] DEBUG 2025/01/13 18:57:48 charger disable
[lp-3 ] DEBUG 2025/01/13 18:57:48 wake-up timer: stop
[lp-3 ] DEBUG 2025/01/13 18:57:52 charge power: 5W
[lp-3 ] DEBUG 2025/01/13 18:58:02 charge power: 5W
[ac-thor] TRACE 2025/01/13 18:58:10 modbus: send 00 ff 00 00 00 06 01 03 03 e8 00 01
[ac-thor] TRACE 2025/01/13 18:58:10 modbus: recv 00 ff 00 00 00 05 01 03 02 00 05
[lp-3 ] DEBUG 2025/01/13 18:58:12 charge power: 5W
[ac-thor] TRACE 2025/01/13 18:58:12 modbus: send 01 00 00 00 00 06 01 03 03 eb 00 01
[ac-thor] TRACE 2025/01/13 18:58:12 modbus: recv 01 00 00 00 00 05 01 03 02 00 09
[lp-3 ] DEBUG 2025/01/13 18:58:12 charger status: C
[ac-thor] TRACE 2025/01/13 18:58:12 modbus: send 01 01 00 00 00 06 01 03 03 e9 00 01
[ac-thor] TRACE 2025/01/13 18:58:12 modbus: recv 01 01 00 00 00 05 01 03 02 01 ff
[ac-thor] TRACE 2025/01/13 18:58:12 modbus: send 01 02 00 00 00 06 01 03 03 e8 00 01
[ac-thor] TRACE 2025/01/13 18:58:12 modbus: recv 01 02 00 00 00 05 01 03 02 00 05
[lp-3 ] WARN 2025/01/13 18:58:12 charger logic error: disabled but charging
[lp-3 ] DEBUG 2025/01/13 18:58:22 charge power: 1W
[lp-3 ] DEBUG 2025/01/13 18:58:32 charge power: 0W
[ac-thor] TRACE 2025/01/13 18:58:40 modbus: send 01 03 00 00 00 06 01 03 03 e8 00 01
[ac-thor] TRACE 2025/01/13 18:58:40 modbus: recv 01 03 00 00 00 05 01 03 02 00 00
[lp-3 ] DEBUG 2025/01/13 18:58:42 charge power: 0W
[ac-thor] TRACE 2025/01/13 18:58:42 modbus: send 01 04 00 00 00 06 01 03 03 eb 00 01
[ac-thor] TRACE 2025/01/13 18:58:42 modbus: recv 01 04 00 00 00 05 01 03 02 00 07
[lp-3 ] DEBUG 2025/01/13 18:58:42 charger status: B
[lp-3 ] INFO 2025/01/13 18:58:42 stop charging <- |
bei mir funktioniert die Steuerung noch nicht korrekt: Aufzeichnung.2025-01-14.132832.mp4site ] DEBUG 2025/01/14 13:28:42 ---- |
Da die Modbuskommunikation fehlt ist das Logfile unbrauchbar. Ebenso fehlt Deine Config... |
Wir hatten heute genug Sonne und die Heizstab Ansteuerung durch evcc hat ganz prima funktioniert. Hier der relevante Teil meiner Config: meters:
- name: ACThor_meter
type: template
template: thor
usage: aux
host: 192.168.1.145
loadpoints:
- title: MyPV Heizstab
charger: myPV_Heizstab
meter: ACThor_meter
mode: pv
priority: 0
enable:
threshold: -200 # einschalten, wenn 1 min. lang mind. 200W Überschuss vorhanden ist
delay: 1m
disable:
threshold: 200
delay: 1m
chargers:
- name: myPV_Heizstab
type: template
template: ac-thor
#Modbus TCP
modbus: tcpip
id: 1
host: 192.168.1.145
port: 502 Wobei ich mich grad frage, ob der Edit: Habe eben den Leicht OT, von mir aus mach ich dazu gerne ein neues Topic auf: |
Hier noch die aktuelle Config für die Copy&Paste Fraktion chargers:
- name: myPV_ac-thor
type: template
template: ac-thor
#Modbus TCP
modbus: tcpip
id: 1
host: <ip>
port: 502
loadpoints:
- title: AC•THOR Heizstab
charger: myPV_ac-thor
mode: pv
priority: 0
enable:
threshold: -200 # einschalten, wenn 1 min. lang mind. 200W Überschuss vorhanden ist
delay: 1m
disable:
threshold: 200
delay: 10s Ich habe den Zusätzlich setze ich von der Hausautomation FHEM aus den Modus des Ladepunkts auf PV wenn der Hausakku mehr als 90% hat, darunter auf Aus. So lädt der Heizstab erst, wenn der Hausakku voll ist und noch PV Überschuss vorhanden ist. |
Genau. Unnötig. Das hättest Du aber auch einfach ausprobieren können ;) |
Hab ich doch !.... 😉🤣 |
ich habe jetzt mal noch weitere Tests gemacht und einen Fehler in meinem Setup gefunden. Nachdem ich diesen korrigiert hatte, funktioniert jetzt alles wie es soll. @andig : Eine Bitte hätte ich noch: Da der AC Thor 9s 3 Heizstäbe mit bis zu 3 Temperaturfühler im Speicher haben kann (oben, mitte, unten), würde der AC Thor 9s aufhören zu heizen, wenn die obere Temperatur das Limit erreicht hat, jedoch die unteren Heizstäbe noch heizen könnten. Deshalb sollten alle Temperaturen im SOC von evcc berücksichtigt werden. Dafür sollte der Mittelwert verwendet werden. Ich habe mal versucht in Go einen Vorschlag zu programmieren (Ich bin jedoch kein Go Experte :-) )
|
This comment was marked as off-topic.
This comment was marked as off-topic.
Bitte beim Thema bleiben. Danke.
Ps: Thor als 1p konfigurieren, siehe #18235! |
Hi @andig , |
This comment was marked as off-topic.
This comment was marked as off-topic.
Das wundert mich nicht wenn die WP 1,1 kW konsumiert. Hier OT! Bitte beim Thema bleiben. |
@andig Das er nur 6,6kW bezieht würde im Modus PV Sinn machen, aber der AC THOR ist im Modus Schnell und da sollte er die im Loadpoint maximal eingestellten Ampere zum Heizen nutzen. Hast du zufällig im AC THOR die Leistung auf <100% begrenzt? Erweiterte Einstellungen - > Grundeinstellungen und dort die Max. Leistung. |
Good point- danke (und nicht OT). Aus evcc Sicht ist die Wahrheit im Config+Logfile, nicht in Screenshots. Schnell ist Maximalstrom- auch da muss die Config stimmen... |
Der AC THOR charger beachtet aber auch die Loadpoint Einstellung 1p/3p nicht. Ich bekomme meinen AC THOR mit 32A maximal Einstellung nicht über 7,3kW. Ich hatte geschrieben 1p zu nehmen, da damit die Anzeige der möglichen kW Werte in den Loadpoint Einstellungen mit den tatsächlich geregelten Werten übereinstimmt. |
Einfach den richtigen Strom für 1p nehmen? |
Der Heizstab hat 3phasig je 3kW, das sind insgesamt 9kW. Wenn ich das auf 1p umrechne, komme ich auf ca. 40A. Zumindest über die Loadpoint GUI kann ich das nicht einstellen, da ist bei 32A Ende. maxcurrent im Loadpoint ist ja veraltet. |
Grmpf. I see. /cc @naltatis |
Sollte morgen im Nightly gelöst sein. Wir verwenden jetzt (wenns funktioniert) immer die Phasenkonfiguration des Loadpoints. |
Test mit aktuellem Der AC THOR 9s begrenzt auch von sich aus die übergebene Leistung. Also wenn (wie jetzt bei mir oben eingestellt) evcc 11kW Leistung anfordert, mehr als die 8,8kW gehen vom AC THOR 9s aus nicht. Begrenzt man in den Grundeinstellungen des AC THOR die Leistung (bei mir 63% = 5,5kW), so kann evcc zwar mehr als 5,5kW anfordern, der AC THOR 9s regelt aber dann auf nicht mehr als 5,5kW. |
Derzeit werden von my-PV die Meter
unterstützt und der Charger / Heizstab:
my-PV bietet aber via AC Thor auch externe Heizstäbe an, die neu via API gesteuert werden können. Früher hatte AC Thor die Anbindung eines Smartmeters voraus gesetzt, jetzt kann man den Heizstab via dem API selber steuern: https://www.my-pv.com/de/info/my-pv-cloud/
Vorteil: Die Priorisierung des Stromüberschusses kann richtig verteilt werden.
Dokumentation AC Thor: https://download.my-pv.com/acthor/acthor_doc_de_a0021702.pdf
Swagger Doku des API: https://api.my-pv.com/api-docs/
Unser AC Thor 9s läuft mit einem 6 kW Heizstab
Ich hatte unseren Charger als elwa2 Heizstab konfiguriert, da stimmt aber die Watt-Zahl immer noch und er 'heizt' nur mit 15W
Das API erscheint mir relativ einfach, vielleicht gibt es sonst auch eine andere Lösung?
The text was updated successfully, but these errors were encountered: