康國坡,張冰潔,吳立華,畢 輝,黃佳祿
(1.廣東理工職業(yè)學(xué)院,廣州 510091;2.巨輪(廣州)智能裝備有限公司,廣州 510700)
隨著傳統(tǒng)工廠向智能化工廠的轉(zhuǎn)變,作為智能制造重要組成的工業(yè)機器人工作站越來越受到重視。智能化產(chǎn)線一般由工業(yè)機器人工作站或者由多個工作站組成,工藝復(fù)雜、設(shè)備投入大、現(xiàn)場調(diào)試難度大,為了解決現(xiàn)場調(diào)試難度大的問題,虛擬仿真調(diào)試技術(shù)已經(jīng)逐漸應(yīng)用在工業(yè)機器人工作站和智能化生產(chǎn)線的調(diào)試上。
目前很多學(xué)者針對工作站(線)的虛擬仿真調(diào)試做了大量的研究工作。孫立新等[1]利用RobotStudio構(gòu)建了工業(yè)機器人分揀工作站,創(chuàng)建了工業(yè)機器人I/O 信號和連接方式,通過時間管理器仿真氣缸的不同姿態(tài)動作,設(shè)定了機器人和手爪氣缸之間的工作站邏輯關(guān)系,用Smart組件模擬PLC 完成了機器人工作站的離線編程和仿真。趙錫恒[2]、李慧[3]和文志浩等[4]基于RobotStudio進行工業(yè)機器人裝配工作站或打磨工作站的仿真應(yīng)用,著重運用Smart 組件合理解決軟件及其仿真機制衍生的問題;高茂源等[5]利用RobotStudio 和SolidWorks 搭建了機器人上下料智能工作站,通過仿真運行工作站、分析優(yōu)化了機器人的作業(yè)性能,從而實現(xiàn)了數(shù)控機床自動上下料的仿真與優(yōu)化。吳雁等[6]通過需求分析、功能分解仿真序列設(shè)定,利用MCD平臺完成了自動上下料機械手的虛擬仿真的工作,其亮點在于MCD平臺的多系統(tǒng)的集成、概念建模及模擬仿真、知識的重用等優(yōu)勢,打破了現(xiàn)有的機電一體化產(chǎn)品概念設(shè)計的模式;鄭魁敬等[7]、王俊杰等[8]和蔡文站等[9]在MCD中建立被控對象的虛擬模型,采用OPC技術(shù)實現(xiàn)MCD與外部PLC的信號交互,建立了虛擬調(diào)試平臺。
上述虛擬仿真的研究基本采用了用工業(yè)機器人控制工作站所有設(shè)備的方式或者PLC 控制虛擬設(shè)備,而實際上由于工業(yè)機器人I/O 端口數(shù)量的限制,大多采用PLC進行工業(yè)機器人工作站其他設(shè)備的控制,工業(yè)機器人一般只直接控制其末端設(shè)備,存在仿真與實際設(shè)備不符的問題。本文通過仿真軟件OCTOPUZ 搭建指尖陀螺生產(chǎn)線中的工業(yè)機器人裝配工作站動態(tài)仿真模型來探討此類仿真的一般方法。仿真工作站由外部PLC 進行控制,真實模擬現(xiàn)場設(shè)備,對真實的生產(chǎn)做出預(yù)判并指導(dǎo)現(xiàn)場調(diào)試,以提高設(shè)備調(diào)試效率。
OCTOPUZ[10-11]是一款用于制作數(shù)字化工廠與工業(yè)機器人編程仿真軟件解決方案的軟件。它可將工業(yè)機器人、電氣及周邊設(shè)備進行三維虛擬仿真,根據(jù)用戶需求快速的建立智能生產(chǎn)線的仿真模擬并進行工程規(guī)劃、工程驗證、工藝分析、邏輯驗證等工作,整合物流、人機工程及物理仿真模擬功能,幫助企業(yè)在研發(fā)前期進行調(diào)試分析、產(chǎn)能確認等,提升行業(yè)競爭力。
指尖陀螺生產(chǎn)線采用軟件模型庫中的工業(yè)機器人和數(shù)控機床、數(shù)控銑床,其他模型(倍速鏈、壓裝裝置等)先在三維軟件SolidWorks 中創(chuàng)建模型,再導(dǎo)入到OCTOPUZ后進行屬性設(shè)置,利用PnP功能將各個模型進行布置,完成指尖陀螺生產(chǎn)線模型的布置,如圖1 所示;其中的工業(yè)機器人裝配工作站的模型和結(jié)構(gòu)如圖2—3 所示,主要包含工業(yè)機器人、壓裝裝置、倍速鏈機器控制器、成品料盤以及各種虛擬傳感器;裝配工作站的任務(wù)是將指尖陀螺的端蓋和本體由工業(yè)機器人運至壓裝裝置,壓裝成指尖陀螺后,再由工業(yè)機器人搬運至成品料盤,整個過程由PLC進行控制。
圖1 指尖陀螺生產(chǎn)線模型
圖2 工業(yè)機器人裝配工作站仿真模型
圖3 工業(yè)機器人裝配工作站總體結(jié)構(gòu)
工作站中PLC是核心,是整個系統(tǒng)的控制中心。料盤、工業(yè)機器人、壓裝裝置等設(shè)備的工作狀態(tài)都會發(fā)給PLC。PLC可以實時監(jiān)控工作站中各部件的位置、狀態(tài)等信息,并根據(jù)設(shè)備當(dāng)前的狀態(tài)信息和預(yù)設(shè)的控制邏輯下達控制指令,實現(xiàn)工作站各設(shè)備的協(xié)同工作。仿真系統(tǒng)啟動后,PLC檢測工業(yè)機器人的狀態(tài),合格后發(fā)出啟動信號,仿真工業(yè)機器人接到搬運信號后,按照順序把在托盤上的端蓋和本體運到壓裝裝置的指定的裝配位置,指尖陀螺完成壓裝后,工業(yè)機器人將組裝好的指尖陀螺運至成品料盤。本例中采用西門子PLC S7 - 1200(1212C),博圖TIA V16。仿真工作站的工作流程如圖4所示。
根據(jù)工作任務(wù)和工作流程要求,編寫PLC控制程序和OCTOPUZ中機器人裝配工作站的仿真程序。
2.2.1 PLC程序編寫依據(jù)圖4 的工作站工作流程及其控制要求編寫PLC控制程序,控制程序主要包含幾個功能模塊:機器人上下料檢測控制模塊、壓裝控制模塊、托盤輸送及舉升模塊等。程序編寫完成后,先進行編譯下載到PLC,單獨測試無誤后再進行下一步的聯(lián)合測試。
圖4 工業(yè)機器人裝配工作站的簡易工作流程圖
2.2.2 OCTOPUZ仿真工業(yè)機器人程序編寫
根據(jù)工作站工作流程對工業(yè)機器人布置詳細的工作任務(wù),然后據(jù)此編寫工業(yè)機器人程序。啟動時,工業(yè)機器人處于工作原點,接收到PLC 的搬運信號后,將托盤上的前端蓋、旋轉(zhuǎn)翼、后端蓋依次搬運到壓裝工位,退出到安全位置后,發(fā)送要求壓裝信號給PLC;收到機器人可取料的信號后,工業(yè)機器人將裝配后的指尖陀螺放到成品倉之后返回工作原點,等待下次的搬運命令。
為了實現(xiàn)上述功能,在具備PLC 和工業(yè)機器人各自的程序前提下,還需要解決PLC和仿真軟件OCTOPUZ之間的通信。本文采用OPC(OLE for process control)協(xié)議。OPC 協(xié)議是自動化行業(yè)及其他行業(yè)用于數(shù)據(jù)安全交換時的安全標(biāo)準(zhǔn),可以獨立于平臺并確保多個廠商設(shè)備之間信息的無縫傳輸,解決了數(shù)據(jù)源控制系統(tǒng)和數(shù)據(jù)源之間的數(shù)據(jù)交互問題[11-13]。西門子S7-1200 PLC(固件版本V4.0 以上)支持OPC 服務(wù)器功能,通過設(shè)置其內(nèi)部的OPC UA 通信,可實現(xiàn)以O(shè)PC 技術(shù)為通信橋梁的數(shù)據(jù)通信[14-15],而OCTOPUZ 也提供了OPC 附加功能插件,支持讀寫OPC 數(shù)據(jù)。因此,將PLC 作為OPC服務(wù)器,OCTOPUZ 作為OPC 客戶端,無須開發(fā)特定程序,即可實現(xiàn)PLC與OCTOPUZ的數(shù)據(jù)交換,如圖5所示。
圖5 基于OPC 技術(shù)的PLC與OCTOPUZ數(shù)據(jù)交換
2.3.1 在PLC中創(chuàng)建OPC服務(wù)器
首先在博圖軟件的設(shè)備組態(tài)中激活OPC UA服務(wù)器,然后在OPC UA欄中創(chuàng)建OPC服務(wù)器(命名為SIEMENSPLC),最后在服務(wù)器接口中添加所有需要與OCTOPUZ交互的變量,完成PLC中OPC服務(wù)器的創(chuàng)建,如圖6所示。
圖6 PLC中OPC服務(wù)器的創(chuàng)建(截取部分變量)
2.3.2 在OCTOPUZ中創(chuàng)建OPC客戶端
首先在軟件選項中激活“連通性”插件,然后在“連通性”下的OPC UA中開啟服務(wù)器。其中模擬至服務(wù)器是指信號從OCTOPUZ傳送到PLC,而服務(wù)器至模擬則是指OCTOPUZ接收PLC發(fā)送的信號。
應(yīng)用OCTOPUZ OPC 模擬服務(wù)器中的信號映射命令(選中對),可將OCTOPUZ 工業(yè)機器人工作站的輸出信號與OPC服務(wù)器傳遞的PLC輸入信號建立映射關(guān)系,如將OCTOPUZ 工業(yè)機器人工作站中的壓裝工位檢測的傳感器信號與PLC中壓裝工位檢測的輸入信號進行信號映射命令(選中對),配對完成后,虛擬結(jié)構(gòu)下變量旁邊會出現(xiàn)已經(jīng)配對的符號,如圖7(a)所示;同樣可將OCTOPUZ工業(yè)機器人工作站的輸入信號與OPC 服務(wù)器傳遞的PLC輸出信號建立映射關(guān)系,這樣OCTOPUZ 中的工業(yè)機器人工作站的輸入輸出信號就與PLC 的輸入輸出建立了連接,實現(xiàn)了信息的實時交互,如圖7(b)所示。
圖7 OCTOPUZ中OPC客戶端的創(chuàng)建(截取部分變量)
在電腦端將編輯調(diào)試好的PLC程序下載到PLC硬件并啟動,同時開啟OCTOPUZ的工作站仿真。系統(tǒng)仿真啟動后,PLC首先檢測工業(yè)機器人是否在工作原點,如果在工作原點狀態(tài)則發(fā)出倍速鏈電機正轉(zhuǎn)信號,PLC 檢測到托盤及上端蓋、旋轉(zhuǎn)翼、下端蓋3 個工位都有物料的虛擬傳感器信號后,給仿真軟件的工業(yè)機器人發(fā)出機器人啟動信號,工業(yè)機器人在接到啟動信號后執(zhí)行搬運程序,如圖8(a)所示,將上端蓋、旋轉(zhuǎn)翼、下端蓋都運到壓裝工位,在退出到安全位置后,給PLC 發(fā)送請求壓裝的信號。
PLC接到工業(yè)機器人請求壓裝的信息后,給壓裝裝置發(fā)出壓裝開始信號,如圖8(b)所示,在PLC接收到壓裝氣缸上升到位的虛擬傳感器信號后,給工業(yè)機器人發(fā)出指尖陀螺壓裝完成的信號,工業(yè)機器人接收到信號后,執(zhí)行把指尖陀螺搬運至成品料倉的程序,如圖8(c)所示。此時一個指尖陀螺裝配的工作過程仿真結(jié)束,下一個工作周期開始,直至仿真停止。
圖8 指尖陀螺仿真裝配過程
工業(yè)機器人仿真工作站借助OPC進行PLC與仿真軟件的數(shù)據(jù)交互,實現(xiàn)了工業(yè)機器人程序和PLC 程序在OCTOPUZ中的聯(lián)合虛擬調(diào)試,工作站各單元運行正常,驗證了基于OCTOPUZ 的工業(yè)機器人工作站虛擬調(diào)試方案的有效性以及工業(yè)機器人程序和PLC 程序的正確性。實踐中,在設(shè)備搭建前進行仿真調(diào)試能提前發(fā)現(xiàn)并解決程序問題,提高工作站設(shè)計編程和調(diào)試的效率。
本文基于仿真軟件OCTOPUZ 的工業(yè)機器人裝配工作站虛擬仿真調(diào)試方法,通過OPC 實現(xiàn)了西門子PLC 控制信號和仿真軟件中的工作站信號的信號交互,實現(xiàn)了在PLC集成控制下的機器人裝配工作站工作仿真。仿真過程中,這種基于OPC 技術(shù)的OCTOPUZ 的工業(yè)機器人裝配工作站的虛擬調(diào)試,能夠提前發(fā)現(xiàn)裝配過程中的工業(yè)機器人控制程序、PLC 控制程序和其他機電零部件設(shè)計的問題,在虛擬調(diào)試階段即解決問題從而節(jié)約實際設(shè)備調(diào)試的成本,提高工程調(diào)試效率和安全性。對于PLC控制的工業(yè)機器人自動化生產(chǎn)線來說,其設(shè)備更為復(fù)雜,控制難度更大,這種仿真調(diào)試方法可以更快更安全的驗證自動化生產(chǎn)線的零部件設(shè)計、PLC 控制程序、機器人控制程序等的正確性。