?
合宙Air700E開發(fā)板+毫米波雷達(dá),手搓一個(gè)開箱即用的睡眠監(jiān)測儀不是夢(mèng)!
今天特別分享**@zomco**大佬的“基于毫米波雷達(dá)的睡眠監(jiān)測儀”作品。
一、項(xiàng)目原理及硬件制作
毫米波是指頻率范圍從30-300GHz的電磁波,它的波長很短,雷達(dá)發(fā)射的毫米波會(huì)隨人體反射回來,同時(shí)人體微小的移動(dòng)會(huì)改變毫米波。有了這些變化,雷達(dá)可以計(jì)算出人體移動(dòng)的距離速度以及方向。
- 項(xiàng)目原理 ** -**
毫米波雷達(dá)測人體胸腔起伏,根據(jù)起伏計(jì)算心率和呼吸頻率,然后通過算法推算睡眠狀態(tài),使用手機(jī)小程序讀取和展示數(shù)據(jù)。
?
相比市面上的手環(huán),毫米波雷達(dá)無需佩戴即可實(shí)現(xiàn)無感體驗(yàn)的隱形 監(jiān)測 。
**- **主要物料 -
本文睡眠監(jiān)測儀主要硬件物料包含:毫米波雷達(dá)R60ABD1、合宙Air700E開發(fā)板、傳感器(AHT20、BH1750等等)、底板和外殼。 除了底板需要打板和外殼需要3D打印, 其他零件都可以在網(wǎng)上購買組裝。
01. 毫米波雷達(dá)R60ABD1:
常見的毫米波雷達(dá)有24/60/77GHz三種,原理上頻率越高,雷達(dá)感知的微動(dòng)幅度越小。這款60GHz自帶睡眠監(jiān)測功能的毫米波雷達(dá),它很接近我的想法。
?
02. 合宙Air700E開發(fā)板:
按照以往經(jīng)驗(yàn),睡眠監(jiān)測儀最簡單直接的做法是,找一塊開發(fā)板連上雷達(dá)串口,將雷達(dá)數(shù)據(jù)通過藍(lán)牙轉(zhuǎn)發(fā)出去,客戶端通過藍(lán)牙讀取雷達(dá)數(shù)據(jù),然后展示出來。
但為了讓家里的老人也能用,我打算加上遠(yuǎn)程看護(hù)的功能, 所以這里要改用可以Wi-Fi或者4G通信的開發(fā)板,還要部署一套存放和查詢數(shù)據(jù)的后端服務(wù)。
?
雖然我對(duì)開發(fā)板選型沒有任何偏好,但覺得有必要把吃灰的羊毛利用起來——以前入手的合宙Air700E開發(fā)板不僅性價(jià)比高,而且可以用Lua寫嵌入式,特別適合。
03. 自制底板(可選):
自制的底板用于整合Air700E開發(fā)板、毫米波雷達(dá)R60ABD1和其他傳感器(AHT20、BH1750等等)。
?
?
所以其實(shí) 即使沒有底板,用杜邦線連接它們,然后刷入固件,也可以在小程序驗(yàn)證毫米波雷達(dá)的睡眠監(jiān)測能力。 不過為了避免驗(yàn)證過程中發(fā)生各種問題,我還是建議用底板驗(yàn)證。
04. 自制外殼(可選):
設(shè)計(jì)外殼時(shí),要注意 到雷達(dá)的距離最好是半波長的整數(shù)倍; 加上USB口和按鍵,硬件圖形就出來了。為了方便調(diào)試,外殼保留了開發(fā)板上的開機(jī)鍵和關(guān)機(jī)鍵。
?
- 硬件組裝 -
拿到板子開始組裝,先焊接元器件和Air700E開發(fā)板,再裝雷達(dá)??梢钥吹蕉询B后雷達(dá)和Air700E開發(fā)板還有一點(diǎn)點(diǎn)距離,雷達(dá)性能應(yīng)該不會(huì)有太大影響。
?
?
安裝外殼也是很簡單,幾乎不可能犯錯(cuò)。上好螺絲之后,測試一下按鍵有沒有問題,到這里硬件算是完成了。
?
- 開源鏈接 -
目前基于毫米波雷達(dá)的睡眠監(jiān)測儀項(xiàng)目硬件,已在立創(chuàng)平臺(tái)開源。可通過原工程鏈接獲取項(xiàng)目相關(guān)詳細(xì)操作步驟、注意事項(xiàng),以及原理圖、PCB等最新文件:
原工程鏈接:
https://oshwhub.com/zomco/MR60LT0
開源協(xié)議:
CERN Open Hardware License
二、功能實(shí)現(xiàn)及效果測試
?
合宙LuaTools工具下載:
https://wiki.luatos.com/pages/tools.html
項(xiàng)目最新固件下載:
https://oshwhub.com/zomco/MR60LT0
- 功能實(shí)現(xiàn) -
項(xiàng)目代碼嵌入式部分, 我直接用合宙官方的模板工程。刪掉不需要的代碼,加上雷達(dá)串口通訊相關(guān)代碼。雷達(dá)協(xié)議并不復(fù)雜,心率、呼吸頻率、體動(dòng)是實(shí)時(shí)上報(bào)的,所以比較好調(diào)試。而睡眠數(shù)據(jù)每10分鐘才上報(bào)一次,調(diào)試會(huì)比較困難。
后端部分主要分三塊:
- 從雷達(dá)拿數(shù)據(jù)存到數(shù)據(jù)庫
- 提供歷史數(shù)據(jù)查詢接口
- 提供實(shí)時(shí)數(shù)據(jù)查詢接口
對(duì)接雷達(dá)的部分會(huì)麻煩一些,其他都是很簡單的增刪查改。
前端部分我直接參考小米運(yùn)動(dòng)的設(shè)計(jì),除了要有查看歷史數(shù)據(jù)和實(shí)時(shí)數(shù)據(jù)的頁面,還需要有調(diào)整雷達(dá)和綁定雷達(dá)的入口。到這里軟件也好了,可以測試一下效果。
- 效果測試 -
01. 綁定設(shè)備:
插卡開機(jī),等待指示燈常綠。長按綁定鍵,雷達(dá)進(jìn)入綁定狀態(tài);然后打開小程序****OWR Care, 掃描開發(fā)板表面的二維碼,等待綁定完成。調(diào)整雷達(dá)位置,確保雷達(dá)距離合適。
?
?
02. 心率測試:
我們先看看實(shí)時(shí)數(shù)據(jù),心率測試結(jié)果和手環(huán)的有一些偏差,但也不是太離譜:
?
03. 睡眠測試:
睡眠數(shù)據(jù)要等睡醒才會(huì)有,而且 雷達(dá)只能做單人睡眠監(jiān)測。 但我沒有這樣的測試條件,這里只好先給出雙人監(jiān)測測試結(jié)果,最后我測了三組數(shù)據(jù):
?
有幾個(gè)地方需要注意:
首先因?yàn)樗邤?shù)據(jù)的上報(bào),頻率是10分鐘一次,所以雷達(dá)計(jì)算睡眠時(shí)長最小單位是10分鐘。
其次,手環(huán)可以測出快速眼動(dòng)期時(shí)長,雷達(dá)則不能;雷達(dá)會(huì)計(jì)算清醒時(shí)長而手環(huán)就沒有。最后我無法確認(rèn)手環(huán)和雷達(dá)對(duì)睡眠狀態(tài)定義是否一致,也無法得知他們的結(jié)果是否能反映實(shí)際情況。
但至少從三組數(shù)據(jù)可以看出, 手環(huán)和雷達(dá)測得的睡眠時(shí)長,總體上接近實(shí)際時(shí)長。 第三組數(shù)據(jù)偏差較大,估計(jì)在雙人監(jiān)測場景,雷達(dá)無法區(qū)分哪個(gè)人先睡或者先醒,直接將睡眠時(shí)長疊加計(jì)算了。
考慮到項(xiàng)目定位不是醫(yī)療器械,我覺得這種偏差是可以接受的,使用幾天整體感受也是很好。
- 待改進(jìn)完善 -
?
指示燈太亮:
掛在床頭就有點(diǎn)光污染,不過可以將外殼做厚避免透光,但我估計(jì)會(huì)影響雷達(dá)性能。當(dāng)然,最好的辦法是換其他材質(zhì)的外殼。
雷達(dá)自身算法也可以再優(yōu)化一下:
實(shí)測發(fā)現(xiàn),有吹風(fēng)干擾的時(shí)候,雷達(dá)會(huì)誤判有人在睡覺,或者雷達(dá)安裝角度不夠,有時(shí)候會(huì)沒有數(shù)據(jù),不知道廠商那邊有沒有升級(jí)計(jì)劃。
總體上看,個(gè)人認(rèn)為雷達(dá)使用體驗(yàn)比手環(huán)好多了,它更符合用戶長期使用的習(xí)慣,要回查睡眠數(shù)據(jù)也是很方便。如果你也對(duì)毫米波雷達(dá)睡眠監(jiān)測儀感興趣,不妨自己試試DIY~
?審核編輯 黃宇
-
監(jiān)測儀
+關(guān)注
關(guān)注
3文章
601瀏覽量
22664 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5050瀏覽量
97456 -
毫米波雷達(dá)
+關(guān)注
關(guān)注
107文章
1044瀏覽量
64366
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論