-> Hier kostenlos registrieren
Ja das ist richtig. Dann muss ich morgen nochmal schauen. Weil den wert den ich habe der macht keinen Sinn. Ich meld mich morgen nochmal. Erstmal danke.
Folge dem Video um zu sehen, wie unsere Website als Web-App auf dem Startbildschirm installiert werden kann.
Anmerkung: Diese Funktion ist in einigen Browsern möglicherweise nicht verfügbar.
Wie meinst Du das? Wie kann man SCL-Code in eine Zeile eines DB schreiben - als Kommentar?Du hast nochmal ein Extra DB erstellt und dann in einem Struct (Real). Ich habe dein SCL Netzwerk in eine Zeile in DB geschrieben. Wahrscheinlich muss ich da noch ne Struct draus machen.
Ja, ich lese alle Register aus.Hast du die Register auch ausgelesen und kannst mir eventuell einen Tipp geben
....und der Adressbereich deshalb eingeschränkt war.
Hallo,
ich hatte ein ähnliches Problem mit der 1200er. Damals lag es daran, dass die CPU eine Version3.x hatte und der Adressbereich deshalb eingeschränkt war.
Abhilfe: Eine CPU der Version 4.x verwenden.
Die Treiberbausteine werden im TIA automatisch in Abhängigkeit dieser Version eingebunden.
Danach flutschte alles wie gewünscht!
Viel Erfolg!
Gerhard
// Smartmeter Daten lesen
REGION Smartmeter_lesen
// MB_Client V5.1 - Achtung bei Umstellung vorher auf Test CPU versuchen und nach Update CPU Stopp - Start
// Beim CPU hochfahren und/oder wenn alle Verbindungen aus sind, im Abstand von 0,5 Sekunden neuen Abfrage Zyklus starten
IF "DB_Modbus_SM_lesen".Busy = FALSE AND "DB_Modbus_SM_lesen".Done = FALSE AND // Smartmeter - Modbus TCP nicht belegt
"DB_Modbus_WR_lesen".Busy = FALSE AND "DB_Modbus_WR_lesen".Done = FALSE AND // Wechselrichter Modbus TCP nicht belegt
"DB_Modbus_WR_lesen_DC".Busy = FALSE AND "DB_Modbus_WR_lesen_DC".Done = FALSE AND // Wechselrichter_DC Modbus TCP nicht belegt
"DB_Time".Clock.Flanke."0,5Hz_Impuls" = TRUE // 0,5 Sekunden Flanke! für Start
THEN
"DB_Modbus_SM_lesen".Start := TRUE;
ELSE
"DB_Modbus_SM_lesen".Start := FALSE;
END_IF;
// MB_Client
"MB_Fronius_SM_lesen"(REQ := "DB_Modbus_WR_lesen_DC".Done OR "DB_Modbus_SM_lesen".Start, //Takteingang MB_Client
DISCONNECT := "DB_Modbus_SM_lesen".Disconnect, //0=Kommunikationsverbindung zu über "Connect" eingestellten Partner herstellen
MB_MODE := "DB_Modbus_SM_lesen".MB_Mode, //Modbusmode: 0=Lesen
MB_DATA_ADDR := "DB_Modbus_SM_lesen".MB_Data_Addr, // (Modbus Funktion 3) bis zu 125 Halteregister auf der remote Adresse 0 bis 9.998 lesen
MB_DATA_LEN := "DB_Modbus_SM_lesen".MB_Data_Len, //Anzahl der zu lesenden Register
DONE => "DB_Modbus_SM_lesen".Done, //Das Bit am Ausgangsparameter DONE wird auf "1" gesetzt, sobald der letzte Modbus-Auftrag ohne Fehler ausgeführt wurde
BUSY => "DB_Modbus_SM_lesen".Busy, //0: Keine Modbus-Anfrage in Bearbeitung - 1: Modbus-Anfrage wird bearbeitet
ERROR => "DB_Modbus_SM_lesen".Error, //0: Kein Fehler - 1: Fehler aufgetreten. Die Fehlerursache wird über den Parameter STATUS angezeigt.
STATUS => "DB_Modbus_SM_lesen".Status, //siehe Statusliste in der Hilfe
MB_DATA_PTR := "DB_Modbus_SM_lesen".Holdingregister, //Zeiger auf einen Datenpuffer für die vom Modbus-Server zu empfangenden Daten
CONNECT := "DB_Modbus_SM_lesen".Fronius_Connect); //TCON_IP_v4: Abfrage Ziel Einstellung
END_REGION
// Wechselrichter Daten lesen
REGION Wechselrichter_Daten_lesen
"MB_Fronius_lesen"(REQ := "DB_Modbus_SM_lesen".Done,
DISCONNECT := "DB_Modbus_WR_lesen".Disconnect,
MB_MODE := "DB_Modbus_WR_lesen".MB_Mode,
MB_DATA_ADDR := "DB_Modbus_WR_lesen".MB_Data_Addr,
MB_DATA_LEN := "DB_Modbus_WR_lesen".MB_Data_Len,
DONE => "DB_Modbus_WR_lesen".Done,
BUSY => "DB_Modbus_WR_lesen".Busy,
ERROR => "DB_Modbus_WR_lesen".Error,
STATUS => "DB_Modbus_WR_lesen".Status,
MB_DATA_PTR := "DB_Modbus_WR_lesen".Holdingregister,
CONNECT := "DB_Modbus_WR_lesen".Fronius_Connect);
END_REGION
// Wechselrichter DC Daten lesen
REGION Wechselrichter_Daten_lesen
"MB_Fronius_lesen_DC"(REQ := "DB_Modbus_WR_lesen".Done,
DISCONNECT := "DB_Modbus_WR_lesen_DC".Disconnect,
MB_MODE := "DB_Modbus_WR_lesen_DC".MB_Mode,
MB_DATA_ADDR := "DB_Modbus_WR_lesen_DC".MB_Data_Addr,
MB_DATA_LEN := "DB_Modbus_WR_lesen_DC".MB_Data_Len,
DONE => "DB_Modbus_WR_lesen_DC".Done,
BUSY => "DB_Modbus_WR_lesen_DC".Busy,
ERROR => "DB_Modbus_WR_lesen_DC".Error,
STATUS => "DB_Modbus_WR_lesen_DC".Status,
MB_DATA_PTR := "DB_Modbus_WR_lesen_DC".Holdingregister,
CONNECT := "DB_Modbus_WR_lesen_DC".Fronius_Connect);
END_REGION
Wir verwenden essentielle Cookies, damit diese Website funktioniert, und optionale Cookies, um den Komfort bei der Nutzung zu verbessern.
Siehe weitere Informationen und konfiguriere deine Einstellungen