重要说明:埃斯顿(RCS2/ERC3 控制器)没有原生硬件立方体 Zone(不像安川);没有独立的 lua 后台脚本。实现后台持续监测坐标,使用【自触发后台程序】(后台任务);前台跑上下料运动程序,后台任务独立循环读取当前位置,做立方体判断输出 DO,作为机床门口互锁兜底防护ESTUN。iER 新系统使用 Juliet 语言,机制略有差异;下面以 ER 系列 ERC3‑S2 控制柜。
核心提醒:后台自触发程序属于软件逻辑,扫描有延时;只做第二层兜底;主互锁仍然必须使用硬接线 DI 握手,严禁拿后台任务充当安全保护。
一、后台自触发程序基础概念
埃斯顿机器人分普通前台程序、自触发程序
自触发程序可以设置上电自动启动;独立于前台运动程序持续循环执行;
不占用前台运动;前台 MovJ/MovL 运动照常跑;后台循环读取机器人实时位置;
死循环里面必须加 Wait 延时指令;不加 Wait 会 CPU 过载报警。
菜单创建自触发后台程序步骤(示教器)
示教器进入【程序管理】→新建程序,程序类型选择:自触发程序(不是普通程序);命名
BG_Cube_Mon编辑程序代码;保存。
设置上电自启:程序属性里面勾选【上电自动运行】;
调试阶段先关闭上电自启;测试逻辑没问题之后再打开。
二、关键指令说明(埃斯顿机器人语言)
CurPos P1:读取当前 TCP(已激活 TOOL 工具)的世界坐标系位置,存入位置变量 P1(单位 mm!这点和新松米制不一样)GetPos P1, RX,RY,RZ,RA,RB,RC:把位置 P1 拆解出 X/Y/Z 数值(mm)DO[xx]=ON/OFF:输出数字输出点Wait t循环延时,单位 s;后台循环建议 Wait 0.05(50ms 扫描一次)
必须先标定好抓手 TCP,并且后台运行前激活对应的 TOOL 工具;TCP 错,坐标读取全部错误!
三、完整示例后台自触发程序(机床门口立方体监测)
功能:TCP 进入机床门洞立方体区域,DO10 置 ON(通知机床:机器人还在内部,禁止关门);退出后 DO10=OFF。 立方体边界全部是毫米 (mm),现场 JOG 带着完整抓手走到立方体对角两点读出 Xmin/Xmax Ymin/Ymax Zmin/Zmax 填入代码
'====埃斯顿 自触发后台程序 BG_Cube_Mon 立方体区域监测===='先定义实型变量
DIM RX AS REAL
DIM RY AS REAL
DIM RZ AS REAL
WHILE(1>0) '无限循环
CurPos P1 '读取当前TCP世界坐标到P1
GetPos P1,RX,RY,RZ,RA,RB,RC '拆解X Y Z
' --------立方体边界,请根据现场实测修改(单位mm)--------
CONST Xmin= 400.0
CONST Xmax= 850.0
CONST Ymin=-250.0
CONST Ymax= 250.0
CONST Zmin= 300.0
CONST Zmax= 750.0
IF (RX>=Xmin AND RX=Ymin AND RY=Zmin AND RZ<=Zmax) THEN
DO[10]=ON
ELSE
DO[10]=OFF
ENDIF
Wait 0.05 '50ms扫描,必须写延时,防止CPU过载
WEND
四、调试运行步骤
先把 TCP 标定完成;手动 JOG 确认示教器上的世界坐标读数正确;
新建【自触发程序】粘贴代码,修改立方体边界坐标;保存;
手动伺服 ON,手动启动这个后台任务;
手动移动机器人 TCP 进出立方体范围;观察 DO10 指示灯是否跟随切换;
逻辑验证全部正常之后,再勾选【上电自动运行】;
重启控制柜测试上电后台是否自动启动。
五、埃斯顿自带空间限制(硬禁区)补充说明
系统菜单【机器人设置‑工作空间限制】可以设置长方体硬禁区;TCP 闯入直接停机报警。
硬禁区仅监控 TCP 点,肘关节、管线不受检测;适合障碍物防撞;机床门口不能直接用硬禁区,机器人本身需要开进开出该腔体;不能用来输出 IO 互锁信号。
六、现场重点风险注意事项
后台只监控 TCP 点!抓手、工件本体包络要在设置立方体边界向外额外预留 20‑40mm 余量;不能仅按 TCP 点位设置边界。
后台扫描周期 50ms,存在时间滞后;绝对不可以替代硬件 IO 握手互锁,不能用于安全停机回路;仅第二层软件兜底防护。
如果发生过碰撞,TCP 发生漂移,必须重新复核立方体边界。
前台主程序依旧使用
WAIT DI硬接线握手逻辑;不能依赖后台输出 DO 去做机床开门关门联锁。后台循环禁止删除 Wait 延时;无延时直接死循环,控制柜 CPU 过载报警停机。

