Hallo zusammen, ich hab ein Problem mit der PWM des Timer 2 im Atmega 32 (12MHz Systemtakt). Der Stromlaufplan zeigt die Anordnung, die im Moment auf der Platine (Streifenraster) in Betrieb ist. In der Software habe ich einen einfachen P-Regler realisiert, der mir die Spannung über der Maschine (angeschlossen an X2) auf einen Wert zwischen 7V und 12 V stellt. Die Sollwertvorgabe erfolgt über das Poti am Portpin PA0. Am Poti kann eine Spannung von 3V bis 5V eingestellt werden. Der eingelesene Wert wird in der Software auf 7 - 12V hochgerechnet. Die Spannung über der Maschine wird an den Portpins Pa5 und PA7 digitalisiert und über das Verhältnis von 10/3 (Rges / R24k) auf den "echten" Istwert hochgerechnet. Nun zum Problem: Wenn das Poti auf Minimum steht (3V Sollwert), dann dauert es nicht lange (Zeit variiert zwischen wenigen Sekunden und wenigen Minuten) und die Maschine bekommt von der PWM Vollgas. Ich kann dann am Poti drehen wie ich will, die Maschine lässt sich nicht mehr einfangen. Erst dachte ich, dass es ein Rechenfehler sei. Da aber alle anderen Potistellungen bis Maximum einwandfrei funktionieren und die Maschine dann auch die Stellgröße bekommt, die eingestellt ist (Regeldifferenz wgn P-Regler mal vernachlässigt), hab ich erstmal überprüft, was in OCR2 steht und das auf einem Port ausgeben lassen. Die Werte entsprachen nicht 255. Die Regelung lief weiter und wollte die Maschine einfangen, die ausgegebene Spannung blieb trotzdem auf 5V. Selbst wenn ich dem OCR2 den Wert 255 erst vorgebe und dann auf ein Ereignis hin (Ablauf 5s) die Regelung einschalte, wird die Maschine in den am Poti eingestellten Bereich zurückgestellt. Mit einem Überlauf oder so habe ich es anscheinend also nicht zu tun. Spannungsspitzen kann ich theoretisch ausschließen, da der Mittelwert von 60 Messungen genommen wird. Und auf dem Oszilloskop habe ich auch keinen Zusammenhang zwischen diesen Ausreissern und Spannungsspitzen am Solleingang oder an den Istwerteingängen finden können. Einen anderen Controller hab ich auch schon ausprobiert. Die Bahnen unmittelbar an der Signalführung des PWM-Signals führen kein 5V-Potential. Meine Vermutung ist, dass der Impedanzwandler mit dem Transistor Q2 das Problem ist. Aber ein Austausch erbrachte auch keinen Erfolg. Also meine Frage: Was könnte hier das Problem sein?! Und warum nur bei Sollwertminimum?! Ich hoffe, das ist alles nicht zu viel an Infos. Ich bin erstmal mit meinen Ideen am Ende. Für fachlichen Support wärte ich sehr dankbar! Grüße Dennis PS: Der Motor ist mit 100nF parallel zu Plus und Minus und zwei Ferritringen mit 8mal umwickelten Zuleitungen abgeschirmt.
also mir kommt diese Kollektorschaltung als Vorstufe etwas seltsam vor! Wieso hast du dich für eine Solche entschieden? Schließ doch deine Darlingtons direkt (Basis-R nicht vergessen - je Transistor so 560 Ohm) an deinen µC an wenn du bei der Spannung die Darlingtons nimmst, können die Ströme ja nicht so groß sein. Wie groß sind die Motorströme eigentlich? Bei 2,5V UCE,Sat ist der Transistor meiner Meinung nach nicht wirklich sinnvoll, daher rate ich dir, die beiden Treiberstufen (NPN, PNP Darlingtons) durch MOSFETS zu ersetzten welche einen relativ geringen R DS,on haben sollten. Die Widerstände der Darlingtons von Basis zu GND kannst du dir sparen, hast ja intern schon ca 8,1k (siehe Datenblatt: "http://pdf1.alldatasheet.com/datasheet-pdf/view/2932/MOTOROLA/BD677.html )
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.