Dear all,
I am fairly new to ROS and Gazebo.
I am using ros-kinetic and gazebo7.3 on Ubuntu 16.04. I have been following this tutorial (http://www.generationrobots.com/blog/en/2015/02/robotic-simulation-scenarios-with-gazebo-and-ros/) and have adapted it slightly for my own vehicle (4 wheels instead of 2, skid drive plugin instead of diff drive).
I receive errors when running roslaunch on my own project, and I get the same errors when using the same command on the project provided at the above link. I assume that means that I am missing something in ros or Gazebo.
Running:
roslaunch jaguar4x4_gazebo jaguar4x4_world.launch
gives the following errors (repeated for each joint and trans):
> [ERROR] [1472045218.311147687, 0.142000000]: No valid hardware interface element found in joint 'left_back_wheel_hinge'.
>>> [ERROR] [1472045218.311359894, 0.142000000]: Failed to load joints for transmission 'left_back_trans'.
Also:
> [ERROR] [1472045218.646822285, 0.365000000]: Exception thrown while initializing controller leftfrontWheel_effort_controller.
Could not find resource 'left_front_wheel_hinge' in 'hardware_interface::EffortJointInterface'.
[ERROR] [1472045218.646923303, 0.366000000]: Initializing controller 'leftfrontWheel_effort_controller' failed
[ERROR] [WallTime: 1472045219.647578] [1.363000] Failed to load leftfrontWheel_effort_controller
[INFO] [WallTime: 1472045219.647938] [1.363000] Loading controller: leftbackwheel_effort_controller
[ERROR] [1472045219.650602709, 1.366000000]: Could not load controller 'leftbackwheel_effort_controller' because the type was not specified. Did you load the controller configuration on the parameter server (namespace: '/jaguar4x4/leftbackwheel_effort_controller')?
[ERROR] [WallTime: 1472045220.651591] [2.366000] Failed to load leftbackwheel_effort_controller
>
This error is repeated for each of the 4 wheels.
I have seen similar error messages posted on this site, the solutions don’t seem to fix mine.
(1).
http://answers.gazebosim.org/question/6654/gazeboos-x-109-no-valid-hardware-interface-element-found-in-joint/
I already use the hardwareInterface tags
(2).
I have already installed ros_control
EDIT -------------------------------------------------------------------
I think maybe there is an issue with the way that I have created my joints and the use of the hardwareInterface tags.
In my macros.xacro file I create my joints and link the transmission separately (I repeat this twice for the front and back wheels):
>transmission_interface/SimpleTransmission EffortJointInterface 10
Doing it this way gives the errors mentioned above, but my model in Gazebo appears.
If I try to merge both of these blocks so that there is just one joint tag wrapped by the transmission tags then I get the following error and my model does not appear in Gazebo:
> [ERROR] [1473672367.041892175]: Failed to find root link: Two root links found: [footprint] and [left_back_wheel]
I don't understand why I get this error because I have a joint between my chassis base link and the world in my Jaguar4x4.xacro file :
I now get a number of errors when trying to combine the joint and transmission blocks, so I imagine that this is not the best way to go?
Edit 2 -------------------------------------------------------------------------
Here is my jaguar4x4_control/config/jaguar4x4_control.yaml file:
jaguar4x4:
# Publish all joint states -----------------------------------
joint_state_controller:
type: joint_state_controller/JointStateController
publish_rate: 50
# Effort Controllers ---------------------------------------
leftfrontWheel_effort_controller:
type: effort_controllers/JointEffortController
joint: left_front_wheel_hinge
pid: {p: 100.0, i: 0.1, d: 10.0}
leftbackWheel_effort_controller:
type: effort_controllers/JointEffortController
joint: left_back_wheel_hinge
pid: {p: 100.0, i: 0.1, d: 10.0}
rightfrontWheel_effort_controller:
type: effort_controllers/JointEffortController
joint: right_front_wheel_hinge
pid: {p: 100.0, i: 0.1, d: 10.0}
rightbackWheel_effort_controller:
type: effort_controllers/JointEffortController
joint: right_back_wheel_hinge
pid: {p: 100.0, i: 0.1, d: 10.0}
↧