Cornell Builds Autonomous UAV
tshak writes "From Microsoft Research, 'Faculty and students at Cornell University have built an unmanned airplane with its own on-board, embedded control system. The large-scale model plane flies by accessing coordinates from an off-the-shelf GPS unit.' Not only does the plane run XP embedded, but the software is written in C# on the .NET Compact Framework. This is all powered by an 800mhz Crusoe processor with 1GB of total system storage."
"only" 1GB? that's hardly impressive. Try fitting that in a few kb of ROM, like a real product would be, and i'd be impressed....
seriously, this is nothing but a joke. avionics software does NOT use 1GB of storage, nor does it run a PC-oriented OS (be it XP or linux).
This is quite silly from an embedded point of view. I really hope they weren't hoping to impress embedded developers with those specs.
--buddy
Instead of the usual set of jokes about blue screens of death from the blue skies, etc., can we get someone who knows about embedded XP systems to comment? How robust can this system be? Also, given that you can limit the number of inputs (e.g., the plane won't be browsing the web), can the limited number of apps it has to run help with stability, which tends to be an issue in desktop XP with many apps open?
11 out of 14 posts so far have been modded down as Flamebait, Troll, Redundant, or Off Topic. Is this usual? In any case, how long until these little plains are fitted with a collision detection and avoidance system? Flying based on checkpoints is all fine and well if you're the only one in the sky, but othrewise its equivalent to a blind person without a dog or a cane walking down a street he knows very well.
all off the shelf stuff huh ? now imagine if this device carried a payload
Small GPS controlled planes are old news. Check out the TAM project. Trans Atlantic Model. They flew a model plane across the Atlantic Ocean last year. Check it out here -> http://news.bbc.co.uk/2/hi/europe/3145577.stm
Award of academic grant.
The article itsself states: Last year, the group won an Innovation Excellence Award from Microsoft Research to continue their previous work in designing an autopilot system for a large scale model aircraft. Schools around the globe received awards from the Microsoft Research University Relations program to enable them to conduct research in emerging technologies.
So they are up front about it - I personally think this is interesting - doesn't matter that they used XP-Embedded over another operating system - whatever gets the job done.
Backup not found: (A)bort (R)etry (P)anic
Why do most people here seem to concentrate not on the fact that something very cool was accomplished, but rather on the fact that it was accomplished using technology from a vendor they don't like?
</rhetorical>
How about commenting on the project itself rather than posing conspiracy theories? The article itself even mentions that the team had gotten previous awards from Microsoft.
-CausticPuppy "Of all the people I know, you're certainly one of them." -Somebody I don't know
And the difference between this and a cruise missile is what exactly?
Cruise missiles cost billions in taxpayers money.
"A door is what a dog is perpetually on the wrong side of" - Ogden Nash
Not to come over all gee-whiz and so on, but how relentlessly negative these posts are. The students deserve some congratulations for successfully completing an impressive piece of work. Maybe they didn't go the most efficient/difficult/brag-worthy route. So what? Everything they've learned will be useful, regardless of what hardware/software they end up using in the 'real' world. They probably had fun and have achieved something real, instead of just sitting back criticising.
Good point about the cruise missile though...
--- Yx3 = Delilah ---
Well for one thing this is Slashdot after all.
For another most of the posts here, correctly imo, point out that this is nothing new or even that cool. Other teams have allready accomplished more than this with much less overhead. Why do you need XP on a plane? To play minesweeper on?
Lastly I doubt many people here would consider an "award from Microsoft" as being much of anything to brag about.
Really, I know what I'm doing...Ohhhh, look at the shiny buttons!
And the difference between this and a cruise missile is what exactly?Cruise missles aren't designed to land and take off again another day.
Get off my lawn.
But XP embedded is actually a very useful product. It is something that should be released as an option to run desktop systems, as it can be modularized and stripped of nearly all Microsoftiness (Messenger, IE, you name it). Just want the XP OS with full GUI, no frills? XP embedded fits the bill. We use it for a custom application here and it's just what the DOJ ordered.
Religion is the opium of the people. Evolution is the opium of scientists.
I'm sure they could start from the codebase they have now, work really hard, and have equivalent expertise built into a lighter package in some number of staff-years. Alternately, they could archive the source, go drink margaritas for a couple years, and then buy the lighter package with equivalent power off the shelf and use it to run the existing already-completed software.
Oh yeah, that's just what we need, engineering students whose mindset is that of a business owner. How about busting your butt to achieve something? researching more elegant solutions (and no, that's not yours, elegance is in the design and performance software with tough constraints)?
You totally missed the point of research. Research isn't about using technology, it's about inventing new technology. Using off-the-shell components doesn't push the envelope, it just shows the Cornell students can take envelopes from their sponsors.
Good thing not everybody thinks like you, otherwise we'd all be waiting for everybody else to solve our problems for us...
"A door is what a dog is perpetually on the wrong side of" - Ogden Nash
run .NET on a system that doesn't need it
.NET (or the JVM) is well worth it. The added runtime overhead (in terms of storage and processing) is insignificant in comparison to the risks posed by a simple memory-access bug, such as a buffer overflow.
In this case, a type-safe runtime environment like
I am probably one of the biggest anti-MS Linux biggots on the face of the planet, but I also have to run Windows for my job, and I also run it at home to play UT2003/2004 because quite frankly the game is slower than next Christmas on Linux. I've got an overclocked P4 2.4 Northwood running at 3.2GHz on air cooling only, that's been up continuously 24x7 since mid-March 2004 running Folding@Home all the time, plus I play UT on it and just leave the FAH service running in the background since it basically goes to sleep when something else is running. I've had *zero* operating system crashes, maybe 3 or 4 Unreal game crashes that never bring down the o/s, and I play UT every day for at minimum a couple hours (and my hands are just about crippled now to prove that :-) ). FAH has never errored out either nor has it ever had to toss out a work unit either. There are no signs of memory leaks either. It's been rock solid. Of course I have not patched the O/S with Windows Update either since then, but it's immune to attack from the Internet due to sitting behind a nazi-like secure Linux iptables firewall too.
Now that's only about 5 months of continuous uptime, but you gotta admit, that's pretty good for a Windows desktop box.
But one could argue that the research and development in this project was the software. Therefore it perhaps makes sense to use existing, proven technology so get the proejct off the ground (sorry!). Later refinement would then be to reduce weight etc, so *then* it might make sense to develop lighter hardware.
Interesting project, but can anyone comment on this?
A control system really needs to be hard real-time. Is XPE hard realtime? Also, is C#? If it is, how does it deal with garbage collection under these constraints?
SJW n. One who posts facts.
Have you read about XP embedded? It's a pick-and-choose OS, so you can select exactly what you want. That means no bloat. Absolutely none. Kinda destroys your ill-conceived argument, and shows it really was a rant against Microsoft.
what the hell does it REALLY have todo with "slashdot" get off the idea and setting the trend you retard. This is tech.. and i wanted to know about it...
.. shows picture of "li'l brudder" now do you know how he makes it in life.. he uses linux......
"News for Nerds. Stuff that matters" If you want please have slashdot change the slogan to.
"News for linux. Only linux news matters."
Some of you are not making life of open vendor any easier then microsoft. you guys are just as bad.. just you claim to be the "li'l guy"
man, some of you linux geeks are like.. let me show you a picture
get off the excuse of THIS IS SLASHDOT. man, own up and admit you are a zealot..
"only" 1GB? that's hardly impressive. Try fitting that in a few kb of ROM, like a real product would be, and i'd be impressed....
I'll take my flight-control software with an exception handling system, thanks.
What's more interesting is this is a good proof of concept that anyone with a few thousand bucks and not even a college degree can put together an autonomous airplane with commodity parts.
I think people who can get C4 can come up with the money for a gig of RAM. This kind of design can scale pretty easily, therefore so can the lifting capacity.
If one of these was launched from Hoboken could it be shot down over the Hudson River? Are they even considering this problem? If all the vans and trucks are being stopped in the Holland Tunnel it doesn't make sense to use the Holland Tunnel.
My God, it's Full of Source!
OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
Oh yeah, that's just what we need, engineering students whose mindset is that of a business owner. How about busting your butt to achieve something? researching more elegant solutions (and no, that's not yours, elegance is in the design and performance software with tough constraints)?
You are forgetting that a good engineer is, by nature, lazy. The only reason we have cars, planes, trains, boats, and so on, is because an engineer was too lazy to walk, try and fly (by flapping his arms), too lazy to run, and too lazy to swim. Engineers typically say to themselves, "How can I do this with less effort/money/time/etc.?"
Yeah, I bet they used an off the shelf processor as well, rather than building their own from scratch. And the metal used in the frame? Don't tell me they BOUGHT that rather than mining it and developing their own metalurgical refining processes.
The problem doesn't always lie at the level that happens to be of interest to *you* - the OS in this case.
Read reviews of shopping cart software
They use XP embedded because you can write complex applications and do lots of programming without re-inventing the wheel.
.NET is a great choice instead of using a simple microcontroller with assembler code. Why?
In this case, I think XP +
1. Device drivers. They are using a wireless modem to get data back and forth to the ground. That's important.
2. Telemetry. The plane fly's itself without help from the ground. This isn't often done. Most of these projects the plane is a dumb terminal to a complex application running on the ground. This way is the exact oppsite. The ground system gives the plane mission goals, and the plane and it's onboard "overhead" process the goals and determine what actions are needed to get there. The goals are things like "fly between nav point 1 and 2, then directly proceed to nav point 3".
3. Advanced image processing. One of the goals of the project is to recognize objects on land. Other systems have to take a picture, transmit back to the ground station for processing. On this one the plane can do it right away, and proceed to their next point without the latency (which is significant) of transmitting back and forth.
4. Robustness. Their plane is better than most others because it can operate with very little supervision from the ground. That's pretty important step forward. It can land itself in the case of something going wrong, the plane's flight hardware failing, etc.
You really have to have tried to do something like this before to appreciate the difficulty of having an autonomous plane like this. Even the Pentagon/CIA recognizes the trouble involved. The first UAV's were basically just remote controlled. They spent two years making them more autonomous which to me is a big deal.
Lastly I doubt many people here would consider an "award from Microsoft" as being much of anything to brag about.
You mean most people wouldn't like to get cash to work on cool geek projects you want to be working on anyways?
Oh yeah, that's just what we need, engineering students whose mindset is that of a business owner.
Actually, we do. Real-world end results are what actually matters.
How about busting your butt to achieve something?
I've known a lot of engineering students at Cornell. Suggesting that they don't "bust their butts" or serve as puppets of the Microsoft PR machine makes me laugh. A lot.
Think about this -- if the Cornell UAV team hadn't accomplished something unprecedented, would it have been "news for nerds"? Frankly I don't see why you care whether they developed new technologies from scratch, or built upon existing technologies.
The plane was supposed to also do recon. You want to do image processing in a year as a side project as an undergrad on custom microcontrollers? You also want that microcontroller to coordinate communication between the plane and ground station? If it were just supposed to fly, they'd have engineered it appropriately.
Give the kids some credit.
why use windows when the OS can be hijacked and used as a weapon?
What makes you think they have a TCP stack on this OS? It's windows embedded. What makes you think they have an ethernet device? What makes you think it can be used as weapon?
Speculation. That's what.
Also, FYI: MS got to its place in the industry legally and ethically. Once they got there is when they got into trouble.
Finally, let's see here. I can think of 1000's of ways planes like this could be used for good. Maybe if you weren't a cynic you could to. I'll give you five ways for fun:
1. Search and rescue. A police/sheriff/parks department could easily afford 4-5 of these if they were a $1k/each. They could be programmed to look for infrared signatures that indicate missing persons. Instead of hundreds of people searching for a missing child for days, a larger area could be searched and monitored.
2. Anti-terrorism. These could be used to monitor the borders and equipped with bomb-detecting sensors.
3. Environmental research. These planes can be made to have long-ranges. They are low-impact and fuel-efficent. What better way to study remote areas without intruding with the blunt-instrument of a human research party?
4. Weather-research. These planes could be very useful in studying weather patterns and taking frequent samples of atmospheric conditions.
5. Traffic reports. Why send a "traffic-chopper" when you can send a small, quiet, fuel-efficent drone. Very handy, fast, and useful.
I'll give you a bonus: firefighting wild-fires. Big-planes are very slow and inefficent to put out forest fires, not to mention expensive. A helicopter model of this unit could be used in a swarm to put out forest-fires before they spread to hundreds of thousands of acres. Instead of buying a $10M fire-fighting plane, purchase 10,000 of these units to be on quick alert. They could be setup to provide near constant dumping of fire-retardant on an area complete with mid-area refueling and pulling water from the neartest river/lake/hydrant.
And the parent is the very definition of "assclown." Holy shit, man, get a grip. It's a piece of software, not a religion.
Comment of the year
Is a model airplane crashing really that much different than a store being shut down for 24 hours because their computers are down?
Yes, because this plane is large enough that it could potentially hurt or kill someone if it crashes. What if it came down on a busy freeway, causing an accident? A store being shut down only causes financial problems for the store.
An application like this has no business using a poorly engineered, consumer grade operating system with a long history of faulty performance.
Maybe, just maybe, to those people the time saved using off the shelf hardware and software is more important than being able to thump their chests and brag about how tight the assembly code they can write is? Now, I know that YOU can write bug free assembly in your sleep, in half the time it takes us mortals to do it, so you don't need to mention that in your followup.
How about finding the best available solution considering the time and budget available?
Good engineers deliver. Great engineers come in on time and under budget.
What you propose is fine for "It never really needs to work" academia, but not acceptable for engineers who actually have to produce functioning hardware.
Why yes, I AM a rocket scientist!
Keep in mind that the entire plan weight less than 13lbs, so the 800mhz crusoe was not weighing the thing down. Also, I think this was more of an excercise in software, not hardware.
There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
I'm a grad student researching UAV's just like the one that Cornell is using in this articles. There are only a few major differences between what we do and what they do.
However, I do like the fact that they do image processing on the plane. In the case that image processing is needing and a ground station is not available, having onboard processing is needed. But once again, this does not require nearly what they are paying for.
Actually small footprint does not imply hardcoding everything in assembly. Small footprint would very likely be a tiny forth virtual machine + bytecoded forth. If you can't grasp what I am talking about - think OpenFirmware/OpenBoot. Forth is portable, so moving everything to a new architecture would mean porting the (tiny) forth VM - that beats porting XP. And forth is a pretty damn powerful language... Hell, if you felt magnanimous - you could even add an interactive forth interpreter for debugging purposes, and none of this would require 512 MB of memory.
Remember, if this wasn't a plane, but a *space* UAV, then those 512MB wouldn't come cheap - considering they wouldn't be off-the-shelf DDR DIMMS, but something like space-radiation-hardened SRAM. And uh... no offense... but with Windows' track record... I would not be willing to shell out $$$ for something that some 5r1p7 1dd13 would have fun with for 5 minutes before causing a catastrophe.
"Look Ma! I found a new cool flight simulator! Whoa! So realistic! Is that a nuclear power station? Coool."
sure, for fast things, being able to throw lots of money and buy hardware is nice - but that assumes you have lots of money (or, perhaps, a hard-/software vendor giving you free stuff to use for good press and to get people familiar with their products). That's no substitute, though, for well thought-out solutions and careful code. I'm not saying that these folks at Cornell didn't do good engineering; my comment was on the seemingly obscene amount of hardware they used. Like most things in the "modern world" our problems - even things like viruses - aren't technical so no amount of technology can solve them. Until folks realize that technology cannot solve social issues, people will continue to be disappointed when technology doesn't solve all the problems.
"There are a dozen opinions on a matter until you know the truth. Then there is only one." - CS Lewis (paraprhase)