喻劍平
(江鈴汽車(chē)股份有限公司,江西南昌 330000)
工業(yè)機(jī)器人是一種以自動(dòng)化技術(shù)和計(jì)算機(jī)技術(shù)為主體、有機(jī)融合各種現(xiàn)代自動(dòng)控制技術(shù)的系統(tǒng)集成和應(yīng)用的高度自動(dòng)化設(shè)備,工業(yè)機(jī)器人的應(yīng)用發(fā)展是現(xiàn)代生產(chǎn)智能制造需求的必然結(jié)果。目前工業(yè)機(jī)器人的裝機(jī)量全世界已超過(guò)百萬(wàn)臺(tái),與傳統(tǒng)設(shè)備相比,它具有3 個(gè)主要優(yōu)點(diǎn):實(shí)現(xiàn)生產(chǎn)過(guò)程的高度完全自動(dòng)化,與其他生產(chǎn)設(shè)備的高度配合協(xié)同能力,大規(guī)模應(yīng)用的成本優(yōu)勢(shì)。
工業(yè)機(jī)器人可以由多臺(tái)工業(yè)機(jī)器人進(jìn)行協(xié)同動(dòng)作,共同完成一系列復(fù)雜的工藝流程,實(shí)現(xiàn)生產(chǎn)過(guò)程的高度自動(dòng)化,其工藝過(guò)程存在不同工藝流程先后順序及工作區(qū)域互相干涉的問(wèn)題。解決邏輯控制方法一般由工業(yè)機(jī)器人工藝時(shí)序和干涉區(qū)控制方式共同完成,此方式為目前最為常用的一種控制解決方式。
所謂工業(yè)機(jī)器人工藝時(shí)序即為工業(yè)機(jī)器人的工作步驟,以常見(jiàn)的汽車(chē)白車(chē)身工業(yè)機(jī)器人自動(dòng)焊接應(yīng)用為例,白車(chē)身工業(yè)機(jī)器人焊接工藝時(shí)序均分為多個(gè)小步驟,可概括為以下3 個(gè)大步驟:
(1)工業(yè)機(jī)器人處于初始定義原點(diǎn)位置,并給主控PLC 發(fā)出工業(yè)機(jī)器人工藝站各狀態(tài)信號(hào)。
(2)待焊接的白車(chē)身工件由上級(jí)工位傳入后,主控PLC對(duì)車(chē)型數(shù)據(jù)與車(chē)型進(jìn)行一致性判斷;車(chē)型一致則驅(qū)動(dòng)夾具對(duì)白車(chē)身進(jìn)行夾持定位,車(chē)身夾具定位確認(rèn)后,主控PLC 發(fā)出工業(yè)機(jī)器人啟動(dòng)指令;工業(yè)機(jī)器人進(jìn)行車(chē)型比對(duì),比對(duì)一致開(kāi)始進(jìn)行點(diǎn)焊工藝進(jìn)入焊接狀態(tài);待完成既定點(diǎn)焊程序后,工業(yè)機(jī)器人需對(duì)焊點(diǎn)數(shù)和電極磨損進(jìn)行判斷,到達(dá)設(shè)定焊點(diǎn)數(shù)后工業(yè)機(jī)器人執(zhí)行電極修磨程序;電極頭磨損到達(dá)設(shè)定值后,工業(yè)機(jī)器人需執(zhí)行更換電極頭程序;待以上所有處理工藝結(jié)束后工業(yè)機(jī)器人回到初始原點(diǎn)位置,發(fā)出并保持點(diǎn)焊循環(huán)結(jié)束信號(hào)。
(3)夾具夾緊定位機(jī)構(gòu)打開(kāi),退回至接件狀態(tài),確認(rèn)工業(yè)機(jī)器人點(diǎn)焊工藝循環(huán)已結(jié)束,工業(yè)機(jī)器人已回初始定義原點(diǎn)位置、工業(yè)機(jī)器人無(wú)故障,進(jìn)入下一工藝循環(huán)。
這三大步驟又可劃分為若干小步驟,這些小步驟即為工業(yè)機(jī)器人的工作時(shí)序。將工業(yè)機(jī)器人的各個(gè)時(shí)序作為一個(gè)程序段,當(dāng)工位有多臺(tái)工業(yè)機(jī)器人協(xié)同動(dòng)作時(shí),必定存在先后工藝的順序,對(duì)不同工業(yè)機(jī)器人先后工藝順序的控制即為時(shí)序控制。一般時(shí)序在工業(yè)機(jī)器人程序中以Segment 代替,該信號(hào)可以定義為若干BOOL 量(表1),也可以定義為一個(gè)整數(shù)型表示工序號(hào),與主控PLC 進(jìn)行交互,共同完成工業(yè)機(jī)器人的時(shí)序控制。
表1 定義的BOOL 量時(shí)序交互信號(hào)
為便于現(xiàn)場(chǎng)標(biāo)準(zhǔn)化管理,通常將若干Segment 序號(hào)定義為標(biāo)準(zhǔn)時(shí)序(表1 可見(jiàn)定義的幾個(gè)標(biāo)準(zhǔn)時(shí)序),在程序設(shè)計(jì)中,該Segment 信號(hào)不能用作其他時(shí)序控制。
工業(yè)機(jī)器人時(shí)序控制通常是該工業(yè)機(jī)器人在開(kāi)始運(yùn)行某個(gè)程序段時(shí)需向主控PLC 發(fā)出信號(hào)DoOutSegX 請(qǐng)求,同時(shí)將DoFinishSegX 置位OFF,等待主控PLC 發(fā)送該程序的允許信號(hào)DiRunSegX 置位為ON;當(dāng)進(jìn)入該時(shí)序程序,需再將DoOutSegX置位OFF,在該程序段DiRunSegX 需要一直保持為ON 接通狀態(tài)。在運(yùn)行過(guò)程中,主控PLC 必須監(jiān)控該程序段的運(yùn)行條件是否滿足,若主控PLC 發(fā)現(xiàn)該程序段的運(yùn)行條件不滿足(例如某個(gè)傳感器狀態(tài)位信號(hào)丟失),需立即停止工業(yè)機(jī)器人的運(yùn)行并將程序段允許信號(hào)DIRungSegX 置為OFF,并斷開(kāi)相關(guān)工業(yè)機(jī)器人的自動(dòng)運(yùn)行回路,實(shí)現(xiàn)工業(yè)機(jī)器人自動(dòng)停機(jī);當(dāng)工業(yè)機(jī)器人運(yùn)行該程序段的運(yùn)行條件滿足后,主控PLC 再次置位DIRungSegX,實(shí)現(xiàn)工業(yè)機(jī)器人再次自動(dòng)工藝。
當(dāng)工業(yè)機(jī)器人在時(shí)序段等待位置接收到時(shí)序號(hào)時(shí),DoOut-SegX=1,DoFinishSegX=0;當(dāng)請(qǐng)求某個(gè)Segment 沒(méi)有被運(yùn)行時(shí),相對(duì)應(yīng)的DoOutsegX=1,DoFinishSegX=0;當(dāng)運(yùn)行某個(gè)Segment時(shí),相對(duì)應(yīng)的DoOutsegX=0,DoFinishSegX=0,DiRunSegX=1;當(dāng)該Segment 運(yùn)行完畢后,相對(duì)應(yīng)的DoOutSegX=1,DoFinishSegX=1,并一直保留到整個(gè)任務(wù)執(zhí)行完成。工業(yè)機(jī)器人等待SEGMENT 信號(hào)和完成SEGMENT 信號(hào)請(qǐng)求及結(jié)束可定義為機(jī)器人函數(shù)或子程序段,以便統(tǒng)一引用。
工業(yè)機(jī)器人可多臺(tái)進(jìn)行協(xié)同動(dòng)作,共同完成一系列復(fù)雜的工藝流程,其工作區(qū)域存在交互過(guò)程,彼此交互的工作區(qū)域稱(chēng)為干涉區(qū),如圖1 所示。
圖1 所示工位共有4 臺(tái)工業(yè)機(jī)器人,分別命名為R1、R2、R3和R4,每臺(tái)工業(yè)機(jī)器人和其他工業(yè)機(jī)器人之間存在共同工作區(qū)域,其共同工作區(qū)域即為工業(yè)機(jī)器人協(xié)同工作干涉區(qū),將其依次命名為ZONE1~ZONE6。以R1 來(lái)分析,它分別與R2、R3 干涉:R1與R2 干涉,干涉區(qū)域命名為ZONE1、ZONE4;R1 與R3 干涉,其干涉區(qū)為ZONE2;干涉區(qū)ZONE3、ZONE5 和ZONE6 不屬于其干涉區(qū)。這樣統(tǒng)一延續(xù)命名原則可以簡(jiǎn)化工業(yè)機(jī)器人干涉區(qū)的PLC 程序設(shè)計(jì),干涉區(qū)越多會(huì)使工業(yè)機(jī)器人及主控PLC 程序越復(fù)雜,一臺(tái)工業(yè)機(jī)器人的干涉區(qū)設(shè)計(jì)一般不應(yīng)多于4 個(gè)。
每個(gè)干涉區(qū)可供多臺(tái)工業(yè)機(jī)器人使用,但任意時(shí)刻,一個(gè)干涉區(qū)只能允許一臺(tái)工業(yè)機(jī)器人進(jìn)入其中。在工業(yè)機(jī)器人開(kāi)始自動(dòng)運(yùn)行前,所有干涉區(qū)區(qū)域的定義必須仔細(xì)測(cè)試,避免發(fā)生工業(yè)機(jī)器人碰撞事故。
與干涉控制相關(guān)的信號(hào)可定義為3 個(gè)相關(guān)信號(hào):DoOutOf-ZoneX(X 為干涉區(qū)編號(hào))、DoReqZoneX(X 為干涉區(qū)編號(hào))、DIZoneXFree(X 為干涉區(qū)編號(hào))。信號(hào)DoOutOfZoneX、DoReqZoneX由工業(yè)機(jī)器人發(fā)至主控PLC,DiZoneXFree 由主控PLC 發(fā)至工業(yè)機(jī)器人,工業(yè)機(jī)器人程序模塊中預(yù)干涉區(qū)相關(guān)的信號(hào)處理流程如圖2 所示。
(1)工業(yè)機(jī)器人在干涉區(qū)外,信號(hào)DoOutOfZoneX 為ON,DoReqZoneX 為OFF,工業(yè)機(jī)器人運(yùn)動(dòng)到干涉區(qū)前的運(yùn)動(dòng)軌跡空間點(diǎn),將信號(hào)DoReqZoneX 置位ON,向外圍控制主控PLC 申請(qǐng)進(jìn)入干涉區(qū)。
圖1 工業(yè)機(jī)器人干涉區(qū)
圖2 預(yù)干涉區(qū)信號(hào)處理流程
(2)等待主控PLC 發(fā)來(lái)的DiZoneXFree 信號(hào)為ON 后開(kāi)始進(jìn)入干涉區(qū),當(dāng)工業(yè)機(jī)器人開(kāi)始進(jìn)入干涉區(qū)時(shí),將信號(hào)DoOut-OfZoneX、DoReqZoneX 均置為OFF;當(dāng)工業(yè)機(jī)器人進(jìn)入干涉區(qū)后,主控PLC 所發(fā)出的信號(hào)DiZoneXFree 需保持為ON。
(3)當(dāng)工業(yè)機(jī)器人完成干涉區(qū)內(nèi)工藝并離開(kāi)干涉區(qū)后,工業(yè)機(jī)器人將信號(hào)DoOutOfZoneX 置為ON,通知主控PLC 該工業(yè)機(jī)器人已經(jīng)離開(kāi)干涉區(qū),主控PLC 將信號(hào)DIZoneXFree置為OFF,此時(shí)主控PLC 可以允許其他工業(yè)機(jī)器人進(jìn)入該干涉區(qū)。
(1)當(dāng)多臺(tái)工業(yè)機(jī)器人同時(shí)申請(qǐng)進(jìn)入某一干涉區(qū)時(shí),進(jìn)入先后順序由主控PLC 判別,一般根據(jù)工作節(jié)拍進(jìn)行邏輯判斷。
(2)工業(yè)機(jī)器人運(yùn)動(dòng)到進(jìn)入干涉區(qū)前的運(yùn)動(dòng)軌跡空間點(diǎn)必須使用精確軌跡點(diǎn)。
(3)當(dāng)工業(yè)機(jī)器人發(fā)現(xiàn)有兩臺(tái)工業(yè)機(jī)器人同時(shí)進(jìn)入同一干涉區(qū)時(shí),需立即停止相關(guān)工業(yè)機(jī)器人的運(yùn)行,以避免工業(yè)機(jī)器人碰撞事故的發(fā)生。
(4)工業(yè)機(jī)器人的干涉區(qū)請(qǐng)求及釋放可定義為函數(shù)或子程序段,以便統(tǒng)一引用。
工業(yè)機(jī)器人的時(shí)序控制與干涉區(qū)控制既有相同點(diǎn)也有異同點(diǎn)。
相同點(diǎn):①工業(yè)機(jī)器人與主控PLC 交互信號(hào)均可設(shè)計(jì)為3個(gè);②工業(yè)機(jī)器人時(shí)序和干涉區(qū)均有進(jìn)入、釋放階段,均需向主控PLC 請(qǐng)求,由主控PLC 進(jìn)行判斷。
不同點(diǎn):①工業(yè)機(jī)器人時(shí)序控制需嚴(yán)格按照SEGMENT 流程執(zhí)行,其執(zhí)行完成,機(jī)器人及主控PLC 均需記憶完成信號(hào),在完成工藝流程循環(huán)后、開(kāi)始下一個(gè)工藝循環(huán)時(shí)才進(jìn)行初始化信號(hào);②工業(yè)機(jī)器人干涉區(qū)控制采用先進(jìn)先出原則,在離開(kāi)干涉區(qū)后就可釋放干涉區(qū)記憶信號(hào),可重復(fù)進(jìn)入。
通過(guò)工業(yè)機(jī)器人工藝時(shí)序和干涉區(qū)控制方式的組合邏輯控制,與主控PLC 進(jìn)行交互,可以使工業(yè)機(jī)器人進(jìn)行協(xié)同動(dòng)作,實(shí)現(xiàn)現(xiàn)代生產(chǎn)的智能、自動(dòng)化制造。