爱普生机器人学习笔记01

SPEL语言:
1,标识符命令规则:英文字母+数字+下划线,英文字母开头,不区分大小写,不使用关键字,有最大字符数限制

2,注释使用单引号‘

3,语句用分号;隔开

4,运算符:+,-,*,/,**,=,>,<,>=,<=,<>,And,Mod,Not,Or,Xor,

5,进制:2机制(&B),10进制,16进制(&H)

6,数据类型:Boolean,Byte,Double,Int32,Integer,Real,String(需在变量名后面追加$,例:String mS$),UByte,UInt32,UShort,Long,Short

7,变量种类(变量的作用域)
Local 本地变量(在同一函数内使用的变量)

Function main
Integer i
……..
Fend

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

Integer m_ I
Function main

……..
Fend
Global 整体变量(在同一设计内使用的变量)

Global Integer g_ I
Function main
……..
Fend

8,动作命令
PTP动作:机械手通过计算以最短的路径到达目标位置的动作指令,无法预测轨迹
Jump
Go
CP动作:按照规定的轨迹动作到目标位置的指令
Move
Arc,Arc3
6轴机械手专用动作指令(PTP+CP)
Jump3,Jump3CP

9,Jump:根据门型进行PTP动作
格式:Jump 目标坐标
例子:Jump P2
爱普生机器人学习笔记01_第1张图片

10,Go 全轴同时PTP动作,全轴从当前点向目标点进行插补
格式:Go 目标坐标
例子:Go P2

11,Move 手臂从现在位置直线动作轨迹移动到目标位置。全部关节同时动作,同时停止(直线插补)
例子:Move P2
注:Move与Go的区别:注重轨迹控制时用Move,注重到目标点的后机械手臂到达姿势用Go

12,Arc,Arc3 手臂从现在位置以圆弧动作轨迹向目标位置移动,(圆弧插补)
Arc,XY平面中进行圆弧插补动作
Arc3,在XYZ三维空间进行圆弧插补动作
注:一旦Move,Arc运动轨迹超过允许的动作范围,机械手会突然停止,造成伺服点击冲撞

13,Jump3,三维空间的门型动作
Jump3 退避坐标(当前位置之上的退避点),接近目标点坐标(目标位置之上的接近点),目标坐标(动作到达的目标坐标)
Jump3CP 退避坐标,接近目标点坐标,目标坐标

14,动作描述
14-1,Jump3是2个CP动作和1个PTP动作的组合。
Jump3CP是3个CP动作的组合。
14-2,三维空间的门型动作是由退避动作、跨越动作、接近动作组成的。
退避动作:从当前位置到退避坐标,为CP动作
跨越动作:从退避坐标到接近目标点坐标的跨越动作
(其中Jump3情况: PTP动作 Jump3CP的情况: CP动作)
接近动作:从接近目标点坐标到目标坐标动作,CP动作
爱普生机器人学习笔记01_第2张图片

15,速度设置
根据动作指令来进行速度设置
PTP指令对应速度指令,Speed,Accel
CP指令对应速度指令,SpeedS,AccelS

16,PTP对应速度设定:Speed指定,速度设定
格式:Speed s,[a],[b]
s,第一个参数,速度设定值(取值范围1-100)
a,第二个参数,第3轴上升速度设定值(缺省参数,只能在Jump指令中使用,取值范围1-100)
b,第三个参数,第3轴下降速度设定值(缺省参数,只能在Jump指令中使用,取值范围1-100)

使用例子:
Speed 80
Speed 80,80,50

17,PTP对应速度设定:Accel指令,加速度设定
格式:Accel a,b,[c],[d],[e],[f]
a,第一个参数,加速度设定值(取值范围1-100)
b,第二个参数,减速度设定值(取值范围1-100)
c,d,第三/四参数,第3轴上升加/减速设定值(缺省参数,只能在Jump指令中使用,取值范围1-100)
e,f, 第五/六参数,第3轴下降加/减速设定值(缺省参数,只能在Jump指令中使用,取值范围1-100)

使用例子:
Accel 80,80
Accel 100,100,20,60,60,20

18,Weight指令:修正PTP动作时的速度和加减速度的参数设定
格式: Weight 重量值(法兰盘+工件重量)
设定的比实际重量轻的话,加速值或减速值会被过剩设定,从而对机械手产生不好的影响。

19,CP对应速度设定:SpeedS指令,速度设定
格式:SpeedS s
s,速度设定值(1-2000,单位mm/s)
l例子:
SpeedS 500

20,CP对应速度设定:AccelS指令,加速度设定
格式:AccelS a,[b]
a,加速度设定值(0.1-25000,单位mm/s²)
b,减速度设定值(0.1-25000,单位mm/s²,缺省参数)
l例子:
AccelS 2000

21,Motor指令,机械手马达使能
格式: Motor On/Off
(默认值Off)
Motor On马达使能,全轴可动
Motor Off马达禁止,全轴不可动

22,Power指令,Power模式设定
格式:Power High/Low
高速运动,必须设定Power High
例子
Function main
Motor On
Power High
Speed 20
Accel 20,20
Do
Jump P1
Jump P2
Jump P3
Loop
Fend

23,Jump命令修饰符
格式Jump P2 Cn
例Jump P2 C0

爱普生机器人学习笔记01_第3张图片

24,Arch 指令,设定Jump命令拱形参数
格式:Arch 拱形编号 ,垂直上升距离,垂直下降距离
拱形编号 : 0~6
垂直上升距离 : 单位mm
垂直下降距离 : 单位mm
例子:
Arch 0,10,10

25,On指令,输出打开
格式:On {输出Bit编号|输出标签},[时间],[非同期指定]
输出Bit编号 : ON的时候的输出编号 输出标签 : 指定
时间 : 指定以秒为单位,最小有效位数0.01秒(可省略)
非同期指定 : 0或者1(可省略)
说明
打开指定的Bit编号输出。
时间被指定的时候,指定时间ON之后,要OFF。
执行命令之前,输出即使是ON的状态,指定时间之后也会OFF。
非指定时间是在时间指定的时候可以指定,机能如下所示。
指定1的情况: 指定时间ON之后要OFF,执行下一个命令。
指定0的情况: 与On命令开始执行的同时,执行下一个命令。
省略的情况: 和指定1的情况一样。
使用例子
On 1
On 1, 0.5, 0

26,Off指令,输出Bit关闭
格式 Off {输出Bit编号|输出标签}, [时间],[非同期指定]
输出Bit编号 : 使用可能的输出Bit编号
输出标签 : 指定输出标签
时间 : 指定以秒为单位,最小有效位数是0.01秒(可省略)
非同期指定 : 0或者1(可省略)
0 –输出Bit Off的同时执行下一个命令。
1 –默认值设定。指定时间OFF,实行下一个命令。
说明
指定时间之后也会ON。 非指定时间是在时间指定的时候可以指定,机能如下所示。
指定1的情况: 指定时间OFF之后要ON,执行下一个命令。
指定0的情况: 与OFF命令开始执行的同时,执行下一个命令。
省略的情况: 和指定1的情况一样。
例子
Off 1
Off 1, 0.5, 0

27,Out指令(输出1个字节(8Bit)输出数据 )
格式Out 端口编号,输出数据
端口编号 : 使用可能的输出Bit构成一组
输出数据 : 用端口编号所指定的组的输出模式
说明
端口编号和输出数据的组合,8个输出Bit同时设定。输出Bit8个成1组。
首先用端口编号指定组,然后以输出数据参数来指定特定输出模式。 输出数据参数按以下任意指定。
10进制(0~255)
16进制(&H0~&HFF)
2进制(&B0~&B11111111)
端口编号对应以下Bit编号。
端口编号 Bit编号
0 0-7
1 8-15
2 16-23
… …
例子
Out 0, 0 ’ 0~7Bit全部Off
Out 0, 255 ’ 0~7Bit全部On
Out 0, 100 ’ 2,5,6 Bit

你可能感兴趣的:(机器人学习笔记)