王慧媛,蔣敏蘭
(浙江師范大學(xué) 數(shù)理與信息工程學(xué)院,浙江 金華 321004)
?
基于Arduino和LabVIEW的脈搏心率檢測(cè)儀
王慧媛,蔣敏蘭
(浙江師范大學(xué) 數(shù)理與信息工程學(xué)院,浙江 金華 321004)
針對(duì)目前心血管疾病嚴(yán)重威脅人類健康,且在我國(guó)的發(fā)病率與死亡率居高不下的現(xiàn)狀,設(shè)計(jì)了基于Arduino和LabVIEW的脈搏心率檢測(cè)儀。下位機(jī)選用Arduino為主控芯片,將脈搏心率檢測(cè)模塊檢測(cè)到的脈搏信息通過(guò)串口發(fā)送給LabVIEW上位機(jī),上位機(jī)對(duì)接收到的數(shù)據(jù)進(jìn)行處理并顯示動(dòng)態(tài)脈搏曲線,同時(shí)將脈搏測(cè)量結(jié)果顯示在上位機(jī)前面板。該檢測(cè)儀可實(shí)現(xiàn)對(duì)脈搏和心率信號(hào)的采集、顯示、波形回放和存儲(chǔ),與物聯(lián)網(wǎng)技術(shù)結(jié)合可以實(shí)現(xiàn)遠(yuǎn)程監(jiān)測(cè)。測(cè)試結(jié)果表明,該檢測(cè)儀測(cè)量誤差不超過(guò)1%,利用該儀器可及時(shí)了解被測(cè)者的身體狀況。
LabVIEW;Arduino;脈搏檢測(cè);心率檢測(cè);串口通信
引用格式:王慧媛,蔣敏蘭. 基于Arduino和LabVIEW的脈搏心率檢測(cè)儀[J].微型機(jī)與應(yīng)用,2016,35(17):94-96.
人體脈搏系統(tǒng)是心血管系統(tǒng)的重要組成部分,脈搏波所呈現(xiàn)出的形態(tài)、強(qiáng)度、速率、節(jié)律等方面的綜合信息,反映了人體心血管系統(tǒng)中的許多生理病理特征,是臨床診斷和治療的重要依據(jù)[1]。數(shù)據(jù)顯示,我國(guó)心血管疾病的發(fā)病率和死亡率持續(xù)上升,約300萬(wàn)患者每年死于心血管病,幾乎每3個(gè)死亡的人中就有1人是心血管病,心血管疾病已成為人類健康的頭號(hào)殺手[2]。
目前,國(guó)內(nèi)外在脈搏檢測(cè)方面已經(jīng)開(kāi)展了大量工作,脈搏測(cè)量技術(shù)也越來(lái)越先進(jìn)。過(guò)去醫(yī)院臨床監(jiān)護(hù)和老年保健中常用便攜式電子血壓計(jì),但其在利用氣泵加減壓過(guò)程中會(huì)使患者不適,且存在體積龐大、檢測(cè)精度低等缺點(diǎn);而近來(lái)研發(fā)的多種無(wú)創(chuàng)非接觸式儀器能夠自動(dòng)消除系統(tǒng)誤差、測(cè)量精度高且能夠?qū)崟r(shí)顯示病人脈搏信息,但此類儀器多用于大型醫(yī)院且價(jià)格昂貴,不適合廣大消費(fèi)者的使用[2]。本文提出的基于Arduino和LabVIEW的脈搏心率檢測(cè)儀利用美國(guó)NI公司開(kāi)發(fā)的LabVIEW圖形化編程開(kāi)發(fā)平臺(tái)[3],設(shè)計(jì)了簡(jiǎn)明、直觀、易用的上位機(jī)顯示界面,精度高,使用方便,具有廣闊的應(yīng)用前景。
系統(tǒng)由上、下位機(jī)組成。下位機(jī)由單片機(jī)系統(tǒng)進(jìn)行數(shù)據(jù)采集、信號(hào)調(diào)理[4]。上位機(jī)(PC)基于虛擬儀器圖形編程軟件LabVIEW8.0 編制軟件程序,實(shí)現(xiàn)脈搏信號(hào)的數(shù)據(jù)讀取、濾波、脈搏頻率計(jì)算、波形顯示等功能[5]。上、下位機(jī)通過(guò)RS232串口通信。系統(tǒng)框圖如圖1所示。
圖1 系統(tǒng)設(shè)計(jì)框圖
2.1傳感器選型
傳統(tǒng)的脈搏測(cè)量方法主要包括三種:一是從心電信號(hào)中提取脈搏信號(hào);二是利用測(cè)量血壓時(shí)壓力傳感器測(cè)到的波動(dòng)來(lái)計(jì)算脈率;三是光電容積法測(cè)量[6]。前兩種方法提取信號(hào)都會(huì)限制病人的活動(dòng),如果長(zhǎng)時(shí)間使用會(huì)增加病人生理和心理上的不舒適感。本設(shè)計(jì)選用集成化脈搏傳感器A27pulsesensor,它是利用人體組織在血管搏動(dòng)時(shí)造成透光率的不同即光容積法來(lái)進(jìn)行脈搏的測(cè)量,具有方法簡(jiǎn)單、可靠性高且佩戴方便的特點(diǎn)。當(dāng)光束透過(guò)人體外周血管,由于動(dòng)脈搏動(dòng)充血容積變化導(dǎo)致這束光的透光率發(fā)生改變,此時(shí)由光電變換器接收經(jīng)人體組織反射的光線,轉(zhuǎn)變?yōu)殡娦盘?hào)并將其放大和輸出。由于脈搏是隨心臟的搏動(dòng)而周期性變化的信號(hào),動(dòng)脈血管容積也周期性變化,因此光電變換器的電信號(hào)變化周期就是脈搏率。圖2右為A72脈搏心率檢測(cè)模塊。
圖2 底層硬件結(jié)構(gòu)
2.2Arduino單片機(jī)
Arduino是一款便捷靈活、方便上手的開(kāi)源電子原型平臺(tái)。Arduino能夠通過(guò)AD對(duì)傳感器信號(hào)采樣處理,并將數(shù)據(jù)通過(guò)串口發(fā)送至LabVIEW平臺(tái)。其與脈搏心率檢測(cè)模塊一起構(gòu)成了本設(shè)計(jì)的底層硬件。圖2為底層硬件結(jié)構(gòu)。
2.3基于Arduino的硬件程序設(shè)計(jì)
由于心率檢測(cè)模塊的輸出信號(hào)為0~5 V的電壓信號(hào),因此只需要利用Arduino的一個(gè)模擬信號(hào)輸入端口將0~5 V的模擬信號(hào)轉(zhuǎn)化為0~255的數(shù)字信號(hào),即可實(shí)現(xiàn)對(duì)脈搏信息的采集,同時(shí)通過(guò)RS232串口協(xié)議將信號(hào)傳送到LabVIEW上位機(jī)。
3.1基于LabVIEW的算法設(shè)計(jì)
LabVIEW通過(guò)串口接收到下位機(jī)發(fā)送的脈搏數(shù)據(jù),為了得到準(zhǔn)確的心跳頻率,把接收到的值與前兩個(gè)數(shù)據(jù)進(jìn)行比較,分別獲得數(shù)據(jù)流中最大值時(shí)間tmax和最小值時(shí)間tmin,因此心臟實(shí)際的跳動(dòng)周期為:
T=|tmax-tmin|
如圖3所示為脈搏心率檢測(cè)流程圖。
圖3 脈搏心率檢測(cè)流程圖
3.2基于LabVIEW的上位機(jī)設(shè)計(jì)
上位機(jī)設(shè)計(jì)采用LabVIEW8.0進(jìn)行圖形編程。LabVIEW軟件提供了有關(guān)串口設(shè)計(jì)的VI[7],可以實(shí)現(xiàn)串口的配置、讀寫(xiě)和中斷等功能。同時(shí)充分利用其強(qiáng)大的數(shù)據(jù)處理能力,實(shí)現(xiàn)對(duì)脈搏波的采集、濾波、顯示、波形回放、存儲(chǔ)等功能,如圖4所示為上位機(jī)軟件界面,圖5所示為L(zhǎng)abVIEW后面板圖形編程。
圖4 LabVIEW界面設(shè)計(jì)
圖5 LabVIEW后面板程序
表1為6例檢測(cè)心率的樣本結(jié)果與采用購(gòu)買(mǎi)的標(biāo)準(zhǔn)儀器測(cè)量結(jié)果的對(duì)比及誤差,樣本來(lái)自無(wú)疾病、無(wú)精神障礙的大學(xué)生。其中:
測(cè)量誤差=|實(shí)測(cè)值-標(biāo)準(zhǔn)值|/標(biāo)準(zhǔn)值
由表1可知,本設(shè)計(jì)誤差不超過(guò)標(biāo)準(zhǔn)值的1%。
表1 心率檢測(cè)結(jié)果及誤差
本文利用脈搏心率傳感器、Arduino單片機(jī)和LabVIEW平臺(tái)設(shè)計(jì)了一款低成本、低功耗、操作簡(jiǎn)單、界面美觀的脈搏心率檢測(cè)儀,實(shí)現(xiàn)了以下功能:
(1)下位機(jī)數(shù)據(jù)采集處理以及數(shù)據(jù)發(fā)送;
(2)LabVIEW上位機(jī)接收數(shù)據(jù)并實(shí)現(xiàn)心電圖顯示、數(shù)據(jù)存儲(chǔ)及波形回放;
(3)定時(shí)計(jì)算心跳頻率并顯示;
(4)繪制心形曲線。
在當(dāng)前互聯(lián)網(wǎng)+的模式下,尤其是網(wǎng)絡(luò)技術(shù)高速發(fā)展推動(dòng)虛擬儀器及其相關(guān)領(lǐng)域快速發(fā)展的情勢(shì)下,本設(shè)計(jì)更加符合社會(huì)消費(fèi)理念和廣大消費(fèi)者的生活需要。
[1] 羅志昌,張松,楊益明.脈搏波工程分析與臨床應(yīng)用[M].北京:科學(xué)出版社,2006.
[2] 許雪楠,梁晉濤,黃邦宇. 基于STM32 的健康一體機(jī)控制系統(tǒng)的設(shè)計(jì)[J].微機(jī)型與應(yīng)用, 2013,32(16):20-22,25.
[3] 李能禾,成謝鋒. 基于LabVIEW和MATLAB的心音檢測(cè)與小波去噪[J].微機(jī)型與應(yīng)用, 2010,29(1):6-9.
[4] 韓軍. 基于LabVIEW的脈搏信號(hào)檢測(cè)系統(tǒng)[J].微計(jì)算機(jī)信息,2011,27(5):58-59.
[5] 姚峰,喬曉艷,董有爾. 基于LabVIEW的無(wú)創(chuàng)脈搏血氧檢測(cè)系統(tǒng)設(shè)計(jì)[J].山西大學(xué)學(xué)報(bào)(自然科學(xué)版),2010,33(1):92-96.
[6] 吳素花.張永壽. 基于虛擬儀器的心率檢測(cè)[J].中國(guó)醫(yī)學(xué)裝備,2015(4):47-48.
[7] 楊丹,丁夢(mèng)曉,鄭磊,等.便攜式脈搏血氧飽和度測(cè)量?jī)x的研制[J].微型機(jī)與應(yīng)用,2015,34(22):92-95.
王慧媛(1995-),通信作者,女,本科,主要研究方向:電子與系統(tǒng)。E-mial:1975917761@qq.com。
蔣敏蘭(1976-)女,副教授,碩士生導(dǎo)師,主要研究方向:傳感器技術(shù)及應(yīng)用。
A pulse and heart rate inspection tester based on Arduino and LabVIEW
Wang Huiyuan, Jiang Minlan
(School of Mathematical and Information Engineering, Zhejiang Normal University, Jinhua 321004, China)
Aiming at the current sitution that cardiovascular diseases pose grave threats to human health, and the morbidity rate and death rate in China staying at a high level, a pulse and heart rate inspection tester based on Arduino and LabVIEW is designed in this paper. The lower computer uses Arduino as control chip sends pulse information acquired by pulse sensor to the LabVIEW upper computer, and the upper computer receives the data then processes and displays the dynamic curve of the pulse, meanwhile,displays the pulse measurement results in the front panel of upper computer. This detector can achieve the collection, display, wave shape playback and storage of pulse and heart rate signal, and can realize remote control combined with Internet of things. Test results show that the measurement error is less than 1%. The physical condition of the subjects can be known in time through this inspection tester.
LabVIEW; Arduino; pulse detection; heart rate detection; serial port communication
TH776
ADOI: 10.19358/j.issn.1674- 7720.2016.17.028
2016-05-15)