How to know if the controllers are working/controlling? Spawned robot in gazebo is falling down/crushing to the floor.

asked 2019-11-24 12:48:27 -0600

marko1990 gravatar image

updated 2019-11-29 06:39:58 -0600

Hello guys,

I was thinking I have made everything properly but I have found myself in a situation in which I have spawned robot in gazebo fallen down on the floor. From what I could tell you, there is no error in the terminal after launching gazebo.launch file, but the gazebo starts and the robot is the position like is crushed down, fallen, like there is no control at all (I would have shown a picture, but I have no right yet). So I tried these approache, with gazebo in pause:

  1. lauch file with controllers loaded and I can see the controllers are loaded in the terminal. When gazebo starts the robot is spawned in the position defined in the sdf file. After starting the simulation it just fells down.
  2. lauch file with controllers loaded and I can see the controllers are loaded in the terminal. When gazebo starts the robot is spawned in the position defined in the sdf file. Change the gravity in z axis from -9.8 to 0 and after starting the simulation the robot stays in the position.
  3. lauch file without controllers. When gazebo starts the robot is spawned in the position defined in the sdf file. After starting the simulation it just fells down.
  4. lauch file with controllers. When gazebo starts the robot is spawned in the position defined in the sdf file. After starting the simulation it just fells down. Change the gravity in z axis from -9.8 to 0 and after starting the simulation the robot stays in the position.

So from this I would say that the controllers are not controlling the robot as they should or not at all, right?

Shouldn't I be able to see the controller publishing on the /follow_joint_trajectory/goal/ topic something? when I echo the topic I get this:

WARNING: topic [/fanuc_arm_controller/follow_joint_trajectory/goal] does not appear to be published yet

WARNING: no messages received and

simulated time is active. Is /clock being published?

The clock is being published, I have tried the echo the clock topic

I am using EffortController/JointTrajectoryController and I have made a package using the moveit, but I am not launching the move_group.launch file because when I have tried to launch I had the same problem with the robot model. That's why I wanted to try first just to spawn a model and then to add a move_group.launch to the my main.launch file

In the urdf file I am spawning I have transmissions and there is effort inteface, like this for each joint:

<transmission name="trans_joint_1">
   <type>transmission_interface/SimpleTransmission</type>
   <joint name="joint_1">
       <hardwareInterface>hardware_interface/EffortJointInterface</hardwareInterface>
  </joint>
  <actuator name="joint_1_motor">
       <hardwareInterface>hardware_interface/EffortJointInterface</hardwareInterface>
       <mechanicalReduction>1</mechanicalReduction>
 </actuator>
 </transmission>

What I am I doing wrong here or missing? How can I check if the controller is controlling the joints?

UPDATE 29.11.2019:

Hello everyone I have found some time to try to figure out what could have happen here, I ... (more)

edit retag flag offensive close merge delete

Comments

You tagged this with ros-i. What is ros-i about this one specifically?

gvdhoorn gravatar imagegvdhoorn ( 2019-11-26 08:08:34 -0600 )edit

It should have been ROS I, not ros-i. sorry, this tag is not even necessary since it is already tagged as melodic.I will fix it.

marko1990 gravatar imagemarko1990 ( 2019-11-26 08:31:24 -0600 )edit