CN114415603A - 面向智慧养老的分布式数据调度监测系统、方法、终端 - Google Patents

面向智慧养老的分布式数据调度监测系统、方法、终端 Download PDF

Info

Publication number
CN114415603A
CN114415603A CN202111488633.8A CN202111488633A CN114415603A CN 114415603 A CN114415603 A CN 114415603A CN 202111488633 A CN202111488633 A CN 202111488633A CN 114415603 A CN114415603 A CN 114415603A
Authority
CN
China
Prior art keywords
data
raspberry
equipment
task
gateway
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111488633.8A
Other languages
English (en)
Inventor
胡鑫
丁德琼
张浩智
刘明星
初佃辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harbin Institute of Technology Weihai
Original Assignee
Harbin Institute of Technology Weihai
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Harbin Institute of Technology Weihai filed Critical Harbin Institute of Technology Weihai
Priority to CN202111488633.8A priority Critical patent/CN114415603A/zh
Publication of CN114415603A publication Critical patent/CN114415603A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32252Scheduling production, machining, job shop
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Alarm Systems (AREA)

Abstract

本发明公开了面向智慧养老的分布式数据调度监测系统、方法、终端,涉及物联网数据分析技术领域。对获取的各项体征数据,基于动态优先级的调度算法,对优先级进行分类,对不同的设备传输任务进行调度后上传到云端;上传到云端的数据通过前端Web界面,展示设备信息,数据完整性状态,设备日志,并从云端上下载数据、更新网关以及设备树莓派程序。本发明以Java为主开发语言,基于springboot框架,基于存储完整性的需求,设计实现了用于数据调度与缓存的老年人体征监测系统,用于对老年人健康信息系统进行数据管理与设备管理,保障数据的存储完整性。

Description

面向智慧养老的分布式数据调度监测系统、方法、终端
技术领域
本发明属于物联网数据分析技术领域,尤其涉及一种面向智慧养老的分布式数据调度监测系统、监测方法、监测装置、信息数据处理终端、计算机可读存储介质、应用。
背景技术
当今物联网技术发展日新月异,物联网技术已经应用至生活生产的方方面面,包括养老健康服务领域,基于物联网构建的老人健康系统可以通过深度镜头获取深度图像数据,识别老人姿态,通过激光雷达获取点云数据分析出老人步态,行动轨迹等信息,通过可穿戴设备可以获取心率等数据,通过对数据的分析可以为老人提供实时的健康监护以及提前预警服务。
老人健康系统是维护老年人健康的重要举措,老年人健康系统对物联网获取数据在传输以及存储过程中的完整性有着极高要求。
在老人健康系统中,相比较于传统互联网,有着更多的、不同类型的设备接入以及更大体量的数据传输需求,这些设备所获取的数据有着海量、异构、实时三大特性,这对数据缓存以及数据传输信道资源的调度提出了挑战。在这个过程中,众多的物联网设备通过网关上传不同类型的海量数据,会对系统网关以及通信信道产生巨大负载,这时如何对不同设备进行调度,协调众多物联网设备的传输速率以及传输时间至关重要,对设备进行良好的协调处理对保证数据的存储完整性至关重要。数据不完整,数据获取间隔不稳定,将导致后续数据处理时无法得到正确的健康信息。严重的可能导致大范围的数据丢失,从而无法进行数据分析。
同时对于手表等可穿戴设备,由于传输时耗电量较大,不便对数据进行实时传输,所以迫切需要建立合适的调度与缓存算法,对不同物联网设备进行监控,以便于对数据传输进行调度。
现有的为了保证储存完整性的系统为网关树莓派、设备树莓派、传感器如镜头与雷达、智能手表以及云存储器的智能网关系统,主要在网关树莓派中设计缓存机制与上传队列,但不同的设备端所提供的数据有着海量、异构、实时三大特性,雷达镜头手表等设备在数据传输需求方面存在很大的差异,现有的网关系统难以保证老人健康信息系统数据上传的完整性,难以对信道进行合理分配与管控,极大增加了网关负荷,导致上传效率低下,同时网关功能的集中也增大了系统的耦合度。不利于该系统的拓展。
为了满足养老服务系统低时延并且高安全性的需求,对于边缘计算能力的需求越来越高,与基于中心云的云平台方案不同之处是其将更多的数据计算和存储从“核心”下沉到“边缘”,部署在数据源的附近,不需要通过网络到远程中心云进行处理,从而减少了网络延迟和负载,提高了数据的安全性和隐私性。
现有技术中,边缘计算实现了物联网技术前所未有的连接性、集中化和智能化,是在物联网时代所兴起的,位于数据源与云端数据中心之间的任何计算及网络资源。本发明将沿着边缘计算的思想,构建基于多springboot的面向存储完整性的物联网数据调度与缓存系统。
主流调度算法包括:基于优先级的调度算法(静态优先级调度算法、动态优先级调度算法)、比例共享调度算法、时间表驱动的调度算法;上述实时调度算法的分类并不是十分严格,它们只是一种功能性的分类。因为很多比例共享调度算法从实现上来说,也可以归结为基于动态优先级的。
通过上述分析,现有技术存在的问题及缺陷为:
(1)现有技术对老年人健康信息系统进行数据管理与设备管理,不能保障数据的存储完整性。
(2)现有技术中,对老年人健康信息系统获得的监测数据,准确性低,达不到预期所需要求数据信息。
(3)现有技术老年人健康信息监测系统进行实际生产生活中的监测实用性差。
(4)现有技术老年人健康信息监测系统不能减少网络延迟和负载,信道利用率低,而且数据的安全性和隐私性差。
解决以上问题及缺陷的意义为:
本发明设计的老年人体征监测系统对老年人健康系统中数据获取传输存储功能进行设计优化,通过对设备稳定性的保证以及对数据的调度与缓存功能实现数据从获取到上传到云存储器过程中数据的完整性。
发明内容
为克服相关技术中存在的问题,本发明公开实施例提供了一种面向智慧养老的分布式数据调度监测系统、监测方法、监测装置、信息数据处理终端、计算机可读存储介质、应用。
本发明提供的老年人体征数据监测系统,通过物联网设备获取老人的各项体征数据,使用深度学习等方法从原始数据中提取信息,最终分析老人的健康状况。本发明的目的是为了缓解网关负荷,降低系统耦合,将对数据的计算部署在近数据侧,对数据进行调度处理,构建新的面向存储完整性的物联网数据调度与缓存系统,将数据压缩,数据封装,数据的简单可视化,对不同设备端进行合理调度,优化获取的数据的上传速度,保证数据上传至云端的完整性,降低传输延迟,控制网络用塞,提高信道利用率。
所述技术方案如下:根据本发明公开实施例的第一方面,提供一种面向智慧养老的分布式数据调度监测方法,包括:
步骤一,通过不同传感器获取老人的各项体征数据;
步骤二,对获取的各项体征数据,基于动态优先级的调度算法,对优先级进行分类,对不同的设备传输任务进行调度后上传到云端;
步骤三,上传到云端的数据通过前端Web界面,展示设备信息,数据完整性状态,设备日志,并从云端上下载数据、更新网关以及设备树莓派程序。
根据本发明公开实施例的第二方面,提供一种面向智慧养老的分布式数据调度监测系统包括:
数据获取模块,用于系统通过传感器获取老年人体征数据;
调度传输模块,用于对数据从获取到上传到云端的过程中进行调度传输;
软件展示模块,为前端Web界面,用以展示设备信息,数据完整性状态,设备日志,从云上下载数据,以及更新网关以及设备树莓派程序。
根据本发明公开实施例的第三方面,提供一种面向智慧养老的分布式数据调度监测装置包括:
激光雷达、镜头、手表,设备树莓派,网关树莓派以及云存储器;
激光雷达以及镜头通过有线方式连接各自的设备树莓派,手表不连接设备树莓派;
设备树莓派以及手表通过无线的方式与网关树莓派连接;网关树莓派通过有线方式连接到英特网,从而与云存储器相连。
根据本发明公开实施例的第四方面,提供一种信息数据处理终端,所述信息数据处理终端包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述面向智慧养老的分布式数据调度监测方法。
根据本发明公开实施例的第五方面,提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行所述面向智慧养老的分布式数据调度监测方法。
根据本发明公开实施例的第六方面,提供一种所述面向智慧养老的分布式数据调度监测方法在部署到老人家中进行实际生产生活监测上的应用。
本发明公开的实施例提供的技术方案可以包括以下有益效果:
本发明从需求出发,老年人体征监测系统共设计了三大模块,数据获取,调度传输与软件展示模块其中数据获取模块用于系统通过传感器获取老年人体征数据。调度传输模块为系统核心模块,用于对数据从获取到上传到云的过程中进行调度传输,保证数据传输过程中的稳定性。软件展示模块为前端Web界面,用以展示设备信息,数据完整性状态,设备日志,从云上下载数据,以及更新网关以及设备树莓派程序。根据老年人体征监测系统对数据时效性以及物联网设备的稳定性的要求,本发明还设计了一种基于动态优先级的调度算法,采用朴素贝叶斯算法对优先级进行分类。对不同的设备传输任务进行调度。
最后,将本发明所设计实现的程序部署到老人家中进行实际生产生活中的监测。通过该系统,激光雷达,镜头,手表等设备获取到的老年人体征数据能够完整、实时的上传至云端。
通过上述技术方案本发明相比于现有技术的积极效果进一步包括:
本发明以Java为主开发语言,基于springboot框架,基于存储完整性的需求,设计实现了用于数据调度与缓存的老年人体征监测系统,用于对老年人健康信息系统进行数据管理与设备管理,保障数据的存储完整性。
本发明对老年人体征监测系统进行需求分析,根据老年人健康信息系统所需要的数据以及数据获取的方式,基于存储完整性设计了该系统,用于对老年人体征进行监测。
本发明设计与实现了老年人体征监测系统。系统总体上分为软件硬件两大部分。硬件部分包括传感器、设备树莓派、网关树莓派与云存储器。软件方面主要分为三大模块,数据获取,调度传输与软件展示。
本发明通过实验室环境模拟和实地应用的方式,对老年人体征监测系统进行系统测试,测试结果符合预期。
当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是本发明实施例提供的老年人体征数据监测系统架构中软件架构图。
图2是本发明实施例提供的老年人体征数据监测系统(面向智慧养老的分布式数据调度监测系统)示意图。
图2中:1、数据获取模块;2、调度传输模块;3、软件展示模块。
图3是本发明实施例提供的数据获取模块数据获取架构图。
图4是本发明实施例提供的调度传输模块架构图。
图5是本发明实施例提供的可视化软件模块架构图。
图6是本发明实施例提供的缓存机构图。
图7是本发明实施例提供的智能手表数据采集应用架构图。
图8是本发明实施例提供的数据缓存流程图。
图9是本发明实施例提供的数据传输流程图。
图10是本发明实施例提供的设备自连接流程图。
图11是本发明实施例提供的数据接收流程图。
图12是本发明实施例提供的数据上传流程图。
图13是本发明实施例提供的下属设备管理流程图。
图14是本发明实施例提供的任务调度流程图。
图15是本发明实施例提供的定时休眠流程图。
图16是本发明实施例提供的数据下载流程图。
图17是本发明实施例提供的系统数据流向图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面向一致的装置和方法的例子。
本发明主要是设计一个服务于老年人体征数据监测系统的面向存储完整性的物联网调度与缓存系统。用以在老人体征数据监测系统中工作,该系统可对老人体征数据监测系统中的物联网传感器设备进行数据的收集以缓存上传,保证数据上传至云端的完整性。同时,该系统还设计了前端界面,用户可以通过web网页便捷的从云上获取数据,实时监控设备运行状态以及查看各个设备上传到云上的数据量,还可以向云上上传jar包,用于网关树莓用以及设备树莓派的实时更新。
1.下面结合方法、系统、装置对本发明的技术方案作进一步描述。
本发明公开实施例所提供的面向智慧养老的分布式数据调度监测方法,包括:
步骤一,通过不同传感器获取老人的各项体征数据;
步骤二,对获取的各项体征数据,基于动态优先级的调度算法,对优先级进行分类,对不同的设备传输任务进行调度后上传到云端;
步骤三,上传到云端的数据通过前端Web界面,展示设备信息,数据完整性状态,设备日志,并从云端上下载数据、更新网关以及设备树莓派程序。
本发明提供一种面向智慧养老的分布式数据调度监测系统包括:
数据获取模块,用于系统通过传感器获取老年人体征数据;
调度传输模块,用于对数据从获取到上传到云端的过程中进行调度传输;
软件展示模块,为前端Web界面,用以展示设备信息,数据完整性状态,设备日志,从云上下载数据,以及更新网关以及设备树莓派程序。
本发明公开一种面向智慧养老的分布式数据调度监测装置包括:
激光雷达、镜头、手表,设备树莓派,网关树莓派以及云存储器;
激光雷达以及镜头通过有线方式连接各自的设备树莓派,手表不连接设备树莓派;
设备树莓派以及手表通过无线的方式与网关树莓派连接;网关树莓派通过有线方式连接到英特网,从而与云存储器相连。
2.下面结合调度与缓存系统的需求分析,包括数据获取方式,数据缓存方式,数据传输方式,如何保证数据完整性对本发明技术方案作进一步描述。
2.1数据获取需求分析
该层的主要功能是利用传感器对老年人身体健康状况信息进行实时感应,并通过调度传输层将由传感器采集到的各项老年人体征数据进行向上层进行传递,具体的功能如下所示:
1).数据采集
各类传感器可以采集到老年人不同种类的体征数据,然而有些传感器并不具备暂存数据的功能,这导致若不进行其他处理,由其采集到的原始数据将无法用于后续展示、分析和处理。故需要将传感器采集到的原始数据通过一定手段进行保存,以便于后续操作。
2).数据预处理
由于采集老年人体征数据时所使用的传感器种类繁多,且采集到的原始数据具有多样性和差异性,这给后续的数据分析带来了困难,故首先需要对数据进行预处理操作,使其格式统一,以加强数据的可处理性。并且,数据的完整性要求数据在时间上是连续的,因此需要为采集到的每条数据增加时间戳,以方便后续模块的工作,同时也增强了数据展示模块的严谨性。除此之外,采集到的原始数据以帧为单位,应该根据实际情况,选择一个固定数目的数据作为一个数据展示单元,以增强数据的可读性,减小数据处理的工作量。
3).数据传输
采集到的原始数据经过预处理后,需要通过调度传输层传送至目标服务器处,因物联网所使用的一些边缘设备的性能限制,需尽可能使用占用资源较少的协议进行数据的传输,故选择合适的传输协议对数据进行传输以保证数据的完整性十分重要,使用选择的协议在数据传输层实现发送方功能。
2.2调度传输需求分析
老年人体征数据监测系统中,调度传输层的主要功能为接收来自不同设备的数据,并上传至目标处。同时,获取目前系统的状态信息,对下级层次进行控制,以及对上级层次进行信息反馈。对于从设备传感器获得的数据,需要经过处理之后上传到云端。处理过程主要包括以下几个方面:
1).设备调度
调度传输层需要控制数据获取层的多个传感器设备,并接收多个设备传递的数据。若在同一时刻有多个设备同时向该层传输数据,可能会因为网络带宽的限制而导致部分数据丢失,数据的完整性难以保证。所以该层需要调度策略实现设备的调度,提高数据的完整性。
调度过程需要考虑的因素比较多:由于不同设备的特性不同,导致相同时间内采集的数据量大小不同;不同设备采集到的数据类型具有多样性与差异性;部分传感器的数据需要实时上传,但设备的内存和磁盘有限,如果不及时调度,可能会导致数据丢失;采用无线方式传输,周围的网络环境也影响传输过程。
基于以上四点,调度传输层需要综合考虑数据量大小、设备内存与磁盘大小、网络以及自身的资源数量,选择正确的调度策略,提高数据传输效率,防止某一设备长期处理饥饿状态,导致数据丢失,无法上传,以实现数据的完整性,同时也避免了同一时间大量数据传输,数据因带宽限制而丢失。
2).数据转移
网关树莓派可以看作是数据的中转站,所有设备树莓派将经过预处理的数据、设备信息和系统运行的日志传输给网关树莓派,网关树莓派需要再将设备传来的数据文件通过一定策略传输至云上。
3).设备管理
网关树莓派同时也是整个系统的控制中心,需要对下属设备进行管理和控制,比如采取正确的调度策略对设备进行调度、获取设备树莓派网络信息和配置信息等。除此之外,也需要对自身进行控制。
2.3应用程序需求
网关程序提供了对外暴露的API接口,可以通过接口获得网关以及设备树莓派信息,云上的数据,可以实时监控上传到云上的数据量,确保数据上传到云端的完整性。
1).网关及设备信息获取
为了实时监控设备状况,及时对设备出现的问题进行处理,网关及设备会将自身树莓派信息,包括当前cpu使用率、以使用的内存容量、总的内存容量、已使用的磁盘容量、总的磁盘容量打包成json格式的文本发明件上传到云端,网关程序可以从云端实时获取这些信息,并在前端展示出来。
2).数据完整性展示
为了直观的感受数据的完整性,网关程序需要对系统上传到云端的数据大小进行统计,并实时的显示出来,便于直观的观察到某时刻的数据量。
3).数据获取
网关程序可以根据Topic名字以及网关设备的mac地址,需要的数据的日期、起止时间,找到符合条件的数据文件,将文件下载下来。为了便于数据的获取,网关树莓派需要将数据Topic名字打包成文件上传到云端。
4).网关及设备日志展示
为了及时发现网关以及设备的问题,需要将网关以及设备的设备信息、网络连接情况、数据传输情况写在日志当中,以便于前端实时从云上获取设备日志并展示。
2.4老年人体征数据监测系统非功能需求分析
目前,软件行业十分重视功能性需求,与此同时,为了保证系统可长期与高效运行并大规模投入生产,对非功能性需求的重视程度正在不断增加。结合该老年人体征数据监测系统自身特点以及现实因素,需要考虑的非功能需求如下:
1).可操作性
本系统主要面向的用户为老年人。对于老年人来说,过于繁琐复杂的操作会使老年人对系统产生抵触感,所以采用的传感器需要操作简单且使用便携。除此之外,所设计的客户端界面也应简单美观,方便操作,最大程度的提升所有用户的体验感。
2).稳定性
因该系统需要长期部署到老年人居住环境中,对老年人的身体数据情况进行全天的监测,而开发者频繁到老年人家中进行错误恢复处理不现实,所以该系统需要保证极高的稳定性,确保系统可以长期稳定并高效运行。
3).安全性
该系统采集到老年人大量的体征数据,包括老年人的步态信息、三维骨架化处理结果、心率等,这些属于老年人的私密信息,所以应该保证数据的安全性,不被泄露。
4).可扩展性
该系统重点在于稳定并完整的采集到老年人体征数据。而对于数据分析处理等功能的实现过于简单,所以应留出功能接口,便于系统的功能扩展以及进一步优化系统。
5).兼容性
该系统的硬件设施可以部署到大部分老年人居住环境中,所以应该具有设备通用性;并且,面向老年人、老年人家属以及系统管理员的网页客户端应该支持目前主流浏览器,具有良好的兼容性。
本发明对老年人体征数据监测系统进行需求分析,分析了老年人体征数据监测系统所需的功能,主要有数据获取与处理。以及系统在运行过程中可能会遇到的故障以及故障产生的原因。
3.下面结合调度与缓存系统设计对本发明的技术方案作进一步描述。
3.1总体架构设计
老年人体征数据监测系统架构分为硬件架构与软件架构两部分。软件架构总体架构如图1所示,分为用户层,应用软件层,调度传输层,数据获取层。本发明主要对数据获取层,调度传输层和应用软件层进行设计。
3.1.1硬件总体架构
老年人体征数据监测系统涉及的硬件包括传感器部分:激光雷达、镜头、手表,设备树莓派部分,网关树莓派部分以及云存储器部分。激光雷达以及镜头通过有线方式连接各自的设备树莓派,手表不许连接设备树莓派。设备树莓派以及手表通过无线的方式与网关树莓派连接。网关树莓派通过有线方式连接到英特网,从而与云存储器相连。
3.1.2软件总体架构
老年人体征数据监测系统软件可以分为三大模块:数据获取模块1,调度传输模块2以及软件展示模块3。
其中数据获取模块1用于系统通过传感器获取老年人体征数据。
调度传输模块2为系统核心模块,用于对数据从获取到上传到云的过程中进行调度传输,保证数据传输过程中的稳定性。
软件展示模块3为前端Web界面,用以展示设备信息,数据完整性状态,设备日志,从云上下载数据,以及更新网关以及设备树莓派程序。如图2所示。
3.1.2.1数据获取模块
数据获取模块1用于系统通过传感器获取老年人体征数据。分为三部分数据管理,设备管理以及性能保障,数据管理模块对数据进行采集、预处理,缓存以及缓存后的数据传输。设备管理模块主要为设备树莓派的与网关树莓派的自连接和设备树莓派的设备信息获取。性能保障模块分别为对设备树莓派获取到的数据的监控,设备树莓派的故障处理,定时休眠以及日志记录。如图3所示。
3.1.2.2调度传输模块
调度传输模块2为系统核心模块,用于对数据从获取到上传到云的过程中进行调度传输,保证数据传输过程中的稳定性。分别包括数据传输模块,设备控制模块,以及性能保障模块。其中数据传输模块分为网关树莓派从设备树莓派获取数据和将数据上传到云端两部分,设备控制模块分为下属设备管理模块以及网关管理模块,分别为网关树莓派对设备树莓派以及自身的管理。性能保障模块则包含调度策略模块,信道优化模块,定时休眠模块以及故障恢复模块。网关树莓派通过调度策略接受设备树莓派传输数据的请求,并根据当前网络环境进行信道优化,考虑设备运行所带来的硬件负载,设置定时休眠程序,以保证调度传输过程中数据的完整性以及设备的稳定性从而保证数据传输的稳定性。如图4所示。
3.1.2.3可视化软件模块
软件展示模块3为前端Web界面,用以展示设备信息,数据完整性状态,设备日志,从云上下载数据,以及更新网关以及设备树莓派程序。软件展示模块主要分为多源异构数据查看模块、信息展示模块、以及设备操作模块。
多源异构数据查看模块可以从云端或者网关进行数据下载查看,信息展示模块分为设备信息状态展示,可以实时的展示网关以及设备树莓的cpu使用率,内存使用量,内存总量,硬盘使用量,硬盘总量等数据,采集数据量展示可以实时的展示系统获取到的老人体征数据。日志展示可以实时展示网关与设备树莓派所产生的日志。设备操作模块可以对系统进行重启以及系统更新。如图5所示。
3.2硬件系统构成
树莓派:本系统的所有树莓派型号统一为树莓派4b,4GB内存版本;安装操作系统为Linux ubuntu 5.3.0-10**-raspi2,同时安装有ROS系统。
深度镜头:型号为Intel RealSense系列镜头,可同时拍摄深度图像与彩色图像。
雷达:雷达型号为3irobotix的Delta-1A型激光雷达,可采集雷达点云数据。
智能手表:华为Watch2,安装有WeaROS中国版操作系统。
3.3软件系统详细设计
3.3.1数据获取设计
1).数据缓存设计
缓存作为保证数据完整性的重要举措是老年人体征数据监测系统的核心功能之一,本系统为保证数据完整性采用双缓存结构,新接受的数据将会加入到新缓存中,而新缓存中较旧的数据将被转移到旧缓存中,旧缓存的数据量达到阈值就会触发文件写入机制,将一定数量的数据写入到文件中,并在旧缓存中删除这些数据,保证缓存的总数据量,维持在一个相对稳定的水平。在缓存到磁盘这一过程中,程序因为线程安全,必须对缓存所在的对象进行加锁。采用单一缓存结构,在写入过程中,新来的数据无法添加到缓存中。由于从内存到内存的速度远大于从内存写入磁盘的速度,采用双缓存结构,可以避免单缓存结构中因为等待文件写入完成所消耗的时间,大大减少新来的数据丢失的概率。
对于写入文件的数据,还要保证其有序性。设备程序的缓存采用了一种特殊的结构——队列。队列的特性是从队头删除,从队尾加入,正好符合对于数据有序性的要求。新来的数据只需添加到新缓存的队尾。旧缓存每隔一段时间,就从新缓存的队头获取新数据,新缓存则删除对应内容,旧缓存满后,将一定数量的数据从其队头依次删除并写入到磁盘中。缓存机构如图6所示。
2).数据传输设计
设备树莓派通过ROSbridge获得的所有数据、设备信息与日志需要传输到网关。不同的线程会产生不同的文件,为统一控制,需要有一个统一管理上传的机制。为此程序设定了一个数据传输中心,管理所有数据传输任务。传输中心的核心是维护一个传输队列,该队列的每个元素都是一个文件单元,其属性包括文件的名称,文件的本地路径。其他模块只需向上载中心注册一个文件上传任务,后续就由上载中心完成该任务。上载中心接收到新任务后会将文件单元添加到上传队列队尾,并更新上传队列的总存储容量。为避免文件过多,导致本地磁盘满,程序设定了一个阈值,当待上传容量超出该阈值后,删除队头的部分数据,使总容量降低到安全的水平,而新来的数据可以继续加到上传队列中。实际就是用新数据代替旧数据。上载中心不断从上传队列的队首获取文件单元,尝试上传对应的文件,成功则从队列中删除该文件,并删除对应的本地文件;失败则将该元素从队头删除,并重新添加到队尾。上载中心在程序休眠的时候不停止工作,这也是为了保障数据的存储完整性。非休眠时段可能会积压部分数据,在休眠时间,程序停止接收数据时,数据传输机制仍然工作,可以一定程度保证数据不丢失。
3).数据预处理设计
设备树莓派从传感器获得的数据需要在设备树莓派进行预处理,预处理过程包括数据选取,上传到云上的数据是以原始频率固定条数一份,系统以不同于数据原始频率获取数据。按照时间顺序将符合要求的数据组装成一个文件。并将文件打包成json格式,并打上时间戳,便于后续处理。
4).设备状态信息获取
设备状态信息是保证设备稳定性的重要因素,包括cpu使用率、memory使用率以及disk使用率。所以设备树莓派自身需要获取状态信息,然后将信息通过网关树莓派传递至云上。
5).设备自连接设计
对于每个系统来说,各个设备树莓派与其网关树莓派可以看作一个整体,双方之间通过网关树莓派的热点联系起来。在系统实际投入使用时,可能会出现局部范围内包含多个系统的情况,若此时设备树莓派连接了其他系统的网关树莓派的热点,就会将数据传输到其他系统中,本系统采集不到该设备的数据,则误以为设备出现故障。
为了避免冲突,网关树莓派需要获取周围网络环境信息,若有重复的热点名称,则及时更换自身热点名称,而设备树莓派也需要根据网络信号强度选择本系统的网关树莓派进行自动连接。
6).数据监控
设备树莓派从传感器获取数据依靠的是ROS,通过订阅传感器publish Topic即可采集到各类体征数据。若在某一时间段内ROS服务处于异常状态,设备树莓派则无法获取到数据,造成数据不完整。然而ROS服务的状态难以监控,所以可以通过是否采集到传感器数据判断ROS服务当前的状态。
数据监控模块对数据采集模块进行监控,一旦发现某一段时间内无原始数据则重启ROS服务或者重启设备。
7).故障处理
在实际环境中,可能会出现一些突发情况或者异常事件,所以需要对一些可以预测的故障设计应对策略,保障设备的稳定性和数据的完整性。
7.1).cpu或者内存使用率过高
若cpu或者内存使用率过高,则会造成系统无法正常工作。此时应及时重启设备树莓派,使系统恢复正常状态,保证设备的稳定性。
7.2)磁盘剩余空间过小
若数据文件长时间得不到传输,就会堆积在磁盘中,若磁盘压力过大,则无法存储新数据,造成数据丢失。所以在数据传输模块中设置一个限定值,当待传输数据文件的总大小超过限定值以后,将传输队列中的头部数据文件从磁盘中删除,即放弃旧数据,保留新数据,保证数据的完整性。
7.3)无法连接至网关树莓派热点
当设备树莓派无法连接至网关树莓派热点时,程序的其他模块正常工作,对于数据传输模块,应保留传输队列的所有文件,当设备树莓派连接至网关树莓派热点时,再开始上传,保证数据不丢失,从而保证数据的完整性。
7.4)网络状况不佳
当网络状况不佳时,可能会造成数据传输失败,所以系统在发现数据未传输成功后,应该将该数据文件重新加入到传输队列的尾部,等待再次传输,保证数据的完整性。
7.5).断电
断电后,处于缓存的数据会不可避免的造成丢失,而保存在磁盘中的数据可以继续传输给网关树莓派。所以在设备树莓派重启后,应首先将未传输的数据加入到传输队列中,重新进行传输。
3.3.2调度传输设计
1).数据接收设计
网关程序通过socket套节字与设备进行数据传输。当设备发起socket连接请求时,网关根据自身情况以及调度策略决定是否进行socket连接。若连接成功,则接受设备树莓派传输的数据文件,并根据文件名称时间戳存储在本地磁盘。等待加入上传队列进行上传。
2).数据上传设计
网关程序接收到的所有数据、网关与设备的信息与日志都需要上传到云端。不同的线程会产生不同的文件,为统一控制,需要有一个统一管理上传的机制。为此程序设定了一个上载中心,管理所有上传任务。上载中心的核心是维护一个上传队列,该队列的每个元素都是一个文件单元,其属性包括文件的名称,文件的本地路径,文件的云端路径。其他模块只需向上载中心注册一个文件上传任务,后续就由上载中心完成该任务。上载中心接收到新任务后会将文件单元添加到上传队列队尾,并更新上传队列的总存储容量。为避免文件过多,导致本地磁盘满,程序设定了一个阈值,当待上传容量超出该阈值后,删除队头的部分数据,使总容量降低到安全的水平,而新来的数据可以继续加到上传队列中。实际就是用新数据代替旧数据。上载中心不断从上传队列的队首获取文件单元,尝试上传对应的文件,成功则从队列中删除该文件,并删除对应的本地文件;失败则将该元素从队头删除,并重新添加到队尾。上载中心在程序休眠的时候不停止工作,这也是为了保障数据的存储完整性。非休眠时段可能会积压部分数据,在休眠时间,程序停止接收数据时,上传机制仍然工作,可以一定程度保证数据不丢失。
3).扫描下属设备
设备树莓派连接到网关树莓派热点以后,只是建立了单方联系。为了网关树莓派控制下属设备,建立双方联系,其首先应该获取连接到热点的所有设备。由于设备可能会进行重启等恢复,各个设备树莓派加入到网关热点的时间是随机的,因此网关树莓派需要周期性扫描设备,一旦发现新设备(指新连接到热点的设备),则立即将其加入到设备控制中心,并获取设备的配置信息,包括设备名称、Topic信息等。
在周期性扫描设备的同时,也可以获取到设备树莓派的网络信息,包括Mac地址、Ip地址、连接到热点的时间以及网络速度,上述信息作为调度的重要参考因素。
4).调度算法设计
在老年人体征监测系统中,假设信号传输信道的贷款是固定的,并且每个设备树莓派有着固定的硬件性能。每个文件具有固定长度Lm比特。请求文件j的可能性为pi,它们分别满足如下条件(3-1)(3-2).
Figure BDA0003398317630000111
Figure BDA0003398317630000112
其中,γ表示流行度偏差,流行度偏差通常是针对物品的公平性问题,体现为不流行的物品有更少的机会被推荐,相应的,流行的物品容易被推荐。由此可得,在本发明中,流行度指的是文件被请求的机会,所以流行度偏差越大,请求的可能性越集中在流行度高的文件。流行度偏差越小,请求的公平性越高。其由香农公式得到对应的传输速率由公式(3-3)给出。
Rm=wm log2(1+SINR) (3-3)
其中,wm表示网关热点分配给设备树莓派m的带宽,根据香农公式(3-3)可以得到在设备向网关进行数据传输时的信噪比SINR为(3-4)所示。
Figure BDA0003398317630000113
其中,N0为噪声功率谱密度常数,B为系统带宽。Pm为设备树莓派m的平均传输功率,本发明中所有的设备树莓派均使用树莓派4b 4GB,所有的设备树莓派具有相同传输功率,x为对传输功率产生干扰的定制,因此数据传输时的信噪比SINR可以看作是为随机变量。
Figure BDA0003398317630000114
表示网关分配给设备树莓派m的带宽所占总带宽的比例。由此公式(3-3)可以转换为公式(3-5)。
Figure BDA0003398317630000115
且带宽分配比例
Figure BDA0003398317630000116
满足公式(3-6)。
Figure BDA0003398317630000117
则带宽分配公式为(3-7)
Figure BDA0003398317630000118
则带宽分配比例与数据传输速率成相关。当某一设备健康状态较差时,则需要更宽的数据传输速率,则需更高的带宽分配比例。则最优的带宽分配比例则需根据本系统中设备的状态进行决定。
当实时任务到达时,为其指派一个优先级并调入任务队列,在任务队列中,任务按照优先级顺序依次排列,优先级最高的任务排在第一位,优先级最低的任务排在末位。
本发明根据数据上传任务属性进行静态优先级设计,在静态优先级设计中,手表数据上传的的优先级高于其他设备。对于雷达镜头设备,本发明根据包括设备CPU使用率,内存、硬盘占用率在内的树莓派状态以及网络状态进行优先级动态设置。
本发明将作业分为四种优先级的作业L={level1,level2,level3,level4}。其中,level1是设备树莓派状态良好不会发生数据溢出的任务,level2是设备树莓派状态交叉但不会发生数据溢出的任务,level3是设备树莓派状态差,会发生数据溢出的任务;level4是手表数据上传任务。数据传输任务总数为n,每个任务j都是一个待分类项jf={f1,f2,f3,f4},其中fj为任务j的特征属性,在本系统中,特征属性主要用于描述设备树莓派的资源使用情况,特征属性变量的值通过分析设备树莓派上传的日志信息来获得,本发明主要通过四个特征属性来对任务进行分类:设备树莓派的CPU利用率,设备树莓派的内存的总容量以及已使用量,内存使用率,设备树莓派的硬盘总容量以及硬盘使用率,设备树莓派的硬盘使用率,网关树莓派的AP网络情况。
本发明用CP表示CPU利用率,MU表示内存使用率,HU表示硬盘使用率NU表示网络使用率。因此任务的特征属性可以由公式(3-8)表示。
Figure BDA0003398317630000121
其中,B,M,N分别为系统总带宽,总内存大小和总硬盘容量,根据设备树莓派日志信息可以得知,CPUj表示任务j的CPU运行时间,jexecute表示任务j的整体执行时间。
在老人体征数据监测系统中,对于任务的特征属性来说,任务特征值P越高,设备树莓派的状态越差,因此,对于该设备树莓派而言出现过载,发生数据丢失的可能性就越高。对于任何特征变量存在一个临界值,高于或低于该临界值将使设备树莓派过载。因此本发明可以使用线性分类器将任务划分为多个超平面作为决策平面,因为本发明使用的特征变量符合条件独立性假设,所以本系统采用朴素贝叶斯分类器对不同数据传输任务进行分类。任务分类特征值定义为P1(jf=level1|j1,...,jn),P2(jf=level2|j1,...,jn)和P3(jf=level1|j1,...,jn),其中,P1表示任务j对于特征变量jf={f1,f2,f3,f4}是level1优先级任务的概率,P2表示任务j是level2优先级任务的概率,P3表示任务j是level3优先级任务的概率。基于贝叶斯理论可得(3-9)。
Figure BDA0003398317630000122
根据贝叶斯条件独立假设,可得(3-10)。
Figure BDA0003398317630000123
其中,n1是优先级为level1的任务数量,P1(jf=level1)和P1(j|jf=level1)都是为level1先验概率,其值会随着每次任务分配更新,然后根据新的先验概率计算P1,依次类推则可以得到P2和P3
基于以上分析,本发明提出了基于朴素贝叶斯理论的任务分类方法用于对老年人体征数据监测系统中任务中采用的优先级调度策略进行分类,该方法通过任务执行时的四个特征属性来对任务进行分类,将不同设备树莓派的数据传输任务分为不同优先级的,网关按照高优先级到低优先级顺序对数据传输任务进行调度,任务优先级分类方法伪代码如表1所示。
表1:任务优先级分类方法伪代码
Figure BDA0003398317630000124
Figure BDA0003398317630000131
根据获得的任务分类优先级映射表H获得不同步任务的优先级level1,level2和level3。优先对高优先级任务进行处理并分配带宽。由公式(3-7)得到带宽分配比率为
Figure BDA0003398317630000132
由于带宽分配比率与数据传输速度正相关。为保证同优先级的不同任务的数据传输的完整性。提高系统资源的利用率。不同任务的传输时间应尽可能保证一致。所以在传输时间保证一致的情况下,传输速率正比于任务大小。故带宽分配比率
Figure BDA0003398317630000133
应正比于任务大小Lm
4).信道优化设计
考虑到系统所处网络环境中存在众多无线信号,信道冲突比较严重,所以设计信道优化功能。系统设定在每日四点五十分对通过当前网络内的信道使用情况进行遍历,选择信道使用最少的信道作为最优信道,并更改hostap.conf配置文件中的channel属性为最优信道,在五点时设定的定时重启时将信道更改为设定的最优信道。重新打开AP热点。
5).定时休眠设计
网关以及设备树莓派设定在每天21点开始休眠,在每天5点重新启动,设备休眠过程中设备端停止获取数据,但休眠时网关以及设备的数据传输以及数据上载功能模块不进行休眠,持续进行数据上传,将非休眠时期积压的数据上传到云端。
3.3.3web页面设计
为便于直观的监控系统运行状态与系统获得数据的情况,保证数据的完整性,本系统设计了前端管理页面,采用web网页的形式实现。
网页共分为六个子页面:设备概览、数据概况、数据下载、远程更新、日志、关机。
(1)设备概览
实时显示网关及设备树莓派基本信息,包括CPU使用率,硬盘使用率,硬盘已使用的容量与总容量,内存使用率,内存已使用的容量与总量,以动态图的形式展现。
(2)数据概况
以动态图表的形式对当前日期上传到云端上的数据进行可视化展示,横坐标为24小时制,纵坐标为上传到云端的数据大小。通过该图标可以直观的观察到云上的数据情况。以体现数据的完整性。
(3)数据下载
以可视化的形式显示所有Topic以及数据基本信息,包括数据名称、数据类型、帧率以及压缩类型。选中需要的Topic后,选择日期以及起始时间与结束时间,即可开始多线程下载,并在当前页面显示出数据下载列表,并产生进度条。下载完成后,数据保存到当前电脑。
(4)远程更新
提供jar包上传功能,可以通过该功能将jar包上传至云端该mac目录下的该日期文件夹下。设备树莓派以及网关树莓派会在每日五点定时拉取网关上的jar包并进行更新。
(5)日志
系统提供日志查看功能,可以实时的从云端获取设备以及网关树莓派上传到云端的日志并展示出来。
(6)关机
提供关闭网关的树莓派的功能。
3.3.4智能手表数据采集应用设计
智能手表数据采集应用主要功能时采集老人体征数据,在手表连接wifi时自动传输到网关。
3.3.4.1智能手表数据采集应用架构设计
智能手表数据采集应用包含六个模块:表盘界面、数据采集、设备监测、日志系统、上传文件、文件管理。如图7所示。
3.3.4.2智能手表数据采集应用详细设计
1).表盘界面
表盘界面是手表应用的主界面。显示有时钟、网络连接状态、充电状态、传感器实时数据,缓冲使用量等信息。
2).数据采集
数据采集模块负责调用智能手表的传感器,进行数据采集。包含心率、气压、加速度、陀螺仪这四种数据。该模块采用固定的频率采集数据,将数
据存入缓冲中,缓冲满后,写入到文件,清空缓冲。数据采集仅在老人佩戴上手表时进行,在摘下手表时数据采集将暂停。
3).设备监测
设备监测模块的功能是获取手表的当前状态,包括是否佩戴、当前的活动类型、是否连接到网络、是否正在充电以及手表的当前电量。当手表满足连接到无线网络与正在充电两个条件后,程序将开始上传文件流程。
4).日志系统
日志系统记录手表的基本信息,包括电量、动作类型与手表活动。
5).上传文件
上传文件模块负责上传采集到的数据到网关。该模块仅在同时满足连接到网络与充电两个条件时激活。激活后,程序首先开始搜索网关IP,通过遍历同网段下IP的8088端口,尝试寻找网关的IP地址,如果没有找到,则不断进行遍历寻找。找到网关IP地址后,程序从文件管理模块获取需要上传的数据文件列表和日志文件列表,使用socket连接网关树莓派进行数据传输,每个文件上传完成后都会被删除。
6.文件管理
文件管理模块负责管理本地的数据文件与日志文件,向其他模块提供其源路径。
4.下面结合调度与缓存系统实现对本发明技术方案作进一步描述。
4.1硬件实现
4.1.1老年人体征数据监测系统硬件设备
树莓派:树莓派4b 4GB内存版本:搭载Ubuntu 20.04TLS forraspberry 4系统。
深度镜头:Intel RealSense系列镜头。
雷达:3irobotix的Delta-1A型激光雷达。
智能手表:华为watch2,搭载WeaROS中国版操作系统。
4.1.2固件制作
网关与设备均采取树莓派4b为运行设备。需分别制作网关树莓派、镜头树莓派以及雷达树莓派固件
(1)安装ROS操作系统
安装完成后运行roscore命令查看ROS系统状态,测试安装正确。
2)安装雷达驱动
通过ROS系统的catkin工具安装Birobotix的Delta-1A型号雷达驱动
(3)安装深度镜头驱动
镜头型号为Intel的RealSense系列,需要安装RealSense SDK,由于raspberry不支持apt包管理安装,需要从源码编译。安装SDK后下载RealSense for ROS的驱动,使用Catkin编译后,测试命令$sudo ROSlaunch realsense2_camera rs_camera.launch。
(4)装载程序
将网关程序与设备程序装载至网关树莓派与设备树莓派当中,以Systelctl服务的形式注册网关与设备程序,以便于系统管理。
(5)配置AP热点
使用hostapd配置无线网卡AP模式,使用DHCP服务,对连接设备进行动态ip分配,再通过路由转发将分配的动态ip转发到有线网卡eth0上。运行iwconfig命令查看当前无线网卡工作情况,即无线热点工作情况。
4.2软件实现
4.2.1数据获取模块软件实现
1).数据缓存
在数据缓存中,设置了获取-写入缓存结构。“获取”缓存负责接收来自数据获取线程的数据,并在合适的时间将数据传递至“写入”缓存。在数据的数目达到预设的阈值后,“写入“缓存将数据以文件的形式写入到磁盘中。
为了保证数据在时间上的连续,该线程使用的数据结构为队列。采集到的新数据加入到“获取”缓存队列的尾部,“写入”缓存从“获取”缓存队列的头部取出数据,并按照顺序写入到文件中,以实现数据的有序性。具体的流程如图8所示。
2).数据传输
由于本系统使用Java语言开发,以及设备树莓派和网关树莓派通过无线的方式进行传输,所以采集的传输技术为socket通信。
在数据传输模块中设置了一个控制中心,用来管理多源数据的传输,包括来自数据采集模块的传感器数据、来自设备信息采集线程的设备状态信息以及系统运行过程中产生的日志信息。其他线程将数据文件加入到队列中,控制中心按照加入队列的顺序向网关树莓派传输文件。系统还应实时监控数据文件是否传输成功,当系统在发现数据未传输成功后,应该将该数据文件重新加入到传输队列的尾部,等待再次传输,具体的流程图如图9所示。
3).设备自连接
在设备自连接中,当设备树莓派启东市,自动打开设备自连接进程,判断设备是否连接到WiFi,如连接则进程结束,若未连接则开始进行自动连接,首先获取当前环境下所有的WiFi名,判断是否有WiFi名包含ICES字段,若有,则获取该WiFi信号的mac地址与ip地址,连接到该网络,若没有,则放弃连接。具体实现流程图如图10所示。
4.2.2调度传输模块软件实现
1).数据接收
数据接收在网关树莓派扫描到新设备后建立,每个设备均有一个数据接收线程,接收来自该设备的体征数据、设备状态信息和系统运行日志。每个设备的数据接收线程是独立的互不影响的,由调度中心控制数据接收线程,从而调度各个设备树莓派向网关树莓派传输数据.具体的流程图如图11所示。
2).数据上传
在数据接收模块提到系统为每个设备设置了一个单独的数据接收线程,每个数据接收线程都会产生到不同的文件,所以为了可以统一管理数据的上传,数据传中心为其他模块提供一个上传队列,面向各个设备的数据接收模块只需将待上传文件加入到上传队列即可,上传中心会按照加入队列的顺序向云服务器上传文件。系统还应实时监控数据文件是否上传成功,对于未上传成功的文件,应该重新加入到上传队列的尾部,等待再次上传。同样为了防止磁盘压力过大,也需要设置一个文件容量上限值,当待上传文件过多时,将上传队列中的头部数据文件从磁盘中删除。具体的流程与数据传输流程相似,如图12所示.
3).下属设备管理
网关树莓派需要控制下属设备,首先应该获取连接到热点的所有设备,周期性扫描设备,一旦发现新设备,则立即将其加入到设备控制中心,并获取设备的配置信息,包括设备名称、Topic信息等。在周期性扫描设备的同时,也可以获取到设备树莓派的网络信息,包括Mac地址、Ip地址、连接到热点的时间以及网络速度。具体流程图如图13所示。
4).任务调度
当有新的数据传输任务加入传输队列中时,首先判断传输队列是否为空,如果不为空,则获取数据传输任务的设备信息,根据设备信息以及网络状态进行优先级分类,根据数据传输任务的优先级对数据传输任务进行分类,根据优先级先后顺序进行数据传输。具体实现流程如图14所示。
5).定时休眠
通过springboot自带的Scheduled设定定时任务,来设置设备的定时休眠时间与订书机重启实现,实现设备的定时唤醒与休眠,如图15所示。
4.2.3软件展示模块软件实现
软件展示模块使用springboot框架采用JSP编写可视化页面,使用jQuery和echarts组件,主要接口如表2所示
表2API表
Figure BDA0003398317630000161
Figure BDA0003398317630000171
数据下载
数据下载开启后,首先初始化下载中心,判断下载队列是否为空,若下载队列为空,则下载结束,若下载队列不为空,则从下载队列队头选择文件进行下载,若下载成功,则从下载队列中删除该文件,继续下载。若下载失败,则错误计数加一,当错误计数大于三是,则下载失败,结束下载任务。具体流程图如图16所示。
4.2.4数据流向
老年人体征监测系统中从传感器获得的数据到上传至云端过程中,数据的流向如图17所示.
4.2.5性能优化与线程安全
老年人体征监测系统中采用了多线程结构,每个功能模块独立运行,为了提升程序运行的稳定性,保证数据传输过程中的稳定性,对某些高频访问的变量进行锁优化。程序采用了CAS对高频访问的变量进行优化。CAS即比较并交换compare and swap,CAS是CPU指令级别的操作,它具有原子性。CAS的操作在CPU中完成,而无需通过操作系统对锁的裁定,这大大降低了锁的开销。在Java中JDK提供了CAS的原生支持。对于链表,同样可用应用CAS。[11]虽然CAS是硬件级别的操作,但其仍具有一定的开销。在程序优化过程中,优化逻辑,尽可能减少对高频访问变量的写入操作,设置辅助标志,降低锁的使用。
5.下面结合调度与缓存系统测试实验对本发明作进一步描述。
5.1测试环境
测试设备:
老年人体征监测系统:4台树莓派4b,1台Intel RealSense镜头,2台3irobotixDelta-1A型激光雷达,1只华为Watch2.
客户端:macbook pro13,Chrome浏览器
环境搭建:
在4个树莓派中刷入固件,其中两个为雷达设备固件,一个为镜头固件,一个为网关固件。在刷入固件的树莓派中分别导入镜头配置与雷达配置与网关配置。开启网关树莓派后开启设备树莓派。
通过SSH运行命令$service gateway status查看网关服务运行状态,可以查看到两个雷达与一个镜头已经成功连接到网关并开始进行数据传输。
其中,scan1,scan2和camera1以及连接网关并开始传输数据。将系统部署在老人家中合适的位置,开始进行数据采集。
实验过程:将镜头安装到房间里合适的位置、将雷达安放至合适的位置、将网关树莓派通过网线连接至路由器、将华为手表交由老人佩戴。
5.2Web页面测试
5.2.1网页功能
访问http://localhost:8088/?mac=dca63257a9e6
查看mac地址为dca63257a9e6的网关管理界面
1.主页
网关管理界面主页实时的展示了网关以及设备状态信息,包括CPU使用率,硬盘使用量,内存使用率等信息。
2.数据概况页面
数据概况页面展示了当天老年人体征监测系统获取到的数据量,可以直观的观察数据的完整性。以曲线图的形式显示当天的数据情况,纵坐标为数据大小,单位为字节,横坐标为时间,根据改图可以直观的看出设备上传到云端的数据大小。体现数据完整性。
3.数据下载页面
该页面显示所有的Topic详细信息,提供选择卡,点击开始下载,还可以下载当前网关下所有文件。
4.远程更新页面
通过该页面可以实时的向云端上传设备树莓派和网关树莓派的jar包,设备和网关树莓派会在每天早上五点重启时自动下载最新jar包,进行程序更新。
5.日志界面
日志界面实时展示网关以及设备树莓派的日志,便于观察网关以及设备树莓派运行状况。
5.3数据传输功能测试
从云端异步获取mac地址为dca63257a9e6的网关的log日志,范围为6月11号10:30到13:30。
观察上传到云端的scan数据,可以完整的以固定时间间隔获取到数据并上传到云端。
5.4设备自连接测试
在测试环境中部署另外一个网关树莓派b,模拟实际环境中另外一套设备。测试用例表如表3所示。表3设备自连接测试用例表
表3设备自连接测试用例表
Figure BDA0003398317630000181
Figure BDA0003398317630000191
实际测试结果:当前网关树莓派的热点名称为ICES_1,可以在/etc/hostapd/hostapd.conf配置文件中可以查看并更改热点名称。打开网关树莓派b,再打开当前系统的网关树莓派,可以看到系统的运行日志显示热点名称已经改为ICES_2。
打开网关树莓派b,再打开当前系统的网关树莓派,可以看到系统的运行日志显示热点名称已经改为ICES_2。此时打开设备树莓派,可以看到其运行的日志,显示已经连接到ICES_2热点,网关树莓派扫描到此设备。
5.3故障恢复测试
在6月14日的实验过程中,摄像头无法连接到网关,无法向网关传输数据,网关也没有接受到该镜头的数据上传请求。
此时,该镜头获取到的数据会在该镜头本地进行存储,等待设备状态良好,连接上网关后再进行上传。设备在每日早5点设置定时重启,通过重启设备与网关进行重连,6月14日镜头数据在6月15日早5点网关重启后均传输到云端。
本发明完成了对老年人体征监测系统各个模块的测试,客户端能通过网关获取到设备的数据和对设备进行控制。通过网页能进行数据的管理;在系统发生故障后,程序自动缓存数据,在次日5点定时重启中能自动恢复,并上传数据。测试结果符合预期。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围应由所附的权利要求来限制。

Claims (10)

1.一种面向智慧养老的分布式数据调度监测方法,其特征在于,所述面向智慧养老的分布式数据调度监测方法包括:
步骤一,通过不同传感器获取老人的各项体征数据;
步骤二,对获取的各项体征数据,基于动态优先级的调度算法,对优先级进行分类,对不同的设备传输任务进行调度后上传到云端;
步骤三,上传到云端的数据通过前端Web界面,展示设备信息,数据完整性状态,设备日志,并从云端上下载数据、更新网关以及设备树莓派程序。
2.根据权利要求1所述的面向智慧养老的分布式数据调度监测方法,其特征在于,所述步骤一获取老人的各项体征数据包括:
(1)进行数据缓存:采用队列缓存结构,从队头删除,从队尾加入,新来的数据只需添加到新缓存的队尾;旧缓存每隔一段时间,从新缓存的队头获取新数据,新缓存则删除对应内容,旧缓存满后,将一定数量的数据从队头依次删除并写入到磁盘中;
(2)数据传输:设备树莓派通过ROSbridge获得的所有数据、设备信息与日志需要传输到网关;设定一个数据传输中心,管理所有数据传输任务;所述传输中心维护一个传输队列,该队列的每个元素为一个文件单元,包括文件的名称,文件的本地路径;其他模块只需向上载中心注册一个文件上传任务,后续就由上载中心完成该任务;上载中心接收到新任务后会将文件单元添加到上传队列队尾,并更新上传队列的总存储容量;设定一个阈值,当待上传容量超出该阈值后,删除队头的部分数据,使总容量降低到安全的水平,而新来的数据继续加到上传队列中;上载中心不断从上传队列的队首获取文件单元,尝试上传对应的文件,成功则从队列中删除该文件,并删除对应的本地文件;失败则将该元素从队头删除,并重新添加到队尾;上载中心在程序休眠的时候不停止工作;
(3)数据预处理:设备树莓派从传感器获得的数据需要在设备树莓派进行预处理,预处理过程包括数据选取,上传到云上的数据以原始频率固定条数一份,系统以不同于数据原始频率获取数据;按照时间顺序将符合要求的数据组装成一个文件;并将文件打包成json格式,并打上时间戳;
(4)设备状态信息获取:设备树莓派自身需要获取状态信息,然后将信息通过网关树莓派传递至云端上;
(5)设备自连接:设备树莓派连接其他系统的网关树莓派的热点,将数据传输到其他系统中,若有重复的热点名称,则及时更换自身热点名称,而设备树莓派根据网络信号强度选择本系统的网关树莓派进行自动连接;
(6)数据监控:若在某一时间段内ROS服务处于异常状态,设备树莓派则无法获取到数据,造成数据不完整;一旦发现某一段时间内无原始数据,则重启ROS服务或者重启设备。
3.根据权利要求1所述的面向智慧养老的分布式数据调度监测方法,其特征在于,所述步骤二基于动态优先级的调度算法包括:
设定信号传输信道的贷款固定,并且每个设备树莓派有着固定的硬件性能;每个文件具有固定长度Lm比特;请求文件i的可能性为pi,分别满足如下条件:
Figure FDA0003398317620000021
Figure FDA0003398317620000022
其中,γ表示流行度偏差,流行度偏差通常是针对物品的公平性问题,体现为不流行的物品有更少的机会被推荐,流行的物品容易被推荐;流行度指的是文件被请求的机会,流行度偏差越大,请求的可能性越集中在流行度高的文件;流行度偏差越小,请求的公平性越高;由香农公式得到对应的传输速率:
Rm=wm log2(1+SINR)
其中,wm表示网关热点分配给设备树莓派m的带宽,根据香农公式可以得到在设备向网关进行数据传输时的信噪比SINR为:
Figure FDA0003398317620000031
其中,N0为噪声功率谱密度常数,B为系统带宽;Pm为设备树莓派m的平均传输功率,所有的设备树莓派均使用树莓派4b 4GB,所有的设备树莓派具有相同传输功率,x为对传输功率产生干扰的定制,数据传输时的信噪比SINR为随机变量;
Figure FDA0003398317620000032
表示网关分配给设备树莓派m的带宽所占总带宽的比例;由此公式Rm=wmlog2(1+SINR)转换为下公式:
Figure FDA0003398317620000033
且带宽分配比例
Figure FDA0003398317620000034
满足
Figure FDA0003398317620000035
公式;
则带宽分配公式为:
Figure FDA0003398317620000036
则带宽分配比例与数据传输速率成相关。
4.根据权利要求3所述的面向智慧养老的分布式数据调度监测方法,其特征在于,当某一设备健康状态较差时,则需要更宽的数据传输速率,则需更高的带宽分配比例;则最优的带宽分配比例则需根据设备的状态进行决定;
当实时任务到达时,指派一个优先级并调入任务队列,在任务队列中,任务按照优先级顺序依次排列,优先级最高的任务排在第一位,优先级最低的任务排在末位。
5.根据权利要求3所述的面向智慧养老的分布式数据调度监测方法,其特征在于,所述步骤二基于动态优先级的调度算法包括四种优先级L={level1,level2,level3,level4};
其中,level1是设备树莓派状态良好不会发生数据溢出的任务,level2是设备树莓派状态交叉但不会发生数据溢出的任务,level3是设备树莓派状态差,会发生数据溢出的任务;level4是手表数据上传任务;
数据传输任务总数为n,每个任务j都是一个待分类项jf={f1,f2,f3,f4},其中fj为任务j的特征属性,特征属性用于描述设备树莓派的资源使用情况,特征属性变量的值通过分析设备树莓派上传的日志信息来获得;
通过四个特征属性来对任务进行分类:设备树莓派的CPU利用率,设备树莓派的内存的总容量以及已使用量,内存使用率,设备树莓派的硬盘总容量以及硬盘使用率,设备树莓派的硬盘使用率,网关树莓派的AP网络情况;
用CP表示CPU利用率,MU表示内存使用率,NU表示硬盘使用率NU表示网络使用率;因此任务的特征属性由公式
Figure FDA0003398317620000041
表示;
其中,B,M,N分别为系统总带宽,总内存大小和总硬盘容量,根据设备树莓派日志信息可以得知,CPUj表示任务j的CPU运行时间,jexecute表示任务j的整体执行时间;
使用线性分类器将任务划分为多个超平面作为决策平面,使用的特征变量符合条件独立性假设,采用朴素贝叶斯分类器对不同数据传输任务进行分类;任务分类特征值定义为P1(jf=level1|j1,...,jn),P2(jf=level2|j1,...,jn),和P3(jf=level1|j1,...,jn),其中,P1表示任务j对于特征变量jf={f1,f2,f3,f4}是level1优先级任务的概率,P2表示任务j是level2优先级任务的概率,P3表示任务j是level3优先级任务的概率;基于贝叶斯理论得
Figure FDA0003398317620000051
根据贝叶斯条件独立假设,得:
Figure FDA0003398317620000052
其中,n1是优先级为level1的任务数量,P1(jf=level1)和P1(j|jf=level1)都为level1的先验概率,其值随着每次任务分配更新,然后根据新的先验概率计算P1,依次类推则得到P2和P3
根据获得的任务分类优先级映射获得不同步任务的优先级level1,level2和level3;优先对高优先级任务进行处理并分配带宽;得到的带宽分配比率为
Figure FDA0003398317620000053
正比于任务大小Lm
6.一种实施权利要求1~5任意一项所述面向智慧养老的分布式数据调度监测方法的面向智慧养老的分布式数据调度监测系统,其特征在于,所述面向智慧养老的分布式数据调度监测系统包括:
数据获取模块,用于系统通过传感器获取老年人体征数据;
调度传输模块,用于对数据从获取到上传到云端的过程中进行调度传输;
软件展示模块,为前端Web界面,用以展示设备信息,数据完整性状态,设备日志,从云上下载数据,以及更新网关以及设备树莓派程序。
7.一种实施权利要求1~5任意一项所述面向智慧养老的分布式数据调度监测方法的面向智慧养老的分布式数据调度监测装置,其特征在于,所述面向智慧养老的分布式数据调度监测装置包括:
激光雷达、镜头、手表,设备树莓派,网关树莓派以及云存储器;
激光雷达以及镜头通过有线方式连接各自的设备树莓派,手表不连接设备树莓派;
设备树莓派以及手表通过无线的方式与网关树莓派连接;网关树莓派通过有线方式连接到英特网,从而与云存储器相连。
8.一种信息数据处理终端,其特征在于,所述信息数据处理终端包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1~5任意一项所述面向智慧养老的分布式数据调度监测方法。
9.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行权利要求1~5任意一项所述面向智慧养老的分布式数据调度监测方法。
10.一种如权利要求1~5任意一项所述面向智慧养老的分布式数据调度监测方法在部署到老人家中进行实际生产生活监测上的应用。
CN202111488633.8A 2021-12-08 2021-12-08 面向智慧养老的分布式数据调度监测系统、方法、终端 Pending CN114415603A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111488633.8A CN114415603A (zh) 2021-12-08 2021-12-08 面向智慧养老的分布式数据调度监测系统、方法、终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111488633.8A CN114415603A (zh) 2021-12-08 2021-12-08 面向智慧养老的分布式数据调度监测系统、方法、终端

Publications (1)

Publication Number Publication Date
CN114415603A true CN114415603A (zh) 2022-04-29

Family

ID=81266179

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111488633.8A Pending CN114415603A (zh) 2021-12-08 2021-12-08 面向智慧养老的分布式数据调度监测系统、方法、终端

Country Status (1)

Country Link
CN (1) CN114415603A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116208674A (zh) * 2023-05-04 2023-06-02 荣耀终端有限公司 上传采样数据的方法及电子设备
CN116914941A (zh) * 2023-09-13 2023-10-20 济南舜信达电力科技有限公司 一种基于物联网的配电控制系统
CN117009309A (zh) * 2023-05-31 2023-11-07 合芯科技(苏州)有限公司 一种基于rsync的文件实时同步方法及装置

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020082718A1 (en) * 2000-12-27 2002-06-27 Armin Amrhein Method of operating an industrial controller
US20040249779A1 (en) * 2001-09-27 2004-12-09 Nauck Detlef D Method and apparatus for data analysis
US20050078690A1 (en) * 2003-10-14 2005-04-14 Delangis Eric M. Residential communications gateway (RCG) for broadband communications over a plurality of standard POTS lines, with dynamic allocation of said bandwidth, that requires no additional equipment or modifications to the associated class 5 offices or the PSTN at large
CN1642305A (zh) * 2005-01-06 2005-07-20 东南大学 基于优先级的公平调度方法
CN103259719A (zh) * 2013-05-27 2013-08-21 重庆邮电大学 一种贝叶斯分类的业务感知路由保护方法
CN104317658A (zh) * 2014-10-17 2015-01-28 华中科技大学 一种基于MapReduce的负载自适应任务调度方法
CN108415262A (zh) * 2018-03-06 2018-08-17 西北工业大学 智能网关对家电设备的控制方法
CN110246594A (zh) * 2018-03-08 2019-09-17 上海仪电(集团)有限公司中央研究院 基于多功能网关的智慧医疗养老系统
WO2020176759A1 (en) * 2019-02-27 2020-09-03 Clifford Gari System and methods for tracking behavior and detecting abnormalities
CN112637318A (zh) * 2020-12-17 2021-04-09 哈尔滨工业大学(威海) 一种面向存储完整性的智能网关系统、装置及其控制方法
CN113433893A (zh) * 2021-07-12 2021-09-24 东北大学 一种基于回溯贝叶斯的机器人伺服系统性能指标标定方法

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020082718A1 (en) * 2000-12-27 2002-06-27 Armin Amrhein Method of operating an industrial controller
US20040249779A1 (en) * 2001-09-27 2004-12-09 Nauck Detlef D Method and apparatus for data analysis
US20050078690A1 (en) * 2003-10-14 2005-04-14 Delangis Eric M. Residential communications gateway (RCG) for broadband communications over a plurality of standard POTS lines, with dynamic allocation of said bandwidth, that requires no additional equipment or modifications to the associated class 5 offices or the PSTN at large
CN1642305A (zh) * 2005-01-06 2005-07-20 东南大学 基于优先级的公平调度方法
CN103259719A (zh) * 2013-05-27 2013-08-21 重庆邮电大学 一种贝叶斯分类的业务感知路由保护方法
CN104317658A (zh) * 2014-10-17 2015-01-28 华中科技大学 一种基于MapReduce的负载自适应任务调度方法
CN108415262A (zh) * 2018-03-06 2018-08-17 西北工业大学 智能网关对家电设备的控制方法
CN110246594A (zh) * 2018-03-08 2019-09-17 上海仪电(集团)有限公司中央研究院 基于多功能网关的智慧医疗养老系统
WO2020176759A1 (en) * 2019-02-27 2020-09-03 Clifford Gari System and methods for tracking behavior and detecting abnormalities
CN112637318A (zh) * 2020-12-17 2021-04-09 哈尔滨工业大学(威海) 一种面向存储完整性的智能网关系统、装置及其控制方法
CN113433893A (zh) * 2021-07-12 2021-09-24 东北大学 一种基于回溯贝叶斯的机器人伺服系统性能指标标定方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
段昌敏;沈济南;周慧华;: "一种高效云任务调度博弈算法", 微电子学与计算机, no. 03, 5 March 2017 (2017-03-05) *
饶健;: "云计算平台网络应急信息优先调度仿真研究", 计算机仿真, no. 06, 15 June 2018 (2018-06-15) *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116208674A (zh) * 2023-05-04 2023-06-02 荣耀终端有限公司 上传采样数据的方法及电子设备
CN116208674B (zh) * 2023-05-04 2023-09-22 荣耀终端有限公司 上传采样数据的方法及电子设备
CN117009309A (zh) * 2023-05-31 2023-11-07 合芯科技(苏州)有限公司 一种基于rsync的文件实时同步方法及装置
CN117009309B (zh) * 2023-05-31 2024-05-07 合芯科技(苏州)有限公司 一种基于rsync的文件实时同步方法及装置
CN116914941A (zh) * 2023-09-13 2023-10-20 济南舜信达电力科技有限公司 一种基于物联网的配电控制系统
CN116914941B (zh) * 2023-09-13 2023-12-05 济南舜信达电力科技有限公司 一种基于物联网的配电控制系统

Similar Documents

Publication Publication Date Title
CN114415603A (zh) 面向智慧养老的分布式数据调度监测系统、方法、终端
CN112637318B (zh) 一种面向存储完整性的智能网关系统、装置及其控制方法
US11108575B2 (en) Training models for IOT devices
Viswanathan et al. Research challenges in computation, communication, and context awareness for ubiquitous healthcare
US9946571B1 (en) Predictive power management in a wireless sensor network using activity costs
EP2561444B1 (en) Automated recovery and escalation in complex distributed applications
CN110247954A (zh) 一种分布式任务的调度方法及系统
EP2919438B1 (en) Method and system to estimate user desired delay for resource allocation for mobile-cloud applications
Jayaraman et al. Cardap: A scalable energy-efficient context aware distributed mobile data analytics platform for the fog
US11902396B2 (en) Model tiering for IoT device clusters
US11412574B2 (en) Split predictions for IoT devices
Goleva et al. AAL and ELE platform architecture
KR20170107189A (ko) 모바일 헬스케어 시스템 및 이를 이용한 컴포넌트 기반 모바일 헬스 대시보드 제작 시스템
US11658878B2 (en) Systems and methods for automated network state and network inventory tracking
Balakrishnan et al. A Personalized Eccentric Cyber‐Physical System Architecture for Smart Healthcare
Marin et al. Reaching for the clouds: contextually enhancing smartphones for energy efficiency
Qin et al. Quality-aware sensor data management
CN110245120A (zh) 流式计算系统及流式计算系统的日志数据处理方法
CN115190487A (zh) 可变二维码管理方法及系统、电子设备
CN106231694A (zh) 一种嵌入式无线传感网络网关
Salehi Design and implementation of an efficient data stream processing system
Guo et al. A context-aware scheduling mechanism for smartphone-based personal data collection from multiple wearable devices
West et al. FLIC: a distributed fog cache for city-scale applications
Franke et al. Enabling virtual, cloud-based sensors in assisted living environments
US20240080835A1 (en) Communication system, communication control program, and communication control method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination