我一直试图使用Simulink为示波器(包括DSP)建模。我仍然是非常新手,所以请原谅我,如果以下问题太容易:我如何实现交流耦合(删除直流组件)在Simulink中使用模拟信号?我知道有一个直流阻断器,但它只接受离散信号,我想以后用一个不完美的ADC来离散我的信号。
我试图使用MATLAB函数来实现交流耦合,但我无法找到一种方法来使用从函数声明中获得的现有模拟信号。相反,所有MATLAB纪录片似乎都希望我在我的计算机上使用模拟设备(https://mathworks.com/help/daq/analog-data-acquisition.html)。
(谢谢各位的努力和/或建议!)
发布于 2017-07-27 21:47:42
我不认为使用Matlab函数块会工作,因为你需要保持一个状态。为了模拟交流耦合,我相信你需要创建一个高通滤波器。这将从信号中移除DC,使波形以零为中心。拐角频率一般需要很低,这样才不会对被测波形产生失真。您可以在不使用任何特殊工具箱的情况下构建此程序。你只需要一个积分器块,增益块和一些求和块。
以下是一个例子:

此示例在1秒时将直流步骤应用于波形。下图提供了输出

在上面的图形(输入)中,偏移量保持不变,但在较低的图形(输出)中,偏移量被移除。
发布于 2017-07-27 13:44:49
如果要使用matlab AC耦合函数,请尝试使用Matlab函数块:https://fr.mathworks.com/help/simulink/ug/creating-an-example-model-that-uses-a-matlab-function-block.html。您可以使用它像任何matlab函数,即function [out1, out2] = my_function(in1),但它将定义在一个simulink块。
https://stackoverflow.com/questions/45351796
复制相似问题