Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: load vehicle info default param #148

2 changes: 2 additions & 0 deletions common/autoware_global_parameter_loader/Readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ Add the following lines to the launch file of the node in which you want to get
</include>
```

The vehicle model parameter is read from `config/vehicle_info.param.yaml` in `vehicle_model`\_description package.

## Assumptions / Known limits

Currently only vehicle_info is loaded by this launcher.
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,11 @@
<arg name="output/error_stamped" default="/control_performance/performance_vars" />

<!-- vehicle info -->
<include file="$(find-pkg-share autoware_launch)/launch/global_params.launch.py" />
<arg name="vehicle_info_param_file" default="$(find-pkg-share vehicle_info_util)/config/vehicle_info.param.yaml" />

<node pkg="control_performance_analysis" exec="control_performance_analysis" name="control_performance_analysis" output="screen">
<param from="$(var control_performance_analysis_param_path)" />
<param from="$(var vehicle_info_param_file)" />

<remap from="~/input/reference_trajectory" to="$(var input/reference_trajectory)" />
<remap from="~/input/control_raw" to="$(var input/control_raw)" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,16 @@
<arg name="input/predicted_trajectory" default="/control/trajectory_follower/predicted_trajectory" />
<arg name="config_file" default="$(find-pkg-share lane_departure_checker)/config/lane_departure_checker.param.yaml" />

<!-- vehicle info -->
<arg name="vehicle_info_param_file" default="$(find-pkg-share vehicle_info_util)/config/vehicle_info.param.yaml" />

<node pkg="lane_departure_checker" exec="lane_departure_checker_node" name="lane_departure_checker_node" output="screen">
<remap from="~/input/odometry" to="$(var input/odometry)"/>
<remap from="~/input/lanelet_map_bin" to="$(var input/lanelet_map_bin)"/>
<remap from="~/input/route" to="$(var input/route)"/>
<remap from="~/input/reference_trajectory" to="$(var input/reference_trajectory)"/>
<remap from="~/input/predicted_trajectory" to="$(var input/predicted_trajectory)"/>
<param from="$(var config_file)" />
<param from="$(var vehicle_info_param_file)" />
</node>
</launch>
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,12 @@
<arg name="input/predicted_trajectory" default="/control/trajectory_follower/predicted_trajectory" />
<arg name="input/odometry" default="/localization/kinematic_state" />
<arg name="config_file" default="$(find-pkg-share obstacle_collision_checker)/config/obstacle_collision_checker.param.yaml" />
<!-- vehicle info -->
<arg name="vehicle_info_param_file" default="$(find-pkg-share vehicle_info_util)/config/vehicle_info.param.yaml" />

<node pkg="obstacle_collision_checker" exec="obstacle_collision_checker_node" name="obstacle_collision_checker_node" output="screen">
<param from="$(var config_file)" />
<param from="$(var vehicle_info_param_file)" />
<remap from="input/lanelet_map_bin" to="$(var input/lanelet_map_bin)"/>
<remap from="input/obstacle_pointcloud" to="$(var input/obstacle_pointcloud)"/>
<remap from="input/reference_trajectory" to="$(var input/reference_trajectory)"/>
Expand Down
4 changes: 4 additions & 0 deletions control/vehicle_cmd_gate/launch/vehicle_cmd_gate.launch.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@
<arg name="use_external_emergency_stop" default="true" />
<arg name="use_start_request" default="false" />

<!-- vehicle info -->
<arg name="vehicle_info_param_file" default="$(find-pkg-share vehicle_info_util)/config/vehicle_info.param.yaml" />

<node pkg="vehicle_cmd_gate" exec="vehicle_cmd_gate" name="vehicle_cmd_gate" output="screen">
<remap from="input/steering" to="/vehicle/status/steering_status"/>

Expand Down Expand Up @@ -42,6 +45,7 @@
<remap from="~/service/clear_external_emergency_stop" to="~/clear_external_emergency_stop"/>

<param from="$(var config_file)" />
<param from="$(var vehicle_info_param_file)" />
<param name="use_emergency_handling" value="$(var use_emergency_handling)" />
<param name="use_external_emergency_stop" value="$(var use_external_emergency_stop)" />
<param name="use_start_request" value="$(var use_start_request)" />
Expand Down
44 changes: 38 additions & 6 deletions perception/ground_segmentation/launch/scan_ground_filter.launch.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,19 +12,26 @@
# See the License for the specific language governing permissions and
# limitations under the License.

import os

from ament_index_python.packages import get_package_share_directory
import launch
from launch.actions import DeclareLaunchArgument
tkimura4 marked this conversation as resolved.
Show resolved Hide resolved
from launch.actions import GroupAction
from launch.actions import OpaqueFunction
from launch.conditions import LaunchConfigurationEquals
from launch.conditions import LaunchConfigurationNotEquals
from launch.substitutions import LaunchConfiguration
from launch_ros.actions import ComposableNodeContainer
from launch_ros.actions import LoadComposableNodes
from launch_ros.descriptions import ComposableNode
import yaml


def generate_launch_description():
def add_launch_arg(name: str, default_value=None):
return DeclareLaunchArgument(name, default_value=default_value)
def launch_setup(context, *args, **kwargs):
vehicle_info_param_path = LaunchConfiguration("vehicle_info_param_file").perform(context)
with open(vehicle_info_param_path, "r") as f:
vehicle_info_param = yaml.safe_load(f)["/**"]["ros__parameters"]

nodes = [
ComposableNode(
Expand All @@ -41,7 +48,8 @@ def add_launch_arg(name: str, default_value=None):
"local_slope_max_angle_deg": 30.0,
"split_points_distance_tolerance": 0.2,
"split_height_distance": 0.2,
}
},
vehicle_info_param,
],
),
]
Expand All @@ -62,12 +70,36 @@ def add_launch_arg(name: str, default_value=None):
condition=LaunchConfigurationEquals("container", ""),
)

group = GroupAction(
[
container,
loader,
]
)

return [group]


def generate_launch_description():
def add_launch_arg(name: str, default_value=None):
return DeclareLaunchArgument(name, default_value=default_value)

default_vehicle_info_param = os.path.join(
get_package_share_directory("vehicle_info_util"), "config/vehicle_info.param.yaml"
)

vehicle_info_param = DeclareLaunchArgument(
"vehicle_info_param_file",
default_value=default_vehicle_info_param,
description="Path to config file for vehicle information",
)

return launch.LaunchDescription(
[
vehicle_info_param,
add_launch_arg("container", ""),
add_launch_arg("input/pointcloud", "pointcloud"),
add_launch_arg("output/pointcloud", "no_ground/pointcloud"),
container,
loader,
]
+ [OpaqueFunction(function=launch_setup)]
)
1 change: 1 addition & 0 deletions perception/ground_segmentation/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
<depend>tf2</depend>
<depend>tf2_eigen</depend>
<depend>tf2_ros</depend>
<depend>vehicle_info_util</depend>

<test_depend>ament_lint_auto</test_depend>
<test_depend>autoware_lint_common</test_depend>
Expand Down
1 change: 0 additions & 1 deletion perception/occupancy_grid_map_outlier_filter/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,6 @@
<depend>tf2_ros</depend>
<depend>tier4_debug_msgs</depend>
<depend>tier4_pcl_extensions</depend>
<depend>vehicle_info_util</depend>

<test_depend>ament_lint_auto</test_depend>
<test_depend>autoware_lint_common</test_depend>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@
<arg name="input_route_topic_name" default="/planning/mission_planning/route" />
<arg name="map_topic_name" default="/map/vector_map" />

<!-- vehicle info -->
<arg name="vehicle_info_param_file" default="$(find-pkg-share vehicle_info_util)/config/vehicle_info.param.yaml" />

<node pkg="behavior_path_planner" exec="behavior_path_planner" name="behavior_path_planner" output="screen">
<remap from="~/input/route" to="$(var input_route_topic_name)" />
<remap from="~/input/vector_map" to="$(var map_topic_name)" />
Expand All @@ -11,5 +14,6 @@

<param from="$(find-pkg-share behavior_path_planner)/config/side_shift/side_shift.param.yaml" />
<param name="bt_tree_config_path" value="$(find-pkg-share behavior_path_planner)/config/behavior_path_planner_tree.xml" />
<param from="$(var vehicle_info_param_file)" />
</node>
</launch>
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
<?xml version="1.0"?>
<launch>
<include file="$(find-pkg-share autoware_global_parameter_loader)/launch/global_params.launch.py"/>
<!-- vehicle info -->
<arg name="vehicle_info_param_file" default="$(find-pkg-share vehicle_info_util)/config/vehicle_info.param.yaml" />

<arg name="input_route_topic_name" default="/planning/mission_planning/route" />
<arg name="input_traffic_light_topic_name" default="/perception/traffic_light_recognition/traffic_signals" />
Expand Down Expand Up @@ -36,6 +37,7 @@
<param from="$(find-pkg-share behavior_velocity_planner)/config/occlusion_spot.param.yaml" />
<param from="$(find-pkg-share behavior_velocity_planner)/config/no_stopping_area.param.yaml" />

<param from="$(var vehicle_info_param_file)" />
<remap from="~/input/path_with_lane_id" to="path_with_lane_id" />
<remap from="~/input/vector_map" to="$(var map_topic_name)" />
<remap from="~/input/vehicle_odometry" to="/localization/kinematic_state" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@

<arg name="param_file" default="$(find-pkg-share freespace_planner)/config/freespace_planner.param.yaml"/>

<!-- vehicle info -->
<arg name="vehicle_info_param_file" default="$(find-pkg-share vehicle_info_util)/config/vehicle_info.param.yaml" />

<node pkg="freespace_planner" exec="freespace_planner" name="freespace_planner" output="screen">
<remap from="~/input/route" to="$(var input_route)" />
<remap from="~/input/occupancy_grid" to="$(var input_occupancy_grid)" />
Expand All @@ -16,5 +19,6 @@
<remap from="~/output/trajectory" to="$(var output_trajectory)" />
<remap from="is_completed" to="$(var is_completed)" />
<param from="$(var param_file)"/>
<param from="$(var vehicle_info_param_file)" />
</node>
</launch>
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@
<arg name="adaptive_cruise_control_param_path" default="$(find-pkg-share obstacle_stop_planner)/config/adaptive_cruise_control.param.yaml" />
<arg name="obstacle_stop_planner_param_path" default="$(find-pkg-share obstacle_stop_planner)/config/obstacle_stop_planner.param.yaml" />

<!-- vehicle info -->
<arg name="vehicle_info_param_file" default="$(find-pkg-share vehicle_info_util)/config/vehicle_info.param.yaml" />

<arg name="enable_slow_down" default="false" />
<arg name="input_objects" default="/perception/object_recognition/objects" />
<arg name="input_pointcloud" default="input/pointcloud" />
Expand All @@ -17,6 +20,7 @@
<param from="$(var common_param_path)" />
<param from="$(var adaptive_cruise_control_param_path)" />
<param from="$(var obstacle_stop_planner_param_path)" />
<param from="$(var vehicle_info_param_file)" />
<param name="enable_slow_down" value="$(var enable_slow_down)" />
<!-- remap topic name -->
<remap from="~/output/stop_reason" to="/planning/scenario_planning/status/stop_reason" />
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
<launch>
<arg name="param_path" default="$(find-pkg-share surround_obstacle_checker)/config/surround_obstacle_checker.param.yaml" />

<!-- vehicle info -->
<arg name="vehicle_info_param_file" default="$(find-pkg-share vehicle_info_util)/config/vehicle_info.param.yaml" />

<arg name="input_trajectory" default="input/trajectory" />
<arg name="input_objects" default="/perception/object_recognition/objects" />
<arg name="input_odometry" default="/localization/kinematic_state" />
Expand All @@ -9,6 +12,7 @@

<node pkg="surround_obstacle_checker" exec="surround_obstacle_checker_node" name="surround_obstacle_checker" output="screen">
<param from="$(var param_path)" />
<param from="$(var vehicle_info_param_file)" />
<remap from="~/output/no_start_reason" to="/planning/scenario_planning/status/no_start_reason" />
<remap from="~/output/stop_reasons" to="/planning/scenario_planning/status/stop_reasons" />
<remap from="~/output/trajectory" to="$(var output_trajectory)" />
Expand Down
1 change: 0 additions & 1 deletion sensing/pointcloud_preprocessor/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@
<depend>tf2_ros</depend>
<depend>tier4_debug_msgs</depend>
<depend>tier4_pcl_extensions</depend>
<depend>vehicle_info_util</depend>

<test_depend>ament_lint_auto</test_depend>
<test_depend>autoware_lint_common</test_depend>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,16 @@ def generate_launch_description():
description='Path to config file for vehicle characteristics'
)

default_vehicle_info_param = os.path.join(
get_package_share_directory('vehicle_info_util'),
'config/vehicle_info.param.yaml')

vehicle_info_param = DeclareLaunchArgument(
'vehicle_info_param_file',
default_value=default_vehicle_info_param,
description='Path to config file for vehicle information'
)

simple_planning_simulator_node = launch_ros.actions.Node(
package='simple_planning_simulator',
executable='simple_planning_simulator_exe',
Expand All @@ -48,6 +58,7 @@ def generate_launch_description():
)
),
LaunchConfiguration('vehicle_characteristics_param_file'),
LaunchConfiguration('vehicle_info_param_file')
],
remappings=[
('input/ackermann_control_command', '/control/command/control_cmd'),
Expand Down Expand Up @@ -75,6 +86,7 @@ def generate_launch_description():

ld = launch.LaunchDescription([
vehicle_characteristics_param,
vehicle_info_param,
simple_planning_simulator_node,
map_to_odom_tf_publisher
])
Expand Down
3 changes: 3 additions & 0 deletions vehicle/pacmod_interface/launch/pacmod_interface.launch.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,13 @@
<arg name="pacmod_param_path" default="$(find-pkg-share pacmod_interface)/config/pacmod.param.yaml"/>
<arg name="pacmod_extra_param_path" default="$(find-pkg-share pacmod_interface)/config/pacmod_extra.param.yaml"/>

<!-- vehicle info -->
<arg name="vehicle_info_param_file" default="$(find-pkg-share vehicle_info_util)/config/vehicle_info.param.yaml" />

<!-- pacmod interface -->
<node pkg="pacmod_interface" exec="pacmod_interface" name="pacmod_interface" output="screen">
<param from="$(var pacmod_param_path)" />
<param from="$(var vehicle_info_param_file)" />
</node>

<!-- pacmod diagnostics publisher -->
Expand Down