Skip to content

Commit 0c62baf

Browse files
remove trajectory deviation
1 parent 53f340b commit 0c62baf

File tree

9 files changed

+0
-192
lines changed

9 files changed

+0
-192
lines changed

control/autoware_lane_departure_checker/README.md

-1
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,6 @@ This package includes the following features:
5757
### Output
5858

5959
- [`diagnostic_updater`] lane_departure : Update diagnostic level when ego vehicle is out of lane.
60-
- [`diagnostic_updater`] trajectory_deviation : Update diagnostic level when ego vehicle deviates from trajectory.
6160

6261
## Parameters
6362

control/autoware_lane_departure_checker/include/autoware/lane_departure_checker/lane_departure_checker_node.hpp

-1
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,6 @@ class LaneDepartureCheckerNode : public rclcpp::Node
119119
diagnostic_updater::Updater updater_{this};
120120

121121
void checkLaneDeparture(diagnostic_updater::DiagnosticStatusWrapper & stat);
122-
void checkTrajectoryDeviation(diagnostic_updater::DiagnosticStatusWrapper & stat);
123122

124123
// Visualization
125124
visualization_msgs::msg::MarkerArray createMarkerArray() const;

control/autoware_lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp

-55
Original file line numberDiff line numberDiff line change
@@ -151,8 +151,6 @@ LaneDepartureCheckerNode::LaneDepartureCheckerNode(const rclcpp::NodeOptions & o
151151

152152
updater_.add("lane_departure", this, &LaneDepartureCheckerNode::checkLaneDeparture);
153153

154-
updater_.add("trajectory_deviation", this, &LaneDepartureCheckerNode::checkTrajectoryDeviation);
155-
156154
// Timer
157155
const auto period_ns = rclcpp::Rate(node_param_.update_rate).period();
158156
timer_ = rclcpp::create_timer(
@@ -312,17 +310,6 @@ void LaneDepartureCheckerNode::onTimer()
312310
updater_.force_update();
313311
processing_time_map["Node: updateDiagnostics"] = stop_watch.toc(true);
314312

315-
{
316-
const auto & deviation = output_.trajectory_deviation;
317-
debug_publisher_.publish<autoware_internal_debug_msgs::msg::Float64Stamped>(
318-
"deviation/lateral", deviation.lateral);
319-
debug_publisher_.publish<autoware_internal_debug_msgs::msg::Float64Stamped>(
320-
"deviation/yaw", deviation.yaw);
321-
debug_publisher_.publish<autoware_internal_debug_msgs::msg::Float64Stamped>(
322-
"deviation/yaw_deg", rad2deg(deviation.yaw));
323-
}
324-
processing_time_map["Node: publishTrajectoryDeviation"] = stop_watch.toc(true);
325-
326313
debug_publisher_.publish<visualization_msgs::msg::MarkerArray>(
327314
std::string("marker_array"), createMarkerArray());
328315
processing_time_map["Node: publishDebugMarker"] = stop_watch.toc(true);
@@ -406,48 +393,6 @@ void LaneDepartureCheckerNode::checkLaneDeparture(
406393
stat.summary(level, msg);
407394
}
408395

409-
void LaneDepartureCheckerNode::checkTrajectoryDeviation(
410-
diagnostic_updater::DiagnosticStatusWrapper & stat)
411-
{
412-
using DiagStatus = diagnostic_msgs::msg::DiagnosticStatus;
413-
using ControlModeStatus = autoware_vehicle_msgs::msg::ControlModeReport;
414-
using OperationModeStatus = autoware_adapi_v1_msgs::msg::OperationModeState;
415-
416-
int8_t level = DiagStatus::OK;
417-
418-
if (std::abs(output_.trajectory_deviation.lateral) >= param_.max_lateral_deviation) {
419-
level = DiagStatus::ERROR;
420-
}
421-
422-
if (std::abs(output_.trajectory_deviation.longitudinal) >= param_.max_longitudinal_deviation) {
423-
level = DiagStatus::ERROR;
424-
}
425-
426-
if (std::abs(rad2deg(output_.trajectory_deviation.yaw)) >= param_.max_yaw_deviation_deg) {
427-
level = DiagStatus::ERROR;
428-
}
429-
430-
std::string msg = "OK";
431-
if (
432-
level == DiagStatus::ERROR && operation_mode_->mode == OperationModeStatus::AUTONOMOUS &&
433-
control_mode_->mode == ControlModeStatus::AUTONOMOUS) {
434-
msg = "trajectory deviation is too large";
435-
} else {
436-
level = DiagStatus::OK;
437-
}
438-
439-
stat.addf("max lateral deviation", "%.3f", param_.max_lateral_deviation);
440-
stat.addf("lateral deviation", "%.3f", output_.trajectory_deviation.lateral);
441-
442-
stat.addf("max longitudinal deviation", "%.3f", param_.max_longitudinal_deviation);
443-
stat.addf("longitudinal deviation", "%.3f", output_.trajectory_deviation.longitudinal);
444-
445-
stat.addf("max yaw deviation", "%.3f", param_.max_yaw_deviation_deg);
446-
stat.addf("yaw deviation", "%.3f", rad2deg(output_.trajectory_deviation.yaw));
447-
448-
stat.summary(level, msg);
449-
}
450-
451396
visualization_msgs::msg::MarkerArray LaneDepartureCheckerNode::createMarkerArray() const
452397
{
453398
using autoware_utils::create_default_marker;

control/autoware_lane_departure_checker/src/lane_departure_checker_node/parameters.cpp

-4
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,6 @@ Param init(rclcpp::Node & node)
3131
p.resample_interval = get_or_declare_parameter<double>(node, "resample_interval");
3232
p.max_deceleration = get_or_declare_parameter<double>(node, "max_deceleration");
3333
p.delay_time = get_or_declare_parameter<double>(node, "delay_time");
34-
p.max_lateral_deviation = get_or_declare_parameter<double>(node, "max_lateral_deviation");
35-
p.max_longitudinal_deviation =
36-
get_or_declare_parameter<double>(node, "max_longitudinal_deviation");
37-
p.max_yaw_deviation_deg = get_or_declare_parameter<double>(node, "max_yaw_deviation_deg");
3834
p.min_braking_distance = get_or_declare_parameter<double>(node, "min_braking_distance");
3935
p.ego_nearest_dist_threshold =
4036
get_or_declare_parameter<double>(node, "ego_nearest_dist_threshold");

planning/autoware_boundary_departure_checker/include/autoware/boundary_departure_checker/parameters.hpp

-4
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,6 @@ struct Param
4545
double resample_interval{};
4646
double max_deceleration{};
4747
double delay_time{};
48-
double max_lateral_deviation{};
49-
double max_longitudinal_deviation{};
50-
double max_yaw_deviation_deg{};
5148
double min_braking_distance{};
5249
// nearest search to ego
5350
double ego_nearest_dist_threshold{};
@@ -72,7 +69,6 @@ struct Output
7269
bool will_leave_lane{};
7370
bool is_out_of_lane{};
7471
bool will_cross_boundary{};
75-
PoseDeviation trajectory_deviation{};
7672
lanelet::ConstLanelets candidate_lanelets;
7773
TrajectoryPoints resampled_trajectory;
7874
std::vector<LinearRing2d> vehicle_footprints;

planning/autoware_boundary_departure_checker/include/autoware/boundary_departure_checker/utils.hpp

-12
Original file line numberDiff line numberDiff line change
@@ -108,18 +108,6 @@ LinearRing2d createHullFromFootprints(const std::vector<LinearRing2d> & footprin
108108
std::vector<LinearRing2d> createVehiclePassingAreas(
109109
const std::vector<LinearRing2d> & vehicle_footprints);
110110

111-
/**
112-
* @brief calculate the deviation of the given pose from the nearest pose on the trajectory
113-
* @param trajectory target trajectory
114-
* @param pose vehicle pose
115-
* @param dist_threshold distance threshold used for searching for first nearest index to given pose
116-
* @param yaw_threshold yaw threshold used for searching for first nearest index to given pose
117-
* @return deviation of the given pose from the trajectory
118-
*/
119-
PoseDeviation calcTrajectoryDeviation(
120-
const Trajectory & trajectory, const geometry_msgs::msg::Pose & pose, const double dist_threshold,
121-
const double yaw_threshold);
122-
123111
/**
124112
* @brief calculate the maximum search length for boundaries considering the vehicle dimensions
125113
* @param trajectory target trajectory

planning/autoware_boundary_departure_checker/src/boundary_departure_checker.cpp

-5
Original file line numberDiff line numberDiff line change
@@ -69,11 +69,6 @@ Output LaneDepartureChecker::update(const Input & input)
6969

7070
autoware_utils::StopWatch<std::chrono::milliseconds> stop_watch;
7171

72-
output.trajectory_deviation = utils::calcTrajectoryDeviation(
73-
*input.reference_trajectory, input.current_odom->pose.pose, param_.ego_nearest_dist_threshold,
74-
param_.ego_nearest_yaw_threshold);
75-
output.processing_time_map["calcTrajectoryDeviation"] = stop_watch.toc(true);
76-
7772
{
7873
constexpr double min_velocity = 0.01;
7974
const auto & raw_abs_velocity = std::abs(input.current_odom->twist.twist.linear.x);

planning/autoware_boundary_departure_checker/src/utils.cpp

-9
Original file line numberDiff line numberDiff line change
@@ -223,15 +223,6 @@ std::vector<LinearRing2d> createVehiclePassingAreas(
223223
return areas;
224224
}
225225

226-
PoseDeviation calcTrajectoryDeviation(
227-
const Trajectory & trajectory, const geometry_msgs::msg::Pose & pose, const double dist_threshold,
228-
const double yaw_threshold)
229-
{
230-
const auto nearest_idx = autoware::motion_utils::findFirstNearestIndexWithSoftConstraints(
231-
trajectory.points, pose, dist_threshold, yaw_threshold);
232-
return autoware_utils::calc_pose_deviation(trajectory.points.at(nearest_idx).pose, pose);
233-
}
234-
235226
double calcMaxSearchLengthForBoundaries(
236227
const Trajectory & trajectory, const autoware::vehicle_info_utils::VehicleInfo & vehicle_info)
237228
{

planning/autoware_boundary_departure_checker/test/test_calc_trajectory_deviation.cpp

-101
This file was deleted.

0 commit comments

Comments
 (0)