-
        

Ergebnis 1 bis 7 von 7

Thema: Frequenzerzeung

  1. #1
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    10.03.2005
    Alter
    28
    Beiträge
    967

    Frequenzerzeung

    Anzeige

    Hallo zusammen,

    ich Suche ein Möglichkeit mittels einem AVR Rechteckimpulse von 327,68Hz - 655360Hz erzeugen zu können. Diese sollen im Abstand von 327,68Hz über den PC über USB einstellbar sein können. Ich will also ein Vielfaches von 327,68Hz ausgeben können.

    Die Frequenz muss nich genau 327,68Hz betragen (wär aber ideal). Jedoch sollte sich schon +- ein paar Hertz in der Größenordnung liegen.

    Irgendwie steh ich grad total auf dem Schlauch. Ich probier schon 2 Tage damit rum und irgendwie dreh ich mich da im Kreis.


    Über Anregungen zur Lösung würde ich mich freuen.

    Vielen Dank.


    Viele Grüße,
    hacker
    Ich würde ja gern die Welt verändern..., doch Gott gibt mir den Quellcode nicht!

  2. #2
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Die einfach Methode um eine Rechtecksignal zu erzeugen ist über einen Timer den takt zu teilen. Allerdings kriegt man da keine Frequenzen in gleichen Abständen, sondern halt Qurzfreuenz / N , mit einer ganzen Zahl N, oft auch noch mit Einschränkungen wie N >10 oder N gerade.

    Frequenzen mit gleichmäßiger Teilung kriegt man wenn man die DDS methode wählt. Das geht ganz gut für Sinussignale bei eher niedrigen Frequenzen (z.B. < 50 kHz). Bei hohen Frequenz und Rechtecksignal hat man aber relativ viel Frequenzschwankungen (Jitter) auch wenn im längeren Mittel die Frequenz stimmt.

    Eine 3te Möglichkeit ist eine Nicht gnazzahlinger Teiler (z.B. 8 Bits hinter dem Komma) das erlaubt eine noch feinere Teilung als mit dem einfachen Teiler, aber man hat ähnlich wie bein DDS etwas Phasenrauschen/Jitter.

    Wenn man wirklich gleiche Frequenzschritte ohne viel Störungen haben will, dann sollte man einen externen PLL nehmen, den man dann z.B. von Controller aus programmieren kann.

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    1.892
    Die Sache mit der PLL find ich schon sehr in Ordnung.
    Mein Vorschlag dazu wäre einen per I²C programmierbaren Frequenzteiler für die einzelnen Abstufungen zu verwenden.
    Das Jitterproblem kann zwar durch Regelzeitveränderungen verbessert werden, ganz weg wird man es aber bei einer PLL nie kriegen.

    Eine weitere Alternative wäre ein externer DDS Baustein.
    Guck mal bei Analog Devices unter:
    http://www.analog.com/en/rfif-compon...cts/index.html

    Einige der Bausteine da haben auch einen Rechteckausgang für die Synchronisation von mehreren Bausteinen.
    Aber auch aus einem Sinus ein Rechtecksignal zu machen sollte auch keine unlösbare Aufgabe sein.

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    10.03.2005
    Alter
    28
    Beiträge
    967
    Was ist denn diese DDS Methode? Lässt diese sich auch auf einem µC realisieren? Ich will großen Schaltungstechnischen AUfwand vermeiden.
    Ich würde ja gern die Welt verändern..., doch Gott gibt mir den Quellcode nicht!

  5. #5
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Die DDS Methode ist eine Methode um Signale Digital zu erzeugen. Neben Speziellen ICs kann das auch mit µC machen. Man addiert in einer möglochst kurzen Schleife fortlaufend die Phase des ausgangssignals auf. Für die Erzeugung einer Sinusschwingung wird dann aus einer Tabelle eine Wert per DA Wandler ausgegeben. Da die innere Schleife beim AVR wenigstens etwa 8-15 zyklen braucht, hat man relativ viel Jitter. Die Einzelnen Flnaken des Rechtecksinglans können halt bis zu etwa 10 Zyklen zu spät kommen. Für 600 kHz ist das schon ziehmlich schlecht.

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    1.892
    Ich will großen Schaltungstechnischen AUfwand vermeiden.
    Die Verbindung zwischen dem µC und einem DDS Baustein per SPI sind nur ein paar verbindungen.
    Etwas aufwändiger sind die Filter nach der DDS.
    Aber da Du nur Rechtecksignale mit " niedriger" Frequenz brauchst können diese auch sehr einfach ausfallen.

    Für eine PLL müsstest Du meiner Meinung nach mehr Aufwand treiben.

    Für so einen DDS Chip musst Du ein Frequenztuningword errechnen und das in den DDS Baustein übertragen und der Baustein generiert die Frequenz.

    Natürlich muss der Chip auch initialisiert werden, wie das steht im Datenblatt.
    Ausserdem benötigen die meisten DDS Chips einen externen Quarzgenerator.

    Das einzige, was mich bei den Analog Devices Chips stört ist der Preis und die teilweise schlechte Beschaffbarkeit.

  7. #7
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Nicht zu vergessen die winzigen Gehäuse der billigen DDS Chips. Der PLL wäre die Sauberere Lösung, ist aber wohl mehr Aufwand, wohl wenigstens 2 ICs (74HC4046+74HC4059). Dafür aber wohl billiger.

Berechtigungen

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