APP下载

基于MSP430单片机的智能水表设计

2016-10-19葛欣

数码世界 2016年9期
关键词:智能水表低功耗水量

葛欣

渤海大学工学院



基于MSP430单片机的智能水表设计

葛欣

渤海大学工学院

本文介绍了基于低功耗单片机MSP430F413的智能水表的开发。包括智能水表的工作原理、MSP430单片机在低功耗方面的优势及性能、智能水表的整体设计方案等等。

MSP430F413 智能水表 低功耗 IC卡技术

随着社会的发展和科技的进入,智能化和信息化成为了当前的热门话题。而在供水方面也有了不少的探索和研究。供水的传统管理方式为:“先供水后收费”。这种方式造成供水部门在抄表、收费上的低效率,如何更改管理方式,提高效率、方便管理成为当前承需解决的问题。本文即是基于此,提出了一种基于MSP430F413超低功耗单片机为主控MCU的智能水表解决方案。

1 智能水表的工作原理

本设计由单片机作为主控,电动阀门作为供水开关,IC用于记录购水量并将数据同步至单片机内,液晶用于数据显示,蜂鸣器用于报警提示。本只能水表的使用流程如下:

首先,用户需要在购水处购买IC卡和用水量,并由工作人员将所购买的用水量等信息录入IC卡中。然后,用户将IC卡插入水表上卡座内时,表内单片机启动IC卡检测及校验程序,识别并验证IC卡密码,根据IC中的信息,更新表内剩余水量值(第一次使用时,卡内的剩余水量值为零)并存储记录。最后,单片机判断剩余水量是否大约0,大于0则打开阀门供水。

水表用水量的统计采用单位水量(0.01立方米)的机械触发,产生多传感器组合信号,并由单片机处理和统计数据的方式。具体流程如下:

①供水时,水流带动表内叶轮转动,进而通过磁感器带动齿轮转动,实现机械累计。②每当机械累计量达到单位水量时,多传感器向单片机发出组合信号。③单片机被唤醒并处理用水量数据,记录和更新剩余水量。

当剩余水量低于某阈值时(单片机内设定的剩余水量不足的阈值),水表的报警系统启动每个N分钟(通过算法实现每次报警时间间隔递增),蜂鸣器连续响5声,用于提醒用户剩余水量不足。当剩余水量为0时,停止供水。在用户重新购水后,单片机执行卡检测、密码验证、更新剩余水量后,驱动电阀供水。在遇到电池供电电压过低时,3次报警提示后关闭供水。在剩余水量低于设定阀值时报警提示水量不足,当剩余水量为0时,关闭供水并报警。

2 MSP430F413简介

MSP430F413是一款以超低功耗著称的16位单片机,它的所有外设的时钟都可以单独关闭和打开,并且外设可以选择不同的时钟源,这种灵活的时钟设置可以使基于此单片机的产品满足性能的情况下,达到最低的功率消耗。同时,它采用16位RISC结构,CPU执行代码效率高。其片上丰富的外设也简化了外部设计电路,节省成本。

3 系统方案设计

本文设计的智能水表原理框图如图1,主要由以下几部分构成,包括MSP430F413单片机、液晶显示、电动供水阀、流量传感器、IC卡读写器、及电源电路等。

图1 

图2 

4 硬件的设计

4.1硬件原理框图(如图2)

4.2数据采集电路

本智能水表的基表是旋翼式冷水水表,符合ISO 4064B标准。使用干簧管传感器采集信号。配合单片机的IO口检测,统计水量。为了提高检测精度,本设计中使用2个干簧管组成双脉冲计数逻辑,并在硬件设计上添加滤波电路,只有当两个干簧管依次产生脉冲信号才记为一次有效计数,以有效减少因抖动造成单个干簧管多次触发导致统计偏差。由于正常情况下,单片机处于低功耗模式下,因此,检测干簧管产生的脉冲信号的引脚使用能够唤醒单片机的P1.3口和P1.4口。每当有一次有效计数产生,则更新并记录相应水量。同时,为防止外部电磁信号的干扰,表内设计了磁保护装置,以保证采样精度。

4.3低电压检测电路

为保证供电电压的稳定,同时提供便携的安装,本水表不使用外接电源,而采用电池供电。带来的问题是,如果提供保证水表能长久有效的正常工作的电量。为了解决此问题,一方面我们采用低功耗器件和IC,保证供电时常。另一方面,对电源低电压进行实时检测。当检测到电池电量过低时,蜂鸣器报警。当电量低于某阈值时,停止供水并报警。

为满足低功耗下实时供电电压检测的要求,采用低功耗的电压检测芯片R3111H301C。R3111H301C为低电压检测芯片,其正常的工作电流只有1.0μA。供电电压正常时,芯片的输出引脚为高电平;电压小于3.0V时,输出引脚为低电平。以此,在软件设计中,使用能够唤醒单片机的引脚P1.1作为电量检测的IO口。IO口配置为高电平输入,下拉中断。当检测电压低于3.0V时,P1.1引脚被拉低,单片机被从低功耗模式下唤醒。处理中断子程序,置低电量标志位,蜂鸣器报警,内部定时器开始定时。当在一段时间内电压仍未恢复,报警未被清除,则停止供水,直至电源电压恢复。

4.4阀门控制电路

水表进水阀门的控制是智能水表中一个很重要,也很敏感的器件。因为如果阀门关闭不牢,将可能导致偷漏水等现象,给供水部门带来损失。而为保证阀门的稳定可靠,本设计所使用阀门为电动球阀。其工作电压3.0V,工作电流约50mA。通过直流电机正反转带动半球阀转动,进而控制供水阀门的开关。利用单片机的P3.0正、P3.1负驱动电机正转,P3.0负、P3.1正驱动电机反转,利用P1.5引脚检测电机是否正转到位;P1.6检测检测电机是否反转到位。同时,为了防止电机转动到位,而P1.5或P1.6未检测到,而导致电机长期处于堵转状态而烧毁电机,本设计采用MSP430F413内部ADC采样电路检测堵转电流来控制电机运行或停转,以提供双保险。正常情况下,电机正传,控制阀门打开后,P1.5口能检测到高电平中断,则单片机控制电机停转。电机反转,控制阀门关闭后,P1.6口能检测到高电平中断,单片机控制电机停转。在电机启动正反转时,ADC采集电路工作,同时定时器打开并开始计时。当定时器定时超过阈值,且ADC检测值到电机堵转,则继续等待20ms后关闭电机。关于ADC采集电路的检测,当电机未堵转,则ADC采集的值几乎为零。当电机堵转时,ADC采集值将超过正常阈值,为保证电机可靠打开或关闭,在检测到电机堵转时,使电机再继续转动20ms后关闭电机。

4.5其他电路设计

其他电路包括液晶显示设计、按键设计、防拆电路设计等。

液晶用于显示当前当前时间、剩余水量、已用水量、购买添加水量历史等信息。正常情况下,液晶不工作,用于保证系统的低功耗性能。只在有按键触发时,才点亮屏幕并显示相关信息。当无操作一段时间后,单片机将再次关闭屏幕。

按键功能包括设置时间、报警清除、点亮屏幕等功能。当单片机供电过低报警时,为保证紧急供水的需要,允许手动清除报警3次,手动清除报警后,每隔15分钟会再次检查供电。当3次手动清除后供电电压仍未恢复,则强制关闭供水阀门。当供电电量恢复时,清除计数。

防拆电路是为了保证在用于更换电池时,阀门电路一定是关闭的。防止出现水表不供电,不工作,但阀门一直打开的情况。

5 系统软件的设计

软件设计逻辑上,中断时置标志位,采用主程序逐个扫描相关标志位是否置位,置位则处理相关子程序处理并返回,继续扫描标志位。当检测次数超过规定次数时,进入芯片的低功耗模式。

只有中断才可以将MSP430从低功耗LMP4下唤醒。当有中断产生时,初始化相关外设并循环扫描相关标志位,处理相关信号或数据后再次进入低功耗状态。其中,低电压报警后,由于开启内部定时器,因此进入的是低功耗模式LPM3,以保证内部定时器的运行。

程序主要实现了IC卡读写,液晶显示,数据采集,低电量检测、电机控制、定时等部分相关代码,通过逻辑组合完成整个设计上的逻辑实现。

6 系统低功耗的设计

产品的低功耗是软件和硬件结合的结果。硬件方面往往与微处理器选型、电源转换芯片的特性、二极管和三极管的选型,其他电路的搭建等等有关。软件方面则与代码效率、使用芯片的低功耗等级、低功耗模式下IO口及外设模块的处理有关。

本设计的功耗主要由四部分组成:一是单片机正常运行时的电量消耗;二是点亮液晶屏幕、蜂鸣器报警等的短时间电量电量消耗;三是电阀开启或关闭时的瞬时电量消耗;四是硬件电路设计上的电量消耗,如电压转换电路、ADC采集电路等等;五是待机电量消耗。其中,前三部分占了总功耗的90%以上。

为实现本设计的低功耗要求,硬件上使用低功耗电动阀、IC器件。软件上提高代码效率、关闭不必要的外设始终、合理使用不同的芯片时钟,减少芯片在正常运行和低功耗运行时的消耗。

7 系统抗干扰和稳定性的设计

任何设计都需要考虑其抗干扰能力和对周围电磁环境的影响(即EMI)。本设计主要从硬件上提高其抗干扰能力和EMI性能,硬件上采用双干簧管电路保证采集的准确性、良好的地线设计等。

系统稳定性上,则从软件上入手。例如,只在中断中置标志位,相应的子程序在主程序中执行;在单片机退出低功耗模式时打开看门狗,防止软件跑飞等措施。

8 结束语

本文探讨了一种基于低功耗单片机在智能水表上可行性和相关方法、评估了其设计的低功耗性能。文中提出了总体的设计方案,并给出了硬件设计思路,同时说明了软件的实现方法,对其抗干扰及低功耗性能也做了相应评估。

[1]《MSP430x41x Mixed Signal Microcontroller》2008.12.11

[2]《MSP430F413 Device Erratasheet》2015.04.29

猜你喜欢

智能水表低功耗水量
小水量超纯水制备系统的最佳工艺选择
移动支付近场通信智能水表系统探究
浅析智能水表对用水计量检测装置的性能影响
一种高速低功耗比较器设计
智能水表的计量特性与应用现状分析
江西:全面推广使用智能水表
基于水力压裂钻孔的注水量及压裂半径的应用研究
分散药包千吨注水量的水压爆破
压缩机级间冷却冷凝析水量计算
ADI推出三款超低功耗多通道ADC