gazebo提供了很多ros的API,允许用户操作或者获取各种仿真世界的信息,pose和twist是刚体的状态,一个对象有内部的特性,比如指令和摩擦系数,gazebo中,body是一个刚体,和urdf中的link一样,一个gazebo model有body和joint组成
为了确保这个包被编译,但是不确定有什么用,还是先执行了,
rosmake gazebo_ros
启动gazebo一个empty world
roslaunch gazebo_ros empty_world.launc
模型可以动态创建和删除,提供这两个服务
gazebo/spawn_model and gazebo/delete_model
测试这两个指令,需要用到一些例子,desk1.model 但是没有在之前下载的地方找到,发现gazebo_worlds中有这些例子,但是没法下载,就直接将这个地址的复制下来,在自己的下面目录中建立desk1.model
https://bitbucket.org/osrf/simulator_gazebo/src/default/gazebo_worlds/objects/desk1.model
rosrun gazebo_ros spawn_model -file `rospack find gazebo_ros`/objects/desk1.model -gazebo -model desk1 -x 0
输入以后报错,看错误信息像是不支持model格式
root@ben-virtual-machine:~# rosrun gazebo_ros spawn_model -file `rospack find gazebo_ros`/objects/desk1.model -gazebo -model desk1 -x 0
SpawnModel script started
No handlers could be found for logger "rosout"
[INFO] [1581857717.308818, 0.000000]: Loading model XML from file
[INFO] [1581857717.311012, 0.000000]: Waiting for service /gazebo/spawn_sdf_model
[INFO] [1581857717.313560, 0.000000]: Calling service /gazebo/spawn_sdf_model
[INFO] [158185