follow_waypoints icon indicating copy to clipboard operation
follow_waypoints copied to clipboard

InvalidUserCodeError: Could not execute state 'GET_PATH' of type '<follow_waypoints.follow_waypoints.GetPath object at 0x7fb6e5445460>'

Open yogi-52 opened this issue 2 years ago • 2 comments

Hey @danielsnider, I have tried using this package with turtlebot3 as well as with husky (both in simulation), and I get the same error. I'm getting several errors and am not able to use the follow_waypoints pkg. The gazebo simulation of the robot, as well as navigation (amcl and move_base) are running. Following is the output when I launch the follow_waypoints file; Please let me know regarding any info you need and what the issue could be. Thanks!


... logging to /home/tihan/.ros/log/3b86d18e-8be0-11ed-a8b3-b37391ca357c/roslaunch-tihanws3-13212.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://tihanws3:36413/

SUMMARY
========

CLEAR PARAMETERS
 * /follow_waypoints/

PARAMETERS
 * /follow_waypoints/addpose_topic: /initialpose
 * /follow_waypoints/goal_frame_id: map
 * /follow_waypoints/posearray_topic: /waypoints
 * /rosdistro: noetic
 * /rosversion: 1.15.15

NODES
  /
    follow_waypoints (follow_waypoints/follow_waypoints)

ROS_MASTER_URI=http://localhost:11311

process[follow_waypoints-1]: started with pid [13250]
[ DEBUG ] : Adding state (GET_PATH, <follow_waypoints.follow_waypoints.GetPath object at 0x7f4f82f3b820>, {'success': 'FOLLOW_PATH'})
[ DEBUG ] : Adding state 'GET_PATH' to the state machine.
[ DEBUG ] : State 'GET_PATH' is missing transitions: {}
[ DEBUG ] : TRANSITIONS FOR GET_PATH: {'success': 'FOLLOW_PATH'}
[INFO][139979559061312][/follow_waypoints/FollowPath.__init__:54]: Connecting to move_base...
[INFO][139979559061312][/follow_waypoints/FollowPath.__init__:56]: Connected to move_base.
[INFO][139979559061312][/follow_waypoints/FollowPath.__init__:57]: Starting a tf listner.
[ DEBUG ] : Adding state (FOLLOW_PATH, <follow_waypoints.follow_waypoints.FollowPath object at 0x7f4f82f3bd00>, {'success': 'PATH_COMPLETE'})
[ DEBUG ] : Adding state 'FOLLOW_PATH' to the state machine.
[ DEBUG ] : State 'FOLLOW_PATH' is missing transitions: {}
[ DEBUG ] : TRANSITIONS FOR FOLLOW_PATH: {'success': 'PATH_COMPLETE'}
[ DEBUG ] : Adding state (PATH_COMPLETE, <follow_waypoints.follow_waypoints.PathComplete object at 0x7f4f82ef63d0>, {'success': 'GET_PATH'})
[ DEBUG ] : Adding state 'PATH_COMPLETE' to the state machine.
[ DEBUG ] : State 'PATH_COMPLETE' is missing transitions: {}
[ DEBUG ] : TRANSITIONS FOR PATH_COMPLETE: {'success': 'GET_PATH'}
[  INFO ] : State machine starting in initial state 'GET_PATH' with userdata: 
	[]
[INFO][139979559061312][/follow_waypoints/GetPath.execute:177]: Waiting to recieve waypoints via Pose msg on topic /initialpose
[INFO][139979559061312][/follow_waypoints/GetPath.execute:178]: To start following waypoints: 'rostopic pub /path_ready std_msgs/Empty -1'
[INFO][139979559061312][/follow_waypoints/GetPath.execute:179]: OR
[INFO][139979559061312][/follow_waypoints/GetPath.execute:180]: To start following saved waypoints: 'rostopic pub /start_journey std_msgs/Empty -1'
[ ERROR ] : InvalidUserCodeError: Could not execute state 'GET_PATH' of type '<follow_waypoints.follow_waypoints.GetPath object at 0x7f4f82f3b820>': Traceback (most recent call last):
  File "/home/tihan/gps_ws/src/follow_waypoints/src/follow_waypoints/follow_waypoints.py", line 186, in execute
    pose = rospy.wait_for_message(topic, PoseWithCovarianceStamped, timeout=1)
  File "/opt/ros/noetic/lib/python3/dist-packages/rospy/client.py", line 419, in wait_for_message
    raise rospy.exceptions.ROSException("timeout exceeded while waiting for message on topic %s"%topic)
rospy.exceptions.ROSException: timeout exceeded while waiting for message on topic /initialpose

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/ros/noetic/lib/python3/dist-packages/smach/state_machine.py", line 242, in _update_once
    outcome = self._current_state.execute(
  File "/home/tihan/gps_ws/src/follow_waypoints/src/follow_waypoints/follow_waypoints.py", line 188, in execute
    if 'timeout exceeded' in e.message:
AttributeError: 'ROSException' object has no attribute 'message'

Traceback (most recent call last):
  File "/home/tihan/gps_ws/src/follow_waypoints/src/follow_waypoints/follow_waypoints.py", line 186, in execute
    pose = rospy.wait_for_message(topic, PoseWithCovarianceStamped, timeout=1)
  File "/opt/ros/noetic/lib/python3/dist-packages/rospy/client.py", line 419, in wait_for_message
    raise rospy.exceptions.ROSException("timeout exceeded while waiting for message on topic %s"%topic)
rospy.exceptions.ROSException: timeout exceeded while waiting for message on topic /initialpose

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/ros/noetic/lib/python3/dist-packages/smach/state_machine.py", line 242, in _update_once
    outcome = self._current_state.execute(
  File "/home/tihan/gps_ws/src/follow_waypoints/src/follow_waypoints/follow_waypoints.py", line 188, in execute
    if 'timeout exceeded' in e.message:
AttributeError: 'ROSException' object has no attribute 'message'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/tihan/gps_ws/devel/lib/follow_waypoints/follow_waypoints", line 15, in <module>
    exec(compile(fh.read(), python_script, 'exec'), context)
  File "/home/tihan/gps_ws/src/follow_waypoints/nodes/follow_waypoints", line 6, in <module>
    follow_waypoints.main()
  File "/home/tihan/gps_ws/src/follow_waypoints/src/follow_waypoints/follow_waypoints.py", line 225, in main
    outcome = sm.execute()
  File "/opt/ros/noetic/lib/python3/dist-packages/smach/state_machine.py", line 359, in execute
    container_outcome = self._update_once()
  File "/opt/ros/noetic/lib/python3/dist-packages/smach/state_machine.py", line 252, in _update_once
    raise smach.InvalidUserCodeError("Could not execute state '%s' of type '%s': " %
smach.exceptions.InvalidUserCodeError: Could not execute state 'GET_PATH' of type '<follow_waypoints.follow_waypoints.GetPath object at 0x7f4f82f3b820>': Traceback (most recent call last):
  File "/home/tihan/gps_ws/src/follow_waypoints/src/follow_waypoints/follow_waypoints.py", line 186, in execute
    pose = rospy.wait_for_message(topic, PoseWithCovarianceStamped, timeout=1)
  File "/opt/ros/noetic/lib/python3/dist-packages/rospy/client.py", line 419, in wait_for_message
    raise rospy.exceptions.ROSException("timeout exceeded while waiting for message on topic %s"%topic)
rospy.exceptions.ROSException: timeout exceeded while waiting for message on topic /initialpose

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/ros/noetic/lib/python3/dist-packages/smach/state_machine.py", line 242, in _update_once
    outcome = self._current_state.execute(
  File "/home/tihan/gps_ws/src/follow_waypoints/src/follow_waypoints/follow_waypoints.py", line 188, in execute
    if 'timeout exceeded' in e.message:
AttributeError: 'ROSException' object has no attribute 'message'



yogi-52 avatar Jan 04 '23 04:01 yogi-52

Change line 188 in follow_waypoints.py to if 'timeout exceeded' in str(e):

Cavalletta98 avatar Feb 21 '23 10:02 Cavalletta98

@yogi-52 Hi This is Soumya from Hyderabad. Looks like you were able to migrate the package to ROS Noetic. Will you be able to please share the migrated follow_waypoints package for ROS Noetic? Thanks.

Soumya-Saha avatar Aug 02 '23 11:08 Soumya-Saha