有多少人工,就有多少智能

随笔分类 -  Linux

摘要:MoveItCpp 教程 介绍 MoveItCpp 是一个新的高级接口,一个统一的 C++ API,不需要使用 ROS 操作、服务和消息来访问核心 MoveIt 功能,并且是现有MoveGroup API的替代方案(不是完全替代) ,我们建议需要更多实时控制或行业应用的高级用户使用此接口。PickN 阅读全文
posted @ 2024-09-18 12:17 lvdongjie-avatarx 阅读(66) 评论(0) 推荐(0) 编辑
摘要:子坐标是在CollisionObjects上定义的坐标。 它们可用于定义您放置在场景中的对象上的兴趣点,例如瓶子的开口、螺丝刀的尖端或螺丝的头部。它们可用于规划和编写机器人指令,例如“拿起瓶子,然后将开口移到水龙头的喷口下方”,或“拿起螺丝刀,然后将其放在螺丝头上方”。 编写专注于机器人操纵对象的代 阅读全文
posted @ 2024-09-18 10:56 lvdongjie-avatarx 阅读(31) 评论(0) 推荐(0) 编辑
摘要:MoveIt 深度把握 本教程演示了如何在 MoveIt 任务构造器中使用抓握姿势检测 (GPD)和 Dex-Net 。 GPD(左)和 Dex-Net(右)用于生成拾取圆柱体的抓取姿势。 https://moveit.picknik.ai/main/_images/mtc_gpd_panda.gi 阅读全文
posted @ 2024-09-18 10:07 lvdongjie-avatarx 阅读(117) 评论(0) 推荐(0) 编辑
摘要:MoveIt Grasps 是一款用于抓取块或圆柱体等物体的抓取生成器,可用作 MoveIt 拾取和放置管道的替代品。MoveIt Grasps 提供基于可达性和接近、抬起和后退运动的笛卡尔规划来过滤抓取的功能。 抓握生成算法基于简单的长方体形状,不考虑摩擦锥或其他抓握动力。 MoveIt Gras 阅读全文
posted @ 2024-09-12 14:34 lvdongjie-avatarx 阅读(146) 评论(0) 推荐(1) 编辑
摘要:拾取和放置 注意:本教程中使用的功能已弃用。要执行拾取和放置操作,应使用 MoveIt 任务构造器 (MTC)(使用 MoveIt 任务构造器拾取和放置)。 在 MoveIt 中,抓取是使用 MoveGroup 接口完成的。为了抓取一个物体,我们需要创建moveit_msgs::Graspmsg,以 阅读全文
posted @ 2024-09-12 12:04 lvdongjie-avatarx 阅读(194) 评论(0) 推荐(0) 编辑
摘要:使用近似约束流形进行规划 OMPL 支持自定义约束,以使规划轨迹遵循所需的行为。约束可以在关节空间和笛卡尔空间中定义,后者基于方向或位置。在规划轨迹时,每个关节状态都需要遵循所有设置的约束,默认情况下,这是通过拒绝采样来执行的。然而,这可能会导致非常长的规划时间,特别是当约束非常严格且拒绝率相应较高 阅读全文
posted @ 2024-09-12 11:10 lvdongjie-avatarx 阅读(82) 评论(0) 推荐(0) 编辑
摘要:时间参数化 MoveIt 目前主要是一个运动规划框架 - 它规划关节或末端执行器的位置,但不规划速度或加速度。但是,MoveIt 确实利用后处理来对速度和加速度值的运动轨迹进行时间参数化。下面我们将解释 MoveIt 这一部分所涉及的设置和组件。 速度控制 来自文件 默认情况下,MoveIt 将关节 阅读全文
posted @ 2024-09-12 09:40 lvdongjie-avatarx 阅读(131) 评论(0) 推荐(0) 编辑
摘要:本节将引导您了解 C++ 示例代码,该代码可让您在 RViz 中移动和与机器人手臂交互时可视化机器人本身与世界之间的碰撞接触点。 入门 运行代码 使用 Roslaunch 启动文件直接从 moveit_tutorials 运行代码: roslaunch moveit_tutorials visual 阅读全文
posted @ 2024-09-09 15:27 lvdongjie-avatarx 阅读(89) 评论(0) 推荐(0) 编辑
摘要:创建 MoveIt 插件 本节详细说明了如何在 ROS 中添加插件。两个必需元素是基类和插件类。插件类继承自基类并覆盖其虚拟函数。用于此目的的主要库是 pluginlib。本教程包含三种不同类型的插件,即运动规划器、控制器管理器和约束采样器。 运动规划器插件 在本节中,我们将展示如何将新的运动规划器 阅读全文
posted @ 2024-09-09 13:33 lvdongjie-avatarx 阅读(141) 评论(0) 推荐(0) 编辑
摘要:在Moveit中, 运动规划器被设置为规划路径。 但是, 我们经常需要预处理运动规划请求和后处理规划路径(例如, 用于时间参数化)。 在这种情况下, 我们使用规划管道,它将运动规划器与预处理和后处理阶段链接在一起。预处理和后处理阶段称为规划请求适配器,可以通过 ROS 参数服务器的名称进行配置。在本 阅读全文
posted @ 2024-09-08 21:30 lvdongjie-avatarx 阅读(110) 评论(0) 推荐(0) 编辑
摘要:在 MoveIt 中,运动规划器使用插件基础结构加载。这允许 MoveIt 在运行时加载运动规划器。在此示例中,我们将运行执行此操作所需的 C++ 代码。 入门 如果您还没有这样做,请确保您已经完成入门指南中的步骤。 运行演示 打开两个 shell。在第一个 shell 中启动 RViz 并等待所有 阅读全文
posted @ 2024-09-02 14:15 lvdongjie-avatarx 阅读(227) 评论(0) 推荐(0) 编辑
摘要:在本教程中,我们将研究如何使用规划场景差异来执行两项操作: 在世界中添加和移除物体 将物体安装到机器人上或从机器人上卸下 入门 如果您还没有这样做,请确保您已经完成入门指南中的步骤。 运行代码 打开两个 shell。在第一个 shell 中启动 RViz 并等待所有内容完成加载: ros2 laun 阅读全文
posted @ 2024-09-02 13:25 lvdongjie-avatarx 阅读(41) 评论(0) 推荐(0) 编辑
摘要:PlanningSceneMonitor是维护最新规划场景的推荐接口。RobotState、CurrentStateMonitor、PlanningScene、PlanningSceneMonitor和PlanningSceneInterface之间的 关系一开始可能非常令人困惑。本教程旨在阐明这些 阅读全文
posted @ 2024-09-02 11:04 lvdongjie-avatarx 阅读(44) 评论(0) 推荐(0) 编辑
摘要:moveit_resources_panda_moveit_config 是一个在 MoveIt 框架中常用的资源包,包含了 Panda 机器人模型(Franka Emika Panda)的配置文件。这个包用于测试和演示 MoveIt 的功能。它通常包含以下内容: URDF/XACRO 文件:描述 阅读全文
posted @ 2024-08-31 13:31 lvdongjie-avatarx 阅读(119) 评论(0) 推荐(0) 编辑
摘要:规划场景 PlanningScene类提供了用于碰撞检测和检查约束的主要接口。 在本教程中, 我们将探索此类的C++接口。 入门 如果您还没有这样做,请确保您已经完成入门指南中的步骤。 完整代码 完整代码可以在 MoveIt GitHub 项目中看到。 设置 可以使用RobotModel或URDF和 阅读全文
posted @ 2024-08-30 08:00 lvdongjie-avatarx 阅读(62) 评论(0) 推荐(0) 编辑
摘要:1. 编译调试版本: 在使用 colcon build 编译工作区时,你需要确保以调试模式编译,添加 --cmake-args -DCMAKE_BUILD_TYPE=Debug 参数: colcon build --cmake-args -DCMAKE_BUILD_TYPE=Debug 2. 使用 阅读全文
posted @ 2024-08-24 22:37 lvdongjie-avatarx 阅读(489) 评论(0) 推荐(1) 编辑
摘要:moveit_resources stderr: gz_ros2_controlCMake Error at CMakeLists.txt:27 (find_package): By not providing "Findgz_sim_vendor.cmake" in CMAKE_MODULE_PA 阅读全文
posted @ 2024-08-24 16:09 lvdongjie-avatarx 阅读(125) 评论(0) 推荐(0) 编辑
摘要:本教程将向您介绍一个工具,通过在 RViz 中呈现可视化效果,该工具可以帮助您更轻松地了解 MoveIt 应用程序正在做什么。 先决条件 如果你还没有完成,请确保你已经完成了你的第一个项目hello_moveit中的步骤。这个项目假设你从上一个教程结束的地方开始。 步骤 1 添加依赖 moveit_ 阅读全文
posted @ 2024-08-05 11:00 lvdongjie-avatarx 阅读(111) 评论(0) 推荐(0) 编辑
摘要:moveit_visual_tools.prompt 是 MoveIt! 的一个功能,用于在可视化工具中暂停程序执行并提示用户进行某些操作。在机器人开发和调试过程中,通常需要与用户进行交互,比如等待用户在界面上点击按钮或在某个状态下继续执行程序。moveit_visual_tools.prompt 阅读全文
posted @ 2024-08-04 22:42 lvdongjie-avatarx 阅读(45) 评论(0) 推荐(0) 编辑
摘要:什么是闭包? 闭包是一种可以捕获其创建环境中的变量的函数。闭包允许函数在离开其创建环境后仍然访问和操作这些变量。 Lambda表达式 lambda表达式的基本语法如下: [capture](parameters) -> return_type { // function body }; captur 阅读全文
posted @ 2024-08-04 22:29 lvdongjie-avatarx 阅读(53) 评论(0) 推荐(0) 编辑