Gazebo相关

1.gazebo_msgs/GetModelState||SetModelState

通过此话题可以省去动力学模型(即省去了控制器),直接发布位姿命令到gazebo中加载的模型.
官网
简书

2.gazebo中将所有的模型的重力设置为0

对于一个empty.world

/*写法1*/
<?xml version="1.0" ?>
<sdf version="1.5">
  <world name="default">
    <!-- A global light source -->
    <include>
      <uri>model://sun</uri>
    </include>
    <!-- A ground plane -->
    <include>
      <uri>model://ground_plane</uri>
    </include>
  <gravity>0 0 0</gravity>//通过这一行将所有的模型的重力设置为0
  </world>
</sdf>
/*写法2*/
<?xml version="1.0" ?>
<sdf version="1.5">
  <world name="default">
  <gravity>0 0 0</gravity>//通过这一行将所有的模型的重力设置为0
    <!-- A global light source -->
    <include>
      <uri>model://sun</uri>
    </include>
    <!-- A ground plane -->
    <include>
      <uri>model://ground_plane</uri>
    </include>
  </world>
</sdf>

虽然通过在终端输入rosrun gazebo_ros spawn_model -database coke_can -gazebo -model coke_can -y 1,coke_can的gravity是true.
在这里插入图片描述但是通过<gravity>0 0 0</gravity>使得:Physics的gravity的x,y,z轴均为0
在这里插入图片描述验证:在终端输入:rostopic pub -r 20 /gazebo/set_model_state gazebo_msgs/ModelState '{model_name: coke_can, 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 }',易拉罐悬停在空中,证明coke_can该模型的gravity已经是0.

参考:
gazebo_msgs Msg/Srv Documentation

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值