王志勇,李 欣
(哈爾濱理工大學(xué) 測(cè)控技術(shù)與通信工程學(xué)院,黑龍江 哈爾濱150080)
近年來(lái),在家庭修養(yǎng)的病人由于不能得到及時(shí)看護(hù)和搶救,死亡的人數(shù)大量提高。而隨著老年化的加劇,老年人在家中的健康狀況也得到了更高的重視。本文研究的醫(yī)療服務(wù)系統(tǒng)可以極大的降低運(yùn)送病人的時(shí)間和成本,并能及時(shí)的看護(hù)老年人的健康狀況,對(duì)提高我國(guó)全民的健康水平有著重要作用。本論文介紹一種基于GPRS網(wǎng)絡(luò)的家庭醫(yī)療服務(wù)系統(tǒng),本系統(tǒng)采用了最新的GPRS傳輸技術(shù)和比較人性化的菜單式人機(jī)接口,實(shí)現(xiàn)了醫(yī)院對(duì)家庭病人的實(shí)時(shí)監(jiān)測(cè)。
該系統(tǒng)由人體健康參數(shù)檢測(cè)模塊,GPRS網(wǎng)絡(luò)和遠(yuǎn)程計(jì)算機(jī)監(jiān)控中心組成。人體健康參數(shù)檢測(cè)模塊由人體生命參數(shù)采集傳感器,傳感器組是適配板,GPRS網(wǎng)絡(luò),MPU及輔助電路構(gòu)成,如圖1所示。
傳感器進(jìn)行對(duì)人體健康參數(shù)的采集,當(dāng)傳感器采集的信號(hào)是數(shù)字量,則信號(hào)直接傳送給MPU。當(dāng)傳感器采集的信號(hào)是模擬量則需要通過(guò)傳感器組適配板進(jìn)行信號(hào)放大濾波處理,再傳送給MPU。通過(guò)MPU處理的信號(hào)在LCD上顯示和存儲(chǔ),MPU對(duì)數(shù)據(jù)進(jìn)行相應(yīng)的協(xié)議封裝然后傳送給GPRS無(wú)線通訊模塊,該模塊將數(shù)據(jù)傳送上GPRS公眾網(wǎng),通過(guò)Internet傳輸方式將數(shù)據(jù)傳送到遠(yuǎn)程計(jì)算機(jī)監(jiān)控中心。該中心對(duì)接收到的數(shù)據(jù)進(jìn)行整理存儲(chǔ),以達(dá)到監(jiān)測(cè)病人的目的。
圖1 結(jié)構(gòu)框圖Fig.1 Structure diagram
出于對(duì)性?xún)r(jià)比和系統(tǒng)要求的考慮,本系統(tǒng)采用了Wavecom公司的M590E GPRS模塊。本模塊具有語(yǔ)音,簡(jiǎn)訊服務(wù),數(shù)據(jù)傳輸以及FAX功能并集成了Base band,RF以及快速閃存并支持RS232等。
GPRS模塊[1]和MPU之間可通過(guò)RS232串口進(jìn)行通信。該模塊是基于IP協(xié)議的,GPRS網(wǎng)要經(jīng)過(guò)發(fā)送符合IP協(xié)議的數(shù)據(jù)包才能與S3C44B0X進(jìn)行通信。而且在uClinux操作系統(tǒng)具有完備的TCP/IP協(xié)議棧,完全能達(dá)到系統(tǒng)功能的要求。進(jìn)行通信時(shí),第一步要通過(guò)AT命令建立GPRS信道,第二步設(shè)置波特率并指定上層協(xié)議開(kāi)通GPRS鏈路,最后采用PPP協(xié)議來(lái)進(jìn)行數(shù)據(jù)鏈路層的連接和傳輸[2-3]。
底層鏈路成功建立以后,就要進(jìn)行上層的socket通信。鏈路層的上邊就是IP層,該層之上可以選擇的協(xié)議有面向連接的TCP和面向非連接的UDP協(xié)議。如果數(shù)據(jù)可靠性要求較高,應(yīng)當(dāng)選擇TCP協(xié)議,可是其實(shí)現(xiàn)比較復(fù)雜,并且系統(tǒng)負(fù)荷較大;雖然UDP協(xié)議的可靠性較低,但是對(duì)網(wǎng)絡(luò)的負(fù)荷較小。比較適合數(shù)據(jù)的實(shí)時(shí)傳輸。本系統(tǒng)對(duì)實(shí)時(shí)性要求比較高,應(yīng)選用UDP協(xié)議,本協(xié)議不但簡(jiǎn)單,而且在實(shí)際的應(yīng)用中效果良好。本系統(tǒng)要實(shí)現(xiàn)遠(yuǎn)程測(cè)控,所以要為GPRS模塊的PC機(jī)編寫(xiě)一個(gè)通信軟件。主要用于接收發(fā)送UDP協(xié)議的IP包和一個(gè)類(lèi)似嵌入式系統(tǒng)的LCD菜單人機(jī)對(duì)話框。
遠(yuǎn)程計(jì)算機(jī)監(jiān)測(cè)中心實(shí)際上就是一個(gè)管理數(shù)據(jù)庫(kù)的系統(tǒng)。遠(yuǎn)端數(shù)據(jù)庫(kù)采用SQL Server作為軟件。SQL是一種結(jié)構(gòu)化查詢(xún)語(yǔ)言并是一種標(biāo)準(zhǔn)數(shù)據(jù)庫(kù)語(yǔ)言,SQL對(duì)數(shù)據(jù)庫(kù)的隨即查詢(xún)以及管理數(shù)據(jù)庫(kù)和設(shè)計(jì)程序功能十分豐富。本系統(tǒng)的用戶界面采用C++Builder作為開(kāi)發(fā)語(yǔ)言,本軟件可以提供豐富的可視和不可視控件,可以創(chuàng)建良好的用戶界面,能進(jìn)行高效能的數(shù)據(jù)庫(kù)管理和訪問(wèn),并能快速執(zhí)行和網(wǎng)絡(luò)編程。該數(shù)據(jù)庫(kù)功能強(qiáng)大,不僅有查詢(xún),添加,刪除以及編輯的基本功能,還能報(bào)警,結(jié)果導(dǎo)出,打印,查詢(xún)以及繪圖等實(shí)用功能。
該系統(tǒng)的嵌入式微處理器采用Samsung公司的S3C44B0X,S3C44B0X是基于ARM7TDMI核的32位高速處理器[4]。此MPU具有LCD控制器,4個(gè)DMA通道,定時(shí)器,外部存儲(chǔ)控制器,通用I/O口,2個(gè)通道UART以及外部中斷源等。S3C44B0X還有8路模擬信號(hào)輸入的10位逐次逼近型數(shù)模轉(zhuǎn)換器,可實(shí)現(xiàn)將模擬信號(hào)轉(zhuǎn)化為數(shù)字量的功能[5]。本系統(tǒng)的具體硬件電路如圖2所示。
圖2 硬件電路框圖Fig.2 The hardware principle diagram
2.1.1 信號(hào)放大濾波電路
氣體濃度通過(guò)氣體傳感器轉(zhuǎn)換為電壓信號(hào)輸出。因?yàn)闅怏w濃度的變化比較緩慢,傳感器的電壓信號(hào)變化量比較小。所以要對(duì)信號(hào)進(jìn)行放大。本系統(tǒng)的信號(hào)放大濾波模塊由測(cè)量放大器原理電路,如下圖3所示。該電路有第1級(jí)的同相輸入電路,輸入電阻高,并且因?yàn)殡娐方Y(jié)構(gòu)對(duì)稱(chēng),可較好地抑制零點(diǎn)漂移;第2級(jí)是差分放大電路,能較好地對(duì)擾動(dòng)的竄入進(jìn)行抑制。小電容的一端接地另一端與測(cè)量放大器輸出信號(hào)相連,可以對(duì)信號(hào)進(jìn)行濾波。
圖3 信號(hào)放大濾波電路圖Fig.3 Signal amplifying filter circuit
2.1.2 S3C44B0X與GPRS模塊的連接
S3C44B0X本身帶有兩個(gè)串口控制寄存器,該串口通過(guò)電平轉(zhuǎn)換器MAX232進(jìn)行電平轉(zhuǎn)換,轉(zhuǎn)換以后的接收端口RXD和發(fā)送端口TXD與GPRS模塊的對(duì)應(yīng)腳相連,再將MPU上的清除發(fā)送端口CTS和請(qǐng)求發(fā)送端口RTS與GPRS模塊對(duì)應(yīng)腳相連,從而就實(shí)現(xiàn)了MPU與GPRS模塊之間的通信[6]。MPU的I/O口與GPRS模塊開(kāi)關(guān)進(jìn)行連接,通過(guò)置位來(lái)控制GPRS開(kāi)關(guān)。
搭建完硬件平臺(tái)以后,考慮操作系統(tǒng)的選擇,因?yàn)椴僮飨到y(tǒng)的選用是實(shí)現(xiàn)各系統(tǒng)功能的關(guān)鍵。該系統(tǒng)采用了免費(fèi)的uClinux操作系統(tǒng),該系統(tǒng)沒(méi)有MMU即內(nèi)存管理單元,比較適合ARM式微處理器。該系統(tǒng)采用uClinux-20040408版。該版本的操作系統(tǒng)帶有很多硬件的驅(qū)動(dòng)程序,比如串口驅(qū)動(dòng),LCD顯示等,另外還具有完整的嵌入式TCP/IP網(wǎng)絡(luò)協(xié)議[7-8]。如果需要加上自己的驅(qū)動(dòng),可采用文件系統(tǒng)方便地加入內(nèi)核中[9]。驅(qū)動(dòng)程序編輯好以后,就可以為上層的應(yīng)用程序的編寫(xiě)提供接口函數(shù),也就可以開(kāi)始編寫(xiě)針對(duì)設(shè)備的應(yīng)用程序,最后就可以重新編譯內(nèi)核。把該操作系統(tǒng)的二進(jìn)制文件燒載進(jìn)FLASH中,就能實(shí)現(xiàn)對(duì)外部設(shè)備的使用了。
該系統(tǒng)的軟件功能模塊由初始化模塊,顯示器模塊,鍵盤(pán)功能模塊,操作系統(tǒng)模塊以及數(shù)據(jù)解算模塊組成。主程序流程圖如圖4所示。
圖4 主程序流程圖Fig.4 Flow chart of main program
本系統(tǒng)的主程序的主要功能是對(duì)傳感器模擬信號(hào)的轉(zhuǎn)換、存儲(chǔ)、顯示以及發(fā)送。該系統(tǒng)將接收的模擬信號(hào)通過(guò)ADC轉(zhuǎn)換為數(shù)字信號(hào)后在LCD上顯示,經(jīng)操作人員得到確認(rèn)后將數(shù)據(jù)存儲(chǔ)到系統(tǒng)的FLASH中,對(duì)信號(hào)進(jìn)行一定的處理以便達(dá)到GPRS傳輸?shù)男枰ㄟ^(guò)對(duì)上位機(jī)發(fā)出發(fā)送信號(hào)的請(qǐng)求,并且該系統(tǒng)接收到上位機(jī)的回應(yīng)便可以進(jìn)行發(fā)送。
該系統(tǒng)的數(shù)據(jù)采集程序中運(yùn)用了一個(gè)帶數(shù)字濾波的AD轉(zhuǎn)換方法即中位值濾波,該方法是對(duì)數(shù)據(jù)進(jìn)行4次采樣,除去其中的最大值和最小值,再取平均值,得到系統(tǒng)可用的數(shù)據(jù),該方法對(duì)去除尖峰干擾有較好的效果。
本系統(tǒng)在哈爾濱市某小區(qū)進(jìn)行了試運(yùn)行,取得了比較滿意的效果。使用該系統(tǒng)時(shí),用戶可根據(jù)自身的實(shí)際情況靈活的選擇人體檢測(cè)傳感器,通過(guò)比較人性化的菜單式人機(jī)接口可以直觀地觀察到自身的健康信息;用戶也可以隨時(shí)將健康信息發(fā)送到醫(yī)療監(jiān)測(cè)中心,該系統(tǒng)不受時(shí)間和地域的限制。該系統(tǒng)成本較低,使用方便將具有廣闊的應(yīng)用場(chǎng)景和市場(chǎng),對(duì)我國(guó)全民健康水平的提高具有重要的作用。
[1]SIEMEMS Mobile.M590E Hareware Interface Description[EB/OL].(2007-02-04)http://.semens.com.
[2]SIEMEMSMobile.M590E AT Command Set[EB/OL].(2007-02-04).http:www.semens.com.
[3]SIEMESMobile.M590E GPRSStartup Use’s Guide[EB/OL].(2007-02-04).http://.semens.com.
[4]SAMSUNG Electronic.S3C44B0X User Manual[EB/OL].2008-09-01.http://.samsung.com.
[5]汪玉鳳.基于ARM7的遠(yuǎn)程數(shù)據(jù)監(jiān)控系統(tǒng) [J].儀表技術(shù)與傳感器,2010(11):15.WANG Yuf-eng Remote data monitoring system based on ARM7[J].Instrument Technique and Sensor,2010(11):15
[6]陳文智.嵌入式系統(tǒng)開(kāi)發(fā)原理與實(shí)踐[M].北京:清華大學(xué)出版社,2003.
[7]RUIBINI A.Linux設(shè)備驅(qū)動(dòng)程序[M].北京:清華大學(xué)出版社,2008.
[8]杜春雷.ARM體系結(jié)構(gòu)與編程[M].北京:清華出版社,2003.
[9]王洪輝.嵌入式系統(tǒng)Linux內(nèi)核開(kāi)發(fā)實(shí)踐指南(ARM平臺(tái))[M].北京:電子工業(yè)出版社,2009.