- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
机器人操作系统(ROS2)入门与实践
机器人操作系统(ROS2)入门与实践LinuxUbuntu入门基础ROS2安装与系统架构ROS2编程基础ROS2机器人运动控制激光雷达在ROS2中的使用IMU在ROS2中的使用ROS2中的SLAM环境建图ROS2中的NAV2自主导航ROS2中的图像视觉应用ROS2的三维视觉应用ROS2的机械臂应用基于ROS2的综合应用
ROS2机器人运动控制4.2机器人运动控制的实现4.1速度消息包格式4.3本章小结
4.1速度消息包格式对机器人的速度控制是通过向机器人的核心节点发送速度消息来实现的,这个消息的类型在ROS里已经有了定义,就是geometry_msgs::Twist。
本实例编程实现一个发布者节点,如图所示,向/cmd_vel话题发布geometry_msgs::Twist类型的消息包。以此来实现对机器人运动速度的控制。4.2机器人运动控制的实现(详细操作步骤:见教材P107-P120页)
4.2机器人运动控制的实现cd~/ros2_ws/srcros2pkgcreatevel_pkg4.2.1编写速度控制程序#includerclcpp/rclcpp.hpp#includegeometry_msgs/msg/twist.hpp?intmain(intargc,char**argv){rclcpp::init(argc,argv);?autonode=std::make_sharedrclcpp::Node(velocity_command_node);?autovel_pub=node-create_publishergeometry_msgs::msg::Twist(/cmd_vel,10);?1、编写节点代码在VSCode中找到vel_pkg软件包,在“src”文件夹新建文件,命名为“vel_node.cpp”。
4.2机器人运动控制的实现geometry_msgs::msg::Twistvel_msg;vel_msg.linear.x=0.1;vel_msg.linear.y=0.0;vel_msg.linear.z=0.0;vel_msg.angular.x=0.0;vel_msg.angular.y=0.0;vel_msg.angular.z=0.0;?rclcpp::Rateloop_rate(30);while(rclcpp::ok()){vel_pub-publish(vel_msg);loop_rate.sleep();}?rclcpp::shutdown();?return0;}?
4.2机器人运动控制的实现find_package(rclcppREQUIRED)find_package(geometry_msgsREQUIRED)add_executable(vel_nodesrc/vel_node.cpp)ament_target_dependencies(vel_noderclcppgeometry_msgs)install(TARGETSvel_nodeDESTINATIONlib/${PROJECT_NAME})dependrclcpp/dependdependgeometry_msgs/depend2、设置编译规则3、修改软件包信息4、编译软件包cd~/ros2_wscolconbuild
4.2机器人运动控制的实现5、节点自测sourceinstall/setup.bashros2runvel_pkgvel_node打开第2个子窗口ros2topiclistros2topicecho/cmd_vel
4.2机器人运动控制的实现4.2.2仿真运行速度控制程序sourceinstall/setup.bashros2launchwpr_simulation2wpb_simple.launch.pysourceinstall/setup.bashros2runvel_pkgvel_node打开第2个子窗口节点运行起来之后,可以看到机器人以0.1米/秒的速度向前移动,速度控制功能实现成功。
4.3本章小结本章主要介绍了发布者节点的一个典型应用,通过编写节点代码、设置编译规则、修改软件包信息、编译软件包、节点自测、仿真运行速度控制程序实现了对机器人运动速度的控制。?
您可能关注的文档
- 机电设备控制技术课件:气压传动技术.pptx
- 机电设备控制技术课件:液压传动基础知识.pptx
- 机电设备控制技术课件:液压基本回路及典型液压系统.pptx
- 机电设备控制技术课件:液压系统元件.pptx
- 机电设备维护与管理(第2版)课件:常用高低压成套电气设备的维护.pptx
- 机电设备维护与管理(第2版)课件:典型修复技术.pptx
- 机电设备维护与管理(第2版)课件:电气设备的维修.pptx
- 机电设备维护与管理(第2版)课件:动力设备及起重设备的管理.pptx
- 机电设备维护与管理(第2版)课件:机电设备管理要求、内容及基础工作.pptx
- 机电设备维护与管理(第2版)课件:起重设备的维护维修.pptx
- 2025年四川城市职业学院单招职业适应性测试题库及参考答案.docx
- 2025年四川城市职业学院单招职业适应性测试题库完整版.docx
- 2025年四川工业科技学院单招职业倾向性测试题库及1套完整答案.docx
- 2025年四川城市职业学院单招职业技能测试题库必考题.docx
- 2025年四川城市职业学院单招职业技能测试题库及答案1套.docx
- 2025年四川城市职业学院单招职业技能测试题库一套.docx
- 2025年四川城市职业学院单招职业倾向性测试题库完整答案.docx
- 2025年四川城市职业学院单招职业倾向性测试题库精编答案.docx
- 2025年四川城市职业学院单招职业倾向性测试题库完整版.docx
- 2025年四川城市职业学院单招职业倾向性测试题库及一套完整答案.docx
文档评论(0)