基于区块链的智能家居控制方法和系统与流程

文档序号:14218080阅读:355来源:国知局

本发明属于物联网、人机交互、区块链创新应用领域,涉及传感器感知技术和人脸识别技术,尤其是一种基于区块链分布式存储的智能家居控制方法和系统。



背景技术:

目前在相关技术中,数据存储方式主要分为两类:第一类是传统数据库存储方式。它的优势主要表现在:实现了良好的数据共享和高度集中的管理控制。缺点主要体现在:一方面,数据文件不易扩充和移植,有很大的程序依赖性。另一方面,数据高度集中易造成信息篡改、隐私泄露等隐患。第二类是分布式数据存储方式。分布式结构采用点对点的网络传输,消除或弱化中心化的管理控制,面临的主要问题是节点之间身份的真实性。本发明通过引入区块链底层技术,采用工作量证明机制(proofofwork,pow),解决了分布式网络中最关键的信任问题。

区块链是一种全民参与的数据库技术方案,以区块为单位进行数据管理。区块是一种聚合交易的数据结构,每个区块由两部分组成,区块主体负责记录交易,区块头部包括默克尔根(merkletree)、时间戳、随机数、挖矿难度等重要数据。当多个包含交易信息的区块从后向前有序链接就形成了区块链。如图1所示,是区块链的数据结构。

区块链的优势主要体现在以下几个方面:第一,去中心化去信任。分布式的点对点网络,且遵循规定的共识机制,保证了节点间无需互相信任;第二,不可篡改可追溯。根据拜占庭将军的51%攻击算法,单个节点对数据的恶意篡改不会影响到其它诚实的节点;第三,账本公开透明。任何节点拥有完整的数据库账本,每一笔交易都具有可见性。区块链分布式存储方式也存在一些问题。其一,性能问题。每一个节点加入区块链网络需要拥有完整的账本信息。随着数据账本的交易增加,对计算机的配置将有更高的要求。其二,网络延迟。区块链的节点共识会受到网络性能的影响。



技术实现要素:

为克服现有技术的不足,本发明旨在提出一种分布式的数据存储方法,能够有效克服传统数据库存储方式在隐私保护、数据安全等方面遇到的重要问题。结合传感器感知技术和人脸识别技术,发明一种全新的智能家居控制系统。为此,本发明采用的技术方案是,基于区块链的智能家居控制系统,包括:服务器、数据传输模块、传感器、门禁控制模块;门禁控制模块用于:通过摄像头采集图像信息,经数据传输模块将信息传输到服务器,在服务器端与图像库进行人脸匹配,匹配成功则开启门锁;

传感器收集家居数据,通过接收和发送数据的传感器、数据传输模块传输给服务器;

计算机设置有区块链分布式数据存储模块,区块链分布式数据存储模块提供数据的分布式存储方式,数据包括:室内数据监测指标、人脸识别数据库及历史识别记录,部署以太坊区块链的私有链——“智慧链”,建立特定产品的系统运作规则,即智能合约,保证整个区块链的真实性和部分去中心化。

区块链分布式数据存储模块用于:数据存储、数据检测、数据追溯,具体地:

第一,数据存储,本质上是将数据通过非对称加密的形式存储于一笔交易,每一笔交易包含数字签名、智能合约地址、时间戳记录,保证交易的唯一性和不可篡改,在区块链网络中,挖矿通过merkletree的方式对交易进行验证;第二,数据检测,根据当前数据特征值匹配区块链数据账本中特定的加密数据,不断优化数据查询算法,达到更加高效准确的检索能力;第三,数据追溯,通过检索某一时间段某一特定指标的历史记录,获取区块链交易的数据信息,时间戳证明保证了所有交易的可追溯性。

通过与连接传感器类似的方式连接包括空调、电视、电灯的基础家电并进行控制,还可连接nfc智能门禁、gps导航定位装置、摄像头监控装置。

基于区块链的智能家居控制方法,利用传感器采集数据,通过门禁控制模块实施门禁控制;所述传感器包括温湿度传感器、空气质量传感器和一氧化碳传感器,分别采集温湿度、空气质量、一氧化碳数据,通过负责接收和发送数据的传感器,传输、收集传感器、门禁模块数据;通过区块链分布式数据存储方式存储、处理传感器、门禁模块数据,部署以太坊区块链的私有链——“智慧链”,建立特定产品的系统运作规则,即智能合约,保证整个区块链的真实性和部分去中心化。

一个实例中的具体实施步骤如下:

步骤s0101:搭建硬件开发环境,包括:温湿度传感器、arduinouno主板、显示屏;

在步骤s0101中,将温湿度传感器和显示屏按照预先设计的电路图和arduinouno主板进行管脚连接;

步骤s0201:编写可执行控制代码段,包括:定义温湿度引脚、获取温湿度数据、设置检测的时间间隔、回传数据;具体地,通过arduinoide对代码段进行编译,并上传到arduinouno主板;

步骤s0301:连接电源设备开启室内温湿度检测;

在步骤s0301中,检测硬件线路的连接情况和可执行代码逻辑的正确性;

步骤s0401:使用arduinow5100进行网络数据传输,主要负责接收arduino板的回传数据,并将数据发送给后台服务器进行数据处理,w5100是一种具有网络功能的arduino扩展板;

步骤s0501:对回传数据进行分类筛选和部分哈希处理,拟采用两套数据库存储方案,包括:涉及防篡改的真实数据和个人隐私数据进行区块链存储,基本用户信息则使用传统数据库存储;

在步骤s0501中,考虑到区块链存储成本及查询效率的问题,因此只对相对重要的数据进行区块链存储,首先对数据进行sha256哈希计算,然后将其哈希值存入区块链;

步骤s0502:部署区块链数据存储的底层开发环境;

在步骤s0502中,通过geth命令启动以太坊区块链的私有链——“智慧链”,在节点中分别创建人脸识别数据账户、人脸识别身份认证账户、空气质量监测账户,同时获得对应账户的私钥;

步骤s0503:编写区块链数字化的智能合约承诺协议,包括:数据存储、数据检测、数据追溯;

在步骤s0503中,多方用户共同参与制定智能合约规则,通过私钥签名以确保合约的有效性;

步骤s0504:以交易的形式存入区块链交易池,等待节点的共识和验证;验证成功的合约将写入区块链账本,准备将智能合约协议写入区块链;

步骤s0505:服务器端通过调用智能合约协议与区块链数据进行交互;

步骤s0601:智能设备与用户进行交互。

本发明的特点及有益效果是:

基于区块链的智能家居产品解决方案,提供了分布式的数据存储创新应用模式。通过智能合约的承诺协议,将数据按照特定的规则存入区块链中。传感器感知技术实时获取室内空气监测数据,通过分析不同时间段的数据走势,反映更加接近真实的室内数据情况。图表绘制了空气质量、温湿度、一氧化碳浓度等指标的监测数据。

图3为空气质量折线统计图。x轴表示1天当中每隔3小时监测一次空气质量,y轴表示每0.01立方英尺>0.5微米颗粒物数量。从图表数据走势可以看到,0:00-12:00的数据接近平滑,空气质量较好;12:00-15:00、17:00-22:00数据起伏较为明显,在12:00和18:00先后两次达到400和600的峰值。

图4为温湿度对比统计图。x轴表示一周中每隔一天监测一次室内的平均温度和相对湿度,左侧y轴表示温度℃,右侧y轴表示相对空气湿度%。从对比数据走势可以看到室内温度集中在20℃-30℃,相对空气湿度集中在55%-65%,变化浮动较小,室内温度适宜,较为干燥。

图5为一氧化碳浓度统计图。x轴表示1天当中每隔3小时监测一次一氧化碳浓度,y轴表示一氧化碳浓度含量。从图表数据走势可以看到,全天一氧化碳浓度保持在正常指标范围内,未出现煤气泄漏等危险情况发生。

附图说明:

图1为区块链数据结构。

图2为智能家居流程分析图。

图3为空气质量折现统计图。

图4为温湿度对比统计图。

图5为一氧化碳浓度统计图。

具体实施方式

本发明提出一种基于区块链和arduino技术相结合的智能家居控制系统。发明按照技术进行划分,主要由以下三大部分构成:

第一部分:人脸识别技术模块。

人脸识别技术是指基于人的脸部特征,对采集图像进行定位、处理、身份确认,从而匹配人脸身份。本发明采用face++开放平台,通过api进行数据访问。face++是一个提供人脸检测、人脸识别、人脸属性分析的云端服务。人脸识别技术创新性的应用于智能家居系统提供的门禁控制模块,通过摄像头采集图像信息,并与图像库进行人脸匹配,匹配成功则可以成功开启门锁。

具体地,人脸识别技术本质上是完全依托于自身实现的相关功能。在完整的门禁控制功能模块中,是通过传感器+计算机来实现的。具体流程如下:当用户通过压力触发嵌入在门垫下的压力传感器fsr402时,fsr402会通知arduinow5100发送人脸识别数据到服务器端进行人脸匹配。人脸识别运用face++提供的api接口,通过服务器请求区块链具有开门权限的用户数据并逐一与摄像头采集到的图像进行人脸识别,如果匹配成功,则开启门锁。

第二部分:传感器感知技术模块。

传感器感知技术主要采用了开源的电子原型平台arduino,它由硬件arduino板和软件arduinoide组成。在传感器型号选择方面,一方面提供基础监测传感器,包括:dht11温湿度传感器、mq-135空气质量传感器、mq-7一氧化碳传感器。另一方面,提供nrf24l01传感器,负责接收和发送数据。

传感器感知技术主要应用于智能家居系统提供的室内空气监测模块,包括:温湿度、空气质量、一氧化碳浓度等基础监测指标。对室内数据进行实时监测,及时获悉空气监测指标,提供更加健康的宜居生活。

第三部分:区块链分布式数据存储模块。

区块链技术主要提供数据的分布式存储方式。包括:室内数据监测指标、人脸识别数据库及历史识别记录等。在智能家居系统中部署以太坊区块链的私有链——“智慧链”,建立特定产品的系统运作规则,即智能合约(smartcontract),保证整个区块链的真实性和部分去中心化。

在分布式数据存储模块中,主要实现以下三大功能,包括:数据存储、数据检测、数据追溯。

第一,数据存储。本质上是将数据通过非对称加密的形式存储于一笔交易。每一笔交易包含数字签名、智能合约地址、时间戳记录等,保证交易的唯一性和不可篡改。在区块链网络中,挖矿通过merkletree的方式对交易进行验证。第二,数据检测。以人脸识别数据为例,根据当前数据特征值匹配区块链数据账本中特定的加密数据。不断优化数据查询算法,达到更加高效准确的检索能力。第三,数据追溯。以室内监测数据为例,通过检索某一时间段某一特定指标的历史记录,获取区块链交易的数据信息。时间戳证明保证了所有交易的可追溯性。

区块链数据存储技术,不仅仅应用于智能家居系统的人脸识别模块和室内数据监测模块,对于家居系统中的空调、电视、电灯等基础家电控制、nfc智能门禁、gps导航定位、摄像头监控等都有很大的应用价值。

本发明的一个实例介绍如下:arduinow5100是可以实现上网功能的arduino扩展板,主要负责与服务器进行数据交互。考虑其成本较高,并且多个w5100与服务器交互会造成服务器端的数据压力,因此在智能家居系统中不采用为每一个家居配备w5100扩展板,而是采用多个nrf24与w5100进行数据交互,nrf24分别对应每一个家居系统。即,传感器数据交互nrf24,nrf24连接w5100,w5100通过能连网的路由器访问服务器。

节点是区块链技术中特有的概念,区块链是一个分布式的p2p组网结构,每一个节点都是拥有完整区块链数据的独立个体,即多冗余备份,保证了网络的耐攻击性和高容错性。在区块链系统中,每一个节点相当于一个矿工,通过打包交易并开启挖矿模式。在智能家居系统中,需要加密存储的数据都是通过交易的方式打包进入区块链进行存储。服务器端主要负责调用预先多方签名的智能合约即可将数据存入区块链中。

区块链运行所依托的硬件是服务器,可以在服务器上搭建所需的区块链运行环境。交易是通过基于密码学原理的数字签名进行加密传输,因此,发送交易双方无需考虑节点信任和敏感信息等问题,所有的交易都可以在网络中任意传播。

本发明提供了一种基于区块链技术的arduino智能家居控制方案,为数据存储、检测和追溯提供了一种全新的解决思路。如图2所示,以室内温湿度监测流程分析为例,智能家居控制系统的具体实施步骤如下:

步骤s0101:搭建硬件开发环境,包括:dht11温湿度传感器、1602显示屏、arduinouno主板。

在步骤s0101中,选择arduinouno为电路连接主板,将dht11和1602显示屏按照预先设计的电路图进行管脚连接。其中,dht11是一款已校准数字信号输出的高性价比温湿度传感器。

步骤s0201:编写可执行控制代码段,包括:定义温湿度引脚、获取温湿度数据、设置检测的时间间隔、回传数据等。

在步骤s0201中,通过arduinoide对代码段进行编译,并上传到arduino主板。其中,ide是arduino的软件组成部分,负责可执行代码段的编写、编译和上传工作。

步骤s0301:连接电源设备开启室内温湿度检测,设置每隔1s检测一次。

在步骤s0301中,检测硬件线路的连接情况和可执行代码逻辑的正确性,如果1602显示屏显示当前室内温湿度数据,并每隔1s会发生数据变化,则表示arduino硬件部分搭建完成。

步骤s0401:使用arduinow5100进行网络数据传输,主要负责接收arduino板的回传数据,并将数据发送给后台服务器进行数据处理。

在步骤s0401中,w5100是一种具有网络功能的arduino扩展板,由于考虑到其成本较高,或者选择nrf24l01作为发射与接收数据的工具,连接arduino板和w5100网络中心。

步骤s0501:对回传数据进行分类筛选和部分哈希处理,拟采用两套数据库存储方案。包括:涉及防篡改的真实数据和个人隐私数据进行区块链存储,基本用户信息则使用传统数据库存储。

在步骤s0501中,考虑到区块链存储成本及查询效率的问题,因此只对相对重要的数据进行区块链存储。首先对数据进行sha256哈希计算,然后将其哈希值存入区块链。

步骤s0502:部署区块链数据存储的底层开发环境。

在步骤s0502中,通过geth命令启动以太坊区块链的私有链——“智慧链”,在节点中分别创建人脸识别数据账户、人脸识别身份认证账户、空气质量监测账户,同时获得对应账户的私钥。

步骤s0503:编写区块链数字化的智能合约承诺协议。包括:数据存储、数据检测、数据追溯。

在步骤s0503中,多方用户共同参与制定智能合约规则,通过私钥签名以确保合约的有效性。智能合约使用solidity开发语言。

步骤s0504:将智能合约协议写入区块链。

在步骤s0504中,签名通过的合约通过p2p网络进行扩散,并以交易的形式存入区块链交易池,等待节点的共识和验证;验证成功的合约将写入区块链账本。发送合约交易指令如下:

data=contract.new({from:web3.eth.accounts[0],data:compiled.demo.code});

步骤s0505:调用区块链的智能合约协议,包括:智能家居数据存储合约、人脸识别检测合约、室内数据追溯合约等。

在步骤s0505中,服务器端通过调用智能合约协议与区块链数据进行交互,完成隐私数据加密存储、人脸识别信息匹配、室内数据走势图表绘制等预设功能。

步骤s0601:智能设备与用户进行交互,主要负责显示智能家居的统计数据和触发新的事件请求。

在步骤s0601中,移动端用户发送新的请求指令时,w5100接收指令并将其发送给arduino板,触发不同型号的传感器执行预设功能。

本发明所述的是一种基于区块链技术的智能家居控制方法,为数据存储提供了一种新思路。提出并采取了一种基于区块链分布式数据存储和传感器感知技术相结合的执行策略,通过分析人脸识别的辨识度和数据监测的走势情况,达到数据安全性存储的目的。创新性的提出了一种规则与技术完美结合的智慧链生态系统。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1