Bildverarbeitung mit TwniCAT, Stichwort Echtzeit - möglich?

quint

Level-1
Beiträge
3
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

der Plan ist für eine Anlagensteuerung TwinCAT zu verwenden. Es soll ein dauerhaft laufendes Förderband mittels Bildverarbeitung überwacht werden. Nun ist es ja meist so, dass mitgelierte Auswertungssoftware auf einem entsprechenden Kompakt-PC oder IPC verwendet werden kann; ansonsten werden auch SDKs zur eigenen Entwicklung bereitgestellt.

Die Frage ist:
Ist es möglich, unter dem Echtzeitaspekt eine Anwendung IN TwinCAT selber zu programmieren, die solch ein SDK des Kameraherstellers nutzt? Ich denke da z.B. an die ADS-Schnittstelle unter Nutzung von C#. Ich hoffe, die Frage ist soweit verständlich.

Danke im Voraus und viele Grüße!
 
Da würde ich die Software auf dem Twincat-IPC mit installieren. Die Kommunikation zu Twincat könnte dann über die Standardschnittstellen erfolgen, sprich IO/NIO.
Ich hatte mal ein ähnliches Gedankenspiel, habe es dann aber stark vereinfacht, mangels erweiterter Fähigkeiten meinerseits.
 
Schreib doch mal etwas mehr zu deiner Bildverarbeitung.
Welches System willst du da nutzen - ggf. Halcon ?
Wenn du das unter/mittels C# programmierst dann läuft es nicht mehr im TwinCat - kann aber mittels ADS natürlich damit kommunizieren.

Gruß
Larry
 
Was meinst du denn mit Echtzeit? Die Zeit in der die Kameradaten in das Steuerungsprogramm gelangen sollen? Oder die allg. Abarbeitung des Steuerungsprogramms?
Der TwinCAT Echtzeittreiber wird immer versuchen dafür zu sorgen, dass dem PLC Programm genügend Rechenleistung zur Verfügung gestellt wird um die eingestellte Zykluszeit zu halten. Alles Andere wird dem hinten angestellt (Windows und alle anderen Programme die noch da drauf laufen).
Auf einer Multicore Steuerung (embedded CX oder IPC) kannst du deinen Anwendungen dedizierte CPU-Kerne zuweisen (TwinCAT 2 nutzt immer nur den ersten Kern, die anderen sind dann frei für die Kamera, TwinCAT 3 64Bit kann auf beliebigen Kernen (auch mehrere) laufen).

IdR kann kann man sich ja von Kameraherstellern Testsysteme zur Evaluierung ausleihen (wir haben das schon mehrfach gemacht). Dann installierst du dir TwinCAT 3 und die Kamerasoftware auf dem gleichen PC (ein vernünftiger Office-PC sollte zu probieren ausreichen). Wie die Kommunikation zw. Kamera und TwinCAT kann dann z.B. über ADS laufen oder aber auch über TCP/IP oder UDP, etc. Das hängt dann von der Kamerasoftware ab.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@Larry: Ich habe noch kein spezielles System ausgesucht, ich will mich im Vorhinein informieren, wie die Anbindung möglich ist. Dann erst möchte ich ein konkretes System aussuchen.

@MasterOhh: Echtzeit in dem Sinne dass meine Auswertungssoftware gewissermaßen mit einem Förderband synchronisiert werden muss; ich möchte also direkt nach der Bildaufnahme wissen, wohin ich die Stellmotoren fahren muss, und das immer gleich "langsam" und zuverlässig. Das TwinCAT darf diesen Prozess nicht rauskicken, weil es z.B. selbst die Rechenleistung benötigt. Das mit dem Ausleihen ist eine gute Idee, vielen Dank!
 
Wenn du zu einem bestimmten Zeitpunkt (definiert z.B. über dein Förderband) ein Bild machen willst gibt es nun mehrer Varianten je nach Kamera und möglichen Interfaces.
1) Boolscher Ausgang triggert deine Kamera -> das geht extrem genau mit Timestamp klemmen (µs Bereich).
2) Via Ethernet
a) du sendest das Trigger-Signal exakt zu einem Taskzyklus ein Ethernet Telegramm: Dafür benötigst du die TF6311 und TC3 da hier die Schnittstelle als Echtzeit-EA betrachtet werden kann. Genauigkeit also im Taskzyklus.
b) du sendest das Trigger-Signal über die TF6310 über den Windows-Stack. Hier gibt es Ungenauigkeiten >> dem Taskzyklus. Das heisst ausprobieren und Testen
3) eventuell gibt es auch die Option der Kamera eine Zeit für die Aufnahme zu schicken -> dann müssten aber die Uhr vom TwinCAT mit dem der Kamera abgeglichen werden. Das wird relativ aufwendig.

Die Echtzeit der PLC ist immer wie schon in den Freds vorher erzählt prioritär vor Windows und solange genug Power im System ist ist alles gut.
Dass die Bilder bzw. die Auswertung der Bilder (falls dies auf der Kamera direkt erfolgt) dann "spaeter" erfolgt sollte nicht relevant sein.

Also ueberlege dir welche Genauigkeit fuer den Trigger brauchst und dann musst du in den Katalogen suchen wer/was hat. Teststellungen sind nie verkehrt.

Guga
 
Zurück
Oben