基于WIFI的老人居家远程监测系统

文档序号:25957252发布日期:2021-07-20 17:16阅读:607来源:国知局
基于WIFI的老人居家远程监测系统

本发明涉及物联网技术领域,具体设计一种基于wifi的老人居家远程监测系统。



背景技术:

老龄社会的到来势必会带来很多的社会问题和挑战,传统的养老方式难以满足老年人的有效需求。随着物联网技术应用领域愈发广泛,它在智能家居、工业控制、智慧医疗等方面展现出了重要价值。以技术为支撑的智慧养老优化、集成了养老服务资源的配置,提高了养老服务效率,使传统的养老模式焕然一新。比如日常生活中老人外出散步或购物时,要考虑室外的空气质量是否方便出行。在日常活动中,老人难免会有摔倒状况出现,针对老人是否会有摔倒进行检测,保证在出现摔倒状况时,第一时间做出应对措施,最大限度的减少摔倒带来的伤害。

尽管目前已有不少的居家监测系统被设计出来,但大部分系统还存在不足。例如,有的采用单一控制器去连接多个环境数据采集传感器,这样一来对于环境监测数据的针对性不足导致准确性降低,若用此模式布置多个采集节点,则会增大系统实现成本。也忽略了在采集数据时传感器本身受环境噪声影响产生的数据误差。在传输数据时大部分采用的将数据通过wifi模块传到手机或者由路由设备将数据传到云端服务器在使用手机查看,这样会限制传输距离和增大成本。在对摔倒检测方面,大多采用单一阈值检测同时也忽略的硬件本身采集数据时环境噪声的干扰,这两种情况都会增大误判的概率,大大降低检测的效率。

本发明在物联网技术的背景下,采用wifi组网技术、传感器技术、gps定位技术等,实现对老人日常居家的生活环境和运动状态的实时监测,以便在出现异常时能够及时发现并采取相应的解决措施。



技术实现要素:

为了解决上述问题,本发明提供了一种基于wifi的老人居家远程监测系统。采用wifi组网技术在数据采集端,通过对采集节点的布置有效的采集所需的环境数据,加上滤波优化算法处理数据,提高数据精确度,通过主控制器将数据传输到pc端并可以实时查看数据。能够满足老人居家系统对高效、实时、低成本的要求。

一种基于wifi的老人居家远程监测系统,包括wifi网络、主控终端模块和远程监控中心。

其中所述wifi网络包括一个无线接入点和若干个终端节点,无线接入点和终端节点之间采用lwip协议组网,当有终端节点连接时,无线接入点对其进行ssid和密码的匹配,匹配成功后建立tcp连接;所述终端节点分别布置在室内不同的房间和室外,用于采集室内外所需要的环境数据,并将数据通过wifi网络传给无线接入点。

所述主控终端模块用于接收并采用数据滤波算法优化无线接入点所收到的环境数据和对老人是否有摔倒行为进行检测,并将这些数据发送到远程监控中心。

所述远程监控中心将接收到的数据存储到本地数据库中,并对数据进行处理(包括对数据进行增、删、改、查)和显示。

进一步的,所述无线接入点包括:主芯片和外围电路,外围电路包括串口、led指示灯、oled屏幕、看门狗、电源模块,串口用于和主控终端模块传输数据,led指示灯用于指示工作状态,oled屏幕用于显示当前wifi网络连接状态,看门狗用于wifi网络出故障时无线接入点快速复位重新组网,电源模块用于给无线接入点供电。

进一步的,所述终端节点包括:主芯片和外围电路,其中外围电路包括电源模块、传感器、串口、led指示灯,电源模块用于给终端节点供电,传感器用于采集室内外的环境数据,led指示灯用于指示终端节点的工作状态。

进一步的,所述传感器包括温湿度传感器、可燃气体浓度传感器、粉尘浓度传感器,温湿度传感器用于监测室内房间的温度和湿度,可燃气体浓度传感器用于监测厨房可燃气体浓度是否超标,粉尘浓度传感器用于监测室外粉尘浓度是否达标。

进一步的,所述主控终端模块包括处理器、串口、mpu6050加速度传感器模块、gps定位模块、gsm模块、gprs模块、电源模块、lcd显示器和蜂鸣器,处理器和wifi网络的无线接入点进行串口通信,将数据传到处理器。mpu6050加速度传感器模块用于采集老人运动状态数据,加速度和姿态角,在进行摔倒检测时,根据所测得的加速度和角速度数据,根据加速度和姿态角所设定的阈值,当采集的数据超出该阈值即判定为摔倒。gps模块用于对老人所处的位置进行实时监测;gprs模块负责将wifi网络无线接入点传输过来的环境数据和检测老人是都有摔倒状态以及所在地理位置数据打包并远程发送到远程监控中心;一旦出现摔倒状况,gsm模块将会发出短信进行求助;电源模块负责给主控终端模块供电;lcd负责显示处理器接收到的数据;蜂鸣器则是当出现异常数据时发出警报。

进一步的,所述远程监控中心包括用户操作软件和mysql数据库,所述用户操作软件包括服务器模块、用户数据管理模块、数据管理模块、地图定位模块;服务器模块主要用于接收主控终端传过来的数据;用户管理模块用于实现用户操作软件的用户注册、登录和信息修改功能;数据管理模块用于查看所采集到的环境数据和是否有摔倒行为;地图模块将第三方的在线地图嵌入到用户操作软件中,实现地图定位。以便于在出现摔倒时发现老人位置并即使采取应对措施。所述用户操作软件的功能包括:1.给主控终端模块提供传输接口,使主控终端可以向远程监控中心传输所采集的环境数据和gps定位信息;2.实现数据显示,便于用户查询相关数据;3.用户操作软件还包括用户的注册、登录、注销;所述mysql数据库用于存储用户操作软件接收到的数据。

本发明的有益效果:

1、本发明采用wifi网络在家庭中进行组网,这相比于zigbee、蓝牙等短距离网络技术有着传输速度快、传输距离远的优势,而且针对于本发明的终端节点布置情况来看,wifi具有一定穿透能力的优势得以体现,可以有针对性的去采集所需要的环境数据,非常适合用于监测居家环境。除此之外,wifi网络的所有入网节点之间相互独立,彼此不受影响,不会因为某一个节点出现故障而导致整个网络瘫痪,大大的提升监测效率。

2、在对居家环境进行数据采集时,本发明充分利用的wifi网络的优势,有针对性去采集监测时所需要的数据,降低系统的成本,提高监测效率。比如,在客厅和卧室布置一个终端节点连接dht11传感器来采集温度和湿度数据。在厨房布置一个终端节点连接mq9气体传感器对厨房内的可燃气体浓度进行监测,以防可燃气体泄露带来的危害。在室外墙壁或固定窗户上布置一个pms5003s传感器对室外pm2.5浓度的监测,以此来判断是否适宜外出。同时考虑到环境噪声在采集数据时带来的误差,采用改进的卡尔曼滤波算法来减小环境噪声的影响,提高数据的精确度。减少系统对环境监测时的错误警报和遗漏警报的情况发生。

3、在对老人是否有摔倒行为进行判断时,本发明采用姿态传感器mpu6050,mpu6050传感器可以直接测出老人运动时x,y,z轴三个方向的加速度和三个姿态角,分别是俯仰角、偏航角、翻滚角。一般摔倒判定的条件是当加速度超出设定阈值或者姿态角超出45°即判定为摔倒,但是仅仅用一个判定条件很容易出现误判的现象,也要考虑到硬件本身受环境的干扰导致数据误差增大,而摔倒是的加速度与姿态角数值往往是一瞬间发生巨大变化,所以对数据的优化方面不采用加权平均的算法,因为加速度数据很可能在采用加权平均之后超不过阈值会造成漏判,即摔倒却检测不出来的现象。所以本发明针对采集的加速度和姿态角数据仅仅采用卡尔曼滤波算法对数据进行优化处理。本发明采用卡尔曼滤波算法之后再用双阈值联合判别的方法,可以很大程度上降低误判的现象出现。

附图说明

图1为本发明实施例的老人居家远程监测系统的整体框图;

图2为本发明实施例的wifi网络工作示意图;

图3为本发明实施例的wifi终端节点结构示意图;

图4为本发明实施例的环境数据主控终端结构示意图;

图5为本发明实施例的摔倒与定位主控终端结构示意图;

图6为本发明实施例的远程监控中心软件设计架构图;

图7为本发明实施例的用户操作软件数据管理显示示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1为本发明的一种基于wifi的老人居家远程监测系统的整体框图,该系统由三部分构成:wifi网络、主控终端模块、远程监控中心。wifi网络通过传感器获取居家环境数据,并将数据发送给主控终端模块,主控终端模块通过gprs技术将环境数据发送到远程监控中心,由于所述环境主控终端模块不便于在老人外出时监测运动状态。所以采用另一主控终端模块对老人的异常行为进行检测和获取地理位置数据,同时也将这些数据通过gprs技术发送到远程监控中心,实现远程监测功能;远程监控中心将接收到的数据存储到数据库中,通过qt开发的用户操作软件来进行数据的增删改查和实时显示。

wifi网络包括一个无线接入点和若干个终端节点,无线接入点和终端节点之间采用lwip协议组网,当有终端节点连接时,无线接入点会对其进行ssid和密码的匹配,匹配成功后建立tcp连接,如图2所示。

所述无线接入点包括:主芯片和外围电路,外围电路包括串口、led指示灯、oled屏幕、看门狗模块、电源模块,串口用于和主控终端模块传输数据,led指示灯用于指示工作状态,oled屏幕用于显示当前wifi网络连接状态,看门狗模块用于wifi网络出故障时无线接入点快速复位重新组网,电源模块用于给无线接入点供电。

优选的,wifi模块采用esp32芯片为主芯片。

在本发明中,wifi网络中有若干个终端节点布置家庭的不同的房间,每个终端节点依据所布置的位置来采集相应的环境数据,并将数据传给无线接入点。如图3所示,终端节点包括主芯片3-1和外围电路,外围电路的各模块分别与主芯片3-1连接。其中外围电路包括电源模块3-4、传感器、第一串口3-2、led指示灯3-3,电源模块3-4用于整个终端节点供电,为了灵活轻便采用12v干电池给终端节点供电。第一串口3-2负责提供串口通信,也便于开发时调试终端节点,led指示灯3-3用于指示终端节点的工作状态。其他模块可根据需求进行添加设计。

优选的,终端节点的主芯片3-1使用esp32芯片,esp32芯片内嵌lwip协议,其在保持tcp协议功能的基础上减少对ram的使用,只需要十几kb的ram和四十kb的rom就可以运行,而且网络性能优良、稳定。

在居家环境数据采集的终端节点处,可以选用以下各种传感器,使用dht11传感器来采集温湿度数据,使用mq9传感器来采集可燃气体浓度,使用pms5003s传感器来采集粉尘浓度。

所述温湿度传感器使用dht11传感器,该传感器是一款温湿度复合传感器,终端节点的主芯片与dht11采用单总线通信的方式获取温湿度数据;所述可燃气传感器使用mq9气体传感器,终端节点与mq9连通并工作后,将输出的电压信号进行模/数转换就能将其转换为可燃气体的浓度。所述粉尘浓度传感器使用pms5003s传感器,终端节点与pms5003s传感器采用串口通信的方式根据特定的数据位可以得到pm2.5及甲醛浓度数据。

为了提高所采集的环境数据的准确性、稳定性,本发明采用相应滤波算法对采集的环境数据进行优化处理。相比于概率模型和加权平均算法,神经网络与卡尔曼滤波算法有着较好的精确度,但是神经网络算法不容易建立规模且运算量大,复杂度高,不易于系统的设计。但是在环境干扰较大时,数据的波动会明显增加,若仅用卡尔曼滤波算法会导致数据收敛速度变慢,稳定性变差。因此通过滑动均值滤波算法对卡尔曼滤波算法进行改进,能较好的消除波动较大、瞬时的脉冲信号。

卡尔曼滤波是一个递归的过程,该过程可以用卡尔曼滤波的五个核心公式来概括。每一次的递归都需要执行预测和修正,核心公式的前两个为预测过程,后三个为修正过程。

(1)提前预测系统状态

系统在k时刻根据k-1时刻的x(k-1|k-1)最优估计值,算出k时刻的估计x(k|k-1)。

x(k|k-1)=ax(k-1|k-1)(1)

x(k|k-1)表示k时刻的估计值,x(k-1|k-1)表示k-1时刻的最优估计值。a为给定的系统参数,由于本系统是单测量系统,所有a=1。

(2)提前预测误差协方差

由x(k-1|k-1)的协方差p(k-1|k-1)可以得出x(k|k-1)的协方差p(k|k-1)。

p(k|k-1)=ap(k-1|k-1)at+q(2)

式中,q是系统过程噪声的协方差,at为矩阵a的转置矩阵。

(3)计算卡尔曼增益

根据(2)式中得到的p(k|k-1),可以得出卡尔曼增益kg(k)。

式中,r为测量过程的噪声协方差,ht为h的转置矩阵。其中h为系统的测量参数,本系统中测量参数设定h=1。

(4)用测量值z(k)修正估计值

利用k时刻的测量值z(k)可以修正估计值x(k|k-1),从而得到k时刻的最优估计值x(k|k)。

x(k|k)=x(k|k-1)+kg(k)[z(k)-hx(k|k-1)](4)

(5)更新误差协方差

得出k时刻x(k|k)的协方差p(k|k)。

p(k|k)=[i-kg(k)h]p(k|k-1)(5)

式中,i为单位矩阵。

通过预测和修正过程,能够通过上一时刻的状态的最有估计值和当前状态的测量值,得出所需要的当前状态最有估计值,然后自回归的运行。

通过上述过程的得到环境数据当前时刻最优估计值,其中环境数据包括环境温度湿度数据、可燃气体浓度和粉尘浓度数据。

滑动均值滤波原理为:

式中p为均值滤波后的输出值,n为采集测量次数,m为滑动均值滤波窗口的大小,q为测量值。

在本发明中,先将采集的环境数据(包括环境温度湿度数据、可燃气体浓度和粉尘浓度数据)经过滑动滤波算法处理之后,减低波动明显数据的干扰,将滤波后的结果作为卡尔曼滤波的测量值,二次滤波之后,得到更加稳定精确的数据。

终端节点与无线接入点之间的连接与传输数据包括:无线接入点开始工作建立好网络后,当有终端节点连接时,无线接入点会对其进行ssid和密码的匹配,匹配成功后建立tcp连接,连接成功之后终端节点就可以将采集的数据传给无线接入点。

当无线接入点收到终端节点传输过来的数据之后,无线接入点将数据传给环境数据主控终端,由主控终端完成远程发送。

环境数据主控终端模块用于从无线接入点处接收环境数据,并将数据远程发送给远程监控中心,如图4所示。所述主控终端模块包括处理器ⅰ4-1、串口ⅰ4-6、gprs模块ⅰ4-5、电源模块ⅰ4-4、lcd显示器4-2、看门狗模块ⅰ4-3和蜂鸣器4-7,以上各模块分别与处理器ⅰ4-1连接。处理器ⅰ4-1和wifi网络的无线接入点进行串口通信,将环境数据传给处理器ⅰ4-1。gprs模块ⅰ4-5负责将无线接入点传输过来的数据打包并远程发送到远程监控中心。电源模块ⅰ4-4负责给整个环境数据主控终端模块供电。看门狗模块ⅰ4-3负责在主控终端程序跑飞的情况下复位处理器,使主控终端恢复正常工作状态。lcd显示器4-2负责显示无线接入点发来的数据。蜂鸣器4-7负责在接收到的数据异常时发出警报。

优选的,环境主控终端模块的核心处理器采用stm32芯片,它是标准的arm架构体系结构,具有高性能、低电压、低功耗、创新的内核及外设简单易用的优点,本实施例采用stm32芯片作为环境主控终端模块的核心处理器负责远程传输居家环境数据和运动状态数据以及定位信息,可以达到低成本高效率的目的。

在对摔倒行为检测和获取位置信息由另一个主控终端模块完成,在获取完数据之后同样由主控终端模块将数据发送到远程监控中心。所述摔倒与定位主控终端模块包括处理器ⅱ5-1、串口ⅱ5-7、gprs模块ⅱ5-6、mpu6050加速度传感器模块5-2、gps模块5-3、gsm模块5-5、电源模块ⅱ5-4和看门狗模块5-8,如图5所示,各模块分别与处理器ⅱ5-1连接。处理器ⅱ5-1与mpu6050加速度传感器模块5-2采用iic通信的方式可以直接测出老人运动时x,y,z轴三个方向的加速度和三个姿态角,分别是俯仰角、偏航角、翻滚角。一般摔倒判定的条件是当加速度超出设定阈值或者姿态角超出45°即判定为摔倒,同时也要考虑到硬件本身受环境的干扰导致数据误差增大,而摔倒时的加速度与姿态角数值往往是一瞬间发生巨大变化,所以对数据的优化方面不采用加权平均的算法,因为加速度数据很可能在采用加权平均之后超不过阈值会造成漏判,即摔倒却检测不出来的现象。所以本发明针对采集的加速度和姿态角数据仅仅采用卡尔曼滤波算法对数据进行优化处理。本发明采用卡尔曼滤波算法之后再用双阈值联合判别的方法,可以很大程度上降低误判的现象出现。

所述的,判别摔倒的步骤如下:

(1)老人在正常行走时的身体加速度在1g上下波动(g为重力加速度),当身体的合加速度超出2g时与姿态角(俯仰角和翻滚角任一数值)超出45°时即判定为摔倒。式中a表示老人在运动时身体的加速度数据(相对于重力加速度g),本系统测量时以老人正常站立时重心向下的方向作为z轴,垂直于身体的正前方的方向作为x轴,垂直于身体的正右边方向作为y轴,以此建立一个三维空间的坐标系。ax则是老人运动时朝着前后方向的加速度数值,ay则是老人运动时左右方向的加速度数据,az则是老人运动时身体的重力加速度数值。其中翻滚角是绕三维坐标x轴旋转的角度,即为左右方向摔倒。俯仰角是绕三维坐标y轴旋转的角度,即为前后方向摔倒。

(2)从传感器中采集的三个方向的加速度与姿态角分别经过卡尔曼滤波算法来减小环境干扰,处理后的运动状态数据均超出阈值即判定为摔倒。

一旦出现摔倒,gsm模块立即发出短信求助。由gps模块采集的经纬度数据,起到定位作用。能很快获得老人摔倒所在位置,采取应对措施。

远程监控中心在pc机上实现,利用qt软件开发根据开发用户操作软件,它采用c++语言开发。例如开发控制台、服务器程序等。

所述远程监控中心包括用户操作软件和mysql数据库,所述操作软件主要用于:1.给主控终端提供传输接口,使主控终端的gprs模块能传输数据到远程监控中心,这个过程可用socket编程来实现,主控终端作为客户端,pc作为服务端,用户操作软件的服务器程序收到数据后自动将数据处理存储到mysql数据库中。2.实现数据显示,便于用户增删查改等相关数据。3.用户操作软件还包括用户的注册、登录、注销等其他功能。所述mysql数据库用于存储用户操作软件接收到的数据,通过mysql提供的接口访问数据。图6为实施例的远程监控中心软件设计架构图,在支持mysql的基础上,利用qt开发工具实现的用户操作软件有服务器模块、用户管理模块、数据管理模块、地图定位模块。如图7为远程监控中心用户操作软件截图,用户操作软件界面中显示模块分别是:服务器模块、用户管理模块、数据管理模块、地图定位模块,在用户操作软件的界面点击数据管理模块按钮就能看到主控终端发送过来的数据。

1)服务器模块

服务器模块主要用于实现socket通信,服务器模块运行服务器程序,创建ip地址和端口号,主控终端在gprs模块驱动程序处固定好服务器模块提供的ip地址和端口号,按照socket编程通信规则即可实现数据远程传输接收。服务器模块收到数据后将数据存储到本地mysql数据库中。

2)用户管理模块

用户管理模块负责实现使用操作软件的用户进行注册、登录、修改用户信息等功能,并将用户相关数据存储在mysql数据库中。

3)数据管理模块

数据管理模块主要用于将主控终端传过来的数据显示出来,便于用户查看。

4)地图定位模块

地图定位模块是将第三方的在线地图嵌入到用户操作软件中,根据主控终端传输过来的地理位置数据经度和纬度实现对老人位置查询,在地图上实现定位。

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