Hat jemand ein Anschlussbeispiel für den ATmega 168 und die MiniHBridge um einen Motor mit PWM vorwärts und rückwärts fahren lassen kann.
Mfg
tobi
Druckbare Version
Hat jemand ein Anschlussbeispiel für den ATmega 168 und die MiniHBridge um einen Motor mit PWM vorwärts und rückwärts fahren lassen kann.
Mfg
tobi
Das da:
https://www.roboternetz.de/wissen/in...en_Ansteuerung
dürfte genau das sein, was du suchst.
jain... ich will wissen an welchen Pin am Atmel der PWM Pin der HBridge hin muss.
Kommt auf den verwendeten Timer an...
Beim Mega168 laut Datenblatt:
Bild hier
OC1A - Pin 15 - PB1
OC1B - Pin 16 - PB2
OC2A - Pin 17 - PB3
OC2B - Pin 5 - PD3
OC0A - Pin 12 - PD6
OC0B - Pin 11 - PD5
Sollten alle gehen.
Oder jeden beliebigen bei Software PWM (natürlich nicht unbedingt zu empfehlen)
ja ok...
der Enabled A und der Enabled B Pin brauchen nen 0815 I/O Pin.
Die Reichtungsanwahl a und b brauchen auch 0815 I/O Pins dann bleibt noch der PWM.
Muss der an den OC0A oder an den OC0B (ich verwende Timer0 reicht mir)
oder was ist besser wen ich prozessorzeit sparen will timer0 oder 1?
Mfg
Tobi
*push*
noch mal die frage ganz dumm gestellt:
An welchen Pin am AVR muss ich den PWM Pin der H-Bridge anschließen?
BlooD hat dir ein Stück weiter oben die Pins aufgelistet und sogar die Pinbelegung vom ATMega168 gepostet. Hättest du es gerne bunt ausgemalt oder was fehlt dir noch?Zitat:
noch mal die frage ganz dumm gestellt:
An welchen Pin am AVR muss ich den PWM Pin der H-Bridge anschließen?
Wie sähe das dann etwa aus, in bunt?Zitat:
Zitat von recycle
Manfred
](*,) drück ich mich den so doof aus!
Ich hab noch nie mit PWM gearbeitet!
Im RN Wissen wird immer nur von OCnA und OCnB geredet. Das gleiche in der Manual des Prozessors. Nur WELCHEN von den beiden muss ich an den PWM Pin anschließen.
mfg
btw: n ist name des timers. Timer0 = n := 0
Soo nochmal ausführlicher und in bunt...
Bild hier
[highlight=black:be78fa8f47]
OC1A - Pin 15 - PB1
OC1B - Pin 16 - PB2
OC2A - Pin 17 - PB3
OC2B - Pin 5 - PD3
OC0A - Pin 12 - PD6
OC0B - Pin 11 - PD5
[/highlight:be78fa8f47]
Du willst einen Motor in der Drehrichtung steuern. Dafür brauchen wir beispielsweise folgende Schaltung. Es geht natürlich auch mit einer anderen, aber diese ist universell für viele Motoren geeignet, damit kann man auch z.B. 12V und 10A steuern. Ein weiterer Vorteil ist auch das Bremsen des Motors (läuft nicht aus) wegen des 4 Quadrantenbetriebes, aber ich will es nicht übertreiben. Kurz: Die Schaltung ist gut.
Bild hier
Die Richtung gibt vor, in welche - du ahnst es sicher schon - Richtung der Motor dreht. Bei +5V dreht er im Uhrzeigersinn, bei 0V dagegen.
Der PWM-Anschluss: Liegt da 5V an, dreht sich der Motor, liegt da 0V an, bleibt dieser stehen. Verschiedene Geschwindigkeiten erhält man, indem man den PWM-Anschluss mit einem Signal belegt, das schnell zwsichen 0V und 5V umschaltet. Wie schnell der Motor dann dreht bestimmt das Tastverhältniss, dieses beschreibt nämlich, wie lange innerhalb einer Periode 5V und 0V anstehen.
Zu sehen in folgender Grafik (PWM):
Bild hier
oder hier noch schöner:
Bild hier
Irtümlich ist die Annahme, das die Geschwindigkeit über die Frequenz gesteuert wird. Die Frequenz, und damit die Periodenzeit, bleibt bei PWM gleich, ändern tut sich das Tastverhältnis und damit die Einschaltsdauer des Motors.
Man muss nicht die PWM-Pins des AVRs nehmen, um den Motor zu steuern. Man kanns auch so machen:
Das nennt man dann Soft-PWM. Ist aber eine Belastung für den AVR und sollte vermieden werden. (PWM läuft i.d.R im Hintergrund)Code:Zeit_ein = 200
Zeit_aus = 100
1:
IrgendeinPinAnDemPwmAngeschlossenIst = ein
Pause Zeit_ein
IrgendeinPinAnDemPwmAngeschlossenIst = aus
Pause Zeit_aus
Goto 1
Arbeitest du mit Bascom? Dann dieses Beispiel anschauen
https://www.roboternetz.de/wissen/in...Bascom_und_PWM
Soo, hoffentlich hats nun weitergeholfen. Ansonsten ist Google sicher auch dein Freund.