何振宽,杨成佳
吉林建筑大学 电气与计算机学院,长春 130118
物联网技术指的是一种依托于射频识别、传感器、无线通信等技术并在互联网的基础上进行人与物、物与物之间交流的网络,可以将物联网看作是一种互联网的延伸,其将传统通讯网络拓展到了现实世界,是一种现实世界与互联网虚拟世界的结合.这一技术突破了原本只能人与人之间进行交流的局限性,将万物互联起来,极大地推动了人类社会的进步发展[1].目前,物联网在绿色农业、智能家居、智能物流、智能医疗等领域都能提供丰富的应用.
我国虽是畜牧业大国,但总体的智能化水平较低,多数还是传统的养殖方法,与国外智能化畜牧业养殖相差甚远.总体来看,智能化的技术和设备在中国的养殖业领域还未普及.为加快农业养殖发展方式的转变,用现代科学技术服务于农业养殖,从而推进农业养殖生产标准化、智能化[2].本文依托物联网,将传感技术、无线通信技术应用于养殖领域,创新性的应用云计算和云存储.将复杂、繁琐、模糊的人工劳作转换为计算机的精准智能控制,解决了养殖中温度控制,有害气体含量,环境整洁,通风保持等重要问题,极大节约了劳动力,提高了生产效率.
图1 总体方案Fig.1 General scheme
本系统采用B/S模式,智能移动终端在有网络连
接的情况下,可以通过浏览器访问云服务器来查看信息,方便快捷.硬件部分采用的是STM32和各种传感器模块,所有传感器都连接在主控芯片上,可通过连接云服务器进行通讯.系统由硬件节点采集各种数据,数据经互联网汇集到服务器实时存储,供用户查看相关参数信息.按照此思路对系统进行了总体方案的设计, 如图1所示.该系统具有以下功能:
(1) 温湿度监测及排风、加湿功能. 温湿度传感器将监测到的数据传送至云服务器,养殖用户可以使用智能终端访问服务器,实时显示养殖环境的温湿度情况,当养殖舍内的温度超过阈值时,主控芯片控制风扇自动打开,迅速降低舍内温度;当养殖舍内的湿度低于阈值时,主控芯片向继电器模块发出信号,控制水泵的开启,提高舍内的湿度.
(2) 空气质量检测功能. 二氧化碳传感器实时检测养殖舍内二氧化碳含量并将数据实时传入服务器,用户可以实时查看当前数据.当二氧化碳含量超标时,主控芯片向步进电机驱动模块发出指令,控制步进电机的开启,增加空气流通.除此之外,通过设置定时程序,来控制与继电器模块相连的水泵,定时冲刷舍内地面,以保持环境卫生.
(3) 光照监测功能. 通过光敏传感器实时感测光线强度,当光线较弱时主控芯片开启LED灯光;当光线较强时,主控芯片控制LED灯关闭.
在感知层的设计方面,使用C语言作为底层硬件部分的开发语言,它能以简易的方式编译、处理低级存储器.与汇编语言相比,C语言在可维护性、可读性、结构性、功能性上有明显的优势.
全面感知是物联网在感知层的特点.各个传感器节点各司其职实时监测,将各个模拟信号转换成数字信号,完成环境参数数据的采集.温湿度传感器和二氧化碳传感器对养殖环境进行检测,获取温度、湿度以及二氧化碳含量状况并及时控制舍内风扇、水泵、步进电机的开启与关闭;光敏传感器获得光照强度,从而控制灯光的开启与关闭;使用定时器继电器模块控制水泵开启完成对室内地面的定时清扫.感知层设计图如图2所示.各传感器模块工作情况如下:
(1) 温湿度传感器模块. DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器.它应用专用的数字模块采集技术和温湿度传感技术,确保具有极高的可靠性与卓越的长期稳定性.该传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能单片机相连接.因此该传感器具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点.每个DHT11传感器都在极为精准的湿度校验室中进行校准,校准系数以程序的形式存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数[3-4].DHT11器件采用简化的单总线通信.单总线即只有一根数据线,系统中的数据交换、控制均由单总线完成.单总线通常要求外接一个约5.1 kΩ的上拉电阻,这样,当总线闲置时,其状态为高电平.由于它们是主从结极,只有主机呼叫从机时,从机才能应答,因此主机访问器件都必须严格遵循单总线序列,如果出现序列混乱,器件将不响应主机.
(2) 二氧化碳传感器模块. AOUT: 模拟输出量,二氧化碳浓度越高,输出的电压值就越小.该模块对环境温湿度的依赖小,性能稳定,快速恢复响应.芯片检测到的气体量对应的电压值变化,主控芯片可以直接使用ADC进行连接.DOUT: 数字量的输出量为AOUT和可调电阻的输出电压值比较的结果,输出信号量0和1.
(3) 光敏传感器模块. 由敏感元件、转换器件、信号调节电路、辅助电源四部分组成.光敏传感器是Risym光敏传感器,该传感器是开关传感器,采用比较器输出,信号干净,波形较好,驱动能力强,配有可调电位器可以调节监测光线强度,输出是开关量输出0或1,输入是模拟量.模块在环境光线亮度达不到设定阈值时,DO端输出高电平,当外界环境光线强度超过设定阈值时,DO端输出低电平.
本系统使用的主控芯片为STM32F103ZET6,该芯片使用高性能的嵌入式ARM Cortex-M3处理器,具有低成本、低功耗、高性能的特点.其中主控芯片引脚图如图3所示.
图2 感知层设计Fig.2 Design of perception layer
图3 STM32F103ZET6主控芯片引脚Fig.3 Pin of STM32F103ZET6 main control chip
可靠传输是物联网在网络层的突出特点.系统硬件端应用传感技术有线连接至主控芯片,通过Wi-Fi 模块经路由器连接至阿里云服务器,养殖用户通过智能终端访问并获取相关服务.网络层用来连接底层的物理设备与云服务器,实现数据的通信.阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联提供源源不断的能源动力.阿里云物联网平台向下支持设备功能自定义,向上提供API和自定义API,可以通过调用云端API将指令下发至设备端,实现远程控制[5].阿里云服务器运行稳定,速度较快,可以提供一种弹性可伸缩的计算服务,帮助用户降低IT成本,提升运维效率.系统使用ESP8266模块与阿里云服务器进行网络连接,阿里云服务器数据处理流程如图4所示.其中ESP8266模块采用标准的IEEE802.11b协议,具有10个电容电阻电感,能够独立运行,强大的片上处理与存储能力是该模块的突出特点.其中Wi-Fi传输部分程序如下:
void ESP8266_STA_TCPClient_Init(void)
{
printf (" 正在配置ESP8266请耐心等待... " );
ESP8266_CH_PD_Pin_SetH;
ESP8266_AT_Test();
ESP8266_Net_Mode_Choose(STA);
while(!ESP8266_JoinAP(User_ESP8266_SSID, User_ESP8266_PWD));
ESP8266_Enable_MultipleId ( DISABLE );
while(!ESP8266_Link_Server(enumTCP, User_ESP8266_TCPServer_IP, User_ESP8266_TCPServer_PORT, Single_ID_0));
while(!ESP8266_UnvarnishSend());
printf (" 配置ESP8266 OK! ");
esp8266isok=1;
}
智能处理是物联网在应用层的特点.应用层的网页前端显示使用Java语言设计,Java语言的设计目标之一是适应于动态变化的环境.运用Java语言设计显示温湿度等状态界面,然后将设计好的前端程序部署到阿里云服务器.系统采用阿里云服务器来接收和处理底层硬件节点发送的数据,使用Java语言编写程序,用于监听各个端口中的数据,云服务器作为连接网页端与硬件的中间平台.用户可以通过移动终端浏览器访问IP地址进入云服务器,用户成功登录之后可以查看温湿度、二氧化碳含量、光照强度以及灯光、步进电机卷帘门、风扇、水泵浇水的状态信息.其中,应用层数据流程如图5所示,前端界面显示如图6所示.
本文基于物联网技术和传感器技术创造性地提出了一种高效率、易操作、低成本的养殖方案,具有较高的应用与推广价值.本系统利用传感器采集养殖舍的环境信息,并通过串口、Wi-Fi模块和以太网传输至云服务器,实现养殖舍的智能管理,对提高经济效益具有重要意义.今后还需要进一步提高传感器和养殖系统的稳定性和可靠性.