Getaktete Anwndung mit absoluter Korrektur
HINWEIS: Das im Folgenden beschriebene Programm ist nur als Beispiel zu sehen und zeigt lediglich die prinzipelle Verwendung der POU FB_TpDistanceControl in Kombination mit anderen Funktionsbausteinen der Bibliothek PD_PacDriveLib.
Es ist nicht sichergestellt, dass alle möglichen Situationen des Betriebs mit allen Parameterkombinationen abgefangen sind.
Bevor Sie unter Verwendung der POUs in der Bibliothek eine Lösung (Maschine oder Prozess) für eine spezifische Anwendung bereitstellen, sind relevante Best Practices zu prüfen, anzuwenden und zu vervollständigen. Hierzu gehören u. a. Risikoanalyse, Funktionssicherheit, Komponentenkompatibilität, Prüfung und Systemabnahme, sofern ein Bezug zur Bibliothek gegeben ist.
|
UNSACHGEMÄSSE VERWENDUNG DER POUS |
oFühren Sie für die betroffene Anwendung und die installierten Geräte eine sicherheitstechnische Analyse durch. oVergewissern Sie sich, dass die POUs mit den Geräten in Ihrem System kompatibel sind und den ordnungsgemäßen Betrieb des Systems nicht auf unbeabsichtigte Weise beeinträchtigen. oVerwenden Sie geeignete Parameter, insbesondere für die Grenzwerte, und kontrollieren Sie Abnutzung und Stoppverhalten der Maschine. oStellen Sie sicher, dass die Sensoren und Stellglieder mit den ausgewählten POUs kompatibel sind. oBei der Prüfung und Inbetriebnahme sind sämtliche Funktionen in allen Betriebsarten einem gründlichen Test zu unterziehen. oStellen Sie in Übereinstimmung mit der durchgeführten sicherheitstechnischen Analyse und allen geltenden Regeln und Vorschriften unabhängige Verfahren für kritische Steuerungsfunktionen bereit (Nothalt, Überschreitung der Grenzbedingungen usw.). |
Die Nichtbeachtung dieser Anweisungen kann Tod, schwere Verletzungen oder Sachschäden zur Folge haben. |
Das Beispielprogramm für die hier beschriebene Anwendung befindet sich im Demoprojekt PrintMarkControlExample im Equipmentmodul SR_StartStopAbsoluteCorrection.
Ziel dieser Lösung ist eine exakte Ausrichtung von Produkten zu einer Bearbeitungsstation (Messer), unabhängig von deren Abstand. Der Abstand des Touchprobe-Sensors zum Schnittpunkt kann frei gewählt werden.
Um einen harmonischen Prozess zu gewährleisten, sollte der Abstand des Touchprobe-Sensors zum Schnittpunkt größer als der normale Produktabstand sein. Die Positionen von bis zu 16 Produkten werden in einem FiFo gespeichert (Gc_diMaxNumberOfElementsInFiFo). Das Messer ist ein einfacher Aktor, der über ein Signal angesteuert wird.
Das Prinzip der Korrektur besteht darin, die erfassten Abstände als Positionierziel vorzugeben:
Für die Erfassung des ersten Teils wird eine Positionierung mit einer großen Strecke gestartet. Mit dem ersten Touchprobe wird das Ziel der laufenden Positionierung zur Touchprobe-Position + TpNp-Abstand korrigiert. Wenn nach Erreichen der Zielposition und nach dem Abschluss der Bearbeitung ein weiteres Teil erfasst wird, wid der Messwert sofort als Positionierung wiederverwendet (lrTarget:= fbTpDistanceControl.GetValue()). Wenn kein weiteres Teil erkannt wurde, wird wieder so verfahren wie beim ersten Teil.
Schematische Darstellung der Mechanik
Ein Band fördert Produkte unter eine Bearbeitungsstation. Während der Bearbeitung steht der Vorschub. Die Bearbeitung selbst ist in der Regel ein einfacher Aktor, der über ein Signal angesteuert wird und entweder über eine Zeit oder über einen Kontakt eine Meldung der Fertigstellung liefert.
Die Position wird über einen Sensor und die POU FB_TpDistanceControl erfasst. Die Abstände können dabei stark variieren. Es können bis zu 16 Produkte (Gc_diMaxNumberOfElementsInFiFo) zwischen Touchprobe-Sensor und Bearbeitungsstations vorhanden sein. Da die Produkte zur Bearbeitung unter dem Werkzeug stehen müssen, wird der Vorschub über einen Positionierbaustein ausgeführt.
Logische Verbindung der Achsen und logischen Geber
Zum Messen der Vorschubposition wird ein logischer Geber verwendet. Dieser ist nur notwendig, weil die POU FB_TpDistanceControl nicht direkt mit einer Achse verbunden werden kann. Der Funktionsbaustein verbindet den LogicalEncoder während der Aktivierung des Funktionsbausteins mit der Achse.
Steuerung des Equipmentmoduls in der Vorlagenvisualisierung
Das Equipmentmodul PrintMarkControlExample kann in der Vorlagenvisualisierung im Unterpunkt Printmark Control gesteuert werden.
Stellen Sie dazu über Logic Builder eine Verbindung zur Steuerung her, übertragen Sie das Demoprojekt PrintMarkControlExample in die Steuerung und starten Sie das Projekt.
Starten Sie in der Vorlage zuerst den Modus Prepare und dann den Modus Auto wie nachstehend beschrieben:
Schritt |
Aktion |
---|---|
1 |
Aktivieren Sie die Visualisierung über die Schaltfläche Enable Vis (Punkt 1). |
2 |
Wechseln Sie über die Schaltfläche Control Panel zur Systemsteuerung (Punkt 2). |
3 |
Wählen Sie über die Schaltfläche Prepare den Modus Prepare an (Punkt 3 ). |
4 |
Starten Sie den Modus Prepare über die Schaltfläche Start (Punkt 4 ). |
5 |
Wechseln Sie über die Schaltfläche Auto in den Modus Auto (Punkt 5). |
6 |
Starten Sie den Modus Auto über die Schaltfläche Start (Punkt 6 ). ![]()
|
7 |
Anschließend können Sie die Abstände der Touchprobe-Ereignisse in der Tabelle anpassen (Punkt 7). Die Abstände der Touchprobe-Ereignisse werden für die Touchprobe-Simulation benötigt. Für diese wird eine Verbindung zwischen CN2.9 und CN4.9 benötigt. Als Alternative können Sie auch einen Sensor am Touchprobe-Eingang verwenden. Hierdurch werden die Produkte in der Visualisierung nicht mehr richtig angezeigt. |
8 |
Aktivieren Sie anschließend über die Schaltfläche xEnable das Equipmentmodul (Punkt 8). |
9 |
Setzen Sie abschließend über die Visualisierung ein xStart-Signal (Punkt 9). |
HINWEIS: Für die Touchprobe-Simulation ist eine Verbindung zwischen CN2.9 und CN4.9 erforderlich.
In der Aktion Init_PrintMarkCorrection des Equipment-Moduls SR_StartStopAbsoluteCorrection werden alle für die Druckmarkenregelung relevanten Variablen und Bausteine initialisiert. Hier können die Daten der Druckmarkenregelung an die Produkte und Abstände der Druckmarken angepasst werden. Wenn ein realer Touchprobe verwendet werden muss, kann dies ebenfalls hier angepasst werden.
In der Betriebsart Automatic wird für dieses Modul die OpMode Positioning angewählt.
In der Aktion Logic des Equipmentmoduls befindet sich die Steuerung der Druckmarkenregelung.
Der Vorschub wird wie nachstehend beschrieben über die BOOL-Variable xStart oder über die Schaltfläche xStart in der Visualisierung im Dialogfeld PrintMark Control gestartet.
StateMachine (Zustandsmaschine)
Bedingung |
Beschreibung |
---|---|
Zustand 10 |
Der Status der POUs wird abgefragt und - falls noch nicht aktiv - aktiviert. |
Zustand 20 |
Wenn alle POUs aktiv sind, werden diese gestartet. |
Zustand 30 |
Bei Erkennung des ersten Touchprobes wird die Position als neues Positionierungsziel gespeichert und die Positionierung gestartet. Hier wird die Touchprobe-Position über fbTpDistanceControl.q_lrTpCaptureValue oder über fbTpDistanceControl.q_lrTpCaptureDiff ausgelesen, da es sich um den ersten Touchprobe handelt. |
Zustand 40 |
Sobald das Produkt die Zielposition erreicht hat, wird der Timerwert der Steuerung vorübergehend gespeichert. Wenn die Bearbeitung des Produkts nicht zeitabhängig ist, kann dies entfernt werden. |
Zustand 50 |
Nach Ablauf der Bearbeitungszeit und Erkennung keines weiteren Touchprobes wird die Position als Zielposition verwendet. Die Position wird über die Funktion fbTpDistanceControl.GetValue() ausgelesen. Diese Funktion muss immer verwendet werden, wenn mehr als ein Touchprobe erkannt wird. In diesem Fall wird in State 40 gesprungen. Wenn die Bearbeitungszeit abgelaufen ist, aber kein weiterer Touchprobes erfasst wird, wird die Variable IrMaxPos als Zielposition verwendet und es wird in State 30 gesprungen. |
Der Abstand TpNp ist mit 1000 Einheiten relativ groß, dadurch wurden noch vor Erreichen der ersten Position weitere drei Produkte registriert.
Diese werden jetzt der Reihe nach abgearbeitet. Das gleiche Verhalten stellt sich auch ein, wenn eine größere Lücke auftritt.