THP Semifinalist: Autonomous Recharging For Multirotors

Even with visions of quadcopters buzzing around metropolitan areas delivering everything from pizzas to toilet paper fresh in the minds of tech blogospherites, There’s been a comparatively small amount of research into how to support squadrons of quadcopters and other unmanned aerial vehicles. The most likely cause of this is the FAA’s reactionary position towards UAVs. Good thing [Giovanni] is performing all his research for autonomous recharging and docking for multirotors in Australia, then.

The biggest obstacle of autonomous charging of a quadcopter is landing a quad exactly where the charging station is; run of the mill GPS units only have a resolution of about half a meter, and using a GPS solution would require putting GPS on the charging station as well. The solution comes from powerful ARM single board computers – in this case, an Odroid u3 – along with a USB webcam, OpenCV and a Pixhawk autopilot.

Right now [Giovanni] is still working out the kinks on his software system, but he has all the parts and the right tools to get this project up in the air, down, and back up again.


SpaceWrencherThe project featured in this post is a semifinalist in The Hackaday Prize.

20 thoughts on “THP Semifinalist: Autonomous Recharging For Multirotors

  1. Using GPS wouldn’t require a receiver to be on the ground station, only that the ground station be at known/preprogrammed co-ordinates. Given the types of bodies deploying drones for delivery/mapping services this argument seems flimsy. Getting Amazon or Dominoes to lease permanent charging stations seems like the more reliable solution than having mobile stations.
    Even for mapping a farm or property lines the land would be surveyed in from survey pins of accurately known lat/long, again weakening the argument.

    Another question: Why does the computer vision need to be on the drone? The base station has comparatively unlimited power(maybe tied to the grid), and is not concerned with weight restrictions. Using some combination of GPS/radionav to get the drone close and then let the base station take over docking with fine grained controls.

    Lighter drones have bigger payloads. The drive to refine low-power computer vision is a worthy project in itself though.

    1. Hi this is my project, thanks for the thoughts. Firstly I would like to clarify I do not mention using a GPS on the landing pad as my solution ,but it is one way you could gather the GPS coordinates of the landing pad.

      You can try to land using the known GPS location of the landing pad (either surveyed in or gathered from a second GPS sensor) ,but this is not a viable solution. The low cost, lightweight GPS sensors on multirotor UAVs are fairly inaccurate and landing using them is accurate to a meter at best (sometimes even more depending on how many satellites are visible and a number of other factors). So even if you had a nice DGPS system and accurately surveyed in your target the multirotor UAV can’t measure its position accurately enough or quickly enough (GPS update rates are quite slow) to land reliably.
      This is why an alternative approach has to be used and I have chosen to use onboard closed loop vision based control.
      A benefit of having the ability to land on mobile stations means there is a wider type of possible missions that the system is capable of achieving. One such mission is my long term goal of having a swarm of multirotor UAVs working in conjunction with ground vehicles for a number of longer term missions.

      I chose to make the system use onboard processing to remove the reliance on external systems and to improve the quality of the landing. An issue with external position estimation is unless it has very low latency of communication, high accuracy and high measurement rate it isn’t suited for control. There are systems who do follow this offboard approach ,but they tend to operate indoors, under nice controlled conditions and with expensive systems such as VICON.

      1. Hi Giovanni,
        Have you seen the Pixy Camera? It seems that would be a great solution…
        http://charmedlabs.com/default/?page_id=211
        I used one on my quad playing around with a beaglebone black acting in place of the radio using one of adafruits pwm boards https://www.adafruit.com/product/1429… works great..
        I even did some testing using giant QR Codes for the quad to locate home base with.. I’d be happy to share my work if you’re interested…

        1. Hi,

          Thank you for the suggestion. I have seen the pixy camera ,but I decided against it because colour tresholding based approaches tend to not work nicely outdoors which can have harsh lighting conditions. Also having a separate vision computer allows me to test a variety of algorithms for my vision and also use the computer for other tasks such as mission planning, state estimation etc. The pixy is a very cool piece of kit ,but unfortunately not entirely suitable for my requirements.

          That sounds like a cool project and im happy to have a look if you want to share :) So you used the beaglebone and that adafruit board in place of a separate flight controller?

      2. The first part of my post was more directed towards some assumptions/implications made in the article.

        Thanks for attempting to clarify the reasons behind your decisions. What sort of latency do you need to land on a moving platform? Skilled RC pilots can do some impressive aerobatics and their latency is probably around 50-100ms(~22ms for 72MHz less if you use 2.4GHz, another 50+ for reaction times). I guess a consequence of this is your control code must be optimized more than if it were run onboard.
        I approached this story with only the near term target of landing on a charging station. I didn’t consider using the computer vision to land on objects not a charging station which seems to be your next goal.
        Best of Luck!

        1. While a skilled pilot may be able to fly well even with 50-100ms latency an automated system needs much lower latency in order to function well. The skilled pilot has (possibly) years of experience in predicting how the plane/helicopter/quad will act and this knowledge is hard to replicate in an automated system. As for what kind of latency you would require, lower is obviously better, but I would aim for at 40HZ for the feedback loop if possible. This is based on working with motion tracking systems and quadcopters indoor.

      3. Great approach to this problem. I had envisioned the same thing but I think yours is better as I was expecting to use black/white camera trying to ‘center and orient’ on the typical ‘H’ value. But I see your use of color would work even better. Thank you for making my project even better with such a simple approach.

  2. I think to make quads have enough flight time to use them for pizza delivery etc that people are going to need to investigate better energy sources than the lipo packs people are using right now though. Even with the bigger packs flight times doing anything but hovering on the spot aren’t that great… and you can’t just keep loading on the packs. It’s fine if you’re flying a quad for fun as ten or twenty minute bursts are enough.

          1. 500g of payload takes the flight time down considerably. I’m not saying it’s impossible. I’m saying they will probably need better energy sources than the current batteries we have to make it workable and worthwhile.

      1. 3 minutes straight line of your whole town. So it needs 6 minutes worth of flight time on a very good day. You need to factor in that you might not be able to fly in a straight line from point A to B and you might have wind etc to contest with…

          1. Yeah, I can totally see commercial quads with a margin of error on batteries of around <10% or multiple kilograms in batteries being allowed to operate in urban areas. Take a look at the things people built for hobbyking's beer lift and ask yourself if you want those size and weight of multirotors flying over your head.
            Also keep in mind that to charge current batteries takes 3 or 4 times the runtime you get out of them.

  3. How about taking all the precision and finesse out of the landing? It might be possible to design some kind of catch chute that you can just line the quad up with quite roughly then cut the power and drop in. Guide rails and cushioning could catch the quad and end up with it centred just where you want it. You could catch a load of quads really quickly like that.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.