Joachim
LVF-Grünschnabel
Beiträge: 11
Registriert seit: Mar 2015
2014 Pro
-
DE
|
mechatronisches System
Entwicklung, Steuerung und Regelung eines mechatronischen Systems mittels LabVIEW
Um ein Steuer- und Regelprogramm für mechatronische Geräte zu entwickeln, wurde ein hausinternes Projekt aufgesetzt, bei dem es um die Ansteuerung und Regelung eines optischen Systems mittels LabVIEW ging.
Das hier entwickelte Programm kann als Grundlage für die Steuerung beliebiger Maschinen eingesetzt werden, bei denen sowohl manuelle, wie auch automatische Positionierungen gefragt sind, wo Daten ermittelt und umgerechnet und / oder Positions- und andere Daten gespeichert werden müssen.
Verwendete Tools
• LabVIEW Professional Version 2014 / 2015
• Schrittmotoren mit Steuerkarte
• Dobsonteleskop (unmotorisiert)
Ausgangszustand
Den Ausgangszustand bildet ein sogenanntes Dobsonteleskop, welches in seinem Urzustand nicht motorisiert war. Ein Dobsonteleskop ist ein azimutal aufgebautes optisches System, dessen Grundstruktur sehr einfach gehalten werden kann.
Es wurde bewusst ein Teleskop ausgewählt, da dieses vielfältige Möglichkeiten hinsichtlich der Entwicklung eines Steuer- und Regelprogramms für mechatronische Systeme bietet. Im Vollausbau sind hier viele Motoren gleichzeitig anzusteuern, deren Position sehr exakt einzuhalten sind. Zudem bietet ein optisches System wie ein Teleskop die Möglichkeit, das Programm auch hinsichtlich einer automatisierten Bildverarbeitung auszubauen, die auch via Internetanbindung durchgeführt werden kann und letztlich ein vollautomatisiertes System ergibt, welches auf Bruchteile eines Grads exakt arbeitet.
Umsetzung
Das Teleskop war mit Motoren und entsprechenden Getrieben auszustatten. Hinzu kam die Erstellung eines Programms in LabVIEW zur Steuerung des Gesamtsystems.
Umzusetzen waren somit:
• Programmierung eines Steuer- und Regelsystems
o Koordinatentransformation (umfangreiche Positionsberechnung)
o Manuelle und automatische Positionierung des Systems
o Objektauswahl mittels Menü aus Datenbasis
o Neue Koordinaten manuell eingeben und speichern (Erweiterung Datenbasis)Automatische Nachführung
• Mechanische Aufrüstung des Teleskops
o Art der Motoren festlegen
o Getriebe entwickeln
o Motoren und Getriebe anflanschen
Um ein Teleskop motorisch steuern zu können, muss sowohl eine manuelle Steuerung der Motoren, wie auch deren vollautomatische Steuerung (GoTo) möglich sein. Zudem ist, sobald ein Objekt eingestellt wurde, eine kontinuierliche Nachführung mit passender Geschwindigkeit erforderlich. Dies ist bei einem Dobsonteleskop aufwändiger, als bei parallaktischen Systemen. Während bei einem parallaktischen System mit gleichbleibender Geschwindigkeit im Idealfall nur eine Achse zu bewegen ist, sind bei einem azimutalen Dobsonteleskop generell zwei Achsen zu verfahren. Bei parallaktischen Systemen wird eine der beiden Achsen auf den Himmelsnord- bzw. –südpol ausgerichtet. Bei perfekter Ausrichtung muss nur diese Achse (Rektaszension) nachgeführt werden, die Deklinationsachse kann nach erreichter Position stehen bleiben.
Beim Dobsonteleskop müssen sowohl die Azimutachse, wie auch die Höhenachse zeitgleich und mit unterschiedlichen Geschwindigkeiten nachgeführt werden, wobei die Geschwindigkeiten zudem zeitlich variieren.
Der Programmablauf kann vereinfacht dargestellt werden:
• Daten aus Datenbasis abrufen
• Positionsberechnung
• GoTo (Positionierung des Systems)
• automatische Nachführung
• neues Objekt aus Datenbasis auswählen (ggf. Datenbasis durch Eingabe eigener, noch nicht vorhandener Positionsdaten erweitern)
• Positionsberechnung usw.
Koordinatentransformation
In der Astronomie werden Koordinaten von Objekten allgemein mit Rektaszension und Deklination angegeben und können an einem parallaktisch aufgebauten Teleskop sehr einfach eingestellt werden. Um ein Dobsonteleskop auf ein bestimmtes Objekt zu positionieren, muss zunächst eine Koordinatentransformation durchgeführt werden, um Rektaszension (RA) und Deklination (DEC) in Azimut und Höhe umzurechnen. Somit war zunächst ein VI (Virtual Instrument) zu programmieren, welches diese Transformation durchführt. Während sich die RA- und DEC-Werte nicht ändern, unterliegen Azimut und Höhe einer ständigen Änderung. Die Transformation muss daher nicht nur A nach B umrechnen, sondern dies auch noch auf die aktuelle Zeit und das aktuelle Datum beziehen, wodurch besagte kontinuierliche Änderung hervorgerufen wird. Als Grundlage für diese Koordinatentransformation diente eine mathematische Formel, die ca. drei bis vier DIN A4-Seiten umfasst und im Internet gefunden werden kann.
Die Erstellung des VIs, welches im weitere Verlauf als SubVI eingesetzt wird, erforderte sowohl die Verwendung von einfachen LabVIEW-internen mathematischen Operationen, wie z.B. „+“, aber auch den Einsatz von Formelknoten.
Auch hierbei kamen bereits kleine SubVIs zum Einsatz, da manche Berechnungen mehrfach verwendet werden mussten, aber nicht systemintern zur Verfügung standen.
Eine automatische Erfassung der Systemzeit und des Datums bildet die Grundlage, ebenso die manuelle Eingabe der Ortskoordinaten des Beobachtungsstandortes
Am Schluss der Transformation wird noch eine Fallunterscheidung durchgeführt, die ebenfalls über Formelknoten, aber auch über Vergleichsmodelle abläuft.
Initialisierung
In der Initialisierungsroutine wird das System auf einen Referenzpunkt (= Referenzstern) per Mausklick positioniert, der dann als Nullpunkt dient. Hierzu sind die Motoren via LabVIEW zu steuern, wobei für jeden Motor Drehrichtung und Geschwindigkeit wählbar sind. Des Weiteren ist vom Bediener über ein Menü ein Stern als Nullpunkt aus einer Liste wählbar.
Im dargestellten Frontpanel ist links der Standort des Beobachters einzugeben und die Datenleitung für die PC-Kopplung der Motoren zu wählen. In der Mitte sind die Knöpfe für die manuelle Bewegung der Motoren, sowie die Positionier- oder Korrekturgeschwindigkeit. Hat man einen Stern eingestellt, kann dieser auf der rechten Seite mittels Menü „Stern wählen“ ausgewählt werden. Der Name des Sterns wird dabei unter „ausgewählter Stern“ angezeigt. Ist dies geschehen, wird mit „Position abgleichen“ der Stern als Nullposition festgelegt.
Objektwahl
Hierzu ist zuerst festzulegen, welche Art von Objekt angefahren, also wohin das System positioniert werden soll. Über das drop down-Menü “Objektart” können einzelne Sterne, sowie Messier- und NGC-Objekte als Zielposition angewählt werden. Dann werden die zugehörigen Daten, hier die RA- und DEC-Koordinaten, angezeigt.
Alternativ können hierzu auch manuell die Positionsdaten eines zu beobachtenden Objekts eingegeben werden. Sobald der Bediener auf „GoTo“ klickt, wird das Objekt automatisch positioniert.
Sofern der Beobachter ein Objekt ohne automatische Positionierung anfahren will, stehen ihm hierzu natürlich auch an dieser Stelle wieder die Steuerknöpfe zur Verfügung.
Sobald der Beobachter auf „GoTo“ klickt, berechnet das Programm die zu verfahrenden Wege und positioniert das Teleskop.
Autokorrektur
Wenn die Positionierung abgeschlossen ist, muss das Objekt automatisch nachgeführt werden, was über Autokorrektur geschieht. Auch hier hat der Benutzer die Möglichkeit, manuell einzugreifen oder das System automatisch nachführen zu lassen.
Die Mechanik
Neben der Programmierung war auch die mechanische Modifikation des Teleskops erforderlich.
Wie bereits beschrieben, handelt es sich bei einem Dobsonteleskop um einen normalerweise nicht motorgetriebenen Teleskoptyp. Somit musste ein passendes Getriebe entwickelt und die Motoren, sowie die Steuerelektronik angebracht und alles miteinander zu einer funktionsfähigen Einheit verbunden werden. Verwendet wurden Schrittmotoren und Zahnriemenantrieb.
Als Untersetzung wurde bei beiden Achsen ein Verhältnis von 14 (Zähne Motorritzel) zu 60 (Zähne Abtrieb) bei den Riemenscheiben gewählt. Somit ergibt sich eine Auflösung von
• A = 360 Grad / (ZMR / ZA * MU)
• A = 360 Grad / (60/14 * 51200 Mikroschritte pro Motor-Umdrehung)
• A = 0,0016 Grad / Mikroschritt
Astronomisch geschrieben: A = 5,9 Bogensekunden / Mikroschritt = 5,9“
Das kleine Teleskop wurde als Demonstrationsmodell aufgebaut. Einerseits, um die Funktionalität des Gesamtsystems zu testen und zu verifizieren. Andererseits, um es auch ohne großen Aufwand vorführen zu können. Es besitzt einen Spiegeldurchmesser von 114mm. Eine größere Version mit einem Spiegeldurchmesser von 400mm wurde ebenfalls realisiert, wobei hier das Getriebe auch in Form von Zahnriemen ausgeführt wurde, jedoch mit mehreren Untersetzungsstufen.
Fazit
Obgleich bei dem Projekt nicht die Motorisierung von Teleskopen im Vordergrund stand, dienen diese doch als gute Möglichkeit, ein umfangreiches Steuer- und Regelprogramm auf anschauliche Art und Weise zu präsentieren. Das hier entwickelte Programm kann an beliebige andere Anwendungen angepasst werden und wurde daher bewusst skalierbar aufgebaut.
Es spielt keine Rolle, ob damit Stellglieder für ein Teleskop oder eine CNC-Maschine gesteuert werden. Es sind entsprechende Änderungen durchzuführen, die aber in einem zeitlich überschaubaren Rahmen bleiben.
Neben der Steuerung und Regelung des Systems, werden bei diesem Programm auch Daten aus einer Datenbasis abgerufen, die die Grundlage für umfangreiche Positionsberechnungen liefern. Die Berechnungen laufen ebenfalls programmintern ab. Diese Datenbasis ist für den Anwendungsfall des Teleskops eine einfache und damit leicht zu ändernde Textdatei. Für andere Anwendungen können auch andere Datenbasen verwendet werden.
|