您好,欢迎来到仪器交易网!手机版|供应归档|本站服务|添加收藏|帮助中心
仪器交易网 行情 工控仪表

射频卡智能水表的研制

发布日期:2013-04-16 浏览次数 :1258


摘 要 提出了一种基于单片机MSP430F413的射频卡智能水表的设计方案,并设计出系统硬件部分的电路图和软件部分的流程图。

  0 引言

  目前,供水部门水费的征收仍采用人工上门抄表收费的传统方式,已不能适应快节奏的现代生活。为解决水费征收效率低、群众意见大的实际情况,我们研制了预付费的射频卡智能水表。这种水表采用IT公司的单片机MSP430F413芯片,具有自动计数、自动供水断水、自动保存数据、自动报警、使用寿命长等特点。

  1 系统硬件设计

  图1是系统的硬件原理框图,主要包括MSP430F413单片机、射频卡读写电路、阀门执行电路、LCD显示电路、电源电路和水脉冲检测电路等。

  

  1.1 MSP430单片机

  MSP430系列是美国德州仪器公司生产的一种特低功耗的Flash微控制器,有“绿色微控制器”称号,其技术特征代表了单片机的发展方向。MSP430F413单片机是TI针对电子式流量与旋转运动检测开发的专用MCU芯片,它将超低功耗MCU和液晶显示LCD驱动模块地结合为一体,其超低功耗结构和流量检测模块不仅延长了电池的寿命,同时还提高了仪表的精度与性能。

  1.2 射频卡读写电路

  射频卡读写电路由射频卡和读/写基站芯片两部分组成。射频卡选用的是TEMIC的E5560芯片,读/写基站芯片选用的是Atmel公司的U2270B芯片,它们可以在5cm的距离内通过频率为125Hz的载波互相通信,如图2所示。

 

  U2270B支持两种供电方式。一种为+5V直流电源供电,另一种为汽车用+12V。这里选用的电池供电工作电压是+5V,电路图如图3所示。

 

  由E5560组成的射频卡电路由E5560芯片、电感线圈和电容组成,RF工作频率为125kHz。使用时,E5560通过外接的LC回路接收来自读/写基站的RF信号,经过芯片内部的电源电路处理为芯片提供电源。通过芯片内部的阻尼负载,片内EEPROM中的数据被读入读/写基站,并以一个特殊的方式中断RF场,使读/写基站可将数据写入片内EEPROM中。EEPROM用来储存用户ID、卡类型、卡状态、表号、充水水量、密码、累计水量、剩余水量和充水次数等信息。

  读卡时,E5560发送数据给MCU。由于E5560并不保证其发送数据的可靠性,所以通过多次读取比较来保证数据的正确性。

  写卡时,MCU发送数据给E5560,可以通过设置奇偶校验位来保证数据可靠性。

  1.3 阀门执行电路

  它可用步进电机、直流电机、电磁阀等加上驱动电路来实现。用直流电机控制水龙头阀门的开和关,通过堵转电流判断电机是否已到位,堵转电流大小的判定是通过比较器A来完成的。平时监测电压CA0小于参考电压CA1,当阀门到位时会产生较大的堵转电流,从而监测电压会大于参考电压。

  1.4 其它电路

  1.4.1 水脉冲检测电路

  该电路采用TI专用传感器电路。在水表中有机械转轮,采用干簧管与磁铁配合,可完成脉冲采样,通过MSP430F413内置的比较器(Comparator A)和定时器(Timer A)来识别判断出水表叶轮的转动情况,从而完成计数功能。

  1.4.2 电源管理电路

  此电路主要是为了降低功耗,延长电池使用寿命而设计的。当单片机检测到电池电压小于某一特定值时,将触发低电检测中断。

  1.4.3 LCD显示电路

  LCD显示部分利用MSP430F413自身驱动LCD96段来完成与单片机系统的显示接口,以显示用水量信息、水表的工作状态及其它的一些必要信息等。

  2 系统软件设计

  本系统软件由主程序和中断处理程序组成。主程序主要完成系统初始化的功能。中断处理程序包括低电检测中断处理程序、水脉冲测量中断处理程序、水脉冲异常中断处理程序、卡检测中断处理程序和看门狗中断处理程序。

  2.1 主程序流程图

  主程序在初始化后,进入一个循环的睡眠状态。当中断程序被触发后,主程序马上苏醒过来,进行中断处理,之后再进入睡眠状态(详见图4)。

  2.2 低电检测中断处理程序

  当电池电压低于某个门限时,会产生一个电平跳变,触发中断。中断处理程序设置低电警告事件,马上关闭水阀,同步数据到flash中,并告警提示,闻后关闭MCU,如图5所示。

 

  2.3 卡检测中断处理程序

  通常有如下4种类型的RF卡:开户卡、充值卡、查询卡、注销卡。RF卡靠近水表后,卡上的磁铁会让水表中的磁簧管吸合,从而产生电平跳变,触发中断。中断处理程序设置卡检测到事件,激活CPU,让应用程序进行卡处理过程,如图6所示。在检测到卡的类型后,再进行相应的读/写卡操作。

 

  2.4 水脉冲测量中断处理程序

  两路计量脉冲依次通过PORT口输入。系统根据两路计量脉冲进行用水量的计量,上升沿触发。只有依次检测到两路脉冲信号,且两路脉冲的间隔为300ms左右时,才认为是一个水量单位,此时把总用水量加1,剩余水量减1。每计量一定的水量后(如1吨),设置水量计量事件,激活CPU,进入水脉冲测量中断处理程序,如图7所示。中断程序进行3个相关的动作:同步数据到flash中;在剩余水量小于某个限定值,用户再次充水大于限定值(如5吨)之前,剩余水量每减少一吨都会产生相应的蜂鸣器告警,提示用户购水;当剩余水量为0时,关闭阀门,水表报警并显示提醒用户购水。

  2.5 水脉冲异常中断处理程序

  水脉冲一般会出现如下几种异常情况:

  ①一路有脉冲,另一路没脉冲(有一路坏了);

  ②两路输入同时为高(受强磁干扰);

  ③两路脉冲间隔小于300ms;

  ④一直没脉冲,这种情况不是确实没用水,就是两路都坏了。

  中断处理程序收到脉冲异常事件后,马上关闭水阀,同步数据到flash中,并告警提示,后关闭CPU且在30s内不能开阀。如30s后异常消除,则根据当前情况决定是否打开阀门。