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."
Duck!
Phil
...to the term "crash"
I fear the onslaught of 1001 jokes about this plane crashing.
I wonder if they "picked" XP-Embedded because they were given a "grant" from Micosoft.
-- MarkusQ
I'd be interested to know how stable this thing is. Is there anyone here writing mission critical applications with .Net?
"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?
Haven't seen the EULA for XP embedded but the consumer one says do not use for 'mission critical' applications. somehow an airplane seems kinda critical? sounds more like VxWorks or QNX would be appropriate.
"Hello, this is your pilot software speaking. We've encountered an unknown error as a result from an unknown error.
Please click OK to crash."
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.
...more RC airplanes flying through our windows.
Tim
Mayday! Mayday! Mayday! Windows is not responding. We are going down!
It seems the plane's resources are being used up by a program called... "sol.exe"????
-nova20
Of course it's unmanned. Who in their right mind would want to fly on that!?
Yeah... new take on an old joke.
Writing code for an autonomous UAV to do nothing more than take off, fly around a bit, and land isn't really that hard. Anyone who's ever worked any flight simulation could do it without much help. If these Cornell kids have the support of a gigantic corporation with much in-house expertise on flight simulation, it's no surprise that they were able to make a plane fly simple, planned flights. Good for them, I guess, but it's really not that big a deal. Somebody must be posting this just to get the obligatory shots at MS started.
http://avdil.gtri.gatech.edu/AUVS/IARCLaunchPoint. html
"This year the best performances were executed by the Georgia Institute of Technology and the University of Arizona (first year in the Competition). The Georgia Institute of Technology's autonomous helicopter demonstrated "Level 2 behavior" (finding a particular building from among many and then identifying all of the real openings in the building through which they could send in a sensor probe) during a series of three flights comprising more than an hour of flawless fully autonomous operation-- they landed only twice, once to adjust a camera and once to top off their fuel tank."
This guy beat them to it, sending an UAV over the Atlantic.
all off the shelf stuff huh ? now imagine if this device carried a payload
Actually, RT Linux is rarely used in control systems. Most of the newer systems I know run on either QNX or vxworks. Older systems usually run on VMS, of course.
And the difference between this and a cruise missile is what exactly?
"It's so convenient to have a system where everyone is a criminal" - A. Hitler
My first post (yay! - now modded 0 - boo!) was only intended to emphasise what the linked site acknowledges:
"Safety - An autonomous flight control system inherently removes human operator intervention from vehicle functionality. The capability of an aircraft of considerable mass, traveling at high velocity, to inflict damage to people or property is substantial. It was critical that the flight control system would include several modes of flight termination in case of emergency or flight control system failure."
Sure, there are non-military uses for UAVs - crop dusting, fire fighting, ground mapping, etc, but I'd be interested to know what proportion of the devices currently out there are in fact military.
Phil
What has the operating system got to do with UAV?
It pays the bills.
(One might also ask, with all of those sponsors, what exactly was there left for them to do?)
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
Yes, they were given grant money from Microsoft, but that wasn't the only influence in their decisions. They've put long hard hours into the plane. XP Embedded does allow them to add functionality to the plane. A lot of companies have given then grants and sponsorships that have allowed them to build the plane. Don't forget this is Cornell here and they're not going to just rely on Microsoft to make the plane run. They also weren't attempting to make a "real" plane - this is still an UAV which isn't meant to have the power of a full aeronautical vehicle.
Unfortionatly one of their planes was destroyed in a fire at a hotel in Maryland while they went down to show off the plane. Luckily, their backup plane that is still being built was not destroyed.
Obviously the Microsoft Research link gives away the "why", but I really want to know why the overhead of .NET? Why not just compile it to "real" C++, build some machine code, and stick it on a chip? Doesn't that make more sense than .NET? Plus, I'd like to toss in my $.02 that 1GB is totally insane for an embedded system. The space shuttle doesn't need that much for its automated stuff.
stuff |
Imagine it with passengers...."This is your pilot software speaking, please assume the appropriate position for a reboot."
Can I bum a sig?
One compact flash card holds the operating system in a protected write mode, while the other stores a real-time flight log - a 'black box' that can be examined to diagnose problems, even if the vehicle crashes.
:-D
This would be very useful to thousands of Windows users world-wide
Can it go through a stargate and feed back the information through an open wormhole?
You could always buy a Predator http://www.rctoys.com/predator.php and equip it with a GPS powered autopilot. Built-in wireless video camera and 1.5 hours of flight on one battery, yay!
The students modified the vehicle for unmanned flight by replacing the factory tail with a custom lifting tail, which moved the center of gravity further towards the rear of the plane.
Doesn't adding lift to the rear of an aircraft move the center of lift, which is different from the center of gravity ???
Also from the the story:
Understand, I am not.
The Russians have won. They have made the world a cesspool of distrust, greed, fear and hate.
We can't completely automate air traffic control systems. We can't even upgrade air traffic control systems made decades ago because of the fear of software bugs.
So let's try to make plan that can fly by itself.
No thanks. I like my pilots well trained, well paid, happy & human.
Haven't seen the EULA for XP embedded but the consumer one says do not use for 'mission critical' applications.
The EULA for XP Embedded says nothing of the sort.
Beyond academic exercise, what is the purpose of such a vehicle? Military, and they already have one of these. To me, this is like the nut in New Zealand who builds cruise missiles for fun and games. Sure there are lots of "wild" ideas, but in reality, most of these problems have been solved by existing technology (which in fact this is).
"Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
AFAIK, all of them. Developing UAVs costs a lot of money (the UAVs in use now typically cost $1M or more), and the military is currently just about the only party willing to throw money at this. The military have one big incentive that commercial users don't: military aircraft are likely to get shot at.
The only exception I know of is NASA, their huge flying wing is a step towards 'persistent' UAVs (that can loiter over an area for a long time, which is what you want for surveillance missions).
Considering the way UAV's usually end up with hard points that are occupied with interesting things, I wonder if wireless is enabled.
There's other ways to do it, but you run where the $$ tells you to on projects like this.
for the first airborne trojan horse !
:-)
Now all it needs is WiFi, and it can mass infect
When will I end this grieving ? When will my future begin ?
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.
Which would you consider the elegant way to proceed?
"Consider yourself a member of a virtual corporation with Mr. Torvalds as your Chief Executive Officer." - Linux Advocac
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 ---
type of hardware. Do they at least have a cool case mod? I'm really not quite sure what the point of this was?
Sig it.
Avionics software, GPS, and the OS are just the testbed, all pretty standard and could be swapped out for something more robust. The control software the decides where and how to conduct it's mission is the interesting part. If it can locate a particular house or vehicle, the conduct smart surveillance and return to the home base, who cares what the OS is?
Wouldn't it be better if they embeded a midget into the plane?
Beware of programmers who carry screwdrivers!
Seems to me some of this technology might be able to be put to good use for the DARPA Grand Challenge 2005, in which autonomous vehicles race across the U.S. desert, driven by their waypoints and obstacle avoidance systems. I'm not at all surprised Cornell is doing some of this autonomous vehicle research.
:) There's also tons of previous Slashdot coverage on the Grand Challenge, and there's a pre-2005 event coming up very soon for interested people, I know.
Last year, The Ohio State University's TerraMax and Carnegie Mellon's Red Team did very well at the DARPA Grand Challenge. Here's some good coverage on Science Blog. There was some other really good blog coverage that gave a play-by-play breakdown of how each autonomous vehicle did the day of the event and what kind of troubles it ran into, but I can't find that via the Googling right now.
In my day, when we wanted mobile computing power, we had to do it with a 6 Mhz Z80. I mean really, you DONT need a desktop computer for waypoint flying.
.net framework)
CPU Usage for UAV
XP Embedded - 35%
Waypoint system - 1%
Flight Control System - 2% (It's written in C# with
Seti@home client - 62%
What the heck is a 'sig'?
Apparently you didn't read the link. I shouldn't be surprised, this is slashdot. =P
Anyway, that was an interesting story posted on slashdot a loooong time ago. THe guy bought off-the-shelf (Internet) components online and used them to cheaply assemble an autonomous cruise missle in his garage to prove that such a thing is a legitimate threat potentially weilded by terrorists. Unfortunately, governments of the world largely ignore this threat, and New Zealand even decided that, although they considered what he was doing legal, it wasn't appropriate and effectively censored it.
blue sky of death!
First, the desktop with Windows, then the lands (they own a looot), then the consoles with Xbox, then the Tv with the Media Center PC... now.. like Xbox is not beating PS2, they came up with the idea of monopolizing the "a la Terminator" flying killing automated things.
I'm all forward it... mainly because I'm against war, and all it'd would take to stop an invasion would be to attack one of the millions of security flaws their embedded IE probably has... by the time they released the patch at http://planeupdate.microsoft.com, we would have already cracked the protection of the little things and we would be using them as toys.
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
UAV research has become more and more popular over the last 10-15 years. A couple of cool projects worth checking out:
MIT Autonomous Vehicle Formation Flying
Frontier Systems unmanned helicopter - sadly, not much info. Of course, they are a military contractor, so that's to be expected. The thing just looks cool, though.
UAV Forum - big listing of commercial UAV projects
Clippy: It looks like you are flying a plane, would you like some help?
----
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.
Didn't the fire occur because they overcharged their batteries in the room?
Anyway, they did build one, and congratulations to them. So did many others, in this student competition. The Washington Post wrote up a little article (PDF) (HTML), too.
Note that I link to the pdf hosted on msstate.edu because that's where I go to school. Our plane ran Slackware.
A lot of people don't seem to like that they've done it with what is effectively a small desktop machine.
Listen, it's all very well complaining that they didn't do the whole thing with $50 and a PIC, but the advantage of doing it with something like XPE is that it's a lot easier to scale up to something grander.
Wanna get waypoints out of Autoroute? Sure - no problem.
Need to change your GPS unit to a different USB model? Again. No problem.
Want to add some basic computer vision stuff to it getting input from a USB webcam? Easy!
Now, if you're trying to make an autopilot that weighs 45g and attaches to a foam parkflyer, you're going to have to use something smaller and simpler. However, with a larger plane you might as well stick with something bigger that leaves you with more options.
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.
As you should be aware, in technology, you do something first, then you improve on it. It's sort of like building a house of cards. You start by using half the deck to hold up one card -- then you remove supports until you worry about its stability.
Every gadget you use in your daily life started as a technology demo at least twice as large and half as fast. My buddy, for his senior EE project at college, built a wireless computing suit that weighed about 80 lbs. If he were marketing it, he could get much smaller components, much lighter screen, more efficient batteries, embedded bluetooth instead of dongles, etc. The end result would be WAY lighter. That doesn't mean the demo wasn't impressive.
I'm sorry if this project doesn't live up to your expectations. But realize: these are just some kids doing a project. Give them some fucking credit, and when their AutoUAV company releases mass produced machines with the same specs, THEN you can complain.
Hey freaks: now you're ju
Why does it run WinXP? Easy!
"All it has to do" (note I put it in quotes) is change a handful of control surfaces to put its GPS coordinates back on the desired flight path. This is something that is even simpler than a old-fashioned mechanical autopilot had to do using some gearboxes and hydraulics (Those generally did inertial navigation, and had to do more work because GPS wasn't available half a century ago...).
Admittedly old autopilots did little more than fly in straight lines, but the problem isn't all that much different.
You're right. 1G of storage - that's equivalent to two whole USB keychains. It couldn't possibly get off the ground.
Here's how I see it. It's a freakin' prototype. It doesn't have to be elegant. It just has to work. And maybe they want to add other functionality later, such as "look out for that tree" and "don't fly into the building, even if it's a waypoint".
Besides, autonomous flying machines need all that extra power to run Skynet anyway.
144l. ph34r my 133t l3g4l 5k1lz!
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.
Maybe they wanted to focus on other aspects of getting a UAV to fly than the frigging OPERATING SYSTEM? You know, like developing the control code and algorithms that control the hardware that they built? I mean really people, doing "cool" things doesn't mean you have to hack it from scratch using vi and a bunch of perl/ruby/insert esoteric language here scripts.
A good engineer will take as many off the shelf components as possible in order to focus on the R&D aspect of their project.
You know, I always thought UAV stood for "Urban Assault Vehicle." http://www.imdb.com/title/tt0083131/ Someone needs to talk to these guys and get them to change their acronym...we're talking 1981 here and a MUCH better concept. ;-)
Oh, I miss my 1980 Chevy Van we referred to as the UAV. Eight miles to the gallon and that great sliding door for those A-team assaults.
...do NOT attempt to enable wi-fi in this thing. The last thing we need is a Microsoft-powered SKYNET.
*ducks*
That green slime had it coming.
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.
in order to take off , they had to turn the engine off, then adjust the ailerons. then switch the engine on again.
Then they to adjust the flaps - adjust flaps, turn off engine, restart engine.
When it comes into land, they had to extend the landing gear, turn the engine off and start it up again, but unfortunately, the latest variant of MyDoom (version 15.E for flying XP things) had gotten into it, so the plane flew off to Russia.
Uphill! Both ways! In the snow!
Best Slashdot Co
Ahem...didn't you hear Hawking a few weeks back?
StarGate. As in, the series from SciFi. I couldn't tell if you were being cheeky or not, so I'll just go ahead and explain it. They launch a UAV through the StarGate, and use it to scout about on the other side. (A different planet)
It should also be noted that the StarGate itself is powered by Windows XP Embedded. So I'm still on topic here.
--LordPixie
For some reason, this story about an unmanned aerial vehicle running on Windows XP makes me think of it being infected with a virus called SkyNet and turning into an Aerial Hunter-Killer. (from the Terminator series)
But why is the rum gone?
My school(Virginia Commonwealth University) also did this, and actually won the competition these were built for, the second AUVSI student competition./ default.htm/ uav.html
http://auvsi-seafarer.org/seafarers
http://www.egr.vcu.edu/announcements
As far as I know, no Microsoft products were used on the plane, but I can't find too many details at the moment. The guy I know who worked on the project only knew C and C++, though from my understanding he did mostly the EE stuff, not as much programming....
Blessed are the pessimists, for they have made backups.
...fly the friendly skies. uMMmm wwhoAAA Hah ha!
So does VCU, but from scratch and without off-the-shelf components. Plus they win the competition.
Disclaimer: I'm a VCU EE student, but not associated with this project.
`which fortune`
"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)
I didn't see any mention of the .NET Compact Framework in the linked article, just C#. I suspect this is running on the standard .NET runtime.
The Compact Framework is a .NET runtime targeted at Windows CE running on top of the processors you find in PocketPCs (generally ARM), and ships with a class library that's rather stripped down from what you get with the full desktop runtime. Windows CE and Windows XP Embedded are, btw, different operating systems, although CE implements a large subset of Win32, and there's no doubt a lot of copy-and-paste from the XP userland libraries into CE.
No plane commanded by a pilot has a computer that controls it, and no pilot would want that.
Most of the beef in avionics is display. The GPS probably has the most amount of ram and that's for maps, not computing power. The other stuff is telemetry for nagivation, you're talking bytes of data if even that depending on the avionics.
Fuel management? Seriously, that goverened by a calculator with less than 1k of ram.
The mechanics of flight haven't changed since we started flying with the latest advancement being the way the stealth plane fly.
You don't need software to fly autopilot.
You need fuel, an aneroid wafer device capable of determing altitude, a compass, and the method of tying it all together. (which has been around way before Microsoft)
Yeah, it's cool that a plane is autonomous but it's really not. Knowing the MS Marketing machine, they'll sell the idea that way.
The reality is that flying from point A to point B automatically is just as easy as this:
1. Enter starting airport (automatically determined by current GPS)
2. Enter destination airport
3. Go
4. The plane already knows the direction of the runway because of it's compass heading so it takes off and abides by the rules in the Airport Facility Directory that is updated every 56 days.
5. Knowing 4, is arrives and folows the same protocol for landing getting wind from ATIS, it determines the runway in use and uses ILS.
6. Flaps out, power back to idle, land.
if you steal from one source, that is plagiarism, if you steal from many, well, that's just research.
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.?"
Can you imagine a Beowulf cluster of these?
Oh, wait, Windows can't do Beowulf clusters.
Never mind.
"Live Free or Die." Don't like it? Then keep out of the USA
Here's the link
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
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.
Blue Sky of Death, anyone?
There's a reason why you have a low id but don't have a karma bonus. Your posts are crap.
I think what's really important here is not that it was running XP embedded, but what incentive universities are getting to use Microsoft products.
Linux will never have the grand scale ability to hand out shiny plaques/trophies/awards to entrepreneuring endeavors in the technology field, or even be able to give valid street credit to the teams that would happen to use Linux with their project.
I think it's time a fund was set up for just that...
Thank you,
Xeon
Real programmers can write assembly code in any language. -- Larry Wall
I was just about to say the exact same thing. The first day of electrical engineering they told us that a good engineer is a lazy engineer. Pure research is completely different than engineering - engineering is focused on solutions to problems, whereas research sees if something is possible. Engineers have to be economical - conserving money, time, and resources. It is far more economical to take off the shelf components, both money and timewise. Sure they pay a little with resources probably, but they made the tradeoff for legitamate reasons. Engineers should have taken some economics courses in college. They should work with their feet firmly on the ground, otherwise there will be no place for them in today's working environment.
I submitted this story last night, and it didn't get posted.
Microsoft builds cheap cruise missile.
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
All of these issues are interconnected and go *WAY* beyond the technical.
Not really, I use Linux and for me it is the logical choice for my only OS ahead of WinX. I am very glad that Linux can now do all it did before plus haswhat XP etc have -i.e GUI (for the typical user)... My bone is with Mandrake and other Distros, effectivel ripping people off for club membership etc. This is bs. I support Linux and will help out in what way I can but I won't go down this root. The only one of the main distros that is truly free is Fedora. If I had to pay, I'd pay for SuSE rathwer than Mandrake. Mandrake is too expensive. It really annoys me as I wanted to keep using Mandrake now I am beginning to loathe it. I have just got a brand new machine and I am putting Slackware on it. I may change to Fedora, but I will not use Mandrake anymore.
Anyway, my point is that we need to be critical of Linux too. No Os is beyond the technical, because thats what they're meant to be - technical. You are right to deffend against the other post though. He probably IS working for Microsoft!!! ; )
After reading the article, and the meta article (MS Awards Acad. Grants), this seems to largely be a pat on the back of MS CE by MS, albeit by proxy via Cornell. Nice that MS "rewards" innovation, a little suspect that they offer award for innovation using MS technology. It's their right, but this smells like PR, not news.
(Case in point, how is this more interesting than drones, which also can fly autonomously?)
Really mature argument. Your excessive use of "M$" also shows how intelligent your points are. You're adding weight to my argument with every word :)
Thanks for your energetic response, but the fact that you'll always pick a linux tool over a windows one shows what a limited IT professional you are. I mean there are plenty of times when a windows solution is better than a linux one, and in that situation, you're going to pick the worse tool because of your ideology. That's a disability in my book.
You must have a very understanding employer :)
You can get a tiny 1gb SD card, and mount a 800mhz crusoe chip on it :) They're both absolutely tiny. Heck, I got my hands on a P4 chip the other day, and it was smaller than any keychain I've ever seen. Tiny.
It's been done. It's even been done with a UAV helicopter, which is a great deal harder to do (though the gains in usability are exceptional).
Specifically, there is a UAV competition held by AUVS every year, and people do a lot of amazing stuff there.
What's interesting about this particular vehicle is that it uses XP-embedded over another operating system. Otherwise, it's like all the rest.
Mod me down and I will become more powerful than you can possibly imagine!
Even if XP embedded is as flexible as you say, it would not be a good choice for a comercial release of this particular project. XP embedded is not a real-time OS. It doesn't have the characteristics that you would need in a dependable real-time system. The processor and storage are also overkill for this application and would need to be reduced significantly to cut costs for comercial release.
.NET for this project. Projects like this are just as much research as they are a learning experience for the students. In order for the students to be able to contribute and do the majority of the work, it is beneficial if they can work with an environment they are used to. I do not go to Cornell, but I can guess that they probably teach their programming courses in C# with Visual Studio. Projects like this provide an opportunity for the students to do something with the stuff they learned. Using XP embedded means that they can get started right away without having to learn assembly or C.
That being said, I think I understand their reasoning behind using XP embedded and C#
I see this sort of thing at the University I attend. Here they have a group of students working with a few faculty members designing a robot. The programming is Java. Why Java? Because that's all the CS department here teaches (lousy bastards dropped C...grr), and since the EE department has no say in this, they go with what they've got. That being said, their robot doesn't take a 800mhz crusoe and 1gb of storage....They're using a [rather beefy] java-based microcontroller (though I wonder if the crusoe was cheaper...).
In both cases the university chose what fit best in their particular academic setting. There's more to these decisions than the project at hand. A real engineer would understand that.
Hmm... maybe because if it was Linux, they might have made their source code and kernel hacks available at some point, so the rest of the world could go, "hey, cool!"
Me? I would like something like it to be able to hold a long-range, high-res (multispectral?) camera, with a high speed download link, to take aerial photos of farmland, instead of flying a piloted plane, and make them available to the farmer to help plan their chemical usage on their fields.
You've obviously never talked to anyone loyal to the smallest degree about their choice of pickup truck, then.
Ah...you don't like my signature, is that it?
Or maybe you disagreed with the moderator guidelines?
Or you don't think "funny" is a meaningful concept?
-- MarkusQ
Osama bin Laden buys $50 million stake in Microsoft.
Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
Strange. When I was at the Univ. of washington, the only mandatory CS language class was Ada (and before that, Modula-2): CS210. Of course, this was the only class that actually USED Ada. But it was to teach concepts. After that, there were lots of classes that required knowledge of C, etc., but you were expected to have learned at least the rudiments of that on your own. There were no official C programming classes at the UW, except in UW Extension.
But things probably have changed in 20 years.
Why would it need a kernel hack? The fact that they managed to use XP embedded suggests that their hardware environment was pretty standard. You can't easily hack the XP kernel -- Microsoft only release the source code under very strict controls, and the NDA attached would probably be something that a university wouldn't want to get involved with.
Also, there's nothing stopping them from releasing their C# code. I suspect they're just as likely to do so in this case as they would if they'd written it under a Linux system.
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!
First I read "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...the plane run[s] XP embedded"
And then I read "Symantec and The Register are reporting that the first Windows CE trojan horse, known as Brador...this will most likely be used to make new botnets, and it leads me to wonder: will we soon need firewalls for Windows Embedded?"
And I'm like.. First UAV running Windows Embedded.. first trojan for Windows Embedded... woah shi, SKYNET!?!?!
Yes yes, I know its a CE trojan but still, a man can joke can't he?
...unfortunately no one can be told what The Mat^H^H^HGoatse is...they must experience it for themselves...
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
Good information! Frankly, I could give diddly what OS is actually doing it and am interested in how it works and what hurdles you encountered! Can you talk some about the video recognition? From the article it sounded as if the plane had to "recognize" objects on the ground - yes? The article also stated that there was a fire, can you give any details? Bummer that you couldn't compete! How much payload capacity was left on the plane? CPU capacity? In other words could you task it to do other things or do something arguably more useful with it? Take pics of things perhaps? Can the plane avoid things in it's path like trees and does it take into account altitude? Ergo - is it "thinking" in two dimensions and flying at a static height?
Do you guys have a WEB site someplace detailing the project?
Build it, Drive it, Improve it! Hybridz.org
but personally I would have used something a little bit more realtime that uses somewhat less power.
For those interested in UAVs, there is a lil' specs library/gallery of them at http://www.uavforum.com
No, not in real. But if you read the article, you'd notice that this wasn't something that quite fit your palm (unless you have a huge hand). It was a PC104 board. There are at least XScale-400 boards that are a lot smaller, and probably less powerhungry, albeit not as powerfull.
1GB of storage seems a bit overkill, unless it is a separate disc (solid-state) for storing hi-res images taken of some "target".
While walking to class one day at Cornell I saw a fellow pulling a quarter-scale airplane (about the size of a small trailer) across a parking lot towards one of the ancient 1800's buildings there. He was pulling it by the tail like a sort of baby elephant. My curiosity level went through the roof of course and I walked with him and introduced myself. Turns out he was an entomologist (bug scientist). The plane had a cool net on the top to catch bugs! He would fly it above crops (like corn or whatever) at night with lights on the plane, and throw a switch on the controller to raise a net above the plane (roughly over the center of gravity - over the wing). The net would take a sample of bugs that he would study later. This allowed him to study crop entomology really well. He took me up to his workshop that resembled a science lab coupled with an airplane hangar, all in a gothic ancient building. Good god, it was so cool.
I was just blown away by the incredible intelligence, positive attitude and intellectual curiosity of the students, profs and researchers at Cornell. I was a pretty jaded guy before I went to Cornell, but the spirit of the people on that hill over lake Cayuga both humbled and inspired me. I'll remember that place and those people forever.
http://auvsi-seafarer.org/seafarers/default.htm
Many schools where in attendence, including my school, Univ Texas-Arlington. Unfortunately, I do not have a listing of the other schools in the competition, and the AUVSI website is a bit lacking.
If youa are interested in one of the other schools in the compeition, here is the link to our UAV. Unfortunately, we had a little "accident" keeping us from flying on the day of the competition, though we still placed 3rd. http://www3.uta.edu/faculty/reyes/AVL/
It is possible (not just easier, possible) to test small chunks of code - just think how the complexity increases with code length.
You are right, absolutely right. However a thousand functions that are a half page of code each would still be 500 pages of code and a thousand functions would NOT handle a thousand situations where data must be taken in, analysed and reacted to.
A PC104 board does in fact fit in the palm of your hand.
The entire flight computer is roughly the size of two iPods stacked on top of each other. And weight's about comparable.
And we've got a gig of storage because our current software dumps the entire program variable state to disk twice per second. That way when things go wrong, we've got an exact log of what happened. This can eat up a hundred megs really quick on a flight. Yes, overkill for a release model. But don't forget, our cards are donated to us, so if we've got space, we'll certainly use it.
When Cornell got funding from MS to build a Beowulf cluster with NT (talk about a "cluster f***"), the project head at Cornell became quite the shill for his sponsors. Every time I've heard him talk, he talks about how great Windows is and how Linux sucks. Once, when someone in the audience asked him why they didn't use Linux, he didn't just come out and say because MS was a sponsor, which would've been a legitimate answer. (Nothing wrong with sticking to the products of the people footing the bill.) Instead, he made some wisecrack like "we don't want to spend 2 hours a day recompiling our kernel."
Every other speaker I've heard who talks about clusters and compares OSes says the choice of OS isn't much of an issue (beyond costs) because most of the time, people just launch MPI jobs from a head node and never log on to the cluster nodes in the first place. So it generally comes down to the performance of the MPI library.
So yes, people who've experienced previous Cornell PR might conclude that this will be yet another shilling opportunity, and that they will be sure to mention that it runs XP in every other sentence.
I don't mean to imply that because one guy from Cornell's a shill, that everyone else will be. But I do notice that one of them is already claiming they "couldn't have written the software without XP Embedded." The argument seems to be because they could test it by running the code much faster on regular desktops. But you could do the same thing with a Linux-based approach.
...with the exception of the "write the serial modem code" argument, which would be reasonable if the code hadn't already been written for Linux (including emulators), none of your arguments hold water.
You can write and run your software on an ordinary Linux desktop, without even the need for a simulator module for the most part. The same Linux which runs your desktop can also run your 'plane, and for a considerably smaller performance and resource hit than XP (although in real life you'd go to the trouble of having a highly modular kernel and not load very much for the instance on the 'plane).
I have no idea why you'd bother with Atmel chips.
Linux runs natively on the Crusoe, another performance gain.
So you used MS-FS for testing algorithms? Then FlightGear would have given you even more control and oversight over what you were testing.
Reading between the lines, you didn't even look.
Got time? Spend some of it coding or testing