- Offizieller Beitrag
Hallo zusammen,
nachdem ich eigentlich schon vor Monaten davon gesprochen habe, habe ich es nun endlich in die Tat umgesetzt und es funktioniert. Die Steuerung des Scanning-Tisches mit dem Raspberry Pi.
Der Raspberry Pi ist nicht nur ein eigenständiger PC, mit dem man auch im Internet surfen kann, er läß sich auch mit seinen Steuerausgängen (GPIOs) als Microcontroller nutzen.
So lassen sich auf diese Steuerausgänge Spannungen von entweder 0 Volt oder 3,3V programmieren. Von den insgesamt 27 nutzbaren Ports werden für die Anwendung zum Steuern des Scanning-Tisches 6 Ports benötigt, desweiteren noch die Versorgungsspannung für die Treiberbausteine von 3,3V und Masse.
Auf einer Lochrasterplatine, die gleichzeitig als Versuchsaufbau dient, sind neben den Anschlußbuchsen die beiden Treiberbausteine in Wechselfassungen für die Ansteuerung der Schrittmotoren aufgelötet. Es handelt sich dabei um die Treiber-Module A4988. Über Steckbrücken besteht die Möglichkeit, von Vollschritten über Halbschritten bis zu Mikroschitten die Motoren anzusteuern, was die Auflösung entsprechend erhöht. Der noch freie und unbestückte Teil der Platine könnte nun einfach abgesägt oder ggf. mit anderen Komponenten wie z.B. für die Ansteuerung einer Kamera bestückt werden.
Neben dem Signal Enable/Disable, das bestimmt, ob sich ein Motor überhaupt bewegen soll, wird mit dem Signal Direction die Drehrichtung des Motors vorgegeben. Das dritte Signal wird im Wechseltakt aufgeschaltet. Jeder Schaltvorgang bewirkt einen Schritt des Motors.
Nun möchte man aber die Motoren auch über Bedienelente ansteuern können und dabei vorgeben können, wieviele Schritte ein Motor in welche Richtung gemacht werden sollen, um dadurch bestimmte Tischpositionen anfahren zu können. Auch möchte man gerne die aktuelle Position angezeigt bekommen und dabei noch die Geschwindigkeit vorgeben können.
All dies ist über die Programmiersprache Python zu bewerkstelligen, mit der sich auch über das Modul TKinter eine grafische Fensteroberfläche programmieren läßt mit diversen Elementen ausgestattet wie Buttons, Labels, Eingabefelder und Schiebereglern, die hier gerade zum Einsatz kommen.
Durch Anklicken der Buttons bewegt sich der Scanning-Tisch also in die X- und Y-Richtungen mit der vorgegebenen Anzahl von Schritten. Je nach Stellung des Schiebereglers erfolgen die vorgegeben Schritte im schnellen bzw. langsamen Tempo, indem die Pause zwischen den einzelnen Schritten entsprechend verkürzt bzw. verlängert wird.
Natürlich läßt sich diese Oberfläche für die Bedienung noch beliebig erweitern, gestalten, ohne daß dazu Komponenten wie Taster, Schalter, Joysticks oder Anzeigedisplays vonnöten sind.
Bei chronischen Platzmangel auf dem Tisch ist es beim Raspberry Pi sehr entgegenkommend, daß an ihm für den Betrieb nicht zwingend ein Monitor, Maus und Tastatur angeschlossen werden müssen. Man kann sich auch über eine Remote-Desktop-Verbindung von einem anderen PC im hauseigenen WLAN-Netzwerk aufschalten, den man ohnehin am Laufen hat.
Beste Grüße
Bernd