您好!欢迎光临工博士商城

爱普生机器人专营店

产品:22    
联系我们
您当前的位置:首页 » 新闻中心 » 爱普生机器人课件——爱普生机器人
产品分类
新闻中心
爱普生机器人课件——爱普生机器人
发布时间:2020-03-27        浏览次数:645        返回列表
 爱普生机器人课件——爱普生机器人

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

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

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

String   字符

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

掉电保持    global preserve integer   i

 

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

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

输出     On i0.2   脉冲

虚拟输入     setSw i, On

输入    sw1=1

Czp1

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

格式:Speed s[ab]

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

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

格式:Accel ab[cdef]

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

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

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

3. Go P1+X(50) ´机械手动作到P1X坐标值偏移量为+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...NextSelect...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 使用示例

<File1: MAIN.PRG>

Function main

Call InitRobot

Fend

<File2: INIT.PRG>

Function InitRobot

If Motor = Off Then

Motor On

EndIf

Power High

Speed 50

Accel 75, 75

Fend

 

 

选择指令

 

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

格式

selec

Case 项目

语句

[Case 项目

语句]

[Default

语句]

Send

参数

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

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

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

说明

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

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

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

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

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

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

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

符。

参阅

If…Then…Else

selec 使用示例

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

Function Main

Integer I

For i = 0 To 10

selec 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]

参数

任务编号 132 的整数指定要执行任务的任务编号。可省略。

为后台任务时,指定6580 的整数。

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

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

可省略。

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

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

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

Wait .2

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

Next 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 用于在三维平面上以圆弧插补动作将机械臂从当前位置移至指定位置。

更多信息请点击:爱普生机器人


分享到: 


 

联系热线:15900626417   联系人:周经理 联系地址:上海市嘉定区南翔镇众仁路399号B栋20层2007-2012

技术和报价服务:星期一至星期六8:00-22:00 爱普生机器人专营店