Introduction: Animatronic Monkey

Hi. This time I will show you how I made the monkey. It was also easy to do despite having two movements, they are simple and papercraft is pretty simple.
This is also one of the animals that is smuggled and suffers from mistreatment in captivity. Many find it cute and funny. However, when buying one of these, you will be financing and encouraging the smuggling of wild animals.
Rather than famous people say, if you blow something here, you will not earn a monkey. Here in Brazil we have tough laws to punish the  smuggling of wild animals.


Working with Arduino:


Step 1:


Materials:

- figure of the minkey (free download): http://cp.c-ij.com/en/contents/3157/squirrel-monkey/index.html
- 4 sheets of A4 paper (In the file is only one, but I need to print poster-size, four pages per sheet to make it a little bigger monkey)
- pieces of balsa wood
- a piece of depron  or styrofoam tray
- two servomotors (one standard an other mini) withcrosshead, each
- one bolt with nut and washer (of about 6 cm)
- a piece of steel wire (I used a clothespin)
- a strip of velcro (6 x 3cm)
- programed Arduino, brotoboard, wires, batteries, servo lead Connection
- glue, hot glue, instant glue, scissors, ruler, pliers, etc ...

Step 2: Assembling Skull

The skeleton was made with two servos, pieces of balsa wood, a bolt, a nut and a steel rod.


Step 3: Assembling the Parts of Monkey

After printing, cut and glue the parts.Be careful not to glue the head on the body.
At the bottom, I put a piece of depron. Notice that one edge is rectangular. This was used to fit the tail of the monkey.

Step 4: Wearing the Skeleton

I put a piece of styrofoam in the head to be able to glue the crosshead of the servomotor.
Then i "covered" the skeleton with the monkey's body, attached the head and glued the base. To have access to the internal components, i put a strip of velcro and made a hole in the chest of the monkey.

Step 5: Connecting to Arduino

I Just use two ports on the Arduino to control it.
In this example, I used ports 0 and 1.

Software:

int pos = 0; // variável da posiçao do servo
int anival = 0; // variável que vai escolher o animal
int randomval2 = 0; // variável do tempo de pausa

#include <Servo.h> // biblioteca servo

Servo macacoc; // criando o objeto macaco corpo
Servo macacop; // criando o objeto macaco pescoço

void setup ()
{

macacoc.attach (0); // atribuindo o corpo do macaco ao pino 0
macacop.attach (1); // atribuindo o pescoço do macaco ao pino 1

}

void loop ()
{
inicio:
randomval2 = random (4); // variável para escolher o tempo de pausa
randomval2 = randomval2 * 1000; //ajustando o tempo para segundos: 0, 1, 2 ou 3 segundos

macacop.write(90);
for(pos = 130; pos < 170; pos += 1)
{
macacoc.write(pos);
delay(30);
}
delay(2000);
for(pos = 170; pos>=130; pos-=1)
{
macacoc.write(pos);
delay(40);
}
for(pos = 90; pos < 140; pos+=1)
{
macacop.write(pos);
delay (15);
}

for(pos = 140; pos> 90; pos-=1)
{
macacop.write(pos);
delay (15);
}
for(pos = 90; pos < 140; pos+=1)
{
macacop.write(pos);
delay (10);
}

for(pos = 140; pos> 90; pos-=1)
{
macacop.write(pos);
delay (10);

}
delay (randomval2);