Page 1 of 6 12345 ... LastLast
Results 1 to 10 of 57

Thread: Johnny 5 for AI project

  1. #1

    Johnny 5 for AI project

    Hello,

    I have already posted this to some other robotics forum (lynxmotion's). Hopefully, there is no problem in doing that...

    I am very excited about Johnny 5 model and I would like to pick him for my university AI project. Nevertheless, before the final verdict I would highly appreciate advices of some skillful folks here because I am a total beginner at this field. I am a pure programmer and I have not even assembled any robot in my life so that be nice to me when it comes to hardware terms, please:-).

    The project goal:
    A robot that is able to carry out text commands in a natural language.
    Examples of such commands would be:
    - Find a red cube and pick it.
    - Scan your surroundings and obtain 2D map of it.
    - Find a white object and follow its movement (e.g. the rabbit )

    The solution outline:
    Software part:
    Natural language commands are parsed with a program in Prolog that extracts known subgoals (e.g. “pick subgoal” with appropriate parameters that instructs what to pick) and executes C++ function that takes care of this subgoal. The function communicates with the API of RoboRealm for using its image processing features and controlling robot actions. The robot’s task is to listen to these “atomic” action commands and perform them (no autonomous logic).

    Hardware part:
    The most promising (and coolest:-)) robot for the project I have found so far is Johnny 5 with the following configuration:
    - Johnny 5 Combo Kit
    - SparkFun Bluetooth® Modem - BlueSMiRF Gold (to enable wireless control)
    - One or two pretty good cameras as sensors (to give Johnny vision)
    - Power accessories:
    > NiMH Quick Connect (mates to battery) (BATC-01)
    > Battery Connector with Switch (WH-01)
    > 6.0 Volt Ni-MH 2800mAh Battery Pack (BAT-05) (Servos)
    > 12 Volt Ni-MH 1600mAh Battery Pack (BAT-01) (Sabertooth and Motors)
    > 6.0 - 12vdc Universal Smart Charger (USC-02)

    My questions (to which answers will be highly appreciated):
    - My idea is that the bluetooth modem and cameras will be connected to SSC-32 board to control servos without wires and to transmit the video stream from the cameras to a host computer by using the bluetooth modem. Is this possible or should I get wireless cameras instead to stream the signal? There might be a problem with amount of data transmitted.

    - Is only one cam enough for my project or would two cameras do a better job? (I have heard two might be better for object recognition)

    - What cameras would you recommend to me? They do not have to be really cheap - 50$ is allright and if they have to be wireless I could accept even a bit more expensive ones (or one). I also concern an easy integration (assembly) with Johnny 5.

    - Are cameras sufficient sensors for me or do I need some additional sensors?

    - Does Johnny 5 Combo Kit provides all stuff I actually need to build him and get run? What are recommended tools (screwdrivers etc.) I should use? I suppose these tools are not a part of the kit.

    - Are the power accessories just enough for my future Johnny 5 or do I need some additonal power supply for the cameras and the bluetooth modem?

    - Do you have any other ideas on my planned approach?

    As I said I will really appreciate any answers and comments.

    I am also thinking about using SRV-1 for my project. Do you think it is a better robot for me and my plan?

    Thanks
    Clime
    Last edited by Clime; 03-07-2009 at 05:15 PM.

  2. #2
    Join Date
    Sep 2008
    Location
    Nelson, New Zealand
    Posts
    278
    Images
    9
    Rep Power
    46

    Re: Johnny 5 for AI project

    this is the question that adrenalynn asks - how experienced are you? would it be wise to start small then work big, setting accomplishable goals that work towards the bigger picture?

    idk about you, but this is quite a mammoth task. ~~ what bits do you already have? and can you summ. up what you are trying to do into one paragraph, because that is then your end objective.

    will post some more later ~~ lunch time (stomach/brain gurgles)
    Hey Hamlet: 2b or not 2b = $FF

  3. #3
    Join Date
    May 2008
    Posts
    2,228
    Images
    155
    Rep Power
    132

    Re: Johnny 5 for AI project

    Bluetooth will not allow you to carry a video signal back, you're gonna want a wifi camera.

    Find a red cube and pick it up -- what is your time frame -- the inverse kinematics to get the robot to pick something up is quite tough, finding that object using vision alone is also quite tough.

    2D map == probably not using vision, you'll likely want either IR or sonar rangefinders for map building, visual map building is pretty terrible -- and really tough.

    -Fergs

  4. Re: Johnny 5 for AI project

    Hello,

    Here is a couple of ideas.

    The first is to use one camera and add a laser range finder to determine distance from the robot. There was students who won treasure hunt with an er-1 using this method.

    Second is to look at an xbox game called your in the movies. What it does is snap a shot of the back ground and then when you inject something new into the screen only the new object comes up. This way you can isolate objects for identification. Unfortunately you need a lot of processing power for this type of operation. Something like an i7 or intel core 2 quad. I also think that without attaching the camera directly to the johnny 5 you will not get the real time processing you need to make the robot run smooth.

    Asbrandsson
    Last edited by asbrandsson; 03-07-2009 at 09:30 PM.

  5. #5
    Join Date
    Apr 2008
    Location
    Sacramento, CA, USA Area
    Posts
    5,341
    Rep Power
    181

    Re: Johnny 5 for AI project

    Actually, I respectfully disagree with you that background subtraction requires substantial processing power. It's actually one of the simplest transforms that can be made to video...

    RoboRealm has a reasonably quick subtraction that can subtract the background five or six times a second on a 533mhz C3 easily along with a few other transforms.
    I Void Warranties�

  6. #6

    Re: Johnny 5 for AI project

    Woah, again I am overwhelmed and almost at the beginning, it seems.

    Quote Originally Posted by elios View Post
    this is the question that adrenalynn asks - how experienced are you? would it be wise to start small then work big, setting accomplishable goals that work towards the bigger picture?
    Well, I am quite experinced in programming - mainly C/C++ but after a bit of warming up I could do some stuff in Java/Prolog/Haskell/asm. I can program a chess algorithm (minmax with alpha-beta prunning), I know some bits about neural networks (never implemented though).

    I do not know anything about image processing and robotics at all but I am really eager to learn about it. As I can see It won't be that easy. In my project I want to reach high goals but of course I will try some simple things at first and I will proceed from the bottom (for instance I'll write a program that commands a robot to go ahead for a while etc.).

    Quote Originally Posted by elios View Post
    idk about you, but this is quite a mammoth task. ~~ what bits do you already have? and can you summ. up what you are trying to do into one paragraph, because that is then your end objective.
    I don't have anything but the plan:-). But right, I probably underestimated difficulty of the problem.

    I have thought through my goals one more time and here is what a robot should be able to do for sure:
    - perform written movement instructions such as: go ahead for five seconds, then turn left and stop, rise your left arm, ...
    - be able to recognize colors and objects with a few basic geometric shapes (e.g. a cube, sphere), to find these objects on the ground in his surroundings and come up to them. For instance, he should be capable of performing the written command: "Find a red cube and come up to it."
    - from the previous point, he must be able to avoid obstacles and remember what places he has already visited and what is left (this entails building of the map).

    I can handle a simple parsing of natural language. Things that bother me most are: hardware, receving data from sensors and image processing.

    These are tasks I would like to teach him later (probably not a part of the project itself):
    - grasping objects and moving them
    - tracking moving objects
    - listening to human voice instead of written commands (of course I will use some software for it)
    - playing chess with me, washing up, hovering, seducing girls for me etc.
    Last edited by Clime; 03-08-2009 at 02:04 PM.

  7. #7

    Re: Johnny 5 for AI project

    Quote Originally Posted by lnxfergy View Post
    Bluetooth will not allow you to carry a video signal back, you're gonna want a wifi camera.

    Find a red cube and pick it up -- what is your time frame -- the inverse kinematics to get the robot to pick something up is quite tough, finding that object using vision alone is also quite tough.

    2D map == probably not using vision, you'll likely want either IR or sonar rangefinders for map building, visual map building is pretty terrible -- and really tough.

    -Fergs
    So wi-fi camera then. The issue is I would rather use openCV instead of RoboRealm now and I could not find any wi-fi camera that is said to be compatible with openCV:-/. OpenCV is better for me because it is a library that can be incorporated easily into my C++ procedures. For RoboRealm I would need to have a Windows station on which it can run and communicate with its API via sockets. I want my project to run on Linux. RoboRealm controlling interface to SSC-32 is therefore lost:-/.

    I don't know what time frame and inverse kinematics are. Therefore, I'll probably leave out grasping objects.

    Sonar rangefinder with a vision does not sound bad at all If it could make things easier. Perhaps I could also use laser rangefinder according to asbrandsson's suggest but I don't have any idea how difficult it is to measure distances with laser.

    Quote Originally Posted by asbrandsson
    I also think that without attaching the camera directly to the johnny 5 you will not get the real time processing you need to make the robot run smooth.
    I want to have a camera attached to Johnny 5 for sure.

    Thanks for tips so far, guys!

  8. #8
    Join Date
    May 2008
    Posts
    2,228
    Images
    155
    Rep Power
    132

    Re: Johnny 5 for AI project

    When I said time frame, I meant what is your time frame for this project? Does it have to be done by the end of the semester, end of the year, is it a PHd thesis that has 3 years of time to finish?

    -Fergs

  9. #9
    Join Date
    Apr 2008
    Location
    Sacramento, CA, USA Area
    Posts
    5,341
    Rep Power
    181

    Re: Johnny 5 for AI project

    It's actually pretty easy to measure distance with a laser and a camera. It's simple Trig. The camera is a fixed below the laser, the laser is directly above it. The camera sees the laser some number of pixels above or below center-line due to parallax. That describes a triangle.

    If you need it explained with more algorithm detail - I can do so after brunch.

    The Trend IP-110W comes with an API/library - but it's also for windows.

    Linux has always had pretty wimpy video support. It's not necessarily the right tool for this job. Your best bet would probably be to find the IP wifi camera that you like best, and start talking with the manufacturer. Set aside a year to eighteen months and plan on writing your own drivers and codec implementation for it. (And no, I'm not AntiLinux. I'm actually a huge supporter. But I also like screwdrivers. I don't use them to drive nails, generally. I like hammers, and I don't generally use them to turn bolts either. )
    I Void Warranties�

  10. #10
    Join Date
    Apr 2008
    Location
    Sacramento, CA, USA Area
    Posts
    5,341
    Rep Power
    181

    Re: Johnny 5 for AI project

    That said, you could set the IP camera up to push jpeg stills as fast as it can to the linux machine. Cambozola is worth looking at. Then you could use opencv to analyze the jpeg stills. Sloooooow. Actually, all of opencv is crazy slow to start with. So this just kinda adds another layer of sloooow.
    I Void Warranties�

Thread Information

Users Browsing this Thread

There are currently 4 users browsing this thread. (0 members and 4 guests)

Similar Threads

  1. Project Pico-ITX based Johnny 5
    By DresnerRobotics in forum Project Showcase
    Replies: 191
    Last Post: 11-23-2013, 01:01 PM
  2. Contest Entry Project Big Bird
    By bradpowers in forum Project Showcase
    Replies: 16
    Last Post: 03-26-2009, 05:28 PM
  3. News/Announcement February 09 WINNERS!
    By DresnerRobotics in forum Project Showcase
    Replies: 9
    Last Post: 02-04-2009, 04:04 PM
  4. News/Announcement Only 1 Week Left to Enter Your Project!
    By DresnerRobotics in forum Project Showcase
    Replies: 9
    Last Post: 12-24-2008, 05:17 AM
  5. Ambitious AI / Autonomouns project
    By Marc-X in forum Robotics General Discussion
    Replies: 7
    Last Post: 12-23-2007, 09:24 PM

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •