APP下载

基于移动端控制的智能眼部按摩仪

2023-06-09王红娟陶叶谭博武周婕穆天宇李俊祥

电子制作 2023年8期
关键词:眼部气压蓝牙

王红娟,陶叶,谭博武,周婕,穆天宇,李俊祥

(湖南工业大学,湖南株洲,412007)

0 引言

现代科技为我们带来生活便利的同时也对我们的身体素质造成相对的影响,其中电子产品对眼部的伤害较大。据相关数据显示,2021 年我国近视患者达6 亿,青少年总体近视率为53.6%,位居世界第一。受疫情影响,2021 年儿童青少年近视率与高度近视比例呈上升趋势。为此项目拟设计一款可有效缓解眼部疲劳预防青少年近视的多功能智能眼部按摩仪,可通过客户端App 人为选定工作模式或各模块的工作参数等,实现多模式、多功能、自定义等整体运行操作,达到有效缓解用户眼部疲劳、肌肉放松等效果[1~2]。

1 系统总体硬件设计

智能眼部按摩仪以STM32 为核心,对其他各模块进行控制。并且通过蓝牙连接手机App,通过手机App 对STM32 进行控制。最后实现可以通过手机App 对智能眼部按摩仪进行温度气压等的参数控制的功能。

■1.1 总体方案描述

该系统由STM32、电源控制模块、温度控制模块、气压控制模块、电机控制模块、音乐控制模块手机App 构成。使用时,用户可在手机App 上下发指令,在设备与手机通过蓝牙连接后,传输至按摩仪,并通过STM32 对各模块进行控制。

■1.2 各模块的选择

1.2.1 STM32 单片机控制系统模块

考虑到载体的集成度,单片机采用STM32 系列,主要实现输入信号数据的分析与处理,并输出相应的指令,实现多模块指令协调与多模块控制。

1.2.2 温度控制模块

主要由温度传感器和石墨烯电热膜构成,本项目选择Pt100+AD623。在测量温度方面,接触式温度传感器所测量出的温度更为精确,更能满足人体所需的细微温度变化。

在硬件之间的协调方面,单片机引脚与温度传感器直接相连,与石墨烯电热膜需通过MOS 管开关电路进行连接。在通入电流后,石墨烯电热膜发热,温度传感器获取囊内温度信息并将此信息以电信号的形式传入单片机,而单片机会根据判断该温度是否合理。而如果用户在App 中做出温度改变,单片机在获取指令后也会对石墨烯电热膜做出相应指令来调节温度。

1.2.3 气压控制模块

该部分包括气压信号采集系统、气泵和叠加式气囊等。

首先是气压信号采集系统,该部分主要由压电式谐振筒气压传感器和单片机构成。

其次是气泵的选择,本项目选择型号为FM2002的微型气泵,该气泵完全可以满足该设备所需的抽气与加压,且功率适度,不会给电源造成太大的负担。

最后则是叠加式气囊的选择。本项目依据人体眼部具体的形状结构,设置了叠加式气囊的安放形式。

本项目拟采用电动机模块来实现多频振动按3 摩功能。电动式电动按摩器结构较为复杂,振动频率较高,约每分钟5000 ~10000 次,功 率 为5 ~8W。因 此更符合按摩仪的振动要求。由于电机所需功率较大,而电源无法提供其所需的电流,所以在此,本项目引入驱动以此来放大电源所提供的信号。

1.2.4 音乐控制模块

音频播放装置采用MP3 模块,这类模块使用简单、音质好,在高要求的语言提示及音乐播放场合使用广泛,MP3 模块提供了内置NAND FLASH,保证了没有插拔引起的问题;提供串口控制,使音频能够按照文件名播放,以及实现单次或循环播放等;提供USB 接口,用于更新语音或音乐;提供各种灵活的控制功能,如按时间播放、按列表播放等等。且串口MP3 模块为用户提供了便捷的使用环境,模块将FAT 文件系统、USB驱动、U 盘管理等等功能集于一身,对外提供串口控制。使用者只需要提供简单的串口指令,就可以方便地实现各种灵活的语音播放、控制。

1.2.5 电源控制模块

本项目中采用市场上通用的锂电池与电源管理器,这样使得无论在有无外界供电的情况下,电源都可以给各个硬件提供稳定的电能,确保眼部按摩仪都可以正常地工作。在电源开启的同时,显示灯点亮,且在显示灯上会显示当前锂电池所剩余的电量。当电量低于20%时,显示灯变红以说明需要充电。充电部分采用有线充电,接口为新型的Type-c 接口。

1.2.6 电机控制模块

电动机和单片机的引脚相连,电动机接收单片机引脚发出的信号调节转动频率,从而调节振动按摩的频率。在协调工作方面,在电动机接受单片机所发出的指令后,电动机主轴的转动通过联轴弹簧传到偏心轮上,偏心轮把电动机的旋转运动转化为往复运动,并把往复运动传给振动头,以此实现振动。用户可以在App 中在范围内调节振动频率,选择自己感觉最舒适的振动频率。在电路连接方面,电源先将电流输入驱动中放大,再输入电机中,从而启动运行电机。

2 系统总体软件设计

眼部按摩仪软件部分的任务是控制系统硬件部分使之完成既定的程序,并且作为App端与硬件层面的通信桥梁,将用户在App端进行的操作下达给硬件层执行,而将各硬件部分的状态返回给用户App 界面。系统软件设计包括蓝牙通信、温度控制、气压控制和振动电机控制四个部分。系统软件设计流程图如图2所示。

图3 石墨烯加热装置程序流程图

图4 App流程图

图5 主界面设置

■2.1 蓝牙通信

本系统采用蓝牙作为通信模块,蓝牙通信软件设计部分实现用户App端数据与按摩仪内单片机数据的交互。系统上电后进行蓝牙配对,配对成功后进行双向数据传输,当用户在App 内下达指令后,经蓝牙透传到单片机内,解析指令后判断接收到的是音乐数据还是模块控制信号。而关于眼部按摩仪设备内部则是通过蓝牙通信将App 内部数据进行分析、处理,同时将数据库系统的数据通过蓝牙通信进行读取反馈回App 中。若接收到的为音乐数据,则将其转为音乐对应的电平信号后使扬声器播放音乐;若接收到的为模块控制信号,则根据指令调度各模块按照编写的控制程序执行命令。

■2.2 温度控制

温度控制软件设计部分主要实现对眼部按摩仪热敷温度的控制,温度控制软件包括石墨烯加热装置软件设计和Pt100 温度传感器软件设计。单片机将温度设置信息转化为电平信号,而电平信号控制石墨烯加热装置进行温度升降,温度升降过程中传感器检测仪器内温度是否有超出限制,超出限制后进行合理地反馈调节。它可以实现的具体调温范围为30℃~42℃。开机后系统自动进入记忆模式,石墨烯发热装置将温度加热到上次保存的温度值,当用户更改参数设置后,程序判断温度当前值高于或低于设定值,若当前值高于设定值,则使加热装置进行降温调整,反之则使加热装置进行升温调整。

■2.3 气压控制

气压控制软件设计部分主要实现对眼部按摩仪气囊内压力的控制。开机后系统自动进入记忆模式,在客户端中选择相应的模式或自定义调控气压后,蓝牙接收App 所传输的信号并将此信号传入单片机,单片机根据上次保存的气压值控制气泵阀门开度大小,当用户更改参数设置后,程序判断气压当前值高于或低于设定值,若当前值高于设定值,则调节气泵的阀门开度减小以实现降低气囊气压的效果,反之则增大气泵的阀门开度以实现增大气囊气压的效果。计算机在通过大数据获取并保留用户所使用的气压信息,等到下次使用时,按摩仪会自动调到当前挡位。

■2.4 振动电机控制

振动电机控制软件设计部分主要实现对眼部按摩仪振动频率的控制。经初始化电机装置后,单片机获取电机所在接口的地址,将所获地址发送电机设置命令,随后根据按摩仪的具体需求选择合适的转速大小,电机转动带动振动装置振动,并将当前振动频率数据传输至单片机。在开机后,单片机会自动根据上次保存的振动频率值控制振动电机的振动频率,当用户更改参数设置后,程序判断当前振动频率值大于或小于设定值,若当前值大于设定值,则调节电机振动频率使振动频率变低,反之则调节电机振动频率使振动频率变高。

3 移动端APP 设计

■3.1 App端的开发

本APP 客户端的集成开发环境为Android studio3.1,使用Java 语言进行开发。整个App 客户端采用模块化设计,由模式选择、DIY 设置、播放音乐、分析报告、新手教程、蓝牙连接、疑难解答等模块组成。其中分析报告通过综合分析设备使用情况来进行展示,而新手教程和疑难解答模块则是由开发者编辑。

主界面是采用约束布局ConstraintLayout 来进行构建的。因为App 客户端主界面的小部件比较多,而约束布局ConstraintLayout 是一个视图容器组件,可以在API9 以上的Android 系统使用它,它的出现主要是为了解决布局嵌套过多的问题,以灵活的方式定位和调整小部件。因此,采用约束ConstraintLayout 可以节约开发成本,且更为美观[3~6]。

其他界面则是根据需求,分别采用线性布局Linear-Layout 或LinearLayout 与ConstraintLayout 嵌 套 结 合 的方式来进行开发布局[7~9]。其中音乐列表界面采用Listview视图构建。

■3.2 App 客户端的具体实现

3.2.1 主界面模块

在客户端安装之后,启动时,系统会先获取设备的唯一标识码UUID 号,然后判断是否存在数据文件DIYdata.txt,如果不存在,系统会调用fileIsExists()函数以覆盖式MODE_PRIVATE 创建文件并存入初始数据。如果已经存在,则会调用fileNoExists()函数来判断文件中是否存在初始数据,不存在则会存入初始数据,用以防止用户误清文件数据[10~12]。

3.2.2 DIY 设置模块

DIY 设置采用SeekBar 来设置,温度区间设置为25℃~42℃,气压设置低、中、高三个等级,气囊的振动频率设置弱、中、强三个等级,时间可以设置0~30 分钟。

选择DIY 设置模块之后,系统会第一时间读取DIYdata.txt 文件中的数据,然后把数据传输到各个SeekBar 进度条上。每一项数据设置完之后,系统会将数据以覆盖的方式存入DIYdata.txt 文件,进行数据存档。

■3.3 蓝牙模块

用户进入客户端之后,进行模式选择以及DIY 设置的时候,系统会先判断手机是否满足android4.3 以上版本,再判断手机是否开启蓝牙。如果没有开启,系统会弹出一个dialog 提示框,提醒用户开启手机蓝牙。

系统会通过startLeScan()进行BLE 蓝牙的扫描,然后对其扫描结果进行回调。扫描到目标设备之后,开始建立连接,当连接成功时,需要调用discoverServices()去获取服务(Service)[13~14]。

发现系统服务(Service)之后,还需要获取特定服务特性(Characteristic)及读写特征才能进行数据通讯。读特征要通过setCharacteristicNotification()设置打开通知,这样才能接收到消息[15]。

接收到数据后,系统会通过对比Characteristic 将数据发送到客户端各个数据处理函数去。

4 结论

本论文研究了智能眼部按摩仪的构造,各部分运作的原理,以及App的部分设计。经过大量实验证实,该眼部按摩仪可以实现通过App 进行温度气压等量的调控和蓝牙播放功能。

猜你喜欢

眼部气压蓝牙
蓝牙音箱的直线之美
看不见的气压
压力容器气压端盖注射模设计
简单、易用,可玩性强Q AcousticsBT3蓝牙音箱
适合自己的才是最好的 德生(TECSUN) BT-50蓝牙耳机放大器
为什么要做眼部检查
紧急:蓝牙指尖陀螺自燃!安全隐患频出
戴眼罩有助消除眼部疲劳
如何消除用电脑后的眼部疲劳
电渗—堆载联合气压劈烈的室内模型试验