航天醫(yī)用冷藏設(shè)備監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引言
航天醫(yī)用冷藏設(shè)備主要用于儲(chǔ)存血液、試劑、疫苗等醫(yī)學(xué)樣品,是在特殊條件下對(duì)醫(yī)學(xué)樣品進(jìn)行存儲(chǔ)研究的冷藏設(shè)備。為了保證冷藏設(shè)備具備高的可靠性、穩(wěn)定性,在開(kāi)發(fā)過(guò)程中需要進(jìn)行全面的實(shí)驗(yàn)測(cè)試,這就需要一種相匹配的監(jiān)測(cè)儀器對(duì)影響其可靠性、穩(wěn)定性的參數(shù)進(jìn)行實(shí)時(shí)監(jiān)測(cè)、分析,進(jìn)而提高冷藏設(shè)備的性能,最終使其滿足在極特殊的條件下工作。
目前,醫(yī)用冷藏設(shè)備在國(guó)內(nèi)外有廣泛的研究,而在航空航天領(lǐng)域的研發(fā)在國(guó)內(nèi)外屬于領(lǐng)先技術(shù),為保證達(dá)到嚴(yán)格的制冷保溫指標(biāo)要求,在結(jié)構(gòu)設(shè)計(jì)、板材選取等方面需特殊處理,才能保證冷藏設(shè)備在特殊條件下穩(wěn)定可靠的運(yùn)行。相匹配的監(jiān)測(cè)系統(tǒng)主要針對(duì)工作電源和溫度這兩個(gè)重要的控制指標(biāo)進(jìn)行準(zhǔn)確可靠的監(jiān)測(cè)。
系統(tǒng)硬件設(shè)計(jì)
航天醫(yī)用冷藏設(shè)備監(jiān)測(cè)系統(tǒng)硬件關(guān)鍵部分是信號(hào)檢測(cè)裝置,包括模擬量信號(hào)測(cè)量電路、電源系統(tǒng)和串口通訊。其中電源系統(tǒng)采用經(jīng)典電路實(shí)現(xiàn),本文不作詳細(xì)敘述。監(jiān)測(cè)系統(tǒng)的硬件設(shè)計(jì)過(guò)程中采用冗余技術(shù)、單點(diǎn)雙線、光耦隔離等抗干擾技術(shù),增加了系統(tǒng)數(shù)據(jù)采集的準(zhǔn)確性和可靠性。監(jiān)測(cè)系統(tǒng)原理框圖如圖1所示。
圖1 監(jiān)測(cè)系統(tǒng)框圖
模擬量信號(hào)測(cè)量電路
以AT89C52單片機(jī)為核心,外置看門狗X5045和一片11.0592MHz晶振構(gòu)成最小單片機(jī)系統(tǒng),AT89C52是整個(gè)系統(tǒng)的控制核心,內(nèi)帶8KB的Flash ROM,用戶程序存放于此。測(cè)溫單元采用Pt100鉑電阻傳感器(測(cè)溫范圍-50~+100℃),配套線性化輸出0~5V標(biāo)準(zhǔn)信號(hào)的溫度變送器,誤差為0.06℃,構(gòu)成單線式溫度采集網(wǎng)絡(luò)。為了提高精度,選用12bit的串行A/D轉(zhuǎn)換器TLC2543,應(yīng)用單片機(jī)I/O口的雙向傳輸數(shù)據(jù)的功能,將P1.0~P1.3口與TLC2543的4根控制線CS、OUT、IN、SCK相連接,實(shí)現(xiàn)對(duì)TLC2543進(jìn)行讀取和寫入操作。將溫度變送器輸出接入TLC2543的模擬輸入通道即可。由于AT89C52單片機(jī)沒(méi)有SPI接口,需要用軟件實(shí)現(xiàn)SPI的功能,對(duì)TLC2543操作的關(guān)鍵是理清接口時(shí)序圖和寄存器的使用方式。系統(tǒng)程序利用Xeltek公司的基于USB口的通用編輯器Superpro3000U下載到AT89C52芯片中,實(shí)現(xiàn)系統(tǒng)固件編程。溫度采集電路如圖2所示。
電源信號(hào)的測(cè)量包括采集電路和顯示模塊兩部分,裝置電路圖如圖2所示。檢測(cè)供電電源的電壓采用分壓電路實(shí)現(xiàn),小電阻4.3KΩ兩端接上一個(gè)5.6V穩(wěn)壓管以保護(hù)單片機(jī)系統(tǒng);檢測(cè)工作電流應(yīng)用運(yùn)算放大器LM358將采樣電壓放大為標(biāo)準(zhǔn)信號(hào),如圖3所示。然后將電壓、電流檢測(cè)電路輸出接入TLC2543的AIN0,AIN1接口,完成對(duì)電源信號(hào)的采集。顯示模塊由2個(gè)四位一體的共陰極數(shù)碼管和1片LED串行共陰極驅(qū)動(dòng)器MAX7219構(gòu)成。MAX7219的3根控制線DIN, LOAD, CLK與單片機(jī)AT89C52的P1.5~P1.7相連,數(shù)碼管的段選信號(hào)線a-dp分別和MAX7219對(duì)應(yīng)的SegA~SegDP相連,其中一組數(shù)碼管LED1的4根位選信號(hào)線和MAX7219的位驅(qū)動(dòng)線Dig0~Dig3相連接,另一組LED2的位選信號(hào)與Dig4~Dig7相連。LED1顯示系統(tǒng)供電電壓,LED2顯示工作電流。固件程序分為信號(hào)采集和數(shù)據(jù)顯示兩部分,系統(tǒng)工作是在程序控制下,完成對(duì)模擬信號(hào)的采集和電源信號(hào)的顯示。
圖2 數(shù)據(jù)采集、顯示電路
[!--empirenews.page--]
圖3 電流采集電路
串口通訊
由于RS-232串行通信標(biāo)準(zhǔn)接口使用方便、接線少而且傳輸距離可達(dá)到15m,足以滿足監(jiān)測(cè)系統(tǒng)的技術(shù)要求,因此選用RS-232的串口通信方式。ATMEL的89C52單片機(jī)通過(guò)普通I/O口與 PC機(jī) RS-232串口實(shí)現(xiàn)通信的硬件接口電路,如圖4所示。由于 PC系列微機(jī)串行口為RS-232標(biāo)準(zhǔn)接口,與輸入、輸出均為TTL電平的AT89C52單片機(jī)在接口規(guī)范上不一致,因此TTL電平到RS-232接口電平的轉(zhuǎn)換采用 MAX232標(biāo)準(zhǔn) RS-232接口芯片,該芯片可以用單電壓(+5 v)實(shí)現(xiàn)RS-232接口邏輯“1”(-15~3V)和邏輯“0”(3~15 v)的電平轉(zhuǎn)換。AT89C52的P3.0為串行輸入端,P3.1為串行輸出端。
圖4 RS232串口通訊
系統(tǒng)軟件設(shè)計(jì)
監(jiān)測(cè)系統(tǒng)軟件包括下位機(jī)程序和Delphi數(shù)據(jù)通訊軟件兩部分,實(shí)現(xiàn)測(cè)試數(shù)據(jù)的分析處理、回放顯示、打印輸出等功能,它可以接收命令和數(shù)據(jù),向設(shè)備發(fā)送控制信號(hào),返回設(shè)備的狀態(tài)參數(shù),提供友好的人機(jī)界面。同時(shí),利用軟件濾波方法提高數(shù)據(jù)采集的準(zhǔn)確性。
下位機(jī)程序設(shè)計(jì)
監(jiān)測(cè)系統(tǒng)的核心在于下位機(jī)程序能夠進(jìn)行數(shù)據(jù)的采集、顯示并與上位機(jī)的數(shù)據(jù)通訊,向上位機(jī)發(fā)送采集的溫度、電源數(shù)據(jù),接收上位機(jī)發(fā)來(lái)控制指令,進(jìn)行傳輸數(shù)據(jù),與上位機(jī)通信采用查詢和中斷方式實(shí)現(xiàn),并有奇偶校驗(yàn)以保證數(shù)據(jù)正確傳輸,下位機(jī)程序的軟件流程圖如圖5所示。
圖5 主程序流程圖
MAX7219初始化即設(shè)置各個(gè)寄存器初始值,包括BCD譯碼器、多位掃描電路、段驅(qū)動(dòng)器、位驅(qū)動(dòng)器和用于存放每個(gè)數(shù)據(jù)位的8×8靜態(tài)RAM以及數(shù)個(gè)工作寄存器。通過(guò)指令設(shè)置這些工作寄存器,使其進(jìn)入所要求的工作狀態(tài)。AT89C52單片機(jī)有發(fā)送緩沖寄存器和接收緩沖寄存器SBUF、串行口控制寄存器(SCON)、特殊功能寄存器(PCON),MAX232串口初始化就是通過(guò)程序設(shè)置SCON定為工作方式2,并使REN為1,允許串行口中斷。串口通信發(fā)送程序采用查詢方式實(shí)現(xiàn),數(shù)據(jù)接收程序采用串口中斷方式實(shí)現(xiàn),在數(shù)據(jù)接收中斷服務(wù)程序中根據(jù)所接收的數(shù)據(jù)判斷是否將發(fā)送標(biāo)識(shí)Send_flag置位。數(shù)據(jù)采集處理子函數(shù)形參為模擬通道號(hào),完成對(duì)此通道數(shù)據(jù)采集轉(zhuǎn)換,并將轉(zhuǎn)換結(jié)果放入一維數(shù)組Cstring[],然后循環(huán)采集多次順序放入Cstring[]數(shù)組中,采用軟件濾波方法得到此通道的數(shù)據(jù)。LED顯示子函數(shù)是按照正確的時(shí)序和尋址方式操作內(nèi)部寄存器,完成電源信號(hào)的實(shí)時(shí)顯示。
Delphi通訊軟件設(shè)計(jì)
上位機(jī)利用Delphi開(kāi)發(fā),由于Delphi沒(méi)有自帶的通信控件,采用第三方SPComm控件實(shí)現(xiàn)PC機(jī)與單片機(jī)串口通信。它具有豐富的與串口通訊密切相關(guān)的屬性、方法和事件,提供了對(duì)串口進(jìn)行操作的多種功能。在使用過(guò)程中,只要設(shè)置正確,完全可以發(fā)送從 0到 255的二進(jìn)制數(shù)字,且接收正確。SPComm控件的StartComm方法用于打開(kāi)串口,StopComm過(guò)程用于關(guān)閉串口。利用事件驅(qū)動(dòng)法完成數(shù)據(jù)的接收和發(fā)送,SPComm控件的OnReceiveData事件,當(dāng)輸入緩存有數(shù)據(jù)時(shí)將觸發(fā)該事件,在這里可以對(duì)串口收到的數(shù)據(jù)進(jìn)行處理,而WriteCommData完成數(shù)據(jù)的發(fā)送,這樣上位機(jī)系統(tǒng)可以接收單片機(jī)發(fā)送的數(shù)據(jù)和信息,以使PC機(jī)更快速作出反應(yīng)。
為實(shí)現(xiàn)數(shù)據(jù)通訊程序,須在Delphi開(kāi)發(fā)環(huán)境下設(shè)置一個(gè)窗體,窗體上主要有一個(gè)通訊控件SPComm和3個(gè)Timer控件。軟件采用定時(shí)器Timer1和Timer2控件來(lái)實(shí)現(xiàn)在數(shù)據(jù)信息送出2s后PC機(jī)仍未收到任何回執(zhí)信息,程序出現(xiàn)提示然后跳出系統(tǒng),以下是程序編寫時(shí)相關(guān)注意點(diǎn):
(1)握手信號(hào)建立以及發(fā)送接收數(shù)據(jù)時(shí):為了使主機(jī)能夠?qū)φ麄€(gè)檢測(cè)過(guò)程進(jìn)行實(shí)時(shí)控制,串口打開(kāi)即發(fā)送握手信號(hào),接著設(shè)定等待時(shí)間,握手成功后,通過(guò)條件判斷下一步是發(fā)送還是接收數(shù)據(jù)。對(duì)發(fā)送的命令,最好采用文本方法,若采用二進(jìn)制特別注意數(shù)據(jù)的格式。
(2)接收數(shù)據(jù):接收數(shù)據(jù)通過(guò)被動(dòng)的觸發(fā)事件完成,可以通過(guò)函數(shù)實(shí)現(xiàn),根據(jù)自己的要求編寫,在接收過(guò)程中,多用特征字符,如“#”,“$”等,這需要在通信協(xié)議中約定。
(3)Timer控件:根據(jù)需要設(shè)定Timer控件,通過(guò)它可以完成發(fā)送命令和接收數(shù)據(jù)的過(guò)程,同時(shí)可以有效的判斷通信異常等情況,并迅速作出反應(yīng)。
(4)通訊錯(cuò)誤:由于外界干擾或電壓波動(dòng)等原因,PC機(jī)和單片機(jī)之間的通訊可能會(huì)出現(xiàn)錯(cuò)誤,如接收緩沖區(qū)溢出、網(wǎng)絡(luò)端口超速等,這些可能在代碼中引起運(yùn)行錯(cuò)誤,為了處理這些錯(cuò)誤,須將錯(cuò)誤處理加到SPComm控件的Receivedata事件中處理。
結(jié)語(yǔ)
溫度傳感器通過(guò)溫度變送器接入TLC2543A/D轉(zhuǎn)換器,輸入信號(hào)很小,對(duì)干擾很敏感,因此一定要加裝獨(dú)立的屏蔽線,避免外界的干擾。同時(shí),供電電源置于設(shè)備內(nèi)部,工作時(shí)會(huì)產(chǎn)生干擾,所以一定要與信號(hào)線、控制線分開(kāi)并屏蔽好,防止設(shè)備出現(xiàn)意外的情況。
經(jīng)過(guò)模塊化的電路測(cè)試、軟件調(diào)試和系統(tǒng)組裝,測(cè)溫精度可以達(dá)到±0.08℃。
此儀器采用單片機(jī)作為主控制器,成本低,通訊可靠性高,實(shí)時(shí)性好,系統(tǒng)運(yùn)行穩(wěn)定,各項(xiàng)指標(biāo)達(dá)到了技術(shù)要求,通過(guò)青島市科技局鑒定,并已交付用戶單位使用,目前在冷藏設(shè)備的開(kāi)發(fā)過(guò)程中已經(jīng)發(fā)揮了重要作用。