張福生,于 峰,張 歡
(中國空間技術研究院 載人航天總體部,北京 100094)
隨著航天科技的迅速發(fā)展,我國載人航天器類型不斷增多,其規(guī)模和功率呈明顯上升趨勢,與之配套的地面測試設備往往具有功率大、散熱要求高、環(huán)境控制要求高等特點[1-2]。在航天領域,測試技術水平很大程度上決定了型號性能的整體水平[3],測試結果的定量、定性驗證對設計起到了很大的促進作用,而地面設備穩(wěn)定工作是精確測試開展的前提,因此需要進一步加強對設備環(huán)境參數的有效監(jiān)測。
目前,對于地面設備的溫度、濕度等環(huán)境參數的檢測主要使用通用溫濕度計測量、人工記錄的方式開展。測試點只能設置在視線可及位置,因而不能反映設備內部如功率二極管等關鍵發(fā)熱元器件的真實環(huán)境,不利于設備工作狀態(tài)的趨勢判讀;當發(fā)生極端燒灼現象時只能靠感官去判讀;具有主觀性,且存在著數據記錄實時性差,狀態(tài)記錄時間顆粒度大,無分析預警及閉環(huán)控制的缺點。本文提出了一種基于STC89C5X系列單片機和Arduino單元的遠程環(huán)境參數監(jiān)視系統(tǒng)設計方法[4-5],該系統(tǒng)能夠對溫度、濕度、煙霧濃度等常用環(huán)境參數進行自動檢測、數據回傳、越限報警,且可以通過GSM消息形式遠程預警[6],從而實現設備內部關鍵器件環(huán)境的自動、精細監(jiān)視,從環(huán)境參數角度對航天器綜合測試起到有效反饋作用。
溫濕度等環(huán)境參數具有緩變的特征,對數據處理速度要求不高。系統(tǒng)選用基于單片機的解決方案,在滿足數據處理要求的前提下,可有效縮減系統(tǒng)規(guī)模和開發(fā)周期,并降低成本[7-9]。系統(tǒng)由傳感器單元、單片機處理單元、GSM消息發(fā)送單元、主控計算機、用戶客戶端5個部分組成,可實現8路溫度、濕度、煙霧濃度參數的同步實時監(jiān)測;用戶通過網絡從主控計算機訂閱數據。系統(tǒng)設計框架與各部分的通信關系如圖1所示。
圖1 環(huán)境參數監(jiān)視系統(tǒng)框架圖Fig. 1 Structure of the environmental parameter monitoring system
系統(tǒng)各模塊功能如下:
1)傳感器單元。采集環(huán)境溫度、濕度、煙霧以及越限的報警指示;傳感器端設固定卡,通過15 m電纜與處理單元連接,可根據用戶需求固定在包括設備內部在內的敏感測點[10-11]。
2)單片機處理單元(含網絡模塊)。驅動8路傳感器單元,并接收傳感器單元數據;驅動傳感器單元發(fā)出報警指示提示用戶;將數據通過串口協(xié)議和TCP/IP協(xié)議發(fā)送給主控計算機單元;如果數據越限,則驅動GSM短信發(fā)送單元發(fā)送短信消息。為便于系統(tǒng)調試和在網絡故障狀態(tài)下能夠繼續(xù)進行監(jiān)測,設計了LCD模塊將數據實時顯示在本地LCD1602液晶屏上[12-13]。
3)GSM短信發(fā)送單元。通過參數越限后向用戶發(fā)送短信預警提示實現遠程監(jiān)視,可增加系統(tǒng)的可靠性,使報警信息在無人監(jiān)視的情況下也可通知到用戶。本模塊作為系統(tǒng)可選模塊,能夠在管理允許的情況下配置進系統(tǒng),實現系統(tǒng)無人監(jiān)視運行。
4)主控計算機單元。接收單片機處理單元(含網絡模塊)的數據,并顯示在主控計算機顯示器上,同時轉發(fā)至用戶客戶端單元,如果數據越限,則進行顏色、聲音報警。
5)用戶客戶端單元。通過TCP/IP協(xié)議訂閱主控計算機單元發(fā)送的數據,并顯示在客戶端計算機的顯示器上,具有曲線監(jiān)視功能——如果數據越限,則進行顏色、聲音報警。
溫濕度傳感器使用AM2302,該傳感器為數字式傳感器,其溫度測量精度為±0.2 ℃、濕度測量精度為±2%。煙霧濃度采集功能采用MQ2傳感器,該傳感器輸出為模擬量,可探測煙霧顆粒物占空氣比重范圍10-5~10-2mg/L。
傳感器單元設計外圍信號調理電路,實現采集信號的初步處理和越限報警。電路設計中使用78L05作為穩(wěn)壓芯片,利用555定時器,分別制作2個記憶電路,用于溫度、濕度與煙霧傳感器的越限報警指示,一旦采集數值越限,將點亮電路中的發(fā)光二極管。選用LM393作電壓比較器,用于判斷煙霧傳感器輸出的模擬電壓是否越限:越限則輸出高電平,否則輸出低電平。
基于單片機處理單元的可靠性與擴展性,同時兼顧傳輸速率與測試網絡的匹配,系統(tǒng)采用51單片機與Arduino單元結合的方式實現數據處理與網絡傳輸[14]。
單片機采集單元的處理器采用STC89C5X系列單片機;液晶顯示采用LCD1602;3塊8路模擬開關芯片采用CD4051芯片,其中1塊用于采集8路溫濕度信息、另1塊用于采集8路煙霧濃度信息、最后1塊為傳輸溫濕度越限報警信號(高電平報警、低電平正常);A/D信號轉換芯片采用ADC0832,該芯片與采集煙霧濃度信息的CD4051相連接,將煙霧傳感器采集的模擬量轉換為數字量;與計算機串口通信采用MAX232芯片;配8個RJ11接口,分別與CD4051相連接,最多可以外接8個傳感器單元。
STC89C5X系列單片機內部程序共有6個模塊,程序工作流程如圖2所示。
圖2 單片機程序工作流程Fig. 2 Programming process of the micro controller unit
1)LCD模塊
該模塊有LCD初始化函數、LCD寫數據函數、LCD寫命令函數、LCD檢測函數、LCD延時函數、LCD位置顯示函數、正常顯示界面函數、報錯顯示界面函數共8個函數。
2)CD4051模塊
該模塊包含1個函數,用于驅動CD4051芯片,使其可以導通需要選擇的某一路模擬開關。
3)ADC0832模塊
該模塊有ACD0832延時函數和驅動ADC0832工作函數2個函數。
4)ADC2302模塊
該模塊有讀傳感器函數、讀單個字節(jié)函數、顯示溫度函數、顯示濕度函數、串口發(fā)送函數、校驗失敗函數、清空數據函數、傳感器延時函數共8個函數。
5)GSM模塊
該模塊包含1個函數,為AT初始化函數,發(fā)送AT指令控制GSM模塊進行短信發(fā)送。
6)串口輸出模塊
該模塊有串口初始化函數、串口輸出單個函數,串口輸出字符串函數共3個函數。
7)網絡模塊
采用數據傳輸速率高的Arduino開發(fā)板和Arduino庫函數進行開發(fā),就像是在對一個類似于物理的計算平臺進行相應的連線,所用函數在龐大的資源庫中調用即可[15-16]。網絡模塊程序流程見圖3。
圖3 網絡模塊程序流程Fig. 3 Program process of network module
采用TC35I芯片進行短信的發(fā)送,選擇主板型號為GTM900C的GSM短信發(fā)送模塊,通過RS232串行接口與單片機處理單元連接。
主控計算機可使用地面測試系統(tǒng)中的普通PC機實現,配置串口和2塊以上網卡。主控軟件界面如圖4所示,可對傳感器測量結果進行實時顯示,并顯示網絡、串口通信信息。
圖4 上位機軟件主界面Fig. 4 Host software control panel
主控計算機單元軟件采用Visual Studio MFC開發(fā),工作流程如圖5所示,其主要功能如下:
1)主界面功能:包括串口數據接收、停止選擇,網絡數據接收、停止選擇,網絡設置選擇,數據的顯示。2)串口接收功能:接收單片機處理單元通過串口發(fā)送的信息。該功能使用開源的CSerialPort實現。3)網絡接收功能:使用SOCKET接收網絡中的數據,由異步SOCKET編程實現。4)網絡發(fā)送功能:使用SOCKET向網絡中發(fā)送數據,由異步SOCKET編程實現。5)配置文件讀取功能:讀取配置文件,為網絡發(fā)送與接收功能提供默認信息;配置文件采用XML文件形式,使用TinyXml進行XML文件解析。6)日志生成功能:將接收到的溫度、濕度、煙霧濃度信息存入日志中,以供查看。該功能采用CFile類實現。7)數據處理功能:將接收到的數據解碼處理,當數據越限時發(fā)出報警顯示提示用戶,同時具有報警解除功能。
用戶客戶端單元軟件同樣采用Visual Studio MFC開發(fā),具有網絡接收、顯示、日志生成、數據處理、讀取配置文件等功能,設計方法同主控軟件。程序讀取配置文件,接收采集數據,然后經處理生成日志,并用于生成測試曲線進行趨勢判讀??蛻舳塑浖缑嫒鐖D6所示,用戶通過連接主控機進行傳感器數據訂閱及實時觀測。
圖6 客戶端單元軟件界面Fig. 6 Client software control panel
溫濕度和煙霧濃度的測量精度以及傳感器響應時間如表1所示。
表1 環(huán)境參數監(jiān)視系統(tǒng)工作指標Table 1 Specifications of environmental parameter monitoring system
為驗證系統(tǒng)性能,分別開展了溫度、濕度、煙霧濃度監(jiān)視與報警試驗。試驗初始環(huán)境溫度為21.7 ℃,相對濕度32.1%,煙霧含量為0 mg/L;分別設置各參數報警閾值為30.0 ℃、75.0%RH、10-3mg/L。試驗結果表明,當傳感器靠近激勵源后,系統(tǒng)采集與數據回傳正常,濕度和煙感實施激勵后立即觸發(fā)報警,溫度參數經過一段溫升過程后成功觸發(fā)報警,并分別完成短消息發(fā)送。
針對載人航天器地面測試設備環(huán)境參數監(jiān)視要求,基于STC89C5X系列單片機和Arduino單元,提出了一種小型化的遠程參數監(jiān)視系統(tǒng)設計。該系統(tǒng)可以實現溫度、濕度、煙霧濃度的同步實時監(jiān)測,可以對設備內部敏感測點進行監(jiān)測,具有測點分布靈活、數據連續(xù)可追溯、系統(tǒng)體積小、性價比高的特點。
這種基于單片機的遠程環(huán)境參數監(jiān)視系統(tǒng)具有良好的移植性,系統(tǒng)支持標準模擬量及數字量傳感器接入,支持TCP/IP設備接入,具備多路采集功能。不僅可用于地面設備環(huán)境測試與集成,也可以擴展至對航天器不同設備所處環(huán)境的溫濕度測量。無線傳輸模塊為后續(xù)推動自動化測試和測試模式的轉型進行了技術積累,便于在機房等噪聲干擾較大的環(huán)境或人力難以到達的檢測點進行遠程監(jiān)視與反饋,對降低人力要求和提高測試自動化程度有很大作用。
(References)
[1]周建平. 我國空間站工程總體構想[J]. 載人航天,2013, 19(2): 1-10 Zhou Jianping. Chinese space station project overall vision[J]. Manned Spaceflight, 2013, 19(2): 1-10
[2]李廷中, 王蓓蓓, 周新順. 航天器電源系統(tǒng)大功率智能配電技術[J]. 航天器環(huán)境工程, 2011, 28(6): 511-515 Li Tingzhong, Wang Beibei, Zhou Xinshun. Intelligent power distribution for spacecraft large capacity power system[J]. Spacecraft Environment Engineering, 2011,28(6): 511-515
[3]張黎明, 孫寧 于慧亮, 等.基于PXI的衛(wèi)星綜合測試系統(tǒng)的設計與實現[J]. 計算機測量與控制, 2008, 16(1):27-29 Zhang Liming, Sun Ning, Yu Huiliang, et al. Design and implementation of satellite synthesis test system based on PXI[J]. Computer Measurement and Control, 2008,16(1): 27-29
[4]楊繼志, 郭敬. Arduino的互動產品平臺創(chuàng)新設計[J].單片機與嵌入式系統(tǒng)應用, 2012, 12(2): 39-41 Yang Jizhi, Guo Jing. Arduino-based interactive product innovation[J]. Microcontrollers & Embedded Systems,2012, 12(2): 39-41
[5]蔡睿妍. Arduino的互動產品平臺創(chuàng)新設計[J]. 電子設計工程, 2012, 20(16): 155-157 Cai Ruiyan. Principle and application of Arduino[J].Electronic Design Engineering, 2012, 20(16): 155-157
[6]楊洋, 沈小青, 柏永斌. 基于 AVR和以太網的遠程環(huán)境監(jiān)控系統(tǒng)設計與實現[J]. 計算機測量與控制, 2013,21(2): 418-420 Yang Yang, Shen Xiaoqing, Bo Yongbin. Design of tele-measurement and control system of environment based on AVR and internet[J]. Computer Measurement and Control, 2013, 21(2): 418-420
[7]申強, 楊登紅, 李東光. 基于MSP430單片機的彈道解算方法研究與實現[J]. 北京理工大學學報, 2011, 31(2):140-143 Shen Qiang, Yang Denghong, Li Dongguang. Trajectroy calculation method based on MPS430 MCU and its implementation[J]. Transactions of Beijing Institute of Technology, 2011, 31(2): 140-143
[8]代杰, 樊瑜瑾, 張學麗, 等. 基于單片機的光電編碼器位置檢測系統(tǒng)設計[J]. 計算機測量與控制, 2011, 19(1):17-19 Dai Jie, Fan Yujin, Zhang Xueli, et al. Design of photoelectric encoder position measuring system based on single-chip[J]. Computer Measurement and Control,2011, 19(1): 17-19
[9]戴光武, 都洪基, 賈磊, 等. 基于 P89LPC952單片機的電動機保護裝置研究[J]. 電力系統(tǒng)保護與控制,2009, 37(2): 73-79 Dai Guangwu, Du Hongji, Jia Lei, et al. Motor protection equipment research based on P89LPC952 microcontroller[J]. Power System Protection and Control, 2009, 37(2): 73-79
[10]奚建榮. 基于 51單片機的多點溫度控制系統(tǒng)設計[J].現代電子技術, 2009, 32(2): 186-188 Xi Jianrong. Multi-point temperature control system based on 51 single chip computer[J]. Modern Electronics Technique, 2009, 32(2): 186-188
[11]張菁. 單片機溫度控制系統(tǒng)方案的研究[J]. 上海交通大學學報, 2007, 41(1): 142-144 Zhang Jing. Study on single chip processor temperature control system[J]. Journal of Shanghai Jiaotong University, 2007, 41(1): 142-144
[12]陳享成, 耿長青. 基于單片機的LCD顯示終端設計[J].電力自動化設備, 2007, 27(9): 110-112 Chen Xiangcheng, Di Changqing. LCD terminal design based on single chip[J]. Electric Power Automation Equipment, 2007, 27(9): 110-112
[13]王海霞, 武一. 基于SOPC的LCD顯示模塊的設計與實現[J]. 液晶與顯示, 2012, 27(4): 508-513 Wang Haixia, Wu Yi. Design and implementation of LCD module based on SOPC[J]. Chinese Journal of Liquid Crystals and Displays, 2012, 27(4): 508-513
[14]賓俊, 艾芳芳, 劉念, 等. 基于Arduino和Python搭建的實時在線 pH測量平臺[J]. 計算機與應用化學,2013, 30(1): 48-52 Bin Jun, Ai Fangfang, Liu Nian, et al. Instantaneous and online pH measuring platform based on Arduino and Python[J]. Computers and Applied Chemistry, 2013,30(1): 48-52
[15]紀欣然. 基于Arduino開發(fā)環(huán)境的智能尋光小車設計[J].現代電子技術, 2012, 35(15): 161-163 Ji Xinran. Design of intelligent light-seeking car based on Arduino IDE[J]. Modern Electronics Technique,2012, 35(15): 161-163
[16]崔才豪, 張玉華, 楊樹財. 利用Arduino控制板的光引導運動小車設計[J]. 自動化儀表, 2011, 32(9): 5-11 Cui Caihao, Zhang Yuhua, Yang Shucai. Design of the light-guided car by using Arduino control board[J].Process Automation Instrumentation, 2011, 32(9): 5-11