基于PMC6496運(yùn)動控制器的機(jī)械手上下料系統(tǒng)
一 PMC6496的特點(diǎn)
PMC6496運(yùn)動控制器是雷賽公司在獨(dú)立式運(yùn)動控制器的基礎(chǔ)上,精心研發(fā)的一款具有PLC特點(diǎn)的高性能產(chǎn)品。由于其全面支持IEC61131-3標(biāo)準(zhǔn)梯形圖編程語言,在邏輯控制上完全可以與中、小型PLC媲美。同時,其強(qiáng)大的運(yùn)動控制功能更是傳統(tǒng)中、小型PLC無法匹敵的。
1 .PMC6496的硬件性能
圖1為PMC6496運(yùn)動控制器的硬件結(jié)構(gòu)圖。
圖1 PMC6496運(yùn)動控制器硬件結(jié)構(gòu)
PMC6496基于嵌入式處理器和FPGA的硬件結(jié)構(gòu),插補(bǔ)算法、脈沖信號的產(chǎn)生及加速和減速控制、I/O信號的檢測處理,均由硬件和固件實(shí)現(xiàn),確保了運(yùn)動控制高速、高精度及系統(tǒng)穩(wěn)定。該系列控制器可控制4個步進(jìn)或伺服電機(jī),具有最高5MHz脈沖頻率、四軸直線插補(bǔ)、兩軸圓弧插補(bǔ)、連續(xù)曲線插補(bǔ)、S形曲線速度控制等高級功能。通過簡單的編程即可開發(fā)出穩(wěn)定可靠的高性能連續(xù)軌跡運(yùn)動控制系統(tǒng)。
除了4個電機(jī)控制端口外,還提供了豐富的I/O接口和通訊接口:光電隔離I/O接口、擴(kuò)展I/O接口、D/A輸出、PWM輸出、編碼器接口、手搖脈沖發(fā)生器接口。1個網(wǎng)絡(luò)接口、2個串行口,可通過網(wǎng)口或串口與PC機(jī)通信;同時還可以通過串口連接其它設(shè)備,如:手持編程器、觸摸屏、PLC等??赏ㄟ^U盤接口用U盤方便地存儲文件和參數(shù)。Flash用于存儲用戶程序、鐵電存儲器用于參數(shù)的掉電保存。PMC6496的主要技術(shù)指標(biāo)詳見表1。
表1 PMC6496控制器硬件性能
2. PMC6496的功能特性
PMC6496運(yùn)動控制器運(yùn)動控制性能優(yōu)異的,工作穩(wěn)定可靠,梯形圖編輯環(huán)境友好。其主要特點(diǎn)如下:
簡單易學(xué):由于梯形圖是自動化行業(yè)工程師最熟悉的編程語言,因此PMC6496的推出,大大降低了運(yùn)動控制器的應(yīng)用門檻,使用戶更容易上手,快速開發(fā)自己的設(shè)備。
強(qiáng)大的運(yùn)動控制功能:PMC6496可控制4軸步進(jìn)電機(jī)或伺服電機(jī)進(jìn)行4軸直線插補(bǔ),任意2軸圓弧插補(bǔ),多軸連續(xù)插補(bǔ)。可進(jìn)行橢圓,螺旋等軌跡控制。并且,PMC6496配置了2048段指令緩沖,有效地保證了高速軌跡運(yùn)動的連續(xù)性和平滑度。
友好的梯形圖編輯環(huán)境:全面支持IEC61131-3標(biāo)準(zhǔn)梯形圖編程語言,支持子程序,梯形圖比較,看門狗,單步調(diào)試等功能,梯形圖開發(fā)更加方便快捷。
HMI設(shè)備支持:PMC6496可與基于標(biāo)準(zhǔn)Modbus協(xié)議的人機(jī)界面進(jìn)行通訊,包括:觸摸屏、文本顯示器、手持編程器等。用戶只需在人機(jī)界面設(shè)計時,按相應(yīng)的寄存器地址映射公式正確設(shè)置各種軟元件的Modbus地址即可,而幾乎不需要編寫任何程序代碼。
網(wǎng)絡(luò)通訊:PMC6496是一款基于10/100M以太網(wǎng)的PLC,可以使得梯形圖調(diào)試、下載等在線操作更加流暢。
二 機(jī)械手上下料的運(yùn)動軌跡
某客戶的生產(chǎn)線上需要使用機(jī)械手上下料,結(jié)構(gòu)如圖2所示。X軸執(zhí)行水平左右運(yùn)動,Y軸執(zhí)行豎直上下運(yùn)動,手爪由氣缸控制執(zhí)行抓取動作。它們的任務(wù)是將右側(cè)工裝上的工件依次抓取至左側(cè)傳送帶上。X軸原點(diǎn)距離傳送帶上工件放置點(diǎn)為W,工裝上第一個工件距離傳送帶上工件放置點(diǎn)為S,工裝上每個工件之間的距離均為L。
圖2 機(jī)械手上下料系統(tǒng)組成
通常,大多數(shù)用戶會將X、Y的運(yùn)動軌跡確定為矩形,即Y軸上下運(yùn)動完成后X軸再水平運(yùn)動,然后Y軸再次上下運(yùn)動,如此反復(fù)進(jìn)行。但這樣的方式會導(dǎo)致比較強(qiáng)烈的抖動,并且造成一定的時間浪費(fèi)。
因此,可采用圖4所示的運(yùn)動軌跡,在2個拐彎處,X、Y軸進(jìn)行一段半徑為R的圓弧插補(bǔ)運(yùn)動,這樣可大大減弱抖動,且能節(jié)省時間。A點(diǎn)為起始點(diǎn),抓取并放置第1個工件的路徑為A→B→C→D→E→F→G→H→I→J→K,抓取并放置第2個工件的路徑與第一個相同,只不過A→B和F→G的距離增加了長度L,第3個、第4個、第5個亦然。
PMC6496支持連續(xù)插補(bǔ)運(yùn)動,在連續(xù)插補(bǔ)模式下,速度是連續(xù)的,各插補(bǔ)段之間沒有加減速過程,從而使得運(yùn)動更加平滑。運(yùn)行CONTI_ENTER功能塊后進(jìn)入連續(xù)插補(bǔ)模式,加入要求的插補(bǔ)運(yùn)動軌跡,使用LINE_START功能塊啟動連續(xù)插補(bǔ)運(yùn)動,PMC6496以連續(xù)插補(bǔ)模式運(yùn)行完所有運(yùn)動軌跡。
圖3 連續(xù)插補(bǔ)運(yùn)動
圖4 機(jī)械手上下料運(yùn)動軌跡
三 機(jī)械手上下料控制系統(tǒng)流程
繪制流程圖,如圖5所示。每次啟動時,將抓取次數(shù)重置為0,抓取5次后結(jié)束。“夾緊”和“松開”為氣缸動作。
圖5 機(jī)械手上下料流程圖
四 機(jī)械手上下料控制系統(tǒng)的程序
機(jī)械手上下料控制系統(tǒng)程序如圖6所示。
圖6 機(jī)械手上下料程序(程序1-4節(jié))
圖6(續(xù)2) 程序5-22節(jié)
圖6(續(xù)3) 程序23-37節(jié) 圖6(續(xù)4) 程序38-49節(jié)
圖6(續(xù)4) 程序50-65節(jié)
程序中所使用的幾個關(guān)鍵運(yùn)動指令功能塊為PMC6496運(yùn)動庫的一部分,解釋如下:
圖7 圓弧插補(bǔ)功能塊
2. MOVECIRC
描述:指定的兩軸以當(dāng)前位置為圓弧起點(diǎn),按已指定的終點(diǎn)位置、圓心位置、插補(bǔ)方向,執(zhí)行圓弧插補(bǔ)運(yùn)動。其功能塊如圖7所示。
參數(shù):
EN:BOOL類型,使能端(Enable),指令塊的驅(qū)動輸入端。
AXIS0:指定參與圓弧插補(bǔ)的第一軸。
AXIS1:指定參與圓弧插補(bǔ)的第二軸。
END0:指定第一軸的圓弧終點(diǎn)坐標(biāo)。
END1:指定第二軸的圓弧終點(diǎn)坐標(biāo)。
CENTER0:指定第一軸的圓弧圓心坐標(biāo)。
CENTER1:指定第二軸的圓弧圓心坐標(biāo)。
DIR:USINT(BYTE)類型,指定圓弧插補(bǔ)的方向。
IFABS:指定運(yùn)動模式,0-相對運(yùn)動,1-絕對運(yùn)動。
2. PMOVE
描述:指定軸按已設(shè)定的脈沖長度及方向、起始速度、最大運(yùn)行速度、加速度、減速度以及運(yùn)動模式執(zhí)行點(diǎn)位運(yùn)動。其功能塊如圖8所示。
圖8 點(diǎn)位運(yùn)動功能塊
參數(shù):
EN:使能端(Enable),指令塊的驅(qū)動輸入端。
Axis:指定軸號,范圍為0~3軸。
POS:指定點(diǎn)位運(yùn)動的目標(biāo)位置,即脈沖數(shù),正、負(fù)號分別表示正方向和負(fù)方向。比如,-10000表示負(fù)方向運(yùn)動10000個脈沖的長度。
VEL0:指定起始速度(即初速度),單位:脈沖/秒。
VEL1:指定運(yùn)行速度(即最大速度),單位:脈沖/秒。
ACC:指定加速度,單位:脈沖/秒2。
DEC:指定減速度,單位:脈沖/秒2。
IFABS:指定運(yùn)動模式,0-相對運(yùn)動,1-絕對運(yùn)動。
3.HOMEMOVE
描述:指定軸按已設(shè)定的模式、方向、速度執(zhí)行回原點(diǎn)動作?;卦c(diǎn)完成后,當(dāng)前坐標(biāo)被清0,即視為原點(diǎn)(或稱零點(diǎn))。其功能塊如圖9所示。
圖9 回原點(diǎn)運(yùn)動功能塊
參數(shù):
EN:使能端(Enable),指令塊的驅(qū)動輸入端。
Axis:指定軸號,范圍為0~3軸。
DIR:指定回原點(diǎn)方向,1-正向,0-負(fù)向。
MODE:指定回原點(diǎn)模式。
EZ:只對模式4起作用,即反找原點(diǎn)時,EZ信號的個數(shù)。
VEL:指定回原點(diǎn)速度,單位:脈沖/秒。
4.LINE2
圖10 軸直線插補(bǔ)功能塊
描述:指定的兩軸按已指定的終點(diǎn)位置,及運(yùn)動模式執(zhí)行直線插補(bǔ)運(yùn)動。其功能塊如圖10所示。
參數(shù):
EN:使能端(Enable),指令塊的驅(qū)動輸入端。
Axis0:指定參與插補(bǔ)的第一軸,指定范圍為0~3軸。
Axis1:指定參與插補(bǔ)的第二軸,指定范圍為0~3軸。
END0:指定第一軸的目標(biāo)位置,單位:脈沖數(shù)。
END1:指定第二軸的目標(biāo)位置,單位:脈沖數(shù)
VEL1:指定運(yùn)行速度(即最大速度),單位:脈沖/秒。
IFABS:指定運(yùn)動模式,0-相對運(yùn)動,1-絕對運(yùn)動。
五 總結(jié)
綜上所述,PMC6496運(yùn)動控制器具有運(yùn)動控制功能多、處理I/O信號能力強(qiáng)、性價比高等優(yōu)點(diǎn);而且采用梯形圖編程十分簡單、方便,很容易上手;使用PMC6496可以輕而易舉地完成各種自動化設(shè)備的復(fù)雜運(yùn)動控制。
作者簡介
趙向前 男,工程師 2009年哈爾濱工業(yè)大學(xué)機(jī)電學(xué)院畢業(yè),從事自動化技術(shù)研發(fā)工作。
左 力 男,博士,高級工程師,1998年華中理工大學(xué)機(jī)械學(xué)院畢業(yè),從事自動化技術(shù)研發(fā)工作。