Fast-Drone-250
An open-source 250mm autonomous quadrotor drone that flies in unknown environments and avoids obstacles using VINS visual-inertial odometry and EGO-Planner.
- Drone
- No license: all rights reserved by the creator
- ROS
- 3D printable
Suggested by Robotheca, created by @ZJU-FAST-Lab (opens in a new tab), from github.com/ZJU-FAST-Lab/Fast-Drone-250 (opens in a new tab). Pinned to commit 8ff6427 (opens in a new tab).
- Hardware license
- No license
- Software license
- No license
- Commercial use
- Unknown
No license is stated for part of this robot.
The creator chose the hardware and software licenses on Robotheca; the repository has no license file for them yet.
Some folders have their own license: src/planner/drone_detect/ (BSD-3-Clause), src/realflight_modules/px4ctrl/ (GPL-3.0-only), src/realflight_modules/realsense-ros/ (Apache-2.0), src/realflight_modules/VINS-Fusion/ (GPL-3.0-only), src/utils/DecompROS/ (BSD-3-Clause).
This repository contains executable files that Robotheca doesn't check. Only run them if you trust the creator.
Which files (18 scripts, 3 firmware images)
- shfiles/checkcpu.sh (opens in a new tab)
- shfiles/land.sh (opens in a new tab)
- shfiles/make.sh (opens in a new tab)
- shfiles/record copy.sh (opens in a new tab)
- shfiles/record.sh (opens in a new tab)
- shfiles/rspx4.sh (opens in a new tab)
- shfiles/sys.sh (opens in a new tab)
- shfiles/takeoff.sh (opens in a new tab)
- src/realflight_modules/px4ctrl/thrust_calibrate_scrips/record.sh (opens in a new tab)
- src/realflight_modules/VINS-Fusion/docker/run.sh (opens in a new tab)
- src/realflight_modules/VINS-Fusion/support_files/brief_k10L6.bin (opens in a new tab)
- src/utils/pose_utils/build/catkin_generated/env_cached.sh (opens in a new tab)
- src/utils/pose_utils/build/catkin_generated/installspace/env.sh (opens in a new tab)
- src/utils/pose_utils/build/catkin_generated/installspace/setup.bash (opens in a new tab)
- src/utils/pose_utils/build/catkin_generated/installspace/setup.sh (opens in a new tab)
- src/utils/pose_utils/build/catkin_generated/setup_cached.sh (opens in a new tab)
- src/utils/pose_utils/build/CMakeFiles/2.8.12.2/CMakeDetermineCompilerABI_C.bin (opens in a new tab)
- src/utils/pose_utils/build/CMakeFiles/2.8.12.2/CMakeDetermineCompilerABI_CXX.bin (opens in a new tab)
- src/utils/pose_utils/build/devel/env.sh (opens in a new tab)
- src/utils/pose_utils/build/devel/setup.bash (opens in a new tab)
- and 1 more
Photo and 3D model
3D model loaded from the original files on GitHub at 8ff6427, under NONE. View the original files from GitHub (423 KB) (opens in a new tab)
- Payload
- 1.8 kg
What it can do
Written by Robotheca from the project's documents.
- Flies autonomously in unknown environments, exploring and avoiding obstacles using the ego-planner trajectory planner.
- Supports a flight mode where the operator selects target points in Rviz, and a waypoint tracking mode.
- Runs visual-inertial odometry (VINS-Fusion) for localization using the depth camera and IMU.
- Can be flown manually with a radio controller (AT9S) in stabilized mode, and can switch to program control via a channel.
- Builds a grid occupancy map from the depth camera for obstacle avoidance.
Bill of materials
This repository has no parts list Robotheca can read yet.
Build guide
The creator's steps, each with its instructions.
- 1Course introduction
- 2Solder the power set
- 3Install and wire the flight controller
- 4Configure the flight controller and test flight
- 5Install the onboard computer and sensors
- 6Install Ubuntu 20.04
- 7Set up the onboard computer environment
- 8Install common experiment and debugging software
- 9Ego-Planner code structure and parameters
- 10VINS parameter setup and extrinsic calibration
- 11Ego-Planner flight experiments
The creator's guide is in the repository. It has no license, so all rights stay with the creator: Robotheca doesn't show it here or translate it, and gives its own notes about the robot instead.
Read the creator's guideAsk the creator on GitHub (opens in a new tab)Wiring and electronics
Notes written by Robotheca from the project's documents.
Main parts
- Flight controller running PX4 firmware v1.11.0 (px4_fmu-v5 board) with dshot ESCs and motors.
- Electronic speed controllers (ESCs) driving the four motors, using the Dshot600 protocol.
- Intel RealSense depth camera (D435/D435i-class) providing infrared stereo images and depth.
- Onboard computer (Intel NUC) running Ubuntu 20.04 and ROS Noetic, powered by a 4S flight battery.
- 4S aircraft battery supplying power, with a 5V voltage regulator module for low-voltage parts.
- Radio controller receiver (AT9S) for manual control and a kill-switch channel.
Connections
- ESC signal wires must be connected to the flight controller in the correct order; the Dshot outputs go on the A-port outputs.
- The flight controller connects to the onboard computer over a serial/USB link (typically /dev/ttyACM0) through MAVROS.
- The RealSense camera connects to the onboard computer over a USB 3.x port (blue port).
- A 5V voltage regulator module powers low-voltage components from the main battery.
- Silicone DuPont wires are recommended for connections because standard DuPont wires can make poor contact.