From 2798f3c69d988f6c675d91eaf22c69fee1e09c99 Mon Sep 17 00:00:00 2001 From: ismetatabay Date: Fri, 15 Sep 2023 18:09:00 +0300 Subject: [PATCH] add table formatting Signed-off-by: ismetatabay --- .../creating-vehicle-interface.md | 62 ++++++++----------- 1 file changed, 27 insertions(+), 35 deletions(-) diff --git a/docs/how-to-guides/integrating-autoware/creating-vehicle-interface-package/creating-vehicle-interface.md b/docs/how-to-guides/integrating-autoware/creating-vehicle-interface-package/creating-vehicle-interface.md index bf63144ed32..4abf42824c8 100644 --- a/docs/how-to-guides/integrating-autoware/creating-vehicle-interface-package/creating-vehicle-interface.md +++ b/docs/how-to-guides/integrating-autoware/creating-vehicle-interface-package/creating-vehicle-interface.md @@ -29,35 +29,28 @@ Here are some factors that might be considered: - Some necessary topic subscription of control commands topics from Autoware to control your vehicle: - - /control/command/control_cmd (autoware_auto_control_msgs/msg/AckermannControlCommand) - - This topic includes main topics for controlling our vehicle like a steering tire angle, speed, acceleration, etc. - - /control/command/gear_cmd (autoware_auto_vehicle_msgs/msg/GearCommand) - - This topic includes gear command for autonomous driving, please check message values to make sense of gears values. Please check [the message definition](https://github.com/tier4/autoware_auto_msgs/blob/tier4/main/autoware_auto_vehicle_msgs/msg/GearCommand.idl) of this type. - - /control/current_gate_mode (tier4_control_msgs/msg/GateMode) - - This topic describes control on the autoware or not. Please check [GateMode](https://github.com/tier4/tier4_autoware_msgs/blob/tier4/universe/tier4_control_msgs/msg/GateMode.msg) message type for detailed information. - - /control/command/emergency_cmd (tier4_vehicle_msgs/msg/VehicleEmergencyStamped) - - This topic sends emergency when autoware is on emergency state. Please check [VehicleEmergencyStamped](https://github.com/tier4/tier4_autoware_msgs/blob/tier4/universe/tier4_vehicle_msgs/msg/VehicleEmergencyStamped.msg) message type for detailed information. - - /control/command/turn_indicators_cmd (autoware_auto_vehicle_msgs/msg/TurnIndicatorsCommand) - - This topic indicates a turn signal for your own vehicle. Please check [TurnIndicatorsCommand](https://github.com/tier4/autoware_auto_msgs/blob/tier4/main/autoware_auto_vehicle_msgs/msg/TurnIndicatorsCommand.idl) message type for detailed information. - - /control/command/hazard_lights_cmd (autoware_auto_vehicle_msgs/msg/HazardLightsCommand) - - This topic sends command for hazard lights. Please check [HazardLightsCommand](https://github.com/tier4/autoware_auto_msgs/blob/tier4/main/autoware_auto_vehicle_msgs/msg/HazardLightsCommand.idl) - - /control/command/actuation_cmd (tier4_vehicle_msgs/msg/ActuationCommandStamped) - - This topic is enabled when you use `raw_vehicle_command_converter` for control your vehicle with TYPE B which we mentioned at [Vehicle interface](./vehicle-interface.md) section. In summary, if you are using Type B on your vehicle, this topic appeared and included with gas, brake, steering-wheel actuation commands. Please check [ActuationCommandStamped](https://github.com/tier4/tier4_autoware_msgs/blob/tier4/universe/tier4_vehicle_msgs/msg/ActuationCommandStamped.msg) message type for detailed information. - - etc. +| Topic Name | Topic Type | Description | +| ------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| /control/command/control_cmd | autoware_auto_control_msgs/msg/AckermannControlCommand | This topic includes main topics for controlling our vehicle like a steering tire angle, speed, acceleration, etc. | +| /control/command/gear_cmd | autoware_auto_vehicle_msgs/msg/GearCommand | This topic includes gear command for autonomous driving, please check message values to make sense of gears values. Please check [the message definition](https://github.com/tier4/autoware_auto_msgs/blob/tier4/main/autoware_auto_vehicle_msgs/msg/GearCommand.idl) of this type. | +| /control/current_gate_mode | tier4_control_msgs/msg/GateMode | This topic describes control on the autoware or not. Please check [GateMode](https://github.com/tier4/tier4_autoware_msgs/blob/tier4/universe/tier4_control_msgs/msg/GateMode.msg) message type for detailed information. | +| /control/command/emergency_cmd | tier4_vehicle_msgs/msg/VehicleEmergencyStamped | This topic sends emergency when autoware is on emergency state. Please check [VehicleEmergencyStamped](https://github.com/tier4/tier4_autoware_msgs/blob/tier4/universe/tier4_vehicle_msgs/msg/VehicleEmergencyStamped.msg) message type for detailed information. | +| /control/command/turn_indicators_cmd | autoware_auto_vehicle_msgs/msg/TurnIndicatorsCommand | This topic indicates a turn signal for your own vehicle. Please check [TurnIndicatorsCommand](https://github.com/tier4/autoware_auto_msgs/blob/tier4/main/autoware_auto_vehicle_msgs/msg/TurnIndicatorsCommand.idl) message type for detailed information. | +| /control/command/hazard_lights_cmd | autoware_auto_vehicle_msgs/msg/HazardLightsCommand | This topic sends command for hazard lights. Please check [HazardLightsCommand](https://github.com/tier4/autoware_auto_msgs/blob/tier4/main/autoware_auto_vehicle_msgs/msg/HazardLightsCommand.idl) | +| /control/command/actuation_cmd | tier4_vehicle_msgs/msg/ActuationCommandStamped | This topic is enabled when you use `raw_vehicle_command_converter` for control your vehicle with TYPE B which we mentioned at [Vehicle interface](./vehicle-interface.md) section. In summary, if you are using Type B on your vehicle, this topic appeared and included with gas, brake, steering-wheel actuation commands. Please check [ActuationCommandStamped](https://github.com/tier4/tier4_autoware_msgs/blob/tier4/universe/tier4_vehicle_msgs/msg/ActuationCommandStamped.msg) message type for detailed information. | +| etc. | etc. | etc. | - Some necessary topic publication of vehicle status topics from vehicle interface to Autoware: - - /vehicle/status/battery_charge (tier4_vehicle_msgs/msg/BatteryStatus) - - This topic includes battery information. Please check [BatteryStatus](https://github.com/tier4/tier4_autoware_msgs/blob/tier4/universe/tier4_vehicle_msgs/msg/BatteryStatus.msg) message type for detailed information. You can use this value as describing fuel level, etc. - - /vehicle/status/control_mode (autoware_auto_vehicle_msgs/msg/ControlModeReport) - - This topic describes the current control mode of vehicle. Please check [ControlModeReport](https://github.com/tier4/autoware_auto_msgs/blob/tier4/main/autoware_auto_vehicle_msgs/msg/ControlModeReport.idl) message type for detailed information. - - /vehicle/status/gear_status (autoware_auto_vehicle_msgs/msg/GearReport) - - This topic includes the current gear of the vehicle. Please check [GearReport](https://github.com/tier4/autoware_auto_msgs/blob/tier4/main/autoware_auto_vehicle_msgs/msg/GearReport.idl) message type for detailed information. - - /vehicle/status/hazard_lights_status (autoware_auto_vehicle_msgs/msg/HazardLightsReport) - - This topic describes hazard light status of the vehicle. Please check [HazardLightsReport](https://github.com/tier4/autoware_auto_msgs/blob/tier4/main/autoware_auto_vehicle_msgs/msg/HazardLightsReport.idl) message type for detailed information. - - /vehicle/status/steering_status (autoware_auto_vehicle_msgs/msg/SteeringReport) - - This topic reports the steering status of the vehicle. Please check [SteeringReport](https://github.com/tier4/autoware_auto_msgs/blob/tier4/main/autoware_auto_vehicle_msgs/msg/SteeringReport.idl) message type for detailed information. - - /vehicle/status/turn_indicators_status (autoware_auto_vehicle_msgs/msg/TurnIndicatorsReport) - - This topic describes turn signal light status of the vehicle. Please check [TurnIndicatorsReport](https://github.com/tier4/autoware_auto_msgs/blob/tier4/main/autoware_auto_vehicle_msgs/msg/TurnIndicatorsReport.idl) message type for detailed information. + +| Topic Name | Topic Type | Description | +| -------------------------------------- | --------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| /vehicle/status/battery_charge | tier4_vehicle_msgs/msg/BatteryStatus | This topic includes battery information. Please check [BatteryStatus](https://github.com/tier4/tier4_autoware_msgs/blob/tier4/universe/tier4_vehicle_msgs/msg/BatteryStatus.msg) message type for detailed information. You can use this value as describing fuel level, etc. | +| /vehicle/status/control_mode | autoware_auto_vehicle_msgs/msg/ControlModeReport | This topic describes the current control mode of vehicle. Please check [ControlModeReport](https://github.com/tier4/autoware_auto_msgs/blob/tier4/main/autoware_auto_vehicle_msgs/msg/ControlModeReport.idl) message type for detailed information. | +| /vehicle/status/gear_status | autoware_auto_vehicle_msgs/msg/GearReport | This topic includes the current gear status of the vehicle. Please check [GearReport](https://github.com/tier4/autoware_auto_msgs/blob/tier4/main/autoware_auto_vehicle_msgs/msg/GearReport.idl) message type for detailed information. | +| /vehicle/status/hazard_lights_status | autoware_auto_vehicle_msgs/msg/HazardLightsReport | This topic describes hazard light status of the vehicle. Please check [HazardLightsReport](https://github.com/tier4/autoware_auto_msgs/blob/tier4/main/autoware_auto_vehicle_msgs/msg/HazardLightsReport.idl) message type for detailed information. | +| /vehicle/status/turn_indicators_status | autoware_auto_vehicle_msgs/msg/TurnIndicatorsReport | This topic reports the steering status of the vehicle. Please check [SteeringReport](https://github.com/tier4/autoware_auto_msgs/blob/tier4/main/autoware_auto_vehicle_msgs/msg/SteeringReport.idl) message type for detailed information. | +| /vehicle/status/steering_status | autoware_auto_vehicle_msgs/msg/SteeringReport | This topic reports the steering status of the vehicle. Please check [SteeringReport](https://github.com/tier4/autoware_auto_msgs/blob/tier4/main/autoware_auto_vehicle_msgs/msg/SteeringReport.idl) message type for detailed information. | +| etc. | etc. | etc. | This diagram as an example for communication of vehicle interface and autoware with describing sample topics and message types. @@ -161,14 +154,13 @@ void ::to_autoware() - Communication between the vehicle interface and your vehicle's control device - If you are planning to drive by autoware with your vehicle, then your vehicle must satisfy some requirements: - - For Type A - - Your vehicle can be controlled in longitudinal direction by the target velocity or acceleration. - - Your vehicle can be controlled in lateral direction by the target steering angle. (Optionally, you can use steering rate as well) - - Your vehicle must provide velocity or acceleration information and steering information which is described at the vehicle status topics above. - - For Type B - - Your vehicle can be controlled in longitudinal direction by the specific target commands. (i.e., brake and gas pedal) - - Your vehicle can be controlled in lateral direction by the specific target commands. (i.e., steering torque) - - Your vehicle must provide velocity or acceleration information and steering information which is described at the vehicle status topics above. + + | Type A | Type B | + | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | + | Your vehicle can be controlled in longitudinal direction by the target velocity or acceleration. | Your vehicle can be controlled in longitudinal direction by the specific target commands. (i.e., brake and gas pedal) | + | Your vehicle can be controlled in lateral direction by the target steering angle. (Optionally, you can use steering rate as well) | Your vehicle can be controlled in lateral direction by the specific target commands. (i.e., steering torque) | + | Your vehicle must provide velocity or acceleration information and steering information which is described at the vehicle status topics above. | Your vehicle must provide velocity or acceleration information and steering information which is described at the vehicle status topics above. | + - You can also use mixed Type A and Type B, for example, you want to use lateral controlling with a steering angle and longitudinal controlling with specific targets. In order to do that, you must subscribe `/control/command/control_cmd` for getting steering information, and you must subscribe `/control/command/actuation_cmd` for gas and brake pedal actuation commands. Then, you must handle these messages on your own vehicle_interface design. - You must adopt your vehicle low-level controller to run with autoware. - If you are using CAN communication on your vehicle, please refer to [ros2_socketcan](https://github.com/autowarefoundation/ros2_socketcan) package by Autoware.