Kann ich meinen 3-Achsen-Gimbal mit Raspberry pi befehlen?
Ein Objekt kann 'Gimbal
' heissen ohne dass es mit Motoren oder digitale Verbindungen ausgestattet ist. Die kann man natürlich gar nicht befehlen.
Wenn es Motoren und digitale Verbindungen hat, dann kann es sein, dass diese Verbindungen nur mit Geheimen Schlüsseln funktionieren, die nur bekannt sind bei Steuergeräte vom selben Hersteller. Dann wärst du Opfer vom Lock-in-Effekt
. Es steuern mit einen Raspberry Pi wäre unmöglich, nur weil der Raspberry Pi den geheimen Schlüssel nicht kennt.
Ob man einen Gimbal mit nur einem Raspberry Pi befehlen kann, hängt davon ab, auf welcher Ebene man es befehlen muss. Kamera Gimbals haben sehr viel Steuerung eingebaut. Sie korrigieren automatisch für die Bewegungen des Kameramannes. Dazu enthalten sie nicht nur einen Gimbal, sondern auch Messgeräte und Programme. Diesen Gimbals kann man wohl über Knöpfe noch seine eigenen Wünsche Befehlen. Hat man einen Gimbal der auch Befehle von einer anderen Maschine akzeptiert, dann geht das wahrscheinlich über USB. Die Raspberry Pi hat auch USB, also der Anschluss ist dann kein Problem. Aber irgendwie soll der Raspberry Pi dann ja entscheiden welche Befehle es dem Gimbal geben soll. Dazu muss es ein Programm drehen. Wenn du dieses Programm hast in einer Version für einen ARM Chip, dann kannst du es auf deiner Raspberry Pi hochladen und nutzen. Du konntest das Programm auch selbst herstellen.
Wenn dein Gimbal nur Motoren und Steurerungsverbindungen hat, aber keine Steuerung eingebaut und du willst, dass es funktioniert wie so eine Kamera Gimbal, dann muss deine Raspberry Pi auch noch mit zusätzlichen Messgeräten ausgestattet werden und die komplexen Programme für solche Steuerung müssen darauf hochgeladen werden. Auch muss der Raspberry Pi und der Gimbal an einander befestigt werden, damit der Raspberry Pi die richtigen Bewegungen misst. Also dass ist ein kompliziertes Projekt.
Wenn du solche komplexen Sachen nicht steuern willst, sondern nur einfaches, nämlich 3 Motoren sich mit bestimmter Geschwindigkeit bewegen lassen, dann wird das mit dem Raspberry Pi schon hin zu kriegen sein.
Wenn deine Gimbal Motoren hat und digitale Verbindung(en), dann würde ich auch hier erwarten dass es sich um eine USB Verbindung handelt und dann wäre die Verbindung kein Problem. Dann bräuchtest du nur ein Programm auf deinem Raspberry Pi für die Steuerung. Das ist auch kein komplexes Programm. Das kann man auch als Einfänger hin kriegen.
Wenn die Digitale Verbindung keine USB Verbindung ist, dann könnte es sich um ein anderes Protokoll handeln dass der Raspberry Pi auch hat. Sonst können die general-purpose input/output (GPIO) genutzt werden. Aber das kann nicht funktionieren wenn die Maschine, in deinem Fall der Gimbal, nur auf stärkere Spannungsunterschiede reagierte als der Raspberry Pi liefern könnte. Glücklicherweise ist da schon ziemlich viel Standardisierung, so dass es wahrscheinlich passen wird.
Wenn deine Gimbal nur Motoren hat und keine digitale Verbindungen, dann musst du es steuern auf der niedrigsten Ebene: über der Stomversorgung der Motoren selbst. Dazu brauchst du dann eine Erweiterungskarte für Digital nach Analog Konversion und Analog AUS (nicht IN, das misst nur Spannung. Da könnte der Raspberry Pi Motor Board zum Einsatz kommen, aber der kann nur 2 Motoren steuern und das scheinen nur Motoren ohne Rückkoppelung zu sein. Wahrscheinlich ist er stärker als nötig. Davon bräuchte man also Zwei. Und man müsste noch kontrollieren ob zwei gleichzeitig möglich sind.
Seeed liefert das Grove Erweitungssystem. Dazu braucht man den Raspberry Pi Grove Base Hat
und daran kann man dann allerhand Grove Erweitungsteile verbinden. Der I2C Motor Driver V1.3 ist für 2 Motoren ohne Rückkoppelung oder 1 Schrittmotor
. Der I2C Motor Driver (L298P) für 1 Schrittmotor oder 1 Servomotor
. Schrittmotoren und Servomotoren haben 4 Anschlüsse, Motoren ohne Rückkoppelung (Gleichstrommaschine
) haben 2. Die Motoren ohne Rückkoppelung können nicht zu einer bestimmten Position gehen und nicht mal eine bestimmte Geschwindigkeit einhalten. Sie gehen so schnell voran wie die Energie die reinkommt erlaubt. Motoren mit Rückkoppelung (das ist meine Bezeichnung) können Position und Geschwindigkeit garantieren. Schrittmotoren machen dass indem sie sehr genaue Schritte ausführen. Servomotoren machen dass indem sie einen Sensor eingebaut haben die die Position misst und den Motor selbst an Hand davon steuert.
Raspberry Pi Erweiterungskarten heissen meistens HAT (Hardware On Top), aber manchmal werden sie als 'Schield' bezeichnet. Das ist ein Blödsinn Name der von Arduino kommt. Die Arduino wurden oft von Künstlern genutzt und um diese die Elektronik einfach zu erklären wurden eigene Bezeichnungen genutzt. In der normalen Elektronik bedeutet 'Schield' aber eine bestimmte Art von Schutz, so dass dieser Name sehr verwirrend ist.