前言介紹
PLC(Programmable Logic Controller,可編程邏輯控製器)是現代工業(ye) 控製的核心。
下麵簡單介紹一下PLC的發展曆程。
1968年,通用汽車公司招標新式設備,用於(yu) 取代傳(chuan) 統繼電器,以提升產(chan) 線調整、設備檢修時的效率。1969年Modicon公司交付了其第一件PLC產(chan) 品,並於(yu) 1979年發布了Modbus通信協議。Modicon後來成為(wei) 施耐德公司旗下PLC品牌。
此外,Allen-Bradley公司也參與(yu) 了PLC的早期發展,其PLC後來成為(wei) 羅克韋爾旗下AB PLC。
除了Modbus外,PLC流行的通信協議還有Profibus和Profinet。
Profibus在1987年由德國西門子等公司及機構所推動,Profinet繼承自Profibus,並於(yu) 2002年發布Profinet CBA標準。
接下麵簡單介紹一下OPC。
OPC是PLC與(yu) IT係統通信的橋梁,將PLC處理的數據轉變成IT係統能夠直接使用的變量。
OPC有兩(liang) 個(ge) 發展階段。
階段1是OPC DA,OPC代指OLE for Process Control。
階段2是OPC UA,OPC代指Open Platform Communications。
其中,OPC DA基於(yu) 微軟的OLE(對象鏈接與(yu) 嵌入)、COM(組件)、DCOM(分布式組件)開發,於(yu) 1996年發布最初版本。所以說,在工控領域,微軟Windows是真正的生產(chan) 力工具。
西門子等PLC大廠都有自己的OPC產(chan) 品,但是現在最流行的是Kepware公司的通用OPC Server,其兼容大多數主流型號的PLC。Kepware於(yu) 1995年成立,於(yu) 2016年被PTC公司收購。
這篇短文又出現了施耐德、羅克韋爾、西門子、微軟、PTC等行業(ye) 大公司的身影,而且我們(men) 還看到,最適合中國工業(ye) 軟件廠商學習(xi) 的PTC,也在通過收購Kepware來介入物理世界,以鞏固自己的基礎。
導讀:
OPC UA
OPC統一架構(OPC Unified Architecture)是OPC基金會(hui) (OPC Foundation)創建的新技術,更加安全、可靠、中性(與(yu) 供應商無關(guan) ),為(wei) 製造現場到生產(chan) 計劃或企業(ye) 資源計劃(ERP)係統傳(chuan) 輸原始數據和預處理信息。使用OPC UA技術,所有需要的信息可隨時隨地到達每個(ge) 授權應用和每個(ge) 授權人員。
OPC UA 獨立於(yu) 製造商,應用可以用他通信,開發者可以用不同編程語言對他開發,不同的操作係統上可以對他支持。OPC UA 彌補了已有 OPC 的不足,增加了諸如平台獨立、可伸縮性、高可用性和因特網服務等重要特性。
OPC UA 不再基於(yu) 分布式組件對象模型(DCOM),而是以麵向服務的架構(SOA)為(wei) 基礎。OPC UA 因此可以連接更多的設備。
今天,OPC UA 已經成為(wei) 連接企業(ye) 級計算機與(yu) 嵌入式自動化組件的橋梁 - 獨立於(yu) 微軟、 UNIX 或其他操作係統。
以下正文部分
1. 組件對象模型(COM)/分布式組件對象模型(DCOM)的終止
傳(chuan) 統OPC應用之間的數據交換是基於(yu) 微軟的組件對象模型(COM)技術。因為(wei) 視窗(Windows)操作係統在世界範圍內(nei) 得到了廣泛的應用,同時也促進了視窗計算機在自動化中的使用,所以COM技術也為(wei) OPC技術的廣泛使用創造了條件。在2002年初,微軟發布了新的.NET框架並且宣布COM技術的停止研發。雖然這不意味著將來的視窗操作係統不支持COM,但作為(wei) 停止的結果,傳(chuan) 統OPC的基礎技術已經不再發展,或早或晚要被淘汰,所以要尋求新的替換方案。
2. COM 的局限
上世紀90年代,隨著視窗計算機的普及,微軟COM/DCOM技術引入的一組特性,得到了家庭計算機用戶和工業(ye) 自動化用戶的高度欣賞。這些特性包括了拷貝與(yu) 粘貼,拖拽與(yu) 投放,鏈接與(yu) 嵌入。DCOM還提供了完整的通信基礎架構,並帶有必要的安全機製,諸如授權、鑒權和加密。DCOM安全機製能夠實現計算機對數據和程序的遠程訪問。但DCOM安全機製同時也對安裝工程師、係統集成商和開發者管理項目提出了挑戰,其中包括了跨越PC的OPC通信。正確地設置DCOM安全功能是非常困難的任務,需要很多專(zhuan) 業(ye) 的知識。作為(wei) 結果,安裝工程師和係統集成商會(hui) 例行公事地選擇快速流程,在所有連網的OPC計算機采取寬鬆的訪問授權,造成大多數保護不起作用且允許非授權遠程訪問。這種做法與(yu) 信息技術(IT)安全的要求相違背。在長期運行時,可能會(hui) 有粗心大意者或者蓄意破壞的人造成損害的危險。DCOM安全設置常常需要一種特別才能,而配置OPC通信功能則非常容易。
3. OPC 通信穿過防火牆
在自動化行業(ye) ,很早就認識到OPC通信需要跨越計算機邊界的必要性,這是另一個(ge) DCOM限製傳(chuan) 統OPC通信的地方。DCOM需要多個(ge) 端口,如鑒權、傳(chuan) 輸數據和一係列服務建立一個(ge) 連接。所以,在防火牆中不得不打開很多端口,才能讓DCOM通信穿過他。在防火牆上每打開一個(ge) 端口都是一個(ge) 安全隱患,為(wei) 黑客攻擊提供一種潛在可能。OPC UA中的隧道技術是一種被廣泛接受的策略,解決(jue) 了傳(chuan) 統OPC產(chan) 品中DCOM限製的問題。
4. 在非視窗平台使用OPC
在工業(ye) 應用中,幾乎“無所不在”的微軟平台,把DCOM 作為(wei) 操作係統的一個(ge) 組件是傳(chuan) 統OPC能被快速接受的一個(ge) 重要因素。但是同時,OPC的集成概念在使用其他操作係統時就不靈光了,因為(wei) 他們(men) 不支持DCOM。比如在IT行業(ye) ,常常使用Unix或者Linux係統就是這種情況。
自動化也是這樣,有的應用領域明確拒絕使用視窗操作係統。嵌入式設備領域是另一個(ge) 視窗很難(除了視窗CE或者嵌入XP)涉及的領域。這裏,複雜的應用直接嵌入到現場設備、PLC、操作屏和其他設備之中。他們(men) 運行VxWorks、QNX、嵌入式Linux、RTOS或者其他嵌入式操作係統而沒有DCOM。在這些領域裏使用OPC 的集成概念注定要失敗,因為(wei) OPC需要DCOM作為(wei) 技術基礎,而這個(ge) 基礎在嵌入式係統中正好缺失。
5.通過Web服務實現跨平台的OPC通信
隨著在2003年OPC XML-DA規範的發布,OPC基金會(hui) 第一次展示了一種獨立於(yu) 視窗平台的方式和克服DCOM限製的方法。今天,很多OPC XML-DA產(chan) 品演示了基於(yu) Web服務的OPC技術。但是XML-DA 通信的數據吞吐量還是比不上DCOM,通信速度要慢5到7倍。這個(ge) 速度對於(yu) 很多自動化的要求而言是太慢了。基於(yu) Web服務的OPC通信功能還是有用的,因為(wei) 實現了跨越操作係統的能力,但還要進一步提高數據傳(chuan) 輸性能。
6. 統一數據模型
迄今為(wei) 止,傳(chuan) 統的OPC技術已有3種不同的OPC服務器 – 數據訪問服務器、報警與(yu) 事件服務器和曆史數據訪問服務器。如果用戶需要獲取一個(ge) 溫度傳(chuan) 感器的當前值,一個(ge) 溫度超過限定值的事件和一個(ge) 溫度的曆史平均值,那麽(me) 他必須發送3個(ge) 請求,訪問3個(ge) 服務器。用戶訪問過程數據、事件和曆史數據用不同的方法要花費很多的時間。所以,統一這3種對象模型可以使這樣的事情變得非常簡單,不僅(jin) 對OPC產(chan) 品的供應商有利,也對係統集成商和用戶有利。
7. 支持複雜數據結構
OPC的一個(ge) 主要應用是對串行通信或者現場總線聯網設備的操作和監視。為(wei) 了配置設備,OPC客戶機需要寫(xie) 入數據類型,通過OPC服務器到達設備,包括數據結構元件的意義(yi) 。OPC基金會(hui) 已經創建了描述複雜數據結構的方法,即複雜數據規範。然而,大多數今天市場上的傳(chuan) 統OPC產(chan) 品除了很少的例外,不能使用複雜數據規範。
8. 保證通信不丟(diu) 失數據
最早定義(yi) 的數據訪問,可以讓客戶應用程序周期獲得過程數據的當前狀態。如果在OPC客戶機和遠程OPC服務器之間的物理通信連接發生了問題,數據通信會(hui) 受到損壞。當通信損壞時,傳(chuan) 輸到OPC客戶機數據會(hui) 發生改變,甚至丟(diu) 失。這種數據丟(diu) 失在有些數據訪問應用中不是關(guan) 鍵的,諸如趨勢記錄、過程監視或者過程顯示。但在有些場合的應用中是非常關(guan) 鍵的。比如,OPC技術已經成為(wei) 這些區域的基礎,諸如化工或者石化工業(ye) ,這些地方要求必須無縫地記錄數據。為(wei) 了達到這個(ge) 目標,供應商需要實施特殊擴展的方法。他們(men) 使用基於(yu) 連接的監視係統,確保對斷開的通信快速檢測,如果通信斷開能夠自動重新連接,在數據訪問服務器中有數據緩存、冗餘(yu) 、存儲(chu) 和轉發功能。這些擴展的方法很有用,但在傳(chuan) 統的OPC規範中沒有定義(yi) ,會(hui) 因供應商不同而不同。
9. 對非授權數據訪問而增加的保護
隨著自動化行業(ye) 基於(yu) 以太網的通信不斷增長,自動化和辦公室網絡已經糾纏在一起。同時,垂直集成的想法產(chan) 生了新的需求,這種類型的集成也帶來了新的安全風險。OPC也增加了遠程維護和遠程控製概念的使用。這裏再一次提到,對外圍非授權的訪問,必須滿足更嚴(yan) 格的信息安全要求。隨著網絡犯罪、間諜和破壞活動的增長,信息技術安全越來越顯得重要 – 所以使用OPC也有了安全的要求。傳(chuan) 統的OPC供應商沒有開發專(zhuan) 有的預防措施,所以不能滿足這些安全要求。
10. 支持新的命令調用
在很多應用中,不僅(jin) 讀寫(xie) 數值非常重要,而且執行命令也非常重要,諸如啟動或者停止一台驅動器或者把一個(ge) 文件下載到設備中。OPC命令規範定義(yi) 了執行這些命令的方法,但這僅(jin) 在OPC UA中有效,不能在傳(chuan) 統的OPC中使用。