一种教学用蓝牙手环结构及其快速计步算法的设计
2019-03-04王彤
摘要:为了提升高职信息类专业的教学质量,创新实训载体,提出一种服务于职业教育的基于CC2541低功耗蓝牙芯片的智能可穿戴手环系统,并对于计步算法和噪声滤波算法进行了设计,同时利用蓝牙通信方式实现了与Android手机通信。通过开放协议,在手机端app发送指令,实现控制手环震动、同步时间、读取和设置计步数据、读取实时加速度传感器数据、创意性增加手环字符串显示等并在手机app端显示出来,在移动互联技术应用开发的教学领域具有一定推广价值。
关键词:职业教育;可穿戴手环;计步算法优化
中图分类号:TP319 文献标识码:A
文章编号:1009-3044(2019)34-0082-03
本文提出了以智能可穿戴设备为载体,以其承载的嵌入式、开放协议的软件分析与优化、应用层移动APP的开发为重点的实训教学模式并加以实践,力求使学生在掌握移动应用开发的技能的同时,又具备一定的产品设计概念,从而增强学生在职场上的竞争力,创新出一种新的实训教学模式。智能手环是智能可穿戴设备的典型产品,考虑到职业教育的特点,提出了一种低成本、低功耗、以CC4521蓝牙芯片和意法半导体llis3dh传感器模块为核心的蓝牙教学手环,同时在嵌入层代码开放协议,使学生可以通過手机APP控制手环的绝大部分功能,提升学生兴趣和教学质量。
1 手环结构图
结合本教学手环的功能要求,该系统的整体架构如图1所示。
可以从图中看出其中比较耗电的是LED模块及马达模块。
2 蓝牙模块
蓝牙模块结合系统的低功耗需求,选择德州仪器TI的CC2541芯片。该型号是一款低功耗以及2.4GHz的功率优化片载系统解决方案[1]。具有出色的RF收发器,内核是可编程的8051MCU、具有8KB容量大小的RAM相连,从而使其具有功能强大、低功耗等特点。其结构如图2所示。
3 加速度传感器模块
选用意法半导体llis3dh三轴高分辨率加速度计芯片。该芯片能够测量加速度的输出数据速率为3.125Hz-1.6kHz。支持nciSPI数字输出接口,宽电源电压1.71V-3.6V。如图3所示。
4 计步算法及其优化设计
使用嵌入式集成软件环境IAR Embedded Workbench,它提供了一个框架,并适用于大量8位、16位以及32位的微处理器和微控制器,它为用户提供一个易学和具有最大量代码继承能力的开发环境、对大多数和特殊目标的支持[2]。嵌入式IAREm-bedded Workbench有效提高了用户的工作效率,IAR集成了许多种处理器,在建立工程后必须对工程进行设置才能够开发出相应的程序。加载TI的BLE-CC254x-1.3.2蓝牙4.OBLE协议栈后,可以看到该框架的结构及本教学手环的底层程序,其中协议栈用于射频数据收发。应用程序用于用户的指令执行,本教学手环开发的应用程序主要为:
1)射频链路控制,控制蓝牙广播、连接和断开、数据收发等。
2)数据处理,对蓝牙射频从手机端接收的数据进行解析和处理,执行相应指令,如马达震动、屏幕显示等。
3)手环功能支持,如读取传感器数值、刷新屏幕显示、电量管理等。
其中saAcceIMeter.c文件是三轴加速度应用程序,计算步数的基本原理是:当人体行走时,垂直加速度与水平加速度呈周期性变化。迈步时,垂直加速度减小,水平加速度增加。收脚时,垂直加速度增加,水平加速度减小。匀速跑步理想状态下垂直加速度和前进加速度与时间大致是一个正弦曲线[3],且在某一点有一个峰值,其中垂直方向的加速度变化最大,以上是一种人体运动的理想状态,如图5所示:
但是针对手环设备,运动方向不是只有两个方向,现采用x-y-z三轴加速度测量方法解决手环设备的计步功能,方法是:
1)记录x-y-z三个方向的运动矢量长度,形成一条运动曲线。
2)均值滤波去干扰,然后选取计算轴,然后判断是否大于阈值,小于阈值,则返回重新获取加速度。大于阂值则判断时间窗,如果在时间窗外,则返回重新获取加速度。如果在时间窗内,则步数加1。
3)更新阈值,以防人为或者不合法运动步数的累计。比如人体最快跑步频率为SHz,则两步之间的时间间隔大于0.2s,可去高频步数。
4)判断电量,如果电量低,则程序结束,否则返回重新获取加速度。
整个计步及滤波的流程如图6所示:
考虑到职业教育的教学对象和教学效果,本手环在计步去干扰时采用了响应最快的均值滤波,其原理是对待处理的当前像素,选择一个模板,该模板为其邻近的若干个像素组成,用模板的均值来替代原像素的值的方法[4-5]。
此算法去除干扰信号使用均值滤波,优点是简洁有效,适用于运动幅度变化较为剧烈的场景,比如从快跑变成慢跑等情况,计算步频的阈值只与上次运动数据的特征(极值)有关,而与之前的运动数据特征无关,相较于常见的运动手环而言,采取开放协议,使所有手环硬件的功能都可以通过手机APP来控制,而一般能够与手机APP互动的商业手环最多设置1-2个控制功能。
5 系统测试
为验证该手环设计方案的准确性,选6人对其在1分钟内的步数进行统计,得到如表1所示的测试结果。
通过利用Android应用开发技术进行开发,可以得到如图8所示的APP开发界面及运动曲线图。
6 结束语
该手环设计以提高学生开发app的兴趣为目的,由此设计如下特色功能。
1)控制协议开放,可以通过编写手机app,发送指令,实现控制手环震动、同步时间、读取和设置计步数据、读取实时加速度传感器数据、重命名手环等功能。
2)创意性增加字符串显示。可通过app发送任意字符串,显示在手环屏幕上,且可设置多种文字滚屏方式。
3)图形显示,通过app发送图片至手环,显示在手环屏幕上,手环更具个性化。
通过以上特色功能,学生可以自行编程,读取手环数据和控制手环显示,通过程序个性化设置自己的手环,熟悉手机蓝牙4.0的应用开发的同时,直接看到自己app作品的蓝牙控制效果,学有所用,真正体会到物联网中万物互联、无线控制的乐趣。
参考文献:
[1]钟晨.基于单片机技术的可穿戴智能手环设计[J].微处理机,2017,38(3):75-78.
[2] IAR Systems; IAR Embedded Workbench Supports RenesasGraphics Library for Automotive Instrument Cluster Develop-ment[J]. Electronics Business Journal,2016.
[3] Tencent CDC[EB/OL]. https://cdc.tencent.com/2013/07/26.
[4]彭姝姝,基于均值滤波和小波变换的图像去噪[J].现代计算机,2019(12):62-67.
[5]陈银溢.基于CC2541和LIS3DSH的计步器设计[J].机械工程与自动化,2014(6):96-98.
【通联编辑:梁书】
收稿日期:2019-09-26
作者简介:王彤(1968-),男,陕西安康人,副教授,工程硕士,主要研究方向为软件技术、专项信息系统开发、数字图像处理及模式识别领域。