基于Zigbee的温室WSN系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于Zigbee的温室WSN系统设计
摘要:传统温室大棚常采用人工方式对温度、湿度等环境参数进行监控,费时费力。
针对其缺陷,对基于Zigbee技术的无线传感器网络技术在温室大棚的应用进行分析研究,设计了基于2430芯片的节点硬件电路,对RFD终端、路由器及网络协调器节点软件进行了研究及设计。
从实际运行情况可见,终端传感器采集到的数据可以通过无线网络上传给上位机进行显示、存储打印等。
基于Zigbee的温室WSN 系统可以降低工作者的劳动强度,便于组网和推广。
关键词:无线传感器网络;温室;Zigbee;CC2430
0引言
随着生活水平的提高,人们对生活的质量要求越来越高。
温室大棚应运而生,多用于低温季节喜温蔬菜、花卉、林木等植物栽培或育苗等<sup>[1]</sup>。
以前受经济和技术条件的限制,多数大棚采用人工方式进行检测和控制。
对于规模较大的大棚,人工方式既费时又费力。
由于其不易保存温湿度等历史数据的缺陷,不便于我们对温室里蔬菜等植物生长进行研究。
无线传感器网络研究是计算机科学与技术中一个新的研究领域。
随着近几年的发展,无线传感器网络已经逐渐得到行业和学术界的广泛关注,并且在军用和民用领域都具有巨大的应用前景<sup>[2]</sup>。
本文在各监测点放置带有盛世瑞恩DB17110探头的RFD节点,由数字温湿度传感器DHT90实时采集各节点处温湿度信
息,经过RFD处理后通过无线网络传输到网络协调器,由网络协调器通过RS232串口上传至PC。
1WSN系统整体结构框图
温室大棚WSN系统由RFD、COORDINATOR、ROUTER组成<sup>[3]</sup>,其结构如图1所示。
2硬件设计
硬件部分主要由cc2430芯片、盛世瑞恩DB17110探头组成,电路原理如图2所示。
CC2430芯片<sup>[4]</sup>采用ZigBee技术的射频系统单芯片。
其芯片内部集成了增强型51内核MCU、闪存、IEEE802.15.4所需要的全部硬件,非常适合用于无线传感器系统。
盛世瑞恩DB17110探头采用了DHT90数字温湿度传感器,其技术参数如下表1所示。
温湿度换算程序如下:
void calc_sth11(float *p_humidity ,float *p_temperature)
……
t_C=t*0.01 –40.1;//温度转换系数
rh_lin=C3*rh*rh + C2*rh + C1;//相对湿度计算
rh_true=(t_C-25)*(T1+T2*rh)+rh_lin;//温度对湿度信号的补偿
if(rh_true>100)rh_true=100;
if(rh_true<0.1)rh_true=0.1;
*p_temperature=t_C;
*p_humidity=rh_true;
}
3系统软件设计
整个系统中节点有3种类型:RFD、ROUTER和COORDINATOR。
DHT90数字温湿度传感器将采集到的数据传输到RFD的51处理器进行处理,RFD的无线传输模块将处理后的数据通过ROUTER发送到COORDINATOR,网络协调器COORDINATOR 通过RS232接口将数据传输给上位机监控程序处理。
3.1终端节点
RFD节点的主要任务是将采集的数据,经过51处理器进行处理后,通过无线模块发送至路由器,其程序流程如图3所示。
switch (ppState){
case PP_STATE_IDLE://空闲状态
if(++count == 40000)//
{
ppState = PP_STATE_SEND;
count = 0;
}
break;
case PP_STATE_SEND://发送数据状态
{
s_connectionreset();
error=0;
error+=s_measure((unsigned char*)&humi_val.i,&checksum,HUMI);
error+=s_measure((unsigned char*)&temp_val.i,&checksum,TEMP);
if(error!=0)
{s_connectionreset();
……}
else
calc_sth11(&humi_val.f,&temp_val.f);payload[0]=temp_val.i;
payload[1]=humi_val.i;
}
ppState = PP_STATE_WAIT_FOR_TX;
aplSendMSG (APS_DSTMODE_SHORT,//以网络地址发送
&dstADDR,
2,
0,
1,
&payload[0],//数据2,//数据长度
apsGenTSN(),
FALSE);//不需要应用层应答
ppState = PP_STATE_WAIT_FOR_TX;
……
3.2路由器节点
路由器节点上电后检测WSN网络,如果有信号加入网络,获取相应地址,然后循环检测有无相邻路由器或者所属RFD传送的数据,再将其送给上一级路由器或者网络协调器。
路由器其部分程序如下:case PP_STATE_W AIT_FOR_TX://等待发送数据完成
if (apsBusy())break;//如果没有完成则继续发送
if (aplGetStatus()== LRWPAN_STATUS_SUCCESS)
{
ppState = PP_STATE_IDLE;//发送成功切换到空闲状态
}
else
{
ppState = PP_STATE_SEND;//发送不成功,重新发送
}
3.3网络协调器节点
网络协调器主要负责启动整个网络负责启动整个网络、选择信道和PAN ID,将接收到的数据通过RS232串口上传上位机显示。
其串口上传至上位机部分程序如下:
jiedian=aplGetRxSrcSADDR();
ptr = aplGetRxMsgData();
ping_cnt = *ptr;
ptr++;
ping_cnt += ((UINT16)*ptr)<<8;
shidu =(BYTE)(ping_cnt >> 8);
shuju[0]=shidu/10;
shuju[1]=shidu%10;
wendu = (BYTE)ping_cnt;
shuju[2]=wendu/10;
shuju[3]=wendu%10;
U0DBUF=0XFA;
while(UTX0IF==0);
UTX0IF=0;
……
U0DBUF=0XFB;
UTX0IF=1;
4结语
本文将基于Zigbee技术的无线传感器网络应用于温室大棚网络应用中,减轻了农民的劳动强度、降低了人工成本。
该系统容易组网,具有低能耗、扩展性强的优点。
参考文献参考文献:
[1]温室[EB/OL].http:///view/309d75b769dc502 2aaea006b.html.
[2]MIN LIN,DONG YANG,GUO ZHENGWEI.An Uneven
ClusterBased Routing Protocol for Wireless Sensor Networks[C]//Prc.of the 1st International Conference on Information Science and Engineering,IEEE Computer Society,2009.
[3]LIU HAILONG,ZHANG GUIAING,SHEN BIN,et al.Wireless Sensor Networks Design for MultiAgent Systems[C].Proceedings of the 8th World Congress on Intelligent Control and Automation,2010.
[4]CC2430芯片数据手册[EB/OL].http:///download/hualinsen/3266585.。