-
-
Erfahrener Benutzer
Robotik Einstein
Die Beantwortung aller aufgeworfenen Fragen deines vorhergehenden Posts dauern etwas.
Da ich dieses Wochenende noch was erledigen muß kann das etwas dauern.
Ich werfe aber mal eine Alternative zum reinen Hardware Aufbau ein.
Da wir in einem Roboterforum sind gehts hier ja auch um Controller und Programmierung.
Bei einer Software Lösung, benötigst du einen Servotester (simuliert den Empfänger wärend der Entwicklung), Buchse und Stecker passend zu deinem Empfänger, ein Controler Board und falls nicht on Board für jeden Stepper einen Steuer IC und ggf. Leistungstreiber.
In dem Fall wäre der Hardware Aufbau nicht besonders anspruchsvoll da das meiste gekauft und zusammengesteckt werden kann.
Nur bei der Programmierung muß halt das Gehinschmalz reingesteckt werden.
Vorteil ist: auch mit wenig Vorwissen kannst du dich stück für stück an die Lösung programmieren ohne das bei einem Fehler gleich neue Bauteile benötigt werden.
In dem Fall zerlegst du die Aufgabe in zwei Teile:
1. Auswerten PWM vom Empfänger.
Das PWM Signal hat eine Festfrequenz und ein variables Puls-Pausen Verhältniss, wobei die Länge des Pulses die Sollvorgabe von maximal Plusausschlag über neutrale Mittelstellung bis maximalen negativ Ausschlag repräsentiert.
http://www.rn-wissen.de/index.php/Servos
Das kann mit einem IRQ an steigender Flanke und einem Timer sowie auslesen des Timers bei fallender Flanke erledigt werden.
Dann gibt es eine Verzweigung (If, Then, Else oder Case z.B.)
2. Die Verzweigung geht in drei Routinen linksdrehen, Stillstand, Rechtsdrehen.
Dabei werden enable und direction Signal für den Stepper entsprechend der Verzweigung gesetzt und anhand des Zählerinhaltes eine positive Zahl gebildet die die Frequenz des Taktsignals für den Stepper vorgibt.
Hier haben wir dann ein frequenzmoduliertes Signal mit festem Puls-Pausenverhältniss von 50%.
Mit der Frequenzvorgabe wird dann ein entsprechendes PWM Signal generiert.
Für mehrere Stepper müssen halt entsprechend viele IRQs (interrupt) und Timer sowie PWM Ausgänge zur Verfügung stehen.
Dann wird das Programm einfach merfach genommen und die IOs in den entsprechenden Routinen angepasst.
Später kann man dann durch parametrisieren doppelte Routinen eliminieren und das Laufzeit Verhalten optimieren.
Wie gesagt für deinen letzten Post brauch ich etwas.
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen