Problem mit PID-Regler für brushless motor

Hallo zusammen,
ich habe folgendes Problem:
Ich versuche die Geschwindigkeit eines Modellautos mit brushless motor zu regeln, dazu messe ich zunächst die Geschwindigkeit mit einem Hall-Sensor in m/s und möchte dem Regler eine gewünschte Geschwindigkeit (ebenfalls in m/s) übergeben.

Das Problem ist nun, dass der Motor generell mit writeMicroseconds() gesteuert wird und in etwa in dem Bereich zwischen 1000 und 2500 liegt (Stillstand bei 1500), der PID-Regler mit der eingebundenen Bibliothek aber Werte zwischen 0-255 liefert.
Kann man die Werte von PWM in Microseconds umrechnen oder habt ihr einen anderen Tipp für dieses Problem?

Vielen Dank schonmal im Vorraus
Gruß

map() ?

Guten Abend,

hier der Aufruf der map Funktion:

writeMicroseconds( map(Reglerausgang, 0, 255, 1000, 2500) );

Danke schonmal für die Map-Funktion, daran hatte ich noch gar nicht gedacht!
Die Frage zielte aber eher darauf ab ob es für den Motor, bzw. dessen Steuerung so einfach möglich ist die PWM-Werte so "stumpf" umzurechnen.
Ich gehe mal davon aus, dass wenn ich dem Regler eine Soll-Geschwindigkeit von 0 m/s vorgebe, er einen PWM-Wert von 0 als Output liefert?! Dafür sollte es doch dann reichen entweder den Output Bereich des Reglers von 85(mit map() der 1500, also Stillstand zugeordnet) bis 255 einzugrenzen oder von 0-255 auf 1500-2500 zu mappen oder?
Ansonsten werde ich es am Wochenede einfach mal so ausprobieren und schauen was passiert ;D

Brushless-Motoren werden nen bissel anders angesteuert.
Deshalb benötigen sie auch spezielle Regler....das Schöne aber ist: wenn man so einen Regler hat, kümmert der sich schon um die Ansteuerung.
Das Einzige, was er dann noch wissen muss ist, was du vom Motor willst.
Und genau das tust du, indem du dem Ding ein stinknormales Servo-Signal gibst. Dieses, und nix anderes, regelst du.

Allerdings: erwarte nicht zu viel, gerade sensorlose Brushless-Systeme sind meilenweit davon entfernt, sich so feinfühlig steuern zu lassen, wie ein Bürstenmotor.
Auch allzu niedrige Drehzahlen klappen gewöhnlich nicht- da stottert der Motor, oder er läuft gar nicht erst an. Daher sind Brushless-Motoren für einige Anwendungen kaum zu gebrauchen (Ausnahme: Sensorsysteme).

Rabenauge:
...Daher sind Brushless-Motoren für einige Anwendungen kaum zu gebrauchen (Ausnahme: Sensorsysteme).

Aber für Modellautos schon?

Kommt auf die Untersetzung an. Motor direkt ans Rad geht z.b. nicht.

...das fährt. :confused:

Langsames rangieren jedoch kann man vergessen, ebenso wirklich sanftes anfahren.
Ausser eben bei hohen Untersetzungen (und da baut bis heute keiner Brushlessmotoren ein).
Bei Rennen kommts lediglich auf das Leistungsgewicht an- hier ist der BL natürlich im Vorteil (gut abgestimmt kann man durchaus Wirkungsgrade über 90% erreichen), langsames anfahren ist da nicht wirklich wichtig.