Controller 750-8202 - Smartmeter Programm

Violett

Level-1
Beiträge
14
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich bin ein ziemlicher Neuling in dem Bereich und komme leider nicht weiter.
Derzeit bearbeiten wir an der Abendschule ein Diplomprojekt zu diesem Thema, doch leider haben wir viel zu wenig zum Thema WAGO e!COCKPIT gemacht und nun stehe ich an.
Hat zufällig jemand eine Hilfestellung, Anleitung oder Sonstiges für mich, um einen Smartmeter zu programmieren?
In dem Projekt handelt es sich um eine Übungstafel, mit verschiedenen Komponenten darauf, DALI sowie auch KNX, Beswegungsmelder etc.

Nun soll über den 750-8202 und einem Smartmeter, das wäre dieser hier: https://www.voltus.de/elektromateri...phasen-zweirichtungs-wechselstromzaehler.html

Von allen Verbrauchern und allem was so angeschlossen ist, die Daten: Spannung, Frequenz, Strom und Cosinus(phi) ausgelesen werden und in einer Visu angezeigt werden. Doch leider hab ich absolut keinen Plan wie man das programmiert, ohne einer Steckkarte 750-646 oder dem M-Bus, leider haben wir nur dazu einmal ein Bsp gemacht, im Unterricht.

Hier soll nur Modbus verwendet werden und die Schnittstelle RS-485.

Gibt es hier jemanden der mit etwas helfen könnte, leider bekomme ich seitens der Schule keine Antworten oder Betreuung, daher versuche ich es einmal hier.
Anbei ist ein Bild von dem Augbau den ich derzeit zu Hause habe.

Vielen Dank vorab und LG
 

Anhänge

  • IMG_20220210_085823.jpg
    IMG_20220210_085823.jpg
    402 KB · Aufrufe: 29
Hallo,

entweder benutzt Du den Modbus Feldbuskonfigurator:
Um diese Inhalte anzuzeigen, benötigen wir die Zustimmung zum Setzen von Drittanbieter-Cookies.
Für weitere Informationen siehe die Seite Verwendung von Cookies.
Doku:
C:\ProgramData\Wago Software\e!COCKPIT\Documentation\e!COCKPIT_Modbus-Konfigurator_Handbuch_D.pdf

oder die Bibliothek WagoAppPlcModbus:
C:\ProgramData\Wago Software\e!COCKPIT\Documentation\LibraryDocumentation\Manuals\WAGO\WagoAppPlcModbus
In der Bibliothek findest Du noch ein ausführlicheres PDF Dokument und ST Beispielcode.

Grüße

Edit:

Beim Konfigurator ziehst Du für Moddbus RTU statt der grauen Line einfach die schwarze.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wie Du den Zähler abfragst beschreibt Tobsuchts Beispiel sehr schön.

Beim Hersteller findest Du noch das ModBus-Registerverzeichnis des Zählers.
Da stehen die Adressen drin und die sagen Dir, in welchem Register die gewünschte Information zu finden ist und mit welchem Funktionscode Du da dran kommst.

Damit hast Du theoretisch alle Infos.
RS-485 machst Du dann über die COM-Schnittstelle des Controllers. Die ist ja (zumindest dem Bild nach zu urteilen) nicht in Benutzung. Du brauchst also keine weitere Karte.
 
Wie Du den Zähler abfragst beschreibt Tobsuchts Beispiel sehr schön.

Beim Hersteller findest Du noch das ModBus-Registerverzeichnis des Zählers.
Da stehen die Adressen drin und die sagen Dir, in welchem Register die gewünschte Information zu finden ist und mit welchem Funktionscode Du da dran kommst.

Damit hast Du theoretisch alle Infos.
RS-485 machst Du dann über die COM-Schnittstelle des Controllers. Die ist ja (zumindest dem Bild nach zu urteilen) nicht in Benutzung. Du brauchst also keine weitere Karte.
Vielen Dank, ja genau es soll über die RS-485 dann gemacht werden.
Den Smartmeter selbst habe ich leider noch nicht, nur den Aufbau der oben am Bild zu sehen ist.
Vielen lieben Dank, ich versuche das nun irgendwie mit der Bibliothek hinzubekommen.
Bei mir scheiterts halt daran das ich keinen Plan vom Code habe und nicht weiss was ich da reinschreibe, das soll nämlich St-text werden, daher hoffe ich, das ich mit der Anleitung aus dem ersten Kommentar was anfangen kann.

LG
 
Hallo Leute erst einmal vielen Dank für eure Hilfe.
Ich habs nun wenigstens geschafft das Ding mit der Bibliothek: WagoAppPlcModbus aufzubauen.
Aber nun frage ich mich, wo kann ich nun die Variablen vergeben bzw den Befehl, dass ich die Spannung, Strom, Freuquenz und die Leistung benötige?
Den ich möchte dann, dass in der Visu steht:

Spannung ..... V
Strom....A usw

Wisst ihr wie ich das mache? Leider weiss ich nicht wie ich diese Register aus dem Link: https://www.eastroneurope.com/images/uploads/products/protocol/SDM120-MODBUS_Protocol.pdf
da reinmache? Bzw wohin ich das schreibe und wie.

LG
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Das Dokument beschreibt doch schon ganz gut wie Modbus funktioniert.
Die Bezeichnungen aus der PDF und dem Datentyp typMbQuery decken sich auch ganz gut.

Die Slave Address nennt sich in der Struktur bUnitId.

Das Address Register aus der PDF gibt nicht direkt die Modbus Adresse an.
Dazu können die Beispiele betrachtet werden.

Die führende Ziffer 3xxxx und 4xxxx gibt die Unterscheidung zwischen Input Register (3xxxx lesen mit FC4) und Holding Register (4xxxx lesen mit FC3 und schreiben mit FC16). Der restliche Wert muss noch mit 1 subtrahiert werden und ergibt dann die Modbus Adresse.

Also für die Spannung ist Address Register 30001 ein Input Register: bFunctionCode = 4, uiReadAddress = 0 und uiReadQuantity = 2 (der Wert hat eine Größe von 4 Byte und ein Modbus Register eine Größe von 2 Byte).
Die beiden Registerwerte aus dem awData Array aus der Antwort in utResponse muss dann in eine Real Variable kopiert werden.
Dies kannst Du z.B. mit einem Union machen.

Die Modbus Datenpunkte müssen wohl einzeln gelesen werden. Daher musst Du die Anfrage utQuery vor jeder Anfrage anpassen.
Entweder mit einem Array of typMbQuery oder Du modifizierst uiReadAddress nach jeder Anfrage.

Grüße
 
Zurück
Oben