面向信息资源聚合的物联网智能信息中心框架*
2015-07-10杨冬菊林绍福
杨冬菊,林绍福,张 程
(1.北方工业大学云计算研究中心,北京 100041;2.北京工业大学,北京 100124;3.中国科学院计算技术研究所,北京 100190 )
1 引言
物联网是继计算机、互联网和移动通信之后引发新一轮信息产业浪潮的核心领域[1]。一般地,人们认为物联网是互联网向物理世界的延伸,它通过传感设备感知物品状态,并对感知的信息实施智能分析与处理,从而实现对物品行为的反馈控制[2]。其中,“感知”是基础,“智能”是核心,“反馈控制”是最终目标。
物联网产业链较长,涉及多个环节。以精准农业[3]中的樱桃生产为例,除了樱桃的种植、收获,还涉及销售、加工、存储、运输等诸多环节,只有这些环节之间形成通路、彼此信息联通,才能为用户提供必要的食品安全、质量保障[4]。然而,目前的物联网应用建设存在几个趋势或现象,对形成支撑全产业链的信息通路形成了阻碍。一方面,应用建设分散、缺乏体系。“批发”建设数量众多、彼此独立是目前物联网应用建设的一个主要特点,绝大多数应用项目以闭环应用为主,应用之间缺乏联通渠道,以多部门、多用户、多业务流程等为特征的重大综合应用尚处于起步和探索阶段;另一方面,重复建设现象严重。随着大量独立物联网应用的建设,正逐渐出现传感设备的重复放置、传感数据的重复采集、分析处理模块重复开发、服务器等硬件设备重复采购等物联网重复建设问题,缺乏有效的共享共用正成为阻碍物联网后续发展的严重问题。
面对上述挑战,打造一种新型信息化基础设施,一方面对各类物联网应用及感知设备获取的各类数据进行统一存储、组织及管理;另一方面建立统一的集成应用支撑环境,将设备的接口和数据标准化、将一些通用的数据处理、分析等公共模块以服务方式抽取出来,依托这些设备及数据快速构建应用,为物品的感知、信息的共享与智能分析、反馈控制应用的构造提供支撑。立足于上述认识,本文将在分析物联网架构及相关工作基础上,以农产品生产、流通、销售为背景,分析物联网应用存在的问题及需求,提出面向信息资源聚合的物联网智能信息中心框架IRC4IOT(Intelligent Resource Center for Internet of Things),重点讨论传感设备的标准化封装及接入、信息资源的一体化管理等关键技术,并以食品安全保障为场景,探讨了智能信息中心的使用模式,为感知、分析、控制提供基础保障。
2 物联网架构及相关工作
2.1 物联网架构
为了实现不同应用之间以及不同物品之间的资源共享和复用,本文将通用、公共的信息处理部分独立出来,作为物联网基础设施在多个应用之间共用。所以,本文将物联网架构划分为四个层次:感知层、传输层、智能层和应用层,分别承担“感”、“传”、“智”、“用”的任务。具体如图1所示。
Figure 1 Architecture of Internet of Things图1 物联网技术架构示意图
(1)感知层。感知层主要负责识别物体、采集信息,以及对物品实施反馈控制。通过设置二维码标签和识读器、RFID[5]]标签和读写器、摄像头、GPS、传感器、终端等传感设备,实现对被感知目标的低成本、可靠的感知[6]。不同的传感器输出的信号类型、使用的传输接口、生成的数据格式都不尽相同,面对物联网所期望的物物相联、共享并交换信息的目标,如何规范化各种传感器的输出数据,让使用者能够识别这些数据是一项重要工作。当前通用的解决思路是对传感器的输出进行包装,产生规范化的数据。在这方面,目前最典型的工作是意大利人发起的一个开源项目Arduino[7],从传感的角度看,该设备可以连接具有不同类型传输接口(并口、串口、USB口等等)的传感器,配合另一个开源项目Processing提供的数据处理软件包,能够将传感器输出的信号封装成扩展的环境标记语言EEML格式的数据,并将这些数据作为一个Restful服务向Internet发布。
(2)传输层。传输层主要负责信息传递。使用的技术主要包括:各种通信网络、无线专网、互联网的融合网络,目标是能够满足大量、实时传感数据的传输需求。目前在物联网建设中,传输网络的建设通常采用两种方式:一种是由电信、移动、联通三大运营商提出的3G+WLAN组网模式;另一种是利用Wi-Fi技术组建的无线宽带接入网络。
(3)智能层。智能层主要通过对传感信息的动态汇聚、分解、合并等处理和服务,在数字/虚拟空间内创建物理世界所对应的动态视图[8]。一方面,对物联网建设中涉及的各类传感设备进行一体化管理,实现传感器技术标准的统一,提高传感器的共享程度,避免传感信息的重复采集,近年来有很多集中在该领域的相关工作[9,10];另一方面对感知得到的海量数据和信息提供存储、查询、分析、挖掘、理解以及基于感知数据决策和行为的基础服务[11]。
(4)应用层。应用层主要利用分析处理后的信息为用户提供丰富的特定服务。以农业领域为例,需要针对农副食品安全、智能化培育控制[12]及农业信息服务等热点领域,创新及建设一批有展示度的农业物联网示范应用,特别是在多个独立应用基础上的增值应用,为生产、收获、运输、销售等环节提供全方位的支持。
2.2 物联网支撑平台
从整个物联网体系来看,底层的传感器采集数据,经过传输网络传输后,要在物联网支撑平台进行相应的过滤、加工、处理、分析,形成有价值的信息,才能实现反馈控制,完成对应用的支撑。从系统化角度看,它一方面要能收集、存储、管理、分析与处理传感信息,另一方面为上层物联网应用提供所需的传感信息;从智能化的角度看,要能够从海量的、看似无关的实时传感信息中找出数据之间的同类关系、去除冗余、提取重现模式、发现周期性变化规律等,为预测和决策提供服务。
当前物联网支撑平台工作处于起步阶段,大致可以分为两类,一类是以共享传感设备、共享传感信息为目标的中间件平台,典型案例包括Pachube[13]、ioBridge[14]、Sense Networks[15]等;另一类是以传感器部署及管理、简化传感器网络搭建为目标的物联网支撑工具,如Mote Runner[16]等。
英国Pachube公司开发的物联网环境平台,旨在对环境(比如用户的家庭环境)作出响应并施加影响。该平台允许人们给现实世界和虚拟世界中的各种物品、设备、建筑和环境添加标签,并分享即时获得的传感信息[17]。平台可以与Arduino等开源项目结合,支持多种传感设备的接入,提供基于GoogleMap和Tag的物品标记与检索方式,目标明确,易于操作。
ioBridge是总部位于佛罗里达Gainesville的ioBridge公司开发的一个物联网产品。该产品通过一款能够连接多种传感器的电路板,为传感器、控制器、家庭自动装置等构建一个DIY网关,用户无需编程就可方便地搭建自己的物品监控应用。
Sense Networks公司开发了一个叫做Macrosense的平台,可以接收即时位置信息,并对其进行分析、处理和存储,以供人们查询。目前已经利用这个平台开发了一款叫做Citysense的软件,允许旧金山的人们即时查看最新的夜生活。
IBM推出的Mote Runner软件开发工具,采用Eclipse为基础的虚拟环境和显示板,它是一个能连接Java等标准程序语言与感应器虚拟机的低复杂度、低耗电量平台,可以将感应器应用到各种设备、产品和系统,简化感应器网络的部署和管理。
3 物联网智能信息中心框架
以前面提到的樱桃生产为例,我们重新审视樱桃的种植、流通、销售过程。为了保障食品安全,北京市各大超市销售的樱桃需要提供其生产、运输过程的相关信息。显然,与生产相关的信息来源于农场的各个精准农业系统,与运输相关的状态信息来源于运送该产品的物流企业。从计算机科学的视角来分析,这显然是一个典型的系统间交互与集成的问题。
针对上述需求,本文提出的解决思路如下:对物联网应用进行系统、成体系的规划和建设,并通过建设一个能够支撑逻辑区域内物联网节点和信息资源的汇聚、一体化管理和服务的物联网基础设施,在应用之间形成共建共享的新模式,从而形成一个全面互联互通的物联网智能应用网络。
智能信息中心框架IRC4IOT是上述解决思路的具体体现,它是一个能够将各类传感设备、监控数据以及业务数据等资源进行采集、汇聚、管理并支撑应用构建的物联网基础设施。图2以农业领域为例展示智能信息中心框架。如图2所示,智能信息中心向下接入各种资源,向上支撑各种应用,智能信息中心本身由两部分构成,分别是信息资源汇聚中心和信息资源应用服务中心:
(1)信息资源汇聚中心。将逻辑区域内布设的各种传感设备以及设备采集到的农作物生长发育情况,以及指导农民种植的科技信息资源及第三方服务(包括种子及农机具肥料供应信息、农作物需求信息、物流服务信息、加工服务信息等),提供存储及管理服务,并通过统一的组织整理,在农场主、专家、管理人员等多类用户之间共享使用,扩大农业信息资源的利用率及开发利用范围。
(2)信息资源应用服务中心。根据不同的用户需求,对汇聚的资源进行综合加工处理,构造面向农业的各类应用服务,包括作物生长情况查看服务、土壤养分分析服务、土壤湿度分析服务、生长环境信息汇聚及综合评估、作物产量预测等,并为应用服务的构造提供可靠、高效的共性技术支撑。
Figure 2 Framework of IRC4IOT图2 智能信息中心框架
3.1 信息资源汇聚中心
信息资源汇聚中心面向农场主、专家、管理人员等多类用户,提供一个统一的农业信息资源生产、存储、组织、管理及发布平台。它一方面支持标准化的方式接入传感设备、设备采集到的数据、第三方提供的信息服务等各类资源,进行一体化管理;另一方面,以信息资源为基础,提供几类应用构造工具,用以支撑应用服务的构造,包括支持四种类型的应用构造:传感信息汇聚类,Blog、Twitter等嵌入类,临界预警类以及基于API开发应用等。
Figure 3 Architecture of information resources convergence图3 信息资源汇聚中心的技术方案
(1)传感设备的标准化封装与接入。
由于终端设备种类繁多,捕获并产生的数据格式各异,这给设备的接入带来困难。为了标准化多源、异构的终端设备的接入,本文采用Restful Web Service与EEML相结合的方式,作为信息中心与终端设备的标准化接口,并以Internet作为基础网络,由设备提供者完成设备接入过程。此过程可以分为三大步骤:第1步,设备提供者将设备进行标准化封装,并发布到Internet;第2步,信息中心对接入的设备进行编码标识,第3步,信息中心的设备接入模块从Internet上收集设备捕获的数据。
①设备的标准化封装。使用Arduino设备连接传感器,再通过Processing 1.0.1[18]开源软件包编写一段程序,完成对计算机输入端口的操作,从Arduino读入设备捕获的数据,采用EEML开源软件包对读入的数据进行封装,然后向指定端口发布。Arduino设备标准化封装示例如下所示:
import processing.serial.*;
import cc.arduino.*;
import eeml.*;
… // 变量定义、类的定义等
void setup() {
println(Arduino.list());
arduino = new Arduino(this, Arduino.list()[0], 115200);//设备初始化
dOut = new DataOut(this, 5210);/*在5210端口发布数据*/
dOut.addData(0,"light sensor, LDR, light level");//数据封装EEML格式
}
void draw() {
myValue = arduino.analogRead(0); //读入传感数据
println(myValue);
}
void onReceiveRequest(DataOut d){
d.update(0, myValue);
}
EEML数据格式示例如下所示:
〈eeml xmlns=http://www.eeml.org/xsd/005 …… 〉 //命名空间
〈environment〉
〈data id="0"〉
〈tag〉light sensor〈/tag〉
〈tag〉light level〈/tag〉
〈tag〉light dependent resistor〈/tag〉
〈value〉238.0〈/value〉
〈unit〉 〈/unit〉
〈/data〉
〈/environment〉
〈/eeml〉
②设备的编码标识。对设备的标识要符合信息中心的编码规则,本文遵循国际物品编码协会(物品编码的国际标准化组织)和中国物品编码中心(标准化组织在我国的分支机构)制定的规范,物品编码结构由编码体系标识和主体代码构成。在这里,编码体系标识为六位十进制全数字代码,与国家物品编码管理机构对特定物品编码系统分配的标准登记号相一致。主体代码由物品分类代码、物品名称代码和物品属性代码(包括属性、属性值及其代码)三部分组成。其中,物品分类代码是依据物品通用功能和主要用途进行的分类和代码化表示;物品名称代码是对物品名称的唯一的、无含义的标识;物品属性代码是对物品本质特征属性的描述及代码化表示。
③设备数据的读入。按标准化接口的规定,采用服务调用的方式读入设备捕获的数据,示例代码如下所示:
private static void printUserByURI() {
Response getResponse = new Client(Protocol.HTTP).get(“http://IP:5210/”);
if (getResponse.getStatus().isSuccess()) {
DomRepresentation result = getResponse.getEntityAsDom();
… //文档解析
} else {
System.out.println("unexpected status:"+ getResponse.getStatus());
} // end else
} //end
由于传感信息实时变化,信息中心需要按一定的更新策略对读入数据进行更新,本方案中提供两种更新策略:手动更新和自动更新。手动更新是指由用户发出指令,主动调用服务资源得到当前时刻的数据,这里的用户可以是人或应用。自动更新是由系统按固定的时间间隔,不断地读入新数据,更新时间间隔由设备提供者根据设备特点,在接入的时候指定。
(2)信息资源一体化管理。
为了有效使用多个来源、多种格式的数据,需要对这些资源进行一体化管理,其基本思路包括:首先建立感知对象描述模型,以感知对象为核心,对元数据、采集到的感知数据等各类信息资源进行组织管理。
感知对象模型规定了每个对象在信息中心的表现形式。在现实应用中,对对象的使用体现在对对象属性的操作上,而对象属性具备多样性和扩展性,以一个蔬菜大棚作为感知对象为例,具有位置、尺寸、所有人等静态属性,同时具有温度、湿度、光照度等从传感设备获得的动态属性。为此,本文定义感知对象由编码、名字和属性集合三部分构成。其中,编码用于唯一地标识一个对象。名字是该对象可理解的描述。属性集合要囊括对象的所有属性,包括三大类:固有静态属性、动态属性和对象关联属性。对象的固有静态属性来源于对象的固有性质,不同的对象具有不同的静态属性,对象静态属性的值由对象管理者提供;对象的动态属性来源于描述随时间而变化的对象状态的信息,不同的对象具有不同的动态属性。对象的动态属性的值来源于对象管理者提供的传感设备;对象关联属性描述对象之间的“包含”或“属于”关系,“包含”关系指该对象中存在另一个对象,“属于”关系指该对象存在于另一个对象之中,对象关联属性的值由对象管理者提供。上面所述的对象模型可以采用如下方式描述:
感知对象 ={编码,名字,{静态属性集,动态属性集,关联属性集} }
一个简单的对象模型的示例如下所示:
〈Thing id="***********02" name="***蔬菜大棚"〉
〈attribute name="位置" style="basic" value="海淀区***"/〉
〈attribute name="尺寸" style="basic" value="2000cm*300cm*150cm"/〉
〈attribute name="所有人" style="basic" value="张三"/〉
〈attribute name="温度" style="service" value="http://address1/"/〉
〈attribute name="湿度" style="service" value="http://address2/"/〉
〈attribute style="thing" id="***********01"/〉
〈/Thing 〉
值得一提的是,对象关联属性进一步扩展并辅之以对复杂关联关系的解析,就可以形成多个对象之间的环境模型,这里只是留下扩展的接口;另外,对象信息的实时性保证等关键问题涉及到和存储、数据分析等模块的交互与配合,这些都是下一步工作的重要内容。
对信息资源的组织方面,本文设计了多种组织方式,包括以感知对象、感知对象的属性、感知设备、感知对象的生命周期以及用户等多维度的数据组织方式;在技术实现上,包括基于Tag的组织与呈现方式、基于GoogleMap的组织与呈现方式、基于监控对象的组织与呈现方式,以及用户个性化的组织与呈现方式等。
(3)信息资源的开发利用。
资源汇聚中心对外提供应用开发工具,支持四类物联网应用的开发,分别是:传感信息汇聚类、Twitter嵌入类、临界报警类和用户自定义类。
在构造应用时,首先利用资源呈现界面或接口找到资源,使用开发工具构造应用,其中前三类应用通过在Web页面上的鼠标拖拽、点击,以及对页面的配置,实现应用的构造。用户自定义类应用是指用户将中间件提供的API(主要是访问传感信息的API)嵌入到自己的应用程序或脚本中而形成的应用,主要面向具备Web应用开发能力的用户。
3.2 信息资源应用服务中心
根据物联网的建设和应用需求,以汇聚的信息资源为基础,对其进行加工和综合处理,构造各类应用服务,例如作物生长情况查看服务、土壤养分分析服务、土壤湿度分析服务、生长环境信息汇聚及综合评估、作物产量预测等,并为应用服务的构造提供可靠、高效的共性技术支撑,以满足不同层次不同职责范围人员的业务需求。目前系统中构造的应用服务可以分为三类:
(1)实时监控类应用:通过传感设备获取的实时动态信息,对作物生长、加工、储运、销售等环境的单项监控或综合监控。以樱桃生产监控为例,在智能信息中心界面上,将樱桃地块上布设的所有传感器拖拽到一个单独的窗口中,就可以实时监控传感器动态采集的数据。
(2)统计分析类应用:以智能信息中心的数据为基础,可以构造统计分析类应用。又可以分为两类,一类是基于监控数据的分析,其中预警服务是典型的基于监控数据的统计分析类应用,通过定制业务规则和标准,一旦监控数据出现异常,将通过短信等方式进行预警;另一类是基于历史数据的统计分析,通过对智能信息中心中存储的历史数据进行分析,可以分析预测趋势、辅助决策等等,如产量预估、作物选择、生长模型修正等都属于这类服务。
(3)共享协作类应用:为满足一些复杂的业务需求,将相关设备、数据进行关联及无缝集成。以食品安全为例,涉及生产、流通、销售等多个环节中不同的企业,从消费者或者监管部门来看,生产过程中使用的农药量、运输过程中的温度控制情况等都是他们所关心的,所以将这些相关数据联系起来,提供面向终端用户或者监管部门的食品溯源服务,才能实现食品安全保障的目标。
4 场景示例
场景:为了提高食品安全保障,某超市需对销售的樱桃提供以下信息:生产过程中农药施用的信息和运送过程中的贮藏温度信息。以某农业示范基地生产的樱桃为例,在生产过程中,农业基地使用自动施肥系统,根据药物浓度传感器捕获的信息控制施肥的数量;运输过程由物流公司使用保温车完成,其中使用自动恒温控制系统,通过温度传感器实时捕获车内贮藏室的温度,并自动调节;按前面提到的食品安全保障要求,为提高信息的真实性,超市需从农业基地的自动施肥系统和物流公司的恒温控制系统中分别获取原始的施肥和温控信息。
物联网IRC4IOT为满足上述需求在基础设施层面提供支撑。一方面,IRC4IOT让各个企业发布自己的传感数据成为可能;另一方面,IRC4IOT为不断变化的集成需求提供方便的操作手段,具体操作过程如图4所示。在物联网IRC4IOT的支持下,可以更加方便地实现应用之间的动态交互与集成,按上面场景,操作模式如下:(1)传感设备的发布由企业自主完成,农业基地、物流公司等各企业将传感数据发布到IRC4IOT中,传感数据由IRC4IOT托管,省去了自己购买设备、组织人力、后期维护等繁琐操作;(2)物联网IRC4IOT对发布的资源统一管理,呈现给使用者;(3)按需集成,超市的工作人员根据进货渠道,选择相关企业的共享设备,直接得到所需信息。在这种操作模式下,无法集成的系统将逐步被淘汰。
Figure 4 Application of IRC4IOT图4 IRC4IOT应用示例
这种操作模式的好处主要体现在如下两点:
(1)实现了传感数据的发布与共享,与Web上发布文档相比,Web实现了对文档、音频、视频等资源的发布与共享,在物联网IRC4IOT的支持下,发布与共享的资源进一步扩展到普通物品的相关信息。
(2)对共享资源任意组合,集成相应的信息,适应动态的集成需求。以某超市的农产品采购为例,在IRC4IOT的支撑下,可以随机集成所选合作伙伴的相关信息。
5 结束语
本文紧紧围绕自动感知、智能处理和反馈控制三个物联网基本要素,以打造物联网信息化基础设施的思路,提出了一个面向信息资源聚合的物联网智能信息中心框架,通过对多源、分布、异构资源的汇聚、整合、分析与再加工,促进物联网资源的广泛共享和高效使用。并重点讨论了传感设备的标准化封装与接入、信息资源的一体化管理等关键技术,最后通过在农业物联网中的应用示例分析了该框架的效果。
物联网智能信息中心框架使得物联网应用不再直接面对底层的传感设备,而是搭建在提供共享设备、数据及公共服务的物联网基础设施之上,既能有效避免重复建设、确保应用之间互联互通,又能通过服务的重用极大地提高应用的构建速度和质量。该方案改变了传统物联网应用的生产方式,探索了一种搭建物联网应用的新模式。
[1] Wu Gong-Yi. Sapiential Internet of Things—The technology which senses China and the world[M]. Beijing:China Machine Press, 2010.(in Chinese)
[2] Qian Zhi-hong, Wang Yi-jun. IoT technology and application[J]. Acta Electronica Sinica, 2012,40(5):1023-1029.(in Chinese)
[3] Chang Chao, Xian Xiao-dong, Hu Ying, et al. Design of precision agriculture remote environment monitoring system based on WSN[J]. Chinese Journal of Sensors and Actuators, 2011,24(6):879-883.(in Chinese)
[4] Nava S, Tangorra F M, Beretta E, et al. Study and development of an integrated automatic traceability system for the bovine meat chain[C]∥Proc of the 7th World Congress on Computers in Agriculture and Natural Resources,2009:367-376.
[5] Gandino F, Montrucchio B, Rebaudengo M, et al. On improving automation by integrating RFID in the traceability management of the agri-food sector[J]. IEEE Transactions on Industrial Electronics, 2009, 56(7):2357-2365.
[6] Ruiz-Garcia L, Lunadei L, Barreiro P, et al. A review of wireless sensor technologies and applications in agriculture and food industry:State of the art and current trends[J]. Sensors,2010,9(6):4728-4750.
[7] http://www.arduino.cc/.
[8] Sundmaeker H,Guillemin P,Friess P,et al.Vision and challenges for realising the Internet of Things[M]. Brussels:Publications Office of the European Union, 2010.
[9] Guinard D,Trifa V. Towards the web of things:Web mashups for embedded devices[C]∥Proc of WWW (International World Wide Web Conferences), 2009:1.
[10] Guinard D, Trifa V,Wilde E. Architecting a mashable open world wide web of Things[R]. Technical Report 663, Zürich:Institute for Pervasive Computing, ETH Zürich, 2010 (663).
[11] Aberer K, Hauswirth M, Salehi A. Infrastructure for data processing in large-scale interconnected sensor network[C]∥Proc of the 8th International Conference on Mobile Data Management Mannheim, 2007:198-205.
[12] Guo Wen-chuan,Cheng Han-jie,Li Rui-ming,et al.Greenhouse monitoring system based on wireless sensor networks[J]. Transactions of the Chinese Society for Agricultural Machinery, 2010,41(7):181-185.(in Chinese)
[13] http://www.pachube.com/.
[14] http://www.iobridge.com/.
[15] http://sensenetworks.com/macrosense.php.
[16] http://www.zurich.ibm.com/moterunner/.
[17] Shen Su-bin, Fan Qu-li, Zong Ping, et al. Study on the architecture and associated technologies for Internet of Things [J]. Journal of Nanjing University of Posts and Telecommunications(Natural Science),2009,29(6):2-11.(in Chinese)
[18] http://processing.org/.
附中文参考文献:
[1] 吴功宜. 智慧的物联网——感知中国和世界的技术[M]. 北京:机械工业出版社,2010.
[2] 钱志鸿,王义君. 物联网技术与应用研究[J]. 电子学报,2012,40(5):1023-1029.
[3] 常超,鲜晓东,胡颖,等. 基于WSN的精准农业远程环境监测系统设计[J]. 传感技术学报,2011,24(6):879-883.
[12] 郭文川,程寒杰,李瑞明,等. 基于无线传感器网络的温室环境信息监测系统[J]. 农业机械学报,2010,41(7):181-185.
[17] 沈苏彬,范曲立,宗平,等.物联网的体系结构与相关技术研究[J]. 南京邮电大学学报(自然科学版),2009,29(6):2-11.