Page 1 of 20 1234511 ... LastLast
Results 1 to 10 of 192

Thread: Pico-ITX based Johnny 5

  1. #1
    Join Date
    Dec 2007
    Location
    Portland, OR
    Posts
    3,194
    Images
    952
    Rep Power
    131

    Pico-ITX based Johnny 5

    This is a project that I've been working on for a couple of months, but have wanted to do since I was 5 years old (when I saw the first Short Circuit movie, I fell in love). The ongoing project is being documented on My Blog here at Trossen Robotics.

    Johnny 5 is alive!



    Project Goals:

    I wanted to create a remotely controlled robot modeled after the infamous Johnny 5. I saw the base kit that Lynxmotion offered and knew it would provide the best platform. Originally I was just going to have a Bluetooth wireless link and have a wireless video camera sending back to a small hand held TV, however after seeing the pico-itx formfactor cpu/motherboards, I wanted to take it further.

    So, I set out to build a Johnny 5 type robot controlled via RDP (Remote Desktop Protocol) session over my wifi network, complete with onboard PC running a Windows OS and vision processing.


    Materials/Parts List:

    Parts:

    Lynxmotion Servo Erector Set (Johnny 5 kit)
    SES Electronics mount
    Pan/Tilt assembly for head
    2x RC shock assemblies
    Traxxis steering blocks
    Various standoffs/hardware

    Batteries:
    7.2v NiMh 2800mAh Battery- Gearhead motors for drivetrain
    6.0v NiMh 2800mAh Battery- Servos/SSC-32
    9.6v NiMh 4200mAh Battery- Pico-ITX

    Electronics:
    SSC-32 Servo Controller
    Sabertooth 2x5 Motor Controller
    VIA EPIA PX1000G Pico-ITX Mainboard w/ C7 1ghz cpu
    1gb DDR2-667
    60w Pico-PSU
    120gb sata 2.5" laptop hard drive
    2x 640x480 VGA webcams
    USB 802.11g wifi adapter

    Software:
    Windows XP Pro- Stipped down using nLite
    SEQ SSC-32 Sequencer
    Roborealm


    Construction:

    I'm never satisfied running stock equipment, and the J5 did not provide enough space for me to add everything I wanted to. So, I set out to make some changes. For reference, heres the stock Johnny 5 kit, picture credited to Jim @ Lynxmotion:



    First of all, I replaced the standard panning sensor housing with a pan/tilt assembly, and added two stripped down webcams, shown here:



    My next change was moving the SSC-32 from the rear base up to J5's back. I mounted it using the SES Electronics carrier, shown here:





    Also, excuse the blurriness as I was having issues with the camera focusing correctly this day... but here is an aesthetic mod I made to the hands, to make them more "5ish"




    Now one might have noticed the lower torso having some purple components, those would be the two RC shocks I used as a replacement for the tension springs used in the stock model. This provided the upper torso with significantly more stability and balance, to compensate for the extra weight of the pan/tilt head, cameras and SSC-32.

    The actual mod itself is pretty simple. In order to accommodate the shocks, the two ASB-03 C-Brackets that make up the lower torso had to be extended, instead of attached back to back. I had to bore out the mounting holes so that 3/8" 4-40 screws would fit, then I used 4 combined Hex standoffs (for 1-1/8" total length) in to act as an extender.

    The front R/C shock can be mounted directly to the servos, on the two inner mounting screws. The rear shock does not have clearance to do this, so this is where the Traxxas steering blocks come into play. I mounted each one facing "inward" (this can be seen in the pictures below) on the two outer mounting screws of the servos. This provided enough clearance for me to mount the rear shock on the end of these steering blocks. Pics shown here:





    At this point I was controlling J5 via a bluesmirf wireless link to my laptop, waiting for the wife to approve further robot budgeting. As an early X-mas present, I picked up the rest of the pico-itx components to finish off the robot.

    I mounted the Pico-ITX mainboard where the SSC-32 originally was on the rear of the base, with the pico-PSU mounted below that. USB ports were mounted towards the front of the base, and the 9.6v battery used to power the computer electronics went down the center of the base. I used a sata 120gb HDD mounted on top of the battery, and a USB CD-rom to load the OS/software onto it. The Pico-ITX mainboard interfaces with the webcams via USB, and the SSC-32 via serial port. The Wifi connection is also USB.

    I then installed windows XP, used nLite to strip off unnecessary services and programs, and loaded SEQ, Roborealm and the appropriate drivers. SEQ is lynxmotion software used to create servo sequences and movements with a windows UI, controlling the 2 drive motors for the treads, and the 15 servos in the torso. I'm still currently playing with Roborealm, but I'm working on creating a pan/tilt colored object tracking program using the two head servos and one of my webcams.

    Here are two pictures of Johnny up on the blocks during the OS install (was using a spare IDE drive to create the image while my SATA drive was being shipped):




    Close up of the pico-ITX board, quite small!



    Pics of my current progress found here:
















    Functionality and Future Plans:

    Currently, I can control my Johnny 5 over my home wifi network using a Remote Desktop session, so I basically view the desktop of the robot. My control console looks like this:



    I can sit back on my laptop or desktop computers, and remote into his desktop to roam around my home or office and have full remote control/video feed. I get about an hour of run time on him before he needs to recharge.

    In the future, I want to look at adding voice recognition/speech output. Speech output is actually the easy part, I can accomplish that with Microsoft Sam, but I havent found a decent small powered speaker to mount on him permanently. I would like to eventually tie voice to text recognition similar to that of Dragon Natural Speaking into something like ALICE, and have the output of ALICE go from text to voice- essentially I could ask it a question, and receive an answer in english. Easy in concept, but I'm not sure how easy it would be to actually implement that. Aside from that, I'm going to work more with Roborealm and develop simple object tracking modules, using the pan/tilt assembly and one of his cameras, leaving the other camera for straight video feed. Would be very cool to eventually create a "Beer fetching" sequence using object recognition


    Videos:

    Demo showing off a few moves and my control console:

    [ame="http://www.youtube.com/watch?v=SQpEbgvxre8"] [/ame]

    Here is some progress on my object tracking, it's not 100% perfect, but it's definitely improving:




    And this is what happens when your wife and daughter go to sleep early, and you get very bored at night...DISCO!

    [ame="http://www.youtube.com/watch?v=hHUoxtG91YQ"] [/ame]


    Let me know what you think!


    Last edited by Tyberius; 01-30-2009 at 11:09 PM.

  2. #2

    Re: Pico-ITX based Johnny 5

    Smooth. And I like the idea of using RC shocks. My Otto (Johnny 5-ish) had his 'waist' reduced by one servo because them springs just weren't doing it.
    And you found (as I did) that mounting the SSC32 at the (non-flexxing) back meant most of those servo wires would just reach, and have alot less twisting and bending.

    Now you've gone and inspired me, as if I don't have enough to do already! A brain upgrade! No, for the robot... an ITX (sigh.)

    Very smooth.
    I like the idea of a 'Beer Bot' too.

  3. #3
    Join Date
    Sep 2006
    Location
    Carol Stream, Illinois
    Posts
    1,695
    Images
    118
    Rep Power
    99

    Re: Pico-ITX based Johnny 5

    Way cool project Tyberius. I love those Pico-ITX boards, I can't wait to get one of my own Are you using any programming languages at all or are you doing all this with Roborealm and SEQ? I really like the idea of replacing the sonar eyes for stereoscopic vision. The shocks were a great idea too! Where'd ya pick them up?

    Keep us posted with some videos for sure! I'd love to see this bot in action.

    EDIT: Almost forgot, I got your project entered in the contest, thanks!
    Last edited by Alex; 12-28-2007 at 11:54 AM.

    �In the long history of humankind (and animal kind, too) those who learned to collaborate and improvise most effectively have prevailed�
    - Charles Darwin

  4. #4
    Join Date
    Dec 2007
    Location
    Portland, OR
    Posts
    3,194
    Images
    952
    Rep Power
    131

    Re: Pico-ITX based Johnny 5

    Quote Originally Posted by Alex View Post
    Way cool project Tyberius. I love those Pico-ITX boards, I can't wait to get one of my own Are you using any programming languages at all or are you doing all this with Roborealm and SEQ? I really like the idea of replacing the sonar eyes for stereoscopic vision. The shocks were a great idea too! Where'd ya pick them up?

    Keep us posted with some videos for sure! I'd love to see this bot in action.

    EDIT: Almost forgot, I got your project entered in the contest, thanks!

    Thanks Alex, I'm pretty impressed with the pico-itx formfactor. I've been working with computers for many years in IT, and do overclocking/hardware mods as a hobby, so I'm sort of a hardware geek at heart, and these things are a ton of fun.

    I know some C++ and various forms of basic, but my goal for this robot was to take advantage of running a windows OS and try to use as many GUI based apps as possible. I want it to be a control console type environment for remote control, however I am playing with some vbscript to interface roborealm, along with the various plug-in modules for it that will require some coding. I've done a couple autonomous walking robots in the past using forms of basic (I have a pretty cool micro-quadrapod I'm working on right now using 360degree sonar for autonomous navigation) but for this particular robot I'm keeping it minimal, as the plan wasn't to make him autonomous, but rather controlled with vision/audio as his main input. I'll probably add some automatic collision detection eventually, I was looking at the phidgets sold here to implement that.

    The shocks I picked up at my local hobby shop, they're just an "aftermarket" RC car shock upgrade kit that ran me about $25. Jim @ Lynxmotion really likes the shocks too, so much that hes looking into adding them as an upgrade kit

    Anyway, thanks for the comments, life has been real busy with the holidays and family, but I'm trying to piece together a nice video showing him off soon, will host it and post it as soon as its finished.
    Last edited by Tyberius; 12-28-2007 at 12:21 PM.

  5. #5
    Join Date
    Dec 2007
    Location
    Portland, OR
    Posts
    3,194
    Images
    952
    Rep Power
    131

    Re: Pico-ITX based Johnny 5

    Added two quick videos I threw together, still haven't had much time lately.

    Let me know what you think!
    Last edited by Tyberius; 01-03-2008 at 09:48 AM.

  6. #6
    Join Date
    Sep 2006
    Location
    Carol Stream, Illinois
    Posts
    1,695
    Images
    118
    Rep Power
    99

    Re: Pico-ITX based Johnny 5

    I love the first video man, the music really does it justice That's a song that I've been hearing a lot on a station in Chicago, and I kept forgetting to look up who sung it so that I could put it on my iPod. Finger Eleven, thanks!!

    I can't wait to see all the stuff you do with Roborealm. That ball tracking stuff is really neat, reminds me of the Aibo.

    Are those camera modules just something you took out of a commmercial webcams or did you purchase them like that? If so do you have a link to where you purchased the camera modules?

    �In the long history of humankind (and animal kind, too) those who learned to collaborate and improvise most effectively have prevailed�
    - Charles Darwin

  7. #7
    Join Date
    Dec 2007
    Location
    Portland, OR
    Posts
    3,194
    Images
    952
    Rep Power
    131

    Re: Pico-ITX based Johnny 5

    Ya it's a pretty good song, I just threw it in there as silence in videos drives me nuts and I had the song stuck in my head

    As far as Roborealm... I made a ton of progress over the weekend. Roborealm's development team fixed the framerate issue so now Johnny is tracking MUCH faster. I'm toying with two different versions of code right now trying to figure out what one I can make work the best (one is more accurate, but not as smooth. the other is very smooth but tends to overshoot the object more). I'm going to be implementing a ball following program once I get the tracking perfectly dialed in, basically it will follow the ball around like a leash, or will go find the ball if I throw it.

    Ideally, I want him to be able to fetch... I'm already implementing extensions on his arms so that he can reach the ground easier, however picking up the ball might require a hand mounted camera and I don't know how feasible it is in reality. We'll see though.

    The camera modules are just webcams actually, cheap ones too. I found them at Fry's Electronics for $12 each (Emprex brand I think?) and picked them up because even with their casing they looked pretty small. Brought them home and stripped them of their casing and was good to go. Pretty sure you guys have a Fry's out in Chicago if you're looking to pick some up.

    Anyway... lastly- I have a lot of additions, both aesthetic and functional, coming in the next weeks. Front and back panels for the track base, possible tailwheel (like the movie version had), extension of the arms, and also I am implementing a 3dof small utility arm (probably going to mount a Ping sensor there) coming off of his torso and a 2dof laser turret on his left shoulder. Lastly, depending on how much room I have, I might even be adding moving eyelids

    Lots of pictures/video to come once I'm done upgrading him... and I'll try to get a new video of my progress with object tracking tonight. I also got 'bored' last night and was trying to teach him part of the "Saturday Night Fever" John Travolta disco dance sequence I'll see if I can get some music to fit and post up a video of the attempt at humor.
    Last edited by Tyberius; 01-07-2008 at 11:41 AM.
    Andrew Dresner
    Principal Engineer
    Interbotix GIthub
    Interbotix Labs Google+

  8. #8

    Re: Pico-ITX based Johnny 5

    Doing an outstanding job. Both the hardware and the write-up, first rate.
    And you can never have too many lasers. You might look into getting a collimating lens (spreads the beam out to a fan-like line) for the lasers, it looks cool while panning around.
    I'm also interested in the behavior coding. What was your most challenging behavior to code? (For me, all of it.) Getting the components to work is one thing (tough enough!) but getting 'behavior' is a whole lot tougher.
    I'm still working on a new software upgrade for Otto. As a non-pro programmer, I have my days LOL.
    So, putting extra 'bling' on, just for the dazzle effect? Y'know, extra LEDs, sound effects, etc.? Your effort doesn't need it, but I always like a robot with a sense of style.

    Like Otto says, it ain't a real robot unless it has lasers comin' out of its eyes.
    Last edited by kdwyer; 01-07-2008 at 05:54 PM. Reason: 1 more line needed

  9. #9
    Join Date
    Dec 2007
    Location
    Portland, OR
    Posts
    3,194
    Images
    952
    Rep Power
    131

    Re: Pico-ITX based Johnny 5

    Quote Originally Posted by kdwyer View Post
    Doing an outstanding job. Both the hardware and the write-up, first rate.
    And you can never have too many lasers. You might look into getting a collimating lens (spreads the beam out to a fan-like line) for the lasers, it looks cool while panning around.
    I'm also interested in the behavior coding. What was your most challenging behavior to code? (For me, all of it.) Getting the components to work is one thing (tough enough!) but getting 'behavior' is a whole lot tougher.
    I'm still working on a new software upgrade for Otto. As a non-pro programmer, I have my days LOL.
    So, putting extra 'bling' on, just for the dazzle effect? Y'know, extra LEDs, sound effects, etc.? Your effort doesn't need it, but I always like a robot with a sense of style.

    Like Otto says, it ain't a real robot unless it has lasers comin' out of its eyes.
    Nice suggestion, any leads on where to find a nice one?

    As far as behavior coding... I'm really just exploring using Roborealm for his autonomous behavior. I'm currently working on ball tracking and next following/fetching. Next I want to work on indoor navigation based on the floor/wall lines and maybe visual waypoint navigation. And ya, adding some 'bling'. I have a ton of additions and upgrades coming up in the next few weeks, parts are already on order.

    Anyway... UPDATE!

    Here is some progress on my object tracking, it's not 100% perfect, but it's definitely improving:




    And this is what happens when your wife and daughter go to sleep early, and you get very bored at night...DISCO!

    Andrew Dresner
    Principal Engineer
    Interbotix GIthub
    Interbotix Labs Google+

  10. #10

    Re: Pico-ITX based Johnny 5

    Just too groovy!

Thread Information

Users Browsing this Thread

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

Similar Threads

  1. Humanoid or Johnny 5 for research
    By musashi in forum Robotics General Discussion
    Replies: 14
    Last Post: 01-12-2008, 08:06 PM

Posting Permissions

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