-         

Ergebnis 1 bis 7 von 7

Thema: PWM Augangsfrequenz an ATMega8

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.06.2006
    Ort
    Schweiz
    Alter
    27
    Beiträge
    141

    PWM Augangsfrequenz an ATMega8

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    Hallo

    Ich arbeite gerade an der Motor-Treiber Einheit an meinem Roboter.

    Für die Berechnung von der Ausgangsfrequentz des Treibers habe ich die Formel aus der dem Wiki genommen:

    (Quarzfrequenz/Prescale ) /(Timerauflösung*2)

    Jedoch erhalte ich bei einer Messung mit dem Multimeter (Brymen BM805) immer ein total anderer Wert..
    Hat irgendwer eine idee woran das liegen könnte? An der Ungenauigkeit des Gerätes kann es nicht liegen, denn der Unterschied beträgt immer eininge kHz..

    mfg Borki90

    Meine Page: www.Borki90.roboterbastler.de

  2. #2
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Im "Fast-PWM" Mode ist die Frequenz dopplet so hoch wie im "normalen" PWM Mode. Für Timerauflösung sollte die obere Grenze des Timers stehen.

    Ein häufig gemachter Fehler ist ein Fehler in der Interpretation des Clock Settings. Wenn der RC Oszillator nicht auf der kalibrierten Frequenz schwingt, können die Abweichungen zum nominalen Wert recht groß sein.
    Bei genügend hoher Frequenz sind Fehler von ein Paar kHz für die Frequenzanzeige bei billigen Multimetern nicht ungewöhnlich.

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.06.2006
    Ort
    Schweiz
    Alter
    27
    Beiträge
    141
    Ich sollte noch anmerken, dass ich mich noch nicht so mit Controller auskenne...

    Was meinst du mit Fast-PWM?

    Der AVR läuft im Moment mit einem externen 16MHz Quarz (Fusebits aktiviert) und wird mit Bascom Programmiert.
    Wie kann man die Quarzfrequenz überprüfen?

    Vielen Dank für die Antwort

    mfg Borki90

    PS: Soo billig ist das Multimeter auch nicht... ^^

  4. #4
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Es gibt 2 Sorten von PWM: Fast und PhaseCorrect. Die unterscheiden sich im wesenlichen durch die höhere Frequenz beim fast-PWM. Die Details stehen in den Datenblättern.
    Bei einem 16 MHz Quarz merkt man eine falsche Frequenz eigentlich recht schnell, denn da kommen im wesentlichen 1 MHz vom internen RC in Frage oder ggf. der Takt Teiler bei einigen neueren MEGA.... Sonst ist das PWM Signal eine gute Wahl um die Frequenz nachzumessen, aber darum geht es ja gerade.

    Welche Frequenzen werden denn erwartet und gemessen ? ggf. auch mal den Code posten, dann wird es einfache den Fehler zu finden.

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.06.2006
    Ort
    Schweiz
    Alter
    27
    Beiträge
    141
    Die Frequenz des Quarzes stimmt, soweit ich das messen kann.. einem "Wait 1" Enspringen auch etwa 1s Wartezeit..

    Hier der aus meiner Sicht relevante teil des Codes:
    Code:
    $regfile = "m8def.dat"
    
    $crystal = 16000000
    
    $baud = 9600
    
    Config Pinc.1 = Input                                       
    (...)
    Config Pinb.2 = Output
    
    Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up , Prescale = 8
    Daraus ergibt sich die erwünschte Frequenz: +/- 15kHz

    Die gemessene Frequenz: 490Hz

    Die gemessene Frequenz bleibt bei uterschiedlicher Abtastrate gleich, es kann also nicht daran liegen, dass das Multimeter die PWM nicht mag. (was auch nicht zu erwarten war..)

    mfg Borki90

  6. #6
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Das sieht nach einem wirklich Bascom spezifischen Problem aus. Es ist wirklich schwer zu sagen was der Compiler draus macht, außer man schaut sich den ASM Code an. Mit dem BASIC compiler kenne ich mich leider nicht so aus.

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.06.2006
    Ort
    Schweiz
    Alter
    27
    Beiträge
    141
    Trotztem Danke... Ich werde den Post mal im Bascom Forum Verlinken..

    mfg Borki90

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •