1.概述: 電子血壓計因具有無創性、操作簡單、攜帶方面等優點,目前得到廣泛的應用和推廣。無創檢測血壓的方法很多,如柯氏音法,測振法,超聲法、雙袖帶法、恒定袖帶法、逐拍跟蹤法、張力定測法和恒定容積法等。其中測振法就是我們常說的示波法,由于具有較好的抗干擾能力,能比較可靠地判斷血壓、實現血壓的自動檢測而成為無創血壓的主流。目前國內外大多數電子血壓計都采用示波法。 示波法的原理同柯氏音法,也需要充氣袖套來阻斷動脈流,但在放氣過程中不是檢測柯氏音,而是檢測氣袖內氣體的振蕩波(測振法由此得名),這些振蕩波是袖帶與動脈耦合的結果,源于心血管周期內血管壁由于收縮舒張引起的壓力脈動。理論計算和實踐均證明此振蕩波的幅度有一定的規律,與動脈收縮壓、平均壓以及舒張壓有一定的函數關系。 針對示波法,本文將詳細介紹基于中穎電子SH79F164單片機的血壓計系統方案與軟硬件實現。 2.硬件設計 在硬件電路設計方面,筆者參考了大量的資料,最終選定SH79F164單片機作為主控IC。其理由是SH79F164內建資源豐富,既能節省大量外圍器件,又方便系統調試。SH79F164內建資源主要有:可編程儀表放大器(PGA)、帶通濾波器、固定增益放大器、恒流源放大器、10位A/D轉換器、時基定時器(RTC)。 硬件部分構成:壓力傳感器、SH79F164單片機、LCD、袖套、充氣泵、放氣閥、按鍵等(見圖3)。 2.1.芯片介紹 SH79F164是中穎電子專門針對血壓計應用而開發的增強型單片機。其整合了低功耗時鐘和存儲周期的高速8051可兼容單片機。在同樣振蕩頻率下,較之傳統的8051芯片它有著運行更快速的優越特性。 SH79F164保留了標準8051芯片的大部分特性。這些特性包括內置256字節RAM和2個16位定時器/計數器,1個UART和外置中斷INT0、INT1和INT2。 SH79F164內建16K字節Flash,Flash區域除了能保存程序代碼外,還能保存數據。因此,能通過程序實現用戶采集到的血壓歷史記錄數據保存在Flash區域,不用外接EEPROM來保存歷史記錄與標定初值,節省硬件成本。 SH79F164不僅集成了如EUART標準通訊模塊,此外還集成了LCD驅動器、具有內建比較功能的ADC、可編程增益放大器、運算放大器、PWM定時器和時基定時器(RTC)等模塊。 為了達到高可靠性和低功耗,SH79F164內建PLL 時鐘、看門狗定時器、低電壓復位功能。考慮到血壓計應用SH79F164還提供了2種低功耗省電模式。 下圖是SH79F164系統框圖: 2.2.電路原理 壓力傳感器將用戶袖套的血壓信號轉換為電壓信號,經儀表放大器放大(PGA)后一路直接送A/D轉換器得到袖套內絕對壓力值(見圖1),另一路送到由OP2和OP3組成的帶通濾波器、固定增益放大器,提取脈搏信號(見圖2)。 由內建OP2和OP3組成的帶通濾波器其目的是濾掉直流成分,以及濾掉人體與袖帶摩擦的高頻噪聲和50Hz工頻噪聲、電路噪聲、PUMP與氣閥噪聲等,使軟件能準確地提取脈搏振動波。 內建OP1構成恒流源為壓力傳感器提供恒定電流,根據傳感器規格及實際應用,OP1輸出的恒定選擇在0.3mA~1mA。 內建可編程儀表放大器(PGA),主要特定是具有高輸入阻抗而不會對sensor的恒流電路產生影響,同時又能保證對小信號放大的高增益性。儀表放大器包含兩個部分的可編程增益,總計可編程增益為64檔,其中PGA1的編程增益范圍:16倍、32倍、64倍、128倍,PGA2的編程增益范圍:1.33倍~2.58倍。如需要調整輸出范圍可分別通過:VREF1及VREF2兩個偏置電壓實現。 通過IC內建資源,本系統可實現程序自動標定初始化,不用人工調節外圍電路,方便批量生產。 下圖為系統前端小信號放大電路: 2.3.系統設計特點
壓力傳感器輸出的信號直接連接到SH79F164單片機,由芯片內建資源完成放大、濾波、采集處理,外圍器件極少(圖6)。 圖7為筆者所整理的傳統電子血壓計系統框圖,由圖可知,外圍器件繁多,不便于生產、調試,而且系統成本高。 3.軟件設計 3.1.軟件算法 就示波法而言,其方法都是在平均壓的基礎上判定收縮壓和舒張壓,比較典型的方法有兩種:比例法和S判別法。目前市場上大多數電子血壓計都使用這兩種算法計算血壓值。本文采用S判別法計算收縮壓和舒張壓。 3.2.軟件濾波 常用的軟件濾波方法有許多,如:限幅濾波法、中位值濾波法、算術平均濾波法、遞推平均濾波法、一階低通濾波法等。本文對壓力信號采用限幅濾波法濾除異常的抖動,對脈搏信號采用二階低通濾波算法再次濾除50Hz工頻干擾,對心率信號計算采用中位值平均濾波法。 3.3.系統標定 由于SH79F164內建PGA和濾波電路,對增益及偏置電壓能通過內部寄存器來設置。因此,傳感器offset校正、壓力曲線范圍調節、零點與滿幅點初值確定都能軟件自動實現。系統標定主要特點為: (1).程序自動標定,無需人工調節電位器,按鍵三次即完成標定 (2).程序總標定時間小于10ms(不包括充氣及工人按鍵時間) (3).程序自動標定sensor offset (4).最大校準零點偏移:±30mV,常用sensor小于±20mV (5).最大輸入量程:120mV,300mmHg壓力對應30mV左右 (6).自動確認零點值與滿幅值 系統標定初始化分三個步驟: 第一步:零點標定(見圖8)。零點標定的目的是保證輸入信號在PGA的有效范圍內,以及不同傳感器的offset值能有效標定。 第二步:滿幅標定(見圖9)。滿幅標定的目的是調節絕對壓力信號的輸出斜率,保證系統壓力值檢測精度。 第三步:零點確認(見圖10)。本步驟的目的是修正壓力曲線的斜率,以及確認之前調節過的參數設置。 3.4.程序流程 按鍵檢測充氣開始ON / OFF電源開關鍵ONOFF壓力閥值檢測YesNo停止充氣袖套開始放氣檢測壓力檢測脈搏峰值保存峰值與袖帶壓力值結束檢測完成根據計算結果顯示: 收縮壓,舒張壓,心率進入自動標定程序系統標定按鍵YesNo標定完成系統復位判斷標志位確定是否已做標定NoYes第一步: 零點標定第二步: 滿幅標定第三步: 零點確認 4.結束語 本文給出了基于中穎電子SH79F164單片機為核心的電子血壓計設計方案,充分利用了該芯片內建的功能模塊,具備電路簡單、低功耗、精度高以及實用性強等特點,具有較高的設計參考價值,可供電子愛好者或業內設計人員參考。 |