APP下载

基于QQ物联平台的农业环境监测系统设计

2019-09-02郑贵林曾志威

江苏农业科学 2019年5期
关键词:农业物联网视频监控传感器

郑贵林 曾志威

摘要:针对传统农业环境监测系统成本高、交互性差、兼容性差、扩展性差等缺点,设计基于腾讯QQ(即时通信软件)物联平台的农业环境监测系统,介绍系统的整体设计和具体实现。系统以i.MX283处理器作为开发平台,基于嵌入式Linux系统开发,移植QQ物联软件开发工具包(SDK),实现了手机QQ与系统的交互功能。系统使用通用串行总线(USB)摄像头获取实时图像;使用RS485总线作为控制网关,接入环境监测传感器。实现了手机QQ对农场的视频监控,对水质、氣象、土壤等环境信息的监测。系统已成功应用于成都蒲江农场,结果表明,系统稳定、易用,对农业生产有一定指导作用。

关键词:农业物联网;QQ物联;视频监控;传感器;iMX283处理器

中图分类号: S126;TP274+.2  文献标志码: A  文章编号:1002-1302(2019)05-0187-05

收稿日期:2017-12-13

基金项目:赛尔网络下一代互联网技术创新项目(编号:NGII20160617)。

作者简介:郑贵林(1963—),男,山西太原人,博士,教授,博士生导师,主要从事智慧建筑、智能电网、海洋波浪能发电技术和传感器技术等方面研究。E-mail:glzheng@whu.edu.cn。

通信作者:曾志威,硕士研究生,主要从事智能仪器仪器表、物联网方向研究。E-mail:zhiweizeng@whu.edu.cn。

“互联网+”技术逐步融入农业、畜牧业等传统行业,农业物联网系统综合了传感器技术、自动控制技术、网络通讯技术,能提高农作物生产效率,降低生产成本,增加经济收入[1]。实现对农场的视频监控以及对水质、气象、土壤等农场环境信息的实时监测和管控,对改造传统农业、提升农业现代化水平具有重要作用[2]。综合当前研究现状,农业环境监测系统经历着传统的人工现场监测、使用电脑作为终端监测、使用手机应用程序(APP)监测的演变[3]。目前较为流行的电脑终端、手机APP监测方式存在如下缺点:设备厂商须要自己构建服务器、开发手机APP电脑客户端,整个系统成本高、兼容性差;由于平台的不统一,用户须要安装不同的应用,交互性差,没有好的用户体验。

本研究设计的基于QQ(即时通信软件)物联平台的农业环境监测系统,使用了QQ物联智能硬件开发平台,将QQ账号体系及关系链、QQ消息通道能力等核心能力提供给系统,可以实现手机、电脑QQ客户端对农场的实时视频监控、环境信息数据的实时查看以及历史数据的统计和分析,对农业生产具有一定的指导作用。同时使用QQ物联平台,减少了服务器架设、降低了APP开发难度、统一了APP设计规范,极大地减少了系统构建的成本,提高了用户体验[4]。

1 系统架构

本研究的农业环境监测系统总体上可分为3个部分,即环境监测传感器、嵌入式终端、QQ物联平台。为了解决野外供电问题,系统整体使用太阳能板供电,蓄电池作为不间断电源(UPS)。嵌入式终端获取传感器数据,本地存储,格式化上传到QQ物联平台云服务器,服务器推送信息给手机、电脑客户端查阅。系统整体架构见图1。

1.1 环境监测传感器

环境监测传感器是农业环境监测系统的核心部分,传感器实现了对农业生产信息的获取。本系统选用的传感器主要包括几大类:摄像头传感器,用于获取实时图像信息;水质监测传感器,用于获取水位、水温、pH值、电导率、溶解氧含量等信息;气象监测传感器,用于获取风向、风速、大气温度、湿度、压力、降水量、PM2.5、CO2浓度等信息;土壤监测传感器,用于获取土壤温度、湿度、pH值、养分等信息。4类传感器配合工作,实现了对农业生产信息的全方位获取。

1.2 嵌入式终端

嵌入式终端由数据采集模块、视频监控模块、电源管理模块、网络通讯模块、数据存储模块等组成[5]。数据采集模块采用RS485总线接口,连接水质、气象、土壤监测传感器,可以很方便地拓展传感器。视频监控模块通过通用串行总线(USB)接口连接摄像头传感器,实现高速图像采集。电源管理模块管理太阳能板和蓄电池,使用继电器为每一路传感器单独供电,采用间歇供电方式,降低系统功耗,提高传感器使用寿命。网络通讯模块采用第3代移动通信技术/第4代移动通信技术(3G/4G)通讯,移植了QQ物联软件开发工具包(SDK),将数据上传到云服务器。数据存储模块负责本地保存数据,在网络故障情况下,终端仍能正常采集传感器数据并本地保存;网络恢复后,终端读取历史数据上传到服务器,确保数据的完整性。

1.3 QQ物联平台

QQ物联平台是腾讯公司2014年发布的智能硬件开发平台,用于实现智能硬件设备和手机QQ软件的互联互通。智能硬件设备移植了QQ物联SDK后,便可获得QQ账号体系及关系链、QQ消息通道能力等核心能力,用户可在QQ中通过二维码扫描、局域网内查找等方式找到设备,添加为好友。通过设备好友内嵌的超级文本标记语言(HTML)页面,可以实现传统APP客户端功能,例如获取实时数据、查看历史数据等。

2 嵌入式终端硬件设计

2.1 核心电路设计

终端选用i.MX283处理器作为开发平台,飞思卡尔半导体设计的i.MX283处理器是一款低功耗、高性能的应用处理器,基于ARM926EJ-STM内核,主频高达454 MHz,集成 128 kB 静态随机存取存储器(SRAM)、128 kB只读存储器(ROM),具有2路USB接口、4路串行外设(SPI)接口、6路USART接口和1路10/100 M以太网MAC控制器,外接有128 M DDR2内存、128 M NAND FLASH[6]。i.MX283处理器核心电路见图2。

2.2 数据采集模块设计

终端选用RS485总线接口采集数据。RS485是隶属于开放式系统互联通信参考模型(OSI)物理层的电气特性规定为2线、半双工、多点通讯的标准。RS485接口采用平衡驱动器和差分接收器的组合,抗共模干扰能力强,最长可以传输 1 200 m 以上(通讯速率小于12.5 kB/s),数据最高传输速率可达4.375 MB/s(传输距离小于10 m),其单级最多可接32个控制设备节点[7]。RS485收发器ADM2483芯片采用了磁隔离(iCoupler)技术,是一款集成式电气隔离器件,隔离电压高达2 500 V,能有效保护系统[8]。RS485总线接口电路见图3。

2.3 电源管理模块设计

终端选用CN3722作为电源管理模块。CN3722是一款太阳能板供电的同步中压脉宽调制(PWM)降压DC/DC充电控制器,具有太阳能最大功率点跟踪功能[9]。在输入端,通过MP管脚接电阻分压网络(R28和R32)检测太阳能电池电压,此管脚电压被调制到1.04 V,通过内置最大功率点追踪(MPPT)算法,实现太阳能电池最大功率点追踪;在输出端,通过FB管脚接电阻分压网络(R26和R30)检测电池电压、采样电阻(R25)检测充电电流,实现对单节或多节磷酸铁锂电池或锂电池充电管理。CN3722电路见图4。

2.4 数据存储模块设计

终端选用安全数码(SD)卡作为数据存储模块。SD卡是在多媒体卡(MMC)的基础上发展而来,是一种基于半导体快闪记忆器的新一代记忆设备,它被广泛地应用于便携式装置。SD卡一般支持2种操作模式:SD卡模式、SPI模式。主机可以选择以上任意一种接口来和SD卡通讯。本设计中选用SPI模式,SD卡存储电路设计见图5。

2.5 通讯模块设计

终端选用USR-G402TF作为通讯模块。USR-G402TF是济南有人物联网技术有限公司的一款5模12频4G模块,支持移动/联通2G、3G、4G和电信4G网络高速接入,即使在偏远的山区,也可以保持通讯链路。模块通过USB 2.0G高速接口连接处理器,内置传输控制协议/因特网互联协议(TCP/IP协议),具有6.25、18.75 MB/s的最大上下行通讯速率。

2.6 视频监控模块设计

终端选用IMX179摄像头模组作为视频监控模块。IMX179是索尼公司的一款最新第3代背照式技术高清摄像头,具有800万像素,优秀的暗光能力,支持免驱协议,支持USB接口。在使用过程中可以在Linux系统中直接插入通用摄像头驱动,通过Linux视频设备驱动(V4L2)接口读取摄像头数据,USB设备连接见图6。

3 嵌入式终端软件设计

终端软件基于Linux 2.6.35.3平台开发,配有厂商提供的USB驱动程序、RS485串口驱动程序、4G模块驱动程序、摄像头驱动程序、TF卡驱动程序等。终端软件主要包括传感器数据采集任务和QQ物联平台通讯任务。

3.1 传感器数据采集设计

环境监测传感器通过RS485总线组网接入终端,终端定时采集传感器数据。当采集周期到来时,终端通过控制继电器输出依次给传感器供电,等待传感器初始化完成,采集传感器数据,关闭传感器电源。采集程序流程见图7。

摄像头监测传感器使用USB免驱摄像头,在Linux系统中可以像访问普通文件一样进行读写等操作,降低了开发难度,提高了系统兼容性。采集程序通过V4L2接口读取摄像头数据。V4L2是Linux系统下针对UVC免驱USB设备的编程框架,为上层应用程序提供一系列的接口函数,可以实现对视频设备的操作,进而完成视频图像的采集[10],摄像头采集流程见图8。

3.2 QQ物聯平台通讯设计

QQ物联平台开发流程包括以下步骤:(1)建立开发者账号;(2)创建新设备;(3)配置设备后台;(4)创建设备序列号和秘钥;(5)QQ物联设备端功能实现;(6)整体测试。终端硬件软件开发环境搭建好后,到QQ物联官网下载对应版本的SDK,得到Tencent_iot_SDK开发包[11]。SDK主要文件及功能见表1。

环境监测传感器数据通过SDK中datapoint结构体打包后,调用tx_report_data_points函数上报datapoint数据。datapoint结构体成员变量主要包含unsigned int类型的id和char *类型的value,id标识不同类型传感器,便于后台识别,value指向JSON格式字符串,用于传递各种传感器实时数据。

摄像头监测传感器通过V4L2接口读取视频数据,存入共享内存中。SDK内部一个线程负责将数据发送到QQ物联平台,调用tx_set_video_data函数发送每一帧视频数据。摄像头采集数据、网络传输视频数据,功耗大,流量多。摄像头默认不开启,当需要访问视频数据时,可远程开启摄像头,以降低系统功耗,减少流量使用。

4 QQ物联轻APP设计

QQ物联轻APP是用户用手机端操作设备的主控制界面。当用户绑定了环境监测设备后,在“我的设备”列表中,点击该设备,进入的第一个界面即为设备的轻APP。轻APP主要分为公共模板和自定义HTML5等2种形式。公共模板为QQ物联为通用的设备类别官方设计开发的轻APP,通过QQ物联后台配置就可以使用,能够满足基本通用功能。自定义HTML5可以根据QQ物联的设计规范和deciveAPI(JavaScript接口)来实现更加定制化的轻APP,将页面的统一资源定位符(URL)地址提交到QQ物联后台,即可完成在QQ中直接内嵌使用[4]。本系统采用自定义HTML设计,轻APP界面如图9所示。

5 系统应用与总结

本研究设计的系统已成功应用于成都蒲江农场,安装有5个站点,在野外无人值守的恶劣环境下,由太阳能板和蓄电池供电,通过4G网络传输数据,稳定运行2年多时间,为农场生产决策提供了数据支持(图10)。系统接入QQ物联平台,可以通过QQ客户端方便快捷地查看农场各项环境参数和实时视频信息,同时还可以把设备分享给消费者,提高了系统的交互性,增强消费者对农产品质量的安全感[12]。

参考文献:

[1]李国英. “互联网+”背景下我国现代农业产业链及商业模式解构[J]. 农村经济,2015(9):29-33.

[2]王晓敏,邓春景. 基于“互联网+”背景的我国智慧农业发展策略与路径[J]. 江苏农业科学,2017,45(16):312-315.

[3]蔡 镔,毕庆生,李福超,等. 基于ZigBee无线传感器网络的农业环境监测系统研究与设计[J]. 江西农业学报,2010,22(11):153-156.

[4]腾讯公司. QQ物联全解析[J]. 物联网技术,2015,5(5):5-7.

[5]梁莉娟. 基于Android的农业温室环境远程监测系统[J]. 江苏农业科学,2017,45(15):206-209.

[6]周立功. 嵌入式Linux开发教程[M]. 北京:北京航空航天大学出版社,2016.

[7]虞日跃,史洪源. RS-485总线的理论与实践[J]. 电子技术应用,2001,27(11):55-57.

[8]兰 颖,李 刚. iCoupler(R)数字隔离技术及其应用[J]. 电子技术应用,2006,32(11):89-93.

[9]田 野,张红雨. 一款新型太阳能无线超高频阅读器的设计[J]. 电子技术应用,2013,39(10):25-28.

[10]徐 家,陈 奇. 基于V4L2的视频设备驱动开发[J]. 计算机工程与设计,2010,31(16):3569-3572.

[11]邓远钊. 基于嵌入式Linux的QQ物联系统的设计与实现[J]. 电脑知识与技术,2017,13(21):55-56.

[12]陈 熔,俞 彤. 基于APP的农产品质量安全监管平台的设计与开发[J]. 江苏农业科学,2017,45(12):171-173.全朋坤,赵 娟,李艳聪,等. 苹果树枝的力学试验与其结构参数的联系[J]. 江苏农业科学,2019,47(5):192-195.

猜你喜欢

农业物联网视频监控传感器
康奈尔大学制造出可拉伸传感器
简述传感器在物联网中的应用
“传感器新闻”会带来什么
跟踪导练(三)2
NFC前景分析及其在农业物联网中的应用实现