Asked — Edited

Dancing Android Robot

Have any of you seen the "Dancing Android Robot" on insrtuctables.com? You can also find it at: http://www.youtube.com/user/hitmithitmit

It looks like an absolutely great project! ( I think the current slang for this would be: "its totally sick!!!)

I have a Ardunio Uno , on order; but I am just starting with learning how to write code for it, and I do mean just starting. I'm at "Hello world"! Is there any way I might convince one of you roboteers out there to write a patch for it????? I'd owe you bigtime!!!!! I have the EZ-B, but I'm still a noobie with it too. From what I;ve seen thus far the EZ-B couldn't do the Dancing Android routine. If I am in error........PLEASE......feel free to correct me! ( Here's a challenge for you DJ) Hoping someone wants to do this project and will share...........................................hint, hint! Thanks fer yer time all. Lloyd


ARC Pro

Upgrade to ARC Pro

With Synthiam ARC Pro, you're not just programming a robot; you're shaping the future of automation, one innovative idea at a time.

PRO
Synthiam
#9  

AAAAAAAAAAAH! The "A" Word

Netherlands
#10  

Don't be scared DJ, it's a very small Arduino ;)

#11  

The video was of great help. Could I impose on you to send me a copy of the "sketch" for Ardiuno, using servos?????? It would have to be "copy and paste" for me ; as I said eariler.......I'm just starting with Arduino. I would be in your debt. Thanks Lyron, Lloyd

#12  

Hey lostcreekstation, the only time the "a" word should be mentioned here is when your using an arduino shield for the EZB. ;)

PRO
Synthiam
#13  

Lloyd, there's a reason Arduino is complicated... That's because it isn't the EZ-B:)

It'll take you 100 times longer to accomplish something in Arduino than with the EZ-B, which will take you 10 seconds

#14  

Advice is well taken. I would much rather use the EZ-B, and I'm sure I will after I learn to use it to its full potential. I would, however, like to learn some programming. I prefer to have options. As you can surmise by my eariler comments, I'm interested in doing the Android dancing bot. I'm looking forward to your doing that project. I willkeep in mind to exclude the "A" word in all future communications.LoL. My components are still slowly arriving. I'm planning on waiting until I have them all before I really get started on the OmniBot; which, by the way; I'm going to call " Gizmo" Thanks for keeping me on the straight and narrow DJ.

PRO
Synthiam
#15  

Hahahhaa you can use the A word. It'll be a nice reminder of how much trouble ppl have with it:)

Netherlands
#16  

The arduino code:


// Controlling a servo position using a potentiometer (variable resistor) 
// by Michal Rinott  
// Adapted by Niek (Lyron) for 4 servo's
#include  
 
Servo fullbody;  // create servo object to control a servo 
Servo head;  // create servo object to control a servo 
Servo leftarm;  // create servo object to control a servo 
Servo rightarm;  // create servo object to control a servo 
 
int fullbodypot = 0;  // analog pin used to connect the full body potentiometer
int fullbodyval;    // variable to read the value from the analog pin 
int headpot = 1;  // analog pin used to connect the head potentiometer
int headval;    
int leftarmpot = 2;  // analog pin used to connect the left arm potentiometer
int leftarmval; 
int rightarmpot = 3;  // analog pin used to connect the right arm potentiometer
int rightarmval; 
 
void setup() 
{ 
  fullbody.attach(9);  // Fullbody-servo is attached to digital pin 9
  head.attach(8);
  leftarm.attach(7);
  rightarm.attach(6);
} 
 
void loop() 
{ 
  val = analogRead(fullbodypot);            // reads the value of the potentiometer (value between 0 and 1023) 
  val = map(fullbodyval, 0, 1023, 0, 179);     //0 and 1023 are the min and max values the arduino reads from the pot (play around with this) and 0 and 179 are servo min and max degrees
  fullbodyservo.write(fullbodyval);                  // sets the servo position according to the scaled value 
  
   // do the same for the other 3 servo's and pots
  val = analogRead(headpot);           
  val = map(headval, 0, 1023, 0, 179);
  headservo.write(headval);
  
  val = analogRead(leftarmpot); 
  val = map(leftarmval, 0, 1023, 0, 179);
  headservo.write(leftarmval);
  
    val = analogRead(rightarmpot); 
  val = map(rightarmval, 0, 1023, 0, 179);
  headservo.write(rightarmval);
  
  delay(15);                           // waits for the servo's to get there  (ms)
} 


You connect the pot-meters like this:

User-inserted image

See, it isn't THAT hard! even a 13 year old can do it (me!)