follow_waypoints
follow_waypoints copied to clipboard
InvalidUserCodeError: Could not execute state 'GET_PATH' of type '<follow_waypoints.follow_waypoints.GetPath object at 0x7fb6e5445460>'
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'
Change line 188 in follow_waypoints.py
to if 'timeout exceeded' in str(e):
@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.