For a thousand dollars, it better come with a Greek chorus to follow me around and report on what I'm doing. "He clicks the mouse button; he launches Doom III."
I'm familiar with his research, half my group collaborated with him, and I think I met him once. It's real.... Nice troll, but I can't have you confusing the n00bs on matters scientific.
Just one question, Mr. Underbridge. If you're actually a real scientist and not some 12 year old kid who thinks its funny to impersonate people, why, oh why, is both your homepage link and the link in your profile (to "free iPod!") set to goatse.cx? Just a question, really.
Furthermore, a lot of Ivy league students are downright dirt poor. I know plenty of fellow Cornellians who will be paying off well over $100,000 in loans when they've graduated, because they and their parents can't afford the tuition upfront.
On a Windows box however it's not uncommon to see backup utilities running with higher priviledges than the "administrator" account because that's the only way to sidestep things like system file protection and other tricks Microsoft uses to protect the system from abuse
Actually, you'll almost inevitably see backup utilities running as LOCALSYSTEM, which is indeed higher than Administrator, because that's how Windows works.
If a user registers a program to run as a service (note: You must have Administrator-level access to perform this step), then that program will run for all users regardless of who logs on (ideal to ensure that a backup program runs every night), and programs that run in this mode are always LOCALSYSTEM.
It's not a hack or a "trick," that's just how the security model works. But since you've got to be the equivalent of root to install such a program, it's not exactly a problem.
But look on the bright side, the knee jerk 'terrorist behind every lamp post' reaction is just what the american government has been trying to instill in the population for the last few years.
While the parent poster may have gotten the details wrong (you are correct in that massive DOS requires distribution and bandwidth, not computing power), the manner in which you dismissively respond was unwarrented.
Yes, the US Government has certainly been doing a lot to enforce the idea that Terrorists are Out There. But the technological suggestions presented by the parent have more than a grain of truth to them.
Consider other scenarios that have a bit more rationale:
The US and its allies may have spies working covertly in foreign rogue nations. Presumably, any intelligence or orders passed between them may involve internet-routed signals. A supercomputer would allow rogue states to brute-force crack the key and compromise the agent's mission. (The Chinese government has already shown it is capable of filtering and monitoring a huge amount of its routed traffic at its national border; Other countries may be able to do the same thing.)
Perhaps the operatives use satellite phones, radios, or other mechanisms to circumvent the hard-wired Internet in a country, you say? But radio waves can still be intercepted, given in-air receivers. Things like scrambling, frequency shifting, encryption, all make it harder. But powerful computers also make it easier.
We are seeing several rogue nations today obtain the processed nuclear fuels required for making nuclear weaponry. Fortunately, without an advanced knowledge of physics, (The US had some of the best men in the world working on the Manhattan project), the design of the device itself will be a sub-optimal yield. A computer capable of running massive simulation could determine more effective charge shapes or designs for higher yield nuclear weapons.
Similarly, these nuclear weapons are useless unless they can be delivered to their targets. High-powered computing does make it more attainable to design long-range missile delivery systems capable of reaching Europe or the USA from a rogue state.
On a slightly different, but related note, advances in biology these days are becoming more heavily dependant on computer technology. Protein modeling and determining how proteins fold requires weeks of simulation by powerful computers. Faster computers may help enable biologists in rogue states to design more effective chemical or germ warfare.
So, yes, thinks like creating spyware and crapflooding can't be done with a supercomputer any more effectively than with a Wintel box. The parent's post was probably a troll if it suggested things like that.
This having been said, there do exist real scenarios where supercomputing power will aid terrorism. Obviously, we can't prevent supercomputers from getting into terrorist hands.
But to merely dismiss this as a possible tool of the terrorists is to demonstrate the same sort of arrogance as in the pre-9/11 days. "The terrorists cannot intercept our transmissions! We use encryption!" vs "The terrorists cannot blow up the WTC! We have airport security!"
It's certainly something the government and those charged with national defense should take into account when drawing up a list of possible scenarios.
I was actually under the impression that this is being disproved. As more girls get their licenses at younger ages (boys have always tended to get their licenses earlier), they're getting in just as many accidents as their Y-chromosomed peers.
Your payout from the giant pool is $12 (reasonable). That means that 2/3 of the total pool paid you $12, meaning that even if the lawyers worked for free, you'd only receive $18. Not exactly rolling in dough, here.
Sure, the lawyers get rich, but it isn't exactly like they're particularly screwing you by their take being so big; you're screwed because the pool is so huge, and the payment isn't large enough in the first place.
Reducing their pay to 5-10% wouldn't solve anything.
I'm not an engineer there. I'm a college student. The point I was trying to make was that they thought of several mechanisms by which the surfaces could be restored, and they rejected them all on engineering merits, not political ones.
If you've got newer, better ideas, I'm sure the engineers there would love to have you on board, as, after all, they aren't rejecting their current ideas based on political reasons, but for engineering reasons.
You would think they would have built a wiper to sweap the dust off, or maybe some high pressure air hose or fan. Or thy could have added an ability to vibrate the dust off.
I got to ask a NASA engineer about this once in person.
He said they considered it. But then you have to remember that each of these things has moving parts, which are prone to getting dust in them and clogging, or breaking, or whatever. If you wanted, you could also have multiple layers of solar panels and when one got too dusty, it could "molt" and then the fresh panel would be exposed. They've thought of each of these things.
The problem is that they all add complexity and weight. When you're trying to hurtle something at a planet and have it touch down for landing, making the damn thing bulkier doesn't exactly add to reliability.
If your robot vibrates, then that could loosen screws and the whole thing could rattle itself into a pile of scrap metal.
If your robot blows itself off with an air hose, then you need to have a filter system so you know you're not blowing dusty air on it. But filters get clogged, so eventually the hose system would stop working, and the panels would get dusty.
If your robot molts panels, you then need to add extra motors to lift off a given layer. But these are heavy, and could break. Heavier = more power draw to move around. So if the motors malfunctioned, it wouldn't have gone as far as it would've if it only had a single layer of panels -- meaning you'd get less exploring done.
100+ comments, and nobody's yet realized that this guy is Milton from Office Space?
"They fired him, but he doesn't know it. He just comes in every day and works."
(And despite Milton's, ah, interesting character traits, I find him the coolest character in the show; or perhaps it's because of them. So, I mean this in the most praiseworthy manner possible. Rock on!)
Obligatory rant here...how do they know it's the best product if they never run anything non-microsoft.
The point is they're eating their own dogfood. They may not have the absolute best product in the world, but it does everything they need it to do. If the only way to get feature X is to install Oracle WhizBangPro 5.0, they refuse to do it: they just write that feature into their own software. And thus, their software has all the features they need.
Given that the IT needs of Microsoft probably rival or surpass almost any other organization, I'd say that probably qualifies their products as at the very least among the best.
on whether you want to be a programmer, or a Computer Scientist (tm).
If you really want to do software engineering, work in industry, etc., then wherever you're at, as long as is a moderately competitive program (i.e., not Southeastern County State Auxillary School), will be fine. I've got friends at Penn State who IBM is chomping at the bit to hire. While it's a solid school, it's not known nation-wide as a CS powerhouse like Stanford is.
If you want to go the academic route, then yes, where you go for undergrad certainly does matter. If you're going to get hired as a professor, you'll need a Ph.D. from a fairly top-tier place; and to get into one of those, you'll need your B.S. from someplace decently notable as well.
If you're really convinced that your bachelor's degree might hinder you, though, don't worry too much; you can get an M.Eng. degree in a year to a year-and-a-half and as long as you did well in undergrad, you've got a good chance of being accepted into a master's degree program someplace better. Then you'll be all set.
These clocks could get that down to a millimeter allowing, for instance,... automated landing for planes.
We already have a safe and reliable autolanding system, there is no need to switch to a gps-based system. Airports with an ILS Cat. 3C system are certified to autoland aircraft in 0ft visibility.
Hear hear! If it ain't broke, don't fix it.
In case the grandparent didn't know we already can autoland: basically, if you're standing still, GPS gives you accuracy to within a meter or so in all three dimensions. But what if you're moving? The point at which you sent the initial ping is *not* where you're receiving it; and GPS can only work so fast; once a second or so, actually. So you've actually got a delta of +/- 30 feet or so at any moderate speed, independant of however accurately GPS measured where you were a second ago. 30 feet of altitude's quite a difference!
So when planes get very low, they switch over to a sonar based system that sends sonic "pings" which are accurate to within about a foot for altitude. This lets the plane fly in and gracefully touch down on the tarmac
And don't monitor the babysitter. If you can't trust her to watch the kids sans monitoring, you shouldn't hire her at all. If you trust her, enjoy the time you're paying her for by having a child-free excusion!
On a related note, boys are more than capable of watching kids for a few hours on a Friday night. Your babysitter doesn't have to be a girl. When I was eight or so, I loved having babysitters I could play video games with, rather than boring girls:P (And, when I was 14 or so, it was nice to earn some cash to spend at the movies by babysitting; but jobs were hard to come by for boys like me!)
Wikipedia entries are often entered by experts in that field who have the best understanding of the subject. "Real" encyclopedia enties are written (as I understand it) by information researchers who are experts at researching information, not in the subjects of the fields they're writing about.
Actually, you're not entirely correct. While researchers may write some articles for "real" encyclopedias, I know a few professors who have been contacted by Brittanica to write articles specifically related to the domain of their work/knowledge.
Ok. Let me rephrase that. "We could not have written our software without a modern OS underneath like one used on our desktop PCs." Be it WindowsXP or Linux.
And if you read my post, you would notice that we did have a PC-104 based solution.
That having been said, we had a shiny new Windows environment on our computers. A powerful Windows development suite. A wealth of additional dev tools that ran on Windows. An embeddable Windows OS that would run on our plane. And, probably most importantly, a very realistic flight simulation model, that only ran on Windows.
Did I mention it's all free?
I really don't understand the Anti-MS bent. Microsoft came to us and said "What software and tools do you guys really need?" We listed some things. They made it happen. Six months later, they came back, looked at a presentation we put together, and said "is there anything else now you wish you had? If there's a real need, we might be able to get it to you." They were a sincere help to our team.
You're right. We didn't look to Linux. We had everything we could possibly want on Windows. And to be frank, I still don't see a flight simulator that compares to FS 2004 for Linux. And nobody from RedHat bothered to come to us, offer us technical manuals, extra computers, etc. But MS did.
I'm very proud that your team managed to get your project working. Jesus Christ, I know the blood sweat and tears involved in making something like that a reality. My hat is off to you.
But at the same time, I've got to question your high'n'mighty attitude. You had much tighter budget constraints, so that fueled your design choices.
We had an extra set of tools, so like good engineers, we made use of them. Could we have made a plane that ran on Linux? Probably. But would it have been the same as our current design? Definitely not. Better? Worse? Who can say. But we could not have done what we've done without Windows XP, in a purely hindsight perspective.
Tip #1 for getting academic funding: if someone wants to give you some, you never refuse it. Even if it's MS. Especially if it's MS. Because you can't go back to them two years later and say "hey, can we get 1000 more dollars? No? Damn"
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.
For one thing, our plane can't currently land itself, so "fuel sensors indicating low" is a moot point at the moment.
Our battery life, even on a "power hungry monster" of a machine that we run, is still vastly longer than our fuel capacity. So it's not a problem.
And as for missing "single critical sensor events," that's why you don't trigger changes to happen on the rising edge of the alarm -- you have the triggers set to function when the alarm is high. That way even if you miss the rising edge, the next time you sample, there'll still be the high signal, and you can do something about it. Sure, it's a tenth of a second later... but who cares?
Realistically speaking, an airplane flying at the speed it is, doesn't need to worry about time critical events. The worst possible case scenario I can think of is some sort of massive gust of wind, pressure drop, etc, pushes the plane into a nosedive, and Windows is busy thrashing the memory for a second. It still takes several seconds to fall out of the sky. And in that time, it's likely to give back control to the one process it's running (Yes, we can turn off just about every process except the kernel), which will compensate and correct for it.
And sure, billions of years from now, our plane may crash. But billions of years from now, the sun's gonna go supernova too, and I'm not too concerned with that, so, all things being equal, I still don't see why we shouldn't use Windows:)
The plane would run for about a half hour. This is a function of the size of the fuel tanks for the engine. I do not believe we ever flew the plane for more than about eight-ten minutes though.
The battery systems would run the computer for about 90 minutes, I think we calculated. When it was on the ground, we could jack it in to some heavy lead acid cells for extra life/recharging the onboard batteries.
And yes, LiPoly's are pretty sketchy technology. Great energy density, but that's what makes them dangerous. We've always treated them with respect, but now we've got a *much* healthier fear of them. I've heard of people who seal them inside large pyrex cookware when they charge them. I think we're heading out to Target for some of those ourselves.:)
Operating range. Hm. Well, that depends and what you mean by operating range...
The plane's top airspeed (I think; I'm just trying to pull this out of my head) was around 60 Km/H. So, if it could run for 30 minutes, it could make it 30 Km if you had no intention of ever getting it back, or were planning to follow it in a car.
Our serial modems were theoretically maxed out at 10 miles. But this varied on any number of things (radio frequency stuff is a devil's art)... their altitude, your altitude, things around you, if you were using their antennas or some bigger ones, atmospheric conditions... At some point we brought one modem up to the top of a tall building, drove across campus with the other one, and still got a carrier. So, we know they work for at least a mile.:)
But the serial modems aren't required for the plane to operate. It broadcasts back its data (position, speed, etc) to us over the link. And we could control it over the link ([dis]engage autopilot, etc); so, there's the range on that. But the autopilot itself would run without the monitoring link up.
Now, there is the safety cut-off though. At any time, by flipping a switch on the RC controller, we could bring it back to manual override, and a human pilot could guide it down. We also had to install (by law, I believe) a chip that would force the plane to hold a tight circle if it ever lost connection to the RC controller. As you might imagine, 25 lbs flying at 60 Km/H into somebody with a propellor screaming away on the front can be lethal. So if it's ever out of human control, it has to either intentionally ground itself immediately, or go into a holding pattern. I think the max range on our RC controllers is about a mile.
That having been said, we do not operate our plane out of visual range. I think the farthest away from us we've ever flown in a given direction is about 800 yards.
Our plane weighed 25 lbs, fully topped out with 1 L of fuel, and that was about the most it could handle and still be responsive. Do the conversion to metric yourself.:) The vast majority of the weight was the batteries. We put all the electronics in, and then just crammed as many batteries as we could in with it all to keep it running as long as possible. (I don't know how much of the weight was airframe and the 30 cc engine and whatnot.)
I'm just a programmer; I'm not one of the mechanical engineers, so I largely didn't concern myself with that stuff:) It was all assembled in a different lab and everything.
So, that's it for our "current" specs. It's just a test platform. The idea is that this plane only operates right over our heads, because we want absolute control. But we see applications in all sorts of fields -- search and rescue being the "sexiest." The plane doesn't take too much skill to set up; our software is really very automated. So ideally, you could give these to forestry services, and they could deploy a few planes programmed to fly in large high squares over some backwoods area that would be difficult to hike up and search manually (steep hills, lots of snow, etc). You'd just sit and watch the video stream coming back, and look for signs of people. The plane could run a ten mile flight, out of human control, and then return itself to base when it's done.
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?
Video was actually the lowest-tech part of the project. (Well, from a programming standpoint.) A video camera mounted in the belly of the plane was connected to a box we bought which converted the input signal to HAM-radio band data (I think; that wasn't my department) -- we set up a TV in the back of our pickup truck and watched it on channel Sixty-something.
That didn't go through the computer at all.
Part of the competition was to fly over a field and locate "military targets" (The competition was on an air base). So they had some fake tanks and things sitting in a field. We had to fly low enough and set up the proper waypoints such that the video would capture with enough resolution that humans could determine on the TV what was below them. In future competitions, the plane itself may have to identify interesting targets.
CPU Capacity: We ran on a Crusoe processor on a PC-104 computer. Our software consistently ran around a 25% load.. so there was some left. It ran fast enough for our purposes that we weren't entirely worried about it. Most of our sensors only gave us updates at 10 Hz or less anyway, so we were never struggling to work with our input data all the time.
Payload: It was pretty full, however, based on how modular the software was, there is really no reason why it couldn't have been loaded into a larger RC plane with some more time. The plane we chose was the best combination of stability and size (because it was fairly big), but also maneuverability (not huge).
A lithium polymer battery (We think it was one we had bought just a day before) shorted out and caught fire in our hotel room; it was in a box with several other batteries which then also caught fire... it was bad. And at 3 AM.:\
The plane has sensors to determine its altitude. Currently, a pilot has to take the plane off and then flip it to automatic control, and then bring the plane back in. Next year we hope to incorporate auto-takeoff and automated landing. It doesn't avoid trees -- there's no forward looking video. The idea is that you've got enough of a runway to take off and then climb to 100 to 300 feet... out of tree height.
So yea, currently the software is basically capable of flying waypoints. Future iterations may include some sort of on-board vision software -- we'll see where we go based on manpower, really. The sky's the limit!
Do you guys have a WEB site someplace detailing the project? We've got a website. RTFA:) CUUAV.org -- hasn't been updated in a while, though.
Rather than you all speculate (rather sarcastically and incorrectly) about how we do things, why don't I actually tell you?:)
First off: We couldn't have written the software without XP Embedded. Just to get that out in the open. Couldn't have done it.
Testing code on custom chips is *slow* (We have a couple systems that use custom ATMEL 8-bit microprocessors). If we had to write the bulk of our flight control software on those, we'd never get anywhere.
With XP Embedded, we were able to write our code on normal Windows desktops, and run it right there in simulator mode. Once we got as many bugs worked out there as we could, then we could move it down onto the plane.
Also, we use a *lot* of hardware. Sure, it's possible that we could've hand-written assembly language for ATMEL chips to do everything. Turing completeness states that's a truth. But realistically speaking, we'd never get it done before we graduated. For one thing: We have a wireless modem link to a ground station that can monitor the plane. It was hard enough designing a protocol and implementing that to get the data down to the ground. The last thing I wanted to do on top of this is write the driver for the serial modem itself!
Since we were able to take advantage of existing development tools, though, that inital hurdle was quickly cleared.
As for whomever thinks we fly the plane "using flight simulator:"
It's really much simpler than that.
The plane flies itself by its knowledge of its position through GPS and its orientation through a gyro.
Before the plane launches, we feed it in a set of GPS waypoints we want it to fly through. (The flight control protocol we're shooting for next year will allow in-flight course changes.) The plane sees its position, sees where it wants to be next, and goes there. No flight simulator involved. If the target is to the plane's left, it flips the ailerons and it turns left. That's all it does.
That having been said, we did use Flight Simulator for testing. Our software was able to fly planes around in Flight Sim 2004 long before we loaded it into the real plane -- an enormous time, money, and effort saver.
Bah, this is nothing compared to the guerrilla ViewMaster usage we had back in my day. My friends and I had built a ViewMaster (remember? with the little wheel of slides that you held up to the light?) that could project the wheel to SEVEN different viewing ports at once! We'd all gather round, lean in to the multi-ViewMaster and watch away. Yessir, that was high-quality media subterfuge!
Hell with that.
For a thousand dollars, it better come with a Greek chorus to follow me around and report on what I'm doing. "He clicks the mouse button; he launches Doom III."
I'm familiar with his research, half my group collaborated with him, and I think I met him once. It's real. ... Nice troll, but I can't have you confusing the n00bs on matters scientific.
Just one question, Mr. Underbridge. If you're actually a real scientist and not some 12 year old kid who thinks its funny to impersonate people, why, oh why, is both your homepage link and the link in your profile (to "free iPod!") set to goatse.cx? Just a question, really.
Furthermore, a lot of Ivy league students are downright dirt poor. I know plenty of fellow Cornellians who will be paying off well over $100,000 in loans when they've graduated, because they and their parents can't afford the tuition upfront.
On a Windows box however it's not uncommon to see backup utilities running with higher priviledges than the "administrator" account because that's the only way to sidestep things like system file protection and other tricks Microsoft uses to protect the system from abuse
Actually, you'll almost inevitably see backup utilities running as LOCALSYSTEM, which is indeed higher than Administrator, because that's how Windows works.
If a user registers a program to run as a service (note: You must have Administrator-level access to perform this step), then that program will run for all users regardless of who logs on (ideal to ensure that a backup program runs every night), and programs that run in this mode are always LOCALSYSTEM.
It's not a hack or a "trick," that's just how the security model works. But since you've got to be the equivalent of root to install such a program, it's not exactly a problem.
But look on the bright side, the knee jerk 'terrorist behind every lamp post' reaction is just what the american government has been trying to instill in the population for the last few years.
While the parent poster may have gotten the details wrong (you are correct in that massive DOS requires distribution and bandwidth, not computing power), the manner in which you dismissively respond was unwarrented.
Yes, the US Government has certainly been doing a lot to enforce the idea that Terrorists are Out There. But the technological suggestions presented by the parent have more than a grain of truth to them.
Consider other scenarios that have a bit more rationale:
The US and its allies may have spies working covertly in foreign rogue nations. Presumably, any intelligence or orders passed between them may involve internet-routed signals. A supercomputer would allow rogue states to brute-force crack the key and compromise the agent's mission. (The Chinese government has already shown it is capable of filtering and monitoring a huge amount of its routed traffic at its national border; Other countries may be able to do the same thing.)
Perhaps the operatives use satellite phones, radios, or other mechanisms to circumvent the hard-wired Internet in a country, you say? But radio waves can still be intercepted, given in-air receivers. Things like scrambling, frequency shifting, encryption, all make it harder. But powerful computers also make it easier.
We are seeing several rogue nations today obtain the processed nuclear fuels required for making nuclear weaponry. Fortunately, without an advanced knowledge of physics, (The US had some of the best men in the world working on the Manhattan project), the design of the device itself will be a sub-optimal yield. A computer capable of running massive simulation could determine more effective charge shapes or designs for higher yield nuclear weapons.
Similarly, these nuclear weapons are useless unless they can be delivered to their targets. High-powered computing does make it more attainable to design long-range missile delivery systems capable of reaching Europe or the USA from a rogue state.
On a slightly different, but related note, advances in biology these days are becoming more heavily dependant on computer technology. Protein modeling and determining how proteins fold requires weeks of simulation by powerful computers. Faster computers may help enable biologists in rogue states to design more effective chemical or germ warfare.
So, yes, thinks like creating spyware and crapflooding can't be done with a supercomputer any more effectively than with a Wintel box. The parent's post was probably a troll if it suggested things like that.
This having been said, there do exist real scenarios where supercomputing power will aid terrorism. Obviously, we can't prevent supercomputers from getting into terrorist hands.
But to merely dismiss this as a possible tool of the terrorists is to demonstrate the same sort of arrogance as in the pre-9/11 days. "The terrorists cannot intercept our transmissions! We use encryption!" vs "The terrorists cannot blow up the WTC! We have airport security!"
It's certainly something the government and those charged with national defense should take into account when drawing up a list of possible scenarios.
At the center of the box is a small piece of fairy cake
:)
Nope, but the whole thing comes in a nice chocolate-egg with graphical assembly instructions.
I was actually under the impression that this is being disproved. As more girls get their licenses at younger ages (boys have always tended to get their licenses earlier), they're getting in just as many accidents as their Y-chromosomed peers.
Maybe it's a freak accident, but it certainly seems to happen
The lawyers' reward really doesn't matter to you.
Let's say for a minute that the lawyers take 1/3.
Your payout from the giant pool is $12 (reasonable). That means that 2/3 of the total pool paid you $12, meaning that even if the lawyers worked for free, you'd only receive $18. Not exactly rolling in dough, here.
Sure, the lawyers get rich, but it isn't exactly like they're particularly screwing you by their take being so big; you're screwed because the pool is so huge, and the payment isn't large enough in the first place.
Reducing their pay to 5-10% wouldn't solve anything.
I'm not an engineer there. I'm a college student. The point I was trying to make was that they thought of several mechanisms by which the surfaces could be restored, and they rejected them all on engineering merits, not political ones.
If you've got newer, better ideas, I'm sure the engineers there would love to have you on board, as, after all, they aren't rejecting their current ideas based on political reasons, but for engineering reasons.
You would think they would have built a wiper to sweap the dust off, or maybe some high pressure air hose or fan. Or thy could have added an ability to vibrate the dust off.
... same problem.
I got to ask a NASA engineer about this once in person.
He said they considered it. But then you have to remember that each of these things has moving parts, which are prone to getting dust in them and clogging, or breaking, or whatever. If you wanted, you could also have multiple layers of solar panels and when one got too dusty, it could "molt" and then the fresh panel would be exposed. They've thought of each of these things.
The problem is that they all add complexity and weight. When you're trying to hurtle something at a planet and have it touch down for landing, making the damn thing bulkier doesn't exactly add to reliability.
If your robot vibrates, then that could loosen screws and the whole thing could rattle itself into a pile of scrap metal.
If your robot blows itself off with an air hose, then you need to have a filter system so you know you're not blowing dusty air on it. But filters get clogged, so eventually the hose system would stop working, and the panels would get dusty.
If your robot molts panels, you then need to add extra motors to lift off a given layer. But these are heavy, and could break. Heavier = more power draw to move around. So if the motors malfunctioned, it wouldn't have gone as far as it would've if it only had a single layer of panels -- meaning you'd get less exploring done.
Wiper motors
Nothing political about it.
Dude... chill out. It's just a joke. :)
100+ comments, and nobody's yet realized that this guy is Milton from Office Space?
"They fired him, but he doesn't know it. He just comes in every day and works."
(And despite Milton's, ah, interesting character traits, I find him the coolest character in the show; or perhaps it's because of them. So, I mean this in the most praiseworthy manner possible. Rock on!)
Obligatory rant here...how do they know it's the best product if they never run anything non-microsoft.
The point is they're eating their own dogfood. They may not have the absolute best product in the world, but it does everything they need it to do. If the only way to get feature X is to install Oracle WhizBangPro 5.0, they refuse to do it: they just write that feature into their own software. And thus, their software has all the features they need.
Given that the IT needs of Microsoft probably rival or surpass almost any other organization, I'd say that probably qualifies their products as at the very least among the best.
on whether you want to be a programmer, or a Computer Scientist (tm).
If you really want to do software engineering, work in industry, etc., then wherever you're at, as long as is a moderately competitive program (i.e., not Southeastern County State Auxillary School), will be fine. I've got friends at Penn State who IBM is chomping at the bit to hire. While it's a solid school, it's not known nation-wide as a CS powerhouse like Stanford is.
If you want to go the academic route, then yes, where you go for undergrad certainly does matter. If you're going to get hired as a professor, you'll need a Ph.D. from a fairly top-tier place; and to get into one of those, you'll need your B.S. from someplace decently notable as well.
If you're really convinced that your bachelor's degree might hinder you, though, don't worry too much; you can get an M.Eng. degree in a year to a year-and-a-half and as long as you did well in undergrad, you've got a good chance of being accepted into a master's degree program someplace better. Then you'll be all set.
These clocks could get that down to a millimeter allowing, for instance, ... automated landing for planes.
We already have a safe and reliable autolanding system, there is no need to switch to a gps-based system. Airports with an ILS Cat. 3C system are certified to autoland aircraft in 0ft visibility.
Hear hear! If it ain't broke, don't fix it.
In case the grandparent didn't know we already can autoland: basically, if you're standing still, GPS gives you accuracy to within a meter or so in all three dimensions. But what if you're moving? The point at which you sent the initial ping is *not* where you're receiving it; and GPS can only work so fast; once a second or so, actually. So you've actually got a delta of +/- 30 feet or so at any moderate speed, independant of however accurately GPS measured where you were a second ago. 30 feet of altitude's quite a difference!
So when planes get very low, they switch over to a sonar based system that sends sonic "pings" which are accurate to within about a foot for altitude. This lets the plane fly in and gracefully touch down on the tarmac
And don't monitor the babysitter. If you can't trust her to watch the kids sans monitoring, you shouldn't hire her at all. If you trust her, enjoy the time you're paying her for by having a child-free excusion!
:P (And, when I was 14 or so, it was nice to earn some cash to spend at the movies by babysitting; but jobs were hard to come by for boys like me!)
On a related note, boys are more than capable of watching kids for a few hours on a Friday night. Your babysitter doesn't have to be a girl. When I was eight or so, I loved having babysitters I could play video games with, rather than boring girls
Wikipedia entries are often entered by experts in that field who have the best understanding of the subject. "Real" encyclopedia enties are written (as I understand it) by information researchers who are experts at researching information, not in the subjects of the fields they're writing about.
Actually, you're not entirely correct. While researchers may write some articles for "real" encyclopedias, I know a few professors who have been contacted by Brittanica to write articles specifically related to the domain of their work/knowledge.
*sigh*
Ok. Let me rephrase that. "We could not have written our software without a modern OS underneath like one used on our desktop PCs." Be it WindowsXP or Linux.
And if you read my post, you would notice that we did have a PC-104 based solution.
That having been said, we had a shiny new Windows environment on our computers. A powerful Windows development suite. A wealth of additional dev tools that ran on Windows. An embeddable Windows OS that would run on our plane. And, probably most importantly, a very realistic flight simulation model, that only ran on Windows.
Did I mention it's all free?
I really don't understand the Anti-MS bent. Microsoft came to us and said "What software and tools do you guys really need?" We listed some things. They made it happen. Six months later, they came back, looked at a presentation we put together, and said "is there anything else now you wish you had? If there's a real need, we might be able to get it to you." They were a sincere help to our team.
You're right. We didn't look to Linux. We had everything we could possibly want on Windows. And to be frank, I still don't see a flight simulator that compares to FS 2004 for Linux. And nobody from RedHat bothered to come to us, offer us technical manuals, extra computers, etc. But MS did.
I'm very proud that your team managed to get your project working. Jesus Christ, I know the blood sweat and tears involved in making something like that a reality. My hat is off to you.
But at the same time, I've got to question your high'n'mighty attitude. You had much tighter budget constraints, so that fueled your design choices.
We had an extra set of tools, so like good engineers, we made use of them. Could we have made a plane that ran on Linux? Probably. But would it have been the same as our current design? Definitely not. Better? Worse? Who can say. But we could not have done what we've done without Windows XP, in a purely hindsight perspective.
Tip #1 for getting academic funding: if someone wants to give you some, you never refuse it. Even if it's MS. Especially if it's MS. Because you can't go back to them two years later and say "hey, can we get 1000 more dollars? No? Damn"
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.
Oooh, a troll. I'll bite.
:)
For one thing, our plane can't currently land itself, so "fuel sensors indicating low" is a moot point at the moment.
Our battery life, even on a "power hungry monster" of a machine that we run, is still vastly longer than our fuel capacity. So it's not a problem.
And as for missing "single critical sensor events," that's why you don't trigger changes to happen on the rising edge of the alarm -- you have the triggers set to function when the alarm is high. That way even if you miss the rising edge, the next time you sample, there'll still be the high signal, and you can do something about it. Sure, it's a tenth of a second later... but who cares?
Realistically speaking, an airplane flying at the speed it is, doesn't need to worry about time critical events. The worst possible case scenario I can think of is some sort of massive gust of wind, pressure drop, etc, pushes the plane into a nosedive, and Windows is busy thrashing the memory for a second. It still takes several seconds to fall out of the sky. And in that time, it's likely to give back control to the one process it's running (Yes, we can turn off just about every process except the kernel), which will compensate and correct for it.
And sure, billions of years from now, our plane may crash. But billions of years from now, the sun's gonna go supernova too, and I'm not too concerned with that, so, all things being equal, I still don't see why we shouldn't use Windows
The plane would run for about a half hour. This is a function of the size of the fuel tanks for the engine. I do not believe we ever flew the plane for more than about eight-ten minutes though.
:)
:)
:) The vast majority of the weight was the batteries. We put all the electronics in, and then just crammed as many batteries as we could in with it all to keep it running as long as possible. (I don't know how much of the weight was airframe and the 30 cc engine and whatnot.)
:)
The battery systems would run the computer for about 90 minutes, I think we calculated. When it was on the ground, we could jack it in to some heavy lead acid cells for extra life/recharging the onboard batteries.
And yes, LiPoly's are pretty sketchy technology. Great energy density, but that's what makes them dangerous. We've always treated them with respect, but now we've got a *much* healthier fear of them. I've heard of people who seal them inside large pyrex cookware when they charge them. I think we're heading out to Target for some of those ourselves.
Operating range. Hm. Well, that depends and what you mean by operating range...
The plane's top airspeed (I think; I'm just trying to pull this out of my head) was around 60 Km/H. So, if it could run for 30 minutes, it could make it 30 Km if you had no intention of ever getting it back, or were planning to follow it in a car.
Our serial modems were theoretically maxed out at 10 miles. But this varied on any number of things (radio frequency stuff is a devil's art)... their altitude, your altitude, things around you, if you were using their antennas or some bigger ones, atmospheric conditions... At some point we brought one modem up to the top of a tall building, drove across campus with the other one, and still got a carrier. So, we know they work for at least a mile.
But the serial modems aren't required for the plane to operate. It broadcasts back its data (position, speed, etc) to us over the link. And we could control it over the link ([dis]engage autopilot, etc); so, there's the range on that. But the autopilot itself would run without the monitoring link up.
Now, there is the safety cut-off though. At any time, by flipping a switch on the RC controller, we could bring it back to manual override, and a human pilot could guide it down. We also had to install (by law, I believe) a chip that would force the plane to hold a tight circle if it ever lost connection to the RC controller. As you might imagine, 25 lbs flying at 60 Km/H into somebody with a propellor screaming away on the front can be lethal. So if it's ever out of human control, it has to either intentionally ground itself immediately, or go into a holding pattern. I think the max range on our RC controllers is about a mile.
That having been said, we do not operate our plane out of visual range. I think the farthest away from us we've ever flown in a given direction is about 800 yards.
Our plane weighed 25 lbs, fully topped out with 1 L of fuel, and that was about the most it could handle and still be responsive. Do the conversion to metric yourself.
I'm just a programmer; I'm not one of the mechanical engineers, so I largely didn't concern myself with that stuff
It was all assembled in a different lab and everything.
So, that's it for our "current" specs. It's just a test platform. The idea is that this plane only operates right over our heads, because we want absolute control. But we see applications in all sorts of fields -- search and rescue being the "sexiest." The plane doesn't take too much skill to set up; our software is really very automated. So ideally, you could give these to forestry services, and they could deploy a few planes programmed to fly in large high squares over some backwoods area that would be difficult to hike up and search manually (steep hills, lots of snow, etc). You'd just sit and watch the video stream coming back, and look for signs of people. The plane could run a ten mile flight, out of human control, and then return itself to base when it's done.
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?
:\
:) CUUAV.org -- hasn't been updated in a while, though.
Video was actually the lowest-tech part of the project. (Well, from a programming standpoint.) A video camera mounted in the belly of the plane was connected to a box we bought which converted the input signal to HAM-radio band data (I think; that wasn't my department) -- we set up a TV in the back of our pickup truck and watched it on channel Sixty-something.
That didn't go through the computer at all.
Part of the competition was to fly over a field and locate "military targets" (The competition was on an air base). So they had some fake tanks and things sitting in a field. We had to fly low enough and set up the proper waypoints such that the video would capture with enough resolution that humans could determine on the TV what was below them. In future competitions, the plane itself may have to identify interesting targets.
CPU Capacity: We ran on a Crusoe processor on a PC-104 computer. Our software consistently ran around a 25% load.. so there was some left. It ran fast enough for our purposes that we weren't entirely worried about it. Most of our sensors only gave us updates at 10 Hz or less anyway, so we were never struggling to work with our input data all the time.
Payload: It was pretty full, however, based on how modular the software was, there is really no reason why it couldn't have been loaded into a larger RC plane with some more time. The plane we chose was the best combination of stability and size (because it was fairly big), but also maneuverability (not huge).
A lithium polymer battery (We think it was one we had bought just a day before) shorted out and caught fire in our hotel room; it was in a box with several other batteries which then also caught fire... it was bad. And at 3 AM.
The plane has sensors to determine its altitude. Currently, a pilot has to take the plane off and then flip it to automatic control, and then bring the plane back in. Next year we hope to incorporate auto-takeoff and automated landing. It doesn't avoid trees -- there's no forward looking video. The idea is that you've got enough of a runway to take off and then climb to 100 to 300 feet... out of tree height.
So yea, currently the software is basically capable of flying waypoints. Future iterations may include some sort of on-board vision software -- we'll see where we go based on manpower, really. The sky's the limit!
Do you guys have a WEB site someplace detailing the project?
We've got a website. RTFA
Right, so I'm actually on the team.
:)
Rather than you all speculate (rather sarcastically and incorrectly) about how we do things, why don't I actually tell you?
First off: We couldn't have written the software without XP Embedded. Just to get that out in the open. Couldn't have done it.
Testing code on custom chips is *slow* (We have a couple systems that use custom ATMEL 8-bit microprocessors). If we had to write the bulk of our flight control software on those, we'd never get anywhere.
With XP Embedded, we were able to write our code on normal Windows desktops, and run it right there in simulator mode. Once we got as many bugs worked out there as we could, then we could move it down onto the plane.
Also, we use a *lot* of hardware. Sure, it's possible that we could've hand-written assembly language for ATMEL chips to do everything. Turing completeness states that's a truth. But realistically speaking, we'd never get it done before we graduated. For one thing: We have a wireless modem link to a ground station that can monitor the plane. It was hard enough designing a protocol and implementing that to get the data down to the ground. The last thing I wanted to do on top of this is write the driver for the serial modem itself!
Since we were able to take advantage of existing development tools, though, that inital hurdle was quickly cleared.
As for whomever thinks we fly the plane "using flight simulator:"
It's really much simpler than that.
The plane flies itself by its knowledge of its position through GPS and its orientation through a gyro.
Before the plane launches, we feed it in a set of GPS waypoints we want it to fly through. (The flight control protocol we're shooting for next year will allow in-flight course changes.) The plane sees its position, sees where it wants to be next, and goes there. No flight simulator involved. If the target is to the plane's left, it flips the ailerons and it turns left. That's all it does.
That having been said, we did use Flight Simulator for testing. Our software was able to fly planes around in Flight Sim 2004 long before we loaded it into the real plane -- an enormous time, money, and effort saver.
Bah, this is nothing compared to the guerrilla ViewMaster usage we had back in my day. My friends and I had built a ViewMaster (remember? with the little wheel of slides that you held up to the light?) that could project the wheel to SEVEN different viewing ports at once! We'd all gather round, lean in to the multi-ViewMaster and watch away.
Yessir, that was high-quality media subterfuge!