基于MSP430系列单片机的智能IC卡热量表电控系统设计
引言
智能IC卡热量表是根据用户IC卡购热量实施自动计费、自动控制的一种高科技民用产品.具有远程抄表及人工抄表无可比拟的优越性:并且随着超大规模集成电路的发展,“金卡工程”的深入,节能环保和热计量结算方式的改革,智能IC卡呈现出十分广阔的应用前景。本文介绍了该产品的技术核心--基于MSP430系列单片机的智能Ic卡热量表电控系统设计。
1 智能IC卡热量表控制模式
智能IC卡热量表是在热量表中集成了IC卡电路检测系统及加装了卡座而构成,该测控系统主要由IC卡,热量、流量计量电路,电控系统及管道上的电磁阀等构成 系统原理图,如图1所示:
当用户把含有热量的IC卡插入卡座时,触点K1接通路并向MSP430单片机发出中断请求信号,单片机响应中断请求后对IC卡进行识别,以防插入的是坏卡或金属片破坏仪表。经识别后把IC卡中的热量读出并写入MSP430单片机的信息存储器中存储起来,然后对Ic进行清零,同时电磁阀在电控系统下开通供水开关,开始供热。用户的热水流量计每产生一个脉冲就产生一次中断进行脉冲累计,累计到10个脉冲时,启动A/D转换器进行热量汁算,算出的热量与信息存储器中的热量相减,其值回存人信息存储器中,进行热量值的判断,当信息存储器中的热量小于10MJ时蜂鸣器发出蜂鸣声要求用户重新购热,如果用户不购热,在信息存储器中的热量等于0时,电磁阀将自动关闭停止热量的供应。只有重新购热之后才会开启电磁阀。在正常情况下电磁阀输入电平为低电平,只有在特殊情况下才会发生开起与关闭,3种情况下电磁阀的通断情况,如图2所示。
2 系统电路构成
智能IC卡热能表电控系统电路由低功耗MSP430F133单片机,温度、流量测量电路、电源电压检测电路、电池保护电路、液晶显示及声音报警电路、Ic卡读写控制电路等构成,如图3所示。
2.1 MSP430系列单片机及电路组成
MSP430系列单片机是TI公司推出的16位超低功耗单片机,它采用先进的精简指令,具有高的性价比、超低功耗、高性能等特点,内部集成有可擦除信息存储器,可擦除10万次以上这样就可省去外部EEPROM。本设计采用MSP430系列中的具有flash存储器的F133作为电控系统核心 该单片机在非工作状态时进入低功耗模式3(LMP3)休眠状态,当有外部中断时,唤醒休眠状态进入工作状态。本系统中,单片机与外围模块的连接,如图3所示。P1.0口获取流量脉冲信号,P1.1、P1.2口获取电压欠压和电压保护信号,P1.3~P1.7口与IC卡引脚相接,以串行方式与单片机进行数据交换,P2.2~P2.5口控制电磁阀的通断及通过P4.4~P5.7口控制显示器以输出显示内容。
2.2 温度测量电路IC1
采用Ptl000(即0℃时,铂电阻的电阻值为1000Ω)作为温度传感器,用BB公司的恒流源REF200提供两路各100 μA的电流:
一路通过二四模拟开关MAX4582选通供回水管道上的传感器以提取传感器电压;另一路则通过标准电阻Rk提供仪用放大器的标准电压,经INA122放大之后接单片机的P6.0
口以供A/D转换之用。由于传感器用Ptl000且连接导线短,所以可以忽略导线电阻,采用二线制接法。模拟开关引脚A接P6.1口,引脚B接P6.2口。当A=1、B=0时,选通供水管道上的铂电阻传感器;A=0、B=1时,则选通回水管道上的铂电阻传感器。测温原理图,如图4所示:
2.3 流量测量电路
流量采用叶轮式热水表改装而成,传感元件为于簧管,当流量计上的磁铁随叶轮旋转时,使其上的于簧管通断,从而发出电脉冲信号。经施密特触发器SN74AHC1G14整形电路(IC2,如图3所示)整形后送微控制器中断口。
2.4 电源监控电路
电压监测器采用安森美公司(Onsemi)的NCP302HSN27T1(IC3),此芯片工作电压范围宽达0.8~10 V,静态电流典型值仅约0.5μA ;电压检测门限精度不大于2% ;当系统电池电压在正常值2.7V时,输出脚1(output)为低电平;当电池电压低于保护值2.7 V时,该芯片的脚1变为高电平,并向微控制器发出中断请求,使蜂呜器发出呜叫声以提醒用户欠压更换电池,同时关断电磁阀,停止供暖。
2.5 电源保护电路
为有效保护系统电源,可对电池盒位置进行高灵敏检测。
当电源盒被拉开时,保护电路(ic4)输出低电平,微控制器接收到这个中断信号后,P2.3、P2.5口置1,大功率开关管Q2、Q4接通输出高电平使其控制阀门关断。直到电池安装好并将电池盒推入表内正常位置时,微控制器才会再次控制阀门使其重新开阀供水.
2.6 电磁阀电路
电磁阀采用双稳态脉冲电磁阀,由3.6 V锂电池供电,双稳态、低压、低功耗,两位式通断,由4个高功率三极管控制其通断。平时正反端均为低电压不消耗能量,工作时,当正端(ON)接Vcc,反端(OFF)接地时,正电流接通电磁阀;当正端接地,反端接Vcc时,反向电流关断电磁阀,开关电流约270mA,时间小于2s。P2.2、P2.3、P2.4、P2.5口用来控制大功率开关管通断,组合控制电磁阀的通断见图5,在有以上3种事件发生时电磁阀关断:
2.7 IC卡及读写电路
由于IC卡具有存储量大、抗干扰能力强、操作速度快等优点,系统采用符合IS07816国际标准的IC卡,用于可靠存储用户购热量等关键数据。单片机通过IC卡读写电路完成对IC卡的读写:IC卡芯片(IC5)采用93C46 EEPROM,它采用三总线串行与MSP430F133单片机进行数据传输。用户把IC卡插入卡座.卡座卡簧的常开触点K1闭合,P1.3具有电平变换引起中断功能,微控制器的P1.3口由高电平变为低电平,唤醒微控制器进入工作状态,卡识别之后进行串行数据的传输,先把Ic卡中的数据写入RAM,并与微处理器信息存储器中的热量相加,然后对IC卡进行清零处理并打开电磁阀,最后拔出IC卡.
2.8 液晶显示器及蜂鸣器电路
液晶显示器采用MS 12232显示模块,可显示电压欠压、流量、热量、供回水温度、累计工作时间等信息,采用一键多意的方式,根据按键l(2的次数不同而显示不同的内容。声音报警电路采用高响蜂鸣器,由单片机控制发出不同的声音,按键K2按下即可停止蜂鸣。
3 系统软件设计
系统软件采用模块化结构,用MSP430的嵌入式C语言编写,软件设计思想紧密结合Ic卡热量表的控制模式,对IC卡信息读写,卡类型的识别,计量信号判断和数据处理,电压的欠压检测与电源保护,降低功耗等方面进行了设计。为了降低功耗,程序大部分集中在中断处理程序中,程序流程图,如图6所示。
为了保证IC卡信息的安全性,在硬件的基础上对软件也进行了精心设计。当对插入的卡进行识别之后,发出读写命令字,Ic卡芯片接受后,向单片机发出一个应答指令,然后跟随8字节读密码,密码错误显示“o0”,重试计数器加以1,最多重试5次,否则IC卡清零;密码正确,显示“11”,进入写周期:通过串行数据线把IC卡中热量读入MSP430F133的RAM中,最后发停止位;IC卡的热量清零并显示“01”,这时方可安全地取卡。如果在这之前拔出IC卡,那么此次操作将视为无效。在完成读卡、清零之后,读出微处理器信息存储器中剩于的热量至RAM中,并与Ic卡中读出的热量相加,把最后结果回存人微处理器信息存储器中,检测电磁阀的起闭情况,如果处于关闭状态,则开启电磁阀。
为了提高软件系统运行的抗干扰能力和可靠性,除了在硬件上采取相应的措施外,在软件的设计上也采取了相应的对策。
4 结论
电控系统采用低压、低频、静态低功耗的CMOS器件,而在电路设计采用了关断技术,即当外部器件或设备在不工作时关断供电,减少无效功耗,并且对软件也进行了低功耗的设计,即单片机在等待时进入休眠模式,需要时由外部中断信号唤醒,所以此系统整体的功率消耗很低。运用此控制电路开发出的热量表,其运行稳定可靠,操作方便,抗干扰能力强:对于我国热计量收费制度的改革、金卡工程的深入展开以及节能环保起到很大的促进作用。