基于ZigBee技术的分布式温室监控系统的设计

时间:2011-07-25

  本文利用ZigBee 技术提出一种无线分布式温室监控系统的设计, 从而实现对温室环境参数的自动检测和控制。

  1 温室监控系统的构成

  基于ZigBee 技术的分布式温室监控系统结构如图1 所示。

图1 基于ZigBee 技术的分布式温室监控系统结构图

图1 基于ZigBee 技术的分布式温室监控系统结构图

  整个系统由无线传感器、执行机构、温室控制器、监控计算机以及RS485 总线五大部分组成。温室中温度、湿度、光照等各类无线传感器、执行机构作为ZigBee 网络中的终端设备(RFD) , 通过ZigBee 无线网络通道实现与作为ZigBee 网络中协调器( FFD) 的控制器进行数据通信。监控计算机负责监控整个温室群的运行状况, 具体包括设定控制参数和实现系统实时监测, 通过RS485 总线接收具体温室控制器传送的历史数据,完成数据管理、历史资料统计分析任务, 同时还可实现数据的显示、编辑、存储、输出打印等功能。各温室的控制器通过RS485总线, 经过RS485 /232 转换器与监控计算机进行数据交换, 接收监控中心的命令, 并根据需要向中心发送数据。

  考虑到温室中环境较为简单, 采用ZigBee 技术的无线传感器网络采用星型网络配置, 单温室内由一个控制器( 主设备)和多个传感器、执行机构设备( 从设备) 组成。所有的终端设备都只与控制器通信。

  2 系统硬件设计

  2.1 无线传感器网络节点的硬件设计

  典型的无线传感器网络节点由数采控制单元、微处理器单元、无线通信单元和供电单元四个主要部分组成。数采控制单元由传感器、执行机构进行监测区域内待测对象的信息采集和控制; 微处理器单元实现数据的分析、处理和存储等功能; 无线通信单元负责低功耗短距离节点与控制器间的通信; 供电单元则选取小型化、高容量的电池, 以确保节点的长寿命和微型化。具体节点设计原理框图如图2 所示。

图2 无线传感器网络节点原理框图

图2 无线传感器网络节点原理框图

  数采控制单元主要由传感器、调理电路, 控制电路组成, 根据实际需要选择合适传感器对监测区域内温度、湿度、光照等物理信号进行测试, 并根据上层命令对执行机构进行操作, 实时监控温室环境信息。

  微处理器单元采用TI 公司MSP430 系列单片机, 是一种具有集成度高、功能丰富、功耗极低等技术特点的16 位单片机。超低功耗的混合信号控制器、丰富的片内外设、节能考虑的多种工作模式和对C 语言程序设计的支持, 使得MSP430 系列单片机非常适合于应用在嵌入式系统中。设计中选用带有Flash 存储器可进行在线编程的MSP430F149 单片机; 外围模块有看门狗、定时器A/B、同步/异步串行通信接口、10 /12 位A/D 以及6个8 位并行端口等多种组合形式。其实现功能主要有: 操作无线收发芯片, 通过SPI 口与GPIO 对CC2420 工作状态控制和传输数据; 本地数据处理, 剔除冗余数据, 以减少网络传输的负载和对无线传输数据的封装与验证; 应答控制中心查询, 完成数据的转发与存储; 节点电源管理, 合理地设置待机状态, 以节省能量消耗, 延长节点使用寿命。

  无线通信单元中, 选用了Chipcon 公司的CC2420 射频收发器, 它实现ZigBee 协议的物理层( PHY) 及媒体访问控制器(MAC) 层, 低耗电、250kbps 传输速率、快速唤醒时间(<30ms ) 、CSMA- CA 通道状态侦测等特性。其外围电路包括晶振时钟电路、射频输入输出匹配电路以及微控制器接口电路, MCU 通过SPI 以及几个GPIO 对C2420 进行设置与读写数据。射频信号输出设计采用PCB 上的引线作为天线

  ZigBee 网络节点采用两节5 号电池, 经过升压DC /DC 芯片CP1402 转换到3.3V和5V, 电池使用效率可达85%。整体根据需要切换高低频率、单片机的低功耗模式, 同时采用模拟开关来控制各个传感器的供电, 在不需要采集数据时关断电源以进一步降低功耗。

  2.2 控制器的硬件设计

  在该系统中控制器是无线传感器网络与监控中心的中转站, 负责发送命令( 查询、分配地址等) , 接收下层节点的请求与数据, 承担着ZigBee 网络中各节点与RS485 总线的数据交换任务。其硬件设计框图如图3 所示。无线通信单元与网络节点部分的相同, 电平转换单元采用MAX485 实现TTL 与RS485 之间的转换。

图3 控制器原理框图

图3 控制器原理框图

  3 系统软件设计

  在系统的软件设计中, 协议栈的设计直接关系到整个网络系统的运行。根据ZigBee 星型网络, 协调器与终端设备在网络中的功能、地位不同, 网络节点与控制器的软件设计上也有所区别。下面主要对协议栈、网络节点与控制器的软件设计作主要介绍。

  3.1 协议栈

  在本设计中, 协议栈是使用C 语言编写的, 协议栈使用闪存程序存储器来存储可配置的MAC 地址、网络表和绑定表。整个协议栈构架如图4 所示。

图4 协议栈构架

图4 协议栈构架

  协议栈根据ZigBee 规范的定义将其逻辑分为多个层。实现每个层的代码位于一个独立的源文件中, 而服务和应用程序接口(API) 则在头文件中定义。要实现抽象性和模块性, 顶层总是通过定义完善的API 和紧接着的下一层进行交互, 该层的C头文件定义该层所支持的所有API。

  应用程序总是与应用层(APL) 和应用支持子层(APS) 接口,APL 模块提供协议栈管理功能, 用户应用程序使用此模块来管理协议栈功能。APS 层主要提供ZigBee 端点接口。应用程序将使用该层打开或关闭一个或多个端点并且获取或发送数据。它还为键值对(KVP) 和报文(MSG) 数据传输提供了原语。当首次对协调器编程时绑定表为空, 主应用程序必须调用正确的绑定API来创建新的绑定项。APS 还有一个间接发送缓冲器RAM, 用来存储间接帧, 直到目标接收者请求这些帧为止。MAC_MAX_DATA_REQ_PERIOD 编译时间选项定义了确切的请求时间。节点请求数据时间越长, 数据包需要保存在间接发送缓冲器里的时间也越长, 数据请求时间越长需要的间接缓冲空间越大。

  网络层(NWK) 负责建立和维护网络连接, 它独立处理传入数据请求、关联、解除关联和孤立通知请求。ZigBee 设备对象(ZDO) 负责接收和处理远程设备的不同请求。介质访问控制(MAC)层实现了IEEE 802.15.4 规范所要求的功能, 并负责同物理( PHY) 层进行交互。

  3.2 网络节点的软件设计

  网络节点主要负责采集传感器数据并将这些数据传送给协调器( 控制器) , 同时接收来自协调器( 控制器) 的数据并根据这些数据进行相关操作。网络节点上电后扫描所有可用信道来找到临近协调器, 申请加入此网络。由于采用电池供电方式, 必须要保证终端节点的低功耗, 设计中采用定时唤醒的方式连接协调器, 接收或发送数据。其它时间则转入休眠模式, 节点功耗降到。网络节点的软件流程图如图5 所示。

图5 网络节点软件流程图

图5 网络节点软件流程图

  3.3 控制器的软件设计

  作为网络中的协调器, 按功能可分为两个部分: 网络创建与管理功能; 数据传输功能。网络创建与管理功能主要是负责组建ZigBee 网络, 分配网络地址及维护绑定表。协调器通过扫描一个空信道来创建一个新网络, 维护一个目前连接设备的列表, 支持独立扫描程序来确保以前的连接设备能够重新加入网络。数据传输功能主要是充当ZigBee 网络与RS485 总线之间的网关, 将两个使用不同协议的网络连接在一起, 对两个网络中的使用不同传输协议的数据进行互相的转换。控制器软件流程如图6 所示。

图6 控制器软件流程图

图6 控制器软件流程图

  4 关键技术

  1) 系统中的应用与网络层标准建立在IEEE 802.15.4 物理层与媒体接入控制层标准的基础之上, 所使用的射频通信为公开的2.4GHz 的ISM频段, 在物理层采用抗干扰非常强的DSSS 直序扩频技术进行传输, 在MAC 协议层采用了CSMA- CA 的碰撞避免机制, 避免了发送数据时的竞争和冲突;采用应答机制的数据传输方式, 保证信息传输的可靠性;

  2) 组网设计采用简单的星型网络拓扑, 无需人工干预可感知节点的存在, 并确定连接关系, 组成结构化的网络; 增加、删除或移动节点等等, 网络都能够自我修复无需人工干预, 保证整个系统仍然能正常工作;

  3) 无线网络容量大, 单个温室无线传感器网络可以容纳多254 个从设备和一个主设备, 一个区域内可以同时存在200多个ZigBee 网络;

  4) 实现超低功耗即可延长节点和网络的寿命, 节点的能量消耗有三方面: 传感器件数据采集、微处理单元的数据存储与处理和无线模块数据接收/发射。其中能量消耗的是在射频信号发射过程中, 设置节点休眠与唤醒机制, 限度降低能量消耗。节点在深度睡眠时电流只有1.6μA, 输出功率0dbm, 唤醒周期为1s 的平均电流为250μA 左右。

  5 结束语

  把低成本、低功耗的无线ZigBee 技术应用于分布式温室监控系统, 不但能够实现对温室环境的自动监测控制, 还提高了系统应用的灵活性, 同时也减少了环境监控系统现场布线带来的各种问题。采用ZigBee 技术实现的无线分布式温室监控系统颇具推广应用价值。

参考文献:

[1]. RS485  datasheet https://www.dzsc.com/datasheet/RS485+_585289.html.
[2]. MSP430  datasheet https://www.dzsc.com/datasheet/MSP430+_490166.html.
[3]. MSP430F149  datasheet https://www.dzsc.com/datasheet/MSP430F149+_874114.html.
[4]. CC2420  datasheet https://www.dzsc.com/datasheet/CC2420+_213269.html.
[5]. PCB  datasheet https://www.dzsc.com/datasheet/PCB+_1201640.html.
[6]. MAX485  datasheet https://www.dzsc.com/datasheet/MAX485+_859396.html.
[7]. TTL  datasheet https://www.dzsc.com/datasheet/TTL+_1174409.html.

上一篇:车载雷达防追尾预警系统设计
下一篇:应用于高速串行收发器的CDR电路的设计

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料