arduino控制物联网平台微型花园系统设计
作者:张译王霄 胡娟 杨靖 龙道银贵州大学电气工程学院中国电建集团贵州工程有限公司
摘要: 为实现对花园植物生长环境的控制,保证植物正常生长,基于现实背景设计一种Arduino微型花园控制系统。在此选用Arduino Nano作为核心控制器,将传感器技术、WiFi技术、物联网平台、LabVIEW结合起来实现对花园环境的实时监控和及时控制,并具有检测环境温度、环境湿度、土壤湿度、光照度监控等功能。实现分别在串口显示屏、LabVIEW与机智云物联网平台分别显示。运行结果显示,以Arduino为核心设计的系统通过LabVIEW显示与调试之后,能够在一定精度内保证数据无线传输的实时性及达到远程控制的要求,具有功耗较小、成本低廉、扩展方便等优点,非常具有实用价值和商业推广价值。
关键词: 微型花园 机智云物联网平台 Arduino控制 LabVIEW显示 系统设计 运行测试
本设计以Arduino Nano主控板为核心,分模块环境信息采集实现在Lab VIEW制作的上位机完成对采集的数据记录分析,调试上传数据的准确性,加入无线联网方式,借助机智云物联网开放平台上传数据,实现数据的实时显示并远程控制。
1 系统总体框架设计
通过对微型花园控制系统设计的整体布局设计,运用以Arduino控制为控制核心板,在PC机上选择以Lab VIEW作为上位机,利用该平台作为上位机能够设计出更加友好、便捷的用户界面,实时地显示环境信息。利用当下比较流行的无线传输——物联网,在云端存储一定的数据和显示。对比之下,发现机智云物联网平台更符合本次设计要求。采用当下成熟的Wi Fi技术与网络连接通信,实现真正意义上的无线远距离数据传输功能。总体设计框架如下图所示。
https://club.gizwits.com/data/attachment/forum/202103/10/162712crk8c3dhft32rc3d.jpg.thumb.jpg
组建智能的控制系统,硬件作为控制系统的基础和核心,直接影响系统的稳定性、准确性、快速性和能耗性,一定程度上决定了智能系统的上限。本次设计的微型花园控制系统的硬件,主要有Arduino Nano控制板、Usart GPU、传感器、Lab VIEW等。其中,DHT.11、土壤湿度传感器和光照度传感器组成传感器部分,用来检测花园环境的温湿度、光照度及土壤的干湿度。
2 系统硬件设计
2.1 主控制芯片
此次设计采用Arduino Nano。Nano是一款基于Arduino UNO改进的开发板,相对来说,Nano的体积更小,价格便宜,减少了相应的开发成本。Nano作为智能系统的底层控制芯片,下位机程序可通过Arduino IDE烧录完成。Nano可通过表1两种不同方式供电,运用于不同场景,使得应用场景更具多样性、灵活性。
https://club.gizwits.com/data/attachment/forum/202103/10/163259jjcc0x755455nkfc.jpg.thumb.jpg
2.2 温湿度检测模块
此次设计温湿度传感器采用DHT.11,它是一款数字温湿度传感器,含有以校验数字信号输出温湿度复合的传感器。该传感器由一个NTC测温元件和一个电阻式感湿元器件组成,传感器可以在检测信号处理时调用这些校准的系数。单线制串行接口能够让系统集成变得快捷、简单和集成度高。其体积较小、功耗小、信号传输高达20 m,非常适合于硬件开发。它采用专用的温湿度传感技术和数字模块采集技术,能够保障产品极高的长期稳定性。DHT.11管脚说明如表2所示。
https://club.gizwits.com/data/attachment/forum/202103/10/163548xjej5ncrw66d8e4c.jpg.thumb.jpg
图2为DHT.11的工作原理,该传感器通过单总线传送数据,一次传送40 bit,按数据格式顺序为8 bit湿度整数数据、8 bit湿度小数数据、8 bit温度整数数据、8 bit温度小数数据,最后8位为校验位,验证传送的数据是否正确。
2.3 土壤湿度传感器
土壤湿度传感器是采用四线制,包括电源正极、电源负极、TTL数字信号输出和模拟信号输出,其中,电位器可以对光照度阈值调节。土壤湿度传感器接线如图3所示。
2.4 光照度传感器
图4为光照度传感器原理。光敏传感器采用四线制,包括电源正极、电源负极、TTL数字信号输出和模拟信号输出,其中,电位器可以对光照度阈值进行调节。利用光敏元件把光信号转换成电信号传感器,其敏感波长在可见光波长附近,包括红外波长和紫外线波长。所以光谱范围可以由紫外线区延伸到红外线区,优点是灵敏度高、体积较小、价格较低和性能稳定等。在实际电路中,只需要将AO模拟信号接到MCU的I/O口,外接电源供电,GND与MCU共地即可。
https://club.gizwits.com/data/attachment/forum/202103/10/163924jw88x5wgwif2wf4u.jpg.thumb.jpg
图2 DHT.11工作原理
https://club.gizwits.com/data/attachment/forum/202103/10/163937t2hfff6h2f5f6hcs.jpg.thumb.jpg
图3 土壤湿度传感器原理
https://club.gizwits.com/data/attachment/forum/202103/10/164114abn1wsr7xe7yicsi.jpg.thumb.jpg
图4 关照度传感器原理
2.5 串口液晶显示模块
Usart GPU显示屏。需要显示的信息主要是环境温湿度及土壤湿度,选择了Usart GPU显示屏显示环境的实时信息,由于后面的Wi Fi模组已占用到Nano的RX、TX通道,所以采用软串口连接。显示屏主要有前景元素和背景元素。由于该显示器主控芯片STM32具有处理、储存数据能力,可以预先烧录程序作为背景元素,再将需要实时显示的信息设置成前景元素。实际显示中只需要将MCU的TX连接显示屏的RX,同样外接电源与MCU共地即可。
2.6 EPS8266 WiFi模组
Nano通过硬串口与Wi Fi模组连接,Arduino管脚D6、D7用于配置Wi Fi模组工作模式在程序下载完成之后的模式选择,需要将模式调为Air Link Mode实现远程数据监控。将采集到的数据传送至Wi Fi模组,再由Wi Fi模组将数据传送至云端。图6为EPS8266Wi Fi模组原理。
https://club.gizwits.com/data/attachment/forum/202103/10/164540meqyqgel9uza89qa.jpg.thumb.jpg
图5 Usart GPU显示屏
https://club.gizwits.com/data/attachment/forum/202103/10/164634xtz2ajlqjfrra0jj.jpg.thumb.jpg
图6EPS8266 WiFi模组原理
3 系统上位机设计
3.1 上位机Lab VIEW的设计
上位机利用Lab VIEW软件实现植物生长环境的显示与分析。将Lab VIEW与Arduino串口连接,按照数据包头、实际数据和数据校验的格式,利用工业协议Modbus一问一答的主从模式作为标准自行设定协议。设定格式中采用无差别传送数据无需冗余校验码,在实际中Lab VIEW作为上位机通过串口发送校验帧头0x AA、0x BB,再接上特征码以上传不同的环境变量,发送0x AA、0x BB、0x11上传温度信息,发送0x AA、0x BB、0x10上传湿度信息,发送0x AA、0x BB、0x20上传光照度信息。
设计Lab VIEW上位机需要5个函数,第1个是VISA配置串口,它主要是对COM口、波特率、奇偶校验位和停止位进行配置。第2个是VISA写入函数,将特征码等指令通过串口发送给下位机执行相应程序。第3个是VISA串口字节数,将串口中的字节全部读取上来。第4个VISA读取函数,即将读取上来的字节进行显示。第5个VISA关闭通道这样不会一直占用串口资源。Lab VIEW程序前、后面板如图所示。
https://club.gizwits.com/data/attachment/forum/202103/10/164904mdbhhuuu3fsiazru.jpg.thumb.jpg
https://club.gizwits.com/data/attachment/forum/202103/10/164945dsove6ehebf6ivp0.jpg.thumb.jpg
3.2 上位机物联网平台的设计
通过j机智云物联网平台搭建智能控制系统,数据实时上传实现远程观测及控制。在众多的物联网平台中,机智云物联网平台比较好。机智云为有AIoT升级需求的用户提供云管端边一体化解决方案,帮助传统产业高效快速、低成本实现从产线到产品再到服务的全面升级,将物联网共性技术与产业深度融合,有效催生新产品、新业态、新模式、从而带动产业结构转型升级,全面提升生产效率、形成新的经济增长点。业务覆盖交通物流、新能源、工业互联、医疗健康、消费电子等众多行业。
3.2.1机智云物联网平台
机智云是一种比较完备的平台设计,能够对设计需求提供完备的设计方案,对客户的运营管理和数据分析提供很好的服务以及技术支持,实现产品终端智能化。相比于其他开发平台,机智云物联网平台不需要知道下位机上传的数据协议,平台会提供相应的硬件平台代码,底层协议可以不需要过多理解。机智云数值信息界面如下图所示。
https://club.gizwits.com/data/attachment/forum/202103/10/170501a3xuuoso2tntdvc1.jpg.thumb.jpg
机智云数值信息界面
传感器采集到的环境数据传送给Arduino,Arduino串口与EPS8266Wi Fi模组连接,利用无线传感器网络将数据上传至机智云云端,实现数据存储,便于分析,如图所示。最后在终端显示数据达到远程观测、远程控制的目的。
https://club.gizwits.com/data/attachment/forum/202103/10/165814svj7g4qpggmxznb7.jpg.thumb.jpg
机智云传感器上传数据信息
最后考虑数据实时性,防止丢包,采用机智云物联网平台开发如图所示在终端显示数据达到远程观测、远程控制的目的
在软件设计中通过分模块处理,从简单程序到整合后的复杂程序,从单个实现传感器采集数据功能到实时处理各个传感器采集到的数据,并不断地改善程序框架,达到理想状态。运行时在程序void setup()函数中初始化程序,然后在void loop()函数中不断循环完成主要功能。
https://club.gizwits.com/data/attachment/forum/202103/10/170349looycsn8nccj8jnd.jpg.thumb.jpg
https://club.gizwits.com/data/attachment/forum/202103/10/170404qctb44l4oyrh244z.jpg.thumb.jpg
https://club.gizwits.com/data/attachment/forum/202103/10/170419h55dxpz159pfty38.jpg.thumb.jpg
页:
[1]