远程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,执行命令时会报错。
← 调试远程RS232控制 监控命令 →