Tiny Drones Do Distributed Mapping

Sending teams of tiny drones to explore areas and structures is a staple in sci-fi and research, but the weight and size of sensors and the required processing power have long been a limiting factor. In the video below, a research team from [ETH Zurich] breaks through these limits, demonstrating indoor mapping with a swarm of tiny drones without dependence on any external systems.

The drone is the modular Crazyflie platform, which uses stackable PCBs (decks) to expand capabilities. The team added a Flow deck for altitude control and motion tracking, and a Loco positioning deck with a UWB module determining relative distances between drones. On top of this, the team added two custom decks. The first mounts four VL53L5CX 8×8 pixel TOF sensors for omnidirectional LIDAR scanning. The final deck does handles all the required processing with a GAP9 System-on-Chip, which features 10 RISC-V cores running on just 200 mW of power.

Of course the special sauce of this project lies in the software. The team developed a lightweight collaborative Simultaneous Localization And Mapping (SLAM) algorithm which can be distributed across all the drones in the swarm. It combines LIDAR scan data and the estimated position of the drone during the scan, and then overlays the data for the scans for each location across different drones, compensating for errors in the odometry data. The team also implemented inter-drone collision avoidance, packet collision avoidance and optimizing drones’ paths. The code is supposed to be available on GitHub, but the link was broken at the time of writing.

The Crazyflie platform has been around for more than a decade now, and we’ve seen it used in several research projects, especially related to autonomous navigation. Continue reading “Tiny Drones Do Distributed Mapping”

3D Printed Mini Drone Test Gimbal

Drones are a pain, especially mini ones. When you are designing, building (or even reviewing) them, they inevitably fly off in some random direction, inevitably towards your long-suffering dog, hit him in the butt and send him scuttling off in search of a quieter spot for a nap.

[Tristan Dijkstra] and [Suryansh Sharma] have a solution: a mini-drone test gimbal. The two are in the the Networked Systems group and the Biomorphic Intelligence Lab who use CrazyFlie drones in their work, which require regular calibration and testing. This excellent design allows the drone to rotate in three dimensions, while still remaining safely contained. That means I could test the flight characteristics of a drone without endangering my dogs important napping schedule.

Efforts involved attaching a light tether that restricts the drone until we know how the it flies, but what usually happens is that the tether gets trapped in a rotor, or the tether gets tight and the drone freaks out and crashes into the ground.

Using a gimbal is far more elegant, because it allows the drone to rotate freely in three dimensions, so the basic features of the drone can be established before you let it loose in the skies.

The gimbal was designed with the CrazyFlie in mind, but as there’s nothing more exotic holding the craft down than a zip tie, it should work with similarly sized quadcopters.

Continue reading “3D Printed Mini Drone Test Gimbal”

Tiny Drones Navigate Like Real Bugs

When it comes to robotic navigation, the usual approach is to go as technically advanced and “smart” as possible. Yet the most successful lifeforms that we know of follow a completely different approach. With limited senses and cognitive abilities, the success of invertebrates like ants and honeybees lie in cooperation in large numbers. A joint team of researchers from TU Delft, University of Liverpool and Radboud University of Nijmegen, decided to try this approach and experimented with a simple navigation technique to allow a swarm of tiny flying robots to explore an unknown environment.

The drones used were of-the-shelf Crazyflie 2.0 micro quadcopters with add-on boards. Sensors consisted of it’s onboard IMU, simple range finding sensors on a Multi-ranger deck for obstacle detection, and a down pointing optical flow sensor, on a Flow deck, to keep track of the distance travelled.  To navigate, the drones used a “swarm gradient bug algorithm” (SGBA).  Each drone in has different preferred direction of travel from takeoff. When an obstacle encountered, it follows the contour of the obstacle, and then continues  in the preferred direction once the path is clear.  When the battery drops to 60%, it returns to a wireless homing beacon. While this technique might not be the most efficient, it has the major advantage of being “lightweight” enough to implement on a cheap microcontroller, an STM32F4 in this case. The full research article is available for free, and is a treasure trove of information.

The main application researchers have in mind is for search and rescue. A swarm of drones can explore an unstable or dangerous area, and identify key areas to focus rescue efforts on.  This can drastically reduce wasted time and risk to rescue workers. It is always cool to see complex problems being solved with simple solution, and we are keen to see where things go. Check out the video after the break. Continue reading “Tiny Drones Navigate Like Real Bugs”

Hacked RC Transmitters Control All The Things

If you have lots of RC creations about, each with their own receiver, you’ll know that the cost of a new one for each project can quickly mount up – despite RC receivers being pretty cheap these days. What if you could use a NRF24L01+ module costing less than $3?

That’s just what [Rudolph] has done for his Hackaday Prize entry, rudRemoteThough many people already spin their own RC link with the NRF24 modules, this sets itself apart by being a complete, well thought out solution, easily scalable to a large number of receivers.

The transmitter can be made of anything to hand; stick an NRF24 module and Teensy inside, some gimbals if needed, and you have a rudRemote transmitter. Gaming controllers, sandwich boxes and piles of laser cut parts are all encouraged options. [Rudolph] used some 40-year-old transmitters for his build – on the outside they remain unchanged, apart from a small OLED and rotary encoder for the function menu. The gimbal connections are simply re-routed to the Teensy I/O.

The protocol used is CRTP (Crazy RealTime Protocol); this is partly because one of the things [Rudolph] wanted to control is a CrazyFlie quadcopter. It’s a protocol that can easily be used to control anything you like, providing it fits into the 29-byte payload space. The CrazyFlie only uses 14 bytes of that, so there’s plenty of headroom for auxiliary functions.

We’d be interested to see the latency of this system – we’ve some surprising results when it comes to measuring cheap RC transmitter latency.

Controlling Quadcopters With Wireless Mouse Dongles

Last week we gave away a few Crazyflie 2.0 quadcopters to some cool Hackaday Prize entries. This quadcopter ships with the intention of being controlled by your smartphone. But it can also be controlled by a PC with USB dongle and an nRF24LU1+ SOC. [ajlitt] didn’t figure out he wanted the USB dongle (the Crazyradio) that can control this quad until after he used his gift code to claim his Crazyflie quad. No matter; the dongles for Logitech wireless keyboards and mice use the same radio as the Crazyflie and can be modded to make this quad fly.

The board inside the Logitech unifying receiver is a simple affair, with some pads for the USB connector, a crystal, the nRF24LU1+ radio module, and a few passives. To get this radio chip working with his computer, [ajlitt] simply needed to break out the SPI pins and wire everything to a Bus Pirate.

Getting the Crazyradio firmware onto this proved to be a little harder than soldering some magnet wire onto a few pins. The chip was first flashed without a bootloader, a full image with the bootloader was found, after wrangling a single byte into place, [ajlitt] had a working Crazyflie radio made from a wireless mouse dongle. The range isn’t great  – only 30 feet or so, or about as far as you would expect a wireless mouse to work. Excellent work, even if [ajlitt] is temporarily without a mouse.

The Crazyflie 2.0 is available from the Hackaday Store, along with the add-ons if you don’t want to hack your own.

Crazyflie Control With Leap And Kinect

crazieFlie03

The gang at Bitcraze is at it again, this time developing Leap Motion control for their Crazyflie quadcopter, as well as releasing a Kinect-driven autopilot proof of concept. If you haven’t seen the Crazyflie before, you may not realize how compact it is: 90mm motor to motor and only 19 grams.

As far as we can tell, the Crazyflie still needs a PC to control it, so the Leap and Kinect are natural followups. Hand control with the Leap Motion is what you’d expect: just imagine your open palm controlling it like a marionette, with the height of your hand dictating thrust. The Kinect setup looks the most promising. The guys strapped a red ball to the Crazyflie that provides a trackable object against a white backdrop. The Kinect then monitors the quadcopter while a user steers via mouse clicks. Separate PID controllers correct the roll, pitch and thrust to reposition the Crazyflie from its current coordinates to a new setpoint chosen by a click or a drag. Videos of both Leap and Kinect piloting are below.

Tight on cash but still want to take to the skies? We have two rubber-band-powered devices from earlier this week: the Ornithopter and the hilariously brilliant GoPro Slingshot.

Continue reading “Crazyflie Control With Leap And Kinect”