基于WIFI技术的农业大棚环境实时监测系统的设计
2014-12-13宋林桂,陈清
宋林桂,陈清
摘 要:本文提出了基于WIFI技术的农业大棚环境实时监测系统的设计思想,通过STM32F103C8T6微控制器和环境监测传感器实时地监测大棚里的环境温湿度、光照、土壤湿度、CO2浓度、视频等环境信息并通过WIFI技术无线将数据信息传到电脑终端,用户可以在电脑终端远程查看大棚里环境信息和作物的生长情况。
关键词:WIFI技术;STM32F103C8T6;视频;环境监测
中图分类号:TP311 文献标识码:A
1 引言(Introduction)
目前农业生产仍然以传统生产模式为主,传统大棚只能凭经验灌溉放风拉关遮阳网。同时传统的农业生产模式无法监测大棚里的环境信息,不能科学有效地促进作物的产量、品质和调节生长周期。本文提出了一种基于WIFI技术的农业大棚环境实时监测系统设计实现方案,通过WIFI技术无线传输农业大棚的环境信息和视频到用户端,解决了农业传统生产模式存在的一些问题。
2 系统总体设计(System design)
图1 系统框图
Fig.1 The block diagram of the system
WIFI是一种目前得到广泛应用的短距离无线通信技术,具有成本低、不需布线等优点,可随机接入因特网是一种比较理想的大棚环境监测解决方案[1]。系统将环境信息和视频通过网络发送到电脑终端,系统为了避免布网线采用了WIFI技术,系统采用刷了OpenWrt系统的3G路由器作为无线传输模块。OpenWrt系统自带了MJPG-streamer软件和Ser2net软件,MJPG-streamer软件传输摄像头采集的视频实现视频监控的作用,Ser2net软件实现网络数据和串口数据互相转换。3G路由器在无遮挡的情况下有效传输距离为150m,能够满足近距离的数据传输,如需增大传输距离需增加外置大功率天线[2]。
系统通过STM32F103C8T6微控制器和传感器监测大棚里面的影响作物生长的环境因素:环境温湿度、光照、CO2浓度、土壤湿度,微控制器通过串口将这些环境信息通过3G路由器发送出去。刷了OpenWrt系统的3G路由器支持UVC格式的USB摄像头,3G路由器将USB摄像头采集到的视频发送出去。电脑终端装有大功率的无线路由器,同时电脑终端装有上位机软件来实时地显示3G路由器发送过来的视频和环境信息[3]。
3 系统硬件设计(Hardware design)
3.1 微控制器最小系统的设计
STM32F103C8T6是意法半导体推出STM32增强型系列微控制器,STM32是Cortex-M3内核32位ARM,STM32具有高速度、高性能、低功耗、低成本等优点。STM32内部集成了ADC、I2C、SPI等外设资源,现在占据工业控制领域很大的市场。
3.2 传感器电路设计
温湿度传感器采用AM2301,AM2301工作电压是3.3—5.5V,供电采用3.3V,AM2301的DATA引脚用于STM32F103C8T6微控制器与AW2301之间的通讯和同步;光照传感器采用TSL2561,TSL2561是TAOS公司推出的一种高速、低功耗、宽量程、可编程灵活配置的光强度数字转换芯片。TSL2561工作电压是2.7—3.5V,供电采用3.3V,TSL2561具有I2C和SMBus接口,本设计使用I2C接口,TSL2561的I2C接口接到微控制器的I2C_1接口;土壤湿度传感器采用MP-508B土壤湿度传感器,土壤湿度传感器的工作电压是7—15V,供电采用12V,土壤湿度传感器的测量范围是0%—100%,信号输出是0—1V,信号输出接微控制器的ADC_IN1引脚。CO2浓度传感器采用CDT-500系列农业防护型CO2变送器,CO2变送器的工作电压是12—24V,供电采用12V,CO2变送器的测量范围是0—5000ppm,信号输出是4—20mA的模拟量输出,信号输出经过I/U转换送给微控制器的ADC_IN2引脚。
4 下位机的软件设计(The microcontroller software
design)
为了降低系统整体功耗和优化微控制器程序,微控制器通过定时器定时20分钟采集环境温湿度、光照、土壤湿度、CO2浓度等数据并通过微控制器串口发送给3G路由器的串口,20分钟发送一次环境信息数据完全可以满足农业大棚环境信息数据实时更新的要求。
4.1 AM2301软件设计原理
微处理器与AM2301之间采用单总线数据格式通信,一次通讯时间5ms左右,具体格式在下面说明,一次数据传输为40位,高位先出。
数据格式:40bit数据=16bit湿度数据+16bit温度数据+8bit校验和微控制器发送一次开始信号后, AM2301从低功耗模式转换到高速模式,等待主机开始信号结束后, AM2301发送响应信号,送出40bit的数据,并触发一次信号采集。
4.2 TSL2561软件设计原理
TSL2561其内部连接一个光敏二极管(通道0)和一个红外响应光敏二极管(通道1)。TSL2561内部集成两个积分式A/D转换器,可将光敏电流转换成一个数字量,并存入TSL2561芯片内部通道0和通道1各自的寄存器中。微控制器则通过I2C总线协议对其内部的寄存器的读写来实现对TSL2561的控制。数字量表示测量每一个通道的光强,可以是微处理器的输入。当积分式A/D转换器转换完成后,能够从通道0寄存器和通道1寄存器读取相应的值CH0和CH1,但是要以Lux(流明)为单位,还要根据CH0和CH1进行计算。endprint
4.3 STM32的ADC软件设计原理
STM32F103C8T6有两路12位逐次比较型ADC,本设计ADC的参考电压采用电源电压。STM32F103C8T6的ADC1的通道1在PA1上,ADC2的通道2在PA2上,所以PA1和PA2的I/O口模式要配置成模拟输入模式。使用PA1和PA2作为ADC输入口需要的软件配置的过程:(1)开启PA口时钟和ADC时钟,配置PA1和PA2口配置成模拟量输入模式。(2)复位ADC,配置ADC时钟分频因子。(3)初始化ADC参数,配置ADC工作模式。(4)读取ADC值。
4.4 STM32串口软件设计原理和串口通信协议
串口是微控制器的一个重要资源,串口能够实现多个微控制器的之间的通信并且在微控制器程序调试的过程中有重要的作用。STM32F103C8T6具有三路串口,STM32F103C8T6使用USART1和3G路由器模块通信。STM32使用串口USART1需要软件配置的过程:(1)开启PA口和USART1时钟。(2)GPIO端口模式设置:PA9配置成复用推挽使出模式,PA10配置成浮空输入模式。(3)复位USART1,初始化USART1参数。(4)开启中断并且初始化 NVIC。(5)使能USART1。(6)编写中断处理函数。
为了优化软件和串口通信的可靠性,让串口一次发送的环境信息数据按照协议组成一帧数据。协议的起始标志位是$。光照度和CO2浓度分别用16位二进制数表示,高位在前。土壤湿度和环境温湿度分别用16位二进制数表示,高位在前,高8位表示整数,低八位表示小数。最后8位表示校验位,系统采用CRC8校验。
5 系统测试(System test)
为了验证系统能够正常工作,通过上位机调试软件接受WIFI发过来的环境信息。如图5所示,这说明下位机可以正常工作。
图2 上位机软件接受环境信息数据截图
Fig.2 PC software displays the receiving environment
information data
6 结论(Conclusion)
本系统不仅能无线传输作物生长的必要环境信息也能传输了作物生长状况的视频到电脑终端,系统利于用户科学地管理大棚。基于WIFI技术的农业大棚环境实时监测系统不仅减少了人力物力的浪费而且提高了农作物的经济效益。
参考文献(References)
[1] 汤莉莉,等.基于Cortex-M3微控制器的 WiFi物联网小车的
设计[J].无线电工程,2014,44(4):58-61.
[2] 张传真,张莉,江建军.Android平台无线视频监控小
车的设计[J].电子测量技术,2013,36(10):19-22.
[3] 朱丹峰,葛主冉,林晓雷.基于Android平台的无线遥
控智能小车[J].电子器件,2013,36(3):408-412.
作者简介:
宋林桂(1990-),男,本科,助理实验师.研究领域:嵌入式应
用设计.
陈 清(1954-),男,本科,副教授.研究领域:硬件电路
设计.endprint
4.3 STM32的ADC软件设计原理
STM32F103C8T6有两路12位逐次比较型ADC,本设计ADC的参考电压采用电源电压。STM32F103C8T6的ADC1的通道1在PA1上,ADC2的通道2在PA2上,所以PA1和PA2的I/O口模式要配置成模拟输入模式。使用PA1和PA2作为ADC输入口需要的软件配置的过程:(1)开启PA口时钟和ADC时钟,配置PA1和PA2口配置成模拟量输入模式。(2)复位ADC,配置ADC时钟分频因子。(3)初始化ADC参数,配置ADC工作模式。(4)读取ADC值。
4.4 STM32串口软件设计原理和串口通信协议
串口是微控制器的一个重要资源,串口能够实现多个微控制器的之间的通信并且在微控制器程序调试的过程中有重要的作用。STM32F103C8T6具有三路串口,STM32F103C8T6使用USART1和3G路由器模块通信。STM32使用串口USART1需要软件配置的过程:(1)开启PA口和USART1时钟。(2)GPIO端口模式设置:PA9配置成复用推挽使出模式,PA10配置成浮空输入模式。(3)复位USART1,初始化USART1参数。(4)开启中断并且初始化 NVIC。(5)使能USART1。(6)编写中断处理函数。
为了优化软件和串口通信的可靠性,让串口一次发送的环境信息数据按照协议组成一帧数据。协议的起始标志位是$。光照度和CO2浓度分别用16位二进制数表示,高位在前。土壤湿度和环境温湿度分别用16位二进制数表示,高位在前,高8位表示整数,低八位表示小数。最后8位表示校验位,系统采用CRC8校验。
5 系统测试(System test)
为了验证系统能够正常工作,通过上位机调试软件接受WIFI发过来的环境信息。如图5所示,这说明下位机可以正常工作。
图2 上位机软件接受环境信息数据截图
Fig.2 PC software displays the receiving environment
information data
6 结论(Conclusion)
本系统不仅能无线传输作物生长的必要环境信息也能传输了作物生长状况的视频到电脑终端,系统利于用户科学地管理大棚。基于WIFI技术的农业大棚环境实时监测系统不仅减少了人力物力的浪费而且提高了农作物的经济效益。
参考文献(References)
[1] 汤莉莉,等.基于Cortex-M3微控制器的 WiFi物联网小车的
设计[J].无线电工程,2014,44(4):58-61.
[2] 张传真,张莉,江建军.Android平台无线视频监控小
车的设计[J].电子测量技术,2013,36(10):19-22.
[3] 朱丹峰,葛主冉,林晓雷.基于Android平台的无线遥
控智能小车[J].电子器件,2013,36(3):408-412.
作者简介:
宋林桂(1990-),男,本科,助理实验师.研究领域:嵌入式应
用设计.
陈 清(1954-),男,本科,副教授.研究领域:硬件电路
设计.endprint
4.3 STM32的ADC软件设计原理
STM32F103C8T6有两路12位逐次比较型ADC,本设计ADC的参考电压采用电源电压。STM32F103C8T6的ADC1的通道1在PA1上,ADC2的通道2在PA2上,所以PA1和PA2的I/O口模式要配置成模拟输入模式。使用PA1和PA2作为ADC输入口需要的软件配置的过程:(1)开启PA口时钟和ADC时钟,配置PA1和PA2口配置成模拟量输入模式。(2)复位ADC,配置ADC时钟分频因子。(3)初始化ADC参数,配置ADC工作模式。(4)读取ADC值。
4.4 STM32串口软件设计原理和串口通信协议
串口是微控制器的一个重要资源,串口能够实现多个微控制器的之间的通信并且在微控制器程序调试的过程中有重要的作用。STM32F103C8T6具有三路串口,STM32F103C8T6使用USART1和3G路由器模块通信。STM32使用串口USART1需要软件配置的过程:(1)开启PA口和USART1时钟。(2)GPIO端口模式设置:PA9配置成复用推挽使出模式,PA10配置成浮空输入模式。(3)复位USART1,初始化USART1参数。(4)开启中断并且初始化 NVIC。(5)使能USART1。(6)编写中断处理函数。
为了优化软件和串口通信的可靠性,让串口一次发送的环境信息数据按照协议组成一帧数据。协议的起始标志位是$。光照度和CO2浓度分别用16位二进制数表示,高位在前。土壤湿度和环境温湿度分别用16位二进制数表示,高位在前,高8位表示整数,低八位表示小数。最后8位表示校验位,系统采用CRC8校验。
5 系统测试(System test)
为了验证系统能够正常工作,通过上位机调试软件接受WIFI发过来的环境信息。如图5所示,这说明下位机可以正常工作。
图2 上位机软件接受环境信息数据截图
Fig.2 PC software displays the receiving environment
information data
6 结论(Conclusion)
本系统不仅能无线传输作物生长的必要环境信息也能传输了作物生长状况的视频到电脑终端,系统利于用户科学地管理大棚。基于WIFI技术的农业大棚环境实时监测系统不仅减少了人力物力的浪费而且提高了农作物的经济效益。
参考文献(References)
[1] 汤莉莉,等.基于Cortex-M3微控制器的 WiFi物联网小车的
设计[J].无线电工程,2014,44(4):58-61.
[2] 张传真,张莉,江建军.Android平台无线视频监控小
车的设计[J].电子测量技术,2013,36(10):19-22.
[3] 朱丹峰,葛主冉,林晓雷.基于Android平台的无线遥
控智能小车[J].电子器件,2013,36(3):408-412.
作者简介:
宋林桂(1990-),男,本科,助理实验师.研究领域:嵌入式应
用设计.
陈 清(1954-),男,本科,副教授.研究领域:硬件电路
设计.endprint