传感器现场校准测试系统电气系统设计与实现
2014-04-13翁俊礼常超陈碧海李勇
翁俊礼,常超,陈碧海,李勇
(北京遥测技术研究所,北京100076)
0 引言
本文主要论述传感器现场校准测试系统电气系统的原理组成和硬软件实现。该传感器校准测试系统(以下简称测试系统)由气路系统和电气系统两部分组成。气路系统用于为各压力传感器提供标准压力气体,电气系统完成控制和数据采集等工作。
1 技术指标要求
1.1 被测件主要指标
1.1.1 脉冲频率输出式压力传感器
1)此传感器为密封表压传感器,输出脉冲量与被测压力对应关系为
式中:f 为输出;f0为零位;p 为被测压力(绝压);K为灵敏度;p0为当地大气压力。
2)量程、零位和灵敏度:10 MPa,100 ~350 脉冲/s,(1000±20)(脉冲/s)/MPa。
3)误差:不大于1% FS。
1.1.2 压力开关
1)压力开关开关触点通断压力值和过压能力:(2±0.2)MPa,16 MPa。
2)压力开关响应时间(从敏感元件感受到接通压力值至压力开关触点可靠接通):不大于30 ms。
1.1.3 磁敏行程开关传感器
1)磁敏行程开关传感器输出信号保持时间(敏感到磁场后开关触点闭合并保持闭合状态的持续时间):大于1 s。
2)磁敏行程开关传感器输出信号接通响应时间(敏感到磁场至开关触点闭合的时间):不大于10 ms。
1.2 现场校准测试系统主要指标要求
1)脉冲频率输出式压力传感器输出脉冲计数误差:±1 个。
2)压力开关触点接通、断开压力值测试误差:±0.05 MPa。
3)压力开关响应时间测试误差:±2 ms。
4)磁敏行程开关传感器输出信号保持时间测试误差:±15 ms。
5)磁敏行程开关传感器输出信号接通响应时间测试精度:±1 ms。
此外,测试系统需通过GJB151A-97《部分电磁兼容性试验》、GB/T17626.4-2008《电快速瞬变脉冲群抗扰度试验》和GB/T17626.5-1999《浪涌冲击抗扰度试验认证》。
2 电气系统原理组成及功能
2.1 电气系统组成
电气系统采用基于RS-232 串口通信实现的上、下位机模式,主要由测控电路、压力传感器、大气压力传感器、精密数字压力表、计算机、打印机、电源等组成。电气系统原理组成如图1所示。
图1 电气系统原理框图
2.2 主要模块功能
1)测控电路:多路直流供电电压信号采集、压力传感器输出模拟电压信号采集、开关量信号采集、脉冲频率输出式压力传感器脉冲量计数;通过I2C 接口与大气压力传感器通信,通过RS-485 接口与精密数字压力表通信;通过SPI 接口将处理后的压力传感器信号送LED 显示压力值;通过I/O 接收外系统的控制信号;通过I/O 接口驱动电磁阀;通过RS-232 接口与计算机通信,接收计算机发出的指令和数据,将控制参数和压力传感器校准数据写入非易失性Flash 存储器之中,将采集的数据传送给计算机处理。
2)压力传感器:用于压力开关的静态性能和动态性能测试。
3)电磁阀:用于压力开关动态特性测试。压力开关响应时间测试方法基于快开阀门式原理。响应时间测试过程中,电磁阀快速开启,使高压气瓶中的高压气体通过引压管快速充满基准压力传感器和压力开关的测压腔[1-2]。
4)精密数字压力表:脉冲频率输出式压力传感器静态性能测试中作为压力基准。
5)大气压力传感器:用于测量当地大气压力值p0,以修正脉冲频率输出式压力传感器因测试地点不同而引起的零位f0误差。
6)计算机:向下位机发送各种控制指令和数据,接收下位机送来的测试数据,将原始数据存入(.txt)文本文件中,将处理后的结果存入ACCESS 数据库。在上位机测试软件中实现测试结果组合条件查询和打印。
3 硬件电路实现
硬件电路的研制主要集中于测控电路的开发,在本项目中我们选用片上资源丰富、功能齐全的C8051F131 作为测控电路的核心。
C8051F131 是高度集成的混合信号系统级(SoC)MCU 芯片,具有基于增强的CIP-51 内核,其指令集与MCS-51 完全兼容,采用流水线结构,70%的指令执行时间为1 到2 个系统时钟周期,丰富的片上资源和外部设备接口(8 路10 位100 KSps 的ADC,1×I2C,2× UART,6 路可编程计数器阵列PCA,1× SPI,128KB 非易失性Flash 存储器)完全满足本项目需要。片内JTAG 调试电路支持非侵入式(不占用片内资源)在系统调试,方便硬件调试开发工作。
3.1 与被测产品直接相关的硬件电路实现
这部分电路包括数据采集通道和控制通道。数据采集通道用于采集各传感器的电信号输出,电路实现见图2 和图3。图中的光电耦合电路主要用于输入信号整形。
图2 开关量前向输入通道
控制通道用于压力开关响应时间测试过程中,驱动电磁阀的开启与关闭。在磁敏行程开关传感器响应时间测试中激励线圈产生磁场,磁敏行程开关传感器敏感到磁场从而推动开关触点闭合。控制通道电路实现见图4。图中的二极管用于消除感性负载反向电压对继电器的影响。
图3 脉冲频率量前向输入通道
图4 控制通道电路实现
3.2 基准压力传感器的选择
基准压力传感器作为压力开关静态性能和动态性能的测量基准,其性能直接影响压力开关测试结果的精度。
考虑到压力开关的静态和动态指标要求,选用我所自研生产的离子束溅射薄膜式表压压力传感器。此传感器为模拟电压输出,量程12 MPa,满量程输出(4.8±0.1)V,误差1% F.S,响应频率约800 Hz。此基准传感器在1 ~3 MPa 区间的绝对误差优于±0.05 MPa,满足静态性能(通、断点压力值)测试要求。
基准压力传感器的输出与被测压力之间为线性关系,工作直线方程为
基准传感器需定期进行校准,并将校准数据通过上位机测控软件写入下位机的Flash Memory 之中。
响应时间测试中,开启电磁阀,高压气瓶中的高压气体通过引压管快速充入基准压力传感器和压力开关的测压腔,同时启动ADC 对基准压力传感器的输出和压力开关触点通断状态进行高速采样。计算基准压力传感器达到接通压力值的时刻与压力开关触点接通时刻之间的时间差,得出压力开关的接通响应时间。图5 为压力开关响应时间实际测试结果。当电磁阀入口压力为6.5 MPa 时,基准压力传感器输出电压从0 V上升至1 V(对应压力开关接通压力值)的时间约800 μs,压力开关接通响应时间约23 ms(此测量结果包含基准压力传感器响应延时和引压管效应的综合影响[3]),与压力开关计量标定数据比对,测量误差满足±2 ms 要求。
图5 压力开关响应时间测试
3.3 其他硬件电路实现以及电磁兼容性设计考虑
测试系统中除了与被测产品直接相关的硬件电路外,测控电路还包括其他与压力传感器、精密数字压力表、大气压力传感器、外系统控制信号的接口电路。
此外,为确保测试系统在测试现场不受外接电磁干扰影响并满足电磁兼容性要求,测试系统采用定制的线性直流一体化AC/DC 电源为测控电路供电,AC/DC 电源中采取措施以满足国军标和国标中与供电电源相关试验条款的要求。
测试系统中的电磁阀(工作电压27 V,工作电流1 A)由AC/DC 电源中单独回路供电,以避免电磁阀动作电流对测控电路其他部分造成影响。
由于测试系统与基准压力传感器和被测件之间存在约5 m 的距离,因此所有电信号传输电缆均采用屏蔽电缆。
还有一些其他的抗干扰措施,由于篇幅所限,在这里不作详细介绍。
4 软件实现
电气系统软件包含运行于计算机的上位机测控软件和运行于C8051F131 单片机之中的嵌入式软件。
4.1 上位机软件
上位机测控软件在Visual C++6.0 环境下开发,基于CFormView 基类实现的视图对话框应用程序,运行于Windows XP 操作系统之上,上位机测控软件通过MSComm 控件与下位机通信,通过ADO 组件与ACCESS 数据库交互并将处理后的数据存入数据库之中,测控软件结构见图6[]。模块分开。源代码文件组织如图7,各文件实现的功能接口如表1。
图6 上位机软件框架结构图
图7 下位机文件组织
基于Windows 图形界面风格的测控软件便于用户快速掌握和使用。
4.2 下位机软件
下位机程序在KEIL C 开发环境下使用C 语言编写完成,在软件开发过程中贯彻结构化软件设计思想,并借鉴C++面向对象语言的对象封装特性,尽量减少各功能模块间的耦合,源文件的组织上,也将各功能
在下位机程序设计上还借鉴多线程概念(尽管C8051F131 不支持多线程),在main(void)主函数的主循环中启动两个并行循环,称之为“主线程”(主任务队列)和“辅线程”(端口任务队列),上位机直接发送的所有命令及一些与端口无关的操作置于“主线程”中。“主线程”根据任务特点,将一些与时间紧密相关的I/O 端口操作置于“辅线程”之中,“主线程”可以随时终止“辅线程”的运行,如此安排使下位机软件结构清晰,流程顺畅,源代码易于阅读,软件的升级、裁剪、扩展和移植更轻松。
表1 各文件实现的功能接口
借助于面向对象程序设计软件工程中的“序列图”可展示压力开关接通响应时间测试流程中主、辅线程间的交互,序列图[8]见图8。
图8 主循环中主辅线程序列图
在下位机程序中,串口数据接收具有最高中断优先级,串口将上位机发送的“压力开关接通响应时间测试”命令赋于主线程。主线程经过最多约15 μs(一个主任务队列查询循环)的延迟后设置辅线程任务标志为“YK_TIME_CAP(压力开关响应时间捕获命令)”,辅线程经过最多约5μs(一个端口任务查询循环)的延迟后检测到任务标志为“YK_TIME_CAP”,立即开始计时并启动Yk_TimeCap()函数对基准压力传感器和压力开关触点对应的I/O 进行高速采集。Yk_TimeCap()函数检测到基准压力传感器达到压力开关触点接通压力值的时刻和I/O 端口状态变化(或经过一定的超时时间间隔)后,通过变量port3_state 向辅线程返回I/O 端口状态变化情况,“辅线程”停止计时并计算压力开关触点接通响应时间(或置压力开关触点接通响应时间测试超时标志)。在辅线程中置主线程任务标志为“YK_TIME”,主线程向上位机发送压力开关接通响应时间测试数据(或压力开关触点接通响应时间测试超时标志)。至此,“压力开关接通响应时间测试”任务结束。
序列图主线程实现代码如下:
序列图辅线程实现代码如下:
5 结束语
文本总结了传感器现场校准测试系统电气系统的硬件和软件设计,对硬件和软件总体架构做了介绍,并给出部分硬件电路详细设计和部分软件代码。传感器现场校准测试系统对脉冲频率输出式压力传感器、压力开关和磁敏行程开关传感器的实际测试结果满足技术指标要求。该传感器现场校准测试系统参加了火箭各工程阶段的现场测试试验,达到预期功能要求和测试精度。
[1]黄俊钦.实用建模方法及其应用:下册[M].北京:北京航空航天大学出版社,1986.
[2]赵鹤龙,丛森.动态压力校准概述[C]// 8712 动态计量测试研讨会论文集.北京:中国航空学会测试专业委员会,1987.
[3]叶挺,梁庭,张文栋.压力测试中引压管的动态特性研究[J].中北大学学报:自然科学版,2011,32(2):222-226.
[4]刘晓华.精通MFC[M].北京:电子工业出版社,2003.
[5]Eugene Kain.The MFC Answer Book[M].北京:中国电力出版社,2001.
[6]李朝青.PC 机及单片机数据通信技术[M].北京:北京航空航天大学出版社,2002:204-218.
[7]田敏,郑瑶,李江全.Visual C+ +数据采集与串口通信测控应用实战[M].北京:人民邮电出版社,2010:157-190.
[8]Grady Booch,James Rumbaugh,Ivar Jacobson.UML 用户指南[M].北京:机械工业出版社,2002:165-174.