tu-darmstadt-ros-pkg / hector_quadrotor Goto Github PK
View Code? Open in Web Editor NEWhector_quadrotor contains packages related to modeling, control and simulation of quadrotor UAV systems.
License: Other
hector_quadrotor contains packages related to modeling, control and simulation of quadrotor UAV systems.
License: Other
when I use the hector_quadrotor packages in hydro with gazebo the TF tree seems to be broken.
There is no connection between the base_link and base_stabilized.
I tried the current source from github and the debian packages which both seem to show the same behaviour
The broken tree makes all sensor unusable
The problem could be reproduced on other PC too
The quadrotot plugin.gazebo.xacro in hector_quadrotor_gazebo/urdf has a wired file name ending with .in
Maybe due to a wrong entry in the git ignore file in the repo.
I tried to add the spinning Hokuyo lidar to the quadrotor, here is the urdf file
spawn_quadrotor_with_spinning_lidar.urdf.xacro.txt
However, the transformation between ${name}_spinning_lidar_spin_link and ${name}_spinning_lidar_root_link is lost.
In gazebo, the lidar is on the quadrotor and rotating.
In rviz, the lidar is not on the quadrotor because the transformation between xx_spinning_lidar_root_link and xx_spinning_lidar_root link is lost.
It seems that the transformation is defined in spinning_hokuyo_utm30lx.urdf.xacro, but why it doesn't work?
Is there a way to directly control the wrench applied to the sim model, rather than using your velocity or pose controllers?
Hi,
I've been trying to get ROS and hector_quadrotor packages built from on my macbook pro laptop, running the later version (10.9.4) of Mavericks.
251 packages of desktop_full installation went fine (with --install space /opt/ros/hydro), with a few twists on the packages as well as dependency installations (e.g. rosdep wanted to install homebrewed versions of some packages that are not available), but I'll leave it aside for now. Here are the steps that I followed:
$ mkdir hector_quadrotor_ws
$ cd hector_quadrotor_ws
$ rosinstall_generator hector_quadrotor --rosdistro hydro --deps --wet_only --tar > hector_quadrotor-wet.rosinstall
$ wstool init -j8 src hector_quadrotor-wet.rosinstall
This downloader 111 packages and started building them. However, I had to manually fix the following:
It is almost complete, but... At the very end, for the hector_quadrotor_gazebo I'm getting an error:
-- catkin 0.5.88
CMake Error at urdf/CMakeLists.txt:62 (message):
Cannot use the aerodynamics model as the required plugin has not been
found. Try to run 'rosmake hector_quadrotor_gazebo_plugins' first.
This does not change although I ran rosmake and build the plugins again.
--Rasit
catkin_make hector_quadrotor yields these errors :
CMake Error at /home/mtourne/catkin_ws/build/hector_quadrotor/hector_uav_msgs/cmake/hector_uav_msgs-genmsg.cmake:155 (add_custom_target):
add_custom_target cannot create target
"hector_uav_msgs_generate_messages_cpp" because another target with the
same name already exists. The existing target is a custom target created
in source directory
"/home/mtourne/catkin_ws/src/hector_localization/hector_pose_estimation".
See documentation for policy CMP0002 for more details.
Call Stack (most recent call first):
/opt/ros/hydro/share/genmsg/cmake/genmsg-extras.cmake:287 (include)
hector_quadrotor/hector_uav_msgs/CMakeLists.txt:56 (generate_messages)
hector_uav_msgs_generate_messages_lisp, and hector_uav_msgs_generate_messages_py also generates errors.
http://wiki.ros.org/action/fullsearch/hector_quadrotor/Tutorials
I am able to run both indoor&outdoor demos using the given "binary packages" successfully, but there are issues when I try to install and run them "from source".
Gazebo works fine, but all the sensors are not working in RVIZ. Attached are the screenshots.
I've tried these on two different PC (12.04 ubuntu+ROS Hydro+Gazebo1.9 ; Both Pre-compiled binaries), both have the same issue.
Hope someone could help.
Thanks in advance!
Hector quadrotor is not working. when i give a defaul height velocity when i start the simulation quadrotor model is not stop again. it is going to up always as if i give a down cmd_vel command. CAn you control this error?
Missing dependency in hector_quadrotor_gazebo_plugins
for dynamic_reconfigure
.
Remedy:
dynamic_reconfigure
to package.xml
dynamic_reconfigure
to CMakeLists.txt
Will make a PR.
I dived into the code a little bit and found that you can set the control mode in the teleop package from twist to attitude, there appears to also be a Attitude command handler.
My question is therefore how can I actually control the attitude?
What configurations do I have to change to do this?
I'm running kinetic on Ubuntu 16.04 with Gazebo 7. I used apt to install the ros-kinetic-hector binaries, but when I run either of the launch files for the indoor or outdoor slam demos, I get the error ResourceNotFound: hector_quadrotor_gazebo. When I look in the /opt/ros/kinetic/share folder, I see that I have installed packages with names such as hector_gazebo and hector_components_description, but not the packages specified in the launch file such as hector_quadrotor_gazebo or hector_quadrotor_description. Am I missing something?
-- +++ processing catkin package: 'hector_quadrotor_pose_estimation'
-- ==> add_subdirectory(hector_quadrotor/hector_quadrotor_pose_estimation)
CMake Error at /opt/ros/indigo/share/catkin/cmake/catkinConfig.cmake:75 (find_package):
Could not find a package configuration file provided by
"hector_pose_estimation" with any of the following names:
hector_pose_estimationConfig.cmake
hector_pose_estimation-config.cmake
Add the installation prefix of "hector_pose_estimation" to
CMAKE_PREFIX_PATH or set "hector_pose_estimation_DIR" to a directory
containing one of the above files. If "hector_pose_estimation" provides a
separate development package or SDK, be sure it has been installed.
Call Stack (most recent call first):
hector_quadrotor/hector_quadrotor_pose_estimation/CMakeLists.txt:7 (find_package)
-- Configuring incomplete, errors occurred!
See also "/home/sean/p/hector/build/CMakeFiles/CMakeOutput.log".
See also "/home/sean/p/hector/build/CMakeFiles/CMakeError.log".
Invoking "cmake" failed
I want to transform the vector from camera frame to body frame, so I listen the transformation bwtween "/base_link" and "/downward_cam_link" and covert it to rotation matrix.
R_cam2body =
0 0 1
0 1 0
-1 0 0
Since the x-y-z axis of camera(downward) frame is right-back-down, then the axis of body frame is back-down-left, it is very strange.
Somewhere is wrong? Please give me some advice.
tf::StampedTransform transform;
try{
//targe_frame <- source frame
listener.lookupTransform("/base_link", "/downward_cam_link",
ros::Time(0), transform);
}
catch (tf::TransformException &ex) {
ROS_ERROR("%s",ex.what());
continue;
}
t_cam2body(0) = transform.getOrigin().x();
t_cam2body(1) = transform.getOrigin().y();
t_cam2body(2) = transform.getOrigin().z();
Quaterniond qq;
qq.w() = transform.getRotation().w();
qq.x() = transform.getRotation().x();
qq.y() = transform.getRotation().y();
qq.z() = transform.getRotation().z();
R_cam2body = quaternion2mat(qq);
Greetings, dear developers. First, thanks for this useful package, I haven't seen a better quadrotor sim before!
Now, the issue: Recently I got your kinetic-devel branch of hector_quadrotor (downloaded from source) in order to obtain 3D images for an assignment. I got it, I got all the dependencies and stuff and ran the indoor SLAM demo, and, when I add a Depth Image (compressedDepth topic) I get this message in the terminal:
Compressed Depth Image Transport - Compression requires single-channel 32bit-floating point or 16bit raw depth images (input format is: rgb8).
I'm quite a newbie in this, so I don't know if it is a bug or a problem of mine, and of course, I don't know if there is any solution.
My environment is Ubuntu 16.04 Xenial, I'm ussing ROS Kinetic Kame version, Gazebo 7.0, and RViz 1.12 for Kinetic.
Some screenshots:
when i give this command to quadrotor : rostopic pub /cmd_vel geometry_msgs/Twist -r 1 '[0, 0, 0.5]' '[0, 0, 0]'
quadrotor is not stoping after i terminate. whats the matter about quadrotor ?????????
I tried to pull the source using
wstool init src https://raw.github.com/tu-darmstadt-ros-pkg/hector_quadrotor/kinetic-devel/tutorials.rosinstall
and after building the workspace I ran the command to start the demo:
roslaunch hector_quadrotor_demo indoor_slam_gazebo.launch
I have a Xbox 360 Controller connected to my PC and verified using jstest that the controller works. I can also see that messages are published on the /joy topic.
However I cannot get the quadcopter to move when using the joystick.
Here is the terminal output and everything seems to be okay except for the "No command received" that occurs after a while.
$ roslaunch hector_quadrotor_demo indoor_slam_gazebo.launch
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://LAPTOP:35741/
SUMMARY
========
PARAMETERS
* /action_timeout: 30.0
* /base_footprint_frame: /base_footprint
* /base_link_frame: /base_link
* /base_stabilized_frame: /base_stabilized
* /command_timeout: 0.5
* /connection_timeout: 10.0
* /controller/attitude/max_roll_pitch: 0.785398163
* /controller/attitude/pitch/d: 20.0
* /controller/attitude/pitch/i: 0.0
* /controller/attitude/pitch/p: 100.0
* /controller/attitude/pitch/publish_state: True
* /controller/attitude/roll/d: 20.0
* /controller/attitude/roll/i: 0.0
* /controller/attitude/roll/p: 100.0
* /controller/attitude/roll/publish_state: True
* /controller/attitude/type: hector_quadrotor_...
* /controller/attitude/yawrate/d: 0.5
* /controller/attitude/yawrate/i: 0.0
* /controller/attitude/yawrate/max: 3.14
* /controller/attitude/yawrate/p: 5.0
* /controller/attitude/yawrate/publish_state: True
* /controller/position/type: hector_quadrotor_...
* /controller/position/x/d: 0.0
* /controller/position/x/i: 0.0
* /controller/position/x/p: 2.0
* /controller/position/y/d: 0.0
* /controller/position/y/i: 0.0
* /controller/position/y/p: 2.0
* /controller/position/yaw/d: 0.0
* /controller/position/yaw/i: 0.0
* /controller/position/yaw/p: 2.0
* /controller/position/z/d: 0.0
* /controller/position/z/i: 0.0
* /controller/position/z/p: 2.0
* /controller/velocity/max_xy: 10.0
* /controller/velocity/type: hector_quadrotor_...
* /controller/velocity/x/antiwindup: True
* /controller/velocity/x/d: 0.0
* /controller/velocity/x/i: 1.0
* /controller/velocity/x/i_clamp: 5.0
* /controller/velocity/x/p: 2.0
* /controller/velocity/x/publish_state: True
* /controller/velocity/y/antiwindup: True
* /controller/velocity/y/d: 0.0
* /controller/velocity/y/i: 1.0
* /controller/velocity/y/i_clamp: 5.0
* /controller/velocity/y/p: 2.0
* /controller/velocity/y/publish_state: True
* /controller/velocity/z/antiwindup: True
* /controller/velocity/z/d: 0.0
* /controller/velocity/z/i: 1.0
* /controller/velocity/z/i_clamp: 5.0
* /controller/velocity/z/max: 5.0
* /controller/velocity/z/p: 5.0
* /controller/velocity/z/publish_state: True
* /dist_tolerance: 0.1
* /estop_deceleration: 1.0
* /estop_relay/lazy: True
* /ground_truth_to_tf/frame_id: world
* /ground_truth_to_tf/odometry_topic: ground_truth/state
* /ground_truth_to_tf/tf_prefix:
* /hector_geotiff_node/draw_background_checkerboard: True
* /hector_geotiff_node/draw_free_space_grid: True
* /hector_geotiff_node/geotiff_save_period: 0.0
* /hector_geotiff_node/map_file_base_name: hector_slam_map
* /hector_geotiff_node/map_file_path: /home/mathias/Skr...
* /hector_geotiff_node/plugins: hector_geotiff_pl...
* /hector_mapping/advertise_map_service: True
* /hector_mapping/base_frame: base_footprint
* /hector_mapping/laser_z_max_value: 1.0
* /hector_mapping/laser_z_min_value: -1.0
* /hector_mapping/map_frame: map
* /hector_mapping/map_multi_res_levels: 2
* /hector_mapping/map_resolution: 0.05
* /hector_mapping/map_size: 2048
* /hector_mapping/map_start_x: 0.5
* /hector_mapping/map_start_y: 0.5
* /hector_mapping/map_update_angle_thresh: 0.06
* /hector_mapping/map_update_distance_thresh: 0.4
* /hector_mapping/odom_frame: world
* /hector_mapping/pub_map_odom_transform: True
* /hector_mapping/scan_subscriber_queue_size: 5
* /hector_mapping/scan_topic: scan
* /hector_mapping/tf_map_scanmatch_transform_frame_name: scanmatcher_frame
* /hector_mapping/update_factor_free: 0.4
* /hector_mapping/update_factor_occupied: 0.9
* /hector_mapping/use_tf_pose_start_estimate: False
* /hector_mapping/use_tf_scan_transformation: True
* /hector_trajectory_server/source_frame_name: /base_link
* /hector_trajectory_server/target_frame_name: /map
* /hector_trajectory_server/trajectory_publish_rate: 4.0
* /hector_trajectory_server/trajectory_update_rate: 4.0
* /imu_topic:
* /joy/autorepeat_rate: 10
* /joy/coalesce_interval: 0.01
* /joy/dev: /dev/input/js0
* /landing_height: 0.1
* /quadrotor_aerodynamics/C_mxy: 0.074156208
* /quadrotor_aerodynamics/C_mz: 0.050643264
* /quadrotor_aerodynamics/C_wxy: 0.12
* /quadrotor_aerodynamics/C_wz: 0.1
* /quadrotor_propulsion/CT0s: 1.53819048398e-05
* /quadrotor_propulsion/CT1s: -0.00025224
* /quadrotor_propulsion/CT2s: 0.0
* /quadrotor_propulsion/J_M: 2.5730480633e-05
* /quadrotor_propulsion/Psi: 0.00724217982751
* /quadrotor_propulsion/R_A: 0.201084219222
* /quadrotor_propulsion/alpha_m: 0.104863758314
* /quadrotor_propulsion/beta_m: 0.549262344778
* /quadrotor_propulsion/k_m: -7.01163190977e-05
* /quadrotor_propulsion/k_t: 0.0153368647144
* /quadrotor_propulsion/l_m: 0.275
* /robot_description: <?xml version="1....
* /robot_state_publisher/publish_frequency: 50.0
* /rosdistro: kinetic
* /rosversion: 1.12.7
* /state_timeout: 0.5
* /state_topic:
* /takeoff_height: 0.1
* /teleop/control_mode: position
* /teleop/go_button: 6
* /teleop/slow_button: 4
* /teleop/stop_button: 2
* /teleop/thrust_axis: -3
* /teleop/x_axis: 5
* /teleop/y_axis: 4
* /teleop/yaw_axis: 1
* /teleop/z_axis: 2
* /tf_prefix:
* /time_in_tolerance: 1.0
* /use_sim_time: True
* /world_frame: world
* /wrench_limits/force/z/max: 30.0
* /wrench_limits/force/z/min: 0.0
* /wrench_limits/torque/x/max: 10.0
* /wrench_limits/torque/y/max: 10.0
* /wrench_limits/torque/z/max: 1.0
* /yaw_tolerance: 0.35
NODES
/
controller_spawner (controller_manager/spawner)
estop_relay (topic_tools/relay)
gazebo (gazebo_ros/gzserver)
gazebo_gui (gazebo_ros/gzclient)
ground_truth_to_tf (message_to_tf/message_to_tf)
hector_geotiff_node (hector_geotiff/geotiff_node)
hector_mapping (hector_mapping/hector_mapping)
hector_trajectory_server (hector_trajectory_server/hector_trajectory_server)
joy (joy/joy_node)
landing_action (hector_quadrotor_actions/landing_action)
pose_action (hector_quadrotor_actions/pose_action)
robot_state_publisher (robot_state_publisher/robot_state_publisher)
rviz (rviz/rviz)
spawn_robot (gazebo_ros/spawn_model)
takeoff_action (hector_quadrotor_actions/takeoff_action)
teleop (hector_quadrotor_teleop/quadrotor_teleop)
auto-starting new master
process[master]: started with pid [10236]
ROS_MASTER_URI=http://localhost:11311
setting /run_id to 70b85d1a-0576-11e7-8a03-c485085c36f4
process[rosout-1]: started with pid [10249]
started core service [/rosout]
process[gazebo-2]: started with pid [10273]
process[gazebo_gui-3]: started with pid [10278]
process[robot_state_publisher-4]: started with pid [10283]
process[ground_truth_to_tf-5]: started with pid [10284]
process[controller_spawner-6]: started with pid [10285]
process[estop_relay-7]: started with pid [10294]
process[pose_action-8]: started with pid [10296]
process[landing_action-9]: started with pid [10301]
process[takeoff_action-10]: started with pid [10304]
process[spawn_robot-11]: started with pid [10312]
process[hector_mapping-12]: started with pid [10331]
process[hector_trajectory_server-13]: started with pid [10336]
process[hector_geotiff_node-14]: started with pid [10339]
process[rviz-15]: started with pid [10344]
process[joy-16]: started with pid [10347]
process[teleop-17]: started with pid [10352]
[ WARN] [1489139192.646654122]: The root link 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.
SpawnModel script started
[ INFO] [1489139193.057176667]: waitForService: Service [/enable_motors] has not been advertised, waiting...
[INFO] [1489139193.168022, 0.000000]: Loading model XML from ros parameter
[INFO] [1489139193.179690, 0.000000]: Waiting for service /gazebo/spawn_urdf_model
[ INFO] [1489139193.204367958]: Opened joystick: /dev/input/js0. deadzone_: 0.050000.
[ INFO] [1489139193.211239701]: Waiting for tf transform data between frames /map and /base_link to become available
[ INFO] [1489139193.248154579]: waitForService: Service [/enable_motors] has not been advertised, waiting...
[ INFO] [1489139193.257335582]: waitForService: Service [/enable_motors] has not been advertised, waiting...
[INFO] [1489139193.281005, 0.000000]: Controller Spawner: Waiting for service controller_manager/load_controller
[ INFO] [1489139193.306776629]: Finished loading Gazebo ROS API Plugin.
[ INFO] [1489139193.313508463]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting...
[ERROR] [1489139193.352567946]: Skipping XML Document "/opt/ros/kinetic/share/hector_worldmodel_geotiff_plugins/hector_geotiff_plugins.xml" which had no Root Element. This likely means the XML is malformed or missing.
HectorSM map lvl 0: cellLength: 0.05 res x:2048 res y: 2048
[ INFO] [1489139193.438051658]: Successfully initialized hector_geotiff MapWriter plugin TrajectoryMapWriter.
[ INFO] [1489139193.438126839]: Geotiff node started
HectorSM map lvl 1: cellLength: 0.1 res x:1024 res y: 1024
[ INFO] [1489139193.518336015]: HectorSM p_base_frame_: base_footprint
[ INFO] [1489139193.519155701]: HectorSM p_map_frame_: map
[ INFO] [1489139193.519178735]: HectorSM p_odom_frame_: world
[ INFO] [1489139193.519198425]: HectorSM p_scan_topic_: scan
[ INFO] [1489139193.519215201]: HectorSM p_use_tf_scan_transformation_: true
[ INFO] [1489139193.519231583]: HectorSM p_pub_map_odom_transform_: true
[ INFO] [1489139193.519248704]: HectorSM p_scan_subscriber_queue_size_: 5
[ INFO] [1489139193.519267620]: HectorSM p_map_pub_period_: 2.000000
[ INFO] [1489139193.519284555]: HectorSM p_update_factor_free_: 0.400000
[ INFO] [1489139193.519300937]: HectorSM p_update_factor_occupied_: 0.900000
[ INFO] [1489139193.519317377]: HectorSM p_map_update_distance_threshold_: 0.400000
[ INFO] [1489139193.519334324]: HectorSM p_map_update_angle_threshold_: 0.060000
[ INFO] [1489139193.519355830]: HectorSM p_laser_z_min_value_: -1.000000
[ INFO] [1489139193.519371821]: HectorSM p_laser_z_max_value_: 1.000000
[INFO] [1489139194.099464, 0.000000]: Calling service /gazebo/spawn_urdf_model
[ INFO] [1489139194.804122904, 0.001000000]: Camera Plugin: Using the 'robotNamespace' param: '/'
[ INFO] [1489139194.809711603, 0.001000000]: Camera Plugin (ns = /) <tf_prefix_>, set to ""
[ INFO] [1489139195.908883783, 0.001000000]: Laser Plugin: Using the 'robotNamespace' param: '/'
[ INFO] [1489139195.909042652, 0.001000000]: Starting Laser Plugin (ns = /)!
[ INFO] [1489139195.912582321, 0.001000000]: Laser Plugin (ns = /) <tf_prefix_>, set to ""
[INFO] [1489139195.922520, 0.001000]: Spawn status: SpawnModel: Successfully spawned model
[ INFO] [1489139196.039083897, 0.001000000]: imu plugin missing <xyzOffset>, defaults to 0s
[spawn_robot-11] process has finished cleanly
log file: /home/mathias/.ros/log/70b85d1a-0576-11e7-8a03-c485085c36f4/spawn_robot-11*.log
[ INFO] [1489139196.290092969, 0.001000000]: Loading gazebo_ros_control plugin
[ WARN] [1489139196.290270775, 0.001000000]: Desired controller update period (0.010000000 s) is slower than the gazebo simulation period (0.001000000 s).
[ INFO] [1489139196.290363475, 0.001000000]: Starting gazebo_ros_control plugin in namespace: /
[ INFO] [1489139196.291564625, 0.001000000]: gazebo_ros_control plugin is waiting for model URDF in parameter [robot_description] on the ROS param server.
[ INFO] [1489139196.456025245, 0.001000000]: Limits /wrench_limits/force/z initialized z with min 0 and max 30
[ INFO] [1489139196.460452127, 0.001000000]: Limits /wrench_limits/torque/x initialized x with min -10 and max 10
[ INFO] [1489139196.463020542, 0.001000000]: Limits /wrench_limits/torque/y initialized y with min -10 and max 10
[ INFO] [1489139196.465609115, 0.001000000]: Limits /wrench_limits/torque/z initialized z with min -1 and max 1
[ INFO] [1489139196.476497956, 0.001000000]: Loaded gazebo_ros_control.
Loaded the following quadrotor propulsion model parameters from namespace /quadrotor_propulsion:
k_m = -7.01163e-05
k_t = 0.0153369
CT2s = 0
CT1s = -0.00025224
CT0s = 1.53819e-05
Psi = 0.00724218
J_M = 2.57305e-05
R_A = 0.201084
l_m = 0.275
alpha_m = 0.104864
beta_m = 0.549262
Loaded the following quadrotor drag model parameters from namespace /quadrotor_aerodynamics:
C_wxy = 0.12
C_wz = 0.1
C_mxy = 0.0741562
C_mz = 0.0506433
[ INFO] [1489139196.558293430, 0.033000000]: waitForService: Service [/enable_motors] is now available.
[ INFO] [1489139196.560103616, 0.033000000]: waitForService: Service [/gazebo/set_physics_properties] is now available.
[ INFO] [1489139196.562055853, 0.033000000]: waitForService: Service [/enable_motors] is now available.
[ INFO] [1489139196.564285137, 0.034000000]: waitForService: Service [/enable_motors] is now available.
[INFO] [1489139196.644061, 0.079000]: Controller Spawner: Waiting for service controller_manager/switch_controller
[INFO] [1489139196.652188, 0.085000]: Controller Spawner: Waiting for service controller_manager/unload_controller
[INFO] [1489139196.660117, 0.088000]: Loading controller: controller/attitude
[ INFO] [1489139196.884373061, 0.203000000]: Physics dynamic reconfigure ready.
[ INFO] [1489139196.962929250, 0.239000000]: Server /action/pose started
[ INFO] [1489139197.486118593, 0.525000000]: Server /action/landing started
[ INFO] [1489139197.522931314, 0.541000000]: Server /action/takeoff started
[ INFO] [1489139197.551529474, 0.565000000]: lookupTransform base_footprint to laser0_frame timed out. Could not transform laser scan into base_frame.
[ INFO] [1489139198.169717477, 0.846000000]: Limits /controller/attitude/yawrate initialized yawrate with min -3.14 and max 3.14
[INFO] [1489139198.196780, 0.860000]: Loading controller: controller/velocity
[ INFO] [1489139198.212254113, 0.870000000]: Finished waiting for tf, waited 0.870000 seconds
[ INFO] [1489139199.415055860, 1.526000000]: Limits /controller/velocity/z initialized z with min -5 and max 5
[INFO] [1489139199.469027, 1.550000]: Loading controller: controller/position
[INFO] [1489139200.525994, 2.140000]: Controller Spawner: Loaded controllers: controller/attitude, controller/velocity, controller/position
[ INFO] [1489139200.549393861, 2.150000000]: Enabled wrench output
[INFO] [1489139200.551340, 2.150000]: Started controllers: controller/attitude, controller/velocity, controller/position
[ INFO] [1489139200.581150902, 2.159000000]: Enabled attitude output
[ INFO] [1489139200.582307278, 2.160000000]: Enabled yawrate output
[ INFO] [1489139200.582628328, 2.160000000]: Enabled thrust output
[ WARN] [1489139222.024206023, 13.930000000]: No command received for 13.93s, triggering estop
[ INFO] [1489139222.024530826, 13.930000000]: Enabled twist output
[ WARN] [1489139223.835947583, 15.042000000]: Landing succeeded
[ INFO] [1489139223.849535378, 15.048000000]: Disabled position control while motors are not running.
[ INFO] [1489139223.849928807, 15.050000000]: Disabled twist control
[ WARN] [1489139226.249531528, 16.389000000]: No command received for 16.39s, triggering estop
[ INFO] [1489139226.250238322, 16.390000000]: Enabled twist output
[ WARN] [1489139228.429194004, 17.401000000]: Landing succeeded
[ INFO] [1489139228.442473618, 17.410000000]: Disabled position control while motors are not running.
[ INFO] [1489139228.442615241, 17.410000000]: Disabled twist control
[ WARN] [1489139252.970414402, 31.020000000]: No command received for 31.02s, triggering estop
[ INFO] [1489139252.970810398, 31.020000000]: Enabled twist output
[ WARN] [1489139254.970727051, 32.134000000]: Landing succeeded
[ INFO] [1489139254.978446760, 32.140000000]: Disabled position control while motors are not running.
[ INFO] [1489139254.978830125, 32.140000000]: Disabled twist control
[ WARN] [1489139254.996300765, 32.150000000]: No command received for 32.15s, triggering estop
[ INFO] [1489139254.998258974, 32.150000000]: Enabled twist output
[ WARN] [1489139256.963473924, 33.247000000]: Landing succeeded
[ INFO] [1489139256.980008264, 33.249000000]: Disabled position control while motors are not running.
[ INFO] [1489139256.980109532, 33.249000000]: Disabled twist control
I want to try the thermaleye camera in the simulation platform, however, I find that there is no "ros_topic" param in hector_sensors_description/urdf/thermaleye_camera.urdf.xacro. I don't know how to add the sensor to the platform and obtain the sensor data.
Can anyone give some advice?
I'm using the hector_quadrotor stack with ROS Jade, but I'm quite sure this issue persists with other versions as well. When I try launching spawn_quadrotor.launch (from the hector_quadrotor_gazebo package) using $ roslaunch hector_quadrotor_gazebo spawn_quadrotor.launch
, it fails with the following error messages.
Traceback (most recent call last):
File "/opt/ros/jade/share/xacro/xacro.py", line 60, in <module>
xacro.main()
File "/opt/ros/jade/lib/python2.7/dist-packages/xacro/__init__.py", line 693, in main
eval_self_contained(doc, in_order)
File "/opt/ros/jade/lib/python2.7/dist-packages/xacro/__init__.py", line 616, in eval_self_contained
eval_all(doc.documentElement, macros, symbols)
File "/opt/ros/jade/lib/python2.7/dist-packages/xacro/__init__.py", line 584, in eval_all
raise XacroException("unknown macro name: %s" % node.tagName)
xacro.XacroException: unknown macro name: xacro:quadrotor_sensors
Invalid <param> tag: Cannot load command parameter [robot_description]: command [/opt/ros/jade/share/xacro/xacro.py '/home/turing/catkin_ws/src/hector_quadrotor_description/urdf/quadrotor.gazebo.xacro' base_link_frame:=/base_link world_frame:=world] returned with code [1].
Param xml is <param command="$(find xacro)/xacro.py '$(arg model)' base_link_frame:=$(arg base_link_frame) world_frame:=$(arg world_frame)" name="robot_description"/>
The traceback for the exception was written to the log file
Clearly, there was something wrong with hector_quadrotor_description/urdf/quadrotor_plugins.gazebo.xacro. I dug deeper and found that there was a missing
<xacro:macro name="quadrotor_sensors">
....
</xacro:macro>
pair of tags in the file hector_quadrotor_description/urdf/quadrotor_sensors.gazebo.xacro.
After adding the tags, it launched fine. I'm starting this issue so that someone makes the corresponding change to the repository.
Hi,
Presented this on answers.ros.org:
Still looking for a solution.
Thanks in advance!
I want to simulate a quadcopter having X configuration instead of +. Is it possible to change this in the hector_quadrotor?
Thanks in advance
hector_quadrotor_gazebo (or message_to_tf ?) should have a package dependency to robot_state_publisher as it's used in spawn_quadrotor.launch
While spawning a quadrotor in gazebo following message occurs:
Controller Spawner couldn't find the expected controller_manager ROS interface.
This error occurs because of a wrong xacro tag in quadrotor_controller.gazebo.xacro
I was able to fix this by deleting the unnecessary line:
<xacro:macro name="quadrotor_controller"><
Every time I run
sudo apt-get install ros-hydro-hector-quadrotor-demo
I get
E: Unable to locate package ros-hydro-hector-quadrotor-demo
@meyerj, https://github.com/clearpathrobotics/cpr_asctec_quadrotor is up and running, waiting on hector_quadrotor for release
Better late than never, thanks for shepherding my changes :)
ros-indigo-hector-quadrotor-gazebo : Depends: ros-indigo-gazebo-plugins but it is not going to be installed
Depends: ros-indigo-hector-gazebo-plugins but it is not going to be installed
Depends: ros-indigo-hector-quadrotor-controller-gazebo but it is not going to be installed
Depends: ros-indigo-hector-quadrotor-gazebo-plugins but it is not going to be installed
Depends: ros-indigo-hector-sensors-gazebo but it is not going to be installed
I am trtying to use hector in gazebo 5 , but I get these error messages. I have installed ros-indigo-gazebo-plugins in gazebo 5 as ros-indigo-gazebo5-plugins ..How do I get around this?
HI,
Is it possible to install in ROS Jade? I'm having some issues doing so.
I cloned the indigo-devel branch into my catkin_ws/src folder. Then run the command catkin_make.
I go the error:
Could not find a package configuration file provided by
"hector_pose_estimation" with any of the following names:
hector_pose_estimationConfig.cmake
hector_pose_estimation-config.cmake
thank you for the help
I get this error on both a Linux and OSX install of ROS. This is using hyrdo-devel, commit d2b5f39.
CMake Error at /opt/ros/hydro/share/catkin/cmake/catkinConfig.cmake:72 (find_package):
Could not find a configuration file for package hector_pose_estimation.
Set hector_pose_estimation_DIR to the directory containing a CMake
configuration file for hector_pose_estimation. The file will have one of
the following names:
hector_pose_estimationConfig.cmake
hector_pose_estimation-config.cmake
Error [Plugin.hh:156] Failed to load plugin libhector_gazebo_ros_sonar.so: libhector_gazebo_ros_sonar.so: cannot open shared object file: No such file or directory
[INFO] [WallTime: 1428564224.049737] [0.397000] Spawn status: SpawnModel: Successfully spawned model
Error [Plugin.hh:156] Failed to load plugin libhector_gazebo_ros_imu.so: libhector_gazebo_ros_imu.so: cannot open shared object file: No such file or directory
Error [Plugin.hh:156] Failed to load plugin libhector_gazebo_ros_baro.so: libhector_gazebo_ros_baro.so: cannot open shared object file: No such file or directory
Error [Plugin.hh:156] Failed to load plugin libhector_gazebo_ros_magnetic.so: libhector_gazebo_ros_magnetic.so: cannot open shared object file: No such file or directory
Error [Plugin.hh:156] Failed to load plugin libhector_gazebo_ros_gps.so: libhector_gazebo_ros_gps.so: cannot open shared object file: No such file or directory
[spawn_robot-4] process has finished cleanly
log file: /home/lin/.ros/log/56ab3c6e-de89-11e4-8855-080027431ac5/spawn_robot-4*.log
[WARN] [WallTime: 1428564251.188928] [26.875000] Controller Spawner couldn't find the expected controller_manager ROS interface.
I use ros indigo with Ubuntu 14.04 LTS. The gazebo and ros should be compatible.
I clone hector_gazebo, hector_localization, hector_models, hector_quadrotor, hector_slam from indigo_devel. And use rosdep install --from-path src --ignore-src command, it compile fine. Then I launch: ~/catkin_ws/$ roslaunch hector_quadrotor_gazebo quadrotor_empty_world.launch.
I have some errors like this, could help me. Appreciate it.
Hello all, are there directions on the best approach to setting the pose (position, orientation) for the simulated quadrotor?
I've composed the message I'd like to use:
msg.pose.pose.position = Point(x, y, z);
quat = tf.transformations.quaternion_from_euler(phi, theta, psi);
msg.pose.pose.orientation = Quaternion(*quat);
msg.twist.twist.linear = Vector3(p, q, r);
self.odom_pub.publish(msg);
But I'm at a bit of a loss about how to set up the launch files (or SDF files?) to permit the state of the quadrotor to the set with data received from an external source. What needs to be set?
http://answers.gazebosim.org/question/7036/using-hector_quadrotor_gazebo-with-externally/
I believe the hector quadrotor package does not publish anything on the /joint_states topic when the gazebo model is spawned. Is there a simple way to get the joint states ?
I'm using ROS Indigo
I am working on a project that involves a spinning Hokuyo lidar. Do the current packages offer the option to spin the Lidar?
Thank you.
There exists no file by this ending:
arg name="model" value="$(find hector_quadrotor_description)/urdf/quadrotor_with_asus_with_hokuyo_utm30lx.xacro"
"gazebo.xacro" is missing here.
Hello,
I am using ROS Hydro + Gazebo 1.9.3 + Ubuntu 12.04 with the most up-to-date hector_quadrotor
, hector_localization
, hector_gazebo
and hector_models
packages (according to hector_quadrotor.rosinstall).
Firstly, I loaded the willowgarage map:
roslaunch hector_gazebo_worlds willow_garage.launch
Then, I spawned the hector quadrotor into the Gazebo world:
roslaunch hector_quadrotor_gazebo spawn_quadrotor.launch
So far so good... However, once I took off and flew towards the wall, I realised the quadrotor flew literally through the wall. It does not behave as if there were no wall; there clearly is some disturbance in the flight. Nevertheless, it should never manage to pass through the wall (from my understanding).
I tried with other (ground) robots and they do crash and stop, never crossing the wall.
I have also noticed (in a Gazebo world I created) that if the world does not have a ground plane model, then the quadrotor does not land on the ground, but instead goes through the ground and falls to infinity. I did not observe this behaviour with the ground robots either.
I do apologise if this issue is not a bug with hector, but with something else.
Could you please check whether you can reproduce this issue?
Thanks a lot!
Hi,
Really glad I found this packaga - it has some really awesome utilities. I've been trying to make a simple simulation for my controllers and so on - and it's really easy with this !
One issue I am finding is that there is very little documentation for the hector_uav_msgs ... I need to set the velocity of the motors and get back the actual x,y,z w.r.t the ground - and I am unable to find the rostopic to publish to ! Moreover rostopic list
gives me a different list of topics compared to http://docs.ros.org/indigo/api/hector_uav_msgs/html/index-msg.html ... and all of it's fairly confusing.
So, is there someplace where the msgs have been documented ? I'd like the refer to them - Currently I am using altitude but I don't think it's giving me the z-position (or maybe it is ... I'm not sure)
Hello friend. You responded to my other question but I still have problems.
I'm trying to use this catkin version https://github.com/tu-darmstadt-ros-pkg/hector_quadrotor/tree/catkin. In this version there is a folder with hector_pose_estimation. I don't understand why the catkin_make can't find it. I think all the necessary folders are there.
You closed the other one, I'm sorry I don't want to disrespect you in any way by opening a new issue.
I have source installed hector quadrotor demo .When i roslaunch outdoor_ flight_gazebo the gazebo window pops up with the simulation but the rviz gets killed..i cant figure out why this happens ...
the error o/p is as follows:
[rviz-8] process has died [pid 29273, exit code -11, cmd /home/azar/ros_catkin_ws/install_isolated/lib/rviz/rviz -d /home/azar/hector_quadrotor_tutorial/src/hector_quadrotor/hector_quadrotor_demo/rviz_cfg/outdoor_flight.rviz __name:=rviz __log:=/home/azar/.ros/log/b02e4b10-ba10-11e5-9ade-c038966edbf9/rviz-8.log].
log file: /home/azar/.ros/log/b02e4b10-ba10-11e5-9ade-c038966edbf9/rviz-8*.log
Hey!
following the outdoor flight tutorial for hector_quadrotor I might ran into an issure with different C++ compiler versions. Checking out all repos with the rosinstall file from https://raw.github.com/tu-darmstadt-ros-pkg/hector_quadrotor/indigo-devel/tutorials.rosinstall works fine.
On Ubuntu 14.04 with ROS indigo and Gazebo6.5, running catkin_make fails as my default compiler version is not C++11. After adding set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
in the CMakeLists.txt of
hector_gazebo_plugins
hector_gazebo_thermal_camera
hector_quadrotor_controller_gazebo
hector_quadrotor_gazebo_plugins
it works fine. Not sure if this is the best solution.
Best regards
Markus
I found the line <node name="controller_spawner" pkg="controller_manager" type="spawner" respawn="false" output="screen" args="controller/twist --shutdown-timeout 3"/>
is a launch file in the example and have been using that in my launch files.
Today I noticed that the controller takes time to spawn, which causes the quad to move randomly for a few seconds in the beginning. This is problematic for my simulations.
I am trying to load the twist controller from a service using:
ros::service::waitForService("/controller_manager/load_controller", -1);
load_controller = node.serviceClient<controller_manager_msgs::LoadController>(
"/controller_manager/load_controller");
controller_manager_msgs::LoadController load_controller_msg;
load_controller_msg.request.name = "hector_quadrotor_controller/TwistController";
load_controller.call(load_controller_msg);
assert(load_controller_msg.response.ok);
but the controller never responds with an OK ... any tips on how do I debug this ?
I used the source code method to build the "Quadrotor outdoor flight demo" as the ros-hydro-hector-quadrotor-demo cannot be located. However, I cannot proceed with installation as I always encountered the following error message when doing "catkin_make", as shown in the following:
viki@c3po:~hector_quadrotor_tutorial$ catkin_make
........
........
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.26")
-- checking for module 'eigen3'
-- found eigen3, version 3.2.0
-- Found Eigen: /usr/include/eigen3
-- Eigen found (include: /usr/include/eigen3)
-- +++ processing catkin package: 'hector_geotiff_plugins'
-- ==> add_subdirectory(hector_slam/hector_geotiff_plugins)
-- Using these message generators: gencpp;genlisp;genpy
-- +++ processing catkin package: 'hector_marker_drawing'
-- ==> add_subdirectory(hector_slam/hector_marker_drawing)
-- Eigen found (include: /usr/include/eigen3)
-- +++ processing catkin package: 'hector_quadrotor_controller'
-- ==> add_subdirectory(hector_quadrotor/hector_quadrotor_controller)
-- Using these message generators: gencpp;genlisp;genpy
CMake Error at /opt/ros/indigo/share/catkin/cmake/catkinConfig.cmake:75 (find_package):
Could not find a package configuration file provided by
"hardware_interface" with any of the following names:
hardware_interfaceConfig.cmake
hardware_interface-config.cmake
Add the installation prefix of "hardware_interface" to CMAKE_PREFIX_PATH or
set "hardware_interface_DIR" to a directory containing one of the above
files. If "hardware_interface" provides a separate development package or
SDK, be sure it has been installed.
Call Stack (most recent call first):
hector_quadrotor/hector_quadrotor_controller/CMakeLists.txt:7 (find_package)
-- Configuring incomplete, errors occurred!
See also "/home/viki/hector_quadrotor_tutorial/build/CMakeFiles/CMakeOutput.log".
See also "/home/viki/hector_quadrotor_tutorial/build/CMakeFiles/CMakeError.log".
Invoking "cmake" failed
...
Could you help fix this?
Working with ROS Kinetic and Gazebo 7.
I downloaded the source from the kinetic-devel branch. It compiles fine, but when I launch the demo, I can't make the quadrotor move. I can see the commands being published on cmd_vel. I also checked that gazebo subscribes to cmd_vel and command/twist. Problem doesn't come from the joystick either.
It seems that the callback of the velocity controller is being called but there's no modification of the drone position.
At first I thought the problem was that I needed Matlab to compile, but I get the same result with or without.
Other idea is I think the action takeoff has to be called, but I don't know how, it doesn't seem to be linked to anything.
Hi, as the title indicates, the problem is that the gazebo 1.5.0 in ros groovy can not parse the plugins of the sensor and the controller modules of the simulated quadrotor, then the robot just falls down to the ground when the simulator starts. Is there anybody who takes care of this? Thanks! (By the way, the package name of gazebo in any gazebo world launch file should be modified to "gzb", otherwise it will report error and can not start, thus the service name for spawning model has also to be modified accordingly to "/gzb/spawn_urdf_model".)
Looks like demo package doesn't exist in ROS Jade release
sudo apt-get install ros-jade-hector-quadrotor-demo
Is it possible to get demo working Jade?
I'm working with ros kinetic. When I compile the hector_quadrotor_kinetic_devel, I got errors like
hector_quadrotor-kinetic-devel/hector_gazebo_plugins/src/servo_plugin.cpp:203:25: error: ‘class gazebo::physics::Joint’ has no member named ‘SetMaxForce’
servo[FIRST].joint->SetMaxForce(0, maximumTorque);
I guess that ros kinetic using gazebo 7 causes some problem. How to fix it? Or is it possible to install a binary version using apt-get install ros-kinetic-hector-quadrotor* ? Looking forward to your help.
Hi, I ve Indigo (Ubuntu 14.10) and I downloaded the hector_quadrotor (indigo_devel) but I cannot compile it.
The error I get is:
:~/workspace_ros$ rosdep install --from-path src --ignore-src
ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
hector_quadrotor_gazebo_plugins: Cannot locate rosdep definition for [hector_gazebo_plugins]
hector_quadrotor_gazebo: Cannot locate rosdep definition for [message_to_tf]
hector_quadrotor_pose_estimation: Cannot locate rosdep definition for [hector_pose_estimation]
hector_quadrotor_demo: Cannot locate rosdep definition for [hector_gazebo_worlds]
hector_quadrotor_description: Cannot locate rosdep definition for [hector_sensors_description]
even if the error was solved here: #4
I did the same but that solution doesn t work.
Any help is appreciated!
Thanks!!
Hello friend.
I'm trying to work with your catkin package but when I do the catkin_make it give me the following error:
CMake Error at /opt/ros/groovy/share/catkin/cmake/catkinConfig.cmake:72 (find_package):
Could not find a configuration file for package hector_pose_estimation.
This crashes the catkin make, and I can't build the package.
Do you have any ideia on how to solve this? How to build the package?
Thx so much for the help friend.
What could this mean and how to resolve this.
Thanks in advance for your help.
When we give speed to qaudrocopter , Quadro's head is getting close to the ground. therefore the sensor data and magnetic data data is getting very wrong. it affect slam and other algorithms. Can you help me which pid parameter in params file i should change?
Hi, i have donwloaded the all required packages from the repository and put them into a directory hector_quadrotor/src. When i want build the catkin workspace as usual:
cd hector_quadrotor/src
catkin_init_workspace
cd .. catkin_make
i find this error: make[2]: * No rule to make target /usr/lib/libflann_cpp_s.a', needed by/home/stefano/Desktop/hector_quad/devel/lib/libhector_quadrotor_controller_gazebo.so'. Stop.
what can i do? Thanks to all
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.