劉明
RoboGuide與西門子虛擬PLC的通信研究
劉明
(上汽通用汽車有限公司 整車制造工程部,上海 201206)
文章闡述了一種利用OPC技術(shù),使RoboGuide和西門子虛擬PLC軟件PLCsim可以通信的一種方法,使得在RoboGuide中進(jìn)行機(jī)器人離線編程時(shí),可以跟外部PLC進(jìn)行信號(hào)交互(如:干涉區(qū)信號(hào)的判斷)。實(shí)現(xiàn)了機(jī)器人離線編程的虛擬仿真,提高了離線編程的完成度。
OPC;RoboGuide;PLCsim;機(jī)器人;離線編程;虛擬仿真
隨著中國(guó)制造2025概念的提出,制造業(yè)面臨從傳統(tǒng)的工業(yè)制造向智能制造發(fā)展的產(chǎn)業(yè)升級(jí)。工業(yè)機(jī)器人作為實(shí)現(xiàn)智能制造目標(biāo)的關(guān)鍵技術(shù)之一,已經(jīng)在各個(gè)行業(yè)得到了廣泛應(yīng)用。同時(shí),各家機(jī)器人制造商也都為自己的工業(yè)機(jī)器人開發(fā)了配套的離線編程仿真軟件。例如,日本FANUC公司開發(fā)的RoboGuide軟件,可以實(shí)現(xiàn)對(duì)FANUC機(jī)器人的離線編程、虛擬仿真等功能。為工業(yè)機(jī)器人實(shí)現(xiàn)智能制造提供了軟件基礎(chǔ)[1]。
通常,車間現(xiàn)場(chǎng)的機(jī)器人站內(nèi),如果多臺(tái)機(jī)器人之間存在著碰撞干涉區(qū)(機(jī)器人之間會(huì)發(fā)生碰撞、干涉的區(qū)域),現(xiàn)場(chǎng)是依靠PLC跟機(jī)器人通信來實(shí)現(xiàn)干涉區(qū)的管理。但是,如果在RoboGuide中做機(jī)器人的離線編程時(shí),RoboGuide軟件無法直接跟PLC通信,需要借助第三方的OPC服務(wù)器軟件間接實(shí)現(xiàn)跟PLC的信號(hào)交互。
本文通過OPC技術(shù),不僅實(shí)現(xiàn)了RoboGuide和PLC通信的功能,更進(jìn)一步實(shí)現(xiàn)了其和虛擬PLCsim軟件在同一臺(tái)電腦上的信號(hào)交互。實(shí)現(xiàn)了FANUC機(jī)器人在離線仿真時(shí),機(jī)器人程序自動(dòng)跟PLC程序的通信,提升了機(jī)器人離線編程的完成度。
OPC是Open Plat Communication的簡(jiǎn)稱,即開放平臺(tái)通信。其本質(zhì)是在硬件供應(yīng)商和軟件開發(fā)商之間建立一套完整的“規(guī)則”。只要雙方都遵守這套“規(guī)則”,就可以通過OPC服務(wù)器軟件進(jìn)行通信[2]。
本文使用的第三方OPC服務(wù)器軟件是KEPServerEx。
RoboGuide軟件是日本FANUC機(jī)器人公司針對(duì)自家的FANUC機(jī)器人開發(fā)的一套機(jī)器人離線編程軟件??梢栽赑C端實(shí)現(xiàn)機(jī)器人的可視化離線編程和仿真運(yùn)行。使的機(jī)器人的編程和仿真不再依賴于工位現(xiàn)場(chǎng),大幅提高了機(jī)器人編程效率[3]。
S7-PLCsim軟件是西門子公司出品的,針對(duì)西門子PLC的仿真軟件。用戶只需設(shè)計(jì)好PLC程序,無需PLC硬件支持就可以直接使用PLCsim仿真軟件來驗(yàn)證PLC程序[4]。
通過NetToPLCsim軟件,可以實(shí)現(xiàn)讓PLCsim軟件按照TCP/IP協(xié)議,通過以太網(wǎng)口進(jìn)行數(shù)據(jù)傳輸。即,把虛擬PLCsim軟件重新模擬成PLC硬件,通過網(wǎng)線連接實(shí)現(xiàn)PLCsim軟件與其它設(shè)備的信號(hào)交互。
用網(wǎng)線連接電腦網(wǎng)卡到任意網(wǎng)絡(luò)設(shè)備,使這張網(wǎng)卡處于“已連接”狀態(tài)。然后將其IP地址設(shè)置為192.168.0.90,子網(wǎng)掩碼255.255.255.0。
注意,這張網(wǎng)卡必須處于工作狀態(tài),不能是“未連接”狀態(tài)。否則后面的步驟無法完成。
打開西門子STEP7,建立一個(gè)S7-300系列的包含以太網(wǎng)口的PLC硬件組態(tài)。然后將PLC的以太網(wǎng)口IP地址設(shè)置為192.168.0.100,子網(wǎng)掩碼255.255.255.0。最后將硬件組態(tài)保存、編譯、下載進(jìn)模塊,然后啟動(dòng)PLCSIM模塊,如圖1所示。
圖1 S7-PLCSIM軟件
啟動(dòng)NetToPLCsim,如果彈出“端口102使用中”的提示,必須點(diǎn)擊Yes,停止該服務(wù)。左下角顯示“Port102 OK”說明狀態(tài)良好。然后點(diǎn)擊右下角Add按鈕,如圖2所示。
圖2 NetToPLCsim軟件
接下來配置Station參數(shù)。Network IP Address選擇計(jì)算機(jī)網(wǎng)卡地址192.168.0.90,Plcsim IP Address選擇虛擬PLC地址192.168.0.100。然后點(diǎn)擊左下角Start Server按鈕。Net- ToPLCsim軟件配置完成。即,建立了計(jì)算機(jī)網(wǎng)卡跟虛擬PLC的通信。如圖3所示。
圖3 配置NetToPLCsim軟件
啟動(dòng)KEPServerEx,新建名為Test的Project,設(shè)備驅(qū)動(dòng)選擇Siemens TCP/IP Ethernet,網(wǎng)絡(luò)適配器選擇IP地址為192.168.0.90的網(wǎng)卡。然后新建名為PLCsim的Device。Device model選擇S7-300,Device ID填寫IP地址192.168.0.90。如圖4所示。
圖4 KEPServerEx軟件
至此,PLCsim跟OPC服務(wù)器軟件KEPServerEx的通信環(huán)境已經(jīng)搭建成功。需要測(cè)試一下是否能成功通信。新建名為Input(I0.0)和Output(Q4.0)兩個(gè)變量。如圖5所示。
圖5 配置KEPServerEx軟件
打開PLCsim,手動(dòng)激活I(lǐng)0.0和Q4.0兩個(gè)信號(hào),如圖6所示。
圖6 手動(dòng)測(cè)試信號(hào)
然后再回到KepServerEx軟件,點(diǎn)擊QuickClient按鈕,啟動(dòng)自帶的OPC Client,可以在QuickClient界面看到這剛才新建的兩個(gè)信號(hào)Output和Input的Value從0變成了1。說明通信測(cè)試成功。如圖7所示。
圖7 通信測(cè)試成功
RoboGuide軟件預(yù)留了OPC接口,可以作為OPC客戶端與OPC服務(wù)器軟件KEPServerEx進(jìn)行通信。
啟動(dòng)RoboGuide軟件,之后在External Devices右鍵,添加設(shè)備。如圖8所示。然后選擇OPC Server,點(diǎn)擊OK。如圖9所示。
圖8 添加設(shè)備
圖9 添加OPC Server
圖10 配置OPC Server
之后設(shè)置OPC Server名字為PLC,并設(shè)置其它參數(shù),完成RoboGuide端OPC相關(guān)的設(shè)置,如圖10所示。
接下來,在External Devices上右鍵,選擇External I/O Connection,創(chuàng)建信號(hào)點(diǎn)之間的連接。即Output Device到Input Device的信號(hào)連接。例如,Robot輸出到PLC,PLC輸出信號(hào)到機(jī)器人。設(shè)置完畢之后,點(diǎn)擊右下角Connect,完成信號(hào)關(guān)聯(lián)設(shè)置。如圖11所示界面。
圖11 信號(hào)關(guān)聯(lián)設(shè)置
至此,完成了RoboGuide與OPC服務(wù)器KepServerEx的通信設(shè)置。結(jié)合之前已經(jīng)完成了PLCsim到KEPServerEx的通信。到此為止,已經(jīng)完成了RoboGuide到PLCsim的通信。
分別在PLCsim和RoboGuide軟件中強(qiáng)制一個(gè)輸出信號(hào)保持ON,檢測(cè)是否收到對(duì)方發(fā)送的信號(hào)。如果能收到,說明通信環(huán)境搭建成功。
上述通信環(huán)境的搭建,本質(zhì)上就是RoboGuide和PLCsim通過KepServeEX實(shí)現(xiàn)了通信,如下圖12所示。
圖12 自動(dòng)通信原理
接下來,只需要將機(jī)器人運(yùn)行時(shí)所需的外部信號(hào)編寫入PLC程序,然后導(dǎo)入PLCsim軟件,讓其自動(dòng)循環(huán)執(zhí)行。即可完成和RoboGuide中的機(jī)器人實(shí)現(xiàn)自動(dòng)通信的功能。
本例展示了管理兩臺(tái)機(jī)器人之間四個(gè)干涉區(qū)的PLC程序片段。如下圖13所示。例如Area12_1,表示Robot1和Robot2之間的第1個(gè)干涉區(qū),以此類推。
將此PLC程序加載到PLCsim軟件,并讓其自動(dòng)循環(huán)運(yùn)行。當(dāng)機(jī)器人R1在RoboGuide中自動(dòng)運(yùn)行時(shí),如果需要進(jìn)入干涉區(qū),需要PLC來判斷另外一臺(tái)機(jī)器人R2是否已經(jīng)在干涉區(qū)內(nèi),從而判斷R1是否可以進(jìn)入。此時(shí),PLCsim已經(jīng)和RoboGuide建立了自動(dòng)通信,即可實(shí)現(xiàn)機(jī)器人在Robo Guide中進(jìn)出干涉區(qū)的自動(dòng)管理。
圖13 PLC程序示例
針對(duì)在RoboGuide中離線編程時(shí)無法進(jìn)行干涉區(qū)管理的問題,利用OPC技術(shù),最終實(shí)現(xiàn)了RoboGuide跟PLC的信號(hào)交互,實(shí)現(xiàn)了干涉區(qū)的自動(dòng)管理,提高了機(jī)器人在離線編程時(shí)的完成度,縮短了在線調(diào)試機(jī)器人的工時(shí),為企業(yè)的智能制造升級(jí)打下了基礎(chǔ)。
同時(shí)也為其它有類似需求的場(chǎng)景提供了范例,有很高的參考應(yīng)用價(jià)值。
[1] 李向陽(yáng),王俊.基于ROBOGUIDE的多功能機(jī)器人工作站設(shè)計(jì)與仿真[J].機(jī)械工程師, 2020,351(09):112-113+116.
[2] 張智杰,張燕燕. OPC技術(shù)與應(yīng)用[J]. 信息技術(shù), 2002(3):29-31.
[3] 謝志軍,郭光明,張偉軍.基于Roboguide白車身在線測(cè)量系統(tǒng)的機(jī)器人離線編程方法研究[J].機(jī)電一體化,2016,22(11):3-8.
[4] 李田科,李梅.模擬S7-300PLC運(yùn)行的西門子S7-PLCSIM仿真軟件[J].可編程控制器與工廠自動(dòng)化(PLC FA),2005(6):51-52.
The Study of Communication between RoboGuide and PLCsim
LIU Ming
( SAIC General Motors Co., Ltd.,Vehicle Manufacturing Engineering, Shanghai 201206 )
This paper describes a method for communicating RoboGuide and Siemens virtual PLC software PLCsim, so that when robot offline programming in RoboGuide, signal interaction with external PLC (e. g., signal judgment of interference zone).Realize the virtual simulation of robot offline programming and improve the completion of offline programming.
OPC; RoboGuide; PLCsim; Robot; Offline programming; Virtual simulation
A
1671-7988(2021)22-155-04
TP24
A
1671-7988(2021)22-155-04
CLC NO.: TP24
劉明(1983—),男,就職于上汽通用汽車有限公司整車制造工程部,從事機(jī)器人方面工作。
10.16638/j.cnki.1671-7988.2021.022.040