- LiTime Speicher und Akkus         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 15

Thema: Dreiecksgenerator...absolutes unverständnis?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.05.2007
    Beiträge
    170

    Dreiecksgenerator...absolutes unverständnis?

    Hall, ich bin gerade dabei einen Class-D Amp zu bauen/entwickeln. Wie ich einen Dreieckgenerator berechne sehe ich ja anhand der Formeln. Was ich nicht weiß: Wie funktioniert so ein Dreieckgenerator GENAU? Was passiert nach dem einschalten, wie kmmt das Signal in die endgültige Position?


    Dann noch ein paar fragen: Kann man einen Atiny dazu veranlassen, ein nahezu perfektes 200khz Dreiecksignal auszugeben, mit exakt gleicher frequenz und 50/50 tastverhältnis? Wenn nein, gibts dazu ICs, die das können? Das würde alles meine Schaltung HF armer machen und Kapazitäten unterbinden.

    Gruß wasserball!

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.08.2006
    Ort
    Budapest
    Alter
    36
    Beiträge
    563
    Sicher kann er das, bei genügend hoher Abtastfrequenz und Auflösung der Datenpunkte. Eigentlich ist der DA Wandler der kritische Bauteil. Ob es ein IC für sowas gibt, weiss ich nicht.

    Normalerweise wird im IC eine Tabelle mit den Funktionswerten in bestimmten Zeitintervallen hinterlegt, und diese werden dann ausgegeben.

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    25.11.2003
    Beiträge
    1.112
    Dreiecksgeneratoren gibt es wie Sand am Meer und jede funktioniert anders. Welchen meinst DU denn?
    Nahezu perfekt? Was soll das sein?
    Der Tiny an sich kann das nicht. Nur in Verbindung mit einem DAWandler.
    Aber selbst dann ist das kaum möglich bei dieser Frequenz, denn:
    Um einen Wert nach dem anderen an den DA Wandler zu liefern, braucht es schätzungsweise runde 50 Takte in C. D.h Du kannst 20MHz/50=400kHz entsprechend 400k mal einen Wert erhöhen / erniedrigen. Wenn Du jetzt 200kHz Rechteckspannung haben willst, dann bleiben genau 2 Werte dafür übrig. D h, Du hast ein Rechtecksignal !!!
    Mit effizienter Programierung oder noch besser Assembler, schaffst Du es vielleicht, auf 10-20Takte runter zu kommen. Dann hättest Du immerhin 5Werte pro Dreieck. Aber perfekt ist was anderes, also vergiss es.
    Ohne zusätzliche Hardware geht das nicht und mit macht es eigentlich schon keinen Sinn mehr. Dann kannst Du gleich einen Dreicksgenerator benutzen oder mit OPs bauen.
    Gruß

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    26.05.2005
    Ort
    Kaiserslautern
    Beiträge
    794
    Hi,

    das sollte doch mit nem AVR funktionieren...

    C:
    Code:
    DDRx = 0xFF;
    uint8_t count;
    while(1)
    count++;
    PORTx = count;
    }
    An den Port dann n R2R-Netzwerk als DA Wandler, notfalls noch n OpAmp dahinter.

    Gruß, CowZ

  5. #5
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.08.2006
    Ort
    Budapest
    Alter
    36
    Beiträge
    563
    @Cowz: das wird dann ein Sägezahn, da von 0-255, und dann wieder 0, aber so würde ich das auch machen. Müsste man aber schon in ASM schreiben, damits schneller geht.

  6. #6
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    26.05.2005
    Ort
    Kaiserslautern
    Beiträge
    794
    Hi,

    oh, ja, stimmt... mit leichten Modifikationen sollte das aber auch mit ner Dreiecksspannung gehen...

    Code:
    uint8_t count;
    DDRx = 0xFF;
    while(1)
    {
     while(count < 255)
     {
      count++;
      PORTx = count;
     }
     while(count > 0)
     {
      count--;
      PORTx = count;
     }
     
    }
    Eventuell muss man noch irgendwo nops einbauen, damit die Zeitabstände zwischen den Erhöhungen und Erniedrigungen zusammenpassen mit dem Zeitabstand beim Springen von der einen zu der anderen While-Schleife.

    Gruß, CowZ

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.05.2007
    Beiträge
    170
    Erstmal danke für die vielen Antworten


    Also damit wär geklärt, dass man mit einem Atiny kein dreiecksignal ausgeben kann. Dann lass ich den versuch gleich bleiben.

    Gemeint war der 'normale' Dreiecksgenerator mit einem Integrator und einem Schmitt Trigger. Ich hab so viel gelesen gestern, da hab ich das schlichtweg vergessen. Es finde sich immer wieder die selbe Erklärung, nur in ein bisschen abgewandelter Form. Ich verstehe diese aber nicht
    Wie schwingt der Generator zb an? Der ganze kreislauf ist mir momentan ein Rätsel...

    Gruß einballimwasser

  8. #8
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    26.05.2005
    Ort
    Kaiserslautern
    Beiträge
    794
    Mhh? Huch? Nicht möglich? Liest da jemand nicht alle Antworten?

  9. #9
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.05.2007
    Beiträge
    170
    Klaro habe ich deine Antwort nicht gelesen :P

    Ich sprach von einem Atiny, nicht von einem ausgewachsenen AVR. Wenn das mit einem AtMega gehen sollte, welchen sollte/könnte ich dann nehmen? Ich meine das programm wäre ja klein genug um so eine abartig hohe Frequenz zu erzeugen, aber welche hardware? Das Problem, dass sich dabei aufwirft: ich brauche positive und negtive Spannung habe ich gemerkt, dh es geht nur mit einem nrmalen Dreiecksgenerator bestehend aus 2 oder 3 opamps, nur da verstehe ich die funktinsweise zu 0%, was ich gerne ändern ,möchte

  10. #10
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Direkt ausgebn können auch die Atmel Mega Controller kein Dreieckssignal, da fehlt der DA Wandler. Eventuell könnte bei den PWM typen sowas drin sein, oder beim XMega.

    Man kann aber relativ leicht ein Rechtecksignal fester Frequenz in ein Dreieck umwandeln. Ein einfacher Integrierer reicht da theoretisch aus. Besser aber ein aktiver Tiefpass mit sehr niedriger Grenzfrequenz. Allerdings wird man nach dem Einschalten eine gewisse Zeit brauchen um einen eingeschwungenen Zustand zu erreichen.

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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

LiTime Speicher und Akkus