艾琳·伯恩,MathWorks公司
这个视频展示了一个使用Simulink设计信号处理系统的例子万博1manbetx®。
你具有空白Simulink模型开始和设计的信号处理算法万博1manbetx,以预测是否将是晴天还是阴天,以便从太阳能电网产生优化功率。该视频将为您分析传感器信号,设计滤波器,最后针对硬件配置生成代码。
通过视频的最后,你会学到的Simulink的基础知识以及如何基于模型的设计可以用于建模,仿真,测试和实施现实万博1manbetx世界的信号处理系统。在本例中使用的模型文件可以在下面的链接中找到。
我们生活在一个充满传感器的世界。它们存在于工厂里的机器人里,在我们的汽车里,在我们的手腕上,甚至在我们的冰箱里确保我们的食物保持新鲜。这些传感器产生信号。
在这个视频中,我们将使用Simulink来处理来万博1manbetx自传感器的信号。我们将进行光谱分析来研究这个信号。在此基础上,我们将设计和构建数字滤波器,作为信号处理算法的一部分。我们将评估算法的性能,一旦它准备好了,将我们的模型转换成可以嵌入到实时硬件中的C代码。让我们开始吧…
The MathWorks公司总部设在马萨诸塞州的Natick,有产生电能的太阳能电池板。我们将使用由每15分钟的阵列产生的功率的测量。这是我们的信号。
当然,功率取决于日照量,这取决于一天的时间......和天气。
预测和管理的可变生产和需求是可再生能源发电的重要组成部分。要理顺发电,在阳光明媚的日子里,我们可以存储一些电源的电池。然后,在阴天,我们用它来补充下发电。
让我们来设计,如果它要在Simulink中晴天或阴天使用信号处理技术,可以预测的系统。万博1manbetx
您可以通过点击MAT万博1manbetxLAB工具条Simulink的按钮来启动Simulink的。这将打开起始页,您可以创建新的模式,找到的例子,甚至可以找出基本的训练。
我们从头开始我们的模型,所以我们选择空白模型,并保存为sunnyvscloudy。
万博1manbetxSimulink模型由模块和信号线组成。打开库浏览器,查看所有可用的块。
从一个阳光灿烂的日子,一个来自阴天 - 我们将通过可视两个功率信号启动。
为了查看信号,我们将两个输入端口(简称Inports)拖放到模型中。然后添加一个范围块。
让我们来标注两个INPORT块“阳光灿烂的日子”和“阴天”和范围块“时域”。
我们可将块连同信号线通过单击并拖动连接。要标记信号线,双击并键入名称。
现在,我们需要的数据。在MATLAB中,我们有两个向量,sunnyDay和cloudyDay,较六月的功率测量两个特殊日子。相应时间戳在tday。
我们也有采样频率,在每天的样本,在变量的FS。每15分钟采样意味着我们得到每天96个样品。
我们必须设置两个Inport的采样时间,所以双击每个Inport来调整它的block参数。在信号属性选项卡下,将采样时间设置为采样频率的倒数。
要将数据导入Simulink,我们可以进入模型万博1manbetx设置窗口,然后进入数据导入/导出窗格,并添加时间和两个功率信号作为输入。我们还应该将总模拟时间设置为1天。
我们现在可以通过点击该工具条的Run键运行我们的模型。
让我们双击Scope块来查看信号。
用直线连接数据点。
光滑的黄线是阳光灿烂的日子。蓝线表示的是阴天产生较少的权力,因为你所期望的,也有很多的短期变化的云越过太阳能电池阵列。
那么,如何才能使用这些功能来决定,如果我们有一个晴天或阴天?
我们也来看看频域中的信号。我们将使用频谱分析,它帮助我们测量每个信号的频率内容。我们首先从DSP系统工具箱中添加一个频谱分析仪模块,然后将两个信号连接到它。
分支信号线,你可以拖动信号线块单击鼠标右键。
我们有短的信号,所以我们需要改变的频谱分析仪块数的设置,所以我们可以正确地看到它们。
这个时候我们可以从频谱分析仪内顶部按下绿色按钮来运行我们的模型。而让我们开启传说,看看这一天是。
那么,什么是我们在看什么?
x轴是频率值。y轴显示了在给定频率下信号的功率。虽然默认的时间单位是秒,但实际上我们用天来度量时间。所以x轴是每天的周数,而不是每秒的周数(Hz)。
我们看到,这两天的低频内容大致相同,但多云的那一天有更多的高频内容。还记得那些短时变化吗?这就是它们在频域中的样子。
因此,也许我们可以通过在更高的频率在一定阈值相比较功率分辨阴天晴天。
然而,面板在夏季和冬季,这意味着门槛将不得不一年四季变化少产生更多的动力。
嗯,我们希望一年中的所有季节都有一个恒定的阈值。如果我们将低频的功率归一化,就可以使用一个固定的阈值。所以,让我们试着计算顶部75%频率的总功率与底部25%频率的总功率之比。
那么,我们如何区分低频和高频呢?通过建立数字滤波器。我们需要一个低通滤波器来处理低频内容,一个高通滤波器来处理高频内容。
为了建立这两个过滤器,我们先剥去DSP系统工具箱我们的模型回单运行轨迹和范围....座和阻力在滤波器的实现向导块。
双击块打开过滤器设计应用程序。如果你设计的MATLAB的过滤器,你可能已经使用之前这个程序。让我们在“设计过滤器”图标,点击开始设计的低通滤波器。
因为我们每15分钟只采集一次样本,所以我们需要一个能处理少量样本的过滤器。我们将使用Chebyshev Type 1 IIR过滤器,并将过滤器顺序设置为4。
然后,我们必须指定的截止频率。请记住,我们希望通过频率的低25%,让。因此我们选择标准化频率与集wpass 0.25。我们会保持通带纹波小于0.05dB。
最后,按设计筛选按钮在底部。我们看到,新的响应是我们想要的。
我们可以检查一下群时延响应按钮通过我们的过滤器引入的延迟。对于频率小于0.25时,所述延迟是大约3个样品。让我们记住,供以后使用。
现在,我们就完成了设计滤波器,让我们将它添加到我们的Simulink模型通过点击实现模型图标。万博1manbetx我们将调用块“低通滤波器”,并选择选项“使用基本元素构建的模型”。这样,我们可以看到用于制作过滤器的基本Simulink模块,万博1manbetx如延迟,乘法,并添加块。
当我们点击“实现模式”按钮...
......新的子系统在我们的模型创建的。让我们双击这个看看里面。
果然,过滤器仅仅是单位延迟,收益,并添加块,其中现代DSP芯片和FPGA优化实现。
现在的高频内容。我们可以重复同样的过程,设计并实现了高通滤波器。在这种情况下,高通滤波器由1个样品延迟输入信号。
好吧,让我们来测试电源信号我们新的过滤器。
我们添加三个并行路径:一为原始功率信号,一个用于低通滤波版本,一个为高通滤波版本。我们要对它们进行比较。
但请记住,低通滤波器引入的3个样品的延迟和高通滤波器介绍1.延迟所以我们需要添加一些延迟块,以确保三个信号对齐。在模型上双击并键入“延迟”来快速延迟块添加到3个试样的原始信号和另一个延迟块的2个样品的高通信号。
此外,我们还会修改模型来工作,更长的2个半年的数据集,我们有,这是存储在可变功率与在T时间戳。
在适用范围,让我们在六天放大。
黄线是原始功率信号。蓝线是低通的信号,它代表了一般平滑的趋势。和红线是高通信号,其捕获的变化由于云层。在时间多云,这些变化可能会很大。
现在我们已经分离了低频和高频信号,我们准备构建我们的Sunny测试。
我们需要聚集在足够的时间让我们的过滤器,以给出有意义的结果,但我们不想等待太久得到答案。因此,我们将使用一个3小时的窗口,这仅仅是12个测量!
要存储在时间窗口滤波器输出,我们将使用缓冲块从DSP系统工具箱。
双击缓冲区,我们可以将缓冲区大小设置为12来处理三个小时的窗口。每个过滤器路径上都需要一个缓冲区。
现在,我们将使用一些基本的数学运算块来计算我们的阳光明媚的测试,如绝对值,元素和分块的总结。
让我们添加一个块的比率与阈值进行比较。使用Sim万博1manbetxulink,你可以尝试轻松找到这个阈值的物有所值。22个效果很好,但随时有这个价值发挥,看看它是如何改变的结果。
比较的输出是用于晴天0为不晴天和1。让我们的规模是相匹配的最大功率,只需所以它很好地显示出来的阴谋。
我们应该删除范围块额外的输入端口。
我们运行之前,请注意这些缓冲区增加了一些延迟的信号。因此,要保持与原始信号一致,我们需要通过12来增加延迟。
好吧,让我们跑,看看如何我们的算法的工作。如果我们在同一天内完成之前放大拍摄的,它看起来像它的工作非常好。
但是,如果我们看一下不同组的六天,我们发现我们的方法有问题。有时,它说,这是在半夜阳光明媚!
为了解决这个问题,让我们在日光探测器将改变我们的阳光的考验。我们将简单地比较的低频功率到另一个门槛,这让我们知道,如果太阳居然高达。我们可以用AND块的两个条件结合起来。
重新运行模型,并检查那些日子......我们看到,我们已经解决了虚假检测问题。
现在,我们有一个工作的算法,我们想将它部署到嵌入式系统中。随着嵌入式编码器,我们就可以部署到Arduino的,树莓派,ZYNQ,等等。
让我们将模型部署到Arduino Uno板上。
我们将打开模型设置窗口并选择硬件板。然后,我们用输出端口替换用于测试的范围块。
现在让我们生成代码。这将获取我们的Simulink万博1manbetx模型并生成所有C文件,我们需要这些文件来编译用于部署的模型。您还可以为其他嵌入式系统生成通用的C代码。
或... VHDL或Verilog代码部署到FPGA。
一旦我们生成的代码,我们将它移植到我们的太阳能电池阵列上的嵌入式硬件。
看看我们使用Simulink做了什么!万博1manbetx我们现在有稳定的可再生能源。
您已经了解了如何从空白画布到运行在嵌入式系统上的信号处理应用程序。你也可以试试这个。您可以下载这些文件。
现在你已经与Simulink的工作是什么感觉就像是,它的时间去学习它。万博1manbetx学习Simulink的最好的办法是与它的工作万博1manbetx。因此,开始了Simuli万博1manbetxnk的匝道,它会教你的基础知识。它是免费的,只需要几个小时。
欢迎来到仿真软件!万博1manbetx
您也可以从以下列表中选择网站:
选择最佳的网站性能的中国网站(在中国或英文)。其他MathWorks的国家网站都没有从您的位置访问进行了优化。