PWM Ansteuerung Brushless-Regler

Gast #2475837
Lesenswert?

Hi,

ich versuche mich gerade in der Ansteuerung meiner Brushless Motoren. 
Dafür habe ich fertige Regler, die dieses Fernbedienungsempfängersignal 
als Eingangssignal haben möchten. Dazu habe ich im Internet gelesen, 
dass es wohl ein Standard Servosignal ist (PWM - Periode 20ms (Vollgas 
2ms am Anfang auf high, Rest low) (Schwach laufend 1ms am Anfang auf 
high, Rest low))

Also wollte ich das Signal erstmal per PWM mit meinem Atmega324p (16MHz) 
erzeugen. Dazu nehme ich nun den 8Bit Timer, und erhalte so 255 (Fast 
PWM). Da ich nach 1 oder 2 mSek den Wert auf low setzten möchte, bewegt 
sich mein Compare-Wert zwischen 13(langsam) und 26 (schnell).

Mein erstes Problem ist nun der Prescaler, ich bekomme mit dem Prescaler 
von max 1024 mit meinen 16MHz Takt ja keine PWM-Periode von 50 Hz (max 
61Hz), oder?

Ist der Ansatz überhaupt richtig? Ist Fast PWM richtig oder bietet sich 
was anderes eher an?
Gast #2475853
Lesenswert?

Jan schrieb:
> Mein erstes Problem ist nun der Prescaler, ich bekomme mit dem Prescaler
> von max 1024 mit meinen 16MHz Takt ja keine PWM-Periode von 50 Hz (max
> 61Hz), oder?

Wie schon in den Millionen anderen 
Modellbau-Servo-mit-PWM-ansteuer-Threads geschrieben wurde:
Die 20ms sind nicht bindend!
Weiterhin besitzen die meisten AVR eine Caputre-Unit, mit der man sowas 
völlig alleinstehend realisieren kann, so dass das System komplett 
automatisch läuft. Man muss sich nur um den Vorgabewert kümmern.
#3520400
Lesenswert?

Hallo,

hoffe mal, dass es der richtige Thread ist...
Gibt es Empfehlungen welche "PWM-Auflösung" sinnvoll ist ?

Hardware-Basis z.B. 32-Bitter (Arm-Cortex-M3 @40MHz)

Wenn ich das PWM-Signal mit 10-Bit "auflösen" möchte
bei ca. 20kHz Schatfrequenz wären das sportliche 20Mhz-PWM-Frequenz.

Also 20MHz entspr. 50ns * 1024 = 51,2µs entspr. ca. 19,5kHz.
Ist das richtig gerechnet ?
Wird in der Paxis mit so einer Auflösung gearbeitet ?

Grüße runout
Dieser Beitrag ist gesperrt und kann nicht beantwortet werden.