公司动态
ROS2个人学习笔记——指令集合
最近想学习一下ROS2指令非常的多因此写个笔记记录一下便于未来复习。由于是半路开始整理因此指令不是很全后续慢慢补齐。小海龟仿真终端1ros2 run turtlesim turtlesim_node终端2ros2 run turtlesim turtle_teleop_key这里注意鼠标要选中终端2才能进行小海龟的上下左右移动和旋转。启动相机驱动ros2 run usb_cam usb_cam_node_exe查看不同通信接口的指令查看系统里所有的通信接口很多ros2 interface list查看某个特定的定义接口中的具体内容这里以sensor_msgs/msg/Image 为例ros2 interface show sensor_msgs/msg/Image如果想看某个功能包里到底定义了哪些接口以std_srvs为例通常可以先package 然后再showros2 interface package std_srvsROS2中的“话题”“服务”“动作”1. 话题Topic单向流式通信发布者持续推送数据多个订阅者被动接收无应答机制。话题常用命令ros2 topic list # 列出当前所有运行的话题 ros2 topic type /xxx_topic # 查询指定话题对应的消息类型 ros2 topic echo /xxx_topic # 订阅话题终端持续打印话题数据 ros2 topic pub /xxx_topic 消息类型 {数据} # 命令行向话题发布自定义消息 ros2 topic info /xxx_topic # 查看话题的发布者、订阅者信息2. 服务Service同步/异步一问一答通信客户端发送单次请求服务端处理后返回唯一响应短交互、一次性调用。服务常用命令ros2 service list # 列出当前所有运行的服务 ros2 service type /xxx_service # 查询指定服务对应的接口类型 ros2 service call /xxx_service 服务类型 {请求} # 命令行发起服务调用发送请求并接收响应 ros2 service info /xxx_service # 查看该服务对应的服务端节点3. 动作Action带过程反馈的长时双向通信客户端发目标任务服务端持续反馈实时进度任务结束返回最终结果支持中途取消任务。感觉就是底层为话题服务的应用动作常用命令ros2 action list # 列出当前所有运行的动作 ros2 action type /xxx_action # 查询指定动作对应的接口类型 ros2 action echo /xxx_action # 打印动作的目标、反馈、结果报文 ros2 action send_goal /xxx_action 动作类型 {goal 数据} # 命令行发送动作目标任务 ros2 action info /xxx_action # 查看动作服务端、客户端信息ROS2中的参数如果说 话题 、服务 、动作 节点之间动态传递实时数据那么参数 节点内部的配置存储器是配置存储空间。特征 全局字典全局共享、由键值组成、可实时动态监控列出当前系统中所有运行节点对外开放的参数名称。ros2 param list以小海龟仿真为例获取小海龟的背景颜色信息ros2 param describe /turtlesim background_b获取小海龟的背景颜色具体的值ros2 param get /turtlesim background_b修改小海龟的背景颜色具体的值ros2 param set /turtlesim background_b 10将当前的背景参数信息保存到文件中ros2 param dump /turtlesim读取参数文件信息更换背景ros2 param load turtlesim turtlesim.yaml通用复制工具常用节点命令ros2 node list # 列出当前所有正在运行的节点 ros2 node info / 节点名 # 查看单个节点拥有的话题、服务、动作、参数图形化展示 ROS2 正在运行的节点、话题、服务、动作之间的通信连接关系。rqt_graph列出系统内所有正在运行的含 ros 相关字段的进程查看 ROS 程序是否启动。ps aux | grep ros编译colcon buildURDFURDF 是 ROS 统一机器人描述 XML 格式核心由两类标签构成link刚体部件、joint关节连接整体被robot name机器人名包裹用来描述机器人全部零部件外形、空间位置、连接方式、运动约束用于 RViz 可视化、Gazebo 仿真、TF 坐标解算。link 描述单个物理零件外形visual可视化外观RViz 显示用不影响物理运动collision碰撞外形、inertial惯性质量joint 约束两个 link 的位置与运动方式continuous连续旋转无角度限位适配车轮无限滚动是车轮标配 revolute有最大最小转角的旋转关节机械臂舵机 fixed固定死不能动支架、摄像头 prismatic平移滑动关节升降杆AI生成的口诀link 管长相外形joint 管连接运动 车轮关节用 continuous绕 Y 滚动最通用 xyz 定位置rpy 调朝向 所有零件归底盘 base_link坐标正负分清上下前后左右。URDF查看命令会在URDF文件夹下生成PDFurdf_to_graphiz mbot_base.urdf