KOP in Node-Red

iiot2k

Level-1
Beiträge
15
Reaktionspunkte
2
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
habe mal angefangen Nodes für Kontaktplan in Node-Red zu programmieren.
Die Grundelemente Contact, Coil, Timer, Counter u.s.w sind implementiert.
Schreibe zu den Nodes auch eine Einleitung dazu.
Natürlich möchte ich auch Beispiele aus der Praxis dazu geben.
Wo kann ich Beispiele für Kontaktplan Anwendungen finden ?
Wenn euch diese Nodes interessieren, kann ich diese wenn fertig hier veröffentlichen.
Vielen Dank für eure Hilfe.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
habe mal ein einfaches Beispiel erstellt für eine Tankkontrolle.

Hier das Original:

Die Profis hier werden natürlich die Nase rümpfen.
Für den Test habe ich ein Raspberry Pi verwendet.

Die Pinbelegung:

GPIO21 : Start füllen
GPIO20 : Stop füllen
GPIO16 : Leer-Schalter
GPIO12: Gefüllt-Schalter
GPIO23: Auslass-Ventil
GPIO24: Einlass-Ventil
TANK.pngTANK_CONTROL.png
 
Vielen Dank für deinen Lob.
Hoffe, dass ich das mit dem Prozessabbild für die E/As richtig verstanden habe.
Alle Variablen werden im Node-Red globalen Speicher (Context) abgelegt und sind von jeder Node erreichbar.
Die orangenen Treiber Nodes (rpi-gpio-in, rpi-gpio-out) sind aus performance Gründen in Javascript/C++ geschrieben.
Momentan existieren diese Treiber Nodes (DI, DO, PWM, ADC, DAC ..) für den Raspberry Pi.
Gerne würde ich diese Treiber auch für andere industrielle Steuerungen schreiben, auf denen Node-Red läuft.
Die Daten für den KOP können auch von externen Quellen kommen (z.B OPC-UA, MQTT, Modbus, andere PLC).
Auch können die KOP Daten zu externen Quellen gesendet werden.
Dafür habe ich Import/Export Nodes geschrieben.
Glaube dass Node-Red mit seinen Möglichkeiten der größte Vorteil ist.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Vielen Dank für deinen Lob.
Hoffe, dass ich das mit dem Prozessabbild für die E/As richtig verstanden habe.
Alle Variablen werden im Node-Red globalen Speicher (Context) abgelegt und sind von jeder Node erreichbar.
Die orangenen Treiber Nodes (rpi-gpio-in, rpi-gpio-out) sind aus performance Gründen in Javascript/C++ geschrieben.
Momentan existieren diese Treiber Nodes (DI, DO, PWM, ADC, DAC ..) für den Raspberry Pi.
Gerne würde ich diese Treiber auch für andere industrielle Steuerungen schreiben, auf denen Node-Red läuft.
Die Daten für den KOP können auch von externen Quellen kommen (z.B OPC-UA, MQTT, Modbus, andere PLC).
Auch können die KOP Daten zu externen Quellen gesendet werden.
Dafür habe ich Import/Export Nodes geschrieben.
Glaube dass Node-Red mit seinen Möglichkeiten der größte Vorteil ist.
Prozessabbild bedeutet, dass der Wert von Eingangsvariablen zu Beginn des Flows eingelesen wird und sich während der Abarbeitung nicht ändert.
Die Ausgänge werden am Ende des Flows an die Hardware ausgegeben. Also Einlesen -> Abarbeiten -> Ausgeben.
Das entspricht der Arbeitsweise der meisten SPSen.
 
Ok, jetzt habe ich es verstanden.
Die KOP Nodes lesen/schreiben nur die globalen Variablen.
Die Treiber Nodes (orange) lesen/schreiben diese globalen Variablen und führen die I/O Operationen aus.
Deshalb stehen diese auch am Anfang.
Der graue Node mit den 4 Ausgängen sendet ein True in Reihenfolge beginnend mit dem 1. Ausgang.
Dies stellt die bei SPS erforderliche SOP (Sequence of Operation) sicher.
Die Anzahl der Ausgänge (Rungs) kann frei gewählt werden.
Es ist sogar möglich mehrere KOP in Node-Red ablaufen zu lassen.
 
Ich hab aktuell kein Node RED am Laufen, ansonsten hätte ich es gerne getestet.
Gerade für die vielen "Smarthome-Bastler" ist es eine sehr interessante Sache.
An so vermeintlich simplen Logikverknüpfungen haben sich schon viele die Zähne in Node RED ausgebissen.
Die Idee mit den externen Quellen macht richtig Sinn.
Als ich noch viel mit Node RED gemacht habe, habe ich bei größeren Geschichten im IoT- oder Smarthome-Umfeld auch immer versucht mich an die Arbeitsweise einer SPS zu nähern.
Bei vielen logischen Abhängigkeiten ist die zyklische Bearbeitung einfach übersichtlicher als die reine Eventbearbeitung
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Musste auch viel programmieren, damit KOP in Node-Red auch
so funktioniert wie ich es mir vorgestellt habe.
Natürlich müssen die Nodes auch richtig funktionieren.
Die Anzahl der Kombinationen und Einstellungen der Nodes ist sehr hoch.
Daher ist ein Test mit praktischen KOP Anwendungen sehr wichtig.
Deswegen habe ich hier die User nach KOP Beispielen gefragt.
 
Bin dabei die KOP Nodes zu testen.
Nodes für den Raspi GPIO sind fertig.
Nodes für ADC, DS18B20 und Kaftan Rpi Shield sind in Arbeit.
Später kommen noch andere IO Nodes dazu (bin für Vorschläge offen).
Wenn die Nodes online sind, gebe ich hier die Links bekannt.
Denke, das es nächste Woche sein wird.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo liebe SPS Fans,

habe die KOP Nodes online gestellt.
Hier habt Ihr erstmal einen Überblick und es ist dort eine kleine Einführung in das Thema (in englisch).


Habe auch den Treiber Node für den Wago Kontroller CC100 entwickelt.


Dieses Projekt war eine Idee von mir und wird auch nicht von irgendeiner Firma finanziert.

Das gesamte Thema ist sehr Komplex.
Bin offen für eure Kommentare und Vorschläge
Wenn Ihr ein Fehler findet, bitte teilt es mir mit.

Hoffe, dass meine Arbeit für euch nützlich ist.

Viele Grüße
 
Hallo,

und vielen Dank für Deine Arbeit!
Ich verfolge dieses Thema mit großem Interesse.
Da ich beruflich viel mit SPS- Technik zu tun habe, würde ich gern diese Nodes nutzen um meine Smart Home Anwendungen damit zu steuern.
Bei meinen Smart Home habe ich größtenteils Shelly Komponenten verbaut.
Auch diese konnte ich mit passenden Nodes auch schon einbinden.
Mir ist aber nicht klar, wie ich den Shelly Ein- und Ausgängen SPS Ein- und Ausgängen zuweisen kann.
Gibt es jemanden der da vielleicht helfen kann?

Viele Grüße
 
Hallo,

und vielen Dank für Deine Arbeit!
Ich verfolge dieses Thema mit großem Interesse.
Da ich beruflich viel mit SPS- Technik zu tun habe, würde ich gern diese Nodes nutzen um meine Smart Home Anwendungen damit zu steuern.
Bei meinen Smart Home habe ich größtenteils Shelly Komponenten verbaut.
Auch diese konnte ich mit passenden Nodes auch schon einbinden.
Mir ist aber nicht klar, wie ich den Shelly Ein- und Ausgängen SPS Ein- und Ausgängen zuweisen kann.
Gibt es jemanden der da vielleicht helfen kann?

Viele Grüße
Deleted by User
 
Zuletzt bearbeitet:
Zurück
Oben