Gazebo | Ignition | Community
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

robot not moving by ign topic in Fortress tutorial

Issue

Robot doesn't move when it's supposed to.

I'm on Fortress tutorial run https://ignitionrobotics.org/docs/fortress/moving_robot. Starting Ign sheds some errors.

$ ign gazebo building_robot.sdf -v
[Msg] Ignition Gazebo Server v6.0.0~pre1                                                                               
[Msg] Ignition Gazebo GUI    v6.0.0~pre1                  
[Msg] Loading SDF world file[/home/n130s/data/Dropbox/pg/myDevelopment/git_repo/ROS/cws_utakata/src/ignitionrobotics/docs/fortress/tutorials/building_robot/building_robot.sdf].
[Msg] Create service on [/world/car_world/create]                                                                      
[Msg] Remove service on [/world/car_world/remove]    
[Msg] Pose service on [/world/car_world/set_pose]                                                                      
[Msg] Light configuration service on [/world/car_world/light_config]
[Msg] Physics service on [/world/car_world/set_physics]                                                                
[Msg] SphericalCoordinates service on [/world/car_world/set_spherical_coordinates]
[Msg] Enable collision service on [/world/car_world/enable_collision]
[Msg] Disable collision service on [/world/car_world/disable_collision]
[Msg] Loaded level [3]                                                                                                 
[Msg] Serving world controls on [/world/car_world/control] and [/world/car_world/playback/control]
[Msg] Serving GUI information on [/world/car_world/gui/info]  
[Msg] World [car_world] initialized with [1ms] physics profile.               
[Msg] Serving world SDF generation service on [/world/car_world/generate_world_sdf]                                                                                                                                                           
[Msg] Serving world names on [/gazebo/worlds]                                                                                                                                                                                                 
[Msg] Resource path add service on [/gazebo/resource_paths/add].
[Msg] Resource path get service on [/gazebo/resource_paths/get].                                                                                                                                                                              
[Msg] Resource paths published on [/gazebo/resource_paths].
[GUI] [Wrn] [Application.cc:669] [QT] file:///usr/lib/x86_64-linux-gnu/qt5/qml/QtQuick/Dialogs/DefaultFileDialog.qml:102:33: QML Settings: Failed to initialize QSettings instance. Status code is: 1
[GUI] [Wrn] [Application.cc:669] [QT] file:///usr/lib/x86_64-linux-gnu/qt5/qml/QtQuick/Dialogs/DefaultFileDialog.qml:102:33: QML Settings: The following application identifiers have not been set: QVector("organizationName", "organizationD
omain")                                                                                                                
[GUI] [Wrn] [Application.cc:669] [QT] file:///usr/lib/x86_64-linux-gnu/qt5/qml/QtQuick/Dialogs/DefaultFileDialog.qml:102:33: QML Settings: Failed to initialize QSettings instance. Status code is: 1
[GUI] [Wrn] [Application.cc:669] [QT] file:///usr/lib/x86_64-linux-gnu/qt5/qml/QtQuick/Dialogs/DefaultFileDialog.qml:102:33: QML Settings: The following application identifiers have not been set: QVector("organizationName", "organizationD
omain")                                                                                                                                                                                                                                       
[GUI] [Wrn] [Application.cc:669] [QT] file::/Gazebo/GazeboDrawer.qml:147:3: QML Dialog: Binding loop detected for property "implicitHeight"
[GUI] [Wrn] [Application.cc:669] [QT] file:///usr/lib/x86_64-linux-gnu/qt5/qml/QtQuick/Dialogs/DefaultFileDialog.qml:102:33: QML Settings: Failed to initialize QSettings instance. Status code is: 1
[GUI] [Wrn] [Application.cc:669] [QT] file:///usr/lib/x86_64-linux-gnu/qt5/qml/QtQuick/Dialogs/DefaultFileDialog.qml:102:33: QML Settings: The following application identifiers have not been set: QVector("organizationName", "organizationD
omain")                                              
[GUI] [Wrn] [Application.cc:669] [QT] file::/Gazebo/GazeboDrawer.qml:147:3: QML Dialog: Binding loop detected for property "implicitHeight"
[GUI] [Msg] Loading config [/home/n130s/.ignition/gazebo/gui.config]
[GUI] [Wrn] [Scene3D.cc:2910] The GzScene3D plugin is deprecated on v6 and will be removed on v7. Use MinimalScene together with other plugins as needed.
[GUI] [Msg] Video recorder stats topic advertised on [/gui/record_video/stats]
[GUI] [Msg] Transform mode service on [/gui/transform_mode]
[GUI] [Msg] Record video service on [/gui/record_video]
[GUI] [Msg] Move to service on [/gui/move_to]
[GUI] [Msg] Follow service on [/gui/follow]
[GUI] [Msg] Follow offset service on [/gui/follow/offset]
[GUI] [Msg] View angle service on [/gui/view_angle]
[GUI] [Msg] Move to pose service on [/gui/move_to/pose]
[GUI] [Msg] Camera pose topic advertised on [/gui/camera/pose]
[GUI] [Msg] View as transparent service on [/gui/view/transparent]
[GUI] [Msg] View center of mass service on [/gui/view/com]
[GUI] [Msg] View inertia service on [/gui/view/inertia]
[GUI] [Msg] View joints service on [/gui/view/joints]
[GUI] [Msg] View wireframes service on [/gui/view/wireframes]
[GUI] [Msg] View collisions service on [/gui/view/collisions]
[GUI] [Msg] Camera view controller topic advertised on [/gui/camera/view_control]
[GUI] [Msg] Added plugin [3D View] to main window
[GUI] [Msg] Loaded plugin [GzScene3D] from path [/usr/lib/x86_64-linux-gnu/ign-gazebo-6/plugins/gui/libGzScene3D.so]
[GUI] [Msg] Using world control service [/world/car_world/control]
[GUI] [Msg] Listening to stats on [/world/car_world/stats]
[GUI] [Msg] Added plugin [World control] to main window
[GUI] [Msg] Loaded plugin [WorldControl] from path [/usr/lib/x86_64-linux-gnu/ign-gui-6/plugins/libWorldControl.so]
[GUI] [Msg] Listening to stats on [/world/car_world/stats]
[Msg] Found no publishers on /stats, adding root stats topic
[Msg] Found no publishers on /clock, adding root clock topic
[GUI] [Msg] Added plugin [World stats] to main window
[GUI] [Msg] Loaded plugin [WorldStats] from path [/usr/lib/x86_64-linux-gnu/ign-gui-6/plugins/libWorldStats.so]
[Msg] Serving scene information on [/world/car_world/scene/info]
[Msg] Serving graph information on [/world/car_world/scene/graph]
[Msg] Serving full state on [/world/car_world/state]
[Msg] Serving full state (async) on [/world/car_world/state_async]
[Msg] Publishing scene information on [/world/car_world/scene/info]
[Msg] Publishing entity deletions on [/world/car_world/scene/deletion]
[Msg] Publishing state changes on [/world/car_world/state]
[Msg] Publishing pose messages on [/world/car_world/pose/info]
[Msg] Publishing dynamic pose messages on [/world/car_world/dynamic_pose/info]
[Wrn] [Component.hh:144] Trying to serialize component with data type [N3sdf3v125WorldE], which doesn't have `operator<<`. Component will not be serialized.
[GUI] [Wrn] [Component.hh:189] Trying to deserialize component with data type [N3sdf3v125WorldE], which doesn't have `operator>>`. Component will not be deserialized.
[GUI] [Msg] Added plugin [Transform control] to main window
[GUI] [Msg] Loaded plugin [TransformControl] from path [/usr/lib/x86_64-linux-gnu/ign-gazebo-6/plugins/gui/libTransformControl.so]
[GUI] [Msg] Added plugin [Shapes] to main window
[GUI] [Msg] Loaded plugin [Shapes] from path [/usr/lib/x86_64-linux-gnu/ign-gazebo-6/plugins/gui/libShapes.so]
Error [parser_urdf.cc:3255] Unable to call parseURDF on robot model
Error [parser.cc:820] parse as old deprecated model file failed.
[GUI] [Err] [Model.hh:73] Unable to unserialize sdf::Model
[GUI] [Msg] Added plugin [Component inspector] to main window
[GUI] [Msg] Loaded plugin [ComponentInspector] from path [/usr/lib/x86_64-linux-gnu/ign-gazebo-6/plugins/gui/libComponentInspector.so]
[GUI] [Msg] Added plugin [Entity tree] to main window
[GUI] [Msg] Loaded plugin [EntityTree] from path [/usr/lib/x86_64-linux-gnu/ign-gazebo-6/plugins/gui/libEntityTree.so]
[GUI] [Wrn] [Application.cc:669] [QT] file::/Gazebo/GazeboDrawer.qml:147:3: QML Dialog: Binding loop detected for property "implicitHeight"
[GUI] [Msg] Loading plugin [ignition-rendering-ogre2]
[GUI] [Msg] Loading plugin [ignition-rendering-ogre2]

This command returns w/o anything noticeable.

ign topic -t "/cmd_vel" -m ignition.msgs.Twist -p "linear: {x: 0.5}, angular: {z: 0.05}"

From #q14745, checking the sdf's format and the command returns error.

$ check_urdf building_robot.sdf 
Error:   Could not find the 'robot' element in the xml file
         at line 109 in /build/urdfdom-VnCcob/urdfdom-1.0.4+ds/urdf_parser/src/model.cpp
ERROR: Model Parsing the xml failed

Env

Ubuntu 20.04

$ apt-cache policy ignition-fortress 
ignition-fortress:
  Installed: 1.0.0~pre1-5~focal
  Candidate: 1.0.0~pre1-5~focal

$ cd ignitionrobotics/docs
$ git diff
diff --git a/fortress/tutorials/building_robot/building_robot.sdf b/fortress/tutorials/building_robot/building_robot.sdf
index 9a17329..7494057 100644
--- a/fortress/tutorials/building_robot/building_robot.sdf
+++ b/fortress/tutorials/building_robot/building_robot.sdf
@@ -244,6 +244,17 @@
                 <parent>chassis</parent>
                 <child>caster</child>
             </joint>
+
+           <plugin
+               filename="libignition-gazebo-diff-drive-system.so"
+                name="ignition::gazebo::systems::DiffDrive">
+                <left_joint>left_wheel_joint</left_joint>
+                <right_joint>right_wheel_joint</right_joint>
+                <wheel_separation>1.2</wheel_separation>
+                <wheel_radius>0.4</wheel_radius>
+                <odom_publish_frequency>1</odom_publish_frequency>
+                <topic>cmd_vel</topic>
+           </plugin>       
         </model>
     </world>
 </sdf>