王重阳,宁超魁,马媛媛

(平顶山学院 信息工程学院,河南平顶山,467000)

0 引言

随着人口老龄化趋势的加剧,老人监护问题成为社会关注的焦点。根据2021 年底发布的国家统计局第七次全国人口普查数据,60 岁及以上的老年人口达到了2.67 亿人,占总人口的18.9%,而且根据中国出生率、死亡率和迁移率的趋势预计到2030 年,中国失能老年人数量可能超过7700 万人[1]。失能老人需要日常监护,但由于家属子女工作学习等原因,往往无法实现24 小时监护,可能导致健康问题恶化。因此,如何为失能老人提供有效安全的监护服务,成为一个亟待解决的问题。

1 系统总体设计

系统总体设计如图1 所示,选用STM32 单片机为主控制芯片,包括电源模块、心率血氧模块、人体红外测温模块、温湿度检测模块、湿度水分检测模块、步进电机模块、通信模块、报警模块。

2 系统硬件设计

本设计硬件电路原理图如图2 所示。选用STM32 单片机为主控芯片,采用MAX30102 心率血氧传感器、LU90614 人体红外测温传感器、DHT11 温湿度传感器、湿度水分检测传感器分别实现心率、体温、室内温湿度、床铺水分等数据采集,利用ULN2033 驱动板控制28BYJ48 步进电机实现床位升降,蜂鸣器实现报警功能,ESP-01SWiFi通信模块将数据上传至阿里云服务器实现系统与手机互联。

图2 系统电路原理图

■2.1 STM32 单片机核心电路设计

本设计的主控芯片采用的是STM32 单片机,其具有高性能、低成本和低功耗等特点,并且STM32F103C8T6 需要的电压范围在2~3.6V,适用的温度在-40℃~85℃,拥有多达64 个GPIO 引脚,11 个定时器,2 个12 位DA 通道,3 个12 位AD 通道,5 个UART 串口,应用范围广,性能稳定。能够满足本系统的开发要求,且具有一定的扩展空间。STM32 单片机的最小系统电路原理图如图3 所示。

图3 单片机最小系统电路原理图

■2.2 心率血氧模块

本设计采用MAX30102 心率血氧传感器对老年人的心率和血氧水平进行监测。该传感器利用PPG 光电容积脉搏波描记法来处理运算以获得心率和血氧数值。然后,使用I2C 接口输出数据,从而降低了传感器的使用难度并减少了对主控的资源占用。

■2.3 人体红外测温模块

本设计采用LU90614 红外测温传感器对老人的体温状态进行测量。该模块内部由红外发射器、红外接收器、滤光器和放大器构成,通过产生一个特定频率的红外光束检测被目标物体反射回来的红外辐射信号测量目标物体的温度。为了避免其他光线的干扰,传感器中还加入一个滤光器用来阻止其他光的进入。传感器内部的放大器会将接收到红外辐射信号进行放大,经过对数字信号的处理计算出测试物体的温度值。

■2.4 温湿度检测模块

本设计采用的DHT11 温湿度传感器是室内温湿度进行测试。该传感器基于电容变化的测量原理,主要包括一个高分子聚合物电感元件和一颗热敏电阻,通过感知周围环境的温湿度变化来改变元件电容的大小,最终将这些变化量转换为电信号输出。DHT11 温湿度传感器输出信号是一种串行数字信号,经过信号调理会对传感器输出的数字信号进行处理和解析,以便能够精确地计算出温度和湿度的数值。

■2.5 湿度水分检测模块

本设计采用湿度水分检测传感器来进行湿度检测。该传感器是一种能够实现湿度检测和水分定量测量的设备。其中采用电容式传感器原理,由一个电容板来测量水分,能够将水分信号转换为电信号,经过STM32 单片机处理数据可以设定阈值范围。这样就可以清楚地了解当下的水分湿度从而判断老人是否处于失禁状态。当水分湿度上升时,静电容中的介质将使得其内部空间减少,从而导致其内部的电容大小减少。这种变化将会在滑动开关中产生一个信号,并将这个信号通过接头传送到相应的终端或设备中。

■2.6 步进电机模块

本设计通过步进电机实现对失能老人的床头进行角度升降调整功能。28BYJ48 步进电机是一种低成本、低功耗的步进电机。其中,步进电机的CON5 端口与五线四相驱动板上的P3 接口相连接。

步进电机模块常用的驱动芯片有L293D 和ULN2003等。本设计中采用的是ULN2003 五线四相驱动板。该驱动原理是通过12V 的直流电源来提供驱动电压,通过STM32单片机或者其他控制器生成控制信号,在控制电路和驱动芯片的协同作用下控制步进电机的运动。

■2.7 通信模块

本设计采用ESP-01S 芯片的WiFi 模块。该通信通信模块是一款高性能、体积小、功耗低的WiFi 模块。该模块便于与各种微控制器和传感器等设备通信,可以为现有设备添加联网功能或构建独立的网络控制器。用户可通过简单快速的WiFi 连接实现设备互联,并实现物联网应用。

ESP-01S 模块支持高性能的无线SOC,可通过AT 指令快速上手,且支持STA、AP 以及AP 和STA 共存的三种工作模式,本设计中选择STA 模式。单片机将采集到的监测数据打包,通过通信串口上传到WiFi 模块,然后按照TCP/IP 协议将监测数据转换成相应格式,选择Save Data 类型的消息将数据发送到云平台。

■2.8 报警模块

本设计采用蜂鸣器作为报警模块的声源。报警模块由电阻、PNP 三极管和蜂鸣器三个基础部件组成。电阻防止电流过大损坏电路,PNP 三极管控制电流是否流向蜂鸣器,从而控制蜂鸣器的开关状态,使其发出声响。蜂鸣器报警有两种方式,一种为自动报警,当监测到的数值超出设置的参数范围时,蜂鸣器报警并通过手机APP 弹窗通知监护人。另一种为一键报警,危险时刻老人可通过一键报警按键直接实现蜂鸣器报警。

3 系统软件设计

智能监护系统软件开发基于Keil MDK5 环境,开发语言是 C 语言。根据系统的功能划分为三个板块:主程序、数据采集、通信传输。

■3.1 主程序

启动失能老人监护系统后,首先各个模块将按照系统要求进行初始化,并连接到WiFi 网络和阿里云服务器,确保能够上传数据和接收指令。然后读取各传感器数据,数据异常时驱动报警电路进行报警;通过手机APP 驱动电机模块调节床头高度;通过一键报警模块直接报警;最后各项数据传输至APP 并显示。主程序流程如图4 所示。

■3.2 数据采集

在数据采集时,首先进行传感器的初始化,读取传感器数据并判断数据是否正常,如不正常重新读取,如正常则判断读取数据是否超出设定阈值,超出阈值则报警,未超出阈值则上传数据并保存,最后采集数据在APP 显示。数据采集流程如图5 所示。

图5 数据采集流程图

■3.3 通信传输

通信传输流程如图6 所示,通过MQTT 协议从阿里云服务器获取推送数据(即单片机采集上传数据),并将数据以合适的方式在客户端显示,从而实现数据在设备和客户端之间的传输和共享,用户可以通过手机APP 显示实时数据并远程控制设备。ESP-01S 模块通过WiFi 实现与手机客户端的连接,ESP-01S 模块是通过串口指令来实现相应功能的触发。首先,控制器将使用串口向ESP-01S 发送连接WiFi 的AT 指令。然后,再次利用串口发送连接阿里云服务器的AT 指令。如果成功连接,控制器将会发送订阅信息的指令。此时,监护系统就可以监听来自所订阅ID 的阿里云服务器的账户信息,即可实现与手机客户端的通信。

图6 通信传输流程

4 系统测试

本系统的实物如图7 所示,系统完成后对数据采集和通信功能进行测试。

图7 系统实物图

■4.1 数据采集功能测试

心率血氧功能测试是将手指尖放在心率传感器的感应部分,传感器捕获相应数据并计算出心率血氧数值。DHT11 温湿度监测模块测试通过用水喷雾模拟湿度改变传感器周围环境的温湿度进行测试。人体红外体温监测模块测试将人体红外测温传感器放至老人额头或者内手腕1~3cm处进行体温采集。当传感器检测到的各项数据超出设定阈值范围时,监护人手机APP 会弹出异常提醒。经过测试,系统各项功能均满足设计要求。数据采集功能测试结果如图8所示。

图8 数据采集功能测试结果

■4.2 通信功能测试

该部分测试系统的信息上传阿里云服务器以及手机APP 下发信息设备是否可以正常执行命令。通过对不同情况的调整床位高度、发送报警信息以及整体的监护信息显示进行测试。

手机APP 通过阿里云服务器下发转动方向、步进数的命令,经ULN2003 五线四相驱动板模块驱动执行。按下报警独立按键,蜂鸣器发出警报声音,同时监护人手机端APP 会弹出红色警报页面提醒,长按报警按键可以取消报警。当系统采集数据异常时,蜂鸣器发出警报同时监护人手机APP 会弹出当前警报信息。经过测试,系统数据可以正常上传下发。数据异常报警结果如图9 所示。

图9 数据异常测试结果

5 结语

以STM32 单片机作为失能老人监护系统的核心控制器,通过对老人的心率血氧、体温、室内温湿度、是否失禁等周围环境的数据采集,然后设置报警阈值,当某一环境数据超出阈值时会触发报警电路。同时嵌入式控制器会发送相应的信息,通过WiFi 通信模块传输给监护人。老人可以通过一键报警功能进行求助,并可以通过APP 对床铺进行调整。经过多次测试调试,该系统的性能稳定度高、价格费用低、实际应用性好,能够在多种场景下发挥作用,确认该系统实现了设计的要求和功能。