- fchao-Sinus-Wechselrichter AliExpress         
Ergebnis 1 bis 6 von 6

Thema: Hochgenaue Impulse erzeugen

  1. #1

    Hochgenaue Impulse erzeugen

    Anzeige

    Praxistest und DIY Projekte
    Hallo zusammen,

    ich habe eine grundsätzliche Frage!
    In meinem Projekt brauche ich sehr genaue Impulse mit einem AtMega328P Mikrokontroller zu erzeugen. Die Genauigkeit soll besser sein wie 0,5 us.
    Meine Frage ist, kann man diese Genauigkeit diesen Mikrokontroller überhaupt erreicht werden und wenn ja, geht es auch bei den internen Taktquellen von dem Mikrokontroller und bei welchem Timer-Mode?
    Und meine zweite Frage: Ist die Genauigkeit generell besser wenn man einen externen Oszillator hat?

    Danke im Voraus für Eure Tipps!

  2. #2
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.678
    .. brauche ich sehr genaue Impulse mit einem AtMega328P .. Genauigkeit soll besser sein wie 0,5 us ..
    Vielleicht klinge ich jetzt recht dämlich: 0,5 - das ist also etwas zwischen 0,451 und 0,549 - nicht wahr? WENNS sehr genau sein sollte würde ich schon mal die Anzahl der signifikanten Stellen nennen. Vermutlich meinste Du aber etwas in der Art 0,5000?? µs denn die 0,5 µs dürfte selbst ein nackter mega328P schon hin und wieder schaffen: bei 8 MHz-Einstellung sind ja vier Takte theoretisch Deine 0,5 µs - nur die Frage was dann hinterm Komma steht . . .
    Die Frage wäre nach meiner Meinung klarer in der Art: 0,5unddieseNachkommastellen, dazu erlaubter/gewünschter Toleranzraum oder die zulässige Abweichung nach einem Tag oder einem Jahr *ggg*, Angabe der Umgebungsbedingungen wie: bewohnter Raum (sozusagen irgendwo zwischen 280K und 300K - im Sommer auch höher) oder "draussen" freistehend? usw usf.
    Werte für die Frequenzstabilität stehen im Datenblatt, meist unter ".. Typical Characteristics ..".

    .. Ist die Genauigkeit generell besser wenn man einen externen Oszillator hat ..
    Was heisst generell? Willst Du die Genauigkeit (siehe oben) OHNE Oszillator machen? Mal vorsichtig ausgedrückt: wenn ich genaue Impulse bräuchte würde ich keinesfalls an den internen Oszillator denken. Dann wären wir aber wieder bei der klarer(?er?)en Angabe.
    Ciao sagt der JoeamBerg

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.04.2015
    Beiträge
    897
    Bezogen auf den Quarz und analog zu AD-Wandlern:
    Es gibt nun mal die Begriffe "Auflösung" und "Genauigkeit". Der Timer löst in Takten auf, aber die Genauigkeit des internen RC-Oszillators liegt abhängig von Temperatur, Spannung und auch Exemplarstreuung im Prozentbereich.
    Mit einem Quarz kommst Du in den ppm-Bereich.

    Selber kann der Timer z.B. über die PWM-Funktionen auch eine taktgenaue Ausgabe produzieren, wenn man die Output-Compare-Pins verwendet. Da ist allerdings z.B. die Einschränkung, dass man aufgrund der Länge eines Pulses manchmal einen Prescaler (Vorteiler) bemühen muss, der die Auflösung wieder verringert.
    Dagegen gibt es zweifellos Mittel, wie z.B. den Timer ein paar mal komplett durchlaufen zu lassen und dann im entscheidenden Augenblick den fraktalen Rest als Overflow-Wert ins passende Register zu schreiben. Aber das ist nicht ganz unkompliziert.

    Kannst Du vielleicht mal beschreiben, wie Deine Pulse zeitlich verteilt sind? Also Länge (von..bis) und Wiederholrate?
    Geändert von Holomino (03.11.2024 um 16:58 Uhr)

  4. #4
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.678
    .. sehr genaue Impulse mit einem AtMega328P Mikrokontroller zu erzeugen ..
    Gestern fiel mir noch ne recht informative Seite ein zum Thema AVR/Takt/Quarz/Genauigkeit. Die hilft leider nicht wirklich bei genau Deiner Aufgabe aber erhellt ein bisschen das Thema "drumrum".
    Ciao sagt der JoeamBerg

  5. #5
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.678

    Nur ais eigenem Interesse

    Offenbar waren unsere Kommentare nicht der Hoppen . . . egal. Hat mich mal selbst interessiert. Daher:

    Breadboard, n rumliegender 328, ein x-belieber 20 MHz-Quarz, ein kurzes Progrämmchen, ne LED und der PC-Oskar (WaveForms fürs DISCOVERY-ANALOG2).

    Für eine leere while ( 1 ) -Schleife diese Initialisierung
    Code:
    // ============================================================================= =
    // ===  Initialisierung fuer Timer2 mega328 ==================================== =
      void TC2TMR_init ( void )     // Init 8bitTC2-Irupt Zeitbasis 20 kHz
     {                              //
      TCCR2A    |=   (1<<WGM21);    // Timer im CTC-Mode, Top=OCR2A
      TCCR2B    |=   (1<<CS20);     // NO Prescaler 1/1 / Clock <- CPU
      OCR2A      =          100;    // Preset 100 für  5µs bei 20Mhz
      TIMSK2    |=   (1<<OCIE2B);   // Tmr/Cntr2 Comp Match B Intrpt Enabl
     }                      // Ende void TC2TMR_init ( void )
    // ============================================================================= =
    und diese Interrupt-Routine
    Code:
    // ============================================================================= =
    // ===  Nicht unterbrechbare ISR für Timer2 - COMPB-vect  ====================== =
    //      - Routine toggelt PC3
    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      ISR (TIMER2_COMPB_vect)       // Tmr/Cntr2, @20kHz
     {                              //
      PORTC ^=  (1<<PC3);           // blLED PC3 toggeln
      return;
     }              // Ende ISR (TIMER2_COMPA_vect) ... Vektor...
    // ============================================================================= =
    bringen mir dieses Oscar-Bildchen - die Anzeige schwankt zwischen 5,044 und 5,046 µs.

    Bleistift und Papier sagen dazu SCHWANKUNGSbreite ist hier 0,4 %. Für die Vorgabe von "GENAU" 0,5 µs also schon ausreichend. Für Aufgaben im ppm-Bereich leider aber mau. UND wenn ich sehe, dass die PTB für ne hochgenaue Temperaturmessung (beispielsweise) gute drei Wochen Akklimatisierung der Messeinrichtung sinnvoll hält . . . Übrigens habe ich nicht nach der ppm-Abweidung der Atomuhr gefragt.

    Klar ist, dass sich dieser hübsche Wert mit zusätzlichen Rechneraktivitäten je nach Priorisierung von Interrupts etc verschlechtern wird.

    ......Klicke auf die Grafik für eine größere Ansicht

Name:	5p045µs +-0p02proz.jpg
Hits:	5
Größe:	36,5 KB
ID:	36023

    Grüße
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken 5p045µs +-0p02proz.jpg  
    Geändert von oberallgeier (Heute um 13:37 Uhr)
    Ciao sagt der JoeamBerg

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.04.2015
    Beiträge
    897
    bringen mir dieses Oscar-Bildchen - die Anzeige schwankt zwischen 5,044 und 5,046 µs.
    Ich will jetzt nicht mosern. Aber die absolute Abweichung liegt dann bei 2ns.
    Bist Du sicher, dass Dein Oszi mit mehr als 500 MSamples abtastet? Und Dir die Bandbreite Deines Tastkopfes nicht auch noch eine Strich durch die Rechnung, äh Messung macht?

    Nachtrag: 0,4% Abweichung wären bei einer Uhr knappe 6min Fehler pro Tag.
    Teile ich Deine 5046 durch die 5044, komme ich auf 1,0004. Das sind 0,04% oder etwa 35s/Tag.
    Genug geklugscheißert. Du hast heute einfach einen schlechten Tag. Lass uns was Sinnvolles machen und Glühwein trinken gehen (bevor wir hier noch mehr Schaden anrichten).
    Geändert von Holomino (Heute um 15:36 Uhr)

Ähnliche Themen

  1. Solar Impulse: Solar Impulse 2 hebt zum ersten Mal ab
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 02.06.2014, 11:00
  2. Solar Impulse: Solarflugzeug Solar Impulse 2 ist startklar
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 09.04.2014, 22:40
  3. Impulse
    Von triti im Forum Elektronik
    Antworten: 11
    Letzter Beitrag: 30.11.2012, 13:49
  4. Impulse erzeugen mit Atmega32 und dann nach Line-in Notobook
    Von funkheld im Forum AVR Hardwarethemen
    Antworten: 3
    Letzter Beitrag: 19.02.2010, 18:53
  5. Hochgenaue Spannungsquelle
    Von Olle_Filzlaus im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 4
    Letzter Beitrag: 10.12.2007, 19:26

Berechtigungen

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

Solar Speicher und Akkus Tests