劉佳華 曹帝杰 牛子健 張子林


摘 要:隨著可穿戴設備的普及,心率監測功能已經成為各種可穿戴設備必備的功能,但是現有可穿戴設備所具有的人體心率監測系統比較單一,不能對體溫和心率等多種指標同時進行檢測,降低了用戶體驗感。本設計通過一種LabVIEW軟件與單片機來對人體溫度和心率進行讀取和分析,其原理是利用LabVIEW軟件進行各種子VI設計,主要包括收集MIT-BIH通道數、采樣率、數據點數、數據存儲格式、數值等參數,并收集電壓轉換倍數、數據格式分析以及單片機溫度等數據。本設計成本較低,可以節約人工成本,同時具有人機交互性強、操作簡單等優點。
關鍵詞:LabVIEW;單片機;數據處理
中圖分類號:R318.6;TP368.1 文獻標識碼:A 文章編號:1674-1064(2020)11-053-02
DOI:10.12310/j.issn.1674-1064.2020.11.025
為實現采集人體心率和溫度等目標,筆者結合單片機開發板,運用溫度傳感器模塊和MIT-BIH讀取,進行溫度與人體心率的實時采集與顯示,在LabVIEW2018軟件上搭建信息采集的前面板與子程序。
1 溫度采集模塊設計
利用DS18B20實現對溫度的采集。在8段數碼管上顯示采集溫度的示數變化(整數部分顯示整數溫度,小數保留一位小數),可以根據用戶需求設置采樣時間、溫度范圍、溫度采集的開始與結束等。
LabVIEW是一種程序開發環境,由美國國家儀器(NI)公司研制開發,類似于C和BASIC開發環境,但是LabVIEW與其他計算機語言的顯著區別是:其他計算機語言都是采用基于文本的語言產生代碼,而LabVIEW使用的是圖形化編輯語言G編寫程序,產生的程序是框圖的形式。LabVIEW軟件是NI設計平臺的核心,也是開發測量或控制系統的理想選擇。LabVIEW開發環境集成了工程師和科學家快速構建各種應用所需的所有工具,旨在幫助工程師和科學家解決問題、提高生產力,推動不斷創新。界面的設計與控制就變得十分方便,子程序的編寫更加直觀明確,使人容易理解。
單片機開發板一般具有流水燈、點陣顯示、DS18B20溫度檢測、液晶屏、SD卡、收音機、mp3解碼等功能,為開發提供了很大的便利。DS18B20溫度檢測模塊是開發板自帶的,能夠直接將程序寫進去,方便實用。
利用現有的單片機開發板,加上LabVIEW開發軟件,為設計基于LabVIEW的連續實時數據采集與存儲系統提供了很大的幫助。
單片機開發板具有的功能較多,但是該設計中僅僅使用顯示模塊和溫度傳感器模塊,因此將單片機與LabVIEW調通之后,在設計界面、編寫程序過程中,只需要使用這兩個模塊的功能,通過LabVIEW編程控制單片機即可。
單片機和PC的通信,是通過單片機串口和PC串口之間的硬件連接實現的。在許多單片機應用系統中,上、下位機分工明確,作為下位機核心器件的單片機往往只負責數據的采集和通信,而上位機通常以基于圖形界面的Windows系統為操作平臺。為便于查詢和保存數據,還需要數據庫的支持,這種應用的核心是數據通信,其包括單片機和上位機之間、客戶端和服務器之間,以及客戶端和客戶端之間的通信,而單片機和上位機之間的數據通信則是整個系統的基礎。
數據通信的硬件采用3線制,將單片機和PC串口的3個引腳(RXD、TXD、GND)分別連在一起,即將PC和單片機的發送數據線TXD與接收數據RXD交叉連接,兩者的地線GND直接相連,而其他信號線,如握手信號線均不使用,采用軟件握手的方式。這樣既可以實現預定的任務,又可以簡化電路設計。
在保證單片機能夠順利通信之后,才能實現數據的實時采集和存儲。
利用Keil C51和LabVIEW編寫程序實現PC與單片機串口的通信后,就可以在LabVIEW 2018上設計界面、編寫程序[1]。
1.1 LabVIEW前面板設計
該設計需要有溫度的數字顯示、柱狀顯示與波形圖顯示,并能夠設置溫度的上下限,采集頻率的快慢能夠更改,儲存的位置與形式可以選擇,并使串口參數與單片機開發版保持一致。運用labview前面板的功能對這些功能進行布局,設計其主界面。
其具有的功能顯示自上而下,依次為時間顯示、開始按鍵、文件儲存位置選擇、采集停止按鈕、串口參數設置口、溫度波形圖、溫度計、溫度值、采集時間、溫度上下限、溫度狀態、溫度狀態燈等。
運行labview之前,將單片機的串口參數設置正確,并選擇溫度采集的溫度存儲位置,設置溫度的上下限。點擊開始按鍵,單片機開發板就開始采集溫度數據,此時的時間與系統時間保持一致,溫度傳感器對采集的溫度進行數值顯示、柱狀顯示以及波形圖顯示。改變溫度傳感器周圍的溫度,能夠觀察到采集的溫度的變化[2]。
1.2 LabVIEW子程序設計
建立主界面顯示,需要特定的程序實現,于是根據數據傳輸的順序,加上循環指令和中斷指令保證實時連續采集與儲存,并能實現顯示。
每一個功能的實現,都需要制定一個程序。首先,串口傳輸設定一個固定的參數,能夠將單片機采集的溫度數據,通過串口傳輸到labview前面板上顯示。點擊“開始”指令,如果滿足通訊協議,就通過了真假判斷指令,執行接下來的程序;如果不滿足程序就會報錯,提醒修改。之后進入while循環,在循序結構圖中,首先判斷進入信號是否滿足要求,滿足要求進入第二層結構。在第二層結構中可以設定采集信號的頻率,根據設定頻率采集周圍環境的溫度。這時將采集的數據經過字符串的轉化,分到三部分進行顯示和判斷,其中的一部分通過連接字符串進入存儲格式選擇,格式自帶的日期和系統保持一致;另外一部分則直接通過數值和溫度計直接顯示;最后一部分則要判斷采集的溫度是否在設定溫度之間,若在范圍內就顯示正常指示燈綠色,如果不在,就會顯示不正常,變為紅色。最后點擊“結束”,即可不再采集。否則,一直進行數據采集。后面板設計如圖1所示[3]。
2 心率采集模塊設計
心電信號的分析比較復雜,可能會用到高級信號處理工具箱(ASPT)和數字濾波器設計工具箱(DFDT)等。另外,還有NI LabVIEW生物醫學工具包,工具包的VI庫包含多種信號處理算法,用于許多常見的生物醫學信號處理任務,比如EEG和ECG信號仿真、EEG雙譜和相干性分析、ECG特性提取和EMG功率分析等。對于本設計,筆者僅利用LabVIEW的基本函數進行簡單的心電信號分析。典型的心電信號如圖2所示。
可以利用信號處理→波形測量→波形監測→波形波峰監測函數測量出心電信號各尖峰(R)的位置和尖峰數量,由各尖峰的位置差可以計算出每次心跳的時間間隔(RR間隔)并進而計算出每次心跳的頻率,這樣就可以分析出平均心率和心率的標準差。每兩次心跳的間隔都是不同的,由RR間隔可以計算出RR間隔的均值和標準差。
HRV分析提供了自主神經系統(ANS)的一個定量標記,因為HRV的調節機制源自交感和副交感神經系統。迄今為止,許多研究人員和工程師都致力于發掘HRV分析中對臨床應用有價值的信息。在過去的十年中,已經發表了超過2 000篇關于HRV的文章,這些文章考察了HRV與血壓、心肌梗塞、神經系統、心律失常、糖尿病、呼吸、腎衰竭、性別、年齡、疲勞程度、藥物、吸煙、酒精等因素的關系[4]。
3 結語
文章闡述的人體心率與溫度檢測設計方法簡單但具有創新實用性,對日常生活比較實用方便。利用LabVIEW2018軟件與單片機進行結合設計,打破了傳統設計方法的局限,有很好的創新性。設計方法簡單,但功能齊全,是一種檢測人體心率與溫度的好方法[5]。
參考文獻
[1] 楊忠仁,饒程,鄒建,等.基于LabVIEW數據采集系統[J].重慶大學學報(自然科學版),2004,27(2):18-22.
[2] 陳敏,湯曉安.虛擬儀器軟件LabVIEW與數據采集[J].小型微型計算機系統,2001,22(4):32-35.
[3] 呂向鋒,高洪林,馬亮,等.基于LabVIEW串口通信的研究[J].國外電子測量技術,2009,28(12):8-11.
[4] 王建群,南金瑞,孫逢春,等.基于LabVIEW的數據采集系統的實現[J].計算機工程與應用,2003,39(21):23-24.
[5] 胡蔣明,張曉青,賈豫東,等.3km分布式多模光纖溫度報警系統設計[J].現代計算機,2016(6):45-47.