文章:机哥教你,如何编写Fanuc机器人程序!

所有者:TerryWang(呢称); 发布时间:2019-06-02 10:51:58; 更新时间:2023-05-14 18:50:47

阅读所需积分:0; 

简介:Robot 为自动化设备,但在自动化运转之前,必须先告诉Robot 要自动完成哪些动作,透过「撰写Robot 程序」可达到此目的。 Robot 程序主要由「动作指令」构成,只要熟悉手动操作Robot 的方式,将Robot 移动到欲记錄的位置,即可在「教点」的同时完成动作指令与Robot 程序。 这样的方式有点像是用摄影机先把手动操作,Robot 的动作拍下來

Robot 为自动化设备,但在自动化运转之前,必须先告诉Robot 要自动完成哪些动作,透过「撰写Robot 程序」可达到此目的。

Robot 程序主要由「动作指令」构成,只要熟悉手动操作Robot 的方式,将Robot 移动到欲记錄的位置,即可在「教点」的同时完成动作指令与Robot 程序。

这样的方式有点像是用摄影机先把手动操作,Robot 的动作拍下來,然后再拿來重复播放一样。

拍摄动作就是「教点」与「写程序」,重复播放就是自动化运转。

本单元将介绍如何撰写简单的Robot 程序。

一、建立新程序(CREATE)

与许多计算机软件一样,首先需要「开新档案」,建立一个新的Robot 程序。

按下进入Robot 程序选择一览表。



此时功能应显示为CREATE,若不是,请按切F1~F5的功能键至下一列,即可出现CREATE。

上图画面中,的右方有「>」符号,代表F1~F5 功能键有其他功能可供换。按下CREATE 以建立一个新的Robot程序,此时显示以下画面等待输入程序名称:

程序名称有以下限制:

1. 不可与其他已存在的程序名称相同。

2. 由英文大写字母、數字、_(底线)组成。

3. 共1~8 个字符。

4. 第1个字必须是英文字母。

5. 中间不可有空格。

请先将教示盘的开关切换到ON的位置,程序名称输入完成请按兩次,进入程序编辑画面。

出现此画面代表新程序建立完成。


二、点位教导(Teaching)

此时功能应显示为POINT,若不是,请按切换F1~F5 的功能键至下一列,即可出POINT。

切换到手动模式,将Robot 手动移动到需求的位置。按下POINT,将出现4 个选项。

虽然这些选项各有其不同意义,但目前请任意选其中一个,例如选


即可记錄现在Robot 的位置,并同时撰写一行动作指令。如上图。接下來继续手动移动Robot 到下一个位置,按下POINT,即可记錄第2 个位置,并撰写第2行动作指令。POINT 代表上述4 个选项中,沿用上次选择的选项。如此重复进行每一个位置的点位教导,即可完成如下的程序。

此程序会使Robot 执行如下的动作,从Robot现在位置移动到第1 个记錄位置,然后移动到第2个记錄位置,再移动到第3 个记錄位置。

三、手动测试

我们可以在撰写Robot 程序的过程中,随时手动测试此程序。(不一定要整个程序完成后才测试)基于安全的考量,建议测试时将Robot 总速度Override 放慢,或切换到T1 慢速教导模式。测试时请先进行STEP 单段狀态测试,按下键可切换狀态:

接着把光标移到程序第一行,也就是行号「1」为反白。按下,即可进行单段测试,

也就是Robot 程序每次只执行一行。所谓的是指: 按着不放, 单击放开,即开始执行程序动作,此时程序会进入「运转中」的狀态。

程序执行完毕时,即使不放开,动作也会停止。

若程序未执行完成就放开,则动作暂停,程序进入PAUSED「暂停狀态」。

只单段执行完某行程序,也会进入「暂停狀态」。暂停狀态下,再次按下即可继续执行程序,例如把未完成的该行程序动作做完,或者继续下一行程序。程序全部执行完成后,就不再出现暂停狀态,而是呈现ABORTED「已终止狀态」。

STEP 单段狀态测试没有问题的话,按键切换为連续狀态,重新测试此程序連续动作。

若連续测试也没有问题,则可以将Robot 总速度Override 调整为自动生产时需要的速度,并切换到T2 全速教导模式,继续测试。

四、动作指令之說明

接下來详细說明所谓动作指令的意义。动作指令除了程序行号之外分为四个部分:

动作型式有下列三种:

  •   J Joint 关节动作

  •   L Linear 直线动作

  •   C Circular 圆弧动作

关节动作J是指,藉由6个关节各自独立转动,6轴同时开始并同时停止动作,以到达目标位置的姿势,因此其路径通常不是直线。

直线动作L 是指,工具中心点TCP从起始位置到目标位置的路径强制为直线,除了瞬间的加速度、减速度之外,基本上是等速运动。另一种情况也可以使用直线动作L,如下图所

示。

在此例中Robot 并未产生任何直线路径,TCP 维持在原來位置,仅将Robot 末端工具绕着

TCP 做旋转。需要注意的是这种情况可使用不同的速度单位deg/sec(每秒多少度),來决定Robot 的等速旋转角速度。稍后我们会再详细介绍「速度」。

圆弧动作C是指,工具中心点TCP 从起始位置,中途绕到「经过位置」,到目标位置的路径强制为圆弧。所以点位教导时要多教一个「经过位置」。除了切割用途之外,圆弧动作C 比较少用。

如需更详细的资料,请參阅FANUC 原厂手册,或洽询发那科工程师。

P[1]指的是此Robot 程序中的第1 个教导位置,同样的道理,第2 个教导位置就是P[2]、第3个教导位置就是P[3]。但是P[1]不一定要在第1 行程序裡,而且在不同行中,P[1]也可以重复出现,这样可以移动到同样的位置上。在一个动作指令中,只记錄了一个教导位置

(圆弧动作C 除外),这表示动作指令储存的是「位置」而非「路径」,例如:

1: J P[1] 100% FINE

这个动作指令,指的是从「现在位置」(或上个动作指令的结束位置)移动到P[1]。

所以 Robot 在不同的位置上执行这一行程序时,会显现不同的动作路径。

动作指令的第3部份是速度,当动作形式为J的时候,速度通常是以%來表示。100%代表最快的速度,若动作不需要太快,可将速度降为50%、20%、5%、1%等速度,可接受1~100 的整數%。

当动作形式为L或C 的时候,速度通常是以mm/sec(每秒多少公厘)來表示。最高速度各机种略有不同,但绝大部分机种至少可输入2000 mm/sec之速度。可依需求输入1 以上的整數速度值。

动作指令的第4部份是連续性,基本上有「FINE 精确」、「CNT連续」兩种选项。FINE 指的是此动作指令会精确停顿在此教导位置上,相对地CNT 则会以連续动作为优先,不一定精确经过该点,如下图所示。

此图是显示以下几种不同情况的路径:

L P[2] 500 mm/sec FINE

L P[2] 500 mm/sec CNT0

L P[2] 500 mm/sec CNT50

L P[2] 500 mm/sec CNT100

FINE 的路径在P[2]会有明显的停顿,且精确停留在P[2]的教导点位上。

CNT0 虽然与FINE 的路径相同,但在P[2]不会停顿,继续往P[3]移动。

CNT100 是最远離P[2]的路径,但动作的連续性最佳,

而CNT50 则是介于CNT0、CNT100 中间的路径。

CNT 值可输入0~100 的整數。

基本上像是夹取位置、加工位置、放置位置这种精确性高的点位,建议使用FINE。而路径的经过位置、附近无干涉碰撞的疑虑时,则建议用CNT,以增加Robot 动作的平顺度,同时循环周期时间(Cycle Time)也会略快一些。以下是几个动作指令的范例与意义。

1: J P[1] 100% FINE

精确地以关节动作100%的速度

由现在位置移动到P[1]

2: L P[2] 500mm/sec CNT100

优先考虑100%

連续性以直线路径500mm/sec

的速度由前一位置移动到P[2]

3: L P[3] 500mm/sec FINE

精确地以直线路径500mm/sec 的速度

由前一位置移动到P[3]

另外动作指令的后面也可以追加「附加命令」,例如加速度的控制等。

五、动作指令的修改

动作指令的内容可以修改。若要变更數值,只要将光标移动到數值上,直接输入數字,按

下即可。

例如将J P[1] 100% FINE 的速度100%变更为50%,只要把光标移动到數值100 处,按下,

,即可变更。同样的方式也可以修改P[ ]的位置号码、CNT 值等。

此外文字内容也可以修改,只要将光标移动到文字上,按[CHOICE]选择即可。

例如将J P[1] 100% FINE 的动作型式的J并更为L,只要将光标移动到J 处……




并选择第2 个选项Linear,即可变更。同样的方式也可以修改速度单位、連续性等。

前面「点位教导」的部分提到,POINT有4 个默认选项。


此时按下ED_DEF 则可修改此预设选项的形式,修改完成后再按DONE,即可完成。


六、点位修正(TOUCHUP)

已经完成的动作指令如需要修改点位,可依以下方式进行。

先将光标移动到欲修正点位的行号上,接着将Robot 手动移动到新位置,按下

TOUCHUP 即可。若不是显示TOUCHUP,请按切

换F1~F5 的功能键至下一列。


如上图,当P[1]前面出现「@」的符号时,表示现在Robot 的位置与P[1]相同。(或者非常接近P[1])

七、加入批注

前述的点位教导均是以「自动编号」方式表示不同的位置,当程序中有许多点位时,将难以理解该位置的意义,此时可将位置加入批注。

将光标移动到位置编号上,按,此时可输入批注内容。


如我们可使用P[1:Ready]來表示P[1]是准备位置、P[2:Get]來表示P[2]是抓取位置……等。




个人图书馆

http://www.360doc.com/content/17/0501/15/38841796_650064379.shtml