justinnuwin / NGCP-Capstone-UGV

0 stars 0 forks source link

Trajectory Planning #10

Open justinnuwin opened 4 years ago

justinnuwin commented 4 years ago

We need a way to drive the car to test the sensor fusion

justinnuwin commented 4 years ago

Helpful read on MavLink architecture for trajectory and pathing

https://mavlink.io/en/services/trajectory.html

justinnuwin commented 4 years ago

Helpful ROS tutorial on obstacle avoidance.

https://wiki.ros.org/teb_local_planner/Tutorials/Obstacle%20Avoidance%20and%20Robot%20Footprint%20Model

justinnuwin commented 4 years ago

Pathing ROS package we could use: http://wiki.ros.org/global_planner

Parent: http://wiki.ros.org/navigation?distro=melodic

gencurio commented 4 years ago

Note: The Pixhawk PX-4 will need to be set into "Offboard mode" to support receiving waypoint from a ROS node while navigating on a desired trajectory path.

Source: https://docs.px4.io/v1.9.0/en/computer_vision/obstacle_avoidance.html

gencurio commented 4 years ago

Potential ROS avoidance node that uses a gazebo simulation to guide drones: https://github.com/PX4/avoidance

gencurio commented 4 years ago

Shifting focus to using ROS NAV for the trajectory planning since it is natively supported. The goal is a to write a system with the following specifics: Inputs: Occupancy grid (current position, obstacles, and final destination included) Outputs: Obstacle-avoiding waypoints towards the desired destination

gencurio commented 4 years ago

Source: https://youtu.be/JgP2X-ARj-A Descrip: Tutorial on using a Ros Launch file to setup localization of a robot to a pre-existing global map in Rtab Map. Also shows how to use the GUI to manually add “goals” (waypoints) for a robot. I believe this would be useful to come back to at some point when writing a ros launch file for our Package that allows localization to happen.

andy805 commented 4 years ago

hey guys i think this might be our answer to our problems. http://wiki.ros.org/rtabmap_ros/Tutorials/StereoOutdoorNavigation

gencurio commented 4 years ago

Andy's link includes an example move_base launch file that was really helpful. After installing navigation for melodic using apt-get, we made some changes to the move_base.launch file and ran in to an warning stating that the map tf node path has a "/". Googling the warning led us to this page with our exact error: https://docs.nvidia.com/isaac/isaac/packages/ros_bridge/doc/ros_bridge.html

gencurio commented 4 years ago

Note in order to run the move_base launch file in bugv_2dnav, you must first start a mapserver by calling rosrun map_server map_server . We have added a blank_map.yaml into the /bugv_2dnav package for this.

gencurio commented 4 years ago

Note: if we force the bugv_rtab map to publish rplidar scans to the /scan topic, the navigation stack brings up a critical error that it found a laser_scan on the /scan topic when it was expecting a point_cloud. We've changed the bugv_rtab launch file back to its original configuration, where rplidar node publishes to /rplidar/scan

justinnuwin commented 4 years ago

Fixed the unconencted tf tree warning. See these links for more info on the standard tf frames:

https://github.com/googlecartographer/cartographer_ros/issues/300 https://www.ros.org/reps/rep-0105.html

gencurio commented 4 years ago

Look in this thread for a small tutorial on using mavros to control a rover.

https://community.emlid.com/t/how-to-get-rover-to-move-via-mavros-which-topics-to-publish-to-what-mode/7170/11

gencurio commented 4 years ago

An article on using MAVROS to fly a drone in a constantly updating oval trajectory. https://404warehouse.net/2016/08/10/trajectory-following-with-mavros-on-raspberry-pi/