◆夏紅偉
(江蘇省軍區 江蘇 210009)
在科技時代的今天,自動化和智能化能力成為企業的核心競爭力,提高自身的信息化水平成為企業的核心任務。在工業領域中,大多數企業都使用了集散控制系統展開管理,但是受到網絡安全隔離的要求和成本的限制,該系統的使用受到諸多限制。因此,本文通過設計實時數據采集系統,在滿足安全需求的同時,優化管理效果。
軟件設計要滿足以下六種要求:(1)數據采集系統和DCS系統不能互相影響;(2)DCS系統特定控制點上的數據要保存下來;(3)數據保存要保證歷史連續性;(4)采集系統即使遇到網絡故障也不能影響數據連續性;(5)采集系統遇到故障可以自動報警和自動恢復;(6)系統采樣周期控制在5s之內。
采集系統的工作任務是將數據從控制網中收集到工作站中。如發電廠DCS系統具備上位機管理程序,能夠采集數據,將特定控制點數據讀取出來。上位機管理程序所采集的數據只是在本地中保存下來,并不會公開文件格式,文件只保存了一個周期的數據,歷史數據并沒有保存下來。因此本設計對此進行了優化,在DCS系統中增設采樣機,在該采樣機上設置上位機管理程序,將程序中API函數調取出來,在采樣網絡之下使用通信程序將數據傳輸給數據庫。
在采集系統中設置了采樣站的配置和驗證、采樣點的配置和驗證、診斷網絡故障、收集采樣數據、傳輸數據、儲存離線數據、傳輸離線數據的功能。首先系統對采樣站登錄口令進行驗證,避免未經授權的用戶啟動采樣工作。其次在采樣服務器中將DCS系統采集數據登錄口令、采樣站名稱、ip地址、mac地址以及DCS系統保存下來[1]。采樣站傳輸數據之前,將數據和服務器儲存信息進行對比,通過驗證之后傳輸采樣數據。在通信正常的情況下,數據被傳輸到服務器中,如果無法和服務器保持正常通信,采樣站數據傳輸狀態變成儲存狀態。在無法正常通信的時候,數據被保存到本地文件中。
對于采樣數據時間的測試,要在一個采樣周期中,得到全部控制點的數據,同時在緩存區得到儲存,這個過程花費的時間就是rt。rt值越小代表著數據傳輸時間充裕。對本設計進行rt性能測試,在rt值為264ms時,控制點中包含了489個邏輯點和1200個模擬點,是控制點數量最少的DCS系統。在rt值為395ms時,控制點包含1217個邏輯點和3660個模擬點,是控制點數量最多的DCS系統。由此可以發現rt隨著控制點增加逐漸變大,時間可以控制在毫秒級別,數據采樣以及處理具備了充足的時間。
對于采樣周期性能的測試,為了能夠保持連續采樣,需要每個周期進行一次采樣工作,采樣工作之后還需要進行實時數據傳輸以及儲存工作,這些工作都需要在周期時間內完成。事實上,周期是理論上的,并不能得到精準的把控,測試周期性能只能使用近似測量法。利用采樣單位時間和次數的比值,也就是實際采樣周期,記作PT。當PT值和T越接近的時候,代表著性能越好。對本設計進行測試,發現在控制點數量為 489個邏輯點和1200個模擬點時,采樣次數為118,PT值為5.08。在控制點數量為1217個邏輯點和3660個模擬點時,采樣次數為118,PT值為5.08。
實時數據采集系統中進行的是單向傳輸,只允許采樣站服務器傳輸數據,不允許接收數據。同時系統需要優先傳輸實時數據,在線采樣數據會被優先傳輸。系統還應該具備自動診斷和自動恢復能力,系統傳輸數據的時間,也就是采樣站傳出數據,到服務器數據庫之間的時間要少于5s。
本文對系統功能進行了如下設計:采樣服務器處于非信任網絡,因此采樣站和數據庫之間不能直線通訊,網閘文件接收線程來負責對文件的接收,將文件中數據傳輸給數據庫[2]。服務器處于網閘信任網絡,采樣站才能和數據庫傳輸數據。離線傳輸服務器主要負責采樣站離線數據的傳輸,網閘文件發送線程則主要負責以文件形式傳輸數據。這樣的設計能夠實現數據傳輸的安全,在系統維護上也十分簡便。通過網閘傳輸文件的使用,發送端獲取網閘授權的用戶名稱、用戶密碼以及授權文件等信息。采樣站如果作為網閘信任端,要儲存相關授權信息。服務器同樣作為網閘信任端,將安全授權信息在一臺計算機上保存,更方便對計算機進行維護。
同時能夠對在線以及離線的優先傳輸問題進行處理。例如:同一時間,A站發來大量在線數據,B站發來大量離線數據,網閘需要先傳輸A站數據,再傳輸B站數據。但是網閘并不具備控制優先傳輸的能力,為了保證安全不允許采樣站之間互相通訊,使得離線數據的傳輸受到抑制。通過使用通信服務器,將采樣站中在線數據和離線數據全部接收下來,同時在傳輸隊伍中得到儲存。網閘文件發送線程從兩個隊列情況將在線隊列數據傳輸出去。如網閘文件發送線程最多只能對10個隊列元素進行處理。如果在線隊列元素超過10個,網閘文件就不會處理離線的傳輸隊列,直接發送在線隊列。如果在線隊列元素沒有超過10個的時候,可以直接將在線傳輸元素取走,再將離線傳輸隊列中取走10-n個元素。
對傳輸子系統性能測試同采樣子系統性能測試一致,首先要測試基準延時時間BST,也就是在采樣周期內,采樣站得到全部控制點采樣數據,將采樣數據傳輸給服務器花費的時間[3]。BST的值等于最后采樣時間和首個采樣時間的差值。系統控制點的數量越多,對應的BST值也就越大。例如:將采樣定時設定為5s,數據實時傳輸100次中,將最大值、最小值以及平均值記錄下來。在本次測試中,控制點數量為489個邏輯點和1200個模擬點時,BST最小值為2.53s,BST最大值為3.11s,平均值為2.82s。在控制點數量為1217個邏輯點和3660個模擬點時,BST最小值為3.13s,BST最大值為3.81s,平均值為3.42s。從測量結果中可以判斷,傳輸離線數據增加了BST值,但是BST值都能控制在5s之內,可以達到用戶的要求。其次要進行傳輸延時時間測試,也就是在一個周期內得到全部實時數據,將數據傳輸給服務器的時間。經過測試發現,傳輸延時時間都能控制在5s之內,能夠達到用戶的要求。
綜上所述,在網絡安全隔離基礎上構建實時數據采集系統,讓企業生產過程中數據得到實時采集和傳輸,該系統的開發簡便,具有良好的穩定性,且維護工作簡單。該系統設計在線數據和離線數據的同時傳輸方式,將生產數據完善的儲存在服務器中。該系統的應用不僅能夠滿足企業對網絡安全的要求,而且能夠滿足企業生產對數據共享的需求,提高了企業生產和管理的效率。