CPU卡预付费多声道超声波流量计的研究
2020-09-01董文润黄书成
董文润,黄书成
(天信仪表集团有限公司,浙江 苍南 325800)
0 引言
近年来,超声波流量计以其非接触测量、无可动部件、无压力损失、超低始动流量、超高计量精度和智能化应用等优势,成为燃气企业追捧的对象。目前,城市燃气计量预付费计量仪表主要以涡轮流量计与腰轮流量计为主,燃气企业在用的超声波流量计不具有预付费的功能,需另外配预付费控制器才能实现预付费功能。基于上述原因,研制了一款CPU 卡预付费多声道超声波流量计。
1 系统结构与工作原理
1.1 CPU卡预付费超声波流量计系统
CPU 卡预付费超声波流量计系统框图如图1 所示,主要由基表、超声波计量模组和CPU 卡补偿控制器3 部分组成。超声波计量模组定时对超声波信号进行处理,计算工况流量,同时采集温度、压力并将采集结果传输给修正仪。控制器集CPU 卡操作、体积修正计算、阀门控制于一体,内嵌ESAM 安全芯片,对CPU 卡的每一步操作都要安全认证,安全性高,并采用EEPROM 数据存储技术,具备历史数据查询和存储功能。修正仪带RS485 通信接口,可与其他二次仪表或计算机联网,进行数据传输。
图1 CPU卡预付费超声波流量计系统框图Fig.1 CPU Card prepaid ultrasonic flowmeter system block diagram
1.2 气体超声波流量计基本工作原理
超声波流量计以测量声波在流动介质中传播的时间与流量的关系为原理,通常认为声波在流体中的实际传播速度是由介质静止状态下声波的传播速度和流体轴向平均流速在声波传播方向上的分量组成[1]。
本文研究的CPU 卡预付费多声道超声波流量计采用“时差法”测量流速。首先,使用探头A 发射信号,信号穿过流体后被另一侧的探头B 接收到,测得传输时间tAB;在探头A 发射信号的同时,探头B 也发出同样的信号,经过流体后被探头A 接收到,测得传输时间tBA。由于流速的存在使得tAB和tBA存在时间差,根据此时间差便可求得流速,进而得到流量值。
按图2 所示,顺流和逆流传播时间与各量之间的关系是:
本文研究的CPU 卡预付费多声道超声波流量计采用多声道设计,能够对涡流和不对称流进行检测,消除传感器和处理电路的不确定固有延时,具有高抗噪性、测量精确等特点。同时,多声道可以作为冗余备份,即使个别传感器损坏,气体超声波流量计仍能正常工作,极大提高了检测的可靠性。
2 硬件设计
2.1 超声波信号采集检测
图2 声速测量示意图Fig.2 Schematic diagram of sound velocity measurement
图3 多声道示意图Fig.3 Schematic diagram of multi-channel
图4 超声波信号采集原理框图Fig.4 Block diagram of ultrasonic signal acquisition principle
选择超声换能器A 作为发送源,MCU 触发升压电路使能,产生10V 交流电压给超声换能器A 供电,超声换能器A 通过声道将电能转换为声能;相对应超声换能器B 将接收到的声波信号转换为电信号,超声换能器B 作为接收源,接收到的信号电压范围在-20mV ~+20mV,经过二级放大,电压范围在-2V ~+2V,再经过比较电路将正弦波转换为方波。时间计算芯片采集到方波信号,计算三组时间值,通过三组时间可计算出超声换能器的信号频率以及飞行时间。信号频率为超声换能器发出的声波频率,如果采样的频率不在超声换能器声波频率范围,则可作为干扰信号处理。当超声换能器B 作为发射源时,超声波信号采集流程与超声换能器A 作为发射源时的流程相同。
图5 开阀控制原理框图Fig.5 Block diagram of valve opening control
MCU 采集两次飞行时间用于计算气体流速,超声波飞行时间计算采用时间数字转换器实现超声波发射、接收和计时。
2.2 阀门控制接口
阀门接口电路主要由限位开关、阀电池、电机控制电路组成,MCU 通过检测限位开关来判断阀门状态[2]。图5为开阀控制原理框图。开阀时,MCU 给电机控制电路发送正向打开信号,电机经过齿轮传动开阀;当检测到限位开关到位时,停止供电,完成开阀。
3 软件总体设计
流量补偿控制器采用的是超低功耗的MSP430 单片机,在休眠状态下,工作电流在100uA 以下。正常工作情况下,17A*h 锂电池可保证控制器工作5 年。图6 为控制器程序总体框架,MCU 平时处于休眠或待机模式,当有外部按键中断、流量信号采集中断和串口通讯中断时MCU 退出低功耗状态,做出响应。软件设计采用前后台结构、模块化设计,各个功能模块均为独立模块。当有事件触发时,由主程序调用执行相应的功能模块。
卡操作程序是流量计预付费功能得以实现的最重要部分,CPU 卡操作部分均在此程序基础上完成。CPU 卡操作过程是由卡命令发送与接收操作组成,在接收与操作命令时严格遵守ISO7816 标准[3]。图7 为插卡操作流程图,CPU卡的每一步操作都需要进行安全认证。
图6 控制器程序总体框架Fig.6 Overall framework of the controller program
图7 插卡操作流程图Fig.7 Card operation flowchart
图8 CBC模式加密过程Fig.8 CBC Mode encryption process
4 密文传输
CPU 卡预付费超声波流量计中超声波计量模块作为独立模块,自带MCU,主要实现温度、压力和超声波信号采集,计算工况流量,并将采集信息传输到控制器。流量补偿控制器与超声波计量模块通讯采用加密传输,保证了传输数据安全可靠。
加密算法采用分组密码模式CBC(Cipher Block Chaining),即密文分组链接模式。CBC 模式是将前一密文分组与当前明文分组的内容进行XOR 运算,然后再进行加密。CBC 模式每一次加密都需要前一个密文块参与,明文中微小的改变都会使后续所有密文改变。无法从密文看出明文的规律,安全性得以提高。
初始化向量IV:初始化向量IV 总共10 组。
明文片段:将需要加密的明文片段分成若干个明文片段,每个明文片段8 字节。
图9 CBC模式解密过程Fig.9 CBC Mode decryption process
加密算法:加密算法也采用异或算法,使用明文异或IV 的结果与密钥进行异或计算。密钥:密钥长度为8 字节,共10 组,每次加解密时选择其中一组。
5 结束语
本文设计了一种CPU 卡预付费多声道超声波流量计,采用多声道设计,该流量计各声道可以进行声速比对,如果差值过大,可以给出报警信息。同时,集CPU 卡操作、体积修正计算和阀门控制于一体,结构紧凑,可靠性高。