Warum erzeugt mein aktiver Tiefpassfilter Dreieckswellen?

Also hier ist, was ich versuche zu tun:

Verwenden Sie bei einer von meinem Arduino bereitgestellten Rechteckwelle einen aktiven Tiefpassfilter n-ter Ordnung, um die Rechteckwelle in eine Sinuswelle umzuwandeln, indem Sie obere Harmonische herausfiltern. Dies liegt natürlich im Audio-Frequenzbereich.

Ich habe viel Zeit damit verbracht, dies zu versuchen, und ich bin ziemlich kurz davor, aufzugeben und einen Funktionssignalgenerator wie den XR-2206 zu kaufen. Ich habe kein Geld für ausgefallene Geräte, und darf ich betonen, dass es teilweise eine Lernübung ist.

Vielleicht ist ein Teil des Problems, dass ich kein Oszilloskop habe und mir auch keins leisten kann, also ist das Oszilloskop ausgefallen. Es würde definitiv helfen, einen zu haben, manchmal wünschte ich, ich könnte das Signal sehen, das ich erzeuge, aber hier ist mein Gedanke: Wenn ich eine Audio-Sinuswelle erzeugen kann, die ich hören kann, dann kann ich meine RC-Werte ändern, um für höhere Frequenzen zu arbeiten . Rechts? (Oder falsch?)

Aber ich kann anscheinend nie das verstehen, was sich für mich wie eine Sinuswelle anhört. Ich spiele eine YouTube-1000-Hz-Sinuswelle ab (oder wähle Ihre Frequenz) und vergleiche sie mit der Ausgabe meines aktiven RC-Filters, und sie klingen einfach nicht gleich. Wenn ich mir die 1000Hz-Dreieckswelle anhöre, dann klingt das genau so, wie ich es aus dem Ausgang meines aktiven RC-Tiefpassfilters höre. Aber warum?

Ich habe immer wieder gelesen, überall im Netz und zurück, dass durch das Herausfiltern der oberen Harmonischen einer Rechteckwelle eine Sinuswelle entsteht (aufgrund der Details der Fourier-Transformation mit einer unendlichen Summe von sich kontinuierlich verdoppelnden Frequenzen mit Phasenverschiebungen und yada-yada), aber die Idee scheint einfach nicht zu funktionieren. Wenn ich alle anderen Sinuswellen herausgefiltert habe und die Grundsinuswelle übrigbleibt, warum klingt sie dann nicht wie eine? Dreieckswellen!!!

Ich verwende n viele Widerstände, n viele Kondensatoren und n + 1 viele LM358-Operationsverstärker. Ich brauche den letzten, um das Ausgangssignal zu verstärken. Ich habe gelesen, dass viele Kondensatoren mit höherer Kapazität (wie Elektrolyten) für einen richtigen Tiefpassfilter im Audiobereich einfach zu ungenau sind, daher verwende ich 100-pF-Kappen mit sehr großen Widerständen. Wenn ich beispielsweise einen 100-pF-Kondensator mit einem 1,62-MΩ-Widerstand verwendet habe, beträgt die Grenzfrequenz 1/(2*pi*100pF*1,62 MOhm) = ~982 Ohm. Durch die Verwendung mehrerer RC-Filter können Sie bei den oberen Frequenzen einen steileren "Roll-Off" erzeugen, und da die Widerstandswerte so hoch sind, muss das Signal verstärkt werden, weshalb ich LM358-Operationsverstärker verwende. Der Ausgang eines aktiven Filters wird in einen anderen eingespeist und im nächsten aktiven Filter erneut gefiltert. Ich versorge alles mit 0 bis 5V.

Und ich weiß, dass der Filter funktioniert!! Ich habe meinen Filter so modifiziert, dass ich eine klare 400-Hz-Welle (Dreieck??) hören kann, aber wenn ich nur auf 450 Hz erhöhe, ist die Frequenz völlig unhörbar. Daher filtert es definitiv und verdammt gut! Trotzdem bekomme ich keinen sauberen Sinuston hin. Warum? Was mache ich falsch? Vielleicht quäle ich mich einfach weiter, indem ich versuche, eine Kristallleiter zu bauen. Ich bin mir ziemlich sicher, dass ich das nicht tun werde.

Ich erwarte keine Perfektion. Aber ich weiß, was ich höre, und es ist einfach nicht gut. Nicht annähernd. Irgendwelche Vorschläge?

Danke Stack-Community.

Zeichnen Sie einen Schaltplan und erwägen Sie, audactity auf Ihrem PC als Oszilloskop für Audiosignale zu verwenden.
TL;DR, zeichnen Sie ein Diagramm, versuchen Sie, die Wörter um 70% zu reduzieren, um nur die relevanten übrig zu lassen.
Sie sollten auch einen Audiospektrumanalysator für Ihr Telefon finden können. Dies zeigt die relativen Stärken der Harmonischen. Bei einer symmetrischen Wellenform sollten Sie nur ungerade Harmonische sehen.
Das kostenlose Programm, das @Andyaka erwähnt hat, ist Audacity (Entschuldigung für die Störung, Andy, aber der Tippfehler in Ihrem Kommentar könnte das OP wirklich irreführen, wenn er das Programm nicht kennt).
Hoppla, Prost @LorenzoDonati

Antworten (1)

Aber ich kann anscheinend nie das verstehen, was sich für mich wie eine Sinuswelle anhört. Ich spiele eine YouTube-1000-Hz-Sinuswelle ab (oder wähle Ihre Frequenz) und vergleiche sie mit der Ausgabe meines aktiven RC-Filters, und sie klingen einfach nicht gleich. Wenn ich mir die 1000Hz-Dreieckswelle anhöre, dann klingt das genau so, wie ich es aus dem Ausgang meines aktiven RC-Tiefpassfilters höre. Aber warum?

Beachten Sie, dass selbst eine kleine Abweichung von einer Sinuswelle einen Klang erzeugt, der sich stark von dem einer Sinuswelle unterscheidet. Es hängt sehr stark von den Oberwellen ab, die von Ihrer aktiven Filterschaltung nicht herausgefiltert wurden. Du brauchst auf jeden Fall ein Oszilloskop.

Die gute Nachricht ist, dass Sie einen Tonfrequenzbereich für Erdnüsse herstellen können: http://www.instructables.com/id/Use-Your-Laptop-as-Oscilloscope/