魏雄冬
(廣東省機械技師學院,廣州,510450)
隨著工業(yè)4.0 的不斷發(fā)展,智能工廠的不斷普及,車間設備的智能設備越來越多。各設備之間的通信協(xié)議層出不窮,給用戶帶來了極大的困擾,沒有統(tǒng)一的通信協(xié)議,也給系統(tǒng)的開發(fā)帶來了很大難度。在工業(yè)4.0 萬物互聯(lián)的時代,各軟件之間能使用相同通信協(xié)議進行通信,顯得尤為重要。OPC UA(OLE For Process Control Unified Architecture)過程控制統(tǒng)一對象模型技術(shù)明確了目標是成為實現(xiàn)工業(yè)領(lǐng)域的互用性(互操作性)的國際標準,可以很好地解決上述問題。因OPC UA 采用互聯(lián)網(wǎng)標準使用的安全技術(shù),滿足了完整性、機密性、可用性等三大安全需求,能夠安全地進行連接、數(shù)據(jù)傳輸,故成為工業(yè)4.0 研究院推薦的標準通信協(xié)議。
KUKA.Sim Pro 軟件與西門子PLC 之間的通信可通過3 種方式進行:第一種是采用虛擬PLC,但須結(jié)合S7-PLCSIM Advanced 仿真軟件,該軟件會給PLC 構(gòu)建一個虛擬網(wǎng)卡,通過該虛擬網(wǎng)卡支持TCP / IP 通信;第二種是直接跟物理PLC 進行通信,因為物理PLC 本身自帶網(wǎng)卡,所以無需構(gòu)建;第三種是采用虛擬PLC 和S7-PLCSIM 仿真軟件,如果只有這兩者,PLC 只能實現(xiàn)仿真功能,無法實現(xiàn)TCP / IP 通信功能(但PLCSIM Advanced 軟件支持),所以還需結(jié)合一個第三方網(wǎng)絡搭建軟件NetToPLCSim,僅當使用PLCSIM 模擬PLC 時,才需要此部分。因此使用S7 連接插件創(chuàng)建直接連接不適用于PLCSIM??梢允褂妹赓M工具NetToPLCSim 作為S7 通信與PLCSIM 的西門子軟總線接口之間的橋梁。NetToPLCSim 是免費軟件,可以從這里下載:http://NetToPLCSim.sourceforge.net/。該下載隨軟件附有完整用戶手冊,如果在使用軟件時遇到任何問題,可以參考該手冊。
本次仿真實驗使用TIA Portal V16(西門子公司推出的全集成自動化編程軟件)和S7-PLCSIM Advanced V3.0模擬的虛擬S7-1500 系列PLC 完成。類似的過程也適用于其他S7 系列PLC,例如300、400 和1200,這些PLC是物理的或通過PLCSIM 或PLCSIM Advanced 模擬的。需要注意的是,使用S7 插件時,PLC 不需要任何OPC 功能即可連接到KUKA.Sim Pro。
西門子PLC 的OPC UA 功能是后期開發(fā)的,以前的PLC 不具備該通信功能,S7-1200PLC 只有在固件版本V4.4 以上才能集成OPC UA 通信仿真功能,對于V4.4以下的版本都不能使用該通信仿真。S7-1500PLC 集成了OPC UA 通信功能,但要實現(xiàn)仿真,需要搭配虛擬網(wǎng)卡。采用西門子PLC 的仿真軟件S7-PLCSIM Advanced 搭建虛擬網(wǎng)卡,只能使用S7-1500PLC 和ET 200,不支持搭建S7-1200PLC,故本文僅以S7-1500PLC 為例配置OPC UA 通信。
首先創(chuàng)建PLC 的通信程序,打開“TIA Portal V16”,創(chuàng)建新項目,給項目命名為“KUKA.Sim Pro 與西門子1500PLC 之間的通信程序”,選擇好路徑,點擊“創(chuàng)建”;接著選擇“設備與網(wǎng)絡”,點擊“添加新設備”,選擇“控制器”,選擇PLC 型號為:CPU 1511-1-PN,訂貨號為:6ES7 511-1AK01-0AB0,版本號選擇V2.5;然后在項目視圖中選擇項目,右鍵彈出菜單中選擇“屬性”,在項目屬性中選擇“保護”選項卡,必須確保啟用了“塊編譯時支持仿真”設置,在PLC 的屬性面板中,在PROFINET 接口設置中找到“以太網(wǎng)地址”;使用模擬PLC 時,通常最好將IP 地址設置為私有IP 地址,例如192.168.0.1;最后在PLC 屬性中找到“OPC UA”,選擇“服務器”,將“激活OPC UA 服務器”勾選上,下面的端口設置成4840,具體如圖1 所示。
最后找到“運行系統(tǒng)許可證”,選擇“OPC UA”,選擇“SIMATIC OPC UA S7-1500 small”許可證類型,確定即可。給PLC 創(chuàng)建兩個IO 變量,根據(jù)控制要求編寫PLC 控制程序,PLC 仿真程序如圖2 所示。
若要讓PLC 實現(xiàn)仿真通信,必須建立虛擬網(wǎng)卡,本文選擇西門子仿真虛擬網(wǎng)卡。具體操作過程是:在虛擬網(wǎng)卡屬性面板下將“Siemens PLCSIM Virtual Switch”前面的框勾選上,PLC 和虛擬網(wǎng)卡必須處于同一網(wǎng)段,首先設置虛擬網(wǎng)卡IP 地址,選擇TCP/IPv4,打開屬性面板,手動輸入IP 地址和子網(wǎng)掩碼,該地址不能是PLC 屬性中設置的IP 地址,但是應與該設置的IP 地址處于同一網(wǎng)段。
S7-PLCSIM Advanced V3.0 軟件必須以管理員身份運行,否則可能無法實現(xiàn)通信。打開該軟件,選擇PLCSIM虛擬網(wǎng)卡適配器,PLC 類型選擇1500PLC,輸入即將創(chuàng)建的網(wǎng)卡名稱、IP 地址和子網(wǎng)掩碼,然后點擊“Start”按鈕,如圖3 所示。需要注意的是,網(wǎng)卡名稱無需跟PLC 名稱一致,但IP 地址必須跟PLC 組態(tài)的IP 地址一致。當下面出來網(wǎng)卡名稱和IP 地址,且顯示黃燈,說明創(chuàng)建成功,但是PLC 還沒運行。虛擬網(wǎng)卡創(chuàng)建完以后,可將PLC 程序下載到仿真器中,接著PG/PC 端口選擇“Siemens PLCSIM Virtual Ethernet Adapter”虛擬網(wǎng)卡,選擇“顯示地址相同的設備”,點擊“開始搜索”,可以看到創(chuàng)建的1500PLC,點擊“下載”即可完成PLC 項目的下載。最后回到主程序,啟用監(jiān)視,可以讓程序處于在線狀態(tài),PLC 端的通信配置完成。
配置完P(guān)LC 后即可配置KUKA.Sim Pro 的OPC UA,打開“庫卡機器人碼垛應用”項目(本文研究例案),在連通性視圖下,選擇“OPC UA”,然后點擊“添加服務器”菜單,具體如圖4 所示。在編輯連接面板屬性中,按服務器格式填好與PLC 一致的服務器地址,即:opc.tcp://192.168.0.1:4840,如圖5 所示,輸入完點擊“應用”,KUKA.Sim Pro 仿真軟件端通信配置完成。在服務器的編輯連接面板屬性中,點擊“測試連接”,彈出連接成功對話框,說明通信配置成功。
OPC UA通信旨在實現(xiàn)工業(yè)“萬物互聯(lián)”,讓各軟件間、跨平臺間的數(shù)據(jù)通信變得簡單,變得有可能。該通信沒有專門針對的數(shù)據(jù)類型,只要平臺間使用了相同的通信方式,能互相訪問到,都是可以進行通信的。本次OPC UA 通信測試以布爾信號為例,若能實現(xiàn)布爾信號的交互,其他數(shù)據(jù)類型的通信操作一樣。
具體操作過程為:建立KUKA.Sim Pro 仿真軟件服務器地址后,用鼠標左鍵點擊服務器右邊的“連接/端口連接” 按鈕,若連接服務器成功,服務器屬性面板的已連接狀態(tài)會顯示“True”,服務器后面的指示按鈕也會變成綠色。這里要配置兩個信號,一個是傳送帶“BatchReadySignal”信號將傳給PLC 的輸入,另一個是PLC 的輸出信號傳給機器人輸入口101。
配置KUKA.Sim Pro 傳給PLC 的信號,選擇“模擬至服務器”,點擊“添加變量”。
在創(chuàng)建變量對面板中,將“信號”框勾選上,該面板中左邊是KUKA.Sim Pro 信號,右邊是PLC 變量,左邊選中傳送帶“BatchReadySignal”信號,右邊選中PLC 變量“ConveyorSensor”,點擊“選中對”進行配對,如圖6 所示。
配置PLC的輸出信號傳給機器人輸入口101,選擇“服務器至模擬”,點擊“添加變量”。在創(chuàng)建變量對面板中,將“信號映射”、“自由度”框勾選上,左邊選中機器人,展開“Inputs”,左邊選中“101”信號,右邊選中PLC的輸出信號“RobotRun”,點擊“顯示變量”??梢钥吹絼?chuàng)建好的變量目前的狀態(tài)值,如圖7 所示。
數(shù)據(jù)測試需進行仿真操作,PLC 先運行,再運行KUKA.Sim Pro 仿真軟件。在操作前,需保證KUKA.Sim Pro 軟件與服務器已連接,點擊播放,運行機器人仿真程序,當仿真軟件中的易拉罐移動到傳動帶傳感器位置時,在已連接變量面板中,可看到傳送帶“BatchReadySignal”信號變成了“TRUE”,PLC 信號“ConveyorSensor”也變成了“TRUE”,如圖8 所示。查看TIA 監(jiān)控程序可知,I0.0 觸點已經(jīng)接通,定時器開始定時,5s 后,Q0.0 得電,如圖9 所示。1500PLC 的Q0.0 輸出信號傳給機器人101輸入,101 變?yōu)椤癟RUE”,機器人開始搬運易拉罐。
本文結(jié)合KUKA.Sim Pro 仿真軟件,將KUKA.Sim Pro仿真軟件和主流PLC 通過OPC UA 開放協(xié)議進行通信,實現(xiàn)了機器人仿真軟件、PLC 設備之間數(shù)據(jù)通信的統(tǒng)一操作,使得仿真軟件應用更加靈活與多樣性,這不僅可以用于仿真,也能應用于實際項目中。