Robot old

From Mindstab Wiki

Planish revised

Objective:

  1. To build a robot that while vastly simpler, has sesnes and output abilities that vaugly mimic that of a human (sight and sound) and that can be remote controlled, but possibly has some basica navigation ability like "find power plug in" and "find new wifi hotspot".
  2. To write a program that can remote control the robot and use it to interact with, learn about, and understand the world. I feel that the more the robot vaugly resembles a human, or maybe say, a baby or dog, the more I can understand the challenges it will face and how to program for them. If I could end up with a "conscious" robotic dog or baby that'd be swell.

Rational:

  1. Fun and learning. Seriously, it'll be fun to builda remote control robot and I'll learn a ton. And then I'll have a body I can somewhat empathize with I suspect it will be much easier to write some kind of "consciousness" to take over for it. Or maybe I'm pulling shit out of my ass or 70's AI papers.
  2. Because it'll be really fun and cool and I'll learn a ton. Or maybe we should get into a debat on fufiling instincts of reporudction via creation? :P.
Requirements:
    • Basic senses: For basic navigation or maybe just object avoidence some kind of lidar or sonar would be useful. Also could give a more broad view (360).
    • Vision: I want it to be able to navigate by vision, or at least do object avoidance.
    • V-out: I want it to be able to display arbitrary image data on a small screen. 320x240 and color should be sufficent (think gameboy etc), but bigger doesn't haveto mean bad.
    • Audio: I want it to be able to at least detect sound, and possibley have some simple voice command response.
    • A-out: I want it to be able to play arbitrary sound data.
    • Navigation: I want it to be able to manuver around my basement so it has to be able to handle 10cm steps. As for speed, human walking speed is fine.
    • Physical manipulation: I want it to be able to interact simply with object. Move something or carry it, or possibly push a button (last ones a bit of a long shot).
    • Vision: I want it to be able to "look around", so move the vision independant of the body. I want it to be able to recognize "landmarks" of my basement for navigational purposes. It should be able to recognize people some how. And If it could watch TV, or read a book that would be good too.
    • V-out: I want it to be able to visually express it self either from an identify point of view or an emotional one.
    • Sound: I want it to have a shot at understanding language. And speak.
    • Physical manipulation: I want it to be able to flip pages of a book or change a tv channel. But that's pretty optimistic :P

Budget:
  1. (now - June 2006) - $1000ish
  2. (June 2006 - completion) more as required
  3. Basically my programming will be the speed bottle neck. I'll be slow. I should be able to afford low cost peices more or less as I need them. But I'd like to have the core essentials done by June 2006 (vision, audio, audio out, and navigation). Longer term goals (manipulation) can happend later. And video out has to be researched more.

Time to complettion:

  1. remote control basic robot - june 2006
  2. self remote controled robot - I'm willing at this point to spend a few years working on this as long as it remains interesting

Sub


Plan(ish) 2

Objective:Write software that eventually approaches consciousness.
Robot Rational: I suspect I'll be able to wrap my mind around concepts easier if I can relate more to my "consciousness"'s experiences. Therefor I want to give it a physical entity that has some senses similar to mine. Sight and sound are the primary ones. And I want it to be able to explore and interact with the world. Also the robot will be a fun thing to build (even if I only even make a remote control bot :P) and I'll learn lots just putting it together. Which is the overridding reason I do anything, especially things others have already done, to learn.
Requirments:

  • I want to give it input output tools so I can mimic other lifeforms growing from infant to not infant. I want to give it a body wich vaugly resembls mine so I can "empathize" with it.
  • Vision: Of hand I beleive the human eye has about 300 million "pixel" receptors, but when it reaches the brain it's been refined to about 50 million. With a 640x480 web cam this poor thing will have about 300,000 pixels of vision. Legally blind by human standars probably :P. For interacting with the world I'd love if this thing could aside from basically navigate by vision (both dumb by simple object avoidance, and later by recognizing "landmarks"), if it could read (books?), or say watch TV, which is tragically as high res as a webcam vision. At some point I'd also like to give it a mini screen so it can display things (and if an identity of some kind shows up visual express something). Also I want to watch it watch itself play with visualness in a mirror.
  • Audio: I want it to be able to hear. Either as a dumb toy with maybe some voice recognition to commands, or later to actually be able to learn to understand (likea baby or dog?). Thus I also want to give it a speaker so it can "play" with it self and learn from "speaking" and hearing itself.
  • Navigation: I want it to be able to wander around my basemanet, and later outside trips (I'll set it up outside). So it needs to be able to handle small steps (10cm) and inclines. And ideally the speed of a walking human.
  • Physical world manipulation: As a later stage project I'd like to give it some kind of arm/mandiple so it can interact with the world, via picking things up to examining them closer, or moving things or carrying them. (It could start a rock collection!).</il>
Summery: Basically as advanced a body as I can give it some I can first make an amusing remote and possibly voice controled toy, and then start writing a program that can take more and more input and deal with it all on it's own. The more the input/output is similar to mine the more I feel I'll be able to empathize with and thus have an intuitive grasp of what might be needed to program. Or i'm pulling shit out of my ass and 70's AI theories :)

Budget:Form now (2005 11 09 - 2006 06) I can probablly allocate almost $1000. And then there should be room for more for expansions after that. I certainly won't be able to keep up programming with the buying and assembling so to some extent budget is moot as long as we keep reasonably low end.
Time to complettion: This will pretty much be an ongoing project for the higher level part. It would be nice if by the end of summer 2006 I coul at least have a desktop compuer remote controled robot that I can guide by it's vision and I can hear what it hears and can drive it. And pipe say what ever I want to it's output (png's or movie to it's screen, and mic or mp3s or movies to its speakers. Imagine, a remote control movie player). After that I can start writing things to take the input and handle output for me.
As for the rest, I plan to be working on it for a few years probably.


Requirments - Old

  • Wifi capable so as to connect to distributed brain (PCI, SDIO, USB, ETH-TO-WI)
  • Able to negotiate 10cm (4") step
  • Vision: Ideally better than 640x480 however since that's TV "quality" that seems to be hard to find for a reasonable price. Seems I need a high quality camera (not webcam) and its big and expensive. So probably have to settle for just a decent webcam.
  • Some simple sensors for basic on robot navigation (lidar? sonar?)
  • Gyro? handy when negotiating stair?
  • At some point some servos to adjust camera and possibly a manipulator arm would be cool
  • On board processing: I want to offload the bulk of the "thinking" to distributed computers however, if the robot manuvers out of wifi range it needs to be able to at least back track, or do some limited navigating to move to a new hot spot (queued commands so it can hop hotspots and travel long distances too). So as always, the more power the better, but cheap is also a primary factor. Other big ass computers can do most of the thinking and even video proccessing as long as we have say 802.11g or above to facilitate video transmision.