全刘辉 李玉香 澹台梦阳 胡腾达

摘要:水上乐园、江边、水库等大型游泳场所,常有客流量大或人流稀少的极端情况。虽然很多场所配备救生员,但也会出现不能及时准确发现溺水者并进行施救。针对以上现象,设计了一款基于无线通信的视觉识别自动救生系统。该系统手环部分以STM32微控制器为控制核心,使用MAX30102血氧心率集成芯片采集脉搏信号,经STM32主控芯片预处理和特征提取,计算当前的心率,从而判断佩戴者是否遇险。此外,手环采用无线充电方式,在报警的同时自动打开救生气囊,为救援争取宝贵时间;无线通信部分使用ZigBee将手环的报警数据传输到上位机,救生筏接收到数据后通过视觉识别等方法进行快速定位并迅速展开救援。解决了传统人力监控因观察不到位、发现不及时而错过黄金救援时期的问题。大大降低了救援所需的时间,节省了人力和物力,保证了游泳者的生命安全。

关键词:防溺水;心率检测;无线通信;实时定位;无线充电

中图分类号:TP391      文献标识码:A

文章编号:1009-3044(2024)09-0096-03

开放科学(资源服务)标识码(OSID)

1 国内外研究现状

在国外,溺水检测研究已有40多年历史,从初步探索逐渐进入产品改进阶段,而我国在此领域的研究仍处于较初级阶段。早在1976年,美国就有了游泳池报警专利,但受当时技术限制,未得到广泛应用。2001年,法国公司推出了“海神号”系统,利用红外线及RGB相机定位游泳者,实现实时溺水检测,但由于维护成本高昂,难以普及[1]。

当前市场上的游泳辅助设备存在操作不便、携带笨重等问题,而智能化产品的智能程度有限,缺乏交互性[2]。本项目研发的手环便携、智能,通过无线通信技术实现线上和线下的交互,实时传输游泳者的心率信息,便于及时救援。北京工业大学闫峰老师采用高清防水摄像机进行图像处理来识别溺水现象,但成本高昂且误差大,例如水面晃动、水质混浊或人多遮挡时易导致漏报[3-4]。而本项目系统基于个人,不易受外界干扰。国内已有的泳帽传感器装置,通过信号强弱判断溺水,但无法定位溺水者,救援时仍存困难[5]。本系统不仅实现溺水报警,还能实时监控游泳者的身体状况,通过无线通信及时接收求救信号,提供精准救援。因此,本系统的研究对预防溺水事故具有重要意义。

2 总体设计方案

本系统以STM32系列单片机作为核心主控,建立起游泳者和施救系统之间的联系。整个系统由心率监测模块、无线充电模块、无线通信模块、物体识别模块、电机驱动模块等构成,系统模块框图如图1所示。系统通过手环对游泳者心率进行实时监测并判断是否溺水,从而实现应急情况下的自救以及及时向救生筏主节点报警。救生筏快速定位并迅速展开救援,解决了过去传统的人力监控可能出现的观察不到位、发现不及时而错过黄金救援时期的问题。这显着降低了救援所需的时间,节省了人力和物力,确保了游泳者的生命安全。

在游泳场所范围内,通过ZigBee节点的全覆盖实现设备间的互联。手环通过MAX30102血氧心率传感器采集佩戴者的心率数据,进而分析心率变化[6]。一旦遇到险情,如果佩戴者的心率异常触发了遇险条件,手环会自动弹开救生气囊,防止佩戴者下沉,为救援争取宝贵时间。此外,也可手动打开救生气囊。同时,主控芯片通过ZigBee向主节点发送求救信号,在弹开救生气囊的同时,救生筏接收到信号后启动系统,机器视觉模块进行识别锁定,并将数据传输给救生筏。救生筏通过控制舵机转动来实现移动和转向。

3 硬件部分

3.1 心率检测

系统的心率检测采用MAX30102传感器,它是一款集成了高灵敏度心率脉搏检测的传感模块。心率检测采用的是动脉血压法,该方法的原理是心脏的收缩与舒张会引起血液呈脉动流动,同时血管的压力也会产生变化。传感器在采样时,发射区的红外光经过血液反射后返回接收区,接收到的数值通过光电转换器计算出心率以及血氧饱和度。当接收到的信号为峰值时,表示心脏收缩,血管压力增大;反之,心脏舒张,血管压力减小。

人体在正常情况下的心率范围为60~100次/分钟,正常游泳情况下为120~130次/分钟,而受到惊吓时可达到180~200次/分钟。根据以上几点,本研究将心率异常情况定义为持续时间超过一定阈值的情况,其中正常范围为55~160次/分钟,超过160次/分钟或低于50次/分钟则属于异常情况,可能意味着溺水等危险状态。心率异常持续时间统计如表1所示。

3.2 无线通信及定位

系统选用ZigBee(低速短距离无线通信技术)作为传输媒介,主要工作频段在2.4GHz,可配置点对点或广播工作模式,与上位机实现无线数据交互,还支持不间断发送,不限包长且传输速度快,最高能达到3 300bps。为了定位更准确,将ZigBee与GPS结合,提供更实时和精确的坐标位置。GPS接收模块通过串口与主控芯片进行数据交互,只需在解析数据时提取GPS接收的冗余信息。在初始化时,通过MCU发送相关配置指令进行第一轮筛选,只保留 GPRMC 语句,其中包含 UTC 时间、定位状态、经纬度信息、磁偏角、模式指示等;然后进行时间和经纬度的第二轮筛选,进一步减少冗余数据,也节省了发送成本,提高数据传输效率。

3.3 视觉识别及定位

采用OpenMV进行视觉识别辅助定位,系统接收到报警后,OpenMV摄像头启动,识别救生气囊的颜色和位置,并将坐标数据传输给救生筏。为了提高识别准确性,需要对救生气囊在水下的各种状态进行学习,使定位更加精准。摄像头向主控传输的数据帧头使用“0x2c”标识,帧尾使用“0x5b”标识,编号长度根据实际情况进行调节。

3.4 系统报警及救生设备

救生筏在接收到报警时,采用蜂鸣器和LED灯闪烁的方式表示接收到的报警信号。救生筏的推进器通过单片机发送PWM信号控制电机转动,其电调的PWM频率为50Hz,脉宽范围是800~2 200us,将脉宽调至1 500~2 200us时为正转,1 200~800us时为反转。

3.5 救生系统的防水保护

由于救生装置使用场景为水中,需要对设备进行防水处理。为了满足水上作业的需求,将系统的电池和电路板封装在防水外壳内,对边缘等部位进行灌胶密封处理,以确保更好的防水密封性。

3.6 电池的续航

为解决系统封装后电池充电问题,采用无线充电方式对电池进行充电,实现电池的循环利用。系统将无线充电装置作为发射端,手环作为接收端,利用磁通量变化产生感应电动势的原理,在发射端直流电经过无线充电的主控芯片、全桥芯片、谐振电容、线圈等组成的LC谐振电路后,将直流电转变为交流电,交流电施加至线圈产生交变电压从而产生交变磁场。在接收端靠近时会产生一个同频率的交变电压,交流电经过整流滤波后变成直流电,最终输出到电池完成充电。为了减少能量的损耗,手环的感应线圈紧贴于内壁。利用无线充电方法,免去了拆开装置的烦琐步骤,也提高了设备的防水性能。

4 软件部分

本系统采用IAR集成开发环境,OpenMVIDE编写软件对各个模块进行代码编写,以STM32作为主控,结合心率传感器、OpenMV摄像头、ZigBee、蜂鸣器、LED灯、水下推进器等实现救援任务[7]。手环检测到心率异常后报警,打开救生气囊并发送求救信号,求救信号通过ZigBee将GPS定位数据传输到救生筏,救生筏根据GPS定位信息驱动推进器使之靠近溺水者,OpenMV使救生筏更精确地定位到达求救者附近。硬件程序设计分为主程序、心率采集程序、GPS定位程序、OpenMV图像识别定位程序、推进器驱动程序等模块。

5 测试结果与分析

为了检测系统的测量准确性,对系统的心率检测进行不同状态下的测试,获得准确的心率阈值。具体测试结果如表2~4所示。测试类型包括游泳者在水下静止或运动量较小情况下的测试、在水下剧烈运动情况下的测试以及不会游泳者在水下受惊吓时的测试。根据测试数据推断出不同情况下游泳者在水下活动的心率状态,从而推断出较合适的阈值,以此确定心率异常的阈值范围,从而设计系统的心率检测阈值设计在55~160次/分钟为正常情况,大于160次/分钟或小于50次/分钟为异常情况[8]。

6 结论

救生手环能够实时监测佩戴者的心率。一旦检测到心率超出安全范围,即判定佩戴者遇险。在遇险时,手环会立即发出求救信号,并自动展开救生气囊,确保佩戴者不会因溺水而下沉。同时,通过ZigBee技术将遇险数据传输给救生筏,而GPS则对溺水者进行初步定位。当救生筏靠近溺水者时,OpenMV会进行精确的定位。接收到数据后,救生筏会启动报警装置,并控制推进器运转,迅速展开营救。此外,手环采用无线充电设计,不仅免去了拆解装置的烦琐,也进一步增强了设备的防水性能,确保在紧急情况下能够可靠工作。

参考文献:

[1] 乔羽.基于Mask R-CNN泳池中溺水行为检测系统的设计与实现[D].青岛:青岛大学,2019.

[2] 邱睿,闻宇欣,张鹏,等.基于单片机的智能防溺水背心[J].电动工具,2019(3):7-10.

[3] 闫峰.基于泳池报警系统的三维重建[D].北京:北京工业大学,2009.

[4] 戴路.基于ZigBee的泳池安全监控系统设计[D].福州:福州大学,2013.

[5] 黄家莹,詹杰.基于ZigBee无线定位的游泳池溺水自动报警系统[J].科学技术创新,2019(13):69-72.

[6] 何向阳,刘彬.基于物联网技术的智能防溺水系统设计与实现[J].电子制作,2023,31(21):93-96.

[7] 贾双英,杨淳乐.基于OpenCV和CNN的儿童防溺水测试研究[J].电脑与电信,2023(8):85-89.

[8] 谢江娜,刘利秋,赵佳琳,等.便携式泳池防溺水警报与生理健康状态评估系统设计[J].电子产品世界,2023,30(3):19-23.

【通联编辑:谢媛媛】