徐杰,崔艷
(山西師范大學物理與信息工程學院,臨汾 山西 041004)
隨著社會經濟的快速發展,人們對于健康愈發地重視,生活中各類運動APP、運動手環應運而生。肆虐全球的新冠疫情使得具有風險提示功能的可穿戴設備成為了必需品。后疫情時代,可穿戴設備和其他互聯設備會越來越多地投入到醫療應用中,研發可長期佩戴的便攜式無線醫療設備成為了最新的發展方向。隨著我國進入疫情防控常態化,衛生經濟也即將迎來空前的發展機遇。
單一的健康指標檢測方案有很多,比如,文獻[ 2]以AT89C51單片機為控制核心,使用紅外光電傳感器ST188進行數據采集,將患者的心率顯示在LCD1602上,實現了對患者心率的實時監測和異常報警功能,但功能單一,無法實現向監護人報警的功能。文獻[ 5]中利用光電容積法采集心率信號,但僅限于監測人體心率信號,監測功能單一。為此,本文提出一種基于單片機STC89C52,利用傳感器和無線通信模塊實時無線監測人體體溫、心率的集成化健康系統,實現數據采集、監測、報警、無線傳輸的功能。該系統具有待機長、便攜、成本低等特點。
本設計采用低功耗高性能的微型控制器STC89C52單片機,利用RPR220紅外傳感器和溫度傳感器采集人體生物信號—心率和體溫,傳感器將實現數模轉換,其中體溫信號數值將顯示在LCD1602數碼管上。因心率信號可能會受到各種各樣因素的干擾,比如汗液、潮濕度、溫度等,所以采用RC濾波電路濾除非心臟跳動的干擾信號,再經過LM358波形整形,變為方波傳入單片機,觸發外部中斷函數,使得單片機接收一個脈沖波形,顯示屏就計數一次。將計算得到參數保存在存儲模塊。再通過SPI通信把數據傳送給nRF905射頻模塊,利用無線通信向監護人和監護中心發出報警信號。該設計利用軟件編程設定體溫和心率報警閾值,一旦測量值超過設定范圍,便會及時反饋,發起報警。該設計硬件結構框架圖如圖1所示。

圖1 硬件結構框架圖
該設計的軟件編程主要包括體溫監測、心率監測和nRF905兩部分,核心原理如下:
體溫部分:DS18B20采用16位補碼的形式來存儲溫度數據。當溫度轉換命令發布后,經轉換所得的溫度值以二字節補碼形式存放在高速暫存存儲器中。高字節的五個S為符號位,S=1表示溫度為正,S=0表示溫度為負,剩下的11位為溫度數據位,該系統設計采用的是12位分辨率,所有位全部有效。
心率部分:設心臟跳動一次的時間為t(秒),心率n的單位為次/分鐘,故知n= 60/t,設連續跳動M次需要T秒,則代入公式易知此時的心率為 n=60M/T。由于單片機的定時計數器T0定時1毫秒中斷一次:T=0.001T0, 故最終計算公式為6000M/T0。
本設計硬件系統STC89C52單片機為核心控制芯片,其具有高性能、低功耗、抗干擾強等優點。相對于傳統的80C51單片機而言,它對指令的處理速度提高了8-10倍。該單片機主要是用來實現快速準確處理數據,配置兼容nRF905的工作模式,啟動信號采集模塊和顯示模塊。
2.2.1 體溫信號采集模塊
DS18B20數字溫度傳感器體積小,接線方便,抗震性好,使用方便,封裝形式多樣,適用于各種數字測溫和控制領域。該模塊由接在VCC外部的5v電平供電,中間通信口與P3.7相連,由程序完成ROM設定以及打開DS18B20的記憶和控制功能。傳感器即可自動向單片機提供使用者體溫的數字信號。
2.2.2 心率信號采集模塊
人體的心臟跳動帶動了人體血液循環,在人體指尖處即血管末梢處的血液微循環使得該處血液容積改變。利用RPR220傳感器,發出波長不變的紅外線,有效獲取到由于心臟跳動形成的指尖血液的改變。將采集到的心率信號轉變為電信號輸送給RC低通濾波電路,考慮到信號可能會受到各種因素的影響,因此通過濾波電路濾除非心臟跳動的干擾信號。已知正常人體心跳在60-100次/分鐘,故設定該低通濾波電路的截止頻率為2.5-3.5,選擇R21=100K,C5=0.5uF,截止頻率約為3.2Hz。由于心率信號十分微小,通過LM358放大器進行兩次放大,達到單片機可識別強度,同時利用LM358搭建的電壓比較器對波形進行整形,將輸入的正弦信號轉變為脈沖性信號,將方波輸入單片機。心率信號采集模塊的電路原理圖如圖2所示。

圖2 心率信號采集模塊電路原理圖
此設計的無線通信模塊選用了nRF905,此芯片具有體積小、抗干擾能力強、高速傳輸、通信效果好、功耗極低等一系列優點。利用軟件設置實現單片機的IO端口控制nRF905模塊的狀態接口、模式接口和SPI接口,實現高效、快速的數據傳遞。nRF905與STC89C52的接線圖如圖3所示。

圖3 nRF905與STC89C52的接線圖
數據顯示單元采用LCD1602液晶顯示屏,該模塊原理圖如圖4所示。

圖4 數據顯示模塊原理圖
DO-D7口用于顯示數據的傳輸;RS口為寄存器的選擇功能,通過P2.5進行控制;R/W口通過P2.6口實現對液晶的讀和寫的操作;EN端為液晶屏的使能端:高電平使能信號有效。通過分壓電路與VO口相連,實現液晶屏的亮度調節。
軟件包括信號采集處理和無線通信nRF905兩大模塊。
信號采集部分將在Keil uVision5的編譯環境中,根據單片機的時序和傳感器需實現的功能進行C語言匯編,程序流程圖如圖5所示。
無線通信nRF905模塊的驅動程序設計的關鍵在于接受和發射數據信號,接收和發送的地址要一致,程序流程圖如圖6所示。

圖6 無線通信nRF905模塊流程圖
體溫和心率是反饋人體機能是否健康的兩項重要指標,本設計提出了以傳感器和STC89C52單片機為核心的便攜式無線實時體溫心率監測系統,利用無線通信技術和nRF905模塊實現數據包的傳輸和報警信息的反饋。該系統在監測生理狀態的基礎上,可以實現狀態異常報警和數據傳輸監測,提醒使用者生理健康狀況,實時發送監測數據給監護人和監控中心,實現點對點、點對多點的通信。該系統還具有功耗低、性能高和攜帶方便的特點。