Why do robots use Linux?

I'm deciding which is the best operating system to choose to
run my robot using 802.11 wi-fi technology. I've seen a few security
robots running on Windows costing about the same price as those
running on Linux. And seen many robots run on Linux and perform
just as well, such as the IRobot. Why do robot makers prefer Linux
over windows?
Thanks
Reply to
Sam Nickaby
Loading thread data ...
Well, just compare the cost to license Windows, as opposed to Linux.
Then look at the ( dozens? ) of embedded platforms that Linux runs on, compared to Windows/CE/Mobile/etc.
The choice is obvious. ;-)
- Rich
Reply to
user
You can't beat the price, especially if you want real-time scheduling (yet more $$$ on top of Windows). Robots don't generally need a familiar GUI or to be able to run Office 2009 and Half-Life 5, so the compatibility argument is pretty weak too.
Why /would/ you want to run your robot on Windows?
Tim
Reply to
Tim Auton
Hi Sam.
My favorite quote is from Steve Oualline:
"DOS/Windows programmers spend 90 percent of their time fighting the operating system and 10 percent of their time doing real work. UNIX programmers spend 90 percent of their time doing real work and 10 percent of their time engaging in flame wars in comp.lang.c++."
I find it easier to work with hardware and OS services on Linux than on Windows. Also, Linux runs fine on resource limited hardware (older, slower, less memory) that would not even boot recent versions of Windows.
And, of course, since Bill Gates already has plenty of money, he does not need any of mine.
Jeff.
Reply to
Jeff Shirley
Two obvious reasons are that Linux is available for a huge range of platforms, from the largest mainframes down to some very small microcontrollers, and that it is available in a wide range of specialized distributions optimized for various uses. Windows is available for x86, Itanic, and ARM and that's about it (was also available for PPC, Alpha, and a few others once but that was a long time ago), and in only a few variations, aimed at servers, desktops, and handheld devices. Then there's the source code issue--the source code for Linux is freely available, as is the source for most applications. The source for Windows used to cost something like $85,000 and I'm sure that they've raised the price considerably since if it's available at all, and to get the source for some of the applications you'd have to buy the software house that produces them.
Reply to
J. Clarke
Another advantage of Linux over Windows is that if there are compatibility issues, you can just use another distro or version of Linux (for free). With windows, an additional windows disk needs to be purchased for every computer and robot. Networking and terminal connection are built into Linux, whereas in older versions of windows at least, it's often an addon program. Don't get me started about the disk and memory requirements.
Sig: "The cat was once revered as a god. They have never forgotten this" - Anon
Reply to
Rotes Sapiens
Isn't the question more like: why would you use Windows? Just because it seems familiar?
Well, think again. Once you'll have to mess with Windows on low level, you'll realize that it's not so familiar... ;-) Besides, the help you can find on the web, compared to all the Linux resources, is virtually useless. Go to a MS newsgroup and ask a very specific question, if you want to be convinced. A whole bunch of MVPs there... and not much information.
Believe me, unless you're ready to pay a lot of money for support and/or for third-party tools, Windows will take a lot more of your time. Almost guaranteed 100%.
Reply to
Guillaume
"Tim Auton" wrote
Since it is implied that we are talking about some kind of embedded linux, I will talk about windows xp embedded:
1 - Because it is a more productive environment (if you are used to windows) 2 - Because there are far more market support for windows 3 - Usually it is easier to setup new hardware on windows
There is a paper somewhere on the web that compares true costs of implementing linux embedded and windows xp embedded. According to that study, it is cheaper to deploy winxpe than linux.
So, my final take is:
If you are a hobbyst and much more familiar to linux than windows, then go with linux. If you are a company and intends to deploy a commercial device, I'd go with winxpe
Cheers
Padu
Reply to
Padu
"Jeff Shirley" wrote
I don't know where this guy got this statistic, but I've been doing windows development for the last 10 years of my life and I don't have to fight the OS. I tried to get more involved with linux at least half dozen times, and I gave up everytime... perhaps I'm not intelligent enough for linux...
Padu
Reply to
Padu
A productive enviroment is were one can produce with ease and at low cost. Maybe with fun. In my experience, Windows is not. But I agree with you, if you are abused^H^H^H^H^H^Hused with Microsoft APIs and its grapical cage (ops, IDE, I mean), than you'll save a lot of time than trying to understand different worlds.
What that should mean? I suppose people would buy robots being based on they ability to their job, rather that on what OS they run.
Oh, unless you are talking about that Microsoft Mafia that you can find around PC sellers...
Oh, yes, and it also easier to let its crappy driver crash the whole OS. However, I don't think this strictly applies to robotics. Or XPe has driver for R/C servo and IR sensors?
Fascinating. Now I wonder, who wrote that paper?
Then, when next Win XPe worm will spread world wide, I hope I have as less as possible of that commercial devices around me.
temutamente, Cthulhu
Reply to
Cthulhu
Irrelevant in an embedded application, unless you want your toaster to run Office.
If you mean plugging a webcam into your desktop PC then yes, Windows wins. If you mean getting the OS running on your own custom board then I can't imagine anything better than being able to examine and edit the source code for the kernel.
According to studies Linux is cheaper the Windows, which is cheaper than Linux, which is cheaper than Solaris, which is cheaper than Windows, which is cheaper than the previous Windows, which is cheaper than NetWare, which is cheaper the Windows, which is cheaper then OS/2, which is cheaper the Linux, which is cheaper than AIX, which is cheaper than...
Tim
Reply to
Tim Auton
Yuhuuuu! I love flame wars...
"Cthulhu" wrote
Productive means you are able to produce more. Nothing to do with cost.
It means that there are many more applications, drivers, companies, professionals and so on available for windows.
I'm relatively new to robotics, but I already realize that you must divide tasks and assign them to the most appropriate tool at hand. If I want to control an R/C servo, I won't use neither linux or windows, I will probably use a PIC that will receive/send messages to my host computer... running linux or windows. Although winxpe has a RTOS module available, I don't believe it is the appropriate way to handle things.
Search, read and find out.
Only if you let. Most of embedded devices will never have a network connection... can't beat that kind of security can you?
There is a difference in prefering something because it is better or because you are passionate about it.
I am passionate about my favorite soccer team, but it doesn't mean it is the best one.
Reply to
Padu
"Tim Auton"
Not when this embedded application can be developed using the same tools you use for your desktop applications.
The question is: I don't need to mess with the kernel. My goal is to create software for a robot, not fixing bugs in the OS.
It all depends on your point of view :-)
Padu
Reply to
Padu
The tools I use to develop my desktop applications can be used to make anything from PHP websites to code for an AVR. You need new tools.
Tim
Reply to
Tim Auton
I would agree with you if you said "most embedded devices do not have a network connection"...but to use the future tense is being pessimistic about the future of embedded microcontrollers. In the near future I hope they are all networked: the TV, microwave, fridge, car, dishwasher, water heater, thermostat, security system, etc. etc.
Of course, when that day comes I also hope that *none* of them are running anything resembling the current versions of Windows.
Reply to
Mark Haase
Why not?
RJ
Reply to
jboothbee
Doesn't everybody prefer freedom ?
If you answered "low cost" then the question should have been "Why do robot makers prefer Linux over vxWorks ?"
A related issue is "Why did NASA prefer vxWorks over Linux for the Mars rovers ?" I bet part of the answer is that few people knew about Linux at the time the rovers were designed.
Looks like we might see Linux-based robots from NASA someday:
formatting link
Oh, and don't let anyone tell you that Linux crashed Beagle 2: the lander was running a custom operating system, not Linux.
formatting link
AC
Reply to
A. Caspis
No doubt paid for by M$!
Dave
Reply to
dave stanton
Yes, but by then Padu will be running M$ and all will be well with the world.
Dave
Reply to
dave stanton
I do not, sorry.
interrottamente, Cthulhu
Reply to
Cthulhu

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.