- 博客(21)
- 资源 (9)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Matlab如何进行利用离散傅里叶逆变换iDFT 从频谱恢复时域信号
文章目录1. 定义2. 变换和处理3. 函数4. 实例演示例1:单频正弦信号(整数周期采样)例2:含有直流分量的单频正弦信号例3:正弦复合信号例4:含有随机干扰的正弦信号例5:实际案例5. 联系作者1. 定义上一篇研究了Matlab如何进行离散傅里叶变换DFT(快速傅里叶变换FFT)进行频谱分析。工程上我们还会遇到这样的问题:获取了信号的频谱,希望从信号的频谱来恢复时域信号。这一篇来研究如何进行利用离散傅里叶逆变换(iDFT)从频谱中恢复时域信号。离散傅里叶逆变换 (iDFT)的定义为:x(n)=i
2021-02-01 21:45:44
17215
10
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Matlab如何进行利用离散傅里叶变换DFT (快速傅里叶变换FFT)进行频谱分析
1. 定义信号在频域能够呈现出时域不易发现的性质和规律,傅里叶变换是将信号从时域变换到频域,便于在频域对信号的特性进行分析。离散傅里叶变换 (DFT),是傅里叶变换在时域和频域上的离散呈现形式,通俗的说就是将经过采样的有限长度时域离散采样序列变换为等长度的频域离散采样序列,通过对变换得到的频域采样序列进行适当的换算和处理,可以得到信号的频谱(频率-幅值曲线和频率-相位曲线)。离散傅里叶变换 (DFT)的定义为:X(k)=DFT[x(n)]=∑n=0N−1x(n)e−j2πNnkX(k) = {\rm{
2021-01-31 22:42:27
35369
6
原创 使用Matlab AppDesigner 进行飞行器坐标变换演示
1 原由学习坐标变换需要有较强的空间想象能力,最好结合实际案例有一定的感性认识,否则坐标轴几经旋转后,凭空想象很难理解。为此,笔者使用Matlab AppDesigner 进行飞行器坐标变换演示GUI,通过界面交互和三维动画演示,可以帮助用户建立坐标变换的感性认识。2 示意地面坐标系:与地面固定,视为固定不动的坐标系;机体坐标系 :与飞行器机体固定,随飞行器运动的坐标系;滚转角(Roll):绕 轴旋转角度(从 轴看逆时针方向为正);俯仰角(Pitch):绕 轴旋转角度(从 轴看逆时针方向为正);偏
2021-11-10 22:04:03
2422
1
原创 Simulink中构造时变传递函数的四种方法
1. 原由传递函数是针对线性时不变(Linear Time-Invariant,LTI)系统定义的,严格来说,时变传递函数的说法并不十分严谨。但 “时变”和“非线性”才是实际系统的本质特性,就拿最简单的RC电路来说,电阻会随温度变化,电容也会随使用时间发生变化,RC参数的变化就会造成传递函数的时变。对于已经建好的传递函数,需要分析参数时变的影响时,或者已经建好的某种控制算法,需要验证对于参数时变的适应能力时,应该如何处理呢?这时,由线性时不变系统传递函数推广得到的时变传递函数是一个不错的选择。2. 方法2.
2021-09-22 22:29:54
17452
原创 使用Matlab将多个图形Figure文件合并
0. 原由Matlab使用过程中,会遇到需要将多个图形Figure文件合并成一个文件的需求,便于在一个坐标轴内对曲线进行合并的显示和比较。如下图:分别使用P控制、PID控制、模糊PID控制、神经网络PID控制方法,得到了某系统的阶跃响应结果,希望将四种控制方法的阶跃响应结果合并到同一图形Figure下。希望合并后的结果:1. 思路 Matlab提供了函数copyobj,可以复制图形对象及其子级,可以以此实现多个图形Figure文件的合并。copyobj(h,p) % 将图形对象p复制到对象h
2021-09-12 17:51:29
25922
8
原创 Matlab如何平移图形(Figure)中的曲线
0. 原由Matlab绘制出图形(Figure)后,分析数据时经常需要平移曲线,便于定量比较曲线的特征,如下图,需要平移曲线使得三条曲线重合。Matlab的Figure工具栏中没有提供曲线平移的工具,平移曲线只能先对原始数据进行运算,然后重新绘图,不便于可视化操作。笔者尝试开发了用于Matlab图形(Figure)中进行曲线平移的代码,能够与Matlab的自带Figure无缝对接,推荐作为Figure图形编辑的小工具。1. 方法移动图形(Figure)曲线的方法:1) 获取曲线数据的xdata和ydata;
2021-08-26 21:37:16
13926
原创 Matlab图形(Figure)中使用差值光标提取数据
0. 原由示波器中常用差值光标,用于捕捉曲线中的特征点,并计算出特征点之间的坐标差值。差值光标在分析图形数据时很有用。可惜在Matlab的Figure工具栏中并没有提供,自带的数据提取功能似乎不如差值光标好用。笔者尝试开发了用于Matlab图形(Figure)中提取数据的差值光标代码,能够与Matlab的自带Figure无缝对接,推荐作为常规数据分析的小工具。1. 思路 向Figure增加鼠标移动回调函数,鼠标在figure中移动时,十字光标随鼠标移动,增加数据捕捉功能,当前光标与曲线距离较近时,能够自动捕
2021-08-22 23:26:23
2263
12
原创 使用Matlab将抖音视频转换成gif图片
文章目录1. 原由2. 方法3. 演示3.1 将视频完整转换为gif图片3.2 将指定时间的视频片段转换为gif图片3.3 改变gif图片的播放速度4. 联系作者1. 原由昨天的博文如何使用Matlab绘制动态曲线,并生成gif图形居然登上了CSDN热搜,看来大家对于动态图片热情很高,今天看抖音时突发奇想,能否使用Matlab将抖音视频转换为gif图片呢?摸索一晚,小有所成,献给大家。2. 方法**核心思路:**将抖音视频文件保存到本地,使用VideoReader函数读取视频,通过read函数
2021-07-16 23:59:29
1059
5
原创 如何使用Matlab绘制动态曲线,并生成gif图形
文章目录0. 原由1. 思路2. 函数3. 演示3.1 动态绘制圆3.2 绘制动态正弦曲线3.3 绘制不同阻尼比二阶系统的动态阶跃响应曲线3.4 绘制旋转的五角星曲线联系作者0. 原由可视化是Matlab软件的突出优势之一,经常需要将仿真或试验得到的数据可视化,有时还希望形成动态曲线,保存成动画,以便生动形象的展示数据。1. 思路Matlab中绘制动态曲线的基本思路:绘图并保存图形句柄,使用set函数循环改变图形句柄的xdata和ydata属性,对曲线坐标进行更新,形成动画效果。保存gif图片的基
2021-07-15 23:11:12
13164
17
原创 如何使用Matlab绘制各类特殊图形
文章目录1. 绘制极坐标图2. 单条曲线绘制分段函数(反比例函数y=1/x)3. 正方体内绘制随机分布的颜色片图4. 在大圆内随机生成若干互不相交的小圆5. 在长方体内随机生成若干球体6. 绘制圆柱体与球体曲面相交,并绘制相交曲线8. 绘制三维抛物曲面9. 抛物曲面随参数变化形成动画10. 使用不同频率的正弦波合成方波联系作者近来,作为CSDN网站Matlab/Simulink软件问答板块的专家,帮助不少网友解决了许多疑难的绘图问题,在此与大家分享。1. 绘制极坐标图说明:使用polarplot函数绘
2021-07-14 22:09:39
5366
8
原创 Matlab/Simulink常见错误解决办法:The current directory “…Matlab …\bin”is reserved for Matlab files
文章目录1. 报错信息2. 报错原因3. 解决办法方法一:更换文件目录方法二(推荐):设置Matlab的默认启动目录4. 联系作者1. 报错信息经常遇到打开Matlab软件后,将网上下载好的程序文件粘贴进去,点击运行,结果报错:错误使用: XXX (第X行)The current directory ‘g:\matlab 2020b\bin\code’ is reserved for MATLAB files.Please change your current directory to a wr
2021-07-08 23:13:13
38910
7
原创 Simulink如何在线修改模块参数 (动态修改模块参数)
1. 原由典型的Simulink模块双击时会弹出对话框,在对话框中可以设置模块参数,如:双击正弦波模块(Sine Wave),可以设置正弦波幅值和频率;双击增益模块(Gain),可以设置增益值;双击PID控制器模块(PID Controller),可以设置PID参数值;双击传递函数模块(Transfer Fcn),可以设置传递函数的分子和分母系数。但很多时候,需要在Simulink仿真过程中修改模块的对话框参数(称为在线修改或动态修改模块参数),如:希望在仿真过程中改变正弦波的频率,实现扫频信号;希望
2021-07-05 22:40:27
30596
9
原创 四阶龙格库塔法(Runge-Kutta)求解常微分方程的 Matlab程序及案例
文章目录1. 算法2. 程序3. 案例4. 联系作者1. 算法上一篇介绍了显式欧拉法、隐式欧拉法、两步欧拉法和改进欧拉法求解常微分方程初值问题;其中显式欧拉法和隐式欧拉法是一阶算法精度,截断误差为O(h2)O\left( {{h^2}} \right)O(h2);两步欧拉法和改进欧拉法是二阶算法精度,截断误差为O(h3)O\left( {{h^3}} \right)O(h3);欧拉法的精度有限、需要求解步长hhh很小。本篇介绍求解精度更高的四阶龙格库塔法(Runge-Kutta),其截断误差为O(h5)
2021-02-28 17:33:51
42845
1
原创 欧拉法(Euler)求解常微分方程的Matlab程序及案例
文章目录1. 概念1) 常微分方程2) 一阶常微分方程3) 微分方程的解析解法和数值解法2. 算法2.1 显式欧拉法2.2 隐式欧拉法2.3 两步欧拉法2.4 改进欧拉法2.5 四种欧拉方法的对比3. 程序4. 案例5. 联系作者1. 概念1) 常微分方程自变量只有一个的微分方程,称为常微分方程;自变量数量2个或以上时,称为偏微分方程。绝大多数实际工程问题,常微分方程的自变量都是时间t,通常表达为:F(t,y,y˙,⋯ ,y(n−1),y(n))=0F\left( {t,y,\dot y, \cd
2021-02-28 00:09:58
54537
3
原创 Matlab求解阶跃响应性能指标 (上升时间、调整时间、峰值时间、超调量)
Matlab求解阶跃响应性能指标(上升时间、调整时间、峰值峰值、超调量概述阶跃响应性能指标定义Matlab函数示例求一阶系统阶跃响应性能指标求复杂系统阶跃响应性能指标求解不同阻尼比时二阶系统的阶跃响应性能指标联系作者(上升时间、调整时间、峰值峰值、超调量))概述工科的同学对应阶跃响应应该不会陌生,简单来说,阶跃响应是指输入量发生阶跃变化时动态系统的输出阶跃响应,通过分析输出阶跃响应的性能指标,可以分析和比较动态系统的动态性能和稳态性能。阶跃响应性能指标定义阶跃响应性能指标主要包括稳态值、上升时
2020-09-26 11:16:13
140439
12
原创 Matlab如何提取fig文件中的数据
1. 原理有时候运行的程序只保存了fig文件,而没有保存原始数据,当需要对fig文件中的数据进行分析和处理时就会犯难了。本文详细介绍Matlab如何提取fig文件中的数据,并提供原创的m函数,可方便实现各类figure图形提取数据。fig文件作为Matlab中的图形文件,其实原始数据是会存储在figure对象中的,那么通过get函数获取figure对象中相应的数据属性,就可以得到fig图形中的数据。例如现在有一个保存的图形:第一步:打开fig文件;第二步:获取line句柄ha = get(gc
2020-09-19 23:32:00
12399
4
原创 Matlab如何绘制带箭头图形
前段时间推出了绘制箭头坐标轴曲线的方法,许多网友联系我索取了源程序,绘制出漂亮的图形,得到大家好评。 链接:[如何使用Matlab绘制箭头坐标轴曲线](https://blog.csdn.net/MatlabFans_Mfun/article/details/107585598)但是有些时候我们不光要求坐标轴是箭头形式,还要求图形上有箭头标记,前段时间绘制Nyquist图,需要在Nyquist曲线上用箭头标记频率方向,在网上几经搜寻,终于在Matlab中文论坛上找到了解决方案,绘制出的...
2020-09-05 22:41:36
19140
7
原创 如何批量将simulink文件保存为前期版本
众所周知,Matlab每年更新两个版本,Simulink也随之更新两个版本。新版的Matlab软件动辄40~50G,装一次软件也够喝一壶了,我们换软件的速度显然是无法跟上Matlab更新速度的。 m文件还好,每次软件更新涉及到的m函数,对于一般用户基本不会用到,因此m文件在各个版本的Matlab软件之间有较好的流动性。但是Simulink文件却不行,老版本的Simulink无法打开新版本软件创建的Simulink文件。因此,要将新版本Simulink移植得到老版本软件上,需要将...
2020-07-25 23:22:35
7405
2
原创 Matlab绘制箭头坐标轴图形
函数功能 Matlab自带绘图函数,坐标轴不带箭头,如下所示: 有时经常需要使用Matlab绘制坐标轴带有箭头的图形,特别是一些原理性的图形,只需要定性表达曲线的变化趋势,无需精确表达曲线的数量关系,这时使用带箭头的坐标轴显得更加美观。本程序可实现绘制坐标轴带有箭头的图形,程序调用格式与系统自带的绘图函数plot等一致,使用起来相当方便。实现原理 使用系统函数绘图,在生成的图形上叠加两个annotation对象表示x轴和y轴...
2020-07-25 21:44:43
18638
7
原创 Simulink中.sxl文件与.mdl文件的区别
Simulink中.sxl文件与.mdl文件的区别新的改变slx文件是二进制格式文件,mdl文件是文本格式文件,早期Simulink的模型文件为mdl格式,slx格式在Matlab/Simulink R2012a版本中引入,旨在取代以前的.mdl格式,由于slx被压缩,通常文件大小会比相同的mdl文件小。文件区别一个简单的模型分别存成K01A.slx格式和K01B.mdl文件,然后分别用记事本打开,可以看出slx文件打开后为乱码,mdl文件打开后为文本,这些文本描述了模型的特性。slx文件是
2020-07-18 22:58:17
20158
如何批量将simulink文件保存为前期版本.rar
2021-03-13
四阶龙格库塔法(Runge-Kutta)求解常微分方程的Matlab程序及案例.rar
2021-03-13
欧拉法(Euler)求解常微分方程的Matlab程序及案例.rar
2021-03-13
Matlab如何进行离散傅里叶变换DFT(快速傅里叶变换FFT)进行频谱分析.rar
2021-03-13
Matlab求解阶跃响应指标(上升时间、调整时间、峰值峰值、超调量).rar
2021-03-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人