2. 复旦大学, 上海 200433
2.Fudan University, Shanghai 200433, China
引 言
双频激光干涉仪是在单频激光干涉仪的基础上发展的一种外差式干涉仪。在各种干涉测量系统中,外差干涉技术因其抗干扰性好的突出优点,应用最为广泛。在引入相位测量后,可把外差干涉的测量精度提高多个数量级,更适用于需要高精度测量的场合。基于相位测量的外差干涉系统可以应用在包括纳米精度测量、机械转角精密测量、直线度测量、生物分子相互作用检测等方面在内的许多领域中,如何提高相位差检测精度值得加以研究[ 1 ]。双频激光干涉仪系统框图如图 1所示。
![]() | 图 1 双频激光干涉仪系统框图 Fig. 1 The block diagram of dual frequency laser interferometer system |
随着科学技术的发展,电信号相位差的数字化测量技术在许多行业有着重要且广泛的应用,如在电工技术、工业自动化、测试控制、通讯等。求取相位差的方法有多种,常用的有过零法、频谱分析法、相关算法等。过零法测量相位差是通过判断两个同频信号过零点的时刻,计算其时间差,然后将其转换为相应相位差,但当信号中含有干扰时,信号的过零点不易准确测量,误差较大。频谱分析法是通过对被检测信号进行频谱分析,获得信号的相频特性,然后计算两信号在主频率处的差值,即可测得两个信号的相位差,但频谱分析法的检测结果受采样点数的影响较大[ 2 ]。
基于上述分析,本文提出了一种双频激光干涉仪系统中数字相位计的实现方法,该方法将数字信号处理的正交相关法解调算法引入了鉴相系统,由光电接收器将光信号接收并转化成电信号,输出后经过模数转化电路将模拟信号转化成数字信号,送入 FPGA,进行CORDIC(coordinate rotation digital computer)算法得出外差式干涉仪系统中测量信号与参考信号之间的相位差,最后输出数据处理结果[ 3,4 ]。
1 数字相位计的原理与实现 1.1 正交相关法解调理论基础
数字相关正交解调法原理框图如图 2所示,被测信号经A/D模数转换形成离散数字化后的信号sin(n),然后对被测信号做等间隔采样,间隔的时间和信号与自己的固有频率有关,并且定义每周期采样点数为N。
![]() | 图 2 正交相关法解调原理框图 Fig. 2 The block diagram of orthogonal correlation algorithm |
可以推导出采样离散化后的信号:

对于Sin(n)和rsin(n)作互相关运算有:



由以上数学相关法公式推算,被测信号Vin的初相位φ可以通过正交相关乘法后的VX和VY分量做arctan函数求得

1.2 CORDIC算法基础
坐标旋转数字式计算机的基本构想是通过运用运算基数相关角度的不断旋转,达到逼近所需旋转的角度,所以基于这点来说,它只是一个数值逼近的方法。由于这些固定的角度与计算基数有关,运算只有移位和加减法,因而这在硬件上较为容易实现[ 5 ]。
目前的FPGA 具有许多乘法器和加法器,然而各种各样的通信技术和矩阵算法则需要三角函数、平方根等的运算。在FPGA 上执行这些运算可以使用查找表,或是迭代法。本节介绍了CORDIC 算法,这是一个“移位相加” 算法,允许计算不同的三角函数,例如sin,cos或者arctan函数[ 6 ]。
CORDIC算法的基本迭代公式为:

如果将输入向量通过一个特定的角Y变为0,切旋转的方向取决于d的符号,即:



从式(8)可以看出,CORDIC算法在向量模式可以计算出给定向量(X0,Y0)的长度和角度,即从平面坐标到极坐标的变换,图 3为CORDIC迭代算法的具体实现框图,只要通过给定的初始值,在迭代次数达到Y趋近于0值时候,输出的Z值即为相位差角度arctan(φ)。
![]() | 图 3 CORDIC算法框图 Fig. 3 CORDIC algorithm block |
2 硬件算法在FPGA中集成
系统采用主时钟信号为50 MHz,主控模块在接收到使能测量的start信号后开始一个周期的相位差检测,首先是驱动A/D转换模块,将光电转换的信号数字化以后和内建的ROM查找表在Booth乘法器模块中实现点对点的乘法运算,ROM查找表数据来源于MATLAB软件生成的mif文件格式,Quartus软件可以例化出信号接口给到使用者,对于sin参考信号,数据为带符号位宽11 bits整型,即正弦的振幅被量化为-1 024~+1 023,一个周期有1 024个离散数据点组成,同理cos参考信号与sin为正交相位差90°。将理论上已经转换好的A/D第一个数据和第一个FPGA内置查找表中的参考正弦信号以及余弦信号做乘法,这样就获得了第1次乘法的结果,缓存起来,然后再根据之前算得的A/D采样间隔,去做第2次,第3次乘法……一直做到1 024次完成,并且把每次的乘法结果在缓存寄存器中累加,可以得到两路信号,一路是将数字化的被测信号与正弦参考信号相乘的并且累加的Xout;另一路则相应是将数字化的被测信号与余弦参考信号相乘并且累加的Yout,这两路信号通过计算arctan函数即可获得被测信号与参考信号的相位差φ,因为被测信号的离散化数值要分别与sin和cos参考信号做乘法相关解调运算,所以booth模块复用逻辑输出的两个乘积product_x和product_y通过1 024次累加后32 bits位宽的x_out和y_out分别作为后续arctan模块的输入激励。在arctan模块中运用15级流水线方法实现CORDIC算法的迭代运算,移位模块完成式(6) 中的2-n操作,而内置的Z角度数值则事先把arctan (2-n) 的值放入,每次计算时只需逐次把数据传入加减模块即可。运算加减取决于dn符号位,在流水线经过15级运算后,Y趋近于0,输出的Z值即为相位差角度[ 7,8 ]。在CORDIC设计中特别需要注意的是长度和角度两者数据的量化,否则得不到正确的角度值,此设计中使用32位有符号数量化最大坐标点,使用18位无符号数量化0°~360°角度。在计算完最后的结果之后为一个正弦信号周期的值,可以将多次周期计算得到的相位差信息取平均值输出,减少噪声和数值逼近误差等信息[ 9 ]。如图 4所示为FPGA中所用的算法。
![]() | 图 4 FPGA中所用的算法 Fig. 4 Algorithm on FPGA |
3 实验结果
实验中理论和实际测得的相位差角度对比值如表 1所示,由表可见数字相位计精度可以达到 0.01°以内,满足设计的需求。
|
|
表 1 相位差实验图 Tab. 1 Phase difference test result |
相位计整合所有模块的运算结果如表 1所示,在仿真的时候,根据A/D激励输入和参考ref_sin以及ref_cos的相位差,这些都由MATLAB输出来人为控制。可以看到,当数字离散化的被测信号与参考信号理论上通过MATLAB输出相位差为0.100°的时候,通过相关法正交解调调用BOOTH乘法器后,被测信号与正弦参考信号相乘累加1 024次后输出的X0为534 465 330,而被测信号与余弦参考信号相乘累加1 024次后的输出Y0为923 488,我们认为这一组X0和Y0为CORDIC算法模块的输入激励,并且算法的内部16次流水线运算,得到最后的CORDIC累加器为Z16为74,此设计中使用32位有符号数量化最大坐标点(X,Y),使用18位无符号数量化0°~360°角度Z,所以可以通过量化推算,74即代表角度0.099°,所以理论上的绝对误差即为0.001°,其余几组值是通过同样的方法输入给系统,并且我们可以看到最大绝对误差在0.005°,可以见得数字相位计的在各个角度的测试下,精度可以达到0.010°以内,满足设计的需求[ 10 ]。
根据仿真的结果可以看到,相位计的精度在理论上可以达到一定的水准,但是此测试中并未就模拟A/D激励信号源给出噪声叠加的测试,如果在数字化的被测信号上添加随机数的噪声幅度叠加,根据噪声幅度和A/D量化幅度的百分比,就能得到更接近实际的仿真数据。在此测试数据中,A/D的激励源和参考值相乘的时候,是根据参考信号频率等间隔平分的,也就是做除法的时候,是没有余数的结果,在一定程度上也加大了理论上相位计的高精度表现。至于相位计在仿真上还存在0.010°以内的误差是因为不可避免量化的结果,CORDIC算法需要对模值和角度量化,并且都是整数级运算,在推演递推公式的时候,都是以右移来表示2-i运算,这样本来存在的小数就会消失,并且CORDIC运算本来就是要无数次迭代才接近理论数据,所以由于算法运算量和运算时间的限制,我们只用了16级流水线对输入的X和Y进行运算,这也是影响精度的原因之一。
4 结 论
本文创新点在于从测量相位计的原理出发,对数字相位计的算法进行了深入的分析和研究,找出适合双频激光干涉仪系统的相位计方案,并在此基础之上,将算法优化集成于FPGA系统中。在集成的过程中,需要逐步研究算法的代码化和模块化步骤,例如乘法器、CORDIC模块等从行为级描述到RTL硬件语言描述,接着又用Modelsim仿真工具对系统相位计的各个节点输出进行仿真,然后对理论上仿真上的结果予以一定的误差分析,算出相位计角度之后,再根据实际量化的数值去纠正参考信号的相位,这在双频激光干涉仪系统中起到了关键作用[ 11,12 ]。同时,系统的运行速度,稳定性和精度也因加入了FPGA而得到进一步改善,具有良好的应用前景。
| [1] | 所 睿,范志军,李 岩,等.双频激光干涉仪技术与发展[J].激光与红外,2004,34(4):251-253. |
| [2] | 董洪波,杨召雷,胡 凯.双频激光干涉仪相位差测量系统的设计[J].信息技术,2013(2):11-14. |
| [3] | 羡一民.双频激光干涉仪的原理与应用(一)[J].工具技术,1996,30(4):44-46. |
| [4] | 张毅刚,付平,王 丽.采用数字相关法测量相位差[J].计量学报,2000,21(3):216-221. |
| [5] | 骆艳卜,张会生,张 斌,等.一种CORDIC算法的FPGA实现[J].计算机仿真,2009,26(9):305-307. |
| [6] | 蒋庆红.相位计测量不确定度评定[J].计量与测试技术,2009,36(10):64. |
| [7] | 宋长宝,李志刚,竺小松.基于数字正交变换的相位差测量方法及误差分析[J].电路与系统学报,2006,11(1):143 -146. |
| [8] | 戴高良,殷纯永.用于纳米测量的混合型外差干涉信号处理方法[J].光学技术,1999,25(1):21 -24. |
| [9] | 王晓俊,周杏鹏,王 毅.精密阻抗分析仪中数字相敏检波技术研究与实现[J].仪器仪表学报,2006,27(6):592-595. |
| [10] | 戴高良,晃志霞,殷纯永,等 纳米精度双频激光干涉仪非线性误差的确定方法[J].中国激光,1999,26(11):987-992. |
| [11] | 胡长德,陆加海,幸 祺,等.基于激光干涉的长导轨直线度误差测量[J].光学仪器,2008,30(6):10-15. |
| [12] | 岳 峰,陈凌峰,任建荣,等.激光干涉仪的计量保证方案研究[J].光学仪器,2004,26(1):24-28. |
2014, Vol. 36
Issue (3): 258-262,278





