黃澤慧,陳勇昌
(廣東第二師范學院計算機學院,廣州 510800)
隨著科技的不斷發展,人們追求越來越好的生活和服務。在醫院里,病人需要及時呼叫護士或醫生來處理突發情況,因此醫院呼叫管理系統的重要性也隨之提高。利用病房呼叫系統可以非常方便和高效地尋求醫生或護理人員的幫助,這有助于促進醫院管理服務質量的提高。目前,病房呼叫系統主要分為有線和無線兩種形式[1]。其中有線式病房呼叫系統存在呼叫不及時、布線復雜和抗干擾能力差的現象;相比之下,無線呼叫系統具有顯著優勢,因為它不需要大量鋪設線路,從而使得系統的安裝更簡捷、經濟[2]。
為了讓患者處于舒適的環境,在呼叫系統上增加對病房環境溫度的實時監測,以便環境溫度不適宜時醫護人員可采取相應措施。本系統即基于單片機的病房呼叫與監測系統,可分為從機和主機兩部分。數據傳輸主要借助NRF24L01無線收發模塊完成。
從機即病房部分主要是實現呼叫的病床號按鍵檢測和病房溫度的實時采集,最終實現無線發送數據,比如環境的溫度、患者是否按下呼叫鍵。
主機即醫護人員部分負責接收從機的呼叫信息和溫度信息以及顯示和報警等功能。主機部分在收到來自從機發送過來的信號之后,顯示屏實時顯示病房溫度信息。當從機病床按下呼叫鍵顯示屏會出現患者床號信息,同時指示燈亮起,發出提示音,當醫護人員按下響應鍵,表明已知悉,此時報警聲取消,指示燈熄滅,顯示屏清空患者床號信息。
基于單片機的病房呼叫與監測系統的實現首先需要將系統功能考慮齊全,從而根據功能去設計原理圖,確認原理圖無誤后便是繪制PCB 圖,然后檢查PCB 布線,無誤后便可打板,最后進行元器件的焊接。軟件端需要在Keil uVision5完成源程序的設計并生成可執行的目標代碼,再通過燒錄軟件STC-ISP 把代碼燒錄進單片機,根據系統功能測試是否實現,如果未實現則需要分析是軟件問題還是硬件問題。整體的系統設計流程如圖1所示。

圖1 系統設計流程
根據系統設計功能需求,設計從機和主機的硬件系統。主要的硬件系統包括主從機MCU主控、信號發射電路、信號接收電路、按鍵掃描處理電路、溫度采集處理電路、液晶顯示處理電路、聲光報警處理及電源轉化處理等八個模塊,總體硬件系統框圖如圖2所示。

圖2 硬件系統框圖
一個處理器即單片機,可以使得單片機恢復到一個確定狀態的復位電路和提供時序信號的時鐘電路,這三部分是構成單片機最小系統的最低要求,下面將分別介紹這些模塊。
2.2.1 單片機
基于本系統的特點,從機部分主要處理病床按鍵掃描、溫度采集和無線通信等任務,而主機部分最重要的是接收、處理從機的數據,其中處理來自從機即病床的呼叫信息和顯示處理結果也是其中重要的任務。這些任務都可以通過此主控芯片來實現,從而減少了外接太多元器件的需求,因此很有成本優勢。同時,此主控芯片具備豐富的輸入輸出接口,適合于連接無線模塊和各種處理模塊。它內部帶有8 KB的Flash 存儲器可供編程使用,因此在程序編程的時候可以更加靈活地應用修改,故采用的主控芯片為STC89C52型號。
STC89C52 單片機采用DIP40 封裝,總的來說它的引腳功能有四類,分別為電源、時鐘、控制和并行I/O口引腳。
2.2.2 時鐘電路
STC89C52 芯片內部結構的高增益反相放大器是可以用來構成振蕩器的。時鐘可以通過內部機制或外部機制來生成。本系統設計所采用的時鐘電路是一種內部方式,只需要將晶體振蕩器和微調電容跨接在單片機的第18 個引腳XTAL1 和第19 個引腳XTAL2 引腳之間,即可組成一個穩定的自激振蕩器。
系統中使用了單片機的串行通信,比如單總線和SPI 通信,因此時鐘電路是必不可少的,通常采用12 MHz 振蕩頻率的晶振,電容采用30 pF左右,主要起到穩定頻率和快速起振的作用,時鐘電路圖如圖3所示。

圖3 時鐘電路原理圖
2.2.3 復位電路
單片機上電時,利用電解電容C5 的充電過程來觸發復位功能。接通電源一瞬間,RST 端的電位會與VCC相同,然后隨著電容充電電流逐漸下降。只要保證RST端為高電平的時間大于兩個機器周期,系統即可實現正常復位。此外,按下RESET1按鍵也可以在信號端即RST產生一個復位高電平。復位電路原理圖如圖4所示。

圖4 復位電路原理圖
DS18B20 是一種單總線數字溫度傳感器,測試范圍為-55℃~125℃。其工作電壓范圍為3.0~5.5 V,而本系統采用的單片機供電電壓為5 V,因此選用5 V 電源供應給DS18B20[3]。該器件通過簡單的單總線接口就可以實現信息的傳送,因此在單片機和DS18B20 之間僅需要一根通信線DQ,通信方式是異步、半雙工的,通信接口是1-Wire(單總線)。在利用溫度傳感器采集溫度時,需要注意單總線的時序結構,主要涉及單總線的初始化、發送一位、接收一位;根據調用發送和接收一位完成發送一個字節和接收一個字節的操作,最終得到一個低位在前的字節。DS18B20的原理圖設計如圖5所示。

圖5 DS18B20原理圖
LCD1602 液晶屏為字符型液晶顯示模塊,能夠展示標準ASCII碼字符以及內置的其他特殊字符,呈現內容十分豐富[4]。
該模塊顯示容量為16×2 個5×7 點陣字符。它的工作電壓范圍為4.5~5.5 V,而該模塊的最佳工作電壓為5.0 V。在5.0 V的電壓下,模塊的工作電流為2.0 m?。
LCD1602 具有兩行顯示,每行能夠顯示16個字符,因此整個LCD1602 最多可顯示32 個字符。其D0-D7八個引腳作為通信腳,用于傳輸8位數據。每個顯示位置對應一個地址,如圖6所示。比如想要顯示第一行的第四個位置,可以用圖中的“03”表示。將其轉換為二進制即0000 0011。但是LCD1602 為了顯示地址,需要使最高位D7 保持高電位。因此,顯示真實地址時,應為1000 0011。

圖6 LCD1602內部顯示地址
LCD1602 的原理圖如圖7 所示,背光源正、負極分別接電源和地;V0通過2 kΩ 電阻接到地端,調節LCD顯示對比度。

圖7 LCD1602原理圖
NRF24L01 包含多個內部寄存器,并提供SPI接口與外部單片機交互,使外部單片機可以通過SPI接口配置芯片內部的寄存器。這些內部寄存器分別為控制寄存器和數據寄存器。NRF24L01 工作電壓為1.9~3.6 V,在電源模塊設計了一個穩壓電源,提供穩定的3.3 V 工作電壓給無線通信模塊供電。通過單片機,可以將NRF24L01 配置為發送或接收模式,并對其進行一系列配置,如頻道、地址、每次發送的字節數、是否啟用CRC校驗以及設定功率等[5]。當將其配置為發送模式后,單片機可通過寫入要發送的數據至NRF24L01 中,讓NRF24L01 自動將數據發出;而在將其設置為接收模式后,單片機則可通過觀察IRQ 引腳,了解是否已經接收到了數據,并通過SPI口將數據取出,原理圖如圖8所示。

圖8 NRF24L01電路圖
當主機檢測到從機的呼叫信息,蜂鳴器會發出提示音以及紅色LED 指示燈亮起。硬件上通過三極管PNP作為開關,當BEEP 輸入低電平時,三極管的發射結正偏,集電結反偏,三極管導通,蜂鳴器會發聲、紅色LED 指示燈點亮,實現聲光電報警提示,原理如圖9所示。

圖9 聲光報警電路
從機發送部分總體實現過程為,先定義變量、初始化無線模塊,接著檢測無線模塊是否存在,如果不存在,LED 指示燈閃爍;如果無線模塊存在,則進入按鍵檢測和溫度處理,將采集到的病床號數據以及環境溫度寫入發送數據數組,最后通過無線模塊發送數據,整體流程如圖10所示。

圖10 從機流程圖
主機接收部分的總體實現過程為,首先是初始化無線模塊、LCD 顯示屏,接著檢測無線模塊是否存在,如果不存在,蜂鳴器發出報警聲;如果無線模塊存在,則進入大循環讀取狀態寄存器來判斷數據接收狀況,如果有數據,將讀取放在接收緩沖區中,接著將主機配置為接收模塊再進行簡單的數據驗證,驗證成功后將數據存放在LCD 顯示數組里,再調用LCD 顯示函數以及按鍵處理,最終顯示呼叫信息和溫度信息,如圖11所示。

圖11 主機流程圖
在焊接好設計的PCB 板之后,首先需要對電源信號進行檢測,使用萬用表的蜂鳴檔測量各個電源信號與地是否存在短路,若不存在短路給設備上電,使用電壓檔測量各個電源電壓是否正確,以上過程無誤就進入源程序生成可執行的目標文件燒錄測試。整體的調試流程如圖12所示。

圖12 調試流程圖
本系統的預期使用是實現病房呼叫及病房溫度顯示,因此需要對每個病房能否呼叫、主機能否呼應、溫度能否顯示進行測試。為了確保測試的正確性,也需要對主要模塊進行單獨的測試,比如無線模塊損壞測試。最終本系統可以實現從機病床1、2、3、4 號按下呼叫鍵,按下瞬間指示燈閃爍,主機顯示屏第一行顯示溫度以及第二行顯示呼叫的病床號1、2、3、4,同時蜂鳴器發出報警聲以及紅色指示燈常亮。
以下是主從機的整體外觀及實現過程中的部分效果圖,當圖13(a)所示的從機所處的病床1、2、3、4 號同時按下呼叫鍵,主機的顯示屏顯示病床號信息和病房溫度信息,同時LED 燈亮起、蜂鳴器響,如圖13(b)所示;最終主機按下呼叫鍵顯示屏清空病床號信息,溫度仍顯示,如圖13(c)所示。

圖13 主從機整體外觀及部分效果
本系統經過硬件的搭建、軟件的編寫、軟硬件調試,最終實現護理站即主機可以通過無線模塊接收病房從機的呼叫信息和溫度信息。通過無線傳輸模塊NRF24L01使從機采集病床是否按下呼叫鍵以及環境溫度信息,而環境的溫度利用DS18B20 來采集。主機接收從機發過來的信號,當病床有呼叫信號時,主機會控制蜂鳴器和發光二極管,發出聲光報警,以提醒監護人員有病人呼叫,此時LCD 顯示屏會顯示呼叫的病房號和病房溫度,若此時護理人員按下主機的呼應鍵,則會取消對應的呼叫,表示已知曉病人的呼叫,同時顯示屏清空病房號信息。本系統具有易操作、性能可靠等優點。
隨著醫療技術、醫療設備和醫療管理的不斷進步,病房呼叫和監測系統必將不斷改善和更新,更加趨于智能化和無線化。在未來可對本系統逐步增強無線信號覆蓋率和使用抗干擾性能更強的無線協議,以此提高醫療服務的效率和質量。