施紀紅
(蘇州健雄職業(yè)技術(shù)學院,江蘇 太倉 215400)
脈搏是動脈的搏動;脈率是每分鐘脈搏的次數(shù)。脈率檢查是血管是否正常的一項輔助檢查方法。 在安靜、清醒的情況下,正常成人的脈率為60~100 次/分。超過100 次/分,稱為心動過速;低于60 次/分,稱為心動過緩。 很多疾病都會導(dǎo)致脈率的變化,所以監(jiān)測脈率可以輔助這些疾病的診療。
脈率監(jiān)測目前主要有兩種方式:一是通過大型的心電監(jiān)護儀記錄病人的生命體征的變化;這種方式數(shù)據(jù)詳細,但成本高、不能推廣到全部病床。 二是護士每天手工測量病人的血壓和脈搏;這種方法成本小,但工作量大,并且數(shù)據(jù)不連貫,為后續(xù)治療提供的幫助少,也不能在病人脈率發(fā)生異常時及時報警。
在物聯(lián)網(wǎng)大數(shù)據(jù)時代,針對以上需求,本文設(shè)計了一套便攜低成本的脈率監(jiān)測系統(tǒng)。 該系統(tǒng)可以實時獨立監(jiān)測每個病人的脈率,通過nRF2401 無線通信技術(shù)在每個病房的OLED 屏上實時滾動顯示每個床位的脈率信息。 同時也將每個病房的脈率信息上傳并記錄在護士站電腦中;護士可以遠程監(jiān)控全部病人的脈率信息,對脈率數(shù)據(jù)進行統(tǒng)計與分析,并有報警設(shè)置,能對突發(fā)情況進行報警。
本系統(tǒng)檢測終端數(shù)據(jù)量少且采用遠程存儲,所以檢測端的MCU 選擇性價比高的STC89C52 單片機。 在病房顯示端和護士站考慮到后續(xù)的功能擴展和數(shù)據(jù)的臨時存儲,選擇了STM32F103ZET6 芯片。 本系統(tǒng)設(shè)計了兩層無線傳輸體系,均使用nRF2401 傳輸芯片。 第一層是病床采集端的52 單片機和病房數(shù)據(jù)顯示端的STM32 單片機之間的無線數(shù)據(jù)傳輸。 第二層是病房數(shù)據(jù)顯示端的STM32 單片機和護士站SMT32 單片機之間的無線數(shù)據(jù)傳輸。 最后通過USB-RS232 轉(zhuǎn)接芯片將護士站收集的全部信息上傳到PC 機中進行存儲。通過上位機軟件對數(shù)據(jù)信息分析[1]。 系統(tǒng)整體設(shè)計,如圖1 所示。

圖1 系統(tǒng)整體設(shè)計
基于單光束反射式光電傳感器CT188 設(shè)計了脈率采集電路,如圖2 所示。 當手指放在ST188 上,紅外發(fā)光二極管發(fā)出的紅外光照射到手指的脈搏血管,由于心臟跳動引起的手指內(nèi)血管節(jié)奏性的充盈變化,使得反射的紅外光強度隨之變化,由光電三極管接收放大轉(zhuǎn)換為不同的電壓信號。 其中R2 的電阻值選擇影響三極管感應(yīng)紅外光的靈敏度,此處選擇470 歐姆。 轉(zhuǎn)換后的電壓經(jīng)C1 隔直耦合到R5。 R3、C2 組成低通濾波器濾除高頻干擾,C3、R4 進一步濾除殘留的干擾。截止頻率由C3、R4 決定。 信號經(jīng)低通濾波后,送至由LM358 運放2IN(5 腳)。 運放LM358 將信號放大,放大倍數(shù)由R6 和R7 的比值決定。 經(jīng)過LM358 放大后輸出到LM358 的1IN-(2 腳)構(gòu)成的比較器。 放大后的脈搏信號與電阻R8、R10 分壓建立基準電壓(1IN+3腳)比較后輸出方波脈沖。 IOUT 最終送給單片機的中斷引腳INT0。

圖2 脈率采集電路
射頻nRF2401 功耗小、速率快,特別適用于數(shù)據(jù)量少,傳感器布局相對集中,總體傳輸距離較近的場景。根據(jù)病區(qū)中每個病床的分布,本系統(tǒng)選擇了nRF2401技術(shù)進行無線傳輸。 nRF2401 與單片機之間的連接如圖3 所示。 NRF2401 的收發(fā)模式有Enhanced(增強型)ShockBurstTM 收發(fā)模式、ShockBurstTM 收發(fā)模式和直接收發(fā)模式3 種。 本系統(tǒng)采用第一種收發(fā)模式。

圖3 NRF2401 與單片機連線
2.2.1 脈率采集端發(fā)送模式
脈率采集端是一個發(fā)送端,向病房顯示端發(fā)送采集到的脈率數(shù)據(jù)。 具體步驟是,采集端51 單片機先把自己的地址和要發(fā)送的數(shù)據(jù)按時序送入NRF24L01(此時NRF24L01 會自動加上字頭和CRC 校驗碼);MCU配置CONFIG 寄存器,使NRF24L01 進入發(fā)送模式;MCU 將CE 置為高(至少10us),使之能發(fā)送;發(fā)射時先給射頻前端供電,然后射頻數(shù)據(jù)打包,高速發(fā)射數(shù)據(jù)包(這些均由NRF24L01 自動完成)。
2.2.2 病房顯示端收發(fā)模式
病房顯示端先是接受本病房脈率采集端發(fā)送來的脈率信息,并且本地顯示出來。 接受工作流程是,病房顯示端單片機先配置要接收的地址和要接收的數(shù)據(jù)包大小,進入接收模式;配置CONFIG 寄存器,使之進入接收模式;MCU 使CE 置高;200 us 后,NRF24L01 進入監(jiān)視狀態(tài),等待數(shù)據(jù)包的到來;確認收到數(shù)據(jù)后,記錄地址(接收地址與發(fā)送地址應(yīng)該相同),接收端通過該地址發(fā)送ACK 應(yīng)答信號。 在發(fā)送端,通道0 用作接收應(yīng)答信號,一定要注意兩端地址需相同,才能接收到正確的ACK 信號。 當接收到正確的數(shù)據(jù)包后,NRF24L01自動移去字頭、地址和CRC 校驗位;NRF24L01 通過把STATUS 寄存器的RX_DR 置位(STATUS 一般引起MCU 中斷)通知MUC;MCU 把數(shù)據(jù)從FIFO 讀出(0x61指令);所有數(shù)據(jù)讀取完畢后,可清除STATUS 寄存器。
病房顯示端同時也需要將收集到的本病房的脈率數(shù)據(jù)無線發(fā)射給護士站的STM32 單片機。 該過程與脈率采集端發(fā)送模式相似,不再贅述。
2.2.3 護士站接受模式
護士站STM32 單片機接受本樓層各個病房顯示端單片機收集到的脈率數(shù)據(jù),并對數(shù)據(jù)初步處理,對異常數(shù)據(jù)進行報警。 STM32 單片機和51 單片機在使用nRF24L01 時的區(qū)別主要是端口、時鐘、中斷的設(shè)置及初始化。 但是使用CubeMAX 大大簡化了對STM32 芯片的配置工作,讓工作重點放在了程序的編寫上。
顯示模塊選擇的是UG-2864HSWEG01 進行仿真,其驅(qū)動芯片為SSD1306,使用IIC 工作模式。 該模式將BS0 與BS2 拉低, BS1 拉高。 D[0…7]是數(shù)據(jù)總線,按引腳描述,IIC 接口下D2 為SDAout,D1 為SDAin,D0為SCL 線。 D2 與D1 可直接相連,而且必須接上上拉電阻。 仿真效果如圖4 所示。

圖4 病房脈率顯示仿真效果
USB 轉(zhuǎn)串口芯片主要包括CH340 系列,CP2102/CP2103,FT232R,PL2303HX 等。 其中FT232 系列芯片穩(wěn)定性是最好的,但是價格也最貴。 國產(chǎn)芯片CH340價格和穩(wěn)定性上都不錯。 本文選擇了性價比最高CH340 芯片。 電路設(shè)計中CH340R 必須使用12MHz 的晶振,否則無法正常工作。
該模塊主要做3 件事:(1)各種初始化(單片機/脈率采集器/無線模塊初始化);(2)定時采集脈率信息;(3)接收到病房顯示模塊發(fā)送的中斷請求后,將本模塊ID 和測得的脈率數(shù)據(jù)無線發(fā)送給本病房顯示模塊。
該模塊主要做4 件事:(1)預(yù)存本病房監(jiān)測模塊的ID 編號;(2)定時接收來自監(jiān)測模塊的脈率信息;(3)判斷接收信息的正確性并顯示;(4)上傳接收到的脈率數(shù)據(jù)信息。 設(shè)計流程如下:單片機啟動->系統(tǒng)時鐘/DPIO 引腳初始化->顯示功能模塊初始化->無線模塊初始化(預(yù)存本病房各個監(jiān)測模塊ID)->定時ID編號接收(包含了脈率信息)->判斷接收數(shù)據(jù)是否正確->正確則在顯示,不正確則再次接收->接收到護士站發(fā)送的中斷請求后,將本模塊ID 和收集的本病房的數(shù)據(jù)無線發(fā)送給護士站[2]。
該模塊主要做4 件事:(1)預(yù)存各個病房顯示模塊的ID 編號;(2)定時接收來自病房模塊匯總的脈率信息;(3)判斷接收信息的正確性,實時報警;(4)定時通過串口向上位機傳輸全部的脈率數(shù)據(jù)信息。
其中,STM32 串口通信編程思路:(1)配置RCC 寄存器組,使用PLL 輸出72 MHz 時鐘并作為主時鐘源;(2)配置GPIOA 端口,設(shè)置GPIOA.9 為第2 功能推挽輸出模式,GPIOA. 10 為浮空輸入模式;(3) 配置USART 設(shè)備,主要參數(shù)為:使用9 600 bps 波特率、8 位數(shù)據(jù)長度、1 個停止位且無校驗位、全雙工模式。 使用時一定要把PLL 輸出設(shè)為72 MHz,并且作為主時鐘使用,否則波特率需要重新計算。
脈率不斷地通過串口上傳到PC 電腦端。 上位機主要是對每個病床采集的脈率數(shù)據(jù)進行存儲。 上位機設(shè)計了相應(yīng)的數(shù)據(jù)庫,保存一定時間范圍內(nèi)的脈率數(shù)據(jù),護士可以通過上位機軟件對保存的數(shù)據(jù)進行查詢。數(shù)據(jù)通過波形顯示,為疾病的診斷提供數(shù)據(jù)支持[3]。本系統(tǒng)的脈率顯示波形如圖5 所示。

圖5 脈率顯示波形
本文選擇CT188 設(shè)計的脈率檢測系統(tǒng),通過對軟硬件的設(shè)計與調(diào)試,單個脈率檢測與標準化設(shè)備測量的數(shù)據(jù)進行比較,相對誤差小于2%。 但連續(xù)檢測中,由于手指位置不對、監(jiān)測時晃蕩造成的粗大誤差較大。系統(tǒng)如果要真實投入工作,需要對整個監(jiān)測部件進行機械結(jié)構(gòu)上的進一步設(shè)計。
本文設(shè)計的脈率無線監(jiān)測硬件系統(tǒng)結(jié)構(gòu)簡單、成本低、組網(wǎng)方便,減少了護士脈率檢測工作量,提高了工作效率。 設(shè)計的上位機脈率管理系統(tǒng),能夠有效地存儲脈率數(shù)據(jù),提供折線圖顯示方式有助于脈率的分析。 但該系統(tǒng)目前只能檢測脈搏,后續(xù)可以通過增加體溫、血氧等傳感器檢測更多的生命體征。