版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C2000参赛工程报告〔命题组〕题目:基于TMS320F2812的复合频率信号频率计学校:合肥工业大学基于TMS320F2812的复合频率信号频率计刘翠熊文军郑文旭〔合肥工业大学电气与自动化工程学院230009〕摘要:本设计基于TMS320F2812DSP芯片,研制了复合频率信号频率计。利用外部信号源和设计的加法电路产生叠加信号。将周期图谱分析和频谱校正相结合,实现对主次信号频率、幅值宽范围、高精度的测量。采用先计算复数FFT再转化为实数FFT的算法,减少了数据存储空间,保证系统的实时性。提出二次采样和分段设置采样频率的方法,通过屡次测量取平均值的方法得到最终结果,提高了系统的测量精度。采用C2000PWM模块和开关电容滤波器,准确重建主次信号。系统测试结果说明本设计是可行的。关键词:复合频率计,复数FFT,频谱校正,DSPFrequencyCounterforComplexFrequencySignalbasedonTMS320F2812LiuCuiXiongWenjunZhengWenxu(SchoolofElectricalEngineeringandAutomation,HefeiUniversityofTechnology)Abstract:FrequencycounterforcomplexfrequencysignalisdevelopedwithTMS320-F2812DSPinourproject.Thecomplexsignalisproducedbytheexternalsignalgenerat-orandself-designedaddedcircuit.Combiningtheperiodogramspectralanalysiswiththespectralcorrection,thewiderangeandhigh-precisionmeasurementsoftheprimaryandsecondarysignalfrequencyandmagnitude.ThemethodthatcalculatingcomplexFFTfirstandthenconvertingtorealFFTisadoptedtosavethestorageandmeetthereal-timerequirementsofthesystem.Inordertoimprovethemeasurementprecision,ameasurem-entmethodisproposedusingthetwicesamplinganddifferentsamplefrequencyaccordi-ngtofrequencyrange,andthefinalresultsareobtainedbyaveragingmulti-timemeasur-ements.UsingthePWMoutputandswitchcapacitivefilter,bothprimaryandsecondarysignalarereconstructedaccurately.Thetestingresultsshowthatourdesignisfeasible.
Keywords:ComplexfrequencyCounter,ComplexFFT,SpectralCorrection,DSP目录TOC\o"1-2"\h\z\u\t"标题3,3"1引言32系统方案32.1总体介绍32.2信号频率及幅值测量原理32.3采样频率设置63系统硬件设计83.1信号产生与调理模块83.2DSP信号处理模块93.3通讯显示模块103.4电源管理模块113.5信号重建模块114系统软件设计144.1软件总体框图144.2主监控程序和中断144.3采样模块164.4频谱分析模块164.5串口通讯的软件设计174.6看门狗模块204.7PWM模块205系统关键设计与创新206评测与结论216.1测试方法与仪器216.2评测216.2结论247附录247.1系统实物照片及现场测试247.2通讯窗口258参考文献25引言在工业测量中,被测信号往往是含有多个频率参数的复合信号,并且在测定过程中,由于环境因素、仪器自身等影响,不可防止地含有噪声,因此,如何准确分辨出复合信号的不同频率成分,对工业测量具有重要的现实意义。对于单频率测量,主要采用的方法有:直接测频法,直接测周法,组合法,倍频法和高精度多周期测量法。而对于复合频率信号,以上方法均无法准确分辨出不同的频率成分。数字信号处理技术的开展为复合频率信号的测量提供了强有力的工具。经典的谱分析算法可以在频域对不同频率成分的信号进行分析;高速的数字信号处理器(DigitalSignalProcessor,简称DSP)具有高速处理和运算能力,为算法的实时实现提供了保证。本设计基于美国德州仪器(TI)公司TMS320F2812DSP,充分利用DSP片上丰富的外设资源并搭建外围输入输出电路,采用频谱分析算法实现对复合频率信号的频率和幅值的测量。系统方案本设计的主要任务是测量两个正弦信号的叠加信号,其中,x1是主信号,幅值为V(偏置为0V),频率为:20-20kHz;x2是次要信号,幅值为主信号的1/4-1/6,频率为:20-20kHz;为了完成以上任务,系统方案设计如下。2.1总体介绍利用外部信号源和自制的加法电路得到叠加的正弦信号。频率测量系统主要由信号调理电路、DSP模块、电源管理模块、通讯模块和信号重建电路组成,实现叠加的正弦信号不同频率成分幅值和频率的准确测量和重建。由信号发生器的两个通道分别产生满足幅值和频率要求的主信号和次信号,通过放大器跟随输出实现阻抗匹配及隔离作用,经由放大器OPA2134搭建加法电路叠加,产生频率范围为20~20KHz复合频率信号。利用DSP片内12位AD模块采集复合信号,为了保证AD采样精度,利用数字电位器AD5259实现输入信号幅值分段放大并且叠加1.5V直流偏置,使得输入信号尽可能接近ADC满量程。为了进一步提高AD采样的精度,使用外部基准源并且在软件局部采用过采样法;基于TMS320F2812高速运算的特点,利用频谱分析算法分辨主次信号,测量出信号的频率和幅值,同时采用频谱校正算法修正非整周期采样的误差,以提高频率和幅值测量精度;最后通过SCI串行通讯将测量结果送至上位机显示,显示刷新时间为1s。根据测量出的信号频率和幅值,利用TMS320F2812片内PWM模块和外部滤波电路重建主信号和次信号,为了提高信号重建的精度,利用开关电容滤波器TLC04实现程控滤波器。2.2信号频率及幅值测量原理叠加的主次信号经过采样后成为离散序列,用快速傅里叶变换〔FFT〕将信号由时域变换到频域中进行分析。由于叠加前的输入信号都为正弦信号,根据离散序列选频性可知,频域上幅值最大的点的幅值和频率对应主信号的幅值和频率,幅值大小次之的点对应次信号。因此可以求出主次信号频率和幅值。基于快速傅里叶变换〔FFT〕的频谱分析算法可以实现复合信号频率和幅值的测量,频率测量精度通常由频率分辨率决定,其中为采样频率,为采样点数。为了提高计算精度,在采样频率满足采样定理的条件下〔为信号最高频率〕,采用增加采样点数提高频率分辨率。采样点数增加增大了计算量和存储空间,本设计我们选用计算点数为2048点,目前仅采用F2812内部存储器,无法满足空间要求,实时性也受到一定影响,需做一定的改良。我们提出采用复数点FFT实现算法。2.1.1复数FFT根本原理假设要计算一个长度为2N的实序列的DFT:,n=0,1,…,2N-1。首先将其偶数项=作为复数序列中的实部,奇数项=为复数序列中的虚部,r=0,1,…,N-1,那么组成的N点复数序列为:=+〔1〕根据DFT的定义,得:==〔2〕=〔3〕〔4〕又根据定义,长度为2N的实序列,其DFT为,k=0,1,…,2N-1,令=,=,那么,k=0,1,…,2N-1〔5〕因此,计算2048点的实数FFT的过程为:(1)对2048点实数序列按式(1)组成一个1024点的复数序列;(2)计算该复数系列的FFT,其结果为式(2);(3)根据式(3)、(4)计算出和;(4)根据式(5)计算出,即为2048点实数序列的FFT。在计算完1024点的复数序列FFT后,再将计算结果转化为2048点的实数FFT。令:=,=,=,=.那么:=〔6〕=〔7〕其中,K分别取0,1,…,1023,当K0时,根据式(6)、(7)分别计算的实部和虚部;当K=0时,由于N-K=1024,已经超过了数组的范围,所以当K=0时区别于其他情况,要单独计算。计算时,其实部等于1024点FFT运算结果的与相加,而虚部等于0。经过比拟,这种方法不仅比直接实数FFT要节省4K字节的内存空间,而且能缩短计算时间,经过测试,计算2048点的实数FFT只需114ms。2.1.2频谱校正利用傅里叶变换(FFT)将动态信号从时域变换到频域,进行频域估计,这种基于FFT的频谱分析方法在科研、工程和生产中应用十分广泛。但是,这种方法也存在局限:〔1〕计算机只能对有限样本进行处理,FFT谱分析也只能在有限区间内进行。由于时域截断产生的能量泄漏,造成谱峰值变小,精度降低。〔2〕采样频率不可能是信号频率的整数倍,而FFT的频谱是离散的,假设信号频率在两条谱线之间,这时由峰值谱线反映的频率、幅值和相位就存在较大误差。例如,当加矩形窗且非整周期采样时,频谱分析的幅值误差最大达,频率误差最大为〔频率分辨率〕。因此,需要对信号频谱进行校正,来提高频率估计的精度。本设计我们采用重心校正法提高频率和幅值的测量精度。利用窗函数主瓣内的谱线求主瓣中心的坐标,得到准确频率、幅值和相位。根据主瓣函数的特点用重心法规求中心坐标。由于不同的窗函数有不同的主瓣形状,本设计选择矩形窗。矩形窗的频谱函数(8),当时,。可见,矩形窗主瓣宽度为。矩形谱的模函数为(9)当N》1时,1/N,,模函数为(10)由于谱线间隔为,那么主瓣内有两条谱线,分别为第条,第条,代表最高谱线和次高谱线的序号,代表幅值。利用公式(10)得:(11)公式(11)说明两条谱线的重心为主瓣中心,按重心法规求中心座标(12)令由频率的一般形式,得到修正公式(13)设主瓣峰值,那么(14)将,代入,得到幅值校正公式(15)2.3采样频率设置为提高测量精度,希望降低采样频率,增加采样点数。但是,采样频率的减小是有限度的,采样频率要满足采样定理,大于最高信号频率的两倍以上。点数增加那么增大计算量,增大对DSP数据存储量的要求。在采样频率和采样点数一定的情况下,信号频率越低,测量误差越大。假设在整个信号范围内用同一采样频率,计算精度由信号最低频率时的精度所决定。在采样频率不能减小的情况下,为满足计算精度只能增大采样点数。假设信号频率范围为40~600Hz,采样频率为1500Hz,要满足计算精度0.2%,那么采样点数最少为18750点。为了减少采样点数而同时满足计算精度,分段设置采样频率。如:将40~600HZ分成两段:40~100HZ,100~600HZ,对这两段设置不同的采样频率。那么,40~100HZ频率段的采样频率可降低到250HZ,为满足0.2%精度要求只需采样3125点,对于100~600HZ频率段,采用频率仍为1500HZ,由于最低频率为100HZ,那么采样点数可降低为7500点。进行频率分段,那么会产生采样频率切换。由于采样频率发生变化,应丢弃原来的采样数据,重新进行采样。实际运用中,为了防止频繁切换采样频率,频率段之间应有覆盖段。例如,将上述的分段分为40~100HZ,100~600HZ两段,那么信号频率在100HZ左右时,将频繁切换采样频率,假设分为40~120HZ,100~600HZ两段,那么这个问题就可以防止。因此,合理的分段设置采样频率,可以在满足精度要求的情况下降低采样点数。采样频率分段的原那么是:(1) 确定采样点数,(2) 采样频率要满足采样定理,(3) 满足精度要求,(4) 频率段之间有覆盖段。本设计信号的频率范围20~20KHz,分6段设置采样频率,如表2.1所示。表2.1分段设置采样频率分段序号频率范围〔Hz〕采样频率fs〔Hz〕1[20,120]3002[100,220]6003[200,520]12504[500,820]20005[800,3000]75006[3020,20k]60k说明:(1)采样点数N:考虑到F2812内部存储空间大小以及计算精度,选择N=2048〔2〕。(2)Fs选择依据:·采样定理指出:对带限信号,只要保证抽样频率fs大于或等于信号最高频率的两倍即可由抽样后的离散信号回复出原模拟信号。·考虑程序运行时间,fs不可太高。当主次信号频率越小越接近时,为保证一定的频谱分辨率即fs/N,就要求fs/N越小即N为定值时fs越小。·根据实时性要求,fs越小采样时间越长,实时性越差,因此fs不可太低。题目要求可分辨出的主信号与次信号频率差大于等于主信号的10%,那么高频信号越小时,主次信号频率差值越小,就要求fs/N足够小,才能区分出两信号。因此,将fs分为七段,低频段划分较细。每段中取fs=〔2~3〕*上限频率,并保证下限频率时主次信号区分误差精度为千分之一。具体实现,先以高频fs初次采样,根据计算得到的较大频率值选择fs。考虑到初计算时误差较大以致fs选择有偏差,所以频带划分时相邻频带要有交叉,即相邻频带的两个fs对端点值计算都适用。同时,频带交叉也防止了信号频率改变时fs的频繁切换。(3)分段依据:对单个信号而言,初次采样60k,可以精确计算出高频信号。但信号低频时,频谱分辨率fs/N=60k/2048=30过高,缺乏以保证低频计算精度。根据实际计算得出500Hz以下信号误差将逐渐大于千分之一数量级。因此500Hz以下信号选用fs=1250Hz。而对于两频率复合信号,频率接近时,为得到较高精度并满足“分辨出的主信号与次信号频率差大于等于主信号的10%〞的要求,结合香农采样定律及频谱分辨率,将20~20k频段分为如上所示1-6段;当主次信号频率一高一低,相差很远时,可选择两种采样频率分两次计算得出,考虑到60kHzfs采样低频信号的精度以及上述分段情况,当高频信号频率大于3000Hz且低频信号频率小于500Hz时,选择3000Hz以上信号60kHz采样,500Hz以下信号1250Hz采样。系统硬件设计系统主要是由加法电路与调理模块,DSP模块,电源管理模块,通讯显示模块,以及信号重建模块组成,系统硬件框图如图3.1所示。图3.1硬件系统框图3.1信号产生与调理模块(1〕本模块由跟随器、加法器、放大偏置、输出限幅四局部组成。在大赛推荐的几种运放中选择带宽较小的OPA2134。题目中主信号幅值范围为0.5V~1V,次信号幅值为主信号幅值的1/6~1/4,通过加法器所得复合信号幅值范围大约为0.4V~1.25V之间。复合信号是双极性的,而DSP2812内部ADC输入要求0-3V单极性的信号,由此采用1.5V直流偏置电源将输入电压抬升至要求的范围之内,并在信号输入端加上限幅电路加以保护。如图3.2所示。图3.2信号产生与调理电路〔2〕偏置电压的产生:偏置电压不能太大也不能太小,我们选择1.5V。采用芯片TL431,正常工作时,3引脚到2引脚有一个反向电流,并在第3引脚产生2.5V参考电压,通过调节可变电阻R0可得到1.5V,其后运放OPA2134跟随输出电压,同时提高了输入阻抗。电路图如图3.3所示。图3.31.5V偏置产生电路〔3〕放大电路:当输入信号幅值较小时,输入不能接近ADC输入的满量程,导致采样误差相比幅值较大时要大,这就需要在信号幅值较小时对信号适当放大。我们在主信号幅值小于等于0.55V时采取两倍放大,放大后再加上偏置电压1.5V,到达ADC输入通道的电压将不会超过3V,但会接近满量程;大于0.55V时不放大以免超出ADC的输入范围0-3V,直接对原信号采样。通过可调电位器AD5259可以很方便地在软件上对其进行控制,实现信号的程控放大。3.2DSP信号处理模块DSP信号处理模块以DSP芯片TMS320F2812为核心。F2812内部集成了丰富的片上外设如ADC、PIE、GPIO、EVA/B、FLASH、SPI、SCI、看门狗等。该系统使用了EVA/B、GPIO、PIE、SCI、ADC、看门狗等外设及片上存储器。系统时钟采用30MHZ有源晶振作为外部时钟输入,外部时钟进入DSP以后,经过PLL锁相环电路最高可得到150MHZ的时钟频率,那么单周期指令指令执行时间最快为6.67ns,保证了数据的高速采集与处理。时钟电路如图3.4所示。图3.4时钟电路JTAG口用来进行软件调试和程序的烧写,复位电路既可用于手动复位,也可用于电源较低时掉电保护。3.3通讯显示模块通讯模块选用F2812的EVB的SCI模块,并使用片上SCI引脚作为串行通讯口,通过9芯标准RS-232口与上位机进行串行通讯,选用MAX3221作为串口通讯信号电平转换模块的主要器件,其波特率最高可达250Kbit/s。上位机的串行通讯采用RS232协议。通过上位机显示主次信号的幅值与频率。串行通讯局部硬件连接图如图3.5所示。图3.5通讯局部硬件连接图3.4电源管理模块图3.6电源系统框图系统电路分为模拟电路和数字电路,为了减小数字局部对模拟局部的影响,系统中将数字电源与模拟电源、数字地与模拟地分开,分别为各自模块供电。数字电源主要为DSP内部供电,为3.3V和1.9V,3.3V主要提供I/O口电压以及Flash编程电压,而1.9V提供CPU内核电压。模拟电源主要为模拟器件供电,有3.3V和±5V。电源系统框图如图3.6所示。为提高ADC的精度,采用外接基准电路。如图3.7所示。图3.7ADC外接基准源电路3.5信号重建模块DSP2812输出PWM波为方波信号,为得到与输入一致的正弦信号,需要滤掉其中的高次谐波。而由于输入信号频率为20Hz-20KHz,就需要对相应频带的PWM波进行滤波,因为信号的频带很宽,为了提高信号重建的精度,必须进行分段滤波,这就要求滤波器的截止频率要可控。在进行信号重建电路设计时,我们比拟了两种方案。设计方案分析方案一:采用TI公司推出的开关电容滤波器TLC04作为外部滤波器,通过控制TLC04的输入时钟频率来改变开关电容大小,从而改变滤波器的截止频率。输入时钟我们用另外一路PWM输出来实现。这种方法完全由软件来控制滤波器截止频率,方法简单且易于实现。但须解决如下问题:首先,PWM输出高电平为3.3V,而TLC04电平输入为5V高电平,因此需要进行电平转换才能滤波;其次,TLC04输出为单极性的,而我们想要得到是与输入信号一致的双极性的正弦波,就要去掉直流分量;为得到幅值与输入信号一致的正弦波,还需利用AD5259构建可调增益的放大电路得到重建信号。电路如图3.8所示。方案二:采用放大器组建的有源滤波器作为外部滤波器,由于电容值一般已确定,我们只能用可调数字电位器来实现电阻可控,从而实现滤波器截止频率可控。为得到一定精度,我们把20Hz~20KHz信号频段按2倍一个频程分为十段。当输入信号位于十频段中一段时,滤波器就设定一个相应的截止频率并进行滤波。但这种方法存在如下问题:第一:由于可调电位器精度本身就不高,很难得到很高精度的截止频率。第二:假设用巴特沃斯二阶滤波器,我们就需要三片5259,硬件本钱很高并且软件控制较为麻烦。第三:与方案一一样,该方案也需要去直流和进行幅值调整。电路如图3.9所示。图3.8开关电容滤波器构建可控滤波图3.9数字电位器构建可控滤波器比拟上述两种方案,方案一结构简单,所用器件少,易于软件控制,本钱低,滤波效果相对较好。方案二中截止频率精度不高,同时用三片AD5259实现,结构复杂,软件控制难度高,且仿真后效果不佳,难以到达预计滤波效果。选用方案一实现主次信号的重建。3.5.2滤波器截止频率选择TLC04滤波器的截止频率是根据所要输出的重建信号的频率决定的,DSP输出PWM波高电平为3.3V,低电平为0V,现设其占空比为50%,输出频率为f,根据周期函数的傅里叶变换可得X(t)=1.65+2.1*Sin〔wt〕+1.05*Sin〔2wt〕+0.7*Sin〔3wt〕+……,其中w=2*pi*f。要求PWM波经滤波得到的信号只含基波和直流信号,而由变换可知二次谐波的幅值几乎是基波的一半,因此截止频率要选在基波和二次谐波之间,并靠近基波以最大程度滤除二次谐波而不影响基波。我们选择截止频率为基波频率的1.28倍,在实验中滤波效果较为理想。TLC04输入时钟与截止频率满足50:1的关系,所以TLC04时钟与信号频率之比为64:1,最后只要控制两路PWM输出的频率之比为64:1即可实现滤波。信号重建电路波形如图3.10所示:(a)DSP输出PWM波〔b〕TLC04输出波形(c)经隔直和幅值调整后的波形图3.10重建电路波形系统软件设计4.1软件总体框图系统软件设计采取模块化设计方案,将完成特定功能或者类似功能的子程序组合成功能模块,主要功能模块有:初始化模块、中断模块、频谱分析模块、PWM模块、SCI通信模块以及看门狗模块等,由主监控程序统一调用,协调各个局部正常有序工作。软件系统功能框图如图4.1所示。其中初始化模块包括GPIO、PIE、EV、SCI、AD采样、PWM和数字电位器〔用于信号调理电路控制放大增益〕初始化局部。图4.1软件总体框图4.2主监控程序和中断主监控程序是整个软件系统的总调度程序,它控制着程序的有序运行。系统在上电或复位后,主程序先调用各模块的初始化子程序;系统初始化完成之后,进入AD采样定时器定时及FFT频谱分析校正模块测量主次信号频率和幅值,测量完成后利用PWM模块根据所测数据重建输入信号,并通过SCI与上位机通信显示结果。ADC采样时,通过调节可调数字电位器AD5259选择幅值放大倍数,以提高采样精度。计算过程中采取fs分段算法,以保证精确的区分出主次信号。为减小测量过程中产生的随机误差,测量结果采用屡次测量取平均。本设计中设置测量4次取平均。采用边采样边计算的方法,定时计算FFT。程序流程如图4.2所示。主监控程序AD中断效劳程序图4.2程序流程图4.3采样模块利用TMS320F2812内置的ADC采集数据,并使用外部基准源以及放大小幅值信号来提高采样精度。ADC数据采集原理及方法原理如下:通过ADC外围调理电路将直流电位钳制在0V—3.0V。由于内部ADC的分辨率是12位的,所以,ADC的输入电压值(模拟量〕和转换后的量化值D〔数字量〕的关系为:。虽然理论上内置ADC转换器是十二位的,但实际能到达的采样位数缺乏十位。而采用过采样技术可以得到比原始AD转换器本身更高的采样精度,克服芯片位数缺乏带来的精度不够的问题,但是由于DSP内部存储空间有限,在没有外部扩展存储器的前提下那么难以实现。因此,我们使用外部基准源提高采样精度,并在调理电路中采用了数字式可调电位器AD5259,通过初次计算主信号幅值的结果,判断是否采取放大且重新采样。当幅值小于0.6V时通过改写AD5259相应存放器,令幅值放大两倍以靠近ADC输入满量程,并将最终计算值缩小相应倍数,得到实际结果,从而提高ADC采样精度。4.4频谱分析模块这局部是系统软件模块的核心,主要采用了基于FFT的频谱分析及重心法频谱校正算法。为了加快系统响应速度,我们还使用了通用定时器T2定时中断,进行复数FFT。由于输入信号频带比拟宽20~20KHz,因此我们采用了分段设置采样频率。测量模块软件流程如图4.3所示。软件实现时,首先以60kHz〔满足高频信号20KHz的三倍关系〕采样频率进行初步采样,然后对其进行复数快速离散傅里叶变换,并且进行频谱校正。根据运算的结果选择适宜的采样频率进行重新采样计算,从而提高采样分辨率,使频率靠的很近的主次信号都能够区分开来。当主次信号频率相差很远时,我们将其划分为单独的频段〔f1>3000Hz&&f2<500Hz〕,这种情形下,高频信号由60kHz采样计算获得,低频信号由1250kHz采样计算获得。程序循环过程中,为了保证精度和实时性要求,首先按采样更新点数等于2048时,进行频谱分析及频谱校正得第一遍结果,然后开启定时器2,定时进行复数FFT循环执行程序,最后将几组结果求平均值,以消除系统误差。图4.3频谱分析模块流程图4.5串口通讯的软件设计通讯局部的软件由上位机软件和下位机软件组成。1.上位机串口通信的上位机的软件设计PC和DSP间的通信可利用VC++6.0开发环境中MFCAppWizard中的MSComm或CSerialPort类来实现串行通信。两种方法相比,使用MSComm控件更为简单而且功能更完善〔特别是对有MODEM运用要求时〕,可以在只理解几个跟接收发送数据有关的函数即可实现数据显示的功能。缺点是在没有安装VC++6.0软件的计算机上必须要先手动进行注册后才可正常运行。而使用后种方法那么更加复杂,需要了解更多VC++类的知识。但是带来的好处是其产生的.exe程序能够在没有安装VC++6.0软件的计算机上运行,无需注册。考虑到后种方法运行环境要求限制少,并且实现大赛题目要求可以不采用MODEM,所以本设计选择用MFCAppWizard根据CSerialPort类编写上位机软件。其软件设计流程图如图4.4所示。图4.4上位机软件流程图程序说明:本程序采用十六进制格式和消息驱动方式实现主次信号幅值频率四个值的同步自动或手动刷新显示,并可以控制复现的主信号和次信号输出。〔1〕关于本通信的数据传输协议:采用十六进制数据格式传输。为了保证显示精度,发送的数据的长度至少应到达计算出来的浮点型数据小数点后四位。由于DSP每次只能发送8位数据,如果采用十六进制的方式,每个显示数据为32位,需分成四个字符接收。这点可以从下位机发送数据处理局部看出。总共需接收四个32位数据。由于不采用任何特殊字符来分隔这些而要显示的数据,因此必须统一每个要显示数据的接收格式。规定每32位才组成一个可显示数据。由实际测试结果显示,这种规定是可行的,即使在波特率出现误差的时候也没有显示过错误的数据。〔2〕十六进制数据接收处理:数据能够严格按照理想的顺序显示是依靠消息驱动的方法。上位机每隔同样的时间发送一次显示命令驱动下位机接收中断函数,用接收函数开启发送中断函数,发送一批数据,总共16个8位十六进制数,相当于16个字符。一旦发过一批数据后就去除发送中断,等待下一次接收到显示命令才启动发送。具体处理过程:上位机接收时由低位到高位接收,高位每接收1个8位数据左移8位。由于四个8位数据组成一个可以显示的数据,最高位左移24位。每四个8位数据左移后相加,利用VC++命令转成浮点型后除以10的四次方后显示。〔3〕关于软件功能:在数据处理时先将在程序对话框的界面上按下不同功能的控件通过MFC特有的消息驱动机制产生消息驱动执行相应的函数。从上位机可以控制手动或自动实时刷新显示、PWM复现主信号和PWM复现次信号。利用MFC根本的定时器消息处理函数WM_TIMER实现界面的自动数据实时刷新显示,刷新时间为1s。也可以采用手动刷新显示,只要单击“手动刷新显示〞按钮即可。假设想停止自动刷新且保存当前显示值那么只需不选中显示界面上的复选框“自动刷新显示〞即可。点击“关闭串口〞按钮可以对控件功能复位,“去除显示〞可以对所有显示框进行清空。为了保证程序正常运行,在发送的函数中都先检查是否开启串口,假设串口关闭那么发送按钮控件无效,并且利用消息框提示错误及改正方法。2.下位机下位机的程序流程图如图4.5所示。由上位机发送约定的字符到DSP,DSP接收到的字符如果是控制PWM的命令那么存储到PWM控制数组中。根据这个数组选择进入主信号还是次信号重建的指令分支中去,根据计算出的主次信号幅值和频率改变产生PWM波的存放器值和AD5259的值,产生复现波形。定义控制主信号复现命令为"“r*〞,控制次信号复现命令为“r%〞。〔1〕对于十六进制数据格式的发送处理:先将浮点数乘以10的五次方转换成为32位长整型数保存小数点后5位,对第五位进行四舍五入处理后除以10存入Uint16型的数组sdata里,准备进行发送。之所以采用32位长整型原因在于:所要发送的数据中理想最大值为20k,考虑到题目中10%的最大允许误差,定上限值为22k。乘以10^5转换为十六进制为:0x8321560,正好在32位长整型范围内。每个元素先发低八位后再右移八位再次发送,共两次发完一个数组元素,总共一批发送16次,四个32位长整型数。〔2〕采用FIFO:支持自动波特率检测,减小嵌入式控制器时钟变化对数据传输的影响。但是FIFO在较高波特率如大于100k以上时,可能会限制可靠的波特率检测。因此选择9600波特率,以便获得上位机和下位机SCI之间波特率锁定。图4.5下位机软件流程图4.6看门狗模块为防止程序跑飞,启用了F2812内部集成的看门狗模块。该模块由一个硬件计数器组成。当其8位的计数器到达最大值,该模块就会产生复位信号,使系统硬件复位并重新执行。在主程序中适时参加喂狗程序,在其计数器到达最大值之前清零计数器,进而保证程序的正常执行。4.7PWM模块为重建主信号和次信号,我们选用了C2000内置PWM发生器和外部滤波器TLC04组成外部信号重建模块。TMS320F2812DSP片内有两个事件管理器模块,每个事件管理器模块可同时产生多达8路的PWM波形输出。由3个带可编程死区控制的比拟单元产生独立的3对〔即6个输出〕,以及由通用定时器比拟产生的2个独立的PWM输出。对于比拟单元产生的PWM波形:通过设置和装载T1PR或T3PR存放器,即可规定PWM波形的周期;更新CMPRx存放器的值,使输出的PWM波形的占空比发生变化。而对于由通用定时器比拟产生的PWM波形:通过设置和装载TxPR存放器,即可规定PWM波形的周期;更新TxCMPR存放器的值,使输出的PWM波形的占空比发生变化。重建主信号和次信号时,PWM发生器根据被重建信号的频率输出两路PWM波形:T4PWM〔频率等于被重建信号,占空比百分之五十〕和PWM7〔作为TLC04的时钟信号,频率与重建信号成正比,占空比不作要求〕。T4PWM波为方波信号,为得到与输入一致的正弦信号,需要滤掉其中的高次谐波。通过控制TLC04的输入时钟即PWM7频率来改变开关电容大小,从而改变滤波器的截止频率。通过PWM发生器可以方便的重现主次信号,频率由PWM波确定,幅值由外局部压电路实现。实验程序流程图如图4.6所示。图4.6PWM流程图系统关键设计与创新本系统关键设计即采用频谱分析和频谱校正的数字信号处理方法,采用二次采样和分段设置采样频率提高系统的测量精度。为了节省内部空间以及提高系统实时性,FFT计算时采用了复数FFT。利用TMS320F2812内置PWM模块和开关电容滤波器组成信号重建电路,合理选择滤波器截止频率和设置数字电位器,保证信号频率和幅值的重建精度,实现主次信号的准确重建。系统设计特点如下:(1)系统设计充分利用DSP芯片丰富的片上资源,如片内12位AD,片内PWM模块。DSP的强大功能得到充分发挥。(2)考虑到F2812内部存储空间仅有16k,程序设计中采用了2N点化为N点计算的复数FFT算法,既节省了内存空间,又能缩短计算时间。(3)分段设采样频率和采用频谱校正的算法,提高了复合信号频率和幅值的测量精度。(4)边采样边计算的程序设计保证了系统的实时性。评测与结论6.1测试方法与仪器1.测试流程:由信号发生器的两个通道分别产生主信号和次信号,幅值与频率均根据大赛要求;通过自制加法电路输入调理电路,由DSP片内AD采样后进行分析测量;通过上位发出控制命令,由串口显示软件显示测量结果。同时利用PWM输出和滤波电路,重建信号,用示波器观察信号波形。2.测试仪器:信号发生器采用是Fluke双通道信号发生器,可对信号的幅值和频率精确调节;电源采用Agilent公司开关电源,它可提供±25V以内任何直流电源,本系统采用±12V电源供电;示波器使用的是Tektronix四通道示波器,能很好地显示输出波形,减小噪声干扰。6.2评测〔1〕将主信号固定在20KHz,将次信号从最小频率差的19920Hz减小到最大频率差的20Hz,记录三次测量结果取平均值,测量如表6.1所示,可分辨的相对于主信号的最小频率差为0.4%,最大频率差为19980Hz,并且主信号频率测量的误差都在1e-6级。〔2〕将主信号固定在20Hz,测量结果如表6.2所示。由表6.2可以看出,可分辨的最小频率差为0.5Hz,最大频率差为19980Hz,并且主次信号频率测量的误差都在0.3%以内。从幅值上看,当次信号与主信号频率相差越大时,所得到的次信号的幅值越准确。〔3〕在每个采样分段选取1~3点,观察每段所能分辨的最小分辨率,测量结果如表6.3所示。由表6.3可以看出,频率能分辨的最小频率差随着所在频段的频率变高而增加。在主次信号频率差接近分辨的最小频率差时,次信号的幅值误差较大,主次信号频率测量的误差满足发挥局部要求。表6.1主信号固定在20KHz频率幅值测量结果主信号幅值0.8v,次信号幅值0.2v标准信号〔频率〕测量结果测量误差主信号〔Hz〕次信号〔Hz〕频率〔Hz〕幅值〔V〕频率误差〔%〕幅值误差〔%〕主信号次信号主信号次信号主信号次信号主信号次信号20K19.92K20000.074119934.87950.79650.22623.7050e-40.074700.437513.1019.50K19999.954119500.26930.79730.20242.2950e-41.3810e-30.33751.20016K19999.970116000.03470.79430.20231.4950e-42.1688e-40.71250.400012K19999.974412000.01900.79960.20231.2800e-42.1688e-40.05000.7000800019999.97978000.02850.79960.20231.0150e-43.5625e-40.05000.7000300019999.96643000.04100.79820.2023-1.6800e-40.0014-0.22500.9000250019999.97072499.94300.79530.2023-1.4650e-4-0.0023-0.58751.0000150019999.97171500.04810.80360.2023-1.4150e-40.00280.45000.900080019999.9728799.99420.79760.2023-1.3600e-4-7.2500e-4-0.30001.000060019999.9669600.09510.79570.2023-1.6550e-40.0159-0.53750.950040019999.9739399.99930.79540.2023-1.3050e-4-1.7500e-4-0.57501.000020019999.9771199.99980.80020.2023-1.1450e-4-1.0000e-40.02500.950010019999.9707100.00090.80210.2022-1.4650e-49.0000e-40.26251.10005019999.966950.00040.80050.2023-1.6550e-48.0000e-40.06251966920.00010.79970.2023-1.6550e-45.0000e-4-0.03751.0000表6.2主信号固定在20Hz频率幅值测量结果主信号幅值0.8v,次信号幅值0.2v标准信号〔频率〕测量结果测量误差主信号〔Hz〕次信号〔Hz〕频率〔Hz〕幅值〔V〕频率误差〔%〕幅值误差〔%〕主信号次信号主信号次信号主信号次信号主信号次信号202020.519.999820.45390.80140.2394-0.0012-0.22490.175019.70002119.999521.00510.80100.2067-0.00230.02410.12083.35005019.999650.00330.80030.1951-0.00180.00670.0417-2.450010019.999799.99530.80100.1984-0.0017-0.00470.1208-0.783320019.9996199.99680.80100.2021-0.0020-0.00160.12501.066740019.9994399.99910.80060.2021-0.0032-2.1667e-40.07501.050060020.0013599.99950.80100.20210.0065-8.3333e-50.12081.066785020.0045849.98860.80150.20260.0227-0.00130.18331.2833120019.98541.2000e+30.80210.2023-0.0728-4.5833e-40.26251.0000250019.97382.5000e+30.80230.2021-0.13103.2000e-50.28751.0333400020.00023.9998e+30.80110.20231.0000e-3-0.00450.13750.8500900019.99909.0001e+30.80040.2023-0.00500.00120.05420.51671500020.00051.5000e+40.79910.20060.00253.8755e-4-0.10830.28331600019.99991.6000e+40.80080.2023-3.3333e-4-4.3333e-50.09580.55002000020.00122.000
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年民族音乐声乐技巧评估试题
- 环境监测与保护及考试及答案冲刺卷
- 2025年房地产估价师职业资格认证考试报名流程试题冲刺卷
- 2026年审计抽样方法培训试卷及答案
- 西安市航空六一八中学2026年高三下学期小二调考试物理试题含解析
- 江苏省联盟大联考2026届高三第5次月考数学试题含解析
- 高考舞蹈基本功展示评估试题及答案
- 2026年上海市师范大学第二附属中学高三下学期第三次综合练习(三模)语文试题含解析
- 2026校招:汇福粮油集团面试题及答案
- 2025-2030中国烘焙工坊市场经营管理风险与未来竞争优势分析研究报告
- 2026湖南衡阳日报社招聘事业单位人员16人备考题库参考答案详解
- GB 12801-2025生产过程安全基本要求
- 食堂管理内控制度
- 2026年江苏医药职业学院单招职业技能测试题库及答案详解一套
- 2025至2030中国数据分析超级计算机(DAS)行业项目调研及市场前景预测评估报告
- 口腔种植知识培训内容课件
- 仪表工业智能化规划方案
- 展会搭建方案(3篇)
- 危重患者护理记录书写
- 小学语文数字化教学论文
- 尼康-D300S-相机说明书
评论
0/150
提交评论