ADVRHumanoids/CartesianInterface

Robot moves a bit when commanding a car_frame velocity in Position control Mode

Closed this issue · 1 comments

Hi,

As title, I noticed this .

Steps:

  • roslaunch centauro_cartesio centauro_car_model.launch
  • rviz
    By default, mode is Position for the car_frame task:
rosservice call /cartesian/car_frame/get_cartesian_task_properties 
base_link: "world"
distal_link: "car_frame"
control_mode: "Position"
state: "Online"
use_local_subtasks: False
max_vel_lin: 1.0
max_vel_ang: 1.0
max_acc_lin: 10.0
max_acc_ang: 10.0

But if I send a twist command :

rostopic pub /cartesian/car_frame/velocity_reference geometry_msgs/TwistStamped "header:
  seq: 0
  stamp:
    secs: 0
    nsecs: 0
  frame_id: ''
twist:
  linear:
    x: 0.1
    y: 0.0
    z: 0.0
  angular:
    x: 0.0
    y: 0.0
    z: 0.0" -r 100

I can see the robot move a bit forward and then stop, as if he remembers only after a few moments that the car_frame is controlled in position.

When setting the velocity control mode:

rosservice call /cartesian/car_frame/set_control_mode "ctrl_mode: 'velocity'" 

The robot correctly responds to the velocity command moving forward until the command is published

Is this normal ? @alaurenzi

Yes, the two commands are applied in parallel