@@ -4,11 +4,12 @@ This ROS package generates the motion commands to the platform (both forward spe
The forward speed command accepted by the platform is in the range [-100,100] and has no physical magnitude. To generate this command form the input Twist (linear velocity in the x axis) a simple PID controller is used together with the actual speed of the platform taken from the odometry information. The PID parameters can be set by a set of parameters.
The steering angle command accepted by the platform is also in the range [-100,100] and has no physical magnitude. To generate this command, the desired angular speed in the z axis is transformed to the necessary steering angle to achieve the desired angular speed using the kinematic parameters of the platform. In this case, no feedback is available, so the computed value is directly sent to the platform without any controller.
The steering angle command accepted by the platform is also in the range [-100,100] and has no physical magnitude. To generate this command, both the desired linear speed in the x axis and the angular speed in the z axis are used to generate the required steering angle using the kinematic parameters of the platform. In this case, no feedback is available, so the computed value is directly sent to the platform without any controller.
This package also implements a watchdog feature in order to stop the platform in case the input motion commands are received peridocally. The value of this watchdog period can be set by a parameter.
This package also implements a watchdog feature in order to stop the platform in case the input motion commands are received periodically. The value of this watchdog period can be set by a parameter.
# ROS Interface
### Topic publishers
- ~**control** (ackermann_msgs/AckermannDriveStamped.msg) Actual motion commands sent to the platform.
...
...
@@ -31,8 +32,8 @@ This package also implements a watchdog feature in order to stop the platform in
*[iri_model_car_msgs](https://gitlab.iri.upc.edu/mobile_robotics/adc/platform/model_car/iri_model_car_msgs): Set of specific ROS messages for the model car.
...
...
@@ -66,10 +67,10 @@ The main launch file (*node.launch*) has the following arguments:
***node_name** (default=model_car_control): name of the ROS node.
***output** (default=screen): Desired log output. Possible values are screen and log.
***launch_prefix** (default=): Set of parameters to be pre-apended to the node launch command.
***launch_prefix** (default=): Set of parameters to be pre-appended to the node launch command.
***config_file** (default=$(find iri_model_car_control)/config/params.yaml): file with the node configuration. See this [section](#parameters) for more information on the available parameters.
***cmd_vel_topic** (default=/encoders): Name of the velocities command topic to be used.
***odom_topic** (default=/odom): Name of the odom topic to be used
***odom_topic** (default=/odom): Name of the odometry topic to be used
***control_topic** (default=/control): Name of the control topic to be used.
To include the iri_model_car_control into an other launch file, include the following lines: