微波EDA网,见证研发工程师的成长!
首页 > 射频和无线通信 > 射频无线通信文库 > 基于ZigBee 的多点温度采集系统设计与实现

基于ZigBee 的多点温度采集系统设计与实现

时间:07-18 来源:互联网 点击:

富的硬件资源,使得外围电路的设计变得十分简单。

主节点是整个网络的协调器,作为全功能设备(FullFunction Device,FFD),负责网络组建和维护、温度采集数据无线接收、与上位PC 机串口通信。因此采用CC2430-F128(128kB Flash)芯片,并在CC2430 典型应用电路的基础上扩展串行通信接口,选用MAX3232 芯片实现TTL 与RS232 电平转换。ZigBee 主节点的硬件电路如图2 所示。

图2 ZigBee 主节点电路

3.2 从节点硬件设计

从节点主要负责温度采集和数据无线传输, 可作为简化功能设备(Reduced Function Device,RFD),以降低功耗和成本。芯片采用CC2430-F32(32kB Flash),其硬件电路和主节点大致相同, 只是去掉了串口通信电路,同时在从节点芯片的I / O 口上接入多个温度传感器DS18B20 以实现多点温度数据的采集。

DS18B20 是“单总线
总线

总线是将信息以一个或多个源部件传送到一个或多个目的部件的一组传输线。通俗的说,就是多个部件间的公共连线,用于在各个部件之间传输信息。人们常常以MHz表示的速度来描述总线频率。 [全文]

”数字温度传感器,其测量温度范围为-55℃~+125℃,支持3~5. 5V 电压供电, 主要由四部分组成:64 位光刻ROM、温度传感器、非易失性温度报警触发器和配置寄存器。ROM 中的64 位序列号出厂前已光刻固化,每个传感器的序列号都是唯一的,因此可以在一根总线上挂接多个DS18B20,能极大减少I/O 口的占用。本系统中用DS18B20 进行多点温度采集时,传感器与从节点的CC2430 的连接形式如图3 所示。

图3 温度传感器节点连接图

由于ZigBee 设备功耗很低,并且能设置成定时睡眠模式以进一步省电,而DS18B20 本身功率也非常小,所以本系统中的主、从各节点均采用2 节1.5V 电池
电池

电池是一种能量转化与储存的装置,它通过反映将化学能或者物理能转化为电能。电池即一种化学电源,它由两种不同成分的电化学活性电极分别组成正负两极浸泡再能提供媒体传导作用的电解质中,当连接在某一外部载体上时,通过转换其内部的化学能来提供电能。 [全文]

供电即可满足实际需要。

4 系统软件设计

4.1 温度传感器数据采集

DS18B20 可设定9~12 位的分辨率,本系统采用12位分辨率,转换精度为0. 0625℃,转换温度信号所需最长时间为750ms。温度数据由2 字节组成,以符号扩展的二进制补码形式存储,最低4 位是小数部分,中间7 位是整数部分, 1 位符号位。

DS18B20 内部RAM 由9 个字节的高速缓存器和E2PROM 组成,前2 个字节即为温度数据。通过复位指令、ROM 和RAM 功能命令,即可完成对指定DS18B20温度数据的采集和读取, 所有读写操作都是通过与CC2430 的I/O 口连接的DQ 引脚完成。

在一线制总线上串接多个DS18B20 器件时,需要先发送跳过ROM 指令,将所有传感器都进行一次温度转换,之后通过匹配ROM 依次读取每个传感器的温度数据,实现对单I/O 口上的多个DS18B20 器件的操作。整个温度采集的流程如图4 所示。

图4 DS18B20 温度采集流程图

4.2 ZigBee 无线组网及数据通信

ZigBee 通信协议采用分层结构,节点通过在不同层上的特定服务来完成所要执行的各种任务。本系统采用TI 提供的ZigBee2006 协议栈Z-Stack,在IEEE 802.15.4 标准物理层(PHY)和媒体访问控制层(MAC)基础上增加了网络层、应用层和安全服务规范,是一种较好的无线传感网络组建方案。

ZigBee 设备类型按网络功能分为三种:协调器、路由器、终端。由于本系统采用星型网络拓扑结构,所以只存在协调器和终端两种设备。

本系统中主节点被初始化为网络协调器。协调器包含所有的网络消息, 存储容量最大、计算能力最强。

它的功能是发送网络信标、建立网络、管理网络节点、存储网络节点信息、收发信息。

从节点被初始化为无信标网络中的终端设备。上电复位后,即开始搜索指定信道上的网络协调器,并发出连接请求。建立连接成功后, 从节点将得到一个16 位的网络短地址,并采用非时隙CSMA-CA 机制,通过竞争取得信道使用权,向主节点发送数据。各从节点每30 秒读取一次I/O 接口上多片温度传感器数值, 同时开启睡眠定时器,当数据发送成功后该节点立即进入睡眠状态,最大程度地降低功耗, 延长从节点的电池使用时间。

数据包的格式由从节点串接的DS18B20 的数量决定,每个DS18B20 传输的数据长度定义为3 字节,第1 字节为标识符,包括从节点编号,CC2430 的I/O 口编号以及此温度传感器的编号, 后2 个字节为温度采集数据。

主节点收到数据包后, 对数据进行分析处理, 把从节点上的每个温度传感器的数据采集值进行转换,得到实际的温度值,然后发送给上位PC 机。主从各节点的组网及通信流程如

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top