Hacker News new | past | comments | ask | show | jobs | submit login
Throwing and catching an inverted pendulum with quadrocopters (robohub.org)
619 points by eguizzo on Feb 21, 2013 | hide | past | favorite | 133 comments



I keep trying to think of practical implications for this technology, but every time I do, I just end up daydreaming about robot circuses.


Balancing an inverted pendulum is one of the classic "hard" problems in control theory. (At least, in undergrad.) Not only has he solved that on a flying platform, but he's going to the next levels.

Tossing sticks around between flying robots isn't inherently useful, but it means they have a foundation for further, more complex work.


well you can do a single inverted pendulum pretty easily with a PID controller, it's the double inverted pendulum that is hard. But anything on a quadrocopter is really hard.


A free-flying small quadcopter is incredibly difficult as on-board sensors generally consist of noisy, drift-prone MEMS gyros and accelerometers, small and interference-sensitive magnetometers, bad civilian GPS, and barometers that are prone to environmental fluctuation. In addition, a free-flying quadcopter requires either complete autonomy or an RF link with some range or reliability, which generally requires a good amount of power.

But these aren't free-flying quadcopters; the researchers used a very high-end motion capture rig and a PC in close proximity, making everything a lot less difficult - with motion capture, positional accuracy is quite easy and sensor noise is easy to correct for, and with enough money someone else has already solved the latency issues in motion-capture for you.

I certainly agree this video is impressive but I also believe lab-only motion capture-based demos skew the hobbyist and public vision of what small quadcopters can do.


Did you see the show from Cannes last year?

http://www.youtube.com/watch?v=cseTX_rW3uM&t=50

I don't know how much of that was motion-capture, it seems like a quite difficult environment to have done that...


Read the video description: "Thanks to Vicon for the tracking system" - the same system used in this juggling video, as far as I know.

I think all of the KMel Robotics projects (at least all of the ones I've seen on video, like the Bond theme) have used the same basic design, which involves a Vicon system.


I wonder how they get it to work in a dark room with some _very_ bright moving lights? IR with really good visible light filters maybe?


I think so. Like most motion-capture systems, Vicon systems use high-frequency strobe lights to illuminate markers being tracked. IR strobing is definitely an option for these systems. I, too, am quite impressed that they worked in that situation, as the range on IR strobes is usually much worse than NIR and especially red ones. I suppose with the way the lighting is set up the cameras could have been in relatively close proximity behind the stage.


All the issues you mentioned ring a bell. Is there any progress in the hobbyist area on developing inline smoothing filters and adaptive kalman filters to clean the signals and compensate for drifts using all the instrumentation readings available?


I think Paparazzi probably have the most interesting adaptive control algorithms and sensor fusion code, although their community is perhaps smaller than other open-source flight control solutions: http://paparazzi.enac.fr/wiki/Main_Page . I guess they're not strictly hobbyist since as a university project, various contributors also publish several papers a year.

Pretty much everyone in the open-source arena (Ardupilot, OpenPilot, Paparazzi, PARIS/WiiCopter) experiments with various filtering approaches and sensor fusion strategies.

One interesting challenge is that more sensors increases cost and hobbyists are often cash-strapped (especially after crashing a lot!), so sensor fusion isn't as heavily pursued as adaptive control and basic filtering strategies for 6-axis input.


Ah, thanks for that.

I had a lot to do with the question of "where the hell are we & how the hell do we get to where we should be" in real time and to fairly tight tolerances (at scale) - sadly/luckily at the time it was left to the pilot to follow the blinking light rather than deal with the mechanics of moving control surfaces directly.

The main thrust of surveys like [1] though was enhanced final product accuracy through sensor fusion strategies, using calibration flights to tune filters to remove induced magnetic field effects from aircraft headings, using lidar, microwave, accelerometers, differential ground GPS, temperature, pressure, and humidity to get good estimates for actual height clearances, estimates for the mass of air column, etc, etc, blah, blah, old guy stuff.

That's a single survey of many, performed over decades, and it was interesting in the evolution of processing to watch it move from post processing to in line processing. Which of course prompted the question.

The paparazzi (seriously france? this is for drone RC craft to snap pics of celebrity boobs?) project pages look interesting, so I'll dive into those.

[1] Fiji, 1997 "A combination of helicopter and fixed wing aircraft was used to fly the survey with a total of 160, 000 line kilometers of data acquistion (~80,000km per aircraft type)"

http://webcache.googleusercontent.com/search?q=cache:http://...


Occasionally, quadcopters surprise people and seemingly inexplicably do hard things without trying:

http://diydrones.com/profiles/blogs/why-doesnt-the-ball-fall...


You can only control a inverted pendulum using a PID if it's near one of its equilibrium points. You need a linearized model of the dynamics and this is usually done using the small angle aproximation for the sine. I don't think they are using a PID controller for the pendulum in that video.


Oh, you're right. I was thinking of the double inverted pendulum.


actually you can control a single inverted pendulum with an on/off controller that is fast enough...


Indeed, the inverted pendulum is a textbook exercise. This is how cranes work: you don't want the heavy thing at the end of the cable to swing. This is how helicopter-cranes work too, but with added wind. They almost look as if they were nailed to the sky: the only trick is to have fast sensors, which are a given for literally decades now.

The only change is that sensors are manufactured in such large quantities, that they are so cheap that they are omnipresent (ie. almost every phone -- inconceivable decades ago). Quadcopters are also more stable by design than one would think (easier to stabilize than conventional ones).


I'd like to see an aerial battle-bots event. Imagine a giant transparent cube or orb 'stadium', with entry points for opposing fleets. There might be capture-the-flag or last-man-standing victory conditions, and a variety of units, perhaps including dirigibles.


> There might be capture-the-flag

How about "Transport the flag?" Or how about a bunch of flags? The other team is allowed to try and disrupt your transportation as well.


I want them to throw some sort a water-balloon like device at each other and have them try to gently catch it. Except this balloon explodes with fire instead of water if it can't catch it softly.


Capture the flag generally implies "transport the flag."


I was going for something like the economy in StarCraft. You have a stream of poles shot into the arena from catapults, and scoring is based on how many get transported back to each team's goal. (Minus the exponential increase, though.)


I can't read this and not think Quidditch-minus-Snitch.


Quadditch! Man, forget the Robocup (http://www.robocup.org/), I would watch the hell out of a Quadditch tournament.


You could use a little copter as the snitch.


In the eternal words of HPMOR!Harry,

"And then whichever Seeker gets lucky swoops in and grabs the Snitch and makes everyone else's work moot. It's like someone took a real game and grafted on this pointless extra position so that you could be the Most Important Player without needing to really get involved or learn the rest of it. Who was the first Seeker, the King's idiot son who wanted to play Quidditch but couldn't understand the rules?"


I entirely agree that the seeker less variant is a more interesting participant sport. The seeker variant will probably be requested since it is canon, at least at first.


On the other hand, "keeping your eyes moving in a pattern" sounds like a thing that would be interesting for computer vision.


Or "build the biggest tower"?


Build and defend!


Something that popped into my head is a drone tossing a grenade through a window. The military would go nuts over this.


What happens when somebody else develops a drone to catch & return grenades thrown in through your window?


That's where the juggling algorithm comes into play.


(I'm guessing the answer cumulates in anti-drone drones, e.g. air superiority drones. Drone dogfights!)


Or simply stronger windows.


Or a person can use a grenade launcher


Simple. Have the drone hold on to them for long enough that they explode before the others have a chance to return it.


From PBS's Rise of the drones http://www.pbs.org/wgbh/nova/military/rise-of-the-drones.htm...

They profiled a new type of drone which is basically a human-controlled missile. Fly it right into a window!


I'm actually a bit curious why we haven't yet seen any reports of organized crime related hits using cheap drones and explosives.


I'd just make the drones the bomb. Instead of the bomb deploy-er. These things will only get cheaper to produce anyway.


Yep, that's the way it will evolve, I think. Let's say you can mass-produce a drone with anti-tank explosive for $5000. That's much cheaper than guided anti-tank missiles we have now. And they can be designed to only work for 10 minutes, so no good quality materials required.

Make 1000 of them ($5 000 000 is sth like 1 tank), put them in groups of 20 in 50 places where you suspect enemy will attack. Program them to wait with sensors on, when they detect enemy tanks they go up, land on tanks and explode. Tanks usually have much less armor on the top.


Little ones with a small amount of thermite could fly into the gun barrels of main battle tanks.


Presumably the drone is the "grenade" and so performs evasive tactics. Targetted EMP? Or simply has a "balloon" to make it physically unable to exit the window again (bonus that the balloon blocks out natural light inside and seals the explosion magnifying the effect inside, eg for flashbang).


Smart grenades?


It's sad that research like this is first thought to be most of value killing people.


How is that sad? If it's not useful for sex, what else is more important than killing people?


Feeding people.



They are going nuts over this. Just look at DARPA drone research, all the manufacturing contracts, the increased battlefield use, the call for more pilots to be trained...


Lots of scary things are possible as the hardware gets smaller/lighter/stronger and the control algorithms get more sophisticated.

Grenade lobbing is quite pedestrian compared to "precision targeting" in the video here: http://bit.ly/W6DnuO



That's practical enough for me.


You could catch someone falling off a building or airplane with a (suitably large and fast) quadrocopter, I suppose.


Waiter, another beer please.


Please tilt head upward and open mouth.


I heard that you can weaponize unmanned aerial vehicles ...


My first thought was "I want to see these juggle three poles". Nothing wrong with robot circuses.


Construction comes to mind immediately, but yeah, I'm a sucker for those videos.



Building emergency shelters as quickly as possible?

Repairing wind-blown greenhouses in remote places as quickly as possible?

Building a water-pipe as quickly as possible?

Elevator-to-the-stars building mechanic?


lol. I can only come up with gaming applications. flying robots that build stuff(jenga?), air battles.

I recently got a vacuum roomba and I am very entertained just on by watching it work. But I am a geek, probably not everybody is like that.


I couldn't figure out how the quadrocopters were coordinated. Turns out it's a high-speed motion capture. More here: http://www.flyingmachinearena.org/


I've ranted on this topic before [1]. I still think it's a bit dishonest... academics shouldn't promote their work to general audiences without properly denoting caveats. In this case... they're using a ~$50k vicon motion capture system that returns millimeter-precision pose estimates at ~1kHz.

[1] http://www.hizook.com/blog/2012/07/02/being-honest-robot-vid...

Without the vicon and (probably) a central control PC, this feat would be SUPER difficult -- by ~1-2 orders of magnitude. The real problem is: when someone does solve that herculean problem, the general public won't care. They'll just say, "eh, we've seen that before."


Who cares what the public thinks? The funding and eventual commercialization will come from people who do understand what is going on here.

I'm no expert, but I would imagine that research using remote viewing and centralized processing is just a first step that could make it easier to validate particular solutions, which can then be "baked into" self-contained platforms.


It's the same as industry... good PR goes a long way toward acquiring funding. Would you be upset if (say) Apple, Google, or Microsoft's PR machine was intentionally deceiving folks? Academics are even more sensitive to this -- it's why we're always railing against "shitty science reporting."

Also, I suggest reading the article. I am an expert... I greatly admire this group's research(!!), which is why I don't mind giving 'em some tough love. But I also want the group that "cracks the egg" for self-localization and decentralized control to get their deserved limelight. This video makes that less likely.... as evidenced by the fact that so few people in this thread (probably) know what a Vicon is, how it works, or that it's being used.


What if they demo it in a non-laboratory setting, especially one where noisy backgrounds would make vicon impossibly difficult. If I understand correctly, the main problem with vicon is that it can't really be used in a real world scenario, right? So if the demo shows what can be done with the non-vicon solution, it should still be effective.


To first order, this is always true. It should also be noted that computation happens on a desktop computer.


Projects using quadrotors to do things like fly cooperatively and do acrobatics [1,2] will often use high speed motion capture systems with multiple fixed cameras. This decouples the problem of perceiving the environment from the problem of responding to the environment.

More broadly in robotics there are plenty of people working on ground-based robots that don't rely on multiple fixed high speed cameras - self-driving cars [3] would be one example. There are also people working on cooperative ground based robots that don't rely on multiple fixed high speed cameras - for example, the RoboCupSoccer Middle-Size League [4]. There are also people working on quadrotors that don't cooperate/do acrobatics and who don't rely on fixed vision systems - for example people working on autonomous quadrotor mapping [5] and using IMUs and on-robot vision [6].

[1] http://www.youtube.com/watch?v=MvRTALJp8DM

[2] http://www.youtube.com/watch?v=wuSqwb13iw0

[3] http://www.youtube.com/watch?v=uoiJeIb0wBA

[4] http://www.youtube.com/watch?v=cXSGTkI390w

[5] http://www.youtube.com/watch?v=WoMrPKCpWXw

[6] http://www.youtube.com/watch?v=QKGZcTFambE


For quadrotors at least. Most of the projects I've seen coming out of Boston Dynamics are, as best I can tell, entirely self-contained.

(This is part of why BD impresses me so much)


Yes, but none of them are (permanently) aerial and some of them use internal combustion for power. Computation requires weight and energy, and computer vision requires lots of computation.


I may not be fully up to date but I have never seen a BD video with cooperating robots.


Aren't most of their videos using a tether though? Which is pretty much the same "only works in the lab" issue.


Yeah, kind of restricts to the lab, unfortunately, although a secondary camera drone meshed with the others might serve. Lighting would be a problem... though they could use IR beacons or something.


Lasers wouldn't have that issue. And make this even cooler.


Lasers are typically directional.


That must be the purpose of the spherical marker-balls on the "pendulum" (looks like a rod???), two of them dividing it into three segments. I wondered what they were for, I'm guessing they help with the motion capture/tracking.


Maybe, but they could also be used to fine-tune the rod's moment of inertia.


They probably use them to track the center of gravity of the rod while in flight.


That is insanely cool. Quit your job and play with quadrocopters cool.

I'm surprised we've not seen larger versions of this platform for civilian use.


They have been in civilian (private/commercial) use for a few years (since 2008 or so). Mostly for taking pictures from above -- they are relatively well-suited for that. (And for fun flying of course)

For transporting big things: it's more efficient to have larger rotors than to have multiple rotors.

For transporting really big things: see above, and helicopters have been around for a long long time; "we" (not me) have decades of experience with helicopters; you probably really want something that is safe and reliable. You can't just scale up your model.

As for quadrocopter piloting: right now, all pilots crash. Repeatedly. Luckily, repairs are cheap (unless you happen to carry an expensive camera). For a full-size aircraft, crashing is probably not an option, so add lots of dev/testing time for safety features and pilot training.

BTW (somewhat unrelated): One huge problem with (smaller) quadrocopters is the many people that start new copter projects and get nowhere instead of contributing to one of the existing major projects or reusing its soft/hardware. Some of these projects are already way beyond what a single person or even a small team can achieve in a few years work.


I wonder which project you believe require the most help?

Would be fun to have a small working group in Manchester (UK) - shout if you're in the area and are interested.


Sorry for the late reply, and sorry, I'm not in the UK.

I'm using UAVP-NG (http://ng.uavp.ch/).

It's open source, there is a custom operation system (NGOS) and half a dozen hardware revisions and also a few side projects such as a 4x-BLC. There are over a dozen people actively working on that project now and I believe they've created a nice, easily extensible, platform to base future work on.

On the downside, it isn't the cheapest project. For students like me that can be a bit of a hurdle. Also, you're likely not going to get around soldering the PCBs yourself. (It looks much harder than it is.)

But do have a look around and check the various projects out for yourself before you pick one.

BTW, if you have any questions, please do shoot me a mail. I like mail. Or drop by #uavp on Freenode. The people there are mostly harmless^W^Wvery friendly (as long as you've read the FAQ first ;) [edit: And now we're waaay offtopic. Sorry.]


Hey, cheers for the info. I'm slowly getting a picture of where things are and if I'm likely to be able to contribute at all. For a robust platform to extend in software would be the fun I was after. I've started a Manchester group - there's an amazing 3 of us: http://www.facebook.com/groups/523358144381052/ The kit I've found at a cheapISH price so far is: http://www.seeedstudio.com/depot/preorder-crazyflie-nano-qua...


Can you explain the physics behind why it's more efficient to have larger rotors than multiple rotors?


Two reasons. First, surface area. For an equivalent surface area, one rotor results in a much smaller craft than 4 rotors.

Second, precision machining. It is much easier to balance 1 set of rotors weighing hundreds of pounds than it would be to balance 4 of them. I'm guessing your typical quadcopter is too small right now for this to be a real concern.


Balancing props is a very real concern, but for another reason than efficiency: unbalanced props cause more vibration and lead to reduced image/video quality due to the rolling shutter effect (image looks wobbly). That being said, many people don't bother with propeller balancing.

Size of the aircraft is a very important point, but there are other reasons besides the two you mentioned. Generally, larger motors are more efficient than smaller ones. Larger, slower, props are more efficient than smaller, faster, ones, because Thrust ~ Rotor Speed^2 but Power ~ Rotor Speed ^ 3. Why? I don't recall, sorry. I'm more interested in the software. (If you do figure it out though, let me know.)


Because KE is proportional to v^2, and then you get another factor of v since the volume (and thus mass) of air through the rotors per unit time is proportional to how fast the air is moving.

At least that's my guess. And if I'm right, it's also why, to a first approximation, the power generated by a windmill is proportional to the cube of the wind speed.


To first approximation, the power needed to generate a given thrust is inversely proporional to the rotor diameter. See here;

http://en.wikipedia.org/wiki/Momentum_theory


"The primary reason a helicopter becomes less efficient as it shrinks is that the Reynolds number decreases as the scale decreases. The lower Reynolds number, a measure of the viscosity of air relative to the other forces acting on it, means the air appears thicker to whatever is passing through it, so the drag increases disproportionately compared to the lift." - http://www.ae.utexas.edu/faculty/422-dr-jayant-sirohis-resea...

It's a scale-dependent effect of air.


I would have thought the big contribution to this kind of dynamic balancing would be the eventual ease of piloting it would give. It still might not make sense efficiency wise though.


Exactly.

Seeing this and saying: "These are just helicopters, but smaller" isn't very helpful.

The big difference between these and "real" helicopters (either realsize ones or RC helicopters) is that now these things are using a super fast feedback loop to find their balance.

This could definitely one day help piloting real helicopters: just like these feedback-looped quadcopters are way easier to fly than the RC copters...


Unfortunately quadrotors don't scale up well. As the rotors get larger control input delay increases (because with this type of quadrotor you get your control input by rapidly changing the angular speed of the rotors). You can fix this by turning each of the 4 rotors into a conventional helicoptor rotor with collective pitch control, but at that point it makes sense to just go with a helicopter.


Helicopter rotors are much more complex than just pitch control. Quadcopters fly fine with 1DoF pitch control - relatively easy and cheap to do, while helis have non-trivial 3DoF. Also, there are quadcopters with 1DoF pitch control, your comment isn't exactly clear whether you know about those.


Yeah, sorry. Having cyclic pitch control on the 4 rotors of a quadrotor makes even less sense - then you really really might as well just be a helicopter.

There aren't a lot of quadrotors that use pitch control. That's half of their appeal; hook 4 brushless motors up to props and you're good to go. If you add in pitch control, then you either need 8 dof (4 motors, 4 pitch servos) or 5 dof (1 motor with a complicated power train to drive the 4 rotors, and 4 servos for pitch control). Both are more complicated and expensive, and again you might as well just be a helicopter.


Yep, variable pitch quadcopters aren't very common, they're only used in (research-y) areas where stability is key (speeding up and slowing down propellers is slow compared to changing tilt). I agree that at this point it's approximately as expensive as a heli, just with different dynamics.

RE: Cyclic pitch on quads - I don't think anyone put cyclic pitch on quads before. I think I derived a way to make use of 13DoF for stability and dynamics that are impossible on a heli (hovering while tilting, moving back and forth without tilt, etc). PM me if you're interested in the idea, it's a little hard to describe in words.


Give it time: http://www.kickstarter.com/projects/1671680066/incredible-hl...

That's a student project that needed funding.

• 50lb payload

• Two 12.5HP engines

• Distributing information (their most lucrative reward was the $250 "get a copy of all the information and data" at 10 copies.)

Definitely deadly. I would not be near it in operation.


The system uses an external observer and external computer to track the bots and make decisions. Implementing this in a civilian setting would be much more difficult than simply making the bots larger.


Hell, I'm impressed enough with the quadrocopter simply controlling an inverted pendulum. Didn't know that was the starting point of the project!


As an example, Draganfly already makes large quadcopters that can carry a DSLR camera, which can be purchased by civilians for ~$20,000 IIRC and have been used to report on various sporting events, etc.


So, just get two larger quadrocopters and you could walk across a gorge. Each one would just catch each of your steps.


I feel like it'd be insanely easier to, you know, ride one quadrocopter. Across the gorge.


But, but.... um...


And possibly remove your foot.


TED talk that preceded this, featuring 3 quadcopters with a net and ball: http://www.youtube.com/watch?v=C4IJXAVXgIo


Could anyone put together a rough curriculum for the control theory needed to understand something like this? It's absolutely fantastic.


Read any "control theory"[1] text, frequently used in undergraduate engineering courses. I hesitate to recommend the text from my undergraduate years, as it wasn't very good, and is probably dated by now. The inverted pendulum [2] is a canonical test in control engineering, frequently used to test feedback control algorithms. Consequently, it should be treated in most texts.

A separate problem is the modelling and control of the quadcopter. I say separate, since the maths behind throwing an inverted pendulum should be similar, whether it is being thrown by quadcopters or industrial robots. The real (and more complex) story here is the quadcopter control algorithms. Using an inverted pendulum is a sexy way to show off the quadcopted control algorithms, compared to a dry graph of an error function.

[1] https://en.wikipedia.org/wiki/Control_theory

[2] https://en.wikipedia.org/wiki/Inverted_pendulum


I feel like a link has popped up on HN, but I can't find it.

Where can I buy a small quadrocopter which I can program, and build my own system with?



Yes! Thank you. How did you search for that by the way?


Translating your original question into a google search returns a relevant result at position #2:

buy small quadcopter site:news.ycombinator.com


I bookmarked it earlier ;)


Looking forward to when Amazon's warehouses are automated with quadrocopters.


Kiva Systems already makes a warehouse robot. I didn't know if Amazon used them or not, so I did some quick Googling and it turns out Amazon bought the company! http://dealbook.nytimes.com/2012/03/19/amazon-com-buys-kiva-...


interestingly, Rafaello d'Andrea the leader of this drone research in the flying machine arena in Zürich is also one of the co-founders of KIVA systems.

other research groups (e.g. http://rpg.ifi.uzh.ch/) are working on bringing this technology out of the motion capture system by mounting cameras on the drones and use image processing algorithms to estimate the drones trajectory.


and it was the same guy Raff D'Andrea who started that company


Hah, good catch! Small world =)


Since this uses an explicit model of the world, Rodney-Brooks-style robotics is now officially dead.


I was puzzled by your comment. Is this Brooks paper[1] the thinking that you're referring to?

[1] http://people.csail.mit.edu/brooks/papers/representation.pdf


Among others, but sure.


Holy crap, that's amazing. I'm excited when I can get MySQL started on my development machine.

Those are some smart dudes ( and / or ladies).


>dudes and ladies

You mean men and women. Although I didn't see any women in the video. (Better include them just in case, so my friends don't think I'm a sexist pig!)


[deleted]


Your comment made me giggle. I've never seen anything like what's in this video. Moreover, I haven't even thought of this as being an area of research. Your comment makes it sound like you've been sitting there waiting for the state of the art to advance to the point where you could have your own robotic jugglers. +1 to you for being a very specific visionary!


All fun and games until they fly in your window at night and kill you in your sleep.


Imagine what kind of quadrocopters DARPA and similar agencies have these days.


"The Diamond Age: Or, a Young Lady's Illustrated Primer", Neal Stephenson

just saying ;) ...


Why are you just saying that. Presumably that's a book suggestion, why is it pertinent?


"...then Bud made himself scarce, because the monitors - almond-sized aerostats with eyes, ears, and radios - had probably picked up the sound of the explosion and begun converging on the attack. He saw one hiss by him as he rounded the corner, trailing a short whip antenna that caught the light like a hairline crack in the atmosphere.

Aerostat meant anything that hung in the air. This was an easy trick to pull off nowadays. Nanotech materials were stronger. Computers were infinitesimal. Power supplies were much more potent...a device built with several thrusters pointed along different axes could remain in one position or indeed navigate through space." - The Diamond Age, by Neal Stephenson (1995)


Mathematics in motion is a beautiful thing.


how did they get arnold for the commentary?


0.65s of pure robotics awesomness...


Batteries not included.


Wow.


Congratulations - machines are one step closer to destroying the human race.


And only 999,999 more steps to go.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: