項目名稱:模擬可穿戴設(shè)備功能演示(基于MQTT+阿里云)
大家好,我是愛華(花)人士。這次借助ROHM的sensor做了一個粗糙的可穿戴設(shè)備的模擬項目,當然其中有許多的美中不足之處,下面聽我給栩栩道來。
此次項目用的是LPC55S69的控制核心,結(jié)合ROHM的心率傳感器(bh1790glc)和地磁傳感器(bm1422agmv)以及提供顯示的OLED屏來展開需求開發(fā)的。首先我們了解到這兩個sensor都是基于IIC通信的,然而LPC55S69有高達8個IIC接口,非常之嚇人。然而此次選用的顯示屏是不帶觸摸功能的,所以為了模擬滑動屏的效果,筆者加入了按鍵開關(guān)用來模擬滑動屏的功能滾動,從而也能夠簡易的表達出用戶需求功能的效果。
因為時間比較匆忙,來不及設(shè)計許多需求,只是把傳感器的功能簡單的實現(xiàn)了而已。如果后續(xù)還有時間可以找一個盟友寫一個手機APP來對接設(shè)備。有人建議把數(shù)據(jù)通過wifi模塊兒發(fā)送到云平臺,后來我想了一下,覺得沒有必要,因為使用定位不一樣的,誰都是在時刻關(guān)注著自己的心率數(shù)據(jù),總不可能天天背著個wifi傳遞數(shù)據(jù)然后再去后臺查看吧,顯然這是不符合邏輯的,所以我放棄了這個參考思路。最簡單的思路就是APP端寫個藍牙數(shù)據(jù)交互端,與設(shè)備進行數(shù)據(jù)交互顯示,從而達到在APP端時刻關(guān)注或者再由APP推送到后臺,從而實現(xiàn)遠程數(shù)據(jù)的查看。這里我們用的NB-IOT傳送數(shù)據(jù)到后臺。
將所有外設(shè)都準備連接妥當,進行程序燒寫,沒有做板載設(shè)計為了視覺美觀把連線規(guī)避掉了,把連線圖在最后放出來。如圖所示
進入喚醒LOGO,并初始化對應(yīng)傳感器,進行功能喚醒,等待3秒之后進入主菜單,如圖所示:
一個有意義的設(shè)計得根據(jù)自己喜歡的人來進行參照設(shè)計,這款花花智能穿戴演示就是這樣得名由來的。然后通過功能按鍵進行測試功能選擇查看,此時我們展示的是全部功能界面,如圖所示:
本次功能顯示有三處,其一是方位指向,前面的方位字母代表方位指示符,后面的數(shù)據(jù)便是對應(yīng)的方位角度了,能提供用戶一目了然的方位指示,十分便捷。其二就是環(huán)境溫度,為什么要說是環(huán)境溫度呢?因為這個溫度測量用的地磁傳感器內(nèi)部的寄存器測量,并不是專門溫度感應(yīng)sensor,所以對變化的溫度響應(yīng)不是很靈敏,但是測量環(huán)境溫度還是挺吻合的。
其三就是心率脈搏,通過心率傳感器發(fā)送綠光對血液的反射頻譜來計算心率的跳動次數(shù),從而很好實時監(jiān)測自己心率跳動情況。下面給出手指測量的心率,如圖所示:
一個智能設(shè)備是少不了云端服務(wù)器控制的,所以在穿戴的基礎(chǔ)上我們又講數(shù)據(jù)傳到了云平臺和MQTT服務(wù)器進行數(shù)據(jù)報備。Iot設(shè)備是選用的深圳高新興的ME3616模塊,自帶GNSS能進行GPS有效定位。
以上就是該模組的功能腳。我們利用模組的URAT0口與MCU的串口進行數(shù)據(jù)通信,然后利用MQTT協(xié)議傳輸?shù)組QTT服務(wù)器,再推送到阿里云平臺就實現(xiàn)了我們后臺對數(shù)據(jù)的報備。MQTT服務(wù)器是我自己用樹莓派搭建的,能進行數(shù)據(jù)的訂閱與推送,至于相關(guān)代碼我放到附件里面歡迎查閱。以下就是推送過來的消息和阿里云平臺上面的數(shù)據(jù)更新,MQTT服務(wù)器是每5分鐘推送一次有效數(shù)據(jù),阿里云則是收到推送數(shù)據(jù)后進行實時更新顯示。
如今隨著社會的生活水平的提升,人們對身體健康越來越重視。一個完善的智能穿戴設(shè)備不僅能提供用戶良好的生活健康體驗,同時也能提升幸福生活中指數(shù),在市場上需求也會日益提升,可謂是雙贏局面。最后給出測試視頻演示(程序還可能加入藍牙暫時保留),同時十分感謝NXP的大力支持。給出程序demo和視頻演示地址:密碼q2g4