www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Wie macht man am geschicktesten aus einem Sinus andere Signalformen?


Autor: Ralf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich habe ein Sinus-Audiosignal(max.0.6Vss, max.20kHz), welches ich gerne 
in andere Signalformen umwandeln möchte, also Rechteck, Dreieck, 
Sägezahn, etc. Das Signal kann auch mit einem Vibrato-Effekt auftreten.

Wie kann ich denn am geschicktesten aus diesem Sinus andere Signalformen 
machen? Ich dachte zuerst daran, eine Rechteckspannung draus zu machen, 
die Frequenz an einen µC weiterzugeben, der mit einem 16/24-Bit 
DA-Wandler entsprechend die anderen Signalverläufe erzeugt, bei nur 
0.6Vss sollten die Stufen ja kaum hörbei sein. Alternative wäre die 
Verwendung von etwas in der Art wie dem XR2206, die Frequenz könnte dort 
soweit ich das sehen kann, durch eine mit PWM generierte Spannung für 
den VCO eingestellt werden. Nachteil ist, dass Vss wohl nicht bei jeder 
Signalform identisch ist.

Aber ich glaube, der "analoge" Weg ist da denk ich doch der bessere, 
weil ich ja Frequenzänderungen gar nicht so schnell "erkennen" kann. Der 
Vibrato-Effekt machts dann nochmal schwieriger.

Wie also macht man dann die Dreieck-/Sägezahnsignale analog? Mir kam die 
Idee, Konstantstromquellen zu verwenden.
Im Fall der Dreieckspannung konstant laden/entladen, gesteuert durch die 
steigende/fallende Flanke.
Bei Sägezahn permanent laden, bei steigender Flanke den Kondensator 
kurzschließen.

Hat jemand weitere Vorschläge/Anregungen/etc.?

Ralf

Autor: Reinhard R. (reinhardr)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das hört sich nach einem Integrator an. Das funktioniert grundsätzlich 
schon, aber die Amplitude fällt mit steigender Frequenz. In einer 
Audioanwendung kann man das normalerweise nicht brauchen.

Digital lässt sich so etwas sicher machen, aber der Aufwand wird 
vermutlich relativ hoch. So spontan würde ich jetzt mal sagen: 
Signal->FFT->Oberschwingungen berechnen und addieren->iFFT->Generiertes 
Signal. Es gibt da vermutlich auch einfachere Lösungen.

Reinhard

Autor: space (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin,

wenn Du Dir mal die Doku zum XR2206 durchliest wirst Du feststellen,
dass das Teil alle Funktionen hat. Du musst nur die Beschaltung
ändern.
Guts Nächtle
Stefan

Autor: Bernd Hallinger (bhallinger) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DAs schreit eigentlich nach einer DSP anwendung.

Es gibt diverse Methoden die Grundfrequenz eines Signals zu erkennen.
Die Amplitude auch. Also den Effektivewert z.B.

Dann das entsprechende Signal wieder ausgeben.

Rechteck ist ja einfach mit nem Timer Signal ein und aus Und das ganze 
mit der Amplitude multiplizieren. (Daher auch DSP weil der sehr schnell 
multipliziert)

Die andern Signalformen kann man z.B. Aus ner Tabelle lesen und auch 
wieder mit der Amplitude multiplizieren.

Die Geschwindigkeit ist hier nur durch die Auswahl de DSP begrenzt.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.