hmm schade, hatte gehofft ich bekomm das hin, ohne die Schaltung groß zu ändern, da sie ja schon fertig ist.
Hatte noch die Idee einen 100nF Kondensator an den Drain Eingang der Fets zu fummeln, so dass der, sobald der BC817 nicht mehr leitet, das Gate enlädt aber das scheint auch nicht schnell genug zu passieren, zumindest klappt es nicht. (Schaltung siehe Analage)
Ich hatte die Zeit gemessen, konnte man im Ozi recht gut erkennen und am Labornetzteil, weil ab 4-5ms keine Kurzschlüsse mehr gezeigt wurden.
ah sry hatte grade erst gesehen, dass du geschrieben hast, also ich habe recht hohe Basisvorwiderstände (4,7k), wenn ich den nun auf 100 Ohm vermindere, dann sollte das die Schaltzeit doch deutlich nach unten setzen, da ich nur einen Pwm verwende, müsste der Controler den höhren Strom doch verkraften?
Muss das immer alles so kompliziert sein? *g*
edit:
hmm hab eben nochmal den Basiswiderstand nachgerechnet, ich komme auf einen Vorwirderstandswert von 300 Ohm, kA warum ich da so einen hohen Wert gewählt habe, die Schaltung ist schon recht alt :/
werde den Widerstand mal gegen 100 Ohm austauschen.
Der Basiswiederstand ist mit 4,7 K schon relativ hoch, aber 100 Ohm sind wiederrum zu niedrig. Das macht der Transistor und auf Dauer auch der µC nicht mit. Richitg wäre da ein Widerstand von etwa 470 Ohm bis 1 K.
Der 100 Ohm Widerstand am Gate des N-MOSFETs könnte noch etwas kleiner werden (z.B. 22 Ohm ... 47 Ohm). Hier fleißt der Strom wirklich nur ganz kurzzeitig, und der höhere Strom stört nicht.
Viel bringt das aber auch nicht - das man macht den vielleichht den Unterschied zwischen 2 µs und 3 µs aus.
Welcher der MOSFETs schaltet denn so langsam. 4 ms kann ich mit nicht so recht vorstellen, außer das sind versehentlich 680 K statt 680 Ohm am P MOSFET.
ich weiß leider nicht genau wie ich das messen kann, welcher der Mosfets so langsam schaltet, der Widerstand ist 680 Ohm, so langsam bin ich mit meinem Latein am Ende, sehr seltsam alles :/
edit:
so ich habe jetzt mal gemessen, zum Test habe ich ein Programm geladen, dass alle 10ms die Phasen umschaltet. Zwischen dem Umschalten wird nochmal 4ms gewartet.
Ich habe mal mit meinem Osci ein Bild geschossen. Gemessen von einer Phase auf GND. Ich hoffe man kann was erkennen.
So ganz viel kann ich auf den Bildern noch nicht erkennen. Der richtig langsame Teil scheint aus Zeiten zu kommen, wo beiden MOSFETs aus sind. Einiges der Flanken sehen doch schon relativ Steil aus. Ganz ohne Last ist es schwierig.
Zum messen sollte man erstmal nur je einen MOSFET ein / auschalten, und als Last einen Wiederstand / Halogenlampe oder ähnliches dran haben. Für den P-MOSFET den Widerstand vom Ausgang der einen Phase nach GND. Für den N-MOSFET nach z.B. + 12 V, oder was man gerade als positive Spannung hat.
so habe mal den P-MOSFET gemessen und der verwirrt mich noch weiter... Programmablauf, schaltet den FET in einer Schleife für 1ms an und dann für 1ms aus. (an PWM: 1, aus: PWM: 255).
Nun erhalte ich aber Phasen von 40ms (an/aus). Gemessen vor dem Widerstand.
so hab dann noch den N-MOSFET gemessen, der verhält sich wie gewünscht, habe Phasen von 1ms, so soll es sein.
Also pennt der P-MOSFET aus irgendwelchen Gründen, die ich jetzt nicht nachvollziehen kann.
soa ich bin es nochmal; erstmal möchte ich mich bei dir für deine tatkräftige Unterstützung danken. Ich habe mir nochmal die einzelnen PWM Signale angeschaut und festgestellt, dass die Ausgangsfrequenz viel zu niedrig ist (61hz) damit kann man natürlich nicht so dolle arbeiten *g*
Ich habe die Frequenz jetzt auf 64khz erhöht und siehe da, das Umschalten klappt ohne Probleme die Messung vom N-Channel sieht nun genau so aus wie bei dem P-Channel.
edit:
so komme jetzt auf 2ms...
der Motor dreht jetzt viel ruhiger aber immer noch recht langsam...
Bei den PWM Werten muß man noch etwas aufpassen. Bei 8 Bit PWM hat man nicht immer die Werte für ganz an und ganz aus dabei. Beim 8 Bit Timer gibt es nämlich 257 Mögliche Ausgangszustände für eine PWM Signal. Das Controllregister hat aber nur 8 Bits. Bei dem P - MOSFET sieht es ein wenig so aus, als hätte man da noch kleine Spikes drin. Reste vom PWM ? Bei den Treibern würde ich PWM nur mit den N Kanal MOSFETs machen.
500 Hz Schrittfrequenz sind für einen Schrittmotor schon nicht so wenig. Ohne Stromregelung ist das schon nicht schlecht. So wie es aussieht ist bei der Schaltung keine Strommesuung vorgesehen. Man müßte also das PWM-verhältnis nach der Pulslänge berechnen. Das wäre das dann so etwas wie eine Drehzahlabhängige Spannungsanpassung. Ich vermute mal, das das bisher noch nicht in der Software vorgesehen ist.
hmm das ist mir jetzt wieder neu, ich dachte immer bei einem 8 bit PWM habe ich 256 Zustände eben 2⁸, also 0 bis 255?
Nein eine Strommessung gibt es in dieser Schaltung leider noch nicht, das habe ich erst in der nächsten Version vor, die Schaltung war auch nie dafür gedacht Schrittmotoren zu betreiben, hatte sich so ergeben, da sie ja 2 H-Brücken hat und ich endlich mal von den fertigen Motortreibern weg möchte.
Die zweite Version der Schaltung bekommt auch noch ein paar andere Dinge, so dass ich auch brushless Motoren ansteuern kann. Mir ging es bei der Schaltung nur darum rauszufinden, ob das Grundprinzip funktioniert.
Das Bild von dem P-MOSFET sieht mit der richtigen PWM Frequenz nun genau so aus, wie das von dem N-MOSFET, also einzelne Spikes sind da nicht mehr zu erkennen. Mir ist auch aufgefallen, wenn ich unter 2ms gehe, dann zeigt mein Netzteil zwar einen Kurzschluss an, ich habe aber keinen Einbruch der Spannung mehr, den Motor stört es auch nicht. Vielleicht ist es aber sinnvoll die Schaltung in der nächsten Version durch den Gatetreiber zu erweitern, nimmt ja nun nicht so viel Platz weg.
Lesezeichen