How do you manually actuate a single joint and see the effect in Gazebo or Rviz?
As a test, I'm trying to make a single leg rotate around a joint.
Using a [simplified model](https://github.com/chrisspen/cheetahbot/blob/master/src/cheetahbot/cheetahbot_description/urdf/cheetahbot.urdf.xacro), I've tried mimicking the steps in this [Gazebo ROS tutorial](http://gazebosim.org/tutorials/?tut=ros_control) and [this similar tutorial](http://www.romin.upm.es/wiki/index.php?title=ROS%3ATutorials/Control_Your_Robot) to build and structure my project. Each tutorial explains how to create a `myrobot_control` package, populate a myrobot_control.yaml file, launch file and start a gazebo simulation.
But when I try and run the simulation for my robot with:
roslaunch cheetahbot_gazebo cheetahbot_world.launch &
roslaunch cheetahbot_control cheetahbot_control.launch &
rosservice call /cheetahbot/controller_manager/switch_controller "{start_controllers: [], stop_controllers: ['torso_to_front_right_leg_joint_position_controller'], strictness: 2}"
it runs without error, Gazebo starts and I can launch RQT and load the joint trajectory controller, but I can't effect any joints. If I run:
rostopic pub -1 /cheetahbot/torso_to_front_right_leg_joint_position_controller/command std_msgs/Float64 "data: 1.5"
It reports:
publishing and latching message for 3.0 seconds
but nothing happens in the Gazebo simulation. And the single joint seems to slowly move on its own. The one leg starts from a horizontal position and slowly falls down, but over the course of several minutes.
I'm sure there's something wrong with my URDF or config/launch files, but I don't see it. I've tried to make this as simple as I can, but I still can't get it to work. What am I doing wrong?
I'm running Indigo with Gazebo 5 on Ubuntu 14.04.
↧