专利摘要
本发明提供了一种基于物联网的智能医疗监测和报警系统的实现方法,所述物联网包含服务器、动态节点和静态节点;动态节点包括监测节点和用户节点;服务器,动态节点和静态节点的通信半径均为R;所述物联网覆盖的面积为正方形,划分为一组面积相同的网格,每个网格均为正方形且边长相同,边长等于通信半径R;每个网格包含一个静态节点,位于该网格的中心点,即两条对角线的交叉点,每个静态节点的坐标具有唯一性;静态节点执行转发功能,服务器或者动态节点与所在网格的静态节点链路相连并通过该静态节点实现通信。本发明通过从距离最近的节点获取数据从而降低物联网提供患者数据的延迟和代价,进而有效提高智能医疗的性能,具有广泛的应用前景。
权利要求
1.一种基于物联网的智能医疗监测和报警系统的实现方法,其特征在于,所述物联网包含服务器、动态节点和静态节点;动态节点包括监测节点和用户节点;服务器,动态节点和静态节点的通信半径均为R;
所述物联网覆盖的面积为正方形,划分为一组面积相同的网格,每个网格均为正方形且边长相同,边长等于通信半径R;
每个网格包含一个静态节点,位于该网格的中心点,即两条对角线的交叉点,每个静态节点的坐标具有唯一性;静态节点执行转发功能,服务器或者动态节点与所在网格的静态节点链路相连并通过该静态节点实现通信;
一个患者配置一个监测节点,该监测节点由患者ID唯一标识,患者ID具有唯一性;
一个消息由消息ID唯一标识;每个静态节点保存一个服务表,只包含一个服务表项,包含坐标和生命周期域;发布消息包含消息ID和坐标;
在服务器S1与静态节点SN1链接,静态节点SN1的坐标为CD1的条件下,服务器S1定期执行下述发布操作:
步骤101:开始;
步骤102:服务器S1发送一个发布消息,该发布消息的消息ID为1,坐标为空;
步骤103:静态节点SN1接收到该发布消息后,将该发布消息的坐标设置为自己的坐标CD1,清空服务表,创建一个服务表项,该服务表项的生命周期为最大值,坐标为自己的坐标CD1,转发该发布消息;
步骤104:如果动态节点或者服务器接收到该发布消息,则执行步骤107,否则执行步骤105;
步骤105:接收到该发布消息的静态节点查看服务表,如果服务表项的生命周期大于预先设置的阈值TH0,则执行步骤107,否则执行步骤106;
步骤106:接收到该发布消息的静态节点清空服务表,创建一个服务表项,该服务表项的生命周期设置为最大值,坐标等于该发布消息中的坐标,转发该发布消息,执行步骤104;
步骤107:结束;
每个静态节点保存一个邻居表,一个邻居表项包含坐标和生命周期;邻居消息包含消息ID和坐标;
静态节点SN0的坐标为CO0,定期执行下述操作:
步骤201:开始;
步骤202:静态节点SN0发送一个邻居消息,该邻居消息的消息ID为2,坐标等于自己的坐标;
步骤203:如果动态节点或者服务器接收到该邻居消息,则执行步骤207,否则执行步骤204;
步骤204:接收到该邻居消息的静态节点查看邻居表,如果存在一个邻居表项,该邻居表项的坐标等于该邻居消息中的坐标,则执行步骤205,否则执行步骤206;
步骤205:接收到该邻居消息的静态节点选择一个邻居表项,该邻居表项的坐标等于该邻居消息中的坐标,将该邻居表项的生命周期设置为最大值,执行步骤207;
步骤206:接收到该邻居消息的静态节点创建一个邻居表项,该邻居表项的坐标等于该邻居消息中的坐标,将该邻居表项的生命周期设置为最大值;
步骤207:结束。
2.根据权利要求1所述的一种基于物联网的智能医疗监测和报警系统的实现方法,其特征在于,
服务器保存一个患者表,一个患者表项包含患者ID、数据、时间戳和坐标;
上传消息包含消息ID、患者ID、数据、时间戳、患者坐标和目的坐标。
3.根据权利要求2所述的一种基于物联网的智能医疗监测和报警系统的实现方法,其特征在于,
在监测节点PN2由患者ID PID2唯一标识,监测节点PN2与静态节点SN2链接,监测节点PN2定期收集患者数据MD2并执行下述操作:
步骤301:开始;
步骤302:监测节点PN2发送一个上传消息,该上传消息的消息ID为3,患者ID等于PID2,数据等于MD2,时间戳为当前时间,患者坐标和目的坐标均为空;
步骤303:接收到上传消息的静态节点SN2将该上传消息的患者坐标设置为自己的坐标,判断自己的坐标是否等于自己服务表项中的坐标,如果等于,则执行步骤309,否则执行步骤304;
步骤304:接收到上传消息的静态节点SN2选择一个邻居表项,该邻居表项的坐标与服务表项中坐标之间的距离最近,将该上传消息的目的坐标设置为该邻居表项的坐标,发送该上传消息;
步骤305:如果动态节点或者服务器接收到该上传消息,则执行步骤310,否则执行步骤306;
步骤306:接收到该上传消息的静态节点判断自己的坐标是否等于该上传消息的目的坐标,如果等于,则执行步骤307,否则执行步骤310;
步骤307:接收到该上传消息的静态节点判断自己的坐标是否等于自己服务表项中的坐标,如果等于,则执行步骤309,否则执行步骤308;
步骤308:接收到上传消息的静态节点选择一个邻居表项,该邻居表项的坐标与服务表项中坐标之间的距离最近,将该上传消息的目的坐标设置为该邻居表项的坐标,发送该上传消息,执行步骤305;
步骤309:接收到上传消息的静态节点转发该上传消息,服务器接收到该上传消息后创建一个患者表项,该患者表项的患者ID、数据、时间戳分别等于该上传消息中的患者ID、数据、时间戳,坐标等于该上传消息中的患者坐标;
步骤310:结束。
4.根据权利要求1所述的一种基于物联网的智能医疗监测和报警系统的实现方法,其特征在于,
所述物联网服务器S1与静态节点SN1链接;
所述物联网中请求消息包含消息ID、患者ID和坐标集合。
5.根据权利要求4所述的一种基于物联网的智能医疗监测和报警系统的实现方法,其特征在于,所述物联网中响应消息包含消息ID、坐标集合和患者表。
6.根据权利要求5所述的一种基于物联网的智能医疗监测和报警系统的实现方法,其特征在于,所述物联网中警告消息包含消息ID、患者ID和目的坐标。
7.根据权利要求6所述的一种基于物联网的智能医疗监测和报警系统的实现方法,其特征在于,所述物联网中患者警告消息包含消息ID、患者ID、目的坐标和最终坐标。
8.根据权利要求7所述的一种基于物联网的智能医疗监测和报警系统的实现方法,其特征在于,用户节点U3与静态节点SN3链接,监测节点PN2由患者ID标识为PID2,用户节点U3通过下述过程获取监测节点PN2收集的数据:
步骤401:开始;
步骤402:用户节点U3发送一个请求消息,该请求消息的消息ID为4,患者ID为PID2,坐标集合为空;
步骤403:静态节点SN3接收到该请求消息后将自己的坐标加入到该请求消息的坐标集合中并作为最后一个元素,如果静态节点SN3的坐标等于自己服务表项中的坐标,则执行步骤409,否则执行步骤404;
步骤404:接收到该请求消息的静态节点SN3选择一个邻居表项,该邻居表项的坐标与自己服务表项中的坐标之间的距离最近,将该邻居表项的坐标加入到该请求消息中坐标集合中并作为最后一个元素,转发该请求消息;
步骤405:如果服务器接收到该请求消息,则执行步骤410,否则执行步骤406;
步骤406:如果监测节点或者用户节点接收到该请求消息,则执行步骤435,否则执行步骤407;
步骤407:接收到请求消息的静态节点查看自己的坐标是否等于自己服务表项中的坐标,如果等于,则执行步骤409,否则执行步骤408;
步骤408:接收到该请求消息的静态节点选择一个邻居表项,该邻居表项的坐标与自己服务表项中的坐标之间的距离最近,将该邻居表项的坐标加入到该请求消息的坐标集合中并作为最后一个元素;
步骤409:接收到该请求消息的静态节点转发该请求消息,执行步骤405;
步骤410:接收到该请求消息的服务器选择所有患者ID等于该请求消息中患者ID的患者表项,发送一个响应消息,该响应消息的消息ID为5,坐标集合等于该请求消息中的坐标集合,患者表由选中的患者表项构成;
步骤411:如果用户节点U3接收到该响应消息,则执行步骤415,否则执行步骤412;
步骤412:如果除了用户节点U3以外的其他用户节点或者监测节点接收到该响应消息,则执行步骤435,否则执行步骤413;
步骤413:接收到响应消息的静态节点判断自己的坐标是否等于该响应消息坐标集合中的最后一个元素,如果等于,则执行步骤414,否则执行步骤435;
步骤414:接收到响应消息的静态节点从该响应消息坐标集合中删除最后一个元素,转发该响应消息,执行步骤411;
步骤415:接收到响应消息的用户节点U3查看响应消息中的患者表,如果检测到至少一个患者表项的数据超过阈值,则执行步骤416,否则执行步骤435;
步骤416:接收到响应消息的用户节点U3发送一个警告消息,该警告消息的消息ID为6,患者ID等于响应消息中任一患者表项的患者ID,目的坐标为空;
步骤417:接收到警告消息的静态节点SN3判断自己的坐标是否等于自己服务表项中的坐标,如果等于,则执行步骤424,否则执行步骤418;
步骤418:接收到该警告消息的静态节点SN3选择一个邻居表项,该邻居表项的坐标与自己服务表项中的坐标之间的距离最近,将该警告消息的目的坐标设置为该邻居表项的坐标,转发该警告消息;
步骤419:如果服务器接收到该警告消息,则执行步骤425,否则执行步骤420;
步骤420:如果监测节点或者用户节点接收到该警告消息,则执行步骤435,否则执行步骤421;
步骤421:接收到警告消息的静态节点查看自己的坐标是否等于该警告消息中的目的坐标,如果等于,则执行步骤422,否则执行步骤435;
步骤422:接收到警告消息的静态节点查看自己的坐标是否等于自己服务表项中的坐标,如果等于,则执行步骤424,否则执行步骤423;
步骤423:接收到该警告消息的静态节点选择一个邻居表项,该邻居表项的坐标与自己服务表项中的坐标之间的距离最近,将该警告消息的目的坐标设置为该邻居表项的坐标,转发该警告消息,执行步骤419;
步骤424:接收到该警告消息的静态节点转发该警告消息,执行步骤419;
步骤425:接收到该警告消息的服务器选择所有患者ID等于该警告消息中患者ID的患者表项,从这些患者表项中再选择一个患者表项,该患者表项的时间戳距离当前时间最近,接收到该警告消息的服务器发送一个患者警告消息,该患者警告消息的消息ID为7,患者ID等于该警告消息中的患者ID,目的坐标为空,最终坐标等于选中的患者表项中的坐标;
步骤426:接收到该患者警告消息的静态节点SN3判断自己的坐标是否等于该患者警告消息中的最终坐标,如果等于,则执行步骤433,否则执行步骤427;
步骤427:接收到该患者警告消息的静态节点SN3选择一个邻居表项,该邻居表项的坐标与该患者警告消息中的最终坐标之间的距离最近,将该患者警告消息的目的坐标设置为该邻居表项的坐标,转发该患者警告消息;
步骤428:如果监测节点接收到该患者警告消息且自己的患者ID等于该患者警告消息中的患者ID,则执行步骤434,否则执行步骤429;
步骤429:如果除了患者ID等于该患者警告消息中的患者ID的监测节点或者用户节点接收到该患者警告消息,则执行步骤435,否则执行步骤430;
步骤430:接收到患者警告消息的静态节点判断自己的坐标是否等于该患者警告消息中的目的坐标,如果等于,则执行步骤431,否则执行步骤435;
步骤431:接收到该患者警告消息的静态节点判断自己的坐标是否等于该患者警告消息中的最终坐标,如果等于,则执行步骤433,否则执行步骤432;
步骤432:接收到该患者警告消息的静态节点选择一个邻居表项,该邻居表项的坐标与该患者警告消息中的最终坐标之间的距离最近,将患者警告消息中的目的坐标设置为该邻居表项的坐标,转发该患者警告消息,执行步骤428;
步骤433:接收到该患者警告消息的静态节点转发该患者警告消息,执行步骤428;
步骤434:接收到该患者警告消息的监测节点保存该患者警告消息;
步骤435:结束。
说明书
技术领域
本发明涉及一种实现方法,尤其涉及的是一种基于物联网的智能医疗监测和报警系统的实现方法。
背景技术
近年来,很多研究工作致力于物联网,以便使用户能够快速获取数据以便监测。随着网络技术的发展,物联网已经应用于智能医疗监护领域。
目前,物联网的实现模式通过点到点模式实现通信,因此延迟和代价都比较大,降低了网络服务性能。因此,如何降低物联网提供数据的延迟和代价成为近年来研究的热点问题。
发明内容
发明目的:本发明所要解决的技术问题是针对现有技术的不足,提供了一种基于物联网的智能医疗监测和报警系统的实现方法。本发明通过从距离最近的节点获取数据从而降低物联网提供患者数据的延迟和代价,进而有效提高智能医疗监测和报警的性能。
发明内容
发明目的:本发明所要解决的技术问题是针对现有技术的不足,提供一种基于物联网的智能医疗监测和报警系统的实现方法。
技术方案:本发明公开了一种基于物联网的智能医疗监测和报警系统的实现方法,所述物联网包含服务器、动态节点和静态节点;动态节点包括监测节点和用户节点;服务器,动态节点和静态节点的通信半径均为R,本发明一般取值范围为10m-100m;
所述物联网覆盖的面积为正方形,划分为一组面积相同的网格,每个网格均为正方形且边长相同,边长等于通信半径R;
每个网格包含一个静态节点,位于该网格的中心点,即两条对角线的交叉点,每个静态节点的坐标具有唯一性;静态节点执行转发功能,服务器或者动态节点与所在网格的静态节点链路相连并通过该静态节点实现通信;
一个患者配置一个监测节点,该监测节点由患者ID唯一标识,患者ID具有唯一性,例如患者ID可以是该患者的身份证或者手机号;
一个消息由消息ID唯一标识;每个静态节点保存一个服务表,只包含一个服务表项,包含坐标和生命周期域;发布消息包含消息ID和坐标;
在服务器S1与静态节点SN1链接,静态节点SN1的坐标为CD1的条件下,服务器S1定期执行下述发布操作:
步骤101:开始;
步骤102:服务器S1发送一个发布消息,该发布消息的消息ID为1,坐标为空;
步骤103:静态节点SN1接收到该发布消息后,将该发布消息的坐标设置为自己的坐标CD1,清空服务表,创建一个服务表项,该服务表项的生命周期为最大值,生命周期的最大值为500ms-1s,坐标为自己的坐标CD1,转发该发布消息;
步骤104:如果移动节点或者服务器接收到该发布消息,则执行步骤107,否则执行步骤105;
步骤105:接收到该发布消息的静态节点查看服务表,如果服务表项的生命周期大于预先设置的阈值TH0,TH0设置范围为最大生命周期的90%-99%,则执行步骤107,否则执行步骤106;
步骤106:接收到该发布消息的静态节点清空服务表,创建一个服务表项,该服务表项的生命周期设置为最大值,坐标等于该发布消息中的坐标,转发该发布消息,执行步骤104;
步骤107:结束。
服务器通过上述过程使每个静态节点建立服务表,静态节点通过服务表项中的坐标建立到达服务器的最优路径从而降低通信延迟和代价,上述过程中,服务表项通过生命周期来确保服务表项的正确性和实时性,从而能够保证数据通信的有效性。
本发明所述方法中,每个静态节点保存一个邻居表,一个邻居表项包含坐标和生命周期;邻居消息包含消息ID和坐标。
本发明所述方法中,静态节点SN0的坐标为CO0,定期执行下述操作:
步骤201:开始;
步骤202:静态节点SN0发送一个邻居消息,该邻居消息的消息ID为2,坐标等于自己的坐标;
步骤203:如果移动节点或者服务器接收到该邻居消息,则执行步骤207,否则执行步骤204;
步骤204:接收到该邻居消息的静态节点查看邻居表,如果存在一个邻居表项,该邻居表项的坐标等于该邻居消息中的坐标,则执行步骤205,否则执行步骤206;
步骤205:接收到该邻居消息的静态节点选择一个邻居表项,该邻居表项的坐标等于该邻居消息中的坐标,将该邻居表项的生命周期设置为最大值,执行步骤207;
步骤206:接收到该邻居消息的静态节点创建一个邻居表项,该邻居表项的坐标等于该邻居消息中的坐标,将该邻居表项的生命周期设置为最大值;
步骤207:结束。
静态节点通过上述过程建立邻居表从而获取每个邻居静态节点的坐标,从而建立到达目标静态节点的最短路径。由于邻居表通过生命周期确保邻居表项的有效性和实时性,因此避免了由于静态节点失效而引起的数据通信失败,确保了最短路径的有效性和实时性。
本发明所述方法中,服务器保存一个患者表,一个患者表项包含患者ID、数据、时间戳和坐标;
上传消息包含消息ID、患者ID、数据、时间戳、患者坐标和目的坐标.
本发明所述方法中,在监测节点PN2由患者ID PID2唯一标识,监测节点PN2与静态节点SN2链接,监测节点PN2定期收集患者数据MD2并执行下述操作:
步骤301:开始;
步骤302:监测节点PN2发送一个上传消息,该上传消息的消息ID为3,患者ID等于PID2,数据等于MD2,时间戳为当前时间,患者坐标和目的坐标均为空;
步骤303:接收到上传消息的静态节点SN2将该上传消息的患者坐标设置为自己的坐标,判断自己的坐标是否等于自己服务表项中的坐标,如果等于,则执行步骤309,否则执行步骤304;
步骤304:接收到上传消息的静态节点SN2选择一个邻居表项,该邻居表项的坐标与服务表项中坐标之间的距离最近,将该上传消息的目的坐标设置为该邻居表项的坐标,发送该上传消息;
步骤305:如果移动节点或者服务器接收到该上传消息,则执行步骤310,否则执行步骤306;
步骤306:接收到该上传消息的静态节点判断自己的坐标是否等于该上传消息的目的坐标,如果等于,则执行步骤307,否则执行步骤310;
步骤307:接收到该上传消息的静态节点判断自己的坐标是否等于自己服务表项中的坐标,如果等于,则执行步骤309,否则执行步骤308;
步骤308:接收到上传消息的静态节点选择一个邻居表项,该邻居表项的坐标与服务表项中坐标之间的距离最近,将该上传消息的目的坐标设置为该邻居表项的坐标,发送该上传消息,执行步骤305;
步骤309:接收到上传消息的静态节点转发该上传消息,服务器接收到该上传消息后创建一个患者表项,该患者表项的患者ID、数据、时间戳分别等于该上传消息中的患者ID、数据、时间戳,坐标等于该上传消息中的患者坐标;
步骤310:结束。
监测节点通过上述过程向服务器上传监测到的患者数据,用于监测患者在不同时间所在的地理位置和生理参数,由于上述过程通过邻居表能够建立到达服务器的最短路径,从而有效降低了上传数据的延迟和代价,同时用户节点能够从服务器获取实时患者数据用于监测进而实现及时救护。
本发明所述方法中,服务器S1与静态节点SN1链接;
请求消息包含消息ID、患者ID和坐标集合;
响应消息包含消息ID、坐标集合和患者表;
警告消息包含消息ID、患者ID和目的坐标;
患者警告消息包含消息ID、患者ID、目的坐标和最终坐标。
本发明所述方法中,用户节点U3与静态节点SN3链接,监测节点PN2由患者ID标识为PID2,用户节点U3通过下述过程获取监测节点PN2收集的数据:
步骤401:开始;
步骤402:用户节点U3发送一个请求消息,该请求消息的消息ID为4,患者ID为PID2,坐标集合为空;
步骤403:静态节点SN3接收到该请求消息后将自己的坐标加入到该请求消息的坐标集合中并作为最后一个元素,如果静态节点SN3的坐标等于自己服务表项中的坐标,则执行步骤409,否则执行步骤404;
步骤404:接收到该请求消息的静态节点SN3选择一个邻居表项,该邻居表项的坐标与自己服务表项中的坐标之间的距离最近,将该邻居表项的坐标加入到该请求消息中坐标集合中并作为最后一个元素,转发该请求消息;
步骤405:如果服务器接收到该请求消息,则执行步骤410,否则执行步骤406;
步骤406:如果监测节点或者用户节点接收到该请求消息,则执行步骤435,否则执行步骤407;
步骤407:接收到请求消息的静态节点查看自己的坐标是否等于自己服务表项中的坐标,如果等于,则执行步骤409,否则执行步骤408;
步骤408:接收到该请求消息的静态节点选择一个邻居表项,该邻居表项的坐标与自己服务表项中的坐标之间的距离最近,将该邻居表项的坐标加入到该请求消息的坐标集合中并作为最后一个元素;
步骤409:接收到该请求消息的静态节点转发该请求消息,执行步骤405;
步骤410:接收到该请求消息的服务器选择所有患者ID等于该请求消息中患者ID的患者表项,发送一个响应消息,该响应消息的消息ID为5,坐标集合等于该请求消息中的坐标集合,患者表由选中的患者表项构成;
步骤411:如果用户节点U3接收到该响应消息,则执行步骤415,否则执行步骤412;
步骤412:如果除了用户节点U3以外的其他用户节点或者监测节点接收到该响应消息,则执行步骤435,否则执行步骤413;
步骤413:接收到响应消息的静态节点判断自己的坐标是否等于该响应消息坐标集合中的最后一个元素,如果等于,则执行步骤414,否则执行步骤435;
步骤414:接收到响应消息的静态节点从该响应消息坐标集合中删除最后一个元素,转发该响应消息,执行步骤411;
步骤415:接收到响应消息的用户节点U3查看响应消息中的患者表,如果检测到至少一个患者表项的数据超过阈值,例如血压的高压数值大于180,或者体温温度超过39摄氏度,则执行步骤416,否则执行步骤435;
步骤416:接收到响应消息的用户节点U3发送一个警告消息,该警告消息的消息ID为6,患者ID等于响应消息中任一患者表项的患者ID,目的坐标为空;
步骤417:接收到警告消息的静态节点SN3判断自己的坐标是否等于自己服务表项中的坐标,如果等于,则执行步骤424,否则执行步骤418;
步骤418:接收到该警告消息的静态节点SN3选择一个邻居表项,该邻居表项的坐标与自己服务表项中的坐标之间的距离最近,将该警告消息的目的坐标设置为该邻居表项的坐标,转发该警告消息;
步骤419:如果服务器接收到该警告消息,则执行步骤425,否则执行步骤420;
步骤420:如果监测节点或者用户节点接收到该警告消息,则执行步骤435,否则执行步骤421;
步骤421:接收到警告消息的静态节点查看自己的坐标是否等于该警告消息中的目的坐标,如果等于,则执行步骤422,否则执行步骤435;
步骤422:接收到警告消息的静态节点查看自己的坐标是否等于自己服务表项中的坐标,如果等于,则执行步骤424,否则执行步骤423;
步骤423:接收到该警告消息的静态节点选择一个邻居表项,该邻居表项的坐标与自己服务表项中的坐标之间的距离最近,将该警告消息的目的坐标设置为该邻居表项的坐标,转发该警告消息,执行步骤419;
步骤424:接收到该警告消息的静态节点转发该警告消息,执行步骤419;
步骤425:接收到该警告消息的服务器选择所有患者ID等于该警告消息中患者ID的患者表项,从这些患者表项中再选择一个患者表项,该患者表项的时间戳距离当前时间最近,接收到该警告消息的服务器发送一个患者警告消息,该患者警告消息的消息ID为7,患者ID等于该警告消息中的患者ID,目的坐标为空,最终坐标等于选中的患者表项中的坐标;
步骤426:接收到该患者警告消息的静态节点SN1判断自己的坐标是否等于该患者警告消息中的最终坐标,如果等于,则执行步骤433,否则执行步骤427;
步骤427:接收到该患者警告消息的静态节点SN1选择一个邻居表项,该邻居表项的坐标与该患者警告消息中的最终坐标之间的距离最近,将该患者警告消息的目的坐标设置为该邻居表项的坐标,转发该患者警告消息;
步骤428:如果监测节点接收到该患者警告消息且自己的患者ID等于该患者警告消息中的患者ID,则执行步骤434,否则执行步骤429;
步骤429:如果除了患者ID等于该患者警告消息中的患者ID的监测节点或者用户节点接收到该患者警告消息,则执行步骤435,否则执行步骤430;
步骤430:接收到患者警告消息的静态节点判断自己的坐标是否等于该患者警告消息中的目的坐标,如果等于,则执行步骤431,否则执行步骤435;
步骤431:接收到该患者警告消息的静态节点判断自己的坐标是否等于该患者警告消息中的最终坐标,如果等于,则执行步骤433,否则执行步骤432;
步骤432:接收到该患者警告消息的静态节点选择一个邻居表项,该邻居表项的坐标与该患者警告消息中的最终坐标之间的距离最近,将患者警告消息中的目的坐标设置为该邻居表项的坐标,转发该患者警告消息,执行步骤428;
步骤433:接收到该患者警告消息的静态节点转发该患者警告消息,执行步骤428;
步骤434:接收到该患者警告消息的检测节点保存该患者警告消息;
步骤435:结束。
用户节点通过上述过程从服务器获取患者数据。由于上述过程中用户节点能够通过到达服务器的最短路径获取数据,因此降低了数据通信延迟,如果用户节点检测到数据异常,则通过上述过程通知患者并根据患者当前所在位置实施救护,由于上述过程中警告消息通过患者当前所在的网格进行路由,因此避免了由于患者移动带来的通信失败。
有益效果:本发明提供了一种基于物联网的智能医疗监测和报警系统的实现方法,本发明通过从距离最近的节点获取数据从而降低物联网提供患者数据的延迟和代价,进而有效提高智能医疗的性能,具有广泛的应用前景。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/或其他方面的优点将会变得更加清楚。
图1为本发明所述的建立服务表流程示意图。
图2为本发明所述的建立邻居表流程示意图。
图3为本发明所述的上传数据流程示意图。
图4为本发明所述的数据通信流程示意图。
具体实施方式:
本发明提供了一种基于物联网的智能医疗监测和报警系统的实现方法,本发明通过从距离最近的节点获取数据从而降低物联网提供患者数据的延迟和代价,进而有效提高智能医疗的性能,具有广泛的应用前景。
图1为本发明所述的建立服务表流程示意图。所述物联网包含服务器、动态节点和静态节点;动态节点包括监测节点和用户节点;服务器,动态节点和静态节点的通信半径均为R,取值范围为10m-100m;
所述物联网覆盖的面积为正方形,划分为一组面积相同的网格,每个网格均为正方形且边长相同,边长等于通信半径R;
每个网格包含一个静态节点,位于该网格的中心点,即两条对角线的交叉点,每个静态节点的坐标具有唯一性;静态节点执行转发功能,服务器或者动态节点与所在网格的静态节点链路相连并通过该静态节点实现通信;
一个患者配置一个监测节点,该监测节点由患者ID唯一标识,患者ID具有唯一性,例如患者ID可以是该患者的身份证或者手机号;
一个消息由消息ID唯一标识;每个静态节点保存一个服务表,只包含一个服务表项,包含坐标和生命周期域;发布消息包含消息ID和坐标;
在服务器S1与静态节点SN1链接,静态节点SN1的坐标为CD1的条件下,服务器S1定期执行下述发布操作:
步骤101:开始;
步骤102:服务器S1发送一个发布消息,该发布消息的消息ID为1,坐标为空;
步骤103:静态节点SN1接收到该发布消息后,将该发布消息的坐标设置为自己的坐标CD1,清空服务表,创建一个服务表项,该服务表项的生命周期为最大值,生命周期的最大值为500ms-1s,坐标为自己的坐标CD1,转发该发布消息;
步骤104:如果移动节点或者服务器接收到该发布消息,则执行步骤107,否则执行步骤105;
步骤105:接收到该发布消息的静态节点查看服务表,如果服务表项的生命周期大于预先设置的阈值TH0,TH0设置范围为最大生命周期的90%-99%,则执行步骤107,否则执行步骤106;
步骤106:接收到该发布消息的静态节点清空服务表,创建一个服务表项,该服务表项的生命周期设置为最大值,坐标等于该发布消息中的坐标,转发该发布消息,执行步骤104;
步骤107:结束。
服务器通过上述过程使每个静态节点建立服务表,静态节点通过服务表项中的坐标建立到达服务器的最优路径从而降低通信延迟和代价,上述过程中,服务表项通过生命周期来确保服务表项的正确性和实时性,从而能够保证数据通信的有效性。
图2为本发明所述的建立邻居表流程示意图。每个静态节点保存一个邻居表,一个邻居表项包含坐标和生命周期;邻居消息包含消息ID和坐标。
静态节点SN0的坐标为CO0,定期执行下述操作:
步骤201:开始;
步骤202:静态节点SN0发送一个邻居消息,该邻居消息的消息ID为2,坐标等于自己的坐标;
步骤203:如果移动节点或者服务器接收到该邻居消息,则执行步骤207,否则执行步骤204;
步骤204:接收到该邻居消息的静态节点查看邻居表,如果存在一个邻居表项,该邻居表项的坐标等于该邻居消息中的坐标,则执行步骤205,否则执行步骤206;
步骤205:接收到该邻居消息的静态节点选择一个邻居表项,该邻居表项的坐标等于该邻居消息中的坐标,将该邻居表项的生命周期设置为最大值,执行步骤207;
步骤206:接收到该邻居消息的静态节点创建一个邻居表项,该邻居表项的坐标等于该邻居消息中的坐标,将该邻居表项的生命周期设置为最大值;
步骤207:结束。
静态节点通过上述过程建立邻居表从而获取每个邻居静态节点的坐标,从而建立到达目标静态节点的最短路径。由于邻居表通过生命周期确保邻居表项的有效性和实时性,因此避免了由于静态节点失效而引起的数据通信失败,确保了最短路径的有效性和实时性。
图3为本发明所述的上传数据流程示意图。服务器保存一个患者表,一个患者表项包含患者ID、数据、时间戳和坐标;
上传消息包含消息ID、患者ID、数据、时间戳、患者坐标和目的坐标.
在监测节点PN2由患者ID PID2唯一标识,监测节点PN2与静态节点SN2链接,监测节点PN2定期收集患者数据MD2并执行下述操作:
步骤301:开始;
步骤302:监测节点PN2发送一个上传消息,该上传消息的消息ID为3,患者ID等于PID2,数据等于MD2,时间戳为当前时间,患者坐标和目的坐标均为空;
步骤303:接收到上传消息的静态节点SN2将该上传消息的患者坐标设置为自己的坐标,判断自己的坐标是否等于自己服务表项中的坐标,如果等于,则执行步骤309,否则执行步骤304;
步骤304:接收到上传消息的静态节点SN2选择一个邻居表项,该邻居表项的坐标与服务表项中坐标之间的距离最近,将该上传消息的目的坐标设置为该邻居表项的坐标,发送该上传消息;
步骤305:如果移动节点或者服务器接收到该上传消息,则执行步骤310,否则执行步骤306;
步骤306:接收到该上传消息的静态节点判断自己的坐标是否等于该上传消息的目的坐标,如果等于,则执行步骤307,否则执行步骤310;
步骤307:接收到该上传消息的静态节点判断自己的坐标是否等于自己服务表项中的坐标,如果等于,则执行步骤309,否则执行步骤308;
步骤308:接收到上传消息的静态节点选择一个邻居表项,该邻居表项的坐标与服务表项中坐标之间的距离最近,将该上传消息的目的坐标设置为该邻居表项的坐标,发送该上传消息,执行步骤305;
步骤309:接收到上传消息的静态节点转发该上传消息,服务器接收到该上传消息后创建一个患者表项,该患者表项的患者ID、数据、时间戳分别等于该上传消息中的患者ID、数据、时间戳,坐标等于该上传消息中的患者坐标;
步骤310:结束。
监测节点通过上述过程向服务器上传监测到的患者数据,用于监测患者在不同时间所在的地理位置和生理参数,由于上述过程通过邻居表能够建立到达服务器的最短路径,从而有效降低了上传数据的延迟和代价,同时用户节点能够从服务器获取实时患者数据用于监测进而实现及时救护。
图4为本发明所述的数据通信流程示意图。服务器S1与静态节点SN1链接;
请求消息包含消息ID、患者ID和坐标集合;
响应消息包含消息ID、坐标集合和患者表;
警告消息包含消息ID、患者ID和目的坐标;
患者警告消息包含消息ID、患者ID、目的坐标和最终坐标。
用户节点U3与静态节点SN3链接,监测节点PN2由患者ID标识为PID2,用户节点U3通过下述过程获取监测节点PN2收集的数据:
步骤401:开始;
步骤402:用户节点U3发送一个请求消息,该请求消息的消息ID为4,患者ID为PID2,坐标集合为空;
步骤403:静态节点SN3接收到该请求消息后将自己的坐标加入到该请求消息的坐标集合中并作为最后一个元素,如果静态节点SN3的坐标等于自己服务表项中的坐标,则执行步骤409,否则执行步骤404;
步骤404:接收到该请求消息的静态节点SN3选择一个邻居表项,该邻居表项的坐标与自己服务表项中的坐标之间的距离最近,将该邻居表项的坐标加入到该请求消息中坐标集合中并作为最后一个元素,转发该请求消息;
步骤405:如果服务器接收到该请求消息,则执行步骤410,否则执行步骤406;
步骤406:如果监测节点或者用户节点接收到该请求消息,则执行步骤435,否则执行步骤407;
步骤407:接收到请求消息的静态节点查看自己的坐标是否等于自己服务表项中的坐标,如果等于,则执行步骤409,否则执行步骤408;
步骤408:接收到该请求消息的静态节点选择一个邻居表项,该邻居表项的坐标与自己服务表项中的坐标之间的距离最近,将该邻居表项的坐标加入到该请求消息的坐标集合中并作为最后一个元素;
步骤409:接收到该请求消息的静态节点转发该请求消息,执行步骤405;
步骤410:接收到该请求消息的服务器选择所有患者ID等于该请求消息中患者ID的患者表项,发送一个响应消息,该响应消息的消息ID为5,坐标集合等于该请求消息中的坐标集合,患者表由选中的患者表项构成;
步骤411:如果用户节点U3接收到该响应消息,则执行步骤415,否则执行步骤412;
步骤412:如果除了用户节点U3以外的其他用户节点或者监测节点接收到该响应消息,则执行步骤435,否则执行步骤413;
步骤413:接收到响应消息的静态节点判断自己的坐标是否等于该响应消息坐标集合中的最后一个元素,如果等于,则执行步骤414,否则执行步骤435;
步骤414:接收到响应消息的静态节点从该响应消息坐标集合中删除最后一个元素,转发该响应消息,执行步骤411;
步骤415:接收到响应消息的用户节点U3查看响应消息中的患者表,如果检测到至少一个患者表项的数据超过阈值,例如血压的高压数值大于180,或者温度超过39摄氏度,则执行步骤416,否则执行步骤435;
步骤416:接收到响应消息的用户节点U3发送一个警告消息,该警告消息的消息ID为6,患者ID等于响应消息中任一患者表项的患者ID,目的坐标为空;
步骤417:接收到警告消息的静态节点SN3判断自己的坐标是否等于自己服务表项中的坐标,如果等于,则执行步骤424,否则执行步骤418;
步骤418:接收到该警告消息的静态节点SN3选择一个邻居表项,该邻居表项的坐标与自己服务表项中的坐标之间的距离最近,将该警告消息的目的坐标设置为该邻居表项的坐标,转发该警告消息;
步骤419:如果服务器接收到该警告消息,则执行步骤425,否则执行步骤420;
步骤420:如果监测节点或者用户节点接收到该警告消息,则执行步骤435,否则执行步骤421;
步骤421:接收到警告消息的静态节点查看自己的坐标是否等于该警告消息中的目的坐标,如果等于,则执行步骤422,否则执行步骤435;
步骤422:接收到警告消息的静态节点查看自己的坐标是否等于自己服务表项中的坐标,如果等于,则执行步骤424,否则执行步骤423;
步骤423:接收到该警告消息的静态节点选择一个邻居表项,该邻居表项的坐标与自己服务表项中的坐标之间的距离最近,将该警告消息的目的坐标设置为该邻居表项的坐标,转发该警告消息,执行步骤419;
步骤424:接收到该警告消息的静态节点转发该警告消息,执行步骤419;
步骤425:接收到该警告消息的服务器选择所有患者ID等于该警告消息中患者ID的患者表项,从这些患者表项中再选择一个患者表项,该患者表项的时间戳距离当前时间最近,接收到该警告消息的服务器发送一个患者警告消息,该患者警告消息的消息ID为7,患者ID等于该警告消息中的患者ID,目的坐标为空,最终坐标等于选中的患者表项中的坐标;
步骤426:接收到该患者警告消息的静态节点SN1判断自己的坐标是否等于该患者警告消息中的最终坐标,如果等于,则执行步骤433,否则执行步骤427;
步骤427:接收到该患者警告消息的静态节点SN1选择一个邻居表项,该邻居表项的坐标与该患者警告消息中的最终坐标之间的距离最近,将该患者警告消息的目的坐标设置为该邻居表项的坐标,转发该患者警告消息;
步骤428:如果监测节点接收到该患者警告消息且自己的患者ID等于该患者警告消息中的患者ID,则执行步骤434,否则执行步骤429;
步骤429:如果除了患者ID等于该患者警告消息中的患者ID的监测节点或者用户节点接收到该患者警告消息,则执行步骤435,否则执行步骤430;
步骤430:接收到患者警告消息的静态节点判断自己的坐标是否等于该患者警告消息中的目的坐标,如果等于,则执行步骤431,否则执行步骤435;
步骤431:接收到该患者警告消息的静态节点判断自己的坐标是否等于该患者警告消息中的最终坐标,如果等于,则执行步骤433,否则执行步骤432;
步骤432:接收到该患者警告消息的静态节点选择一个邻居表项,该邻居表项的坐标与该患者警告消息中的最终坐标之间的距离最近,将患者警告消息中的目的坐标设置为该邻居表项的坐标,转发该患者警告消息,执行步骤428;
步骤433:接收到该患者警告消息的静态节点转发该患者警告消息,执行步骤428;
步骤434:接收到该患者警告消息的检测节点保存该患者警告消息;
步骤435:结束。
用户节点通过上述过程从服务器获取患者数据。由于上述过程中用户节点能够通过到达服务器的最短路径获取数据,因此降低了数据通信延迟,如果用户节点检测到数据异常,则通过上述过程通知患者并根据患者当前所在位置实施救护,由于上述过程中警告消息通过患者当前所在的网格进行路由,因此避免了由于患者移动带来的通信失败。
实施例1
基于表1的仿真参数,本实施例模拟了本发明中的一种基于物联网的智能医疗监测和报警系统的实现方法。服务器S1启动后,定期执行步骤101-107发送发布消息建立服务表,接收到该发布消息的静态节点如果存在一个服务表项,则清空该服务表项,然后根据接收到的发布消息创建一个服务表项。例如,服务表项的坐标等于(121,136),生命周期为500ms。服务器通过上述过程使每个静态节点建立服务表,静态节点通过服务表项中的坐标建立到达服务器的最优路径从而降低通信延迟和代价,上述过程中,服务表项通过生命周期来确保服务表项的正确性和实时性,从而能够保证数据通信的有效性。静态节点SN0定期执行步骤201-207发送邻居消息从而建立邻居表。接收到邻居消息的静态节点判断是否存在一个邻居表项,该邻居表项的坐标等于该邻居消息中的坐标,如果存在,则将该邻居消息的生命周期设置为最大值,否则则根据接收到的邻居消息创建邻居表项。例如,一个邻居表项的坐标为(121,137)、生命周期为500ms。静态节点通过上述过程建立邻居表从而获取每个邻居静态节点的坐标,从而建立到达目标静态节点的最短路径。由于邻居表通过生命周期确保邻居表项的有效性和实时性,因此避免了由于静态节点失效而引起的数据通信失败,确保了最短路径的有效性和实时性。监测节点PN2定期收集患者数据MD2并执行步骤301-310向服务器发送上传消息。接收到该上传消息的静态节点根据服务表项和邻居表项将上传消息转发到服务器,服务器接收到该上传消息后,创建一个患者表项从而保存该上传消息中的数据,例如一个患者表项的患者ID为John、数据为37.3摄氏度、时间戳为20200811100132,坐标为(120,35)。监测节点通过上述过程向服务器上传监测到的患者数据,用于监测患者在不同时间所在的地理位置和生理参数,由于上述过程通过邻居表能够建立到达服务器的最短路径,从而有效降低了上传数据的延迟和代价,同时用户节点能够从服务器获取实时患者数据用于监测进而实现及时救护。用户节点U3执行步骤401-435向服务器发送请求消息获取监测节点PN2收集的数据,该请求消息通过邻居表和服务表达到服务器,服务器向用户节点U3返回数据表从而使用户节点U3获取数据。如果用户节点U3检测到数据超过阈值,例如温度超过39摄氏度,则向监测节点PN2发送报警消息从而引起患者注意。用户节点通过上述过程从服务器获取患者数据。由于上述过程中用户节点能够通过到达服务器的最短路径获取数据,因此降低了数据通信延迟,如果用户节点检测到数据异常,则通过上述过程通知患者并根据患者当前所在位置实施救护,由于上述过程中警告消息通过患者当前所在的网格进行路由,因此避免了由于患者移动带来的通信失败。基于表1的仿真参数,本实施例的性能分析如下:当用户节点距离服务器距离较远时,用户节点获取服务数据的代价随之增加,当用户节点距离服务器距离较近时,用户节点获取服务数据的代价随之降低。用户节点获取服务数据的平均代价为12.7。
表1仿真参数
本发明提供了一种基于物联网的智能医疗监测和报警系统的实现方法的思路,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部份均可用现有技术加以实现。
一种基于物联网的智能医疗监测和报警系统的实现方法专利购买费用说明
Q:办理专利转让的流程及所需资料
A:专利权人变更需要办理著录项目变更手续,有代理机构的,变更手续应当由代理机构办理。
1:专利变更应当使用专利局统一制作的“著录项目变更申报书”提出。
2:按规定缴纳著录项目变更手续费。
3:同时提交相关证明文件原件。
4:专利权转移的,变更后的专利权人委托新专利代理机构的,应当提交变更后的全体专利申请人签字或者盖章的委托书。
Q:专利著录项目变更费用如何缴交
A:(1)直接到国家知识产权局受理大厅收费窗口缴纳,(2)通过代办处缴纳,(3)通过邮局或者银行汇款,更多缴纳方式
Q:专利转让变更,多久能出结果
A:著录项目变更请求书递交后,一般1-2个月左右就会收到通知,国家知识产权局会下达《转让手续合格通知书》。
动态评分
0.0