震荡信号Simulink仿真
1. simulink仿真设计
震荡信号本质是调制信号,可以表示为:
u(t)=A*(1+m*cos(Ωt+θ))*cos(ωt+φ)=A*cos (ωt+φ)+ A*m*cos(Ωt+θ)*cos(ωt+φ)
使用simulink仿真如下:
2. 时域信号
时域信号输入设计为信号调制模型。
u(t)=A*(1+m*cos(Ωt+θ))*cos(ωt+φ)=A*cos (ωt+φ)+ A*m*cos(Ωt+θ)*cos(ωt+φ)
输入信号1: m*cos(Ωt+θ) = 0.5*cos(2*pi*5*t), 调制深度m=0.5, 频率f=5Hz。
输入信号2: A*cos(Ωt+θ) = 100*cos(2*pi*100*t), 幅值A=100, 频率f=100Hz。
时域信号:
图中,蓝色为相乘后的信号,最大幅度为mA=50, 粉色为叠加后的信号,可见100Hz的信号被5Hz信号调制,信号包络为5Hz。
3. 频域信号
对叠加后的信号进行fft变换。
FFT输出为:
中心平率100Hz,幅值100, 左右各有一个侧带波,信号频率为100±5Hz,幅值为25.
为什么会出现这个情况?
u(t)=A*(1+m*cos(Ωt+θ))*cos(ωt+φ)=A*cos (ωt+φ)+ A*m*cos(Ωt+θ)*cos(ωt+φ)
积化和差公式化简后:
u(t)=A*cos(ωt+φ)+0.5*A*m*cos((ω+Ω)t+φ+θ)+0.5*A*m*cos((ω-Ω)t+φ-θ).
如上图,幅值为25的侧带波来源于0.5mA=0.5*0.5*100 = 25,频率是ω+Ω和ω-Ω。
4 . 信号解调
震荡信号会引起测量系统失效,为什么如此呢?
简单的说,信号被调制之后,原基频信号就会以较低频率的震荡信号为包络发生震荡,而测量系统的记录时间长度有限,那么就会造成记录时间段内的波形重建之后,依然不够2倍包络波周期,从时域波形来看,就是测量系统每次计算的数据只是较长包络的一小段。
所以需要对信号进行解调,平方解调是分析震荡信号的有效手段。对叠加后的信号进行低通滤波,排除谐波干扰,然后进行FFT计算。解析过程就是对信号u(t)进行平方,经过简单的积化和差计算,可得平方后调制波Ω出现在2倍频位置,即会出现mA2cos(Ωt+θ)因式。
频域图如下:
震荡信号在5Hz出,幅度为mA2=0.5*100*100 = 5000。
而200Hz处应该为基波信号,但幅值变得很小是由于中间的滤波器缘故。
滤波器设计为带通,1Hz-100Hz, 20阶IIR滤波器。
完成仿真后,就可以从FDA Tool生成滤波器系数,然后用C在MCU上实现上述FFT计算和滤波过程,最终解析出震荡信号特征。
震荡信号Simulink仿真的更多相关文章
- Simulink仿真入门到精通(十九) 总结回顾&自我练习
从2019年12月27到2020年2月12日,学习了Simulink仿真及代码生成技术入门到精通,历时17天. 学习的比较粗糙,有一些地方还没理解透彻,全书梳理总结: Simulink的基础模块已基本 ...
- Simulink仿真入门到精通(三) Simulink信号
3.1 Simulink信号概述 所谓信号,表示一种随着时间而变化的量,在时间轴上的采样时刻都对应有数值. 信号在Simulink中是相当重要的组成部分,有线(line)表示,在模型中穿针引线地将各模 ...
- Simulink仿真入门到精通(五) Simulink模型的仿真
5.1 模型的配置仿真 由各种模块所构建的可视化逻辑连接,只是模型的外在表现,模型仿真的核心驱动器是被称作解算器(Solver)的组件,相当于Simulink仿真过程的心脏,驱动着模型仿真,它在每一个 ...
- simulink仿真过程
Simulink求解器 Simulink仿真过程 Simulink 模型的执行分几个阶段进行.首先进行的是初始化阶段,在此阶段,Simulink 将库块合并到模型中来,确定传送宽度.数据类型和采样时间 ...
- 【Matlab】简单的滑模控制程序及Simulink仿真
文章: [控制理论]滑模控制最强解析 滑模控制程序及Simulink仿真 这篇文章仿真和输出U的推到有些问题,博主根据此篇文章进行修改进行对sin(t)曲线的追踪(使用滑模控制) 使用滑模控制对sin ...
- matlab 调用C程序进行simulink仿真
文章目录 simulink仿真 创建C程序 编译C程序 运行结果 simulink仿真 simulink仿真中需要使用S-Function模块,可以实现调用C程序进行仿真,下面先建立一个简单的仿真: ...
- MATLAB设计模糊控制器并用simulink仿真
一.设计模糊控制器1.1 创建项目文件夹在此路径如图 1.2 打开MATLAB打开MATLAB R2012a切换当前目录为上一步路径,如图 1.3 设计模糊控制器打开模糊控制器设计对话框 根据模糊控制 ...
- 声反馈抑制使用matlab/simulink仿真
第一份工作时做啸叫抑制的仿真,调大0.3可以有大的啸叫产生,下图的SIMULINK仿真模型 实现移相有多种方法: 1.iir实现 2.FFT实现 3.使用FIR实现 所有信号均可以由正弦信号叠加而成.
- matlab之simulink仿真入门
Matlab Simulink仿真工具的应用 ****Simulink是一个用来对动态系统进行建模.仿真和分析的软件包.使用Simulink来建模.分析和仿真各种动态系统(包含连续系统.离散系统和混合 ...
随机推荐
- HTML5拖放事件-上传图片预览功能
主要用到的知识点有dataTransfer对象和FileReader(读取文件信息) 1.创建简单的HTML标签: <body> <div id="box"> ...
- 自定义view(二)
这里是自定义view(二),上一篇关于自定义view的一些基本知识,比如说自定义view的步骤.会涉及到哪些函数以及如何实现自定义属性,同时实现了一个很基础的自定义控件,一个自定义的计时器,需要看的人 ...
- 第34篇 再谈http协议
从打开一个网址说起 当在浏览器中输入一个网址的时候,浏览器会渲染出对应的网页的内容.作为web开发人员来说,应该知道这个过程: 当输入的一个网址为域名的时候,浏览器则根据本机的网关和DNS服务器来解析 ...
- flex布局应用于踩坑
一.预告 本文不是一篇入门的文章所有请符合以下条件的战斗人员绕道: 1.初学前端,对前端的传统布局还不是很熟悉的人 2.后端人员对前端不打算深入学习的同学 二.开篇 flex布局原本是好几个月前就一直 ...
- 使用java.util.Properties类读写配置文件
J2SE 1.5 以前的版本要求直接使用 XML 解析器来装载配置文件并存储设置,虽说也并非难事,相比 java.util.Properties却要做额外的解析工作.而java.util.Proper ...
- JS中一些常用的内置对象
在JS中,经常会遇到明明知道一个对象有某个属性或方法,可是又不知道怎么写的情况.下面,我就罗列了一些JS中常用的内置对象的属性和方法. Math对象: Math对象的作用是执行常见的算术任务. 首先M ...
- 第一章 初始java
一.单词 public:公共的 static:静态的 void:空的 class:类 print:打印 line:排 pro ...
- C++ protected访问权限思考
看了云风关于protected的思考,自己也总结了下. C++的访问权限有三个 private.protected.public. 如果不包括继承的话,比较好理解,可以分为类外和类内两部分.类外不能访 ...
- Robot Framework 关键字自定义
关键字自定义有三种方法: 1.在自动化目录中右键-->New User Keyword 2.选中case中的步骤(可选多行),右键-->Extract Keyword 3.自己写模块,自定 ...
- HTTP协议&SOCKET协议
一. HTTP协议是什么? 我们在浏览器的地址栏里输入的网站地址叫做 URL(UniformResourceLocator,统一资源定位符).就像每家每户都有一个门牌地址一样,每个网页也都有一个Int ...