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


von Ralf (Gast)


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

von Reinhard R. (reinhardr)


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

von space (Gast)


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

von Bernd H. (bhallinger) Benutzerseite


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.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.