一.驱动小乌龟

先打开一个节点

rosrun turtlesim turtlesim_node

接着输入

rostopic pub /turtle1/cmd_vel geometry_msgs/Twist "linear:x: 2.0y: 0.0z: 0.0
angular:x: 0.0y: 0.0z: 1.0"

接受到命令后小乌龟做了什么呢?

答案是:在一段规定的时间内完成了x方向前进2和z旋转1,他会把每个动作分别平均拆解到时间内,并且多个动作同时进行.这样我们视觉里就是小乌龟完成了一个弧形的左转(如果这个弧形继续补充则可以连成一个圆)

而且这个动作并不是以世界坐标系为原点来做行动计划.而是以小乌龟接受到命令的这一时刻所在的"乌龟"坐标作为行动原点.

后续:笔者在现实的小车上又做了尝试,发现似乎和小乌龟不太一样.这个linear似乎更象是线速度的意思,而angular是角速度.

二.驱动Gazebo中的对象

(这个发出的移动暂时不确定是不是以机器人坐标为原点)

后面发现:simulator中gazebo_msg其实也是从cmd_vel这里数据变化过来的,但是具体gazebo这个咋用还不是很懂.

方法一:

ros::Publisher pubModelState = nh.advertise<gazebo_msgs::ModelState>("/gazebo/set_model_state", 5);
gazebo_msgs::ModelState cameraState;
cameraState.model_name = "camera";
cameraState.pose.orientation = geoQuat;
cameraState.pose.position.x = vehicleX;
cameraState.pose.position.y = vehicleY;
cameraState.pose.position.z = vehicleZ + cameraOffsetZ;
pubModelState.publish(cameraState);

方法二:

rostopic pub -r 20 /gazebo/set_model_state gazebo_msgs/ModelState '{model_name: coke_can1, pose: { position: { x: 1, y: 0, z: 2 }, orientation: {x: 0, y: 0.491983115673, z: 0, w: 0.870604813099 } }, twist: { linear: { x: 0, y: 0, z: 0 }, angular: { x: 0, y: 0, z: 0}  }, reference_frame: world }'

似乎只用更改pose内容就可以了,twist暂时不知道是什么东西.

驱动仿真物品移动乌龟\Gazebo\cmd_vel和/gazebo/set_model_state相关推荐

  1. 【从零开始的ROS四轴机械臂控制】(二) - ROS与Gazebo连接,Gazebo仿真及urdf文件修改

    [从零开始的ROS四轴机械臂控制(二)] 四.urdf文件及gazebo仿真 1.simple_arm示例 (1)config文件夹 (2)launch文件夹 (3)meshes文件夹 (4)urdf ...

  2. 8051单片机Proteus仿真与开发实例-TLC2543(A/D)转换驱动仿真

    TLC2543(A/D)转换驱动仿真 TLC2543C 和 TLC2543I 是 12 位.开关电容器.逐次逼近型模数转换器. 每个设备具有三个控制输入 [片选 (CS).输入-输出时钟 (I/OCL ...

  3. Arduino与Proteus仿真实例-TFT显示屏(ILI9341驱动器)SPI驱动仿真

    TFT显示屏(ILI9341驱动器)SPI驱动仿真 薄膜晶体管液晶显示器 (TFT LCD) 是一种利用薄膜晶体管技术来提高对比度和可寻址性等品质的液晶显示器 (LCD). TFT 技术意味着使用单独 ...

  4. Arduino与Proteus仿真实例-LCD12864液晶显示屏(ST7920)驱动仿真

    LCD12864液晶显示屏(ST7920)驱动仿真 ST7920 控制器系列中文图形液晶模块的软件特性主要由ST7920 控制驱动 器决定.ST7920 同时作为控制器和驱动器,它可提供33 路com ...

  5. Arduino与Proteus仿真实例-OLED显示屏(SSD1306)I2C驱动仿真

    OLED显示屏(SSD1306)I2C驱动仿真 首字母缩写词"OLED"代表有机发光二极管 - 一种使用 LED 的技术,其中的光由有机分子产生. 这些有机 LED 用于制造被认为 ...

  6. Arduino与Proteus仿真实例-继电器驱动仿真

    继电器驱动仿真 继电器是一种电动开关.它由一组用于单个或多个控制信号的输入端子和一组操作触点端子组成.开关可以具有多种触点形式的任意数量的触点,例如闭合触点.断开触点或其组合. 在前面的实例中,对继电 ...

  7. Arduino与Proteus仿真实例-74LS378触发器驱动仿真

    74LS378触发器驱动仿真 74LS378 是一种单片.正沿触发.可注册触发器 IC,它利用 TTL 电路来实现 D 型触发器/锁存逻辑. 该 IC 还具有公共时钟使能而不是公共清除. 74LS37 ...

  8. Arduino与Proteus仿真实例-光线传感器(LDR)驱动仿真

    光线传感器(LDR)驱动仿真 光传感器通过测量存在于非常窄的频率范围内的辐射能量来生成指示光强度的输出信号,该频率范围基本上称为"光",频率范围从"红外线"到& ...

  9. Arduino与Proteus仿真实例-NTC热敏电阻驱动仿真

    NTC热敏电阻驱动仿真 热敏电阻是由半导体材料制成的温度传感元件,该材料经过烧结以显示电阻的较大变化与温度的微小变化成比例. 该电阻可以通过使用通过热敏电阻的小且经测量的直流或直流电来测量,以测量产生 ...

最新文章

  1. https原理与实践
  2. winform中构造函数与Form_Load
  3. 转载:mouseOver/mouseOut 与 rollOver/rollOut的区别
  4. DevExpress VCL Controls v15.1.5正式发布[附下载]
  5. 基于RBGD的mapping
  6. 利用C/C++实现较完整贪吃蛇游戏
  7. 【渝粤教育】国家开放大学2018年春季 3818-22T燃气工程施工 参考试题
  8. 主键冲突报什么代码_MySQL主键设计
  9. Windows网络编程之UDP通信
  10. unity2018关联不到vs_Unity2018 VS2017打开CS脚本,提示全红及无法加载工程等问题解决...
  11. 电子计算机 划分发展阶段,电子计算机主要是以( )为标志来划分发展阶段的
  12. 甘特图是什么意思?甘特图制作步骤教程
  13. 例行检查软件列表,突然发现不明sangforvnc应用
  14. Python 输入、输出
  15. w10计算机管理员权限在哪里设置密码,Win10使用管理员权限需要PIN密码的设置方法 三种解决方法...
  16. 人工智能越来越“能”
  17. 计算机微程序控制器实验报告,计算机组成原理实验报告三:微程序控制器实验.doc...
  18. DDR存储原理,AC/DC判别标准深度解析(官方手册整理)
  19. 严格落实常态化疫情防控措施
  20. expdp异地备份 (expdp导出数据到其他服务器)

热门文章

  1. 缺失值处理(Imputation)
  2. 国际市场营销知识框架图_打包送!120页中新史笔记+21张框架图+表格!你需要的中新史资料都在这!...
  3. function func() { for(var i=0; i<3; i++) { setTimeout(()=>{ consol
  4. 生态功能区划方法之二:生态服务功能重要性评价
  5. docker参数详解
  6. 【Monkey Run】Excel编程 VBA
  7. 多伦多大学好吗_多伦多大学留学好不好
  8. bzoj2818Gcd
  9. matlab三角形外接圆
  10. ink 合约篇(一)| 部署 ink 合约