Skip to content
This repository was archived by the owner on Nov 16, 2023. It is now read-only.
This repository was archived by the owner on Nov 16, 2023. It is now read-only.

[Bug]: stanley controller crashes on consecutive executions of b5 run #207

@JoKircher

Description

@JoKircher

Current Behavior

When on #154, sometimes after calling b5 run, I get the following error:

 Traceback (most recent call last):
paf22-agent-1            |   File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
paf22-agent-1            |     self.run()
paf22-agent-1            |   File "/opt/ros/noetic/lib/python3/dist-packages/rospy/timer.py", line 237, in run
paf22-agent-1            |     self._callback(TimerEvent(last_expected, last_real, current_expected, current_real, last_duration))
paf22-agent-1            |   File "/catkin_ws/src/code/acting/src/acting/pure_pursuit_controller.py", line 108, in loop
paf22-agent-1            |     self.pure_pursuit_steer_pub.publish(self.__calculate_steer())
paf22-agent-1            |   File "/catkin_ws/src/code/acting/src/acting/pure_pursuit_controller.py", line 174, in __calculate_steer
paf22-agent-1            |     target_wp: PoseStamped = self.__path.poses[self.__tp_idx]
paf22-agent-1            | IndexError: list index out of range
paf22-agent-1            | [ WARN] [1677759434.079597733, 19.409185266]: Invalid argument passed to canTransform argument source_frame in tf2 frame_ids cannot be empty
paf22-agent-1            | Exception in thread Thread-6:
paf22-agent-1            | Traceback (most recent call last):
paf22-agent-1            |   File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
paf22-agent-1            |     self.run()
paf22-agent-1            |   File "/opt/ros/noetic/lib/python3/dist-packages/rospy/timer.py", line 237, in run
paf22-agent-1            |     self._callback(TimerEvent(last_expected, last_real, current_expected, current_real, last_duration))
paf22-agent-1            |   File "/catkin_ws/src/code/acting/src/acting/stanley_controller.py", line 107, in loop
paf22-agent-1            |     self.stanley_steer_pub.publish(self.__calculate_steer())
paf22-agent-1            |   File "/catkin_ws/src/code/acting/src/acting/stanley_controller.py", line 169, in __calculate_steer
paf22-agent-1            |     closest_point: PoseStamped = self.__path.poses[closest_point_idx]
paf22-agent-1            | IndexError: list index out of range
paf22-agent-1            | [INFO] [1677759435.176062, 20.309185]: DevRoute: MapUpdate called
paf22-agent-1            | [INFO] [1677759435.235591, 20.359185]: DevRoute: published global_plan
paf22-agent-1            | 102

This might mean, that the stanley controller is executed before the global plan is available. Miraculously, this only happens now and then, so no high priority I guess.

Expected Behavior

Stanley controler should not terminate, there should be an error message preventing the controller from execution before the path is published.

How to reproduce the issue

run b5 run multiple time, eventually this error might occur.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions