基于嵌入式的智能手表设计
扫描二维码
随时随地手机看文章
引 言
随着移动设备技术的日益发展,可穿戴设备愈加受到重视。可穿戴设备具有各种类的产品形态,可佩戴于人体的多个部位,比如服饰、手表、眼镜、手环、饰品等。而可穿戴电子外套也正在研发,随着日后研发的深入,嵌入到人体皮肤内的电子文身、佩戴的眼镜都有机会用到可穿戴技术。得益于各种新技术的发展,可穿戴设备将愈发不被人感知,将以更加自然的状态进行数据搜集,为用户更好的提供服务。
智能手表是可穿戴设备最重要的发展方向之一,它是一种内置操作系统,具有手机来电、短信提醒、释放音乐等功能, 并且可以配备各种传感器的手表形态的智能穿戴设备。
1 系统设计
本系统包含硬件工作系统与软件功能系统,其中硬件系统包含MCU(STM32) 主控模块、电源供电充电模块、蓝牙模块、陀螺仪MPU6050 模块等。软件系统则包含下位机嵌入式软件程序与上位机( 安卓App) 软件程序。图1 所示为系统组成框图。
2 功能实现
本次设计的智能手表主要实现以下几个功能:
(1) 时间功能。具有 RTC实时时钟功能,可以通过手表看时间。
(2) 手势识别。加入手势识别功能,当人的手臂抬起时屏幕会自动变亮,而放下时则自动熄灭。
(3) 计步器。通过陀螺仪MPU6050与滤波、计步算法得出较为准确的步数,同时算出距离与消耗的卡路里。
(4) 蓝牙通信。手表与安卓手机通过蓝牙进行双向通信。在安卓手机上编写App应用软件,该 App软件里包含 3个小功能单元,可以分别实现来电短信提醒的手机助手功能、防丢功能以及在发生危险情况时可通过按下手表按键的方式向指定的手机号发送实时更新的定位信息功能。
3 硬件设计
硬件框图如图 2 所示。硬件组成框图主要介绍了智能手表的硬件系统基本构成,包括基于 Cortex_M3 架构的意法半导体的 CPU 芯片 STM32F103ZET6 的 STM32 最小系统、电源模块、3.2 寸液晶触摸屏、陀螺仪以及蓝牙模块。
4 嵌入式软件设计
软件设计包含了 C/OS-III 实时操作系统的移植、应用程序的界面设计、STM32 嵌入式软件设计以及安卓 App 的相关设计等内容。其中还有系统运行流程、计步器算法、与手机蓝牙通信以及手势识别等部分。嵌入式软件框图如图 3 所示。
5 安卓 App设计
App 界面运用WindowsPhone 的经典风格,整体以方块形式出现,界面简洁清爽,内含必要的提示信息。App 主要实现手机助手、防丢功能以及安全卫士三种功能。
5.1 蓝牙通信
利用 蓝牙 技术能够有效简化移动通信终端设备之间的通信。从智能手表与手机终端通信的短距离和简易性考虑, 我们选择蓝牙通信方式。主要处理以下内容:
(1) 蓝牙连接线程。
(2) 蓝牙连接与断开广播,在重写的方法里做特定处理。
(3) 呼吸监测 代码,由于手表端较难检测蓝牙是否断开,所以我们采用一种特殊的方式,一旦蓝牙连接上,便向下位机以一定频率发送特定字符,当下位机收到字符信息时代表蓝牙连接,一旦无法接收到字符则代表蓝牙断开。
5.2 GPS定位
现在的安卓智能手机大多带有GPS 模块,通过 GPS 我们可以获取当前位置。这个功能主要用于发生危情时能将带有当前位置与地图的信息发出,对于得到及时援救有重要作用。主要处理以下内容:
(1) 实例化 LocationManager打开 GPS。
(2) 获得最佳搜索条件。
(3) 获取最后获得的位置。
(4) 请求实时更新 Location数据。
5.3 短信和来电提示
采用广播方式检测新的短信和来电,采用监听数据库的方法来判断短信和来电是否已读。主要步骤如下: