《中国地质大学(武汉)_复合频率测试仪_徐雪梅(23页).doc》由会员分享,可在线阅读,更多相关《中国地质大学(武汉)_复合频率测试仪_徐雪梅(23页).doc(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-C2000参赛项目报告(命题组)题 目: 复合频率测试仪 学 校: 中国地质大学(武汉) 指导教师: 叶敦范(教授) 参赛队成员名单(含个人教育简历):徐雪梅、研究生、中国地质大学(武汉)陈 珍、本科生、中国地质大学(武汉)袁铁柱、本科生、中国地质大学(武汉)复合频率测试仪徐雪梅 陈珍 袁铁柱(中国地质大学(武汉)机械与电子信息学院 邮编430074)摘要:本设计基于TMS320F2808芯片,结合国内外文献中复合频率信号的检测方法,提出了一种频谱Sa函数比例查表法,通过两次采样以及相应的采样频率再修改,结合IQmath技术进行高速的2048点的FFT运算,并实现了在频率谱中对于复合信号的主
2、次信号的频率、幅度信息的快速、高分辨率计算,同时使用DSP2808的HRPWM功能结合CD4053模拟开关和6阶有源滤波电路实现高精度的复合信号的再生。系统的测试结果证明我们的设计是可行的。关键词:复合频率信号、Sa函数比例查表法、DSP、FFT、HRPWMDigital frequency meter of composite frequency signalXu Xuemei, Chenzhen, Yuan Tiezhu(College of Mechanical and Electronic Information, China University of Geosciences(Wuh
3、an),430074)Abstract: According to composite frequency signal detection methods at home and abroad, the design of this paper, which is based on TMS320F2808 DSP chip, proposes a kind of Sa function proportion look-up table method of frequency spectrum. Through sampling twice and combing with IQmath te
4、chnology, as well as appropriate sampling frequency revising, the experiment executed a high-speed FFT operation based on 2048 point and realized fast, high-resolution calculation of the frequency and amplitude information of primary and secondary signals included in the mixed signal. At the same ti
5、me we realized high-precision regeneration of mixed-signal by using the HRPWM function of TMS320F2808 DSP chip, and analog switches of CD4053 chip as well as 6-band filter circuit. The system test results showed that our design was feasible. Key words: Composite frequency signal, Sa function proport
6、ion look-up table method, DSP, FFT, HRPWM1 引言复合信号的频率、幅度的分析一直是分析化学、应用物理领域中长期存在的难题。在实际环境中的很多信号,是由主要的2个及以上有限个的单频信号线性叠加形成的复合频率信号(例如在固定电话中,电话拨号使用的双音多频信号),同时各个分组之间的干扰是难免的。因此,在得到足够宽的频谱分辨范围的前提下,尽可能的提高对于复合频率信号的最小频率分辨度,在实际的应用中有着很强的实用价值。DSP(digital signal processor)是一种独特的处理器,是以数字信号来处理大量信息的器件。其工作原理是通过接收模拟信号,将其转
7、换为数字信号,再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其的实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,是数字化电子世界中日益重要的电脑芯片。它的强大数据处理能力和极高运行速度,是最值得称道的两大特色。美国TI公司在DSP领域处于全球的领先地位。在TI公司的C2000系列中,除了有以上两大特点外,强大的控制能力,使得DSP的应用领域有了进一步的扩展。因此,我们选择了采用TI公司的TMS320F2808芯片来完成复合频率测试仪这道题目,实现对于两个20Hz-20KHz的单频主、次信号的加法器复合合成,
8、通过TMS320F2808的ADC采样,对复合频率信号进行数字信号处理分析,将计算出的结果通过串口发给上位机,同时,通过使用TMS320F2808的HRPWM功能,配合有源滤波器实现主信号、次信号或者复合信号的再生。2 系统指标本系统完成了题目要求的所有的基本指标和发挥部分指标,并在此基础上进行了扩展,特别是在频率分辨率方面。系统的频率最大变换范围扩展到了10Hz-23Hz,次、主信号的最小幅度比为1 / 10,特别是在频率分辨率这一关键问题上。在保证足够低的频率、幅度测量误差的情况下,本设计的最小分辨率已经降到了0.20%,远低于发挥部分要求的小于10%的技术指标,是本设计的一大亮点。同时,
9、为了获得生成信号的高精度问题,我们采用了DSP HRPWM功能、基准源与CD4053模拟开关配合以及生成信号频率点补偿的办法,取得了较好的效果。其具体指标,见表1.1。表1.1 各项技术指标对照表功能项基本部分要求发挥部分要求本设计达到要求最大频率测量范围20Hz-20KHz20Hz-20KHz10Hz-23KHz次、主信号最小幅度比1 / 61 / 61 / 10主信号频率测量平均误差0.0067%主信号幅度测量平均误差0.336%次信号频率测量平均误差0.008%次信号幅度测量平均误差0.764%最小频率分辨率10%10%0.20%DSP PWM信号滤波生成信号平均频率误差0.226%DS
10、P PWM信号滤波生成信号平均幅度误差1.184%PC机显示刷新时间2s2s2s注:表示该题目中未提出明确要求。3 系统方案3.1总体介绍本设计以尽可能简单实用、充分运用TMS320F2808芯片功能的原则,完成了整个系统的设计,系统框图见图3.1。通过一个加法器完成了主、次信号的叠加,叠加后的信号,使用DSP的ADC功能实现信号的采集,通过基于IQmath原理的FFT运算、峰值判定、Sa函数比例查表法等方法完成主、次信号频率、幅度的计算,通过使用DSP2808的HRPWM,配合截止频率为30KHz六阶有源滤波电路实现了复合信号的生成,并利用DSP的SCI模块实现了与上位机的9600KHz的串
11、口通信。同时,该系统添加了LCD1602液晶显示模块,方便实验室等环境的硬件调试。 图3.1 复合频率信号频率计框图3.2 Sa函数比例查表法理论基础 首先,我们先假定输入的信号为单频的正选信号, (1)其中A为信号的幅度,为信号的频率,为信号的初相位。若以的采样频率对在的时间范围内,进行采样得到了离散序列,并将采样的结果进行离散傅里叶变换得到。鉴于实序列DFT的对称性,忽略频谱图的负频率分量,即只考虑离散频谱的前N/2点,有: (2)当K为范围内的整数值时,N又足够的大时,根据极小值定理 (3)因此,当K为范围内的整数值时,公式(2)可得: (4)公式(4)中,为一个函数,设为,其中。对公式
12、(4)取模,可得: (5)因此,当K为范围内的整数值时,为一个系数为的函数,这是频谱函数测量信号频率、幅度的理论基础。3.3 频率谱信号频率、幅度测量原理通过DSP芯片的ADC采样的数字信号,进行完FFT运算后,就实部和虚部取模得到输入复合信号的频谱。但是在实际应用中,频率采样值间隔为: (5)其中,是系统进行AD采样的频率,N是采样的点数,是频谱分辨率。首先我们假设输入的是频率为的单频正弦信号。这时会出现两种情况,其一,采样信号的频率恰好是的正整数倍时,这时再除主峰外其他各采样点为0,得到的频率和幅度的信息都是正确的;其二,采样信号的频率不是的正整数倍时,这时就会在出现实际频率和FFT频谱的
13、测量的峰值频率不同,如图3.2。图3.2 单频正弦信号采样DFT计算后的频谱图根据公式(5),在单频信号采样的频谱中,实际信号频率所处的频谱主瓣是一个系数为的函数。采样信号的频率恰好是的正整数倍时,系统可以直接得到采样信号的频率和幅度A。这里重点讨论的是当频率不是的正整数倍,这时得到的峰值频率如果默认输入信号的频率、幅度的话,频率将会有的误差,幅度将会有(即55.1%)的相对百分比误差,这是该系统无法接受的。但是,由于函数的极值点是实际频率点,并且在主瓣内两侧是单调函数,假设频谱图中极值点为,这时左右两点分别为,其峰值分别为 (6)同时,因为函数的定义为 (7)带入公式(6),可能极值点的左右
14、两侧的峰值为 (8)由公式(8)可得,在假设被采样信号不是的正整数倍时,在主瓣中有且只有2个离散频谱频率点并且两点的m的差值正好为,同时次频率点的值一定是大于极值点另一侧的频率上的幅值的。因此,若得到了主极值点,比较主极值点两侧的频率点的值的大小,得到相对大的一个,设为,这样就可以确定,实际频率点就在这两个点之间。综上所述,通过计算的比值,通过查找函数主瓣两侧相距为的各点的比值表格,就可快速、高精度的确定实际信号的频率和幅度信息。3.4 主、次复合信号分辨原理 以上分析,是假定输入信号为单频正弦信号的前提下的,现在本文将从输入为单信号的假设变为输入为主、次复合信号的分辨。根据公式(5)和DFT
15、叠加原理可得,在主、次复合信号的频谱图中,将会出现两个类函数峰值的频谱图,为了方便分析,这里本文只考虑主瓣,如图3.3,通过极值处理的办法,可以很好找到各个峰值点。图3.3(a)表示,当两个峰完全分离的情况,这时我们可以直接对各自的峰进行分析处理;图3.3(b)表示,当两个峰有峰肩重合时,这时如果直接进行Sa函数比例查表法,将会出现严重的误差,特别是在幅度值上,干扰严重;图3.3(c)表示两个峰的重叠信号,这时如果再使用Sa函数比例查表法,就不可能得到正确的主、次信号的信息,即无法进行复合信号的分辨,得到结果。图3.3 频谱主、次复合信号频谱图目前,本设计采用的是极值点比较的方法,进行的复合信
16、号分析。因此,本设计只能对于图3.3(a)、(b)的条件下,进行主、次复合信号进行极值分辨,还不能处理图3.3(c)的情况,但是在这种情况下,我们通过一些辅助、校正的方法进行可以进一步频率分辨,最终可以在保证信号数据精度的情况下,理论上达到0.19%的频率分辨率,具体的处理方法见3.6算法及数据处理。3.4 HRPWM合成高精度复合信号的原理当PWM信号的占空比随时间变化,那么通过相应截止频率的低通滤波之后的输出信号将是幅度变化的模拟信号。因此通过控制PWM信号的占空比,进而相应的滤波电路后,就可以产生不同的模拟信号。基于HRPWM配合低通滤波的 DAC的分辨率等于产生模拟信号的PWM信号的分
17、辨率。PWM信号的分辨率决定于计数器的长度和PWM计数器能够实现的最小占空比。用数学表达式如下: (9)其中Rcounts是以计数值为单位的分辨率,C是最小占空比。比特分辨率用下式计算: (10)PWM 信号需要的输出频率等于DAC的更新频率,因为PWM信号占空比的每一次变化等效于一次DAC变换。PWM 定时器所需的频率取决于PWM信号频率和所需的分辨率。如下所示: (11)在这儿,是所需的PWM定时器频率,是PWM信号的频率,也就是DAC的更新频率,n 是所需的比特分辨率。更具目前的设计要求,计划采用不小于12-bit PWM DAC来产生极限频率为20KHz的正弦波。由抽样定理可得,最低的
18、抽样频率应该为40KHz。但是通常情况下,PWM信号的频率要远高于Nyquist抽样速率。这是因为PWM信号的频率越高,对滤波器的阶数就要求越低,合适的滤波器越容易实现。通常抽样速率取Nyquist速率的8或者16倍乃至更高。虽然TMS320F2808主频设定为100MHz,但是基于HRPWM原理,可以将PWM波的最小步径降低到180ps,这样不小于10-bit分辨率才能够实现。最后根据实际情况的需要,PWM波的频率定为312.5KHz,这时分辨率为: (12)因为对于不同频率点,外部滤波器会有不同的衰减系数,本设计通过对电路的衰减系数进行精确的测量,进行相应的补偿,可以得到非常准确的再生复合
19、信号,尽可能的降低似真度。3.5 Sa函数比例查表法与传统的Rife频谱估计法的比较 所谓Rife频谱估计法,主要是通过求得的绝对值进行比较,在求得相应的极大值之后,通过比较和的大小,如果时,取,否则,则频率估计值为 (13) 进而通过相应的计算得到该频率点上的幅度值。这种方法与本文提出的Sa函数比例查表法相比,精度明显差于Sa函数比例查表法,同时计算量也略大于Sa函数比例查表法。但是两种方法都有一个明显的缺点,那就是抗噪声的能力不强,需要在SNR大于10dB时使用才能得到很好的精度。3.6 算法及数据处理3.6.1 算法分析综合以上关于复合信号分析和合成的原理,通过对输入的复合信号进行204
20、8点的采样ADC采样,进行基于IQmath技术的FFT计算。由于IQmath技术是专门根据DSP2800系统设计的,使得定点型的DSP在FFT运算的性能不低于浮点型的DSP芯片。在实际环境下,测试,2048点的FFT运算可以在主频工作在100MHz的情况下,可以在40ms以内高速完成。结合峰值比较分辨复合信号、Sa函数比例查表法的主、次信号的频率、幅度计算,实现了题目的要求。但是在一些极限的情况下,需要一些专门的处理技巧在可以达到,更加优异的性能。(1) 最大、最小频率点处理 假定系统的采样频率为50KHz,2048点的最小频率分辨为24.4Hz。因此当对20KHz和20Hz复合产生的信号进行
21、处理时,20Hz的精度将会收到直流量等很多因数的影响,实际误差可能会达到30%,甚至更高。但是高频信号的信息,计算的非常的准确,特别是频率的信息。这时,本系统使用二次采样的方法来处理这种情况。系统认为当高频率信号的频率值为低频率信号100倍以上时,会根据第一次采样中计算出来的高频信号的频率点,计算第二次采样的采样点,采用对高频率信号欠采样来降低信号的采样率的方法,把高频率信号的频率显示控制在数字高频左右10个点处,而对于低频信号就可以获得足够高的最小频率分辨,进而实现对最小频率点的精确采样。当然这时高频信号的频率信息会被忽略。(2) 最小频率分辨率实现当主、次信号的频率点很近的时候,这时假定系
22、统的采样频率为50KHz,2048点的最小频率分辨为24.4Hz。这样的分辨率,对于20KHz左右的信号进行采样还是勉强可以接收的,但是对于低频段的信号如20Hz左右的信号是无法接收。因此,在第一次50KHz的采样以后,系统将会得到目前信号的频段的位置。这时,根据目前信号的位置,合理的降低系统的采样率,一般定为最大频率点的2.6倍(但是对于甚低的信号,如20Hz左右,为了保证系统2秒的最低反应速度,系统存在着一个最小的采样频率为1200Hz),同时50KHz的采样的频谱图中,如果只有一个极值点时,那么系统认为次极值点就在该极值点附近。由于在一般情况下,系统在第一次采样中可以精确的计算出主信号目
23、前的频率值,通过将调整二次采样频率的办法,使得主信号频率为的整数倍,因而在频谱中对次信号就不会产生影响(如图3.2a),因此可以获得很高的系统分辨率和计算信息的准确度。(3) 二倍频信号处理 在系统设计的加法器合成电路中,存在者非常明显的二倍频信号,如果不对这些信号进行处理,在次信号幅度远低于主信号幅度的时候,这时有可能会导致次信号的判定出错,默认成了主信号的二倍频信号,同时当次信号频率就是主信号的频率的两倍的时候,这时从信号幅度的失真验证,为10%左右。为了解决这个问题,算法上加入了去二倍频信息的函数,根据实际的检测主信号的二倍频信号的幅值大约为主信号的4%左右,因此,在主信号的二倍频的频谱
24、点上进行了二倍频数据处理,性能效果改善明显。(4) 主、次信号幅频数据校正在主、次信号完成第一次50KHz采样以后,若两个信号相距较大(根据以上的理论,分析大于5个最小分辨频率以后两者的干扰就可以忽略不记)系统可以得到很好的计算结果,但是若两者相距较近时,系统计算的结果误差较大,特别的幅度信息。这时,系统二次采样点的设定,成为了系统校正的关键。因此,主信号的频率点可以得到较为准确的结果,根据公式(5)、(6)可得若将系统采样主信号的频率为最小分辨频率的整数倍,则其他各个频率点上的值理论上为0。因此次信号的频率、幅度信息可以得到很高的精度。同时根据测试数据的结果分析,在低于1000Hz的低频信号
25、中,因为收到去除直流分量的影响,大概有1Hz左右的系统误差,在大于3000KHz以后,大约有f/1000-1的误差,因此系统在算法的处理上进行了必要的纠正。3.6.2 理论误差分析依据算法的设计,因为采用峰值检测法无法处理图3.3(c)中极值点混叠的问题,因此在主、次信号的频谱中至少要相距两个最小频率分辨率的距离,但是为了系统的精度,系统认为最好要有大于、等于1.5个系统最小频率分辨率。因此系统的最小频率分辨率大约为, (14)但是在实际情况中最小频率分辨率大约为0.2%。FFT频率测试中,因为本系统的Sa表的大小为50,然后根据系统误差进位补偿,由此可得,系统频率测试理论误差为,(15)在实
26、际情况下测试的频率平均误差大约为0.0067%左右,这主要是由于主、次信号频谱干扰以及硬件电路的背景噪声导致的。理论上将,幅度的分辨率小于0.03%,但是实际情况下也远低于其,大约主信号平均误差为0.336%,次信号平均误差为0.764%。4 系统硬件设计本系统硬件部分主要由以下几个部分组成:加法器电路,DSP最小系统,PWM波重建信号模块,串行通讯模块,1602液晶显示和电源管理模块,下面分别进行介绍。4.1 加法器电路:题目要求用自制的加法器电路产生复合信号,由于信号幅度较小,为了准确地次信号源获取原始信号,我们没有将信号直接相加,而是通过跟随器进入加法器。由于DSP中的ADC只能转换正信
27、号,因此还要加上一定的直流量。我们从推荐的运放当中选择了OPA134,OPA134在音频范围内有很好的线性度,并且具有低失调、低噪声的特性,非常适合做前置放大。为了节省空间,我们选择了包含四片OPA134的OPA4134。加法电路原理图如图4-1所示: 图4-1由于信号直接进入AD进行转换时,DSP内的数字信号会对待转换信号产生干扰,甚至使信号严重失真,故在进入AD之前加上一级跟随电路进行隔离,我们选用了宽带、高速运放OPA820,有效地解决了模拟、数字信号的干扰问题。叠加的直流量,用3V的基准源LM4040A30I进过电阻分压产生,精度较高,引入的噪声很小。使用四运放时很容易产生自激,因此我
28、们在正负电源处加上去耦电容。在调试时,我们发现,当输入信号幅度的幅度变化时,合成信号的直流分量也会变化,即使输入信号不变时,合成信号中直流分量也会上下移动。经过查资料,我们发现,同向放大时输入阻抗极大,输入信号没有放电回路,造成输出不稳定。于是,我们在两交流信号输入端加上一个大的放电电阻,图3-1中R13、R19,这个问题终于解决。4.2 DSP最小系统从大赛推荐的DSP处理器型号中,我们选择了TMS320F2808,其资料较多,且系统构成较TMS320F28234简单,开发方便。TMS320F2808片上外设丰富,片内含有ADC,32位的CPU定时器,硬件PWM生成,输入捕捉,串行通讯SPI
29、、SCI等,其中增强型PWM模块以及增强型模数转换模块,使得其很适合本系统。再加上高达100MHz的CPU时钟,为高速采集和处理信号提供了保证。我们使用20MHz的外部晶振,用PLL倍频获得100MHz的时钟。在系统中,F2808协调着整个系统各个模块的有序工作以及承担信号实时处理的任务。4.3 PWM波重建信号模块题目中明确要求使用外部滤波器时必须采用放大器组建的有源滤波器,通过查阅提供的运放资料,我们最终选择了OPA2228,它是一款高精度、低噪声的运放,且具有很高的开环增益和共模抑制比,33MHz的带宽很适合做有源滤波器。由于重建信号最高频率为20KHz,为了有效地滤除高于20KHz的频
30、率成分,同时又能保证20KHz以内的有效成分不被衰减,我们选择了截止频率为30KHz的低通滤波器。要使重建的信号能够最接近原始信号,必须保证其在通带内得到相同的增益,即要求此低通滤波器在通带内响应平坦,我们选用了四阶有源巴特沃斯低通滤波器和两阶无源滤波器,使通带外频率成分得到足够衰减。我们使用TI的滤波器快速设计工具TI FilterPro,很快地就设计出了此低通滤波器,如图4-3(a)所示: 图4-3(a)对于电路中的元件参数,我们根据制作的实际电路板的测试结果进行了多次修改,结合Tina TI软件仿真功能,得到其幅频响应曲线,截止频率大约为30KHz基本符合我们的设计要求。其幅频响应曲线如
31、图4-3(b)所示图4-3(b)为了得到精度更高的PWM波,我们刚开始将DSP输出的PWM波经过高速场效应管和4.096V的基准电压源,然后输出至有源滤波器,如图4-3(c)所示。 图4-3(c)在实际测试中发现,输出的信号严重失真。经过查看LM4040A41I的数据手册,我们发现该基准源的频率特性达不到设计要求,电压稳定建立时间太长。因此,我们最后采用模拟开关CD4053来实现精确PWM波输出功能,用PWM波作为模拟开关的门控信号,输入4.096V的精确电压,经实际测试证明,该方案能输出精确的PWM波。该模块最终电路有如图4-3(d)所示。 图4-3(d)4.4 串行通讯模块为了将测到的信息
32、送到上位机显示,还必须用到DSP中的通信模块。我们选用F2808片内的SCIA作为串行通讯口,选用MAX3232作为串行通讯模块的电平转换芯片,通过9芯标准RS-232口与上位机进行通讯,其波特率最高可达250Kbit/s。串行通讯部分硬件电路如图4-4所示。图4-4 Max3232串口通信电路4.5 液晶显示模块 为了软件调试的方便,我们在系统中加入了显示部分,使用LCD1602显示分析结果。LCD1602是字符型液晶显示屏,一次可以显示两行,每行显示16个ASCII字符,完全可以满足此系统的显示要求。 由于1602接受的是TTL电平,而F2808的IO口是CMOS电平,因此需要进行电平转换
33、。我们使用74LVC4245将5V的高电平转换为3.3V,方便1602与DSP接口。另外,为了节省功耗,我们还加入了背光控制,需要时才打开背光。该部分电路如图4-5所示: 图4-5 液晶显示电路4.6 电源管理模块该模块的主要功能是将输入的+5V直流电源转化为系统需要的各种电源。系统中多个运算放大器需要使用双电源供电,因此我们外接了两个+5V电源。由于F2808的供电要求I/O使用3.3V,内核使用1.8V电压,并且没有严格的上电次序要求,因此,我们使用了三端低压差集成稳压芯片ASM1117,为系统提供3.3V和1.8V电压。同时,为了减小数字部分对模拟部分的影响,分别将数字电源和地、模拟电源
34、和地分开,模拟地和数字地之间加电感隔离。电源供电部分电路如图4-6所示: 图4-6 电源供电电路5 系统软件设计5.1软件总体设计本系统软件设计,充分使用C2000系列的IQmath技术,使得系统的代码的运算速度有了很大的提高。本系统主要分为初始化模块、ADC模块、复合信号处理模块,HRPWM,串口通信模块这五大模块组成,当然还有如定时器、LCD1602液晶显示等小的模块,因为篇幅的限制,在本文中不再讨论。5.2初始化模块 该模块主要完成的是系统初始化的配置,主要包括数据Buffer的初始化、系统时钟设置、PIE设置、GPIO设置、SCI设置、ePWM以及Flash的初始化等功能的设置。为整个
35、系统进行最初的系统架构。其中要特别说明的是Flash的初始化,因为TMS320F2808系统最初对Flash有15个系统时钟的延时,如果不对Flash进行初始化的话,DSP工作的效率将会大大的降低。Flash的初始化必须在RAM中完成,在保证Flash必要延时的前提下,通过流水线结构的设计,大大提高了DSP的性能。5.3 ADC模块ADC模块是DSP连接外部模拟信号的桥梁,应该指出的是TMS320F2808的ADC的工作时钟(非ADC计数中断时钟)最好在12.5MHz一下,否则ADC数据转换的结果就会不稳定。在高频率采样时间可以高精度设置的前提下,本设计因为可能需要较低频率的频率,所以我们在发
36、生ADC中断后,将会对该中断数据是否进行保存进行处理,进而获得足够低的采样频率。5.4 复合信号处理模块 当ADC完成了2048点的采样后,将会置相应的标志位,复合信号处理模块进行相应,其流程图,见图5.1。该模块是整个软件系统的核心,其的设计原理和思路已经在上文中有了明确的阐述,这里不再讨论。但是需要强调的是,本系统采用的是两次采样的设计思路,第一次采样的采样频率统一设置成50KHz,然后该模块根据第一次采样的数据情况,进行合理的分析处理后,再次设定第二次采样频率,进行第二次采样处理。同时,在完成系统的频率、幅度信息计算之后,系统将会根据系统自身的误差对数据进行必要的校正,这将很好的提高系统
37、的指标系能。图5.1复合信号处理模块软件流程图5.5 HRPWM模块 HRPWM是TMS320F2808芯片的一大特色,通过使用边缘定为技术扩展ePWM的分辨率功能,即使达到2MHz频率,也可以获得超过11位的分辨率。在该软件设计中,ePWM的周期相应频率设为312.5KHz,系统获得了高达14.12位的分辨率,再通过模拟开关的高效整形电路、6阶滤波器电路,确保系统的生成信号的高精度性能。 因为系统的中断频率为312.5KHz(即每个中断的包涵320的系统时钟),在中断中需要高精度的计算复合信号每个点的在空比的数值,计算量还是比较大的。Sin函数的表格,本系统使用的DSP中BOOT ROM中的
38、512点的_iq30正选表。因为本系统的GLOBAL_Q为_iq15,因此系统中还需要进行_IQ30toIQ的格式转换。通过不断的优化程序,每次中断的运算量控制在了100个系统时钟以内,并且系统稳定。这一切,都源于_IQmath技术使得C2000定点性DSP完成了和浮点型DSP芯片同样的优异的性能,详细软件流程,见图5.2。 图5.2 HRPWM模块软件流程图5.6串口通讯的软件设计5.6.1 串口通信的上位机的软件设计实现微机和DSP之间的数据交换,可以利用功能强大的Microsoft Visual Studio 2005开发环境及Active X控件来实现串行通信。应用vc+开发串行通信目
39、前通常有如下四种方法:一是利用vc的标准通信函数直接对串口进行操作;二是利用Windows API通信函数;三是利用VC+提供的串行通信控件(MSComm);四是利用第三方编写的通信类。以上几种方法中第一种需要了解硬件电路结构原理;第二种使用面比较广,但由于比较复杂,专业程度比较高,使用较困难;第三种方法比较简单,只需要对串口进行简单配置;第四种方法是利用一种用于串行通信的CSerial类(这种类是由第三方编写的),只要理解这种类的几个成员函数,就能方便的使用,只是这种类比较难以获得。本设计采用了第三种方法,在Microsoft Visual Studio 2005下使用MSComm控件实现串
40、口通信的。其软件设计流程图如图5.3所示: 图5.3 上位机流程图程序说明:关于本通信的数据传输协议,采用16进制码的方式,数据包的包头包尾为特定的字符,利用控件采用事件驱动的方法,当上位机选定串口并打开串口时,上位机开始接收下位机发送来的数据,并对其进行判断,如果其满足通信协议,则对所接收的数据包进行分析处理并将结果显示在显示界面上。本界面的数据采用实时显示的方式,以表格的方式显示从接收起每秒接收的数据及接收到该数据的当前时间,刷新时间为一秒,而且根据用户需要可以把接收到的数据保存为txt文档。另外,界面上设置了“信号重建控制”的下拉列表选择,用户可根据需要选择是否需要下位机重建信号及重建主
41、信号还是次信号,当用户在下拉列表中选定所需重建的信号时,上位机通过串口向下位机发送相应的指令,从而控制下位机的运作。5.6.2 串口通信的上位机的软件设计串口通信的下位机采用c语言编程,该部分程序流程图如图所示:图5.4 下位机流程图本系统串口通信,波特率定为9600,数字位8位,停止位1位,无校验位。程序说明: DSP接到上位机发的信息时对信息进行比较判断并作出相应的反应:重建主、次信号或者使能发送中断,并按照通信协议发送数据到上位机。所收到的信息的格式为0x24 0x24 0xXX 0x00 0x0d 0x0a时,判断包头0x24 0x24、包尾0x0d 0x0a,第三个字节为控制信息。其
42、中该位为0x00时为下位机下达“不重建信号”的命令,该位为0x01时为下位机进行“重建主信号”的命令,该位为0x02时为下位机进行“重建次信号”的命令,该位为0x03时为下位机进行“重建复合信号”的命令。6 系统关键设计、创新与不足本系统本着“尽可能发挥TMS320F2808在数据处理、系统控制中的长处,实现单芯片、低成本解决方案”的设计理念,非常出色的完成了系统的各个指标的设计要求,使得在保证足够高精度的前提下,实现系统的分辨率降到了0.2%,同时通过DSP芯片中的HRPWM模块与PWM整形电路滤波电路相结合,使得系统的复合信号合成的信号的频率平均误差小于0.226%,幅度平均误差小于1.1
43、84%。创新点如下:1) 根据充分的理论推到,提出了一套频率谱Sa函数比例查表法,该方法是系统的进行高精度复合信号幅度、频率的理论基础;2) HRPWM模块与PWM模拟开关整形电路滤波电路相配合(特别是PWM波整形电路的设计),实现了足够高频率、幅度精度的复合信号输出;3) 基于IQmath的复合频率测试算法,实现了系统高效率的完成数字信号处理的工作,即使在HRPWM模块每秒钟高达312.5K次的中断的情况下,仍然可以在40ms以内的时间内完成2048点的FFT运算。4) 上位机可以保存系统的实时测试数据,这非常有利用用户今后的数据分析。但是,我们必须要指出本系统在处理两个峰值重叠(如图3.3
44、c)的算法还是有待改善,如果想要获得小于0.1%的高精度的频率分辨率的话,这个问题的解决是极为迫切的。我们将会在比赛完以后,继续对这个问题解决进行进一步的探讨。7 评测与结论7.1评测在系统评测中,本设计选用EE1411型合成函数信号发生器产生的信号作为被测信号。在环境温度为0-50时,其精度为1ppm。生成信号由TDS1002 数字存储示波器测试的。假设信号发生器输出信号的值为Y0,实际测得的值为Y1,则测量相对误差由下式得出: =| Y1- Y0| / Y0 * 100%数据测试中,首先固定主信号的频率、幅度以及次信号的幅度,通过调节次信号的频率测量数据结果,如表7.1;其次固定从信号的频
45、率、幅度以及主信号的幅度,通过调节主信号的频率测量数据结果,如表7.2;然后固定从信号的频率、幅度,调节主信号的频率、幅度,测试生成主信号的误差,如表7.3;最后测试了系统的极限状态,包括最大最小频率、最小幅度、最小频率分辨率等,如表7.4。表7.1 调整次信号频率的部分测量数据As=143mv AM=820mv FM=1KHz实际值测量结果相对误差 Fs实(Hz)AM测(mv)FM测(Hz)As测(mv)Fs测(Hz)AM(%)FM(%)As(%)Fs(%)208171K140200.3602.0901008191K1421000.1201.3905008201K142500001.390 2K8201K1421999001.390.0510K8241K14399970.48000.0320K8231K14320K0.36000表7.2 调整主信号频率的部分测量数据As=143mv AM=820mv Fs=1KHz实际值测量结果相对误差 FM实(Hz)AM测(mv)FM测(Hz)As测(mv)Fs测(Hz)AM(%)FM(%)As(%)Fs(%)20823201431K0.36000100823100