基于伽利略的心跳采集系統(tǒng)
pulse sensor 采集心率信息 送入Galileo平臺(tái)上,然后Galileo平臺(tái)對心跳波形進(jìn)行處理,通過藍(lán)牙模塊給客戶端。藍(lán)牙模塊通過UART串口控制。Galileo處理的關(guān)鍵點(diǎn)就是計(jì)算兩個(gè)相鄰的心跳脈沖之間的間隔時(shí)間,利用這個(gè)間隔時(shí)間來計(jì)算每分鐘的心跳次數(shù)(心率),我們利用MATLAB輔助工具來模擬和驗(yàn)證我們的算法。具體如圖7所示。
首先對pulse sensor傳進(jìn)來的信號進(jìn)行采樣上圖綠色波形即為經(jīng)過采樣的心跳信號,然后通過和一個(gè)閾值比較,如果心跳強(qiáng)度值超過閾值,則強(qiáng)行置1,否則置0,所以綠色波形轉(zhuǎn)變?yōu)樗{(lán)色的矩形波,我們再對矩形波的上升沿探測,標(biāo)記處上升沿的時(shí)間,圖8中為紅點(diǎn)標(biāo)出上升沿,通過計(jì)算紅色點(diǎn)之間的時(shí)間間隔,就可以計(jì)算出心率了,實(shí)際上我們可以利用心跳波形的最大點(diǎn)進(jìn)行時(shí)間標(biāo)記的,但是兩者的結(jié)果都是一樣的。
4 軟件模塊
客戶端為Android平臺(tái)上的應(yīng)用程序,可以運(yùn)行于x86架構(gòu)的Android平臺(tái),也可以運(yùn)行于基于ARM的Android平臺(tái)。前面提到過,客戶端的功能是接收硬件平臺(tái)的數(shù)據(jù),經(jīng)過處理后表現(xiàn)在界面上,并且從用戶的心率信息判斷用戶是否在做有氧運(yùn)動(dòng),給相應(yīng)的提醒。
4.1 界面設(shè)計(jì)
客戶端分為:注冊界面、系統(tǒng)介紹界面、登陸界面,主界面、藍(lán)牙設(shè)備選擇界面和設(shè)置界面。
主界面有連接按鈕,波形顯示區(qū)(灰色部分)、心率區(qū)(青色部分)、有氧運(yùn)動(dòng)提示區(qū)(粉紅色部分)。
設(shè)置界面通過設(shè)置是否顯示波形控制系統(tǒng)的工作模式(全功能或者低功耗模式),并可以調(diào)整年齡,記錄有氧運(yùn)功時(shí)間,設(shè)置波形密度等。
4.2 運(yùn)行機(jī)制
在界面介紹中的圖9為運(yùn)行于全功能模式下的情形,它也表現(xiàn)了用于并未處于有氧運(yùn)動(dòng)。圖8為低功耗模式下,波形停止顯示,也表現(xiàn)了用戶在有氧運(yùn)動(dòng),底部的一片區(qū)域變?yōu)榫G色,手機(jī)周期性發(fā)出聲音并震動(dòng)。這個(gè)數(shù)據(jù)之所以是71,是因?yàn)槲覀冊谠O(shè)置界面吧年齡設(shè)置得比較高,因此心率很低時(shí)就被判定為出于有氧運(yùn)動(dòng)。
有氧運(yùn)動(dòng)判別法:進(jìn)行體育運(yùn)動(dòng)時(shí),當(dāng)心率達(dá)到最大心率的50%-90%,就可認(rèn)定是在進(jìn)行有氧運(yùn)動(dòng) 。最大心率=220-年齡。
評論