当前位置: 首页 > news >正文

ROS2 轨迹规划核心点

核心: 

0、 创建节点  
rosNode=std::make_shared<rclcpp::Node>("robot_server_node");

1、持续发布机械臂当前状态节点 (基础节点,待补充)
// 创建发布器,发布到 /joint_states 话题
joint_state_publisher_ = rosNode->create_publisher<sensor_msgs::msg::JointState>("joint_states", 10);

joint_state_publisher_->publish(joint_state_msg);

2、实现发布点云功能
--------  初始化  (对这个节点   初始化发布点云功能) --------  
pub_ = rosNode->create_publisher<sensor_msgs::msg::PointCloud2>("/sensor/point_cloud", 1);
------- 发布点云功能 -------
sensor_msgs::msg::PointCloud2 output;
pcl::toROSMsg(*cloud, output);
output.header.stamp = rosNode->now();
output.header.frame_id = frame_id_;
pub_->publish(output);

--------    在轨迹规划中,应用点云    ----------
//  自动添加 
在 moveit 助手生成的配置里新增   sensors_3d.yaml ,这样就会自动应用到 轨迹规划里了。

sensors:
- default_sensor
default_sensor:
filtered_cloud_topic: /sensor/filtered_points
max_range: 5.0
max_update_rate: 1.0
padding_offset: 0.1
padding_scale: 1.0
point_cloud_topic: /sensor/point_cloud
point_subsample: 1
sensor_plugin: occupancy_map_monitor/PointCloudOctomapUpdater


3、实现 当前关节状态 到 目标位姿 的 轨迹规划
-------- 初始化 运动规划 实例对象 ------------
move_group_ = std::make_shared<moveit::planning_interface::MoveGroupInterface>(rosNode, planning_group_name_);
// set some defaults similar to your python script
move_group_->setGoalPositionTolerance(0.02);
move_group_->setGoalOrientationTolerance(0.03);
move_group_->setMaxVelocityScalingFactor(0.8);
move_group_->setPlanningTime(10.0);
move_group_->setNumPlanningAttempts(3);
-------- 实现轨迹规划 -------
//设置规划的起点
move_group_->setStartState(start_state);          (moveit_msgs::msg::RobotState start_state)

// 规划已知关节 到 已知目标位姿 的路径  
// 设置目标终点的位姿   xyz+四元数
move_group_->setPoseTarget(target_ps, eef_link_);   (geometry_msgs::msg::PoseStamped target_ps)

   // 执行规划   
moveit::planning_interface::MoveGroupInterface::Plan out_plan;  (声明一个变量,存放输出结果)
move_group_->plan(out_plan) 

http://www.dtcms.com/a/537033.html

相关文章:

  • [GESP202506 五级] 奖品兑换
  • Strassen矩阵乘法算法
  • 网站开发新闻怎么写相应式手机网站建设
  • [C++][windows]C++类成员函数默认参数和成员变量初始化问题
  • Vue 动态路由复制标签页失效?彻底解决新标签页路由空白问题
  • 扁平化网站特效张家港网站建设培训班
  • 【GaussDB】深入剖析Insert Select慢的定位全过程
  • 面向智能体与大语言模型的 AI 基础设施:选项、工具与优化
  • 招商网站建设服务商湖南专业网站建设服务
  • 从0到1:易趋驱动产品研发项目全流程管理效能跃升
  • 巴彦淖尔市百家姓网站建设文昌市规划建设管理局网站
  • JAX 高性能机器学习的新选择 - 从NumPy到变换编译
  • 能盈利的网站网站首页description标签
  • Geoserver修行记-安装CSS插件避坑
  • O(1) 时间获取最小值的巧妙设计——力扣155.最小栈
  • 韩国网站建设wordpress安装博客步骤
  • dbpystream webapi: 一次clickhouse数据从系统盘迁至数据盘的尝试
  • 大数据-136 - ClickHouse 集群 表引擎详解 选型实战:TinyLog/Log/StripeLog/Memory/Merge
  • 高效的项目构建和优化之前端构建工具
  • 网站建设公司宣传文案如何通过cpa网站做推广
  • windows环境,设置git 默认提交信息
  • 电商平台网站建设合同宁波seo优化报价多少
  • 哪里找人做网站系统设计
  • 做一个网站需要多少钱大概费用商贸有限公司注销流程
  • OpenVLA-OFT+ 在真实世界 ALOHA 机器人任务中的应用
  • 网站调用字体四网合一网站建设
  • 网站优化包括整站优化吗公司管理体系
  • Spring—Springboot篇
  • 《拆解一封网络信:HTTP 报文详解》
  • wordpress仿站网桌子seo关键词