基于FPGA的数字化电涡流位移传感器设计
于金鹏 , 周燕 , 莫逆 , 刘兴男 , 赵雷     
清华大学 核能与新能源技术研究院, 北京 100084
摘要:电涡流位移传感器的载波信号和解调信号均为模拟处理信号,其测量和解调电路均会提高硬件电路复杂性和信号的不稳定性,并增大磁轴承系统的总体设计体积和功耗等。针对这一问题,该文设计了以调幅式电涡流位移传感器为基础的数字化电涡流位移传感器。利用现场可编程门阵列(FPGA)的数字输出信号设计传感器的载波信号,通过FPGA的软件设计对测量电路的输出信号进行数字化处理。该设计在有效降低电路设计复杂性和功耗的同时,提高了传感器测量的可靠性和精确性。
关键词电涡流位移传感器    现场可编程门阵列(FPGA)    载波信号    数字解调    
Design of a digital eddy current displacement sensor based on FPGA
YU Jinpeng, ZHOU Yan, MO Ni, LIU Xingnan, ZHAO Lei     
Institute of Nuclear and New Energy Technology, Tsinghua University, Beijing 100084, China
Abstract: The carrier and demodulated signals of eddy current displacement sensors are both analog signals. Thus, the measurement and demodulation circuitries are complex, unstable and increase the volume and power consumption of the magnetic bearing system. This paper describes an improved digital eddy current displacement sensor based on amplitude modulation with the digital carrier signal given by a field programmable gate array (FPGA) to demodulate the digital output signal of the sensor. The measurement reliability and accuracy are improved while the complexity and power consumption are reduced in this integrated digital eddy current displacement sensor.
Key words: eddy current displacement sensor     field programmable gate array (FPGA)     carrier signal     digital demodulation    

电涡流位移传感器被广泛应用于磁轴承系统当中[1]。传统电涡流传感器的载波信号和输出调频信号均采用模拟处理信号,磁轴承的多个测量点的信号采集与解调处理电路增加了电路的设计复杂性,降低了整个测控系统的集成度与可靠性。因此,载波信号发生模块和测量信号解调模块的数字化设计,对降低传感器电路的复杂性和提高磁轴承测控系统的可靠性具有重要意义。

载波信号方面,传统测量电路一般采用晶体振荡电路[2]或者外围信号发生芯片电路等生成。晶体振荡电路简单,但其输出频率稳定性受电压、温度等外界环境影响[3];信号发生芯片可以产生稳定而标准的载波信号[4],但电路设计复杂。Li等[5]提出可使用开关电路驱动电涡流传感器,仅通过一次低通滤波即可得到位移信息。Rodriguez等[6]提出了使用现场可编程门阵列(FPGA)编程并通过模数(A/D)转换输出正弦波作为载波源的设计,适用于低频载波传感器。董永贵等[7]设计了低频方波脉冲激励电涡流传感器,适用于探伤领域。

传感器信号的解调方面,Passenbrunner[8]使用锁相环原理输出方波,通过输出方波的占空比的测量实现数字化解调;Fekri[9]设计了一种数字化信号处理器,通过开关通断来选择不同的处理电路实现信号的处理;庞喜浪等[10-11]设计了数字式电涡流位移传感器,均为脉冲计数的调频式传感器。

为提高载波信号的稳定性和可调性,降低电路功耗和复杂性,本文设计了数字化电涡流位移传感:传感器以FPGA数字输出信号为方波激励源,实现载波源的数字化;以FPGA片上程序设计为基础,对传感器信号的数字检波、相位检测以及数字滤波等模块进行设计,完成对传感器信号的数字化处理。

1 基本原理和方案设计

电涡流位移传感器的基本原理是电涡流效应。带有交变电流的传感器探头靠近被测体时,被测体表面的感应电流产生交变磁场,使探头线圈两端的电压产生幅值和相位的变化。实际测量中,通过对传感器输出信号进行解调得到位移信息。相比调频式电涡流传感器,调幅式测量电路在降低电路的复杂性和成本的同时,可以提高电路的可靠性,进而提高磁轴承系统的可靠性。

传统调幅式电涡流位移传感器设计如图 1所示。载波信号由载波电路生成;测量电路的输出信号经乘法器检波等一系列模块解调处理后得到纯净的位移信号;解调信号最后通过A/D转换或者数字信号处理器(DSP)处理后,交送给磁轴承控制器。

图 1 原始传感器测量电路设计

本文提出的基于FPGA的数字化电涡流位移传感器工作原理如图 2所示。FPGA输出的数字方波信号进行高次滤波等预处理后直接作为电涡流传感器测量电路载波源;测量电路的输出信号经过降噪后,直接通过A/D转换或者DSP输入FPGA进行解调;得到的电压信号可直接传输给FPGA内部的磁轴承控制器模块。相比传统模拟测量电路,数字化设计仅需要简单的载波信号处理电路以及降噪等硬件电路,很好地简化了电路设计并降低了功耗。

图 2 基于FPGA数字解调传感器设计

2 载波源与测量电路设计

设计原理如图 3所示。FPGA通过预编程输出2路频率为f0、相位差180°的方波数字信号;滤除直流模块滤除两数字信号的直流部分并保留交流部分;运放滤波环节滤除方波中的高次谐波后输出频率f0的正弦波。此时输出的无直流分量的标准正弦波作为载波源输入测量电路,测量电路输出位移响应信号。最后经过降噪放大后检波得到相位信息。

图 3 载波源为滤波方波的差动电路结构图

2.1 载波源

采用的差动式测量电路使用正负2路载波源作为载波信号。FPGA预编程后同时输出相位差180°的稳定的2路数字信号,经过后级滤除直流模块即可产生正负2路载波信号。

FPGA输出为数字信号,其频率以及相位仅受FPGA预编程参数以及FPGA的时钟频率影响。本文采用的FPGA自身的运算时钟频率为60 MHz,因此通过FPGA内部算法分频输出的2路信号相位差的误差仅在ns级别,对传感器影响很小。FPGA芯片内部有稳压模块,因此在外部电源保证FPGA正常工作的情况下,其管脚输出的2路数字信号会稳定在3.3或0 V,保证载波信号的幅值稳定性,利于差动电路的应用。

2.2 滤除直流模块

由于FPGA输出的数字方波信号标准高低电平分别为3.3和0 V,是带有直流分量的周期信号。若直流分量直接输入后级差动测量电路,正负载波信号的直流分量微小的差异也会使测量电路输出零点电位出现漂移,影响后级检波;直流分量同时也影响后级放大电路,使放大电路对电压放大的能力降低。

为不增加电路设计复杂性,滤除直流模块仅使用电阻电容(RC)无源滤波电路,通交流阻直流。滤直流模块需紧随FPGA输出端,由于FPGA输出电流小,使得滤除直流模块的能耗较小;同时,保证后级运放的信号放大能力不受直流分量影响。

2.3 运放滤波模块

运放滤波模块作用主要有3点:滤除数字信号方波中的所有高次谐波,输出频率为f0的近似标准正弦波,稳定后级测量电路;放大载波源信号,提高正弦载波的电压有效值,从而提高后级测量电路灵敏度;保证输出电流,差动式电涡流传感器工作电流在12~15 mA,使用的运放最大短路电流100 mA,因此可同时驱动磁轴承多路差动传感器。经过运放处理模块输出的载波信号可以保证幅值和频率的稳定性。

本文使用的FPGA芯片输出信号最大电压为3.3 V,管脚最大驱动电流为12 mA。选取合适的运放滤波芯片可以间接保证FPGA数字载波的带载能力。

2.4 测量电路

实际测量电路使用图 4的基于电感电容(LC)谐振电路的差动测量方式。L1L2为差动测量电路中两个传感器的等效电感,L1=L2=LR1R2为传感器等效电阻,R1=R2;载波源信号频率为f0,选择电容C使被测体距电路无穷远时电路产生谐振。

图 4 差动测量电路

忽略线圈电阻Ri,得到测量电路的电压方程为

$ \frac{{2{u_i}{X_2}}}{{{X_1} + {X_2}}} = {u_o}-{u_i}. $ (1)

其中

$ \left\{ \begin{array}{l} {X_i} = \frac{{{X_{{C_i}}}{X_{{L_i}}}}}{{{X_{{C_i}}}-{X_{{L_i}}}}}, \\ {X_{{L_i}}} = \omega {L_i} = \omega (L-{L_i}). \end{array} \right. $ (2)

i代表两个传感器的编号,i=1, 2;Xi为传感器线圈等效阻抗;XCiXLi分别为旁路电容和传感器等效电感的阻抗; li为传感器在测量过程中等效电感变化量;ω=2πf0。最后得输出电压为

$ {u_o} = \frac{{{l_1}-{l_2}}}{{{l_1} + {l_2}-\frac{{2{l_1}{l_2}}}{L}}}{u_i}. $ (3)

li两变量很小,且随位移线性变化,则变量l1l2的和为定值,可得

$ {u_o} = D({l_1}-{l_2}){u_i}. $ (4)

其中D为常数,因此uo正比于l1l2之差,亦即uoui有很好的线性化关系。

实际应用中,电感内阻Ri不可忽略,对线性化有一定影响;电感变化量li并不是严格线性变化且不是极小量。因此,输出电压与位移间关系并不是严格线性关系,故而实际应用中选取测量平衡点附近的线性化区间作为测量量程。

由于载波源已经预处理为标准的正弦波信号,测量电路输出的响应信号u0也应为标准的正弦波,无需进行滤波整形。因此输出信号可直接进行降噪放大,最后进行检波从而得到位移信息。

3 数字滤波设计

图 5中,数字信号处理主要包括数字检波、数字滤波2个单元,同时包含相位检测和信号放大等辅助模块。FPGA工作时钟频率为fFPGA,A/D采样频率为fad,载波信号频率为f0,因此每个载波信号周期内采样点个数为n=fad/f0。所设计的FPGA工作频率与A/D采样频率一致即fFPGA=f0。因此FPGA可对每一个采集信号进行连续处理。

图 5 数字信号处理设计

3.1 数字检波

常见的硬件电路检波一般采用模拟乘法器同步检波和包络检波等,2种检波模式都可以通过FPGA程序设计进行数字化实现。由于乘法器检波方式数字化设计的片上计算量大,计算消耗时钟长,对测量结果产生的输出相位延迟较大,因此本文采用更经济的倍压包络检波模式进行数字化设计。

倍压包络检波模式如图 6所示,通过求得整个测量信号的上下包络线,计算两包络线的差值,即可消除高频载波信号进而求得实际所需的测量电压信号。

图 6 倍压包络检波

传感器输出电压信号不经过任何处理直接通过A/D采样或者DSP转换为数字信号进入FPGA;FPGA取每n个采样点为一个处理单元,亦即以载波信号的一个振荡周期为一个处理单元;在每一个处理单元中,通过对单元内所有n个测量点进行比较,找出n个信号数据的最大值和最小值2个极值点,所有处理单元提取出来的2个极值点即可组成传感器输出信号的上包络线和下包络线;计算2个极值点的差值得到ui,即为该处理单元所求倍压检波电压值。

数字包络检波设计可以完全消除硬件解调因为器件参数选择不当而带来的失真和高次谐波等问题;同时可以实现高精度高速度的电压测量,测量电压信号输出频率完全可以满足控制器需求。

3.2 相位检测

数字包络检波并未确定信号的相位信息,而相位信息决定了差动测量电路检波输出电压的正负值即转子相对于平衡位置位移的方向。因此需要设计相位检测模块,来确定电压信号的正负值。

差动测量中,转子在平衡位置两个方向的最大位移输出信号相差180°。故相位检测模块主要判断在一个处理单元中,极大值(或极小值)出现点是位于处理单元的前半段还是后半段。图 7中,极大值位于处理单元前半段,可设定输出电压为极大值减极小值,输出正值电压;反之亦然。而实际程序设计中,输出电压符号要配合实际硬件电路来确定。

图 7 极值区间判断

处理单元起始点的选取至关重要,要保证测量过程中极值不会穿过处理单元的边界,避免极值位置的判断出现跳变。对于FPGA输出方波作为测量电路载波源来说,可根据输出方波相位信息以及实际转子零位移调试来进行处理单元边界的选取。

3.3 数字滤波

传感器自身受到的外界干扰以及A/D转换等硬件电路带来的噪声干扰,都会给检波测量模块测量的电压带来一定的扰动,因此需要利用数字滤波来滤除噪声干扰。常用的数字滤波包括简单的算数平均滤波、低通滤波以及中值滤波等[12]。为避免滤波模块计算量过大带来过多的时钟延迟,利用FPGA并行计算语句的特点,采用滑动平均滤波方法。

m个处理单元作为一个算术平均区间,选取区间内每个处理单元输出的测量电压,取平均值后输出uo作为输出电压。每经过n个时钟,亦即检波模块对一个处理单元工作完毕,就对m区间更新一个数据,滑动前进求取平均值,如图 8所示。m的取值越大,滤波效果越明显,但是测量电压的输出延迟也会提高;同时m一般选取2的整数次方,便于FPGA的除法计算。故而实验中m一般选取4或者8。

图 8 滑动平均滤波

3.4 输出电压的延迟

由于检波和数字滤波等都需要消耗一定的时钟来进行相应的算法,因此最后输出电压的时刻与实际电压必有一定的时钟延迟。

检波模块的时钟消耗都在极值选取过程中。对于每一个处理单元来说,均需要n个时钟来进行极值的判断选取,亦即对处理单元内n个测量点全部进行比较。以处理单元中点作为实际电压出现时刻,则经过检波模块输出的电压值延迟为n/2个时钟。

相位检测模块与检波模块并行工作,极值选取结束的同时相位检测也完成了,因此该模块不单独产生时钟消耗。

数字滤波模块是整个信号数字处理设计工作中造成延迟的主要部分。时钟主要消耗在每一次滑动平均计算的取值过程中,每次取值消耗时钟个数为mn。若以长度为m区间的中点做为实际电压出现时刻,则滤波模块造成电压值延迟为mn/2个时钟。

综上所述,信号数字处理模块有m(n+1)/2个时钟延迟。若转子振动频率为frotor,则转子一个振动周期有fFPGA/frotor个时钟,因此输出电压延迟占比为

$ \eta = \frac{{n\left( {m + 1} \right){f_{{\rm{rotor}}}}}}{{2{f_{{\rm{FPGA}}}}}} \times 100\% . $ (5)

调频式传感器的数字查频解调具有诸多缺陷:查频区间内输出信号为固定值,解调信号具有阶梯不连续性;查频区间的宽度无法同时满足解调精度和信号延迟的要求;查频算法会耗费更多的芯片资源和功耗。因此,相比调频传感器的数字解调,本文设计的调幅式数字传感器的解调具有更低的相位延迟、更好的解调速度和数据连续性。

3.5 数字解调带宽

对于传统调幅式模拟信号电涡流传感器,影响测量带宽的主要因素为载波源频率。但是对于本文所设计的数字化电涡流位移传感器,其解调模块所输出信号的频率成为影响传感器带宽的因素。由于数字解调模块中检波处理单元的时长等于载波源的一个振荡周期,因此检波模块输出信号频率与载波源是一致的;同时,滤波模块采用了滑动平均值滤波方法,对解调信号的输出仅有延迟影响,无频率影响。因此所设计的数字解调模块输出测量信号的频率fout与载波源频率是相等的即fout=f0。因此,本文设计的传感器的数字解调带宽仍可视为仅受到载波源信号频率的影响。

根据Nyquist采样定理,数字信号的采样频率必须是所测信号频率的2倍以上,才可能从采样后的数字信号中恢复原来的模拟信号并保证原始信息不丢失。因此传感器带宽flimit应满足条件2flimit < f0。但是为采集信号信息的准确性与完整性,保证电涡流位移传感器的精确性和稳定性,取10倍Nyquist频率,则带宽为

$ {f_{{\rm{limit}}}} = \frac{{{f_0}}}{{20}}. $ (6)
4 实验

实验使用PCB多层板制作的导线圈作为传感器线圈(见图 9a),将两传感器线圈(见图 9b)面对面固定,从而实现对两线圈中间的被测体进行差动测量。实验中使用实心铝块作为被测体。

图 9 传感器的制备

实验以螺旋测微台为框架,搭建传感器测量实验装置,如图 10所示。测量实验中,被测体固定于测量台两传感器中间,传感器固定于螺旋测微计上;通过调整螺旋测微器实现传感器的移动,从而对被测体进行测量。螺旋测微器的精度为0.01 mm。

图 10 测量台架与实验电路板

4.1 载波源信号

实验中使用的传感器探头电感L1=L2=L0= 13 μH,电阻R1=R2=8.25 Ω;传感器旁路电容C1=C2≈ 0.85 nF,根据${f_0} = 1/(2{\rm{ \mathit{ π} }}\sqrt {{L_0}C} )$,FPGA预编程输出方波信号频率f0=1.5 MHz,使得被测体无穷远时传感器测量电路谐振。

图 11为去除直流分量的FPGA输出波形以及滤波后的标准正弦波,由于FPGA的稳定输出,u+u-具有稳定的相位和幅度,保证了载波源稳定性。

图 11 数字方波信号的处理

图 12为差动输出信号,经过滤波整形可得到位移信息。无论是输入载波信号还是测量电路的位移响应输出信号,其频率与幅值都具有很好的稳定性。

图 12 差动输出信号

4.2 数字解调

实验载波信号频率f0=1.5 MHz,FPGA工作频率为fFPGA=60 MHz。因此FPGA的数字信号处理中每个工作单元采样点个数为n=40。选取8个处理单元为一次滤波计算区间即m=8。根据式(6),所设计传感器带宽flimit=75 kHz,而实际磁轴承飞轮的振动频率在1~4 kHz范围内,因此设计传感器完全可满足磁轴承应用;根据式(4),解调输出电压的延迟占比为0.3%~1.2%,该延迟相对于磁轴承转子振动很小。由于FPGA可以同时并行处理磁轴承所有传感器信号,信号不需要排队处理,比传统串行计算进一步降低了延迟,因此设计的数字检波延迟对实际控制系统影响很小。实验中FPGA处理后输出的电压信号经过串口传送到计算机显示并记录;同时,由A/D采集的原始采样点信息,通过FPGA开发程序的SignalTap Ⅱ模块记录并传输进计算机,如图 13所示。通过计算SignalTap Ⅱ记录的数据,与FPGA处理输出的电压信号进行比较,可得FPGA解调后输出的电压值与实际AD采集电压一致,解调程序可正常运行。

图 13 SignalTap Ⅱ模块采集数据

4.3 单传感器测量实验

图 14为单路电涡流传感器在相同被测体下,uo与测量间距x之间的关系。无论是输入载波信号还是测量电路的位移响应输出信号,其频率与幅值都具有很好的稳定性。可以看出,因为传感器的载波信号已经与经典设计一样是正弦波输入,所以对位移有很好的敏感性。

图 14 滤波输出电压与位移

根据线性度计算公式(7),在0~1.5 mm间测量点的线性度为5.98%,在0~1.0 mm间的线性度为3.36%。

$ \delta = \frac{{\Delta {Y_{{\rm{max}}}}}}{{{Y_{{\rm{max}}}}}} \times 100\% $ (7)

因此单传感器测量下,在1.5 mm的测量间隙内,输出电压和测量间隙具有较好的线性化关系。

4.4 差动测量实验

图 15为相同被测体在差动测量总间隙分别为1.2和1.8 mm时,uo与测量间距x之间的关系。uo对位移有很好的敏感性,并在整个测量区间范围内都具有很好的线性化关系。

图 15 不同间隙下的测量输出电压

在0~1.8 mm间测量点的线性度为3.64%,在0~1.2 mm间的线性度为1.84%。相比单路测量,差动测量的线性化程度增强;测量总间隙减小时,单位距离变化下电压变化幅值更大,灵敏度更高。通过电压与位移的定标后,解调后的电压数据可通过查表或公式计算转换为位移,在芯片内部传送给控制器。

5 结论

本文提出了基于FPGA的数字化电涡流位移传感设计。相比传统模拟传感器以及调幅电涡流传感器,该设计具有以下优点:

1) 传感器电路设计简单可靠,在降低测量电路设计成本和功耗的同时,提高了传感器可靠性。

2) 载波源信号频率、相位与幅值稳定,不受外界温度等环境因素干扰。数字解调模块完全替代硬件检波电路,设计可靠,不受外界干扰,无自身噪声带来的误差;无硬件电路参数设计而带来的失真和零点漂移。

3) 传感器具有很好的动态性能。FPGA可同时并行处理多路信号,相位延迟可以得到最大程度的降低;传感器带宽高,完全满足磁轴承应用;数字解调数据可直接在芯片内部传送给控制器,有效提高系统响应速度。

虽然该架构下受FPGA时钟频率(60 MHz)以及模数转换频率(60 MHz)的限制,载波源频率最大仅可设计在1 MHz量级,但是比调频传感器的数字解调仍具有更低的延迟、更好的解调速度和性能。下一步将对传感器的动态性能进行实验设计和验证。

参考文献
[1] DEVER T P, PALAZZOLO A B, THOMAS Ⅲ E M, et al. Evaluation and improvement of eddy current position sensors in magnetically suspended flywheel systems[R]. Hanover, MD:NASA, 2001.
[2] 王海英, 李文龙, 崔玥, 等. 基于电涡流传感器的智能高度控制系统设计[J]. 控制工程, 2008, 15(1): 43–45, 49.
WANG H Y, LI W L, CUI Y, et al. Design of intelligent height control system based on eddy current sensor[J]. Control Engineering of China, 2008, 15(1): 43–45, 49. (in Chinese)
[3] 邓志鹏, 陈向东. 石英晶体振荡器的微处理器温度补偿技术研究[J]. 单片机与嵌入式系统应用, 2012, 12(8): 4–7.
DENG Z P, CHEN X D. Research of microprocessor temperature compensation technique for quartz crystal oscillator[J]. Microcontrollers & Embedded Systems, 2012, 12(8): 4–7. (in Chinese)
[4] 黄庆彩, 祖静, 裴东兴. 基于MAX038的函数信号发生器的设计[J]. 仪器仪表学报, 2004, 25(S1): 321–322.
HUANG Q C, ZU J, PEI D X. Signal generator design with integrated circuit MAX038[J]. Chinese Journal of Scientific Instrument, 2004, 25(S1): 321–322. (in Chinese)
[5] LI L C. Eddy-current displacement sensing using switching drive where baseband sensor output is readily available[J]. IEEE Transactions on Instrumentation and Measurement, 2008, 57(11): 2548–2553. DOI:10.1109/TIM.2008.925004
[6] RODRIGUEZ S, WANG Y X, AKID R, et al. Design of an FPGA-based eddy current instrument for the detection of corrosion pits[C]//Proceedings of 2015 IEEE International Instrumentation and Measurement Technology Conference. Pisa, Italy:IEEE, 2015:705-710.
[7] 董永贵, 孟凡, 张琦. 电涡流传感器的脉冲激励与双参数检测[J]. 仪表技术与传感器, 2009(S1): 221–224.
DONG Y G, MENG F, ZHANG Q. Pulsed excitation and dual-parameter measurement method for eddy current sensor[J]. Instrument Technique and Sensor, 2009(S1): 221–224. (in Chinese)
[8] PASSENBRUNNER J, SILBER S, AMRHEIN W. Investigation of a digital eddy current sensor[C]//Proceedings of 2015 IEEE International Electric Machines & Drives Conference. Coeur d'Alene, USA:IEEE, 2016:728-734.
[9] FEKRI A, NABAVI M, RADELJIC'-JAKIC' N, et al. An eddy-current displacement-to-digital converter based on a ratio-metric delta-sigma ADC[C]//Proceedings of the 40th European Solid State Circuits Conference. Venice Lido, Italy:IEEE, 2014:403-406.
[10] 庞喜浪, 刘刚, 文通. 用于磁轴承位移检测的数字式电涡流位移传感器设计与实验研究[J]. 传感技术学报, 2011, 24(3): 360–364.
PANG X L, LIU G, WEN T. Design and experiment study of digital eddy current displacement sensor used for displacement detection of magnetic bearing[J]. Chinese Journal of Sensors and Actuators, 2011, 24(3): 360–364. (in Chinese)
[11] 李移. 数字式电涡流位移传感器的研制[D]. 西安: 西安科技大学, 2013.
LI Y. The development of the digital eddy current displacement sensor[D]. Xi'an, China:Xi'an University of Science and Technology, 2013. (in Chinese)
[12] 杨剑, 刘光斌. 单片机系统中应用的几种数字滤波方式[J]. 微计算机应用, 2006, 27(1): 114–116.
YANG J, LIU G B. Several ways of digital filtering application in MCU system[J]. Microcomputer Applications, 2006, 27(1): 114–116. (in Chinese)