Hallo Leute, ich habe zwar im Netz viel gefunden, aber nicht die Formel nach der ich suche. Ich brauch die Um Spannungsformel in Abhängigkeit vom Vorteiler, Taktfrequenz, Timerwert bis zu dem gezahlt wird, Vergleichswert für den Timer. So habe ich das gemacht (beim Invertierten PWM mit ner Dreiecksfunktion): ----------------------------------------------- ORC1A = Vergleichswert IRC1 = Timerwert bis zu dem gezahlt wird Taus = (Vorteiler/(f_cpu*ORC1A)) Tein = (Vorteiler/(f_cpu*(IRC1-ORC1A))) Um = Umin+(Umax-Umin)*Tein/(Tein+Taus) ----------------------------------------------- Stimmt es so? Danke, Grüsse - Mischa
Mischa schrieb: > Stimmt es so? Was soll eigentlich Um sein? Egal. Ansonsten: Ja ich denke, das ist in etwa equivalent mit der banalen Prozentrechnung, mit der man ausrechnet, wieviele % der kompletten Zykluszeit (die durch ICR1 festgelegt ist) der Output Pin auf ein ist (festgelegt durch OCR1A). Also ICR1 / OCR1A und das dann angewendet auf ein Spannungintervall deltaU = Umax - Umin Um = Umin + deltaU * ICR1 / OCR1A Wenn ich im Kopf den ganzen überflüssigen Teil in deiner Berechnung wegkürze, dann müsste dasselbe rauskommen.
Hi - danke, Um ist die mittlere Spannung (also der Matematischer Mittelwert der Spannung). Ich brauche das als eine Zusammenhängende Formel um zu sehen, was ich am schnellsten/einfachsten verändere um eine benötigte Spannung rauszubekommen. Was verändert man eigentlich in der Praxis, um die richtige Spannung rauszubekommen? Den IRC1, den ORC1A oder der Vorteiler? Danke, Grüsse - Mischa
Hallo, man ändert ORC1A um eine andere Pulsweite zubekommen, was zu einer höheren Spannung führt. Mit IRC1 veränderst du ja die Periode also die Frequenz deines Signals. ORC1A sollte dann auch <=IRC1 sein. Sollte du nur den Vorteiler des Timers ändern, hast du lediglich eine andere Frequenz. Das Verhältnis von ORC1A und IRC1 beleibt dann ja gleich, demnach bleibt theoretisch auch die Spannung die Gleiche. Theoretisch deshalb, falls die Frequenz zu langsam wird muss der Hardware Tiefpass ggf. auch träger gemacht werden. Gruß Klaus
ich habe gerade festgestellt, dass bei mir die Rechnung nicht aufgeht. Ich habe folgendes: ATmega328P, also: ------------------------- f_cpu = 16MHz Vout = 5V TCCR1A = (1<<COM1A1) | (1<<WGM11); TCCR1B = (1<<WGM12) | (1<<WGM13) | (1<<CS10); /* alos nicht invertierende PWM, Der Ausgangspin wird gelöscht beim Hochzählen und gesetzt beim Herunterzählen. Und der Mode 14 ist eingeschaltet - Dreiecksfunktion des Zählers, Vorteiler = 1 */ ICR1 = 65535; OCR1A = 535; --------------------- Wenn ich jetzt die Werte in die Formel einsetze: ----------------------------------------------- Taus = (Vorteiler/(f_cpu*ORC1A)) Tein = 2*(Vorteiler/(f_cpu*(IRC1-ORC1A))) Um = Umin+(Umax-Umin)*Tein/(Tein+Taus) ----------------------------------------------- kommt bei mir Um = 0,08V raus, aber am Ausgang messe ich 0,04V. So wie es aussieht liegt es daran, dass ich aktuell "Fast PWM" betreibe (Mode 14). Wenn ich aber auf Mode 10 wechsele mit "PWM, Phase Correct" dann ändert sich nichts an der Spannung, obwohl die doppelt so hoch sein müsste. Was mache ich falsch? Ist da doch ein Fehler in der Rechnung? Danke, Grüsse - Mischa
Mischa schrieb: > Was mache ich falsch? Du gehst zu naiv ran. Deine Rechnung wird nie aufgehen. Genau deswegen misst man die Spannung und passt die PWM in einer Regelschleife an das gemessene Ergebnis an bis man die Spannung hat, die man haben will. Zwischen Theorie und Praxis ist nun mal ein Unterschied. In der Theorie sind alle Schaltflanken 100% rechteckig. In der Praxis aber nicht. In der Theorie haben alle Tiefpässe die Charakteristik, dass sie unterhalb ihrer Grenzfrequenz nichts durchlassen und über der Grenzfrequenz völlig transparent und nicht beeinflussend sind. Die Praxis ist eine völlig andere. In der Theorie beeinflussen Messinstrumente das zu messende Signal nicht, in der Praxis ....
Mischa schrieb: > Wenn ich aber auf Mode 10 wechsele mit "PWM, Phase Correct" dann ändert > sich nichts an der Spannung, obwohl die doppelt so hoch sein müsste. Nochmal: Die Frequenz, der Vorteiler etc. all das geht nicht in die Spannung ein. Entscheidend ist: Wieviele % eines PWM Zykluses ist der Pin auf 0 und wieviele % (100 minus dem anderen Wert) ist er auf 1. Nur dieses Verhältnis bestimmt die Spannung (bei natürlich hinreichend großer Frequenz, so dass der Tiefpass am Ausgang da nicht auch noch stört und reinpfuscht)
ok, also sollte ich gar nicht den Unteschied zwischen Fast, bzw. Phasenkorrekte PWM in der Rechnung berücksichtigen?
Alles was dich interessiert ist: Wie lang ist der Pin auf 1 und wie lang ist er auf 0. Im Grunde interessiert dich noch nicht einmal wie lange das in Zeiteinheiten (Millisekunden) tatsächlich ist, weil das Verhältnis dieser beiden Zahlen das Wichtige ist. Und da du das eine durch das andere dividierst, kürzt sich mathematisch alles drumherum raus und es bleibt das nackte Verhältnis der Compare Werte übrig um daraus eine dimensionslose Prozentangabe zu ergeben. -> der Pin ist im Durchschnitt seiner Zeit 63% auf 1. Also sollte die Ausgangsspannung auch auf 63% des Maximalwertes sein. Ob sie das tatsächlich ist, ist eine andere Frage.
hmm..., also war ich in der sache zu theoretisch - wie kommst du eigentlich auf 63% ? oder ist es nur ein Beispiel, denn mit deiner Formel oben komme ich auf Um = 5V*65535/535 = 612V :)
Mischa schrieb: > hmm..., also war ich in der sache zu theoretisch - wie kommst du > eigentlich auf 63% ? Hab ich mir ausgedacht, damit eine Zahl dort steht. > oder ist es nur ein Beispiel, denn mit deiner > Formel oben komme ich auf Um = 5V*65535/535 = 612V :) Pisa lässt grüßen :-) Prozentrechnen sollte man in meinem Alter schon können. Natürlich anders rum dividieren :-), das 'Ganze' steht im Bruch unten und der Teil oben Um = Umin + deltaU * OCR1A / ICR1
^:) hab ich mir gedacht, sonst hätte man einen geilen Trafo :D Danke nochmals und frohes Fest
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.