†Corresponding Authors
[TOC]
You should have basic knowledge of the standard quadrotor's electronic system.
🧰Component | 📏 Specification | 🔗 Purchase Link |
---|---|---|
Quad-Fisheye Camera Set | ||
OAK-FFC-4P | Camera control board | Official / Taobao |
B0335 (OV9782) | Camera modules (Fisheye lens FOV larger than 210 degrees) | Official / Taobao |
Camera cables | Customized | Camera cable SCH |
Onboard computer | ||
Jetson Orin Nx | ||
Jetson Orin Nx carrier board | DM | |
Jetson Orin Nx radiator | ||
Jeston Orin Network card | ||
2230 SSD | ||
Intel AX200 | ||
Flight platforms (6S) | ||
Nxt-FC | Project Page | MicoAir / Taobao |
Flight frame | Customized | Fusion360 |
Protector | Customized / Oddity RC XI35 protector | Fusion360 / Oddity RC |
Motors | 2204 1750KV/ 1804 2450KV | |
6S Battery |
Our latest design can be accessed by Fusion360.🔗Link Access code: hkustUAV
ROS wrap driver 🔗oak_ffc_4p, which contains hardware information, ROS1 driver and test tools.
Calibration tool 🔗 quater-calib
Environment Info
We suggest you follow these settings to avoid conflict (especially CUDA and TensorRT).
We open-source hardware designs at 🔗NXT-FC. Nxt-FC supports PX4 and Ardupilot firmware.
Follow the instructions for setting up the Nxt-FC part to configure your flight controller.
The PX4 parameter of OmniNxt can be downloaded from Onedrive.
Our Omni-VINS and Omni-Depth are developed from D2SLAM. Since building the Docker images on the local machine(Jetson Orin) usually takes a long time, we suggest you pull the images from the Docker Hub. If you want to build the Docker image on your local machine, follow the instructions [Build Docker Images On Local Machine](#Build Docker images in local machines).
the docker images structure is as follows:
git clone --branch pr_fix_main https://github.com/HKUST-Aerial-Robotics/D2SLAM.git
cd ./D2SLAM/config/quadcam_drone_nxt_tmp
If you have already calibrated your quad fisheye camera set, you can simply replace the files with the same name, which includes:
./start_docker.sh is under the ./D2SLAM directory.
Modify the following parameters with the absolute path under your local host environment.
Then run with the following command under the D2SLAM directory (very important, this will map your D2SLAM dir into the container):
./start_docker.sh 1
run all algorithm modules together (Omni-VINS & Omni-Depth)
## you should under /root/swarm_ws/
source ./devel/setup.bash
roslaunch d2vins quadcam.laucnh
Only launch Omni-VINS. Please remove the nodes in the red box
source ./devel/setup.bash
roslaunch d2vins quadcam.laucnh
Only launch Omni-Depth
source ./devel/setup.bash
roslaunch quadcam_depth_est depth-node.launch
[Notice] If you are running Omni-VINS and Omni-Depth for the first time, the initialization process of these two modules would be a little bit long because of the building of the inference engine.
If everything works well, you will see
which means Omni-VINS(D2VINS) initialized normally.
Omni-Depth
cd /D2SLA/docker
make jetson_orin_base
cd /D2SLA/docker
make jetson_orin
We highly suggest you refer to Fast-Lab's PX4 controller PX4-Control
We also provide our yaw-rotation-free version of Fast-Lab's PX4 controller PX4-Control.
Please cite ZJU-Fast-Lab if these modules are useful for your research and project.
We modified some of the strategies in the ego-planner. Our version is here ego-planner-omni-modify
Please cite ZJU-Fast-Lab's ego-planner if these modules are useful for your research and project.