Introduction: Animatronic Green-Winged Macaw Papercraft

Hello everybody! This macaw was part of a work of biology at the college of my daughter, who was attempting to educate people not to buy wild animals. This beautiful animal, natural tropical forests of South America, is highly coveted by smugglers.
In captivity, unlikely to receive necessary care.
I did this and the other animals as if they were being bred in captivity, reproducing their sorrow and ill-treatment with some simple changes in papercraft and pasting a bit crooked and crumpling the paper. However, if you make one, can portray the beauty of this animal simply by pasting the paper as the assembly instructions.

Videos -
Using R / C radio to determine the limits of the servo and test the skeleton:


With arduino:




Materials needed:
- Papercraft download (free): http://cp.c-ij.com/en/contents/3157/green-winged-macaw/index.html
- 16 sheets A4
- A clothes-peg
- Tree of a 6 inch screws with nuts
- A piece of copper wire about 20 cm
- A standard servo and a mini servo
- 2 servo extension cables
- A piece of balsa wood (15 x 15 cm) * can also use thick cardboard
- A piece of Styrofoam
- a piece of velcro (10x 5 cm)
- An Arduino
- Welding, pieces of wire (I used a cable network), breadboard, glue, hot glue,  scissors, etc ...

Step 1: Assembling Papercraft :


First, we print, cut and assemble the papercraft

Assemble the following parts and book:
Head - 1,2,3 and 4
Tail - 5.6 e1
Torso - 8
* Tail and torso together
assembling the piece 9 and book
Thighs - 10 and 11
Paws -  22, 25, 23 and 26
Wings - right, left and 16 12.13, 14.15 and 17
* Join the wings with the number 18 and book

Step 2: Assembling the Skeleton

The basis of the macaw was made up half of a clothes peg, supported with two screws, as shown. Measure the distance between the feet and make holes with a drill.
For each foot, cut two pieces of copper wire and weld nuts.
The standard servomotor serves to raise the neck of the macaw and was attached to a piece of balsa wood, as figure and rod arm movement has taken place with the metal of the clothespin. The mini servo moves the head and was glued directly on the arm.


Step 3: Assembling Macaw

Glue parts 10 and 11 in number 9, forming the thighs and enter parafuzos, screwing in the preacher and put his paws. Place the nails in pieces of copper and set with the help of hot glue.

Servos were fixed upon the peg, getting a good balance.

Step 4: Closing


I preferred to leave an opening for possible maintenance if there was some defect. For this, I glued some pieces of Velcro on the body of the macaw instead of pasting the pieces. It's pretty good.

Head*
I tried to fill her head with pieces of Styrofoam to secure the servo arm but was not very good. So I put some expanding foam. I do not recommend using this product because it is expensive and the packaging is made to be used only once. I lost almost all of the product and only used this head.

To control the movements, I used an Arduino.
The software is the following:

int pos = 0; // variável da posiçao do servo
int tmp= 1500; // variável fixa de temporização de um segundo e meio

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 ararac; // criando o objeto arara corpo
Servo ararap; // criando o objeto arara pescoço
Servo macacoc; // criando o objeto macaco corpo
Servo macacop; // criando o objeto macaco pescoço
Servo tucano; // criando o objeto tucano
Servo jabuti; // criando o objeto jabuti
Servo periq; // criando o objeto periquito


void setup ()
{
ararac.attach (0); // atribuindo o corpo da arara ao pino 0
ararap.attach (1); // atribuindo o pescoço da arara ao pino 1
macacoc.attach (2); // atribuindo o corpo do macaco ao pino 2
macacop.attach (3); // atribuindo o pescoço do macaco ao pino 3
tucano.attach (5); // atribuindo o tucano ao pino 5
jabuti.attach (6); // atribuindo o jabuti ao pino 6
periq.attach (9); // atribuindo o periquito ao pino 7

}

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

anival = random (5); // escolhe, randomicanente, qual animal vai se mover

if (anival == 0){
goto aarara;
}

else if (anival == 1) {
goto omacaco;
}

else if (anival == 2) {
goto ojabuti;
}

else if (anival == 3) {
goto otucano;
}

else if (anival == 4) {
goto periquito;
}


aarara:
for (pos =100; pos < 150; pos+=1) // levanta o corpo da arara
{
ararac.write(pos);
delay(20);
}
delay (2500);
for (pos =150; pos >= 100; pos-=1) // abaixa o corpo da arara
{
ararac.write(pos);
delay(20);

}
for(pos = 90; pos < 140; pos += 1) // balança a cabeça da arara para a direita
{
ararap.write(pos);
delay(30);
}
for(pos = 140; pos > 90; pos-=1) // balança a cabeça da arara para a esquerda
{
ararap.write(pos);
delay(60);

for(pos = 90; pos < 140; pos += 1) // repete o balanço da cabeça para a direita
{
ararap.write(pos);
delay(30);
}
for(pos = 140; pos > 90; pos-=1) // repete o balanço da cabeça para a esquerda
{
ararap.write(pos);
delay(60);
goto inicio;
}
.
.
.
.
.
.