Was ist der beste Weg, um aus einer Rechteckwelle eine Sinuswelle zu machen?

Ich habe Rechteckwellen mit unterschiedlichen Frequenzen (1 kHz bis 20 kHz) und muss sie in eine Sinuswelle mit der entsprechenden Grundfrequenz umwandeln.

Ein RC-Leiter-Tiefpassfilter war das erste, was ich ausprobierte. Es lieferte gute Ergebnisse, aber die Ausgangsspannung von Spitze zu Spitze (Vpp) variierte stark mit der Frequenz. Die Rechteckwelle hat eine Vpp von 3,6 V. Aber nach dem Filtern variiert der Ausgang Vpp der Sinuswelle von 3 V bis 2 V, wenn die Frequenz zunimmt.

Gibt es einen anderen besseren Weg, um ohne diesen Spannungsabfall eine reine Sinuswelle aus einer Rechteckwelle derselben Frequenz zu erhalten?

Danke

Bevor Sie fortfahren, „Dinge auszuprobieren“, könnten Sie vielleicht erst etwas Zeit damit verbringen, „Dinge zu verstehen“. Wie sieht das Frequenzspektrum einer Rechteckwelle aus? Wie unterscheidet es sich von einem Frequenzspektrum einer Sinuswelle? Sie gehen davon aus, dass es möglich ist, mit nur einem einfachen Filter eine gute Sinuswelle aus einer 1-kHz-20-kHz-Rechteckwelle zu erhalten. Ist das theoretisch überhaupt möglich? Und warum ist es oder nicht?
Ist die Eingangsamplitude fest, oder wenn nicht, benötigen Sie auch eine Amplitudenanpassung?
Was Sie wirklich tun sollten, ist, mehr darüber zu erklären, was Sie erreichen wollen. Sie scheinen sich beispielsweise darüber zu beschweren, dass der Filter bei Frequenzänderungen unterschiedlich reagiert, aber Ihre Frage gibt nur die (nominale?) Frequenz an. Warum ändert sich die Frequenz? Um wie viel? Was ist überhaupt die eigentliche Bedeutung dieser Signale? Sie können die beste Lösung erst auswählen, wenn Sie sich über die Umstände und Ziele im Klaren sind.

Antworten (7)

Gibt es einen anderen besseren Weg, um ohne diesen Spannungsabfall eine reine Sinuswelle aus einer Rechteckwelle zu erhalten?

Nehmen Sie Ihre Rechteckwelle und verwenden Sie einen Phasenregelkreis, um eine Frequenz zu erzeugen, die vielleicht 50-mal höher ist: -

Geben Sie hier die Bildbeschreibung ein

Verwenden Sie dann einen durch die Uhr abstimmbaren Filter wie diesen: -

Geben Sie hier die Bildbeschreibung ein

Geben Sie Ihre Rechteckwelle am Eingang (Vin) ein und Sie sollten am Ausgang eine ziemlich anständig aussehende Sinuswelle erhalten.

Es funktioniert, indem es die Eingangsfrequenz mit der PLL verfolgt – typischerweise beträgt bei einer Eingangsfrequenz von 20 kHz der PLL-Ausgang 1 MHz und dies wird vom LTC1066 verwendet, um seine Grenzfrequenz auf 20 kHz einzustellen. So sieht laut LT der Frequenzgang an den Extremen des Betriebs aus: -

Geben Sie hier die Bildbeschreibung ein

Da eine Rechteckwelle aus ungeraden Harmonischen besteht, benötigen Sie einen steilen Filter, der die dominanteste Harmonische (3.) um viele dB dämpft. Sehen Sie sich das Diagramm für den 800-Hz-Tiefpassbetrieb an. Bei 800 Hz beträgt der Frequenzgang ungefähr 0 dB und bei 2,4 kHz (3. Harmonische) ist die Dämpfung größer als 80 dB (10.000:1).

Danke für die Antwort @Andy aka. Aber erhalte ich mit Ihrer Methode die gleiche Ausgangsfrequenz wie die der Eingangsrechteckwelle? Vielleicht formuliere ich meine Frage um.
Ja, Sie erhalten genau die gleiche Ausgangsfrequenz.
Ja, obwohl eine PLL mit einem Bereich von 20:1 nicht einfach zu bauen ist. Eine praktische Implementierung könnte durchaus einen Mikrocontroller umfassen, an welchem ​​​​Punkt Sie die Sinuswelle dort genauso gut synthetisieren könnten, indem Sie eine Nachschlagetabelle verwenden, die durch die höherwertigen Bits eines Akkumulators mit längerer Phase indiziert ist.

Eine einfache Möglichkeit, einen Sinus anzunähern: Integrieren Sie in eine Dreieckswelle und "weichen Sie" diese ab. Über die offensichtliche Technik finden Sie viele Schaltungen für die "Umwandlung von Dreiecken in Sinuswellen".

Das Ergebnis ist nicht perfekt, aber die Verzerrung kann unter 1 % liegen.

Hier sind einige , darunter diese elegante JFET-Schaltung.Geben Sie hier die Bildbeschreibung ein

Wenn Sie die Eingangsfrequenz variieren, besteht eine Schwierigkeit bei diesem Ansatz darin, dass sich die Verstärkung des Integrators umgekehrt zur Frequenz ändert, während alle diese Dreieck-Sinus-Wandler eine konstante Eingangsamplitude benötigen.

Eine mögliche Lösung ist ein Verstärker mit variabler Verstärkung nach dem Integrator oder möglicherweise sogar eine variable Verstärkung, die in den Integrator selbst eingebaut ist (z. B. mit einem VCA wie dem LM13700), der die Verstärkung so variiert, dass die Ausgangsamplitude konstant ist.

Das Hinzufügen des Dreieckswellenschritts hilft nicht wirklich. Wenn Sie einen VGA nach dem Integrator einfügen möchten, hätten Sie einfach einen VGA nach dem OPs-Filter einfügen können.
@PeterGreen Natürlich hilft es: Das weiche Abschneiden einer Rechteckwelle hinterlässt eine Rechteckwelle. Wenn Sie alternativ einen Filter vorschlagen, um die Oberwellen zu eliminieren und eine Sinuswelle zu erzeugen, müssen Sie den Filter jetzt abstimmen.
@BrianDrummond kannst du mir erklären, wie die Vorspannung in dieser Schaltung funktioniert? Das Signal scheint ein eigener Antrieb zu sein, da eine geteilte Version des Signals dem Gate zugeführt wird, um das ungeteilte Signal am Drain zu steuern. Warum funktioniert das? und die Dioden, positiver und negativer 1-Diodenabfall über + und -? Wenn ja, warum wird dies in einer JFET-Schaltung benötigt? und wie passt das mit der Gate-Vorspannung zusammen? ist die Gate-Vorspannung nur für die Stromvorspannung? v-verwirrt lol

Stellen Sie sich einen Sinuswellen-VCO und einen Phasenregelkreis vor. Sie können einen CD4046 für den Phasendetektor verwenden. Hier ist jedenfalls konzeptionell ein spannungsgesteuerter Oszillator, der mit geringfügigen Modifikationen geeignet sein könnte:Geben Sie hier die Bildbeschreibung ein

Mit einem linearen zeitinvarianten Filter ist dies nicht möglich. Ein solches Filter kennt den Unterschied zwischen einer Harmonischen und einer Grundwelle nicht, es sieht nur eine Frequenzkomponente bei einer bestimmten Frequenz.

Um eine akzeptable Lösung für dieses Problem zu finden, müssen zwei Schlüsselfragen beantwortet werden.

  • Wie rein muss die Ausgangswellenform sein?
  • Was muss passieren, wenn sich die Eingangsfrequenz ändert? Wie viel Übergangszeit ist akzeptabel? Welche Outputs sind während der Übergangszeit akzeptabel?

Ein noch nicht erwähnter Ansatz wäre die Verwendung eines Filters gefolgt von einer automatischen Verstärkungsregelschaltung. Wenn die Spannung abfällt, erhöht die AGC sie wieder. Für eine größere spektrale Reinheit (aber auf Kosten langsamerer Reaktionszeiten) könnten ein zweiter Filter und AGC hinzugefügt werden.

Ich würde erwarten, dass alle analogen Ansätze Einschwingzeiten von mindestens mehreren und wahrscheinlich vielen Zyklen nach einer Änderung der Eingangsfrequenz haben. Wenn das nicht akzeptabel ist, würde ich nach einem digitalen Ansatz suchen, bei dem ein FPGA (mit einem schnellen Haupttakt) die Eingangszyklusperiode misst und diese Messungen verwendet, um eine Wellenform zu erzeugen, die einem DAC zugeführt wird.

Ich bin mir nicht sicher, welche Schaltung Sie verwenden, aber für mich klingt es nach einem Joule-Dieb. Diese Dinge ändern die Frequenz mit der Last in etwa den Bereichen, von denen Sie sprechen. Um etwas billiges zu bauen, das funktioniert, besorgen Sie sich eine einstellbare Drossel mit 100 Ohm (?) Watt. Verbinden Sie ein Ende der Drossel mit einer Seite des Ausgangs und das andere Ende mit Ihrer Last. Wickeln Sie nun den anderen Ausgangsdraht in die gleiche Richtung wie die Drossel (x) mal. Dadurch wird ein einfacher, manuell einstellbarer Filter erstellt. Wenn Sie dies mit einer bestimmten Last verwenden, stimmen Sie es einfach ab, bis es mit einer Glühbirne gleicher Wattzahl am besten funktioniert. Die Abstimmung könnte mehr Wicklungen um den Choke erfordern. Ich würde mit etwa 10 beginnen. Wenn Sie einen Drehkondensator haben, können Sie die Wicklung der Drossel löschen. Sie könnten sogar Ihren eigenen Choke aus kleinem emailliertem Eisendraht herstellen und ihn in ein paar Schichten um einen Bolzen wickeln. Fügen Sie dann einfach einen drahtgewickelten Widerstand in Reihe hinzu, um den Gesamtwiderstand auf etwa 100 Ohm zu bringen. Auch dies ist sicherlich keine perfekte Lösung, würde aber faire Ergebnisse liefern, es ist kostengünstig und einstellbar.

Welcher Teil Ihrer Antwort beantwortet den Teil zur Umwandlung von Rechteckwellen in Sinuswellen?
Es ist ein einstellbarer Low-Budget-RC-Filter mit minimalem Verlust.

Ich würde sagen, dass sowohl die PLL- als auch die Dreieckswellenumwandlung vielleicht nur ein bisschen übertrieben sind. Versuchen Sie es mit aktiven Tiefpass-RC-Filtern (dh OP AMP mit etwas C in der Rückkopplung), um die ersten Harmonischen abzuschneiden (eine für 2 kHz und eine für 40 kHz). Sie sollten sicherstellen, dass Ihre ursprünglichen Frequenzen nicht gedämpft werden (Gain=1).

Dies unterstützt keinen kontinuierlichen Frequenzbereich - die niedrigeren Frequenzen des Bereichs haben mehrere ungerade Harmonische, die zurückgewiesen werden müssen, die unter die höchste Grundfrequenz fallen, die das System passieren muss. Filter würden also nur funktionieren, wenn sie basierend auf einer Frequenzmessung automatisch abgestimmt würden.

Ich muss sie in eine Sinuswelle der entsprechenden Grundfrequenz umwandeln.

Sinuswellen einer bestimmten Frequenz haben keine konstanten "Harmonischen", es ist nur eine Sinuswelle (t), eine ±-Welle.

Sie können (visuell) einen ziemlich guten Sinus erhalten, indem Sie Ihre Rechteckwelle mit einem Bandpass filtern (zwei Filter nacheinander – Tiefpass und Hochpass wahrscheinlich mit nicht sehr niedrigem Q). Tatsächlich wird die untere Grenze des Bandpasses (Hochpass) nur benötigt, um eine konstante Amplitude zu filtern.

Nach dem Filtern müssen Sie Ihrer Sinuswelle bei Bedarf möglicherweise eine gewisse Amplitude hinzufügen.

Außerdem benötigen Sie einen Filter mit 4. und höherer Ordnung. Schließlich denke ich, dass es sich lohnt, nach anderen Methoden zu suchen.

Angesichts des großen Bereichs von Eingangsfrequenzen, von denen einige mehrere Harmonische haben, die unterhalb der Grundfrequenz anderer möglicher Eingänge unterdrückt werden müssen, funktioniert dies nur, wenn Sie die Filter automatisch abstimmen.
Was würde der Hochpassfilter bewirken?