馬旭平 蔡嘉豪 陰昱為 丁尚甦
摘要:如今,健康及智能醫(yī)療是社會(huì)關(guān)注的熱點(diǎn)問題。對(duì)此,該文提出了一種智能手環(huán)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),主要用于檢測(cè)心率與運(yùn)動(dòng)量。首先,介紹了手環(huán)用到的主要技術(shù),包括光電容積脈搏波描記法與加速度監(jiān)測(cè)技術(shù);然后,介紹手環(huán)、手機(jī)客戶端以及后臺(tái)服務(wù)器三個(gè)方面的設(shè)計(jì),包括硬件設(shè)計(jì)、數(shù)據(jù)的傳輸與處理以及后臺(tái)數(shù)據(jù)庫的設(shè)計(jì);最后,通過一個(gè)設(shè)計(jì)實(shí)例來說明該系統(tǒng)的可行性。在此基礎(chǔ)上對(duì)該方案做了總結(jié),指出了系統(tǒng)的未來發(fā)展方向。
關(guān)鍵詞:智能手環(huán)系統(tǒng);光電容積脈搏波描記法;智能醫(yī)療
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)36-0098-05
Design and Implementation of Smart Band System
MA Xu-ping, CAI Jia-hao, YIN Yu-wei, DING Shang-su
(School of Computer Science, Beijing Information Science and Technology University, Beijing 100101, China)
Abstract: Nowadays, health and intelligent medical are hotspot of the society. According to this, here puts forward a design and implementation of smart band system, focus on measuring the heart rate and the sports situation. The first part is about the main technics which are used, including the Photo Plethysmography and acceleration measure; then the second part is the introduction about design of band, the telephone client and the backend server including the design of hardware, client and database, and how to process the data; in the end an instance is used to prove the practicability of the system. Based on this, a conclusion is drawn, and the future direction is put forward.
Key words: Smart band; Photo Plethysmography; intelligent medical
隨著國內(nèi)經(jīng)濟(jì)的發(fā)展、社會(huì)的進(jìn)步和人民生活水平的提高,人們的生活節(jié)奏日益加快、工作壓力越來越大,尤其是工作中的年輕人,普遍存在亞健康現(xiàn)象。我國已進(jìn)入老齡化社會(huì),據(jù)統(tǒng)計(jì),2015年中國60歲以上老人2.22億,占總?cè)丝?6.1%;據(jù)預(yù)測(cè),21世紀(jì)中葉老年人口數(shù)量將達(dá)到峰值,超過4億[1]。其中,很多老人缺乏必要的日常監(jiān)護(hù),對(duì)自己的身體狀況沒有一個(gè)清醒的認(rèn)識(shí)。
針對(duì)以上的現(xiàn)象,我們?cè)O(shè)計(jì)并實(shí)現(xiàn)了一個(gè)基于光電容積脈搏波描記法的手環(huán)系統(tǒng),該系統(tǒng)能有效監(jiān)控佩戴者的幾項(xiàng)生命體征,如心率、運(yùn)動(dòng)量,并利用這些數(shù)據(jù)進(jìn)行有效分析,從而將佩戴者的基本身體情況反映出來。
重要的是,隨著傳感器的發(fā)展,手環(huán)的功能將可以被設(shè)計(jì)得越來越強(qiáng)大,能檢測(cè)更多的生命體征,從而反映出更全面的身體情況。
1 技術(shù)簡(jiǎn)介
本方案涉及到技術(shù)包括光電容積脈搏波描記法與加速度檢測(cè)技術(shù)等,以下主要介紹以上兩種技術(shù)。
1.1 光電容積脈搏波描記法
光電容積脈搏波描記法(Photo Plethysmo Graphy,下文簡(jiǎn)稱PPG)是借助光電手段在活體組織中檢測(cè)血液容積變化的一種無創(chuàng)檢測(cè)方法[2]。
當(dāng)一定波長(zhǎng)的光束照射到指端皮膚表面時(shí),光束將通過透射或反射方式傳送到光電探測(cè)器,在此過程中該光束將會(huì)被皮膚肌肉和血液部分吸收,檢測(cè)器檢測(cè)到的光強(qiáng)度將減弱,其中皮膚肌肉、組織等對(duì)光的吸收系數(shù)是恒定不變的,只會(huì)對(duì)光電信號(hào)中的直流分量大小發(fā)生影響,而皮膚內(nèi)的血液容積在心臟作用下呈周期性變化,當(dāng)心臟收縮時(shí)外周血容量最多,光吸收量也最大,檢測(cè)到的光強(qiáng)度最?。欢谛呐K舒張時(shí),正好相反,檢測(cè)到的光強(qiáng)度最大,故光接收器接收到的光強(qiáng)度隨之呈周期性變化,將此光強(qiáng)度變化信號(hào)轉(zhuǎn)換成電信號(hào),便可獲得容積脈搏血流的變化。
在各種心率傳感器中,獲取心率信息的方式往往如圖1所示。
傳感器中內(nèi)置一個(gè)LED光源,將一束光打到皮膚上,皮膚作為一種吸收介質(zhì),將會(huì)吸收一部分光能。因此,傳感器可以通過檢測(cè)皮膚反射光的強(qiáng)度來判斷是否產(chǎn)生了一次心跳。
1.2 加速度監(jiān)測(cè)技術(shù)
手環(huán)采用三軸加速度傳感器來檢測(cè)自身的加速度。三軸加速度傳感器中置有一感應(yīng)芯片,在其加速的過程中如晃動(dòng)、跌落、上升、下降等,慣性力的變化會(huì)引起電壓的變化,并通過內(nèi)部的ADC(Analog-to-digital converter,模擬數(shù)字轉(zhuǎn)換器)給出量化后的數(shù)值。
在實(shí)際測(cè)量過程中,要得到能利用的數(shù)據(jù),必須使用濾波來抑制噪聲問題。一般三軸加速度傳感器自身已嵌入電子濾波器,但通常還會(huì)使用數(shù)字濾波器對(duì)輸出的數(shù)字信號(hào)進(jìn)行進(jìn)一步運(yùn)算和處理,加強(qiáng)降噪效果,從而得到設(shè)計(jì)要求的高質(zhì)量數(shù)據(jù)。
2 智能手環(huán)系統(tǒng)的設(shè)計(jì)
本方案的設(shè)計(jì)主要包括手環(huán)的硬件設(shè)計(jì)、手機(jī)客戶端以及后臺(tái)服務(wù)器的設(shè)計(jì)三個(gè)方面。
2.1 總體流程
本方案中智能手環(huán)系統(tǒng)的結(jié)構(gòu)如圖3所示:
本方案中智能手環(huán)系統(tǒng)的工作流程如圖4所示。
通過佩戴手環(huán),可實(shí)時(shí)監(jiān)測(cè)佩戴者生命體征數(shù)據(jù),將所得數(shù)據(jù)進(jìn)行濾波及相應(yīng)算法處理后,每60s通過藍(lán)牙向手機(jī)發(fā)送一次數(shù)據(jù),使手環(huán)與手機(jī)客戶端的數(shù)據(jù)同步。
生命體征數(shù)據(jù)具有較大價(jià)值,可按需存儲(chǔ)在手機(jī)客戶端或后臺(tái)服務(wù)器。手機(jī)客戶端可存儲(chǔ)近期監(jiān)測(cè)數(shù)據(jù),進(jìn)行近期基本數(shù)據(jù)分析,如步數(shù)統(tǒng)計(jì)、卡路里消耗統(tǒng)計(jì)、平均心率統(tǒng)計(jì);服務(wù)器端存儲(chǔ)長(zhǎng)期監(jiān)測(cè)數(shù)據(jù),進(jìn)行全面、徹底的分析,并將分析的結(jié)果反饋到手機(jī)客戶端呈現(xiàn)給佩戴者。
2.2 手環(huán)設(shè)計(jì)
手環(huán)的設(shè)計(jì)主要包括:手環(huán)功能設(shè)計(jì);手環(huán)硬件設(shè)計(jì);數(shù)據(jù)處理方案設(shè)計(jì);數(shù)據(jù)傳輸方案的設(shè)計(jì)。
下面將分別從這四個(gè)方面來介紹。
2.2.1 手環(huán)功能設(shè)計(jì)
智能手環(huán)的主要功能如圖5所示。
其中,運(yùn)動(dòng)計(jì)步、睡眠監(jiān)測(cè)及久坐提醒功能基于三軸加速度傳感器,通過對(duì)手環(huán)加速度的檢測(cè)來判斷佩戴者的運(yùn)動(dòng)情況;心率監(jiān)測(cè)功能基于心率傳感器,可以檢測(cè)佩戴者的實(shí)時(shí)心率。下面就將對(duì)上述兩種傳感器及手環(huán)的硬件設(shè)計(jì)做介紹。
2.2.2 手環(huán)硬件設(shè)計(jì)
手環(huán)的設(shè)計(jì)方案總體如下:
2.2.3 運(yùn)動(dòng)數(shù)據(jù)采集與處理
佩戴者運(yùn)動(dòng)數(shù)據(jù)實(shí)時(shí)監(jiān)測(cè)數(shù)據(jù)采集通過LIS3DH芯片完成。選用LIS3DH芯片主要基于以下三點(diǎn):
2.2.4 心率數(shù)據(jù)的采集與處理
佩戴者心率數(shù)據(jù)實(shí)時(shí)監(jiān)測(cè)數(shù)據(jù)采集基于松恩電子有限公司生產(chǎn)的son1303心率傳感器芯片完成,芯片采用了光電容積脈搏波描記法,使用的是570nm發(fā)光波長(zhǎng)的綠光,測(cè)量感度更高,配合son3130四運(yùn)放可以直接輸出方波信號(hào),如圖8中上方的方波所示,圖8中下方的波形是經(jīng)過算法處理后得到的心率波。
2.2.5 數(shù)據(jù)傳輸與交互
手環(huán)通過BLE4.0(Bluetooth Low Energy4.0)與手機(jī)進(jìn)行實(shí)時(shí)通信。BLE由藍(lán)牙技術(shù)聯(lián)盟(Bluetooth Special Interest Group)設(shè)計(jì),旨在為健康醫(yī)療、安全設(shè)備等提供更好的服務(wù)。
本方案中選擇使用BLE4.0,BLE需運(yùn)行在Android4.3以上版本。手機(jī)客戶端可以搜索設(shè)備、建立連接并進(jìn)行交互。
相比傳統(tǒng)的藍(lán)牙技術(shù),BLE能夠在通信范圍幾乎不變的情況下,保障數(shù)據(jù)準(zhǔn)確、高效、安全的無線傳輸,同時(shí)大大降低手環(huán)的耗電量。
2.3 手機(jī)客戶端設(shè)計(jì)
手機(jī)客戶端的設(shè)計(jì)主要涉及:功能設(shè)計(jì);與后臺(tái)服務(wù)器的數(shù)據(jù)傳輸方案設(shè)計(jì);數(shù)據(jù)展示方案設(shè)計(jì)。
下面將分別從以上三個(gè)方面來介紹。
2.3.1 手機(jī)客戶端功能設(shè)計(jì)
該系統(tǒng)的手機(jī)客戶端,遵循MVC架構(gòu),單元測(cè)試覆蓋率高,其具體功能如圖9所示。
2.3.2 與后臺(tái)服務(wù)器的數(shù)據(jù)傳輸方案設(shè)計(jì)
數(shù)據(jù)傳輸采用了Json格式。Json是一種輕量級(jí)的數(shù)據(jù)交換語言,被廣泛運(yùn)用在數(shù)據(jù)傳輸領(lǐng)域。在傳輸過程中,Json中的關(guān)鍵數(shù)據(jù),如用戶密碼等,要防止被攻擊者獲取,在這里采用了MD5加密技術(shù),由于MD5算法的不可逆性,經(jīng)加密后的用戶密碼,即使有人采用不正當(dāng)手段截獲了該數(shù)據(jù)包,也很難對(duì)其進(jìn)行解密。并且,為了防止哈希碰撞等攻擊,在傳輸之前用戶密碼會(huì)經(jīng)過加鹽的雙重MD5加密,大大提高了數(shù)據(jù)傳輸?shù)陌踩浴?/p>
2.3.3 數(shù)據(jù)展示方案設(shè)計(jì)
數(shù)據(jù)的展示主要通過折線統(tǒng)計(jì)圖的方式來表達(dá)。
其中:
l 心率數(shù)據(jù)的統(tǒng)計(jì)圖橫軸為時(shí)間,單位為1小時(shí),縱軸為1小時(shí)內(nèi)平均心率;每天的心率情況作為一張圖;保留最近7天的心率情況。
l 運(yùn)動(dòng)數(shù)據(jù)的統(tǒng)計(jì)圖橫軸為時(shí)間,單位為1天,縱軸為當(dāng)天累計(jì)步數(shù);每周的運(yùn)動(dòng)情況作為一張圖;保留最近一個(gè)月的運(yùn)動(dòng)情況。
2.4 后臺(tái)服務(wù)器設(shè)計(jì)
后臺(tái)的設(shè)計(jì)主要考慮API的設(shè)計(jì),數(shù)據(jù)庫的設(shè)計(jì)。
2.4.1 后臺(tái)概述
后臺(tái)系統(tǒng)搭建在云服務(wù)器上,操作系統(tǒng)采用Ubuntu12.04,后端API采用Django1.9作為框架搭建,數(shù)據(jù)庫則是采用了MySQL5.6。
2.4.2 API的設(shè)計(jì)
后臺(tái)服務(wù)器API的搭建主要采用了Django框架。Django是用Python編寫的一個(gè)著名的Web框架,采用了MVC的軟件設(shè)計(jì)模式。手機(jī)客戶端訪問后臺(tái)服務(wù)器API后得到對(duì)應(yīng)的Json數(shù)據(jù),解析后便能得到服務(wù)器分析的結(jié)果。訪問部分API返回的數(shù)據(jù)包如下所示:
為了提高數(shù)據(jù)庫的響應(yīng)速度,后臺(tái)使用Django實(shí)現(xiàn)了一個(gè)MySQL的連接池,連接池中共有10個(gè)數(shù)據(jù)庫連接,用于減輕數(shù)據(jù)庫的壓力。
2.4.3 數(shù)據(jù)庫設(shè)計(jì)
數(shù)據(jù)庫采用了MySQL5.6,以下講的是后臺(tái)服務(wù)器上的數(shù)據(jù)庫,其數(shù)據(jù)庫中主要表的概念設(shè)計(jì)如下圖所示。
在用戶表中,選用帳號(hào)作為主鍵,而在其他三張表中,均采用“帳號(hào)+時(shí)間”作為復(fù)合主鍵,提高查詢速度。
3 智能手環(huán)系統(tǒng)設(shè)計(jì)實(shí)例
本實(shí)例以LIS3DH芯片采集到的運(yùn)動(dòng)數(shù)據(jù)為例,說明本系統(tǒng)如何獲取數(shù)據(jù)、處理數(shù)據(jù)以及如何將分析數(shù)據(jù)的結(jié)果反饋給用戶。
3.1 手環(huán)端
本實(shí)例中通過LIS3DH加速度傳感器來采集運(yùn)動(dòng)數(shù)據(jù),通過nRF51822開發(fā)板的藍(lán)牙功能來傳輸數(shù)據(jù)。開發(fā)板如圖12所示。
得到LIS3DH采集的運(yùn)動(dòng)數(shù)據(jù)后,還需要通過卡爾曼濾波對(duì)數(shù)據(jù)進(jìn)行處理,處理后的運(yùn)動(dòng)數(shù)據(jù)如圖11所示。
3.2 手機(jī)客戶端
手機(jī)客戶端將最近一周的運(yùn)動(dòng)情況繪制成折線統(tǒng)計(jì)圖展現(xiàn)給用戶。該折線統(tǒng)計(jì)圖可以左右滑動(dòng),查看近一個(gè)月來每一天的步數(shù)情況。圖13是佩戴手環(huán)一星期后得到的數(shù)據(jù)繪制成的圖。
3.3 后臺(tái)服務(wù)器
手機(jī)客戶端中的數(shù)據(jù)會(huì)每天同步到后臺(tái)服務(wù)器的數(shù)據(jù)庫中,該數(shù)據(jù)庫將長(zhǎng)期存儲(chǔ)用戶的運(yùn)動(dòng)數(shù)據(jù),具體結(jié)果如圖14所示。
4 結(jié)束語
本文闡述了一個(gè)基本的智能手環(huán)系統(tǒng)的實(shí)現(xiàn),從手環(huán)端到手機(jī)端再到服務(wù)器端,構(gòu)建了
一個(gè)完整的框架。隨著智能硬件的發(fā)展,將來可以在此框架上增加更多的功能,手環(huán)端可以增加更多的智能硬件,如測(cè)量血壓的硬件。同時(shí),隨著大數(shù)據(jù)與人工智能時(shí)代的來臨,可以對(duì)后臺(tái)服務(wù)器上海量的健康數(shù)據(jù)做詳盡的統(tǒng)計(jì)與分析,從而對(duì)用戶的健康狀況做出更精準(zhǔn)的反饋,加速智能醫(yī)療時(shí)代的進(jìn)程。
參考文獻(xiàn):
[1] “互聯(lián)網(wǎng)+”孕育消費(fèi)養(yǎng)老模式[EB/OL].http://news.china.com.cn/cndg/2016-09/27/content_39380588.htm.
[2] 陳斌.光電容積脈搏波描記法原理、應(yīng)用及其電路設(shè)計(jì)[J]. 電子技術(shù)與軟件工程, 2014(18):132-133.
[3] 卡爾曼濾波[EB/OL].https://zh.wikipedia.org/wiki/%E5%8D%A1%E5%B0%94%E6%9B%BC%E6%BB%A4%E6%B3%A2.