基于LSD4F8 108的IC卡智能水表设计
摘要: 智能IC卡预付费水表采用低功耗、高性能单片微机处理器,配以家用冷水基表,采用于簧管脉冲计数方式自动计量用户用水量,实现“先付费、后用水”的预付费控制功能。该仪表采用一户一表一卡,凭卡用水,卡中数据输人表中,水表自动开阀供水,用完后自动关阀断水,必须重新购水,方能重新用水。智能水表可以提高管理效率,有效防止欠费,避免上门抄表,实现节约用水。 1 智能卡水表的工作原理采用内部存储器实现数据
关键字: 智能IC卡预付费水表, 家用冷水基表
智能IC卡预付费水表采用低功耗、高性能单片微机处理器,配以家用冷水基表,采用于簧管脉冲计数方式自动计量用户用水量,实现“先付费、后用水”的预付费控制功能。该仪表采用一户一表一卡,凭卡用水,卡中数据输人表中,水表自动开阀供水,用完后自动关阀断水,必须重新购水,方能重新用水。智能水表可以提高管理效率,有效防止欠费,避免上门抄表,实现节约用水。 1 智能卡水表的工作原理采用内部存储器实现数据
引言
智能IC卡预付费水表采用低功耗、高性能单片微机处理器,配以家用冷水基表,采用于簧管脉冲计数方式自动计量用户用水量,实现“先付费、后用水”的预付费控制功能。该仪表采用一户一表一卡,凭卡用水,卡中数据输人表中,水表自动开阀供水,用完后自动关阀断水,必须重新购水,方能重新用水。智能水表可以提高管理效率,有效防止欠费,避免上门抄表,实现节约用水。
1 智能卡水表的工作原理
采用内部存储器实现数据保存功能,即使在掉电的情况下,上电后数据也能自动恢复;采用电池管理功能:当电源欠压时、提示报警,更换电池,当电压更低时阀门关断,直到系统电源恢复正常后自动打开阀门。
管理部门可根据卡来管理用户小区的水表日常维护,如更换表、解除故障、设置表内参数(脉冲常数、最低用量、最大用量)预装水量用于调试水量等。具有当阀门异常时(如内漏)仍能计量,并在用户购水充值时扣除这部分用量。采用故障自检功能:并用蜂鸣器实现各种状态、故障等报警提示功能,如插卡、故障报警等。用硬件密码或特定的清除卡来清除表中数据。
智能卡水表是一种内嵌预收费系统的智能型水表,它以Ic卡安全技术为核心,配以自动保护及信息加密功能。Ic卡水表采用电池供电,水表的水量等重要参数均存储在EPROM芯片内,其数据可保存10年以上。此外,对IC卡及卡表内的信息进行加密,使系统不易被仿制和非法使用,Ic智能卡预付费水表系统图如图1所示。该系统主要有以下部分组成:CPU单元、LCD显示、干簧管流量双脉冲、阀门控制电路、IC卡电路、电源检测电路、故障报警。
用IC卡实现表内数据与管理系统实现数据双向交换,当用户购水后,IC卡能够自动将水表结余水量与本次购水量进行累计并液晶显示、水费计算与管理(报警金额、基础水量、计划水量),实现供、停水的控制功能、也进行价格充值。当用户将购得的水卡(IC卡)刷入水表时,表内系统在确认该卡有效后,自动打开阀门,进行正常供水。若允许用户透支,则刷卡恢复用水直至使用完透支水量后才关阀。用户每次将购水刷卡入表后,水表LCD显示剩余水量,并将剩余水量等用水信息以及水表的状态信息返写到购水卡中,以供售水管理系统入库、查询。
2 IC卡智能水表系统的总体设计
2.1 电源管理
采用3.6 V标称容量:1.9 Ah(放电电流:1 mA,终止电压:2.0 V);最大恒向电流:1 A;最大脉冲电流:1.5A的电池对系统供电,当电池电压<3 V使得系统处于静态时,其电流<5A时,利用MCU内的比较器,以中断方式唤醒单片机,及时关闭水表阀门并保存相应数据,提示用户更换电池,低于2.7V关阀。并以LCD显示,Ic卡接口电路等的供电在需要操作时才打开,以减小不必要的电流损失。
2.2 流量检测
将用水量转换为脉冲信号,采用两个脉冲传感器进行接收,以防止抖动产生的多计数现象。通过程序设计,判断两个传感器是否正常工作,若不正常,则认为是外界强磁干扰,关闭阀门。
2.3 阀门控制电路
特殊情况下控制水表阀门的开关,选用饱和压降为0.2V的三极管8550和8050对管构成电机驱动电路,既可以保证电机的驱动电流又可在故障时限制最大电流<500 mA。接通3.6 V电源,电机空载电流25mA±2mA,带载电流<60 mA;用手指触摸球阀无窜动感;阀门电机组件上磨合试验台进行电控阀门开关1000次磨合试验;观察组件运转性能正常(阀门开关正常、无异常声音)。
驱动采用MCU内置液晶驱动模块进行驱动。其管理系统具体分以下模块:
a.用户管理模块:此模块包括用户开户发卡、补卡、换表、过户、销户以及用户信息的查询及修改等。
b.售水业务管理模块:此模块包括购水交易、买水统计查询每日结帐等功能。售水时,系统首先通过密钥管理体系检查该卡是否为合法卡,并与数据库内信息核对,当检查通过后,将用户的购水量(或购水金额)写入卡中,更新数据库,并将用户卡带回的水表信息一同写人数据库中。此模块要求可以对单个用户的一定时间的购水及用水状况进行记录和统计,通过输入姓名和水表号等用户个人信息可查询该用户的购水、用水情况及水表运行状况。
c.操作员信息管理模块:该模块包括增加操作员功能、操作员授权功能、口令修改功能。系统记录操作员的每次登录及操作,操作员分级别进行操作,不同的操作员有不同的口令和安全级别,并且只能接触和岗位相关的数据。
d.各工具卡制作模块:此模块包括制作用户使用的用户卡、应急购水卡以及工作人员用于认证卡、生产数据设置卡、修改密钥卡、回收转移卡等设置卡、恢复卡、充值卡、换表卡、管理卡、测试卡、用户卡、限量卡。
e.系统维护模块:包括密钥更新、水价维护、水表参数维护、数据库备份及恢复功能。
f.报表打印模块:每次操作员进行开户、售水、补卡等操作时,系统将自动打印出交易明细,另外,操作员也可以自行进行单一或综合统计查询后,打印出查询后的生成报表。
3 LSD4F8108 MCU叙述
MCU具有高速度,充分利用了内部的硬件资源:8K的Flash、16位RISC指令集、l6位定时器、24×4段的液晶驱动模块和比较器模块。并具有以下一些特点:
a.超低功耗:在2.2 V,1 MHz时钟条件下,其工作电流根据工作模式的不同在0.1 A~300 A之间,其工作电压范围为1.8 V~3.6V。
b.处理能力强大:采用RISC指令集,核心指令27条,并具有丰富的寻址方式(源操作数7种,目的操作数4种)。片内寄存器数量多,有高效的查表处理方法。
c.片上外围模块丰富:它具有FIJIJ+(频率锁相环)时钟系统,看门狗,带有三个捕获/比较寄存器的l6位定时器(TimerA),片内比较器,96段LCD驱动器,48个通用I/O引脚,并且端口P1和P2具有中断能力,每个引脚都可以单独选择中断触沿、单独允许中断。
d.具有5种节电模式,掉电电流(RAM数据保持)最低可为0.1 A,提供从待机模式中快速唤醒功能,唤醒时间<6s。平时MCU处于低功耗模式3,流量检测,Ic卡数据操作等都以中断方式唤醒,以节省功耗。采用了FLASH存储器,低功耗设计,使得当系统处于静态时其电流<5A。MCU在智能卡水表中的应用采用逻辑加密卡作为预付费卡片、保密性好;具有强大的电源管理系统,工作在3.6 V(锂电池)时,静态工作电流<3 A。
正因MCU的这些优势,在选择对Ic卡通信和开发时,则选用该款芯片。着眼于安全性和降低功耗方面,MCU性能特点如下:低工作电压(1.8 V~3.6V);超低功耗(工作模式4下耗电仅为0.1 IxA);16位精简指令结构(RISC);150ns指令周期;片内有JTAG调试接口和FLASH型存储器,可在线串行编程;支持c语言和汇编语言。本系统以MCU为核心,内置LCD驱动器24×4段,可减小体积、降低成本,在休眠模式下典型电流仅0.7IxA;电源监控采用理光R3111E(可根据设定的门限电压选择相应的型号);水表阀门采用2.5 V~6V直流电机,当人为破坏水表或所购买水量低于设定值时,水表报警并及时关掉阀门,同时将数据保存在内部FLASH中;采用MFRC522读写芯片读写Mifare1$50卡片实现预付费功能。
本设计利用RC522 UART模式与MCU通信,由于MCU没有硬件串口,故需使用TIMERA模拟串口。对于MCU而言,P1.0口(TimerA捕获/比较输出口)是UART的TX,P1.1(TimerA捕获/比较输出口)是UART的RX。智能卡水表的软件设计采用模块化设计,包括计量功能模块、电机控制模块、防磁干扰模块、Ic卡处理模块、Ic卡和ESAM通信模块、报警模块、电源掉电模块、阀门控制模块和显示模块等。
由于涉及的功能较多,要分配好CPU内部的各种资源,各功能模块问的时序关系。本系统的主程序除了用到MCU提供的两个中断资源,主要是用查询方式,查询从各个口线上来的状态标志,如电源电压是否降到允许值以下,有无磁干扰发生,计数脉冲是否到来,是否有卡插入等等,再根据得到的标志位做出相应的处理。
e.开发方式简便高效:MCU具有JTAG接口,可方便的通过JTAG控制器实现程序的下载和调试;系统初始化、磁干扰测试、计量处理。这里系统初始化包括对MCU的堆栈、各端口、中断、LCD控制寄存器的设置,使CPU能正常工作;系统中的SAM模块用来存储数据信息及各级密钥,对SAM模块初始化是把其中的内容读到MCU内存;各测试模块是测试MCU相应的口线状态,并置上相应的标志,为各处理模块提供判断的依据;当有计量脉冲到来时,计量处理模块会对它进行计数处理,该模块还具有软件抗干扰功能,以防止对计量脉冲的误计;卡处理模块实现CPU卡和SAM模块的通信,只有当它们之间的认证通过时才能进行数据交换,对非法刷卡,将禁止操作并给出提示;报警处理模块用来监测电源电压,一旦电压降到某一规定值,就会启用备用电源,并报警显示,以提示用户更换电池。
单片机接口设计用125ns指令周期,大部分指令在一个指令周期内完成,16位寄存器和常数发生器,发挥了最高的代码效率,而且片内含有硬件乘法器,大大节省运算时间。该芯片采用低功耗设计,具有五种低功耗模式,供电电压范围为1.8V~3.6 V,在工作模式下:2.2 V工作电压1 MHz工作频率时电流为225A;在待机模式电流为0.7 IxA;掉电模式(RAM数据保持不变)电流为0.1A。所以特别适用长期使用电池工作的场合。它采用数字控制振荡器(DCO),使得从低功耗模式到唤醒模式的转换时间小于6 Ixs。该芯片具有8KB+256BFlash Memory,256B RAM,采用串行在线编程方式,为用户编译程序和控制参数提供灵活的空间,内部的安全保密熔丝可使程序不能非法复制。
由于考虑到本设计低功耗,小体积,液晶显示,按键编址等要求,所以选用了单片机芯片,该单片机芯片在在线系统设计、开发调试及实际应用上都表现出与其它单片机非常明显的优势。
4 结束语
由于开发的体积小、高度集成的表阀一体化IC卡智能水表,以达到可以精确测量水量和控制用水的目的,开发过程中可以看出FLASH单片机功能全面,使用方便,MCU低功耗、低电压、高速度等特性,很适合用于采用电池供电的工作,用LSD4F8108MCU来开发智能卡表的程序,在Ic卡水、气、暖表的应用上具有广阔前景。本文介绍的软硬件设计已通过实际运行,效果良好。
暂无评论