玻璃搬运工业机器人离线编程与虚拟仿真

合集下载

工业机器人离线编程与仿真(FANUC机器人)课程教案

工业机器人离线编程与仿真(FANUC机器人)课程教案

工业离线编程与仿真(FANUC)课程教案第一章:工业概述1.1 工业的定义与发展历程1.2 工业的分类与应用领域1.3 工业的主要组成部分及功能1.4 工业的发展趋势与前景第二章:FANUC介绍2.1 FANUC公司的背景与发展历程2.2 FANUC的特点与优势2.3 FANUC的系列产品及性能参数2.4 FANUC的应用领域与行业解决方案第三章:工业离线编程基础3.1 离线编程的定义与意义3.2 离线编程的方法与流程3.3 离线编程软件的选择与使用3.4 离线编程中的关键技术及注意事项第四章:FANUC离线编程实践4.1 FANUC离线编程环境搭建4.2 FANUC离线编程软件操作界面及功能介绍4.3 离线编程实例:简单搬运任务4.4 离线编程实例:复杂装配任务第五章:工业仿真技术5.1 仿真技术的定义与作用5.2 仿真软件的选择与使用5.3 仿真过程中的关键技术及注意事项5.4 仿真实例:碰撞检测与优化路径规划第六章:离线编程在焊接应用中的实践6.1 焊接工艺及焊接的应用6.2 焊接任务离线编程的准备与步骤6.3 FANUC焊接离线编程案例分析6.4 焊接过程中常见问题的离线编程解决方案第七章:离线编程在搬运应用中的实践7.1 搬运的应用场景与挑战7.2 搬运任务离线编程的准备与步骤7.3 FANUC搬运离线编程案例分析7.4 提高搬运效率的离线编程策略第八章:离线编程在装配应用中的实践8.1 装配的应用与挑战8.2 装配任务离线编程的准备与步骤8.3 FANUC装配离线编程案例分析8.4 装配过程中常见问题的离线编程解决方案第九章:离线编程在包装应用中的实践9.1 包装的应用场景与挑战9.2 包装任务离线编程的准备与步骤9.3 FANUC包装离线编程案例分析9.4 提高包装效率的离线编程策略第十章:工业的故障诊断与维护10.1 工业故障诊断的意义与方法10.2 FANUC常见故障分析与诊断10.3 维护保养的基本要求与周期10.4 故障诊断与维护的实际案例分析重点和难点解析重点环节:1. 离线编程与仿真技术的基本概念及其在工业应用中的重要性。

工业机器人离线编程与仿真实训总结

工业机器人离线编程与仿真实训总结

工业机器人离线编程与仿真实训总结工业机器人离线编程与仿真实训是一种重要的工业机器人应用技能,可以帮助学习者更好地掌握工业机器人的编程和操作技能。

以下是一份可能的工业机器人离线编程与仿真实训总结:1. 实训目的:工业机器人离线编程与仿真实训的主要目的是让学生掌握工业机器人的离线编程方法,了解仿真软件的使用方法,并通过仿真实训来提高学生的实际操作技能。

2. 实训内容:工业机器人离线编程与仿真实训主要包括以下内容:(1) 工业机器人离线编程技术:学生需要掌握工业机器人离线编程的基本原理和方法,包括机器人参数设置、作业计划编制、运动路径规划、传感器设置等。

(2) 仿真软件使用方法:学生需要了解仿真软件的使用方法,包括软件界面、参数设置、轨迹生成、仿真运行等。

(3) 实训案例演示:教师可以通过实训案例演示,向学生展示工业机器人离线编程与仿真实训的具体操作流程和技巧。

3. 实训流程:工业机器人离线编程与仿真实训通常包括以下流程:(1) 实训准备:学生需要准备工业机器人离线编程所需的工具和软件,如 PLC 程序、仿真软件等。

(2) 实训操作:学生需要通过仿真软件进行机器人轨迹规划、传感器设置等操作,并将规划好的轨迹导入至 PLC 程序中,从而实现机器人的离线编程。

(3) 实训评估:教师对学生完成的实训案例进行评估,评估内容包括实训过程是否顺利、程序是否合理、仿真运行是否成功等。

4. 实训效果:工业机器人离线编程与仿真实训可以有效地提高学生的工业机器人操作技能和离线编程能力,帮助学生更好地掌握工业机器人的应用技巧。

5. 实训注意事项:在工业机器人离线编程与仿真实训中,学生需要注意以下事项:(1) 注意安全:学生在进行实训操作时,需要注意人身安全,防止意外发生。

(2) 遵守规定:学生需要遵守实训室的规定和要求,确保实训过程的顺利进行。

(3) 注重细节:学生在进行实训操作时,需要注意细节,注重程序的优化和合理。

工业机器人离线编程与仿真(基于KUKA) 建模功能的使用

工业机器人离线编程与仿真(基于KUKA) 建模功能的使用

工业机器人离线编程与仿真(基于KUKA)项目三构建离线仿真模型任务一建模功能的使用目录任务描述学习重点任务知识任务实施任务描述使用Sim Pro 对机器人进行仿真时,通常需要用到机器人周边的模型。

如果对于这些模型的精细程度要求不高,可以直接在软件中创建3D模型。

本任务中,将讲述Sim Pro软件,建模功能界面的整体功能和区域分布,并学习使用Sim Pro来创建3D模型。

学习重点学习使用Sim Pro创建3D模型1 2Sim Pro建模选项卡功能任务知识圆台模型参数概述请观看微课视频:“Sim Pro建模选项卡功能”一、Sim Pro建模选项卡功能建模Modeling选项卡中的功能区块主要有:剪贴(Clipboard)、操纵(Manipulation)、栅格捕捉(Grid Snap)、工具(Tools)、移动模式(Move Mode)、导入(Import)、组件(Component)、结构(Structure)、模型(Geometr y)、行为(Behavior)、属性(Properties)、附加魔术盒(Extra Wizards)、原点(Origin)和窗口(Windows),如图所示。

建模Modeling选项卡功能区块概览一、Sim Pro 建模选项卡功能建模选项卡中的功能区块示例子功能名称子功能简介层级移动模式(Hierarchy )移动选中关节及其子关节组成的整体或局部选中移动模式(Selected )移动选中的当前最小的子级组件移动模式(Move Mode )子功能该功能区块有两种模式,详见下表。

1.移动模式(Move Mode )功能区块一、Sim Pro 建模选项卡功能建模选项卡中的功能区块组件(Component )子功能组件功能区块有3种功能,详见下表。

2.组件(Component )功能区块示例子功能名称子功能简介新建(New )新建组件存储(Save )保存组件存储为(Save as )保存组件组件(Component )功能区块与模型(Geometry )区块功能中的特性(Features )联合使用,可新建并存储带有一定特征的模型。

工业机器人离线编程与仿真(FANUC机器人)课程教案

工业机器人离线编程与仿真(FANUC机器人)课程教案

教案教案教案教案教案教案教案教案教案教案教学资源多媒体课件、教材授课题目(章、节)第2章ROBOGUIDE 仿真工作站创建2.1ROBOGUIDE仿真功能模块2.2机器人及相关设备添加2.3抓取摆放仿真工作站搭建教学目的与要求1.掌握MoveJ、MoveL指令格式和使用方法2.要求会使用MoveJ、MoveL指令完成直线、矩形绘制教学内容和时间安排授课内容实验八运动指令练习实验任务:1.练习线性运动指令MoveL,关节运动指令(MoveJ),圆弧运动(MoveC)和绝对运动(MoveABSJ)2.建立文件名为JUXING的例行程序,程序内实现机器人的运动路径如下图所示,机器人从起始点P1,经过P2、P3、P4点,回到起始点P1。

重点和难点重点:线性运动指令、关节运动指令难点:圆弧运动、绝对运动复习思考题,作业题实验报告如有答疑、质疑请记录教案授课日期:年月日教案编号:14教学安排课型:实践教学方式:演示、操作教案教案教案教案教学资源多媒体课件、教材授课题目(章、节)第3章ROBOGUIDE特殊功能设置3.1 附加轴添加设置3.2 Simulator功能3.3 Calibration功能3.4 伺服焊枪的添加和设置教学目的与要求1.完成计算机与机器人控制柜的硬件连接2.能够设置仿真监控教学内容和时间安排授课内容实验十一 Simulator功能实验任务:1.完成计算机与机器人控制柜的硬件连接2.设置机器人控制柜与计算机的IP地址3.检查连通性4.设置仿真监控机器人控制柜设置参数参考表重点和难点重点:计算机与机器人控制柜的硬件连接难点:设置仿真监控复习思考题,作业题如有答疑、质疑请记录教案授课日期:年月日教案编号:19教学安排课型:实践教学方式:演示、操作教案教案教案教学资源实验台、实验设备授课题目(章、节)第4章连续轨迹路径示教编程仿真4.1项目概述4.2创建连续轨迹路径编程仿真工作站4.3 创建轨迹图4.4 虚拟示教器编程教学目的与要求使用ROBOGUIDE软件搭建连续轨迹示教编程仿真工作站教学内容和时间安排授课内容实验十四创建连续轨迹路径编程仿真工作站1.新建的工作单元2.进行外部模型的添加3.添加轨迹笔和进行TCP设置4.创建如下轨迹图重点和难点重点:根据图片创建轨迹图难点:根据图片创建轨迹图复习思考题,作业题教案授课日期:年月日教案编号:23教学安排课型:理论教学方式:启发式讲授法教案教案教案教案教案教案。

工业机器人离线编程与仿真(基于KUKA) 认识工业机器人仿真应用技术

工业机器人离线编程与仿真(基于KUKA) 认识工业机器人仿真应用技术

任务知识
二、常用离线编程与仿真软件的特点
(2)专用型离线编程仿真软件
这类软件一般由机器人本体厂家自行开发,或者委托第三方软件公司开发维护。其只支持本品牌的机器 人仿真,编程和后置输出。
优点:
由于开发人员可以拿到机器人底层数据通讯接口,所以这类离线编程软件有更强大和实用的功能, 与机器人本体兼容性也更好。软件的集成度很多,也都有相应的工艺包。
工业机器人离线编程与仿真
(基于KUKA)
任务一
项目一 认识离线编程与仿真技术
认识工业机器人仿真应用技术
目录
任务描述
学习重点
任务知识
主题讨论
任务描述
在深入学习工业机器人离线编程与仿真 技术之前,我们需要了解工业机器人仿 真应用技术的定义和发展,也需要了解 常用的离线编程与仿真软件的特点
学习重点
任务知识
二、常用离线编程与仿真软件的特点
(1)通用型离线编程仿真软件
RobotMaster软件界面
RobotMaster
由加拿大软件公司Jabez科技研制开发的RobotMaster 是目前市面上顶级的通用型机器人离线编程仿真软件。
Rpbot Master 软件在MasterCam中无缝集成了机器人编程、 仿真和代码生成等功能,大大提高了机器人的编程速度。其可 以按照产品数模生成程序,适用于切割、铣削、焊接和喷涂等 工业领域。具有独家的优化功能,运动学规划和碰撞检测非常 精确,支持外部轴(直线导轨系统、旋转系统),并支持复合 外部轴组合系统等优点。同时也具有暂时不支持多台机器人同 时模拟仿真的特点。
缺点:
相应地,缺点是只支持本公司品牌机器人,机器人间的兼容性不好。KUKA的Sim Pro和OfficeLite 就属于这种离线编程仿真软件。

工业机器人离线编程与仿真(FANUC机器人)课程教案

工业机器人离线编程与仿真(FANUC机器人)课程教案

工业离线编程与仿真(FANUC)课程教案第一章:课程简介1.1 课程背景随着工业4.0的快速发展,工业应用越来越广泛。

为了满足市场需求,提高我国工业技术水平,本课程致力于讲解FANUC的离线编程与仿真技术,使学员能够熟练掌握并应用到实际工作中。

1.2 课程目标通过本课程的学习,学员能够:(1)了解FANUC的基本构成和功能;(2)掌握FANUC离线编程的基本原理和方法;(3)熟练使用FANUC离线编程软件进行程序编写和仿真;(4)具备一定的工业系统调试和维护能力。

1.3 教学内容本章主要介绍课程的整体框架和教学内容,包括:(1)FANUC的基本构成和功能;(2)FANUC离线编程的基本原理和方法;(3)FANUC离线编程软件的使用。

第二章:FANUC基本构成与功能2.1 FANUC简介介绍FANUC公司的背景,以及FANUC在工业领域的应用。

2.2 FANUC本体结构讲解FANUC的基本组成部分,包括:(1)机械结构;(2)驱动系统;(3)控制系统;(4)传感器;(5)末端执行器。

2.3 FANUC功能介绍FANUC的主要功能,包括:(1)搬运;(2)焊接;(3)装配;(4)加工;(5)检测。

第三章:FANUC离线编程原理3.1 离线编程概述讲解离线编程的定义、优点和应用场景。

3.2 离线编程原理介绍离线编程的基本原理,包括:(1)任务分析;(2)路径规划;(3)程序编写;(4)仿真与调试。

3.3 离线编程方法讲解离线编程的主要方法,包括:(1)手动编程;(2)示教编程;(3)自动编程。

第四章:FANUC离线编程软件使用4.1 Robot Studio软件简介介绍Robot Studio软件的背景、功能和界面。

4.2 Robot Studio软件安装与使用讲解Robot Studio软件的安装步骤和基本操作,包括:(1)创建新项目;(2)导入模型;(3)搭建工作站;(4)编写程序;(5)仿真与调试。

工业机器人离线编程与仿真【项目七 】教案

工业机器人离线编程与仿真【项目七 】教案
任务二、创建机械装置模型
1.创建空工作站
2.导入夹爪、夹爪基座模型
3.创建夹具机械装置
(1)为机器人创建夹爪工具;
(2)创建机械装置的链接;
(3)创建机械装置的接点;
(4)设置机械装置的工具数据;
(5)创建机械装置的姿态
(6)设置不同姿态的转换时间
(7)夹具机械装置创建完成
【学生】创建机械装置等实践操作,运行仿真机械装置,观看夹爪机械装置的情况,有疑惑可询问老师或观看相应的微视频,自主探究解决。
操作流程的规范性和高效性。
五、作业
布置书本作业
六、教学后记
教案
课程:工业机器人离线编程与仿真(ABB)授课班级:
课 题
项目七 任务3工作站I/O配置
课堂类型
理实一体化
授课时长
课时
授课方式
理实一体化
授课日期
教学工具
多媒体、PPT、微课视频、Robotstud号配置及相关操作的讲解。
总结归纳
1.小组总结
2.教师总结
【教师】1.总结实训情况,鼓励肯定学生,使学生获得成就感;
2.指出实训过程中的典型错误,让学生掌握更加全面
【学生】1.总结实训过程实施情况。
2.总结小组实训过程中出现的问题以及团队之间是如何找出问题解决问题的。
任务驱动,让学生对即将开始的任务有一个初步的了解。
学生查阅工业机器人机械装置,了解机器人机械装置的含义,激发学生自主研究
Smart夹爪动态效果包括在输送链末端拾取产品、在放置位置释放产品、自动置位复位真空反馈信号。
【学生】观看机器人工作过程的情况并思考看到的现象;
课前登录学习平台,做好新知学习的准备
为学生创造具体的教学情境,激发其学习的主动性和积极性。

工业机器人离线编程与操作

工业机器人离线编程与操作

工业机器人离线编程与操作简介工业机器人已经成为现代工业生产中不可或缺的一部分。

为了提高生产效率和灵活性,人们逐渐将机器人引入到各个领域中。

而离线编程与操作则是工业机器人中非常重要的一项技术,它可以使工业机器人在不干扰实际生产的情况下进行编程和操作。

什么是离线编程与操作离线编程与操作是指在不直接接触到实际机器人的情况下,通过计算机软件对机器人进行编程和操作。

传统的机器人编程需要专门的编程语言和硬件设备,在现场进行操作,具有较高的时间成本和技术门槛。

而离线编程与操作的优势在于它可以提高编程效率,降低成本。

离线编程的流程离线编程的流程一般包括以下几个步骤:1.建模与仿真:使用专门的软件,对机器人和工作环境进行建模和仿真。

2.路径规划:根据实际生产任务,确定机器人需要走的路径和动作。

3.任务生成:将路径规划的结果转化为可执行的机器人程序。

4.程序验证:通过仿真或者虚拟机器人进行程序的验证和调试。

5.上传与操作:将验证通过的程序上传到实际的机器人中,开始生产任务。

离线操作的优势离线操作具有以下几个优势:1.提高生产效率:通过离线编程,可以快速生成高效的机器人程序,从而提高生产效率。

2.降低风险:离线编程可以在虚拟环境中进行验证和调试,减少实际生产中的风险。

3.节约成本:离线编程消除了传统的设备和人力资源的需求,降低了成本。

4.增强灵活性:离线编程使得机器人的编程和操作更加灵活,可以根据实际需求进行调整和优化。

离线编程与操作的应用场景离线编程与操作广泛应用于各个领域,包括汽车制造、电子设备生产、食品加工等。

以下是几个典型的应用场景:1.汽车制造:离线编程可以帮助生产线快速调整车型、改变工艺,提高生产效率和品质。

2.电子设备生产:离线编程可以对复杂的电子设备进行自动化组装,提高生产效率和一致性。

3.食品加工:离线编程可以根据不同的产品要求,自动进行食品包装、堆垛等操作。

离线编程与操作的未来发展随着人工智能和机器学习的快速发展,离线编程与操作也将得到进一步的提升和发展。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

机械专业综合课程设计说明书玻璃搬运工业机器人离线编程与虚拟仿真学院(系):机电信息工程学院专业:机械设计制造及其自动化学生姓名:学号:指导老师:完成日期: 2016年12月10日目录第一章、搬运工作站任务描述和构成 (1)第二章、轴配置监控指令 (5)第三章、运动触发指令 (6)第四章、复杂程序数据赋值 (7)第五章、转弯半径的选取 (8)第六章、玻璃搬运任务实施 (10)第七章、录制机器人作业虚拟仿真视频 (25)第一章、搬运工作站任务描述和构成1、搬运工作站任务描述采用工业机器人进行玻璃搬运,能大大提高玻璃生产线的产能,定位精度,降低不良率和人工成本。

汽车玻璃搬运工作站布局如下图所示。

系统利用IRBl41O机器人将汽车玻璃从侧的工装支架I二搬运至另侧,本工作站中已经预设搬运动作效果,需要依次完成1/0配置、程序数据创建、目标点示教、程序编写及调试,最终完成整个汽车玻璃的搬运过程。

2、搬运工作站的构成搬运工作站由机器人、夹具、围栏、工作台、底座、控制器、玻璃组成。

各部件如下图所示:(1)机器人(2)夹具(3)围栏(4)工作台(5)底座(6)控制器(7)玻璃第二章、轴配置监控指令轴配置监控指令指定机器人在线性运动及圆弧运动过程中是否严格遵循程序中已设定的轴配置参数。

默认情况下轴配置监控是打开的,当关闭轴配置监控后,机器人在运动过程中采取最接近当前轴配置数据的配置到达指定目标点。

例如目标点P10中,数据【1,0,1,0】就是此目标点的轴配置数据。

CONST robtarget P10=[1,0, 1,0],[9E9,9E9,9E9,9E9,9E9,9E9]] ;PR()C rMove()ConfL \Off;MoveL p10,v1000,fine,tool();ENDPR()C机器人自动匹配一组最接近当前各关节轴姿态的轴配置数据移动至目标点P10,到达该点时,轴配置数据不一定为程序中指定的[1,0, 1,0].在某些应用场合,如离线编程创建目标点或手动示教相邻两目标点间轴配置数据相差较大时,在机器人运动过程中容易出现报誓“轴配置错误”而造成停机,此种情况下,若对轴配置要求较高,则一般通过添加中间过渡点,若对轴配置要求不高,则可通过指令 ConfL \Off关闭轴监控,使机器人自动匹配可行的轴配置来到达指定目标点。

第三章、运动触发指令在线性运动过程中,在指定位置准确地触发事件(如置位输出信号、激活中断等)。

可以定义多种类型的触发事件,如Triggl/()(触发信号)、TriggEquip (触发装置动作)、Trigglnt(触发中断)等。

在准确的位置触发机器人夹具的动作,通常采用此种类型的触发事件。

VAR Tiggdata GripOpen;!定义触发数据 GripOpen定义触发事件GripOpen 在距离指定目标点前10mm处,并提前0.1S(用于抵消设备动作延迟时间)触发指定事件将数字输出信号doGrip()n置为1。

!执行指令 TriggL例如,在控制吸盘夹具动作过程中,在吸取产品的需要提前打开真空,在放置产品时需要提前释放真空,为了能够准确地触发吸盘夹具的动作,通常采用TriggL指令来对其进行精准控制。

第四章、复杂程序数据赋值多数类型的程序数据均是组合型数据,即里面包含了多项数值或字符串。

可以对其中的任何一项参数进行赋值。

常见的目标点数据如下所示:PERSrobtargetpI 0 :=[[0,0,0],[I,0,0,0],[0,0,0,0],[9E9,9E9,9E9,9E9,9E9,9E9]]; PERSrobtargetp20 ·=[[I00,0,0),[0,0,I,OJ,[ 1,0,I,0],[9E9,9E9,9E9,9E9,9E9,9E9]),目标点数据里面包含了四组数据,依次为TCP位置数据trans: [0,0,0]、TCP 姿态数据rot: [1,0,0,1]、轴自己置数据robconf: [ 1,0,1,0]、外部轴数据extax [9E9,9E9,9E9,9E9,9E9,9E9]我们可以分别对该数据的各项数值或者数值组进行操作,如p1O.trans.x:=p20.trans.x+50,p10.trans.y:=p20.trans.y-50,p1O.trans.z:=p20.trans.z+ I00,p1O.rot:=p20.rot『pIO.robconf:=p20.robcon f,赋值后,则p1O为PERS robtarget p10=[[150,-50,100),[0,0,1,0],[1,0, 1,0),[9E9,9E9,9E9,9E9,9E9,9E9]]。

第五章、转弯半径的选取在机器人运行轨迹过程中经常会有一些中间过渡点,例如拾取正上方位置点、放置正上方位置点,绕开障碍物而设置的一些位置点,机器人在该位置不会触发具体事件。

在运动至这些位置点时,应将转弯半径设置得相应大一些,这样可以减少机器人在转角时的速度衰减,可使机器人运行轨迹更加圆滑,可有效提升机器人节拍。

但是转弯半径不是越大越好,需要根据当前运动指令实际运行的距离来设置,设置的转弯半径数值不可大于运动指令运行的距离,否则会出现“转弯路径故障”等警告。

例如在拾取放置动作过程中,机器人在拾取和放置之前需要先移动至其正上方处,之后竖直上下对工件进行拾取放置动作。

程序如下:MoveJ pPrepick,vEmptyMax,z50,tGripper;MoveL pPick, vEmptyMin, fine,tGripper;Set doGripper...MoveJ pPreplace,vLoadMax,z50,tGripper;MoveL pPplace, vLoadMin, fine,tGripper;Set doGripper在机器人TCP运动至pPrepick和pPrepplace点位的运动指令中写人转弯半径z50,这样机器人可在此两点处以半径为50mm的轨迹圆滑过渡,速度衰减较小,但在pPick和pPlace点位处需要置位夹具动作,所以一般情况下使用fine,即完全到达该目标点处再控制夹具动作。

在机器人运行轨迹过秤申,经常会有一些中间过渡点,例如拾取正上方位置点、放置正上方位置点、绕开障碍物而设置的一些位置点,机器人在该位置不会触发具体事件。

在运动至这些位置点时,应将转弯半径设置得相应大一些,这样可以减少机器人在转角时的速度衰减,可使机器人运行轨迹更加圆滑,可有效提升机器人节拍。

但是转弯半径不是越大越好,需要根据当前运动指令实际运行的距离来设置,设置的转弯半径数值不可大于运动指令运行的距离,否则会出现“转弯路径故障”等警告。

例如在拾取放置动作过程中,机器人在拾取和放置之前需要先移动至其正上方处,之后竖直上下对工件进行拾取放置动作。

程序如下:MoveJ pPrepick,vEmptyMax,z50,tGripper;MoveL pPick, vEmptyMin, fine,tGripper;Set doGripper...MoveJ pPreplace,vLoadMax,z50,tGripper;MoveL pPplace, vLoadMin, fine,tGripper;Set doGripper在机器人TCP运动至pPrepick和pPrepplace点位的运动指令中写人转弯半径z50,这样机器人可在此两点处以半径为50mm的轨迹圆滑过渡,速度衰减较小,但在pPick和pPlace点位处需要置位夹具动作,所以一般情况下使用fine,即完全到达该目标点处再控制夹具动作。

第六章、玻璃搬运任务实施双击附件“ST_GlassCarry”压缩包文件,如图所示:根据解压向导的相关提示解压该工作站,解压完成之后可进行仿真运行,查看该机器人工作站的运行情况,如图所示:继续点击下一个:点击下一个:点击仿真:播放完成:仿真过程中,机器人控制吸盘夹具动作进行拾取放置,将汽车玻璃从右侧支架搬运至左侧,完成之后,可重置该工作站,机器人及玻璃全部复位。

复位只可复位至上次开始前的状态。

恢复己保存状态可复位至之前已保存的状态。

点击“显示例行程序:即可显示对应程序,注解如下:MODULE MainMoudlePERS tooldatatGripper:=[TRUE,[[0,0,208],[0.707107,0,0,0.707107]],[1,[0,0,120],[1,0,0,0 ],0,0,0]];!定义工具数据tGripperPERS loaddata LoadEmpty:=[0.001,[0,0,0.001],[1,0,0,0],0,0,0];!定义空载时的有效载荷数据,得序白也可直接使用系统默认空载数据load()PERS loaddata LoadFull:=[0.1,[0,0,5],[1,0,0,0],0,0,0];!定义有效载荷数据PERS robtargetpHome:=[[870,0,987],[1.57E-07,0,1,0],[0,0,0,0],[9E+09,9E+09,9E+09,9E+ 09,9E+09,9E+09]];!定义机器人工作原理pHomePERS robtargetpPickBase:=[[985.653,210.818,637.932],[-2.94E-07,-0.704489,0.709714,1 .89E-07],[0,0,2,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];!定义拾取玻璃基准位置,价于右侧支架最上层玻璃仿置处pPlaceBase:=[[910,-215.541,460],[5.64E-07,0.709707,0.704497,3.5E-07], [-1,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];!定义拾取玻璃基准位置,价于右侧支架最下层玻璃仿置处PERS robtargetpPick:=[[985.653,210.818,457.932],[-2.94E-07,-0.704489,0.709714,1.89E -07],[0,0,2,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];!走义拾取玻璃仿置,在秤序运行中会以pPickBase为基准赋予不同的位置数据PERS robtargetpPlace:=[[910,-215.541,640],[5.64E-07,0.709707,0.704497,3.5E-07],[-1,-1 ,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];!定义放置玻璃位筐,在程序运行中会以pPlaceBase为基准赋予不同的位置数据PERS robtargetpSafe:=[[985,210,750],[1.69E-07,4.99E-07,1,2.9E-08],[0,0,2,0],[9E+09,9E +09,9E+09,9E+09,9E+09,9E+09]];!定义玻璃旋转时的安全位置,左侧拾取玻璃后提升到一定的安全高度进行旋转并运行到放置前的高度,此处定义该位置数据的目的是在程序运行过程申定义一个玻璃旋转的安全高度,用以保证玻璃旋转过程中不会与左右两侧支架发生碰撞pPickSafe:=[[935.653,110.818,750],[-2.94E-07,-0.704489,0.709714,1.89E -07],[0,0,2,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];!定义拾取玻璃之前以及之后的安全位置,两者使用同个安全位置PERS robtargetpPlaceSafe:=[[960,-115.541,750],[5.64E-07,0.709707,0.704497,3.5E-07],[ -1,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];!定义放雪玻璃之前以及之后的安全位置,两者使用同个安全位置PERS num nOffsX:=50;!定义X方向偏移值,之前所描述的两个安全位置数据其实是以基准点偏移计算得出的,无需单独示教,此数值即为偏移计算时所使用的,在后续的程序中有详细的介绍PERS num nOffsY:=100;!定义Y方向的偏移值,用法同上PERS num nOffsZ:=15;!定义Z方向的偏移值,用法同上PERS num nInterval:=60;!定义玻璃间隔数值,同一支架上的玻璃只是存坚直方向上依次可隅60mm摆放PERS num nCount:=1;!定义搬运计数器,运行过程中根据此数值的变化从而赋值不同的位置数据VAR triggdata VacuumOn;!定义触发数据,用于提前开启真空,这样有利于减少拾取过得所需时间VAR triggdata VacuumOff;!定义触发数据,用于提前关闭真空,这样有利于咸少放置过程所需时间PERS speeddata vMinSpeed:=[150,100,1000,5000];PERS speeddata vMidSpeed:=[250,200,1000,5000];PERS speeddata vMaxSpeed:=[500,300,1000,5000];!定义不同的速度数据,便于在程序中针对不同的动作过将采用合适的速度数据ONSTrobtargetpSafe10:=[[870.00,-0.00,987.00],[2.01662E-07,5.96244E-09,1,1.13832E-1 5],[0,0,3,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];PROC MAIN()!主程序rInitAll;!程序起始位置调用初始化程序,用于复位机器人位置、信号、数据等WHILE TRUE DO!采用WHILE TRUE DO死循环结构,将机器人需要重复运行的动作与初始化程序隔离开rPick;!调用拾取玻璃程序rPlace;!调用放置玻璃程序ENDWHILEENDPROCPROC rInitAll()!初始化程序ConfL\Off;ConfJ\Off;!关闭MoveL MoveJ运动过程中的轴配置监控,目的是使机器人在MoveL, MoveJ运动过得中能够自动选取合适的轴配置数据进行运动,在搬运码垛应用中可有放避免轴配置报警等问题AccSet 80,80;!设置机器人运行加速度,第个值为最大加速度百分比,第二个值为坡度百分比VelSet 80,1000;!设置机器人运行速度,第个值为速度百分比,第二个值为最大速度限制Reset doVacuum;!复位真空信号nCount:=1;!计数复位,从第一个物料开始重新处理TriggEquip VacuumOn,0,0.2\DOp:=doVacuum,1;!定义真空打开触发事件,在本案例中假设当前使用的真空系统其置位真空信号后需要0.2s方可达到建主真空的条件,及真空打开延迟o.2s.此处采用触发数据进行补偿,以便减少真空建立所需时间TriggEquip VacuumOff,0,0.2\DOp:=doVacuum,0;!定义真空关闭触发事件,本案例中假设当前使用的真空系统其复位真空信号后需要0.2s方可达完全释放真空,及真空关闭延迟0.2s. 此处采用触发数据进行补偿,以便减少真空释放所需时间pPickSafe:=Offs(pPickBase,-nOffsX,-nOffsY,0);pPickSafe.trans.z:=pSafe.trans.z;!计算放置前后的安全位置pPlaceSaf e:=Offs(pPlaceBase,nOffsX,nOffsY,0);pPlaceSafe.trans.z:=pSafe.trans.z;!计算放置前后的安全MoveJ pHome,vMinSpeed,fine,tGripper\WObj:=wobj0;!机器人位置复位,移动至工作原位pHomeENDPROCPROC rPick()!拾取程序rCalPos;!调用位置计算程序,计算出当前机器人的拾取、放置等各目标位置MoveJ pPickSafe,vMaxSpeed,z20,tGripper\WObj:=wobj0;!利用MoveJ快速移动至放置安全高度位MoveLOffs(pPick,-nOffsX,-nOffsY,nOffsZ),vMidSpeed,z10,tGripper\WObj: =wobj0;!利用MoveL运动至拾取前位置MoveLOffs(pPick,0,0,nOffsZ),vMinSpeed,z5,tGripper\WObj:=wobj0;!利用MoveL运动至拾取位置正上方TriggLpPick,vMinSpeed,VacuumOn,fine,tGripper\WObj:=wobj0;!利用TriggL运动至放置位置,并且在到达位置之前0.2s提前置为真空打开信号WaitTime 0.2;!等待定的时间,用以保证完全吸附GripLoad LoadFull;!拾取完成后加载有效载荷数据MoveLOffs(pPick,0,0,nOffsZ),vMinSpeed,z5,tGripper\WObj:=wobj0;!利用MoveL运动至拾取正上方MoveLOffs(pPick,-nOffsX,-nOffsY,nOffsZ),vMidSpeed,z10,tGripper\WObj: =wobj0;!利用MoveL横移至拾取后位置MoveL pPickSafe,vMaxSpeed,z20,tGripper\WObj:=wobj0; !利用MoveL运动至拾取安全高度处ENDPROCPROC rPlace()!放置程序MoveJ pPlaceSafe,vMaxSpeed,z20,tGripper\WObj:=wobj0;!利用MoveJ快速移动至放置安全高度处MoveLOffs(pPlace,nOffsX,nOffsY,nOffsZ),vMidSpeed,z10,tGripper\WObj: =wobj0;MoveLOffs(pPlace,0,0,nOffsZ),vMinSpeed,z5,tGripper\WObj:=wobj0;!利用MoveL运动至放置前位置处TriggLpPlace,vMinSpeed,VacuumOff,fine,tGripper\WObj:=wobj0;!利用TriggL运动至放置位置,并且在到达放置位置之前0.2s提前关闭真空,复位真空信号WaitTime 0.2;!等待一定时间,用以保证完全释放GripLoad LoadEmpty;!释放玻璃后,加载空载数据MoveLOffs(pPlace,0,0,nOffsZ),vMinSpeed,z5,tGripper\WObj:=wobj0; !利用MoveL运动至放置正上方MoveLOffs(pPlace,nOffsX,nOffsY,nOffsZ),vMidSpeed,z10,tGripper\WObj: =wobj0;!利用MoveL运动至放置后位置MoveL pPlaceSafe,vMaxSpeed,z20,tGripper\WObj:=wobj0;!利用MoveL运动至放置安全高度位置rPlaceRD;!调用计数程序,计数累计加l并检查是否已全部完成ENDPROCPROC rPlaceRD()!计数程序nCount:=nCount+1;!计数累计加lIF nCount>4 THEN!当前仔务只是搬运4块玻璃,此处检测是否已全部完成TPErase;TPWrite "Pick&Place done,the robot will stop!";!若己全部完成,则写屏显示当前任务已完成nCount:=1;!将计数器复位Reset doVacuum;!复位真空信号MoveJpHome,vMinSpeed,fine,tGripper\WObj:=wobj0; !复位机器人位置,移动至工作原位pHomeStop;!停止程序,等待下一次启动ENDIFENDPROCPROC rCalPos()!位置计算程序TEST nCount!判断计数器的值,从而为拾取、放贵点、赋予不同的位置数据CASE 1:pPick:=Offs(pPickBase,0,0,0);pPlace:=Offs(pPlaceBase,0,0,0);!计算第l次的拾取、放置位置CASE 2:pPick:=Offs(pPickBase,0,0,-nInterval);pPlace:=Offs(pPlaceBase,0,0,nInterval);!计算第2次的拾取、放置位置CASE 3:pPick:=Offs(pPickBase,0,0,-2*nInterval);pPlace:=Offs(pPlaceBase,0,0,2*nInterval);!计算第3次的拾取、放置位置CASE 4:pPick:=Offs(pPickBase,0,0,-3*nInterval);pPlace:=Offs(pPlaceBase,0,0,3*nInterval);!计算第4次的拾取、放置位置DEFAULT:TPErase;TPWrite "the counter is error,please check it!";Stop;!理论上计数到4后即会执行计数复位,若计数出错则写屏显示相关信息并停止运行,以防发生意外ENDTESTENDPROCPROC rTeachPos()!示教程序,此程序只用于示教之用,在程序运行过程中并不会调用此程序MoveJ pHome,v50,fine,tGripper\WObj:=wobj0;!示教工作原位pHomeMoveJ pSafe,v50,fine,tGripper\WObj:=wobj0;!示教安全高度,在程序中其实只是利用了此作置Z 方向的数值,并不会运动到此作置MoveJ pPickBase,v50,fine,tGripper\WObj:=wobj0;!示教拾取基准位置pPickBaseMoveJ pPlaceBase,v50,fine,tGripper\WObj:=wobj0;!示教放置基准位置pPlaceBaseENDPROCENDMODULE第七章、录制机器人作业虚拟仿真视频录制机器人作业仿真视频首先打开工作站,在仿真模块中点击仿真录像,然后点击播放,如图所示:播放完成后即录像完成,完成后可查看所录制的视频,点击查看录像,就能看到录制的视频,如图所示:视频文件见附件“仿真视频”。

相关文档
最新文档