Sonstiges Machbarkeit eines Projektes mit Siemens LOGO!

Slobo

Level-1
Beiträge
12
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Guten Tag nochmal,

bevor ich mich auf eine Lösung mit einer Siemens LOGO! versteife und evtl. unnötig zu viel Zeit investiere wollte ich nochmal die Frage der generellen Machbarkeit für mein Projekt in den Raum stellen. Daher mache ich mal ein neues Thema auf, parallel zu Link. Ich hoffe, dass das in Ordnung ist.

Was soll insgesamt gemacht werden? Es soll eine Kommunikation zwischen dem Netzbetreiber und einer PV-Anlage hergestellt werden. Hierbei haben sowohl das Kommunikationsgerät des Netzbetreibers, als auch die PV-Anlage unterschiedliche Schnittstellen. Zur "Übersetzung" und für kleinere Umrechnungen soll eine SPS verwendet werden, weil mir auf die Schnelle keine smartere Lösung eingefallen ist. Leider haben klassische Industrie-SPS (Beispiel: PFC200) aktuell sehr hohe Lieferzeiten und sind vermutlich auch nicht ganz so einfach zu programmieren und sind natürlich teurer. Da habe ich mich daran erinnert, dass wir im Studium mit der Siemens LOGO! gearbeitet haben und hoffe nun, dass das Projekt hiermit umsetzbar ist.

Übersichtlich dargestellt:
1669300676054.png

Als Setup habe ich mir Folgendes herausgesucht:
Controller inkl. DI und DO: Link
AI: Link
AO: Link

Meine Frage wäre wie gesagt, ob das Projekt mit eine LOGO! umsetzbar ist. Meine Bedenken sind hierbei:
1) Kann der analoge Ausgang nur ganzzahlige mA-Werte ausgeben (also 4, 5, 6...20). Oder geht das auch genauer?
2) Setzen und Empfangen von Modbus TCP-Werten/Register im richtigen Format (16/32bit, un/signed, float etc.)
3) DO als potentialfreie Kontakte. Der Controller der LOGO! hat pro DO zwei Kontakte (Relais). Die Fernwirktechnik erwartet aber nur einen als Eingang.


Über konstruktives Feedback würde ich mich freuen und bedanke mich im Vorfeld.

Liebe Grüße
Marvin
 
Meine Frage wäre wie gesagt, ob das Projekt mit eine LOGO! umsetzbar ist. Meine Bedenken sind hierbei:
1) Kann der analoge Ausgang nur ganzzahlige mA-Werte ausgeben (also 4, 5, 6...20). Oder geht das auch genauer?
Die Analog-Ausgänge können für 00,00-20,00mA über einen Integer-Wert 0-1000 gesteuert werden.
Macht eine mögliche Genauigkeit von ca. 0,02mA.
Die Eingänge haben die gleiche Genauigkeit.
Nutzt Du 4-20mA entfällt der Wertebereich von 0-200.


Meine Frage wäre wie gesagt, ob das Projekt mit eine LOGO! umsetzbar ist. Meine Bedenken sind hierbei:
2) Setzen und Empfangen von Modbus TCP-Werten/Register im richtigen Format (16/32bit, un/signed, float etc.)
Modbus TCP ist möglich.
Die LOGO! selbst kann nur mit Integer-Werten von -32.768 bis 32.767 hantieren.
Es gibt bei der aktuellen Version aber 2 Bausteine, um diese Werte in/vom Float-Format für die Kommunikation mit Fremdgeräten zu konvertieren.


Meine Frage wäre wie gesagt, ob das Projekt mit eine LOGO! umsetzbar ist. Meine Bedenken sind hierbei:
3) DO als potentialfreie Kontakte. Der Controller der LOGO! hat pro DO zwei Kontakte (Relais). Die Fernwirktechnik erwartet aber nur einen als Eingang.
Bei Relaiskontakten musst Du für jeden Kontakt die (Fremd-) Spannung "liefern", um sie dann geschalten für Deine Fernwirktechnik zurück zu bekommen. Die Spannung kann dabei in einem weiten Bereich relativ beliebig und auch für jeden Relaiskontakt verschieden sein.
Bei Transistorkontakten musst Du einmal (12)24V (Fremd-) Spannung für alle Ausgänge der Gruppe gemeinsam "liefern", um sie dann geschalten für Deine Fernwirktechnik zurück zu bekommen. Die Spannung ist nicht beliebig, sondern fest vorgegeben.


:unsure:
Der wirkliche Knackpunkt wird wohl sein, ob Du Deine gewollte Rechnerei (z.B. durch Dezimalverschiebung) in den Integerbereich bekommst?!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Als Setup habe ich mir Folgendes herausgesucht:
Controller inkl. DI und DO: Link
AI: Link
AO: Link
Das Logo-Grundmodul (der Controller) hat schon 4 analoge (relativ langsame) Eingänge 0-10V onboard, die man durch simples parallelschalten eines 500 Ohm Widerstandes (2x 1 kOhm parallel geht auch) zu 0-20mA umbauen kann. So könntest Du evtl. das AI-Modul AM2 einsparen.

Wie schnell müssen die Analogsignale von der Fernwirktechnik an den PV-Regler weitergegeben werden?

Harald
 
Also Logo wäre so ziemlich das Letzte was ich für die Aufgabe verwenden würde.
Die Analogwertverarbeitung ist eingeschränkt, Rechnen hat auch viele Beschränkungen und Modbus genauso.
Bei Modbus ist oft das Problem, dass Byteorder und / oder Zahlenformate angepasst werden müssen.
Bei PV-Umrichtern wird oft das SunSpec-Protokoll verwendet. Da gibt es ein paar Ecken und Kanten.
Wenn du keine "vernünftige" SPS verwenden willst, dann würde ich dir ein IoT-Gateway mit ein paar IOs und Node RED als Software empfehlen
 
Das Logo-Grundmodul (der Controller) hat schon 4 analoge (relativ langsame) Eingänge 0-10V onboard, die man durch simples parallelschalten eines 500 Ohm Widerstandes (2x 1 kOhm parallel geht auch) zu 0-20mA umbauen kann. So könntest Du evtl. das AI-Modul AM2 einsparen.
Und wenn Du den Kram (sofern Du dabei bleiben möchtest) bei Völkner (ist der gleiche Verein wie Conrad, sogar die Conrad-Nummern funktioneren dort) bestellst, ist er auch noch mal einiges günstiger:

Conrad:
1669307732932.png

Völkner:
1669307792946.png
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Guten Morgen,

zunächst vielen Dank für die Rückmeldungen!

Die Analog-Ausgänge können für 00,00-20,00mA über einen Integer-Wert 0-1000 gesteuert werden.
Macht eine mögliche Genauigkeit von ca. 0,02mA.
Die Eingänge haben die gleiche Genauigkeit.
Nutzt Du 4-20mA entfällt der Wertebereich von 0-200.
Das ist sehr gut zu wissen. Ist das immer so, oder muss man das einstellen? Das heißt also bspw. bei anliegenden 10mA wird ein Wert von 500 ausgegeben, richtig?

Modbus TCP ist möglich.
Die LOGO! selbst kann nur mit Integer-Werten von -32.768 bis 32.767 hantieren.
Es gibt bei der aktuellen Version aber 2 Bausteine, um diese Werte in/vom Float-Format für die Kommunikation mit Fremdgeräten zu konvertieren.
Diese Blöcke hatte ich auch schon in's Auge gefasst. Leider bin ich noch nicht ganz dahinter gekommen, wie man die entsprechenden Werte dann in das entsprechende Register des PV-Reglers schreibt bzw. aus diesem herausliest. Siehe mein anderes Thema: Link

Außerdem stehen in den Blöcken meines Wissens nur die Formate float und double zur Verfügung. Für den PV-Regler werden aber folgende Formate benötigt:
- 32bit float (sollte ja kein Problem sein)
- 16 bit unsigned (welchem Format entspricht das im Block?)
- 32 bit signed (welchem Format entspricht das im Block?)

Bei Relaiskontakten musst Du für jeden Kontakt die (Fremd-) Spannung "liefern", um sie dann geschalten für Deine Fernwirktechnik zurück zu bekommen. Die Spannung kann dabei in einem weiten Bereich relativ beliebig und auch für jeden Relaiskontakt verschieden sein.
Bei Transistorkontakten musst Du einmal (12)24V (Fremd-) Spannung für alle Ausgänge der Gruppe gemeinsam "liefern", um sie dann geschalten für Deine Fernwirktechnik zurück zu bekommen. Die Spannung ist nicht beliebig, sondern fest vorgegeben.
Ok, die Meldespannung beträgt 24VDC, da ich aber nur einen DO benötige, ist es eigentlich egal, ob ich Relais oder Transistor nehme, richtig?

:unsure:
Der wirkliche Knackpunkt wird wohl sein, ob Du Deine gewollte Rechnerei (z.B. durch Dezimalverschiebung) in den Integerbereich bekommst?!
Das stimmt natürlich, bei einer Anlagenleistung von 270kW = 270.000W wäre das ja schon >32.767. Das ist dann wohl das KO-Kriterium, oder gibt es da Work-Arounds? Man könnte ja zum Beispiel den Rückgabewert der aktuellen Leistung direktdurch 10 teilen, dann müsste es gehen. Dann wäre man halt nur auf 10W genau, aber das sollte ausreichen.

Vielen Dank und liebe Grüße
Marvin
 
Zuletzt bearbeitet:
Außerdem stehen in den Blöcken meines Wissens nur die Formate float und double zur Verfügung. Für den PV-Regler werden aber folgende Formate benötigt:
- 32bit float (sollte ja kein Problem sein)
- 16 bit unsigned (welchem Format entspricht das im Block?)
- 32 bit signed (welchem Format entspricht das im Block?)

32bit Float kann nur zur Anzeige gebracht werden. Es kann aber nicht damit gerechnet werden.
Das Nadelöhr ist die 16bit Integer-Begrenzung bei mathematischen Funktionen.

Die Logo kennt kein 16bit Unsigned, nur 16 Bit Signed. Von 16 Bit Unsigned kann nur der Bereich von 0 - 32.767 genutzt werden.
Auch bei 32bit Signed kann sie nur den Bereich -32.768 - 32.767 nutzen.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin,

Also Logo wäre so ziemlich das Letzte was ich für die Aufgabe verwenden würde.
Die Analogwertverarbeitung ist eingeschränkt, Rechnen hat auch viele Beschränkungen und Modbus genauso.
Bei Modbus ist oft das Problem, dass Byteorder und / oder Zahlenformate angepasst werden müssen.
Bei PV-Umrichtern wird oft das SunSpec-Protokoll verwendet. Da gibt es ein paar Ecken und Kanten.
Wenn du keine "vernünftige" SPS verwenden willst, dann würde ich dir ein IoT-Gateway mit ein paar IOs und Node RED als Software empfehlen
Danke für den Hinweis. Ich dachte halt an eine LOGO, weil man mit einer "Richtigen SPS" ja mit Kanonen auf Spatzen schießen würde, für die verhältnismäßig simple Anwendung. Da sind dann Preis und insb. Wartezeit nicht verhältnismäßig.

Ich verstehe nur nicht genau, was du meinst. Die Modbus-Register des PV-Reglers sind ja in dessen Handbuch eindeutig beschrieben:
1669360714364.png

Grüße
Marvin
 
Ich verstehe nur nicht genau, was du meinst. Die Modbus-Register des PV-Reglers sind ja in dessen Handbuch eindeutig beschrieben:
Anhang anzeigen 65179

Stimmt die Register sind beschrieben ... Aber nicht die Byte-Order (little oder big endian)

Auf den ersten Blick hört sich Modbus TCP immer klasse an, aber der Teufel steckt im Detail.
Fängt bei den Register-Nummern, geht über die Byte-Order bis hin zu den Gleitpunktformaten.
Bei Modbus-Verbindungen ist es immer von Vorteil, wenn einer der beiden Partner flexibel und anpassbar ist.
 
auch nicht das, was ich kurz danach ergänzt hatte:
Das stimmt natürlich, bei einer Anlagenleistung von 270kW = 270.000W wäre das ja schon >32.767. Das ist dann wohl das KO-Kriterium, oder gibt es da Work-Arounds? Man könnte ja zum Beispiel den Rückgabewert der aktuellen Leistung direktdurch 10 teilen, dann müsste es gehen. Dann wäre man halt nur auf 10W genau, aber das sollte ausreichen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
32bit Float kann nur zur Anzeige gebracht werden. Es kann aber nicht damit gerechnet werden.
Das Nadelöhr ist die 16bit Integer-Begrenzung bei mathematischen Funktionen.
Dass 32bit Float nur zur Anzeige gebracht werden kann, sollte ja kein Problem sein, das benötige ich nur für die cosphi-Sollwertvorgabe

Die Logo kennt 16bit Unsigned, nur 16 Bit Signed. Von 16 Bit Unsigned kann der Bereich von 0 - 32.767 genutzt werden.
Auch bei 32bit Signed kann sie nur den Bereich -32.768 - 32.767 nutzen.
ok, verstehe. Aber dann würde ich doch mit 27.000 (270.000W/10) hinkommen. Dann wäre meine Genauigkeit 10W, das sollte reichen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
:unsure:
Nur mit dem HighWORD weiter "machen".
Ist aber halt keine genaue Dezimalskalierung. Anzeige würde man aber sicher hinbekommen,

Oder nur die glatten kW übertragen.
Mit dem HighWORD weitermachen wäre kein Problem. Der Netzbetreiber bekommt am Ende ja nur das 4-20mA-Signal. Ob das nun auf 1W oder auf 10W genau ist, ist zum einen nicht vorgeschriebenen und würde zum anderen vermutlich gar nicht auffallen.

Glatte kW wären dann wiederum doch zu ungenau.
 
Zurück
Oben