srmainwaring / curio

ROS packages to control a version of Roger Chen's Sawppy Rover.
Other
57 stars 20 forks source link

Gazebo simulation error #8

Closed IntoDs closed 4 years ago

IntoDs commented 4 years ago

Receiving alot of errors when trying to launch any of the simulations in Gazebo

[ERROR] [1596026542.533864564]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/front_left_corner_joint [ERROR] [1596026542.535533085]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/front_right_corner_joint [ERROR] [1596026542.538570997]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/front_left_wheel_joint [ERROR] [1596026542.541807737]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/front_right_wheel_joint [ERROR] [1596026542.544184106]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/mid_left_wheel_joint [ERROR] [1596026542.545252985]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/mid_right_wheel_joint [ERROR] [1596026542.546511801]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/back_left_corner_joint [ERROR] [1596026542.547498954]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/back_right_corner_joint [ERROR] [1596026542.548435790]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/back_left_wheel_joint [ERROR] [1596026542.549718422]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/back_right_wheel_joint [ INFO] [1596026542.565977047]: Loaded gazebo_ros_control. [ INFO] [1596026542.582880337]: GazeboRosJointStatePublisher is going to publish joint: left_rocker_joint [ INFO] [1596026542.583374330]: GazeboRosJointStatePublisher is going to publish joint: right_rocker_joint [ INFO] [1596026542.583403220]: GazeboRosJointStatePublisher is going to publish joint: left_bogie_joint [ INFO] [1596026542.583562985]: GazeboRosJointStatePublisher is going to publish joint: right_bogie_joint [ INFO] [1596026542.583591598]: GazeboRosJointStatePublisher is going to publish joint: diff_brace_joint [ INFO] [1596026542.583617300]: GazeboRosJointStatePublisher is going to publish joint: back_left_turnbuckle_joint [ INFO] [1596026542.583798962]: GazeboRosJointStatePublisher is going to publish joint: back_right_turnbuckle_joint [ INFO] [1596026542.583889514]: GazeboRosJointStatePublisher is going to publish joint: front_left_turnbuckle_joint [ INFO] [1596026542.583912694]: GazeboRosJointStatePublisher is going to publish joint: front_right_turnbuckle_joint [ INFO] [1596026542.583938689]: Starting GazeboRosJointStatePublisher Plugin (ns = //)!, parent name: curio [urdf_spawner-6] process has finished cleanly log file: /home/user/.ros/log/e17b45ea-d196-11ea-90ab-024fab32af2a/urdf_spawner-6*.log [ INFO] [1596026542.666389223]: Controller state will be published at 50Hz. [ INFO] [1596026542.667898175]: Velocity rolling window size of 10. [ INFO] [1596026542.668600598]: Velocity commands will be considered old if they are older than 0.5s. [ INFO] [1596026542.669475953]: Allow mutiple cmd_vel publishers is disabled [ INFO] [1596026542.670407515]: Base frame_id set to base_link [ INFO] [1596026542.671300865]: Odometry frame_id set to /odom [ INFO] [1596026542.672181363]: Publishing to tf is enabled [ INFO] [1596026542.693573793]: Adding wheel with joint name: front_left_wheel_joint [ INFO] [1596026542.694195296]: Adding wheel with joint name: front_right_wheel_joint [ INFO] [1596026542.694316423]: Adding wheel with joint name: mid_left_wheel_joint [ INFO] [1596026542.694421280]: Adding wheel with joint name: mid_right_wheel_joint [ INFO] [1596026542.694535758]: Adding wheel with joint name: back_left_wheel_joint [ INFO] [1596026542.694626022]: Adding wheel with joint name: back_right_wheel_joint [ INFO] [1596026542.694755111]: Adding steer with joint name: front_left_corner_joint [ INFO] [1596026542.694848870]: Adding steer with joint name: front_right_corner_joint [ INFO] [1596026542.694932146]: Adding steer with joint name: back_left_corner_joint [ INFO] [1596026542.695011300]: Adding steer with joint name: back_right_corner_joint [ INFO] [1596026623.318821912, 0.021000000]: waitForService: Service [/gazebo/set_physics_properties] is now available. [ INFO] [1596026623.345284962, 0.041000000]: Physics dynamic reconfigure ready. [ WARN] [1596026636.028230158, 10.001000000]: Joint state withname: "back_left_turnbuckle_joint" was received but not found in URDF [ WARN] [1596026646.472435854, 20.001000000]: Joint state withname: "back_left_turnbuckle_joint" was received but not found in URDF [ WARN] [1596026656.995548979, 30.001000000]: Joint state withname: "back_left_turnbuckle_joint" was received but not found in URDF [ WARN] [1596026667.446414403, 40.021000000]: Joint state withname: "back_left_turnbuckle_joint" was received but not found in URDF [ WARN] [1596026677.849833221, 50.021000000]: Joint state withname: "back_left_turnbuckle_joint" was received but not found in URDF [ WARN] [1596026688.243851030, 60.021000000]: Joint state withname: "back_left_turnbuckle_joint" was received but not found in URDF

srmainwaring commented 4 years ago

The errors and warnings you are seeing should be safe to ignore:

  1. The errors from gazebo_ros_control about missing PID settings should not prevent the simulation running as default values for the position and velocity controllers are provided by the controller manager (I am not clear why gazebo_ros_control flags these as errors, an info message about using PID defaults would seem appropriate).
  2. The warnings about the additional joint states are because the Gazebo model has additional joints for the differential that cannot be modelled in URDF (they form a closed kinematic chain). I have not looked into suppressing these, again this would require looking into the ros_control framework to see whether there are additional flags that can be supplied to the joint_state_controller in this case.

Are you able to get the Gazebo simulation running?

My main system is: macOS 10.15.4 ROS Melodic (built from source) Gazebo 11 (built from source)

and have also tested an Ubuntu 18.04 virtual machine.

The simulation starts paused and you need to click play in Gazebo before changing the sliders in rqt_robot_steering otherwise ros_control will report additional errors about a controller not being started.

A single command should run the simulation, I've included the full console log for comparison (running the develop branch):

$ roslaunch curio_gazebo curio_empty_world.launch

... logging to /Users/<user>/.ros/log/<session>/roslaunch-<machine>.local-99439.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt

started roslaunch server http://<machine>:57418/

SUMMARY
========

PARAMETERS
 * /ackermann_drive_controller/allow_multiple_cmd_vel_publishers: False
 * /ackermann_drive_controller/angular/z/has_acceleration_limits: True
 * /ackermann_drive_controller/angular/z/has_velocity_limits: True
 * /ackermann_drive_controller/angular/z/max_acceleration: 3.0
 * /ackermann_drive_controller/angular/z/max_velocity: 1.45
 * /ackermann_drive_controller/back_left_steer: back_left_steer_j...
 * /ackermann_drive_controller/back_left_wheel: back_left_wheel_j...
 * /ackermann_drive_controller/back_right_steer: back_right_steer_...
 * /ackermann_drive_controller/back_right_wheel: back_right_wheel_...
 * /ackermann_drive_controller/back_wheel_lat_separation: 0.47
 * /ackermann_drive_controller/back_wheel_lon_separation: 0.25
 * /ackermann_drive_controller/base_frame_id: base_link
 * /ackermann_drive_controller/enable_odom_tf: False
 * /ackermann_drive_controller/estimate_velocity_from_position: True
 * /ackermann_drive_controller/front_left_steer: front_left_steer_...
 * /ackermann_drive_controller/front_left_wheel: front_left_wheel_...
 * /ackermann_drive_controller/front_right_steer: front_right_steer...
 * /ackermann_drive_controller/front_right_wheel: front_right_wheel...
 * /ackermann_drive_controller/front_wheel_lat_separation: 0.47
 * /ackermann_drive_controller/front_wheel_lon_separation: 0.28
 * /ackermann_drive_controller/linear/x/has_acceleration_limits: True
 * /ackermann_drive_controller/linear/x/has_velocity_limits: True
 * /ackermann_drive_controller/linear/x/max_acceleration: 2.0
 * /ackermann_drive_controller/linear/x/max_velocity: 0.37
 * /ackermann_drive_controller/mid_left_wheel: mid_left_wheel_joint
 * /ackermann_drive_controller/mid_right_wheel: mid_right_wheel_j...
 * /ackermann_drive_controller/mid_wheel_lat_separation: 0.52
 * /ackermann_drive_controller/open_loop: False
 * /ackermann_drive_controller/pose_covariance_diagonal: [0.001, 0.001, 0....
 * /ackermann_drive_controller/publish_cmd: True
 * /ackermann_drive_controller/publish_rate: 50
 * /ackermann_drive_controller/twist_covariance_diagonal: [0.001, 0.001, 0....
 * /ackermann_drive_controller/type: ackermann_drive_c...
 * /ackermann_drive_controller/wheel_radius: 0.06
 * /gazebo/enable_ros_network: True
 * /joint_state_publisher/publish_rate: 50
 * /joint_state_publisher/type: joint_state_contr...
 * /robot_description: <?xml version="1....
 * /robot_state_publisher/publish_frequency: 50.0
 * /rosdistro: melodic
 * /rosversion: 1.14.5
 * /rqt_robot_steering/default_topic: /ackermann_drive_...
 * /use_sim_time: True

NODES
  /
    curio_controller_spawner (controller_manager/spawner)
    gazebo (gazebo_ros/gzserver)
    gazebo_gui (gazebo_ros/gzclient)
    robot_state_publisher (robot_state_publisher/robot_state_publisher)
    rqt_robot_steering (rqt_robot_steering/rqt_robot_steering)
    urdf_spawner (gazebo_ros/spawn_model)

auto-starting new master
process[master]: started with pid [99447]
ROS_MASTER_URI=http://<machine>:11311

setting /run_id to ab3b07fa-d1e0-11ea-9106-94f6d6f3ade6
process[rosout-1]: started with pid [99450]
started core service [/rosout]
process[gazebo-2]: started with pid [99451]
process[gazebo_gui-3]: started with pid [99452]
process[curio_controller_spawner-4]: started with pid [99457]
process[robot_state_publisher-5]: started with pid [99462]
process[rqt_robot_steering-6]: started with pid [99463]
process[urdf_spawner-7]: started with pid [99464]
[ WARN] [1596057347.717080000]: The root link base_link has an inertia specified in the URDF, but KDL does not support a root link with an inertia.  As a workaround, you can add an extra dummy link to your URDF.
[ INFO] [1596057348.324620000]: Finished loading Gazebo ROS API Plugin.
[ INFO] [1596057348.327899000]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting...
[INFO] [1596057348.665699, 0.000000]: Loading model XML from ros parameter robot_description
[INFO] [1596057348.674581, 0.000000]: Waiting for service /gazebo/spawn_urdf_model
[ INFO] [1596057348.676013000]: Finished loading Gazebo ROS API Plugin.
[ INFO] [1596057348.678464000]: waitForService: Service [/gazebo_gui/set_physics_properties] has not been advertised, waiting...
[ INFO] [1596057348.906957000]: waitForService: Service [/gazebo/set_physics_properties] is now available.
[ INFO] [1596057348.944066000]: Physics dynamic reconfigure ready.
[INFO] [1596057348.985228, 0.000000]: Calling service /gazebo/spawn_urdf_model
[ INFO] [1596057349.612318000]: <robotNamespace> set to: //
[ INFO] [1596057349.612424000]: <topicName> set to: //sensors/imu
[ INFO] [1596057349.612439000]: <frameName> set to: imu
[ WARN] [1596057349.612456000]: missing <updateRateHZ>, set to default: 1
[ INFO] [1596057349.612480000]: <gaussianNoise> set to: 0
[ INFO] [1596057349.612530000]: <xyzOffset> set to: 0 0 0
[ INFO] [1596057349.612565000]: <rpyOffset> set to: 0 -0 0
[INFO] [1596057349.637220, 0.000000]: Spawn status: SpawnModel: Successfully spawned entity
[ INFO] [1596057349.781728000]: Laser Plugin: Using the 'robotNamespace' param: '/'
[ INFO] [1596057349.781770000]: Starting GazeboRosLaser Plugin (ns = /)
[ INFO] [1596057349.783918000]: GPU Laser Plugin (ns = /) <tf_prefix_>, set to ""
[ INFO] [1596057349.784417000]: LoadThread function completed
[ INFO] [1596057349.914821000]: Loading gazebo_ros_control plugin
[ INFO] [1596057349.914888000]: Starting gazebo_ros_control plugin in namespace: /
[ INFO] [1596057349.915636000]: gazebo_ros_control plugin is waiting for model URDF in parameter [robot_description] on the ROS param server.
[ERROR] [1596057350.035846000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/front_left_steer_joint
[ERROR] [1596057350.037348000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/front_right_steer_joint
[ERROR] [1596057350.038807000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/front_left_wheel_joint
[ERROR] [1596057350.040239000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/front_right_wheel_joint
[ERROR] [1596057350.041657000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/mid_left_wheel_joint
[ERROR] [1596057350.043123000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/mid_right_wheel_joint
[ERROR] [1596057350.043892000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/back_left_steer_joint
[ERROR] [1596057350.044582000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/back_right_steer_joint
[ERROR] [1596057350.045240000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/back_left_wheel_joint
[ERROR] [1596057350.045854000]: No p gain specified for pid.  Namespace: /gazebo_ros_control/pid_gains/back_right_wheel_joint
[ INFO] [1596057350.053019000]: Loaded gazebo_ros_control.
[ INFO] [1596057350.060314000]: GazeboRosJointStatePublisher is going to publish joint: left_rocker_joint
[ INFO] [1596057350.060343000]: GazeboRosJointStatePublisher is going to publish joint: right_rocker_joint
[ INFO] [1596057350.060353000]: GazeboRosJointStatePublisher is going to publish joint: left_bogie_joint
[ INFO] [1596057350.060364000]: GazeboRosJointStatePublisher is going to publish joint: right_bogie_joint
[ INFO] [1596057350.060371000]: GazeboRosJointStatePublisher is going to publish joint: diff_brace_joint
[ INFO] [1596057350.060382000]: GazeboRosJointStatePublisher is going to publish joint: back_left_turnbuckle_joint
[ INFO] [1596057350.060410000]: GazeboRosJointStatePublisher is going to publish joint: back_right_turnbuckle_joint
[ INFO] [1596057350.060421000]: GazeboRosJointStatePublisher is going to publish joint: front_left_turnbuckle_joint
[ INFO] [1596057350.060453000]: GazeboRosJointStatePublisher is going to publish joint: front_right_turnbuckle_joint
[ INFO] [1596057350.060476000]: Starting GazeboRosJointStatePublisher Plugin (ns = //)!, parent name: curio
[ INFO] [1596057350.179776000]: Controller state will be published at 50Hz.
[ INFO] [1596057350.180634000]: Velocity rolling window size of 10.
[ INFO] [1596057350.180996000]: Velocity commands will be considered old if they are older than 0.5s.
[ INFO] [1596057350.181588000]: Allow mutiple cmd_vel publishers is disabled
[ INFO] [1596057350.182179000]: Base frame_id set to base_link
[ INFO] [1596057350.182466000]: Odometry frame_id set to odom
[ INFO] [1596057350.182992000]: Publishing to tf is disabled
[ INFO] [1596057350.196450000]: Adding wheel with joint name: front_left_wheel_joint
[ INFO] [1596057350.196483000]: Adding wheel with joint name: front_right_wheel_joint
[ INFO] [1596057350.196503000]: Adding wheel with joint name: mid_left_wheel_joint
[ INFO] [1596057350.196522000]: Adding wheel with joint name: mid_right_wheel_joint
[ INFO] [1596057350.196541000]: Adding wheel with joint name: back_left_wheel_joint
[ INFO] [1596057350.196550000]: Adding wheel with joint name: back_right_wheel_joint
[ INFO] [1596057350.196573000]: Adding steer with joint name: front_left_steer_joint
[ INFO] [1596057350.196587000]: Adding steer with joint name: front_right_steer_joint
[ INFO] [1596057350.196602000]: Adding steer with joint name: back_left_steer_joint
[ INFO] [1596057350.196611000]: Adding steer with joint name: back_right_steer_joint
[urdf_spawner-7] process has finished cleanly
log file: /Users/<user>/.ros/log/<session>/urdf_spawner-7*.log
[ WARN] [1596057366.407529000, 10.021000000]: Joint state with name: "back_left_turnbuckle_joint" was received but not found in URDF
[ WARN] [1596057384.645811000, 20.021000000]: Joint state with name: "back_left_turnbuckle_joint" was received but not found in URDF
[ WARN] [1596057394.719220000, 30.021000000]: Joint state with name: "back_left_turnbuckle_joint" was received but not found in URDF
[ WARN] [1596057404.791827000, 40.021000000]: Joint state with name: "back_left_turnbuckle_joint" was received but not found in URDF
[ WARN] [1596057414.883252000, 50.041000000]: Joint state with name: "back_left_turnbuckle_joint" was received but not found in URDF
[ WARN] [1596057424.956291000, 60.041000000]: Joint state with name: "back_left_turnbuckle_joint" was received but not found in URDF
[ WARN] [1596057435.030012000, 70.041000000]: Joint state with name: "back_left_turnbuckle_joint" was received but not found in URDF