基于ZigBee通信的防霜机远程监控系统设计

2021-07-04 11:12车小伟
数字通信世界 2021年6期
关键词:字节启动控制器

车小伟

(天水师范学院机电与汽车工程学院,甘肃 天水 741000)

0 引言

霜冻是影响农业生产的一种常见气象灾害,常发生于春季温度快速回升时。霜冻的出现,严重影响了果树芽或花苞的生长,大幅降低果树结果量,造成了较大的经济损失。为了降低霜冻对植物生长的影响,常采用灌溉、熏烟和覆膜等保护措施,但这些方法操作费时费力,不力于规模农业防霜作业。随着技术的发展,利用逆温原理,进行气流扰动增温逐渐成为一种环保高效的防霜技术手段。该类型防霜机使用三相异步电动机作为动力源带动风叶转动,从而强制将逆温层的暖气流吹送到近地面,提高近地面温度,保护果树。本文设计了基于ZigBee通信的防霜机监控系统,通过采集的环境参数来决定防霜机是否启动,并对电机运行状态进行监测,从而提高农业自动化程度。

1 系统结构

本文在普通防霜机机械结构的基础上设计监控系统,该系统分为上位机计算机控制软件部分和下位机控制器部分。计算机控制软件主要实现传感器数据显示、防霜机启停决策控制及多机联控功能。控制器安装于防霜机上以采集防霜机周围环境的温度、湿度、风速、大气压力值等参数并传输至控制计算机,计算机根据设定的防霜机启动条件下发控制命令至控制器,控制器通过驱动继电器让继电器常开触点闭合、接触器线圈得电,从而接触器主触点闭合,三相异步电动机带动风叶转动,防霜机开始工作。系统通过光电编码器测量电机转速,从而得知电机运行状态。整个系统的结构如图1所示。

图1 防霜机控制器结构图

为了在较大区域内进行防霜冻作业,需要多台防霜机同时工作,因此本设计使用ZigBee通信方式将多个防霜机组网控制。ZigBee作为常用的一种常见无线通信方式,具有低功耗、低成本、低速率、通信距离较远(在无遮挡情况下,通过增加天线发射功率,通信距离可达1~2公里)的特点,适合于本设计。

2 硬件设计

2.1 MCU选择

由于本文设计的控制器使用ZigBee通信方式,因此控制器主控芯片选择具有片上系统(SOC)功能的CC2530芯片,该芯片集成2.4-GHz IEEE 802.15.4 协议,配合少许电路,就可以实现 ZigBee通信,降低了系统设计与调试难度,提高了系统的可靠性。

2.2 传感器选择

温湿度传感器选择DHT11传感器,DHT11是一款具有已校准数字信号输出功能的温湿度传感器。其精度分别为:湿度±5% RH,温度±2 ℃,量程湿度5-95% RH,温度0~+50 ℃,与主控芯片间采用单总线方式通信,节省I/O引脚资源,DHT11的第2个引脚(数据引脚)与CC2530的P0.6连接进行通信。

气压传感器选择BOSH公司的BMP390L传感器,该传感器为绝对气压传感器,具有精度高、线性度好、稳定性高的特点,通过I2C总线或SPI总线通信,并可以输出高精度温度值。由于DHT11与BMP390L传感器均可测量温度值,但BMP390L的温度值精度更高,测量范围为-20+65℃,所以温度值由BMP390L传感器获得。BMP390L传感器由P0.4(SDA)、P0.5(SCL)两个引脚通过I2C总线连接至CC2530。

风速传感器由小型直流有刷电机与三杯式旋转风叶组成,其原理相当于一小型风力发电机,输出量为感应电动势值,且基本满足V=F/0.027的关系,式中V为感应电动势(单位为mV),F为风速值(单位为m/s)。该传感器与CC2530的P0.0引脚(AIN0通道)连接,并设置模数转换的参考电压为3.3V、10位分辨率。则ADC转换值与风速的关系为F=0.087*ADC_Value,式中ADC_Value为AIN0通道ADC转换的结果值。

控件器电路如图2所示。

图2 控制器电路图

3 软件设计

整个系统的软件分为上位机监控软件与控制器软件两部分。

3.1 控件器软件

为了提高系统的可靠性,ZigBee网络采用树状网络拓扑结构,与监控计算机连接ZigBee通信模块设置为为协调器,其他设备分配为路由器,软件使用IAR和Z-stack 2.5.1配合使用开发。对于每一个节点控制器,其功能主要由两个任务完成:发送数据与接收数据,发送数据使用10秒一次的间隔发送方式,每次将采集温度、湿度、气压、电机转速的数据,采用广播的形式发送给协调器(监控电脑)。主程序程序流程图如图3所示。

图3 控制器程序流程图

在数据发送时,为了确保接收器收到发送的数据,一个数据包由1字节数据头(固定为0xFF)、8字节MAC地址、2字节温度值、2字节湿度值、2字节大气压力值、2字节风速值、2字节电机转速值及1字节校验码构成,共占20字节。其中数据检验采用CRC8校验方式,以确保数据在传输中的正确性,由于CC2530每个芯片都对应有惟一的地址码MAC,因此使用该码来区别不同的控制器。

计算机端上位机软件根据设备接收到的数据和设定的运行参数比较,满足运行条件时,向设备发送启动与停止命令,其数据格式为数据头(固定为0XFF),8字节MAC地址,1字节命令,1 字节CRC校验。其中命令字节值为0XFF时,启动防霜机运行,运行状态指示灯点亮,为0x00时,停止运行,运行状态指示灯熄灭,其他值为无效值,防霜机不动作。

3.2 计算机控制程序

计算机控制程序使用Visual Studio 2010基于MFC编写,主要功能为每一个防霜机传感器参数显示、防霜机运行状态显示,以及设置防霜机自动运行逻辑判断条件。计算机通过串口与ZigBee协调器连接,因此在MFC中使用系统API函数编写串口通信功能,并且设置通信参数为:波特率=115200,数据位8位,停止位1位,无校验,不使用流控制,串口号根据设备连接时自动分配的串口号。串口接收程序通过接收线程来完成,接收到数据后首先对数据进行校验,以确保传输数据的正确性,然后判断接收数据中MAC地址值是否有对应的设备,如果有对应设备,将数据进行显示,如果无对应设备,则通过消息框提示。防霜机是否启动的判断条件通过逻辑判断实现,将接收数据的参数值与启动条件设定值比较,满足则启动。

4 结束语

本文主要介绍了防霜机多机自动控制的实现方式,使用ZigBee网络将每个防霜机与上位机连接,通过网络上传传感器数据,上位机根据设定条件决定防霜机是否启动,实现了防霜机的自动远程控制。随着着农业智能化的发展,应通过多传感器、大数据方式智能化控制防霜机运行,这也是未来研究的重点。

猜你喜欢
字节启动控制器
工商业IC卡控制器改造为物联网控制器实践
No.8 字节跳动将推出独立出口电商APP
PLC可编程控制器相关外置的选择计算研究
《悦读·家》暨“悦读·家@万家”活动启动
No.10 “字节跳动手机”要来了?
轻量级分组密码Midori64的积分攻击
电启动机的正确使用
西部最大规模云计算中心启动
俄媒:上合组织或9月启动扩员
模糊PID控制器设计及MATLAB仿真