■陜西漢江機(jī)床有限公司 (漢中 723003) 張新寧 黨玉厚
三菱機(jī)械手與觸摸屏的數(shù)據(jù)共享試驗(yàn)與研究
■陜西漢江機(jī)床有限公司 (漢中 723003) 張新寧 黨玉厚
摘要:利用三菱機(jī)械手CRnD-700控制器的擴(kuò)展功能,與觸摸屏GT1275網(wǎng)線直連,通過機(jī)械手控制器共享數(shù)據(jù)區(qū)進(jìn)行數(shù)據(jù)共享訪問。通過模擬交通燈來驗(yàn)證共享區(qū)數(shù)據(jù)的正確性,并將該結(jié)果推廣到多個(gè)子項(xiàng)目中,獲得了專家認(rèn)可。
工業(yè)機(jī)器人是面向工業(yè)領(lǐng)域的多關(guān)節(jié)機(jī)械手或多自由度的機(jī)器人,是自動執(zhí)行工作的機(jī)器裝置,是靠自身動力和控制能力來實(shí)現(xiàn)各種功能的一種機(jī)器。它可以接受人類指揮,也可以按照預(yù)先編排的程序運(yùn)行,還可以接受示教而完成各種簡單的重復(fù)動作。示教過程中,機(jī)械手可依次通過工作任務(wù)的各個(gè)位置,這些位置序列全部記錄在存儲器內(nèi),在任務(wù)的執(zhí)行過程中,機(jī)器人的各個(gè)關(guān)節(jié)在伺服驅(qū)動下依次再現(xiàn)上述位置,故這種機(jī)器人的主要技術(shù)功能被稱為“可編程”和“示教再現(xiàn)”。
在工業(yè)生產(chǎn)中能代替人做某些單調(diào)、頻繁和重復(fù)的長時(shí)間作業(yè),或是危險(xiǎn)、惡劣環(huán)境下的作業(yè),在國家重大專項(xiàng)“五軸聯(lián)動高速、精密可轉(zhuǎn)位刀片周邊和雙端面刃磨數(shù)控工具磨床(2010ZX04001-162)”上,機(jī)械手的主要作用就是給加工機(jī)床上、下料(小刀片),配合機(jī)床加工并將加工好的刀片進(jìn)行管理,每天加工能力在600片以上。強(qiáng)度之大難以想象。
在使用機(jī)械手的過程中,出現(xiàn)了許多不容易解決的問題。通過對加工工藝流程的改進(jìn)、程序控制邏輯的修正、機(jī)械手新功能的開發(fā)和使用,都有較好的效果。下面就三菱四軸水平關(guān)節(jié)機(jī)器人和觸摸屏之間的數(shù)據(jù)共享進(jìn)行論述。
所謂數(shù)據(jù)共享,就是在機(jī)械手控制器的存儲器內(nèi)單獨(dú)開辟一塊專用區(qū)域,機(jī)械手控制器將機(jī)械手的操作數(shù)據(jù)寫入存儲區(qū),而觸摸屏(簡稱GOT)從存儲區(qū)取得相應(yīng)數(shù)據(jù),通過簡單的處理,將機(jī)械手的狀態(tài)以信息顯示的方式在GOT屏上顯示出來。反之,GOT屏上設(shè)置的數(shù)據(jù)寫入共享區(qū),機(jī)械手控制通過相應(yīng)指令讀取設(shè)置信息,根據(jù)設(shè)置數(shù)據(jù)情況進(jìn)行程序操作,使得機(jī)械手執(zhí)行相應(yīng)的動作,以實(shí)現(xiàn)數(shù)據(jù)共享的交互操作。
由于三菱機(jī)械手控制器和三菱觸摸屏都支持網(wǎng)絡(luò)連接,因此只需要通過一根平行網(wǎng)線進(jìn)行網(wǎng)絡(luò)連接即可。所說的平行網(wǎng)線就是通常的通用網(wǎng)線,不需要特別制作。連接圖如圖1所示。
圖1 機(jī)械手控制器與GT1275的連接
三菱機(jī)械手控制器數(shù)據(jù)區(qū)域包括用戶數(shù)據(jù)區(qū)和擴(kuò)展數(shù)據(jù)區(qū)。在用戶數(shù)據(jù)區(qū)中,機(jī)械手控制器基本配置為:Input 0~95,Output 0~95;擴(kuò)展I/O地址:Input 96~511,Output 96~511。
如果需要使用控制器的共享擴(kuò)展存儲區(qū)域,就必須設(shè)置控制器參數(shù)“IQMEM”。擴(kuò)展存儲區(qū)域?yàn)?.5K字(每個(gè)字為16位二進(jìn)制數(shù))。當(dāng)然需要三菱機(jī)械手生產(chǎn)廠家增加擴(kuò)展協(xié)議和擴(kuò)展模塊(見圖2、圖3)。
訪問共享存儲區(qū)域,共享地址是以偏移地址模式進(jìn)行操作的。機(jī)械手控制器的輸入地址對應(yīng)于GOT的輸出地址,機(jī)械手控
制器的輸出地址對應(yīng)于GOT的輸入地址。
在觸摸屏中訪問地址是十六進(jìn)制地址,而在機(jī)械手控制器中僅可以采用十進(jìn)制地址偏移,也可以采用十六進(jìn)制地址偏移(見表1)。
圖2 輸入數(shù)據(jù)共享存儲區(qū)地址影射
圖3 輸出數(shù)據(jù)共享存儲區(qū)地址影射
表1
在操作共享數(shù)據(jù)區(qū)時(shí),特別要注意,機(jī)械手保留了許多專用數(shù)據(jù)區(qū),訪問時(shí)不能隨便亂用,防止錯(cuò)誤數(shù)據(jù)造成系統(tǒng)出現(xiàn)問題。當(dāng)然,用戶只能操作具有R/ W屬性的數(shù)據(jù)區(qū)數(shù)據(jù)。
由于專項(xiàng)中使用的是標(biāo)配的水平多關(guān)節(jié)機(jī)械手及控制器系統(tǒng),不帶擴(kuò)展數(shù)據(jù)存儲模塊,因此數(shù)據(jù)共享區(qū)只能使用0~511的輸入/輸出地址,在試驗(yàn)中共享數(shù)據(jù)區(qū)使用了偏移地址為256開始的IO地址,即輸入地址為256~271、272~287、288~303三個(gè)雙字節(jié)地址(每個(gè)雙字節(jié)占16位IO點(diǎn)),作為觸摸屏上設(shè)置數(shù)據(jù)的共享區(qū);輸出地址為256~271的一個(gè)字節(jié)地址作為觸摸屏上顯示數(shù)據(jù)的共享區(qū)。
三菱機(jī)械手控制器的編程語言是MELFA BASIC Ⅴ。類似于BASIC的語言結(jié)構(gòu),其中有許多和BASIC完全相同的指令,但用法有些又完全不同,又增加了許多專用的指令。在此對一些常用的指令作功能簡要說明。
M_In(16)( 機(jī)械手控制器的輸入口,其中16表示輸入口地址為第17個(gè)輸入點(diǎn)。)
M_Inw(10000+16*16) ( 機(jī)械手控制器的共享輸入口,表示輸入口地址為第10000個(gè)輸入點(diǎn)開始的第16個(gè)雙字節(jié)地址(每個(gè)字節(jié)8位),相當(dāng)于機(jī)械手的輸入口M_ Inw256一個(gè)雙字節(jié)的地址。)
M_Inw(10000+16*16)(指令和M_Inw256使用效果相同。)
M_Out(16) (機(jī)械手控制器的輸出口,其中16表示輸出口地址為第17個(gè)輸出點(diǎn)。)
M_Outw(10000+16*16) (機(jī)械手控制器的共享輸出口,表示輸出口地址為第10000個(gè)輸出點(diǎn)開始的第16個(gè)雙字節(jié)地址,相當(dāng)于機(jī)械手的輸出口M_Outw256一個(gè)雙字節(jié)的地址。)
M_Outw(10000+16*16)(指令和M_Outw256使用效果相同。)
DLY 1(表示延時(shí)1s。)
While <條件>…… Wend(程序循環(huán)指令,當(dāng)條件滿足時(shí)執(zhí)行循環(huán)體內(nèi)指令。)
Select <條件>(執(zhí)行滿足條件的程序塊。)
Case
Case else
End select
Break(強(qiáng)行跳出循環(huán)體。)
If <條件> then <地址>(程序控制指令,根據(jù)條件判斷進(jìn)行程序跳轉(zhuǎn)。)
M1=10(賦值語句。)
Hlt(機(jī)械手程序停止。)
當(dāng)然,三菱機(jī)械手控制器還包含有其他的指令,例如關(guān)節(jié)插補(bǔ)指令Mov,直線插補(bǔ)MVS,碼垛運(yùn)算def plt,plt,以及子程序Gosub和子程序調(diào)用Callp等指令,由于在下面的事例程序中沒有用到,不再一一介紹。
本事例是模擬交通紅綠燈功能控制,動作如下:啟動機(jī)械手程序,三個(gè)燈滅。紅燈亮,延時(shí)10s后,紅燈滅;黃燈亮,延時(shí)3s后,黃燈滅;綠燈亮,延時(shí)10s后,綠燈滅;循環(huán)上述工作過程。
GOT的界面設(shè)置:在GOT上制作一個(gè)數(shù)據(jù)顯示框(模擬顯示紅黃綠三個(gè)燈等待時(shí)間),三個(gè)數(shù)據(jù)輸入框(設(shè)置紅黃綠三個(gè)燈點(diǎn)亮?xí)r間)和三個(gè)指示燈(分別代表紅、黃、綠三個(gè)交通燈),具體設(shè)置如表2所示。
機(jī)械手控制紅綠燈的程序流程框圖如圖4所示。
表2
圖4 機(jī)械手控制紅綠燈的程序流程框圖
根據(jù)圖4所示,編制機(jī)械手控制器控制程序。
在機(jī)械手在線程序中新建一個(gè)程序,文件名為1.MB5。機(jī)械手控制程序清單如下:
‘=================
‘交通燈自動控制系統(tǒng)(Traffic lights)
‘=================
M_Out(16)=0‘red light
M_Out(17)=0 ‘yellow light
M_Out(18)=0 ‘green light
mSetTimes=5'設(shè)置程序執(zhí)行次數(shù),中間變量。文檔中沒有說明的 m… 均為中間變量。
M1=0
M3=0'選擇點(diǎn)亮哪個(gè)燈0=紅燈,1,3=黃燈,2=綠燈
'mRed_Delay=M_Inw(10000+16*16)'觸摸屏上設(shè)置紅燈點(diǎn)亮?xí)r間(本行在機(jī)械手上測試時(shí)要用,保留)
'mYellow_Delay=M_Inw(10000+16*17)'黃燈點(diǎn)亮?xí)r間
'mGreen_Delay=M_Inw(10088+16*18)'綠燈點(diǎn)亮?xí)r間
mRed_Delay=10
mYellow_Delay=3
mGreen_Delay=10
*NextLoop:'程序循環(huán)跳轉(zhuǎn)地址
mCur_Delay=0
M3=M1 mod 4
SelectM3
Case 0
M_Out(16)=1 '紅燈點(diǎn)亮
M_Out(17)=0 '黃燈
M_Out(18)=0 '綠燈
M2=mRed_Delay
While mCur_Delay Dly 1 M2=M2-1 M_Outw(10000+16*16)=M2 mCur_Delay=mCur_Delay+1 WEnd M_Out(16)=0 Break Case 1,3 M_Out(16)=0 ‘紅燈 M_Out(17)=1 ‘黃燈點(diǎn)亮 M_Out(18)=0 ‘綠燈 M2=mYellow_Delay While mCur_Delay Dly 1 M2=M2-1 M_Outw(10000+16*16)=M2 mCur_Delay=mCur_Delay+1 WEnd M_Out(17)=0 Break Case 2 M_Out(16)=0 ‘紅燈 M_Out(17)=0 ‘黃燈 M_Out(18)=1 ‘綠燈點(diǎn)亮 M2=mGreen_Delay While mCur_Delay Dly 1 M2=M2-1 M_Outw(10000+16*16)=M2 mCur_Delay=mCur_Delay+1 WEnd M_Out(18)=0 Break End Select M1=M1+1 If M1 *EndLamp: M_Out(16)=0 M_Out(17)=0 M_Out(18)=0 Hlt 打開機(jī)械手控制器的監(jiān)視菜單下的信號監(jiān)視,查看通用信號的狀態(tài)變化;在調(diào)試模式下打開程序1.MB5,按控制面板上的執(zhí)行鍵,可以看到如下的運(yùn)行結(jié)果: 紅燈亮如圖5所示。 圖5 黃燈亮如圖6所示。 圖6 綠燈亮如圖7所示。 圖7 更改上面的程序,使程序變?yōu)椋?/p> mRed_Delay=M_Inw(10000+16*16)(紅燈點(diǎn)亮?xí)r間,在機(jī)械手上測試時(shí)要用) mYellow_Delay=M_Inw(10000+16*17)(黃燈點(diǎn)亮?xí)r間) mGreen_Delay=M_Inw(10088+16*18)(綠燈點(diǎn)亮?xí)r間) (mRed_Delay=10) (mYellow_Delay=3) (mGreen_Delay=10) 在觸摸屏上設(shè)置三個(gè)燈的點(diǎn)亮?xí)r間后,將機(jī)械手控制器上的鑰匙開關(guān)扳到自動方式,選擇執(zhí)行程序1.MB5,按程序啟動鍵運(yùn)行程序,可以看到程序運(yùn)行結(jié)果:三個(gè)指示燈循環(huán)變化狀態(tài)。結(jié)果表明,完全模擬了交通紅黃綠的控制,證明試驗(yàn)是完全成功的,達(dá)到了預(yù)期的效果。 通過上面的成功試驗(yàn),在國家重大專項(xiàng)“五軸聯(lián)動高速、精密可轉(zhuǎn)位刀片周邊和雙端面刃磨數(shù)控工具磨床(2010ZX04001-162)”上有許多典型的擴(kuò)展應(yīng)用,例如邦納相機(jī)照相數(shù)據(jù)、三菱觸摸屏操作數(shù)據(jù)、上位機(jī)PC控制數(shù)據(jù)、發(fā)格(Fagor)數(shù)控系統(tǒng)8070的PLC接口數(shù)據(jù)、程序控制數(shù)據(jù),全部通過一個(gè)由路由器組成的局域網(wǎng)絡(luò)傳輸?shù)饺鈾C(jī)械手的共享數(shù)據(jù)區(qū),這些數(shù)據(jù)通過觸摸屏來顯示信息,控制其他可操作的動作,例如氣閥、液壓缸、料庫升降及料盤出入庫等動作,取得了良好的配合動作。這些技術(shù)的應(yīng)用,在重大專項(xiàng)項(xiàng)目驗(yàn)收的過程中,得到了專家的好評。 * “高檔數(shù)控機(jī)床與基礎(chǔ)制造裝備”國家重大科技專項(xiàng)基金項(xiàng)目(2010ZX04001-162) 收稿日期:(20150214)6. 交通燈控制程序的模擬運(yùn)行結(jié)果
7. 機(jī)械手上的程序測試
8. 試驗(yàn)結(jié)果的推廣應(yīng)用