Inbetriebnahme JK-BMS über RS485

Welche Geräter können mit dieser Anzeige benutzt werden?
Laderegler, Wallboxen, Batterie-Management-Systeme, WLAN Schalter mit Tasmota Firmware und Wechselrichter

Moderator: Ulrich

SolarHeli
Beiträge: 28
Registriert: Mi 5. Jan 2022, 22:31
Wohnort: Bayern
Danksagung erhalten: 9 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag von SolarHeli »

Hallo Harald,
der Fehler zeigt an, dass eine Antwort empfangen wird, aber der Inhalt nicht passt (z.B. wenn die Baudrate nicht stimmt, oder zwei Geräte auf der gleicher Adresse an einem Bus sind)
Auffällig, dass kein Frame ID angezeigt wird, denn der wird mit der Fehlermeldung ausgegeben ( => kein auswertbarer Frame).
Sonst sähe es z.B. so aus: !! -invalid frame! 6b instead of 0x79

Kannst Du bitte die Traceklasse in der JK_BMS.PHP hochstellen und mir das Log dann zuschicken?

$Tracelevel = 10; // 1 bis 10 10 = Debug

Kann können wir die empfangene Antwort sehen.

Viele Grüße,
Helmut

mikep500
Beiträge: 39
Registriert: Do 14. Jul 2022, 06:26
Danksagung erhalten: 1 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag von mikep500 »

Hallo,
ich klinke mich mal hier ein.
Ich habe heute mein JK BMS als Multiregler eingepflegt. Leider habe ich den gleichen Fehler.
Hat jemand eine Idee dazu?

09.12. 22:45:31 -Multi-Regler-Ausgang. -14
09.12. 22:45:31 -OK. Datenübertragung erfolgreich.
09.12. 22:45:31 |------------ Stop SDM630_meter.php -----------------------
09.12. 22:45:31 -Verarbeitung von: '3.user.config.php' Regler: 83
09.12. 22:45:31 |------------ Start JK_bms.php ----------------------------
09.12. 22:45:31 !! -invalid frame! instead of 0x79
09.12. 22:45:31 -00e0
09.12. 22:45:31 |------------ Stop JK_bms.php (0s) ----------------------------
09.12. 22:45:31 -Multi Regler Auslesen [Stop].



Danke Mike

mikep500
Beiträge: 39
Registriert: Do 14. Jul 2022, 06:26
Danksagung erhalten: 1 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag von mikep500 »

Hab jetzt den ganzen Nachmittag rumprobiert A und B getauscht Script noch mal neu.
Keine Ahnung.
So schauts momentan aus.
0.12. 17:35:02 -Multi Regler Auslesen [Start].
10.12. 17:35:02 -Verarbeitung von: '1.user.config.php' Regler: 24
10.12. 17:35:02 |-------------- Start infini_p16.php ------------------------
10.12. 17:35:04 -Fehlermeldung: Batterie discharge low
10.12. 17:35:04 * -Daten zur lokalen InfluxDB [ solarregler1 ] gesendet.
10.12. 17:35:04 -Multi-Regler-Ausgang. 5
10.12. 17:35:09 -OK. Datenübertragung erfolgreich.
10.12. 17:35:09 -WattstundenGesamtHeute: 5851.8
10.12. 17:35:09 |-------------- Stop infini_p16.php -----------------------
10.12. 17:35:09 -Verarbeitung von: '2.user.config.php' Regler: 34
10.12. 17:35:09 + -WR_ID: 01
10.12. 17:35:09 |------------ Start SDM630_meter.php -------------------------
10.12. 17:35:10 -AC Leistung: 431.336 Watt
10.12. 17:35:11 * -Daten zur lokalen InfluxDB [ solarregler2 ] gesendet.
10.12. 17:35:11 -Multi-Regler-Ausgang. 7
10.12. 17:35:18 -OK. Datenübertragung erfolgreich.
10.12. 17:35:18 |------------ Stop SDM630_meter.php -----------------------
10.12. 17:35:18 -Verarbeitung von: '3.user.config.php' Regler: 83
10.12. 17:35:18 |------------ Start JK_bms.php ----------------------------
10.12. 17:35:18 -no answer from USB in 210ms)!
10.12. 17:35:18 !! -Fehler USB Command
10.12. 17:35:18 |------------ Stop JK_bms.php (0s) ----------------------------
10.12. 17:35:18 -Multi Regler Auslesen [Stop].

<?php
/******************************************************************************
// Hier werden die Kunden spezifischen Einstellungen (c) U.Kunz 2016
// vorgenommen, damit keine der Daten bei einem Softwareupdate
// überspielt werden. Diese Datei bitte mit Vorsicht
// ändern. Die Form und die Schreibweise darf in keinen Fällen
// geändert werden. Weitere Hilfe finden Sie im FORUM www.solaranzeige.de
//
// Diese Datei ist hier zu finden: /var/www/html/user.config.php
//
//
******************************************************************************/
//
/******************************************************************************
// REGLER und WECHSELRICHTER REGLER und WECHSELRICHTER REGLER
******************************************************************************/
//
//
// ---------------------------------------------------------------------------
//
$Regler = "34";
//
/******************************************************************************
// Raspberry Gerätenummer Raspberry Gerätenummer Raspberry Gerätenummer
// Falls mehr als ein Gerät pro Raspberry betrieben wird.
// Es ist die Reihenfolge der Geräte und taucht auch in der Nummerierung
// der x.user.config.php Dateien auf
******************************************************************************/
// GeräteID bzw. GeräteNummer Muss gleich mit der x.user.config.php sein.
// Bitte nur bei einer Multi-Regler-Version ändern. [ 1 bis 6 ]
$GeraeteNummer = "2";
//
// Bei einem Micro Wechselrichter von AEconversion oder LiCom Box von Effekta
// und anderen Geräten, die für den Zugang eine Seriennummer benötigen.
// --------------------------------------------------------------------------
// Z.B. Typ INV250-45 oder INV500-60 oder LiCom Box von Effekta
// Steht auf dem Gerät! Ist 10 stellig. Serial-No. 0607600...
// Bitte alle 10 Stellen hier eintragen.
// Bei der AX LiCom Box von Effekta sind es 14 Stellen.
$Seriennummer = "0000000000"; // Regler = "5"
// Wird nur in seltenen Fällen gebraucht.
$Zugang_Kennwort = ""; // wird zur Zeit nicht benutzt
// Falls ein WLAN HF2211 serial Gateway benutzt wird true eingeben
$HF2211 = false;
//
// Nur bei PylonTech BMS US3000A ($Regler = "41" )
// und den neuen US2000 aus dem Jahr 2019 und später
// Anzahl der vorhandenen Batteriepacks
// -------------------------------------------------------------------
$Batteriepacks = "1";// Regler = "41"
//
//
// Ethernet Kabelverbindung: Local Area Network (LAN)
// Alle Geräte, die über das LAN angesprochen und ausgelesen werden,
// oder ein Serial Device Server, wie z.B. der HF2211 oder der Elfin-EW11,
// dazwischen geschaltet haben, bitte hier IP und Port eintragen und
// falls erforderlich die Device ID. (Geräteadresse = WR_Adresse)
// Die Geräte Adresse wird auch manchmal bei RS485 Verbindungen benutzt.
// -------------------------------------------------------------------
// Bitte die Daten aus dem Gerät übernehmen
//
$WR_IP = "0.0.0.0"; // Keine führenden Nullen! 67.xx Ja!, 067.xx Nein!
$WR_Port = "12345";
$WR_Adresse = "1"; // Achtung Adresse als Hexzahl eingeben / Dez 16 = Hex 10
// Maximal "FF" = 256
/*****************************************************************************/
//
//
// Bezeichnung des Objektes. Freie Wahl, maximal 15 Buchstaben.
$Objekt = "";
//
//
/******************************************************************************
// InfluxDB InfluxDB InfluxDB InfluxDB InfluxDB InfluxDB
// ***************************************************************************
// Die Daten können jede Minute oder öfter an eine InfluxDB Datenbank
// übertragen werden. Die Datenbank muss nur über das Netzwerk erreichbar
// sein. Sie kann sich im lokalen Netz, im Intenet oder aber auch auf diesem
// Raspberry befinden. Bitte lesen Sie auch das Dokument
// "Solaranzeige + InfluxDB" welches Sie auf unserem Support Server finden.
******************************************************************************/
// Sollen die Daten in die lokale Influx Datenbank geschrieben werden?
// Für die lokale Datenbank sind keine weiteren Angaben nötig.
// true oder false
$InfluxDB_local = true;
//
// Name der lokalen Datenbank. Bitte nicht ändern, sonst funktionieren die
// Standard Dashboards nicht!
// --- Nur bei Multi-Regler-Version Nur bei Multi-Regler-Version ----
// Bei einer Muti-Regler-Version müssen hier unterschiedliche lokale
// Datenbanknamen eingetragen werden. Mit gleichem Namen müssen die Datenbanken
// in der InfluxDB angelegt werden. Siehe Dokument:
// "Multi-Regler-Version Installation"
$InfluxDBLokal = "solarregler2";
//
// Wie oft pro Minute sollen die Daten ausgelesen und zur InfluxDB
// übertragen werden?
// Gültige Werte sind 1 bis 6 (6 = alle 10 Sekunden)
// Bei einer zusätzlichen entfernten Datenbank kann das zu erheblichen
// Traffic führen! Dieses gilt nur für die Single-Geräte-Version!
// Wie es bei der Multi-Regler-Version funktioniert bitte in dem
// entsprechenden Dokument nachlesen.
// Default ist 1 (Ein mal pro Minute)
$Wiederholungen = 31;
//
/****************************************************************************/
// ENTFERNTE INFLUX DATENBANK:
// ---------------------------
// Ist eine entfernte InfluxDB vorhanden und sollen dorthin auch die Daten
// übertragen werden?
// true oder false
$InfluxDB_remote = false;
//
// Port an den die Daten geschickt werden. Normal ist Port 8086
$InfluxPort = 8086;
//
// Name der entfernten Datenbank eintragen
// Beispiel: "solaranzeige" oder "MeineDatenbank"
$InfluxDBName = "";
//
// Adresse der Datenbank
// Entweder die IP Adresse "xxx.xxx.xxx.xxx" oder den Hostnamen oder "localhost"
// eintragen.
// Beispiel: "db.solaranzeige.de" oder "34.101.3.20"
$InfluxAdresse = "";
//
// Wenn man mit UserID und Kennwort die Daten übertragen möchte, sollte man
// auf jeden Fall auch die SSL Verschlüsselung einschalten. Dazu muss die
// Influx Datenbank aber erst auf https eingerichtet werden.
$InfluxSSL = false;
//
// Wenn die entfernte Datenbank mit UserID und Kennwort geschützt ist.
// Wenn nicht, bitte leer lassen.
$InfluxUser = "";
$InfluxPassword ="";
//
// Sollen die Daten nur bei Tageslicht an eine remote Datenbank gesendet werden?
// Das reduziert den Traffic bei teuren Leitungen. Das betrifft nur die Remote
// Datenbank falls konfiguriert.
// true / false ( false = die Daten werden rund um die Uhr gesendet. )
$InfluxDaylight = false;
//
//
//
/*******************************************************************************
// HOMEMATIC ANBINDUNG HOMEMATIC ANBINDUNG HOMEMATIC ANBINDUNG
// Teil 1 Teil 1 Teil 1 Teil 1 Teil 1 Teil 1 Teil 1 Teil 1
// ****************************************************************************
// Anbindung an eine vorhandene HomeMatic Zentrale
// Für die genaue Einrichtung bitte das PDF Dokument "Homematic_Anschluss.pdf" lesen.
// Es befindet sich auf unserem Support Server im Bereich "Verschiedene PDF Dokumente"
// Kapitel 1 bis 7 Kapitel 1 bis 7 Kapitel 1 bis 7
********************************************************************************/
// Sollen die Daten an eine vorhandene Homematic Zentrale gesendet werden?
// Diese Werte kann dann die Zentrale dann verarbeiten.
// Folgende Werte werden übertragen:
// * Ladestatus 0 = Keine Ladung, 2 = Fehler, 3 = Ladung (bulk); 4 = Nachladung (absorbtion),
// 5 = Erhaltungsladung (float)
// * Ladestatus als Textzeile (Keine_Ladung, Normale_Ladung, Nachladung, Erhaltungsladung, Fehler)
// * Batteriespannung in Volt
// * Erzeugte Leistung am Tage in kWh
// * Aktuell erzeugte Solar-Leistung
// * Batteriestatus in % (Wie voll ist die Batterie?) Nicht bei allen Geräten!
//
// true / false
$Homematic = false;
//
// Welche IP Adresse hat Ihre Homematic Zentrale? Sie muss sich im selben
// Netzwerk wie der Raspberry Pi befinden. Beispiel: 192.168.33.200
$Homematic_IP = "xxx.xxx.xxx.xxx";
//
// Hier die Variablen eintragen, die zur HomeMatic Zentrale übermittelt werden
// sollen. Siehe Dokument "HomeMatic_Anbindung.pdf"
// Beispiel: "BatterieLadestatus,BatteriestatusText,Batteriespannung,Solarleistung,SolarleistungTag,Solarspannung";
$HomeMaticVar = "";
//
// Den Status einzelner Geräte aus der HomeMatic Zentrale auslesen und in die
// Influx Datenbank schreiben, damit man den Status im Dashboard anzeigen kann.
// Nähere Einzelheiten stehen im Dokument "HomeMatic Anbindung"
$HM_auslesen = false;
//
// Für jedes Gerät, dessen Status ausgelesen werden soll, müssen 4 Variablen
// angegeben werden.
// $HM[0]["Variable"] = Kann man nennen wie man will, steht dann so in der Influx Datenbank.
// $HM[0]["Interface"] = Steht in der HomeMatic, bitte übernehmen
// $HM[0]["Seriennummer"] = Steht auch in der HomeMatic
// $HM[0]["Datenpunkt"] = STATE, POWER, ACTUAL_TEMPERATURE usw. Siehe HomeMatic
//
// Für jede Systemvariable müssen 2 Variablen angegeben werden:
// $HM[0]["Variable"] = Kann man nennen wie man will. Steht dann so in der Influx Datenbank
// $HM[0]["Systemvariable"] = Name der Systemvariable in der HomeMatic
// -----------------------------------------------------------------------
//
// Beispiele: ( Die zwei Schrägstich bei Aktivierung bitte entfernen. )
// $HM[0]["Variable"] = "Wasserboiler";
// $HM[0]["Interface"] = "BidCos-RF";
// $HM[0]["Seriennummer"] = "OEQ1150699:1";
// $HM[0]["Datenpunkt"] = "STATE";
// $HM[1]["Variable"] = "Heizluefter";
// $HM[1]["Interface"] = "BidCos-RF";
// $HM[1]["Seriennummer"] = "OEQ1399311:1";
// $HM[1]["Datenpunkt"] = "STATE";
// $HM[2]["Variable"] = "...";
// $HM[2]["Interface"] = "...";
// $HM[2]["Seriennummer"] = "...";
// $HM[2]["Datenpunkt"] = "POWER";
// $HM[3]["Variable"] = "Anwesenheit";
// $HM[3]["Systemvariable"] = "Anwesenheit";
// usw.
//
//
//
/*******************************************************************************
// HOMEMATIC ANBINDUNG HOMEMATIC ANBINDUNG HOMEMATIC ANBINDUNG
// Teil 2 Teil 2 Teil 2 Teil 2 Teil 2 Teil 2 Teil 2 Teil 2
// ****************************************************************************
// Ab Kapitel 7 AB Kapitel 7 AB Kapitel 7
// Möchte man die variablen daten eines an die Homematic angeschlossenen
// Gerätes auslesen, wie z.B. ein Heizkörperventil, dann müssen hier die Daten
// der angeschlossenen Geräte angegeben werden. Nähere Einzelheiten bitte im
// Dokument Homematic_Anbindung.pdf ab Kapitel 7 lesen.
//
// Beispiel:
// HM_Geraet 1
// $HM_Geraetetyp[1] = "HM-CC-RT-DN"; // Heizungsthermostat
// $HM_Seriennummer[1] = "OEQ2419985"; // Wohnzimmer
//
// HM_Geraet 2
// $HM_Geraetetyp[2] = "HmIP-eTRV-B"; // Heizungsthermostat
// $HM_Seriennummer[2] = "00201D89A8A446";// Badezimmer
//
// HM_Geraet 3
// $HM_Geraetetyp[3] = "HmIP-STHD"; // Wandthermostat
// $HM_Seriennummer[3] = "000E9BE9967967";// Badezimmer
//
// HM_Geraet 4
// $HM_Geraetetyp[4] = "HM-CC-RT-DN"; // Heizungsthermostat
// $HM_Seriennummer[4] = "OEQ2421488"; // Küche
//
*******************************************************************************/
//
// HM_Geraet 1
$HM_Geraetetyp[1] = ""; // Typenbezeichnung
$HM_Seriennummer[1] = ""; // Seriennummer
//
//
/******************************************************************************
// MQTT Protokoll MQTT Protokoll MQTT Protokoll MQTT Protokoll
// Senden und / oder Empfangen
******************************************************************************/
// Sollen alle ausgelesenen Daten mit dem MQTT Protokoll an einen
// MQTT-Broker gesendet werden oder MQTT Daten empfangen werden?
// Bitte das Solaranzeige-MQTT PDF Dokument lesen
$MQTT = false;
//
//
/******************************************************************************/
// MQTT Daten senden MQTT Daten senden MQTT Daten senden MQTT Daten
// Wenn Daten mit dem MQTT Protokoll versendet werden sollen.
//
// Wo ist der MQTT-Broker zu finden?
// Entweder "localhost", eine Domain oder IP Adresse "xxx.xxx.xxx.xxx" eintragen.
// broker.hivemq.com ist ein Test Broker Siehe http://www.mqtt-dashboard.com/
$MQTTBroker = "localhost";
//
// Benutzter Port des Brokers. Normal ist 1883 mit SSL 8883
$MQTTPort = 1883;
//
// Falls der Broker gesichert ist. Sonst bitte leer lassen.
$MQTTBenutzer = "";
$MQTTKennwort = "";
//
// Wenn man die Daten mit SSL Verschlüsselung versenden möchte.
// Wenn hier true steht, muss im Verzeichnis "/var/www/html/" die "cerfile"
// 'ca.crt' vorhanden sein. Nähere Einzelheiten über diese Datei findet
// man im Internet in der Mosquitto Dokumentation.
$MQTTSSL = false;
//
// Timeout der Ãœbertragung zum Broker. Normal = 10 bis 60 Sekunden
$MQTTKeepAlive = 60;
//
// Topic Name oder Nummer des Gerätes solaranzeige/1
// oder solaranzeige/box1 (solaranzeige ist fest vorgegeben.)
// Man kann das Gerät nennen wie man will, nur jedes Gerät, welches Daten
// senden soll unterschiedlich. Entwerder 1 bis 6 oder Namen Ihrer Wahl vergeben.
$MQTTGeraet = "box1";
//
// Welche Daten sollen als MQTT Message übertragen werden? Wenn hier nichts
// aufgeführt ist, werden alle ausgelesenen Daten übertragen.
// Bitte darauf achten, dass keine Leerstellen zwischen den Variablen sind.
// Die einzelnen Variablen müssen mit einem Komma getrennt und klein geschrieben
// werden. Zusätzlich müssen sie den Eintrag vom $MQTTGeraet und ein Schrägstrich
// enthalten. Das ist nötig, da mehrere Geräte an dem Raspberry hängen können.
// Beispiel mit obigen MQTTGeraet:
// $MQTTAuswahl = "1/ladestatus,1/solarspannung,1/solarstrom"
// Werden hier Variablen eingetragen, dann werden auch nur diese Topics
// übertragen.
$MQTTAuswahl = "";
//
//
/******************************************************************************
// MQTT Empfang MQTT Empfang MQTT Empfang MQTT Empfang
// Subscribing Subscribing Subscribing Subscribing Subscribing
******************************************************************************/
// Welche Daten sollen empfangen werden. Hier können die Topics, die
// empfangen werden sollen aufgeführt werden. Dabei gibt es 2 Möglichkeiten
// Entweder ein einzelner Wert oder eine Reihe von Werten.
// Wichtig! Das basis Topics ist immer solaranzeige. Dann muss entweder befehl
// oder anzeige kommen, dann die Gerätenummer und dann die Bezeichnung des
// Wertes. Die Gerätenummer ist immer 1, außer bei Multi-Regler-Versionen.
// Beispiel: solaranzeige/anzeige/1/PV-Spannung
// In diesem Beispiel wird der Wert der PV-Spannung in die Influx Datenbank
// geschrieben unter dem Measurement MQTT
// oder
// Beispiel: solaranzeige/befehl/1/POP mit Wert 00
// Der Befehl POP00 wird zum Wechselrichter geschickt. Er wird jedoch nur
// ausgeführt wenn es sich um einen erlaubten Befehl handelt, der in der
// Datei "befehle.ini.php" enthalten ist.
//
// Beispiele:
// $MQTTTopic[1] = "solaranzeige/befehl/1/POP";
// $MQTTTopic[2] = "solaranzeige/befehl/1/PCP";
// $MQTTTopic[3] = "solaranzeige/anzeige/1/Wasserboiler";
//
// Oder auch
// $MQTTTopic[1] = "solaranzeige/befehl/1/#";
// Es können so viele Topics wie benötigt aufgeführt werden. Sie müssen nur
// durch nummeriert werden [1] bis [n]
// Bei Multi-Regler-Versionen muss zusätzlich noch die Gerätenummer angegeben
// werden. Weitere Informationen finden Sie auf dem Support Forum.
// Achtung! Damit der Empfang auch funktioniert muss $MQTT = true;
// etwas weiter oben stehen!
$MQTTTopic[1] = "solaranzeige/befehl/1/#";
//
//
/******************************************************************************
// SONOFF Geräte mit Tasmota Firmware SONOFF Geräte mit Tasmota Firmware
// POW R2 / TH10 R2 oder TH16 R2 oder GOSUND SP1xx
******************************************************************************/
// Bitte den Topic-Namen, der in der TASMOTA Firmware angegeben ist, hier
// eintragen. Unbedingt auf Groß- und Keinschreibung achten! Der Name kann
// frei gewählt werden, er muss nur im Gerät und hier gleich sein. Werden
// mehrere Sonoff Geräte mit der Solaranzeige betrieben, muss jedes einzelne
// Gerät einen anderen Topic-Namen benutzen!
$Topic = "sonoff";
//
//
/******************************************************************************
// WETTERDATEN WETTERDATEN WETTERDATEN WETTERDATEN WETTERDATEN
******************************************************************************/
// Die Wetterdaten werden vom Server openweathermap.org geholt, da von dort
// die Informationen kostenlos sind.
// Man muss sich jedoch auf dem Server anmelden, um eine APP ID zu bekommen.
//
// Bei einer Multi-Regler-Version nur in der 1.user.config.php aktivieren!
// Sollen die aktuellen Wetterdaten geholt und abgespeichert werden?
// Dadurch wird mehr Traffic generiert. Die Daten stehen dann in der Influx
// Datenbank "aktuellesWetter" unter dem Measurement "Wetter" zur Verfügung.
// Sie werden alle 30 Minuten aktualisiert
// true oder false
$Wetterdaten = false;
//
// Die Application ID bekommt man, wenn man sich auf dem Server
// www.openweathermap.org registriert. Sie hat 32 Stellen und muss hier
// eingetragen werden. Beispiel: "57b78415a343540e3a4e4f72751c90f9"
$APPID = "";
//
// Der Standort wird mit einer StandortID angegeben. Wie die StandortID
// ermittelt wird, bitte im Support Forum nachlesen. Man kann eine Liste
// aller Standort ID's Weltweit hier herunterladen:
// http://bulk.openweathermap.org/sample/city.list.json.gz
// Default = "2925533" Frankfurt am Main oder die ID Ihres Standortes.
$StandortID = "2925533";
//
//
/******************************************************************************
// PROGNOSEDATEN PROGNOSEDATEN PROGNOSEDATEN PROGNOSEDATEN
******************************************************************************/
// Die Wetterprognosedaten werden vom Server www.solarprognose.de geholt.
// Teilweise sind die Daten dort kostenlos. [ www.solarprognose.de ]
// Man muss sich jedoch auf dem Server anmelden, um eine Prognose ID zu bekommen.
//
// Sollen die aktuellen Prognosedaten geholt und abgespeichert werden?
// Die Daten stehen dann in der Influx Datenbank "solaranzeige" unter dem
// Measurement "Wetterprognose" zur Verfügung. Sie werden pro Stunde einmal
// aktualisiert.
// Möchte man seinen eigenen Prognose Script nutzen, dann bitte hier User eingeben.
// In diesem Fall wird alle 30 Minuten der Script "prognose.php" aufgerufen.
// Dort müssen die Funktionen hinterlegt sein.
// keine, API, User, beide
$Prognosedaten = "keine"; // "keine" , "API" , "User" , "beide"
//
// Wenn API eingetragen wird, dann folgende 3 Variablen füllen:
$AccessToken = ""; // Bekommt man bei www.solarprognose.de
$PrognoseItem = "inverter"; // plant, inverter
$PrognoseID = "0"; // Anlagen ID oder Wechselrichter ID
$Algorithmus = ""; // kann leer bleiben oder
// // mosmix | own-v1 | clearsky
//
/******************************************************************************
// MESSENGER MELDUNGEN MESSENGER MELDUNGEN MESSENGER
******************************************************************************/
// Es können Fehlermeldungen, Ereignisse oder Statistiken mit einem
// Messenger übertragen werden. Dazu bitte Messenger = true eintragen
// Genaue Informationen stehen im Dokument "Messenger_Nachrichten.pdf"
//
// true / false
$Messenger = false;
//
// Welcher Messengerdienst soll benutzt werden?
// Pushover / Signal / WhatsApp
$Messengerdienst[1] = "Pushover"; // Pushover, Signal oder WhatsApp
// Die Solaranzeige müssen Sie bei Pushover / Signal oder WhatsApp
// registrieren und einen API Token holen.
// Wie das geht, steht in dem Dokument "Messenger_Nachrichten" auf dem
// Support Server
// Pushover Beispiel $API_Token = "amk4be851bcegnirhu1b71u6ou7uoh";
// Signal Beispiel $API_Token = "999999";
$API_Token[1] = "";
//
// Der User_Key ist die Messeger Empfänger Adresse. Bei Pushover können bis zu
// 9 Empfänger angegeben werden. $User_Key[1] bis $User_Key[9]
// Am Ende jeder Zeile das Semikolon nicht vergessen!
// Pushover Beispiel: $User_Key[1] = "ub6c3wmw4a3idwk9b5ajgfs5a7aypt";
// Siehe Dokument "Nachrichten_senden.pdf"
// Bei WhatsApp und Signal kann nur ein Empfänger angegeben werden, da der Token
// zur Rufnummer passen muss.
// Signal Beispiel: $User_Key[1] = "+491769000000";
$User_Key[1] = "";
//
// ------------------------------------------------------------------------
// Und jetzt eventuell für weitere Personen:
//
// $Messengerdienst[2] = ""; // Pushover, WhatsApp oder Signal
// $API_Token[2] = "";
// $User_Key[2] = "";
//
// $Messengerdienst[3] = ""; / Pushover, WhatsApp oder Signal
// $API_Token[3] = "";
// $User_Key[3] = "";
//
//*****************************************************************************
// Sonnen Auf und Untergang:
// Standort für Frankfurt. Wer es etwas genauer haben möchte, hier den eigenen
// Standort eintragen. Bitte als Dezimalzahl wie hier vorgegeben!
$Breitengrad = 50.1143999;
$Laengengrad = 8.6585178;
//
//
/******************************************************************************
// aWATTar Börsenpreise aWATTar Börsenpreise aWATTar Börsenpreise.
//
// Sollen die aktuellen Strom Börsenpreise in die oben angegebene locale.
// Datenbank in das Measurement "awattarPreise" geschrieben werden?
******************************************************************************/
//
$aWATTar = false;
//
$Aufschlag = "0"; // Z.B. "20,6" Preis des Aufschlages in Cent
//
$aWATTarLand = "DE"; // "DE" = Deutschland "AT" = Österreich
/******************************************************************************
// ACHTUNG! ACHTUNG! ACHTUNG! ACHTUNG! ACHTUNG! ACHTUNG! ACHTUNG!
//
// Alles ab hier nicht ändern! Nur auf Anweisung. Änderungen hier können
// das System zum Absturz bringen.
/******************************************************************************
// USB Device USB Device USB Device USB Device USB Device
******************************************************************************/
//
// USB Device, die automatisch erkannt wurde... bitte nicht ändern
// Wird nicht bei der Multi-Regler-Version benötigt.
//
$USBRegler = "";
//
// Nur wenn die automatischer Erkennung nicht funktioniert hat, bitte manuell
// eintragen. Im Normalfall wird das nicht benötigt. So lassen wie es ist.
// --- Nur bei Multi-Regler-Version Nur bei Multi-Regler-Version ----
// Bei einer Multi-Regler-Version muss hier der Devicename manuell
// eingetragen werden.
//
$USBDevice = "/dev/ttyUSB0";

//
// Wird nur in seltenen Fällen gebraucht.
// $SerielleGeschwindigkeit = "19200";
/*****************************************************************************/
//
/******************************************************************************
// Raspberry Pi Hardware Raspberry Pi Hardware Raspberry Pi Hardware
******************************************************************************/
// Bitte nicht ändern, wird automatisch ermittelt.
//
$Platine = "Raspberry Pi 4 Model B Rev 1.5";
//
/******************************************************************************
// PHP Error Reporting PHP Error Reporting PHP Error Reporting
// Bei ungeklärten Problemen hier einschalten. Normal = ausgeschaltet
******************************************************************************/
// error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE | E_STRICT);
//
// Ist für die neue Datenbankstruktur des Alpha ESS Wechselrichters
// Mit 0 kann die alte Struktur eingeschaltet werden.
$Alpha_ESS = 0;
// ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE
?>









<?php
/******************************************************************************

$Regler = "83";
//
/******************************************************************************
// Raspberry Gerätenummer Raspberry Gerätenummer Raspberry Gerätenummer
// Falls mehr als ein Gerät pro Raspberry betrieben wird.
// Es ist die Reihenfolge der Geräte und taucht auch in der Nummerierung
// der x.user.config.php Dateien auf
******************************************************************************/
// GeräteID bzw. GeräteNummer Muss gleich mit der x.user.config.php sein.
// Bitte nur bei einer Multi-Regler-Version ändern. [ 1 bis 6 ]
$GeraeteNummer = "3";
//
// Bei einem Micro Wechselrichter von AEconversion oder LiCom Box von Effekta
// und anderen Geräten, die für den Zugang eine Seriennummer benötigen.
// --------------------------------------------------------------------------
// Z.B. Typ INV250-45 oder INV500-60 oder LiCom Box von Effekta
// Steht auf dem Gerät! Ist 10 stellig. Serial-No. 0607600...
// Bitte alle 10 Stellen hier eintragen.
// Bei der AX LiCom Box von Effekta sind es 14 Stellen.
$Seriennummer = "0000000000"; // Regler = "5"
// Wird nur in seltenen Fällen gebraucht.
$Zugang_Kennwort = ""; // wird zur Zeit nicht benutzt
// Falls ein WLAN HF2211 serial Gateway benutzt wird true eingeben
$HF2211 = false;
//
// Nur bei PylonTech BMS US3000A ($Regler = "41" )
// und den neuen US2000 aus dem Jahr 2019 und später
// Anzahl der vorhandenen Batteriepacks
// -------------------------------------------------------------------
$Batteriepacks = "1";// Regler = "41"
//
//
// Ethernet Kabelverbindung: Local Area Network (LAN)
// Alle Geräte, die über das LAN angesprochen und ausgelesen werden,
// oder ein Serial Device Server, wie z.B. der HF2211 oder der Elfin-EW11,
// dazwischen geschaltet haben, bitte hier IP und Port eintragen und
// falls erforderlich die Device ID. (Geräteadresse = WR_Adresse)
// Die Geräte Adresse wird auch manchmal bei RS485 Verbindungen benutzt.
// -------------------------------------------------------------------
// Bitte die Daten aus dem Gerät übernehmen
//
$WR_IP = "0.0.0.0"; // Keine führenden Nullen! 67.xx Ja!, 067.xx Nein!
$WR_Port = "12345";
$WR_Adresse = "1"; // Achtung Adresse als Hexzahl eingeben / Dez 16 = Hex 10
// Maximal "FF" = 256
/*****************************************************************************/
//
//
// Bezeichnung des Objektes. Freie Wahl, maximal 15 Buchstaben.
$Objekt = "solarregler3";
//
//
/******************************************************************************
// InfluxDB InfluxDB InfluxDB InfluxDB InfluxDB InfluxDB
// ***************************************************************************
// Die Daten können jede Minute oder öfter an eine InfluxDB Datenbank
// übertragen werden. Die Datenbank muss nur über das Netzwerk erreichbar
// sein. Sie kann sich im lokalen Netz, im Intenet oder aber auch auf diesem
// Raspberry befinden. Bitte lesen Sie auch das Dokument
// "Solaranzeige + InfluxDB" welches Sie auf unserem Support Server finden.
******************************************************************************/
// Sollen die Daten in die lokale Influx Datenbank geschrieben werden?
// Für die lokale Datenbank sind keine weiteren Angaben nötig.
// true oder false
$InfluxDB_local = true;
//
// Name der lokalen Datenbank. Bitte nicht ändern, sonst funktionieren die
// Standard Dashboards nicht!
// --- Nur bei Multi-Regler-Version Nur bei Multi-Regler-Version ----
// Bei einer Muti-Regler-Version müssen hier unterschiedliche lokale
// Datenbanknamen eingetragen werden. Mit gleichem Namen müssen die Datenbanken
// in der InfluxDB angelegt werden. Siehe Dokument:
// "Multi-Regler-Version Installation"
$InfluxDBLokal = "solarregler3";
//
// Wie oft pro Minute sollen die Daten ausgelesen und zur InfluxDB
// übertragen werden?
// Gültige Werte sind 1 bis 6 (6 = alle 10 Sekunden)
// Bei einer zusätzlichen entfernten Datenbank kann das zu erheblichen
// Traffic führen! Dieses gilt nur für die Single-Geräte-Version!
// Wie es bei der Multi-Regler-Version funktioniert bitte in dem
// entsprechenden Dokument nachlesen.
// Default ist 1 (Ein mal pro Minute)
$Wiederholungen = 31;
//
/****************************************************************************/
// ENTFERNTE INFLUX DATENBANK:
// ---------------------------
// Ist eine entfernte InfluxDB vorhanden und sollen dorthin auch die Daten
// übertragen werden?
// true oder false
$InfluxDB_remote = false;
//
// Port an den die Daten geschickt werden. Normal ist Port 8086
$InfluxPort = 8086;
//
// Name der entfernten Datenbank eintragen
// Beispiel: "solaranzeige" oder "MeineDatenbank"
$InfluxDBName = "";
//
// Adresse der Datenbank
// Entweder die IP Adresse "xxx.xxx.xxx.xxx" oder den Hostnamen oder "localhost"
// eintragen.
// Beispiel: "db.solaranzeige.de" oder "34.101.3.20"
$InfluxAdresse = "";
//
// Wenn man mit UserID und Kennwort die Daten übertragen möchte, sollte man
// auf jeden Fall auch die SSL Verschlüsselung einschalten. Dazu muss die
// Influx Datenbank aber erst auf https eingerichtet werden.
$InfluxSSL = false;
//
// Wenn die entfernte Datenbank mit UserID und Kennwort geschützt ist.
// Wenn nicht, bitte leer lassen.
$InfluxUser = "";
$InfluxPassword ="";
//
// Sollen die Daten nur bei Tageslicht an eine remote Datenbank gesendet werden?
// Das reduziert den Traffic bei teuren Leitungen. Das betrifft nur die Remote
// Datenbank falls konfiguriert.
// true / false ( false = die Daten werden rund um die Uhr gesendet. )
$InfluxDaylight = false;
//
//
//
/*******************************************************************************
// HOMEMATIC ANBINDUNG HOMEMATIC ANBINDUNG HOMEMATIC ANBINDUNG
// Teil 1 Teil 1 Teil 1 Teil 1 Teil 1 Teil 1 Teil 1 Teil 1
// ****************************************************************************
// Anbindung an eine vorhandene HomeMatic Zentrale
// Für die genaue Einrichtung bitte das PDF Dokument "Homematic_Anschluss.pdf" lesen.
// Es befindet sich auf unserem Support Server im Bereich "Verschiedene PDF Dokumente"
// Kapitel 1 bis 7 Kapitel 1 bis 7 Kapitel 1 bis 7
********************************************************************************/
// Sollen die Daten an eine vorhandene Homematic Zentrale gesendet werden?
// Diese Werte kann dann die Zentrale dann verarbeiten.
// Folgende Werte werden übertragen:
// * Ladestatus 0 = Keine Ladung, 2 = Fehler, 3 = Ladung (bulk); 4 = Nachladung (absorbtion),
// 5 = Erhaltungsladung (float)
// * Ladestatus als Textzeile (Keine_Ladung, Normale_Ladung, Nachladung, Erhaltungsladung, Fehler)
// * Batteriespannung in Volt
// * Erzeugte Leistung am Tage in kWh
// * Aktuell erzeugte Solar-Leistung
// * Batteriestatus in % (Wie voll ist die Batterie?) Nicht bei allen Geräten!
//
// true / false
$Homematic = false;
//
// Welche IP Adresse hat Ihre Homematic Zentrale? Sie muss sich im selben
// Netzwerk wie der Raspberry Pi befinden. Beispiel: 192.168.33.200
$Homematic_IP = "xxx.xxx.xxx.xxx";
//
// Hier die Variablen eintragen, die zur HomeMatic Zentrale übermittelt werden
// sollen. Siehe Dokument "HomeMatic_Anbindung.pdf"
// Beispiel: "BatterieLadestatus,BatteriestatusText,Batteriespannung,Solarleistung,SolarleistungTag,Solarspannung";
$HomeMaticVar = "";
//
// Den Status einzelner Geräte aus der HomeMatic Zentrale auslesen und in die
// Influx Datenbank schreiben, damit man den Status im Dashboard anzeigen kann.
// Nähere Einzelheiten stehen im Dokument "HomeMatic Anbindung"
$HM_auslesen = false;
//
// Für jedes Gerät, dessen Status ausgelesen werden soll, müssen 4 Variablen
// angegeben werden.
// $HM[0]["Variable"] = Kann man nennen wie man will, steht dann so in der Influx Datenbank.
// $HM[0]["Interface"] = Steht in der HomeMatic, bitte übernehmen
// $HM[0]["Seriennummer"] = Steht auch in der HomeMatic
// $HM[0]["Datenpunkt"] = STATE, POWER, ACTUAL_TEMPERATURE usw. Siehe HomeMatic
//
// Für jede Systemvariable müssen 2 Variablen angegeben werden:
// $HM[0]["Variable"] = Kann man nennen wie man will. Steht dann so in der Influx Datenbank
// $HM[0]["Systemvariable"] = Name der Systemvariable in der HomeMatic
// -----------------------------------------------------------------------
//
// Beispiele: ( Die zwei Schrägstich bei Aktivierung bitte entfernen. )
// $HM[0]["Variable"] = "Wasserboiler";
// $HM[0]["Interface"] = "BidCos-RF";
// $HM[0]["Seriennummer"] = "OEQ1150699:1";
// $HM[0]["Datenpunkt"] = "STATE";
// $HM[1]["Variable"] = "Heizluefter";
// $HM[1]["Interface"] = "BidCos-RF";
// $HM[1]["Seriennummer"] = "OEQ1399311:1";
// $HM[1]["Datenpunkt"] = "STATE";
// $HM[2]["Variable"] = "...";
// $HM[2]["Interface"] = "...";
// $HM[2]["Seriennummer"] = "...";
// $HM[2]["Datenpunkt"] = "POWER";
// $HM[3]["Variable"] = "Anwesenheit";
// $HM[3]["Systemvariable"] = "Anwesenheit";
// usw.
//
//
//
/*******************************************************************************
// HOMEMATIC ANBINDUNG HOMEMATIC ANBINDUNG HOMEMATIC ANBINDUNG
// Teil 2 Teil 2 Teil 2 Teil 2 Teil 2 Teil 2 Teil 2 Teil 2
// ****************************************************************************
// Ab Kapitel 7 AB Kapitel 7 AB Kapitel 7
// Möchte man die variablen daten eines an die Homematic angeschlossenen
// Gerätes auslesen, wie z.B. ein Heizkörperventil, dann müssen hier die Daten
// der angeschlossenen Geräte angegeben werden. Nähere Einzelheiten bitte im
// Dokument Homematic_Anbindung.pdf ab Kapitel 7 lesen.
//
// Beispiel:
// HM_Geraet 1
// $HM_Geraetetyp[1] = "HM-CC-RT-DN"; // Heizungsthermostat
// $HM_Seriennummer[1] = "OEQ2419985"; // Wohnzimmer
//
// HM_Geraet 2
// $HM_Geraetetyp[2] = "HmIP-eTRV-B"; // Heizungsthermostat
// $HM_Seriennummer[2] = "00201D89A8A446";// Badezimmer
//
// HM_Geraet 3
// $HM_Geraetetyp[3] = "HmIP-STHD"; // Wandthermostat
// $HM_Seriennummer[3] = "000E9BE9967967";// Badezimmer
//
// HM_Geraet 4
// $HM_Geraetetyp[4] = "HM-CC-RT-DN"; // Heizungsthermostat
// $HM_Seriennummer[4] = "OEQ2421488"; // Küche
//
*******************************************************************************/
//
// HM_Geraet 1
$HM_Geraetetyp[1] = ""; // Typenbezeichnung
$HM_Seriennummer[1] = ""; // Seriennummer
//
//
/******************************************************************************
// MQTT Protokoll MQTT Protokoll MQTT Protokoll MQTT Protokoll
// Senden und / oder Empfangen
******************************************************************************/
// Sollen alle ausgelesenen Daten mit dem MQTT Protokoll an einen
// MQTT-Broker gesendet werden oder MQTT Daten empfangen werden?
// Bitte das Solaranzeige-MQTT PDF Dokument lesen
$MQTT = false;
//
//
/******************************************************************************/
// MQTT Daten senden MQTT Daten senden MQTT Daten senden MQTT Daten
// Wenn Daten mit dem MQTT Protokoll versendet werden sollen.
//
// Wo ist der MQTT-Broker zu finden?
// Entweder "localhost", eine Domain oder IP Adresse "xxx.xxx.xxx.xxx" eintragen.
// broker.hivemq.com ist ein Test Broker Siehe http://www.mqtt-dashboard.com/
$MQTTBroker = "localhost";
//
// Benutzter Port des Brokers. Normal ist 1883 mit SSL 8883
$MQTTPort = 1883;
//
// Falls der Broker gesichert ist. Sonst bitte leer lassen.
$MQTTBenutzer = "";
$MQTTKennwort = "";
//
// Wenn man die Daten mit SSL Verschlüsselung versenden möchte.
// Wenn hier true steht, muss im Verzeichnis "/var/www/html/" die "cerfile"
// 'ca.crt' vorhanden sein. Nähere Einzelheiten über diese Datei findet
// man im Internet in der Mosquitto Dokumentation.
$MQTTSSL = false;
//
// Timeout der Ãœbertragung zum Broker. Normal = 10 bis 60 Sekunden
$MQTTKeepAlive = 60;
//
// Topic Name oder Nummer des Gerätes solaranzeige/1
// oder solaranzeige/box1 (solaranzeige ist fest vorgegeben.)
// Man kann das Gerät nennen wie man will, nur jedes Gerät, welches Daten
// senden soll unterschiedlich. Entwerder 1 bis 6 oder Namen Ihrer Wahl vergeben.
$MQTTGeraet = "box1";
//
// Welche Daten sollen als MQTT Message übertragen werden? Wenn hier nichts
// aufgeführt ist, werden alle ausgelesenen Daten übertragen.
// Bitte darauf achten, dass keine Leerstellen zwischen den Variablen sind.
// Die einzelnen Variablen müssen mit einem Komma getrennt und klein geschrieben
// werden. Zusätzlich müssen sie den Eintrag vom $MQTTGeraet und ein Schrägstrich
// enthalten. Das ist nötig, da mehrere Geräte an dem Raspberry hängen können.
// Beispiel mit obigen MQTTGeraet:
// $MQTTAuswahl = "1/ladestatus,1/solarspannung,1/solarstrom"
// Werden hier Variablen eingetragen, dann werden auch nur diese Topics
// übertragen.
$MQTTAuswahl = "";
//
//
/******************************************************************************
// MQTT Empfang MQTT Empfang MQTT Empfang MQTT Empfang
// Subscribing Subscribing Subscribing Subscribing Subscribing
******************************************************************************/
// Welche Daten sollen empfangen werden. Hier können die Topics, die
// empfangen werden sollen aufgeführt werden. Dabei gibt es 2 Möglichkeiten
// Entweder ein einzelner Wert oder eine Reihe von Werten.
// Wichtig! Das basis Topics ist immer solaranzeige. Dann muss entweder befehl
// oder anzeige kommen, dann die Gerätenummer und dann die Bezeichnung des
// Wertes. Die Gerätenummer ist immer 1, außer bei Multi-Regler-Versionen.
// Beispiel: solaranzeige/anzeige/1/PV-Spannung
// In diesem Beispiel wird der Wert der PV-Spannung in die Influx Datenbank
// geschrieben unter dem Measurement MQTT
// oder
// Beispiel: solaranzeige/befehl/1/POP mit Wert 00
// Der Befehl POP00 wird zum Wechselrichter geschickt. Er wird jedoch nur
// ausgeführt wenn es sich um einen erlaubten Befehl handelt, der in der
// Datei "befehle.ini.php" enthalten ist.
//
// Beispiele:
// $MQTTTopic[1] = "solaranzeige/befehl/1/POP";
// $MQTTTopic[2] = "solaranzeige/befehl/1/PCP";
// $MQTTTopic[3] = "solaranzeige/anzeige/1/Wasserboiler";
//
// Oder auch
// $MQTTTopic[1] = "solaranzeige/befehl/1/#";
// Es können so viele Topics wie benötigt aufgeführt werden. Sie müssen nur
// durch nummeriert werden [1] bis [n]
// Bei Multi-Regler-Versionen muss zusätzlich noch die Gerätenummer angegeben
// werden. Weitere Informationen finden Sie auf dem Support Forum.
// Achtung! Damit der Empfang auch funktioniert muss $MQTT = true;
// etwas weiter oben stehen!
$MQTTTopic[1] = "solaranzeige/befehl/1/#";
//
//
/******************************************************************************
// SONOFF Geräte mit Tasmota Firmware SONOFF Geräte mit Tasmota Firmware
// POW R2 / TH10 R2 oder TH16 R2 oder GOSUND SP1xx
******************************************************************************/
// Bitte den Topic-Namen, der in der TASMOTA Firmware angegeben ist, hier
// eintragen. Unbedingt auf Groß- und Keinschreibung achten! Der Name kann
// frei gewählt werden, er muss nur im Gerät und hier gleich sein. Werden
// mehrere Sonoff Geräte mit der Solaranzeige betrieben, muss jedes einzelne
// Gerät einen anderen Topic-Namen benutzen!
$Topic = "sonoff";
//
//
/******************************************************************************
// WETTERDATEN WETTERDATEN WETTERDATEN WETTERDATEN WETTERDATEN
******************************************************************************/
// Die Wetterdaten werden vom Server openweathermap.org geholt, da von dort
// die Informationen kostenlos sind.
// Man muss sich jedoch auf dem Server anmelden, um eine APP ID zu bekommen.
//
// Bei einer Multi-Regler-Version nur in der 1.user.config.php aktivieren!
// Sollen die aktuellen Wetterdaten geholt und abgespeichert werden?
// Dadurch wird mehr Traffic generiert. Die Daten stehen dann in der Influx
// Datenbank "aktuellesWetter" unter dem Measurement "Wetter" zur Verfügung.
// Sie werden alle 30 Minuten aktualisiert
// true oder false
$Wetterdaten = false;
//
// Die Application ID bekommt man, wenn man sich auf dem Server
// www.openweathermap.org registriert. Sie hat 32 Stellen und muss hier
// eingetragen werden. Beispiel: "57b78415a343540e3a4e4f72751c90f9"
$APPID = "";
//
// Der Standort wird mit einer StandortID angegeben. Wie die StandortID
// ermittelt wird, bitte im Support Forum nachlesen. Man kann eine Liste
// aller Standort ID's Weltweit hier herunterladen:
// http://bulk.openweathermap.org/sample/city.list.json.gz
// Default = "2925533" Frankfurt am Main oder die ID Ihres Standortes.
$StandortID = "2925533";
//
//
/******************************************************************************
// PROGNOSEDATEN PROGNOSEDATEN PROGNOSEDATEN PROGNOSEDATEN
******************************************************************************/
// Die Wetterprognosedaten werden vom Server www.solarprognose.de geholt.
// Teilweise sind die Daten dort kostenlos. [ www.solarprognose.de ]
// Man muss sich jedoch auf dem Server anmelden, um eine Prognose ID zu bekommen.
//
// Sollen die aktuellen Prognosedaten geholt und abgespeichert werden?
// Die Daten stehen dann in der Influx Datenbank "solaranzeige" unter dem
// Measurement "Wetterprognose" zur Verfügung. Sie werden pro Stunde einmal
// aktualisiert.
// Möchte man seinen eigenen Prognose Script nutzen, dann bitte hier User eingeben.
// In diesem Fall wird alle 30 Minuten der Script "prognose.php" aufgerufen.
// Dort müssen die Funktionen hinterlegt sein.
// keine, API, User, beide
$Prognosedaten = "keine"; // "keine" , "API" , "User" , "beide"
//
// Wenn API eingetragen wird, dann folgende 3 Variablen füllen:
$AccessToken = ""; // Bekommt man bei www.solarprognose.de
$PrognoseItem = "inverter"; // plant, inverter
$PrognoseID = "0"; // Anlagen ID oder Wechselrichter ID
$Algorithmus = ""; // kann leer bleiben oder
// // mosmix | own-v1 | clearsky
//
/******************************************************************************
// MESSENGER MELDUNGEN MESSENGER MELDUNGEN MESSENGER
******************************************************************************/
// Es können Fehlermeldungen, Ereignisse oder Statistiken mit einem
// Messenger übertragen werden. Dazu bitte Messenger = true eintragen
// Genaue Informationen stehen im Dokument "Messenger_Nachrichten.pdf"
//
// true / false
$Messenger = false;
//
// Welcher Messengerdienst soll benutzt werden?
// Pushover / Signal / WhatsApp
$Messengerdienst[1] = "Pushover"; // Pushover, Signal oder WhatsApp
// Die Solaranzeige müssen Sie bei Pushover / Signal oder WhatsApp
// registrieren und einen API Token holen.
// Wie das geht, steht in dem Dokument "Messenger_Nachrichten" auf dem
// Support Server
// Pushover Beispiel $API_Token = "amk4be851bcegnirhu1b71u6ou7uoh";
// Signal Beispiel $API_Token = "999999";
$API_Token[1] = "";
//
// Der User_Key ist die Messeger Empfänger Adresse. Bei Pushover können bis zu
// 9 Empfänger angegeben werden. $User_Key[1] bis $User_Key[9]
// Am Ende jeder Zeile das Semikolon nicht vergessen!
// Pushover Beispiel: $User_Key[1] = "ub6c3wmw4a3idwk9b5ajgfs5a7aypt";
// Siehe Dokument "Nachrichten_senden.pdf"
// Bei WhatsApp und Signal kann nur ein Empfänger angegeben werden, da der Token
// zur Rufnummer passen muss.
// Signal Beispiel: $User_Key[1] = "+491769000000";
$User_Key[1] = "";
//
// ------------------------------------------------------------------------
// Und jetzt eventuell für weitere Personen:
//
// $Messengerdienst[2] = ""; // Pushover, WhatsApp oder Signal
// $API_Token[2] = "";
// $User_Key[2] = "";
//
// $Messengerdienst[3] = ""; / Pushover, WhatsApp oder Signal
// $API_Token[3] = "";
// $User_Key[3] = "";
//
//*****************************************************************************
// Sonnen Auf und Untergang:
// Standort für Frankfurt. Wer es etwas genauer haben möchte, hier den eigenen
// Standort eintragen. Bitte als Dezimalzahl wie hier vorgegeben!
$Breitengrad = 50.1143999;
$Laengengrad = 8.6585178;
//
//
/******************************************************************************
// aWATTar Börsenpreise aWATTar Börsenpreise aWATTar Börsenpreise.
//
// Sollen die aktuellen Strom Börsenpreise in die oben angegebene locale.
// Datenbank in das Measurement "awattarPreise" geschrieben werden?
******************************************************************************/
//
$aWATTar = false;
//
$Aufschlag = "0"; // Z.B. "20,6" Preis des Aufschlages in Cent
//
$aWATTarLand = "DE"; // "DE" = Deutschland "AT" = Österreich
/******************************************************************************
// ACHTUNG! ACHTUNG! ACHTUNG! ACHTUNG! ACHTUNG! ACHTUNG! ACHTUNG!
//
// Alles ab hier nicht ändern! Nur auf Anweisung. Änderungen hier können
// das System zum Absturz bringen.
/******************************************************************************
// USB Device USB Device USB Device USB Device USB Device
******************************************************************************/
//
// USB Device, die automatisch erkannt wurde... bitte nicht ändern
// Wird nicht bei der Multi-Regler-Version benötigt.
//
$USBRegler = "";
//
// Nur wenn die automatischer Erkennung nicht funktioniert hat, bitte manuell
// eintragen. Im Normalfall wird das nicht benötigt. So lassen wie es ist.
// --- Nur bei Multi-Regler-Version Nur bei Multi-Regler-Version ----
// Bei einer Multi-Regler-Version muss hier der Devicename manuell
// eingetragen werden.
//
$USBDevice = "/dev/ttyUSB1";

//
// Wird nur in seltenen Fällen gebraucht.
// $SerielleGeschwindigkeit = "115200";
/*****************************************************************************/
//
/******************************************************************************
// Raspberry Pi Hardware Raspberry Pi Hardware Raspberry Pi Hardware
******************************************************************************/
// Bitte nicht ändern, wird automatisch ermittelt.
//
$Platine = "Raspberry Pi 4 Model B Rev 1.5";
//
/******************************************************************************
// PHP Error Reporting PHP Error Reporting PHP Error Reporting
// Bei ungeklärten Problemen hier einschalten. Normal = ausgeschaltet
******************************************************************************/
// error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE | E_STRICT);
//
// Ist für die neue Datenbankstruktur des Alpha ESS Wechselrichters
// Mit 0 kann die alte Struktur eingeschaltet werden.
$Alpha_ESS = 0;
// ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE
?>
pi@solaranzeige:~ $ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 0665:5161 Cypress Semiconductor USB to Serial
Bus 001 Device 004: ID 0403:6001 Future Technology Devices International, Ltd FT232 Serial (UART) IC
Bus 001 Device 006: ID 0403:6001 Future Technology Devices International, Ltd FT232 Serial (UART) IC
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
pi@solaranzeige:~ $


pi@solaranzeige:~ $ usb-devices

T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 1
D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=1d6b ProdID=0002 Rev=05.10
S: Manufacturer=Linux 5.10.103-v7l+ xhci-hcd
S: Product=xHCI Host Controller
S: SerialNumber=0000:01:00.0
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub

T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=480 MxCh= 4
D: Ver= 2.10 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=2109 ProdID=3431 Rev=04.21
S: Product=USB2.0 Hub
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=100mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub

T: Bus=01 Lev=02 Prnt=02 Port=01 Cnt=01 Dev#= 6 Spd=12 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0403 ProdID=6001 Rev=06.00
S: Manufacturer=FTDI
S: Product=FT232R USB UART
S: SerialNumber=A10NIY56
C: #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=90mA
I: If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=ftdi_sio

T: Bus=01 Lev=02 Prnt=02 Port=02 Cnt=02 Dev#= 4 Spd=12 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0403 ProdID=6001 Rev=06.00
S: Manufacturer=FTDI
S: Product=FT232R USB UART
S: SerialNumber=AQ02MT9K
C: #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=90mA
I: If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=ftdi_sio

T: Bus=01 Lev=02 Prnt=02 Port=03 Cnt=03 Dev#= 5 Spd=1.5 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0665 ProdID=5161 Rev=00.02
C: #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid

T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=5000 MxCh= 4
D: Ver= 3.00 Cls=09(hub ) Sub=00 Prot=03 MxPS= 9 #Cfgs= 1
P: Vendor=1d6b ProdID=0003 Rev=05.10
S: Manufacturer=Linux 5.10.103-v7l+ xhci-hcd
S: Product=xHCI Host Controller
S: SerialNumber=0000:01:00.0
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
pi@solaranzeige:~ $

Regler 1 ist mein MPI 5,5k von Mpp solar Regler nr.24
Hoffe ihr Profis könnt mir weiter helfen

Danke Mike

SolarHeli
Beiträge: 28
Registriert: Mi 5. Jan 2022, 22:31
Wohnort: Bayern
Danksagung erhalten: 9 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag von SolarHeli »

Hallo Mike,
bevor Du die Drähte vertauscht hast, hat das BMS noch mit einem falschen Frame geantwortet (0x79) danach gar nicht mehr.
Hast Du es schon mit dem BMS als single-Regler Setup einzeln versucht?
Achtung, bei mehreren gleichen USB Adaptern, Linux weist diese beim Booten wahllos zu. Siehe im Forum unter USB fest zuordnen.
Welche Version hast Du am BMS?
Getestet ist das BMS mit HW: 10.X-W und SW 10.02 (siehe in der APP unter About).
Viele Grüße,
Helmut

mikep500
Beiträge: 39
Registriert: Do 14. Jul 2022, 06:26
Danksagung erhalten: 1 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag von mikep500 »

Hallo und danke das du mir antwortest.
Softwarestand ist 10.08
Hardware ver. ist 10.XG
Drähte hab ich noch mal getauscht und sollte wieder passen.
Ich hab jetzt viel gelesen wie ich die Gerätenummern überhaupt finde. So richtig schlau bin ich immer noch nicht.
Ich hab jetzt mal dem SDM630 in der User config die Nummer 7 zugeteilt damit er nicht als USB Device mitgezählt wird und jetzt schaut es so aus.
11.12. 15:49:02 -Multi Regler Auslesen [Start].
11.12. 15:49:02 -Verarbeitung von: '1.user.config.php' Regler: 24
11.12. 15:49:02 |-------------- Start infini_p16.php ------------------------
11.12. 15:49:04 -Fehlermeldung: Grid frequency low loss
11.12. 15:49:04 * -Daten zur lokalen InfluxDB [ solarregler1 ] gesendet.
11.12. 15:49:04 -Multi-Regler-Ausgang. 5
11.12. 15:49:09 -OK. Datenübertragung erfolgreich.
11.12. 15:49:09 -WattstundenGesamtHeute: 4019.77
11.12. 15:49:09 |-------------- Stop infini_p16.php -----------------------
11.12. 15:49:09 -Verarbeitung von: '3.user.config.php' Regler: 83
11.12. 15:49:09 |------------ Start JK_bms.php ----------------------------
11.12. 15:49:09 !! -invalid frame! instead of 0x79
11.12. 15:49:09 -00e0
11.12. 15:49:09 |------------ Stop JK_bms.php (0s) ----------------------------
11.12. 15:49:09 -Multi Regler Auslesen [Stop].
jetzt steht dort nicht mehr no answer from USB in 210ms)! sonder wie oben zu sehen invalid frame! instead of 0x79. A und B hab ich da nicht vertauscht.
Der SDM630 hat ja die $USBDevice = "/dev/ttyUSB0";
Dem JK BMS habe ich $USBDevice = "/dev/ttyUSB1"; zugeteilt weil ich nirgends was gefunden habe was ich eintragen kann.


Hab jetzt noch den USB Adapter vom SDM630 am Raspi abgezogen. Nach dem Neustart schaut es so aus:
11.12. 16:28:01 -Multi Regler Auslesen [Start].
11.12. 16:28:01 -Verarbeitung von: '1.user.config.php' Regler: 24
11.12. 16:28:01 |-------------- Start infini_p16.php ------------------------
11.12. 16:28:03 -Fehlermeldung: Grid frequency low loss
11.12. 16:28:03 * -Daten zur lokalen InfluxDB [ solarregler1 ] gesendet.
11.12. 16:28:03 -Multi-Regler-Ausgang. 5
11.12. 16:28:08 -OK. Datenübertragung erfolgreich.
11.12. 16:28:08 -WattstundenGesamtHeute: 4101.55
11.12. 16:28:08 |-------------- Stop infini_p16.php -----------------------
11.12. 16:28:08 -Verarbeitung von: '3.user.config.php' Regler: 83
11.12. 16:28:08 |------------ Start JK_bms.php ----------------------------
11.12. 16:28:08 XX -USB Port kann nicht geöffnet werden. [1]
11.12. 16:28:08 XX -Exit....
11.12. 16:28:08 |------------ Stop JK_bms.php (0s) ----------------------------
11.12. 16:28:08 -Multi Regler Auslesen [Stop].

Ich schau mir jetzt mal das festzuweisen der USB devices an.

Danke Mike

mikep500
Beiträge: 39
Registriert: Do 14. Jul 2022, 06:26
Danksagung erhalten: 1 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag von mikep500 »

Überaschung,
ich habe jetzt den Steckplatz am Raspi geändert damit es übersichtlicher ist und jetzt geht alles.
Keine Ahnung was das war aber jetzt bin ich Happy.
11.12. 17:13:01 -Multi Regler Auslesen [Start].
11.12. 17:13:01 -Verarbeitung von: '1.user.config.php' Regler: 24
11.12. 17:13:01 |-------------- Start infini_p16.php ------------------------
11.12. 17:13:33 -Multi-Regler-Ausgang. -25
11.12. 17:13:33 !! -Keine gültigen Daten empfangen.
11.12. 17:13:33 |-------------- Stop infini_p16.php -----------------------
11.12. 17:13:33 -Verarbeitung von: '2.user.config.php' Regler: 34
11.12. 17:13:34 + -WR_ID: 01
11.12. 17:13:34 |------------ Start SDM630_meter.php -------------------------
11.12. 17:13:34 -AC Leistung: 231.079 Watt
11.12. 17:13:35 * -Daten zur lokalen InfluxDB [ solarregler2 ] gesendet.
11.12. 17:13:35 -Multi-Regler-Ausgang. 8
11.12. 17:13:43 -OK. Datenübertragung erfolgreich.
11.12. 17:13:43 |------------ Stop SDM630_meter.php -----------------------
11.12. 17:13:43 -Verarbeitung von: '3.user.config.php' Regler: 83
11.12. 17:13:43 |------------ Start JK_bms.php ----------------------------
11.12. 17:13:43 -Start DB transfer
11.12. 17:13:43 * -Daten zur lokalen InfluxDB [ solarregler3 ] gesendet.
11.12. 17:13:43 -Multi-Regler-Ausgang. 7
11.12. 17:13:50 -OK. Datenübertragung erfolgreich.
11.12. 17:13:50 |------------ Stop JK_bms.php (7s) ----------------------------
11.12. 17:13:50 -Multi Regler Auslesen [Stop].

11.12. 17:14:01 -Multi Regler Auslesen [Start].
11.12. 17:14:01 -Verarbeitung von: '1.user.config.php' Regler: 24
11.12. 17:14:01 |-------------- Start infini_p16.php ------------------------
Danke, vielen Dank
Dateianhänge
Screenshot (45).png

SolarHeli
Beiträge: 28
Registriert: Mi 5. Jan 2022, 22:31
Wohnort: Bayern
Danksagung erhalten: 9 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag von SolarHeli »

Hallo Mike,
super! Bin froh, dass es jetzt bei Dir klappt!
Das mit den sich ändernden ID ist echt eine üble Sache. Ich habe sie bei mir nach Anleitung an den USB-Steckplatz gekoppelt,
da es bei den Billigadaptern Probleme mit der ID gibt, ohne dass man es erkennen kann (ID wird gemeldet, aber die Zuweisung funktioniert nicht).
Also viel Spaß damit!
VG Helmut

mikep500
Beiträge: 39
Registriert: Do 14. Jul 2022, 06:26
Danksagung erhalten: 1 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag von mikep500 »

Hallo,
kann mir von den Entwicklern des JK BMS Reglers jemand sagen was mit dem Bat Status oben links angezeigt wird?
In der Original App wird das nicht angezeigt.

Danke Mike

Benutzeravatar
sralus
Beiträge: 47
Registriert: Mi 21. Sep 2022, 00:04
Hat sich bedankt: 6 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag von sralus »

Hallo

habe heute mittag mein JK BMS angeschlossen und auch daten empfangen...

Jetzt bekomm ich immer den Fehler :
14.12. 19:21:16 -Verarbeitung von: '3.user.config.php' Regler: 83
14.12. 19:21:16 |------------ Start JK_bms.php ----------------------------
14.12. 19:21:16 -Zentraler Timestamp: 1671042062
14.12. 19:21:16 o -Hardware Version: Raspberry Pi 4 Model B Rev 1.4
14.12. 19:21:16 o -Hardware Version: 4B
14.12. 19:21:16 -USB Port: /dev/ttyUSB0
14.12. 19:21:16 + -Die Daten werden ausgelesen...
14.12. 19:21:16 -out> : 4e5700130000000006030000000000006800000129
14.12. 19:21:16 !! -invalid frame! f0 instead of 0x79
14.12. 19:21:16 -80400000007edc00f020f0f070f0f00000e0f0e0f0f0f0f0e000e090f0f0e0f0f0f0f000f0f0f0f0f0e0f0f0f0f0f000f0000060000030823f3880fb18b0dcc018c0c07100800c000e000ee080ee00fe00c00f00c1e03280e0fb0178e40307f0c01fc0ff0700c71fc0cf0700df00f8e700de00f01fe007c007600c1c007000c200380ec0183e00f8fffef7fffffef0ff7f007f000000ff80c0fc800000301ef26ee637eefb01003f007bf0f800ffffbb72cc6c00e76e5c9ffcff266e83effff800fc0000fe7bf0f880ffdf3ffc7cfeff1b920f92c3df3230c0c000003f
14.12. 19:21:16 |------------ Stop JK_bms.php (0s) ----------------------------
14.12. 19:21:16 -Multi Regler Auslesen [Stop].

oder :
14.12. 19:20:15 !! -invalid frame! 00 instead of 0x79
14.12. 19:20:15 -ef80400000007ed880f00000c0f000f0f0f0f0e0f0f0f0f0e000f090f0f0e0f0f0f0f0f0c0f0f0f0f0f0e0f0fcf0f0f000f00000600070003878c2000b1890dcc01ce0c07100000c000e000ee080ee00fe00c00f0081e0c90003fb0170ef0307f0c01fc0ff0700c71fc0ef0700df00fee700de00f01fe007e007e00c1c007000c2007000183e00f8fffef7fffef07f007f000000ff80c0fc800000301af26cee37eefb03003f0072f0f880ffffbb32cc4c00ff6e5c9ffcff266c83cffff800fc0000fe7bf0f880ffdf3ffc7cfeff1b920f93c3dfbb30c0c000
14.12. 19:20:15 |------------ Stop JK_bms.php (0s) ----------------------------
14.12. 19:20:15 -Multi Regler Auslesen [Stop].


Was kann ich machen ?
meine Conf. sieht so aus :

Code: Alles auswählen

<?php
/******************************************************************************
//  Hier werden die Kunden spezifischen Einstellungen         (c) U.Kunz  2016
//  vorgenommen, damit keine der Daten bei einem Softwareupdate
//  überspielt werden. Diese Datei bitte mit Vorsicht
//  ändern. Die Form und die Schreibweise darf in keinen Fällen
//  geändert werden. Weitere Hilfe finden Sie im FORUM   www.solaranzeige.de
//
//  Diese Datei ist hier zu finden:  /var/www/html/user.config.php
//
//
******************************************************************************/
//
/******************************************************************************
//  REGLER  und  WECHSELRICHTER       REGLER  und  WECHSELRICHTER      REGLER
******************************************************************************/
//  Diese Regler knnen derzeit mit der Software benutzt werden:
//
//  Welcher Regler wird benutzt?
//
//   1 = ivt-Hirschau Regler SCPlus oder SCDPlus
//
//   2 = Steca Regler Tarom 6000 und Tarom 4545
//
//   3 = Regler der Tracer Serie  z.B. Tracer2210A
//       mit RS-485 zu USB Anschlusskabel (MODBUS) (Unbedingt FTDI Chipsatz)
//
//   4 = BlueSolar oder SmartSolar Regler von Victron-energy mit
//       VE.Direkt zu USB Anschlusskabel
//       --------------------------------------------------------------------
//       [Im Moment noch nicht in Betrieb]
//       Zusätzlich kann ein MultiPlus Wechselrichter mit einem MK3 USB Kabel
//       angeschlossen werden.
//
//   5 = Micro Wechselrichter von AEconversion z.B. INV250-45
//       mit RS-485 zu USB Anschlusskabel   (Unbedingt FTDI Chipsatz)
//
//   6 = Victron BMV 7xx Batteriewächter
//       mit VE.direct zu USB Kabel
//
//   7 = Voltronic Geräte der Axpert Serie
//       Effekta Geräte der AX und HX Serie,
//       Steca Solarix PLI 5000-48,
//       InfiniSolar PIP Serie 3k,
//       MPPSolar PIP HSP/MSP , MS/MSX und MSD Serien
//       EAsun ISolar SPV SMV 1KVA-5KVA Inverter
//       EAsun IGrid VE
//       mit einfachem  USB Kabel (A und B Stecker)
//       (Kein Seriell zu USB Wandler!)
//
//   8 = InfiniSolar V Serie , MPP Solar HSE/MSE Serie und viele Baugleiche.
//       mit einfachem USB Kabel (A und B Stecker) (Kein Seriell zu USB Wandler!)
//
//   9 = MPPSolar MPI Hybrid Serie 3 Phasen Inverter
//       Baugleich: FSP 5,5 Hybrid und Panta 10 Hybrid
//       mit einfachem USB Kabel (A und B Stecker) (Kein Seriell zu USB Wandler!)
//
//  10 = SolarMax S-Serie
//       mit Ethernet (LAN) Kabel Anschluss.
//
//  11 = Phoenix Wechselrichter von Victron mit VE.direct Kabel Anschluss
//
//  12 = Fronius Symo Wechselrichter  inkl. Hybrid Geräte und Fronius Prymo
//       MIT Ethernet (LAN) Kabel Anschluss
//
//  13 = Joulie-16  Batterie-Management-System von AutarcTech  (BMS)
//       Mit LAN Anschluss
//
//  14 = Rover Laderegler von Renogy, Toyo von SRNE und baugleiche
//       mit USB Kabel Anschluss
//
//  15 = PYLONTECH US2000B Plus Batteriespeicher  Batterie-Management-System (BMS)
//       Mit Seriell zu USB Adapter. Den Console Port im Gerät benutzen.
//
//  16 = SolarEdge 3 Phasen Wechselrichter mit LAN Schnittstelle
//       (Für 1 Phasen Geräte muss das Dashboard geändert werden)
//
//  17 = KOSTAL Plenticore Wechselrichter und Pico der 3. Generation
//       mit LAN Schnittstelle
//
//  18 = S10E und S10 mini von E3/DC mit LAN Schnittstelle   (Port 502)
//       Nur im Simple-Mode möglich.
//
//  19 = eSmart3  Laderegler  40A, 50A, 60A
//
//  20 = SolarEdge 3 Phasen Wechselrichter ohne MODBUS Zähler
//       mit Ethernet (LAN) Kabel Anschluss.
//       (Für 1 Phasen Geräte muss das Dashboard geändert werden)
//
//  21 = KOSTAL Piko mit RS485 Anschluss
//       (in der user.config.php muss $WR_IP = "0.0.0.0"; stehen!)
//       Eine IP Adresse nur eintragen, wenn man den Piko über das LAN auslesen will.
//       Beim PIKO MP Plus in der user.config.php zusätzlich
//       $SerielleGeschwindigkeit = 38400;  eintragen.
//
//  22 = Smart Energy Meter von KOSTAL oder Anderen
//
//  23 = Sonoff / Shelly Relais:
//       Bei folgenden Relais muss der "DeviceName" wie folgt eingetragen sein:
//       Shelly 2.5    = "Shelly_2.5"
//       Shelly 1      = "Shelly_1"
//       Shelly 1PM    = "Shelly_1PM"
//       Sonnof POW R3 = "Sonoff_POW_R3"
//
//       Beispiel der Änderung:
//       Auf der Tasmota Konsole einfach    DeviceName Shelly_1    eingeben.
//
//  24 = Infini xx KW Hybrid Wechselrichter. Protokoll 16  1 Phase
//
//  25 = SonnenBatterie mit LAN Anschluss
//
//  26 = MPPSolar 5048MK und 5048GK ( PIP MK und GK Serie )
//       EAsun ISolar V III Off-Grid lnverter
//       sowie Baugleiche mit USB Anschluss
//
//  27 = SMA Wechselrichter Sunny Island und Sunny Tripower 
//       Modbus TCP mit LAN Anschluss
//
//  28 = HRDi marlec Laderegler für PV und Windgenerator
//       mit Seriell - USB Adapter
//
//  29 = go-e Charger  (Wallbox)
//
//  30 = Keba Wallbox  P20 + P30
//
//  31 = Shelly EM und Shelly 3EM
//
//  32 = KACO Wechselrichter der TL3 Serie
//
//  33 = Labornetzteil JOY-IT  JT-DPM8624
//
//  34 = SDM630  Energy Meter (RS485 Anschluss)
//
//  35 = Wallbe Wallbox  Eco 2.0 und andere.
//
//  36 = Delta Wechselrichter SI 2500  mit RS485 Anschluss
//
//  37 = Simple EVSE WiFi Wallbox
//
//  38 = ALPHA ESS T10  Wechselrichter + Batteriesystem
//
//  39 = openWB  Wallbox
//
//  40 = Phocos PH1800 Wechselrichter
//
//  41 = PylonTech US 3000 A mit RS485 Schnittstelle  Anz. Batterie-Packs auch angeben!
//
//  42 = PV18-3KW VHM oder PV1800 VHM oder Baugleiche mit RS485 Schnittstelle
//
//  43 = Senec Stromspeicher
//
//  44 = Webasto Wallbox
//
//  45 = Phocos Any-Grid mit RS232 zu USB Adapter
//
//  46 = Huawei SUN2000 Wechselrichter ältere Modelle bis Modell ID 100 (siehe Regler 56)
//
//  47 = Phoenix Contact Wallbox
//
//  48 = Growatt Wechselrichter
//
//  49 = Huawei SmartLogger
//
//  50 = SDM230 Zähler 1 Phase
//
//  51 = Siemens PAC2200 SmartMeter
//
//  52 = Goodwe Wechselrichter der Serien ES , EM und SBP (mit Batterie)
//
//  53 = Solarlog Pro 380 - Mod
//
//  54 = SMA Energy Meter 2.0
//
//  55 = Studer Xtender Wechselrichter inkl BSP
//
//  56 = Huawei SUN2000 Wechselrichter M0 , M1 und M2 Modelle
//
//  57 = Daly BMS China
//
//  58 = SolarEdge Ertragszähler WND-3Y400-MB
//
//  59 = EASUN POWER Solar Inverter 3KVA mit seriellem Anschluss
//
//  60 = Hardy Barth Wallbox
//
//  61 = SMARTPI Zähler
//
//  62 = Huawei Wechselrichter mit SDongle (LAN Anschluss)
//
//  63 = cFos Wallbox
//
//  64 = Goodwe Wechselrichter der Serien ET, EH, BH, BT
//
//  65 = RCT Wechselrichter 
//
//  66 = Kostal Piko CI
//
//  67 = Goodwe Wechselrichter XS Serie
//
//  68 = VARTA Pulse Neo
//
//  69 = Vestel Wallbox
//
//  70 = Sungrow Wechselrichter
//
//  71 = EASUN SMG II Wechselrichter
//
//  72 = HomeMatic Gaszähler (und andere Geräte. Siehe Homematic.pdf Dokument)
//
//  73 = SofarSolar Wechselrichter x.x KTL-X
//
//  74 = Carlo Gavazzi EM24 SmartMeter (Baugleich Victron EM24)
//
//  75 = Hager Meter (Stromzähler)
//
//  76 = Hoymiles Microwechselrichter
//
//  77 = AX Licom Box von Effekta
//
//  78 = Innogy Wallbox / Compleo Wallbox
//
//  79 = IAMMETER WEM3080T Stromzähler
//
//  80 = Solax X3 Wechselrichter
//
//  81 = my-PV  AC-THOR  und AC-THOR 9s
//
//  82 = Solis Wechselrichter
//
//  83 = JK-BMS (Batterie Management System)
//
//  ---------------------------------------------------------------------------
//
$Regler = "83";
//
/******************************************************************************
//  Raspberry Gerätenummer   Raspberry Gerätenummer   Raspberry Gerätenummer
//  Falls mehr als ein Gerät pro Raspberry betrieben wird.
//  Es ist die Reihenfolge der Geräte und taucht auch in der Nummerierung
//  der  x.user.config.php Dateien auf
******************************************************************************/
//  GeräteID bzw. GeräteNummer Muss gleich mit der x.user.config.php sein.
//  Bitte nur bei einer Multi-Regler-Version ändern.  [ 1 bis 6 ]
$GeraeteNummer = "3";
//
//  Bei einem Micro Wechselrichter von AEconversion oder LiCom Box von Effekta 
//  und anderen Geräten, die für den Zugang eine Seriennummer benötigen.
//  --------------------------------------------------------------------------
//  Z.B. Typ INV250-45 oder INV500-60 oder LiCom Box von Effekta
//  Steht auf dem Gerät! Ist 10 stellig. Serial-No. 0607600...
//  Bitte alle 10 Stellen hier eintragen.
//  Bei der AX LiCom Box von Effekta sind es 14 Stellen.
//  Bei den neuen AEconversion Geräten den Bootcode hier eintragen.
$Seriennummer = "0000000000";                 // Regler = "5"
//  Wird nur in seltenen Fällen gebraucht.
$Zugang_Kennwort = "";                        // wird zur Zeit nicht benutzt
//  Falls ein WLAN HF2211 serial   Gateway benutzt wird true eingeben
$HF2211 = false;
//
//  Nur bei PylonTech BMS US3000..       ($Regler = "41" )
//  und den neuen US2000C aus dem Jahr 2019 und später
//  Anzahl der vorhandenen Batteriepacks und Modell 2000 / 3000
//  -------------------------------------------------------------------
//         $Batteriepacks = "1"; //                                Regler = "41"
//         $PylonTech = "2000";  //                                Regler = "41"
//
//
//  Ethernet Kabelverbindung:          Local Area Network  (LAN)
//  Alle Geräte, die über das LAN angesprochen und ausgelesen werden,
//  oder ein Serial Device Server, wie z.B. der HF2211 oder der Elfin-EW11,
//  dazwischen geschaltet haben, bitte hier IP und Port eintragen und
//  falls erforderlich die Device ID. (Geräteadresse = WR_Adresse)
//  Die Geräte Adresse wird auch manchmal bei RS485 Verbindungen benutzt.
//  -------------------------------------------------------------------
//  Bitte die Daten aus dem Gerät übernehmen
//
$WR_IP = "0.0.0.0";  //  Keine führenden Nullen!  67.xx Ja!, 067.xx Nein!
$WR_Port = "12345";
$WR_Adresse = "1";   //  Achtung Adresse als Hexzahl eingeben / Dez 16 = Hex 10
//                       Maximal "FF" = 256   
/*****************************************************************************/
//
//
//  Bezeichnung des Objektes. Freie Wahl, maximal 15 Buchstaben.
$Objekt = "";
//
//
/******************************************************************************
//  InfluxDB     InfluxDB     InfluxDB     InfluxDB     InfluxDB     InfluxDB
//  ***************************************************************************
//  Die Daten können jede Minute oder öfter an eine InfluxDB Datenbank
//  übertragen werden. Die Datenbank muss nur über das Netzwerk erreichbar
//  sein. Sie kann sich im lokalen Netz, im Intenet oder aber auch auf diesem
//  Raspberry befinden. Bitte lesen Sie auch das Dokument
//  "Solaranzeige + InfluxDB" welches Sie auf unserem Support Server finden.
******************************************************************************/
//  Sollen die Daten in die lokale Influx Datenbank geschrieben werden?
//  Für die lokale Datenbank sind keine weiteren Angaben nötig.
//  true oder false
$InfluxDB_local = true;
//
//  Name der lokalen Datenbank. Bitte nicht ändern, sonst funktionieren die
//  Standard Dashboards nicht!
//  ---  Nur bei Multi-Regler-Version  Nur bei Multi-Regler-Version  ----
//  Bei einer Muti-Regler-Version müssen hier unterschiedliche lokale
//  Datenbanknamen eingetragen werden. Mit gleichem Namen müssen die Datenbanken
//  in der InfluxDB angelegt werden. Siehe Dokument:
//  "Multi-Regler-Version Installation"
$InfluxDBLokal  = "jkbms";
//
//  Wie oft pro Minute sollen die Daten ausgelesen und zur InfluxDB
//  übertragen werden?
//  Gültige Werte sind 1 bis 6 (6 = alle 10 Sekunden)
//  Bei einer zusätzlichen entfernten Datenbank kann das zu erheblichen
//  Traffic führen! Dieses gilt nur für die Single-Geräte-Version!
//  Wie es bei der Multi-Regler-Version funktioniert bitte in dem
//  entsprechenden Dokument nachlesen.
//  Default ist 1 (Ein mal pro Minute)
$Wiederholungen = 1;
//
/****************************************************************************/
//  ENTFERNTE INFLUX DATENBANK:
//  ---------------------------
//  Ist eine entfernte InfluxDB vorhanden und sollen dorthin auch die Daten
//  übertragen werden?
//  true oder false
$InfluxDB_remote = false;
//
//  Port an den die Daten geschickt werden. Normal ist Port 8086
$InfluxPort = 8086;
//
//  Name der entfernten Datenbank eintragen
//  Beispiel:  "solaranzeige" oder "MeineDatenbank"
$InfluxDBName  = "jkbms";
//
//  Adresse der Datenbank
//  Entweder die IP Adresse "xxx.xxx.xxx.xxx" oder den Hostnamen oder "localhost"
//  eintragen.
//  Beispiel:  "db.solaranzeige.de" oder "34.101.3.20"
$InfluxAdresse = "";
//
//  Wenn man mit UserID und Kennwort die Daten übertragen möchte, sollte man
//  auf jeden Fall auch die SSL Verschlüsselung einschalten. Dazu muss die
//  Influx Datenbank aber erst auf https eingerichtet werden.
$InfluxSSL = false;
//
//  Wenn die entfernte Datenbank mit UserID und Kennwort geschützt ist.
//  Wenn nicht, bitte leer lassen.
$InfluxUser = "admin";
$InfluxPassword ="solaranzeige";
//
//  Sollen die Daten nur bei Tageslicht an eine remote Datenbank gesendet werden?
//  Das reduziert den Traffic bei teuren Leitungen. Das betrifft nur die Remote
//  Datenbank falls konfiguriert.
//  true / false     ( false = die Daten werden rund um die Uhr gesendet. )
$InfluxDaylight = false;
//
//
//
/*******************************************************************************
//  HOMEMATIC  ANBINDUNG      HOMEMATIC  ANBINDUNG      HOMEMATIC  ANBINDUNG
//  Teil 1    Teil 1    Teil 1    Teil 1    Teil 1    Teil 1    Teil 1    Teil 1  
//  ****************************************************************************
//  Anbindung an eine vorhandene HomeMatic Zentrale
//  Für die genaue Einrichtung bitte das PDF Dokument "Homematic_Anschluss.pdf" lesen.
//  Es befindet sich auf unserem Support Server im Bereich "Verschiedene PDF Dokumente"
//  Kapitel 1 bis 7                Kapitel 1 bis 7              Kapitel 1 bis 7
********************************************************************************/
//  Sollen die Daten an eine vorhandene Homematic Zentrale gesendet werden?
//  Diese Werte kann dann die Zentrale dann verarbeiten.
//  Folgende Werte werden übertragen:
//  * Ladestatus 0 = Keine Ladung, 2 = Fehler, 3 = Ladung (bulk); 4 = Nachladung (absorbtion),
//               5 = Erhaltungsladung (float)
//  * Ladestatus als Textzeile (Keine_Ladung, Normale_Ladung, Nachladung, Erhaltungsladung, Fehler)
//  * Batteriespannung in Volt
//  * Erzeugte Leistung am Tage in kWh
//  * Aktuell erzeugte Solar-Leistung
//  * Batteriestatus in % (Wie voll ist die Batterie?) Nicht bei allen Geräten!
//
//  true / false
$Homematic = false;
//
//  Welche IP Adresse hat Ihre Homematic Zentrale? Sie muss sich im selben
//  Netzwerk wie der Raspberry Pi befinden. Beispiel: 192.168.33.200
$Homematic_IP = "xxx.xxx.xxx.xxx";
//
//  Hier die Variablen eintragen, die zur HomeMatic Zentrale übermittelt werden
//  sollen. Siehe Dokument "HomeMatic_Anbindung.pdf"
//  Beispiel: "BatterieLadestatus,BatteriestatusText,Batteriespannung,Solarleistung,SolarleistungTag,Solarspannung";
$HomeMaticVar = "";
//
//  Den Status einzelner Geräte aus der HomeMatic Zentrale auslesen und in die
//  Influx Datenbank schreiben, damit man den Status im Dashboard anzeigen kann.
//  Nähere Einzelheiten stehen im Dokument "HomeMatic Anbindung"
$HM_auslesen = false;
//
//  Für jedes Gerät, dessen Status ausgelesen werden soll, müssen 4 Variablen
//  angegeben werden.
//  $HM[0]["Variable"] =       Kann man nennen wie man will, steht dann so in der Influx Datenbank.
//  $HM[0]["Interface"] =      Steht in der HomeMatic, bitte übernehmen
//  $HM[0]["Seriennummer"] =   Steht auch in der HomeMatic
//  $HM[0]["Datenpunkt"] =     STATE, POWER, ACTUAL_TEMPERATURE usw. Siehe HomeMatic
//
//  Für jede Systemvariable müssen 2 Variablen angegeben werden:
//  $HM[0]["Variable"] =        Kann man nennen wie man will. Steht dann so in der Influx Datenbank
//  $HM[0]["Systemvariable"] =  Name der Systemvariable in der HomeMatic
//  -----------------------------------------------------------------------
//
//  Beispiele:  ( Die zwei Schrägstich bei Aktivierung bitte entfernen. )
//  $HM[0]["Variable"] = "Wasserboiler";
//  $HM[0]["Interface"] = "BidCos-RF";
//  $HM[0]["Seriennummer"] = "OEQ1150699:1";
//  $HM[0]["Datenpunkt"] = "STATE";
//  $HM[1]["Variable"] = "Heizluefter";
//  $HM[1]["Interface"] = "BidCos-RF";
//  $HM[1]["Seriennummer"] = "OEQ1399311:1";
//  $HM[1]["Datenpunkt"] = "STATE";
//  $HM[2]["Variable"] = "...";
//  $HM[2]["Interface"] = "...";
//  $HM[2]["Seriennummer"] = "...";
//  $HM[2]["Datenpunkt"] = "POWER";
//  $HM[3]["Variable"] = "Anwesenheit";
//  $HM[3]["Systemvariable"] = "Anwesenheit";
//  usw.
//
//
//
/*******************************************************************************
//  HOMEMATIC  ANBINDUNG      HOMEMATIC  ANBINDUNG      HOMEMATIC  ANBINDUNG
//  XML API    XML API        XML API    XML API        XML API    XML API
//  Teil 2    Teil 2    Teil 2    Teil 2    Teil 2    Teil 2    Teil 2    Teil 2  
//  ****************************************************************************
//  Ab Kapitel 7                AB Kapitel 7              AB Kapitel 7
//  Möchte man die variablen daten eines an die Homematic angeschlossenen
//  Gerätes auslesen, wie z.B. ein Heizkörperventil, dann müssen hier die Daten
//  der angeschlossenen Geräte angegeben werden. Nähere Einzelheiten bitte im
//  Dokument Homematic_Anbindung.pdf ab Kapitel 7 lesen.
//
//  Beispiel:
//  ---------
//  HM_Geraet 1
//  $HM_Geraetetyp[1] = "HM-CC-RT-DN";     // Heizungsthermostat
//  $HM_Seriennummer[1] = "OEQ2419985";    // Wohnzimmer
//
//  HM_Geraet 2
//  $HM_Geraetetyp[2] = "HmIP-eTRV-B";     // Heizungsthermostat
//  $HM_Seriennummer[2] = "00201D89A8A446";// Badezimmer
//
//  HM_Geraet 3
//  $HM_Geraetetyp[3] = "HmIP-STHD";       // Wandthermostat
//  $HM_Seriennummer[3] = "000E9BE9967967";// Badezimmer
//
//  HM_Geraet 4
//  $HM_Geraetetyp[4] = "HM-CC-RT-DN";     // Heizungsthermostat
//  $HM_Seriennummer[4] = "OEQ2421488";    // Küche
//
//  HM_Systemvariable 1
//  $HM_Systemvariable[1] = "Test";        // Variable 1
//  $HM_Systemvariable[2] = "DutyCycle";   // Variable 2

*******************************************************************************/
//
//  HM_Geraet 1
$HM_Geraetetyp[1] = "";      // Typenbezeichnung
$HM_Seriennummer[1] = "";    // Seriennummer
//
//
/******************************************************************************
//  MQTT Protokoll     MQTT Protokoll      MQTT Protokoll      MQTT Protokoll
//  Senden und / oder Empfangen
******************************************************************************/
//  Sollen alle ausgelesenen Daten mit dem MQTT Protokoll an einen
//  MQTT-Broker gesendet werden oder MQTT Daten empfangen werden? 
//  Bitte das Solaranzeige-MQTT PDF Dokument lesen
$MQTT = false;
//
//
/******************************************************************************/
//  MQTT Daten senden     MQTT Daten senden     MQTT Daten senden     MQTT Daten
//  Wenn Daten mit dem MQTT Protokoll versendet werden sollen. 
//
//  Wo ist der MQTT-Broker zu finden?
//  Entweder "localhost", eine Domain oder IP Adresse "xxx.xxx.xxx.xxx" eintragen.
//  broker.hivemq.com ist ein Test Broker   Siehe http://www.mqtt-dashboard.com/
$MQTTBroker = "localhost";
//
//  Benutzter Port des Brokers. Normal ist 1883  mit SSL 8883
$MQTTPort = 1883;
//
//  Falls der Broker gesichert ist. Sonst bitte leer lassen.
$MQTTBenutzer = "";
$MQTTKennwort = "";
//
//  Wenn man die Daten mit SSL Verschlüsselung versenden möchte.
//  Wenn hier true steht, muss im Verzeichnis "/var/www/html/" die "cerfile"
//  'ca.crt' vorhanden sein. Nähere Einzelheiten über diese Datei findet
//  man im Internet in der Mosquitto Dokumentation.
$MQTTSSL = false;
//
//  Timeout der Ãœbertragung zum Broker. Normal = 10 bis 60 Sekunden
$MQTTKeepAlive = 60;
//
//  Topic Name oder Nummer des Gerätes solaranzeige/1
//  oder solaranzeige/box1                     (solaranzeige ist fest vorgegeben.)
//  Man kann das Gerät nennen wie man will, nur jedes Gerät, welches Daten
//  senden soll unterschiedlich. Entwerder 1 bis 6 oder Namen Ihrer Wahl vergeben.
$MQTTGeraet = "box3";
//
//  Welche Daten sollen als MQTT Message übertragen werden? Wenn hier nichts
//  aufgeführt ist, werden alle ausgelesenen Daten übertragen.
//  Bitte darauf achten, dass keine Leerstellen zwischen den Variablen sind.
//  Die einzelnen Variablen müssen mit einem Komma getrennt und klein geschrieben
//  werden. Zusätzlich müssen sie den Eintrag vom $MQTTGeraet und ein Schrägstrich
//  enthalten. Das ist nötig, da mehrere Geräte an dem Raspberry hängen können.
//  Beispiel mit obigen MQTTGeraet:
//  $MQTTAuswahl = "1/ladestatus,1/solarspannung,1/solarstrom"
//  Werden hier Variablen eingetragen, dann werden auch nur diese Topics
//  übertragen.
$MQTTAuswahl = "";
//
//
/******************************************************************************
//  MQTT Empfang       MQTT Empfang       MQTT Empfang       MQTT Empfang
//  Subscribing    Subscribing    Subscribing    Subscribing    Subscribing
******************************************************************************/
//  Welche Daten sollen empfangen werden. Hier können die Topics, die
//  empfangen werden sollen aufgeführt werden. Dabei gibt es 2 Möglichkeiten
//  Entweder ein einzelner Wert oder eine Reihe von Werten.
//  Wichtig! Das basis Topics ist immer solaranzeige. Dann muss entweder befehl
//  oder anzeige kommen, dann die Gerätenummer und dann die Bezeichnung des
//  Wertes. Die Gerätenummer ist immer 1, außer bei Multi-Regler-Versionen.
//  Beispiel:  solaranzeige/anzeige/1/PV-Spannung
//  In diesem Beispiel wird der Wert der PV-Spannung in die Influx Datenbank
//  geschrieben unter dem Measurement MQTT
//  oder
//  Beispiel:  solaranzeige/befehl/1/POP  mit Wert 00
//  Der Befehl POP00 wird zum Wechselrichter geschickt. Er wird jedoch nur
//  ausgeführt wenn es sich um einen erlaubten Befehl handelt, der in der
//  Datei "befehle.ini.php" enthalten ist.
//
//  Beispiele:
//  $MQTTTopic[1] = "solaranzeige/befehl/1/POP";
//  $MQTTTopic[2] = "solaranzeige/befehl/1/PCP";
//  $MQTTTopic[3] = "solaranzeige/anzeige/1/Wasserboiler";
//
//  Oder auch
//  $MQTTTopic[1] = "solaranzeige/befehl/1/#";
//  Es können so viele Topics wie benötigt aufgeführt werden. Sie müssen nur
//  durch nummeriert werden [1] bis [n]
//  Bei Multi-Regler-Versionen muss zusätzlich noch die Gerätenummer angegeben
//  werden. Weitere Informationen finden Sie auf dem Support Forum.
//  Achtung! Damit der Empfang auch funktioniert muss $MQTT = true;
//  etwas weiter oben stehen!
$MQTTTopic[1] = "solaranzeige/befehl/1/#";
//
//
/******************************************************************************
//  SONOFF Geräte mit Tasmota Firmware       SONOFF Geräte mit Tasmota Firmware
//  POW R2 / TH10 R2 oder TH16 R2  oder GOSUND SP1xx
******************************************************************************/
//  Bitte den Topic-Namen, der in der TASMOTA Firmware angegeben ist, hier
//  eintragen. Unbedingt auf Groß- und Keinschreibung achten! Der Name kann
//  frei gewählt werden, er muss nur im Gerät und hier gleich sein. Werden
//  mehrere Sonoff Geräte mit der Solaranzeige betrieben, muss jedes einzelne
//  Gerät einen anderen Topic-Namen benutzen!
//           $Topic = "sonoff";
//
//
/******************************************************************************
//  WETTERDATEN     WETTERDATEN    WETTERDATEN    WETTERDATEN    WETTERDATEN
******************************************************************************/
//  Die Wetterdaten werden vom Server openweathermap.org geholt, da von dort
//  die Informationen kostenlos sind.
//  Man muss sich jedoch auf dem Server anmelden, um eine APP ID zu bekommen.
//
//  Bei einer Multi-Regler-Version nur in der 1.user.config.php aktivieren!
//  Sollen die aktuellen Wetterdaten geholt und abgespeichert werden?
//  Dadurch wird mehr Traffic generiert. Die Daten stehen dann in der Influx
//  Datenbank "aktuellesWetter" unter dem Measurement "Wetter" zur Verfügung.
//  Sie werden alle 30 Minuten aktualisiert
//  true oder false
$Wetterdaten = false;
//
//  Die Application ID bekommt man, wenn man sich auf dem Server
//  www.openweathermap.org registriert. Sie hat 32 Stellen und muss hier
//  eingetragen werden. Beispiel: "57b78415a343540e3a4e4f72751c90f9"
$APPID = "";
//
//  Der Standort wird mit einer StandortID angegeben. Wie die StandortID
//  ermittelt wird, bitte im Support Forum nachlesen. Man kann eine Liste
//  aller Standort ID's Weltweit hier herunterladen:
//  http://bulk.openweathermap.org/sample/city.list.json.gz
//  Default = "2925533" Frankfurt am Main oder die ID Ihres Standortes.
//           $StandortID = "2925533";
//
//
/******************************************************************************
//  PROGNOSEDATEN     PROGNOSEDATEN    PROGNOSEDATEN    PROGNOSEDATEN
******************************************************************************/
//  Die Wetterprognosedaten werden vom Server www.solarprognose.de geholt.
//  Teilweise sind die Daten dort kostenlos. [ www.solarprognose.de ]
//  Man muss sich jedoch auf dem Server anmelden, um eine Prognose ID zu bekommen.
//
//  Sollen die aktuellen Prognosedaten geholt und abgespeichert werden?
//  Die Daten stehen dann in der Influx Datenbank "solaranzeige" unter dem
//  Measurement "Wetterprognose" zur Verfügung. Sie werden pro Stunde einmal
//  aktualisiert.
//  Möchte man seinen eigenen Prognose Script nutzen, dann bitte hier User eingeben.
//  In diesem Fall wird alle 30 Minuten der Script "prognose.php" aufgerufen.
//  Dort müssen die Funktionen hinterlegt sein.
//  keine, API, User, beide
$Prognosedaten = "keine";              //  "keine" , "API" , "User" , "beide"
//
//  Wenn API eingetragen wird, dann folgende 3 Variablen füllen:
$AccessToken = "";                     // Bekommt man bei www.solarprognose.de
$PrognoseItem = "inverter";            // plant, inverter
$PrognoseID = "0";                     // Anlagen ID oder Wechselrichter ID
$Algorithmus = "";                     // kann leer bleiben oder
//                                     // mosmix | own-v1 | clearsky
//
/******************************************************************************
//  MESSENGER   MELDUNGEN        MESSENGER   MELDUNGEN        MESSENGER
******************************************************************************/
//  Es können Fehlermeldungen, Ereignisse oder Statistiken mit einem
//  Messenger übertragen werden. Dazu bitte Messenger = true eintragen
//  Genaue Informationen stehen im Dokument "Messenger_Nachrichten.pdf"
//
//  true / false
$Messenger = false;
//
//  Welcher Messengerdienst soll benutzt werden?
//  Pushover / Signal / WhatsApp
//           $Messengerdienst[1] = "Pushover";   //  Pushover, Signal oder WhatsApp
//  Die Solaranzeige müssen Sie bei Pushover / Signal oder WhatsApp
//  registrieren und einen API Token holen. 
//  Wie das geht, steht in dem Dokument "Messenger_Nachrichten" auf dem
//  Support Server
//  Pushover Beispiel $API_Token = "amk4be851bcegnirhu1b71u6ou7uoh";
//  Signal Beispiel $API_Token = "999999";
//            $API_Token[1] = "";
//
//  Der User_Key ist die Messeger Empfänger Adresse. Bei Pushover können bis zu
//  9 Empfänger angegeben werden. $User_Key[1]  bis  $User_Key[9]
//  Am Ende jeder Zeile das Semikolon nicht vergessen!
//  Pushover Beispiel: $User_Key[1] = "ub6c3wmw4a3idwk9b5ajgfs5a7aypt";
//  Siehe Dokument "Nachrichten_senden.pdf"
//  Bei WhatsApp und Signal kann nur ein Empfänger angegeben werden, da der Token 
//  zur Rufnummer passen muss.
//  Signal Beispiel: $User_Key[1] = "+491769000000";
//     $User_Key[1] = "";
//
//  ------------------------------------------------------------------------
//  Und jetzt eventuell für weitere Personen:
//
//  $Messengerdienst[2] = "";     // Pushover, WhatsApp oder Signal
//  $API_Token[2] = "";
//  $User_Key[2] = "";
//
//  $Messengerdienst[3] = "";     / Pushover, WhatsApp oder Signal
//  $API_Token[3] = "";
//  $User_Key[3] = "";
//
//*****************************************************************************
//  Sonnen Auf und Untergang:
//  Standort für Frankfurt. Wer es etwas genauer haben möchte, hier den eigenen
//  Standort eintragen. Bitte als Dezimalzahl wie hier vorgegeben!
//  $Breitengrad = 51.9921;
//  $Laengengrad = 6.9138;
//
//
/******************************************************************************
//  aWATTar Börsenpreise      aWATTar Börsenpreise      aWATTar Börsenpreise.
//
//  Sollen die aktuellen Strom Börsenpreise in die oben angegebene locale.
//  Datenbank in das Measurement "awattarPreise" geschrieben werden?
******************************************************************************/
//
$aWATTar = false;
//
$Aufschlag = "0";       // Z.B.  "20,6"        Preis des Aufschlages in Cent
//
$aWATTarLand = "DE";     // "DE" = Deutschland   "AT" = Österreich 
/******************************************************************************
//  ACHTUNG!   ACHTUNG!   ACHTUNG!   ACHTUNG!   ACHTUNG!   ACHTUNG!   ACHTUNG!
//
//  Alles ab hier nicht ändern! Nur auf Anweisung. Änderungen hier können
//  das System zum Absturz bringen.
/******************************************************************************
//  USB Device      USB Device      USB Device      USB Device      USB Device
******************************************************************************/
//
//  USB Device, die automatisch erkannt wurde...  bitte nicht ändern
//  Wird nicht bei der Multi-Regler-Version benötigt.
//
$USBRegler         = "";
//
//  Nur wenn die automatischer Erkennung nicht funktioniert hat, bitte manuell
//  eintragen. Im Normalfall wird das nicht benötigt. So lassen wie es ist.
//  ---  Nur bei Multi-Regler-Version  Nur bei Multi-Regler-Version  ----
//  Bei einer Multi-Regler-Version muss hier der Devicename manuell
//  eingetragen werden.
//
$USBDevice = "/dev/ttyUSB0";
//
//  Wird nur in seltenen Fällen gebraucht.
//  $SerielleGeschwindigkeit = "9600";
/*****************************************************************************/
//
/******************************************************************************
//  Raspberry Pi   Hardware   Raspberry Pi   Hardware   Raspberry Pi   Hardware
******************************************************************************/
// Bitte nicht ändern, wird automatisch ermittelt.
//
$Platine = "Raspberry Pi 4 Model B Rev 1.4";
//
/******************************************************************************
//  PHP Error Reporting        PHP Error Reporting        PHP Error Reporting
//  Bei ungeklärten Problemen hier einschalten. Normal = ausgeschaltet
******************************************************************************/
// error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE | E_STRICT);
//
//  Ist für die neue Datenbankstruktur des Alpha ESS Wechselrichters
//  Mit 0 kann die alte Struktur eingeschaltet werden.
$Alpha_ESS = 0;
// ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE ENDE
?>
<?php
Beste Grüße

mikep500
Beiträge: 39
Registriert: Do 14. Jul 2022, 06:26
Danksagung erhalten: 1 Mal

Re: Inbetriebnahme JK-BMS über RS485

Beitrag von mikep500 »

Baudtrate steht auf 9600. Stelle sie auf 115200.
Wie du oben lesen kannst hab ich den gleichen Fehler gehabt.
Letztendlich habe ich nur den Usb Steckplatz am Raspi getauscht un es gieng.

Antworten

Zurück zu „Regler, Wallboxen und Wechselrichter“