INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Rx - Board - Regler/Servo (PWM)
19.02.2015, 13:33
Beitrag #1
Rx - Board - Regler/Servo (PWM)
Hey! Ich habe einen RC Empfänger und steuere damit normalerweise einen Brushless Regler. In meinem Fall aber möchte ich zwischen dem Empfänger und dem Regler ein Board setzen. Dieses soll das PWM Signal eines Kanals über PulseIn auslesen und Mappen. Je nach Wert soll es dem Regler oder eben einem Servo eine Position vorgeben.

Ich möchte also je nach Hebelstellung an meiner Fernbedienung entweder mit Hebelstellung nach oben den Motor steuern (Drehzahl 0 bis max.) und Hebelstellung nach unten einen Brems-Servo steuern (Winkel 90 bis 180).

Die Frage ist nun, ob ich mit der Servo Library in " write() " nur einen Zahlenwert zwischen 0 und 180 eingeben kann oder auch z.B. " myservo.write(Gaspedal)" ?

"Gaspedal" wird dann selbstverständlich implementiert und einem Wert zwischen 0 und 180 zugewiesen.

Ist das machbar?

Danke Smile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.02.2015, 14:06
Beitrag #2
RE: Rx - Board - Regler/Servo (PWM)
(19.02.2015 13:33)luto92 schrieb:  Dieses soll das PWM Signal eines Kanals über PulseIn auslesen
Damit kann man mal anfangen, aber pulseIn willst Du nicht wirklich. Man sollte da mit PinChangeInterrupts arbeiten und die Zeiten mit micros() messen. Siehe auch RCArduinoFastLib (mal googlen).

Zitat:Ich möchte also je nach Hebelstellung an meiner Fernbedienung entweder mit Hebelstellung nach oben den Motor steuern (Drehzahl 0 bis max.) und Hebelstellung nach unten einen Brems-Servo steuern (Winkel 90 bis 180).
Klingt relativ "straightforward".

Zitat:Die Frage ist nun, ob ich mit der Servo Library in " write() " nur einen Zahlenwert zwischen 0 und 180 eingeben kann oder auch z.B. " myservo.write(Gaspedal)" ?
Du kannst entweder write() mit dem Winkel zwischen 0 und 180 nehmen oder writeMicroseconds(), was dann Pulse in der angegebenen Länge erzeugt. Damit kann man wesentlich genauer arbeiten.
Allerdings würde ich nicht die Servo-Lib nehmen, sondern RCArduinoFastLib. Ansonsten hast Du nur 50 Pulse pro Sekunde, wodurch ESC-Regler etwas träge werden können.

Zitat:"Gaspedal" wird dann selbstverständlich implementiert und einem Wert zwischen 0 und 180 zugewiesen.
Hä? Es ist einer Funktion egal, ob man als Funktionsparameter eine Variable nimmt oder eine Konstante.

Zitat:Ist das machbar?
Ja.
Ich würde das allerdings nicht gleich in ein Modell einbauen, sondern erst einmal so experimentieren. Wenn es dann das erste Mal im Modell eingebaut wird, dann Sicherheitsmaßnahmen nicht vergessen. D.h. Propeller ab bzw. das Auto "hochbocken".

Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.02.2015, 14:18
Beitrag #3
Smile RE: Rx - Board - Regler/Servo (PWM)
Danke Thorsten für deine ausführliche Antwort!
Straightforward genau, allerdings auch als Straightbackwards ebenfalls mit Bremse, wenn ein Schalter betätigt ist, aber das krieg ich hin.

writeMicroseconds hatte ich übersehen, dann werde ich das benutzen.

Hochgebockt wird auf jeden Fall, ich möchte vorher eh einzelne Funktionen testen und nach und nach das komplette System laufen lassen, ein bisschen HiL mäßig...

Ich werde definitiv nach der fastlib schauen, da du mir diese so gerne empfehlst Rolleyes Smile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.02.2015, 15:23
Beitrag #4
RE: Rx - Board - Regler/Servo (PWM)
(19.02.2015 14:18)luto92 schrieb:  Ich werde definitiv nach der fastlib schauen, da du mir diese so gerne empfehlst
Ja, das Ding ist wirklich gut. Vielleicht nicht ganz so einfach zu verwenden, wie pulseIn und Servo, aber es ist es Wert. Mein Quadrokopter hat sofort aufgehört, sich aufzuschwingen, nachdem ich darauf umgestellt habe.
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
Question Servo.h Hilgi 10 585 07.05.2018 18:57
Letzter Beitrag: BanditBandeh
  Einmalige Servo Motor Ausführung BanditBandeh 29 2.196 12.04.2018 12:04
Letzter Beitrag: MicroBahner
  Servo langsamer drehen und auf position lassen Thor Wallhall 13 1.585 12.04.2018 11:42
Letzter Beitrag: BanditBandeh
  Arduino DUE mit Adafruit 16 Kanal Servo-Driver juergen001 3 226 09.04.2018 10:51
Letzter Beitrag: juergen001
  Servo Steuerung mit PCA 9685 (Adressiernung) bernhard66 3 428 10.03.2018 11:06
Letzter Beitrag: juergen001
  Servo über Transistor Harry 21 1.729 29.01.2018 19:30
Letzter Beitrag: hotsystems
  servo hector73 5 560 25.01.2018 06:13
Letzter Beitrag: hector73
  Bei Power ein geht der Servo auf 90 Grad ? Franz54 12 1.188 09.01.2018 20:55
Letzter Beitrag: Franz54
  SSR (Solid State Relais) mit PID-Regler ansteuern pernschi 10 844 05.01.2018 15:13
Letzter Beitrag: hotsystems
  Servo Ansteuerung SOFTHARD 23 2.552 17.10.2017 10:56
Letzter Beitrag: SOFTHARD

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste