Benachrichtigungen
Alles löschen

[Oben angepinnt] Sun GTIL2-1000 RS485 Interface

1,371 Beiträge
173 Benutzer
114 Likes
97.3 K Ansichten
(@trucki)
Batterielecker
Beigetreten: Vor 3 Jahren
Beiträge: 378
Themenstarter  

Früher war der DAC begrenzt. Die Aktuelle Firmware geht bis max value 65535.

Für eine Kalibrierung muss die Batterie genügend liefern können, um den SUN mit 1000/2000W für ca. 10s laufen zu lassen.

Wenn Du den Wert 99 auf das Reg5 schreibst, dann wird die Standard Kalibrierung wieder geladen.

Gruß Trucki


   
AntwortZitat
(@bernd33-1)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 34
 

Früher war der DAC begrenzt. Die Aktuelle Firmware geht bis max value 65535.

Für eine Kalibrierung muss die Batterie genügend liefern können, um den SUN mit 1000/2000W für ca. 10s laufen zu lassen.

Wenn Du den Wert 99 auf das Reg5 schreibst, dann wird die Standard Kalibrierung wieder geladen.

Gruß Trucki

Also wenn ich den SUN von Hand teste (also bei DAC_Numer von Hand die Werte ändere), kann ich locker bis 900+irgendwas Watt gehen. Der Akku liefert also genügend Power. Ist ein 48V 200AH LiFePo4 Akku.

Aber beim kalibrieren, da klemmt irgend was. Bei den letzten 2 Stufen (18 und 19) da geht er kurz hoch auf 800W+ und dann kommt er iwi ins stocken. Da stottert er dann rum. Gefühlt würde ich sagen der SUN versucht was zu regeln?

Mein SUN hat noch die alte 5.1er Firmware. Kann das das Problem sein?

Grüße, Bernd


   
AntwortZitat
(@trucki)
Batterielecker
Beigetreten: Vor 3 Jahren
Beiträge: 378
Themenstarter  

Hallo Bernd,
vielen Dank für den Hinweis. Die Firmwareversion des SUN Displays spielt keine Rolle.
Calibration-Step 17 ist DAC=33187, 18+19 DAC=40000 .

Ich vermute, dass dein SUN1000 bei diesen hohen DAC Werten schon umschaltet von analogem Limiter auf MPPT.
Welchen maximalen DAC Wert kannst Du denn von Hand für ~960W einstellen?
Was macht dein SUN bei DAC=33187 ?

Ich schaue mir die Kalibrierung noch mal an.

Viele Grüße,
Trucki


   
AntwortZitat
(@bernd33-1)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 34
 

Sobald mein Akku wieder geladen hat, werde ich schauen, wie weit ich mit dem DAC-Wert hochgehen kann ehe mein SUN zu stottern beginnt.

Noch was. Es war etwas trickreich, den SUN mit der Platine in den IOBroker zu integrieren. Aus irgend welchen Gründen kommt es mittlerweile zu Fehlermeldungen, wenn man versucht eine YAML-Datei im IOBroker zu kompilieren. Anscheinend fehlen da ein paar Libraries. In meiner YAML werden diese fehlenden Libs dann nachträglich inkludiert, so dass die YAML wieder fehlerfrei kompiliert werden kann.

Des weiteren kommen viele Fehler im IOBroker-Log wenn man die ESPHome-API aktiviert hat. Das haben hier auch schon andere bemerkt. Daher die API auskommentieren und statt dessen die Daten via MQTT übertragen lasse.

Und hier nun meine YAML, die sich kompilieren lässt und im Log auch keine Fehler verursacht. Diese YAML ist für einen ESP8266. Wenn ein ESP32 verwendet wird, muss der Parameter platform angepasst werden Ebenso sind in der Sektion UART die Werte für tx und rx anzupassen.
esphome:
name: sun1000esp
platform: ESP8266
board: esp01_1m
platformio_options:
lib_deps:
#- ArduinoJson-esphomelib@5.13.3
- https://github.com/OttoWinter/AsyncTCP
- https://github.com/OttoWinter/ESPAsyncWebServer
- https://github.com/bblanchon/ArduinoJson.git
- https://github.com/me-no-dev/ESPAsyncTCP.git
- https://github.com/OttoWinter/ESPAsyncTCP.git
- https://github.com/OttoWinter/async-mqtt-client.git
- https://github.com/marvinroger/async-mqtt-client.git

# Enable logging
logger:
baud_rate: 0 #needs 0, because info & data goes thru one line.

# Enable Home Assistant API
#api: #auskommentieren, damit API nicht verwendet wird.

mqtt:
broker: "192.168.0.177" #die IP deines IOBrokers
port: "1883"
id: "Sun1000" #unter diesem Namen tauchen die Werte des SUN bei den MQTT Objekten im IOBroker auf.

ota:
password: "4ccdffe3ed1f219acfccb53f59a9d552"

wifi:
ssid: "NAME-DEINES-WLANS"
password: "PASSWORT-DEINES-WLANS"

# Enable fallback hotspot (captive portal) in case wifi connection fails
#ap:
#ssid: "sun1000esp Fallback Hotspot"
#password: "9u5zQo9AyTTp"

#captive_portal: #ich verwende kein Fallback Hotspot. Daher hab ich das auskommentiert.

web_server:
port: 80

uart:
id: mod_bus
tx_pin: 1
rx_pin: 3
baud_rate: 9600
stop_bits: 1

modbus:
#flow_control_pin: 5
id: modbus1

modbus_controller:
- id: sun
## the Modbus device addr
address: 0x1
modbus_id: modbus1
update_interval: 1s
setup_priority: -10

sensor:
- platform: wifi_signal
name: "WLAN Signal"
update_interval: 5s
- platform: modbus_controller
modbus_controller_id: sun
name: "AC Output"
id: ac_output
register_type: holding
address: 0x01
unit_of_measurement: "W"
value_type: U_WORD
accuracy_decimals: 1
filters:
- multiply: 0.1
- platform: modbus_controller
modbus_controller_id: sun
name: "Grid Voltage"
id: grid_voltage
register_type: holding
address: 0x02
unit_of_measurement: "V"
value_type: U_WORD
accuracy_decimals: 1
filters:
- multiply: 0.1
- platform: modbus_controller
modbus_controller_id: sun
name: "Bat Voltage"
id: bat_voltage
register_type: holding
address: 0x03
unit_of_measurement: "V"
value_type: U_WORD
accuracy_decimals: 1
filters:
- multiply: 0.1

number:
- platform: modbus_controller
modbus_controller_id: sun
id: ac_setpoint_number
name: "AC Setpoint Number"
address: 0x00
value_type: U_WORD
multiply: 10
unit_of_measurement: "W"
min_value: 0
max_value: 9600
- platform: modbus_controller
modbus_controller_id: sun
id: dac_number
name: "DAC Number"
address: 0x04
value_type: U_WORD
min_value: 0
max_value: 33187
- platform: modbus_controller
modbus_controller_id: sun
id: calibration_number
name: "Calibration Number"
address: 0x05
value_type: U_WORD
min_value: 0
max_value: 1

EDIT:
Jetzt tut es eigentlich schon ganz gut Smile Mein IOBroker bekommt vom Stromzähler mitgeteilt, wieviel Strom gerade aus dem Netz bezogen wird. Zu diesem Wert Addiere ich dazu, wieviel der Sun 1000 gerade einspeist. Somit habe ich meinen Gesamtbedarf an Strom. Dann stelle ich den Sun 1000 neu (über den DAV Wert) ein, damit der Strombezug möglichst klein ist. Anbei das Blockly für den IOBroker damit das automatisch passiert :). Ich hab noch eine Abfrage drin, die den Sun 1000 auf 719W (DAC=24000) begrenzt.


   
AntwortZitat
(@bernd33-1)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 34
 

Hallo Bernd,
vielen Dank für den Hinweis. Die Firmwareversion des SUN Displays spielt keine Rolle.
Calibration-Step 17 ist DAC=33187, 18+19 DAC=40000 .

Ich vermute, dass dein SUN1000 bei diesen hohen DAC Werten schon umschaltet von analogem Limiter auf MPPT.
Welchen maximalen DAC Wert kannst Du denn von Hand für ~960W einstellen?
Was macht dein SUN bei DAC=33187 ?

Ich schaue mir die Kalibrierung noch mal an.

Viele Grüße,
Trucki

Ok, mein Sun geht zuverlässig bis 31600 (937W). Danach kommt er iwi ins stottern.


   
AntwortZitat
(@trucki)
Batterielecker
Beigetreten: Vor 3 Jahren
Beiträge: 378
Themenstarter  

Hmm danke. Ich hatte gehofft, dass er wenigstens bis 32767 stabil läuft. Hast Du vielleicht noch die Möglichkeit die Spannung am RT1 Eingang bei DAC31600 zu messen?

Ich habe vor Dir im Laufe der Woche eine neue Firmware mit neuer LUT zu bauen.

Viele Grüße
Trucki


   
AntwortZitat
(@bernd33-1)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 34
 

Hallo Bernd,

Ja bei ACSetpoint gibt's Du die Watt Zahl ein. Hier kann es schon zu Toleranzen kommen und ja es wird dann sehr langsam auf den geforderten Wert geregelt. Das passt also und wenn es genauer sein muss, dann muss Du entweder kalibrieren, oder den aktuellen Displaywert mit in die Berechnung für den nächsten Setpoint mit einbeziehen.

Um den DAC Wert zu schreiben sollte der Setpoint auf 0 stehen. Hier wird dann streng der vorgegebene DAC Wert gehalten und nichts nachkorrigiert. D.h. Hier sollte es eigentlich kein Überschwingen geben.

Viele Grüße
Trucki

Hi,

Trucki, du schreibst, dass wenn man Wattzahlen bei ACSetpoint eingibt, es zu einem langsamen Regelverhalten kommt (über ein paar Minuten). Und wenn man beim DAC Werte eingibt, sofort eingestellt wird.

Besteht die Möglichkeit, dass auch bei ACSetpoint sofort eingestellt wird? Also ohne zu regeln?

Problem: Ich möchte den IOBroker zum Regeln verwenden. Dazu rechnet der IOBroker aus, wieviel Watt mein Haus gerade verbraucht. Diesen neuen Wert übergibt nun der IOBroker an ACSetpoint. Da deine Regelung nun aber erst mal "überregelt", also deutlich zu viel Watt einspeist, und dann über ein paar Minuten langsam runter regelt, kommt die Regelung im IOBroker völlig aus dem Tritt.
Verwendet ich statt ACSetpoint den DAC, dann muss ich im IOBroker eine sehr große Umrechnungstabelle einpflegen. Dazu muss ich dann zuvor noch eine Messreihe machen, die genügend genau aufgelöst ist. Das ist sehr aufwändig.

Ich vermute beim Home Assistant verhält es sich ähnlich komplex.

Daher also die Frage: Kann man die ACSetpoint ohne Regelverhalten (oder sehr schnellem Regelverhalten) realisieren?

Grüße, Bernd


   
AntwortZitat
(@trucki)
Batterielecker
Beigetreten: Vor 3 Jahren
Beiträge: 378
Themenstarter  

Guten Morgen Bernd,

nein, falsch verstanden:

Wenn Du einen ACSetpoint(Reg0) in [Watt*10] schreibst, dann wird dieser innerhalb von 100ms an den SUN als Analogspannung weitergegeben. Anschließend vergleicht die Platine intern den ACSetpoint mit dem ACDisplay und korrigiert ggf. sehr langsam die Analogspannung.

All das hat nichts mit dem Überschwingen zu tun. Ich weiß nicht, warum Dein SUN überschwingt. Eventuell hilft kalibrieren. Ich habe schon eine neue Firmware (1.08) mit default LUT bis DAC 31500 fertig. Bevor ich sie Dir schicke möchte ich sie noch mal bei mir testen.

Viele Grüße,
Trucki


   
AntwortZitat
(@bernd33-1)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 34
 

Ah, alles klar. Ich glaub jetzt hab ich es 🙂

Gut, dann warten ich mal auf die Firmware. Vielen Dank schon mal für deine Mühen!


   
AntwortZitat
(@centz)
Newbie
Beigetreten: Vor 2 Jahren
Beiträge: 4
 

Moin Trucki,

ich habe das selbe Problem mit der Kalibrierung bei meinem SUN1000.

Stelle ich Werte bis ca. 80W über den ACsetpoint ein, passen die Wert die der SUN ausspuckt sehr gut.
Ab 100W fängt er leider an zu spinnen.
Werden 100W eingestellt gibt der SUN ~150W raus.
Das ganze geht je höher die Leistung wird, immer weiter auseinander. Bei eingestellten 500W gibt der SUN ~750W raus.

Eine Kalibrierung hat nicht geholfen.
Die unteren Werte bei der Kalibrierung laufen normal durch, wenn die größeren Sprünge kommen fängt das hier schon genannte Problem an.

Schöne Grüße


   
AntwortZitat
(@mitsch06)
Batterielecker
Beigetreten: Vor 2 Jahren
Beiträge: 206
 

Versuche mich dann nochmal mit der Trucki Platine, hab neue ESP's von AZ, also mal gucken.
Die Platine funktioniert auch wenn kein DC angeschlossen ist?


   
AntwortZitat
(@trucki)
Batterielecker
Beigetreten: Vor 3 Jahren
Beiträge: 378
Themenstarter  

Ja, VGrid kannst Du immer auslesen.


   
AntwortZitat
(@bernd33-1)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 34
 

@Trucki, ist es eigentlich möglich, aus dem Sun 1000 die Info "Batteryvoltage to low" auszulesen? Weil wenn man extern regelt (IOBroker, Home Assistant, Arduino) dann wäre es easy die eigene Regelung zu deaktivieren sobald der Akku leer ist.

Grüße, Bernd


   
AntwortZitat
(@trucki)
Batterielecker
Beigetreten: Vor 3 Jahren
Beiträge: 378
Themenstarter  

Hallo Bernd,

Meinst Du wenn VBat kleiner als ~24V ist und die rote Meldung im Display erscheint,

Oder meinst Du wenn der SUN abgeschaltet hat weil VBat kleiner als 47.5V ist?

Ersteres könnte ich vielleicht in den Displaydaten finden.
Der SUN schaltet doch sowieso ab. Dann ist es egal ob der IOBroker noch neue Setpoints schickt, oder?

Am Displaywert (kleiner 10W) könnte man erkennen, dass der SUN abgeschaltet hat.

Gruß
Trucki


   
AntwortZitat
(@bernd33-1)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 34
 

Hallo Bernd,

Meinst Du wenn VBat kleiner als ~24V ist und die rote Meldung im Display erscheint,

Oder meinst Du wenn der SUN abgeschaltet hat weil VBat kleiner als 47.5V ist?

Ersteres könnte ich vielleicht in den Displaydaten finden.
Der SUN schaltet doch sowieso ab. Dann ist es egal ob der IOBroker noch neue Setpoints schickt, oder?

Am Displaywert (kleiner 10W) könnte man erkennen, dass der SUN abgeschaltet hat.

Gruß
Trucki

Wenn VBat < 47,5V (oder eben die im Display eingestellte Spannung) ist.

Im Prinzip kann man unendlich regeln lassen. Klar. Aber ich denke über schreiben in EEPROM nach. Hat halt nur eine begrenzte Schreibanzahl und dann isses defekt. Vielleicht denk ich aber auch zu kompliziert.... wer weis 🙂


   
AntwortZitat
Seite 17 / 92
Teilen: