Skip to content

Movement

In this section you can define features related to how your robot moves.

The current implementation is based on the Twist ROS 2 message type.

movement {
ros2_topic "/cmd_vel"
linear {
x #false {
max_velocity #nan
min_velocity #nan
max_acceleration #nan
max_deceleration #nan
max_acceleration_reverse #nan // If not set, -max_acceleration will be used.
max_deceleration_reverse #nan // If not set, -max_deceleration will be used.
max_jerk #nan
min_jerk #nan
}
y #false {
max_velocity #nan
min_velocity #nan
max_acceleration #nan
max_deceleration #nan
max_acceleration_reverse #nan // If not set, -max_acceleration will be used.
max_deceleration_reverse #nan // If not set, -max_deceleration will be used.
max_jerk #nan
min_jerk #nan
}
z #false {
max_velocity #nan
min_velocity #nan
max_acceleration #nan
max_deceleration #nan
max_acceleration_reverse #nan // If not set, -max_acceleration will be used.
max_deceleration_reverse #nan // If not set, -max_deceleration will be used.
max_jerk #nan
min_jerk #nan
}
}
angular {
x #false {
max_velocity #nan
min_velocity #nan
max_acceleration #nan
max_deceleration #nan
max_acceleration_reverse #nan // If not set, -max_acceleration will be used.
max_deceleration_reverse #nan // If not set, -max_deceleration will be used.
max_jerk #nan
min_jerk #nan
}
y #false {
max_velocity #nan
min_velocity #nan
max_acceleration #nan
max_deceleration #nan
max_acceleration_reverse #nan // If not set, -max_acceleration will be used.
max_deceleration_reverse #nan // If not set, -max_deceleration will be used.
max_jerk #nan
min_jerk #nan
}
z #false {
max_velocity #nan
min_velocity #nan
max_acceleration #nan
max_deceleration #nan
max_acceleration_reverse #nan // If not set, -max_acceleration will be used.
max_deceleration_reverse #nan // If not set, -max_deceleration will be used.
max_jerk #nan
min_jerk #nan
}
}
}

A ROS 2 topic on which messages of type TwistStamped should be published in order to move the robot.

Type: string

movement {
ros2_topic "/cmd_vel"
}

Enabling/Disabling Movement on Specific Axes

Section titled “Enabling/Disabling Movement on Specific Axes”

Use x #true/x #false to enable/disable movement on the x-axis.

Type: boolean

movement {
linear {
x #false {
}
}
}

Type: double

Constraints: <=0.0 or NaN

movement {
linear {
x #false {
max_velocity #nan
}
}
}

Type: double

Constraints: >=0.0 or NaN

movement {
linear {
x #false {
min_velocity #nan
}
}
}

Maximum acceleration in the positive direction of the axis.

Type: double

Constraints: >=0.0 or NaN

movement {
linear {
x #false {
max_acceleration #nan
}
}
}

Maximum deceleration in the positive direction of the axis.

Type: double

Constraints: <=0.0 or NaN

movement {
linear {
x #false {
max_deceleration #nan
}
}
}

Maximum acceleration in the negative direction of the axis.

Type: double

Constraints: <=0.0 or NaN

movement {
linear {
x #false {
max_acceleration_reverse #nan // If not set, -max_acceleration will be used.
}
}
}

Maximum deceleration in the negative direction of the axis.

Type: double

Constraints: >=0.0 or NaN

movement {
linear {
x #false {
max_deceleration_reverse #nan // If not set, -max_deceleration will be used.
}
}
}
movement {
ros2_topic "/cmd_vel"
linear {
x #true {
max_velocity 1.0
min_velocity -1.0
}
}
angular {
z #true {
max_velocity 1.0
min_velocity -1.0
}
}
}