董健康 朱愷杰 陳靜杰
摘 要: 為了響應民航局“十三五”節能減排專項項目的號召,設計一種具有較高可靠性,界面友好的航站樓環境數據集中監測平臺,來實時監測和存儲航站樓的環境數據。該系統的軟件以Visual Studio.NET為平臺,運用C#編程語言通過TCP/IP遠程網絡通信協議結合GPRS移動網絡,實現上位機對多臺在不同采樣現場采集設備的遠程數據交流,遠程指令控制,數據圖表繪制和歷史等功能。硬件部分以STM32微控制器為核心,集高溫度和高精度CO2濃度采集模塊,數據存儲模塊,GPRS遠程通信模塊為一體構成智能化環境數據采集節點。將采集節點布置于天津濱海國際機場T2航站樓值機大廳進行采集實驗,證明了該監測系統具有較高的精確性和可靠性。
關鍵詞: 航站樓; 環境參數; 遠程采集; 指令控制; 數據查詢; STM32微控制器
中圖分類號: TN931+.3?34; TP277 文獻標識碼: A 文章編號: 1004?373X(2018)08?0139?05
Abstract: To respond to Civil Aviation Administration′s call of special project for energy saving and emission reduction in "13th Five?year Plan", an airport terminal environmental data centralized monitoring platform with high reliability and friendly interface is designed to monitor and store airport terminal environmental data in real time. Taking Visual Studio.NET as the platform, the system software realizes the functions such as remote data exchange, remote command control, data graph drawing and historical data searching between the host computer and multiple acquisition devices in different sampling sites by using the C# programming language. and TCP/IP remote network communication protocol, and combining with the GPRS mobile network.Taking STM32 microcontroller as the core, the hardware part integrates high?temperature and high?precision CO2 concentration acquisition module, data storage module, and GPRS telecommunication module to constitute intelligent environmental data acquisition nodes. The acquisition nodes were placed in the check?in hall of T2 terminal in Tianjin Binhai International Airport to carry out the acquisition experiment. The result shows that this monitoring system has high precision and reliability.
Keywords: airport terminal; environmental parameter; remote acquisition; command control; data query; STM32 microcontroller
國家“十三五”對于機場建設規劃指出,我國在“十三五”末,將建成干線機場260個,通用機場500個以上[1]。隨著我國機場數量及旅客流量增多,機場的能源負荷將會日益增大。其中,航站樓的空調和通風設施將會在機場能源消耗中占有很重要的比例[2],而通風負荷將占到整個空調負荷的20%以上。且目前航站樓普遍存在新風調節力度過大或者不足的情況。航站樓的通風系統節能潛力巨大。所以,需要建立一個具備集遠程數據采集網絡、遠程通信、上位機客戶端和數據庫為一體的航站樓環境數據集中監測平臺,對航站樓不同位置的CO2濃度、溫度進行測定,從而為評估航站樓不同區域的候機環境通風情況打下基礎。
整套系統平臺由PC端數據監測軟件、環境數據庫和放置于航站樓不同位置的可移動智能環境數據采集節點構成。上下位機主要依靠基于GPRS模塊的TCP/IP網絡通信協議結合VPN路由通過外網映射端口來進行數據信息和指令交流。來自不同采集設備的大氣數據信息能實時地反映在PC端監控軟件的動態曲線趨勢圖上。與此同時,PC端軟件能對這些所采集到的數據在后臺SQL Server數據庫中進行區分存儲,在上位機軟件中可對每個現場采集設備指定日期內的數據進行查詢和趨勢圖的繪制,便于日后對航站樓內多區域環境數據的變化及調控措施進行深入研究。系統平臺結構如圖1所示。
環境數據采集節點主要布設于航站樓人流聚集區域,如值機大廳各值機環島,候機樓等區域,用于采集這些區域的CO2濃度和溫度變化情況。將數據傳輸至上位機,與此同時也將時間和該時間的環境數據存儲至E2PROM存儲芯片中。采集節點配備有3 000 mA·h, 9 V鋰電池,也可外接9 V/12 V電源供電,工作電流為104 mA,硬件結構如圖2所示。
1) 采集設備由STM32F103ZET6微處理器,低功耗型紅外二氧化碳傳感器COZIR? ambient,DS18B20溫度傳感器,SIM900A型GPRS通信模塊,E2PROM存儲芯片等部分組成。
2) CO2傳感器采用英國COZIR? ambient低功耗高精度CO2傳感器,功耗僅為3.5 mW,3.3 V供電,測量范圍0~5 000 ppm,精度為±50 ppm +/-3%FS。溫度傳感器使用DS18B20溫度傳感器,在 -10~85 ℃范圍內精度為±0.5 ℃。
3) 采集節點主控板采用TP4055芯片充電電路,可在外接電源時為整個采集設備供電,與此同時為采集節點的鋰電池充電。外接電源和電池切換電路可以確保在斷開外接電源時自動切換到鋰電池供電。
4) 采集節點與上位機的信息交互主要依靠SIM900A GPRS模塊進行通信。該模塊內部采用PPP網絡協議,提供應用層AT指令對GPRS模塊進行配置,通過撥號上網的方式遠程PC服務器端進行TCP連接[3?4]。 在采集節點未和上位機建立連接時,可用移動電話向采集器以短信的形式向特定編號的采集器發送請求連接信號,采集節點收到短信后將會向上位機連續進行3次握手連接,若連接上,則數據通道建立。上位機即可與采集節點進行數據或命令的交互,若3次連接失敗,那么采集器將暫時終端握手連接請求,保持原來的數據采集工作。在建立連接后,若長時間無信息交互TCP通信將會斷開,故下位機設置了每30 s發送一次心跳包給上位機端,以確保連接穩定。若在數據傳輸過程中由于其他外在原因導致網絡連接中斷,采集節點也能在心跳包發送失敗后向上位機進行3次恢復連接請求。也可通過移動電話以短信的形式向指定的采集設備發送“RELINK”將設備遠程復位。
5) 在采集節點設計中選用AT24C1024 E2PROM存儲芯片,用于存儲采集到的環境數據,當與上位機建立連接后,上位機軟件可通過發送指令,將E2PROM中的數據全部讀取,或者將上位機發送過來的日期范圍指令進行轉碼,見表1,利用時間段信息,在E2PROM中進行尋址,開始發送指定時間段內所存儲的數據。
上位機軟件以Visual Studio.NET為平臺利用winForm窗體環境來進行對各項功能及軟件界面的開發,主體功能主要分為實時數據接收圖和歷史數據查詢兩大部分,如圖3所示。
3.1 建立通信
采集節點的GPRS模塊是利用移動通信運營商分配的公網IP地址,而PC端使用的是內網IP,所以設置一臺VPN服務器[5],將上位機端的IP地址穿透至公網IP,使采集節點能與上位機建立通信。主要運用基于TCP/IP協議的Socket套接字通信方式,將上位機設置為Socket服務器,采集節點設置為Socket客戶端,上位機點擊“開始接收”按鈕后,即打開了Socket服務器,并監聽所有采集節點的連接請求。在接收到某個下位機的握手連接信號后,上位機將通過.Net平臺下的IPEndPoint類中綁定客戶端IP的方法來獲取該采集設備的IP地址和端口號,并將其存入IP隊列中。然后利用.Net的多線程(Thread)[6?7]方法為該通信通道分配一個新線程,該方法可實現上位機與各臺設備的信息交互完全由相互獨立的線程通道進行,保證了連接的可靠性和穩定性,且在采集節點連接斷開以后Thread將會自動被釋放,大大節省了上位機的資源。
在建立通信后,上下位機通過數據流(stream)的方式進行通信。在有數據交互時,上位機和下位機將索要發送的信息發入數據流中,即可進行數據傳輸和下位機的相關應答通信;在沒有數據交流時stream將會釋放,節省上位機資源。上位機軟件在每接收一條數據時會遍歷檢測一次存放IP號的隊列,用Socket類中poll方法來監測與該設備的通斷,若已斷開,那么IP隊列將斷開的設備刪除,同時在線設備列表中該設備號也將刪除。
3.2 信息處理
上位機通過實時數據接收界面或者歷史數據接收界面上的下拉框(combo box控件)來選擇所需查看或者操作的設備,在實時數據接收界面下,當選中下拉框的設備編號后,上位機鎖定該設備所對應的IP地址進行信息交互。具體的交互指令格式和作用如表1所示。
1) 上位機能通過指令接收或者刪除下位機E2PROM存儲芯片中所有存儲的時間,溫度和CO2濃度數據,也可通過日歷表(Canlendar)控件輸入日期區間,程序將時間段區間組成時間段指令來發送給對應的采集設備,采集設備將在E2PROM中以日期索引的方式來尋找符合條件的數據,并開始向上位機發送該段時間的環境數據。下位機對于上位機的指令可進行應答。如表2所示。
2) PC端使用Visual Studio.NET平臺對于SQL Server的字符串指令編程控制模式[8]。上位機軟件通過數據頭區分數據來源設備號,然后在SQL Server庫的表名中尋找對應的設備存儲列表將數據存入,具體過程如圖4所示。
3) 利用Visual Studio.NET平臺下開源的ZedGraph控件組進行CO2濃度和溫度變化曲線的繪制。該控件以讀取數組的形式進行繪圖,上位機將接收到的數據字符串進行處理后存入ZedGraph的畫圖數組中,程序再將數組中的數值更新到圖表中。ZedGraph控件具有靈活的數據量自適應功能,能夠隨著數據量逐漸變多從而將時間軸壓縮,便于觀察整體趨勢[9?10],用戶也可以通過鼠標自由地選取將深入分析的曲線趨勢段進行放大。
4) 歷史數據的查詢主要是基于SQL數據庫的查詢,對已接收到的上位機服務器端的數據進行讀取,數據庫中數據表的格式如圖5所示,其中時間設為數據表的主鍵,這樣可以防止時間不按照先后順序排列,也可避免重復錄入。
由于考慮到設備的可移動性,在更換設備采集方位后,在歷史數據查詢狀態下,可將設備所對應的數據庫中的數據進行導出和刪除操作。其中,導出操作利用dataGridView控件以表格形式將對應設備數據庫中的數據間接按用戶所選路徑導出存放,然后利用Visual Studio.NET平臺下的Excel操作類將數據以Excel表格的形式輸出。
4.1 實時接收模式實驗結果
選取兩臺采集節點設備分別放置于天津濱海國際機場T2航站樓E和F環島的值機區域中,PC端服務器設置于校內實驗室中,進行數據接收測試。首先用移動電話向這兩臺采集設備發送“LINKME”指令,待在線設備列表框中出現這兩臺采集節點的設備號后,分別設定兩臺采集節點數據接收周期為每次30 s(短周期采樣)。接收情況如圖6所示。上位機數據接收穩定,無卡頓或死機現象,實時性較好。趨勢圖可實時反映航站樓兩個值機環島的CO2濃度和溫度。從曲線圖可看出航站樓E,F兩個環島的溫度較為平穩,CO2濃度卻有明顯的變化。
4.2 歷史數據查詢實驗結果
在歷史數據模式下查閱這兩臺設備所對應的數據庫中所存儲的24 h下的歷史數據,按每次30 s的采集頻率,應測2 880個數據,求得丟包率如表3所示。2臺采集設備丟包率分別為6.1%和6.5%,可見丟包率較小,對于研究環境數據的變化曲線的影響較小,故設備的數據采集和傳輸較為可靠。
本系統實現了航站樓內多點CO2濃度、溫度的采集,更可以對多個航站樓進行環境數據采集。結合豐富的上下位機操作指令,有效地保證了數據穩定可靠的接收與存儲。相比于傳統的采集平臺,其有更高的數據采集完整性。上位機友好的人機界面達到了較好的多現場采集設備遠程可控性。后臺數據庫對所采集到的數據進行了高效的管理。測試結果表明,整套平臺操作簡便,運行穩定可靠,適用于對諸如航站樓等,人流量大,客流具有時間性聚集的場所進行環境評估,從而在現有的空調通風設備的基礎上制定更加合理的環境參數調節策略,達到節省能源的目的,具有較高的社會推廣價值。
參考文獻
[1] 陸二佳.民航“十三五”規劃解讀:全面夯實民航強國建設基礎[N].中國民航報,2016?12?23(6).
LU Erjia. Interpretation of the 13th five?year plan for civil aviation: consolidate a foundation for construction of a strong civil aviation country [N]. CAAC news, 2016?12?23 (6).
[2] 楊臣.航站樓空調系統能耗分析與優化控制策略研究[D].上海:上海交通大學,2011.
YANG Chen. Energy consumption evaluation and optimal control strategies research for the air?conditioning system of the airport terminal building [D]. Shanghai: Shanghai Jiao Tong University, 2011.
[3] 趙鋒,王艷瑋,范建華,等.GPRS終端撥號上網連接認證注冊全過程研究[J].計算機工程與應用,2004,40(23):158?160.
ZHAO Feng, WANG Yanwei, FAN Jianhua, et al. Study on the whole procedure of GPRS terminal′s dialing, connecting, authentication and registration [J]. Computer engineering and applications, 2004, 40(23): 158?160.
[4] 袁斌.基于GPRS傳輸的TCP/IP通信協議[J].中小企業管理與科技,2014(1):285?286.
YUAN Bin. TCP/IP communication protocol based on GPRS transmission [J]. Management &; technology of SME, 2014(1): 285?286.
[5] 金劍鋒,曹開雄,陳建林.簡易的VPN服務器架構與使用[J].農業網絡信息,2016,30(6):41?43.
JIN Jianfeng, CAO Kaixiong, CHEN Jianlin. Architecture and use of simple VPN server [J]. Agriculture network information, 2016, 30(6): 41?43.
[6] 梁宏煒.用C#實現多線程Socket的通信[J].數字技術與應用,2013,18(6):60.
LIANG Hongwei. Multi?threaded Socket communication with C# [J]. Digital technology and application, 2013, 18(6): 60.
[7] 李德水.基于SOCKET編程接口的網絡通信[J]. 渭南師范學院學報,2005,20(2):69?71.
LI Deshui. Network communication based on SOCKET programming interface [J]. Journal of Weinan Teachers College, 2005, 20(2): 69?71.
[8] 喻洋,葉玉堂,邢同舉.SQL數據庫操作中的常用C~#語句[J].軟件導刊,2011,10(11):84?87.
YU Yang, YE Yutang, XING Tongju. Common C# statements in SQL database operations [J]. Software guide, 2011, 10(11): 84?87.
[9] 朱亦鋼.應用Zedgraph高效開發數據圖表[J].電腦編程技巧與維護,2009,16(12):59?61.
ZHU Yigang. Application of Zedgraph in rapid develop graphic chart [J]. Computer programming skills and maintenance, 2009, 16(12): 59?61.
[10] 于國卿,李趁趁,趙雨森.ZedGraph控件在水閘監測系統開發中的應用研究[J].南水北調與水利科技,2008,6(3):43?45.
YU Guoqing, LI Chenchen, ZHAO Yusen. Applied research of open?source Zedgraph component in Web development [J]. South?to?north water transfers and water science &; technology, 2008, 6(3): 43?45.