ROS通信机制--键盘控制乌龟运动线速度角速度XYZ值的解释
目录
前言
案例实现
线速度角速度X、Y、Z值的取值和作用
(END)
前言
在学习ros之初,想必大家运行的第一个案例就是键盘控制乌龟运动。这是ros内置的小案例,采用的通信机制为话题通信。本文介绍键盘控制时发布的消息里包含线速度和角速度的X、Y、Z值的取值和作用。
案例实现
1、打开三个终端,依次属于以下命令:
- roscore
- rosrun turtlesim turtlesim_node //打开乌龟运动显示窗口
- rosrun turtlesim turtle_teleop_key //键盘控制
注意:光标选中rosrun turtlesim turtle_teleop_key运行窗口,使用按键上、下、左、右控制运动。不选中此窗口控制无效。
2、新开一个终端,输入命令rqt_graph,查看此案例的节点拓扑图:
3、上一个步骤我们得知键盘控制乌龟运动的话题名为/turtle1/cmd_vel,新开一个终端输入rostopic type /turtle1/cmd_vel 查看此话题的消息名,打印出消息名为geometry_msgs/Twist:
4、新开一个终端输入rosmsg info geometry_msgs/Twist,查看消息内容:
线速度角速度X、Y、Z值的取值和作用
根据上述步骤我们最终拿到了消息内容,消息内容中可以看出有linear和angular。 linear为线速度,angular为角速度。
- 线速度
- 物理意义:描述质点圆周运动快慢的物理量
- 定义:质点做圆周运动通过的弧长和所用时间的比值为线速度的大小。
- 公式:
- 单位:m/s
- 角速度
- 物理意义:描述质点绕圆心转动快慢的物理量
- 定义:质点所在的半径转过的角度和所用的时间 的比值叫做角速度。
- 公式:
- 单位: 弧度/秒 rad/s
- 线速度和角速度的关系(r为半径)
geometry_msgs/Vector3 linear
float64 x //直行或倒车,直行为正数,倒车为负数,单位为m/s
float64 y //左右横移,例如麦克纳姆轮小车支持左右横移。此案例中乌龟不能左右横移,所以不用输入此值。
float64 z //三维空间下的上下移动,例如无人机的起飞和降落。此案例中乌龟在二维中运动,所以不用输入此值
geometry_msgs/Vector3 angular
float64 x //三维坐标下沿着X轴旋转(如图飞机左右翻转) ,此案例中乌龟不能翻转,所以不用输入此值
float64 y //三维坐标下沿着Y轴旋转(如图飞机前后翻转) ,此案例中乌龟不能翻转,所以不用输入此值
float64 z //三维坐标下沿着Z轴旋转(如图原地旋转) ,此案例中乌龟可以原地旋转。左旋转为正数,右旋转为负数。
新开一个终端输入rostopic echo /turtle1/cmd_vel 命令,在键盘控制窗口中控制乌龟左右前后运动,查看此窗口消息内容的变化:
(END)
ROS通信机制--键盘控制乌龟运动线速度角速度XYZ值的解释相关推荐
- Chapter2 ROS通信机制----基础篇(Ⅰ)vs配置及通信基础
目录 一.复习及launch 1.1 深入理解配置信息(非常重要) 1.2 launch文件演示 二.ROS通信机制-----基础 2.1 本节导论 2.2 话题通信 2.2.1 话题通信概述 2.2 ...
- ROS自主导航学习———ROS通信机制
前言 前面ROS很多都忘记了 ,现在来重新回顾一下内容 ROS 中的基本通信机制主要有如下三种实现策略: 话题通信(发布订阅模式) 服务通信(请求响应模式) 参数服务器(参数共享模式) Action通 ...
- ROSNOTE : 键盘控制机器人运动
ROS与底盘的通信协议: ROS平台与小车底盘通信一般是通过串口 写入串口的内容是 左右轮的速度 从串口中读取到的是小车x,y坐标,方向角,角速度 ROS平台串口处理程序: 主要是写在base_con ...
- 【ROS理论与实践-赵虚左老师】Chap2 ROS通信机制
第二章 ROS通信机制 通信是ROS中的核心 Core 机器人是一种高度复杂的系统性实现,在机器人上可能集成各种传感器(雷达.摄像头.GPS-)以及运动控制实现,为了解耦合,在ROS中每一个功能点都是 ...
- ROS通信机制——发布/订阅者模型
目录 发布/订阅者模型 (一)发布者 (二)订阅者 (三)综合 参考资料 ROS (Robot Operating System),即机器人操作系统,是为了加快机器人的开发效率,提高机器人软件代码的复 ...
- ROS 通信机制(已整理)
文章目录 节点与节点管理器 ROS通信机制 1. 话题通信 1.1 基本话题通信 1.1.1 C++实现 发布方 demo01_pub.cpp 订阅方 demo01_sub.cpp 1.1.2 Pyt ...
- 基于paddledetection在ROS中搭建红绿灯检测控制车模运动(3)—— 使用训练结果在ros中仿真红绿灯控制小车运动
前言 第一节: 基于paddledetection在ROS中搭建红绿灯检测控制车模运动(1)-- 环境搭建准备以及软件安装 第二节: 基于paddledetection在ROS中搭建红绿灯检测控制车模 ...
- java 图片 运动_怎么在GUI中用键盘控制图片运动?java问题?
怎么在GUI中用键盘控制图片运动?java问题? 关注:174 答案:3 mip版 解决时间 2021-01-17 01:03 提问者落叶.牵绊着思念 2021-01-16 09:43 怎么在GU ...
- ROS入门跟着我就够了(二)上 ROS通信机制
由于这一章东西比较多,我分了上下两篇,下部分可以在< ROS 入门跟着我就够了>专辑中查看 ROS 中的基本通信机制主要有如下三种实现策略: 话题通信(发布订阅模式)服务通信(请求响应模式 ...
最新文章
- 【windows】cmd中的help无法使用的解决方法
- 预训练模型ProphetNet:根据未来文本信息进行自然语言生成
- mysql每学科前两名 having_mysql 分组查询前n条数据
- 讨论UML概念和模型UML九种图。
- IntelliJ IDEA 超实用技巧分享,不能再全了!
- java mysql servlet_Java--用户登录(JDBC,MYSQL,Servlet)
- 递推:Ybtoj: D.4 序列个数
- Graphviz从入门到不精通
- 《CCNA安全640-554认证考试指南》——第6章在Cisco IOS设备上保护管理层
- Linux网络服务之DHCP
- HDU 2546 饭卡 动态规划01背包
- ISA防火墙简单安装配置实例
- typora上传图片出现Can‘t find smms config错误
- 秒杀迅雷的linux命令行下载文件以及常用工具:wget、Prozilla、MyGet、Linuxdown、Curl、Axel
- Code Review 有感
- dnf剑魂buff等级上限_DNF:鬼剑士buff换装、白金徽章以及时装详解,萌新也能变老手...
- leetcode(快乐数字)两种解法
- SuperEmper技术支持
- 用友t3服务器系统管理显示类型不匹配,登录账套提示:“类型不匹配”
- 几种代表性的相控阵系统简介