音频信号
分析
定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析
仪
摘要:本系统基于快速傅立叶变换(FFT)算法,以单片机和FPGA为控制与数据处理核心,结合必要的外围电路,实现对频率范围在20Hz~10KHz音频信号频率成分的分析 。系统由控制与运算核心、程控放大器、滤波和采样等模块组成。通过对程控放大器增益的调整将系统可测电压(峰-峰值)的动态范围扩展到10mV~8V; 通过改变模数转换器的采样频率,实现频率分辨力100Hz、20Hz两挡可调;频谱分析结果可按序存储,并使用点阵式液晶屏实时显示;通过对频谱数据特征的提取判断信号的周期性,并实现对信号的失真度分析。另外,可通过点阵式液晶屏以图形方式显示信号各频率分量及其相对大小。
关键词: 频域分析 FFT PGA 失真度
一、
方案
气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
与论证
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
目要求制作一个可分析音频信号频率成分,并可测量正弦信号失真度的仪器。分析题目要求,设计可以分为四大部分:程控放大器,包括组看匹配,放大,滤波,整形;AD采样;信号处理分析;人机交互。我们将设计的重点放在对输入信号各频率成分功率的测量,其中在较大的动态范围内保证待测信号的精确放大是本设计的难点。
针对如上难点,我们对系统各部分设计做了仔细的论证和比较。
1.方案比较与选择
1.1 控制与运算核心的选择
方案一:单片机作为控制与运算核心。
方案二:FPGA作为控制与运算核心。
方案三:单片机与FPGA联合作为运算与控制核心。
单片机具有控制灵活简单的优点,但逻辑资源少,运行速度不能做得很高;FPGA相对于单片机在逻辑资源和速度上有绝对的优势,但不便于调试。若将两者联合起来,可以充分发挥各自的优势,有可补充对方的缺点。故选择方案三。
1.2 程控放大器
方案一:使用集成可变增益放大器AD603。只要改变控制端电压就可以控制AD603的增益,但要实现增益的精密控制还必须与位数较高的数模转换器件配合使用。
方案二:使用模拟开关或继电器选择则不同的电阻值,作为放大器的反馈电阻,实现不同量程的放大倍数。这种方案控制简单,只要运放的增益带宽积和噪声抑制能力足够大,每级的增益是恒定的。但继电器分布参数较大;而模拟开关存在一定的导通电阻。
上述方案各有优缺点,考虑到系统成本和精度要求,选择方案二。继电器可能引入的寄生振荡可通过补偿电容消除;模拟开关的导通电阻可与放大器的选通电阻一并看作放大器的反馈电阻。
1.3 滤波器设计放方案
本系统在采样之前要分别通过一级高通滤波和一级低通滤波。高通滤波器用于滤除信号中的直流成分,以适于设定为双极性输入的模数转换器进行有效采样;低通滤波是一级反混叠失真滤波器。其实现一般有如下方案:
方案一:使用运算放大器设计RC有源滤波器。
方案二:使用集成滤波芯片,如MAX297。
对于一般的滤波器设计,方案一灵活简单,而且有专门的辅助设计软件可快速进行设计;但对滤波器的设计参数有特殊要求时,方案一将变得不现实。结合设计要求,高通滤波器的设计采用方案一,低通滤波器(要求具有很窄的过渡带)的设计采用方案二。
2.系统实现框图
系统总体实现框图如图1-1所示。系统以AT89S52单片机和Cyclone 系列的FPGA为控制与运算核心;输入端由一级JFET运放实现50Ω的输入阻抗;待测信号经过由模拟开关和继电器控制的两级程控放大器,被放大到适合A/D采样的范围以内,再经一级截至频率为20KHz的反混叠低通滤波器,由FPGA内的采样控制模块控制MAX197实现预定速率的采样;采样所得结果经FFT模块转换为此信号的频域表示,经单片机转换为对应频率的功率值,按功率从大到小排序,并将数据存储于外部RAM 62256。周期性判断及频率测量与失真度分析也由单片机完成。相应的测量结果通过对键盘的操作由点阵式液晶屏显示。
图1-1 系统实现框图
二、理论分析与计算
1.程控放大器设计
题目要求输入电压范围(峰-峰值)为100mV~5V;考虑到发挥部分扩大输入信号动态范围,提高灵敏度的要求,我们将输入信号电压范围(峰值)定为1mV~5V。如果A/D的有效输入范围(峰值)为2.5V~5V,则所需最大放大倍数应不小于2500倍,最小放大倍数应不大于0.5倍。可见最大增益与最小增益之间相差12~13个两倍程,故采用两级程控放大器。第一级分三挡,实现粗调;第二级分八挡,实现细调。各级增益(倍数)的具体分配见下表。
表2-1 程控放大器增益分配
第一级
第二级
1
28
180
0.5
1
2
4
8
16
24
32
由上表可得,放大器总的增益调节范围是0.5~5760倍。满足设计要求。
2.功率谱测量方法
本设计采用直接的经典功率谱估计法:它是把抽样序列
的
个观测数据视为一能量有限的序列,直接计算
的离散傅立叶变换,得
,然后再取其幅值的平方,并除以
,作为序列
真实功率谱的估计。
有限长序列的傅立叶变换定义为:
正变换:
(1)
反变换:
(2)
根据Parseval定理:一个序列在时域计算的能量与在频域计算的能量是相等的。即:
,可得到各个频谱对应的功率与在时域测量功率之间的关系。
EMBED Equation.3
式中,
为信号的有效值,
为各频点的幅值。
这里采用
为512的FFT算法实现离散傅立叶变换。由频率分辨力
、采样率
和分析点数
之间的关系:
,可得满足100Hz、20Hz对应的采样率分别为51.2KHz、10.24KHz。如果以51.2KHz的采样率采集信号,若被测信号是100Hz的单频信号,则刚好可采满一个周期,可测频率下限为100Hz;由Nyquist定理可知,可测信号频率的上限为25.6KHz。同理,如果以20.48KHz的采样率采集被测信号,对应的采样范围是40Hz~10.24KHz,频率分辨力为40Hz。Nyquist定理要求采样频率fs 要大于或等于信号最高频率的2倍,但一般取3~4倍.否则,将会出现严重的“泄漏”,使频谱失真。若要达到20Hz的频率分辨力,可以采用两种办法:第一,降低采样率,但可测的频率上限同步减小;第二,增加FFT分析的点数,这样对可测的频率的上限没有影响,但实现它所需的运算量与数据存储量将明显增加。
3.周期性判断方法
信号周期性的判断可利用周期信号所具有的自相关特征。
假设采样所得的时间序列
,其中
为采样周期,利用一长为
的滑窗来计算该采样序列的结构函数
,即
式中,
,
,一般取
,以保证上式中即使在
时,也有较多的数据差值求平均。
可以用来表征时间间隔为
的两个时间点处信号的相似性。
假设时间序列是周期性的,其周期
。当
或
的整数倍时,
;即使信号被噪声污染,
,但在一定的信噪比范围内,在
处,
仍然会取得最小值,从而也可识别信号的周期性并测量其周期。
4. 失真度测量原理
失真度定义为信号中全部谐波分量的能量与基波能量之比的平方根,即
式中
为基波的有效值,
为n次谐波的有效值。通过FFT已经可以得到各频率对应的幅度大小,只要将其带入上式便可得到待测信号的失真度。
三、主要功能电路的设计与实现
1.程控放大器的实现
结合第二部分的分析,程控放大器由两级实现:第一级分为三挡,由继电器实现挡间切换,其中一挡不做放大,另外两挡都由两级精密运放级联放大;第二级分八挡,由模拟开关AD7501实现挡间切换。考虑到模拟开关存在170Ω的导通电阻,使用电位器确定增益时要将这一电阻考虑在内。具体电路见附录一。
2.滤波器的设计与实现
本系统在采样之前要分别通过一级高通滤波和一级低通滤波。高通滤波器用于滤除信号中的直流成分,利用普通的RC有源滤波器便可实现,具体设计方法参考文献 [4]。反混叠低通滤波器采用8阶开关电容滤波器MAX297。其带内增益平坦,带外的衰减速度很快,通过改变1管脚输入的CLK信号的频率,可方便实现截止频率0.1~50KHz范围可调,其截止频率和CLK的比值1:50。具体电路见附录一。
3.总功率测量电路
总功率可由
计算得到,式中
为信号电压的有效值,这里使用真有效值/直流转换芯片AD637,检测电压有效值,其对交流有效值的测量基于如下公式:
其电路如图3-1所示。其前级要加入 图3-1 有效值测量电路
一级由运放组成的匹配网络,使有效值检测部分的输入电阻为50Ω。
4.FPGA部分
本系统FPGA部分的设计采用Altera公司Cyclone系列的FPGA和开发软件QUARTUS II,使用硬件描述语言Verilog HDL 编写程序代码。在本设计中主要用其逻辑单元多、存储容量大、时钟速率高的优势,实现512点的FFT算法,对时间采样序列进行频谱分析。键盘和LCD显示的控制也用FPGA的逻辑资源实现,缓解了单片机可用I/O资源短缺的状态。
四、系统软件设计
本系统的软件控制部分在Keil C51编译环境下,使用C语言实现。其主要完成的功能有控制MAX197的采样,对FFT结果进行处理、分析,判断信号的周期 图4-1 系统流程图
性并测量信号的失真度。总的软件流程图如图4-1所示。
系统通过按键事件进入不同的功能。数据存储将当前频率与相应的功率数据存放在外部数据RAM;数据回放调出RAM中的数据,并在点阵式液晶屏上显示;频率分辨力设定后,系统以该分辨力对应的频率采样、转换并实时显示分析结果;周期性的判断采用自相关法,如果信号具有周期性,可由频谱直接得到信号的频率;频谱显示将FFT分析结果作归一化处理后,以图形的方式在点阵式液晶屏上显示。
五、系统测试与分析
1.使用的仪器与型号
信号源:SP1461型数字合成高频信号发生器
Tektronix AFG310型函数发生器
示波器:60MHz(1Gs/s) Tektronix TDS1002型数字示波器
万用表:MASTECH MS8050型多用数字万用表
2.测试条件
时间:2007-9-6 温度:26℃
3.测试方法与数据
1)输入阻抗
在系统输入端以串联方式接入一个电位器,激励通过此电位器输入系统,调节电位器直到在系统输入端检测到正好减半的激励信号,此时电位器的阻值就是系统的输入阻抗。经测试系统的输入阻抗为50Ω。
2)输入信号动态范围与准确度测量
使用函数发生器产生频率在20Hz~10KHz与幅度(峰-峰值)在1mV~8V范围内可调的正弦信号,观察并
记录
混凝土 养护记录下载土方回填监理旁站记录免费下载集备记录下载集备记录下载集备记录下载
测量结果。测试结果见附录二。
使用函数发生器产生若干中心频率和调制频率可变的调幅波,观察并记录分析结果。(由于系统输入电压的动态范围较大,分析结果中的功率均使用dbm为单位,则其准确度可以dB表示。95%~-0.456dB,105%~0.424dB,90%~-0.915dB,110%~0.828dB)。测试结果见附录二。
3)分辨率测量
分辨力先后分别设在100Hz和20Hz,使用函数发生器产生若干中心频率和调制频率可变的调幅波,观察并记录分析结果。测试结果见附录二。
4)结果的显示、存储与调回
5)周期性判断与周期测量
使用函数发生器分别产生若干周期信号与噪声,观察并记录测量结果。测试结果见附录二。
6)失真度分析
使用函数发生器产生一音频正弦信号,观察并记录失真度分析结果。测试结果见附录二。
3.测量数据分析
通过测量数据可得到如下结论:
1.系统输入阻抗50Ω,输入电压动态范围10mV~8V;
2.数据显示正常,并可存储,回放;液晶刷新时间为5S;
3.分辨力100Hz、20Hz两挡可调,测量频率范围由分辨力的设定决定;可分析的频率上限为20KHz,频率下限为20Hz。
4.周期性判断与测频功能,失真度测量功能实现。
5.实现频谱在点阵式液晶屏的显示,电源自制。
系统误差分析:
1. 在满足采样定理条件下,当N为信号周期的整数倍时,可以得到单一谱线的频谱;而当N为信号周期的非整数倍时,就会产生频谱泄漏现象 。由于系统的频率分辨力是分挡设定的,且FFT分析的点数固定,故采样率也是分挡设定的,而待分析的信号所含的频率成分未知,所以频谱泄露与栅栏效应是无法避免的。要减小栅栏效应和频谱泄漏,可以减小采样频率,增加采样点数,使谱线变密,这样原来漏掉的某些频谱成分就可以检测出来,但注意采样频率必须满足采样定理的要求。
2.由于信号经过多级放大,尤其在信号的信噪比较小时,经过的级数将更多,尽管我们在器件选择时尽量选用精密、低噪的运放,但仍不可避免得受到外界环境或自身工作状态的影响,使增益产生一定的非线性。
3. FFT分析直接采用A/D的采样值,相当于给原始的时间序列加一矩形窗,为了减小波形的截短误差,即矩形窗函数引起的Sinc函数造成的频谱失真,可选用合适的窗函数如Hanning窗来加以改善;A/D量化时引起的有限字长效应也会对测量的精度产生一定的影响。
六、结论
系统较好的完成了题目基本部分及大部分发挥部分的要求,系统整体性能良好。另外,系统还可以图形方式显示信号的幅度谱。当然,系统还存在可以改进的地方,如:进一步扩展带宽,提高频率分辨力等。
【参考文献】
[1] 马忠梅.单片机的C语言应用程序设计.北京:北京航空航天大学出版社, 2005
[2] 李朝青. 单片机原理及接口技术.北京:北京航空航天大学出版社, 1999
[3] 夏宇闻.Verilog 数字系统设计教程.北京:北京航空航天大学出版社, 2003
[4] 谢自美.电子线路设计·实验·测试(第二版).武汉:华中科技大学出版社, 2000
[5] 刘文波、张弓.混沌信号中隐含周期信号的一种识别方法.雷达与对.2001年第1期,46~49
附录一:主体电路原理图
附录二:测试数据表
表5-1 动态范围测试数据表(分辨力=100HZ)
信号电压
1
信号频率(HZ)
功率和
检测总功率
实际功率
100
-56.43
-55.62
-56.02
-0.41
0.40
500
-56.41
-55.47
-56.02
-0.39
0.55
5000
-56.53
-55.40
-56.02
-0.51
0.62
10000
-56.57
-55.49
-56.02
-0.55
0.53
信号电压
100
信号频率(HZ)
功率和
检测总功率
实际功率
100
-15.87
-15.73
-16.02
-0.15
0.29
500
-15.86
-15.82
-16.02
-0.16
0.20
5000
-15.95
-15.84
-16.02
-0.07
0.18
10000
-15.94
-15.87
-16.02
-0.08
0.15
信号电压
1000
信号频率(HZ)
功率和
检测总功率
实际功率
100
3.80
3.83
3.98
-0.18
0.15
500
4.17
4.21
3.98
-0.04
0.23
5000
4.09
4.19
3.98
-0.10
0.21
10000
4.08
4.15
3.98
-0.07
0.17
信号电压
5000
信号频率(HZ)
功率和
检测总功率
实际功率
100
18.05
18.08
17.96
-0.09
0.12
500
18.06
18.09
17.97
-0.07
0.12
5000
18.00
18.10
17.88
-0.12
0.22
10000
18.03
18.11
17.88
-0.15
0.23
信号电压
8000
信号频率(HZ)
功率和
检测总功率
实际功率
100
22.15
22.19
22.04
-0.11
0.15
500
22.16
22.20
22.04
-0.12
0.16
5000
22.12
22.21
22.04
-0.08
0.17
10000
22.13
22.21
22.04
-0.09
0.17
表5-2 动态范围测试数据表(分辨力=20HZ)
信号电压
1
信号频率(HZ)
功率和
检测总功率
实际功率
20
-56.18
-55.79
-56.02
-0.16
0.23
100
-56.38
-56.40
-56.02
0.02
0.38
500
-56.44
-55.68
-56.02
-0.76
0.66
5000
-56.53
-56.64
-56.02
-0.11
0.52
信号电压
100
信号频率(HZ)
功率和
检测总功率
实际功率
20
-36.48
-36.25
-36.02
-0.46
0.23
100
-36.41
-36.38
-36.02
-0.39
0.36
500
-36.46
-36.43
-36.02
-0.44
0.41
5000
-36.44
-36.45
-36.02
-0.42
0.43
信号电压
1000
信号频率(HZ)
功率和
检测总功率
实际功率
20
-15.92
-16.10
-16.02
-0.08
0.08
100
-15.86
-15.83
-16.02
-0.16
0.19
500
-15.86
-15.83
-16.02
-0.16
0.19
5000
-15.93
-15.85
-16.02
-0.09
0.17
信号电压
5000
信号频率(HZ)
功率和
检测总功率
实际功率
20
18.00
17.91
17.88
-0.12
0.03
100
18.06
18.10
17.88
-0.18
0.22
500
18.08
17.91
17.88
-0.20
0.03
5000
18.00
18.09
17.88
-0.12
0.21
信号电压
8000
信号频率(HZ)
功率和
检测总功率
实际功率
20
22.14
21.95
22.04
-0.10
0.09
100
22.17
22.20
22.04
-0.13
0.16
500
22.18
22.21
22.04
-0.14
0.15
注:信号电压是峰-峰值,以毫伏为单位。功率都以dbm为单位。
表示检测出的各频率分量的功率之和与总功率值之比;
表示总功率测量的相对误差。两者均以dB为单位。
‘功率和’表示经数字转换分析得到的各频率分量的功率和。
‘检测总功率’表示采用有效值转换器件直接检测,根据有效值与功率之间的关系得到的功率值。
‘实际功率’表示信号源输出的功率值或通过在系统输入端检测电压,由电压、电阻、功率之间的关系所得的功率值。
表5-3准确度测量测量数据(含多个频)
分辨率设置(Hz)
输入频率1(Hz)
输入频率2(Hz)
是否可检出
100
5000
50
否
100
5000
100
是
20
1000
10
否
20
1000
20
是
表5-4分辨率测量数据
分辨率设置(Hz)
输入频率1(Hz)
输入频率2(Hz)
是否可检出
100
1000
500
是
100
1000
100
是
100
1000
50
否
20
1000
100
是
20
1000
20
是
20
1000
10
否
表5-5周期性判断与周期测量测量数据
信号类型
周期判断
频率(Hz)
正弦波
周期
1003
方波
周期
1003
三角波
周期
1003
锯齿波
周期
1006
噪声
非周期
表5-6 失真度测量数据
信号类型
正弦波
方波
三角波
失真度(%)
0.1
47.8
11.9
� EMBED Equation.DSMT4 ���
� EMBED Equation.DSMT4 ���
� EMBED Visio.Drawing.11 ���
PAGE
1
_1250573605.unknown
_1250574940.unknown
_1250578997.unknown
_1250582065.unknown
_1250594758.unknown
_1250609262.unknown
_1250609278.unknown
_1250609288.unknown
_1250609273.unknown
_1250604211.unknown
_1250603487.unknown
_1250603514.unknown
_1250600644.vsd
�
AT89S52
系统电源
LCD
(64x128 )�
键盘
(3x8)
FPGA
(Cyclone)�
显示接口
键盘接口�
FFT 核 �
反混叠滤波器(MAX297)�
程控放大器
A/D
(MAX197)�
阻抗匹配器
采样控制模块�
信号输入
RAM
(62256)�
_1250594575.unknown
_1250582016.unknown
_1250582027.unknown
_1250582007.unknown
_1250575275.unknown
_1250575509.unknown
_1250575559.unknown
_1250575569.unknown
_1250575493.unknown
_1250575103.unknown
_1250574294.unknown
_1250574411.unknown
_1250574513.unknown
_1250574859.unknown
_1250574340.unknown
_1250573757.unknown
_1250573801.unknown
_1250573677.unknown
_1250526032.unknown
_1250527059.unknown
_1250527115.unknown
_1250573526.unknown
_1250569978.vsd
�
�
�
�
中断与显示
初始化 �
显示第一界面�
有键按下?�
增益自动调整
N
键值判断
数据回放�
数据存储�
100Hz分辨力挡�
20Hz分辨力挡�
频率测量�
频谱显示
Y
周期?�
结果显示
Y�
N�
开始
_1250527114.unknown
_1250527092.unknown
_1250527042.unknown
_1250526124.unknown
_1250500140.unknown
_1250510275.unknown
_1250512472.unknown
_1250510346.unknown
_1250509807.unknown
_1250494338.unknown
_1250494379.unknown
_1250500132.unknown
_1250494434.unknown
_1250494366.unknown
_1250465965.unknown
_1250494309.unknown
_1250465992.unknown
_1209313120.unknown