远程RS232命令

远程启动

启动控制器的远程RS232功能。

EOT

1byte

EOT:&H04(&H为十六进制)

请求格式

STX

1byte

命令

1Byte

数据

变量

ETX

1Byte

BCC

1Byte

  • STX: &H02

  • ETX: &H03

  • BCC:发送和接收数据的校验和

    从该命令到ETX每字节的XOR值

远程命令 发送命令 数据 描述 输入接受条件(*1)
Login

'L'

&H4C

密码

通过密码验证

正确执行登录,并执行命令,直到退出

随时可用(*2)
Logout

'l'

&H6C

退出登录后,执行登录命令来启动远程RS232功能。

在任务执行期间退出会导致错误发生。

随时可用(*2)
Start

'G'

&H47

函数编号 (1 Byte)

执行指定编号的函数 (*3) (*11)

例如)执行‘main’

&H02&H47&H00&H03&H44

Auto开

Ready开

Error关

EStop关

Safeguard关

Stop

'Q'

&H51

停止所有任务和命令。 Auto开
Pause

'P'

&H50

暂停所有任务 (*4)

Auto开

Running开

Continue

'C'

&H43

继续暂停了的任务

Auto开

Paused开

Reset

'R'

&H52

复位紧急停止和错误。(*5)

Auto开

Ready开

SetMotorsOn

'M'

&H4D

机器人编号

(1 Byte)

打开机器人电机 (*6)(*7)

Auto开

Ready开

EStop关

Safeguard关

SetMotorsOff

'N'

&H4E

机器人编号

(1 Byte)

关闭机器人电机 (*7)

Auto开

Ready开

SetCurRobot

'Y'

&H59

机器人编号

(1 Byte)

选择机器人

Auto开

Ready开

GetCurRobot

'y'

&H79

获取当前的机器人编号

随时可用(*2)

Home

'H'

&H48

机器人编号

(1 Byte)

将机器人手臂移动到由用户定义的起始点位置上

Auto开

Ready开

Error关

EStop关

Safeguard关

GetIO

'i'

&H69

I/O位号

(2Byte)

获得指定的I/O位

例)获取I/O位1

&H02&H69&H0001&H03&H6B

随时可用(*2)
SetIO

'I'

&H49

[I/O位号] (2Byte)

[值] (1 Byte)

设置I/O指定位

&H01:打开此位

&H00:关闭此位

例)打开I/O位1

&H02&H49&H0001&H01&H03&H4A

Auto开

Ready开

GetIOByte

'b'

&H62

I/O位号

(1 Byte)

获得指定的I/O端口(8位)(*8)

例)获取I/O端口1

&H02&H62&H01&H03&H60

随时可用(*2)
SetIOByte

'B'

&H42

[I/O端口号] (1 Byte)

[值] (1 Byte)

设置I/O指定端口(8位)(*8)

例)设置&H0F到I/O端口1

&H02&H42&H01&H0F&H03&H4F

Auto开

Ready开

GetIOWord

'w'

&H77

I/O字

端口号

(1 Byte)

获得指定的I/O字端口(16位)(*8)

例)获取I/O字端口1

&H02&H77&H01&H03&H75

随时可用(*2)
SetIOWord

'W'

&H57

[I/O字

端口号]

(1 Byte)[值]

(2Byte)

设置字的值(16位)到I/O的指定字端口 (*8)

例)设置&H010F到I/O字端口1

&H02&H57&H01&H010F&H03&H5B

Auto开

Ready开

GetMemIO

'o'

&H6F

内存I/O

位号

(2 Byte)

获取指定的内存I/O位(*8)

例)获取内存I/O位1

&H02&H6F&H0001&H03&H6D

随时可用(*2)
SetMemIO

'O'

&H4F

[内存I/O

位号]

(2 Byte)[值]

(1 Byte)

设置指定的内存I/O位(*8)

&H01:打开此位

&H00:关闭此位

例)打开内存I/O位1

&H02&H4F&H0001&H01&H03&H4C

Auto开

Ready开

GetMemIOByte

't'

&H74

内存I/O

端口号

(1 Byte)

获得指定的内存I/O端口(8位) (*8)

例)获取内存I/O端口1

&H02&H74&H01&H03&H76

随时可用(*2)
SetMemIOByte

'T'

&H54

[内存I/O

端口号]

(1 Byte)[值]

(1 Byte)

设置指定的内存I/O端口(8位)(*8)

例)设置&H0F到内存I/O端口1

&H02&H54&H01&H0F&H03&H59

Auto开

Ready开

GetMemIOWord

'u'

&H75

内存I/O

字端口

编号(1 Byte)

获得指定的内存I/O字端口(16位)(*8)

例)获取内存I/O字端口1

&H02&H75&H01&H03&H77

随时可用(*2)
SetMemIOWord

'U'

&H55

[内存I/O

字端口

编号] (1 Byte)

[值] (1 Byte)

设置指定的内存I/O字端口(16位)(*8)

例)设置&H010F到内存I/O字端口1

&H02&H55&H01&H010F&H03&H59

Auto开

Ready开

GetVariable

'v'

&H76

[参数名称],(&H2C)[类型]

(1 Byte)

获取备份(全局保留)参数的值 (*8)

例)获取Global Integer g_Status

&H02&H76&H67&H5F&H53&H74&H61&H74&H75

&H73&H2C&H03&H03&H56

随时可用(*2)

[参数名称],(&H2C)

(数组元素),

(&H2C)

[参数类型]

(1 Byte),

(&H2C)

[获取的数量]

(2 Byte)

获取备份(全局保留)数组参数的值 (*9)

例)获取所有的Global Integer g_intArray(10)

&H02&H76&H67&H5F&H69&H6E&H74&H41&H72

&H72&H61&H79&H2C &H0000&H2C&H03&H2C&H000A&H03&H42

例)从Global Integer g_int3Array(10,10,10)的元素(3,5,0)中

获取10个元素

&H02&H76&H67&H5F&H69&H6E&H74&H33&H41

&H72&H72&H61&H79&H2C&H0003&H2C&H0005

&H2C&H0000&H2C&H03&H2C&H000A&H03&H77

SetVariable

'V'

&H56

[参数名称],

(&H2C)[值]

(类型大小),

(&H2C)[类型]

(1 Byte)

设置备份(全局保留)参数的值 (*8)

例)设置0(&H0000)到Global Integer g_Status

&H02&H56&H67&H5F&H53&H74&H61&H74&H75

&H73&H2C&H0000&H2C&H03&H03&H5A

Auto开

Ready开

GetStatus

'S'

&H53

获取控制器的状态 随时可用(*2)
Execute

'X'

&H58

命令

字符串

执行命令 (*10)(*11)

如)执行‘print here’

&H02&H58&H22&H70&H72&H69&H6E&H74&H20

&H68&H65&H72&H65&H22&H03&H10

Auto开

Ready开

Error关

EStop关

Safeguard关

Abort

'A'

&H41

中止命令的执行(*10) Auto开
GetAlm

'z'

&H7A

获得报警状态 随时可用(*2)
ResetAlm

'Z'

&H5A

报警编号

(1 Byte)

重置指定报警编号的报警

例如)重置报警5时

&H02&H5A&H05&H03&H5C

Auto开

Ready开

*1:可通过GetStatus获取的控制器状态位。

*2:如果满足以下条件,则随时可用。

  • 如果“远程以太网”设为控制设备,或
  • “远程以太网”未设为控制设备,而是设为用于监控。

*3:执行Main[函数编号]中指定的函数。

函数名称 函数编号
Main 0
Main1 1
Main2 2
Main3 3
Main4 4
Main5 5
Main6 6
Main7 7
Main63 63

*4: 暂停命令不适用于“NoPause任务”和“NoEmgAbort任务”。

有关详细信息,请参阅帮助或以下手册。

《SPEL+语言参考》 - “Pause”

*5:关闭I/O输出并初始化机器人参数。

有关详细信息,请参阅帮助或以下手册。

《SPEL+语言参考》 - “Reset”

*6:初始化机器人参数。

有关详细信息,请参阅帮助或以下手册。

《SPEL+语言参考》 - “Motor”

*7:如果机器人编号指定为“0”,将操作所有机器人。

如果想仅操作指定的机器人,应指定目标机器人的机器人编号(1到16)。

*8:参数类型

参数类型 类型值(1Byte)
Boolean &H00
Byte &H01
Double &H02
Integer &H03
Long &H04
Real &H05
String &H06
UByte &H07
Short &H08
UShort &H09
Int32 &H0A
UInt32 &H0B
Int64 &H0C
UInt64 &H0D

在参数名称和类型相同时用于备份参数。

*9:对于数组元素,应按以下方式指定将获取的一个元素。

从数组头获取时,也需要指定一个元素。

指定2字节值的数组元素。

一维数组 参数名称&H2C&H0000 从头部获取。
参数名称,元素编号。 从指定的元素编号中获取。
二维数组 参数名称&H2C&H0000&H2C&H0000 从头部获取。
参数名称,元ddddd素号1,元素号2 从指定的元素编号中获取。
三维数组 参数名称&H2C&H0000&H2C&H0000&H2C&H0000 从头部获取。
参数名称,元素号1,元素号2,元素号3 从指定的元素编号中获取。

您不能为参数类型指定字符串。

获取的可用编号最大为100。

如果指定超出数组元素数量的编号,将出现错误。

*10:将执行的命令和参数写在(“ ”)(双引号)中进行指定。

执行的命令字符串不能超过256字节,执行结果字符串不能超过4060字节。

机器人动作命令将被执行到所选的机器人上。执行命令之前使用GetCurRobot检查选中的机器人。

下面的命令在运行Execute时可用。

运行Execute时可用的命令

远程命令

  • Abort
  • GetStatus
  • SetIO
  • SetIOByte
  • SetIOWord
  • SetMemIO
  • SetMemIOByte
  • SetMemIOWord

如果Execute的执行命令与输出命令(SetIO、SetIOByte、SetIOWord、SetMemIO、SetMemIOByte、SetMemIOWord)中指定的命令相同并且同时执行,那么后来执行的命令将导致错误。确保在执行Execute命令和输出命令后使用正在执行Execute命令的GetStatus来检查执行结果。

*11:当执行包含与PC(PC文件、PC RS-232C、数据库访问、DLL调用)相关的命令时,请务必在连接Epson RC+ 8.0的状态下执行。如果未连接Epson RC+ 8.0,执行命令时会报错。