-
Notifications
You must be signed in to change notification settings - Fork 58
Introduction
This repository contains a modified version of DJI Onboard ROS SDK (3.2). The purpose of these packages is to allow DJI Micro Aerial Vehicle (MAV) platforms to interface easily with generic frameworks for state estimation and control, allowing users to use their own software to communicate with DJI systems. Through this, we hope to increase their usability for practical and research applications, as well as share the knowledge we acquire regarding system identification with the community.
Features:
- Increased Baudrate to 921600 bps from 230400 in order to cope with higher IMU publishing and sending virtual command rates (currently 100Hz, previously 50Hz).
- Ability to send control commands (roll, pitch angles, yaw rate and vertical velocity) directly via serial port to the N1 autopilot (original DJI M100 autopilot) in order to avoid using ROS service calls.
- Note that ROS services should not be used for continuous command data streams as suggested by ROS communication patterns. (There are various reasons behind this, but most importantly it's a blocking call!).
- IMU and odometry message publishing (via ROS topics) using the REP 103 and REP 105 guidelines.
- Fixes to buffer overflow errors.
- Several further additions, such as deadzone recovery and auto-trim compensation.
Notably, our framework interfaces with software packages developed by the Autonomous Systems Lab of ETH Zurich, such as:
A description of our system using these elements, can be found here.
Contributors/Maintainer of this repo:
- Inkyu Sa ([email protected])
- Mina Kamel ([email protected])
- Marija Popovic ([email protected])
- Raghav Khanna ([email protected])
Affiliation: Autonomous Systems Lab, ETH Zurich
If you use this work in an academic/research context, please cite the following publication(s):
- I. Sa, M. Kamel, R. Khanna, M. Popovic, J. Nieto and R. Siegwart, "Dynamic System Identification, and Control for a cost-effective open-source VTOL MAV", 2017, Field of Service Robotics. (PDF)
@ARTICLE{2017M100Ctrl,
author = {{Sa}, I. and {Kamel}, M. and {Khanna}, R. and {Popovic}, M. and {Nieto}, J. {Siegwart}, R.},
title = "{Dynamic System Identification, and Control for a cost effective open-source VTOL MAV}",
archivePrefix = "arXiv",
eprint = {1701.08623},
primaryClass = "cs.RO",
keywords = {Computer Science - Robotics},
year = 2017,
month = Jan
}
- I. Sa, M. Kamel, M. Burri, M. Bloesch, R. Khanna, M. Popovic, J. Nieto, and R. Siegwart, "Build your own visual-inertial odometry aided cost-effective and open-source autonomous drone", 2017, IEEE Robotics & Automation Magazine. (PDF)
@article{sa2017build,
title={Build your own visual-inertial odometry aided cost-effective and open-source autonomous drone},
author={Sa, Inkyu and Kamel, Mina and Burri, Michael and Bloesch, Michael and Khanna, Raghav and Popovic, Marija and Nieto, Juan and Siegwart, Roland},
journal={arXiv preprint arXiv:1708.06652},
year={2017}
}
We would be very happy and are looking forward to hearing about your experiences with our modified SDK. We hope it helps you somehow!