wollte fragen wie genau man im allgemeinen bei µC eine bestimmte PWM Rate am PWM Ausgang einstellen kann. die Frequenz liege im Bereich zwischen 30Hz und 200Hz, also eher niedrig. mit welchen Toleranzen muss man rechnen ? Ich habe nämlich eine Schaltung dimensioniert die sich bei verschiedenen PWM Raten unterschiedlich verhält. Wird die Schaltung mit einer bestimmten PWM Rate gespeist, so darf die Abweichung maximal +/- 2% betragen (zb. 70% PWM +/-2%). Wäre das machbar ? oder sollte ich im Hinterkopf behalten dass manche µCs solche Toleranzen nicht einhalten können... ? mfg
2% sollten kein Problem sein... >Ich habe nämlich eine Schaltung dimensioniert die sich bei >verschiedenen PWM Raten unterschiedlich verhält. Sicher, dass die auf unterschiedliche PWM-Raten reagiert und nicht auf unterschiedliche Duty-Cycles? Was genau möchtest du denn genau kriegen? - stabile PWM-Frequenz? -> Gutes Quarz/guten Oszillator verwenden und abgleichen. Einige µCs haben interne Oszillatoren, die sich feinjustieren lassen - reicht für viele Fälle aus. - Den Duty-Cycle? -> Sinnvollen Wert für die Obergrenze festlegen und ausreichende Auflösung wählen. Wenn du nur diskrete Duty-Cycles mit linearem Abstand erzeugen willst, sind oft nahezu 0% Abweichung drin. Wenn du nur Die Frequenz änderst und nicht das Tastverhältnis, würde ich es eher als Frequenzgenerator als PWM bezeichnen. Wenn es das ist, was du willst gib nochmal Bescheid, dann rechne ich das durch. Sag einfach mal genau, was du brauchst - ggf. mit Beispielen. Gruß Kai
Was für ein µC? Mit nem 16-Bit-Timer hast Du bis zu 65536 PWM-Schritte. Wenn der Takt-Input entsprechend gewählt wurde, dass Du den maximalen Zählbereich genau auf die benötigte Periodendauer abbilden kannst, dann kannst Du eine Auflösung von 1/65536 = 0,015 Promille erreichen...
> wollte fragen wie genau man im allgemeinen bei µC eine bestimmte PWM > Rate am PWM Ausgang einstellen kann. Im Allgemeinen hängt das vom µC und davon ab, wie du es programmierst. > die Frequenz liege im Bereich zwischen 30Hz und 200Hz, also eher > niedrig. Bei PWM ist die Frequenz in der Regel fest. Nur das Tastverhältnis wird geändert. > mit welchen Toleranzen muss man rechnen ? Mit irgendwelchen. Ohne Infos über den µC kann man nicht mehr sagen. > Wird die Schaltung mit einer bestimmten PWM Rate gespeist, so darf die > Abweichung maximal +/- 2% betragen (zb. 70% PWM +/-2%). Wäre das > machbar ? oder sollte ich im Hinterkopf behalten dass manche µCs solche Toleranzen nicht einhalten können... ? Soll deine Schaltung denn nachher von jedem beliebigen µC angesteuert werden können? Es gibt bestimmt welche, die das nicht schaffen, wenn man Software-PWM macht und die ungünstig programmiert ist. Außerdem hängt es von der Taktquelle ab.
@ stephan (Gast) >zwischen 30Hz und 200Hz, also eher niedrig. mit welchen Toleranzen muss >man rechnen ? Rechnen ist das Stichwort. >Ich habe nämlich eine Schaltung dimensioniert die sich bei >verschiedenen PWM Raten unterschiedlich verhält. Wird die Schaltung mit >einer bestimmten PWM Rate gespeist, so darf die Abweichung maximal +/- >2% betragen (zb. 70% PWM +/-2%). ??? Kann es sein, dass du PWM-Frequenz und Tastverhältnis in einen Topf wirfst? PWM > Wäre das machbar ? oder sollte ich im >Hinterkopf behalten dass manche µCs solche Toleranzen nicht einhalten >können... ? Informiere dich über die Funktionswise von PWM bei Mikrocontrollern. AVR-Tutorial: PWM Dann wirst du feststellen, dass dort die PWM voll digital erzeugt wird und sehr genau ist. MFG Falk
danke soweit... die 30Hz bis 200Hz soll heissen, dass die Grundfrequenz des Signals in diesem Bereich liegen soll und nicht darüber hinaus. d.h. meine schaltung funktioniert bei 30Hz identisch wie mit 200Hz. Meine Frage bezieht sich nun auf die Duty Cycle. Ich denke der wesentlische Unterschied der für mich zu beachten wäre, ist ob der µC die PWM softwaregesteuert oder über eine feste PWM Schnittstelle einstellt. Bei SW Steuerung über Timerinterrupt z.B. hängt die Auflösung von der Timerfrequenz und dem Interruptdelay ab. Meine Schaltung soll universell angesteuert werden können. Ich denke mit den 2% kann ich mehr als gut leben.
Eine 8-Bits-PWM hat eine Genauigkeit von 1 / 2^8 * 100% ~= 0,4% d.h. du liegst maximal +-0,2% daneben Bei 16 Bits: 0,0015% bzw +-0,000763% Willst du nur diskrete Stufen erreichen wie z.B. 10%, 20%, 30%, usw.? Dann kann die Genauigkeit ohne Zusatzaufwand noch deutlich gesteigert werden. Wenn möglich würde ich von der Software-PWM aus oben genannten Gründen abraten.
Kai Giebeler wrote: > Eine 8-Bits-PWM hat eine Genauigkeit von > 1 / 2^8 * 100% ~= 0,4% > d.h. du liegst maximal +-0,2% daneben > > Bei 16 Bits: 0,0015% bzw +-0,000763% Soweit ich das weiß, ist das nicht die Genauigkeit, sondern die Auflösung (siehe johnny-m)
Der Witz einer PWM ist, daß die Genauigkeit = Auflösung ist. Die Anstiegs- und Abfallzeiten sind vernachlässigbar gegenüber der Bitzeit. Die Gesamtgenauigkeit hängt natürlich von der nachgeschalteten Schalterstufe, Referenzspannung und Filterstufe ab. Für 16 Bit Genauigkeit nehme ich vorzugsweise einen 74HC04 als Schaltstufe, der von der Referenz versorgt wird. Peter
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.