網(wǎng)上有很多關(guān)于pos機(jī)復(fù)位鍵在哪,ABB機(jī)器人弧焊焊接起始點(diǎn)接觸尋位虛擬仿真方法的知識(shí),也有很多人為大家解答關(guān)于pos機(jī)復(fù)位鍵在哪的問(wèn)題,今天pos機(jī)之家(m.dsth100338.com)為大家整理了關(guān)于這方面的知識(shí),讓我們一起來(lái)看下吧!
本文目錄一覽:
pos機(jī)復(fù)位鍵在哪
概述對(duì)于機(jī)器人弧焊焊接來(lái)講,焊接起始點(diǎn)的定位是非常重要的,起始點(diǎn)定位的精確度,會(huì)直接影響到整條焊縫的焊接效果。為了提高焊接起始點(diǎn)的定位效率,幾乎所有的機(jī)器人廠商都開(kāi)發(fā)了起始點(diǎn)尋位功能,ABB機(jī)器人也不例外,當(dāng)然起始點(diǎn)尋位除了弧焊焊接應(yīng)用外,也可以用在切割、銑削等應(yīng)用上。
起始點(diǎn)尋位有很多種,例如激光起始點(diǎn)尋位、接觸傳感器起始點(diǎn)尋位或者視覺(jué)起始點(diǎn)尋位,它們的本質(zhì)區(qū)別還是在尋位傳感器上。ABB機(jī)器人的起始點(diǎn)尋位功能是通過(guò)一個(gè)名叫Smartac的系統(tǒng)功能選項(xiàng)來(lái)實(shí)現(xiàn)的,SmarTac是一種接觸傳感器,用于搜索有安裝誤差的焊接起始點(diǎn)的位置并偏移焊接程序中的示教點(diǎn)。
通過(guò)使用SmarTac功能,只需簡(jiǎn)單的幾個(gè)步驟就可以實(shí)現(xiàn)機(jī)器人起始點(diǎn)尋位功能。但是,很遺憾,這個(gè)功能在RobotStudio軟件中似乎并不能使用,小編經(jīng)過(guò)多次測(cè)試,依然沒(méi)能成功。如果有測(cè)試成功的小伙伴,也歡迎分享交流。
所以,要想在RobotStudio軟件中實(shí)現(xiàn)機(jī)器人弧焊焊接的起始點(diǎn)接觸尋位功能,我們就要另想替代方案,本期就來(lái)介紹一種。仿真案例繼續(xù)使用上一期發(fā)布的文章《RobotStudio軟件:ABB機(jī)器人弧焊焊接虛擬仿真實(shí)現(xiàn)方法》中介紹的案例。
機(jī)器人接觸傳感器添加與配置RobotStudio軟件中并沒(méi)有內(nèi)置現(xiàn)成的機(jī)器人接觸傳感器,但是我們可以使用Smart組件中的碰撞監(jiān)控傳感器來(lái)代替接觸傳感器。
在RobotStudio軟件“建?!辈藛螜谥行陆ㄒ粋€(gè)空的Smart組件,然后在其中添加一個(gè)碰撞監(jiān)控傳感器(CollisionSensor)。
在CollisionSensor屬性配置對(duì)話框中,碰撞監(jiān)控對(duì)象Object1中選擇機(jī)器人弧焊焊槍工具,其他屬性保持默認(rèn)。
在Smart組件編輯窗口內(nèi)“信號(hào)和連接”中的I/O信號(hào)列表里分別添加數(shù)字量輸出信號(hào)SMdoTouch和數(shù)字量輸入信號(hào)SMdiTouch,作為Smart組件碰撞監(jiān)控傳感器的反饋信號(hào)和控制信號(hào),I/O信號(hào)詳細(xì)配置參數(shù)如下表所示。
名稱(chēng)
信號(hào)類(lèi)型
值
說(shuō)明
SMdoTouch
DigitalOutput
0
碰撞監(jiān)控傳感器反饋
SMdiTouch
DigitalInput
0
碰撞監(jiān)控傳感器控制
在“設(shè)計(jì)”窗口中將數(shù)字量輸入信號(hào)SMdiTouch連接到碰撞監(jiān)控傳感器CollisionSensor的激活接口Active上,將碰撞監(jiān)控傳感器CollisionSensor的感應(yīng)輸出接口連接到數(shù)字量輸出信號(hào)SMdoTouch上。
全部配置完成后,關(guān)閉Smart組件編輯窗口。由于碰撞監(jiān)控傳感器檢測(cè)的是弧焊焊槍模型的接觸碰撞情況,而焊槍模型是安裝在機(jī)器人模型上的,這樣仿真時(shí)焊槍模型還未接觸工件就已經(jīng)先與機(jī)器人模型發(fā)生接觸碰撞了,碰撞監(jiān)控傳感器一旦激活就會(huì)直接發(fā)出反饋信號(hào)。為了避免這種現(xiàn)象的發(fā)生就要將機(jī)器人模型整體取消“可由傳感器檢測(cè)”或只取消機(jī)器人第6個(gè)關(guān)節(jié)(Link6)的“可由傳感器檢測(cè)”。
機(jī)器人接觸傳感器I/O信號(hào)連接為了使機(jī)器人能夠控制和監(jiān)視接觸傳感器,還要在機(jī)器人虛擬控制器中添加兩個(gè)I/O信號(hào),I/O信號(hào)詳細(xì)配置參數(shù)如下表所示。其中,數(shù)字量輸入信號(hào)diTouch用于接收接觸傳感器的反饋信號(hào),數(shù)字量輸出信號(hào)doTouch用于接觸傳感器的激活和禁用控制。
Name
Type of Signal
Assigned to Device
Device Mapping
信號(hào)說(shuō)明
diTouch
Digital Input
d651
1
接觸傳感器反饋
doTouch
Digital Output
d651
36
接觸傳感器控制
機(jī)器人I/O信號(hào)添加完成后,在軟件“仿真”菜單欄下,點(diǎn)擊“工作站邏輯”命令按鈕,在彈出的窗口中進(jìn)入“設(shè)計(jì)”功能,先將機(jī)器人虛擬控制器的數(shù)字量輸出信號(hào)doTouch連接到接觸傳感器Smart組件的控制信號(hào)SMdiTouch上,再將Smart組件的碰撞監(jiān)控傳感器反饋信號(hào)SMdoTouch連接到機(jī)器人虛擬控制器的數(shù)字量輸入信號(hào)diTouch上。
信號(hào)連接完成后,機(jī)器人就能夠通過(guò)自身的I/O信號(hào)對(duì)接觸傳感器進(jìn)行控制和監(jiān)視了。
機(jī)器人起始點(diǎn)接觸尋位常用指令介紹如果機(jī)器人的SmarTac功能可用,我們就可以直接使用一維搜索指令Search_1D來(lái)對(duì)工件偏差進(jìn)行搜索定位,但是RobotStudio軟件中SmarTac功能并不能使用,所以要找到一種替代方案。
這里我們可以使用機(jī)器人運(yùn)動(dòng)指令集中的沿直線搜索指令SearchL來(lái)替代一維搜索指令Search_1D對(duì)工件的偏差進(jìn)行搜索定位。
當(dāng)執(zhí)行到SearchL指令時(shí),機(jī)器人在移動(dòng)過(guò)程中會(huì)監(jiān)控一個(gè)數(shù)字量輸入信號(hào)或持續(xù)變量。當(dāng)信號(hào)或持續(xù)變量的值變?yōu)樗柚禃r(shí),系統(tǒng)會(huì)立即讀取機(jī)器人當(dāng)前位置。
SearchL指令常見(jiàn)格式及指令參數(shù)詳細(xì)說(shuō)明如下圖所示,其中一些可變?cè)谔摂M仿真中未使用,這里不再過(guò)多介紹,更多指令內(nèi)容可以查閱《ABB機(jī)器人RAPID指令、函數(shù)和數(shù)據(jù)類(lèi)型技術(shù)參考手冊(cè)》。
機(jī)器人搜索到工件的當(dāng)前位置后,經(jīng)過(guò)一系列的坐標(biāo)變換得到工件的位置偏移值,然后再通過(guò)啟用使用已知坐標(biāo)系的程序位移指令PDispSet,對(duì)弧焊焊接程序統(tǒng)一進(jìn)行偏移補(bǔ)償,這樣就能夠讓機(jī)器人準(zhǔn)確地定位到焊接起始點(diǎn),并對(duì)焊道進(jìn)行焊接。
PDispSet指令(Program Displacement Set)用于定義和啟用程序位移(使用已知坐標(biāo)系),本質(zhì)上它是使用已知的坐標(biāo)偏移值對(duì)機(jī)器人當(dāng)前使用的工件坐標(biāo)系進(jìn)行偏移,在運(yùn)動(dòng)學(xué)中相當(dāng)于對(duì)機(jī)器人當(dāng)前工件坐標(biāo)系的右乘,PDispSet指令常見(jiàn)格式及指令參數(shù)詳細(xì)說(shuō)明如下圖所示。
值得注意的是在同一時(shí)間,僅能啟用一個(gè)程序位移。使用PDispSet,無(wú)法相互疊加程序位移。并且當(dāng)出現(xiàn)使用重啟模式重置RAPID、加載新例行程序或一個(gè)新模塊、從起點(diǎn)開(kāi)始執(zhí)行程序、將程序指針移動(dòng)到main、將程序指針移動(dòng)到子程序、移動(dòng)程序指針造成執(zhí)行順序丟失這些情況中的任意一種時(shí),程序位移將自動(dòng)重置。
在程序偏移結(jié)束位置需要使用停用程序位移指令PDispOff,該指令沒(méi)有指令參數(shù),直接添加即可。PDispSet指令與PDispOff指令必須成對(duì)使用,單獨(dú)使用任何一條指令都會(huì)出現(xiàn)意想不到的錯(cuò)誤。
機(jī)器人起始點(diǎn)接觸尋位程序編寫(xiě)根據(jù)實(shí)際需求編寫(xiě)機(jī)器人工件起始點(diǎn)接觸尋位子程序,使用SearchL指令進(jìn)行工件位置搜索時(shí),需要預(yù)留出一定的搜索距離,即從搜索起始點(diǎn)到搜索結(jié)束點(diǎn)之間要有足夠的搜索距離。本案例中的搜索距離為120mm,即以焊絲與工件接觸的平面為基準(zhǔn),機(jī)器人能夠搜索到的偏差為±60mm。當(dāng)然,實(shí)際生產(chǎn)中的工件位置偏差并不會(huì)這么大,這里只是為了增強(qiáng)仿真效果。編寫(xiě)好的機(jī)器人程序及其程序說(shuō)明如下圖所示。
完成的機(jī)器人程序代碼如下所示。
MODULE Module1TASK PERS seamdata seam1:=[1,0.5,[0,0,0,0,0,0,0,0,0],0,0,0,0,0,[0,0,0,0,0,0,0,0,0],0,0,[0,0,0,0,0,0,0,0,0],0,0,[0,0,0,0,0,0,0,0,0],0.5];TASK PERS welddata weld1:=[7,0,[0,0,28,0,0,160,0,0,0],[0,0,0,0,0,0,0,0,0]];CONST robtarget p10:=[[960.00,-300.00,520.00],[0.382683,-1.95429E-8,-0.92388,-4.24699E-9],[-1,-1,-1,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];CONST robtarget p20:=[[960.00,300.00,520.00],[0.382683,-1.95372E-8,-0.92388,1.49809E-9],[0,0,0,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];CONST robtarget p30:=[[980.00,300.00,540.00],[0.382683,1.02466E-8,-0.92388,2.40946E-8],[0,0,0,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];CONST robtarget p40:=[[980.00,-300.00,540.00],[0.382683,-4.94899E-8,-0.92388,-5.11307E-9],[-1,-1,-1,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];CONST robtarget p50:=[[1248.42,0.00,953.07],[0.199804,4.77463E-9,0.979836,5.3919E-9],[0,0,0,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];TASK PERS weavedata weave1:=[1,0,2,4,0,0,0,0,0,0,0,0,0,0,0];CONST robtarget p70:=[[900.00,0.00,697.33],[0.382683,-2.19348E-8,-0.92388,-5.65192E-9],[0,0,0,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];CONST robtarget p60:=[[1020.00,0.00,697.33],[0.382683,-2.26126E-8,-0.92388,-5.82655E-9],[0,0,0,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];CONST robtarget p90:=[[1020.00,-360.00,508.95],[0.24321,0.0885211,-0.907673,-0.330366],[-1,0,-1,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];CONST robtarget p80:=[[1020.00,-360.00,697.33],[0.382683,-6.65062E-8,-0.92388,-1.89024E-8],[-1,-1,-1,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];CONST robtarget p100:=[[1020.00,-240.00,508.95],[0.24321,0.088521,-0.907673,-0.330366],[-1,0,-1,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];CONST robtarget p110:=[[1020.00,-330.00,588.95],[0.258818,-4.11868E-7,-0.965926,3.61595E-9],[-1,0,-1,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];VAR robtarget pTouchX:=[[1248.42,0.00,860.00],[0.199796,3.60641E-9,0.979838,4.07258E-9],[0,0,0,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]]; VAR robtarget pTouchY:=[[1248.42,0.00,860.00],[0.199796,3.60641E-9,0.979838,4.07258E-9],[0,0,0,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];CONST robtarget pWeldPoes:=[[960.00,-300.00,520.00],[0.382683,-3.86793E-8,-0.92388,-9.17784E-9],[-1,-1,-1,0],[9E+9,9E+9,9E+9,9E+9,9E+9,9E+9]];PERS pose pose1:=[[-0.307556,0.126984,0],[1,0,0,0]];PROC main() SearchStartPos; PDispSet pose1; MoveJ p40, v500, z50, Weldgun; ArcLStart p10, v500, seam1, weld1\\Weave:=weave1, fine, Weldgun; ArcLEnd p20, v500, seam1, weld1\\Weave:=weave1, fine, Weldgun; MoveL p30, v500, z50, Weldgun; PDispOff; MoveJ p50, v500, fine, Weldgun;ENDPROCPROC SearchStartPos() MoveJ p50, v500, fine, Weldgun; Set doTouch; MoveJ p60, v500, z50, Weldgun; SearchL\\Stop, diTouch, pTouchX, p70, v20, Weldgun; MoveL p60, v200, z50, Weldgun; pose1.trans.x:=pTouchX.trans.x-pWeldPoes.trans.x; MoveJ p80, v500, z50, Weldgun; MoveJ p90, v500, z50, Weldgun; SearchL\\Stop, diTouch, pTouchY, p100, v20, Weldgun; MoveL p90, v200, z50, Weldgun; pose1.trans.y:=pTouchY.trans.y-pWeldPoes.trans.y; Reset doTouch; MoveJ p110, v500, z50, Weldgun;ENDPROCENDMODULE機(jī)器人仿真運(yùn)行
機(jī)器人程序全部示教完成后,就可以仿真運(yùn)行了。仿真運(yùn)行效果如下方動(dòng)態(tài)圖所示,可以看到機(jī)器人能夠搜索到工件的位置,并準(zhǔn)確找到焊接起始點(diǎn)。
The End
上一篇:RobotStudio軟件:ABB機(jī)器人弧焊焊接虛擬仿真實(shí)現(xiàn)方法
以上就是關(guān)于pos機(jī)復(fù)位鍵在哪,ABB機(jī)器人弧焊焊接起始點(diǎn)接觸尋位虛擬仿真方法的知識(shí),后面我們會(huì)繼續(xù)為大家整理關(guān)于pos機(jī)復(fù)位鍵在哪的知識(shí),希望能夠幫助到大家!
