matlab simulink系统仿真流程
2014-10-15 20:18
429 查看
今天翘了个经管课,专门看了看simulink的教程捣腾一番。之前早就听过simulink工具,但一直不会用。今天算是初步接触了,把流程记下来。
在命令窗口输入simulink,一会就会出现功能界面。里面都是集成好的模块。模块化的拼接算是simulink的特点吧。
simulink是站在系统的角度分析问题的,把常用的模块和库封装起来,自顶而下的设计系统。
最简单的,我模拟了一个滤波的系统。
在source找到了正弦波,和加法器一起形成y = sin(10t) + cos(300t)的输入。
然后按照参考书设计了一个一阶低通滤波器,想把高频滤掉。
因为是在离散域,信号必须采样。只需双击模块,在sample time键入采样周期就行。注意符合采样定理,我定为0.001s,即1K采样率。
然后连接滤波器,输出到示波器。波形如下:
从波形可以发现滤不干净,可能这个滤波器太弱了。于是想到设计FIR滤波器。
打开fdatool,按照所需要的幅频特性设计,我选了凯泽窗,100阶:
设计完后点击design filter,确认无误后export到simulink model中,将原来的滤波器换成新的FIR滤波器看看滤出来的效果:
发现低频信号已经通过滤波器还原了出来,传说中的FIR滤波器果然腻害!
上午还非常傻的纠结为什么从图中的周期是0.6而不是1/10 = 0.1呢?因为10是数字频率w,w = 2*pi/T,因此周期其实是2*pi/10 = 0.628。
哎呀我居然还纠结了一个小时~简直傻蛋啊!
下面是完整的系统图:
在命令窗口输入simulink,一会就会出现功能界面。里面都是集成好的模块。模块化的拼接算是simulink的特点吧。
simulink是站在系统的角度分析问题的,把常用的模块和库封装起来,自顶而下的设计系统。
最简单的,我模拟了一个滤波的系统。
在source找到了正弦波,和加法器一起形成y = sin(10t) + cos(300t)的输入。
然后按照参考书设计了一个一阶低通滤波器,想把高频滤掉。
因为是在离散域,信号必须采样。只需双击模块,在sample time键入采样周期就行。注意符合采样定理,我定为0.001s,即1K采样率。
然后连接滤波器,输出到示波器。波形如下:
从波形可以发现滤不干净,可能这个滤波器太弱了。于是想到设计FIR滤波器。
打开fdatool,按照所需要的幅频特性设计,我选了凯泽窗,100阶:
设计完后点击design filter,确认无误后export到simulink model中,将原来的滤波器换成新的FIR滤波器看看滤出来的效果:
发现低频信号已经通过滤波器还原了出来,传说中的FIR滤波器果然腻害!
上午还非常傻的纠结为什么从图中的周期是0.6而不是1/10 = 0.1呢?因为10是数字频率w,w = 2*pi/T,因此周期其实是2*pi/10 = 0.628。
哎呀我居然还纠结了一个小时~简直傻蛋啊!
下面是完整的系统图:
相关文章推荐
- 学习《基于MATLAB/Simulink的系统技术与仿真》1
- 信号与系统课程中关于各种编码MATLAB仿真的绘图函数
- MATLAB 与Modelsim之间对测试系统的联合仿真
- MATLAB 与Modelsim之间对测试系统的联合仿真
- Matlab/Simulink仿真中如何将Scope转化为Figure?
- Matlab通信仿真——simulink入门
- 如何用matlab命令更改simulink模型的仿真时?
- 从两个小例子来看matlab系统仿真的使用
- matlab之simulink仿真入门
- matlab/simulink环境下搭建的仿真电路
- IIR+全通滤波器级联实现系统零相位相移_matlab仿真
- MATLAB学习笔记(Simulink仿真)
- second order system analysis 自动控制原理 二阶系统的matlab仿真分析
- MATLAB & STK构建卫星轨道姿态控制仿真演示系统
- simulink仿真错误:MATLAB Function Interface Error
- MATLAB各类函数详细讲解 simulike系统仿真分析
- Matlab-simulink调用 modelsim仿真步骤:
- MATLAB与SOLIDWORK集成机电系统仿真与实现1
- 基于Matlab的MIMO通信系统仿真(上)
- MATLAB和SIMULINK仿真 自动生成STM32工程