Forum: Mikrocontroller und Digitale Elektronik PWM Ansteuerung DC motor control module (Atmega168A)


von Jackson S. (jackson55)


Angehängte Dateien:

Lesenswert?

Hallo microcontroller community,

mein Ziel ist es mit einem Atmega168A einen DC motor auf einen 
speziellen control module geschwindigkeitstechnisch im links und rechts 
lauf zu regeln. Die Ansteuerung wollte ich per PWM realiseren, die 
Feedback erhalte ich analog vom Tachogenerator in der range von -5V bis 
+5V. Soweit nichts ausgewöhnliches, jedoch setzt das module ein 
bestimmtes definiertes PWM signal voraus. Die Eigenschaften sind auf den 
Bild zu sehen. Da ich im Ansteuern via PWM noch keine Erfahrungen habe, 
wollte ich euch fragen, welches PWM setup für die geforderten 
Eigenschaften am sinnvollsten ist. Mein Gedankengang war ein PWM mit der 
pulsbreite von 3 ms zu erzeugen und dafür den 0CR0A mit z.b bei 2^8 bit 
pwm mit 128 vorzuladen sodass die pulsbreite 1,5 ms beträgt und somit 
der Motor stillst steht. Je nach drehrichtung dann den differenz 
Regelwert vom PID regler abziehen oder zu addieren?


Für ein paar Tipps wäre ich sehr dankbar

mfg jackson

von Mr. Pic (Gast)


Lesenswert?

Jackson Sowieso schrieb:
> IMG_3505.JPG 3 MB
Wirklich toll, wieviele Pixel die Kamera von deinem iPhone 4S hat. Und 
auf das Rauschen bist du stolz?
Vom Informationsgehalt würde man das Photo wohl in den Bereich einiger 
100 Bye einordnen und selbst als JPG ist der Inhalt mit 200 kByte mehr 
als ausreichend repräsentiert.
Lies dir doch mal die Hinweise über Bildformate durch.

von Mike (Gast)


Lesenswert?

Jackson Sowieso schrieb:
> einen DC motor auf einen speziellen control module
Redest du von einer Segelwinde? Die Ansteuersignale sehen aus wie bei 
Modellbau-Servos und dazu gibt es hier etliche Threads im Forum. Die 
20ms Pause zwischen den Pulsen sind dabei völlig unkritisch.

von spess53 (Gast)


Lesenswert?

Hi

>Soweit nichts ausgewöhnliches, jedoch setzt das module ein
>bestimmtes definiertes PWM signal voraus. Die Eigenschaften sind auf den
>Bild zu sehen.

Sieht wie die Ansteuerung eines Modellbau-Servos aus.

>Mein Gedankengang war ein PWM mit der
>pulsbreite von 3 ms zu erzeugen und dafür den 0CR0A mit z.b bei 2^8 bit
>pwm mit 128 vorzuladen sodass die pulsbreite 1,5 ms beträgt und somit
>der Motor stillst steht.

Eine höhere Auflösung bekommst du mit Timer1, PWM-Mode 14 oder 15. Den 
Vorteiler so einstellen, das die Overflow-Zeit größer als 20ms ist. 
Genaue Zeit mit ICR1 bzw. OCR1A einstellen. Mit OCR1A (Mode 15) oder 
OCR1B (Mode 14/15) den Bereich von 1..2ms einstellen.

MfG Spess

von Jackson S. (jackson55)


Lesenswert?

spess53 schrieb:
> Sieht wie die Ansteuerung eines Modellbau-Servos aus.

Ah ok sehr hilfreich, dazu gibt es einiges bezüglich der Ansteuerung per 
PWM! Danke

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.