(1)作品名称:基于MAX32630FTHR板和MAX30102的心率血氧手环设计
(2)作品实现功能简介:物联网时代来临,可穿戴设备兴起。人体生理信号检测是可穿戴设备的一项主要功能。本创意采用maxim公司的心率血氧传感器MAX30102,并将其与MAX32630FTHR进行结合,打造一个具有心率血氧检测功能的监测手环。同时利用MAX32630FTHR板自身带有的蓝牙模块和mirco SD接口实现心率血氧数据的在线传输和离线储存功能。
(3)原理图:
MAX30102传感器的原理图
整体硬件连接图
(4)软硬件设计思路:
硬件思路:首先设计了MAX30102芯片的外围电路,其中I2C总线的上拉电压要注意,不然会出现电压电平不兼容通信不成功的现象。然后 MAX30102模块连接MAX32630FTHR板的I2C接口,蓝牙模块XM-26B连接MAX32630FTHR板的UART口,TF卡插入板上自带的TF卡槽。除了MAX30102模块需要制作焊接外,其余部分只需要连线就可以了。
软件思路:软件分为下位机程序(MAX32630FTHR板)和上位机程序(安卓APP)
下位机流程图:
下位机程序在MBED平台完成。
上位机流程图:
为了防止蓝牙数据拥堵,手机端使用一个定时器,每200ms发起一次通信请求,用”S”表示,然后接受蓝牙设备(MAX32630FTHR板)返回的心率和血氧数值,并在APP上显示出来。
上位机APP编程使用APP INVENTOR 2完成。
(5)相关分享帖集锦:【汇集您在大赛制作过程中在论坛分享的相关帖子】
MAX32630FTHR板的学习(一):上手
MAX32630FTHR板的学习(二):AD测量和心率传感器pulsesensor使用
MAX32630FTHR板的学习(三):MAX30102的初步使用及心率、血氧的测量原理
MAX32630FTHR板的学习(四):使用MAX30102进行心率和血氧测量
MAX32630FTHR板的学习(五):心率和血氧数据的SD卡储存
MAX32630FTHR板的学习(六):心率和血氧数据的蓝牙传输
MAX32630FTHR板的学习(七):手机APP编程
(6)作品的源代码:
下位机MBD
程序(安装美信PACK
包的情况下可使用KEIL
打开):
(8)作品总结和展望:
总结:
1. 本作品实现了所有预定目标,验证了方案的可行性,每一步的具体实现细节都包含在了七篇分享贴中。美中不足的一点是蓝牙功能的实现没有使用板上自带的蓝牙双模模块,而是外加的蓝牙串口。关于这个问题和坛友的讨论在帖子六中有所涉及。
2. 本次的下位机编程完全是在MBED平台下完成的,又一次加深了对其的理解。MBED的优点用一个字就可以概括,那就是“快”。只要你手上的板子支持MBED,那你可以马上进行原型设计了。不需要安装特定开发环境,有浏览器就够了。不需要一点一点的找datasheet里的寄存器配置,一条语句就完成了。不需要自己去写USB,SD,UART,SPI,I2C的底层驱动了,添加一个库就完成了。不需要自己去费力考虑程序移植的兼容性,直接COPY就可以了。这些都是由于MBED对底层做了统一的封装,我们可以脱离芯片特定的IDE,用一样的函数接口,方便的移植程序,添加丰富的官方库和第三方库。当然,MBED的缺点也很明显,不能在线仿真调试(这个是硬伤),错误难以定位,代码编译效率低,一些第三方库不可靠等。所以,我们要学会扬长避短。如果需要快速拿出系统原型,比如参加比赛、项目演示、原型机展示、个人DIY这类的,那么我建议充分利用MBED平台。如果是做量产的产品,那还是老实用芯片厂商的IDE吧。
展望:
1. 本次作品实现的是一个传统的人体生理信号监护记录功能,说是手环,其实仅仅测的是手指信号。手腕上的信号要比手指弱的多,想要准确获得,有一定难度。不过MAX30102本身的性能并没有发挥完全,比如说针对手腕信号可以加大LED电流,增大光强获得更强的PPG信号,但是这样也会放大噪声,如果去噪也是一个需要解决的问题。此外,还可以结合MAX32630FTHR板上的六轴传感器,做一下运动和步数监控,更全面监控人体健康。
2. 之前在美信官网查资料的时候,看到了他们在耶鲁大学承办的一个骇客马拉松比赛。其中得大奖的一组学生,也是用的MAX32630FTHR板和MAX30102传感器做的一个锁屏软件。当码农长时间在电脑前工作不运动时,锁住屏幕,只有心率高于一定值后才可以解锁继续工作。那么怎么让心率提高?就是逼我们去运动呗!这个创意还是很赞的,东西虽然是同一套东西,但是玩法不一样。所以作为一个天朝的学生,我有个感慨,技术虽然不比外国学生差,但是差的就是脑袋上那灵光一现啊。