Quantcast
Channel: ROS Answers: Open Source Q&A Forum - RSS feed
Viewing all articles
Browse latest Browse all 142

Integration of px4, px4flow with AMCL localization for quadrotor

$
0
0
Hi everybody, Following previous questions ([1](http://answers.ros.org/question/226853/interface-pixhawk-with-hector_slam-amcl/?answer=226859#post-id-226859), [2](http://answers.ros.org/question/226878/mavros-publishes-odometry-without-gps/?comment=228524#post-id-228524)), I would like to ask you if this architecture looks smart and efficient. My goal is to perform autonomous indoor navigation for quadrotor based on AMCL localization. I have been facing some troubles to set up my tf tree and my different odometry and pose informations. The proposed solution is as follow: **The TF tree:** base_link -> base_stabilized: I use the IMU information returned by mavros in the [hector_imu_attitude_to_tf](https://github.com/tu-darmstadt-ros-pkg/hector_slam/tree/catkin/hector_imu_attitude_to_tf) node base_stabilized -> base_footprint: I simply subscribe to the altitude topic of mavros and publish the z translation. I still have some reliability problems as the barometer is not really accurate. I might try to use the sonar height combined with the IMU information. To be continued base_footprint -> odom: I use [robot_localization](http://wiki.ros.org/robot_localization). It is working in 2d mode. It combines the IMU and the optical flow. To use the [mavros_msgs/OpticalFlowRad](http://docs.ros.org/jade/api/mavros_msgs/html/msg/OpticalFlowRad.html) in robot_localization, I use make use of [optflow_odometry](https://github.com/lalten/tas/blob/master/tas_odometry/src/optflow_odometry.cpp). At the end of the day, robot_localization is also publishing my 2D odom. odom -> map: I use another EKF, again [robot_localization](http://wiki.ros.org/robot_localization), to fuse my 2D odom with my SLAM position. For the moment, everything looks good, except the base_stabilized -> base_footprint. This problem does not affect the system. Do you think my solution is a good one, compared to the use of a single mavros usage? Am I creating to much computing and processing requirements or maybe inducing errors?

Viewing all articles
Browse latest Browse all 142

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>