合宙Air700E开发板+毫米波雷达,手搓一个开箱即用的睡眠监测仪不是梦!
今天特别分享@zomco大佬的“基于毫米波雷达的睡眠监测仪”作品,感兴趣的朋友请戳文末“阅读原文”下载最新资料。
1
项目原理及硬件制作
毫米波是指频率范围从30-300GHz的电磁波,它的波长很短,雷达发射的毫米波会随人体反射回来,同时人体微小的移动会改变毫米波。有了这些变化,雷达可以计算出人体移动的距离速度以及方向。
- 项目原理-
毫米波雷达测人体胸腔起伏,根据起伏计算心率和呼吸频率,然后通过算法推算睡眠状态,使用手机小程序读取和展示数据。
相比市面上的手环,毫米波雷达无需佩戴即可实现无感体验的隐形监测。
- 主要物料 -
本文睡眠监测仪主要硬件物料包含:毫米波雷达R60ABD1、合宙Air700E开发板、传感器(AHT20、BH1750等等)、底板和外壳。除了底板需要打板和外壳需要3D打印,其他零件都可以在网上购买组装。
01. 毫米波雷达R60ABD1:
常见的毫米波雷达有24/60/77GHz三种,原理上频率越高,雷达感知的微动幅度越小。这款60GHz自带睡眠监测功能的毫米波雷达,它很接近我的想法。
02. 合宙Air700E开发板:
按照以往经验,睡眠监测仪最简单直接的做法是,找一块开发板连上雷达串口,将雷达数据通过蓝牙转发出去,客户端通过蓝牙读取雷达数据,然后展示出来。
但为了让家里的老人也能用,我打算加上远程看护的功能,所以这里要改用可以Wi-Fi或者4G通信的开发板,还要部署一套存放和查询数据的后端服务。
虽然我对开发板选型没有任何偏好,但觉得有必要把吃灰的羊毛利用起来——半年前9块9包邮的合宙Air700E开发板不仅性价比高,而且可以用Lua写嵌入式,特别适合。
03. 自制底板(可选):
自制的底板用于整合Air700E开发板、毫米波雷达R60ABD1和其他传感器(AHT20、BH1750等等)。
所以其实即使没有底板,用杜邦线连接它们,然后刷入固件,也可以在小程序验证毫米波雷达的睡眠监测能力。不过为了避免验证过程中发生各种问题,我还是建议用底板验证。
04. 自制外壳(可选):
设计外壳时,要注意到雷达的距离最好是半波长的整数倍;加上USB口和按键,硬件图形就出来了。为了方便调试,外壳保留了开发板上的开机键和关机键。
- 硬件组装 -
拿到板子开始组装,先焊接元器件和Air700E开发板,再装雷达。可以看到堆叠后雷达和Air700E开发板还有一点点距离,雷达性能应该不会有太大影响。
安装外壳也是很简单,几乎不可能犯错。上好螺丝之后,测试一下按键有没有问题,到这里硬件算是完成了。
- 开源链接 -
目前基于毫米波雷达的睡眠监测仪项目硬件,已在立创平台开源。可通过原工程链接获取项目相关详细操作步骤、注意事项,以及原理图、PCB等最新文件:
原工程链接:
https://oshwhub.com/zomco/MR60LT0开源协议:
CERN Open Hardware License
2
功能实现及效果测试
合宙LuaTools工具下载:
https://wiki.luatos.com/pages/tools.html项目最新固件下载:
https://oshwhub.com/zomco/MR60LT0
- 功能实现 -
项目代码嵌入式部分,我直接用合宙官方的模板工程。删掉不需要的代码,加上雷达串口通讯相关代码。雷达协议并不复杂,心率、呼吸频率、体动是实时上报的,所以比较好调试。而睡眠数据每10分钟才上报一次,调试会比较困难。
后端部分主要分三块:
-
从雷达拿数据存到数据库
-
提供历史数据查询接口
-
提供实时数据查询接口
对接雷达的部分会麻烦一些,其他都是很简单的增删查改。
前端部分我直接参考小米运动的设计,除了要有查看历史数据和实时数据的页面,还需要有调整雷达和绑定雷达的入口。到这里软件也好了,可以测试一下效果。
- 效果测试 -
01. 绑定设备:
插卡开机,等待指示灯常绿。长按绑定键,雷达进入绑定状态;然后打开小程序OWR Care,扫描开发板表面的二维码,等待绑定完成。调整雷达位置,确保雷达距离合适。
02. 心率测试:
我们先看看实时数据,心率测试结果和手环的有一些偏差,但也不是太离谱:
03. 睡眠测试:
睡眠数据要等睡醒才会有,而且雷达只能做单人睡眠监测。但我没有这样的测试条件,这里只好先给出双人监测测试结果,最后我测了三组数据:
有几个地方需要注意:
首先因为睡眠数据的上报,频率是10分钟一次,所以雷达计算睡眠时长最小单位是10分钟。
其次,手环可以测出快速眼动期时长,雷达则不能;雷达会计算清醒时长而手环就没有。最后我无法确认手环和雷达对睡眠状态定义是否一致,也无法得知他们的结果是否能反映实际情况。
但至少从三组数据可以看出,手环和雷达测得的睡眠时长,总体上接近实际时长。第三组数据偏差较大,估计在双人监测场景,雷达无法区分哪个人先睡或者先醒,直接将睡眠时长叠加计算了。
考虑到项目定位不是医疗器械,我觉得这种偏差是可以接受的,使用几天整体感受也是很好。
- 待改进完善 -
指示灯太亮:
挂在床头就有点光污染,不过可以将外壳做厚避免透光,但我估计会影响雷达性能。当然,最好的办法是换其他材质的外壳。
雷达自身算法也可以再优化一下:
实测发现,有吹风干扰的时候,雷达会误判有人在睡觉,或者雷达安装角度不够,有时候会没有数据,不知道厂商那边有没有升级计划。
总体上看,个人认为雷达使用体验比手环好多了,它更符合用户长期使用的习惯,要回查睡眠数据也是很方便。如果你也对毫米波雷达睡眠监测仪感兴趣,不妨自己试试DIY~
原工程链接:
https://oshwhub.com/zomco/MR60LT0
B站视频链接:
https://www.bilibili.com/video/BV1bH4y1D71p?t=5.0
特别感谢@zomco大佬
期待更多精彩作品
- 往期推荐 -
开源 | ESP32自制遥控小车
开源 | 9.9元自制树莓派逻辑分析仪
欢迎工程师朋友们提供更多新产品定义思路,与合宙共同打造更多好用好玩的产品——即日起如果在B站上看到有趣的视频,可在该视频评论区@合宙LuatOS账号,我们将不定期私聊发放合宙商城优惠券,期待大家多多参与!
▼了解更多超值产品▼
开源!9.9包邮开发利器——合宙迷你DAPLink
5块钱的Wi-Fi/蓝牙二合一模组
专为成本敏感用户打造,合宙Air001国产MCU
原文标题:合宙Air700E开发板+毫米波雷达,手搓睡眠监测仪
文章出处:【微信公众号:合宙LuatOS】欢迎添加关注!文章转载请注明出处。
-
合宙通信
+关注
关注
0文章
146浏览量
1719
原文标题:合宙Air700E开发板+毫米波雷达,手搓睡眠监测仪
文章出处:【微信号:HelloLuatOS,微信公众号:合宙LuatOS】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论