趙健
(上汽通用汽車有限公司,上海 201206)
隨著數字化工廠推進,建立工藝數模和PLC程序之間的互動成為一種需求,通過PLC本身自帶的或是第三方的OPC應用,建立PLC和工藝數模間的通訊,從而實現PLC和工藝數模的互動。一方面可以提前驗證工藝數模的準確性、可達性、有效性等,另一方面可以對PLC程序進行提前驗證,包括邏輯、報警等,從而確保在現場調試的PLC程序正確率達標,可以減少現場調試時間,提升項目質量,降低項目成本。
OPC為硬件制造商與軟件開發商提供了一座橋梁,透過硬件廠商提供的OPC Server接口,建立軟件和硬件之間的通信。OPC Server提供了許多接口,通過這些接口,可以取得與OPC Server相連的硬件裝置的信息,而無須了解這些硬件裝置的細節信息,就可以實現信號互動。
PLC虛擬調試就是通過這種技術,建立PLC和工藝數模的通信,從而實現PLC程序提前調試的目的。目前市場上支持這方面的工藝制造應用不是很多,其中西門子的Tecnomatix是非常著名的制造應用軟件,旗下的Process Designer和Process Simulation是2個非常重要的應用軟件。另外由于開放式體系架構,使得它和第三方產品的兼容性非常強。
Siemens PLC和Process Simulation間的通訊簡潔方便,調試后的PLC程序完善度也最高,應用較為廣泛,有許多應用案例可參考,這里不多重復介紹。這里以Rockwell PLC和Process Simulation間的通訊應用來說明虛擬調試的具體應用方法,其基本原理是一樣的。
RsLogix 5000—Rockwell 編程軟件,調試用20.03版本。
RSLinx Classic Gateway—3.60版本以上。
PS—Process Simulation工藝仿真軟件,13版本以上。
Rockwell PLC—1臺。
PC工作站,配置要高—1臺。
其他硬件選配,列如HMI、安全光柵、按鈕、指示燈等。

圖1
其中,PD/PS軟件和RSLinx Gateway都安裝在PC工作站上,RsLogix 5000的軟件建議用另外的編程電腦安裝,這樣調試比較方便,PLC和PC工作站之間用以太網進行連接,因連接的設備較多,還需要1臺交換機。
在調試開始之前,我們需要先有對應的數模,這個數模是通常是由工藝工程師負責的,在數模完成后,若需要進行虛擬調試,還要在Process Simulation中進行配置。因為要和PLC進行通訊,就需要在數模中添加信號,這些添加的信號就相當于現場的傳感器、閥島等,到時這些信號需要和PLC的進行互動的;對PLC而言,這些就是現場設備的輸入輸出信號,PLC根據這些信號狀態進行邏輯處理,執行相關的動作。下面的示意圖,見圖2,就是針對一組夾頭需要加載的信號。其中MOVE_OPEN對應于PLC的輸出—打開夾頭,MOVE_CLOSE對應于PLC的輸出—關閉夾頭,AT_OPEN對應于PLC的輸入—夾頭已打開,AT_CLOSE對應于PLC的輸入—夾頭已關閉。除了這些,還需要添加邏輯關系,用于處理夾頭的動作順序。

圖2
為了和PLC進行通訊,還需要建立一張輸入輸出信號的對應表,將數模中加載的信號和PLC的信號對應起來,見圖3,導入到PS中,這樣才可以建立和PLC的通訊。

圖3
首先,PC工作站、PLC、編程電腦包括HMI等都需要連接到交換機,并在同一個IP地址段內,這樣相互之間能夠直接通訊,例如192.168.1.XX,子網掩碼等無需配置。另外,對于安裝PD/PS的工作站要求雙網卡,一個用于和PLC之間的通信,另外一個用于和PD/PS軟件之間的通信(常規的PD/PS是網絡版的,需要連接到服務器獲取;當然,本地安裝版不需要雙網卡)。
首先是在編程電腦端進行配置,打開RsLinx,選擇通訊方式,按照硬件配置的方式進行選擇,可以訪問到PLC的硬件組態,見圖4。

圖4
然后在安裝有PD/PS及RSLinx Classic Gateway端的PC工作站上進行相關操作,打開OPC進行配置,見圖5,按步進行操作,一直到最后建立通信成功,見圖6。

圖5

圖6
出現這個“Good”,說明你的PLC和PS已經建立了通信,通過上述方式,所需的信號點都可以和PS的信號建立通訊。
通過上面的方式建立了PLC和數模之間的通訊,說明兩者之間的信號可以互相傳遞了,也就是搭建溝通的橋梁。若上面通訊無法建立,請檢查有哪些沒有準備好,或者是遺漏了什么,只有建立了兩者之間的通訊,后面的工作才可以展開。按照上面的步驟,把所有需要的信號都建立對應關系。
I/O校驗是指將數模中的信號和PLC的信號一一對應起來,類似于現場的I/O校驗一樣。這個比較簡單,主要有2種方式:一種檢查數模處在哪個位置,確定對應的PLC信號是否為on;還有一個是從PLC那端開始校驗,PLC給出一個動作信號,數模就應該有對應的動作,然后檢查相關的信號是否一致。
將事先編寫好的離線PLC程序導入到PLC中,開始和數模互動聯調。因受條件限制,虛擬調試的環境不可能會和現場配置那么齊全,虛擬調試環境一般不含I/O總線模塊、安全裝置和按鈕指示燈等。所以,虛擬調試中的程序和現場程序是有一些區別的。我們在程序調試的時候要做一些調整,一般是添加一些跳轉信號或者是短接、屏蔽信號,以滿足虛擬調試程序需求。這次我們做的是和Rockwell PLC通訊,需要做許多假設、屏蔽工作,但若是西門子PLC進行通訊,會方便很多,因為西門子有專門的仿真模塊,名稱是SIMIT UNIT,可以模擬大部分現場的設備,包括ET200s等,確保虛擬調試邏輯和現場實際應用邏輯基本一致,可以使虛擬調試程序和實際現場程序非常接近,減少許多工作量。
上文提到有些元器件是虛擬調試環境沒有的,那么有些信號無法直接獲取,需要在程序中加短接或開路信號。一般不建議在原程序上進行直接改動,如刪除變量或加短接、旁路支路,這樣會導致在現場調試時需要用大量的時間進行程序的恢復工作,并且很容易疏忽或遺漏,增加調試時間。
建議在程序中建立相應的變量組,對應常開或常閉的信號,并按功能進行分類。在程序需要短接的地方引入常閉的旁路信號,在程序需要常開的地方插入對應的常開變量,而不是直接短接或旁路。這樣程序可以做到快速切換,從虛擬調試程序切換到現場程序,也可以快速切換回來。這樣避免虛擬調試與現場調試切換時大量的程序修改工作,也避免了切換時錯誤的產生。
若虛擬調試順利,并且在加載短接或旁路信號時采用了相應變量的話,現場調試還是比較方便的。先將PLC程序切換到現場程序模式,然后導入到現場PLC中,按步驟進行調試,調試過程中逐步把原先加載的變量組刪除,因為當初是特定的變量,刪除變量非常方便也不容易犯錯。因為已經有了虛擬調試,很多邏輯或程序塊都得到了提前驗證,現場調試可以節省很多時間,越是復雜的項目節省的時間越多。
PLC編程虛擬調試是大數據時代的產物,也是工業自動化發展的必然結果。利用虛擬調試技術,可以將整條生產線的機械、電氣、機器人整合在一起進行仿真模擬,可以提高企業對生產系統整條運轉時可能發生問題的認知度,從而在未投入正式制造之前對系統進行驗證和優化,以提升效率,降低項目成本。