Hi, möchte über PWM einen DC-Motor in seiner Drehzahl steuern. Der Motor hängt über einen ULN2803 (Darlington-Treiber) am AVR-Port. Wenn ich jetzt eine Spannung über PWM einstellen will, resettet der AVR jedesmal, ich denke bedingt durch die Induktivität des Motors, da die ganze Geschichte mit LEDs problemlos läuft. Anscheinend reichen die interen Freilaufdioden des ULN2803 nicht. Was kann ich da tun? mfg und thx marco
eine Externe Freilaufdiode einfügen? Hast Du den Motor entstört? Da es sich um einen Bürstenmotor handelt, gibt es bei jedem Wechsel am Kommutator (? Das Ding, wo die Bürsten drauf laufen) nette Blitze von sich, die als HF-Strahlung durch den Raum wandern. Dafür gibt es spezielle Schaltungen (Drosseln in den Zuleitungen, 47nF-Kondensator zwischen den Anschlüssen, 10NF-Kondensatoren von den Anschlüssen zum Gehäuse). Wie man sie alt aus dem Modellbaubereich kennt. Es hilft auch, Motor und Controller galvanisch zu trennen, sprich jedem seine eigene Versorgung. Gruß Rahul
Ohne schaltplan leider sehr schwer was nützliches zu sagen. Aber warscheinlich versaust du dir beim Abschalten der Ind. Last deine Versorgungsspannung. Genaueres jedoch nur mit Schaltplan. MfG Freddy
Ja, genau diese Schaltungen zur Entstörung interessieren mich. Ein Kondensator zwischen den beiden Anschlüssen ist schon drin.
Achso, hab noch ein paar Motordaten gefunden: Bauart: eisenloser Flachläufer Bürsten: Hartsilber, doppelt wirkend Kollektor: goldbeschichtet, flache Bauart Spannung: 12-15 V Strom: 10 mA Drehzahl: 12 min^-1 Gewicht: 14,5 g ist also ein kleiner Getriebemotor
Marco, warum laesst du den motor mit 5 volt anstatt 12-15volt fahren? der ULN laesst dem motor bei 5volt (-womoeglich die MC-versorgungsspannung-) nur sehr wenig spannung uebrig. nimm entweder die eingangsspannung fuer deinen 5 volt regler oder aber eine separate 12Volt stromversorgung...was dann sicher deinem AVR gut bekommt. ed
die 5V sind erstmal nur zum testen. Die Spannungsversorgung kommt aus dem PC (Netzteil). Hab grad mal mit 12V probiert, läuft aber auch nicht.
Ist das Netzteil ansonsten noch irgend wie beslastet, da ein PC-Netzteil ohne genügend Last nur eine sehr schlechte Spannungsqualität liefert. Den Reset des Controllers hast du hoffentlich beschaltet (100n Kondensator gegen masse genügt, da 47k Widerstand gegen 5V schon im Controller).
Hallo, der eingebaute Pullup-Wiederstand ist zu hochohmig, es sollte auf jeden Fall ein 4,7k nach +5V eingebaut werden. Gruß, Arno
Das Netzteil ist schon mit dem PC belastet. Hab nen freien Laufwerksversorgungsstecker nach außen geführt und versorge damit mein Testboard. Der AVR hat schon nen 47k intern? Wußte ich auch noch nicht. Egal, ich hab noch nen 10k extern von Reset nach VCC. C von 0,1µF ist auch drin. Im Datenblatt auf Seite 2 sind in den Abb. gestrichelt zwei Dioden eingezeichnet. Sind das interne oder externe Bauteile? Ich seh den Sinn dieser Dioden allerdings noch nicht ganz.
Hallo Marco, Die Dioden sind intern. Sie sorgen dafür, das der IC bei Negativen Spannunngen am Ausgang oder am Eingang nicht stirbt. Daher das Netzteil schon belastet ist, sollte auch die Spannung OK sein. Reset ist auch richtig beschaltet. (Angaben zu dem eingebauten Pullup-Widerstand findest du bei den "DC Cahracteristics" unter Rrst in den Atmel-Datenblättern). Wenn ich jetzt also alles richtig verstanden habe, ist COM vom ULN2803 auf 5V geschaltet, so das die interne Diode als Freilaufdiode fungiert. Motor und Atmel hängen auf 5V. Reset ist richtig beschaltet. Ist mir zur Zeit nun auch ein kleines Rätsel so per ferndiagnose. Ich würde mir normaler weise jetzt einmal die 5V mit dem Oszi ansehen, das fällt aber wohl flach. Um einfach mal zu testen, ob die Störungen über die 5V deinen ATMEL stören, würde ich nun einfach mal den ATMEL mit einer Anderen Stromversorgung betreiben wie den Motor (evtl. einfach mal 4,5V aus drei Batterien, weis ja net was du zur verfügung hast) Wenn es dann nicht mehr passiert, das der Atmel resettet, ist es die Betriebsspannung.
Hallo Freddy, jo, das hab ich in zwischenzeit auch gemacht, also den Motor an ne Batterie gehängt. ...und siehe da, es funzt alles so, wie es sollte. Also schickt mir der Motor ne Störspannung auf die Leitung zum AVR, trotz Freilaufdiode. Sollte diese das nicht eigentlich verhindern?! Wenn ich mir jetzt eine eigene Spannungsversorgung für die Schaltung zusammenlöte, also Trafo, Gleichrichter, Kondensatoren, 7805 für AVR, 7812 für Motor, werden die Störungen im 12V-Kreis dann auch wieder in den 5V-Kreis überkoppelt? War ja mit dem PC-Netzteil auch so, als ich für den AVR die 5V und für den Motor die 12V genommen hatte.
sperdiere dem AVR mal einen 100nF-Kondensator. Der sollte möglichst direkt am IC sitzen. Den nennt man dann Bunkerkondensator und sorgt dafür, dass die Spannung am IC nicht so stark zusammenbricht, wenn die Spannungsquelle etwas stärker (Motor und seine Störungen) belastet wird. Am besten auch noch einen 10µF parallel dazu.
Bei den PC-Netzteilen sind die Spannungen 5V und 12V magnetisch auf dem Übertrager gekoppelt. Das bedeutet ein Stromimpuls auf der 12V Seite wird auf der 5V Seite auch merkbar sein. Die Freilaufdiode braucht auch eine gewisse Zeit, bis sie Leitend wird. Daher werden schon gewisse Spannungsspitzen auf die Betriebsspannug übertragen. Normaler weise werden bei Schaltungen wie deiner die Steuerkreise und Lastkreise strikt voneinander getrennt. Die von Rahul vorgeschlagenen Änderungen würd ich evtl. noch um eine kleine Spule in Reihe ergänzen. Das sähe dann so aus: 5V >> Spule in reihe >> Kondensatoren gegen Masse >> Atmel Die Spule und die Kondensatoren ergeben dann einen Filter.
@Freddy: was verstehst du unter kleiner Spule? 350µH sind wahrscheinlich etwas viel, oder? Hab jetzt mal ein Netzteil gebaut und alles mögliche ausprobiert: Motor und AVR an gleiche 5V vom PC -> Resets ohne Ende Motor 12V(PC) und AVR 5V(PC) -> Resets ohne Ende Motor 12V(Netzteil) und AVR 5V(PC) -> etwas besser, immer noch Resets Hab dann mal nen anderen Motor genommen, etwas größer und vollständig mit Metall verkleidet. Motor und AVR an gleiche 5V vom PC -> gelegentliche Resets Motor 12V(PC) und AVR 5V(PC) -> gelegentliche Resets Motor 12V(Netzteil) und AVR 5V(PC) -> wunderbar, so solls sein Dann werd ich wohl einfach den größeren Motor nehmen! thx all
Hab ich auch total vergessen! Kleine Motoren freuen sich beim Arbeiten gerne so sehr, dass sie ein Freudenfeuerwerk zünden (an den Bürsten), was dazu führt, dass sie eine ganze Menge Störungen verursachen. Zumindest galt das bei älteren Motoren in der Grössenordnung Mabuchi 140-280.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.