在线情况
楼主
  • 头像
  • 级别
  • 门派
  • 职务总版主
  • 声望+9
  • 财富5
  • 积分3065
  • 经验390701
  • 文章6744
  • 注册2006-03-07
基于MSP430单片机的超低功耗数据采集器设计
作者: 刘立群 孙志毅 金坤善 太原重型机械学院

           [COLOR=blue]基于MSP430 单片机的超低功耗数据采集器设计[/COLOR]
 The De ign of Ultra_low Power Con umptive Data Collector Ba ed on MSP430 Single Chip Computer

摘要介绍一种以MSP430 系列单片机为核心的数据采集器,以零功耗磁敏传感器作为采集前端,适用于远传抄表系统的数据采
集。具体阐述仪器的工作原理、主要特点、硬件电路设计和软件设计。

0 引言
近年来,智能小区这一概念逐渐进入人们的视野,而自动抄表系统是智能小区的重要功能之一。在水、电、气管理方面,采用自动抄表技术不仅能节约人力资源,更重要的是可提高抄表的准确性,减少因估计或誊写而造成的帐单出错现象,使水、电、气管理部门能及时准确获得数据信息,用户也不再需要与抄表者预约上门抄表时间,还能迅速查询帐单,所以这种技术越来越受到用户欢迎。本文针对目前市场上自动抄表系统价格不菲的现状,设计出一种由零功耗磁敏传感器产生脉冲信号、利用MSP430 系列超低功耗单片机的捕获功能捕获信号
的数据采集器。该采集器价格相对低廉,性能可靠,适用于水、煤气、电表的远传。

1 工作原理
该数据采集器通过对传统电表、水表、气表的改进使其成为远传表。以普通的煤气表为例,选择在基表最后一级齿轮处加一磁铁(不算显示部分的逐级传递齿轮)。该级齿轮每转一圈都要拨动显示部分的逐级传递齿轮8 次,每拨一次是0.001m3,所以每转一圈共计0.008m3 的煤气。也就是最后一级齿轮每转125 圈即拨动显示部分的逐级传递齿轮1000 次,煤气表的显示部分的计数为1m3。当小磁铁经过零功耗磁敏传感器表面时产生脉冲信号,利用MSP430 单片机的捕获功能捕获到信号,引起中断,数据存储区地址1 单元自加1,若加到125,地址2 单元自加1,地址1 单元清零。存储区地址2 单元中的数据就是煤气表基表的数据。

2 主要特点
① 采用零功耗磁敏传感器作为采集前端,工作时无须使用外加电源,且无触点、耐腐蚀、防水,寿命很长。
② 采用MSP430 系列单片机中的MSP430F449 作为数据处理芯片,性能优良,价格低廉。
③ 采集电路功耗很低,可采用2 节1 # R20 × 1.5V铁壳电池或CR123A × 3V 锂电池供电,电池寿命正常情况下在2 年以上。

3 数据采集器的软硬件设计
3 .1 单片机选型
TI 公司的MSP430 系列是一个超低功耗类型的单片机,特别适合于电池应用的场合或手持设备。该单片机在1.8V ~ 3.6V 电压、1MHz 的时钟条件下,耗电电流在0.1 ~ 400µA 之间;含有P0 ~ P6 7 个I / O 口、2 个定时器(Timer A、Timer B)、1 个看门狗,内部集成2K 的ROM 和60K 的RAM,可十万次重复编程;MSP430 系列单片机均为工业级的产品,运行环境温度为- 40℃ ~+ 85℃;而MSP430 系列单片机一般单价只有几十元。由此可以看出,MSP430 系列单片机的性价比不错,完全能够满足系统开发的需要。

3 .2 传感器选型
在远传抄表系统中,有多种传感器可供选用,常用的有光电传感器和霍尔传感器。但光电式传感器和霍尔传感器工作时都需要供电,电流一般为毫安级,这将导致供电电池的极大耗费。对于煤气表来说,在基表中通电还会引起安全方面的问题。所以,本文选用零功耗磁敏传感器,它工作时无须使用外加电源,适用于微功耗仪表,在远传抄表系统中是一种较好的采集用传感器。零功耗磁敏传感器是利用韦根德效应制成的,又名韦根德传感器,是利用磁性双稳态功能合金材料中的磁畴在磁场中的运动特性制作而成的。当外磁场发生变化时,磁畴磁化方向瞬间发生翻转,而当外磁场撤离后又瞬间恢复到原有的磁化方向,由此在合金材料周围的检测线圈中感生出电脉冲信号而实现磁电转换。

3 .3 硬件电路设计
基于MSP430F449 单片机的数据采集器电路原理
                       图如图1 所示。
  [imga]../../upload/2006/10/19/191413.gif[/imga]
    图1 基于MSP430F449 单片机的数据采集器电路原理图
① 电源电路MSP430F449 单片机的工作电压在1.8 ~ 3.6V 之间,工作电流在0.1 ~ 400µA 之间。本电路工作电压为3V,可由CR123A × 3V 锂电池为单片机供电。而内部模块分别由模拟电源和数字电源两种电源供电,图1 中锂电池就可以提供单片机两种电源。
 VCC 处接锂电池,DVCC1、AVCC、DVSS1、AVSS、DVCC2、DVSS2、VREF +分别对应单片机的数字电源电压正端、模拟电源正端、数字电源参考点、模拟电源负端、数字电源正端、数字电源参考点和A/ D 转换器内部参考源的输出正端。

② 复位电路如图1 所示,单片机的复位电路接在94 引脚处。

③ 传感器电路经过试验,零功耗磁敏传感器可直接接到单片机的捕获端口TA0。当装在煤气表齿轮上的小磁铁经过传感器表面时产生脉冲信号,利用单片机的捕获功能捕获信号。

④ 晶振电路图1 中提供了高速和低速两个晶振电路,可给单片机内部的不同模块输出3 种不同频率的时钟。用户可用高速晶体产生频率较高的MCLK供给CPU 以满足高速的数据运算的需要;也可以在不需要CPU 工作时关闭高速晶体;而对于实时时钟可用低速晶体产生频率较低的ACLK。

3 .4 软件设计
MSP430 的开发软件较多,本文采用IAR 公司的集成开发环境———IAR Embedded workbench 嵌入式工作台以及调试器C - SPY。利用MSP430 单片机的捕获功能,测试单片机能准确捕获到来自传感器的信号。本文所设计的程序包括主程序和中断程序两部分。主程序对单片机进行初始化,定义单片机时钟、上升沿捕获和输入输出端口设置等工作。中断程序可为单片机不断检测捕获模块中断标志位是否置位,如捕获到来自传感器的信号,捕获模块中断
标志置位,引起中断;如没有捕获到来自传感器的信号,程序继续检测捕获模块中断标志位是否置位。若单片机捕获到信号,在数据存储区的某一位置记录数据。
主程序流程图如图2 所示。
   
  [imga]../../upload/2006/10/19/191420.gif[/imga]
             图2 主流程图

 4 结束语
本文从采集数据的安全性和可靠性两个方面着手,选用了新型传感器和低功耗MSP430 系列单片机设计出了用于远传抄表系统的数据采集器。实验的结果表明,该数据采集器捕获信号准确,电路设计和软件设计合理,具有很好的应用前景。

参考文献
1 魏小龙.MSP430 系列单片机接口技术及系统设计实例[M]. 北京:北京航空航天大学出版社,2002 - 11

2 梁福平,刘国忠. 传感器在电能表自动抄表系统中的应用[J]. 北京机械工业学院学报,1998,4

3 刘立群,孙志毅,阎学文. 自动抄表系统中几种传感器的应用[J].太原重型机械学院学报,2004,25(3)

4 王洪锋,夏明飞,王坚. 单片机与微机的远距离串行通信[J]. 电力自动化设备,2002,22(5)

5 张淼,周晨. 基于PIC 系列单片机的智能流量积算仪[J]. 自动化仪表,2002,23(4)
[COLOR=#0000ff]欢迎发贴分享设计心得、开源DIY...[/COLOR]
在线情况
2
  • 头像
  • 级别
    • 积分8
    • 经验547
    • 文章16
    • 注册2007-03-30
    看了这么多总版主的贴,感觉很好。但是能不能发一些 <<基于msp430的手持式射频识别读写器电源系统及低功耗的设计>> 呢??
    希望大家能互相帮助。
    在线情况
    3
    • 头像
    • 级别
      • 积分1
      • 经验27
      • 文章1
      • 注册2007-05-03
      我做的毕业设计就是数据采集系统.呵呵
      希望能在这找到一些资料
      微控网感谢您的参与
      在线情况
      4
      • 头像
      • 级别
        • 积分3
        • 经验184
        • 文章8
        • 注册2007-01-22
        我做的也是数据采集,希望可以交流一下,我个信箱:hwp_boy@163.com
        微控网感谢您的参与
        在线情况
        5
        • 头像
        • 级别
          • 积分30
          • 经验4170
          • 文章139
          • 注册2006-10-19
          好文章!!!!
          微控网感谢您的参与
          在线情况
          6
          • 头像
          • 级别
            • 积分4
            • 经验337
            • 文章5
            • 注册2007-04-10
            我做的是嵌入式数据库,基于MSP430单片机的,我已经把数据库软件烧入flash中,我还要写如何将串口得到的数据(通过上位机)给已烧入单片机中的软件处理这块程序,当然输入的是一些查询,删除,插入语句,如SELECT *FROM STUDENT,但是我不知道将这些语句如何给软件处理,能帮我一下吗,希望快点,谢谢!!!!!!!!!
            微控网感谢您的参与
            Powered by LeadBBS 9.2 .
            Page created in 0.1865 seconds with 5 queries.