APP下载

基于cRIO的瞬时转速测量方法研究

2018-01-05

湖北汽车工业学院学报 2017年4期
关键词:输入法测量误差编码器

(湖北汽车工业学院 汽车工程学院,湖北 十堰 442002)

基于cRIO的瞬时转速测量方法研究

胡建,金阳

(湖北汽车工业学院 汽车工程学院,湖北 十堰 442002)

为了实现利用增量式光电编码器对发动机曲轴瞬时转速的精确测量,提出了一种采用数字输入法测量瞬时转速。以cRIO板载的FPGA时钟作为时钟计数器,光电编码器脉冲作为触发计数器信号,实现光电编码器脉冲一个周期的计数,近而得到精确的瞬时转速。在1 000 r∙min-1转速下,随着采样频率增大,模拟输入法测量瞬时转速精度可以提高48%;模拟输入法测量该转速的误差达到1.772 r∙min-1,而数字输入法误差为0.32 r∙min-1。在2 000 r∙min-1转速下,随着FPGA时钟频率的倍增,测量的转速越接近2 000 r∙min-1。由测量结果可以看出数字输入法和提高FPGA时钟频率对提高瞬时转速测量精度有重要意义。

cRIO;FPGA;增量式光电编码器;瞬时转速

瞬时转速信号中包括了大量的发动机运行状态信息,但凡影响发动机运行的参数都可以通过瞬时转速间接表现[1]。内燃机的瞬时转速曲线反应了转速随曲柄转角变化的关系[2]。瞬时转速测量中,绝对的转速是不可能采集到,通常是利用某时刻起较小的曲轴转角内转速的均值近似代替瞬时转速[3]。文中利用cRIO-9118机箱上FPGA时钟脉冲作为待计数脉冲,光电编码器脉冲作为计数触发信号,通过在NI CompactRIO-9025上运行的上位机实现计数数据处理,从而得到近似的瞬时转速信号,并且通过理论误差和实验采集数据误差分析,提出了提高测量瞬时转速精度的方法。

1 瞬时转速测量方案

1.1 瞬时转速测量原理

瞬时转速的提取方法通常有数字输入法(硬件计数法)、模拟输入法(软件法)和频谱分析法[4]。

数字输入法主要是利用晶振的时钟脉冲或者通过移相实现更高频率的脉冲对编码器脉冲在一个周期内进行计数。硬件计数法可以实现高频计数,其原理如图1所示。光电编码器安装在测量部件上,根据编码器线数的差异,在360°转角内产生等角度间隔脉冲,利用编码器旋转一圈的脉冲计数值和晶振的频率就可以计算出瞬时转速。

图1 数字输入法原理

模拟输入法即通过数据采集卡直接对测速传感器的电压信号进行采样,将采集的数据保存在文件中,然后经过数据处理得到瞬时转速。软件技术法测量瞬时转速的精度与采样频率有较大关系,若采样频率过低,则无法得到传感器实际波形,就会导致采集的数据失真,因此合理的采样频率对减少测量误差是至关重要的。

频谱分析法是对采集的振动时域信号进行快速傅里叶变换(FFT)[5],从频谱图中得到固有频率,通过系统的一些特征参数,计算得到瞬时转速,即临界转速。

文中瞬时转速测量采用的方法是以FPGA时钟脉冲为待计数脉冲,对接入C模块NI9411 DI0和GND的I/O接口输入的编码器脉冲为计数触发信号,当触发条件满足时,就会对FPGA时钟脉冲进行高频计数,NI cRIO9025实时控制器将DAM FIFO中计数数据读取到实时处理器中,经过计算得到测量的瞬时转速。选择NI的硬件实现高频计数法可以增加测量系统的快速动态响应,克服了频率/周期法(M/T法)需要较长的时间来保证结果的准确性,瞬时转速测量的动态响应得到满足。

1.2 瞬时转速测量硬件选择

CompactRIO(cRIO)是一款可重配置的嵌入式测控系统,由实时控制器(RT)、C系列I/O模块、FP⁃GA组成,具有-40~70℃的宽工作温度范围,50 g冲击评级以及各类安全、电磁兼容性和环境指标的国际认证和评级[6]。cRIO拥有模拟采集、数字采集的C模块,可实现各种数据采集和预处理。文中利用cRIO高可靠性、实时操作系统(RTOS)的实时性[7]及FPGA较高的时钟频率优势,采集瞬时转速,硬件如图2所示。LabVIEW FPGA编程不需要掌握Verilog或VHDL高级编程知识,采用图形化编程,便于非硬件编程专业人员使用。通过采集VI程序的仿真计算,观察是否满足测量要求;当采集VI不能满足要求时,利用FPGA可重配置,重新编写FP⁃GA VI,节省硬件开发时间,达到测量要求。

图2 CRIO 9025采集硬件

2 数字输入法测量理论误差分析

瞬时转速测量误差主要来自于在编码器脉冲触发计数开始时,FPGA时钟脉冲的上升沿(下降沿)无法与编码器脉冲上升沿(下降沿)同步,FPGA时钟脉冲计数值就会多一个或者少一个,即计数误差的范围为[-1,1]。

编码器每个脉冲所用的时间为

瞬时转速的计算公式为

绝对误差为

由于-1<Δk<1,所以

由式(2)和式(4)可得

式中:fCLK为FPGA的时钟频率,Hz;l为光电编码器的线数;n为瞬时转速,r∙min-1;Δn为绝对误差;k为相邻2个编码器脉冲上升沿(下降沿)的FPGA时钟脉冲计数;Δk为计数误差;t为编码器每个脉冲所用的时间。

从式(5)中可以得出:当l确定后,n稳定时,fCLK越大,|Δn|越小,此时测量误差就越小;当fCLK和l确定后,n对k产生影响,当n越大,光电编码器发出的每个脉冲信号周期就越小,使k越小,从式(4)~(5)可以看出:|Δn|越大,此时测量误差就越大;当fCLK确定后,n稳定、l提高后,会造成|Δn|增大,此时测量误差增大。为提高转速的瞬时性,希望l越大越好,因此提高时钟频率是高精度测量转速的必须途径,尤其对于高转速而言。

3 数字和模拟输入法测量软件设计

3.1 数字输入法

数字输入法瞬时转速测量软件设计部分从FPGA VI(图3)和Host VI(图4~5)设计。

图3 FPGA VI程序框图

图4 Host VI配置程序框图

图5 Host VI数据处理程序框图

FPGA VI中“定时循环”while函数控制整个采集程序的开始和中断,此函数的循环周期与FPGA的板载时钟周期相同。“时间计数器”函数、“移位寄存器”和“条件结构”函数共同作用,实现编码器脉冲计数。以NI9411的DI0采集的脉冲电平与前一次采集的脉冲电平进行“大于”比较函数运算,其结果作为条件结构“选择器端子”的判断条件。若编码器脉冲为下降沿或者电平不变时其运算结构为假,则不作任何运算;若编码器脉冲为上降沿时其运算结构为真,则将当前“时间计数器”值与前一次保存在“移位寄存器”的值做减法运算,运算值就为一个编码器脉冲的计数值。计数值通过DAM FIFO传输到RT中,以便Host VI进行数据处理。

Host VI通过软件配置实时处理器(图4),先打开FPGA编译的位文件,然后配置读取DAM FIFO中数据个数,运行“读写FPGA控件”函数读取FIFO中的数据,利用式(2)计算瞬时转速。Host VI包含理论瞬时转速计算的程序,通过理论转速计算与实际测量结果进行对比,验证数据采集的准确性。

3.2 模拟输入法

图6为FPGA VI程序框图,利用“平铺式顺序结构”函数和“循环定时器”函数来控制while循环的循环速率,此循环速率即模拟输入法的采样频率。通过NI 9201的AI0和COM端采集模拟输入法的电压信号,其值通过DAM FIFO传输到RT中,以便Host VI进行数据处理。

图7为RT VI数据处理程序,实时处理器配置与数字输入法类似。利用“采样率至循环时间”函数将设置的采样频率转换为FPGA VI中的循环时间,进而将此循环数据传输至FPGA VI中,控制其循环速率,即采样数据的频率。模拟数据采集主要利用LabVIEW中声音和振动模块中的SVPO Scale Voltage to EU.vi和 SVPO Analog Tacho Process.vi将电压转换为实际测量的转速。计算实际测量的转速时,需要合理配置实际的采样频率、标准的测量单位、滤波器类型、阈值、滞后值等参数来减少模拟测量的误差。

图6 模拟采集FPGA VI程序框图

图7 模拟采集RT VI程序框图

数字输入和模拟输入测量软件需要运行在测量硬件中,FPGA VI运行在cRIO机箱上,RT VI运行在实时控制上。实际测试中利用“EE1641B1型函数信号发生器/计数器”模拟光电编码器产生的脉冲信号。cRIO与PC通过网线连接,C模块安装在cRIO的机箱上,通过采集线与信号发生器TTL/CMOS输出端口连接,硬件连接图如图8所示,模拟输入法和数字输入法硬件连接类似,区别在分别采用NI 9201和NI 9411 C模块。

图8 模拟采集硬件连接

4 数字和模拟输入法测量结果比较

4.1 数字输入法优势

设定目标转速为1 000 r∙min-1,编码器线数l为1 024线,将编码器的接线端分别接入NI 9201的AI0和COM接线端以及NI 9411的DIO和GND接线端,运行上位机,采集编码器脉冲,通过处理得到测量结果。理论上计算编码器脉冲频率为17 kHz,根据Nyquist,s Theorem定理,采样频率fs至少为脉冲频率的2倍,大于34 kHz。因此fs分别取60 kHz、70 kHz、80 kHz、90 kHz。测量结果如图9所示:当fs为60 kHz时,采集的转速为514±0.2 r∙min-1,此时测量结果与目标转速相差甚远,测量误差达到48.6%。当增大fs时,瞬时转速测量结果越接近于真实值,但是由于模拟数据采集卡的采样频率有限,所以模拟采集并不能得到较高精度的瞬时转速。图9中数字采集测量曲线接近目标转速曲线,|Δn|最大值为0.32 r∙min-1,与90 kHz采样频率的模拟测量|Δn|最小值为1.772 r∙min-1相比,极大地提高了测量精度。

图9 模拟/数字采集测量结果

4.2 数字输入法测量精度的提高

创建FPGA的衍生时钟,使FPGA待计数脉冲的频率fCLK为40 MHz、80 MHz、120 MHz、160 MHz,分别测量2 000 r∙min-1瞬时转速,测量瞬时转速的结果如图10所示。测量结果显示,随着FPGA的待计数脉冲频率的倍增,测量结果越来越接近目标转速,测量误差越来越小,所以通过倍频也可以减少瞬时转速测量误差。

图10 数字输入法测量结果

5 结论

通过理论分析和实验测量可知,利用NI公司的cRIO测量硬件,结合LabVIEW图像化编程语言优势,可以从2个方面提高瞬时转速测量精度:通过LabVIEW进行FPGA编程,采用数字C模块硬件,进行数字采集瞬时转速,可以提高瞬时转速测量精度;此外,也可以通过LabVIEW项目中的FP⁃GA时钟来新建FGPA衍生时钟,实现时钟倍频,以减少测量误差,提高测量精度。

[1]李娟.内燃机瞬时转速信号的研究[D].济南:山东大学,2009.

[2]王海,彭忆强,韩志强,等.多缸柴油机瞬时转速与各缸一致性分析[J].中国测试,2015,41(8):122-128.

[2]李浩.利用瞬时转速和扭振信号诊断柴油机故障的应用研究[D].武汉:武汉理工大学,2005.

[3]曹青松,俞爱兰.高精度转速测量新方法的研究[J].机床与液压,2010(17):38-39.

[4]Kazimierz Orlowski,Jakub Sandak,Chiaki Tanaka.The critical rotational speed of circular saw simple measure⁃ment method and its practical implementations[J].Jour⁃nal of Wood Science,2007(5):388-393.

[5]王少君,刘永强,杨绍普,等.基于光电编码器的测速方法研究及实验验证[J].自动化与仪表,2015(6):68-72.

[6]国家标准(GB)题录(下)[J].世界标准息,2005(4):12-80.

[7]陈树学,刘萱.LabVIEW宝典[M].北京:电子工业出版社,2011:489-490.

Research on Instantaneous Speed Measurement Methods Based on cRIO

Hu Jian,Jin Yang
(School of Automotive Engineering,Hubei University of Automotive Technology,Shiyan 442002,China)

A method of precise rotary speed measurement with digital input method was proposed to im⁃prove the measurement accuracy of rotary speed of engine crankshaft measured with incremental photo⁃electric encoder.To get accurate instantaneous speed,it is necessary to achieve a periodical count about photoelectric encoder pulse,considering cRIO onboard FPGA clock as a clock counter and photo⁃electric encoder pulse as a trigger counter signal.At 1 000r∙min-1speed,with sampling frequency in⁃creasing,the instantaneous speed accuracy measured by analog input method can be improved by 48%;the error was 1.772 r∙min-1which analog input method measures speed,however,the error about digital input was 0.32 r∙min-1.At 2000 r∙min-1speed,the measured speed was closer to 2000 r∙min-1with the FPGA clock frequency multiplier.The results show that digital measurement and increasing FPGA clock frequency are important to improve the measurement accuracy of instantaneous speed.

cRIO;FPGA;incremental photoelectric encoder;rotary speed

TK407

A

1008-5483(2017)04-0053-05

10.3969/j.issn.1008-5483.2017.04.012

2017-09-02

胡建(1991-),男,湖北襄阳人,硕士生,从事汽车电子方面的研究。E-mail:814301214@qq.com

猜你喜欢

输入法测量误差编码器
融合CNN和Transformer编码器的变声语音鉴别与还原
密度测量误差分析
要命的输入法
纵向数据下变系数测量误差模型的渐近估计
找回微软拼音输入法设置
输入法顺序听我使唤
基于双增量码道的绝对式编码器设计
应用旋转磁场编码器实现角度测量
百度被诉侵犯商标权和不正当竞争
基于数字信号处理的脉冲编码器