摘要:为适应国家供热制度的改革,研究和利用现代智能技术对供热进行自动监控、减少每月抄表收费带来的麻烦势在必行。本文介绍了IC卡智能热能表组成和工作原理,给出一种基于PIC16F84单片机的热能表设计方案,同时对设计使用中的一些问题进行讨论,并提出了解决办法。
1 引言
随着供暖制度的改革,原来的供暖由按面积收费改为按所用热量收费。IC卡热能表系统,不但实现了收费电子化,而且还改变了先用热后收费的不合理状况,使供热部门能预先收取部分费用,有利于公用事业的发展。本文给出了一种基于PIC16F84单片机IC卡智能热能表的设计方案。此方案具有成本低、可靠性高、使用寿命长及安全性好等优点。
2 IC卡智能热能表设计方案
2·1 IC卡智能热能表的功能
(1)根据所购热用量,自动执行供、停热。
(2)具有自动报警功能
(3)可随时提供累计用热量、本月用热量及可用热量
(4)可对购热量进行累计
(5)具有自动保护功能
(6)断电保护功能
(7)加密功能
2·2 IC卡智能热能表硬件电路组成及原理
一般热能表主要由积分仪、流量计和温度传感器三部分组成。流量计用于计量流过采暖设备的热水体积。温度传感器用于测量进水温度和回水温度。积分仪是热能表的核心,它能够根据流量计提供的热水体积流量和进水、回水温度差等数据计算出消耗的热能。其计算公式如下:Q=CV(t供水-t回水)其中,Q为消耗的热能,单位为kWh;C为水的比热容(C=0·001167kWh/L℃);V为流过采暖设备的热水体积,单位为L;t供水、t回水为流过采暖设备进水口和回水口的热水温度,单位为℃。
从热能表的消耗计算公式可以看出,只要测得采暖设备进水和回水的温差以及流过采暖设备的热水体积就可以计算出消耗的热能,因此,引起计量误差的因素有:
(1)流量计的精度;
(2)温度测量的准确度;
(3)两只温度传感器的配对误差;
(4)积分仪的计算精度。
对于流量计引起的误差,可以通过选取精度较高的流量计来解决,计算精度可以采用合适的CPU和完善的算法来解决。对于温度测量,国家有相应的标准,温度测量误差一般不大于±0·3℃,而两只温度传感器的配对误差应不大于±0·1℃。根据以上分析,笔者设计了一种基于PIC单片机的IC卡智能计费热能表,其组成框图如图1所示。该系统主要由CPU、流量计、进回水温度传感器、阀门、IC卡读写器、显示电路及电源等组成。其中CPU采用Microchip公司的PIC16F84,它是系统的核心,用于完成所有控制和计算功能。该芯片工作于休闲状态时,耗电量仅为μA级[1];采用FLASH EEPROM的串行存储芯片93C46作为数据存储器,它占用体积小,功耗低,且操作简单,主要用来存放IC卡识别字、发行密码及用热计量等数据以作为热能表识别与计量的依据;温度传感器和A/D转换器组成温度采集电路,可测量采暖设备进回水温度。为了保证测量精度,设计中选用了12位串行A/D转换器ADS7844,理论上,它的温度采集精度可达0·03;流量计用于测量流过取暖设备的热水体积,每流过一定体积的热水,流量计内的干簧管闭合一次就向CPU申请一次中断,CPU用该信号累计流过采暖设备的热水的体积来进行热能计算;在需要时还可通过显示器来显示水温和消耗的热能以及系统信息等;用键盘可实现各种操作,如:通过键盘可以查看水温、消耗的热能和系统信息等;电源控制电路主要是在不需要显示和温度测量时切断相应部分电路的电源,以降低功耗。本热能表采用交/直两用电源,平时热能表由交流电通过表内的小型变压器输出供电,而备用电池处于充电状态。一旦停电,热能表就由内部备用电池供电;系统设置是在每次加电时设备系统的年、月、日、小时和分等时间信息。另外,当系统出现故障时,它也可向CPU申请中断,以使CPU将当时的时间、热能值和故障信息写入EEPROM以备查询;IC卡读/写器是IC卡热能表的输入接口,当IC卡插入读/写器时,首先读入的是卡中的密码,以判断此IC卡的合法性[2]。如合法就读入所购热量并与热能表内剩余热量累加,同时将卡上购热量单元清0,回写热能表上用热量、剩余热量等信息,以便下次购热时热力公司读取,实现热能表信息回馈功能;对于热能表而言,阀门是被控对象,控制着进水的开关状态。本设计采用双稳态电磁阀,即阀门开关控制由电脉冲来实现,使得对阀门开关只需瞬时供电,从而减少耗电量。

2·3 IC卡智能热能表软件设计及实现过程
IC卡智能热能表软件设计的关键是看门狗的初始化、中断响应及处理、进入睡眠及其唤醒等处理。从功能来看,有这样一些模块:IC卡的接口模块(包括IC卡有效性判断、读写及IC卡的解密与加密)、阀门控制模块、流量脉冲、用热量处理模块、中断服务程序模块及显示模块等。其程序框图如图2所示。

3 存在的问题及解决方案
3·1 温度测量误差和传感器配对误差
从热耗计算公式可以看出,测量误差和传感器配对误差均会引起测量误差。鉴于这种情况,设计时一方面必须选用性能良好的温度传感器;另一方面应使温度传感器的特性呈线性关系且两只传感器的温度特性曲线应当一致。但是,常常温度传感器特性在0℃~100℃并非线性,每只传感器的特性曲线又不尽相同。因此,除了采用性能比较好的铂电阻作为温度传感器外,还必须对每只热能表硬件或软件校正。由于硬件校正会增加成本,因而多采用软件校正。具体做法是将整个测温范围根据允许的测量误差分为若干段,校正时测出各校正点的误差并存储到EEPROM。而实际工作时,先测出水温,然后采用查表的办法从误差中查出修正值来对所测的温度进行修正。如果测出的水温不是正好在校正点上,则可采用插值估算的办法予以修正。这样处理不仅可以解决量误差,同时也可以解决传感器的配对误差。
3·2 功耗和抗电磁干扰
本设计采用交/直流2种供电方式,但在停电或某些场合无法采用交流供电情况下,必须采用电池供电,而电池供电的容量又非常有限,因此要求热能表的功耗应非常低,且抗干扰的性能要好。
为了降低功耗,设计时选用低功耗电磁阀,如选用新型双稳态电磁阀MP15A,电源电压低。正常供热情况下,电磁阀处于常开状态,驱动机构不消耗电能;只有当购买的热量用完时,电磁阀关闭并自锁于常闭状态;除显示器件外,都选用低功耗器件。
现在许多的CMOS器件都提供低电压设计。常用5V的CMOS器件大多都提供3V的使用电压[3]。比如,作为控制核心,PIC16F84具有功耗低、运行速度快等特点,其工作电流只有1mA(3·3V,32KHz时),进入休眠状态后只有10μA左右且可以用中断将其从休眠状态唤醒。温度传感器、A/D转换器和显示器是系统主要耗能器件,因此在不使用时应将它们的电源切断,以进一步降低功耗。另外,由于PIC16F84的数据总线和地址总线都埋在芯片内部,因此具有良好的抗电磁干扰性能。
3·3 安全性
由于本智能热能表采用普通24C01系列IC卡,因此,对IC卡信息的加密与解密是决定IC卡安全性的关键。用户卡在每次购热时,均由上位机根据剩余热量等信息随机生成3B的密码因子存入IC卡,以此对IC卡信息进行动态加密;卡表内的加密解密程序读取IC卡信息后,进行逆向处理,达到解密目的。采用此法后,可有效防止IC卡的非法复制与数据非法修改。
IC卡的有效认证由卡表自动识别有效IC卡,按预定程序与IC卡进行双向传输,一次读入全部信息,表内内存信息一次写入IC卡。设置的读/写密码保证一表只有一张用户卡配对使用。
若用户私自打开热能表表盖,将触发中断,中断服务程序将开盖行为记录到表内的EEPROM,并立即关断进热水阀门。只有热力公司管理人员用管理卡才能消除这种不良记录。
4 结束语
本文设计的IC卡智能热能表具有使用方便、安全可靠、计量准确的特点,可用于住宅或单元住户的采暖计量。该IC卡智能热能表现已初步制成样机,为了达到更高的使用要求,现正在进一步调试和检测。检测结果表明:温度测量误差不大于±0·15℃,传感器配对误差不大于±0·09℃。表1是对3组数据进行实际测试的结果,其热能值与理论值已相当接近。

5 参考文献:
[1] 杨圣·PIC系列单片机的原理与实践[M]·合肥:中国科学技术出版社,2003·
[2] 陆聪文·自来水IC卡收费系统原理及发展状况[J]·仪器仪表标准与计量,2000(2):46-48·
[3] 李东星,等·PIC16C84单片机应用中问题和决策[J]·电子技术,1996,(4):57-58·
作者简介:王文涛(1963-),男,副教授,主要研究微机测控与软硬件开发。




