Hey,
ich habe mit der Hilfe aus folgendem Link ein 20kHz PWM mit meinem
Arduino nano generiert.
Beitrag "Arduino Nano - 20 kHz PWM an OC1A/OC1B"
Wenn ich dies jetzt aber mit einem Oszilloskop messe, schwankt die
mittlere Spannung daraus sehr ungleichmäßig(zw 900mV und 1,44V). Ich
würde aber gerne ein PWM mit 20kHz und einer resultierenden mittleren
Spannung von 2V haben... Wie erreiche ich das?
LG
Das sollte über das Verhältnis (Tastverhältnis) funktionieren:
https://www.mikrocontroller.net/articles/Pulsweitenmodulation#BeispieleKaffeetasse schrieb:> schwankt die mittlere Spannung daraus sehr ungleichmäßig(zw 900mV und 1,44V)
Falls das wirklich so ist, dann ist deine PWM aber nicht sehr
gleichmäßig.
Hast dir mit dem Oszi auch mal die PWM angeschaut oder nur den
Mittelwert?
Kaffeetasse schrieb:> Wenn ich dies jetzt aber mit einem Oszilloskop messe,
Haste dort Cycle Mean oder Mean als Messung eingestellt? Das ist n
gravierender Unterschied. Halte doch mal n Multimeter ran. Was für ein
Filter sitzt hinter der PWM?
Danke schonmal für die schnelle Anwort :)
Hmm ja, mein Problem liegt auch darin, das Tastverhälnis einzustellen...
Dass es damit zusammenhängen muss, habe ich soweit verstanden, nur wie
kann ich das generell einstellen?
Ja, das PWM Signal ist generell sehr ungleichmäßig. Ich war mir nicht
sicher, ob das normal ist, oder ob ich daran dann etwas ändern kann?
Hier mein Code und der Screenshot. Ich habe bei dem Beispielcode oben
(im Link in meiner Frage) nicht immer ganz verstanden, was nun zu Pin 9
und was zu Pin 10 gehört, daher hab ich manche Sachen drin gelassen, die
vielleicht unnötig bei mir sind...
(hoffe ich hab das Bild jetzt nicht mehrfach angehängt, in der Vorschau
taucht es irgendwie nicht auf)
Ingo L. schrieb:> Haste dort Cycle Mean oder Mean als Messung eingestellt? Das ist n> gravierender Unterschied. Halte doch mal n Multimeter ran. Was für ein> Filter sitzt hinter der PWM?
Das Multimeter zeigt eine ziemlich deutliche Spannung von 2,3V an, aber
das ist ja etwas ganz anderes als das, was das Oszilloskop anzeigt?
bis jetzt noch gar kein Filter, den will ich dann aufbauen, wollte nur
erst mal ein klares Signal haben.
Was meinst du genau mit Cycle mean und mean?
Die Flanken stehen stabil, da "wackelt" nichts. Du kannst ja mal die
zeitkonszante vom oszi Stauchen. Da wird wohl die betriebsspannung
rumeiern, an der PWM scheinst, nach den Bildern nicht zu liegen. Die
Impulse werden ja auch von der Hardware, unabhängig vom Programm
erzeugt.
Das kommt aber alles ins setup, das nur am Rande. Willst ja nicht
laufend deine Register neu initialisieren. Probier mal, ob's daher
rührt.
Kaffeetasse schrieb:> void loop() {> TCCR1A = (1 << COM1A1) | (1 << COM1B1) | (1 << WGM11);> TCCR1B = (1 << WGM13) | (1 << WGM12) | (1 << CS10);> ICR1 = (800- 1);> OCR1A = (800 - 1) / 2;> }
Also ich würde das Timer-Setup eher nicht in der loop() immer und immer
wieder ausführen.
Auf die schnelle mal was gefunden, kannst es ja mal überfliegen oder
soagr bei dir mal testen.
https://wolles-elektronikkiste.de/timer-und-pwm-teil-1
Äxl schrieb:> Die Flanken stehen stabil, da "wackelt" nichts. Du kannst ja mal> die zeitkonszante vom oszi Stauchen. Da wird wohl die betriebsspannung> rumeiern,
Mit einem DSO Jitter zu messen kann eine mittlere Challenge sein -
überhaupt für jemand, der noch nicht mal sauber eine Masse anklemmem
kann.
Euer Klaus
Okay also das Problem mit dem ungleichmäßigen PWM Wert hat sich gelöst,
ich habe vorher gedacht, dass es nicht zwingend notwendig sei,
zusätzlich noch gegen Masse zu ziehen, aber das scheint wohl in dem Fall
notwendig zu sein
Kaffeetasse schrieb:> zusätzlich noch gegen Masse zu ziehen
Diese Ausdrucksweise zeugt schon davon dass du ganz genau
weisst was du machst.
Ich mache mir da einen Reim daraus, aber was du da machst
ist nicht wirklich klar.
Ich sehe auf dem Oszilloskop Bild hölle viel Rauschen auf den HIGH und
LOW Pegeln. Entweder hast du einen sehr schlechten Messaufbau oder die
Schaltung hat erhebliche Mängel. Zeige mal Schaltplan und Fotos.
Stefan ⛄ F. schrieb:> Ich sehe auf dem Oszilloskop Bild hölle viel Rauschen auf den HIGH> und LOW Pegeln. Entweder hast du einen sehr schlechten Messaufbau oder> die Schaltung hat erhebliche Mängel. Zeige mal Schaltplan und Fotos.
Hat er geschrieben. Er wusste nicht, dass man die masseklemme auch
anschließen muss.
Geht's denn jetzt?
Kaffeetasse schrieb:> Das Multimeter zeigt eine ziemlich deutliche Spannung von 2,3V an, aber> das ist ja etwas ganz anderes als das, was das Oszilloskop anzeigt?
Das Oszilloskop kann nur mitteln, was es aufgezeichnet hat. Je nach dem,
ob es gerade viel "high" oder viel "low" im Speicher aufgeschnappt hat,
schwankt der Mittelwert entsprechen.
Lerne mit deinem Oszilloskop umzugehen. Traue keinen Zahlen, von denen
du nicht verstanden hast, wie sie entstehen.
Kaffeetasse schrieb:> pwm.jpg
p.s.
Die hast auch noch ein ziemliches Problem mit deinem Messaufbau. Aus dem
Pin 9 kommt eigentlich ein halbwegs sauberes Digitalsignal raus und
nicht so ein verstörtes Signal, wie auf dem Oszilloskop zu sehen ist.
Der Low-Pegel muss im unbelasteten Zustand ziemlich genau 0V sein und
der High-Pegel VCC.