Git Product home page Git Product logo

pointcloudtraj's Introduction

What's New: Fix some bugs related to compile and missing dependencies.

pointcloudTraj

1.Introduction

We present a framework for online generating safe and dynamically feasible trajectories directly on the point cloud, which is the lowest level representation of range measurements and is applicable to different sensor types. We online generate and refine a flight corridor which represents the free space that the trajectory of the quadrotor should lie in. We represent the trajectory as piecewise Bézier curves by using the Bernstein polynomial basis and formulate the trajectory generation problem as a convex program. By using Bézier curves, we can constrain the position and kinodynamics of the trajectory entirely within the flight corridor and given physical limits. For details we refer readers to our paper.

Authors:Fei Gao and Shaojie Shen from the HUKST Aerial Robotics Group.

Disclaimer

This is research code, any fitness for a particular purpose is disclaimed.

Related Paper

  • Flying on point clouds: Online trajectory generation and autonomous navigation for quadrotors in cluttered environments, Fei Gao, William Wu, Wenliang Gao, Shaojie Shen, Journal of Field Robotics (JFR), 2018.

  • Online quadrotor trajectory generation and autonomous navigation on point clouds, Fei Gao, Shaojie Shen, IEEE International Symposium on Safety, Security, and Rescue Robotics (SSRR), 2016: 139-146. Best Conference Paper Award

Video of this paper can be found at:

video

If you use this planning framework for your academic research, please cite our related paper.

@article{gao2018flying,
  title={Flying on point clouds: Online trajectory generation and autonomous navigation for quadrotors in cluttered environments},
  author={Gao, Fei and Wu, William and Gao, Wenliang and Shen, Shaojie},
  journal={Journal of Field Robotics},
  year={2018},
  publisher={Wiley Online Library}
}

2.Prerequisities

  • Our testing environment: Ubuntu 16.04, ROS Kinetic.
  • We use mosek for solving conic programming, which is the formulation of the proposed trajectory generation method. To use mosek, you should approve an academic license in here. The academic license is free and is easy to approve. Then create a folder named 'mosek' in your home directory and put your license in it. All header and library files are already included in this repo, so you don't need to download mosek again.
  • The package 'odom_visualization' depends on armadillo, which is a c++ linear algebra library. This package is not necessary and only used for visualization. You can install 'armadillo' by:
  sudo apt-get install libarmadillo-dev 

3.Build on ROS

Clone the repository to your catkin workspace and catkin_make. For example:

  cd ~/catkin_ws/src
  git clone https://github.com/HKUST-Aerial-Robotics/pointcloudTraj.git
  cd ../
  catkin_make
  source ~/catkin_ws/devel/setup.bash

5.Usage

  • Use the command following to run a demo of the drone's planning. A target coordinate is given in the launch file.
roslaunch pointcloudTraj clean_demo.launch
  • If you want to try an interactive way to send commands to the drone, you have to install a 'rviz_plugin' from plan_utils. Then launch the simulation.launch:
roslaunch pointcloudTraj simulation.launch

After that, in rviz, click 'Panels -> tools -> +' and select the plugin 'Goal3DTool'. If you have successfully compiled all packages from plan_utils, now you can see 3D Nav Goal in the tools panel.

We use 3D Nav Goal to send a target for the drone to navigate. To use it, click the tool (shortcut keyboard 'g' may conflict with 2D Nav Goal), then press on left mouse button on a position in rviz, click right mouse button to start to drag it slide up or down for a targeting height (don't loose left button at this time). Finally you loose left mouse button and a target will be sent to the planner, done. solving second-order cone program(SOCP).

6.Licence

The source code is released under GPLv3 license.

7.Notes

  • I would complete the readme soon.
  • The code is written for research purpose.

pointcloudtraj's People

Contributors

ustfgaoaa avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pointcloudtraj's Issues

Ubuntu18.04 and ROS Melodic

Hi! There is a question I want to ask:
I will use Ubuntu18.04 and ROS Melodic to test the code. Will there be compatibility issues?

No planning is being done in clean demo simulation launch

By the first installation of the hole packages, the simulation worked. But then i needed the reinstall the ubuntu 20 interface, and when i tried to reinstall again the packages and i run the simulation. The Drone is stuck in the start position . There is no trajectory planning . the drone did not move . how can i solve it ?

How to start the planning process?

Hi,

Firstly, thanks for sharing the code!

I run the command: roslaunch pointcloudTraj clean_demo.launch , then the rviz shows the red little drone and the map with obstacles. But I am wondering how to start the planning process in the clean_demo?

Thanks a lot!

Best,
Zheng

3D lidar and map

Hello author, thanks for your great job.

Is it possible to use a 3D lidar in this project, and should I build a map from 3D SLAM before running this project?

No planning is being done in simulation.launch

I set the 3D goal using the 3D goal button in rviz. It is set but after that, there is no planning being done. Instead, I am getting this error. Can you help me resolve it?

3D Goal Set
[ INFO] [1596520725.637016470]: Setting goal: Frame:map, Position(-17.302, -16.764, 0.960), Orientation(0.000, 0.000, 0.000, 1.000) = Angle: 0.000

QSpiApplication::keyEventError "org.freedesktop.DBus.Error.NoReply" "Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken."

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.