数字信号处理-使用matlab进行工业采集的数据进行处理分析
怎样通过matlab进行工业数据处理分析呢这个问题值得深究什么是数据处理什么是信号分析怎样进行数据处理分析得到的数据有些什么用该怎样使用matlab这个强大的工具这个问题困扰了我很久现在也依旧困扰着我。只能一步一步慢慢来慢慢学习。之前有浅学过一小段时间后面由于其他工作而暂停。学习篇数字信号分析理论与实践引入凡是涉及到测量、控制等的理论和实验研究以及设备开发等工作都需要用到该知识。纸上得来终觉浅觉知此事要躬行计算机化测量系统AD转换主要有积分型、逐次逼近型、并行比较型、串并行型采样将离散脉冲序列与特定信号相乘取离散散点值的过程采样定理为保证采样后信号能真实的保留原始模拟信号信息信号采样频率必须至少为原信号中最高频率成分的2倍。Fs 2Fmax工程领域中为保证采样信号的质量Fs 5Fmax频率混叠当采样频率不满足采样定理时即Fs 2Fmax此时信号中的高频成分被不正确的采样成低频成分。虚线为真实信号黑色实现为采样信号想知道一个时域信号怎么计算其频谱的——通过傅里叶变换matlab分析编程基础round(四舍五入、floor向下取整、ceil向上取整、fix向0取整显示函数-plot()----反之stem()信号函数与标准信号正弦信号、方波信号、锯齿波、三角波、噪声信号白噪声-工程上大部分是这个x - randn(1,n) 1代表是维度此时是一维n代表个数均匀噪声-x rand(1,n) 0-1上的噪声是均匀的matlab中可用 square(t,duty)电子琴设计频率 349 392 440 494 523 554 587 622 659sin函数分别对应1-9信号的时域分析波形分析--直接对信号幅值随时间变化曲线进行分析时域上进行。信号波形参数识别1、周期T频率f 1/T采用过零点检测方法在交流信号中比较有效2、峰值P/双峰值PP3、初相位4、均值E(x)5、均方值 E(X^2)表示信号强度平方根称为有效值RMSsqrt( E(X^2))。6、方差(E(X)-E(X^2))^2信号数字微分和数字积分算法1、数字微分--本质上是一个高通滤波器velocity diff(position) / dt;2、数字积分--本质上是一个低通滤波器矩形积分法% 假设 x 是信号dt 是采样周期y cumsum(x) * dt;梯形积分法--y(0)0% MATLAB 内置函数y trapz(x) * dt; % 计算总积分值% 或者计算累积积分y cumtrapz(x) * dt;辛普森积分法利用二次曲线拟合三个相邻的点该方法精度最高只能处理离线数据需要知道未来的点原始信号A——经过微分——再经过积分的信号BB与A信号变化一致但是相差一个积分常数是什么原因∫x(t)dtx(t)C二维数字微分图像处理时域上处理分析延迟低、物理意义明确易于在单片机上实时实现。1、统计特征分析特征提取——最基础方法判断信号的整体状态。均值与方差识别信号的直流偏移如传感器零漂和波动剧烈程度如环境噪声。峰值与峰度针对脉冲性信号。例如轴承损坏产生的撞击声在时域上表现为极高的“峰度”。有效值 (RMS)衡量能量是工业电机振动监测最常用的判据。2、差分与积分--变化率与累积差分微分提取信号的变化速度如位移推算速度。对突变敏感常用于边缘检测。积分用于累积效应如计算总功、从加速度推算位移。3、相关性分析自相关 (Auto-correlation)信号与延迟后的自己相比。作用提取淹没在强噪声中的周期性。如果自相关函数在 t处有明显的峰值说明信号存在周期性干扰。互相关 (Cross-correlation)信号 A 与信号 B 相比。作用计算时间延迟 (TDOA)。例如两个相距 1 米的传感器采集同一个震动波通过互相关峰值的位置可以算出波传播到两个传感器的时间差。4、卷积与时域滤波滑动平均滤波器每一个点取周围N个点的平均。这是典型的时域低通滤波用于平滑噪声。中值滤波取窗口内的中间值。针对椒盐噪声尖峰干扰极其有效且不破坏信号边缘。针对特定信号的分析策略分析维度时域分析 (Time Domain)频谱分析 (Frequency Domain)关注点什么时候发生的(When)发生的频率是多少(What frequency)典型指标幅度、上升时间、超调量频率、功率谱密度、谐波直观感受像看示波器 (Oscilloscope)像看均衡器 (Equalizer)解决问题反应快不快稳不稳干扰在哪能量分布在哪信号的频谱分析通过frequency-domain analysis可以识别信号的干扰源、分析谐波失真、确定信号带宽、提取周期性微弱信号去噪、机械状态监测以单片机采集信号为例模拟信号频率由被测物体决定如电机转速、振动波。RC 电路决定了哪些频率的信号能被“放行”进入单片机。采样频率由单片机定时器触发 ADC的速度决定。串口只是一个“搬运工”。搬运工的速度波特率必须大于生产者的速度采样频率 $\times$ 数据位系统才不会崩溃。1、频谱分析谱的概念最早从光学领域提出当一束白光通过三棱镜会按照光的波长分解为赤橙黄绿青蓝紫等色彩称之为光谱。频谱分析----借助于傅里叶变换将信号转换到频率域揭示出构成信号的不同频率成分各个频率分量的贡献曲线称为信号的频谱。频谱分析的优点可以进行复杂信号分析、抗干扰能力强、有明确的物理意义2、周期信号的傅里叶级数分解1向量的正交分解与合成X-Y二维工作台可以实现到平面上任意一点的运动。正交两个向量的夹角呈90°如果两个信号源是正交的那么它们之间没有相关性即互相关为0傅里叶变换的核心将信号投影到一组正交的基函数正弦波和余弦波上由于这些波形相互正交所以每个频率的分量都可以独立计算互不干扰。2信号的正交分解与合成两个不同的函数乘起来积分等于0--代表两个函数完全独立、互不相关任意一个复杂信号x(t)都可以拆成一堆简单的正交函数相加。3三角正交函数集在时间轴上判断两个函数信号是否正交其实就是看它们在一段周期内的抵消效应不同频率的正弦波或余弦波在它们的公倍周期内一定是正交的。比如10Hz 的正弦波和20Hz的正弦波它们是正交的。这意味着你分析10Hz的信号时完全不用担心20Hz的信号会干扰它。4沃尔什正交函数集该函数时一组二值函数值只有1和-1任意两个不同的沃尔什函数相乘在一个周期内的积分也等于0。任何离散的数字信号都可以由这组方块拼图组合出来其中四个图的0123为列率物理意义不明确用的少5周期信号的三角函数分解和合成傅里叶级数展开关于方波信号的傅里叶级数分解被积分函数为奇函数时积分为0奇函数*奇函数偶函数、奇函数*偶函数奇函数6频谱图——用图形的方式来表示信号各频率成分的能量大小情况实频谱an、虚频谱bn、幅频谱An、相频谱φn、功率谱A²n频谱名称数学表示 (基于 Yn)描述信号的什么特征核心作用 / 什么时候用实频谱 (an)real(Y)信号中的余弦分量强度。理论推导。用于判断信号的奇偶对称性若 an0 则为奇函数。虚频谱 (bn)imag(Y)信号中的正弦分量强度。理论推导。常与实频谱结合观察信号在复平面上的投影。幅频谱 (An)abs(Y)该频率分量的总振幅大小。最常用 用于查找信号中包含哪些频率以及哪个频率最强如噪音定位。相频谱 (φn)angle(Y)该频率波形相对于 t0 的时间偏移。用于信号重建或系统辨识。研究信号通过滤波器后产生的延迟相位失真。功率谱 (Pn∝An2)abs(Y).^2该频率分量所包含的能量大小。随机信号处理。 用于观察能量随频率的分布常用于振动分析、噪声分贝计算。7用快速傅里叶变换FFT计算频谱对AD采样后的数字信号没有函数表达式需要通过数字积分方式求出傅里叶级数欧拉公式是怎么转换的介绍 时间2026.3.17 目的研究并验证fft函数的变换机制 保存E:\words2025\宏大\数据采集卡\数字信号处理分析matlab\dsp_ff_test.mlx clear;clc;close all; 当调用Yfft(x)时matlab内部执行的时离散傅里叶公式 通过该公式将时域的N个采样点变成频域的N个复数点 matlab输出的Y是一个复数数组 Fs 5120; %1024/51200.2s 5Hz N 1024; dt 1/Fs; T dt*N; t linspace(0,T,N); % 一个频率为100Hz,另一个频率为300Hz x 10*sin(2*3.14*100*t)10/3*sin(3*2*3.14*100*t); plot(t,x); 分析这是时域波形包含两个正弦波的叠加 y fft(x); a real(y); b imag(y); figure; subplot(2,1,1);plot(a); subplot(2,1,2);plot(b); 这是傅里叶变换后的实部以及虚部 由于原始定义的是sin信号sin在FFT内部对应的主要是虚部分量即实部几乎为0由于3.14不够精确引起的噪声 虚部可以看出四个明显的尖峰涉及到FFT的镜像对称性 左边两个峰对应正频率100Hz 和300Hz右边两个峰对应所谓的“负频率”。 A1 abs(y); Q1 angle(y)*180/pi; figure; subplot(2,1,1);plot(A1); subplot(2,1,2);plot(Q1); 幅度图A1分析 第一个峰在第21个点频率fk-1*Fs/N 20*(5120/1024)100Hz 第二个峰在第61个点f60*(5120/1024)300Hz 峰的高度5118.6521---5118.65/N/2)9.9974 相位图Q1分析 代表每个频率成分的初始角度 在 100Hz 和300Hz对应的点上相位应该接近-90°因为 sin(x) cos(x - 90°)FFT 默认以 cos为基准。 其他没有信号的地方相位看起来像杂乱的草丛那是计算浮点误差产生的随机相位可以忽略。 假设Fs不是1024的整数倍此时会发现幅度谱的尖峰变胖了高度下降了 此时是发现了频谱泄露。其中周期函数--傅里叶级数 非周期函数--傅里叶变换功率谱能量谱和对数功率谱%% 用11025Hz的采样频率分别对幅值为10频率为200Hz的 % 正弦波、方波、三角波信号进行采样和1024点的FFT变换 % 并分别绘制出他们的信号波形和幅值谱。 Fs 11025; N 1024; V 10; f 200; t 0:1/Fs:N/Fs-1/Fs; y1 V*sin(2*pi*f*t); y2 V*square(2*pi*f*t); y3 V*sawtooth(2*pi*f*t,0.5); figure; subplot(3,1,1);plot(y1);title(正弦波);grid on; subplot(3,1,2);plot(y2);title(方波);grid on; subplot(3,1,3);plot(y3);title(三角波);grid on; xlabel(时间 (s)); W1 fft(y1,N); W2 fft(y2,N); W3 fft(y3,N); P1 (abs(W1(1:N/2)))/((N/2)); P2 (abs(W2(1:N/2)))/((N/2)); P3 (abs(W3(1:N/2)))/((N/2)); f1 linspace(0,Fs/2,N/2); figure; subplot(3,1,1);plot(f1,P1); subplot(3,1,2);plot(f1,P2); subplot(3,1,3);plot(f1,P3); title(幅值谱);此时产生了能量泄露尖峰频率为225左右实际应该为200将N改为5120 尖峰为202将N改为512 尖峰仍为225左右将Fs改为5120 即此时为200.391能量泄露 Fs/N≠整数倍3、数字信号的频谱计算方法——DFT与FFT1信号的截断周期延拓Periodic Extension将一个仅在有限时间范围内定义的信号假设它在时间轴上以同样的形状向左右无限重复从而将其伪装成一个“周期信号”。(2)截断信号的能量泄露FFT与DFT是什么关系数学本质上是同一个东西在计算效率上是“自行车”与“超音速飞机”的区别。DFT离散傅里叶变换是一个数学定义。FFT快速傅里叶变换是实现 DFT 的具体算法。DFT复杂度是 O(N^2)。FFT复杂度是 O(N*log_2 N)。DFT-离散傅里叶变换FFT-快速傅里叶变换蝶形运算FFT 并不是一种新的数学变换它只是 DFT 的一种“天才级”的计算提速方案。左侧那两位老爷子Cooley 和 Tukey在 1965 年发表了这个算法直接推动了现代数字信号处理DSP的爆发。如果没有这个“蝶形图”我们现在的手机通话、Wi-Fi、甚至看视频编解码都不可能实现。FFT谱的栅栏效应能量泄露与栅栏效应的关系4、FFT谱中的能量泄露与栅栏效应5、非周期信号的频谱计算方法6、应用实践——声音信号频谱分析仪设计信号的幅值域分析信号的数字滤波技术信号的时-频分析计算机测控系统实践