复杂环境下基于卫星定位的智能救生衣设计

    王馨盛 周桃云 杨柯

    

    

    

    【摘 ?要】为实现对海上遇难人员的快速搜救,论文以STM32单片机为控制中心,利用卫星定位模块、LoRa模块设计了一套具有定位和求救功能的智能救生系统。该系统分为客户端、服务端和手机终端三个部分。在大海深处复杂的外部环境下,客户端救生衣一旦启用,其能够将自身的位置信息通过LoRa通信模块以信号的形式及时发送出去。

    【Abstract】In order to realize the rapid search and rescue of the victims at sea, this paper designs a set of intelligent life-saving system with the functions of positioning and calling for help by using the STM32 MCU as the control center, using the satellite positioning module and Lora module. The system is divided into three parts: client, server and mobile terminal. In the complex external environment of the deep sea, once the life jacket of the client is enabled, it can send its own location information in the form of signal through the LoRa communication module in time.

    【关键词】STM32单片机;卫星定位;LoRa通信;智能救生衣

    【Keywords】STM32 MCU; satellite positioning; LoRa communication; intelligent life jacket

    【中图分类号】TS941.73 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 【文献标志码】A ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 【文章编号】1673-1069(2020)09-0170-02

    1 引言

    目前,在海洋科考探险活动中,突发状况下的紧急求救手段比较匮乏,救生衣成为出海人员必备的物品之一。但现有的救生衣存在很多问题,由于救生衣问题而导致的救人失败或救援人员伤亡的案例时有发生,所以设计一款适用于复杂环境并基于卫星定位的智能救生衣势在必行[1,2]。

    2 智能救生衣的总体设计方案A

    本文设计的智能救生衣由客户端(救生衣)、服务端(救援设备)和手机终端三个部分构成。在大海深处复杂的外部环境下,客户端救生衣一旦启用,能够通过LoRa通信模块及时将位置信号发送出来。救援人员所在的服务端通过LoRa模块接收求救者的位置信号之后,将救援人员的位置信息发送到救援人员的手机终端,手机终端将该位置信息在手机的卫星导航定位系统中定位出来,救援人员根据导航路线迅速找到被困者。

    客户端:以STM32单片机为核心,采用GPS模块获取位置信息,通过LoRa模块无线透传,搭配指示灯、语音播放模块、紧急救援按键。

    服务端:以STM32单片机为核心,集成显示屏,蓝牙和LoRa无线透传模块接收位置信息。

    手机终端:在手机Android系统上制作一款APP,在该APP上根据求救位置信息在卫星导航系统上制定搜救路线。

    具体的硬件系统结构图如图1所示。

    2.1 客户端的电路设计

    客户端的电路原理如图2所示。

    电源输出12V电压经降压模块降成5V,连接开关,连接电源指示灯,随后与单片机相连,单片机PB10、PB11与GPS的RXD、TXD相连,PA6、PA7、PA9、PA10与LoRa的M0、M1、RX、TX相连,PA8接救援指引灯,PA1接紧急救援开关,PA4接救援指引灯,PA5接语音播放模块。

    2.2 服务端的电路设计

    服务端的电路原理图如图3所示。

    電源经过降压模块与电源指示灯相连,随后与单片机相连,单片机USART3与LoRa1相连,USART4与GPS相连,USART2与蓝牙相连。

    3 智能救生衣的软件设计

    3.1 客户端的程序设计

    客户端的程序设计流程如图4所示。

    救生衣开始工作,初始化各个模块,先判断急救开关是否打开,如果打开则切换成紧急救援信道,没有打开则切换成默认信道,随后读取位置信息,接着检测服务端位置,成功接收则发送自己的位置信息,然后判断距离是否小于100m,小于则打开救援指引灯,并开启语音播报,救援成功则关闭救生衣,未检测到服务端位置则发送自己的位置信息,延时1s后从救援开关是否打开开始判断。

    3.2 服务端的程序设计

    服务端的程序设计流程如图5所示。

    搜救设备开始工作,各个模块初始化,判断是否接收到遇难者位置信息,接收成功则在LCD显示,随后广播自己的位置信息,再向手机端发送信息,全部救援成功则结束本次救援,否则重新接收遇难者的位置信息。

    3.3 手机终端的程序设计

    手机终端的程序设计流程如图6所示。

    打开APP,随后进行蓝牙扫描,未扫描到客户端则继续扫描,扫描到客户端蓝牙则开启新线程处理相关数据,配对该蓝牙并建立socket连接,跳转到视图界面,随后阻塞等待接收数据,未接收到数据则继续等待,接收到数据则进行数据处理并计算相对距离,最后在页面上以地图形式呈现目标的相关信息。

    【参考文献】

    【1】赵轶惠,傅建桥,薛林.消防专用救生衣的研制[C]//2011中国消防协会科学技术年会论文集.北京:中国科学技术出版社,2011.

    【2】刘诗涵,胡立夫,赵秀娟.基于卫星定位的智能水上救生衣系统设计[J].工业仪表与自动化装置,2019(3):24-27+39.