工业机器人原理及应用 —— 码垛 项目作业
课程名称:工业机器人原理及应用
项目名称:双工位纸箱码垛工作站搭建与调试
软件版本:RobotStudio 6.08
机器人型号:ABB IRB 460
系统版本:RobotWare 6.08.01
完成时间:2026年6月2日 姓名:覃秋冬 班级:23机器1班 学号:1234160139
一、项目任务与目标
1. 项目任务
在 RobotStudio 6.08 中完成双工位纸箱码垛工作站的解包、系统重置、I/O 配置、程序数据创建、目标点示教、RAPID 程序编写与调试,实现机器人自动完成左侧、右侧两条产线纸箱的抓取、码放、计数、满载处理及中断复位功能。
2. 学习目标
理解工业机器人双工位码垛工作站完整工作流程。
掌握 DSQC652 I/O 单元、数字信号、系统 I/O 配置。
掌握工具、工件坐标系、载荷数据创建。
掌握中断程序 TRIGGER、动作触发 TriggL、数组、计时指令应用。
掌握多工位码垛逻辑、位置计算与程序调试。
掌握码垛节拍优化方法。
二、项目设备与软件环境
仿真软件:RobotStudio 6.08
机器人型号:ABB IRB 460
I/O 模块:DSQC652(16 入 16 出)
工作站文件:SituationalTeaching_Pallet608.rspag
系统:RobotWare 6.08.01
三、项目实施步骤与完成记录
任务 1 工作站解包与系统重置
工作站解包步骤: ① 双击 rspag 文件启动解包向导 ② 按向导选择文件路径 ③ 选择 “从 Pack&Go 包加载文件” ④ 选择 RobotWare 6.08.01 ⑤ 完成解包
系统备份与重置步骤: ① 控制器→备份→创建备份 ② 设置备份名称与保存路径 ③ 控制器→重启→重置系统 ④ 确认重置,恢复出厂状态
完成情况:☑已完成 □未完成
任务 2 I/O 单元与 I/O 信号配置
2.1 I/O 单元配置(DSQC652)
Name:Board10Address:10 Network:DeviceNet
2.2 数字 I/O 信号配置表
信号名称 | 类型 | 所属设备 | 地址 | 功能说明 |
di00_BoxInPos_L | 输入 | Board10 | 0 | 左侧产品到位 |
di01_BoxInPos_R | 输入 | Board10 | 1 | 右侧产品到位 |
di02_PalletInPos_L | 输入 | Board10 | 2 | 左侧托盘到位 |
di03_PalletInPos_R | 输入 | Board10 | 3 | 右侧托盘到位 |
di07_MotorOn | 输入 | Board10 | 7 | 电机上电 |
di08_Start | 输入 | Board10 | 8 | 程序启动 |
do00_ClampAct | 输出 | Board10 | 0 | 夹板动作 |
do01_HookAct | 输出 | Board10 | 1 | 钩爪动作 |
do02_PalletFull_L | 输出 | Board10 | 2 | 左侧满载 |
do03_PalletFull_R | 输出 | Board10 | 3 | 右侧满载 |
2.3 系统输入 / 输出配置
信号名称 | 系统动作 | 功能 |
di07_MotorOn | Motors On | 电机上电 |
di08_Start | Start | 程序启动 |
di09_Stop | Stop | 程序停止 |
do05_AutoOn | Auto On | 自动状态 |
do08_Error | Execution error | 程序报错 |
完成情况:☑已完成 □未完成
任务 3 程序数据创建
3.1 工具数据 tGripper
mass:20kg trans Z:527mm cog Z:150mm
3.2 工件坐标系
WobjPallet_L:左侧托盘坐标系 WobjPallet_R:右侧托盘坐标系 创建方法:☑三点法 □其他
3.3 载荷数据 LoadFull
mass:20kg cog Z:-227mm
完成情况:☑已完成 □未完成
任务 4 程序模板导入
导入方式:☑示教器导入 ☑RobotStudio 导入
导入模块:MainMoudle.mod
遇到问题及解决方法:
导入时提示数据名称不明确,删除已创建的 tGripper、WobjPallet_L/R、LoadFull 后重新导入即可
完成情况:☑已完成 □未完成
任务 5 目标点示教(rModPos 子程序)
需示教 7 个关键目标点:
pHome:安全原点
pPick_L:左侧抓取点
pPick_R:右侧抓取点
pPlaceBase0_L:左侧 0° 放置基准
pPlaceBase90_L:左侧 90° 放置基准
pPlaceBase0_R:右侧 0° 放置基准
pPlaceBase90_R:右侧 90° 放置基准
示教方法:手动移动机器人到位置→选中目标点→点击修改位置
完成情况:☑已完成 □未完成
任务 6 RAPID 程序结构与功能说明
例行程序名称 | 功能说明 |
Main | 主程序,循环执行初始化、抓取、放置、循环检测 |
rInitAll | 系统初始化:中断、信号、计数、轴配置监控关闭 |
rPick | 产品抓取、夹具动作、计时开始 |
rPlace | 产品放置、触发钩爪松开、载荷切换 |
rCalPosition | 自动选择左右工位、计算抓取 / 放置位置 |
pPattern | 功能程序:按层数与计数计算码垛坐标 |
rPlaceRD | 码垛计数、满载判断 |
rCycleCheck | 示教器显示节拍、码垛数量、任务状态 |
tEjectPallet_L | 左侧托盘更换中断程序 |
tEjectPallet_R | 右侧托盘更换中断程序 |
完成情况:☑已完成 □未完成
任务 7 程序调试与仿真运行
调试步骤: ① 检查 I/O 信号状态 ② 检查工具、工件、载荷数据 ③ 单步调试运行 ④ 全自动双工位循环运行
报警及处理:
1. 轴配置报警:添加 ConfL\Off、ConfJ\Off;2.I/O 信号异常:检查信号地址与映射;3. 位置偏差:重新示教基准点
仿真结果: ☑ 左右双工位自动切换码垛 ☑ 单层 5 个、共 3 层 15 个产品正确码放 ☑ 满载自动输出信号,托盘取走后中断自动复位 ☑ 示教器显示节拍时间与计数 ☑ 无碰撞、无报警、连续稳定运行
完成情况:☑已完成 □未完成
四、核心指令与功能总结
轴配置监控 ConfL\Off:关闭线性运动轴配置监控,机器人自动匹配轴配置到达目标点
ConfJ\Off:关闭关节运动轴配置监控,避免轴配置错误报警
计时指令 ClkReset:时钟数据复位清零
ClkStart:启动时钟开始计时
ClkRead:读取时钟计时数值并赋值
动作触发指令 TriggEquip:定义触发事件,设置触发距离、时间与输出信号
TriggL:线性运动过程中,在指定位置精准触发定义好的事件
中断程序 CONNECT:将中断号与中断程序(TRAP)绑定
ISignalDI:设定数字输入信号触发条件
TRAP/ENDTRAP:中断程序开始与结束标识
数组与数据赋值
数组定义:将同类型数据批量存储,用索引号调用
单独赋值 trans/rot:直接修改目标点的位置、姿态参数
码垛专用功能 Offs:对目标点进行 XYZ 坐标偏移
RelTool:相对工具坐标系进行偏移与旋转
GripLoad:加载或卸载工件载荷数据
五、项目总结与收获
本项目完成内容:
完成了 RobotStudio 中双工位码垛工作站解包、系统重置、DSQC652 I/O 单元与信号配置、工具 / 工件 / 载荷数据创建、程序模板导入、7 个关键目标点示教、RAPID 程序调试与仿真,实现左右产线纸箱自动抓取、码放、计数、满载检测及托盘更换中断复位功能。
遇到的难点及解决方法:
- 轴配置错误报警:添加 ConfL\Off、ConfJ\Off 指令解决
- 程序导入数据冲突:删除重复命名的程序数据后重新导入
- 码垛位置偏移:重新示教放置基准点,调整数组偏移参数
- 夹具动作不同步:优化 TriggL 触发距离与时间参数
学习收获:
掌握 ABB IRB460 双工位码垛全流程操作,熟练完成 I/O 配置、坐标系建立、目标点示教;理解中断、触发、计时、数组等 RAPID 高级指令用法;学会多工位码垛逻辑编写、位置计算与程序调试方法,提升工业机器人仿真与实操能力。
码垛节拍优化措施(至少写 3 条):
·过渡点使用大转弯半径(如 z50),减少机器人减速停顿
·用 TriggL 指令提前触发夹具动作,缩短动作等待时间
·用 WaitDI 替代固定 Waittime,减少无效等待
·正确设置工具与载荷重量、重心,避免机器人过载降速
·精简运动路径,删除多余过渡点,提升运动速度