0
$\begingroup$

Rosanswers logo

Hi, I am trying to implement autonomous navigation with obstacle avoidance for quadcopter (which has Pixhawk). All I want to implement is quadcopter being able to move from point A to point B while avoiding obstacles. I am fine with the navigation being in 2D.

I am using Odroid connected to Pixhawk as the main controller. I am using Hokuyo URG-04LX-UG01 Scanning Laser Rangefinder for detecting obstacles.

What I figured out till now is there are two options to achieve navigation with obstacle avoidance. Use MAVROS somehow along with Navigation Stack / MoveIt. I guess as I am fine with navigation in 2D Navigation Stack should be what I should use. Is that correct?

Navigation stack requires 3 sort of data to function: Sensor Data, TF & Odometry data. I have LIDAR publishing sensor data, so thats fine.

My questions are:

  1. How do I get TF and Odometry data (used by navigation stack) using MAVROS? What sort of data should I use? How do I do that?
  2. Can I use MoveIt if I dont have map or anything and only 2D LIDAR data?
  3. In future I want UAV to navigate in 3D. If answer to 2nd question is yes then should I switch to MoveIt instead? And any links for resources to read specifically about moveit and pixhawk will be very helpful.

Thanks!


Originally posted by automate on ROS Answers with karma: 97 on 2016-01-15

Post score: 0


Original comments

Comment by Icehawk101 on 2016-09-21:
Have you gotten any further in this? I am doing something similar

Comment by Nikka on 2017-07-11:
Hi, did you complete your project, I want to do similar kind of project, any suggestion for that ?

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

  1. You have to generate that. You can make a URDF model of the quadcopter or build a transform publisher to get the TF data. For the odometry you can get the imu data from /mavros/imu/data and if you have a px4flow (or knockoff) from /px4flow/raw/optical_flow_rad. I also use laser scan matching to simulate odom data using the lidar. Pass the data through an EKF or UKF (I use robot_localization) to get a combined odometry estimate.

I am planning to use moveit for 3D navigation but have only just started looking into it. If you have gotten any further in this I would like to hear about it.


Originally posted by Icehawk101 with karma: 955 on 2016-09-21

This answer was ACCEPTED on the original site

Post score: 0

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.