Drehzahlregelung RC-Car

OP #4453943
Lesenswert?
• ▲
▼
Guten Morgen,

Ich hab ein RC-Car mit Brushless DC, Allrad betrieben. Ansteuerung 
funktioniert per PWM-Signal an den Electronic Speed Control.

Ich bin gerade dabei eine Drehzahlregelung mit dem Raspberry Pi zu 
realisieren. Soweit funktioniert die Drehzahlerfassung, mittels 
Reedkontakt und Interrupt.

Im Prinzip soll man im vorhinein dem Auto eine Soll-Geschwindigkeit 
mitgeben und das Auto sollte dieses Tempo fahren.
Das Problem liegt jedoch darin, dass es nicht zu schnell wegfahren soll 
und sich dann diesem mitgegebenen Tempo nähren soll.

Den Endzustand würde ich so regeln
1
 
2
 if( ist < soll)
3
       //gas geben
4
 else if( ist > soll )
5
       //gas reduzieren

So nun stehe ich vor dem Problem, wie regelt man die Anfang bzw die 
Beschleunigung des Autos?

Danke.

lg patrick
(Firma: matzetronics) #4453973
Lesenswert?
• ▲
▼
Patrick J. schrieb:
> So nun stehe ich vor dem Problem, wie regelt man die Anfang bzw die
> Beschleunigung des Autos?

Mit einem Regler. Dieser bekommt Soll- und Istwert und rechnet daraus 
die notwendige Stellgrösse.
Sowas kennt man unter P-, PI- und PID Regler. Erklärt wird das Ganze in 
Theorie und Praxis in der guten Application Note AVR221 von 
Microchip/Atmel.

http://www.atmel.com/Images/doc2558.pdf
Gast #4453975
Lesenswert?
• ▲
▼
Du brauchst irgendeine Zeitbasis im System, am besten einen 
Timerinterrupt.
Gasgeben wie beim Autofahren, über eine gewisse Zeit hinweg die 
Geschwindigkeit von der momentanen Ist-Geschwindigkeit (kann auch 0 
sein) auf die Soll-Geschwindigkeit anpassen.
(Firma: matzetronics) #4454017
Lesenswert?
• ▲
▼
Radler schrieb:
> In den App-Notes wird oft auf Softwarebeispiele und auf weitere
> Informationen verwiesen. Wo kann ich diese finden?

Auf der Website des Herstellers. Im o.a. Fall könntest du also zu
http://www.atmel.com gehen und dann 'AVR221' in die Suche tippen.
In diesem Fall steht schon im ersten Suchergebnis ein 'Download 
Software' Link.

Ein andere Weg ist, einen nahzu beliebigen AVR Kontroller auszuwählen 
und dann mal unter Resources zu sehen, was es für diesen an Application 
Notes gibt.
OP #4483544
Lesenswert?
• ▲
▼
gasgeben schrieb:
> Du brauchst irgendeine Zeitbasis im System, am besten einen
> Timerinterrupt.
> Gasgeben wie beim Autofahren, über eine gewisse Zeit hinweg die
> Geschwindigkeit von der momentanen Ist-Geschwindigkeit (kann auch 0
> sein) auf die Soll-Geschwindigkeit anpassen.

danke aber jedoch weiß ich nicht, wie ich das realisieren soll.
Wie meinst du das genau?



Matthias S. schrieb:
> Mit einem Regler. Dieser bekommt Soll- und Istwert und rechnet daraus
> die notwendige Stellgrösse.
> Sowas kennt man unter P-, PI- und PID Regler. Erklärt wird das Ganze in
> Theorie und Praxis in der guten Application Note AVR221 von
> Microchip/Atmel.
>
> http://www.atmel.com/Images/doc2558.pdf

OK danke

PID-Regler ist nun implementiert.
Gast #4486976
Lesenswert?
• ▲
▼
Patrick J. schrieb:
> PWM-Signal an den Electronic Speed Control


Mal sehen ob ich das richtig verstanden habe:

Wenn du also in der Lage bist das "richtige" PWM Signal an den 
Geschwindigkeitsregler zu übermitteln sollte dies kein Problem sein:

Also:
Du kannst also mit dem PI "das selbe" PWM Signal an den Controller 
senden , wie der Empänger deiner Fernbedienung ?

Wenn Ja:

Unter umständen mmeinst du das was unter expotentialfunktio  gemeint 
ist,
im Grunde nix anderes wie eine Zeitbasis oder Rampe.

Sende deine Zielgeschwindigkeit einfach mittels einer Rampe mit der 
gewünschten Anstiegszeit.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.