《超声波流量计--毕业名师(完整版)资料.doc》由会员分享,可在线阅读,更多相关《超声波流量计--毕业名师(完整版)资料.doc(154页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、超声波流量计 毕业名师(完整版)资料(可以直接使用,可编辑 优秀版资料,欢迎下载)1.引言研究利用超声波测量流体流量已经有数十年的历史了。1928年,法国人0.Rutten研制成功了世界上第一台超声流量计。但为了使超声波流量计有一定的精度,时差法超声波流量计要求对时间的测量至少有10mS,这在当时是很难做到的。1955年,应用声循环法的MAXSON流量计在美国研制成功,用于航空燃料油流量的测量。50年代末期,超声波流量计由理论研究阶段进入工业应用时期。但由于电子线路太复杂而未占有牢固的地位1。进入20世纪的70年代以后,由于集成电路技术的飞速发展,高精度的时间测量成为一件轻而易举的事,再加上高
2、性能、工作非常稳定的锁相技术(PLL)的出现与应用,使得超声波流量计的可靠性得到了初步的保证,同时为了消除声速变化对测量精度的影响,出现了频差法超声流量计。锁相频差法测量周期短,响应速度快,而且几乎完全消除了声速对测量精度的影响,因而这种方法成为测量大管径大流量超声流量计的主要方案,缺点是测量小管径小流量时精度得不到保证。同一时期,前苏联科技工作者对管道内流体的流速分布规律作了大量深入细致的研究,指出管道内流体流动存在两种状态:层流状态和紊流状态,并给出了层流状态下的理论计算公式,为超声波流量计进一步提高测量精度打下了坚实的理论基础。至此,超声波流量计的研究和应用才蓬勃发展起来,超声流量计的种
3、类也越来越多,相继出现了波束偏移法、多普勒法、相关法及噪声法等。其中波束偏移法是利用超声波在流体中传播时因流体流动产生的波束的偏移量的大小来测量流量,这种方法灵敏度低,只能用来测量大管径大流量;多普勒法利用不纯净流体中散射体的多普勒频移来测量流量,特别适用于不纯净流体的流量测量;相关法利用相关技术来测量流量,测量精度高,适用范围广,但相关流量计线路复杂,价格昂贵,一般只在要求较高的场合使用;噪声法则通过检测流体中的噪声来测量流量,这种方法线路简单,价格便宜,但精度低,只能在要求不高的场合使用。到了80年代中后期,单片机技术的应用使超声流量计向高性能、智能化的方向发展。由于使用了单片机作中央处理
4、单元,系统不仅可以进行复杂的数学运算和数据处理、进一步提高了超声波流量计的测量精度,而且还能设计出友好的人机界面,使系统具有参数设置、自动检错排错功能以及其他一些辅助功能,大大方便了用户的操作和使用。单片机在超声流量计中的应用,是超声流量计开始真正进入工业测量领域。2 课题研究背景2.1 超声波流量计的现状近10年来,基于高速数字信号的处理技术与微处理器技术的进步,基于新型探头材料与工艺的研究,基于声道配置及流动力学的研究,超声流量测量技术取得了长足的进步,显示了它强劲的技术优势,形成了迅猛发展的势头,其潜在的巨大的生命力是显而易见的。超声流量测量技术的基本原理是利用超声波在流.体中传播时所载
5、流体的流速信息来测量流体流量的。超声波流量计一般.由超声波换能器、电子线路及流量显示和累积系统三部分组成。超声波换能器将电能转换为超声波能量,将其发射并穿过被测流体,接收换能器接收到超声波信号,经电子线路放大并转换为代表流量的电信号,供显示和积算,这样就实现了流量的检测显示。在国外,以美国Controlotron公司和Ploysonics公司为代表的产品较多的采用数字信号处理技术,如“同步调制”和FFT技术,他们广泛的采用以DSP为核心的数字处理电路,从而能够更快实时的处理超声信号,同时能够实现一些复杂的算法,如Ploysonics公司的DDF3088型是该公司的新一代全数字化便携式多普勒流量
6、计,它采用了数字滤波和数字频谱分析技术,能自动识别多普勒信号与噪声信号,抗干扰能力强,采用了高分别率的液晶显示,可以现场对信号进行多普勒分析。在测量方法方面有的利用改进的时差法,用以消除速度受温度的影响,还有将时差法与多普勒法的组合,如Controlotron公司研制的480型超声流量计,这样使得产品的实用范围更广。但由于国外的产品的价格比较高(每台约为510万元左右),所以限制了在国内的大量使用2。目前国内的厂家生产的超声波流量计虽然价格比较便宜,但总体性能差,主要用于测量比较容易的大管径管道中流体的测量。他们多采用的方法是时差法,以单片机为系统核心进行信号处理。但由于受单片机速度的限制,所
7、以只能进行一些比较简单的算法,如通过计数来实现流速的计算。同时由于一般的时差法受温度的影响比较大,所以在精度上面就不会很高。如南京亚楠公司生产的ZLC系列流量计是国内率先采用多脉冲发射和接收宽带技术,并带有微机控制的新型超声波时差式流量计。近几年来由于DSP和超大规模集成电路技术的发展,以及以基于DSP为核心的数字信号处理电路技术日益成熟和广泛使用,使得可以采用以DSP为处理核心的超声波流量计来广泛取代国内的以单片机为核心的超声波流量计,从而可利用数字信号处理的一些技术来改善产品的测量精度,如FFT、数字滤波、插值运算、相关运算,从而来提高系统测量的精度。通过这些改进使国内流量计的性能已达到国
8、外的水平,从而能更好的为国民经济服务。2.2 超声波流量计的发展趋势超声波流量计正在快速发展成为流量测量领域,尤其是计量碳氢化合物的首选。ARC这份名为世界超声波流量计前景展望的主要作者、自动化分析师Allen Avery表示:“尽管超声波流量测量技术的出现已经有数十年了,其应用范围却非常小。而随着用户逐渐认识到超声波流量计的众多优点,包括高精确度、无阻碍测量以及较低的总体拥有成本等,这一情况将逐渐改观。” 在石油和天然气领域快速普及 最近几年超声波流量计市场的一切增长,几乎都是由于这种产品在石油和天然气领域销量的增加而带来的。超声波流量计在这一领域的销量比起以前将近翻了一倍。由于AGA9监护
9、运输标准的推广,天然气的监护运输市场已经基本成形。在2003年到2005年间,监护运输量增加了三倍多,而这一领域占超声波流量计销售的5%。只有液体碳氢化合物监护运输的API和OIML标准在行业内得到推广,超声波流量计才能在这个领域普及。超声波流量计具有高精确度和低总体拥有成本 不论是从技术上还是从经济上看,超声波测量仪器都是流量测量的理想选择。通过多光束和数字信号处理,超声波测量仪可以实现很高的测量精确度。与传统的涡轮式仪表不同,它没有移动的元件,因此几乎不需要维修。而且,它也不会阻挡或者减慢管道中气体或者液体的流动。它能够准确地测量液态石油气产品的宽频,而不需像机械型技术那样得到验证。高灵敏
10、度使其可以检测到管道中的任何泄漏,并可以测量和补充各种会影响监护运输领域中的测量准确度的变量。 亚洲和中东市场增长最大 亚洲和中东地区超声波流量计的增长将会是最大的。中国和印度将会在基础设施和新工厂上大举投资。中国能源缺乏,为了寻找推动经济快速发展的能源,将会对其石油和天然气基础设施进行改造,并建立连接俄罗斯及其它地区供油商的管道。而由于中东地区在石油和天然气生产中的地位,这一地区将仍然是超声波流量计供应商的沃土。这一地区亦将在数个大型发电及海水淡化厂上进行投资。相比之下,北美市场的增长则显得相对平淡,但由于这一地区在石油和天然气基础设施及工业自动化上的投资,北美市场将仍然具有可观的增长。2.
11、3 超声波流量计的市场前景随着石油和天然气工业的强势增长,以及行业对于现场设备技术的逐步接受,超声波流量计的全球市场总额将在今后5年内以9.6%的复合年增长率(CAGR)增长。ARC Advisory Group最近的一份报告指出,2005年该市场总值为2.75亿美元,到2021年将超过4.34亿美元。 超声波流量计正在快速发展成为流量测量领域,尤其是计量碳氢化合物的首选。ARC这份名为世界超声波流量计前景展望的主要作者、自动化分析师Allen Avery表示:“尽管超声波流量测量技术的出现已经有数十年了,其应用范围却非常小。而随着用户逐渐认识到超声波流量计的众多优点,包括高精确度、无阻碍测量
12、以及较低的总体拥有成本等,这一情况将逐渐改观。” 石油和天然气领域快速普及,最近几年超声波流量计市场的一切增长,几乎都是由于这种产品在石油和天然气领域销量的增加而带来的,超声波流量计在这一领域的销量比起以前将近翻了一倍。由于AGA9监护运输标准的推广,天然气的监护运输市场已经基本成形。在2003年到2005年间,监护运输量增加了三倍多,而这一领域占超声波流量计销售的5%。只有液体碳氢化合物监护运输的API和OIML标准在行业内得到推广,超声波流量计才能在这个领域普及。 超声波流量计具有高精确度和低总体拥有成本 ,不论是从技术上还是从经济上看,超声波测量仪器都是流量测量的理想选择。通过多光束和数
13、字信号处理,超声波测量仪可以实现很高的测量精确度。与传统的涡轮式仪表不同,它没有移动的元件,因此几乎不需要维修。而且,它也不会阻挡或者减慢管道中气体或者液体的流动。它能够准确地测量液态石油气产品的宽频,而不需像机械型技术那样得到验证。高灵敏度使其可以检测到管道中的任何泄漏,并可以测量和补充各种会影响监护运输领域中的测量准确度的变量。 亚洲和中东市场增长最大 ,亚洲和中东地区超声波流量计的增长将会是最大的。中国和印度将会在基础设施和新工厂上大举投资。中国能源缺乏,为了寻找推动经济快速发展的能源,将会对其石油和天然气基础设施进行改造,并建立连接俄罗斯及其它地区供油商的管道。而由于中东地区在石油和天
14、然气生产中的地位,这一地区将仍然是超声波流量计供应商的沃土。这一地区亦将在数个大型发电及海水淡化厂上进行投资。相比之下,北美市场的增长则显得相对平淡,但由于这一地区在石油和天然气基础设施及工业自动化上的投资,北美市场将仍然具有可观的增长。3.超声波流量计设计方案及分析3.1超声流量计的分类超声波技术应用于流量测量主要依据是:当超声波入射到流体后,在流体中传播的超声波就会载有流体流速的信息。超声波流量计对信号的发生、传播及检测有着各种不同的设置方法,从而构成了不同原理的超声流量计,其大致可分为传播速度差法(包括:时差法、相位差法、频差法),多普勒法,相关法等等。3.2传播速度差法传播速度差法是根
15、据超声波在流动的流体中,顺流及逆流传播时的速度之差与被测流体流速之间的关系来求流速或流量的方法。按其所测的物理量的不同,传播速度差法又可分为(直接)时差法、相位差法和频差法三种。时差法就是直接测量超声波顺流和逆流传播的时间差,它适用于大、中口径管道及明渠流量的测量,但时差法流量计受温度的影响较大,流体温度变化对这种系统测量精确度的影响是不能忽视的,实验表明,在使用在机玻璃声楔的条件下,流体温度每变化10,就会给测量增加1%左右的误差,并且声速的温度系数不是常数;另外,当流体的组成或密度变化时,也将引起声速的变化,从而影响测量精度。其发展方向是提高计时精度和设法降低温度对测量精度的影响。频差法是
16、通过测量一定时间内两组闭路循环系统中的循环频率之差来测得流量。频差法精度高、受温度影响较小,但受环境影响较大,工作不稳定。相位差法通过把时间差转换为相位差,避免了测量微小的时间差,可提高测量的精度,但受温度的影响依然很大。3.3多普勒法多普勒法利用的是声学多普勒原理,通过测量不均匀流体中散射体的超声波多普勒频移来确定流体的流量。这一技术已在医疗仪器上得到了重要的应用,多普勒流速计现在已成非观血的、无侵袭的临床测量血流的重要手段。在工业计量领域中,多普勒流量计可以用来测量含泥沙的河水、污水等含有较大颗粒的流体流量。但是,多普勒流量计多数情况下测量精度不高。其工作原理是流体管道内任何流动的液体都存
17、在不连续的扰动,诸类不连续的扰动可以是悬浮的固体颗粒,气泡或由于流体扰动而引起的界面,这种扰动使反射的超声波产生频移,频移是流速的线性函数。通过测量频移,即可测量管道内流速(或流量)。随着技术的进步,多普勒超声波流量计的发展不仅可测量带悬浮颗粒及气泡的污浊液体,也可测量纯净流体。大洋伯斯特DS多普勒流量计就具备这种特点。3.4相关法相关法利用流体内部自然产生的随机流动噪声现象,将流体的流速测量问题转化为流体通过相距一定距离的两截面的时间间隔的测量问题,运用相关测量技术可实现流体流速的在线测量。根据测量原理,流速的测量精度主要取决于渡越时间和两个平行的超声波波束之间距离的测量精度。由于是测量两个
18、固定波束之间的渡越时间,因此,测量结果不受流体中声速变化和流体性质的影响,但流体的流场分布影响流速的测量精度。由于超声波互相关流量计的这些特点,其应用前景非常看好,一些发达国家在这一领域加大投资,尤其是德国和英国,在此领域进行了较全面的研究工作,其中德国科学研究院1998年批准资助两个大学8个研究所在此领域开展研究工作。4 时差法超声波流量计设计4.1时差法测量原理及主要特点 本论文研究的是基于时差法的超声波液体流量计,其管段内部结构简化图如图1所示,换能器1,2相对于管道轴线的安装角是,管径为,两个换能器之间的距离为,流体流动方向如图所示:图1 时差法测量流量原理图当流体以速度流动时,超声波
19、的实际传播速度是声速和流体在声道方向上的速度分量的叠加,即: 超声波信号在流体中顺流和逆流的传播时间分别为:t顺 =t21 = (4.1)t逆 =t12 = (4.2)式中:为一次装置管内径,为两个换能器之间的距离,为超声波在静止介质中的传播速度,故:t = t顺 t逆 = (4.3)一般情况下,声波在液体中的传播速度在1000m/s以上,而多数工业系统中的流速远小于声速,即 ,所以时间差可以近似简化为: t = t顺 t逆 = (4.4)即: (4.5)体积流量表达式: (4.6)式中:为管道的横截面积,为流体在管道内的流动速度。 由上式可以看出,由于一次装置内径,换能器与轴线夹角可以通过实
20、际情况测量得到,所以当声速一定时,只要测的时间差,就可以按式子(4.5)求得流速u,进而由式子(4.6)求得流体的体积流量15。 时差法测量流量具有以下几个特点:a) 由于时差法超声波流量计采用了精密的时差法检测,并有信号的自动跟踪,温度的自动补偿等先进的技术,因此它具有运行稳定,计量准确可靠,仪表的运算和显示精度较高的特点。b) 对被测介质来说,超声波流量计属于非接触测量,在安装过程中不损坏管路,可以满足工厂工艺生产用水不断流的要求,安装极为方便。c) 在测量时,管道中没有节流器件,流体不存在压力损失,非常有利于节约能源。d) 电子线路的集成度高,几乎不需要维护与修理,编程灵活简单,用户输入
21、的数据为常用的原始数据,不需要经过人工的计算,省时省力。基于相关分析的时延估计方法是一种提出较早的时延估计方法, 该算法原理简单、 容易理解、 研究充分,具有较高的工程应用价值.数字信号处理器DSP2 在数字滤波, 快速卷积,相关以及快速傅里叶变换等方面具有无可比拟的优势, 已经广泛应用于雷达、 通信信号处理、 语音信号处理、 仪器设备、 数字图像处理以及生物医学等众多领域。为此, 本文研究了利用数字信号处理器DSP 实现基于相关分析的时延估计方法。为了提高测量低速液体的精度及抗干扰能力,可以结合FFT算法对采集到的信号进行处理再用相关法处理18。鉴于DSP处理器在信号处理方面高速的优点,系统
22、应采用以DSP为数据处理的核心。为了进行复杂的数字信号处理,即需要的是一组数据,所以在发射电路方面就不能发射单脉冲,而是采用多脉冲,或者调制波方案。同样对接收信号的检测就不能通过单点的判断,而是首先通过ADC将信号进行采样,再利用数字信号处理的一些方法将流速计算出6。在信号处理方面,由于顺流、逆流两次发射的信号相同,通过的介质相同,所以接收到的两组信号在时间域上只是一个简单的时间延迟和一些噪声,这样我们可以采用相关法超声流量计的思想,通过对两组信号的相关处理来计算出,从而计算出流速v。出,从而计算出流速v。4.2激励信号的自相关函数及频谱的MATLAB仿真合理选择激励信号有助于稳定可靠地估计T
23、OF。图2是63位幅度为1、周期为127的PRBS信号及其自相关函数、PRBS调制信号及其频谱。载波频率为1MHz,每位PRBS包含8个载波周期,驱动信号帧长约为0.5ms。可以看出,PRBS自相关函数主瓣幅度很高,宽度为0.016ms19。图3是一帧0.05ms的LFM信号、自相关函数及其频谱。信号频率从0.83MHz 线性增加到1.2MHz, 中心频率为1MHz。图4是与图3相对应的DRLFM信号及其相关函数与频谱,采样频率为20Msps。从图3(b)及图4(b)可以看出,相关函数的主瓣很窄,第一副瓣高度约为主瓣高度的46%,而其宽度却比PRBS调制信号窄得多,驱动信号的帧长也比PRBS调
24、制信号短得多。从频谱图上看,LFM信号带宽略宽于PRBS调制信号,但仍在其带宽内,可以高效率传输。由于LFM及DRLFM是连续渐变信号,起振与拖尾现象16的影响不大。图2 单位PRBS的自相关函数及其调制信号频谱, PRBS周期为127,载波频率是1MHz (a) 63位PRBS; (b)PRBS自相关函数;(c) PRBS调制信号;(d)PRBS调制信号的频谱图3 LFM的自相关函数及其频谱 (a)LFM信号;(b)自相关函数;(c) LFM的Fourier变换幅度图4 DRLFM的自相关函数及其Fourier变换模4.3时差算法的具体实现 系统的硬件方案 图5 系统硬件方案前面已经简单地给
25、出了系统方案,这里再详细地给出系统的硬件方案,如图所示,系统分成三个部分:以模拟电路为主的前端电路,以DSP为核心的信号处理电路,以MCU为核心的后端服务电路。下面将详细的介绍各部分的硬件组成和功能。切换单元电路设计这一部分的作用是用来切换两个探头和发射、接收电路之间的连接的。作为对模拟信号的切换,可以有以下三个方案可以选择。(1)用继电器进行切换。当信号接通后,由于继电器实际上就是导线,所以不存在信号失真的现象。但继电器的开关频率有限,而且有一定的总开关次数限制,一般在100万次。(2)采用模拟开关。起初作者采用了这种方案,模拟开关开关频率高, CMOS模拟开关不行,CMOS开关频率在1MH
26、z,不适用于中心频率为1MHz的超声波电路。在实用的时候发现,由于切换的双方是接收到的微弱的超声信号和用于发射的高压信号,难以找到既能够承受高压又能使得传输的微弱信号失真较小的芯片,所以最终放弃了此方案。(3)采用分立元器件,利用二极管的开关特性来控制开关。这种方法能够有很高的开关频率,能承受高压,但作者在实验的过程中发现信号失真太大,估计跟发射信号的功率有关。鉴于以上原因,作者暂时选用了继电器方案,这样可以简化项目的难度,而且控制继电器开关所需要的12V电平,发射电路中的CD4504正好能够提供。放大电路设计系统中接收到的超声波信号有以下特点:从超声探头接收到的信号的幅值的范围大概为0.1m
27、V10mV,而一般ADC需要采样的信号的最大幅值为5V,所以得要放大54dB94dB,即放大电路的增益为74dB20dB;接收到的超声信号是一个以2.5 MHz为中心的窄带信号;由于后续信号处理采用的是相关算法,所以对放大电路的抗干扰要求不高;鉴于以上特点,作者提出了一种可控谐振三级放大电路的方案。其中前两节是以MAX435/436为核心的固定谐振放大电路,第三级是以AD603为核心的可程控增益放大电路。考虑ADC603,可以实现20dB的变换。这样MAX435、MAX436两级得要放大74dB,每一级需要37dB即可。如果信号的范围不在0.1mv10mv之间,则需要通过手工调节可变电阻来实现
28、。由于超声是一个窄带信号,且由图4.5看出在谐振频率时,基本满足每一级37dB的要求,即使实际中不满足,可以通过调节RSET或者RL来达到目的。所以利用MAX435/436谐振放大器的功能来实现超声信号的前两级的固定增益放大的方案是可行的。采用MAX435/436构成放大电路的原理图。为了防止过压,在输入端应该加一对二极管用以电路的保护。该电路能很好的对1 MHz的窄带信号进行谐振放大作用。图6 放大电路原理图采样电路设计考虑到采样频率等因素,采用TLC876(ADC器件,采样频率fs=20Msps/12bit)的高速信号采集电路,用于对超声信号的回波进行采集。本文设计的采样频率为1MHz,综
29、合考虑整个系统的成本和精度要求,作出的设计图如下:图7 TLC876的应用 DSP系统设计DSP5416具有先进的多总线 结 构具有三个 只读 的 16 位数据存储器总线和 内存总线的一个程序 。40 位算术逻辑单元( ALU ) ,包括 一个 40 位 圆柱形 移位器和两个独立的蓄电池。17-17 位并行乘法器耦合到一个40位非流水线单周期的累加器中。比较、选择和储存单位是为了加法/比较选择的维特比运算。指数编码器计算的是一个周期内指数为一个40位累加器的值。 两个地址发生器和八个辅助寄存器以及两个辅助算术寄存器单位。数据总线具有一个所有总线的特征。扩展寻址模式为8M的16位最大外部寻址程序
30、空间。128K的16位片内RAM组成8块8K的16位上ChipDual 接入程序 / 数据RAM,8块8K的16位上Chipsingle 接入程序RAM。16K 16位片上ROM的内存为了记忆程序,还具有增强外部并行接口 。 图8 DSP最小系统原理图4.3.6可编程逻辑器件方案FPGA(现场可编程门阵列)与CPLD(复杂可编程逻辑器件)都是可编程逻辑器件,作者根据现有条件选用了CPLD。CPLD在系统中的作用:(1)为DSP以及单片机的译码,以实现DSP、单片机系统的完整性;(2)为串行接口的DAC提供并串转换功能,使得DAC直接映射成DSP、MCU的一个寄存器,从而简化了系统对DAC控制;
31、(3)为整个系统设计一个全局控制器,这样使整个系统能够协调的运行,同时使得DSP能专一处理流速的计算。图9 驱动信号产生、信号采集部分原理图4. 超声流量计软件设计的开发4.1 CCS软件的使用CCS是TI公司开发的一个集编辑、编译、调试等功能为一体的DSP开发工具。在CCS中,源代码的书写有一定的格式。每一行代码分为三个区:标号区、指令区和注释区。标号区必须顶格写,主要是定义变量、常量、程序标签名称。指令区位于标号区之后,以空格或TAB隔开。如果没有标号,也必须在指令前加上空格或TAB,不能顶格。注释区在标号区之后,以分好开始。注释区前面可以没有标号区或指令区。另外还有专门的注释行,以*打头
32、,必须顶格开始。一般区分大小写,除非加编译参数忽略大小写。一个完整的DSP程序至少包含三个部分:程序代码、中断向量表、链接配置文件。链接配置文件确定了程序链接成最终可执行代码时的选项,其中有很多条目,实现不同方面的功能,其中最常用的是,存储器的分配,指定程序入口。打开CCS并建立一个新的空工程,输入源代码文件以及链接配置文件,并将这些文件加入到工程中。选择ProjectOptions来对工程进行设置。输入程序后,选择ProjectBuild来编译生成的工程;修改程序中的错误,直到编译成功。编译成功后,我们可以选择Debugrun运行程序,观察运行的结果。4.2基于DSP软件的相关器设计从相关法
33、测量原理可知,相关法测量流量的精度取决于相关器测量时延的精度,亦即取决于相关函数峰值点位置的测量精度,而与相关函数绝对值的大小无关。因此,应用相关法测量流速的关键问题之一是研制或配备时延分辨率高、实时性强、成本低的数字式相关仪。 如果从上、下游传感器获得的流动噪声信号和可以分别看作是来自个态历经的平稳随机过程和的两个样本函数,则它们的互相关函数为:从理沦上说,随机流动噪声信号和之间的互相关函数应在无限大的时间平均下求得。然而,在实际系统中,为了满足实时性的要求,上、下游流动噪声信号和之间的互相关函数的运算只允许在有限的时间间隔内进行。从上式可以看出,在数字式相关器中为完成延时值为:的互相关函数
34、次乘法和次加法运算。如果希望得到个不同延时值下的互相关函数,就需完成次加法和次乘法计算。因此,为了增加相关函数测量的实时性,对数字相关器中乘法和加法运算速度的要求是相当高的。4.2.1直接幅值相关法将上游传感器测得的信号和下游传感器测得的信号做互相关运算,得到的互相关函数的表达式为:其中,为测量时间,为时延值。计算互相关函数就是在不同时延值下比较这两个信号的波形相似程度,得到互相关函数的图形,该图形的峰值位置所对应的时间位移就是随机信号在两个传感器之间的距中的传递时间,即渡越时间。考虑到进行相关运算和处理的都是数字电路,所以当算法采用直接幅值相关法,应将上面的公式离散化,得:其中,且,是采样间
35、隔,其值为采样时间除以采样点数。使用直接幅值相关法,完成一次相关运算的计算量是非常大的,可以用下述方法来估计。以数字相关器为例,为了完成某一固定下的相关函数估计值的计算,需要进行次乘法和次加法。如果希望得到个不同延时值下的互相关函数,就需要完成次乘法和次加法计算。这对硬件的要求非常得高,如果要保证测量精度,则要牺牲相关测量的实时性。故放弃。4.2.2傅里叶变换法从以上叙述可以看出,传统相关器的设计是基于时域的计算方法,为了简化计算,一般采用极性相关,为了减小量化误差,一般需要较长的积分时间,而且在量化的同时也丢失了流动信号中包含的与流动状态有关的信息。本系统尝试采用DSP及FFT,在频域内构造
36、相关器,以此为基础构造实时流量测量系统。傅里叶变换是将信号从时域变换到频域的一种变换形式,是信号处理领域中的一个重要的分析工具。DFT离散傅立叶变换是连续傅里叶变换在离散系统中的表现,完成离散时域信号到频域的转换。在震动、声学、图像信息处理、卫星摄影分析等时域频域转换和随机过程的数字信号处理中,傅里叶变换占有非常重要的地位。微型计算机的发展,为数字化分析开辟了广阔的前景,快速傅里叶变换(FFT)已成为数字信号处理和线性系统分析的有力工具。设、及分别是、及的傅立叶变换,且是、的互相关函数,根据时域相关定理,则有: 再通过傅立叶逆变换即可直接求得时域的相关函数。虽然傅立叶变换比较复杂,但现在已经有
37、高速DSP和成熟的FFT算法,而两个频谱的相乘只不过是一次多相式乘法。这样利用快速傅立叶变换和DSP的高速运算能力,即可构成实时性很好的相关流量器。相关算法流程图如下:图10 相关算法流程图用FFT法进行相关运算步骤如下:(1) 用补零值点的方法避免混叠失真,使和具有相同的列长。,且(为正整数),(2) 求点FFT(3) 求乘积(4) 求的IFFT,即可以利用求的IFFT后,取共轭再乘以得到。由于,是实序列,所以求得为,若直接幅值相关法的计算复杂度为O (N2),而改进后的FFT算法程序的计算复杂度为,将大大地提高运算的速度。最后仿真结果最大值在n=51,与设计的n=50相差无几,仿真成功。
38、图11 FFT变换仿真图 图12 相关运算仿真图附件(程序)/* 超声波流量计DSP编程 */#include stdio.h#include math.hunsigned ioport port8003;/* AD 采集端口 */void kfft(pr,pi,n,k,fr,fi,l,il)int n,k,l,il;double pr,pi,fr,fi; int it,m,is,i,j,nv,l0; double p,q,s,vr,vi,poddr,poddi; for (it=0; it=n-1; it+) m=it; is=0; for (i=0; i=k-1; i+) j=m/2; i
39、s=2*is+(m-2*j); m=j; frit=pris; fiit=piis; pr0=1.0; pi0=0.0; p=6.283185306/(1.0*n); pr1=cos(p); pi1=-sin(p); if (l!=0) pi1=-pi1; for (i=2; i=n-1; i+) p=pri-1*pr1; q=pii-1*pi1; s=(pri-1+pii-1)*(pr1+pi1); pri=p-q; pii=s-p-q; for (it=0; it=0; l0-) m=m/2; nv=2*nv; for (it=0; it=(m-1)*nv; it=it+nv) for (
40、j=0; j=(nv/2)-1; j+) p=prm*j*frit+j+nv/2; q=pim*j*fiit+j+nv/2; s=prm*j+pim*j; s=s*(frit+j+nv/2+fiit+j+nv/2); poddr=p-q; poddi=s-p-q; frit+j+nv/2=frit+j-poddr; fiit+j+nv/2=fiit+j-poddi; frit+j=frit+j+poddr; fiit+j=fiit+j+poddi; if (l!=0) for (i=0; i=n-1; i+) fri=fri/(1.0*n); fii=fii/(1.0*n); if (il!=
41、0) for (i=0; i=n-1; i+) pri=sqrt(fri*fri+fii*fii); if (fabs(fri)0) pii=90.0; else pii=-90.0; else pii=atan(fii/fri)*360.0/6.283185306; void main(void) int i,n,k=0; double x128,pr128,pi128,fr128,fi128,mo128; int xm,zm; int *px = (int*)0x4000; int *pz = (int*)0x4080; n=128 for (;) px = (int*)0x4000;/*
42、 在这里采集数据到0x4000 */#if 0 for( i = 0; i 128; i+) *px+ = port8003; #endif px = (int*)0x4000; for (i=0; i=n-1; i+) xm=*px; xi=xm/32768.0; pri=xi; pii=0; px+; kfft(pr,pi,128,7,fr,fi,0,1); pz = (int*)0x4080; for (i=0;i=n-1;i+) moi = sqrt(fri*fri+fii*fii); zm = (int)(moi*1000.0); *pz = zm; pz+; k+; IFFT只要先将FFT变换得到的X(k)取共轭,就可以直接利用FFT子程序,FFT运算和IFFT运算可以共用一个子程序。其中inv就为正变换和逆变换标志,0为正变换,1为逆变换void fft(float *xr,float *xi,int n,int inv) int i,j,a,b,k,m; int ep,arg,mt,s0,s1; float sign,pr,pi,ph; float *s,*c; c=(float *)calloc(n,sizeof(float); if(c=NULL) exit(1); s=(float *)cal