Added messages and topics references.

This commit is contained in:
sergi-e 2020-02-25 17:16:27 +01:00 committed by Marc Garcia Puig
parent b27d5d10c3
commit 7588981727
4 changed files with 553 additions and 4 deletions

View File

@ -14,8 +14,8 @@ The ROS bridge enables communication between ROS and CARLA so that both software
##Requirements ##Requirements
<h4>ROS melodic</h4> <h4>ROS melodic</h4>
* __ROS melodic:__ follow the official documentation to [install ROS](http://wiki.ros.org/melodic/Installation/Ubuntu). * __ROS Kinetic/Melodic:__ follow the official documentation to [install ROS](http://wiki.ros.org/melodic/Installation/Ubuntu). Some ROS packages could be necessary, depending on the user needs, such as [rviz](https://wiki.ros.org/ainstein_radar_rviz_plugins) to visualize ROS data.
* __CARLA:__ any version later than __XX__ should work properly. Follow the [quick start installation](../getting_started/quickstart) or make the build for the corresponding platform. * __CARLA:__ only __CARLA 0.9.7__ and later versions are supported. Follow the [quick start installation](../getting_started/quickstart) or make the build for the corresponding platform.
!!! Important !!! Important
Make sure that both CARLA and ROS work properly before continuing with the installation. Make sure that both CARLA and ROS work properly before continuing with the installation.
@ -25,12 +25,20 @@ The ROS bridge enables communication between ROS and CARLA so that both software
<h4>a) apt-get ROS bridge</h4> <h4>a) apt-get ROS bridge</h4>
First add the apt repository First add the apt repository:
* __For ROS Melodic:__
```sh ```sh
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 81061A1A042F527D && sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 81061A1A042F527D &&
sudo add-apt-repository "deb [trusted=yes] http://34.227.255.250/carla-ros-bridge-melodic/ bionic main" sudo add-apt-repository "deb [trusted=yes] http://34.227.255.250/carla-ros-bridge-melodic/ bionic main"
``` ```
* __For ROS Kinetic:__
```sh
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 9BE2A0CDC0161D6C
sudo add-apt-repository "deb [trusted=yes] http://dist.carla.org/carla-ros-bridge-kinetic xenial main"
```
Then simply install the ROS bridge: Then simply install the ROS bridge:
```sh ```sh
sudo apt-get update && sudo apt-get update &&

281
Docs/ros_launchs.md Normal file
View File

@ -0,0 +1,281 @@
<h1>CARLA launch</h1>
--------------
##carla_ackermann_control.launch
<!---NODE-->
<h4 style="margin-bottom: 5px"> <u>/carla_ackermann_control_ego_vehicle</u> <small><i>(Node)</i></small> </h4>
<p style="margin-bottom:-5px"> <b>Subscribed to:</b> </p>
* <font color="f8815c"><b>/carla/ego_vehicle/ackermann_cmd</b></font> — ackermann_msgs.AckermannDrive
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_info</b></font> — [carla_msgs.CarlaEgoVehicleInfo](../ros_msgs#carlaegovehicleinfomsg)
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_status</b></font> — [carla_msgs.CarlaEgoVehicleStatus](../ros_msgs#carlaegovehiclestatusmsg)
<p style="margin-top:-10px;margin-bottom:-5px"> <b>Publishes in:</b> </p>
* <font color="80ba10"><b>/carla/ego_vehicle/ackermann_control_parameter_descriptions</b></font> — ???
* <font color="80ba10"><b>/carla/ego_vehicle/ackermann_control/control_info</b></font> — carla_ackermann_control.EgoVehicleControlInfo ???
* <font color="80ba10"><b>/carla/ego_vehicle/ackermann_control/parameter_updates</b></font> — ???
* <font color="80ba10"><b>/carla/ego_vehicle/vehicle_control_cmd</b></font> — [carla_msgs.CarlaEgoVehicleControl](../ros_msgs#carlaegovehiclecontrolmsg)
---------------
##carla_ros_bridge.launch
<!---NODE-->
<h4 style="margin-bottom: 5px"> <u>carla_ros_bridge</u> <small><i>(Node)</i></small> </h4>
<p style="margin-bottom:-5px"> <b>Subscribed to:</b> </p>
* <font color="f8815c"><b>/carla/debug_marker</b></font> — visualization_msgs.MarkerArray
<p style="margin-top:-10px;margin-bottom:-5px"> <b>Publishes in:</b> </p>
* <font color="80ba10"><b>/carla/actor_list</b></font> — [carla_msgs.CarlaActorList](../ros_msgs#carlaactorlistmsg)
* <font color="80ba10"><b>/carla/objects</b></font> — derived_object_msgs.ObjectArrayring
* <font color="80ba10"><b>/carla/status</b></font> — [carla_msgs.CarlaStatus](../ros_msgs#carlastatusmsg)
* <font color="80ba10"><b>/carla/traffic_lights</b></font> — [carla_msgs.CarlaTrafficLightStatusList](../ros_msgs#carlatrafficlightstatuslist)
* <font color="80ba10"><b>/carla/world_info</b></font> — [carla_msgs.CarlaWorldInfo](../ros_msgs#carlaworldinfomsg)
--------------
##carla_ros_bridge_with_ackermann_control.launch
<!---NODE-->
<h4 style="margin-bottom: 5px"> <u>carla_ros_bridge</u> <small><i>(Node)</i></small> </h4>
<p style="margin-bottom:-5px"> <b>Subscribed to:</b> </p>
* <font color="f8815c"><b>/carla/debug_marker</b></font> — visualization_msgs.MarkerArray
<p style="margin-top:-10px;margin-bottom:-5px"> <b>Publishes in:</b> </p>
* <font color="80ba10"><b>/carla/actor_list</b></font> — [carla_msgs.CarlaActorList](../ros_msgs#carlaactorlistmsg)
* <font color="80ba10"><b>/carla/objects</b></font> — derived_object_msgs.ObjectArrayring
* <font color="80ba10"><b>/carla/status</b></font> — [carla_msgs.CarlaStatus](../ros_msgs#carlastatusmsg)
* <font color="80ba10"><b>/carla/traffic_lights</b></font> — [carla_msgs.CarlaTrafficLightStatusList](../ros_msgs#carlatrafficlightstatuslist)
* <font color="80ba10"><b>/carla/world_info</b></font> — [carla_msgs.CarlaWorldInfo](../ros_msgs#carlaworldinfomsg)
<!---NODE-->
<h4 style="margin-bottom: 5px"> <u>/carla_ackermann_control_ego_vehicle</u> <small><i>(Node)</i></small> </h4>
<p style="margin-bottom:-5px"> <b>Subscribed to:</b> </p>
* <font color="f8815c"><b>/carla/ego_vehicle/ackermann_cmd</b></font> — ackermann_msgs.AckermannDrive
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_info</b></font> — [carla_msgs.CarlaEgoVehicleInfo](../ros_msgs#carlaegovehicleinfomsg)
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_status</b></font> — [carla_msgs.CarlaEgoVehicleStatus](../ros_msgs#carlaegovehiclestatusmsg)
<p style="margin-top:-10px;margin-bottom:-5px"> <b>Publishes in:</b> </p>
* <font color="80ba10"><b>/carla/ego_vehicle/ackermann_control_parameter_descriptions</b></font> — ???
* <font color="80ba10"><b>/carla/ego_vehicle/ackermann_control/control_info</b></font> — carla_ackermann_control.EgoVehicleControlInfo ???
* <font color="80ba10"><b>/carla/ego_vehicle/ackermann_control/parameter_updates</b></font> — ???
* <font color="80ba10"><b>/carla/ego_vehicle/vehicle_control_cmd</b></font> — [carla_msgs.CarlaEgoVehicleControl](../ros_msgs#carlaegovehiclecontrolmsg)
--------------
##carla_ros_bridge_with_example_ego_vehicle.launch
<!---NODE-->
<h4 style="margin-bottom: 5px"> <u>carla_ros_bridge</u> <small><i>(Node)</i></small> </h4>
<p style="margin-bottom:-5px"> <b>Subscribed to:</b> </p>
* <font color="f8815c"><b>/carla/debug_marker</b></font> — visualization_msgs.MarkerArray
* <font color="f8815c"><b>/carla/ego_vehicle/enable_autopilot</b></font> — ???
* <font color="f8815c"><b>/carla/ego_vehicle/twist</b></font> — geometry_msgs.Twist
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_control_cmd</b></font> — [carla_msgs.CarlaEgoVehicleControl](../ros_msgs#carlaegovehiclecontrolmsg)
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_control_cmd_manual</b></font> — [carla_msgs.CarlaEgoVehicleControl](../ros_msgs#carlaegovehiclecontrolmsg)
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_control_manual_override</b></font> — std_msgs.Bool
<p style="margin-top:-10px;margin-bottom:-5px"> <b>Publishes in:</b> </p>
* <font color="80ba10"><b>/carla/actor_list</b></font> — [carla_msgs.CarlaActorList](../ros_msgs#carlaactorlistmsg)
* <font color="80ba10"><b>/carla/ego_vehicle/camera/rgb/front/camera_info</b></font> — sensor_msgs.CameraInfo
* <font color="80ba10"><b>/carla/ego_vehicle/camera/rgb/front/image_color</b></font> — sensor_msgs.Image
* <font color="80ba10"><b>/carla/ego_vehicle/camera/rgb/view/camera_info</b></font> — sensor_msgs.CameraInfo
* <font color="80ba10"><b>/carla/ego_vehicle/camera/rgb/view/image_color</b></font> — sensor_msgs.Image
* <font color="80ba10"><b>/carla/ego_vehicle/gnss/gnss1/fix</b></font> — sensor_msgs.NavSatFix
* <font color="80ba10"><b>/carla/ego_vehicle/imu</b></font> — sensor_msgs.Imu
* <font color="80ba10"><b>/carla/ego_vehicle/lidar/lidar1/point_cloud</b></font> — sensor_msgs.PointCloud2
* <font color="80ba10"><b>/carla/ego_vehicle/objects</b></font> — derived_object_msgs.ObjectArray
* <font color="80ba10"><b>/carla/ego_vehicle/odometry</b></font> — nav_msgs.Odometry
* <font color="80ba10"><b>/carla/ego_vehicle/radar/front/radar</b></font> — ainstein_radar_msgs.RadarTargetArray
* <font color="80ba10"><b>/carla/ego_vehicle/vehicle_info</b></font> — [carla_msgs.CarlaEgoVehicleInfo](../ros_msgs#carlaegovehicleinfomsg)
* <font color="80ba10"><b>/carla/ego_vehicle/vehicle_status</b></font> — [carla_msgs.CarlaEgoVehicleStatus](../ros_msgs#carlaegovehiclestatusmsg)
* <font color="80ba10"><b>/carla/objects</b></font> — derived_object_msgs.ObjectArrayring
* <font color="80ba10"><b>/carla/status</b></font> — [carla_msgs.CarlaStatus](../ros_msgs#carlastatusmsg)
* <font color="80ba10"><b>/carla/traffic_lights</b></font> — [carla_msgs.CarlaTrafficLightStatusList](../ros_msgs#carlatrafficlightstatuslist)
* <font color="80ba10"><b>/carla/world_info</b></font> — [carla_msgs.CarlaWorldInfo](../ros_msgs#carlaworldinfomsg)
<!---NODE-->
<h4 style="margin-bottom: 5px"> <u>/carla_manual_control_ego_vehicle</u> <small><i>(Node)</i></small> </h4>
<p style="margin-bottom:-5px"> <b>Subscribed to:</b> </p>
* <font color="80ba10"><b>/carla/ego_vehicle/camera/rgb/view/image_color</b></font> — sensor_msgs.Image
* <font color="80ba10"><b>/carla/ego_vehicle/collision</b></font> — [carla_msgs.CarlaCollisionEvent](../ros_msgs#carlacollisioneventmsg)
* <font color="80ba10"><b>/carla/ego_vehicle/gnss/gnss1/fix</b></font> — sensor_msgs.NavSatFix
* <font color="80ba10"><b>/carla/ego_vehicle/lane_invasion</b></font> — [carla_msgs.CarlaLaneInvasionEvent](../ros_msgs#carlalaneinvasioneventmsg)
* <font color="80ba10"><b>/carla/ego_vehicle/vehicle_control_manual_override</b></font> — std_msgs.Bool
* <font color="80ba10"><b>/carla/ego_vehicle/vehicle_info</b></font> — [carla_msgs.CarlaEgoVehicleInfo](../ros_msgs#carlaegovehicleinfomsg)
* <font color="80ba10"><b>/carla/ego_vehicle/vehicle_status</b></font> — [carla_msgs.CarlaEgoVehicleStatus](../ros_msgs#carlaegovehiclestatusmsg)
* <font color="80ba10"><b>/carla/status</b></font> — [carla_msgs.CarlaStatus](../ros_msgs#carlastatusmsg)
<p style="margin-top:-10px;margin-bottom:-5px"> <b>Publishes in:</b> </p>
* <font color="f8815c"><b>/carla/ego_vehicle/enable_autopilot</b></font> — ???
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_control_cmd_manual</b></font> — [carla_msgs.CarlaEgoVehicleControl](../ros_msgs#carlaegovehiclecontrolmsg)
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_control_manual_override</b></font> — std_msgs.Bool
<!---NODE-->
<h4 style="margin-bottom: 5px"> <u>/carla_ego_vehicle_ego_vehicle</u> <small><i>(Node)</i></small> </h4>
<p style="margin-bottom:-5px"> <b>Subscribed to:</b> </p>
* <font color="f8815c"><b>/carla/ego_vehicle/initialpose</b></font> — ???
---------------
##carla_ros_bridge_with_rviz.launch
<!---NODE-->
<h4 style="margin-bottom: 5px"> <u>carla_ros_bridge</u> <small><i>(Node)</i></small> </h4>
<p style="margin-bottom:-5px"> <b>Subscribed to:</b> </p>
* <font color="f8815c"><b>/carla/debug_marker</b></font> — visualization_msgs.MarkerArray
<p style="margin-top:-10px;margin-bottom:-5px"> <b>Publishes in:</b> </p>
* <font color="80ba10"><b>/carla/actor_list</b></font> — [carla_msgs.CarlaActorList](../ros_msgs#carlaactorlistmsg)
* <font color="80ba10"><b>/carla/objects</b></font> — derived_object_msgs.ObjectArrayring
* <font color="80ba10"><b>/carla/status</b></font> — [carla_msgs.CarlaStatus](../ros_msgs#carlastatusmsg)
* <font color="80ba10"><b>/carla/traffic_lights</b></font> — [carla_msgs.CarlaTrafficLightStatusList](../ros_msgs#carlatrafficlightstatuslist)
* <font color="80ba10"><b>/carla/world_info</b></font> — [carla_msgs.CarlaWorldInfo](../ros_msgs#carlaworldinfomsg)
<!---NODE-->
<h4 style="margin-bottom: 5px"> <u>/rviz</u> <small><i>(Node)</i></small> </h4>
<p style="margin-bottom:-5px"> <b>Subscribed to:</b> </p>
* <font color="f8815c"><b>/carla/vehicle_marker</b></font> — ???
* <font color="f8815c"><b>/carla/vehicle_marker_array</b></font> — ???
* <font color="f8815c"><b>/carla/ego_vehicle/lidar/front/point_cloud</b></font> — sensor_msgs.PointCloud2
--------------
##carla_manual_control.launch
<!---NODE-->
<h4 style="margin-bottom: 5px"> <u>/carla_manual_control_ego_vehicle</u> <small><i>(Node)</i></small> </h4>
<p style="margin-bottom:-5px"> <b>Subscribed to:</b> </p>
* <font color="f8815c"><b>/carla/ego_vehicle/camera/rgb/view/image_color</b></font> — sensor_msgs.Image
* <font color="f8815c"><b>/carla/ego_vehicle/collision</b></font> — [carla_msgs.CarlaCollisionEvent](../ros_msgs#carlacollisioneventmsg)
* <font color="f8815c"><b>/carla/ego_vehicle/gnss/gnss1/fix</b></font> — sensor_msgs.NavSatFix
* <font color="f8815c"><b>/carla/ego_vehicle/lane_invasion</b></font> — [carla_msgs.CarlaLaneInvasionEvent](../ros_msgs#carlalaneinvasioneventmsg)
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_control_manual_override</b></font> — std_msgs.Bool
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_info</b></font> — [carla_msgs.CarlaEgoVehicleInfo](../ros_msgs#carlaegovehicleinfomsg)
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_status</b></font> — [carla_msgs.CarlaEgoVehicleStatus](../ros_msgs#carlaegovehiclestatusmsg)
* <font color="f8815c"><b>/carla/status</b></font> — [carla_msgs.CarlaStatus](../ros_msgs#carlastatusmsg)
<p style="margin-top:-10px;margin-bottom:-5px"> <b>Publishes in:</b> </p>
* <font color="80ba10"><b>/carla/ego_vehicle/enable_autopilot</b></font> — ???
* <font color="80ba10"><b>/carla/ego_vehicle/vehicle_control_cmd_manual</b></font> — [carla_msgs.CarlaEgoVehicleControl](../ros_msgs#carlaegovehiclecontrolmsg)
* <font color="80ba10"><b>/carla/ego_vehicle/vehicle_control_manual_override</b></font> — std_msgs.Bool
--------------
##carla_pcl_recorder.launch
<!---NODE-->
<h4 style="margin-bottom: 5px"> <u>carla_ros_bridge</u> <small><i>(Node)</i></small> </h4>
<p style="margin-bottom:-5px"> <b>Subscribed to:</b> </p>
* <font color="f8815c"><b>/carla/debug_marker</b></font> — visualization_msgs.MarkerArray
* <font color="f8815c"><b>/carla/ego_vehicle/enable_autopilot</b></font> — ???
* <font color="f8815c"><b>/carla/ego_vehicle/twist</b></font> — geometry_msgs.Twist
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_control_cmd</b></font> — [carla_msgs.CarlaEgoVehicleControl](../ros_msgs#carlaegovehiclecontrolmsg)
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_control_cmd_manual</b></font> — [carla_msgs.CarlaEgoVehicleControl](../ros_msgs#carlaegovehiclecontrolmsg)
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_control_manual_override</b></font> — std_msgs.Bool
<p style="margin-top:-10px;margin-bottom:-5px"> <b>Publishes in:</b> </p>
* <font color="80ba10"><b>/carla/actor_list</b></font> — [carla_msgs.CarlaActorList](../ros_msgs#carlaactorlistmsg)
* <font color="80ba10"><b>/carla/ego_vehicle/camera/rgb/front/camera_info</b></font> — sensor_msgs.CameraInfo
* <font color="80ba10"><b>/carla/ego_vehicle/camera/rgb/front/image_color</b></font> — sensor_msgs.Image
* <font color="80ba10"><b>/carla/ego_vehicle/camera/rgb/view/camera_info</b></font> — sensor_msgs.CameraInfo
* <font color="80ba10"><b>/carla/ego_vehicle/camera/rgb/view/image_color</b></font> — sensor_msgs.Image
* <font color="80ba10"><b>/carla/ego_vehicle/gnss/gnss1/fix</b></font> — sensor_msgs.NavSatFix
* <font color="80ba10"><b>/carla/ego_vehicle/imu</b></font> — sensor_msgs.Imu
* <font color="80ba10"><b>/carla/ego_vehicle/lidar/lidar1/point_cloud</b></font> — sensor_msgs.PointCloud2
* <font color="80ba10"><b>/carla/ego_vehicle/objects</b></font> — derived_object_msgs.ObjectArray
* <font color="80ba10"><b>/carla/ego_vehicle/odometry</b></font> — nav_msgs.Odometry
* <font color="80ba10"><b>/carla/ego_vehicle/vehicle_status</b></font> — [carla_msgs.CarlaEgoVehicleStatus](../ros_msgs#carlaegovehiclestatusmsg)
* <font color="80ba10"><b>/carla/ego_vehicle/radar/front/radar</b></font> — ainstein_radar_msgs.RadarTargetArray
* <font color="80ba10"><b>/carla/ego_vehicle/vehicle_info</b></font> — [carla_msgs.CarlaEgoVehicleInfo](../ros_msgs#carlaegovehicleinfomsg)
* <font color="80ba10"><b>/carla/marker</b></font> — visualization_msgs.Marker
* <font color="80ba10"><b>/carla/objects</b></font> — derived_object_msgs.ObjectArrayring
* <font color="80ba10"><b>/carla/status</b></font> — [carla_msgs.CarlaStatus](../ros_msgs#carlastatusmsg)
* <font color="80ba10"><b>/carla/traffic_lights</b></font> — [carla_msgs.CarlaTrafficLightStatusList](../ros_msgs#carlatrafficlightstatuslist)
* <font color="80ba10"><b>/carla/world_info</b></font> — [carla_msgs.CarlaWorldInfo](../ros_msgs#carlaworldinfomsg)
<!---NODE-->
<h4 style="margin-bottom: 5px"> <u>/carla_manual_control_ego_vehicle</u> <small><i>(Node)</i></small> </h4>
<p style="margin-bottom:-5px"> <b>Subscribed to:</b> </p>
* <font color="f8815c"><b>/carla/ego_vehicle/camera/rgb/view/image_color</b></font> — sensor_msgs.Image
* <font color="f8815c"><b>/carla/ego_vehicle/collision</b></font> — [carla_msgs.CarlaCollisionEvent](../ros_msgs#carlacollisioneventmsg)
* <font color="f8815c"><b>/carla/ego_vehicle/gnss/gnss1/fix</b></font> — sensor_msgs.NavSatFix
* <font color="f8815c"><b>/carla/ego_vehicle/lane_invasion</b></font> — [carla_msgs.CarlaLaneInvasionEvent](../ros_msgs#carlalaneinvasioneventmsg)
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_control_manual_override</b></font> — std_msgs.Bool
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_info</b></font> — [carla_msgs.CarlaEgoVehicleInfo](../ros_msgs#carlaegovehicleinfomsg)
* <font color="f8815c"><b>/carla/ego_vehicle/vehicle_status</b></font> — [carla_msgs.CarlaEgoVehicleStatus](../ros_msgs#carlaegovehiclestatusmsg)
* <font color="f8815c"><b>/carla/status</b></font> — [carla_msgs.CarlaStatus](../ros_msgs#carlastatusmsg)
<p style="margin-top:-10px;margin-bottom:-5px"> <b>Publishes in:</b> </p>
* <font color="80ba10"><b>/carla/ego_vehicle/enable_autopilot</b></font> — ???
* <font color="80ba10"><b>/carla/ego_vehicle/vehicle_control_cmd_manual</b></font> — [carla_msgs.CarlaEgoVehicleControl](../ros_msgs#carlaegovehiclecontrolmsg)
* <font color="80ba10"><b>/carla/ego_vehicle/vehicle_control_manual_override</b></font> — std_msgs.Bool
<!---NODE-->
<h4 style="margin-bottom: 5px"> <u>/carla_ego_vehicle_ego_vehicle</u> <small><i>(Node)</i></small> </h4>
<p style="margin-bottom:-5px"> <b>Subscribed to:</b> </p>
* <font color="f8815c"><b>/carla/ego_vehicle/initialpose</b></font> — ???
<!---NODE-->
<h4 style="margin-bottom: 5px"> <u>/enable_autopilot_rostopic</u> <small><i>(Node)</i></small> </h4>
<p style="margin-top:-10px;margin-bottom:-5px"> <b>Publishes in:</b> </p>
* <font color="80ba10"><b>/carla/ego_vehicle/enable_autopilot</b></font> — ???
<!---NODE-->
<h4 style="margin-bottom: 5px"> <u>/pcl_recorder_node</u> <small><i>(Node)</i></small> </h4>
<p style="margin-bottom:-5px"> <b>Subscribed to:</b> </p>
* <font color="80ba10"><b>/carla/ego_vehicle/lidar/lidar1/point_cloud</b></font> — sensor_msgs.PointCloud2
--------------
##carla_waypoint_publisher.launch
<!---NODE-->
<h4 style="margin-bottom: 5px"> <u>/carla_waypoint_publisher</u> <small><i>(Node)</i></small> </h4>
<p style="margin-bottom:-5px"> <b>Subscribed to:</b> </p>
* <font color="f8815c"><b>/carla/world_info</b></font> — [carla_msgs.CarlaWorldInfo](../ros_msgs#carlaworldinfomsg)

258
Docs/ros_msgs.md Normal file
View File

@ -0,0 +1,258 @@
<h1>CARLA messages</h1>
The following reference lists all the CARLA messages available in the ROS bridge. These will can be used to enable communication in both ways.
Any doubts regarding these messages or the CARLA-ROS bridge can be solved in the forum:
<div class="build-buttons">
<!-- Latest release button -->
<p>
<a href="https://forum.carla.org/c/carla-ecosystem/ros-bridge" target="_blank" class="btn btn-neutral" title="Go to the CARLA Forum, ROS bridge section">
CARLA forum</a>
</p>
</div>
---------------
##CarlaActorInfo.msg
Comprises the information regarding an actor to be shared between ROS and CARLA.
The [CarlaActorList.msg](#carlaactorlist) message is a list of these items.
| Field | Type | Description |
| ----------- | ------ | ----------- |
| `id` | uint32 | The ID of the actor. |
| `parent_id` | uint32 | The ID of the parent actor. `0` if no parent available. |
| `type` | string | ??? | <!---- What is this exactly?>
| `rolename` | string | Role assigned to the actor when spawned. |
---------------
##CarlaActorList.msg
Contains a list of messages with some basic information for CARLA actors.
| Field | Type | Description |
| ----------- | ---------------- | ----------- |
| `actors` | [CarlaActorInfo](#carlaactorinfomsg)[] | List of messages with actors' information. |
---------------
##CarlaCollisionEvent.msg
Registers information regarding a collision event detected by the collision sensor of an actor.
| Field | Type | Description |
| ---------------- | --------------------- | ----------- |
| `header` | [Header](http://docs.ros.org/melodic/api/std_msgs/html/msg/Header.html) | Time stamp and frame ID when the message is published. |
| `other_actor_id` | uint32 | ID of the actor against whom the collision was detected. |
| `normal_impulse` | geometry_msgs/Vector3 | Vector representing resulting impulse from the collision. |
---------------
##CarlaControl.msg
These messages are used to control the simulation while in synchronous mode. The constant defined is translated as stepping commands.
| Field | Type | Description |
| ----------- | ---- | ----------- |
| `command` | int8 | __PLAY__=0, __PAUSE__=1, __STEP_ONCE__=2 |
!!! Important
In synchronous mode, only the ROS bridge client is allowed to tick.
---------------
##CarlaEgoVehicleControl.msg
Messages sent to apply a control to a vehicle in both modes, normal and manual. These are published in a stack.
| Field | Type | Description |
| ------------------- | ------- | ----------- |
| `header` | [Header](http://docs.ros.org/melodic/api/std_msgs/html/msg/Header.html) | Time stamp and frame ID when the message is published. |
| `throttle` | float32 | Scalar value to cotrol the vehicle throttle: __[0.0,1.0]__ |
| `steer` | float32 | Scalar value to control the vehicle steering direction: __[-1.0,1.0]__ to control the vehicle steering |
| `brake` | float32 | Scalar value to control the vehicle brakes: __[0.0,1.0]__ |
| `hand_brake` | bool | If true, the hand brake is enabled. |
| `reverse` | bool | If true, the vehicle will move reverse. |
| `gear` | int32 | Changes between the available gears in a vehicle. |
| `manual_gear_shift` | bool | If ture, the gears will be shifted using `gear`. |
---------------
##CarlaEgoVehicleInfo.msg
Contains some static information regarding a vehicle, mostly the attributes that used to define its physics.
| Field | Type | Description |
| --------------------------------------------- | ------------------------------------------------------- | ----------- |
| `id` | uint32 | ID of the vehicle actor. |
| `type` | string | ??? | <!---- What is this exactly?>
| `rolename` | string | Role assigned to the vehicle. |
| `wheels` | [CarlaEgoVehicleInfoWheel](#carlaegovehicleinfowheel)[] | List of messages with information regarding wheels. |
| `max_rpm` | float32 | Maximum RPM of the vehicle's engine. |
| `moi` | float32 | Moment of inertia of the vehicle's engine. |
| `damping_rate_full_throttle` | float32 | Damping rate when the throttle is at maximum. |
| `damping_rate_zero_throttle_clutch_engaged` | float32 | Damping rate when the throttle is zero with clutch engaged. |
| `damping_rate_zero_throttle_clutch_disengaged`| float32 | Damping rate when the throttle is zero with clutch disengaged. |
| `use_gear_autobox` | bool | If true, the vehicle will have an automatic transmission. |
| `gear_switch_time` | float32 | Switching time between gears. |
| `clutch_strength` | float32 | The clutch strength of the vehicle. Measured in Kgm^2/s. |
| `mass` | float32 | The mass of the vehicle measured in Kg. |
| `drag_coefficient` | float32 | Drag coefficient of the vehicle's chassis. |
| `center_of_mass` | geometry_msgs/Vector3 | The center of mass of the vehicle. |
---------------
##CarlaEgoVehicleInfoWheel.msg
Contains some static information regarding a wheel that will be part of a [CarlaEgoVehicleInfo.msg](#carlaegovehicleinfo) message.
| Field | Type | Description |
| ---------------------- | --------------------- | ----------- |
| `tire_friction` | float32 | A scalar value that indicates the friction of the wheel. |
| `damping_rate` | float32 | The damping rate of the wheel. |
| `max_steer_angle` | float32 | The maximum angle in degrees that the wheel can steer. |
| `radius` | float32 | The radius of the wheel in centimeters. |
| `max_brake_torque` | float32 | The maximum brake torque in Nm. |
| `max_handbrake_torque` | float32 | The maximum handbrake torque in Nm. |
| `position` | gemoetry_msgs/Vector3 | World position of the wheel. |
---------------
##CarlaEgoVehicleStatus.msg
Details the current status of the vehicle as an object in the world.
| Fied | Type | Description |
| ------------- | ------------------------------------------------- | ----------- |
| `header` | [Header](http://docs.ros.org/melodic/api/std_msgs/html/msg/Header.html) | Time stamp and frame ID when the message is published. |
| `velocity` | float32 | Current speed of the vehicle. |
| `acceleration`| geometry_msgs/Accel | Current acceleration of the vehicle. |
| `orientation` | geometry_msgs/Quaternion | Current orientation of the vehicle. |
| `control` | [CarlaEgoVehicleControl](#carlaegovehiclecontrol) | Current control values as reported by CARLA. |
---------------
##CarlaLaneInvasionEvent.msg
These messages are used to publish lane invasions detected by a lane-invasion sensor attached to a vehicle. The invasions detected in the last step are passed as a list with a constant definition to identify the lane crossed.
| Field | Type | Description |
| ----------------------- | ------- | ----------- |
| `header` | [Header](http://docs.ros.org/melodic/api/std_msgs/html/msg/Header.html) | Time stamp and frame ID when the message is published. |
| `crossed_lane_markings` | int32[] | __LANE_MARKING_OTHER__=0 <br> __LANE_MARKING_BROKEN__=1 <br> __LANE_MARKING_SOLID__=2 |
---------------
##CarlaStatus.msg
Details the current world settings of hte simulation.
| Field | Type | Description |
| -------------------------- | ------- | ----------------------------- |
| `frame` | uint64 | Current framen umber. |
| `fixed_delta_seconds` | float32 | Simulation time between last and current step. |
| `synchronous_mode` | bool | If true, synchronous mode is enabled. |
| `synchronous_mode_running` | bool | ??? | <!---- What is this exactly?>
---------------
##CarlaTrafficLightStatus.msg
Contains a constant definition regarding the state of a traffic light.
| Field | Type | Description |
| -------------------------- | ------- | ----------------------------------------- |
| `id` | uint32 | ID of the traffic light actor. ??? | <!---- Contains also pole and group??>
| `state` | uint8 | __RED__=0,__YELLOW__=1, __GREEN__=2, __OFF__=3, __UNKNOWN__=4 |
---------------
##CarlaTrafficLightStatusList.msg
Comprises a list of all traffic lights with their status.
| Field | Type | Description |
| ---------------- | ----------------------------------------------------- | ---------------- |
| `traffic_lights` | [CarlaTrafficLightStatus](#carlatrafficlightstatus)[] | A list of messages summarizing traffic light states. |
---------------
##CarlaWalkerControl.msg
Contains the information needed to apply a movement controller to a walker.
| Field | Type | Description |
| ----------- | ---------------------- | ----------------------------- |
| `direction` | geometry_msgs/Vector3 | Vector that controls the direction of the walker. |
| `speed` | float32 | A scalar value to control the walker's speed. |
| `jump` | bool | If true, the walker will jump. |
---------------
##CarlaWorldInfo.msg
Information about the current CARLA map (name and OpenDRIVE).
| Field | Type | Description |
| ----------- | ------- | ----------------------------- |
| `map_name` | string | Name of the CARLA map loaded in the current world. ??? | <!---- Is it? Or OpenDRIVE name file?>
| `opendrive` | string | ??? | <!---- Namefile of the OpenDRIVE map, whole map parsed as string or what??>
---------------
##EgoVehicleControlCurrent.msg
Represents the current time and the speed and acceleration values of the vehicle used by the controller. It is part of a `Carla_Ackermann_Control.EgoVehicleControlInfo.msg` message.
| Field | Type | Description |
| ----------- | -------- | ----------------------------- |
| `time_sec` | float32 | Current time when the controller is applied. |
| `speed` | float32 | Current speed applied by the controller. |
| `speed_abs` | float32 | ??? | <!---- what?>
| `accel` | float32 | Current acceleration applied by the controller. |
---------------
##EgoVehicleControlInfo.msg
Contains all the current values used within an Ackermann controller. These messages are useful for debugging.
| Field | Type | Description |
| -------------- | ----------------------------------------------------------------------- | ------------------------------ |
| `header` | [Header](http://docs.ros.org/melodic/api/std_msgs/html/msg/Header.html) | Time stamp and frame ID when the message is published. |
| `restrictions` | [EgoVehicleControlMaxima](#egovehiclecontrolmaximamsg) | Limits to the controller values. |
| `target` | [EgoVehicleControlTarget](#egovehiclecontroltargetmsg) | Target values the controller aims for. |
| `current` | [EgoVehicleControlCurrent](#egovehiclecontrolcurrentmsg) | Currently measured values. |
| `status` | [EgoVehicleControlStatus](#egovehiclecontrolstatusmsg) | Current control status. |
| `output` | [CarlaEgoVehicleControl](#carlaegovehiclecontrolmsg) | Output controller that will be applied in CARLA. |
---------------
##EgoVehicleControlMaxima.msg
Represents the maximum values that restrict the controller. It is part of a `Carla_Ackermann_Control.EgoVehicleControlInfo.msg` message.
| Field | Type | Description |
| -------------------- | -------- | ----------------------------- |
| `max_steering_angle` | float32 | Max. steering angle permitted to the controller. |
| `max_speed` | float32 | Max. speed permitted to the controller. |
| `max_accel` | float32 | Max. acceleration permitted to the controller. |
| `max_decel` | float32 | ??? |<!---- what?>
| `min_accel` | float32 | ??? |<!---- what?>
| `max_pedal` | float32 | ??? |<!---- what?>
---------------
##EgoVehicleControlStatus.msg
Represents the current status of the ego vehicle controller. It is part of a `Carla_Ackermann_Control.EgoVehicleControlInfo.msg` message.
| Field | Type | Description |
| -------------------------------- | ------- | ----------------------------- |
| `status` | string | ??? Current control status. |<!---- what?>
| `speed_control_activation_count` | uint8 | ??? Speed controller. |<!---- what?>
| `speed_control_accel_delta` | float32 | ??? Speed controller. |<!---- what?>
| `speed_control_accel_target` | float32 | ??? Speed controller. |<!---- what?>
| `accel_control_pedal_delta` | float32 | ??? Acceleration controller. |<!---- what?>
| `accel_control_pedal_delta` | float32 | ??? Acceleration controller. |<!---- what?>
| `brake_upper_border` | float32 | ??? Borders for lay off pedal. |<!---- what?>
| `throttle_lower_border` | float32 | ??? Borders for lay off pedal. |<!---- what?>
---------------
##EgoVehicleControlTarget.msg
Represents the target vallues for the variables of the ego vehicle controller. It is part of a `Carla_Ackermann_Control.EgoVehicleControlInfo.msg` message.
| Field | Type | Description |
| ---------------- | -------- | ----------------------------- |
| `steering_angle` | float32 | Target steering angle for the controller. |
| `speed` | float32 | Target speed for the controller. |
| `speed_abs` | float32 | ??? | <!---- what?>
| `accel` | float32 | Target acceleration for the controller. |
| `jerk` | float32 | Target jerk for the controller. |

View File

@ -53,7 +53,9 @@ nav:
- 'Generate pedestrian navigation': 'tuto_D_generate_pedestrian_navigation.md' - 'Generate pedestrian navigation': 'tuto_D_generate_pedestrian_navigation.md'
- ROS bridge: - ROS bridge:
- 'ROS bridge installation': 'ros_installation.md' - 'ROS bridge installation': 'ros_installation.md'
- 'Supported features': 'ros_topics_ref.md' - 'Messages reference': 'ros_msgs.md'
- 'Launch reference': 'ros_launchs.md'
#- 'Supported features': 'ros_topics_ref.md'
- Contributing: - Contributing:
- 'Contribution guidelines': 'cont_contribution_guidelines.md' - 'Contribution guidelines': 'cont_contribution_guidelines.md'
- 'Code of conduct': 'cont_code_of_conduct.md' - 'Code of conduct': 'cont_code_of_conduct.md'