uuvsimulator / uuv_simulator

Gazebo/ROS packages for underwater robotics simulation
https://uuvsimulator.github.io/
Other
694 stars 360 forks source link

uuv_control_utils package #274

Closed galfunk closed 6 years ago

galfunk commented 6 years ago

Hi , try to run roslaunch uuv_control_utils send_waypoints_file.launch uuv_name:=rexrov

received gal@gal-XPS-15-9560:~$ roslaunch uuv_control_utils send_waypoints_file.launch uuv_name:=rexrov ... logging to /home/gal/.ros/log/0c17bfdc-842c-11e8-be38-9cb6d0f2f06b/roslaunch-gal-XPS-15-9560-4543.log Checking log directory for disk usage. This may take awhile. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://gal-XPS-15-9560:44615/

SUMMARY

PARAMETERS

NODES /rexrov/ send_waypoint_file (uuv_control_utils/send_waypoint_file.py)

ROS_MASTER_URI=http://localhost:11311

process[rexrov/send_waypoint_file-1]: started with pid [4560] [INFO] [1531220231.544487, 0.000000]: Send a waypoint file, namespace=/rexrov/ Traceback (most recent call last): File "/home/gal/catkin_ws/src/uuv_simulator/uuv_control/uuv_control_utils/scripts/send_waypoint_file.py", line 68, in String(interpolator)) File "/opt/ros/kinetic/lib/python2.7/dist-packages/rospy/impl/tcpros_service.py", line 435, in call return self.call(*args, *kwds) File "/opt/ros/kinetic/lib/python2.7/dist-packages/rospy/impl/tcpros_service.py", line 515, in call responses = transport.receive_once() File "/opt/ros/kinetic/lib/python2.7/dist-packages/rospy/impl/tcpros_base.py", line 727, in receive_once p.read_messages(b, msg_queue, sock) File "/opt/ros/kinetic/lib/python2.7/dist-packages/rospy/impl/tcpros_service.py", line 353, in read_messages self._read_ok_byte(b, sock) File "/opt/ros/kinetic/lib/python2.7/dist-packages/rospy/impl/tcpros_service.py", line 336, in _read_ok_byte raise ServiceException("service [%s] responded with an error: %s"%(self.resolved_name, str)) rospy.service.ServiceException: service [/rexrov/init_waypoints_from_file] responded with an error: error processing request: field success is not a bool [rexrov/send_waypoint_file-1] process has died [pid 4560, exit code 1, cmd /home/gal/catkin_ws/src/uuv_simulator/uuv_control/uuv_control_utils/scripts/send_waypoint_file.py name:=send_waypoint_file log:=/home/gal/.ros/log/0c17bfdc-842c-11e8-be38-9cb6d0f2f06b/rexrov-send_waypoint_file-1.log]. log file: /home/gal/.ros/log/0c17bfdc-842c-11e8-be38-9cb6d0f2f06b/rexrov-send_waypoint_file-1.log all processes on machine have died, roslaunch will exit shutting down processing monitor... ... shutting down processing monitor complete done

Any suggested ?

Many thanks

Gal

musamarcusso commented 6 years ago

Hi @galfunk, could you send the output from the controller node? I tried reproducing it here, but I didn't have the same issue.

galfunk commented 6 years ago

Hi I'm not sure what you asking for... I'm pretty new in the simulation environment. Where I can find the output from the controller node ?

musamarcusso commented 6 years ago

Did you call this launch file after starting, for example, the DP controller tutorial demo? If that is so, it can be that the error occurred in the callback function for this service.

galfunk commented 6 years ago

I call this launch file after used roslaunch uuv_tutorial_dp_controller start_tutorial_dp_controller_demo.launch

galfunk commented 6 years ago

Now I try to call first roslaunch uuv_control_utils send_waypoints_file.launch uuv_name:=rexrov

and receive gal@gal-XPS-15-9560:~$ roslaunch uuv_control_utils send_waypoints_file.launch uuv_name:=rexrov ... logging to /home/gal/.ros/log/64a37ebe-845b-11e8-be38-9cb6d0f2f06b/roslaunch-gal-XPS-15-9560-18187.log Checking log directory for disk usage. This may take awhile. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://gal-XPS-15-9560:41449/

SUMMARY

PARAMETERS

NODES /rexrov/ send_waypoint_file (uuv_control_utils/send_waypoint_file.py)

auto-starting new master process[master]: started with pid [18197] ROS_MASTER_URI=http://localhost:11311

setting /run_id to 64a37ebe-845b-11e8-be38-9cb6d0f2f06b process[rosout-1]: started with pid [18210] started core service [/rosout] process[rexrov/send_waypoint_file-2]: started with pid [18219] [INFO] [1531238870.711556]: Send a waypoint file, namespace=/rexrov/ Traceback (most recent call last): File "/home/gal/catkin_ws/src/uuv_simulator/uuv_control/uuv_control_utils/scripts/send_waypoint_file.py", line 56, in raise rospy.ROSException('Service not available! Closing node...') rospy.exceptions.ROSException: Service not available! Closing node... [rexrov/send_waypoint_file-2] process has died [pid 18219, exit code 1, cmd /home/gal/catkin_ws/src/uuv_simulator/uuv_control/uuv_control_utils/scripts/send_waypoint_file.py name:=send_waypoint_file log:=/home/gal/.ros/log/64a37ebe-845b-11e8-be38-9cb6d0f2f06b/rexrov-send_waypoint_file-2.log]. log file: /home/gal/.ros/log/64a37ebe-845b-11e8-be38-9cb6d0f2f06b/rexrov-send_waypoint_file-2*.log

Thanks again for your assistance, I really appreciated

Gal

musamarcusso commented 6 years ago

In this last case it will not work because the controller node has not been started. The service to receive the waypoint file won't be available. When you start the tutorial demo and then the send_waypoint_file.py script, what is the output from the tutorial demo? Are you using the waypoint file available as an example or did you add your own?

galfunk commented 6 years ago

I'm using the waypoint file as an example. The output from the start_tutorial_dp_controller_demo.launch

gal@gal-XPS-15-9560:~$ roslaunch uuv_tutorial_dp_controller start_tutorial_dp_controller_demo.launch ... logging to /home/gal/.ros/log/8993f558-84df-11e8-b770-9cb6d0f2f06b/roslaunch-gal-XPS-15-9560-3548.log Checking log directory for disk usage. This may take awhile. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://gal-XPS-15-9560:44229/

SUMMARY

PARAMETERS

NODES /rexrov/ ground_truth_to_tf_rexrov (message_to_tf/message_to_tf) robot_state_publisher (robot_state_publisher/robot_state_publisher) thruster_allocator (uuv_thruster_manager/thruster_allocator.py) trajectory_marker_publisher (uuv_control_utils/trajectory_marker_publisher.py) tutorial_dp_controller (uuv_tutorial_dp_controller/tutorial_dp_controller.py) urdf_spawner (uuv_descriptions/spawn_model.py) / gazebo (gazebo_ros/gzserver) gazebo_gui (gazebo_ros/gzclient) publish_world_models (uuv_assistants/publish_world_models.py) rviz (rviz/rviz) world_ned_frame_publisher (tf2_ros/static_transform_publisher)

auto-starting new master process[master]: started with pid [3562] ROS_MASTER_URI=http://localhost:11311

setting /run_id to 8993f558-84df-11e8-b770-9cb6d0f2f06b process[rosout-1]: started with pid [3575] started core service [/rosout] process[gazebo-2]: started with pid [3586] process[gazebo_gui-3]: started with pid [3604] process[world_ned_frame_publisher-4]: started with pid [3609] process[publish_world_models-5]: started with pid [3610] process[rexrov/urdf_spawner-6]: started with pid [3628] process[rexrov/robot_state_publisher-7]: started with pid [3629] process[rexrov/ground_truth_to_tf_rexrov-8]: started with pid [3630] process[rexrov/thruster_allocator-9]: started with pid [3633] process[rexrov/trajectory_marker_publisher-10]: started with pid [3649] process[rexrov/tutorial_dp_controller-11]: started with pid [3660] process[rviz-12]: started with pid [3666] [ WARN] [1531295626.797944172]: The root link rexrov/base_link has an inertia specified in the URDF, but KDL does not support a root link with an inertia. As a workaround, you can add an extra dummy link to your URDF. [ INFO] [1531295626.947722213]: rviz version 1.12.16 [ INFO] [1531295626.947849829]: compiled against Qt version 5.5.1 [ INFO] [1531295626.947912651]: compiled against OGRE version 1.9.0 (Ghadamon) Gazebo multi-robot simulator, version 7.13.1 Copyright (C) 2012 Open Source Robotics Foundation. Released under the Apache 2 License. http://gazebosim.org

Gazebo multi-robot simulator, version 7.13.1 Copyright (C) 2012 Open Source Robotics Foundation. Released under the Apache 2 License. http://gazebosim.org

[ INFO] [1531295627.077055277]: Finished loading Gazebo ROS API Plugin. [Msg] Waiting for master. [ INFO] [1531295627.077614497]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting... [Msg] Connected to gazebo master @ http://127.0.0.1:11345 [Msg] Publicized address: 192.168.1.104 [ INFO] [1531295627.115499406]: Stereo is NOT SUPPORTED [ INFO] [1531295627.115676274]: OpenGl version: 3 (GLSL 1.3). [ INFO] [1531295627.124072749]: Finished loading Gazebo ROS API Plugin. [ INFO] [1531295627.124428131]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting... [Msg] Waiting for master. [Msg] Connected to gazebo master @ http://127.0.0.1:11345 [Msg] Publicized address: 192.168.1.104 Warning [parser.cc:527] Can not find the XML attribute 'version' in sdf XML tag for model: NED frame. Please specify the SDF protocol supported in the model configuration file. The first sdf tag in the config file will be used Start publishing vehicle footprints to RViz spawn_model script started Starting trajectory and waypoint marker publisher Tutorial - DP Controller New model being published: north Position: [1000, 0, -50] Orientation: [0, 0, 0, 1] Scale: [1, 1, 1] New model being published: west Position: [0, -1000, -50] Orientation: [0, 0, 0, 1] Scale: [1, 1, 1] New model being published: heightmap Position: [0.0, 0.0, -95.0] Orientation: [0.0, 0.0, 0.0, 1.0] Scale: [1, 1, 1] New model being published: seafloor Position: [0, 0, -100] Orientation: [0, 0, 0, 1] Scale: [1, 1, 1] New model being published: east Position: [0, 1000, -50] Orientation: [0, 0, 0, 1] Scale: [1, 1, 1] New model being published: south Position: [-1000, 0, -50] Orientation: [0, 0, 0, 1] Scale: [1, 1, 1] [INFO] [1531295627.630605, 0.000000]: Loading model xml from ros parameter [INFO] [1531295627.637383, 0.000000]: Waiting for service /gazebo/spawn_urdf_model [INFO] [1531295627.638587, 0.000000]: Calling service /gazebo/spawn_urdf_model REXROV -- 2018-07-11 08:53:47,670 | INFO | dp_controller_base | Setting controller as model-based REXROV -- 2018-07-11 08:53:47,672 | INFO | wp_trajectory_generator | Waypoint interpolators available: REXROV -- 2018-07-11 08:53:47,672 | INFO | wp_trajectory_generator | - cubic REXROV -- 2018-07-11 08:53:47,672 | INFO | wp_trajectory_generator | - lipb REXROV -- 2018-07-11 08:53:47,673 | INFO | wp_trajectory_generator | - dubins REXROV -- 2018-07-11 08:53:47,673 | INFO | wp_trajectory_generator | - linear REXROV -- 2018-07-11 08:53:47,673 | INFO | dp_controller_local_planner | Max. forward speed [m/s]=1.00 REXROV -- 2018-07-11 08:53:47,674 | INFO | dp_controller_local_planner | Idle circle radius [m] = 10.00 REXROV -- 2018-07-11 08:53:47,676 | INFO | dp_controller_local_planner | Inertial frame ID=world [Msg] Loading underwater world... [Msg] Current velocity [m/s] Gauss-Markov process model: [Msg] Mean = 0 Min. Limit = 0 Max. Limit = 5 Mu = 0 Noise Amp. = 0 [Msg] Current velocity horizontal angle [rad] Gauss-Markov process model: [Msg] Mean = 0 Min. Limit = -3.14159 Max. Limit = 3.14159 Mu = 0 Noise Amp. = 0 [Msg] Current velocity horizontal angle [rad] Gauss-Markov process model: [Msg] Mean = 0 Min. Limit = -3.14159 Max. Limit = 3.14159 Mu = 0 Noise Amp. = 0 [Msg] Current velocity topic name: hydrodynamics/current_velocity [Msg] Underwater current plugin loaded! WARNING: Current velocity calculated in the ENU frame [Msg] UnderwaterCurrentROSPlugin::namespace=hydrodynamics [Msg] Spherical coordinates reference=

musamarcusso commented 6 years ago

Did you call send_waypoint_file.py in this last case? I can't find the log from the callback function.

galfunk commented 6 years ago

I'm re-install the UUV simulator and the problem solved.

Thanks