一种基于OneNet设备云的智能硬件组网方法
2017-11-06陈宝远褚庆文孙忠祥罗中明
陈宝远++褚庆文++孙忠祥++罗中明
摘要:针对移动终端与智能硬件远程组网中,对智能硬件的结构要求复杂程度高,对服务器程序设计复杂及专用服务器使用费高等问题。运用中国移动物联网开放平台—OneNet设备云服务器,构建出智能硬件接入OneNet,实现远程监控的组网方案。本方案是把智能硬件终端采集的传感器数据上传到OneNet云平台,OneNet平台实现数据转发和存储,从而实现由移动控制端—云平台—智能硬件设备组成的远程监控物联网架构。以OneNet作为服务平台构成的物联网应用网络,能够明显降低开发难度,节约开发成本,缩短开发周期。并且能够实现移动终端远程监控同时,还可在云平台实时监测智能硬件终端数据和状态,而实现广域网WEB数据查询。
关键词:物联网;智能硬件;OneNet设备云;移动终端;远程監控;
DOI:1015938/jjhust201705014
中图分类号: TP2741
文献标志码: A
文章编号: 1007-2683(2017)05-0076-05
The Solution of IOT Based on OneNet Cloud Server
CHEN Baoyuan,CHU Qingwen,SUN Zhongxiang,LUO Zhongming
(Nationa Experiment and Teaching Demonstration Center for Measurementcontrol Technology
and Instrumentation, Harbin University of Science and Technology, Harbin 150080,China)
Abstract:There are several problems in network connection between mobile terminal and intelligent hardware For examples, the intelligent hardware is too complex on structure, programming a specific software is lowefficiency and set up a specific server is too expensive, etc By connecting the intelligent hardware to the China Mobile IOT Open Platform can solve those problems, also the IOT of wide area can be set up easily The solution describe in this paper is based on cloud server of China Mobile IOT Open Platform(ie OneNet cloud server) and sensor data acquisition module The data collected by sensors can be transmitted to the OneNet cloud server, which can storage and switch the data, so that the IOT of mobile terminalcloud serverintelligent hardware is set up The IOT based on OneNet cloud server can reduce the development difficulty, Lower development costs and shorten the development cycle The mobile terminal can monitor the data and status of the intelligent hardware, also you can check them on the web by access to China Mobile IOT Open Platform
Keywords:IOT; intelligent hardware; OneNet device cloud; mobile terminal; remote monitor
收稿日期: 2016-02-26
基金项目: 黑龙江省教育厅科学技术研究项目(12531113)
作者简介:
陈宝远(1970—),男,副教授,硕士研究生导师,Email;chenbaoyuan@126.com;
褚庆文(1994—),男,硕士研究生;
罗中明(1962—),男,博士,教授,硕士研究生导师
0引言
在万物互联IOT(物联网)时代,智能手机这一科技概念提出之后,又提出了智能硬件的概念。智能硬件是在传统硬件设备的基础上进行改造之后,通过软件和硬件相结合的形式,让它具备智能化的功能[1]。完成智能化之后,硬件系统已经具备了连接网络的能力,实现了互联网服务的加载,具备了大数据等附加价值,形成了“云+端”的典型架构[2]。在物联网领域,物体与物体之间的信息交互,物体与客户端的数据传输,需要一个通信平台支撑[3]。这样,云计算平台是其必然的选择。
1OneNet设备云平台架构
11OneNet设备云平台的特性
随着物联网大潮的到来,国内外多家运营商相继推出了自己云平台,服务于物联网应用领域,基于此,本设计提出了智能硬件接入中国物联网开放平台——OneNet设备云的研究方案,此平台面向所有硬件终端系统开放,是一款免费的平台[4]。OneNet是中移物联有限公司基于物联网技术和产业特点打造的开放平台和生态环境,适配各种网络环境和协议类型,支持各类传感器和智能硬件的快速接入和大数据服务[5],提供丰富的API和应用模板以及支持各种行业应用和智能硬件的开发,能够有效降低物联网应用开发成本和部署成本[6],满足物联网领域设备连接、协议适配、数据存储、数据安全、大数据分析等平台级服务要求。OneNet搭建了一个云存储服务中心,专门用来解决数据接入之后的数据存储问题,这个存储中心具有高并发、大存储、扩展性强的优点[7]。对于传感器数据的存储,通常需要多个服务组建共同来完成[8]。因此本研究方案采用OneNet是最佳选择。基于OneNet的远程控制端可以是智能移动终端(手机、PAD等),也可以是个人PC机,只要可以与设备云平台建立网络联接,皆可作为远程控制端[9]。endprint
12OneNet事件触发机制与多层网络协同技术
OneNet设备云平台在设计之初就制定了事件触发机制和大量的规则触发应用,在设备接入OneNet之后,可添加触发器设置[10]。在纵向协同方面,保障海量终端和用户的泛在接入,打破云管端界限,实现各个部件的智能联动[11]。在横向协同方面,多个网络间相互协同,不但保障了网络的安全边界,又能让网络间信息的流动得到精细化控制和高品质保障[12]。“协同”将使得用户完全可以忽略网络中的异构的存在,感知得到统一保障,体验像一张网络,这也就是所谓的超融合状态[13]。
13OneNet设备云资源管理层次结构
在OneNet设備云平台下用户、设备、APIKey、设备应用、触发器、数据流的组织结构形式都十分清晰,在每个用户下数据的管理是以项目的形式进行封装的,每个用户可以创建多个项目,在每个项目下用户可以对设备、APIKey、应用、触发器这些资源进行管理(包括增、删、改、查等操作),用户可以在一个项目下创建多个设备(产生多个设备ID)、APIKey、应用。触发器,在每个设备下用户还可以创建多个数据流。设备云不仅支持这些资源的纵向逻辑关联,还支持资源之间的横向联接,比如设备与APIKey之间的关系,同一个设备可以关联该项目下的多个APIKey,一个APIKey也可以关联多个设备,同样的一个触发器可以关联同一个项目中多个设备下的数据流(数据流ID相同),一个数据流也可以关联多个触发器等。
2智能硬件接入设备云平台总体设计方案
21OneNet设备云在应用中的结构层次
设备云作为平台的平台,可降低开发成本,提供多元化的API接口,使用完善的开发工具为各个业务平台提供接入、存储、传输和展现等基础服务,为物联网开发商快速打造自己的产品提供了很大帮助[14]。OneNet在实际应用中的结构层次如图1所示:
OneNet设备云不仅提供稳定、安全、持续的运营服务,而且其架构还可扩展,可以从根本上解决大量的接入难题。
22智能硬件接入OneNet设备云总体设计方案
智能硬件是一个科技概念,它已经从可穿戴设备延伸到智能机器人、智能玩具、智能汽车、智能家居、医疗健康等领域[15],比较典型的智能硬件包括乐视电视、麦开水杯、三星Gear、咕咚手环、Google Glass等。
硬件实现智能化的关键在于如何与设备云进行数据连接,从而将数据转发给控制端。本设计方案提出的将智能硬件接入设备云平台从而实现远程控制的步骤大致可分为三个部分:第一部分是智能硬件终端的数据采集和数据上传,各类传感器把所采集到的数据发送给硬件系统的MCU,MCU接收数据之后使用通信协议将其进行打包,进而通过网关上传到设备云服务器。由于OneNet设备云提供常用的RestFul API接口、Socket接口,以及支持MQTT、Modbus协议等接入协议,所以在终端对数据进行打包上传时可选择合适的通信协议。第二部分是智能硬件接入设备云需要注册个人或企业账号,凭借账号登录云平台,为自己的项目及设备申请ID号,经过一系列操作之后,设备云平台会为相应的智能硬件分配一个虚拟设备号ID和APIKEY,当接收来自智能硬件的数据请求时,设备云会根据对应的ID号和APIKEY进行鉴权工作,从而决定是否与其建立TCP连接。第三部分是设备云与控制端的数据通信,同样在控制端输入由设备云分配的ID号和APIKEY,通过相应的协议与其建立TCP连接,从而将控制命令发送到云端,最终到达智能硬件系统。总体设计方案框图如图2所示:
3智能硬件接入设备云的实现方法
31智能硬件的选择
智能硬件的种类多种多样,用户可以根据实际应用情况灵活选择,比如Ardiuno、C51、MSP430、ZigBee、ARM、MIPS等,只要能处理相关的通信数据与设备云建立TCP连接,都可以接入云平台[16]。
32接入设备云流程
在接入OneNet设备云之前,需在平台网站注册用户账号,只要登录中国物联网开放平台官方网站即可用邮箱账号注册。之后用户可凭借此账号登录OneNet设备云平台首页进行新建项目、新增设备、新增数据流、查看数据、新增触发器、添加APIKEY、新建应用等操作,各项操作完成后,云平台会为每个虚拟设备自动分配唯一的设备ID和APIKEY,凭借此时的设备ID和APIKEY可使智能硬件、远程移动控制端与OneNet设备云建立TCP连接,创建过程如图3所示:
33通信方式的选择
智能硬件设备终端接入OneNet设备云平台的通信方式是多种多样的,比如常用的有GPRS、无线WIFI、以太网口[17]。GPRS方式需要GPRS模块和SIM卡的支持,无线WIFI需要WIFI模块支持。所谓通信方式可以理解为数据上传时所通过的网关,若采用以太网口方式,即有线模式,其本质是把个人电脑作为网关,具体做法首先是把智能硬件终端采集的数据通过串口的方式发送给电脑,电脑通过事先编译好的上位机界面与设备云建立TCP连接,最后把数据上传到云平台[18]。若采用WIFI模块或GPRS模块,即无线模式,其数据上传过程便不再经过个人电脑,无线模块接收智能硬件发送的数据后,直接经过路由器或通信基站与设备云建立TCP连接[19]。总之,对于指定的智能硬件设备传输数据,在三种通信方式(GPRS、无线WIFI、以太网口)下,连接平台的操作过程略有不同。
34通信协议的选择与数据上传过程
设备云平台对于智能硬件的接入不仅提供了多种通信方式,而且对于数据打包上传还支持多种通信协议。目前常用的有RestFul API和EDP协议,RestFul API基于HTTP协议,适合平台资源管理、平台与平台之间的数据对接、使用短连接上报终端数据、时间序列化数据存储等场景[20],EDP协议是基于TCP协议的,该协议只传输数据包到达目的地,不保证传输的顺序与到达的顺序相同,若客户端同时发起两次请求,服务器返回时,不保障返回报文的顺序,EDP数据适合于数据的长连接上报、透传、转发、存储、数据主动下发等场景。endprint
在接入OneNet数据上传过程中,对于不同的智能硬件的要求可以选择不同的通信协议,每种通信协议都有自己的特点,可根据项目的实际需求来选取。本研究方案仅给出基于RestFul API协议的数据上传流程,如图4所示。图4是在RestFul API协议下与设备云建立TCP连接、数据打包上传的程序流程图。
4组网应用实例
OneNet设备云云平台支持多种通信协议,EDP上传数据时,设备下没有请求日志,而在RestFul API协议下才会出现,所谓请求日志是指:智能硬件与云平台建立TCP连接后,会向其发送数据上传请求,此时OneNet云平台会对所上传的数据包进行格式和内容的鉴定,当鉴定完成后会在云平台上给出日志列表,这样可以点击日志查看响应内容,若响应内容“errno”为0,“error”为“succ”,则表示数据上传成功,否则表示数据上传失败。以下是基于RestFul API协议的ZigBee模块上传数据后的请求日志,如图5所示:
本研究方案仅给出在RestFul API协议(基于HTTP协议)下的实验数据,对于智能硬件在OneNet云平台上的设备描述如图6所示:
硬件设备与云平台建立连接后,会把终端数据打包上传,至此用户可以在云平台上的数据展示区查看到所上传的终端数据,本研究方案给出了使用ZigBee模块与OneNet云平台建立连接的上位机管理界面如图7。
连接后上传的终端数据图8所示,“HumanState”代表人体感应状态,“0”和“1”分别表示有人和无人。“Humidity” 代表湿度,范围是“0~100”。“LampState”代表灯的亮灭状态,“0”和“1”分别表示灯亮和灯灭。“Smoke”代表烟雾状态,“0”和“1”分别表示气体正常和异常。“Temperature”代表温度值,范围是“-30~60”。
5结论
本文重点研究了智能硬件设备接入设备云平台(OneNet)的方法,实现了终端数据上传到设备云平台的三种通信方式设计方案,给出了设备云平台具体的通信方式、通信协议的选择方法和数据打包上传流程,实现了智能硬件的数据在云平台上的存储与转发。对于如何进行远程移动端的控制仅作了简单介绍,其实现方法与智能硬件接入设备云类似。
参 考 文 献:
[1]马鑫,黄全义,刘全义,等.基于物联网的建筑火灾动态监测方法[J].清华大学学报,2012,52(11):1584-1590.
[2]侯琛,赵千川,李海涛,等.物联网中的嵌入式终端[J].电子测量技术,2014,37(10) :113-117.
[3]ZHANG H,HE J,YIN H,et al.Power Grid Islands Service Restoration Based onCloud Computing[J].中国电机工程学报,2011, 31(34) :S7.
[4]孙名松,赵修娜,孙西贝,等.基于云计算的校园网络视频直播系统设计[J].哈尔滨理工大学学报,2012,17(1):58-62.
[5]许丞,刘洪,谭良.Hadoop云平台的一种新的任务调度和监控机制[J].计算机科学,2013,40(1):112-117.
[6]孫其博,刘杰,黎羴,等物联网:概念、架构与关键技术研究综述 [J].北京邮电大学学报,2010,33(3) :1-8.
[7]王武礼,杨华.基于SHT11的粮仓温湿度测控系统的设计[J].仪表技术与传感器,2010(9) :50-51.
[8]SHEN Subin,FAN Quli,ZONG Ping,et al Study on Thearc; Hitec; Ture and Associated Technologies for Lnternet Ofthings[J].Journal of Nanjing University of Posts andTelec;ommunic;ations, 2009,29 (6) :1-11.
[9]DEBIAO H,SHERALI Z,An Analysis of RFID Authentication Schemes for Internet of Things in Healthcare Environment Using Elliptic Curve Cryptography [J]. IEEE INTERNET OF THINGS JOURNAL, 2015, 2(1):72-83.
[10]FRIEDER G, DANIEL P, PAYAM B A Practical Evaluation of Information Processing and Abstraction Techniques for the Internet of Things [J].2015, 2(4) :340-354.
[11]ADNAN A,A HAMID AGHVAMI.Cognitive MachinetoMachine Communications for InternetofThings: A Protocol Stack Perspective [J].2015,2(2):103-112.
[12]孙其博,刘杰,黎羴,等.农田环境信息采集系统设计与实现[J].自动化仪表,2014,35(11):41-47.
[13]杜一腾,迟宗涛基于Arduino与yeelink平台的实时环境监测系统[J] 单片机与嵌入式系统应用 2014(10) :26-28.
[14]朱若茜,张礼勇.无线传感器网络监测环境中的煤矿安全度评价[J].哈尔滨理工大学学报,2013,18(3):32-35.
[15]岳敬华,张珣.智能社区云服务平台及服务模式研究[J].物联网技术,2013(9):83-86.
[16]张尼,姚海鹏.物联网嵌入式智能卡远程管理技术[J].电信工程技术与标准,2012(6):17-20.
[17]张玉萍,佟为明,李辰.LonWorks总线实时通信协议的研究[J].仪器仪表学报,2009,30(8) :1784-1788.
[18]李如年.基于RFID技术的物联网研究[J].中国电子科学研究院学报,2009,4(6):595-597.
[19]李兰英,刘昌东.一种无线传感器网络路由协议LEACH的改进算法[J].哈尔滨理工大学学报,2015(2):75-79.
[20]余佳宾,阳泳,邹陆华,等.基于yeelink网络平台的智能农业远程控制[J].电子技术与软件工程,2015(1):18.
(编辑:关毅)endprint