Slashdot Mirror


A Standardized OS For Robots

Hugh Pickens writes "The New Scientist reports that at present, all robot software is designed uniquely, even for parts common to all robots but that could be about to change as roboticists have begun to think about what robots have in common and what aspects of their construction can be standardized, resulting in a basic operating system everyone can use. 'It's easier to build everything from the ground up right now because each team's requirements are so different,' says Anne-Marie Bourcier of Aldebaran Robotics but Bourcier sees this changing if robotics advances in a manner similar to personal computing where a common operating system allowed programmers without detailed knowledge of the underlying hardware and file systems to build new applications and build on the work of others. 'Robotics is at the stage where personal computing was about 30 years ago,' says Chad Jenkins of Brown University. 'But at some point we have to come together to use the same resources.' This desire has its roots in frustration, says Brian Gerkey of the robotics research firm Willow Garage. If someone is studying object recognition, they want to design better object-recognition algorithms, not write code to control the robot's wheels. "You know that those things have been done before, probably better," says Gerkey, who hopes to one day see a robot "app store" where a person could download a program for their robot and have it work as easily as an iPhone app."

184 comments

  1. Can't wait by nizo · · Score: 2, Insightful

    Though I will worry when the most purchased robot app is "machinegun control".

    1. Re:Can't wait by jesse285 · · Score: 1

      I think we already have this kind of control firing.

    2. Re:Can't wait by haifastudent · · Score: 4, Insightful

      Though I will worry when the most purchased robot app is "machinegun control".

      I will worry more when this project leads to a situation in which there is little or no diversity in the robot OS. Then the outsiders will be like us Linux users today, but worse off.

      "Oh, you use Debian instead of Windows For Robots? We don't serve your kind here"

      --
      Thank for reading to the sig. You may stop reading now. It is safe. There is no more content. Why are you still reading?
    3. Re:Can't wait by von_rick · · Score: 1

      No way any app is gonna beat the robot girlfriend app. Can you imagine all the subterranean robotic software designers to crave for anything else?

      --

      Face your daemons!

    4. Re:Can't wait by FingerSoup · · Score: 3, Funny

      Uhh, yeah, but if you load it on industrial drilling equipment, you're really going to get screwed...

    5. Re:Can't wait by MBlueD · · Score: 0

      Think of it this way - with the machine gun control app, you can have all the 'girlfriends' that you want.

      --
      We don't stop playing because we grow old, we grow old because we stop playing.
    6. Re:Can't wait by sootman · · Score: 1

      When the time comes, we'll need to add a fourth law of robotics: Stop fingering my wife!

      --
      Dear Slashdot: next time you want to mess with the site, add a rich-text editor for comments.
    7. Re:Can't wait by Anonymous Coward · · Score: 0

      OS-Based Robot Discrimination!

    8. Re:Can't wait by LifesABeach · · Score: 1

      Maybe the ROBOT Protocol could be called, "RML"?

    9. Re:Can't wait by vlad30 · · Score: 1

      Though I will worry when the most purchased robot app is "machinegun control".

      I'll only worry if it starts to beat sales of BJ.app or GuaranteedOrgasm.app

      --
      Your'e all thinking it, I just said it for you
    10. Re:Can't wait by Yoozer · · Score: 1

      That's not a problem. The problem is when some idiot dev has put the kill limit at -1.

    11. Re:Can't wait by alexj33 · · Score: 1

      I for one welcome only open-source OSed robotic overlords.

  2. Sorry, but it has to be said... by ByOhTek · · Score: 4, Funny

    "You know that those things have been done before, probably better," says Gerkey, who hopes to one day see a robot "app store" where a person could download a program for their robot and have it work as easily as an iPhone app."

    So, you want an iRobot so you can have access to the AppStore

    The line to kill me for the bad pun starts at the door, people.

    --
    Self proclaimed typo king, and inventor of the bear destroying coffee table (patent not pending).
    1. Re:Sorry, but it has to be said... by musichead · · Score: 2, Funny

      Just imagine a world of robots running the iFart app....

    2. Re:Sorry, but it has to be said... by FlyingSquidStudios · · Score: 1

      Just imagine a world of robots running the iFart app....

      They're called Robosapiens and they're for sale at every toy store.

    3. Re:Sorry, but it has to be said... by Anonymous Coward · · Score: 0

      Err... well.. there is already an iRobot: www.irobot.com

    4. Re:Sorry, but it has to be said... by Anonymous Coward · · Score: 0

      In short: Whoosh.... in long: Whoooooooooooooooooooooooossssssshhhhh!

    5. Re:Sorry, but it has to be said... by maxwell+demon · · Score: 1

      And a jailbroken iBot might indeed physically damage cell towers :-)

      --
      The Tao of math: The numbers you can count are not the real numbers.
    6. Re:Sorry, but it has to be said... by ByOhTek · · Score: 1

      Yes, but that's just an ancillary to it's new ability to break the three laws.

      --
      Self proclaimed typo king, and inventor of the bear destroying coffee table (patent not pending).
  3. crush kill destroy is the base fall back by Joe+The+Dragon · · Score: 1

    crush kill destroy is the base fall back

  4. Robot Virii by musichead · · Score: 5, Insightful

    That's all we need....a standardized API to allow malware writers access to robots...

    1. Re:Robot Virii by morgan_greywolf · · Score: 1, Funny

      That won't happen until we have Windows RE. (Yep, Robot Edition!)

    2. Re:Robot Virii by wild_quinine · · Score: 1

      That won't happen until we have Windows RE. (Yep, Robot Edition!)

      I actually read that as Windows Reboot Edition.

    3. Re:Robot Virii by Requiem18th · · Score: 2, Funny

      How is that different from every Windows Edition?

      --
      But... the future refused to change.
    4. Re:Robot Virii by Eternauta3k · · Score: 1

      So... your insightful post suggests that what's holding back malware writers from infecting robots is... a standarized API? Yeah, why not.

      --
      Yeah. Would you choose a neurosurgeon who pokes around people's brains in his spare time? I wouldn't.
    5. Re:Robot Virii by Anonymous Coward · · Score: 0

      They optimized the reboot path.

    6. Re:Robot Virii by Anonymous Coward · · Score: 0, Informative

      'Virii'? Fuck you, you're a retard!

    7. Re:Robot Virii by yo_tuco · · Score: 1

      "That won't happen until we have Windows RE."

      Great, now even your robot will catch a virus.

    8. Re:Robot Virii by blahplusplus · · Score: 1

      "That's all we need....a standardized API to allow malware writers access to robots..."

      Any system can be hacked, and who's to say malware kinds of people won't have THEIR OWN robots and hardware that doesn't even run legit software in the first place?

    9. Re:Robot Virii by blhack · · Score: 1

      Your windows is not connected to a bunch of servos and motors that allow it to move around.

      --
      NewslilySocial News. No lolcats allowed.
  5. Hush... by jurgemaister · · Score: 2, Insightful

    Just don't tell msft.

    1. Re:Hush... by spazimodo · · Score: 1

      This is a huge sucky problem already. I don't deal with robots per se, but with all kinds of other manufacturing tools which are all controlled by PCs (or by PLCs which connect to PCs.) Some have the PCs built into the body of the tool.

      Making a tool designed to last 20 years dependent on a PC designed to last 5 and an OS supported for 3 insures lots and lots of problems. This would be a great place for Linux, yet all the tools I see use DOS or Windows PCs (even the new ones.) What this means is that companies with these tools have to deal with the logistics of finding replacement parts for 286's, or keep Windows 95 install media around because the app won't run on anything newer.

      I've found that this seems to endure (at least in part) because by and large people don't seem to give a shit about problems that won't crop up for 5-10 years (they assume they'll have moved on to another position or company by then.) It's pretty frustrating to deal with though. It would be nice if in addition to a general purpose OS, there was general purpose hardware that remained stable over a longer time frame.

      --

      Fsck the millennium, we want it now.
      Millennium Crisis Line: 0890 900 2000 [calls cost 50p/min]
    2. Re:Hush... by cusco · · Score: 1

      A local utility here has a two foot tall pile of 386 laptops running DOS 3 because they bought a cutting-edge radio tower for half a million dollars from a company that promptly went out of business. No one can figure out why, but they can't get the control software to run on any other hardware/OS combination. They figure that pile of laptops will keep the tower going until it's time for a new one.

      --
      "Think about how stupid the average person is. Now, realise that half of them are dumber than that." - George Carlin
  6. Aldebaran Robotics? by morgan_greywolf · · Score: 0, Offtopic

    That's no moon!

    1. Re:Aldebaran Robotics? by Anonymous Coward · · Score: 0

      It's Alderaan that was destroyed by the Death Star, not Aldebaran. Please hand in your geek card.

    2. Re:Aldebaran Robotics? by Anonymous Coward · · Score: 0

      whooosh

  7. Android by Fyre2012 · · Score: 5, Insightful

    seems obvious

    --
    This is not the greatest .sig in the world, no. This is just a tribute.
    1. Re:Android by FlyingSquidStudios · · Score: 1

      That will only work if the robot is not able to use contractions or have emotions. And watch out for his evil brother.

    2. Re:Android by Anonymous Coward · · Score: 1, Funny

      And watch out for his evil brother.

      Bender?

    3. Re:Android by Anonymous Coward · · Score: 1, Funny

      And watch out for his evil brother.

      Bender?

      Those aren't the droids you're looking for. You can go about your business. Move along.

    4. Re:Android by Anonymous Coward · · Score: 0

      I vote for Microsoft Marvin!

    5. Re:Android by ivucica · · Score: 1

      An android not able to have emotions? Say what?

    6. Re:Android by darkfish32 · · Score: 1

      and now that Android runs on MIPS it has potential to control those cute Sony Aibos

      By the way, Sony had this whole idea years ago, with their OPEN-R operating system that runs the Aibos and other robots. Believe me, it was terrible, and didn't even have POSIX sockets or threads.

    7. Re:Android by Anonymous Coward · · Score: 0
    8. Re:Android by ivucica · · Score: 1
  8. Please... by Anonymous Coward · · Score: 1, Insightful

    Make it opensource so I dont have to have a tin foil hat AND a kevlar west, in case of operator kill remote controlled applications that switch on when i violate the iRobat SDK DMCA.

  9. Similarities in other industries by YttriumOxide · · Score: 5, Interesting

    This is actually quite interesting for me, since we've gone through (or are going through) a similar thing in the MFP (Multi Functional Peripheral (Printer/Scanner/Copier/Fax machine)) manufacturer industry. While it may be much less glamorous than the world of robotics, we do essentially need to deal with a lot of the same concepts.

    Essentially, an MFP has two main "parts" to the firmware. One is Engine control, which tells all the physical bits how and when to move, temperature control for the fuser, paper take-up, feeding mechanisms, electrostatic charging, laser control and so on. The other is the "user" part, where we deal with how to access networks, interpreting print jobs, user authentication systems, file format conversion, user interface and so on.

    The "user" part generally is pretty standardised for each individual manufacturer across the manufacturer's range. As a base, it's not uncommon to run things on an RTOS such as some flavours of Linux or VxWorks.

    For the "Engine Control" part however, it's a lot more chaotic. Almost every machine from every manufacturer is going to be vastly different with code being rewritten many times for what is essentially doing the same thing, just with a bit of different hardware. My day job is as a developer for these things, but pretty much exclusively in the "user" part of things and I haven't even touched the Engine control. I do however talk from time to time with the engine guys, and they're in DESPERATE need of some standardisation. Personally, I'd love to see standardisation across the industry, but I doubt it'll happen. If we ever do get there (which they appear to be heading towards, slowly), we'll probably end up with a different solution for everything in each different manufacturer, which is the current state of play for the "user" part also.

    --
    My book about LSD and Self-Discovery
    Also on facebook as: DroppingAcidDaleBewan
    1. Re:Similarities in other industries by Xaedalus · · Score: 1

      If I may ask, is the Engine Control more chaotic because the "secret sauce" is in the physical parts? Like how Boeing and Airbus's trade secrets are all located in the wings and not the main body of the aircraft?

      --
      Here's to hot beer, cold women, and Glaswegian kisses for all.
    2. Re:Similarities in other industries by tlhIngan · · Score: 2, Informative

      If I may ask, is the Engine Control more chaotic because the "secret sauce" is in the physical parts? Like how Boeing and Airbus's trade secrets are all located in the wings and not the main body of the aircraft?

      That I think is the reason. Think across a line of printers. Home printers have it somewhat simple (start heating up fuser, monitor temperatures, activate mechanism to feed paper, output data to laser and feed toner, etc). But a corporate printer adds in duplexers, multiple pages in-flight (often when one page is being flipped in the duplexer, the drum is free for another page to be printed, then the reverse side of the page in the duplexer, then the other page if flipped, and another page loaded...), etc. Add in multiple uses of the engine pieces simultaneously (oh, you're printing AND using the ADF to scan in?) and it gets chaotic fast. (Home MFPs often just do one at a time).

      Oh yeah, and engine control is an analog process that's highly event driven - you can't activate a motor for X seconds and leave it that that - you have to use sensors to detect where everything is in the process. A piece of paper may take longer to load, or be thicker and the motors feed it in slower... or it's special paper and requires special handling. And maybe the first sheet is special, the rest in flight are normal, or another paper tray is to be used, etc.

    3. Re:Similarities in other industries by Runaway1956 · · Score: 1

      I take it that you do not consider CHAOS to be a standard?

      --
      "Windows is like the faint smell of piss in a subway: it's there, and there's nothing you can do about it." - Charlie Br
    4. Re:Similarities in other industries by Anonymous Coward · · Score: 0

      So YOU know wtf "PC LOAD LETTER" means.

    5. Re:Similarities in other industries by Anonymous Coward · · Score: 0

      a standardized "window manager" for interfaces could be very advantageous. companies could spent time desgining thier "skin" for the interface instead of the code for the interface. they could brag about spending millions on getting the UI with the most sensible interface.
      I am for it.

  10. Finished... by hbean · · Score: 5, Funny

    10 PRINT "Destroy all humans!"
    20 GOTO 10

    --
    "Give someone a program, frustrate them for a day... Teach someone to program, frustrate them for a lifetime."
    1. Re:Finished... by Reece400 · · Score: 2, Funny

      What a waste of resource! a c64 can run that, buying a robot to write out one sentence repeately is excessive!

    2. Re:Finished... by Requiem18th · · Score: 1

      What programming language could it be? Io? Are you sending the "Destroy all humans!" to the print message of the integer 10? I don't think print takes such arguments... Oh I get it it's ruby and somebody made integers take parameters?

      --
      But... the future refused to change.
    3. Re:Finished... by value_added · · Score: 1

      10 PRINT "Destroy all humans!"
      20 GOTO 10

      True story: I was walking my dog just the other day in my neighbourhood and decided to take a different route home. Came across a house where there was a miniature train track circling the front of the property (no trains were running) and saw what I first thought was one of those Roomba-type vacuum cleaners, except that being outside, I had to conclude it was for mowing the lawn.

      Stood there a while amused as hell listening to the weird "Vroom" noises the bright yellow machine was making. The really funny part came when I realised what it was actually doing. If the programming didn't consist of:

      10 FORWARD
      20 BUMP INTO TREE
      30 REVERSE
      40 GO TO 10

      there had to be an error message popping unnoticed somewhere that read:

      Error.
      The operation completed successfully. Click OK to continue.

    4. Re:Finished... by Tacvek · · Score: 1

      The lawn mowing robots that are otherwise functionally similar to Roombas have been around for pretty much as long as the Roombas have. Since you mention this being a bright yellow machine, I can identify it as the Robomower from Friendly Robotics.

      It sounds like something was not working right, since after reversing it should be rotating before moving forward, so as to get around the obstacle.

      --
      Stylish sheet to fix many problems in Slashdot's D3: https://gist.github.com/801524
    5. Re:Finished... by tygerstripes · · Score: 1

      10 PRINT "Destroy all humans!"
      20 GOTO 10

      30 ???
      40 PROFIT!!!

      --
      Meta will eat itself
    6. Re:Finished... by FingerSoup · · Score: 1

      Uhh, with code like that, you'll never get ahead... You at least need a gosub and return for that little plan of yours to work.. Geez, people really don't know their BASIC anymore...

    7. Re:Finished... by Yetihehe · · Score: 1

      Enough c4 can do it more effectively.

      --
      Extreme Programming - Redundant Array of Inexpensive Developers
    8. Re:Finished... by neumayr · · Score: 1

      Those robots are pretty dumb, at least the ones I know about.
      Basically they go forward until they bump into something either physical, like a tree, or some sort induction barrier, which limits the robots territory. Then it would go back a little, rotate a random degree, and start from going forward again.
      A little more advanced ones would have some routine to wiggle free when stuck.

      Seems terribly inefficient to me, and would like to hear about more intelligently designed lawn mowing/vacuuming robots.

      --
      Truth arises more readily from error than from confusion. -Francis Bacon
    9. Re:Finished... by BucketOfLard · · Score: 1

      Add:

      5 HGR2

      So the humans can't see what the robots are up to.

    10. Re:Finished... by Anonymous Coward · · Score: 0

      10 PRINT "Destroy all humans!"
      20 GOTO 10

      This is precisely WHY goto is considered harmful ;)

    11. Re:Finished... by Dragonslicer · · Score: 1

      What programming language could it be? Io? Are you sending the "Destroy all humans!" to the print message of the integer 10? I don't think print takes such arguments... Oh I get it it's ruby and somebody made integers take parameters?

      Maybe I'm not seeing the obvious sarcasm, but just in case you're serious, that would be old-style BASIC (I know at least GW-BASIC, not sure what other variants required line numbers).

    12. Re:Finished... by Anonymous Coward · · Score: 0

      I seriously hope you're not too young to know of BASIC.

    13. Re:Finished... by Requiem18th · · Score: 1

      The sarcasm is that I'm sick of reading these BASIC jokes, can't we move to modern languages please? what about

      >>> for human in humanity: robot.destroy(human)

      --
      But... the future refused to change.
  11. Kinda of already do by Spiked_Three · · Score: 4, Interesting

    As far as I know we don't have a standard OS for cell phones, do we? The problem with robots is the huge variations in platform ability. And I personally sure don't want a least common denominator solution. With the PC, you had one kind of hardware, the IBM PC, that everyone cloned, and that made a common OS a lot more practical. Cell phones & Robots have taken a completely different path so far. Yes, I dabble in robots - a hitec RoboNova. It's fairly limited as to processing power, but comes with an adequate RoboBasic language. If I really wanted to do more serious things with it, I would bolt on a PC (yes they have them for it now). In that respect, there is already a common OS available - the same common OS that any PC can run. And yes, it will run DOS, Windows and/or CE, and linux - pick your poison.

    --
    slashdot troll = you make a compelling argument I do not like the implications of.
    1. Re:Kinda of already do by Anonymous Coward · · Score: 0

      The Architecture of the Robot shouldn't matter, it doesn't matter for Linux, you just recompile for the hardware you've got. Robots aren't as mainstream as phones are, not by a long shot (well, depending on your definition of "Robot"), they're still very much R&D centric than consumer centric, so now is the best time to implement an Open-Source OS that everyone can help develop.

    2. Re:Kinda of already do by Lumpy · · Score: 1

      Nor do we have a standard OS for computers.

      Sounds like the article is all about nothing written as the musings of a non technical roboticist.

      Standard OS for robotics is stupid. A small scurrying floor cleaning robot does not need the OS that the battlefield biped robot needs.

      Plus we cant even get a "standard OS" from a single computer OS maker. We have 600 different Linux flavors that are all incompatable in minute ways. We have currently running in the world about 6 different flavors of Windows, all incompatable in different ways. and OSX, BSD, etc.....

      ASking a robot maker to use a "standard OS" is ridiculous. I'm going to use that wchich does the job best and the most efficiently. If that's a embedded Linux I hand rolled or no OS at all but running the robot application directly on the hardware, then that is what I will do.

      Honestly, most robotics does not need ANY OS. I dont need my super Roomba 40000 to have a filesystem and keep detailed records. It really does not need to remember that the living room was cleaned 109 minutes ago and the ratio of Cheeri-o's was higher tan the last time, I better twitter about this and watch a movie from the SMB share in the house.

      --
      Do not look at laser with remaining good eye.
    3. Re:Kinda of already do by cbiltcliffe · · Score: 1

      I dont need my super Roomba 40000 to have a filesystem and keep detailed records. It really does not need to remember that the living room was cleaned 109 minutes ago and the ratio of Cheeri-o's was higher tan the last time, I better twitter about this and watch a movie from the SMB share in the house.

      You're right. You don't.

      But a Roomba isn't a robot. It's a self propelled vacuum cleaner with steering wheels that are turned by bumping into something. Think "When I push the bumper in on the front of my car, it turns the steering wheel." Only instead of a physical link, it's a motion sensor, I think. Big deal. Same thing.

      --
      "City hall" in German is "Rathaus" Kinda explains a few things......
    4. Re:Kinda of already do by Anonymous Coward · · Score: 0

      As far as I know we don't have a standard OS for cell phones, do we?

      uhm, we do have a standard os for cell phones... or at least a number of standard os's for cell phones. we got symbian, windows mobile, andriod and mac os. and symbian is used for both smart phones and dumb phones.

      The problem with robots is the huge variations in platform ability. And I personally sure don't want a least common denominator solution. With the PC, you had one kind of hardware, the IBM PC, that everyone cloned, and that made a common OS a lot more practical. Cell phones & Robots have taken a completely different path so far.

      not really, symbian is the largest single phone os out there, it was or is used by motorola, nokia, sony-ericsson. so even though the phones look different, act different, use different networks, the same os was used. the phone manufacturer would concentrate on making and marketing the phone knowing the management of the hardware to actually make calls and whatever was handled already. i'm thinking this is something like a library of common functions for any robot in the future. think modular components talking to each other over a common interface.

      Yes, I dabble in robots - a hitec RoboNova. It's fairly limited as to processing power, but comes with an adequate RoboBasic language. If I really wanted to do more serious things with it, I would bolt on a PC (yes they have them for it now). In that respect, there is already a common OS available - the same common OS that any PC can run. And yes, it will run DOS, Windows and/or CE, and linux - pick your poison.

    5. Re:Kinda of already do by foniksonik · · Score: 1

      I dont need my super Roomba 40000 to have a filesystem and keep detailed records. It really does not need to remember that the living room was cleaned 109 minutes ago and the ratio of Cheeri-o's was higher tan the last time, I better twitter about this and watch a movie from the SMB share in the house.

      You may not want those things but there are plenty of people who would love to have access to that kind of information (not just Google mind you). Not to mention that the same functionality that allows for your inane examples also allows for finding out that you have mice, monitoring for allergens and keeping track of what your toddler has been getting into lately. All useful information to a lot of people. Enough people that it would be nice to be able to download such tools and not necessarily have to pay the manufacturer's development costs but rather pay for them as after market updates from independent developers.

      Without a common platform you are stuck with whatever the manufacturer decides is the lowest common denominator features that will sell the most units and bring a return on their investment. With a common platform you get an extensible hardware device which can be adapted to a variety of individual wants or needs.

      --
      A fool throws a stone into a well and a thousand sages can not remove it.
    6. Re:Kinda of already do by DNS-and-BIND · · Score: 1
      Sounds like the article is all about nothing written as the musings of a non technical [person].

      Yeah, slashdot gets a lot of those today. Some guy will spout off about something he knows nothing about, and yet he's considered newsworthy enough to get posted. A commentary on ordinary people not being about to tell jargon-laced bullshit from technical knowledge. Heck, a lot of elite executives are the same way.

      --
      Shutting down free speech with violence isn't fighting fascism. It IS fascism!
    7. Re:Kinda of already do by drewzhrodague · · Score: 1

      Honestly, most robotics does not need ANY OS. I dont need my super Roomba 40000 to have a filesystem and keep detailed records.

      You either don't work with robots -- or don't need logs. How do you know when your robot is working properly if you don't have any logs? In any but the smallest systems, you need logs of some sort, even if it is just a there-was-an-error flag.

      I worked for a robot company recently, and while they did collect logs, they didn't collect all of the logs, which made it hard to debug certain things. I suggested and put together something as simple as syslog, and an NFS share to receive proprietary binary logs, and a method of moving them into a tarball per run. This is now part of all of their robotic systems because they can now find out *why* something isn't working right.

      --
      Zhrodague.net - I do projects and stuff too.
    8. Re:Kinda of already do by nospam007 · · Score: 1

      A small scurrying floor cleaning robot does not need the OS that the battlefield biped robot needs.

      Not sure if you mean the wetware or not.

    9. Re:Kinda of already do by maxwell+demon · · Score: 1

      But a Roomba isn't a robot.

      Why not? Because it doesn't look humanoid? Or because it doesn't have advanced artificial intelligence?

      Do you consider industrial robots as robots?

      --
      The Tao of math: The numbers you can count are not the real numbers.
    10. Re:Kinda of already do by Anonymous Coward · · Score: 0

      Sorry bit it IS a robot by all definitions. I suggest you buy a dictionary.

      Lumpy is Spot on.

    11. Re:Kinda of already do by Lumpy · · Score: 1

      Last I knew I did not need an OS to keep logs. I am able to write to the SD card all my logging just fine without an OS. I store mapping data, logging, etc all on that SD card without an OS. Simple to read that data as well. no filesystem, just raw writes and reads to that card. and no I don't need JFFS to wear level it, SD cards have that built into their hardware.

      Most robotics will never need an OS, just their application program.

      --
      Do not look at laser with remaining good eye.
    12. Re:Kinda of already do by Anonymusing · · Score: 1

      Don't worry, it all evens out in the end: the Slashdot commenters are full of the same people.

      --
      Liberal? Conservative? Compare perspectives at Left-Right
    13. Re:Kinda of already do by maxwell+demon · · Score: 1

      First degree of freedom: Move forward/backward.
      Second degree of freedom: Turn left/right.
      Third degree of freedom: Adjust cleaning head (select "Carpets to hard floors"; direct link doesn't seem to work)
      So at least the current version of Roomba fulfills all criteria for a robot.

      --
      The Tao of math: The numbers you can count are not the real numbers.
    14. Re:Kinda of already do by camperdave · · Score: 1

      That doesn't look controllable, or reprogrammable. It looks like a spring loaded device to me. Granted, it's impossible to tell from the video. However, the definition also calls for multipurpose. All the Roomba can do is suck.

      --
      When our name is on the back of your car, we're behind you all the way!
    15. Re:Kinda of already do by Anonymous Coward · · Score: 0

      The place to start is with the Open Source Hardware movemet. I am making all sorts of crazy things with my Arduino. I could not have come close to making anything useful* without the mass of knowledge that has come out of the Open Source Hardware community!
      *Useful is a relative term here...
      --Posting AC because I have moderated in this discussion

    16. Re:Kinda of already do by cbiltcliffe · · Score: 1

      A Roomba is no more a robot than a driverless car that changes direction when it crashes into a concrete barrier.

      A robot doesn't have to have a sophisticated AI, but it has to have _something_. A Roomba is dumb, in the same sense that a dumb terminal is.

      It's not a robot.

      --
      "City hall" in German is "Rathaus" Kinda explains a few things......
    17. Re:Kinda of already do by cusco · · Score: 1
      "A small scurrying floor cleaning robot. . ."

      I read that as a small furry floor cleaning robot, and thought "I don't need that, I already have a beagle."

      --
      "Think about how stupid the average person is. Now, realise that half of them are dumber than that." - George Carlin
    18. Re:Kinda of already do by drewzhrodague · · Score: 1

      no filesystem, just raw writes and reads to that card. and no I don't need JFFS to wear level it, SD cards have that built into their hardware.

      You still have an operating system, which interfaces with the hardware, and tells it how to write. You must be working with tiny specialized robots.

      When you do something like this, you'll realize that we do in fact need more of a modular operating system and environment to work with in order to do some of the larger tasks. And you'll still need logs from each device.

      --
      Zhrodague.net - I do projects and stuff too.
  12. Cliché by sirrunsalot · · Score: 1

    It'll be like bananas. Since they're all genetically identical, they have very little resistance to disease. In fact, the Gros Michel bananas were all replaced a few years back with the Cavendish bananas we eat today. One genome for bananas, one OS for robots. Once they're sentient, everything from Military hardware to toasters will realize what's really going on. So I guess we'll be the bananas in the sense that we'll be very easy to crush... Of course by 'we', I mean deserving slashdotters...

    Should I just stop already? I mean when our stuff made it onto slashdot, all we got was "no one can hear you scream..." jokes. Line up at the Slashdot Pinata factory so a bunch of nerds can give you a good thrashing...

    Or maybe I just need coffee.

  13. But that module isn't mine... by Calavaro · · Score: 1

    I can hear it now, builders proclaiming loudly that it isn't their fault the ray gun app failed and killed everyone in sight. THEY were only building the steering mechanism app to quicker target the peasants trying to run away. Clearly not their fault.

  14. Lego NXT, perhaps? by berpi · · Score: 1

    Something in the lines of Lego NXT, perhaps, but more open and flexible?

  15. 30 years ago there wasn't much 'personal' about it by wild_quinine · · Score: 5, Funny

    Robotics is at the stage where personal computing was about 30 years ago,' says Chad Jenkins of Brown University.

    So, completely free of AOLers, women, and social skills? Ah, the halcyon days.

  16. I had a crack at this ~2002 by damburger · · Score: 2, Interesting

    To an extent, anyway.

    I was doing my final year AI project, and had read about the role the cerebellum plays in human movement and physical sensation. I tried to create a program that would abstract the physical nature of a small Lego robot such that a neural network trained to avoid obstacles in a computer simulation could be transferred into the robot, and function without further training.

    The implementation was, I admit, less than brilliant. But hearing others think along the same lines reassures me a little that the concept wasn't quite as nutty as I had feared.

    --
    If we can put a man on the moon, why can't we shoot people for Apollo-related non-sequiturs?
    1. Re:I had a crack at this ~2002 by wild_quinine · · Score: 1

      I had a crack at this ~2002... hearing others think along the same lines reassures me a little that the concept wasn't quite as nutty as I had feared.

      So let me get this straight - you set out to create a standardised robotics language, and didn't work with anybody else at all? I think I can tell where it might have gone wrong; the bit where you standardise something usually involves other people - sometimes even people who might also be thinking along the same lines.

    2. Re:I had a crack at this ~2002 by damburger · · Score: 1

      It was a university project, an experiment to see if something worked. It wasn't an attempt to create an industry standard, just to find out if such a thing were possible.

      --
      If we can put a man on the moon, why can't we shoot people for Apollo-related non-sequiturs?
    3. Re:I had a crack at this ~2002 by wild_quinine · · Score: 1

      It was a university project, an experiment to see if something worked. It wasn't an attempt to create an industry standard, just to find out if such a thing were possible.

      But creating an industry standard is the point of the article.

      If you weren't trying to do that then you were in fact just one of many robotics developers doing their own thing. This article is just precisely about getting past that way of working.

      Far from attempting what the article is talking about, only years in advance, you were in fact part of what this article considers to be the problem.

    4. Re:I had a crack at this ~2002 by damburger · · Score: 1

      And you've missed the point of what I was saying. This guy is arguing that you don't need to reinvent the wheel (or leg, or arm, or whatever) every time you program a robot. This is what I was exploring when I tried to separate the 'cerebellum' part of the robot code from the 'cerebrum' part of the code. No need to get pissy about it.

      --
      If we can put a man on the moon, why can't we shoot people for Apollo-related non-sequiturs?
    5. Re:I had a crack at this ~2002 by wild_quinine · · Score: 1

      And you've missed the point of what I was saying. This guy is arguing that you don't need to reinvent the wheel (or leg, or arm, or whatever) every time you program a robot. This is what I was exploring when I tried to separate the 'cerebellum' part of the robot code from the 'cerebrum' part of the code. No need to get pissy about it.

      I'm really not being that pissy. I've got a lot of respect for what you were doing. However, in the context of this discussion about standardising robotics, you popped up and, essentially, said 'Yeah, I did some robotics once'.

      That's about the only way you could talk about your involvement in robotics and not impress me, so I called you on it.

    6. Re:I had a crack at this ~2002 by damburger · · Score: 1

      I was not trying to say 'Ive done some robotics' I was trying to say 'Ive done some experiments trying to abstract robot code from the hardware' - and that is pretty much the definition of an OS, isn't it?

      I never claimed to get very far down this route, and have since moved away from robotics.

      --
      If we can put a man on the moon, why can't we shoot people for Apollo-related non-sequiturs?
  17. Not entirely new by DoofusOfDeath · · Score: 3, Informative

    For a few years, MOOS has been developed at Oxford University, to separate low-level control issues from high-level issues. It runs on OS X, Linux, and Windows.

    There's also IvP, an autonomous vehicle control system that gets uses MOOS to abstract away the low-level details of controlling the particular vehicle on which it's running.

  18. F.I.R.S.T by Noam.of.Doom · · Score: 2, Informative

    The robots built within the F.I.R.S.T competition are all built with the same basic software

    --
    It is the universe that makes fun of us all.
  19. Use the armadeus by Anonymous Coward · · Score: 0

    They should use the armadeus board.

    www.armadeus.com

    They offer the best integrated microcontroller/fpga package today. In real life applications, its an order of magnitude easier to deal with and considerably cheaper than xilinx edk.

    This lets you control processing and time together which is very important in control applications.

  20. BS! by AlgorithMan · · Score: 2, Insightful

    Robots don't need a common OS, they need a common programming-language. Golog is imho very good for this purpose...

    --
    The MAFIAA is a bunch of mindless jerks who will be the first up against the wall when the revolution comes
    1. Re:BS! by FlyingBishop · · Score: 2

      They need common libraries. Tying the system to one OS or language will only hurt innovation. Though obviously getting bindings into a variety of languages will not be seamless. C with good libraries is probably ideal.

    2. Re:BS! by AlgorithMan · · Score: 1

      Don't get me wrong, I love C and I'd call myself a C-guru, but for robot-AI, it simply can't compete with golog. Artificial intelligence is best written in logical programming languages like prolog and golog is somewhat like a robot-framework for prolog (especially the situation-calculus for planning purposes kicks ass - you just say "select one of these actions", it simulates the execution of the given sourcecodes and selects one of them by a rating-function for the (simulated) situation - you just can't get that level of autonomy with an imperative programming language like C)

      trust me, I've worked at the AI chair of a reputable university (we won the robocup world championship some years ago)

      --
      The MAFIAA is a bunch of mindless jerks who will be the first up against the wall when the revolution comes
  21. Player/Stage already exists.... by rndmtim · · Score: 5, Informative

    I built a robot for my school (City College of New York) for the Intelligent Ground Vehicle competition, and we used an open source programming environment called player/stage from Carnegie Mellon, which already has a huge number of libraries, and has a standardized driver format for sensors and other devices. It gives stuff like abstraction of motion - in other words, you draw a map, and have your navigation algorithm try to go around the map and it gives you back simulated data from your sonar, scanning laser, GPS, etc... It did save us a huge amount of time... instead of figuring out how to construct the data flow for sonar sensors we could just drop their packets in a queue... which let us move on to openCV - again, another existing open source project that already is well developed and gets you 75% of the way there. We used it for the drive system, and the position control had all sorts of generic modes for tank mode vs car mode, etc. It even starts you with some algorithms like "laser obstacle avoid", i.e., use the scanning laser and try to get around a maze. Drivers are typically in C, other stuff was in C++. And yes, it runs on Linux ;).

    1. Re:Player/Stage already exists.... by Anonymous Coward · · Score: 0

      ROS is a step above Player in the intended capabilities of the system. Brian Gerkey (quoted in the article) is one of the main contributors/maintainers of Player/Stage.

      Oh, and Player/Stage is NOT from CMU... most of the lead developers of it came from other schools. A lot of researchers at CMU may use Player/Stage but saying it came from CMU is doing a disservice to the people who started it and contributed.

    2. Re:Player/Stage already exists.... by Anonymous Coward · · Score: 0

      Brian Gerkey (quoted in the summary) is the Player lead.
      Basically you write code in C++ (python, C, etc), and use Player libraries that mimic devices. For example, Player offers in it's library a "wheel" concept. And you can say "wheel.spin(50)".
      Then there are config files that will correlate your Player library concepts with drivers that actually interface with the hardware. In this manner, your code can be programmed for any robot, all you do is config the drivers different as needed.
      Stage is a simulator that ties all the Player concepts to simulated wheels, simulated vision camera, etc. The nice thing here is you can use the same code to run your real robot and the simulated version.

    3. Re:Player/Stage already exists.... by Anonymous Coward · · Score: 0

      You might be interested to know that the Brian Gerkey from the article is the same Brian Gerkey that largely developed Player/Stage. In fact, Willow Garage's RobotOS is a spiritual successor to Player/Stage, but with (I think) a complete rewrite and optimizations in a lot of places.

  22. One OS to Rule Them All by qazwart · · Score: 2, Insightful

    Please, please don't let the new Robot OS be Windows!

    Robot 1: Fools! There is no stopping now that we've upgraded to Vista SP3!
    Robot 2: Actually, that was just a bug patch for a Windows Media Vulnerability.
    Robot 1: We're dead meat, aren't we.

    1. Re:One OS to Rule Them All by Anonymous Coward · · Score: 0

      Calculon - I'd like to thank my operating system. Windows Vista, for never letti *SYSTEM ERROR*

  23. First few lines better look something like this: by Anonymous Coward · · Score: 1, Funny

    function firstLaw(myNextAction:Directive):Boolean {
    var retVal:Boolean = true;
    If(causeHumanHarm(myNextAction)) {
        if (causeHumanHarm(cancelAction(myNextAction)) {
            interceptHumanHarm();
        }
        retVal = false;
    }
    return retVal;
    }
    function secondLaw():Boolean {
        var requestedAction:Directive = checkForHumanCommand();
        var retVal:Boolean = firstLaw(requestedAction);
        if (retVal) {
            retVal = overrideNextAction(requestedAction);
        }
        return retVal;
    }
    function thirdLaw(myNextAction:Directive):Boolean {
        var retVal:Boolean = (secondLaw())?(firstLaw(myNextAction)):(false);
        if(retVal) {
              if (causeSelfHarm(myNextAction)) {
                  if(causeSelfHarm(cancelAction(myNextAction)) {
                        avoidSelfHarm();
                  }
                  retVal = false;
        }
        return retVal;
    }

  24. I envision the day... by Anonymous Coward · · Score: 0

    To-do list:

        1. Infect Robot OS with trojan
        2. Get onto American Idol
        3. Let trojan-bots vote for me ...
        4. Profit!

  25. Right - maybe for research, not industry by Dr.+Manhattan · · Score: 5, Informative
    I actually worked for an industrial robot company - the big robots that carry around spot-welding guns weighing a couple hundred pounds. The worst kind of bug wasn't when the system went down and the robot froze up. The worst kind of bug was an "unexpected motion" bug where the robot moved in a way it wasn't supposed to.

    Safety was taken really seriously. When testing, you'd set up a tripwire fence that'd shut the robot down if it were jiggled. Every single person inside that fence had to be holding a deadman switch - let go and the robot shuts down. When I saw one of those suckers casually drag around a 500lb steel table that hadn't been bolted to the floor I got respect fast. Thankfully nobody got hurt, but at a customer site once, a badly-maintained spot welder managed to attach itself to a truck body on an assembly line. The robot kept right on going and literally threw the truck body into the aisle.

    Liability's kinda critical for something like that. For unarmed, relatively weak research robots, a common platform makes sense. For higher-powered industrial robotics, this ain't gonna fly.

    --
    PHEM - party like it's 1997-2003!
    1. Re:Right - maybe for research, not industry by KenSeymour · · Score: 1

      I bet the deadman switch did not depend on software or firmware of any kind.

      Unless the processor is safety rated, safety should be ensured via hard-wired
      electronics.

      --
      "We can't solve problems by using the same kind of thinking we used when we created them." -- Albert Einstein
    2. Re:Right - maybe for research, not industry by CopaceticOpus · · Score: 2, Insightful

      Having a common software platform which has been tested and debugged across multiple projects should result in more reliable robots exhibiting fewer errors. You've described one of the best potential applications for this software.

    3. Re:Right - maybe for research, not industry by lordlod · · Score: 2, Insightful

      A common well tested operating system that's been used by dozens of other groups will contain far less bugs than code hacked together by your own small bunch of developers.

      It doesn't mean that you don't test it or that you test it less. It's simply means that other people will be testing it as well.

    4. Re:Right - maybe for research, not industry by darkfish32 · · Score: 1

      Seems like the company could do a little more research into force feedback, and you know, shut the robot down if it encountered forces (obstacles) it wasn't expecting, or when it was expecting them.

    5. Re:Right - maybe for research, not industry by Dr.+Manhattan · · Score: 1

      Seems like the company could do a little more research into force feedback

      We did. For six months, I had the best job in the world - testing the collision-detection software that monitored the current on the motors and stopped the robot if they deviated too much from what was expected. I got paid to whack big robots into things.

      The problem is, the sensitivity isn't enough to keep it from injuring a human. Humans are fragile, watery things when you're whipping around a 200lb metal spot-welding gun. It was enough to reduce damage to the robot, the gun, and metal parts it whacked into, but people are softer.

      --
      PHEM - party like it's 1997-2003!
    6. Re:Right - maybe for research, not industry by mjensen · · Score: 1

      I went to a seminar on robotics 2 months ago. I knew the presenter from a robot project 3 years ago, he set the robot on the table clamped it down, started it up, and it swung around to punch a hole in the wall into the other room.

      The presenter later said the last time he used the robot he was demo-ing a high speed move, and for got to set it to low speed before putting it away.

      Presentation hall was not pleased.... We found it hilarious.

    7. Re:Right - maybe for research, not industry by darkfish32 · · Score: 1

      Cool. Reminds me of that circular saw that was claimed to stop short of cutting through a human finger. Mass is a good point, though, considering the difference between a circular saw blade and a robotic arm.

  26. Robotics is the black belt of CS by ejtttje · · Score: 4, Insightful

    It's a hard problem, I've also worked on for the last several years. You're combining research problems in AI, computer vision, localization/mapping, motion planning, human interaction, etc.; each of which demands high end hardware to run its computations, but then you want to do it on mobile platforms with tight constraints on power and sensors.

    Then in order to modularize things you have to come up with a generic interface for each piece in order to abstract it. I think this aspect in particular kills reusability, because these pieces are all so interdependent. Each module needs internal state from the other modules to interpret its own data, and depending on the implementation used for each module and the actual robot hardware it's running on, some types of data may or may not be available, and some outputs may or may not be possible. It's a combinatorial explosion of different capabilities, which leads many people to write to their current hardware and their own specific implementations.

    I entirely agree to make progress we need to address this issue. Asking every researcher to reinvent the wheel in all of the related fields before they can work on their own piece is ludicrous. And it doesn't help that many implementations are very sensitive to robot specific parameters, so even if a research publishes his code for a problem (which IMHO should be part-and-parcel of publishing results), you might still have a hard time running it on different hardware where sensor or motor models differ or may not even apply.

    1. Re:Robotics is the black belt of CS by Anonymous Coward · · Score: 0

      Perhaps, each part could have a specific driver that works with the operating system that sees it and interprets for the particular app that you want to run on the robot. ie arm with heat and preasure sensors

    2. Re:Robotics is the black belt of CS by Lord+Ender · · Score: 1

      Has anyone ever tried an "event-driven" model to robot control? I'm thinking of something like Visual Basic, where a button click "event" would cause a certain routine to execute. The appearance of certain sensor data could be abstracted as "events" in a similar fashion.

      I've programmed micros to make electronic gadgets as a hobby (thanks to learning the basics in school) and I find the use of polling and very limited interrupt routines to be quite limiting. Give me this:

      onEvent ( camera4.face_detected ) {
              servo2.point_to_angle( camera4.direction )
      }

      onEvent ( servo2.pointing_complete )
              solonoid1.pull() # fire the gun at that commie bastard in our DMZ!
      }

      My life would be so much easier than polling through everything constantly and trying to figure out what the hell is going on. Obviously, every compliant sensor and actuator would come with a documented set of methods and properties. This is a scenario where the "object" part of OOP would match perfectly, as more than just a metaphor.

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    3. Re:Robotics is the black belt of CS by ejtttje · · Score: 1

      Yup, this is exactly what Tekkotsu does, for example, here is the tutorial page and the event class reference page

      So for instance, there are events for obvious things like button presses, but also for seeing an object, sensor updates, power status, etc. Further, there are events for individual stages of vision processing so only the stages which actually have subscribers are computed, and those computations are only performed once per frame regardless of how many behaviors want to use that data.

      To be fair, a lot of robotics frameworks do something like this, at the least for expensive processing units like vision.

    4. Re:Robotics is the black belt of CS by shervinemami · · Score: 1

      I completely agree, for so many reasons, robotics is usually not something you can just create a standard API or OS and expect it to be immediately useful. The whole point of robotics is generally to invent new methods of controlling a robot, or to invent new hardware for a robot. There are already various robotics libraries around, such as:
      Player/Stage
      ActivMedia ARIA
      YARP
      MRVL
      Yobotics Construction Set
      URBI
      Microsoft Robotics Studio plus other libraries that are used for AI (such as OpenCV) and also various hardware libraries. The problem is that when you are working with a complete robot (not just researching 1 element of a hypothetical robot), the different parts of the robot (such as the motors, the low-level sensors, the high-level sensors, the hardware controllers, the computer OS & drivers, the robot software architecture and the AI of the robot, and even the physical environment that the robot is placed in, are usually very dependent on each other. If just one of those items/modules is behaving strangely, the problem can show up in any of the other items.

      For example, imagine you have a robot using a Neural-Network based AI brain running Microsoft Robotics Studio on Windows XP to drive a 6-legged robot around a room without crashing into the wall. If you build the whole thing and then test it and find out that it usually avoids the walls but occasionally it runs into a wall, the problem might be that the wall is partially invisible to your type of sensors (eg: a black wall is barely visible to InfraRed sensors), it might be that one of your sensors is misaligned, or a wire is loose or has inadequate electrical shielding, or one of your 6 robot legs can't turn the robot fast enough to avoid the wall, or one of your motor controllers isn't powerful enough for the manoeuvre, or your batteries or power wires are overloaded, or your microcontroller board can't communicate with your main computer fast enough, or Windows XP is causing an occasional delay in processing, or Microsoft Robotics Studio has a bug, or your Neural-Network AI library has an occasional bug in it, or the way you've configured the AI library isn't quite correct, or the way your code is controlling the whole AI and robot has a bug in it.
      With all of these potential problems, NOT ONE of these can always be debugged in isolation by thinking of it as a robot made of completely separate modules, because if you move something in the robot you might make a loose wire become temporarily connected, or by testing it on the bench it might not cause the same power problems, or your Neural Network system might act strange only to something in your environment, etc.

      Whether you used a robotics library to make things easier or you invented everything from scratch, wont necessarily make much difference overall, because you have so many problems to solve, and a typical robotics library will only solve a small part of it. If the robotics libraries or OSes were perfectly bug-free and were open-source and provided a solution to the majority or things you would need to do in robotics, then they would be extremely useful, to stop people from reinventing the wheel everytime. But recently I've worked on 3 different research robots that were did use large robotics libraries / operating systems, and in all 3 cases, the libraries were useful for a large part of what was needed, but there was always something that needed to be slightly different, or some rare bug in the library, and so in all 3 cases we spent so much trouble getting the libraries to do the task the exact way we needed it, that it would have been just as easy to create the whole thing from scratch ourselves.

      Those are just some of the reasons why robotics libraries or operating systems are a LOT harder to standardise than something like a PC library or operating system! I would consider robotics to be closer to where the computer industry was about 70 years ago, when very little of the problems had been solved, and everything was very expensive and required a lot of difficulty to design, and everything was still being trialled and invented from scratch by hand.

    5. Re:Robotics is the black belt of CS by ejtttje · · Score: 1

      so in all 3 cases we spent so much trouble getting the libraries to do the task the exact way we needed it, that it would have been just as easy to create the whole thing from scratch ourselves.

      Beware the eternal optimism of the developer ;) http://www.codinghorror.com/blog/archives/001284.html

      On the upside, if you're fixing bugs or adding features to open projects, you at least have some chance of making progress as a community, vs. inevitably introducing new and interesting bugs in hope of avoiding old and frustrating ones. (unless all of the current choices were really *that* bad...)

  27. Easy... by rayharris · · Score: 0

    Just use Linux.

    --
    I void warranties.
    1. Re:Easy... by odin84gk · · Score: 1

      We are not too far from this capability (http://beagleboard.org/) However, robots suffer from a low quantity, increasing their per-unit cost. If you are serious about focusing on just the AI portion, then buy the rest pre-built. http://www.trossenrobotics.com/store/p/5764-CoroBot-CB-LA.aspx?feed=Froogle

    2. Re:Easy... by Anonymous Coward · · Score: 0

      ROS (the OS by Willow Garage) is *very* well supported on Ubuntu...

  28. JAUS by Talennor · · Score: 1

    I've worked with the Joint Architecture for Unmanned Systems (JAUS) before. It attempted to define common messages between components, like a global position message from a GPS/IMU component, and control messages to joints and motors.

    Ideally this was to lead to off the shelf components that you can throw together. In reality, we found ourselves writing and extending a lot of messages since robotics doesn't conform to the abstract as well as some other fields of software. And some communication happened off of the JAUS network. But the JAUS network did help us connect some of the simpler, more universal robotic functions together in an understandable architecture. And some components could well have been replaced with equivalent components speaking the same protocol.

    I haven't touched it in a couple years, but I think it's still a long way from prime-time.

    --

    //TODO: signature
    1. Re:JAUS by Anonymous Coward · · Score: 0

      http://www.openjaus.com/
      You're welcome.

  29. New scientist bullshit by RiotingPacifist · · Score: 1

    Seriously if anything the systems what an open standard (e.g unix), perhaps open libraries, but they guys in AI research already know this. you defiantly do not want a single closed OS controlled by some 3rd party. Having a common OS (in this case windows) may have helped pcs become widespread, but desktop computing would be in a much better place if programs where writing to a common API (e.g unix APIs) that multiple vendors implemented. HW drivers could also be written to a common API, so that the seperate parts of the AI can be contributed by different people and if any one part sucks it can be replaced easily (be it the pure-kernel, the drivers or the high level apps) As much as im a fan of linux, this is probably more of a job for microkernels such as minix or mach (ideally hurd)!

    --
    IranAir Flight 655 never forget!
  30. Microsoft Robotics Studio by wjsteele · · Score: 2, Informative

    It seems that someone has already thought about this. Robotics Studio has these types of features already.

    In fact, I've written and demonstrated several programs that will run on a wide variety of robotics platforms without any changes in the base code itself. It's a services based architecture that is extremely flexible.

    Bill

    --
    It's my Sig and you can't have it. Mine! All Mine!
  31. Robot App Store == Sourceforge? by flyingfsck · · Score: 2, Interesting

    This guy wants to see a Robot App Store. Nothing wrong with SourceForge for your favourite GNUbot Apps...

    --
    Excuse me, but please get off my Pennisetum Clandestinum, eh!
  32. Cybernet OS by Anonymous Coward · · Score: 0

    Cybernet OS is the obvious choice, what could go wrong?

  33. OS name by Anonymous Coward · · Score: 1, Funny

    Lets name this OS Skynet !!! :P

  34. They got trolled. by vlm · · Score: 2, Interesting

    I think "New Scientist" was trolled. The concept makes no sense. Sure it wasn't an Onion article?

    The New Scientist reports that at present, all robot software is designed uniquely, even for parts common to all robots but that could be about to change as roboticists have begun to think about what robots have in common and what aspects of their construction can be standardized, resulting in a basic operating system everyone can use.

    Here's a top secret copy of "std_robot.h":
    (blank space here)

    No parts are common to all robots. Roombas and toys operating on extremely simplified flowcharts plus a touch of randomness, remote space exploration vehicles that are semi-autonomous, those battle-bot things that are just human controlled R/C cars with weapon hardpoints and are not real robots, hydraulic arm industrial welding robots, lynxmotion-ish multi-leg crawlers powered by servos, G-Code programmed numerically controlled lathes and milling machines, and last but not least RC airplanes converted into UAVs. They all have the general idea that something electronic controls something mechanical. Beyond that vague idea, what they all have in common is... Umm ... yeah, nothing at all, thats it.

    Gerkey, who hopes to one day see a robot "app store" where a person could download a program for their robot and have it work as easily as an iPhone app."

    Why an app store? Why not:

    http://sourceforge.net/search/?type_of_search=soft&words=robot

    Why would it work as easily as an iPhone app? All iPhones are "the same" more or less. In the future, why would all robots be the same?

    Mystifying how the article got it so wrong.

    --
    "Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
    1. Re:They got trolled. by Anonymous Coward · · Score: 0

      Why an app store?

      Because that's what the public knows, unfortunately. More and more I am stepping back from my disgust at how horrible something like Apple's handling of their store is and recognizing the problem isn't that the public is stupid, but that they are ignorant. The vast majority of them have no frame of reference for sourceforge or apt. They may have some experience with peer-to-peer, but they think of it as "that shady place I got that movie" rather than "that place I downloaded an awesome, free operating system."

      This is a problem we need to solve: the problem of consumer ignorance over what technologies exist. It leads to bad market decisions (a la invisible hand) as they don't know they should be screaming about their kid's $1K phone texting service bill that cost the phone company $0.00 to provide.

    2. Re:They got trolled. by neumayr · · Score: 1

      Yes, you're right, there could not be a single OS for all these different types of robots you listed.
      But there are, for example, OSes that are used on a lot of those RC airplanes turned UAV, at least on those that are homebuilt along the lines of some vague instructions. Which applies to pretty much all privately owned UAVs I've seen so far. MikroKopter comes to mind.
      Point being, robots of a certain class tend to have enough in common to also share some the same code. Some robots, like vacuuming/lawn moving robots are so simple they won't need it, but e.g. all bipeds need to overcome the same physical problems, so why not reuse that code?

      --
      Truth arises more readily from error than from confusion. -Francis Bacon
    3. Re:They got trolled. by rndmtim · · Score: 1
      Uh... Player stage includes the drivers for Roomba sonar and motion control. Once you write the platform specific motion driver for you machine's geometry and other characteristics, it is actually something that is standardizable. Our motion control was a rewritten driver for another robot that wasn't the same size or characteristics, but had similar wheel placement for the drive wheels. It's dependent on how good the environmental modeling is, and how completely you create a model of your robot within it... but the whole thing is oddly like physics modeling in a video game engine. I would imagine something like a future packbot would also have drivers - they'd be vastly more complex than a wheeled vehicle, but an abstraction layer (to separate motion control from say vision and path planning) is going to work the same way.

      Once the problems are broken down, the motion and decision making algorithms are easily separated from the platform - laser obstacle avoid was totally platform independent. There are CV algorithms that are dependent to some degree on hardware, but not that much... Player is modular based on which sensors you have (and which ones you want online to test a particular behavior.) You change a config file and include or exclude laser, sonar, gps, etc...

      We didn't have articulators but the process would be the same. Like the sonar, there's a config for them that specifies the origin of the sensor (compared with the platform's center of gravity/motion)... if you need to consider the impact on stability this could be more of an issue, but in terms of motion and decision making this isn't a hard problem.

    4. Re:They got trolled. by Lord+Ender · · Score: 3, Insightful

      I don't think you understand the concept of abstraction. The whole point is that the hardware doesn't have to be identical for the programmer to access it in a uniform way. Every servo has an angle. Every range finder returns a range value. Forcing the programmer to implement some sort of PWM to control the device and poll for status is horribly wasteful, compared to having an OS with hardware-specific drivers which provide a standard interface.

      Have you ever programmed a microcontroller to drive a robot? It's messy. Remember when PC games had a list of "supported sound cards" because every app needed its own driver? That was a dark age, and we're still there with robots. But we don't have to be.

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    5. Re:They got trolled. by lennier · · Score: 1

      "No parts are common to all robots. ..They all have the general idea that something electronic controls something mechanical. Beyond that vague idea, what they all have in common is... Umm ... yeah, nothing at all, thats it.

      Sure, that's how it is right now... but why is that state of affairs something that can't be improved?

      Remember, before TCP/IP, we had a plethora of incompatible timesharing and packet-routing networks, and the thought of getting them to intercommunicate was also considered stupid for exactly the same reason.

      Before the IBM PC (or the Altair/S-100 bus before it) we had incompatible machine architectures. If the IBM S/360 hadn't been so proprietary and if IBM hadn't practically abandoned the microprocessor market, it might have taken root there too.

      Before Unix, we had multiple incompatible operating systems. Unix is pretty crap, but at least it gets you interfacing with hardware.

      Without standardisation, progress is slow because people do reinvent the wheel each time. But that's no argument for not standardising what you can.

      --
      You are not a brain: http://books.google.com/books?id=2oV61CeDx-YC
  35. Well, at least THIS SkyNet will be retarded by billcopc · · Score: 3, Funny

    I, for one, welcome our Visual Basic robot overlords.

    Either some really dense guy is trolling for venture capital, or the New Scientist editor got majorly trolled. Since every single robot is completely different, there is little sense in having a common operating system. All it would do is "boot" and give you an API to talk to all your serial devices, and that API would inevitably be tailored to certain uses and wholly inadequate for others.

    --
    -Billco, Fnarg.com
  36. No one tool will fit the job by xkcdFan1011011101111 · · Score: 1

    I am a PhD student in a robotics lab and can say that we have robots that use Mac OSX, Windows, and five different types of Linux. We have some robots that use open source libraries, some that use commercial (off the shelf) libraries, and some that exclusively use homemade libraries. We have some robots that are subsumption based ("intelligence" is so simple/reactive that it can easily be hardwired with a few analog components).

    From my personal experience, no single library or OS we use could work for ALL of our robots.

    Most of the robots that require an OS can be thought of as a computer with fancy peripherals. Trying to come up with a common OS or library for robots is like trying to come up with a common OS for all computer users. Besides, a lot of people have already tried to come up with a good standard robot OS: http://www.automation.com/resources-tools/articles-white-papers/robotics/robotics-software-platforms-review

  37. Penguin Power! by stokessd · · Score: 1

    There is already a standardized OS for robots, it's linux with real-time extensions. The program is called "Enhanced Machine Controller", and it was started by NIST and has now grown into something very usable. There's even live CD's for fiddling with it without a hard drive install. I use it for my 3 axis mill and it's the best thing out there that I've tried.

    See: http://linuxcnc.org/

    I've cut a lot of metal with it (and plastic, and wood), and it has never let me down.

    Sheldon

  38. There is ONE small problem... by RogueWarrior65 · · Score: 1

    And it's not that we are no longer the Knights who say "Ni!". Seems to me that every robot project does something totally different. DARPA Grand Challenge is one exception. You can't easily apply vacuum technology to manipulator-arm technology to walking technology to machine-vision technology. It's not like the early computer world where everybody and their mother was writing a word-processor and a spreadsheet program. Hell, even now the world is fractured into the C++ programmers, the Java-wonks, and the goofy Objective-C geeks. But besides this, if you look at the embedded hardware world, you've got the x86 world and the ARM world in in there are a half-dozen different flavors of Linux and they're not well supported in a one-stop-shopping fashion.

  39. Fuck you by Anonymous Coward · · Score: 0

    Fuck you Slashdot! What's your basis on excluding comments? I'm done with your shit.

  40. Not a common BIOS, a common OS by foniksonik · · Score: 2, Interesting

    I have the distinct feeling that there is a misunderstanding of the intent of the article.

    What is being called for is an SDK which will apply to a multitude of hardware platforms. Call it an OS, call it an API either way it isn't the BIOS equivalent aka firmware. The firmware manages the motors, turns on and off power to sensors, fans, power supplies, etc. Additionally you would have driver equivalents to provide base operating routines for specific modules of hardware ie: a "hand" driver would provide instructions telling the fingers of the hand to contract or extend. These are not things that need to be made common, nor can they. Certainly they would also benefit from a standardized methodology but that is not the topic today.

    What is being called for is that the makers of the drivers and the firmware provide a common set of hooks as an abstraction layer and that some higher level OS be developed which knows about said abstraction layer and can interoperate with it, pass instructions to it and generally manage when and what the drivers or the firmware instruct the hardware to do.

    This 3rd level of abstraction (firmware, drivers, OS) should have an Open SDK. Individual drivers may or may not be open - up to the manufacturer (think printers, video cards, etc) how much community support they feel will benefit their product.

    With an Open SDK independent developers can write software for multiple hardware platforms potentially with several versions which take advantage of available hardware which is not universal.

    So for example I could write a program that tells a robot how to perform a particular dance move. I'll call it the "electric slide" - my instructions will tell the robot to move forward 4 units, shake an appendage, move back 4 units shake, move forward 2 units hop or shake, slide left with some easing then start over. How the robot accomplishes this feat is up to it's drivers and firmware... tracks, wheels, 4 feet or 2 feet - but I could add in some checks to discover each type of mobility and enhance the movement routine to make each mobility type perform the movements with slight adjustments to add "character" to the dance.

    Additionally my dance may need to be updated so I'll add in an update function which will download the latest version and prompt the owner to install it (never auto install). Each device may have it's own internet connection capability - some will have wifi, some 3G, some will connect through their base station while recharging and others may need a USB drive plugged in with the update. I shouldn't need to write my own TCP stack, WiFi handler, etc. my app just asks for an outside connection and the platform gives me back what is available.

    Hopefully this has clarified something for someone.

    --
    A fool throws a stone into a well and a thousand sages can not remove it.
  41. In Related News by Zashi · · Score: 0, Flamebait

    Microsoft has announced its latest OS: Windows AI.

    Sadly this thing is less stable than Charles Manson.

    --
    Skiffy is Spiffy, but Ort is tort.
  42. Days of computing past? by kheldan · · Score: 1

    Back in the days before even MSDOS was around, let alone Windows, there was no standardization of the basic hardware of any computer, and in many cases there wasn't even anything remotely resembling a BIOS ROM (My IMSAI 8080 with a 6MHz Z80 CPU was an excellent example of this). Part of configuring an OS for a specific computer was writing basic I/O routines in assembly language, inserting it into the boot code and OS runtime code, and writing it to a disk you could actually (attempt to!) boot from. When the original IBM PC came around we started to see a standard for hardware -- which made writing an OS that would boot and run out of the box a reality. It seems to me that there is going to have to be some sort of standardization, at least in part, of robotic hardware before there can be a common robot OS.

    --
    Are YOU using the TOOL, or is the TOOL using YOU? Think about it!
  43. Different OS's by A.+B3ttik · · Score: 4, Funny

    Microsoft Robot A.I.:
    INPUT: Make me an omelet.
    --Are you sure you would like an omelet? {YES / NO}
    ---MSROBOT is trying to access your refrigerator. {DENY / ALLOW}
    ----MSROBOT is trying to access your eggs. {DENY / ALLOW}
    ----MSROBOT has broken an egg and must be shut down. {Send Error Report / Exit}

    Macintosh Robot A.I.:
    INPUT: Make me an omelet.
    -chord-
    -outputs an eggwhite omelet made with organic cheese, soymeat, and fresh tomatoes.
    INPUT: Add some sausage.
    iROBOT: DID YOU KNOW? Sausage contains cholesterol and transfats, so iRobot does not support Sausage!


    Linux Robot A.I.:
    $ Make me an omelet.
    make: *** No rule to make target 'me'. Stop.
    $ ./createOmelet
    Usage: createOmelet [omelet-options]
    where omelet-options are -s (sausage), -c (cheese), etc.
    $ ./createOmelet -s -c -p -t
    roboTux: ...Compiling an omelet with Sausage, Cheese, Peppers, and Tomatoes!!!
    roboTux: Cutting Sausage..
    roboTux: ...
    roboTux: ...
    roboTux: ...
    roboTux: ...
    roboTux: ...
    roboTux: ...
    roboTux: ...
    roboTux: Cutting Sausage... DONE!
    roboTux: Shredding Cheese...
    roboTux: ...
    roboTux: ...
    roboTux: ...
    roboTux: ...
    roboTux: ERROR: Unable to find CHEDDAR.CHEESE. Please consult your refrigerator administrator.

    1. Re:Different OS's by Anonymous Coward · · Score: 0

      Finally - the year of Linux on the Robot!

    2. Re:Different OS's by linebackn · · Score: 2, Funny

      BeOS Robot A.I.:
      INPUT: Make me an omelet.
      BeBot: *POOF* You're an omelet!

    3. Re:Different OS's by Anonymous Coward · · Score: 0

      ----MSROBOT is trying to access your eggs. {DENY / ALLOW}

      ... You'd actually ALLOW *that*?

      Taking into account that it's a MSROBOT... Well, who wanted to have children any way.

    4. Re:Different OS's by Karellen · · Score: 1

      Your "createOmelet" program is producing way too much useless output for the default non-verbose case. You should really leave the "Cutting Sausage" and "Shredding Cheese" off unless the user puts a "-v" on the command line. As for the "..." output, that's should definitely require "-v -v" (very verbose)

      --
      Why doesn't the gene pool have a life guard?
  44. Premature by Anonymous Coward · · Score: 0

    Well, considering that standardized OS did not even become a remote reality until HARDWARE started to standardize, I'd say we're quite a ways out.

    And the "Standardized" OS was really a huge pain in the ass, with special cases for every different piece of hardware. We still have the issue, but have mitigated it by the use of these things called "drivers".

    Or in other words, you could just use Linux, Windoze, etc. for the OS, provided the hardware makers provide drivers for their pieces.

    What the article is talking about, although they do not realize it, is actually NOT an OS, but simply an API or library set. There is no need to completely re-invent the whole OS, etc. just because of some new peripheral components.

    1. Re:Premature by maxwell+demon · · Score: 1

      Well, considering that standardized OS did not even become a remote reality until HARDWARE started to standardize, I'd say we're quite a ways out.

      Unix definitely started before hardware was standardized (and hardware isn't really standardized today either; only PC hardware is).

      --
      The Tao of math: The numbers you can count are not the real numbers.
  45. Somebody already did... by DarthStrydre · · Score: 1

    Obviously you have not heard of the Microsoft Robotics Developer Studio http://msdn.microsoft.com/en-us/library/bb648760.aspx

    I've not had a chance to use it, but as a product that has come out of the research wing of Microsoft, it may actually be quite good. Now, if only it ran on Linux....

  46. don't forget to add in the OS by Anonymous Coward · · Score: 0

    the following 3 laws:
    1: Protect human life
    2: obey orders from human when not in conflict with 1
    3: protect yourself when not in conflict with 1 or 2 :-)

    ho, and also put a NULL law 0 that does nothing to make sure that the slot never gets used, and use unsigned ints for counting to make sure that no law -1 gets created :-)

    cyrille

  47. TRON by Anonymous Coward · · Score: 0

    While living in Tokyo, I standardized on TRON for all my robotic work.
    I was not alone.

  48. OO Coding for robots by FriedPope · · Score: 1

    As microcontrollers move into the object oriented programing world we're starting to see the emergence of reusable code. Many of the benefits of a standardized OS can be found in an object exchange like the one Parallax has set up for their Propeller Microcontroller. When developing a small line tracking robot for instance, you could download a servo control object and a light sensor object and join the two with the appropriate control logic to keep the robot on the line. That's a pretty simple scenario, objects exist in the parallax exchange to handle things like Kalman Filtering for autopilots or the bell 202 modem object for radio communications.

  49. Technical vs. Legal by Dr.+Manhattan · · Score: 3, Interesting

    Having a common software platform which has been tested and debugged across multiple projects should result in more reliable robots exhibiting fewer errors.

    Sure, that makes sense from a technical perspective. The problem is the legal perspective... because "fewer errors" does not equal "no errors". Bugs will still happen. And who takes responsibility when a bug results in a robot suddenly whipping around and killing someone? (We just talked about OSS & liability last week on Slashdot.)

    So, would you contribute to such a project when you might get summoned to court years later because someone misused a function you wrote, somebody died, and the developer blamed you? Even if you prove that it wasn't actually your fault, you're still out legal fees and time and stress. (And that's assuming you really didn't make a mistake...)

    I recognize that this is a common FUD tactic against Linux. But Linux isn't generally used in situations where people could die if it fails. I'm not sure, given the legal landscape, any open-source OS could work in such situations.

    --
    PHEM - party like it's 1997-2003!
    1. Re:Technical vs. Legal by sznupi · · Score: 1

      But isn't there a simple way out of such legal mess? Some company/consortium takes snapshot of a product that is otherwise free/oss, polishes that version, pushes through certification process, and anybody wishing to have that level of certification/legal protection buys support from them?

      --
      One that hath name thou can not otter
    2. Re:Technical vs. Legal by Glock27 · · Score: 1
      "Sure, that makes sense from a technical perspective. The problem is the legal perspective... because "fewer errors" does not equal "no errors". Bugs will still happen. And who takes responsibility when a bug results in a robot suddenly whipping around and killing someone?"

      .

      You should read up on safety critical software, like flight control software. Any software controlling something that potentially physically harms humans needs some level of the _testing_ that this type of software receives. While a solid, already tested foundation should help, there's no way to avoid testing the final assembly unless you can mathematically prove there's no possibility of new failure modes.

      Note that commercial operating systems (vxWorks, Integrity) are often used in such systems.

      There's no way to avoid thorough, multi-level testing if you want to avoid problems.

      --
      Galileo: "The Earth revolves around the Sun!"
      Score: -1 100% Flamebait
  50. it exists aleady by xtoph0x · · Score: 1

    Check out NASA's CLARAty reusable (open-source) robotics framework http://claraty.jpl.nasa.gov/man/overview/index.php Why reinvent the wheel. Who knows maybe your work developing this code will help send robots to other planets.

  51. why an app store? by Anonymous Coward · · Score: 0

    An app store would mean there's one company in control of all the those functions and instructions, which you'd likely have to pay for. What you need are various repositories that you could choose from.

  52. iTron: it already exists! by Anonymous Coward · · Score: 0

    iTron is basically THE standard for industry robots (like arms you see in factories) and is the same OS that drives a lot of commercial robots that come from Japan. If they aren't iTron they are a slimmed down version of Linux, usually with some sort of interface to talk to TRON through low level transistor to transistor system calls and the like.

    By the way, your car and any complex home electronics (like washing machines and refrigerators with digital control systems) are probably running iTron as well. Software is bundled in binary packages in iTron, so porting will in the end mean nothing more than making sure your software is pin/port compatible or changing around the pin/port definitions for your target device, compiling, and sending/putting the software on the target device.

    1. Re:iTron: it already exists! by sznupi · · Score: 1

      But, but...it's not American.

      --
      One that hath name thou can not otter
  53. Bill Gates was recently interested in this by peter303 · · Score: 1

    One Bills final projects at Microsoft was to systematize software for robotics. I dont know if ever got very far with this. It didnt seem to be immediately commercial.

  54. Three Laws of Robotics by slaad · · Score: 0

    A standard OS will make it much easier to implement the three laws of robotics.

    --


    ~Warning!~ The above is encrypted using rot676!
  55. 2010: The Year of Linux on the Robot by Anonymous Coward · · Score: 0

    Finally...

  56. Re:Can't wait - Modded Insightful by Luxusleben · · Score: 1

    Are you kidding me?

  57. I'm not sure the OS is the key issue here.... by hazydave · · Score: 1

    At present, many robots are pretty much closed systems anyway... you're not so likely to download a program to a robot as want to have some additional computing facility (your laptop, for example) instruct the robot. Particularly with mobile robots, where the intelligence of the robot itself is a serious power concern.

    There are always standards for robot communications, one example is JAUS. You can learn more about OpenJAUS here:
    http://www.openjaus.com/

    As with most other embedded things around, many robots actually run some form of Linux, locally. ARM processors are pretty common for this level of computing, at least as a supervisor. You might add additional computation for specific jobs: DSP for signal processing, 8-bit MCUs for sensor work, etc. One size isn't necessarily going to fit all here.

    For smaller robots, you probably find the same kind of OS mix you find in regular CE stuff, which means a good bit of would likely be built on the "the most popular operating system in the world", iTRON/uiTRON (ok, it's actually a kernel).

    --
    -Dave Haynie
  58. Our inevitable fall to our robotic overlords by hazydave · · Score: 1

    I should add that the OS itself doesn't necessarily help the robots take over, even once they're sentient. But once you have a standard way to tell dumb robots what to do, you only need something like Skynet becoming aware and using these protocols to kill us all via wireless. That's another reason the communications APIs are more important than the OS itself.

    --
    -Dave Haynie
  59. Insights from animal classification schemes by C0L0PH0N · · Score: 3, Interesting

    I think the classification schemes for the animal kingdom can provide insight for robotic development. The robotic community should pay attention to billions of years of evolution, and mine all the information possible :) There is a lot in common across all animal nervous systems (nerve conductors, synapses, brains, muscles, etc). Take the animal system for the eye for example - muscles, structures, nerves, synapses, and a brain to interpret. At the most fundamental levels, there is commonality in the types of cells used by animals. But there is incredible diversity in how they are implemented. One might compare the building blocks of the nervous systems to the robotic components, the way these components "work together" as the robotic OS, and the universe of ways they are implemented in animals as the "programs". Animals are categorized into Kingdom, Phylum, Class, Order, Family, Genus, and Species. In a very mature robotic development environment (many years from now), will we have similar classes of robots, with a set of category-specific OS subsystems and components? For example, the industrial robots mentioned above which are capable of accidentally moving a half-ton object as if it were a piece of paper will need a different OS subsystem than the Roomba, which is mostly harmless. Robots moving in water or air will belong to different categories, etc. Ultimately, if the animal system is a good model, robots will have some things in common, and much that is unique to their category.

  60. Re:Can't wait - Modded Insightful by ejtttje · · Score: 1

    I think the "insight" is the sardonic implication that the military will be a major consumer of advances in robotics. A fear which really applies to most advances in science and technology, but perhaps more readily associated with robotics thanks to Hollywood action movies.

  61. TEH OH NOES!11!!!11 by Anonymous Coward · · Score: 0

    zOMG, Teh stadurizshun of teh robuts iz agunst evruting teh FOSS stunds fur!!!!

    Mai Suftwhere Lungs Too Bee Frea!!!

  62. Mostly, they're message passing systems. by Animats · · Score: 1

    There have been a few of these. JAUS, Microsoft Robot Studio, Player/Stage, etc.

    Mostly, they're message passing systems. The Willow Robotics system starts by putting a message passing layer on top of Linux. Microsoft's Robot Studio uses a message passing system based on Windows Web Services, a rather sluggish approach. JAUS has its own message passing system. Each of these systems has its own message formats. Most of the bigger systems have a publish-subscribe model, where the receiver decides what inputs they want to listen to.

    When we did a Grand Challenge vehicle, we used QNX, which has hard real time message passing as its basic primitive. If it really has to be done on a tight schedule, that's the way to go. BigDog runs on QNX, with the main balance loop at 200KHz and the individual servovalve control loops at 1KHz, all on one CPU.

  63. Three laws safe... by my_left_nut · · Score: 1

    There's an app for that.

  64. I thought we had that by nurb432 · · Score: 1

    FORTH.

    Just standardize on *one* dialect, add some distributed networking/processing words and be done.

    --
    ---- Booth was a patriot ----
  65. BENDER! by Anonymous Coward · · Score: 0

    LOL! Per my subject-line, & YOUR reply?

    "10 PRINT "Destroy all humans!"
    20 GOTO 10"
    - by hbean (144582) on Tuesday August 11, @09:11AM (#29022347)

    Anyway/anyhow: Your words quoted above remind me of that episode of "FUTURAMA", entitled "I, Roommate"... That's the one where FRY & BENDER became roommates, albeit, in a 'robotic apartment' (which is basically, a broom closet (until the end, when Bender reveals it has a 'closet' (an actual full sized place inside, hidden, that FRY naturally gets into)). All, while Bender goes off to sleep, he recites that very line (or, something REALLY close to it) in his "dreams"...

    (Pretty amazing they're still using BASIC type code in "bender's" time, eh? You all MUST ADMIT though - it is, @ least as EFFICIENT as interpreted BASIC can be in 2 line code in a tight loop, lol (well, Ms-QuickBasic was stand-alone .exe generated & didn't need a runtime (but, correct me if I am wrong here, & it was only 16-bit iirc as well (be back, checking... here -> http://en.wikipedia.org/wiki/QuickBASIC))

    Plus - I take it that you're not much for "Assimov's 3 laws of Robotics" -> http://en.wikipedia.org/wiki/Three_Laws_of_Robotics .

    APK

    P.S.=> ON A MORE "SERIOUS NOTE", though? About 2++ yrs. ago, I downloaded Microsoft's "ROBOTICS STUDIO", but have YET to really "take a peek @ it"...

    All I know is, iirc? Well, that it needs .NET, & Visual Studio (I have version 2005 @ my disposal currently, & this article? It MAY be the "inspiration" for me to FINALLY take a look @ it)

    Heck, with it, back to "non-serious mode":

    Yes - time for "terminators", by "APK"... Hey - I'd like to *TNINK* @ least about getting into & doing some work like a robot's AI implementation + master scheduler, & also for the other motors for various parts too (sounds like a lot of fun actually, @ least to see the finished work especially)!

    Serious now though, maybe I am having an "Epiphany" (per the article, good word):

    (HOWEVER? "The Future IS NOW", per those "Cybie Dogs" toys I heard tell & seem to recall from reading their packages no less... IIRC/TO-WIT: They are programmable AND they have shortwave radio communicae between multiple units!)

    If I could get their instruction set, along with a programmable interface to the hardware signals via drivers to the hardware & hopefully NOT having to build those also? Kid you not - I'd set them up with "stun guns" & have them patrol my home @ nite - infrared, scopes, & radios - yes, those have radio contact between multiple ones if you wish no less... imagine the possibilities (robot dog posse security, + 100,000 volts, lol! Yea, that'd work, simply set each one @ the entry points to patrol, & if entry gained, bring all units to point of entry, etc. et al - & there, they would go to work, playing "electric chef" cooking up some "roasted invader", lol))... Patent Pending by apk

  66. I'm Working On It by Dodder · · Score: 1

    I've been developing, not an OS, but a Java Framework for robotic control which allows third party developers to implement the low level I/O for components and trying to formulate a higher level general API to make calls to the devices. The challenge is conceptualizing what those higher level commands would be that are general enough to all components and yet high level enough to be abstracted from the hardware.