Hello list,
Trying to get a trajectory controller working, but am unable to get a working action client. As a first test I tried to add it to the rrbot example from gazebo_ros_demos. As the rrbot_control.yaml I use the following:
rrbot:
# Publish all joint states -----------------------------------
joint_state_controller:
type: joint_state_controller/JointStateController
publish_rate: 50
# Trajectory Controller (not together with the position controllers)
joint_trajectory_controller:
type: effort_controllers/JointTrajectoryController
joints:
- joint1
- joint2
constraints:
goal_time: 0.0
stopped_velocity_tolerance: 0.01
joint1: {trajectory: 0.01, goal: 0.01}
joint2: {trajectory: 0.01, goal: 0.01}
gains:
joint1: {p: 100.0, d: 75.0, i: 0.0, i_clamp: 0.0}
joint2: {p: 100.0, d: 25.0, i: 0.0, i_clamp: 0.0}
state_publish_rate: 100
action_monitor_rate: 100
stop_trajectory_duration: 0.0
With an properly adapted launch file both controllers are loaded and started. All is well I think, but I have a problem creating a simple actionclient to use them. I actually do not know how to start the client (in Python). The client starts but noting happens, if keeps waiting for the server. The relevant line (i think) in my client is:
arm_client = actionlib.SimpleActionClient('rrbot/joint_trajectory_controller', FollowJointTrajectoryAction)
The first parameter is wrong, but what should it be? Is there an additional parameter needed in the yaml file?
Thanks in advance, Sietse
PS. Using melodic (from source) on debian test
Originally posted by Sietse on ROS Answers with karma: 168 on 2018-10-17
Post score: 0