報名人數(shù)298782
資訊中心 > 課程相關(guān)資訊 > 機(jī)器人培訓(xùn) > 機(jī)器人培訓(xùn) >?如何創(chuàng)建帶參數(shù)例行程序(實用型)

如何創(chuàng)建帶參數(shù)例行程序(實用型)

時間:2021-02-05 14:08 來源:

今天智通機(jī)器人培訓(xùn)的小辮辮要帶你

 利用帶參數(shù)例行程序畫一個小圈圈 

把你圈住和我一起學(xué)習(xí) 

(●ˇ?ˇ●) 


坐穩(wěn)啦,小辮辮要帶你開車咯



<~嘟~嘟~嘟~>
在例行程序聲明中可以加入?yún)?shù),在調(diào)用該程序時需要輸入對應(yīng)參數(shù);


參數(shù)包括四種:

> 正常情況下,參數(shù)僅用作輸入,同時被視作程序變量,改變此變量,不會改變對應(yīng)參數(shù)的值;

> 若為INOUT(輸入輸出)參數(shù),對應(yīng)參數(shù)必須為變量或可變量;

> 若為VAR(變量)參數(shù),對應(yīng)參數(shù)必須為變量;

> 若為PERS(可變量)參數(shù),對應(yīng)參數(shù)必須為可變量;

INOUT(輸入輸出), VAR(變量), PERS(可變量)類型參數(shù),若在程序中進(jìn)行了修改,則等同于修改了參數(shù)本身;

> 若參數(shù)是可選的,在程序聲明的參數(shù)列表中可忽略??蛇x參數(shù)用反斜線(\)+參數(shù)表示,如下例子所示;

例1:PROC test1 (num Num_X \num Num_Y)

……

ENDPROC

> 兩個或多個可選參數(shù)之間可能會互相排斥,也就是說同一程序調(diào)用中只可能出現(xiàn)其中一個,這一情況通過在參數(shù)之間加豎線(|)表明,如下例子所示;

例1:PROC test2 (\num Num_Rx | num Num_Ry) 

……

ENDPROC

  好嘞,


 小辮辮都等不及了, 

讓我們一起直達(dá)神圣的高潮吧!


 利用帶參數(shù)例行程序畫一個小圈圈 

(1)新創(chuàng)建一個例行程序



(2)設(shè)定程序名稱(canshuCX),添加參數(shù)


(3)為該程序添加一個robtarget類型,模式為輸入/輸出的參數(shù)(注:此處畫圓是利用偏移指令搭配使用,所以只需一個robtarget型的輸入/輸出參數(shù)即可)

1)點擊 添加 → 添加參數(shù)



2)修改名稱為“Cir_Pos” → 確定



3)修改右邊數(shù)據(jù)



4)點擊num → 找到“robtarget”并選中 → 確定



<5)點擊 In → 輸入/輸出


6.這樣robtarget型的輸入/輸出參數(shù)就創(chuàng)建好嘞

嘟~嘟~>

(4)點擊確定



<~

(5)確保參數(shù)設(shè)定正確之后,點擊確定,這樣帶參數(shù)的例行程序就創(chuàng)建出來了


dd

(6)打開canshuCX程序,對其進(jìn)行編寫如下圖所示內(nèi)容:



(7)設(shè)定畫圓的起始點,如下:



(8)帶參數(shù)的例行程序必須是調(diào)用,使用ProcCall進(jìn)行調(diào)用,且需要輸入?yún)?shù),如下:



(9)本次案例程序
MODULE Module1

PERSrobtargetP_cir:=[[405.41,596.45,531.31],[0.390278,0.589646,-0.589646,0.390278],[0,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];

!聲明畫圓開始點        

PROC main()          !主程序             

canshuCX P_cir;    !調(diào)用帶參數(shù)例行程序      

ENDPROC            !程序結(jié)束語句       

PROC canshuCX(INOUTrobtarget Cir_Pos)     !帶參數(shù)例行程序              

MoveL Offs(Cir_Pos,0,0,160), v300,fine, MyTool;   !圓開始點上方位置              

MoveL Offs(Cir_Pos,0,0,0), v300,fine, MyTool;     !圓開始點位置              

MoveC Offs(Cir_Pos,-300,0,0),Offs(Cir_Pos,-300,300,0), v300, z0, MyTool;   !圓弧指令            

MoveC Offs(Cir_Pos,0,300,0),Offs(Cir_Pos,0,0,0), v300, z0, MyTool;!圓弧指令              

MoveL Offs(Cir_Pos,0,0,160), v300,fine, MyTool;   !圓開始點上方位置       

ENDPROC    !結(jié)束程序標(biāo)志符 

ENDMODULE 


好啦,關(guān)于 利用帶參數(shù)例行程序畫一個小圈圈 就到此結(jié)束啦 

(●ˇ?ˇ●)


看完本文后有以下任意情形之一的,可撥打智通熱線:0769-87078088,在線為您解答:
1.看不懂圖中的程序;

2.不懂圖中的程序如何在示教上編寫;

3.不懂RobotStudio軟件的使用;

4.不會機(jī)器人的基本操作;

5.完全看不懂。