ZeroOne AI
← 返回文章列表

TRIO-Basic 从入门到精通(十四):Trio 实现单位置轴多色标捕捉

👁 35
分类:机器人自动化

本教程介绍Trio控制器多色标捕捉方案:通过ADDAX将实体轴位置叠加到虚拟轴,对虚拟轴执行REGIST色标捕捉,突破物理通道数量限制,实现单位置轴多路色标同时捕捉,满足印刷包装行业套准控制需求。

"# TRIO-Basic 从入门到精通(十四):Trio 实现单位置轴多色标捕捉\n\n## 一、教程背景\n\n色标捕捉(Registration Mark Capture)是印刷、包装、贴标等高速生产线中的常用功能:当传感器检测到色标信号时,控制器立即锁存当前轴位置,用于后续的定位补偿与套准控制。Trio 控制器通过简单的物理轴配置即可实现双色标捕捉,但当需要捕捉的色标数量超过物理轴通道限制(多色标、多轴场景)时,就需要特殊方法来处理。\n\n本教程给出了一种通用解决方案:将需要捕捉的各轴位置叠加到一条虚拟轴(虚轴)上,再对虚拟轴位置进行色标捕捉,从而突破物理通道数量限制,实现单位置轴的多色标捕捉。\n\n## 二、技术要点/技术方案\n\n色标捕捉指令:\n\nbasic\nREGIST(20, channel, source, edge, window [,quantity, table_start])\n\n\n- channel:捕捉通道编号,Trio 使用 A、B 两个通道即可实现双色标捕捉。\n- source:信号来源(输入点等)。\n- edge:触发边沿。\n- window:捕捉窗口。\n- 可选参数 quantity、table_start 用于批量捕捉。\n\n多色标方案核心:\n\n- 将实体轴(AXIS(3))与虚拟轴(AXIS(4))通过 ADDAX(3) 叠加:虚拟轴位置实时跟随实体轴位置。\n- 对虚拟轴位置执行 REGIST 捕捉,即可在不增加物理通道的情况下实现多路色标同时捕捉。\n- 注意:由于使用了虚拟轴,硬件捕捉速度会小于实体轴的直接捕捉速度,适用于对精度与速度要求在一定范围内的场景。\n\n相关状态指令:\n\n- MARK / MARKB:查询 A/B 通道是否已触发捕捉。\n- REG_POS / REG_POSB:读取 A/B 通道锁存的捕捉位置。\n\n## 三、实施步骤\n\n1. 配置实体轴 AXIS(3):设置 UNITS=1,清除运动缓冲(CANCEL(2)),等待轴空闲后 DEFPOS(0) 回零。\n2. 配置虚拟轴 AXIS(4):设置 UNITS=1,将位置定义为实体轴位置(DEFPOS(DPOS AXIS(3))),并执行 ADDAX(3) 使其跟随实体轴。\n3. 分别设置实体轴与虚拟轴的运动参数(UNITS=1000、SPEED=1、DECEL=10、ACCEL=10),开启 WDOG=1,启动实体轴正向运动(FORWARD AXIS(3))。\n4. 注册色标捕捉:实体轴 A 通道捕捉输入 1(REGIST(20, 0, 0, 0, 0) AXIS(3))、B 通道捕捉输入 2(REGIST(20, 1, 0, 0, 0) AXIS(3));虚拟轴 A 通道捕捉输入 3(REGIST(20, 3, 4, 0, 0) AXIS(4))。\n5. 主循环中轮询 MARK/MARKB 标志,触发后打印 REG_POS/REG_POSB 位置,并重新注册下一次捕捉。\n6. 测试验证:将 IO 输入 1、2、3 短接在一起,保证色标信号同时触发;IN1-2 接在实体轴 3 上,IN3 接在虚拟轴 4 上,观察三路捕捉位置的一致性。\n\n## 四、代码示例\n\nbasic\n'clear axis(3) motion buffer\nBASE(3)\nUNITS=1\nCANCEL(2)\nWAIT IDLE\nWA(100)\nDEFPOS(0)\nWAIT UNTIL OFFPOS=0\nWA(10)\n\nBASE(4)\nUNITS=1\nDEFPOS(DPOS AXIS(3))\nWAIT UNTIL OFFPOS=0\nADDAX(3)\n\nBASE(3)\nUNITS=1000\nSPEED=1\nDECEL=10\nACCEL=10\nREG_INPUTS=$21\n\nBASE(4)\nUNITS=1000\nSPEED=1\nDECEL=10\nACCEL=10\n\nWDOG=1\n\nFORWARD AXIS(3)\n\n'input in 1\nREGIST(20, 0, 0, 0, 0) AXIS(3)\n'input in 2\nREGIST(20, 1, 0, 0, 0) AXIS(3)\n'input in 3\nREGIST(20, 3, 4, 0, 0) AXIS(4)\n\nWHILE TRUE\n IF MARK AXIS(3) THEN\n PRINT \"MarkA pos=\",REG_POS AXIS(3)\n WA(200)\n REGIST(20, 0, 0, 0, 0) AXIS(3)\n ENDIF\n IF MARKB AXIS(3) THEN\n PRINT \"MarkB pos=\",REG_POSB AXIS(3)\n WA(200)\n REGIST(20, 1, 0, 0, 0) AXIS(3)\n ENDIF\n IF MARK AXIS(4) THEN\n PRINT \"MarkC pos=\",REG_POS AXIS(4)\n WA(200)\n REGIST(20, 3, 4, 0, 0) AXIS(4)\n ENDIF\n\nWEND\n\n\n## 五、应用价值\n\n1. 突破物理捕捉通道数量限制,用一条虚拟轴实现多路色标同时捕捉。\n2. 代码结构清晰,双色标与多色标场景均可复用,改造成本低。\n3. 捕捉位置精度满足常规套准、定位补偿需求,实测在精度要求范围内。\n4. 基于"轴位置叠加"的思路,可进一步扩展为多实体轴共享色标捕获的复杂应用。\n5. 为印刷、包装等行业高速色标检测与套准控制提供了实用的编程范例。\n\n## 六、SEO关键词\n\nTRIO运动控制器,TRIO-Basic,REGIST色标捕捉,虚拟轴控制,多轴控制,色标传感器,套准控制,翠欧控制器\n\n---\n\n本文内容整理自 guimotion 的《TRIO-Basic从入门到精通教程》系列(CSDN,CC BY-SA 4.0),由 ZeroOne AI 重新组织编写。\n"

推荐阅读

更多工业 AI、智能制造与技术实践文章

机器人自动化

SOEM-EtherCAT 源代码解析(二):已知的从站配置信息列表

解析 SOEM 主站库的从站配置信息列表:ec_configlist_t 结构体字段含义、dtype 设备类型解释、倍福 EK1100/EL 系列端子预配置表,以及未知从站如何回退到 EEPROM 读取配置。

数码印刷

陶瓷喷墨 RIP 中的 8 色 ICC Profile 技术原理与 LittleCMS 实现

系统讲解陶瓷喷墨 RIP 中 8 色 ICC Profile 的技术原理与 LittleCMS 实现:ICC 色彩管理模型、8 通道颜色空间、Profile 制作流程(固定条件/色卡打印/烧成后测色/分光数据)、LittleCMS 集成与批量转换,以及墨量限制、通道线性化、喷头灰度映射与工业级软件架构设计。

机器人自动化

TRIO-Basic 从入门到精通(十二):Trio 实现 ModbusTCP 通讯

本教程演示两台Trio控制器间基于ModbusTCP的以太网通讯,主站通过MODBUS指令对从站保持寄存器进行读写,并实现快速超时、断线重连等可靠通讯机制,适用于与PLC、传感器等从站设备的数据交换。

机器人自动化

陶瓷盘UV喷墨印刷中的Z轴高度测量与防碰撞技术方案

陶瓷盘等异形产品 UV 喷墨印刷中,喷头与产品表面的高度控制是核心难点:距离太近会撞坏昂贵的 UV 喷头,距离太远则墨滴扩散、套色精度下降。本文系统讲解线扫相机与激光测高的分工、两级 Z 轴高度设计、浮雕跟随、三重防撞保护,并给出 3.8 米 10 盘位设备基于 Trio + EtherCAT 的完整架构与工作流程。

工业互联网

Linux系统篇(十八)——文件(二):吃透 Linux 重定向底层:从文件描述符到 VFS 缓冲全链路拆解

从文件描述符数组到 dup2 重定向,再到用户/内核双缓冲与 VFS 多态,完整拆解 Linux 输出重定向的内核实现链路。

机器人自动化

手把手做ROS2机器人系统开发(二):ROS2核心命令详解

在上一讲中,我们完成了 Ubuntu 22.04 与 ROS2 Humble 开发环境的搭建。本章节进入实战第一步:系统梳理 ROS2 的核心命令体系。熟练掌握这些命令,是后续编写节点、调试通信、排查问题的基本功。 ROS2 的命令统一以 `ros2` 开头,通过子命令分组管理:daemon、no

评论(0)