From 6e52b596bde02b5096748dbbf4a654200452c9e4 Mon Sep 17 00:00:00 2001 From: acki Date: Wed, 28 May 2025 18:48:32 -0400 Subject: [PATCH] banner --- .../modelec_strat/missions/banner_mission.hpp | 2 +- src/modelec_strat/src/missions/banner_mission.cpp | 14 ++++++++------ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/modelec_strat/include/modelec_strat/missions/banner_mission.hpp b/src/modelec_strat/include/modelec_strat/missions/banner_mission.hpp index 42300ea..9f7da7d 100644 --- a/src/modelec_strat/include/modelec_strat/missions/banner_mission.hpp +++ b/src/modelec_strat/include/modelec_strat/missions/banner_mission.hpp @@ -25,8 +25,8 @@ namespace Modelec enum Step { - DEPLOY_BANNER, GO_TO_FRONT, + DEPLOY_BANNER, GO_FORWARD, DONE } step_; diff --git a/src/modelec_strat/src/missions/banner_mission.cpp b/src/modelec_strat/src/missions/banner_mission.cpp index 5bf199e..88d412c 100644 --- a/src/modelec_strat/src/missions/banner_mission.cpp +++ b/src/modelec_strat/src/missions/banner_mission.cpp @@ -5,7 +5,7 @@ namespace Modelec { BannerMission::BannerMission(const std::shared_ptr& nav, - const std::shared_ptr& action_executor) : step_(DEPLOY_BANNER), + const std::shared_ptr& action_executor) : step_(GO_TO_FRONT), status_(MissionStatus::READY), nav_(nav), action_executor_(action_executor) { } @@ -20,7 +20,7 @@ namespace Modelec spawn_ = nav_->GetSpawn(); - action_executor_->DeployBanner(); + nav_->GoTo(spawn_.x, (nav_->GetPathfinding()->robot_length_mm_ / 2) + 5, M_PI_2, true, Pathfinding::FREE | Pathfinding::WALL | Pathfinding::OBSTACLE); status_ = MissionStatus::RUNNING; } @@ -44,22 +44,24 @@ namespace Modelec switch (step_) { - case DEPLOY_BANNER: + case GO_TO_FRONT: { - nav_->GoTo(spawn_.x, (nav_->GetPathfinding()->robot_length_mm_ / 2) + 5, M_PI_2, true, Pathfinding::FREE | Pathfinding::WALL | Pathfinding::OBSTACLE); + action_executor_->DeployBanner(); - step_ = GO_TO_FRONT; + step_ = DEPLOY_BANNER; } break; - case GO_TO_FRONT: + case DEPLOY_BANNER: { nav_->GoTo(spawn_.x, (nav_->GetPathfinding()->robot_length_mm_ / 2) + 600, M_PI_2, true, Pathfinding::FREE | Pathfinding::WALL | Pathfinding::OBSTACLE); step_ = GO_FORWARD; } + break; + case GO_FORWARD: { std_msgs::msg::Int64 msg;