三 信号处理硬件电路组成
硬件电路中使用的元器件的数量越少,系统的可靠性越高。因此,设计系统时尽量使用了集成度高的器件。图3.1给出水表的硬件电路设计框图。

3.1 处理器模块
单片机作为系统的核心处理器需要根据流量仪表整体性能的要求来选择适当型号的。本测量系统进行的数学运算并不是很多,侧重于降低功耗、提高运行速度,从这一点出发,选用了TI公司生产的MSP430F44X作为本测量系的CPU。
TI先进的CMOS技术使芯片具有很宽的性能范围和很低的工作电流。由于采用全静态CMOS设计,电源操作能耗很低,但非常可靠。MSP430有正常工作模式(AM)和4种低功耗工作模式(LPM1、LPM2、LPM3、LPM4),而且可以方便地在各种工作模式之间切换。它的超低功耗性能能够满足电池供电的水表系统。系统在初始化后进入待机模式,当有允许的中断请求时,CPU将在6uS的时间内被唤醒,进入活动模式,执行中断服务程序。执行完毕,在RETI指令之后,系统返回到中断前的状态,继续低功耗模式。
MSP430F447单片机引进了“用户可选择振荡器”的新设计概念,它允许用户在3种振荡器工作方式(分别为带锁频环的内部DCO振荡器, 外部高频震荡器XT2,外部低频震荡LFXT1,工作频率范围从直流到8MHZ)中选择一种振荡器形式让芯片执行指令,以优化系统的功耗。在本测量系统中,为了提高可靠性和降低系统功耗,选择了带锁频环的内部DCO振荡器和外部LFXT1相结合的方式。通常情况下使系统进入低功耗模式3,仅让外部LFXT1工作以提供实时时钟,当有中断发生时,唤醒带锁频环的高速内部DCO振荡器,让其处理发生的事件,处理完后再进入低功耗模式。
单片机内部除了具备32K位的FlashRom,1K位的数据RAM和大量的I/O口外,它还有定时/计数器模块、同步串行口SPI模块等等。在本测量系统中,利用定时器的比较捕获功能,非常方便的测量涡街信号的频率。MSP430F447内部集成强大的液晶驱动器,可驱动160段之多。这为流速和流量的显示提供了很大的方便,无需再外加液晶驱动电路,既降低了功耗,又方便了设计。
3.2放大整形电路
信号放大整形电路的作用是把电磁传感器送来的涡街电脉冲信号转换成标准方波脉冲信号。由于传感器输出的信号比较微弱,为满足后续处理电路的要求,需要较大的放大倍数,故采用了多级放大电路。对该环节的运算放大器和比较器的选取都要非常讲究,因为要满足低功耗要求,且各个性能指标(带宽、共模抑制比、失调电流电压)均需满足放大电路要求。
放大电路所用的运算放大器选用了TI公司生产的MAX479,它是单电源低电压、超低功耗运算放大器,具有标准管脚配置,非常适合于低功耗应用场合。
整形电路通过比较器来产生规则的方波信号。在整形电路中,比较器选用了MAXIM公司生产的MAX919,它属于超低功耗比较器。
3.3 EEPROM掉电存储模块和通信模块
流量仪表有一些需要长期保存的参数,这些参数有的是设计系统时写入的;有的是由操作者在现场设定的,如多段非线性补偿端点值、上下限报警值;有些参数很重要,要求即使掉电也不能丢失,如累积流量值。能够灵活而又可靠地处理这些参数是现代智能仪表的基本要求,而这些功能通常是由EEPROM存储器来完成的。MSP430F447内部没有数据EEPROM,因此需要外接EEPROM芯片。在本测量系统中,存储芯片选用了ATMEL公司生产的24WC02。它是低电压,串行I2C总线形式的EEPROM。
流量仪表的实时流速、累计流量等参数有时需要远传。基于通信性能和功耗的考虑,本系统中选用了485通信。芯片选用了MAXIM公司生产的MAX3485,它是低电压,低功耗的单双工485通信芯片。
EEPROM和MAX3485的电源由微处理器的I/O管脚控制,以方便的进行开关,达到低功耗要求。
四 软件系统设计
由于汇编语言程序的可读性和可移植性都较差,采用汇编语言编写单片机应用系统,不但周期长,而且调试和排错也比较困难。为了提高编制单片机应用程序的效率,改善程序的可读性和可移植性,这里采用C语言。C语言既具有一般高级语言的特点,又能直接对计算机的硬件进行操作,表达和运算能力也较强。
从结构上看,本测量系统的软件由系统初始化程序、mC/OS-Ⅱ操作系统内核程序,各子任务程序模块,捕获比较中断服务子程序、键盘中断服务子程序等中断驱动程序和其它辅助程序组成。
4.1 处理器工作模式
MSP430F447有多种低功耗的工作模式,如果在任务调度的空闲时间,使CPU进入一种合适的低功耗模式,就能大幅度降低系统功耗。
用户可以利用μC/OS-II中空闲任务的扩展接口,使系统在空闲状态下进入某种低功耗模式,降低系统功耗;同时利用RTI信号作为时钟节拍,周期性地唤醒CPU。CPU被唤醒之后,将执行节拍中断服务程序,重新判断是否有任务处于就绪态。如果有,就执行该任务;如果没有,则重复上面的过程。
根据系统需要,本测量系统中选用LPM3低功耗模式。处于LPM3模式时处理器内部状态如下:CPU处于禁止状态,DCO被禁止,直流发生器被禁止,MCLK被禁止,SMCLK被禁止,ACLK仍保持活动。此时的电流消耗很低,即使液晶模块工作,在3V供电电压下ICC<= 8mA。
4.2 低功耗对实时性的影响
毫无疑问,使CPU进入低功耗模式会减弱系统的实时性。这种减弱来自于两个方面,一是使中断响应时间变长;二是使响应的时间变得不易预测。但MSP430独到的技术使得这一问题迎刃而解。MSP430F447在进入低功耗模式LPM3后,ACLK仍保持工作,以驱动系统的实时时钟。任何中断都可以在6ms内将CPU唤醒,先进的锁频环技术使高速时钟在很短的时间内就能稳定下来,以及时的处理突发事件。
4.3 合理的采样率和快速算法
数据采集部分的设计需根据实际情况,不要只顾提高采样率,因为模数转换时功耗较大,过大的采样速率不仅功耗大,而且为了传输处理大量的冗余数据,也会额外消耗CPU的时间和功耗。
数字信号处理中的运算,采用FFT和快速卷积等,可以大量节省运算时间,从而减少功耗;在精度允许的情况下,使用简单函数代替复杂函数作近似,也可以减少功耗。
五 现场性能测试结果
5.1 低流速下的频率信号
测试现场系统运行于100 mm口径,流体为自来水的情况下。图5.1为在1.2
流速下信号放大电路的输出波形,虽然不是很稳定,但是已经可以读出频率信号。图5.2为在1.5
流速下的输出波形,图5.3为在1.8
流速下的输出波形。随着流速的增大,波形趋于稳定,流速增大到1.8
时,信号已经非常稳定。


5.2 功耗的测试
表5.1为系统运行于现场的功耗数据记录。由表可见,在整个量程范围内,电流都在100mA以下,实现了整个系统的低功耗。
表5.1
现场流 ) |
系统消耗电流(mA) |
1.2 |
13~26 |
1.8 |
16~28 |
3 |
18~28 |
8 |
20~28 |
15 |
25~35 |
30 |
45~50 |
40 |
48~63 |
50 |
50~55 |
60 |
58~63 |
80 |
75~83 |
120 |
92~98 |
六 结束语
现场测试结果表明,本文设计的基于MSP430芯片的电磁涡街水表功耗低,系统消耗电流在量程范围内不出超过100mA。在水表运行于常用流量段时(100
),系统总电流为60mA。按此推算,一节3600mAH的锂电池理论上可供系统至少使用2年之久。100mm口径的水表可以测出1.2的低流速,超过了B级水表的量程范围;流速1.2
时,累积流量测量精度为1%,远远超过B级水表的精度,同时具备了涡街流量计精度高和机械水表低流速测量的优点。
实践应用表明这种新型的低功耗电磁涡街水表适用范围广,测量下限低,可靠、节能,是一种理想自来水流量测量仪表。
参考文献
[1]莫德举,李立平,郭红晓,电磁法检测漩涡频率的涡街流量计,北京化工大学学报:自然科学版-2001年1期
[2]TI INTEGRATED PRODUCTS, 2005
[3]MAXIM INTEGRATED PRODUCTS, 2005
[4]MSP430 Microcontroller Data Book, 2002/2003, P10-1-P10-140.
[5]魏小龙,MPS430单片机应用系统的低功耗设计,测控技术,1998,第17卷,第6期,P47-4
[5] Labrosse Jean J. uC/OSII——源码公开的实时嵌入式操作系统. 邵贝贝译. 北京: 中国电力出版社, 2001
[6]Frank J.Testa, IEEE754 compliant floating point routines, MicrochipTechnology Inc,1997