项目简介

     传统的布线智能家居系统以嵌入式网关为中心拥有诸多不足,针对于此本文提出了一种基于可视化知识图谱的智能家居管理系统,旨在为智能家居领域相关企业发展与科学研究提供一定理论依据。利用知识图谱将家庭中的设备描述为一个个实体,并将这些实体通过关系联系起来。通过知识图谱中D(data)I(information)K(knowledge)W(wisdom)体系结构提炼出所需的知识,达到真正智能的水平。可视化的知识图谱对通过友好的交互界面向用户展示,通过与用户的交互帮助修正图谱构建的偏差,达到为用户定制个性化服务的目的。与其他的智能家居系统相比,此系统可以更有效更节约资源的实现海量家居的设备数据的存储、处理,以更独立智能的方式为用户提供人性化的、个性化的、全方位的家居体验。

研究背景

      近年来在世界范围内所爆发的争先研究智能家居的潮流,最早可追溯到1987年的美国,研究人员研发了一栋能够轻松操控家中电器的智能大楼。智能家居在经历了三大发展阶段:基于同轴电缆与双绞线的家庭组网;基于总线与IP技术的组网;基于集成芯片的智能控制系统后,智能家居整体行业在我国开始进入基于物联网构建智能家居管理系统的新发展阶段。根据中国产业信息网发布的《2017年中国智能家居行业现状与发展前景预测》显示,截止到2016年世界智能家居行业市场规模为168亿美元,在这之中美国拥有最大的市场规模,达到了惊人的97.13亿元。而在中国,智能家居的市场规模亦达到了605.7亿元人民币,从2012年到2016年的市场规模的年均增长率达到了42%,呈现出了极为迅猛的发展势头。

 

      随着物联网、大数据、云计算、人工智能等计算机技术的不断进步,高度智能的智能家居系统将会是未来家居行业的理想状态,智能家居系统的发展空间极大。商品房销售在中国2016年的面积突破了15亿平方米,同比增长了22.4%,智能家居行业的市场每年能够新增的规模可达6000亿元;而在中国家庭户的数量已经达到了4亿户,由此可见智能家居行业有着规模及其巨大的潜在存量市场。并且智能家居管理系统作为一个有着完整生态组成的综合性应用平台,能够由此发展出繁多的生态商业需求。综上所述,我国的智能家居市场有着潜力巨大的发展前景。而缺乏统一的接入标准,系统不够智能,资源耗费过大成本过高等不足成为现阶段智能家居行业亟待解决的问题。

 

什么是知识图谱?

      知识图谱的作用主要是用来描述存在于现世生活中的各种事物本体以及抽象概念,映射事物本体以及概念之间的关联关系。而它并不仅仅是对本体进行复制,而是在此基础上做出更加丰富的拓展,这样的拓展主要体现在描述的个体层面上。而在被知识图谱所描述的个体中,其突出了个体与个体间的关系,在此种关系上我们能够得到更加丰富的信息。

国内外研究现状

      自从美国最早诞生了“智能建筑后”,全球各地的发达国家便争相研发各自关于智能家居的解决方案。而在此类研究范围,美国长期领跑其他国家,仅在美国有由Microsoft所研发的“DreamHome”,由IBM公司研发的“FamilyDirector”以及由摩托罗拉所提出的“HouseDoor”。此外,英国、法国、德国、日本、韩国、新加坡、澳大利亚等一些西方的发达国家在各自的智能家居研发领域均有一定实质性的进展。在此后的发展中,新的智能家居平台不断涌现,包括苹果公司推出的HomeKit平台,三星公司推出的Smart Home智能平台等等。

      中国的智能家居行业发展起步较晚,而在人民生活水平的不断提高的情况下,智能家居才逐渐进入公众的视野,人们对智能家居有了需求。一些传统家居企业于二十一世纪开始研究智能家居,但缺乏人工智能的核心技术使得各企业推出的产品均不能在真正意义上做到智能。而在在科技水平不断进步的背景下,一些新兴互联网企业也开始涉足智能家居行业,大大推动了国内的智能家居发展。如阿里巴巴推出的的一系列智能产品、智慧空调、智能冰箱等等。但是国内至今没有一个成熟普及的完整智能家居系统,一些智能平台在智能先进性上仍然与国外有一定差距。

研究意义

      本文结合了知识图谱自身特点,综合考量现有的智能家居管理系统的设计及优缺点,设计出了一款基于知识图谱的智能家居管理系统,使之能够达到智慧、安全、舒适、成本低廉与易扩展的要求。该设计模型对于智能家居行业的理论探索和实践应用均有一定的意义。

(1)理论意义 传统智能家居的研究发展受制于现有智能家居平台的标准不统一,造价高昂,可靠性不够高等缺点,目前仍未涌现出一款足够成熟能够迅速占领市场的产品,本文所提出的基于知识图谱的智能家居管理系统则可以为相关企业提供一定的理论指导基础,具有相当大的学术意义。

(2)实践意义 随着人工智能与云计算的不断发展,“互联网+”思想的快速兴起,传统智能家居行业与互联网深度融合的同时将目光转向高度运用人工智能的智能家居系统研发。作为人工智能领域的一个分支,知识图谱由于轻量级、直观性、高成长性吸引诸多研究者,依据本文提供思路研发的智能家居管理系统可以为相关企业与研究提供应用检验与证明,推动智能家居与知识图谱的学科交叉领域的不断发展。

理论依据

       基于知识图谱的智能家居的特点在于使家具设备在联动中产生“智慧”,由此而实现用户与智能家居之间的沟通与互动,由知识图谱构建的智能家居管理系统的特点在于将感知、互联与智慧相融合。综上,基于知识图谱的智能家居管理系统应由三个部分构成:感知部分主要以各类传感器与监控器为主,实现对“物”的识别与捕捉状态的变化;互联,即通过知识图谱有效将各个部件组织起来。形成人机均能理解且易于交互的数据网络、信息网络与知识网络;智能处理,即利用云计算、数据挖掘、知识图谱的关系架构等技术实现家居设备的智能管理与控制。

构建硬件感知层

       通过基于知识图谱的结构将各类传感器融入家庭智能家居系统中构建感知层,能够有效使智能家居系统对事物及状态形成感知,从而能够及时针对外界不同情形提供相应服务。例如在各个门上安装红外线探测器,系统能够轻易掌握用户的动向,提前为用户准备好相关的服务。像当用户要出门时,系统能够获得感知,提前将大门打开。

构建知识图谱

       促使智能家居系统能够有足够智能的服务,智能家居知识图谱的构建是很好的手段。所以,基于知识图谱技术构建智能家居体系结构能够对智能家居系统的资源进行优化,保证智能家居系统有着高效率的服务与低成本的资源耗费。基于知识图谱技术构建的智能家居系统应包括硬件设施与联通的局域网、设备的物联网、系统的服务器中心等,能够流畅的处理日常生活信息,帮助用户居家生活与工作都能够更加便捷的进行。

 

构建应用层

       构建应用层是指通过知识图谱的架构将人工智能领域技术与物联网技术相结合,打造出能够与用户有良好交互的应用模块。通过将知识图谱的推理技术应用到智能家居系统的核心环节,以物联网技术实现知识图谱的体系架构。让两者高效结合产生足够高的应用性,此为基于可视化知识图谱的技能家居管理系统的核心竞争力。所以,在构建应用层的时侯我们需要对整个智能家居系统结构进行详细的规划分析,分析应用知识图谱技术能否明显改善智能家居系统所存在的一些问题,而后制定最佳的构建方案,尽量做到知识图谱技术与物联网的高效融合。

起床场景

       早晨七点钟,用户手机定的闹钟响了,系统预测的用户下一个需求为开窗开帘,而在这一需求之前系统要先判断用户是否有起床意愿,作出这一判断的标准,可以是日期,即通过是否为工作日判断用户是否需要早起上班;和床部的重力感应器,即感应器是否感应到床部重力大幅减小。两者条件任意满足其一我们就认为用户有起床意愿,则开始执行开窗开帘需求。光线控制系统通过感应室内光线强度调整滑起窗帘的速度,室内越暗则窗帘滑起速度越慢。安防系统通过室内空气质量检测数据,室外天气情况,室内外温差,室外风速等数据决定窗户开启程度。

first service

起床场景知识图谱

first service

起床场景数据图谱

first service

起床场景信息图谱

second service

洗漱场景数据图谱

second service

洗漱场景信息图谱

洗漱场景

       用户起床后系统预测下一个需求为洗漱,依据用户过去使用习惯数据,准备好用户最适应的水温。这需要对用户做出识别,系统通过监控的人脸识别技术为主,检测判断用户是从哪个房间走出的数据为辅,以及对比不同用户过往起床习惯的时间来综合判断。使用过程中系统记录用户新的使用数据加入到用户的关系图谱中,来对用户的个性化服务进行动态修正。

second service

洗漱场景知识图谱

早餐场景

       假定家中有两人男主人与女主人,不同的人在洗漱完之后会有不同的需求,女主人需要到厨房准备早餐,男主人要去阳台使用跑步机锻炼。通过女主人过往进入厨房的时间记录,与女主人结束洗漱的判断,厨房各用电器如豆浆机、微波炉、烤面包机会提前三至五分钟启动待机,厨房用电器的关机可以由以下情况判定,在启动后的一定时间内没有人进入厨房;检测到家中已经无人,判断用户已经开始用餐。跑步机亦会根据用户的日常习惯提前三至五分钟开启待机,并调至用户习惯的参数。与用户交互的应用层会根据感应器(运动手环,跑步机传感器等)动态显示用户的身体各项数据(脉搏,血压,心率,等)以及跑步机的速度与变化曲线等,同时将采集到的数据通过数据图谱进行聚类分析,匹配出适合用户的运动强度并向用户推荐。

first service

早餐场景知识图谱

first service

早餐场景数据图谱

first service

早餐场景信息图谱

second service

出门场景数据图谱

second service

出门场景信息图谱

出门场景

       用户在家中准备就绪,需要出门上班,对用户即将出门的判断,钥匙架上的钥匙被取走,大门处检测到用户,并且用户面向大门方向。大门处显示屏显示今天的天气预报、根据用户手机显示用户的行程、以及备忘录;车库卷帘门自动开启。 用户上班归来,检测到大门开启,识别到用户进入且面向屋内,自动调亮室内灯光,根据室内空气情况与室外天气开窗通风透气,根据用户使用习惯,各家用电器进入待机状态。

second service

出门场景知识图谱

安防场景

       每当检测到家中没人时则自动上锁门窗,关闭电视、空调等无需持续使用的用电器,当电路检测到异常电流时,切断家庭电路,通过应用层向用户发送报告。当家中发生火情时,即温度检测、气体检测均出现异常值,系统会按照优先级打开所有门窗、向物业与用户报警、自动切断家庭电路。 当家中没人时,系统根据时间段与与用户识别,判断进入家中的人是否为入侵,并向用户发送报告,通过用户反馈判断是否进行反入侵。若执行反入侵,则会在家中报警驱离,同时向物业发送警报,并将屋内未上锁的柜子均上锁。 当用户长时间不在家时,本系统能够维护家宅的正常运转:对家中所有的探测器进行密集监测,在发现异常情况时向用户发送报警;在冬天的时候保护定期向水管中通入温水来防止水管被冻裂;能够根据外界天气情况与环境控制绿植的浇灌;当监测到自来水管道出现漏水或水温已经降至0oC时关闭自来水的控制阀;摄像头会记录下附近传感器被异常触发时的情景;本系统能够在夜间按用户的使用习惯进行光线的控制,在没人在家时营造出有人在家的现象,与方便用户起夜。

first service

安防场景知识图谱

first service

安防场景数据图谱

first service

安防场景信息图谱

系统内部划分

1、按子系统划分 电器设备控制系统(智能冰箱、电视、智能空调、洗衣机、热水器、微波炉等) 光线控制系统(灯、窗帘) 安防系统(门、窗、监控器、各类检测感应器等) 影音娱乐系统(灯光、家庭影音、背景音乐等) 用户交互系统(可视化图谱交互、家庭实时监测、家居控制)

2、按设备划分 A、智能家电 B、信息采集设备 重力感应器、烟雾探测器等等。 C、控制型设备 开关设备:各种继电器控制的设备、电子开关设备、智能开关设备。 显示设备:显示信号量及其他设备运行状态的设备。 电机设备:控制对象由电机驱动,如窗帘。 接口设备:传统家电与智能家居管理系统之间的对接接口(ZigBee-红外)。 其他驱动设备:LED驱动、摄像头。

用例图与用例描述

first service

 

first service

 

first service

 

first service

 

first service

 

first service
first service

 

first service

 

 

 

 

 

first service

 

 

 

 

 

first service

 

 

 

 

 

first service

 

 

 

first service

系统实现

针对上文的设计理念本节内容做了一个简单的模拟实现智能家居管理平台SHP(Smart Home Platform)。SHP是一个以家庭服务器为中心的低成本的智能家居系统,是无需变更现有家庭网络结构就可运行的平台软件,各企业不同的设备系统与智能家居服务器SHS(Smart Home Server)的通信方式可能不同,平台目前支持Modbus协议(RS232、485)、TCP/IP以及进程间通信(IPC)三种通信方式(以后支持更多通信模式),能满足大部分硬件设备接入系统的要求。对WIFI智能设备(如智能冰箱、智能空调),可实现“即插即用”(PNP)接入,几秒钟即可纳入平台的管理之下。 SHP通过使用“智能家居设备驱动程序”(以下简称SHDD)的方式,隔离了SHP与具体设备的交互细节。SHP开放驱动开发的接口程序,任何感兴趣接入SHP的厂家,都可按照接口的要求,使用三种通信方式的任意一种或几种,编写驱动程序(dll连接库)。 SHP在软件结构上,由两部分组成:智能家居服务器软件(SHS)和多个智能家居监控程序(SHM)。SHM由SHS负责管理,并动态加载,每个SHM监控一个厂家的设备系统

first service
second servicesecond service

系统架构

经过抽象后的设备通信方式图如下所示,采用此种通讯,电器设备厂商不需要更改自家设备的工作方式,而只需编写该设备的接口驱动程序。 SHS平台了解了该设备的驱动程序后,由SHM执行该设备驱动程序去监控设备,从本质上说SHS不是直接对设备进行控制,而是执行设备的驱动程序来控制。

图中我们找到名为HomeLibrary的项目,该项目对设备驱动的开发进行了规范。将该项目打开,我们在名为的Device目录内找到一个名为ISmartHome.cs的文档,该文档定义了设备的抽象接口,如下图所示:

second service

ISmartHome.cs文档内定义了多个设备的抽象接口,这几个抽象接口之间的关系如图所示。ISmartHome描述了一个厂家的所有设备系统,在这之中可以分类多种IHomeDevice设备,由六类不同设备构成的IHomeDevice可以很好描述整个设备系统。这六类设备分别是是数据输入输出设备IDeviceDI, IDeviceDO;模拟信号输入输出设备IDeviceAI, IDeviceAO与流输入输出设备IDeviceSI, IDeviceSO。

first service
second service

通讯方式与数据结构

现如今使用wifi通信或者使用智能手机控制交互的家居设备越来越多。使用此类局域网进行通信有其优势,速度快,带宽高、成本低。尤其是在现在的住宅中,几乎家家户户都有无线局域网。能够预见,在将来这样轻量级的通讯方式应该是智能设备的首选。而与局域网类似的蓝牙通信,采用2.4GHZ的频率,通信协议较为复杂,但具有更好的稳定性,只是该种方式传输距离是其短板,如若是在大面积的豪宅之中,该种方式就难以应用。

对于那些高能耗的设备来说,使用ZigBee进行通信组网是最佳的选择,设备与设备之间可以使用协调器进行交互。而现如今,比较受欢迎的做法是将协调器和网关设备进行集成,协调器的串口通信使用TCP/IP协议。如此,对于外界来说,所有使用ZigBee组网的家居设备,均能够看成是一个使用WIFI的智能家居设备系统。

也有许多的家居设备,能够通过有线的RS485协议进行通信,该方式具有简单可靠,成本耗费低的优点。比如智能电表、水表、气表。这些设备基本是都是主从通信,因此智能化程度并不高。这些设备状态的感知,要系统主动去询问。

家居设备驱动程序

为了模拟家居设备的输入与输出,使用C#编写了一个模拟冰箱。当需要开、关冰箱门时,只需要用鼠标点击冰箱图片上的门,打开冰箱门后,鼠标左键点击冰箱可以选择放入一些食品,鼠标右键点击冰箱可以选择取出一些食品。在未来的智能冰箱很有可能是具备RFID无线射频识别的,而食物上都会带有识别的电子标签,所以冰箱应能轻易识别放入与取出的食物。冰箱门在打开一分钟内无任何操作且不关闭冰箱门时便会报警,当冰箱识别到自身有故障时也会报警。冰箱有省电模式和正常制冷两种工作模式。

为了能够使智能冰箱能够与我们的智能家居平台进行对接, 需要实现该智能冰箱的驱动程序。我们要考虑驱动程序应当能获取设备的哪些数据,控制设备的哪些操作。而后可以按如下规划它的子设备: DO设备2个 DO0:冰箱电源开关 DO1:两种工作模式的切换开关 DI设备2个 DI0:冰箱门长时间没关的报警信号 DI 1:冰箱检测出故障的报警信号 AO设备3个 设定冰箱三个存储室的温度 AI设备3个 显示三个存储室的实时温度 SI设备4个 SI0:检测到一个食品的放入,显示该食品的信息与记录 SI1:检测到一个食品的取出,显示该食品的信息与记录 SI2:显示冰箱内所有已过期的食品的信息 SI3:显示冰箱内所有存在的食品 p>

first service
second service

我们使用VS2010,将一个名为RefrigeratorDriver的新的类库项目添加到解决方案之中。我们将该项目的命名空间更改为“eaglesmartrefrigerator”并采用eaglesmartrefrigerator的版本。 再次点开该项目,把HomeLibrary类库添加到该项目的引用中去,定义该项目中的一些类:public class SmartHome : ISmartHome, IWriteReadInterface;重要的一点是必须定义并实现ISmartHome接口和IWriteReadInterface接口。将cs文件的名称也重新更改为“RefrigeratorDriver.cs”。接着鼠标选中在之前定义的ISmartHome类处单击右键,选择“实现接口”,代码的整个框架就此在源码中生成。我们只需要完成后续代码的实现,将一些属性和方法添加进去

软件测试

首先我们打开智能家居服务器程序SHS,出现如下图显示界面:所谓的设备管理就是当我们的家居设备与SHS相连接时,可由设备管理界面对家居设备进行管理与信息查看。

first service
second service

如下图所示的任务界面为一系列对智能家居设备操控的动作集合,比如在一定的时间开启或者关闭某个开关,亦或是播放某条语音通知,在理想的情况下,此任务列表应当由系统根据知识图谱的关系推理而生成,当然也可人工干预。系统号为厂商家居设备系统的唯一识别码,而设备编号为该设备系统内部子设备的识别码。每一个设备系统可能都包含了许多子设备,如智能冰箱包含了温度计,湿度计,温度控制器,开关等等,动作数据即是对各种子设备的控制动作。而根据设备类型的不同,输入或者选择的动作数据类型也不相同。对于开关类设备(DO设备)我们只能选择开与关,对于模拟量输出设备(AO设备比如智能冰箱的温度控制器),我们需要输入数值如10.5摄氏度。对于流数据输出设备(SO设备如语音朗读器)我们输入字符串信息。

家中各种家具设备均会产生大量的应用数据与状态数据,如工作时的功率数据,火警信号,有人闯入的警报,室温等等,这些数据通过SHS的监控设置进行管理,可以被系统采集纳入图谱中进行处理,可以经过处理对用户可视化显示,也可以由用户设置监控阈值,对一定情况下的事件作出响应。下图为简单的监控设置界面。

first service
second service

智能家居设备监控程序SHM为一个独立的程序,但它由智能家居服务器SHS启动,是本系统的重要组成,它的主要作用为通过设备驱动程序直接与家居设备交互,一方面,接受客户端或SHS的指令通过驱动程序控制设备,一方面将设备的数据信息传给客户端或SHS。 每一台家居设备,可能都包含了许多子设备,本系统将这些子设备分为6类: 1、数字量输出设备:DO 大多数开关设备是DO设备,需要注意的是,开关设备有长闭和常开之分。常闭开关是在开关断开的情况下,它是接通的,闭合则断电。常开(开关刚好相反。比如冰箱门上的灯开关最好是长闭开关,因为总是希望冰箱门打开灯接通电,冰箱门关闭后灯断电。而房间灯光开关希望它是常开的,断开后它是未接通的,这样符合生活的需要。 2、数字量输入设备:DI 门磁、红外探测传感器、烟感等设备,输出“有”、“无”两种状态信号,是典型的DI。 3、模拟量输出设备:AO 接收数字输入工作的设备。如温度控制器(空调),接收要设定的温度来控制制冷或制热过程。 4、模拟量输入设备:AI 对外输出数值的设备,如温度传感器、湿度传感器、光照传感器、血压传感器等。 5、流输出设备:SO 接收数据流而工作的设备。如语音朗读器,接收文本后开始输出语音信号。 6、流输入设备:SI 对外输出流信息的设备。如智能冰箱对外报告存储的食品数据,可认为它具有SI设备。

在另一台同局域网下的电脑上打开模拟冰箱程序设置与服务器程序相连,连接后如下图显示。在SHS上的备管理界面可看到设备信息,冰箱显示已连接成功。

first servicefirst service
second servicesecond service

使用左键点击冰箱时可以模拟放入食物,使用右键点击冰箱时可以模拟取出食物。我们希望能够看到当一些事情发生时,SHP是如何响应并提供服务的,为此设计了一些情形,模拟“冰箱门打开且长时间未关闭”的情形。设置设备监控程序SHM会冰箱状态进行监控,当冰箱门在长时间未操作后未关闭,就会向向SHM程序发送报警信号。

我们点击模拟冰箱的门,并在一分钟内不进行任何操作,SHP系统反应如下,会自动播放报警音乐,在实际生活中该报警可通过家庭背景音乐系统或通过用户手机客户端播报,同时会有文本提示发出,在实际生活中该文本也可通过邮件、用户的社交软件或者用户手机的智能家居客户端发送给用户。

first service

Quisque commodo quam

Vestibulum augue ex, finibus sit amet nisi id, maximus ultrices ipsum. Maecenas rhoncus nibh in mauris lobortis, a maximus diam faucibus. In et eros urna. Suspendisse potenti. Pellentesque commodo, neque nec molestie tempus, purus ante feugiat augue.

first service
second service

Maecenas eu purus eu sapien

Sed vitae felis in lorem mollis mollis eget in leo. Donec commodo, ex nec rutrum venenatis, nisi nisl malesuada magna, sed semper ipsum enim a ipsum. Aenean in ante vel mi molestie bibendum. Quisque sit amet lacus in diam pretium faucibus. Cras vel justo lorem.