Bedienungsanleitung Kameragesteuerte X-Y-Regelung Voraussetzungen: Software: Hardware: LabView 2012 Entwicklungssystem Vision Acquisition Software 08/2012 Vision Development Module 2012 Vision Builder AI 2012 NI ELVIS mx / Arduino Software NI IMAQ-Treiber mydaq / Arduino Mikrocontroller USB Webcam Hardware Aufbau balancierende Ebene PC mit Windows Betriebssystem und für die Software ausreichende Konfiguration Inbetriebnahme: Vor der Inbetriebnahme muss die nötige Software von National Instruments installiert sein. Außerdem muss sichergestellt werden, dass die Hardware korrekt angeschlossen ist. Da ein Datenaustausch zwischen Lab View und der Vision Builder AI Software stattfindet, ist es notwendig, dass die Projekt Datei X_Y_Regelung.lvproj gestartet wird, da hier die Variablen, die für den korrekten Betrieb nötig sind, im System registriert werden. Über das geöffnete Projekt kann nun die Virtual Instrument Datei main.vi gestartet werden. Ein anschließender Start der Software kann alternativ direkt über die Virtual Instrument Datei erfolgen.
Bedienung: Abbildung 1: Frontpanel der Hauptapplikation Nach dem erfolgreichen Start der Software ist das Frontpanel sichtbar. (Abbildung 1) Dies zeigt die Grundeinstellung des Systems mit dem Kontrollpanel. Auf der linken Seite werden die Statusmeldungen des Bildverarbeitungsalgorithmus durch die grünen LEDs angezeigt. Darüber befindet sich der Schieberegler für den Treshold- Bild angezeigt. Filter. Unterhalb der Statusanzeigen wird das aktuell zu verarbeitende Ein grünes Dreieck zeigt, dass dieser Wert durch eine globale Variable von der Vision Builder AI Inspection beeinflusst wird. Weiterhin findet man hier die Bedienelemente, um das Programm zu steuern. Auf der rechten Seite des Frontpanels befindet sich das Kontroll- und Einstellungs- an (links, oben, Panel. Ersteres zeigt die aktuelle Lage der Platte über die vier Balken rechts, unten). Die zwei Schieberegler im oberen Bereich dienen zur Steuerung der Servos im Handbetrieb. Die Elemente unterhalb der Lageanzeige liefern Informationen über die Kugelposition und die Plattengröße.
Abbildung 2: Frontpanel der Hauptapplikation Abbildung 2 zeigt das Frontpanel mit dem Einstellungsreiter. Hierüber kann im laufenden Betrieb der Regler eingestellt werden. Es bieten sich Einstellmöglichkeiten zur Optimierung der Schleifenzeit, der Grundregelung, der Verschiebung der anzusteuernden Position und des PID Regelverhaltens. Im oberen Bereich des Frontpanels befindet sich eine Menüleiste, worüber das Programm ebenfalls gesteuert werden kann. Außerdem können hier die Standardwerte geladen, sowie eine Hilfe angezeigt werden. Nach dem Klick auf den Button System Initialisieren öffnet sich ein Dialog der zur Auswahl des Bildverarbeitungsalgorithmus auffordert. Als Standarddateiendung ist hier.vbai, als Dateiname Bilderkennung_V1.0.vba gewählt. Das Standardverzeichnis wird auf den Speicherort des VIs gesetzt. Die Bestätigung der Auswahl der Vision Builder Inspection geschieht durch einen Doppelklick oder durch drücken des Buttons Öffnen.
In einem neuen Fenster sieht man, wie der Vision Builder AI Server gestartet wird (Abbildung 3). Abbildung 3: Vision Builder AI Server Luncher Nachdem der Server läuft ist das System Betriebsbereit. Die Buttons Stopp und Regelung aktivieren sind nun wählbar. Über die sechs LED-Anzeigen wird der Vision Builder AI Inspection Status angezeigt. LV_Import zeigt, ob die Kamera arbeitet und Bilder aufzeichnet. Die Anzeige LV_Bearbeitung signalisiert die funktionierende Bildbearbeitung (Aus dem 32bit Farbbild muss ein 8Bit Graustufen Bild generiert werden). LV_Plattenerkennung ist aktiviert, wenn die Platte korrekt erkannt wurde. Auf die Plattenerkennung folgt das Koordinatensystem, dieses wird durch LV_Koordinatensystem angezeigt. Auf das Koordinatensystem setzt die Bereichserstellung auf, dessen Status mittels LV_Bereichserstellung signalisiert wird. Zuletzt wird die Kugelerkennung durch LV_Kugelerkennung angezeigt. Außerdem sollten das aktuelle Bild und der aktuell gewählte Algorithmus sichtbar sein. Über den Button Stopp kann nun jederzeit das System angehalten und der Vision Builder Server beendet werden. Wenn sich zu diesem Zeitpunkt eine Kugel im System befindet, kann der Treshold Filter (Schwellwert) so lange verändert werden, bis die Kugel sauber erkannt wird. Ob die Kugel richtig erkannt wurde, wird durch die Statusmeldung LV_Kugelerkennung angezeigt. Bei viel Licht muss der Wert etwas nach oben verschoben werden, bei wenig Licht etwas nach unten.
Die Werte im Kontrollpanel werden erst nach dem Betätigen von Regelung aktivieren aktualisiert. Wenn dies geschehen ist, fängt das System sofort an, die Kugel in den Mittelpunkt der Platte zu regeln. Im Kontrollpanel ist unter Position X und Position Y die aktuelle Abweichung der Kugel zum Plattenmittelpunkt in Prozent zu sehen. Die anderen dort angezeigten Parameter zeigen die Plattenmitte (Plattenmitte X und Plattenmitte Y), die Position der Kugel (Kugel X und Kugel Y) und die Größe der Platte (Platte B und Platte H) in Pixel. Über den Button Handbetrieb wird die Regelung deaktiviert, nun kann das System Manuel bedient werden. Dies wird über die zwei Schieberegler ermöglicht (Servo X und Servo Y). Mit Servo X kann das System zwischen -100 Prozent und +100 Prozent in der X-Achse bewegt werden. Selbiges gilt für den Regler Servo Y in der Y-Achse. Alternativ kann auch in den nebenstehenden Zahlenfeldern direkt ein Wert eingetragen werden. Mittels des Buttons Null-Stellung wird das System in die Waagerechte gebracht. Befindet man sich im Regelbetrieb und schaltet um auf den Einstellungsreiter, können das Regelverhalten und diverse andere Einstellungen geändert werden. In dem nun sichtbaren Panel kann die Schleifenzeit festgelegt werden, diese dient zur Anpassung an die Schleifenzeit der Vision Builder AI Inspection. Die aktuelle Schleifenzeit wird nebenstehend angezeigt. Über das Element Leerschleifen wird die Anzahl der Leerschleifen angezeigt, die durchlaufen werden, bis neue Daten vom Vision Builder AI übertragen wurden. Ein Ändern der Schleifenzeit wirkt sich direkt auf die Leerschleifen aus. Über das Anzeigeelement LV_Counter wird die Anzahl der bisher durchlaufenden Vision Builder AI Schleifen angezeigt. Mittels den Parametern Annäherung X und Annäherung Y wird die Plattenneigung in Abhängigkeit von der Kugelposition geändert. Je höher diese Werte sind, desto weniger wird die Platte ausgesteuert. Erfahrungen haben gezeigt, dass diese Werte zwischen zwei und drei liegen sollten. Mit den Parametern Gegensteuerung X und Gegensteuerung Y wird angegeben, wie stark die Kugel gebremst wird. Bewegt sich die Kugel schnell (Abstand der Kugel zwischen zwei Messungen hoch), wird die Platte entgegengesetzt der Bewegungsrichtung der Kugel geregelt. Erfahrungswerte liegen hier zwischen 0,2 und 0,3. Die zwei Parameter Verschiebung X und Verschiebung Y stehen in Abhängigkeit zu dem Button Punkt. Es kann eine Prozentuale Verschiebung zwischen +/- 100 Prozent eingestellt werden. Dies hat zur Folge, dass die Kugel nicht in der Mitte Positioniert wird, sondern um den eingetragenen Wert verschobenen wird. Positive Werte lenken die Kugel nach oben beziehungsweise nach rechts ab. Negative Werte hingegen lenken die Kugel nach unten und nach links.
Abbildung 4: Positionsverschiebung Wird der Button Punkt aktiviert, wird die Platte in Mittelposition gebracht. Jetzt kann mit der Maus ein beliebiger Punkt im Bild angeklickt werden (siehe Abbildung 4 Grünes Kreuz). Der rote Punkt im Bild zeigt den Plattenmittelpunkt, darunter befindet sich die Kugel. Die Verschiebung wird links im Bild als Zahlenwert übernommen. Mit einem weiteren Druck auf den Button Punkt wird der nun verschobene Punkt versucht anzusteuern. Liegen die verschobenen Werte nahe der Plattengrenze oder gar außerhalb, so wird es nicht möglich sein, die Kugel dort zu positionieren, da ein Gegenregeln nur noch in eine Richtung möglich ist. Weitere Einstellungsmöglichkeiten bietet der verwendete PID Regler. Hier kann über die Parameter P X, P Y, D X, D Y, I X und I Y das Regelverhalten für die X- und Y-Achse separat eingestellt werden. Über den Button Regler an kann der Regler komplett ein- bzw. ausgeschaltet werden.