Micro:bit 20 心率计数
2017-10-041.8万
AI 快速预览详细
本项目介绍了如何使用Micro:bit和BOSON造物粒子心率传感器实现自动心率计数。心率传感器采用PPG光电容积脉搏波描记法测量心率,模块直接兼容Arduino主控器。项目中使用了两块Micro:bit板子,一块用于检测记录心率,另一块用于无线连接显示结果。通过编程实现了自动计数功能,解决了手动计数的痛点。该项目适用于STEM教育场景,适合青少年科创比赛。
|
Ash腻大师漂来的BOSON造物粒子micro:bit扩展包中有一个很好的东东,心率传感器。 这东东不常见,还挺贵,要好好用用。 我想做个心率计数器,自动计数,不用按脉搏数心跳次数,是不是很牛逼。 查下心率传感器的资料:https://www.dfrobot.com.cn/goods-1339.html DFRobot正式推出超小型心率传感器,只有拇指大小,却可以检测人体心率变化。 模块直接兼容Arduino主控器,自带Gravity 3-Pin接口,即插即用,使用非常便利。传感器采用PPG光电容积脉搏波描记法(PhotoPlethysmoGraphy)测量心率。这是一种低成本光学技术,通过检测皮下毛细血管内的血氧量变化量来检测对应的人体心率。该技术拥有响应性快,性能稳定,适应性强等特点。 传感器配有两个安装孔,可以佩戴于手指,手腕,耳垂等皮肤直接接触处。 模块拥有方波和脉搏波两种信号输出模式,可以通过板载开关去自由切换输出信号。脉搏波将输出一个连续的心率波形,而方波将根据心率的变化输出对应的方波。
编程中却是遇到难题,我们在群中有过热烈的讨论。狄老师把讨论过程和他的探索都写在他的帖子里了,感兴趣可以移步趣玩DF Boson Micro:bit造物粒子之心率传感器 https://mc.dfrobot.com.cn/forum.php?mod=viewthread&tid=28169&fromuid=727937。 我也想寻求更好的方案,在群里请教了不少老师,韩强老师,红棉曾老师等等都给出过很好的建议。正如狄老师所探究的,心率传感器会输出一长串的1和0。 如何滤波呢,狄老师用了延时,我想用除法,编程计出1的数目然后除以它,在米思齐显示那长长的一串0和1来,数一数,不过不同的人数目是不同的,同一个人心率也在变化的,这个0和1的数目不能确定,只是一个参考。还是不精确。 后来在群中讨论,韩老师提供了很多资料和建议。 ![]() 于是,我开始大胆尝试。中间遇到的曲折不一一描述,最后得到了了一个挺简单的程序。 为了记录和和反复显示一分钟计时结束时心跳次数,我用一块(A板)检测记录心率,第二块(B板)无线连接,两块板子就是好玩。 A板程序。 开机时,设置分组1。 ![]() 心率传感接P1,因为心率检测输出稳定方波信号要有一段时间,所等一会再按A按钮开始计时计数。60秒后,发送数字,并显示。 ![]() 计数程序。 ![]() B板程序。 ![]() ![]() ![]() 不有很多不完善的地方,发群里讨论,听听大家的建议。 例如不能自动选择时机计时,程序的计时器功能还没找到等等。 |











你应该是做了什么计算样的东西吧
在您发的这个程序里我发现了一个问题,按键A、B的按下后的处理程序里的延时程序不占用CPU,也就是说不影响无限循环里的程序的运行。很有意思
请指导。
这是一个利用计时器 每隔五秒跳一下心脏的代码