yj lim,mathworks
工业机器人需要许多工程领域的知识,包括机械设计、感知、决策、控制设计和嵌入式系统。了解完成取放机器人工作流程的关键组件和步骤。
拾取机器人包括用于感知环境的基本初始化步骤,其次是两个主要步骤,例如识别零件并执行拾取和放置工作流程。与传统的工业机器人任务相比,预先定义了工作区区域中的所有对象,使用计算机视觉的扫描和构建环境流程对于采摘高混合零件和灵活的操作非常重要。计算机Vision Toolbox™和深度学习工具箱™用于对象检测。下一个任务是通过避免在场景中的障碍物的碰撞来指示机器人从初始配置移动到所需的联合配置。运动规划包括路径规划和轨迹生成,提供平稳的联合轨迹,并解决实用的工业机器人任务。在此视频中,您将看到为工业机器人操纵器应用引入的双向快速探索随机树(RRT)算法。路径规划器提供的路径构成轨迹生成的输入。然后,轨迹发生器将生成基于时间的控制序列,了解如何随时间给出给定的约束的路径。您还将了解何种策略方式®可以用于安排高级任务,并在拾取放置工作流中从一个任务到另一个任务执行步骤。
有关本视频中使用的工具的更多信息,请参考以下资源:
在这段视频中,我将讨论工业机器人应用程序的设计特别是用MATLAB进行机器人应用程序的开发。在这段视频的过程中,我将涵盖以下主题。
首先,我将开始介绍工业机器人及其各种应用。然后我将讨论关键组件和步骤,以完成拾取和放置的机器人工作流,如扫描和构建环境,检测和分类的部分,路径规划,轨迹生成。最后,我将指出其他可用资源。
在这里,我们看到左侧和相应的视频在机器人手臂执行拾取器的右侧。拣货自动化可以加快拾取零件或物品的过程,并将其放在另一个地点的最后一英里行业应用。通常,该应用程序使用高级感知系统和自主弯头区域来识别,掌握和将对象从一个地方移动到另一个地方。
拾取放置机器人一般包括感知、规划和控制等要素。全局机械手可以根据摄像机的输入自主地检测特定的目标,并规划路径来拾取目标。
正如你所能想到的,它涉及到几种不同的技术——比如机器人技术、优化、计算机视觉、机器学习、控制器逻辑等等。从设计机器人应用程序开始,我们可以从一个系统开始,这个系统代表了我们需要的组件之间的交互。
在这种情况下,我们需要从感知模块、运动规划器和状态控制器、模拟器或加载条到原型的对象检测器和崩溃文件,并迭代和测试每种性能。
在这张幻灯片中,我进一步分解了整个取放工作流。此流程图解释了负载臂机械手如何与物体交互的细节。它可以包括感知环境的基本初始化步骤,然后是两个主要步骤——例如识别部件和执行拾取放置任务。
第一个关键步骤是更容易感知环境。通过利用计算机视觉的3D扫描和点云处理,需要自主工业机器人对动态环境做出响应,如零件位置的变化或动态障碍物。与传统的取放作业相比,这些步骤对于高混合组分的取放和灵活的自动化是非常重要的。
这种方法将克服传统工业机器人应用的局限性。因此,在开始拾取放置任务之前,机器人移动预定义的工作空间区域,使用机载附加传感器扫描场景并捕获环境的一组点云。
一旦机器人扫描工作区区域,就进一步处理捕获的点云以被编码为碰撞网格,以便机器人可以在通过计划期间容易地识别障碍物和部分。此处示出了来自点云到碰撞网格的过程。几个点云处理工具将从MATLAB中的计算机视觉工具箱中使用 - 例如将点云变换,点云涌现和分段点云中的群集。最后,您可以从生成的点云段创建碰撞网格对象然后路径打印机将理解这些网格作为避免的障碍。
我们现在需要对物体进行检测和分类,这样机器人就能知道该捡起哪个物体。我们可以创建一组用于训练的图像数据。在这里,我们在机器人周围移动,从许多不同的摄像机视角捕捉图像流。然后利用深度学习对目标或图像进行分类和检测。
该图像可以使用图像标签应用程序从计算机视觉工具箱。这样就可以为检测模型创建训练数据步骤。来自计算机视觉工具箱的检测函数可以为您提供被检测对象上方的边界框的图像位置及其类。
在这个回收机器人示例中,在凉亭模拟器中,我们有两个级别的系统对象 - 底部,可以放在桌子的不同位置。我们使用从机器人的模拟相机饲料,并应用预训练的深度学习模型来检测可回收部分。该模型将相机帧作为输入,然后输出对象的位置和它所需的回收类型。
机器人现在知道要避免碰撞的障碍物,要捡起的物体,以及要把它们放在哪里。接下来的测试是通过操作碰撞来拾取物体并放置物体来指导机器人从初始计算到期望的关节计算。
为了移动局部工件到达对象,我们需要运动计划器。让我们深入到路径规划,和轨迹生成提供平滑的关节轨迹解决实际的机器人任务。机器人在一个环境中拾取和放置物体可能需要路径规划算法来找到机器人从一个配置到另一个计算的无碰撞路径。它是对运动的纯粹几何描述。考虑到障碍规避,并协商一个复杂的场景全局。
它将初始配置,最终配置和环境作为输入。有趣的是有趣的是需要满足的约束。约束示例是机器人连接限制和障碍物。Path Planner将发现从启动配置,目标配置的碰撞预关节轨迹。根据您使用的应用程序,环境和机器人的特性,您可以使用优化理论或基于采样的路径规划仪启动它。
在这里,我想给大家介绍一种机器人机械手的双向反复爆炸库存算法。双向RRT规划器将创建两个指定为启动和目标配置的树。它需要指定sum属性。首先规划最大连接距离的配置。还有一个可选的,连接到启发式可能会提高你的速度。为了从一开始就扩展每个树和目标配置,规划器生成一个随机配置。如果有效,这意味着与环境没有冲突,则根据最大连接距离属性从列出的节点中移除一步。
扩展后,规划器尝试连接两个树之间。无效的配置或与环境冲突的连接不会添加到树中。当EnableConnectHeuristic属性为真时,这禁用了最大连接距离属性的限制,并且连接碰撞前两个三个直接当两个节点看到对方。当环境不太拥挤时,启发式的连接对于缩短计划时间很有用。
当我们设置启动属性将启发式属性设置为false时,我们将扩展距离限制为两个三个之间的连接到最大连接距离的值。这将导致越来越高的查找有效计划,但可能需要两个长路径。我们可以通过学习随机化器缩短策略来使用路径缩短功能来缩短指定的路径。例如,这是初始通行证。您可以选择两个非相邻的边,并在我们选择的边上选择中间配置。尝试连接它们。如果无效,请跳过添加此边缘。但我们重复另外两个非相邻的边缘。如果有效,请添加此边缘。然后,我们可以删除另一个更长的边缘。
在此幻灯片中,我显示了一个示例,展示了如何为全局操纵器使用双向RRT函数的示例。正如我所讨论的那样,有几个属性来调整机器人路径,以便您可以进行短路径,或改善路径规划时间。当将物体放置在墙壁上时,我在这里显示出由较大的两条路径和较小的最大连接距离。规划的计算时间 - 规划师与生成的配置数量成比例。
为了提高规划时间,可以考虑增加验证距离或减少最大连接距离。由路径规划器提供的路径构成轨迹生成的输入。然后轨迹发生器生成基于时间的序列,或者通过多项式函数的类局部连接路径点来实现给定的位置、速度、加速度等约束。所以轨迹是对如何跟随时间路径的描述。我们现在可以知道路径规划和轨迹生成之间的区别了。
有几种方法可以创建插值时间的轨迹。例如,梯形速度轨迹是恒定加速度,零加速度和恒定减速的轨迹轨迹。这导致梯形阶段一段时间。实现以防止诸如位置,速度和加速度限制等要求无效。您还可以使用多项式的各种顺序在两条点之间插值。实践中最常见的顺序是立方多项式和Quintic多项式。多项式轨迹可用于连续缝合零或非零速度和加速度的段,因为加速曲线与梯形速度轨迹不同。
因此,我们需要不断通过检测物体的状态,拾取它们,并将它们放在正确的分期区域。为此,稳定器图表可用于安排高级任务,然后从任务转到拣选和工作流程的任务。最后,通过将所有步骤置于此示例中,机器人识别部分,并将它们再循环到两个引脚中。在此示例中,机器人正在凉亭模拟器上学习,其中安装在机器人上的模拟深度相机。
我们使用双向RRT路径规划器和轨迹生成的梯形速度曲线。此示例使用多个ajoint工具箱。机器人系统工具箱用于模拟,并模拟操纵器。ROS工具箱用于将MATLAB连接到凉亭模拟器。计算机视觉工具箱和深度学习工具箱用于使用点云处理对象检测。它开始扫描与点云处理构建场景的环境。一旦从扫描和构建环境步骤获得了工作区域的完整场景,机器人就可以计划挑选的路径,并将零件放在回收站。机器人继续工作,直到旧的部分放置。这里所示的回收机器人示例,也可以是不同场景的预示,如焊接和组装。
在这段视频中,用覆盖的挑选与matlab的少量应用程序开发。我们有很多例子可以开始使用。我在这里列出了一些例子,有关机械手动运动计划,轨迹生成和追随,以及从机器人工具箱中可以尝试的机器人工具箱碰撞检查。我鼓励您访问机器人系统工具箱网页。我们有一个关于我们网站上发布的研讨会多名,以帮助加快您的发展工作。此外,我们还有一个简短的视频,而GitHub存储库可以帮助您加快几个主题。我会请您探索这些资源,并查看这些资源是否可以帮助您的应用程序。感谢您的关注。
你也可以从以下列表中选择一个网站:
请选择表现最佳的中国网站(中文或英文)。MathWorks的其他国家网站并没有针对您所在位置的访问进行优化。