MoveItConfigsBuilder 配置机器人的完整示例

from moveit_configs_utils import MoveItConfigsBuilder

moveit_config = (

MoveItConfigsBuilder("fairino3_v6_robot", package_name="fairino3_v6_left_arm")

.robot_description(file_path="config/fairino3_v6_robot.urdf.xacro")

.robot_description_semantic(file_path="config/fairino3_v6_robot.srdf")

.robot_description_kinematics(file_path="config/kinematics.yaml")

.joint_limits(file_path="config/joint_limits.yaml")

.trajectory_execution(file_path="config/moveit_controllers.yaml")

.planning_scene_monitor(

publish_robot_description=True,

publish_robot_description_semantic=True,

publish_geometry_updates=True,

publish_state_updates=True,

publish_transforms_updates=True,

)

.planning_pipelines(

pipelines=["ompl", "stomp", "pilz_industrial_motion_planner"],

default_planning_pipeline="ompl",

)

.to_moveit_configs()

)

示例解释:

  1. 初始化

    • MoveItConfigsBuilder("fairino3_v6_robot", package_name="fairino3_v6_left_arm"):创建一个 MoveItConfigsBuilder 对象,指定机器人的名称为 fairino3_v6_robot,ROS 包的名称为 fairino3_v6_left_arm
  • 机器人描述

    • .robot_description(file_path="config/fairino3_v6_robot.urdf.xacro"):加载机器人的 URDF 文件,用于描述机器人的物理结构
  • .robot_description_semantic(file_path="config/fairino3_v6_robot.srdf"):加载机器人的 SRDF 文件,用于描述机器人的语义信息,如碰撞检测、运动学约束等

  • .robot_description_kinematics(file_path="config/kinematics.yaml"):加载运动学配置文件,定义机器人的运动学参数

  • .joint_limits(file_path="config/joint_limits.yaml"):加载关节限制配置文件,定义关节的运动范围和速度限制

  • 轨迹执行

    • .trajectory_execution(file_path="config/moveit_controllers.yaml"):加载轨迹执行配置文件,定义控制器的名称、类型和控制的关节
  • 规划场景监控

    • .planning_scene_monitor(...):配置规划场景监控器,设置是否发布机器人描述、几何更新、状态更新和变换更新等信息
  • 规划管道

    • .planning_pipelines(...):配置运动规划管道,指定可用的规划管道(如 omplstomppilz_industrial_motion_planner)以及默认的规划管道
  • 生成配置

    • .to_moveit_configs():将所有配置信息转换为 MoveIt 配置文件

这个示例涵盖了 MoveIt 配置的多个关键方面,可以根据具体需求进行调整和扩展。

相关推荐
Ven%2 小时前
如何让后台运行llamafactory-cli webui 即使关掉了ssh远程连接 也在运行
运维·人工智能·chrome·python·ssh·aigc
Jeo_dmy2 小时前
(七)人工智能进阶之人脸识别:从刷脸支付到智能安防的奥秘,小白都可以入手的MTCNN+Arcface网络
人工智能·计算机视觉·人脸识别·猪脸识别
睡觉狂魔er3 小时前
自动驾驶控制与规划——Project 5: Lattice Planner
人工智能·机器学习·自动驾驶
xm一点不soso4 小时前
ROS2+OpenCV综合应用--11. AprilTag标签码跟随
人工智能·opencv·计算机视觉
陌然。。4 小时前
【701. 二叉搜索树中的插入操作 中等】
数据结构·c++·算法·leetcode·深度优先
Ritsu栗子4 小时前
代码随想录算法训练营day25
c++·算法
云卓SKYDROID5 小时前
无人机+Ai应用场景!
人工智能·无人机·科普·高科技·云卓科技
是十一月末5 小时前
机器学习之过采样和下采样调整不均衡样本的逻辑回归模型
人工智能·python·算法·机器学习·逻辑回归
小禾家的5 小时前
.NET AI 开发人员库 --AI Dev Gallery简单示例--问答机器人
人工智能·c#·.net
生信碱移5 小时前
万字长文:机器学习的数学基础(易读)
大数据·人工智能·深度学习·线性代数·算法·数学建模·数据分析