Monday, July 28, 2014

Progress on James the Robot

"James the Robot" is coming along nicely, although I still have a few hurdles to overcome.  Who knew building a full scale robot training partner would be difficult?

James, gasping is disbelief.

Here are a few issues I am still trying to work out:

  • Right fingers are unresponsive - I'm pretty sure either the power or the ground is not making it all the way to the hand.  I'm going to have to take it apart and test it out.
  • Left fingers are jumpy - I'm not sure why, but it seems like the signal for one finger is getting picked up by the others as well.  This could be due to the fact that they all share a common ground and power housed in the arm.  I'm not sure how I am going to fix this yet.
  • Right shoulder moves the wrong way - the potentiometer connected to the servo in the right shoulder is backwards, so I need to detach it and put it on the right way.
  • Left arm spins forever on its own - The left arm just twists clockwise no matter what the potentiometer says.  It could mean the potentiometer is disconnected somewhere... I have to admit my soldering is not exactly professional quality.
  • Eyeball Y-Axis servo died - I'm pretty sure I burnt out this servo by setting it to a certain angle which was not physically possible.  I've burnt out like 5 of them so far by telling them to do something impossible.
Hands are difficult.  This is why most robots just have pinchers.

And just to make myself feel a little better, here is a list of what is working well:
  • InMoov Control Center software looks nice - The customizable software I wrote to control the robot with is about a third of the way done, and it looks great so far.  You can use buttons or sliders to position each servo, and it is pretty fun to control a robot that way.  Snapshots and actions are next.

  • The head works great - James can nod his head yes and shake his head no, and look left and right with his eyes, and open and shut his jaw. 
He's so melodramatic.
  • He has a voice - I connected a small speaker to a raspberry pi board for his voice.  You can type text into the command line, and it sends a query to the google translate server which then reads it out loud.  I didn't like the woman's voice, so I pulled the pitch down by 50%, and now he sounds like a nice guy.
James' vocal chords
Raspberry Pi... his brains

My goals right now are to finish the software, and (one by one) fix the problems with the servos.  I'd like James to be able to punch me in the face in a month or two, and I'd like to see how well he can swing an eskrima stick a few months after that.