基于CPU卡的燃气表控制系统设计

2016-01-20 01:35马涛高宇康杨术明
关键词:燃气表认证模块

马涛,高宇康,杨术明

(1.宁夏大学机械工程学院,宁夏银川 750021;2.银川天佳能源科技股份有限公司技术研发中心,宁夏银川 750200)

基于CPU卡的燃气表控制系统设计

马涛1,高宇康2,杨术明1

(1.宁夏大学机械工程学院,宁夏银川750021;2.银川天佳能源科技股份有限公司技术研发中心,宁夏银川750200)

摘要:针对采用逻辑加密卡的燃气表安全保护措施缺乏、加密性差等问题,采用模块化的设计方法,进行基于CPU卡的燃气表系统设计,完成CPU卡接口模块、ESAM模块、显示模块的硬件电路设计及CPU卡的内部认证、外部认证等系统软件的开发,实现智能燃气表与CPU卡的信息交换、液晶显示、阀门关断、流量检测、燃气费用计算以及预付费等功能,提高了燃气表用户数据的安全性.

关键词:燃气表; CPU卡; ESAM 模块; 认证

DOI:10.3969/j.issn.1000-1565.2015.02.018

中图分类号:TP273

文献标志码:志码:A

文章编号:编号:1000-1565(2015)02-0210-07

Abstract:Aiming at the problem that the gas meter, equipped with logic encryption cards, lacked safety protection measures and poor encryption, a CPU-card-based gas meter was designed with the help of modular design method. The hardware included CPU card interface circuit, ESAM module circuit and LCD display circuit. The software mainly included internal authentication and external authentication. The whole system realized the information exchanging between gas meter and CPU card, information display with LCD ,valve control,gas flow checking, gas costs calculation and prepayment. User data of the gas meter was well improved.

收稿日期:2014-10-09

基金项目:宁夏回族自治区科技支撑项目(4130196)

通信作者:杨术明(1974-),男,回族,宁夏吴忠人,宁夏大学副教授,博士,主要从事智能化检测与监控技术的研究.

Design of a CPU-card-based gas meter control system

MA Tao1,GAO Yukang2,YANG Shuming1

(1.School of Mechanical Engineering,Ningxia University,Yinchuan 750021, China;

2. Technology R & D Center,Yinchuan Tianjia Energy Technology Co., Ltd., Yinchuan 750200, China)

Key words: gas meter; CPU card; ESAM module; certification

第一作者:马涛(1990-),男,回族,宁夏吴忠人,宁夏大学在读硕士研究生.

E-mail:shmyang@126.com

目前的燃气表大多是存储器卡和逻辑加密卡,其系统的密匙算法安全级别低,无法实现应用单位安全与开发厂商完全脱钩,安全性只能依赖于厂家.逻辑加密卡具有防止对卡中信息随意改写的功能,但由于只进行1次认证,容易导致密码的泄露和伪卡的产生,安全性较低.而装有ESAM认证模块的CPU卡,其安全等级较逻辑加密卡要高[1].CPU卡中有微处理器和操作系统COS(chip operating system),这使得CPU卡具有很高的数据处理和计算能力,大大提高了CPU卡和终端之间相互认证的速度,且当CPU卡进行交易或者对CPU进行读/写操作时,要进行加密和解密运算,其中算法和密钥都很难破解,这保证了CPU卡的安全性[2].这样,整个卡系统的安全性有了质的飞跃,有效防止了伪卡的产生,完全可以满足安全性要求较高的应用场合[3].因此,设计出基于CPU卡的燃气表可有效提高用户数据的安全性.

1系统总体结构设计

CPU卡燃气表以IC卡技术为基础,采用先进的CPU智能卡以及嵌入式安全控制模块 ESAM(embedded secure access model)作为认证数据信息存储和传递的介质,具有很高的安全性和抗攻击性.燃气表总体结构包括硬件和软件2部分.硬件部分主要包括单片机MSP430F4152,CPU卡、ESAM模块、LCD模块、流量检测模块等;软件部分主要包括CPU卡底层驱动程序、内部认证程序,外部认证程序等.通过软件和硬件联合调试,最终实现CPU卡和燃气表之间的信息交换、液晶以及阀门电路的驱动、流量检测、燃气费用的计算、预付费等功能[4].整个系统的结构如图1所示.

图1 总体结构 Fig.1 Overall structure block diagram

单片机MSP430F4152是燃气表的控制核心.CPU卡作为信息的载体,将存储的数据与燃气表中的单片机进行交换,在进行交换之前通过ESAM模块进行安全认证.流量检测模块主要以干簧管作为传感器,检测用气量.LCD为液晶显示模块,主要用来显示剩余气量、电池电压等信息.电源管理模块主要对系统的电源电压进行实时监测,当电源电压低于正常工作电压时,单片机会控制报警器报警从而提醒用户更换电池.阀门电机驱动模块主要用来实现燃气表阀门的打开和关闭,当电池电压过低或者剩余气量不足时,单片机通过控制此模块关闭阀门.

2系统的硬件电路设计

硬件电路设计包括CPU卡接口电路设计、LCD液晶显示电路设计、电源电压检测电路设计、ESAM模块电路设计、阀门电机驱动模块的设计等.

2.1 单片机的选择

目前基于MCS-51系列的8位单片机技术比较完善,应用广泛,但由于其功耗比较大,内部可用的资源比较少,所以MCS-51系列单片机不适合作为以电池为动力的智能仪表主控芯片.由于本次设计的燃气表采用电池供电,因此选用的单片机为MSP430系列超低功耗16位处理器MSP430F4152.这种单片机具有超低功耗、强大的处理能力、丰富的片上外围模块和方便高效的开发调试环境[5-6].

2.2 CPU卡接口电路

本次设计采用北京握奇数据系统有限公司生产的CPU卡(储存用户的个人信息和购气量)作为信息的载体连接用户和燃气表公司.单片机P6.4口控制CPU卡电源是否上电,正常情况下,P6.4口为高电平,当它被拉低变为低电平时,三极管Q3导通,CPU卡上电.卡座内设有一开关,开关的一端接单片机的P1.4口,一端接地.由于上拉电阻R3的作用,平时P1.4口为高电平,当卡插入卡座后,开关两端短路,导致P1.4口直接接地使P1.4口被拉低置成低电平,从而使单片机判断出有CPU卡插入.而CPU卡的复位信号由P6.3口提供,单片机的P6.1口和P1.0口分别连接接口电路的时钟和I/O口, CPU卡和燃气表之间的数据传输由单片机控制接口电路的这些引脚来完成.CPU卡与单片机的接口电路如图2所示.

2.3 液晶显示电路的设计

液晶显示器件由于显示信息非常丰富,且功耗比较低,满足本次设计的低功耗要求.与此同时,液晶显示器件的体积和质量都比较小,因此得到了普遍的应用[7].本次设计选用的液晶显示器是字符式液晶显示器,在MSP430系列单片机中,不同的单片机型号有着不同的液晶驱动能力.MSP430F4152单片机内部设有144段液晶显示驱动器.本次定制生产的液晶显示器视屏尺寸59 mm×19 mm,模块尺寸62 mm×22 mm.液晶显示模块如图3所示.

图2 CPU卡接口电路 Fig.2 CPU card interface circuit

图3 LCD液晶显示模块 Fig.3 LCD liquid crystal display module

2.4 电源电压监测电路设计

本次设计中,采用4只1.5 V的碱性干电池作为系统电源,提供6 V的电源电压.为了保证整个系统能够正常工作,必须对电源电压进行实时监测,当电源电压不满足系统要求时,单片机会控制报警器报警从而提醒用户更换电池.

供电电路和电压监测电路如图4所示.供电电路采用TPS78233线性稳压器,输出电压为3.3 V,最大工作电流为0.15 A,完全满足系统低功耗设计的要求.监测电路通过2个接口,P1.7口监测电源电压,只是监测系统是否有电,而P6.0口是监测具体的电池电压,当监测到电源电压小于4.7 V时,单片机会控制报警器报警来提醒用户更换电池,并在屏幕上显示“换电池”字样.与此同时,为了保证系统在更换电池过程中仍能正常工作,在电路中加了1个大容量电容C1,为燃气表存储一定的电量,从而保证卡内数据的安全.

图4 供电及电压监测电路设计 Fig.4 Power supply and voltage monitoring circuit

2.5 ESAM模块电路

嵌入式安全控制模块ESAM为一8引脚集成电路芯片,内部结构与CPU卡相同,只是个别指令不同.ESAM可以嵌入到任何对安全性要求比较高的智能设备中,完成数据的加密和解密、文件和密钥的安全存储以及应用终端的认证等[8].

ESAM模块和单片机的连接方式与CPU卡和单片机的连接方式一样,但需要单片机的控制信号提供电源、时钟和复位信号.ESAM模块与单片机的连接如图5所示.

图5 ESAM模块连接图  Fig.5 ESAM module connection diagram

2.6 阀门驱动电路

阀门驱动电路所用的阀门驱动芯片为DRV8832DGQ,该芯片具有安全启动、控制过流、过温和失压控制等作用,其工作电压为2.75~6 V,具有1 A的驱动能力、高达94%的PWM电压管理、低热效应、高的电流承载和更高的电源效率以及更少的CPU干预,因此带来更高的可靠性.

DRV8832DGQ芯片的输出端OUT2和OUT1接口和燃气表阀门电机电源线连接,作为阀门电机的输入端,DRV8832DGQ芯片的输入端IN1和IN2与单片机MSP430F4152的P2.1口和P2.2口连接.通过DRV8832DGQ阀门驱动芯片,单片机将小电流变为大电流输出从而驱动电机阀[9],具体电路如图6所示.

图6 阀门驱动电路 Fig.6 Valve driver circuit

3CPU卡燃气表主程序流程设计

本次设计中,系统的软件采用模块化设计方法,由不同的子程序来完成不同的功能[10].不同的功能模块必须明确其出口和入口,并确定子程序之间的相互调用关系,以供调用.软件部分主要包括CPU卡底层驱动程序、内部认证程序、外部认证程序等.系统的主程序流程如图7所示.

图7 主程序流程 Fig.7 Main program flow chart

通电后首先对系统进行复位操作,复位操作主要完成对特殊功能寄存器置初始值设置,将内部存储器单元清零以及对液晶显示进行设置.之后系统进入主循环,首先判断整个系统是否发生故障,然后判断电源电压是否满足系统要求,若一切正常则开阀供气.无论在任何情况下只要出现低电压信号,单片机会控制报警器报警来提醒用户更换电池.当燃气表中剩余气量低于系统设定值时,液晶会显示“请购气”来提醒用户.若用户没有及时购气,剩余气量不足时,单片机控制阀门关闭,停止供气.

4CPU卡的认证

CPU卡在整个应用过程中,首先由燃气公司发卡,将用户的个人信息通过写卡器写入卡中[11].然后用写卡器和PC机给用户充值,将气量信息写入CPU卡中.用户充值完毕需将CPU卡插入燃气表中,燃气表将CPU卡中的气量信息读出并与剩余气量相加,并将交易信息进行存储.而整个交易过程需要CPU卡和燃气表进行相互安全认证,即外部认证和内部认证.

1)外部认证

外部认证是CPU卡对燃气表的认证,认证流程如图8所示.图中,R为加密前CPU卡产生的一个8字节随机数,例如‘1122334455667788’.D1为燃气表用指定的DES加密密钥对随机数R进行DES加密运算时产生的鉴别数据.D2是CPU卡对D1进行DES解密运算时产生的8字节鉴别数据.

认证过程中,若D1,D2这2个数一致,则认证通过,安全状态寄存器的值置为该密钥规定的后续状态值,且错误计数器置初值;否则认证失败,再试,但此时可试错误数减1,且不能改变安全状态寄存器的值.

2)内部认证

内部认证是燃气表对CPU卡的认证,认证流程如图9所示.图中,W表示加密前燃气表产生的一个8字节随机数,例如“8877665544332211”.D1是CPU卡用指定的DES加密密钥对随机数W进行DES加密运算,产生的鉴别数据.D2是燃气表对D1进行DES解密运算,产生的8字节鉴别数据.

认证过程中,若D1,W这2个数一致,则认证通过,否则认证失败.

图8 外部认证过程 Fig.8 External certification process

图9 内部认证过程 Fig.9 Internal certification process

5结束语

基于CPU卡的燃气表系统设计,采用模块化设计方法,完成了系统硬件的设计,以及系统软件的开发.实现了内部认证、外部认证、预付费等功能,提高了燃气表用户数据的安全性.

参考文献:

[1]文燕,齐蕾. 一种基于国密算法CPU卡的门禁系统方案的设计[J]. 电子设计工程,2012,20(03):82-84.

WEN Yan,QI Lei. An access control system based on state secret code algorithm and CPU card [J]. Electronic Design Engineering, 2012,20(03):82-84.

[2]张洁. 关于CPU卡安全性能的研究[J]. 计算机时代,2011,29(10):18-19.

ZHANG Jie. Research on safety performance about CPU card[J]. Computer Era,2011,29(10):18-19.

[3]李建. 浅谈IC卡的分类及其安全[J]. 大众科技,2006,14(02):68-69.

LI Jian. Classification and security of IC card[J]. Popular Science & Technology,2006,14(02):68-69.

[4]彭金萍. 基于CPU卡的IC卡预付费售电系统[J]. 电力需求侧管理,2005,7(06):57-58.

PENG Jinping. IC card prepay charging management system based on CPU card[J]. Power Demand Side Management, 2005,7(06):57-58.

[5]杨平,王威. MSP430系列超低功耗单片机及应用[J]. 国外电子测量技术,2008,27(12):48-50.

YANG Ping,WANG Wei. Feature and application of the MSP430 serial ultra-low-power MCU[J]. Foreign Electronic Measurement Technology, 2008,27(12):48-50.

[6]王新,吕锋. IC卡读写接口的设计和实现[J]. 武汉理工大学学报:信息与管理工程版,2005,27(05):222-225.

WANG Xin,LÜ Feng. Design and implementation of IC card reader interface[J]. Journal of Wuhan Automotive Polytechnic University:Information & Management Engineering, 2005,27(05):222-225.

[7]纪留利. 液晶显示模块在电测仪表计中的应用[J]. 中国高新技术企业,2011,18(22):10-11.

JI Liuli. LCD module used in measuring instrument in electric meter[J]. China High-Tech Enterprises, 2011,18(22):10-11.

[8]陶维青,黄俊祥,曹军,等. ESAM安全模块在预付费电表中的应用研究[J]. 电测与仪表,2010,48(11):58-62.

TAO Weiqing,HUANG Junxiang,CAO Jun,et al. Application study of embedded secure access module in CPU card prepayment meters[J]. Electrical Measurement & Instrumentation,2010,48(11):58-62.

[9]邓秉林. 单片机在阀门控制系统中的应用[J]. 真空,2009,46(05):74-76.

DENG Binglin. Application of single-chip computer to control of vacuum valves[J].Vacuum,2009,46(05):74-76.

[10]佟秋利,张慧琳,孙国光. 基于CPU卡的大学门禁应用设计实施方案[J]. 计算机工程与设计,2011,32(04):1453-1457.

TONG Qiuli,ZHANG Huilin, SUN Guoguang. Design and execution scheme of access control of system university based on CPU card[J]. Computer Engineering and Design, 2011,32(04):1453-1457.

[11]白翠翠,夏春蕾,戴曙光. 非接触式CPU卡读写器的设计与实现[J]. 无线电通信技术,2012,41(05):50-52.

BAI Cuicui,XIA Chunlei, DAI Shuguang. Design and implementation of contactless CPU card reader[J]. Radio Communications Technology, 2012,05:41(05)-52.

(责任编辑:王兰英)

猜你喜欢
燃气表认证模块
28通道收发处理模块设计
“选修3—3”模块的复习备考
采用虚拟计数器的电子式膜式燃气表
膜式燃气表计量信息采集技术
物联网智能燃气表电量自补给装置
中职校园网络安全管理系统设计
流量均匀性对膜式燃气表检定的影响研究
集成水空中冷器的进气模块