爱普生机器人课件

爱普生机器人课件
爱普生机器人课件

Local : 局部变量(用在同一Function内使用的变量)

Module : 模块变量(在同一程序内使用的变量)

Global : 全局变量(在同一项目内使用的变量

String 字符

全局变量global integer i、、、、、、byte、、、、、

掉电保持global preserve integer i

Move是在直线轨道上移动机械臂。

Jump 首先将机器人的夹具末端抬起到LimZ 值,然后水平移动机械臂,在达到目标坐标的上空时开始下降动作。

输出 On i,0.2 脉冲

虚拟输入 setSw i, On

输入 sw(1)=1

Cz(p1)

Speed 功能用于设定PTP动作速度的百分比

格式:Speed s,[a,b]

说明:s 速度设定值;a 第三轴上升速度设定值;b 第三轴下降速度设定值。

Accel 功能用于设定PTP动作加减速度的百分比。

格式:Accel a,b,[c,d,e,f]

说明:a/b 加/减速度设定值;c/d 第三轴上升加/减速度设定值;

e/f 第三轴下降加/减速度设定值

2. Go XY(50, 400, 0, 0) ′机械手动作到X=50,Y=400,Z=0,U=0

3. Go P1+X(50) ′机械手动作到P1点X坐标值偏移量为+50的位置

4. Go P1:X(50) ′机械手动作到P1点对应X坐标值为50的位置

Wait Oport(5) 返回指定的输出位的状态的函数

并行执行!!

与Jump 命令一起使用并行处理。在第3 关节结束上升移动、而第1、第2、第4 关节开始移动的阶段,打开输出位1。输出位1 将在Jump 动作完成50%的阶段再次关闭。

Function test

Jump P1 !D0; On 1; D50; Off 1!

Fend

If then

格式

(1) If 条件表达式Then

语句T1

[ElseIf 条件表达式Then]

语句T1.

[Else]

语句F1.

EndIf

(2) If 条件表达式Then 语句T1 [;语句T2...] [Else 语句F1 [;语句F2...]]

条件表达式返回真伪值(True/False 的值)的有效条件表达式。真(True)时返回“0”以外的

数值,伪(False)时返回“0”。(请参阅下述条件表达式示例。)

语句T1 条件表达式的值为真(True)时,也就是满足条件时执行语句。(可以将多个语句记述在If...Then...Else 形式的区段中。)

语句F1 条件表达式的值为伪(False)时,也就是满足条件时执行语句。(可以将多个

语句记述在If...Then...Else 形式的区段中。)

条件表达式中使用True 时

常数True 的值是-1,由于是Boolean 型,在与其他型变量的比较条件中使用时需要注意。Function main

Integer i

i = 3

If i = True Then

Print "i=TRUE"

EndIf

Fend

Do loop

Integer i

Do

i = i + 1

' Wait MemSw(1) = On

Print "okg", i

Wait 1

Loop

Do While i < 8

Print "i=", i

i = i + 1

Speed 8

Go ss

Speed 12

Go yuan

Loop

格式

Do [{ While | Until } 条件表达式]

[语句]

[Exit Do]

[语句]

Loop

并且或者,使用下述格式。

Do

[Exit Do]

[语句]

Loop [{ While | Until } 条件表达式]

Do Loop 语句格式中有条件表达式和语句。

条件表达式表示True 或False 的数字或字符串表达式。当条件表达式为空(Null)时,条件将

作为False 来处理。可省略。

语句在条件一致期间或者在条件一致为止在条件一致期间或者到条件一致时为止,反复

执行1 个以上的语句。

说明

作为退出Do...Loop 的另一种方法,在Do...Loop 中可以随时随地插入Exit Do 语句。Exit Do 常在用

于评价If...Then 等几个条件之后使用。如果在If...Then 中使用Exit Do 语句,则将控制移至Loop 的

下一语句。

如果在嵌套的Do...Loop 语句中使用,则Exit Do 将控制移至发生循环的上1 级循环。

参阅

For...Next、Select...Send

Do 使用示例

Do While Not Lof(1)

Line Input #1, tLine$

Print tLine$

Loop

换臂

Hand P0, Lefty

Hand pick, Righty

子程序跳转指令

GoSub 使用示例

下例为使用GoSub 命令转至指定标签并执行几个I/O 命令后进行返回的简单示例。Function main

Integer var1, var2

GoSub checkio '使用标签执行GoSub

On 1

On 2

Exit Function

checkio: '子例程的起始位置

var1 = In(0)

var2 = In(1)

If var1 = 1 And var2 = 1 Then

On 1

Else

Off 1

EndIf

Return '子例程的结束位置

Fend

跳转指令

GoTo 使用示例

下例为使用GoTo 命令将控制转至行标签的简单的程序例。

Function main

If Sw(1) = Off Then

GoTo mainAbort

EndIf

Print "Input 1 was On, continuing cycle"

.

.

Exit Function

mainAbort:

Print "Input 1 was OFF, cycle aborted!"

Fend

Halt 使用示例

下例为通过Xqt 启动名为“flicker”的函数后,通过Halt 暂停,然后通过Resume 恢复的示例。Function main

Xqt flicker '执行flicker 任务

Do

Wait 3 '执行flicke3 秒钟

Halt flicker

Wait 3 '暂停flicker 任务3 秒钟

Resume flicker

Loop

Fend

Function flicker

Do

On 1

Wait 0.2

Off 1

Wait 0.2

Loop

Fend

调用子程序

Call 使用示例

Function main

Call InitRobot

Fend

Function InitRobot

If Motor = Off Then

Motor On

EndIf

Power High

Speed 50

Accel 75, 75

Fend

选择指令

用于根据表达式的值将控制移交给几个语句中的某个语句。

格式

Select 式

Case 项目

语句

[Case 项目

语句]

[Default

语句]

Send

参数

式指定数值或字符串表达式。

项目指定类型与表达式一致的数值或字符串表达式。

语句指定1 个或多个有效的SPEL+语句或多语句。

说明

如果Case 语句项目中存在与Select 语句表达式结果一致的内容,则执行Case 语句后的语句群。执

行之后,程序控制将移交给Send 语句的后续语句。

如果Case 语句项目中不存在与Select 语句表达式结果一致的内容,则执行Default 语句,并将程序

控制移交给Send 语句的后续语句。

如果Case 语句项目中没有与Select 语句表达式结果一致的内容,并且省略Default,则不进行任何执

行,将程序控制移交给Send 语句的下一语句。

可在Select 语句表达式和CASE 语句项目中指定常数、变量以及使用And、Or、Xor 等的逻辑运算

符。

参阅

If…Then…Else

Select 使用示例

如下所示为简单的Select...Send 示例。

Function Main

Integer I

For i = 0 To 10

Select I

Case 0

Off 1;On 2;Jump P1

Case 3

On 1;Off 2

Jump P2;Move P3;On 3

Case 7

On 4

Default

On 7

Send

Next

Fend

WAIT等待

Wait Sw(0) = On

'在等待60.5 秒钟之后继续执行

Wait 60.5

'等待输入0 变为OFF、输入1 变为ON 状态

Wait Sw(0) = Off And Sw(1) = On

'等待存储位0 变为ON 或存储位1 变为ON 状态

Wait MemSw(0) = On Or MemSw(1) = On

'等待1 秒钟,然后将输出1 设为ON

Wait 1; On 1

'在输入端口0 的低3 位变为1 之前进行待机

Wait In(0) Mask 7 = 1

'等待全局Integer 型变量giCounter 的值超过10

Wait giCounter > 10

'在全局Long 型变量glCheck 的值到达30000 之前待机10 秒钟

Wait glCheck = 30000, 10

Xqt

用于执行由函数名指定的程序并生成任务。

Xqt [任务编号,] 函数名[(自变量列表)] [, Normal | NoPause | NoEmgAbort]

参数

任务编号以1~32 的整数指定要执行任务的任务编号。可省略。

为后台任务时,指定65~80 的整数。

函数名指定要执行的函数名。

自变量列表指定调用时赋予函数的自变量列表。存在多个自变量时,请利用逗号进行分隔。可省略。

任务类型可省略。通常省略。

为后台任务时,任务类型指定没有意义。

Normal 生成通常的任务。

NoPause 发生Pause 语句或Pause 输入信号时,以及要在安全门打开的状态下生成不暂停的任务时进行指定。

NoEmgAbort 紧急停止时以及要在发生错误时生成继续处理的任务时指定。

说明

Xqt 用于开始指定的函数并立即进行返回。

通常无需任务编号参数。如果省略任务编号,SPEL+则自动在函数上附加任务编号,因此,用户不

必管理任务编号。

注意

任务类型

通过按任务类型指定NoPause 或NoEmgAbort,可生成监视控制器全体的任务。

但强烈建议在充分理解SPEL+任务的动作和特殊任务的限制事项之后使用这些任务。EPSON RC+7.0 用户指南“特殊任务”中记载了有关特殊任务的详细说明。

后台任务

通过后台任务执行Xqt 命令时,生成的任务也变为后台任务。

通过后台任务执行主函数时,请使用StartMain 命令。

EPSON RC+7.0 用户指南“特殊任务”中记载了有关后台任务的详细说明。

Xqt 使用示例

Function main

Xqt flash '开始任务flash

Xqt Cycle '开始任务Cycle

Do

Wait 3 '执行任务flash 3 秒钟

Halt flash '暂停任务

Wait 3

Resume flash '重新开始任务

Loop

Fend

Function Cycle

Integer i

For i = 1 To 10

Jump pick

On 1

Jump place

Off 1

Wait .2

Next i

Fend

Function flash

Do

On 2

Wait 0.2

Off 2

Wait 0.2

Loop

Fend

For

For i = 0 To 100

Print #fileNum, i

Next i

Cls

清除EPSON RC+ 7.0 的Run 窗口、操作员窗口或者命令窗口的文本区域。

清除TP 的打印面板。

格式

(1) Cls #装置ID

(2) Cls

参数

装置ID 21 RC+

24 TP

省略时,显示装置将成为对象。

说明

如果从EPSON RC+ 7.0 的命令窗口的程序执行Cls,将清除命令窗口的文本区域。如果在程序中执行,将清除由装置ID 指定的装置的画面。

如果省略装置ID,将清除显示装置的画面。

Cls 使用示例

如果从Run 窗口或操作员窗口执行次程序例,在执行Cls 后将清除文本区域。Function main

Integer i

Do

For i = 1 To 10

Print i

Wait 3

Cls

Loop

Fend

Pallet 矩阵

Function Main

Integer index

Pallet 1, P20, P21, P22, 5, 3

For index = 1 To 15

move Pallet(1, index)

Go Here -Z(56)

Wait 0.2

Go Here +Z(56)

Next

Fend

画圆

Function ArcTest

Go P100

Arc P101, P102

Fend

Arc 用于在XY 平面上以圆弧插补动作将机械臂从当前位置移至指定位置。Arc3 用于在三维平面上以圆弧插补动作将机械臂从当前位置移至指定位置。

爱普生机器人原点校准方法

E P S O N机械手脉冲零点校正 一、工具: 钢板尺(或卡尺)、EPSON机械手编程软件RC+5.0等。 二、应用场合: 1.当机械手和驱动器的型号及序列号不一致时,即机械手和不同序列号的控制器混搭使用,需要重新校准机械手的位置(重新校准机械手脉冲零位)。 2.更换马达等其他问题。 三、机械手脉冲零点位置校正: 具体调节步骤如下: 1.拆除机械手丝杆上夹具,同时保证机械手有足够运动空间,用RC+5.0软件连接机械手LS3,在软件中打开机器人管理器,如下图所示: .点击“motoron”按钮,即给机械手上电;接着点击“释放所有”按钮,即释放机械手4个伺服马达刹车;具体如图: 2.点击“motoron”按钮,即给机械手上电;接着点击“释放所有”按钮,即释放机械手4个伺服马达刹车;具体如图: 3.手动将机械手调整到脉冲零点位置;如下图所示:

+Z方向 +X方向 +Y方向 具体细节: 1)因为刹车释放后,手动可以拖动J1与J2轴,手动拖动使J1与J2轴如下图所示:2)同理,手动移动丝杆使3、4轴如图所示:(U轴0位,丝杆端面对应外套上的指针;丝杆底部端面到机体底部为75mm,用钢尺量,相差在2mm内可接受。) 3.保持机械手目前手动零点位置不动,先点击“锁定所有”按钮,即锁定机械手伺服马达刹车;接着点击“motoroff”按钮,即关闭机械手;具体如图: 4.保持机械手目前手动零点位置不动,手动将机械手内编码器重置,具体是在软件中打开命令窗口(ctrl+M)中输入: Encreset1按回车 Encreset2按回车 Encreset3按回车

Encreset3,4按回车 如图: 5.保持机械手目前手动零点位置不动,重启控制器,具体操作如图: 6.保持机械手目前手动零点位置不动,在命令窗口中输入Calpls(脉冲零点位置的正确脉冲值)回车,具体如下: Calpls0,0,0,0回车.如下图: 8.保持机械手目前手动零点位置不动,保存各个轴当前的脉冲值,具体是在软件中打开命令窗口(ctrl+M)中输入: calib1按回车1轴 calib2按回车2轴 calib3按回车3轴 calib3,4按回车4轴 (如只需校第一轴,calib1即可,以上将4个轴都校正) 机械手脉冲零点的脉冲保存完成,效正基本完成。 7.保持机械手目前手动零点位置不动,打开机器人管理器,点击motoron后 ,在步进示教可看到如下界面:

爱普生机器人软件安装及使用教程

爱普生机器人软件安装 及使用教程 Company Document number:WUUT-WUUY-WBBGB-BWYTT-1982GT

爱普生机器人软件安装及使用教程一、EPSONRC+开发软件的安装 打开EpsonRC50文件夹,双击开始安装。 出现上面显示的界面后,按按钮。 出现上面显示的界面后,再接着按按钮。 目标驱动器不必选择,直接按按钮。 上面可勾选部分为手册和模拟器实例,可以按默认安装,直接按按钮进行到安装的下一步。 按按钮选择继续安装。 会出现下面的安装进度界面,大约需要等待几分钟,整个EpsonRC50软件安装完成。 安装完成后,将弹出下面的窗口。按按钮完成软件的安装。 此时,在用户的桌面上会出现下面两个图标 前一个图标用于软件的开发和调试,后面的图标用于对工作流程的监视。 二、IP地址的设置 用普通网线连接机器人和开发用电脑。 打开本地连接,弹出“本地连接属性”页面。

双击项,将打开Internet协议(TCP/IP)属性页面,修改IP地址等项为下图的值。按键。完成IP的设定。 三、EPSONRC+软件使用 双击图标,启动EPSONRC+软件。 1.网络通讯的设置 在EPSONRC+软件菜单中点击“设置”菜单项,单击选择 项目。将弹出下面“电脑与控制器通信”页面。 点击按钮。 选择选项,按键,完成添加网络通讯功能。 按钮,完成软件中连接IP的设置。设置完成后页面显示为下图。 检查网线连接是否正常,正常则单击新添加的Ethernet项,按按钮,弹出下面页面。 选项表示电脑只作为监视器使用,不能进行程序的编制、修改等操作,不能对机器人控制点进行示教,也不能对外部I/O进行控制。不影响已经存在的网络连接。

爱普生机器人课件

Local : 局部变量(用在同一Function内使用的变量) Module : 模块变量(在同一程序内使用的变量) Global : 全局变量(在同一项目内使用的变量 String 字符 全局变量global integer i、、、、、、byte、、、、、 掉电保持global preserve integer i Move是在直线轨道上移动机械臂。 Jump 首先将机器人的夹具末端抬起到LimZ 值,然后水平移动机械臂,在达到目标坐标的上空时开始下降动作。 输出 On i,0.2 脉冲 虚拟输入 setSw i, On 输入 sw(1)=1 Cz(p1) Speed 功能用于设定PTP动作速度的百分比 格式:Speed s,[a,b] 说明:s 速度设定值;a 第三轴上升速度设定值;b 第三轴下降速度设定值。 Accel 功能用于设定PTP动作加减速度的百分比。 格式:Accel a,b,[c,d,e,f] 说明:a/b 加/减速度设定值;c/d 第三轴上升加/减速度设定值; e/f 第三轴下降加/减速度设定值 2. Go XY(50, 400, 0, 0) ′机械手动作到X=50,Y=400,Z=0,U=0 3. Go P1+X(50) ′机械手动作到P1点X坐标值偏移量为+50的位置 4. Go P1:X(50) ′机械手动作到P1点对应X坐标值为50的位置 Wait Oport(5) 返回指定的输出位的状态的函数 并行执行!! 与Jump 命令一起使用并行处理。在第3 关节结束上升移动、而第1、第2、第4 关节开始移动的阶段,打开输出位1。输出位1 将在Jump 动作完成50%的阶段再次关闭。 Function test Jump P1 !D0; On 1; D50; Off 1! Fend If then 格式 (1) If 条件表达式Then 语句T1 [ElseIf 条件表达式Then] 语句T1. [Else] 语句F1. EndIf (2) If 条件表达式Then 语句T1 [;语句T2...] [Else 语句F1 [;语句F2...]]

爱普生机器人原点校准方法

EPSON机械手脉冲零点校正 一、工具: 钢板尺(或卡尺)、EPSON机械手编程软件RC+5.0等。 二、应用场合: 1.当机械手和驱动器的型号及序列号不一致时,即机械手和不同序列号的控制器混搭使用,需要重新校准机械手的位置(重新校准机械手脉冲零位)。 2.更换马达等其他问题。 三、机械手脉冲零点位置校正: 具体调节步骤如下: 1.拆除机械手丝杆上夹具,同时保证机械手有足够运动空间,用RC+5.0软件连接机械手LS3,在软件中打开机器人管理器,如下图所示: .点击“motor on”按钮,即给机械手上电;接着点击“释放所有”按钮,即释放机械手4个伺服马达刹车;具体如图: 2.点击“motor on”按钮,即给机械手上电;接着点击“释放所有”按钮,即释放机械手4个伺服马达刹车;具体如图: 3.手动将机械手调整到脉冲零点位置;如下图所示:

+Z方向 +X方向 +Y方向 具体细节: 1)因为刹车释放后,手动可以拖动J1与J2轴,手动拖动使J1与J2轴如下图所示: 2)同理,手动移动丝杆使3、4轴如图所示:( U轴0位,丝杆端面对应外套上的指针;丝杆底部端面到机体底部为75mm,用钢尺量,相差在2mm内可接受。) 3.保持机械手目前手动零点位置不动,先点击“锁定所有”按钮,即锁定机械手伺服马达刹车;接着点击“motor off”按钮,即关闭机械手;具体如图: 4. 保持机械手目前手动零点位置不动,手动将机械手内编码器重置,具体是在软件中打开命令窗口(ctrl+M)中输入: Encreset 1 按回车 Encreset 2按回车 Encreset 3按回车 Encreset 3,4按回车 如图: 5. 保持机械手目前手动零点位置不动,重启控制器,具体操作如图: 6. 保持机械手目前手动零点位置不动,在命令窗口中输入Calpls(脉冲零点位置的正确脉冲值)回车,具体如下: Calpls 0,0,0,0 回车.如下图:

相关文档
最新文档