《電子技術應用》
您所在的位置:首頁 > 微波|射頻 > 設計應用 > 基于單片機的無線病房呼叫系統(tǒng)設計
基于單片機的無線病房呼叫系統(tǒng)設計
來源:電子技術應用2012年第2期
郭廣頌1,胡 璞2
1.鄭州航空工業(yè)管理學院 機電學院,河南 鄭州450015; 2.益陽橡膠塑料機械集團 技術中心,湖南 益陽413000
摘要: 在傳統(tǒng)病房呼叫系統(tǒng)的基礎上提出一種基于單片機實現(xiàn)的無線病房呼叫系統(tǒng)設計方法,給出了基于單片機和射頻通信芯片nRF401而設計的硬件原理圖,并對影響無線通信性能的通信協(xié)議的設計、數(shù)據(jù)幀和防信息碰撞方法的實現(xiàn)及混合信號PCB板設計等做了較詳細的探討。
中圖分類號: TP273
文獻標識碼: A
文章編號: 0258-7998(2012)02-0050-03
Design of wireless sickroom caller system based on MCU
Guo Guangsong1,Hu Pu2
1.Institute of Mechanical and Electrical Engineering Zhengzhou Institute of Aeronautical Industry Management, Zhengzhou 450015,China; 2.Yiyang Rubber & Plastics Machinery Group Co.,Ltd,Yiyang 413000,China
Abstract: Design a kind of wireless sickroom caller system based on MCU in this paper,and the circuit design based on MCU and the chip of nRF401 for radio frequency communication is also given. And wireless communication protocoland, the way of data frames and the anti-message-crashed and the mixed signal PCB are discussed in details.
Key words : MCU;nRF401;radio frequency communication

    病房呼叫系統(tǒng)作為一種基本醫(yī)療陪護設備已逐步得到普及并不斷得到改進。傳統(tǒng)的病房呼叫系統(tǒng)采用PC機聯(lián)網(wǎng)監(jiān)控和有線控制,雖然具備很強的專業(yè)服務功能和監(jiān)護能力,但是其實現(xiàn)方法復雜,前期投資和后期維護的費用都很高。

    本文采用單片機實現(xiàn)無線數(shù)據(jù)傳輸通信和實時報警功能,設計一套低成本通用型的病房呼叫系統(tǒng)。整個系統(tǒng)采用無線通信的方式,降低了復雜的布線、安裝檢修和拆卸的難度,并可監(jiān)控多個病房且便于擴充升級。
1 系統(tǒng)方案設計
    本設計采用從機和主機相分離的模式。從機安裝于各個病房,主機安裝于醫(yī)務室或值班室。多個從機處于等待外部呼叫信號的狀態(tài),主機則時刻處于等待接收從機呼叫信息的狀態(tài),并且從機與主機之間采用無線數(shù)據(jù)傳輸通信。當病人按動安裝在床頭的從機按鍵時,安裝在護士站的主機收到信號后發(fā)出提示音,同時發(fā)光二極管亮,數(shù)碼管顯示呼叫病人的床位號和呼叫次數(shù),醫(yī)生或護士根據(jù)顯示床位號進行治療與服務。
    該病房呼叫系統(tǒng)的硬件設計主要包括主機硬件設計和從機硬件設計兩部分。主機硬件設計包含了射頻芯片外圍電路、顯示部分、警報部分及AT89C51芯片的簡單外圍電路的設計。從機硬件設計則包含射頻芯片外圍電路、外部輸入電路及AT89C51芯片的簡單外圍電路的設計。
1.1 主機硬件電路設計
    本系統(tǒng)以AT89C51為控制器,采用射頻芯片nRF401設計接收/發(fā)射電路,實現(xiàn)與從機的數(shù)據(jù)傳輸[1]。當nRF401芯片接收并處理完接收數(shù)據(jù)后或控制器向nRF401芯片傳輸發(fā)送信息時,nRF401芯片與控制器之間的通信采用的是異步串行通信的方式。在這種通信方式下,單片機的RXD端和TXD端分別與nRF401芯片的DOUT端和DIN端連接,用作兩者之間的數(shù)據(jù)串行傳輸通道。而P1.1口與nRF401芯片的TXEN口連接,用來選擇nRF401芯片的工作狀態(tài)(發(fā)射狀態(tài)或接收狀態(tài))。P1.2口與nRF401芯片的PWR-UP口連接,用來控制nRF401芯片的節(jié)電狀態(tài)。P1.3口與nRF401芯片的CS口連接,用來選擇nRF401芯片的發(fā)射頻率(該芯片有兩種發(fā)射頻率)。此外,nRF401芯片的ANT1和ANT2兩個端口與發(fā)射天線連接。nRF401外圍電路如圖1所示,為了便于使用較低成本的PCB天線,本設計中的天線接口設計為差分天線[2]。本系統(tǒng)主機硬件電路設計如圖2所示。


1.2 從機硬件電路設計

 


    本設計中的一套病房呼叫系統(tǒng)擁有一個主機和多個從機,以此實現(xiàn)多個病房對安裝在醫(yī)務人員值班室中的主機的實時呼叫。從機控制器的外圍電路設計、射頻芯片nRF401與控制器的連接方式及其外圍電路的設計都與主機一致,不同是少了顯示和警報硬件電路而多了一個外部請求信息的接收電路。從機中的外部請求信息接收電路設計只是依靠一個P0.0端口等待接收外部的高電平,一旦SB2按下,發(fā)光二極管點亮,P0.0口接收到外部高電平,就迅速地進行信息的發(fā)送,并且直到接收到主機反饋回來的發(fā)送成功信息后才自動結束本次呼叫,繼續(xù)進入等待外部請求信號的狀態(tài)。
2 系統(tǒng)軟件設計
    在軟件設計的過程中必須考慮到系統(tǒng)通信的抗干擾性能和正常通信識別的具體實現(xiàn)方法,以及解決信息碰撞的具體軟件實現(xiàn)方法。
2.1 主機程序設計
    主機程序設計主要包括初始化程序、發(fā)送數(shù)據(jù)程序、接收數(shù)據(jù)程序、延時程序、LED顯示程序及蜂鳴器報警程序等。這些程序并沒有以子程序的方式來實現(xiàn),這是因為每一個功能的實現(xiàn)并不完全獨立,而是相互交織在一起,這就使得采用調(diào)用子程序的方式去實現(xiàn)變得相當困難。本設計中采用單片機匯編語言編寫系統(tǒng)功能模塊程序。主機的主程序流程如圖3所示。

2.2 從機程序設計
    從機的程序設計主要包括初始化程序、外部呼叫信號等待程序、數(shù)據(jù)接收程序、數(shù)據(jù)發(fā)送程序、延時程序等主要程序。這里需要說明的是在設計外部呼叫信號等待程序時,在接收到外部呼叫信息后,需要經(jīng)過一段延時(約30 ms)后再進行采樣看是否是瞬時干擾信號。
3 系統(tǒng)通信協(xié)議設計
3.1 系統(tǒng)無線通信協(xié)議設計

    由于本設計的無線網(wǎng)絡系統(tǒng)中存在一個中心(主機)和多個用戶端(從機),因此本系統(tǒng)呈現(xiàn)為點對多點的通信方式,協(xié)議為點到多點的通信協(xié)議。在整個病房呼叫系統(tǒng)所設計的通信系統(tǒng)中,無論是在發(fā)射請求信息還是在發(fā)射應答信息時,發(fā)射的數(shù)據(jù)量始終保持固定的字節(jié)數(shù)且信息結構簡單,數(shù)據(jù)量較??;而且為了降低發(fā)射信息出現(xiàn)碰撞的概率,在該系統(tǒng)中從機的數(shù)量有一定限制,因此在本設計中采用了比較簡單的純ALOHA法來解決信息碰撞的問題[3]。
3.2 通信協(xié)議數(shù)據(jù)幀設計
    本系統(tǒng)采用固定字節(jié)長度的數(shù)據(jù)幀,并使得請求信息數(shù)據(jù)幀和應答信息數(shù)據(jù)幀格式相互對應,從機請求信息數(shù)據(jù)傳輸采用引導字頭、接收地址、發(fā)送地址和校驗字的數(shù)據(jù)幀格式,而主機應答信息數(shù)據(jù)傳輸采用引導字頭、接收地址、確認指令和校驗字的數(shù)據(jù)幀格式。
    (1)引導字頭:對主機而言,為了隨時接收從機發(fā)送的請求信息,其射頻芯片nRF401總是處于接收狀態(tài)。本設計的傳輸協(xié)議中,數(shù)據(jù)幀的引導字采用OxFF后跟OxAA作為通信同步碼,接收協(xié)議只能夠接收以OxFF后跟OxAA開始的數(shù)據(jù)包。要注意的是,上面已經(jīng)說明的引導字頭前還要再加一個隨機字節(jié),因為起始傳輸時第一個字節(jié)往往是接收不到的,它的作用是使接收機進入狀態(tài)抑制噪聲,在本設計中該隨機字節(jié)采用Ox00。
    (2)接收地址:接收地址既包括從機發(fā)送請求信息中的接收地址,也包括主機發(fā)送應答信息中的接收地址。在醫(yī)院的病房樓中,很可能存在多套同規(guī)格的射頻無線病房呼叫系統(tǒng)同時工作。這樣就必須給每一個主機編上代碼,才能使主機確認接收的信息是否是發(fā)送給自己的,這個主機編號同時也就作為了從機發(fā)送請求信息時的接收地址。而每個主機下的從機也會有一個對應的編號,這個編號在本設計中就采用病房號,也就是主機發(fā)送應答信息時的接收地址。
    (3)發(fā)送地址:發(fā)送地址既存在于從機發(fā)送的請求信息中也存在于主機回復的應答信息中。從機請求信息中的發(fā)送地址是提供給主機用于顯示的病房號,也是在主機發(fā)送應答信息時的接收地址。通過應答信息中的接收地址,從機可以判斷出該接收到的信息是否是發(fā)給自己的。如果不是,從機將重新發(fā)送一遍請求信息,否則將繼續(xù)接收確認信息。同理,主機也可以根據(jù)請求信息中的發(fā)送地址確認發(fā)送信息的是否是自己轄區(qū)內(nèi)的從機,如果不是將不予以接收顯示。
    (4)確認指令:確認指令用于主機通告從機信息發(fā)送是否正確。在本設計中,采用OxFF作為信息發(fā)送正確的指令,而采用OxEE作為信息發(fā)送錯誤的指令。事實上,在本設計的軟件設計中,為了確保信息的準確發(fā)送,只要確認信息不是OxFF,則從機就會自動地重新發(fā)送信息。
    (5)校驗字:校驗方法包括奇偶校驗、CRC校驗等,但是本設計中采用一種相加校驗的方法。這種方法的具體實現(xiàn)是:發(fā)送機把除了引導字以外的數(shù)字幀信息相加作為校驗字發(fā)送給接收機,接收機在接收信息時也把除了引導字和校驗字以外的數(shù)字幀信息相加并把相加結果與校驗字比較看是否相等,若相等則說明發(fā)送成功,否則說明發(fā)送失敗。
4 系統(tǒng)混合信號PCB板設計
    系統(tǒng)印制電路板(PCB)設計對于獲得優(yōu)良的RF性能是至關重要的,本系統(tǒng)PCB使用雙面板,分為元件面和底面,具體設計時充分注意了以下兩點:
    (1)保證系統(tǒng)充分接地。在底面設計一個連續(xù)的接地面,元件面的接地面保證元件充分接地,大量的通孔鏈
接元件面的接地面和底面的接地面。
    (2)零件的布局要盡量合理,模擬電源和數(shù)字電源要分離以避免互相干擾。射頻電路的電源使用高性能的射頻電容去耦,去耦電容盡可能靠近nRF401的VDD端。一般還在較大容量的表面貼裝電容旁并聯(lián)一個小數(shù)值的電容。nRF401的電源必需經(jīng)過很好的濾波,并且與數(shù)字電路供電分離。
參考文獻
[1] 沙占友,王彥朋,孟志永.單片機外圍電路設計[M].北京:電子工業(yè)出版社,2003.
[2] 吳曉峰,陳大才譯.射頻識別技術[M].北京:電子工業(yè)出版社,2006.
[3] 周文安,付秀花,王志輝,等譯.無線通信原理與應用[M].北京:電子工業(yè)出版社,2006.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉(zhuǎn)載。