当前位置:首页 > 物联网 > 《物联网技术》杂志
[导读]摘要:针对当前农业发展的需要,通过采用ZigBee与串口通信技术将温室信息实时传输到监测系统,使种植者可以及时了解大棚环境,并根据接收到的数据对大棚环境进行控制。以VB.NET开发上位机程序,用传感器接收温湿度数据,并通过ZigBee无线通信模块将信息通过串口传送给上位机,再由上位机监测软件完成数据的存储。对大棚中每一个节点的温湿度进行实时显示,当超出系统预先设定的温湿度期望值区间时,发出报警声音。实验说明,基于ZigBee的无线传感网络监测系统有着低功耗、小体积、使用简单方便等特点,更加适合现代化的农业发展。

引言

大棚环境监测系统实时地对大棚的温度、湿度等环境因素进行检测,减少了种植人员的工作量;及时地对不利环境进行报警,减少了因为人工疏忽而造成的农作物减产的情况;记录大棚各个时段的环境数据,方便农民对农作物的生长情况作出更全面的了解,方便农民控制大棚环境,使之利于农作物的生长。对大棚温室的控制与管理是农业自动化生产的重要领域。目前,绝大多数的温室控制系统的信号传播方式都是有线传输,大量的布线不可避免。有线传输布线复杂,布线成本高,大棚内的环境温湿度都比较高,使得系统的抗干扰性和可靠性降低,后期的维护难度比较大。而采用无线传输方式可以有效地解决以上问题。

本文设计的大棚环境监测系统,使用单片机和温湿度传感器组成数据采集节点,采用无线射频CC2530(ZigBee)技术进行数据传输,上位机开发则采用VisualBasic.NET和Access数据库系统,将无线节点所采集到的温湿度信息实时地显示到系统界面,从而达到对温度监测的目的。

1ZigBee技术简介

ZigBee是一种便宜的、低功耗的近距离无线组网通信技术,它有可能运用于几乎所有行业的低速率、短距离的无线通信,近些年多应用于智能家居、工业应用、智能交通、智能建筑和医院应用等。ZigBee的显著特点就是低速率、低功耗、低成本、自配置和灵活的网络拓扑结构。由于ZigBee技术的传输速率低,传输数据量很小,因此信号的收发时间短;而在非工作模式中,ZigBee节点又处于休眠状态,所以ZigBee节点非常省电。由于ZigBee协议栈相对于其他无线传输技术要简单得多,降低了对控制器的要求,因此可以采用8位单片机和规模很小的存储器,很大程度上减小了系统开发的成本。在可通信的距离内,ZigBee通过网络协调器自动建立网络,采用CSMA-CA方式进行信道接入;节点设备可以随意地加入和退出,是一种自组织、自配置的组网方式。ZigBee有多重网络拓扑结构,可以根据不同的需求使用相应的拓扑结构,具有较强的灵活性。

2系统结构设计

本系统由终端节点、协调器(也称为ZigBee网关)和数据库管理系统组成。终端节点对温湿度实时采集,经过C51单片机处理后上传到ZigBee无线网络。其中,每个ZigBee模块还具有中继功能,以免因距离过远无法传输。数据库管理系统采用VB.NET开发人机界面。如图1所示,ZigBee模块负责收集大棚温度数据、湿度数据并进行无线发送,避免了布线的麻烦,与其配套的上位机软件是一个拥有良好界面的数据监控和存储中心。下位机主要完成数据的采集与发送,上位机完成数据的分析和存储。本系统中ZigBee终端节点上装有温湿度传感器,负责采集大棚温湿度数据,而ZigBee模块负责通过无线网络传输数据信息,ZigBee网关节点负责收集终端节点的信息并通过RS232传输给上位机,上位机系统需要实现温湿度数据的实时显示以及数据的存储、查询、删除等功能。

3 系统硬件结构组成

环境监测系统硬件装置由终端节点和协调器两大部分组成,系统结构图如图2所示。通常一套装置只有一个协调器,其主要包括微控制器、射频收发单元、无线节点和电源模块以及接口单元。在系统的硬件选择上,主要从温湿度的精确度、检测范围和经济适用度方面进行考虑。笔者主要采用集成的温湿度传感器以及CC2530作为ZigBee模块。

本系统下位机终端节点包括温湿度传感器、单片机和ZigBee模块。将终端节点按用户要求放置到大棚中,温湿度传感器将大棚环境信息收集上来,通过IIC总线将数据传输到STC12LE5204AD单片机进行数据处理。因为STC12LE5204AD没有IIC接口,所以本系统采用IO接口进行模拟叫单片机将处理过的数据信息传输给ZigBee模块,该模块将数据在无线网络中按照ZigBee网络协议传输到作为ZigBee网关的协调器,再通过RS232串口传输到上位机,进行数据处理等操作。当终端节点距离协调器过远,无法将信息直接传送到协调器时,可以自主地转送到其他终端节点进行数据中继,进而传输到协调器中。

4系统软件设计

计算机上位机监测软件在MicrosoftVisualStudio2008环境下开发,系统将下位机收集到的温湿度信息交给Access数据库进行标准化管理。种植者可以通过计算机监测软件查询大棚环境历史信息,通过监测界面监测到大棚温湿度的实时变化,能够设置大棚环境的报警阈值和下位机匹配的硬件参数等。

4.1数据接收模块

为了使下位机采集到的数据可以传输到上位机,需要编写串口通信程序进行串口通信。在MicrosoftVisualStudio2008中编写串口通信程序,一般都使用MicrosoftCommunicationControK简称MSComm)的通信控件,只要通过对此控件的属性和事件进行相应编程操作,就可以轻松地实现串口通信。但是,VisualStudio.Net没有将此控件加入控件库,所以人们采用了其他方法在VisualStudio.Net来编写串口通信程序,本系统利用SerialPort类进行串口编程。本系统需要实现下位机参数可以灵活匹配的功能,可以通过编写相应程序得以实现。

设计时,应首先打开串口连接;判断下位机参数是否已正确选择,下位机参数有五个,都需要进行判断;之后便可与下位机参数进行匹配,设置串口参数;再建立串口通信事件;最后接收数据信息。下面是其部分代码:

PrivateSubSerialPort1_DataReceived(ByValsenderAsSystem.Object,ByValeAsSystem.IO.Ports.SerialDataReceivedEventArgs)HandlesSerialPort1.DataReceived

'引入SerialPort类,接收数据HOneData(第一个节点的湿度)等三组六个数据

DimbyteToReadAsInt16=SerialPort1.BytesToRead()

IfbyteToRead=21Then

Dimch(byteToRead)AsByte

DimbytesReadAsInt16=0

bytesRead=SerialPort1.Read(ch,0,byteToRead)'用来存放接收到的数据

Ifch(0)=170Andch(1)=85Then'判断读取下位机数据的长度是否为有效的

HOneData=CLng("&H"&Hex(ch(2)&ch(3)))/10'十六进制转成十进制(前面的),并且小数点向左进一位(除以10)

图3所示是其数据接收模块流程图。

4.2数据处理模块

环境数据信息从下位机通过RS232串口传输到上位机系统,需要进行分析、转换等操作。数据按照规定的帧格式传输,每帧包含3个数据,分别为节点编号、温度数据、湿度数据,均以十六进制形式表示。上位机接收到数据后,分离其中的数据位,依次取出节点编号、温度数据、湿度数据中的值,进行十六进制数据转换成十进制数据的操作后,保存到数据库中。数据处理模块的流程图如图4所示。下面是其部分代码:

ImportsSystem.Data.OleDb'弓|用access控件

PublicLHGconnAsNewOleDb.OleDbConnection(

"provider=microsoft.jet.oledb.4.0;"&"datasource="&

My.Application.Info.DirectoryPath&"\NewData.mdb;")'打

开数据库,路径为相对路径

Try

IfLHGconn.State<>ConnectionState.ClosedThenLHGconn.Close()

LHGconn.Open()

CallRAlarm()'数据库连接,错误则报警

4.3数据显示模块

数据显示模块是整个监测系统中最重要的模块,需要将接收到的下位机数据以实时波动曲线的形式展示给种植者,该模块使用.NETFramweork构架中提供的GDI+类库进行绘图。系统界面中设计两个坐标轴,分别用来显示温度数据和湿度数据。系统获取从下位机接收到的数据在坐标轴中进行绘图,获取到的十六进制数据信息通过分析处理转化为十进制数据,再通过数学计算,确定该数据信息在坐标轴上的坐标值。将相邻两个坐标点用画线的方法连接起来,则形成了实时显示的曲线。使用Bitmap类,用来封装GDI+位图,此位图由图形图像及其属性的像素数据组成。Bitmap是用于处理由像素数据定义的图像的对象,相当于定义画布。使用Graphics对象所提供的Graphics.FromImage方法从指定的Image创建新的Graphics,相当于定义了一个画笔,使用picturebox控件来显示所绘制的图形和图像。

5结语

基于ZigBee的大棚环境监测系统实现的是温度和湿度数据的无线检测,具有数据传输可靠、组网简单灵活、设备成本低等特点。本系统能够实时采集环境数据,将大棚环境信息及时地传递给用户,用户可以及时地掌握大棚环境,从而对环境进行调节与控制,避免因为人为疏忽造成的农作物减产等不良影响,符合农业现代化发展的需求,具有一定的应用价值。

20211106_61863d78565e1__基于ZigBee的大棚环境监测系统设计

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

物联网应用中常见的通信技术包括有线通信技术和无线通信技术两大类。有线通信技术包括以太网、RS-232、RS-485、M-Bus和PLC等技术。这些技术通过物理线路进行数据传输,具有稳定性强、可靠性高的优点,但是受限于媒介...

关键字: 物联网 Zigbee

上位机串口通信是指在上位机(通常是计算机或微控制器)与外部设备之间通过串行通信协议进行数据传输和通信的过程。在串口通信中,数据以位为单位按顺序传送,通常使用一个或两个物理线路(通常是两条线)来实现数据的发送和接收。

关键字: 上位机 串口通信

串口通信(Serial Communication)是一种常用的数据传输方式,它通过串行数据线逐位传输数据,具有成本低、简单易用、可靠性高等优点。在工业控制、通信设备、嵌入式系统等领域得到广泛应用。

关键字: 串口通信 嵌入式系统

串口通信是一种常见的通信方式,用于在不同设备之间传输数据。它通过串行数据线(通常是一对TXD和RXD线)在设备之间进行通信。串口通信具有简单、可靠、成本低等优点,因此在工业控制、嵌入式系统、数据采集等领域得到广泛应用。

关键字: 串口通信 串口编程

串口通信是一种常见的通信方式,主要应用于计算机和其他设备之间的数据传输。它的主要原理是利用串行数据传输的方式,将数据一位一位地按顺序传输,而不是同时传输所有的数据。下面我们来看看串口通信的主要原理以及如何提高其传输速度。

关键字: 串口通信 串口速度

串口通信是一种常见的通信方式,它通过串行方式传输数据。串口通信的原理相对简单,主要涉及到数据位的传输和接收。在串口通信中,数据按照一定的波特率(baud rate)逐位传输。通常,一个字节的数据由8位组成,所以传输一个字...

关键字: 串口通信 波特率

RS 232串口通信是一种常见的串行通信协议,广泛应用于计算机和其他设备之间的数据传输。它是由美国电子工业协会(EIA)制定的一种标准,规定了数据传输的物理层和部分数据链路层的规范。

关键字: RS 232 串口通信

虽然 USB 几乎完全取代那些旧电缆和连接器,但 UART 绝对不会成为过去。您会发现许多 DIY 电子项目都使用 UART。

关键字: UART 串口通信 USB

ZigBee,也称紫蜂,是一种低速短距离传输的无线网上协议,底层是采用IEEE 802.15.4标准规范的媒体访问层与物理层。主要特色有低速、低耗电、低成本、支持大量网上节点、支持多种网上拓扑。

关键字: Zigbee 通信 无线网上协议

STM32是一款由STMicroelectronics生产的微控制器系列,具有高性能、低功耗和丰富的外设资源。其中,串口通信是一种常用的通信方式,可以实现与其他设备之间的数据传输。

关键字: STM32 串口通信 微控制器
关闭
关闭