ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

xman236's profile - activity

2023-06-07 03:49:39 -0500 received badge  Nice Question (source)
2022-11-24 17:52:55 -0500 received badge  Famous Question (source)
2022-11-22 04:12:46 -0500 received badge  Notable Question (source)
2022-11-22 04:12:46 -0500 received badge  Popular Question (source)
2022-11-09 09:01:12 -0500 received badge  Famous Question (source)
2022-09-08 17:15:34 -0500 received badge  Notable Question (source)
2022-08-12 08:02:50 -0500 received badge  Famous Question (source)
2022-07-13 18:21:09 -0500 received badge  Famous Question (source)
2022-07-07 08:22:19 -0500 received badge  Famous Question (source)
2022-04-15 07:17:04 -0500 received badge  Notable Question (source)
2022-03-31 15:08:22 -0500 received badge  Notable Question (source)
2022-02-18 16:39:36 -0500 received badge  Popular Question (source)
2022-02-13 13:39:29 -0500 received badge  Famous Question (source)
2022-02-08 10:00:49 -0500 received badge  Taxonomist
2022-01-04 12:54:48 -0500 received badge  Famous Question (source)
2021-12-11 18:36:00 -0500 asked a question Is there any complete example on velocity_controllers/JointTrajectoryController ?

Is there any complete example on velocity_controllers/JointTrajectoryController ? I am trying to understand how to imple

2021-11-17 06:18:17 -0500 received badge  Famous Question (source)
2021-11-12 16:10:54 -0500 received badge  Popular Question (source)
2021-10-30 09:43:30 -0500 commented question How to use pos_vel_controllers/JointTrajectoryController?

Assuming my robot can take position and velocity, the error in velocity shouldn't be 0, so that the robot can have some

2021-10-30 08:25:00 -0500 commented question How to use pos_vel_controllers/JointTrajectoryController?

Assuming my robot can take position and velocity, the error in velocity shouldn't be 0, so that the robot can try to min

2021-10-30 08:25:00 -0500 received badge  Commentator
2021-10-29 16:06:28 -0500 edited question How to use pos_vel_controllers/JointTrajectoryController?

How to use pos_vel_controllers/JointTrajectoryController? Hi, I am trying to use pos_vel_controllers/JointTrajectoryCont

2021-10-29 16:05:51 -0500 asked a question How to use pos_vel_controllers/JointTrajectoryController?

How to use pos_vel_controllers/JointTrajectoryController? Hi, I am trying to use pos_vel_controllers/JointTrajectoryCont

2021-10-29 09:40:31 -0500 asked a question Difference between velocity_controllers/JointTrajectoryController and pos_vel_controllers/JointTrajectoryController

Difference between velocity_controllers/JointTrajectoryController and pos_vel_controllers/JointTrajectoryController Hi,

2021-10-29 06:58:37 -0500 marked best answer Understanding JointTrajectoryController of ros_control

Hi, currently, I am trying to understand how the hardware_interface and ros_control work: velocity_controllers/JointTrajectoryController is chosen for the controller type and so far everything seems to work. As you can see the output of $rostopic echo /robot_arm_controller_trajectory/follow_joint_trajectory/goal the trajectory controller computed 8 interpolation points with specific velocity values. What would be the proper next step to make sure that the real robot actually moving towards these points with the desired velocity values?

  1. In hardware_interface.cpp I locally store the values from /robot_arm_controller_trajectory/follow_joint_trajectory/goal
  2. In write() I make sure that the actual velocity matches the desired velocity value (PID should be applied). For each point, I check whether the velocity has reached its desired value within the given time, otherwise set_abort()

Is this the right approach? If yes, JointTrajectoryController actually only cares about generating the desired interpolation points. Then what is $rostopic echo /robot_arm_controller_trajectory/follow_joint_trajectory/feedback meant for, if JointTrajectoryController is not taking care of the "reaching" task (checking whether the computed points are reached or not)?

header:    seq: 0   stamp: 
    secs: 1634781253
    nsecs: 480294199   frame_id: '' goal_id:    stamp: 
    secs: 1634781253
    nsecs: 480294676   id: "/move_group_plan-2-1634781253.480294676" goal:    trajectory: 
    header: 
      seq: 0
      stamp: 
        secs: 1634781313
        nsecs: 480279134
      frame_id: "world"
    joint_names: 
      - jnt0
      - jnt1
      - jnt2
      - jnt3
      - jnt4
    points: 
      - 
        positions: [1.5700000524520874,
0.7400000095367432, 0.6600000262260437, 1.7000000476837158, 1.0]
        velocities: [0.0, 0.0, 0.0, 0.0, 0.0]
        accelerations: []
        effort: []
        time_from_start: 
          secs: 0
          nsecs:         0
      - 
        positions: [1.5703209370473115,
0.7406213365581189, 0.6710738072625566, 1.6212431102458411, 0.9413782050925622]
        velocities: [0.0013806954234580442,
0.002673432715851713, 0.047648029930578414, -0.33887367827729736, -0.2522366144972447]
        accelerations: []
        effort: []
        time_from_start: 
          secs: 0
          nsecs: 398756937
      - 
        positions: [1.5706418216425353,
0.7412426635794948, 0.6821475882990696, 1.5424861728079666, 0.8827564101851244]
        velocities: [0.0022349043068913945,
0.004327432530974492, 0.07712692133070972, -0.5485281041759992, -0.40829040678906914]
        accelerations: []
        effort: []
        time_from_start: 
          secs: 0
          nsecs: 562751472
      - 
        positions: [1.5709627062377594,
0.7418639906008705, 0.6932213693355825, 1.463729235370092, 0.8241346152776866]
        velocities: [0.002753033119682365,
0.005330682411870807, 0.09500763329677239, -0.6756960614448504, -0.502946371740638]
        accelerations: []
        effort: []
        time_from_start: 
          secs: 0
          nsecs: 690434717
      - 
        positions: [1.5712835908329834,
0.7424853176222463, 0.7042951503720954, 1.3849722979322172, 0.7655128203702488]
        velocities: [0.0027706307883390013,
0.00536475667786027, 0.09561493178463103, -0.6800151796264982, -0.506161256276052]
        accelerations: []
        effort: []
        time_from_start: 
          secs: 0
          nsecs: 797648694
      - 
        positions: [1.5716044754282075,
0.7431066446436221, 0.7153689314086084, 1.3062153604943427, 0.706891025462811]
        velocities: [0.0022505020740580467,
0.004357634399054199, 0.07766520288374407, -0.5523563726288884, -0.41113993313426167]
        accelerations: []
        effort: []
        time_from_start: 
          secs: 0
          nsecs: 923568484
      - 
        positions: [1.5719253600234313,
0.7437279716649979, 0.7264427124451214, 1.227458423056468, 0.6482692305553732]
        velocities: [0.0013786955219680596,
0.0026695603179419584, 0.04757901299575412, -0.33838282854853885, -0.25187125630702323]
        accelerations: []
        effort: []
        time_from_start: 
          secs: 1
          nsecs:  87898940
      - 
        positions: [1.5722462446186554,
0.7443492986863737, 0.7375164934816343, 1.1487014856185933, 0.5896474356479354]
        velocities: [0.0, 0.0, 0.0, 0.0, 0.0]
        accelerations: []
        effort: []
        time_from_start: 
          secs: 1
          nsecs: 486655878   path_tolerance: []   goal_tolerance: []   goal_time_tolerance: 
    secs: 0
    nsecs:         0
---
2021-10-29 06:58:24 -0500 commented answer Understanding JointTrajectoryController of ros_control

Update: By echoing the vel_command, I have checked that the vel_commands deviate from the values in /robot_arm_controll

2021-10-26 07:49:05 -0500 received badge  Popular Question (source)
2021-10-25 05:22:21 -0500 received badge  Notable Question (source)
2021-10-22 15:00:32 -0500 commented question How to get constant velocity output from joint_trajectory_controller?

Thank you, but could you elaborate a bit more on „Yes: feed it a trajectory that will make your EEF move with a constant

2021-10-22 12:26:06 -0500 asked a question How to get constant velocity output from joint_trajectory_controller?

How to get constant velocity output from joint_trajectory_controller? Hi, is there a way to put the constraints into th

2021-10-21 10:18:42 -0500 received badge  Popular Question (source)
2021-10-21 08:29:06 -0500 commented answer Understanding JointTrajectoryController of ros_control

A ha, so instead of subscribing to the goal topic. The write() in hardware_interface is communicating with the real robo

2021-10-20 21:24:56 -0500 asked a question Understanding JointTrajectoryController of ros_control

Understanding JointTrajectoryController of ros_control Hi, currently, I am trying to understand how the hardware_interfa

2021-10-20 20:16:27 -0500 received badge  Famous Question (source)
2021-09-12 15:07:46 -0500 received badge  Notable Question (source)
2021-09-12 15:07:46 -0500 received badge  Popular Question (source)
2021-08-20 03:48:28 -0500 received badge  Famous Question (source)
2021-08-10 04:14:24 -0500 received badge  Notable Question (source)
2021-08-09 13:41:13 -0500 asked a question Interpolation step size in move_group.plan()

Interpolation step size in move_group.plan() Hi, Is there a way to specify the step size in move_group.plan(my_plan) ?

2021-08-08 23:39:55 -0500 received badge  Notable Question (source)
2021-07-06 00:44:38 -0500 received badge  Popular Question (source)
2021-05-23 22:33:43 -0500 received badge  Notable Question (source)
2021-05-23 03:49:50 -0500 received badge  Popular Question (source)
2021-05-12 04:32:11 -0500 received badge  Notable Question (source)
2021-05-11 08:36:58 -0500 received badge  Popular Question (source)
2021-05-11 07:11:10 -0500 edited question STOMP with joint constraint

STOMP with constraint Hi all, Will there be a way to define a constraint for STOMP such as "For the next planning, do n

2021-05-11 06:22:58 -0500 edited question STOMP with joint constraint

STOMP with constraint Hi all, Will there be a way to define a constraint for STOMP such as "For the next planning, do n

2021-05-11 06:22:41 -0500 asked a question STOMP with joint constraint

STOMP with constraint Hi all, Will there be a way define a constraint for STOMP such as "For the next planning, do not