范金文,何 青
(長沙理工大學 電氣與信息工程學院 湖南 長沙 410114)
在物聯網技術領域,有多種關于移動裝置的通信、識別和定位的方法及系統,但在通信、識別和定位三項功能特征中,所有這些系統都只側重于其中的一個或兩個功能特征,在三項功能并重時,我們往往需要借助于另一個需要占用大量資源的系統或補充必需的硬件設備,才能達成預期的目標,這一方面浪費了外部資源、降低了系統的經濟性,特別是對于移動物體,硬件設備的增加更有可能降低系統的可操作性和可維護性。本文討論了利用CC2500模塊將通信、識別和定位三者有機結合在醫療呼叫管理系統應用,解決了三項功能同時運用的時候出現的資源浪費等問題。
不同的應用環境對定位精度有著不同的要求。室內環境本身比較小,一般來說要求定位精度比較高才能夠滿足應用需要。但是室內定位需要回答的往往是這樣的問題:“某人在哪個房間?”而被定位者在房間中的位置我們大部分情況下并不關心,因此實際上只要能夠達到定位到房間就可以滿足很多實際需要了[1-2]。在實際醫院運行中,患者與醫護人員接觸的次數相當的多。一方面如何讓患者了解醫護人員的位置,快速的找到附近的醫護人員,實現醫護人員快速且方便得為患者提供服務,另一方面如何管理醫護人員和患者,特別是在現在醫療資源不夠充分的條件下,這是擺在醫院管理者面前的一道難題。該系統通過對醫護人員和患者佩戴的移動設備的通信、識別和定位,實現人員的相對坐標的定位,實時發布醫護人員的位置信息(病區、房間),第一時間響應患者請求,方便醫護人員處理日常和突發事件。
該系統總體結構由管理設備、基站設備和移動設備3部分構成。其中管理設備包含系統服務器、護士工作站和管理主機;基站設備包括醫護分機、病員一覽表、走廊漢字顯示屏、門口分機、床頭分機、治療室分機和衛浴分機等有線設備;移動終端包括移動分機和病員腕表等移動終端。所有基站設備都與管理主機之間建立有線連接,因此所有配置信息以及數據都由管理主機下發給基站設備,基站設備上報的信息,也統一由管理主機接收;移動終端通過無線信號,與基站設備建立連接并通訊。特別說明:除管理主機外,任何一個有線設備都可以設為基站,并可指定其無線信號的頻點。
以房間為單位,所有基站設備默認為后備基站,由用戶通過護士工作站配置指定一個基站設備作為該房間的基站(一般以中間的有線設備作為基站),并為每個基站配置一個無線信號頻點。要求每個基站周圍三維空間的其他基站的無線信號頻點與該基站的無線信號的頻點不相同。
用戶通過治療室分機,為移動分機配置下發醫護人員工號,表示該移動分機與相關醫護人員身份綁定;同時治療室分機自動上報給管理主機,為此移動分機生成對應的輪詢表項,并下發給各個基站;下發基站的輪詢表項內容為:移動分機地址;類型為移動分機;輪詢標志為是;成敗標志為失敗。同樣的,用戶也可以通過治療室分機修改和刪除移動分機上的配置信息。
用戶通過治療室分機,為病人腕表配置病員住院號,表示該病員腕表與相應的病人身份綁定;同時治療室分機自動上報給管理主機,為此病員腕表生成對應的輪詢表項,并下發給各個基站;下發基站的輪詢表項內容為:移動分機地址;類型為病員腕表;輪詢標志為是;成敗標志為失敗。同樣的,用戶也可以通過治療室分機修改和刪除病員腕表的配置信息。
系統總體布局如下,每個房間有3個床位,分別在床頭安裝一個床頭分機,根據基站的配置原則,當房間內存在多個有線設備時,以居中的有線設備作為基站,其它有線設備作為后備基站,故中間的設定為該房間的基站。門口分機安裝在走廊的門口部位,用作走廊的人員定位基站與醫護人員巡房簽到。每個基站周圍的其他基站無線信號頻點與該基站的無線信號頻點必不相同。通過在每個房間設置不同頻點的基站來區分管理的區域,實現對區域內的移動終端的通信、識別和定位,將相關人員的位置相對坐標而不是絕對坐標定位出來,即醫護人員與患者所在病區和房間信息。
圖1 移動分機頻點自適應流程圖Fig.1 Flow chart of Mobile Extension frequency adaptive
通過基站輪詢的方式進行無線通訊,確保無線信號不會相互干擾。醫護人員佩戴的移動分機采用頻點自適應的方式確保實時接入離自己最近的基站點,移動分機的頻點自適應過程如圖1所示。移動分機系統啟動后,循環檢測系統N個頻點的無線信號的強度,以接收信號強度最大的無線信號的頻點作為自己的信號頻點Fn(接收信號強度(RSSI)反應移動設備與基站的距離,距離越小,信號越強)[3],自行匹配;響應該頻點基站的輪詢,這樣保證了移動分機無時無刻都是和最近的基站站點實時連通通訊。
管理主機周期性的下發基站輪詢命令,記錄相應的移動設備所在的基站位置,通過基站收集信息,采用有線的方式上傳給管理主機,管理主機采用WIFI連接護士站的PC機,并實時上傳位置信息,將醫護人員和病人的實時分布以圖形化的方式顯示在PC屏幕上,方便醫院的管理。同時管理主機通過發送顯示命令將醫護人員的位置信息通過走廊顯示屏實時循環顯示,使相關人員都能夠知道醫護人員當時所在的位置(包括科室和房間位置),最有效的方便患者家屬找到相應的醫護人員,減少相應的尋找時間,方便醫護人員和患者之間聯系。當病房里面的病人呼叫醫護人員的時候,基站由于前面移動分機的頻點的自適應與最近的移動分機建立了無線通訊,優先將患者的呼叫信息發送到該人員的移動分機上。醫護人員可通過觸摸屏對呼叫信息進行處理;也可向醫院信息管理系統輸入或獲取相關的護理信息;在病房床旁通過將移動分機靠近病員腕表的方式讀取患者的身份和獲得相應的護理信息如服藥清單、護理等級。
在移動分機的硬件設計中,考慮到系統的功耗、成本及性能等要求,選擇的是意法半導體公司的STM32F103CBT6作為移動分機的微控制器。STM32F103CBT6是一款集成了嵌入式Flash和SRAM存儲器的ARM Cortex-M3內核。通過外部的晶振,主頻可到達72 MHz,擁有128 Kbytes的Flash容量,內部有看門狗定時器。睡眠、停機和待機三種低功耗模式。2個12位的ADC、3個通用16位定時器和一個PWM定時器,還包含標準和先進的通信接口:2個I2C和SPI、3個USART、一個 USB 和一個 CAN[4-5]。
控制器主要由STM32F103CBT6和其外圍電路組成。其電路如圖 2所示, 其中 STM32F103CBT6的PA0、PA1、PA3、PB5~PB7、PB13~PB15 用作觸摸屏的控制接口 ;PA8~PA15用作觸摸屏的數據通訊接口。PC14-OSC32-IN和 PC15-OSC32-OUT擴展外部時鐘電路。STM32F103CBT6通過SPI口設置CC2500的工作參數并與CC2500通訊。
移動分機佩戴在醫護人員手腕上,要求輕巧且具有可移動性,故采用鋰電池作為供電。為移動分機內置鋰電池充電采用充電管理芯片為LTC4065。LTC4065是凌特公司生產的一款用于單節鋰電池的完整恒定電流恒定電壓線性充電管理芯片,可提供高達750 mA且準確度為5%的可設置的充電電流[6-7]。 在圖 3所示電路中,將VDD直接接至 LTC4065,為鋰電池充電。鋰電池通過一個穩壓芯片HT7330為單片機和觸摸屏等工作電路提供穩定的電源。BZ為蜂鳴器,起到鋰電池電量過低需要充電池時的提醒作用。
圖2 單片機外圍電路原理圖Fig.2 Schematic of the circuit single-chip microcontroller
圖3 電源模塊原理圖Fig.3 Schematic of the power module
考慮到功耗、傳輸速率、芯片成本和信號強度等因素,特別是不能干擾像醫院心電圖等醫療器械的信號,采用的是TI公司的無線收發芯片CC2500作為無線模塊控制器。CC2500是TI公司推出的一款低成本、低功耗、體積小的2.4G無線頻段的收發器,工作頻率為400~24 803.5 MHz。RF收發器集成一個數據傳輸率可達到500 kbit/s的高度可配置的調制解調器和一個64位傳輸/接收FIFO。CC2500的寄存器配置可通過SPI接口控制。它具有監聽和休眠模式,可無線喚醒[8-9],非常適合低功耗的應用。
移動分機設計中,實際采用云寶電子科技有限公司在TI公司的CC2500收發器上開發的包含天線、外圍濾波和匹配網絡等的射頻集成模塊。該模塊具有低電流損耗,發射電流11 mA到21 mA軟件可調,接收電流15 mA,休眠電流小于500 nA,同樣可通過4線SPI控制通訊。
系統軟件設計是利用Keil uVision4軟件在STM32庫3.5版本上編寫的C程序,編譯后通過SWD的方式下載到MCU中去[10]。STM32庫3.5版本是ST公司針對STM32提供的函數接口,開發者可以直接調用庫函數配置STM32的寄存器。圖4為基站輪詢移動分機的流程圖,圖5為移動分機主程序流程圖。
基站對移動分機輪詢的目的是將與基站相連的同一個頻點的移動分機所代表的佩戴人員的工號記錄下來,結合基站所在的位置,生成輪詢對象表(輪詢對象表包含移動分機地址與綁定人員工號,上次輪詢該移動分機的基站地址,輪詢標志),上傳給管理主機,將人員相對坐標定位在相應的病區房間,以圖形化的形式顯示在護士站電腦上和實時發布在走廊顯示屏上面。具體的程序流程如圖4。當管理主機向基站下發輪詢指令和輪詢對象表。基站按順序讀取輪詢對象表,若移動分機輪詢結果標志為成功,可以用回應、請求、數據包等信息代替標準輪詢指令發送給輪詢對象。若移動分機輪詢結果標志為失敗,則需發送標準的輪詢指令。判斷是否響應超時,響應為超時則直接更新輪詢標志為失敗。如響應沒有超時,判斷是否正常響應,響應為正常響應則記錄回應信息,若響應對象回應的為暫停輪詢信息,則需再等待一個響應周期,仍然超時則直接更新輪詢標志為成功,反之記錄相應的回應信息。最后上報管理主機更新輪詢對象表,完成一次輪詢,也完成了一次人員相對坐標的定位。
圖4 基站輪詢程序流程圖Fig.4 Flow chart of the base station polling program
移動分機利用CC2500射頻模塊實現無線呼叫和無線通話。無線定位取決的是基站對移動分機輪詢的結果反饋。移動分機的軟件總體流程如圖5所示。MCU和CC2500初始化后,控制器發出指令使CC2500循環檢測周圍的無線信號強度,選擇最強的信號作為自身的無線信號頻點。檢測與相連的基站是否發來輪詢請求指令,若有請求指令則看自己是否有請求或者數據需要發送,有則以請求或者數據信息作為回應;否則回應包含自身地址和所代表的佩戴人員的工號信息的空信息。值得說明的是移動分機每一個信息都包含自身的地址和所佩戴人員的工號信息。若無輪詢請求指令,則看是否有數據通信請求,若有則進行數據通信。沒有與進行完一次完整數據通信的均返回到前面檢測周圍最強的頻點,重復上述過程。
圖5 移動分機程序流程圖Fig.5 Flow chart the mobile extension
實驗表明,該方案能有效的實時地檢測到醫護人員的位置,包括科室和房間位置。當醫護人員離開原來的病房進入另外的病房時,由于采用基于接收信號強度(RSSI)最強的頻點自適應的方式,保證每個移動設備都能與自己最近的設備實時通信,并且未發現失去聯系的現象。但在醫院實際應用中,當房間內同時有多個佩戴有移動設備的醫護人員時,由于所有的移動設備頻點自適應的結果,都采用同一工作頻率與房間內的同一基站通訊,故當多個電子標簽同時傳輸數據就會產生數據沖突,使各電子標簽之間的傳輸相互干擾,進而導致信號丟失的現象,這是還需解決對問題。
[1]張立立,鐘耳龢.無線室內定位技術[C].中國地理信息系統協會第八屆年會論文集,2004:966-972.
[2]段翠翠.基于無線傳感器網絡的化工生產區人員定位系統軟件設計[D].杭州:杭州電子科技大學,2013.
[3]曹陽,于秋則.基于RFID技術的室內定位系統的設計[J].信息技術,2013(7):7-11.CAO Yank,YU Qiu-ze.Design of an indoor localization system based on RFID[J].Information Technology,2013(7):7-11.
[4]張根寶,李秀平,龐蘇娟.基于ARM Cortex-M3便攜式智能超聲波液位計[J].儀器儀表與傳感器,2012(1):19-20.ZHANG Gen-bao,LI Xiu-ping,PANG Su-juan.Portable and smart ultrasonic fluid level meter based on ARMCortex-M3[J].Instrument Technique and Sensor,2012(1):19-20.
[5]李晶,李東澤,石堅.基于STM32F103的時間壓力采集系統[J].自動化與儀表,2013(12):42-45.LI Jing,LI Dong-ze,SHI Jian.Time/Pressure Testing Data Acquisition System Based on STM32F103[J].Automation&Instrumentation,2013(12):42-45.
[6]Linear Technology,LTC4065 Datasheet[R].2005.
[7]韓劉,秦燕,李鵬,等.鋰電池線性充電管理芯片LTC4065及其應用[J].單片機與嵌入式系統應用,2009(6):46-47.HAN Liu,QING Yan,LiPeng,et al.Linear charge management chip LTC4065 Lithium and Applications[J].Microcontrollers&Embedded Systems,2009(6):46-47.
[8]蒲林蒸,林東.PIC單片機控制下的無線模塊自主選頻數據傳輸[J].單片機與嵌入式系統應用,2013(3):28-31.PU Lin-zheng,LIN Dong.Independent frequency selection data transmission based on wireless module controlled by PIC MCU[J].Microcontrollers&Embedded Systems,2013(3):28-31.
[9]張穎,李凱,王建偉.一種有源RFID局域定位系統設計[J].電子設計工程,2012,20(5):68-70.ZHANG Ying,LI Kai,WANG Wei-jian, Design of a kind of active RFID regional positioning system[J].Electronic Design Engineering, 2012, 20(05):68-70.
[10]勾惠蘭,劉光超.基于STM32的最小系統及串口通信的實現[J].工業控制計算機,2012,25(9):26-28.GOU Hui-lan,LIU Guang-chao.Minimum system and serial communication implementation based on STM32[J].Industrial Control Computer,2012,25(9):26-28.