工业机器人手动导航编程资料讲解
- 格式:doc
- 大小:1.03 MB
- 文档页数:19
机器人导航系统的设计与开发教程随着人工智能与机器人技术的不断进步,机器人已经逐渐成为我们生活中的重要伙伴。
而机器人导航系统作为机器人行动的核心,发挥着关键的作用。
本文将介绍机器人导航系统的设计与开发教程,帮助读者了解该系统的基本原理和实现方法。
一、机器人导航系统的基本原理机器人导航系统是一种能够让机器人在未知环境中自主导航的技术。
它可以通过感知环境并进行地图构建,确定机器人当前位置和目标位置,规划行动路径,并实时调整路径以应对环境变化。
1. 感知环境:机器人导航系统需要通过各种传感器来感知环境信息,包括激光雷达、摄像头、超声波传感器等。
这些传感器可以提供机器人周围的障碍物位置、地形高度、光线强度等信息。
2. 地图构建:机器人导航系统通过感知环境的数据构建地图,用于描述环境的特征和机器人在其中的位置。
地图可以是二维或三维的,可以使用栅格地图、拓扑图或点云等表示方法。
3. 位置估计:机器人导航系统需要通过感知数据和地图信息来确定机器人当前的位置。
常用的定位方法包括激光定位、视觉定位和惯性导航等。
这样一来,机器人就可以在未知环境中准确地知道自己所处的位置。
4. 路径规划:机器人导航系统需要根据当前位置和目标位置,结合地图信息,规划机器人的行动路径。
常用的路径规划算法包括A*算法、Dijkstra 算法和RRT(快速随机树)等。
5. 动态路径调整:机器人导航系统需要实时监测环境变化,并对路径进行调整以适应新的情况。
当机器人遇到新的障碍物或地形变化时,导航系统会根据实时感知信息优化路径规划结果。
二、机器人导航系统的开发流程1. 硬件准备:开始开发机器人导航系统之前,我们需要准备相应的硬件设备,包括机器人底盘、传感器和计算机等。
2. 系统架构设计:在开发机器人导航系统之前,我们需要先进行系统架构设计。
这包括确定各个模块的功能和接口设计,确定感知模块、控制模块和算法模块之间的协作关系。
3. 感知与地图构建:实现机器人导航系统的第一步是通过传感器获取环境信息,并将其转化为地图表示。
工业编程指南第1章工业编程基础 (3)1.1 工业概述 (4)1.1.1 发展历程 (4)1.1.2 分类 (4)1.1.3 结构与功能特点 (4)1.2 编程语言与编程环境 (4)1.2.1 编程语言 (4)1.2.2 编程环境 (4)1.3 编程的基本流程 (4)1.3.1 分析任务需求 (4)1.3.2 选择编程语言和编程环境 (4)1.3.3 编写程序 (5)1.3.4 程序调试与优化 (5)1.3.5 程序与运行 (5)1.3.6 程序维护与更新 (5)第2章编程语言 (5)2.1 基本指令与语法 (5)2.1.1 运动指令 (5)2.1.2 输入/输出指令 (5)2.1.3 流程控制指令 (5)2.1.4 语法规则 (5)2.2 函数与子程序 (6)2.2.1 函数 (6)2.2.2 子程序 (6)2.3 变量与数据类型 (6)2.3.1 变量声明与赋值 (6)2.3.2 数据类型 (6)第3章运动控制 (7)3.1 单轴运动控制 (7)3.1.1 控制原理 (7)3.1.2 控制指令 (7)3.1.3 控制策略 (7)3.2 联合运动控制 (7)3.2.1 控制原理 (7)3.2.2 控制指令 (8)3.2.3 控制策略 (8)3.3 速度与加速度控制 (8)3.3.1 速度控制 (8)3.3.2 加速度控制 (8)3.3.3 控制策略 (8)第4章路径规划 (9)4.1.1 直线轨迹描述 (9)4.1.2 直线轨迹规划方法 (9)4.1.3 直线轨迹规划步骤 (9)4.2 圆弧轨迹规划 (9)4.2.1 圆弧轨迹描述 (9)4.2.2 圆弧轨迹规划方法 (9)4.2.3 圆弧轨迹规划步骤 (9)4.3 空间曲线轨迹规划 (9)4.3.1 空间曲线轨迹描述 (10)4.3.2 空间曲线轨迹规划方法 (10)4.3.3 空间曲线轨迹规划步骤 (10)第5章视觉系统 (10)5.1 视觉系统概述 (10)5.1.1 视觉系统组成 (10)5.1.2 视觉系统工作原理 (10)5.2 图像处理与识别 (11)5.2.1 图像预处理 (11)5.2.2 特征提取 (11)5.2.3 目标识别与分类 (11)5.3 视觉定位与导航 (11)5.3.1 视觉定位 (12)5.3.2 视觉导航 (12)第6章感知与传感器 (12)6.1 传感器概述 (12)6.1.1 传感器基本概念 (12)6.1.2 传感器分类 (12)6.2 常用传感器及其应用 (12)6.2.1 位置传感器 (12)6.2.2 速度传感器 (13)6.2.3 力传感器 (13)6.2.4 温度传感器 (13)6.2.5 视觉传感器 (13)6.3 传感器数据融合 (13)6.3.1 信号级融合 (13)6.3.2 特征级融合 (13)6.3.3 决策级融合 (13)第7章离线编程 (14)7.1 离线编程概述 (14)7.2 离线编程软件及应用 (14)7.2.1 RobotStudio (14)7.2.2 RoboGuide (14)7.3 离线编程与仿真 (14)第8章编程实例 (15)8.1.1 坐标系建立与运动指令 (15)8.1.2 点到点运动编程 (15)8.1.3 圆弧插补编程 (15)8.1.4 示教编程实例 (15)8.2 复杂任务编程实例 (15)8.2.1 轨迹规划与编程 (15)8.2.2 多轴联动编程 (15)8.2.3 动态避障编程 (15)8.2.4 传感器与视觉系统应用编程 (15)8.3 生产线应用实例 (16)8.3.1 装配线编程 (16)8.3.2 焊接编程 (16)8.3.3 物流搬运编程 (16)8.3.4 检测与包装编程 (16)第9章编程调试与优化 (16)9.1 编程调试方法 (16)9.1.1 实时监控与日志分析 (16)9.1.2 单步调试与断点设置 (16)9.1.3 仿真与实物调试 (16)9.2 代码优化策略 (16)9.2.1 算法优化 (16)9.2.2 代码重构 (16)9.2.3 资源管理 (17)9.3 功能评估与改进 (17)9.3.1 功能指标 (17)9.3.2 功能测试 (17)9.3.3 改进措施 (17)第10章编程安全与维护 (17)10.1 编程安全规范 (17)10.1.1 保证编程环境安全 (17)10.1.2 编程过程中的安全措施 (17)10.1.3 编程完成后的安全检查 (18)10.2 常见编程故障排除 (18)10.2.1 程序错误 (18)10.2.2 运行异常 (18)10.2.3 系统故障 (18)10.3 维护与保养 (18)10.3.1 日常维护 (18)10.3.2 定期保养 (18)第1章工业编程基础1.1 工业概述工业作为现代制造业的关键设备,其作用在于提高生产效率、保证产品质量、降低劳动强度及减少生产成本。
工业机器人手动导航工业机器人手动导航编程摘要目的勺-本文旨在解决在工业环境中编程机器人的问题,其中需要简单的编程,而稳健性和安全性仍然是基本方面。
设计/方法/方法-这种机器人编程的新方法可以通过允许手动指导,来识别操作员自由地移动机器人通过其任务,然后可以使用演示程序编程方法或简单的方法来教授任务再生产。
结果-在本文中,讨论了实现手动引导的不同方式,并且提供了使用力/扭矩传感器来实现的理念,还提岀了实验结果和用例。
实际意义-举例说明了这种方法如何与工业机器人一起使用。
在工业环境中的实现应根据本文件所述的ISO安全标准进行调整。
原创性/价值-本文提岀了一个完整的最先进的问题,并显示了一个真正的实际用例,其中提岀的方法可有效促进教学过程。
关键词:控制,传感器,路径规划,编程,人机交互,人机界面(MMI ),工业机器人,手册引导,力传感器论文类型:研究论文1•介绍机器人的使用继续显示出增长的趋势;在2013年,机器人销售量增长了12%,达到178,13台,达到迄今为止为期一年的最高水平,到2014年全球机器人安装预计至少增加大约15%达到205,000台。
与此同时,相关研究以及机器人编程方法已经普及。
著名的软件框架ROS发挥了重要作用(机器人操作系统)(Quigley等人,2009),其操作方式简单省时,允许测试和重用其他的工作研究人员。
现在,尽管机器人技术也被用于医疗,个人和服务领域中,但相对广泛的使用仍然是在工业环境中。
工业机器人在新的轻量级方面表现越来越出色,主要表现在最大速度/加速度和重复性方面。
在工业过程中使用机器人的困难之一,通常是操作员缺乏操作机器人的编程知识。
事实上,将学术研究的结果部署到工业背景中往往是困难的,因为必须授予控制系统稳健性,而且机器人的简易性编程要符合有关保障操作人员安全的法规。
传统的和最广泛的机器人编程仍是通过机器人专用的教学器。
任务轨迹是通过指定一组机器人必须通过的点教给机器人。
工业机器人手动导航编程工业机器人手动导航编程摘要目的 - 本文旨在解决在工业环境中编程机器人的问题,其中需要简单的编程,而稳健性和安全性仍然是基本方面。
设计/方法/方法 -这种机器人编程的新方法可以通过允许手动指导,来识别操作员自由地移动机器人通过其任务,然后可以使用演示程序编程方法或简单的方法来教授任务再生产。
结果 - 在本文中,讨论了实现手动引导的不同方式,并且提供了使用力/扭矩传感器来实现的理念,还提出了实验结果和用例。
实际意义 - 举例说明了这种方法如何与工业机器人一起使用。
在工业环境中的实现应根据本文件所述的ISO安全标准进行调整。
原创性/价值 - 本文提出了一个完整的最先进的问题,并显示了一个真正的实际用例,其中提出的方法可有效促进教学过程。
关键词:控制,传感器,路径规划,编程,人机交互,人机界面(MMI),工业机器人,手册引导,力传感器论文类型:研究论文1.介绍机器人的使用继续显示出增长的趋势;在2013年,机器人销售量增长了12%,达到178,13台,达到迄今为止为期一年的最高水平,到2014年全球机器人安装预计至少增加大约15%达到205,000台。
与此同时,相关研究以及机器人编程方法已经普及。
著名的软件框架ROS发挥了重要作用(机器人操作系统)(Quigley等人,2009),其操作方式简单省时,允许测试和重用其他的工作研究人员。
现在,尽管机器人技术也被用于医疗,个人和服务领域中,但相对广泛的使用仍然是在工业环境中。
工业机器人在新的轻量级方面表现越来越出色,主要表现在最大速度/加速度和重复性方面。
在工业过程中使用机器人的困难之一,通常是操作员缺乏操作机器人的编程知识。
事实上,将学术研究的结果部署到工业背景中往往是困难的,因为必须授予控制系统稳健性,而且机器人的简易性编程要符合有关保障操作人员安全的法规。
传统的和最广泛的机器人编程仍是通过机器人专用的教学器。
任务轨迹是通过指定一组机器人必须通过的点教给机器人。
但是,以这种方式得到机器人的轨迹,使教学变得非常慢,并且只要有一点改变,任务就必须每次都一遍又一遍的做。
最近,更多的可用性执行硬件和高级CAE工具使用离线编程,这允许检查工业运行的可行性,甚至计划任务通过使用个人计算机,而不需要停止生产系统。
这样,可用的机器人的运动学模型和相应的仿真包拓展了一系列新的功能,但是,另一方面,需要一个专家工程师来编程机器人。
工业背景下易于编程的必要性还源于最终客户的需求敦促;业界呼吁机器人细胞应越来越灵活,达到模块化和适应不同的生产要求的需求。
工业生产力水平越来越高,制造场景需要更短的任务执行时间和更快的机器人系统编程周期。
此外,运营商往往不是一个机器人专家,因而教挂件编程已成一种费时并执行艰巨的任务。
机器人编程的一个新的有前途的方法似乎是编程示范(PBD),它允许操作员以一种简单而自然的方式教给机器人任务,因此无需机器人编程经验。
在教学过程中,除了关节的位置,几个测量可以考虑和整合在一起,如力配置文件或语音命令。
这些方法可以定制,取决于用不同的策略处理异常的任务。
一个理想的解决方案将是一个当操作者跟踪他的动作时是做任务,然后,使用机器学习方法,再现的任务被教给机器人。
这是近年来研究的一个具有挑战性的课题;此外,从工业的角度来看,这些方法仍然不够强大。
此外,如果任务在执行,举起重物是必需的,操作员没有足够的体力来完成任务。
作为一个结果,这是一个更强大的方法。
管理繁重的任务是手动指导(或步行通过)。
这种类型的控件可以让用户以一个自由的方式物理移动机器人,这些动作可以编码,教育和用于学习一个广义版本的任务或复制。
这种新的方式用于机器人编程带来的问题:在人体–机器人安全的相互作用。
这是手工的一个基本方面的指导。
在工厂的工业机器人授予安全操作的主要标准是ISO 10218-1 / 2(ISO10218-1,2011;ISO 10218-2,2011);其他安全规范,关于人与人之间的安全距离以及与机器人之间的距离包含在ISO 13855(2010)。
此外,人类和机器人之间的相互作用正在引发机器人社区内部越来越多的争论,一个新的ISO 15066(2014)的主题是发展。
这个手册的指导是ISO10218-2,安全是通过限制最大速度和机器人在身体接触时所提供的功率来保证的。
此外,机器人必须配备紧急停止和使装置通常能安装端部执行器。
特别提到了一些新的轻量级的机器人,像库卡LBR IIWA(2014)或通用机器人(2 014)。
这些机器人被认证为能与人类合作,适合人-机器人安全互动与编程的一个示范。
把任务传给机器人的另一种方法是使用触觉设备,它可以用来指挥速度机器人,同时有效反馈给用户,任务也可以以这种方式传递给任何类型的机器人。
这样的设备是非常昂贵的,因此,由于这个原因,目前,他们不能在工业环境中采用;另一方面,它们主要在医疗或康复技术方面进行机器人的应用。
文章的组织如下:第2节将展示不同方法,实现人工指导,着眼于他们的利弊;在第3节,实现手动制导控制,基于使用的力/力矩传感器。
最后的部分4和5,将讨论实验结果和提出工业的测试用例。
2.人工指导方法综述为了实现手动引导,几种控制方法可以使用不同类型的传感器或更多的一般硬件实现。
大多数类型的控制计划利用力/力矩传感器安装在机器人的手腕;这样的传感器的使用允许的控制方案的设计给予末端执行器非常精确的运动,比如,导纳/阻抗控制(bascetta et al.,2013;Ikeuraet al.,1994;Hogan,1985)或力控制(西西利亚诺维兰尼,2000)。
这些大部分的主要缺点方法是帽子,除了成本的力量/扭矩传感器,他们依赖于一个强大的动态模型的可用性机器人手臂。
其他研究人员提出先进的变种这两种类型的控制,如可变阻抗控制(Ikeura和inooka,1995),自适应准入控制(TEE等,2010)或基于虚拟夹具的准入控制(marayong et al.,2008):这是沙发软件生成的运动指导,基于视觉系统,推断机器人的几何形状和所需的工作空间计算运动约束。
混合动力/运动控制,它可以实现在运动(Raibert克雷格,1981)和动态水平(西西利亚诺都,2000),描述结合力控制和速度控制,通过选择矩阵。
几年以来,一些新的轻量级机器人来实现合规控制,如,例如,库卡LWR IV(比绍夫等,2010)。
这是一个周期全机器人的标志社区正在走向机器人同事的概念。
使操作者感觉他/她正在移动一个工具减少质量(而不是沉重和僵硬的机器人),这个机器人运动的动力学可以被描述为“虚拟工具:末端执行器被建模为选择的虚拟点自由空间中任意放置的质量环境。
机器人可以控制使用准入控制(Ferretti et al.,2009)或一个简单的运动控制(亲王和kyrki,2011)。
另一个有趣的方法是混合从力/力矩传感器与视觉信息(库恩等人,2006)。
这里的允许的最大末端执行器速度正比于机器人与周围障碍物之间的距离;那个方式,机器人防止碰撞。
其他作品有开发了一个力控制,而无需使用力传感器,通过使用观察方法(Ohishi和Ohde,1994)或看外部力量的干扰(EOM et al.,1998)另一种实现手动引导的方法是使用故障检测和识别外部力的方法(De Luca 等人,2006):在这种情况下,外力可以检测的定义观察和测量命令转矩和实际值之间的差异扭矩.这种方法有缺点,操作者必须一个接一个地移动关节,从而导致一种不自然的运动的感觉,而且,机器人的动态模型必须是可用的。
最后,这种方法主要适合用于意外碰撞检测和反应。
其他作品尝试使用电机的电流来估计在每一个关节力矩(陈和kazanzides,2013):扭矩然后可以使用估计来实现手动制导。
在特别是,在Geravand等(2013)研究,低和高通滤波器应用于电机电流检测人的故意互动。
尽管这些创新方法,它们不适合工业,无论在条款运动的稳健性和精确性。
最后,最近的一个方法来执行运动运动是通过backdrivability,像巴雷特WAM(史米斯2006),而允许机器人与backdrivable电机被用户保持他们在引导零重力控制模式,这些机器人特别用于测试学习算法(kormushev et al.,2011)。
这个缺点backdrivability是只适合轻或小型机器人,因为机器人的惯性,从而,它不能应用于工业机器人。
此外,在这个的情况下,用户必须移动关节一个接一个,这使得它很难(特别是对于机器人有多个学位自由地进行自然流畅的动作。
3.使用力/力矩传感器的手动制导在本节中,将解释基于人工引导使用的力/力矩传感器和重力补偿与控制算法。
这个传感器安装在手机器人腕和末端执行器之间。
在本节中,重力补偿和控制算法将被解释。
3.1重力补偿区分使用者的输入力与重力力对末端执行器,一个静态模型的机器人(即机器人手臂,力/力矩传感器和 d-effector)必须发展。
从力和力矩开始由传感器测量,从而有:Fm=fh+g(1)Tm=Th+Tg(2)在传感器框架下,将这些方程式表达成一个综合框架则有:Rfm=fh+g(3)RT=Th+Tg(4)从传感器框架到末端执行器框架(这是常数)。
方程(3)和(4)可以解决找出人类施加的力/力矩:Fh=rfm-fg(5)Fh=rtm-r*g (6)末端执行器质量中心的位置矢量参照传感器框架的起源,表示F3.2控制器重力补偿力和力矩在前一节中描述的,是虚拟工具控制器:据估计,与P 比例控制器,它将产生一个更自然的感觉当移动末端执行器时。
虚拟工具控制器基本上命令机器人加速末端日与施加的力/力矩成比例.人类和增加阻尼因子减速的机器人使它停止快速时,外力不适用任何更多。
以这种方式,末端执行器的动力学建模为一个虚拟点,其集中质量位于末端执行器的质量中心。
因为重力的机器人末端执行器H的真实质量被补偿为上述款所述,尚未考虑在控制器中。
由于机器人被控制在速度域期望的平移和旋转末端执行器的速度在时间T被定义为:施加的力和力矩成比例人,和阻尼因子,这是需要提供电阻。
特别是当力绝对值/扭矩小于钍受到,阻尼系数需要减速的机器人的动作。
这就是为什么两个不同的增益矩阵(K2、K3)用于两例:因为当没有任何力量时,机器人需要减速更快。
为此,K3的要素的选择比K2的大得多。
最后,末端执行器的速度转换在关节速度。
角(即节点数等于该数的自由度的任务),一个简单的反演可以使用的矩阵,而不是图1说明了整体控制方案中使用的建议的方法:力和扭矩测量传感器是第一重力补偿,如前所述段,然后使用虚拟工具控制器获得E 末端速度参考。
这个参考是最后使用伪逆映射在机器人的关节雅可比。
如果末端执行器与环境接触,则传感器会感觉到正常的力,会迅速移动从触摸点:这样的议案将只是一个短暂的效果,其特征在于速度正比于接近速度从而对传感器所测得的力。