matlab 如何在Simulink中制作具有某一平均值的高斯噪声?

mum43rcc  于 2022-11-15  发布在  Matlab
关注(0)|答案(3)|浏览(325)

如何在Simulink中制作均值=18、方差=0.1的高斯噪声?我不能使用AWGN块,因为我不能在其中指定平均值。我想生成下面的信号,它是均值=18、方差=0.1的高斯噪声:

bjg7j2ky

bjg7j2ky1#

按如下方式构建模型。在库浏览器中选择DSP系统工具箱,然后选择随机源块。

现在调整分块参数源类型均值方差

通过添加范围块来构建模型,如下所示:

在模型运行10秒后,您将通过双击范围块看到生成的高斯噪声波形。您会注意到,该绘图与您发布的图像不同,这是Simulink中默认绘图的工作方式。
现在,为了确保它是正确的信号,使用to Workspace块将信号发送到matlab并绘制它。这就是在MATLAB中绘制噪波波形的方式,与您的图像相同。

56lgkhnf

56lgkhnf2#

平均值只表示噪声移动了多少,所以如果你取值为18的常量函数,然后加上方差为1的高斯噪声,你就会得到你想要的东西。

yqlxgs2m

yqlxgs2m3#

这是假设你的噪音是一维的:

variance = 0.1;
std_deviation = sqrt(variance);
mean = 18;
n = 1000; % number of samples

noise = std_deviation .* randn(n, 1) + mean;

相关问题