2017-07-27 6 views
0

Ich habe versucht, Simulink für die Modellierung eines Oszilloskops (einschließlich DSP) zu verwenden. Ich bin immer noch sehr Neuling also bitte verzeih mir, wenn die folgende Frage viel zu einfach ist: Wie implementiere ich eine AC-Kopplung (DC-Komponente entfernen) in Simulink bei analogen Signalen? Ich weiß, dass es einen DC-Blocker gibt, aber es akzeptiert nur diskrete Signale und ich möchte mein Signal später mit einem unvollkommenen ADC diskretisieren.AC-Kopplung in MATLAB/Simulink

Ich versuche, eine MATLAB-Funktion für die AC-Kopplung zu verwenden, aber ich kann keine Möglichkeit finden, das vorhandene analoge Signal zu verwenden, das von der Funktionsdeklaration erhalten wird. Stattdessen scheinen alle MATLAB-Dokumentationen, dass ich ein analoges Gerät auf meinem Computer verwende (https://mathworks.com/help/daq/analog-data-acquisition.html).

Vielen Dank für Ihre Bemühungen und/oder Vorschläge! :)

Antwort

1

Ich glaube nicht, dass die Verwendung des Matlab-Funktionsblocks funktioniert, da Sie einen Zustand halten müssen. Um AC-Kopplung zu simulieren, glaube ich, dass Sie einen Hochpassfilter erstellen müssen. Dies entfernt Gleichstrom von dem Signal, so dass die Wellenform um Null zentriert ist. Die Eckfrequenz muss im Allgemeinen sehr niedrig sein, so dass keine Verzerrung der gemessenen Wellenform auftritt. Sie können dies ohne spezielle Toolboxen erstellen. Sie brauchen nur einen Integratorblock, Gainblock und einige Summenblöcke.

Ein Beispiel ist unten angegeben: Simulink Example

Dieses Beispiel bezieht sich auf die Wellenform von 1 Sekunde eine Gleichschritt. Die folgende Abbildung liefert die Ausgabe

output example

In der oberen Abbildung (Eingang) die Verschiebung bleibt, aber in der unteren Abbildung (Ausgang) der Offset entfernt wird.

+0

Das ist großartig! Ich habe versucht, einen analogen Filter zu machen, aber es hat die gesamte Charakteristik des Eingangssignals verändert. Diese Lösung scheint die Amplitude bei keiner Frequenz, die ich zu verwenden versuche, zu beeinflussen. Für einige Frequenzen braucht es etwas Zeit, um sich zu beruhigen, aber das ist kein Problem. Vielen Dank!! –

0

Wenn Sie möchten, verwenden Sie die Matlab AC-Kopplung Funktion, versuchen Sie es mit dem Matlab-Funktionsblock: . Sie können es wie jede Matlab-Funktion verwenden, d. H. function [out1, out2] = my_function(in1), aber es wird in einem Simulink-Block definiert.

+0

Ja weiß ich, wie man den Funktionsblock hinzufügt, aber ich kann die Funktionalität nicht richtig bekommen. Danke für die Hilfe! –