Introduction: Mechanical Bull for Dolls

Picture of Mechanical Bull for Dolls
This mechanical bull was created as a weekend hobby. The creation process was simple and did not last more than two hours. The materials I already had at home. For those who wish to make an equal, will be a good opportunity to recycle materials and learn how to use the joystick shield with Arduino. Hope you enjoy.

Step 1: Materials:

- A volunteer (doll)
- Pieces of cardboard
- An empty soft drink
- Two servomotors
- A Arduino Uno
- A Joystic Shield
- Arms for the servants
- Three screws
- nuts and a washers
- Hot glue, scissors, knife, etc. ...

Step 2: Creating the Model

Picture of Creating the Model

I used a can of soda as a model for the doll bull riding. After that, I drew on the cardboard, cut out the template and glued using hot glue.

Step 3: Joining the Servomotors

Picture of Joining the Servomotors

The servo motors are fixed on each other as shown, using a piece of cardboard to position them correctly and hot glue.

Step 4: Attaching the Mount

Picture of Attaching the Mount

Joining small pieces of cardboard with a hole in the center, was made a bracket to hold the mount in servants.

Step 5: Joining the Servants and the Mount

Picture of Joining the Servants and the Mount

I used a bolt, a nut and washer to secure the mount in servants, according to the figure.
Also used a piece to make the linking of movement between the servo arm and mount. This part should be a little slack for not hang with the movements.

Step 6: Fixing on a Base

Picture of Fixing on a Base

The base was made ​​with a simple cardboard cutout. I made the design of servo arm that controls the base, cut out and pasted it on cardboard with hot glue.
I used a part of the soda can as a handle to hold the puppets up on it.

Step 7: Assembling and Programming the Controller

Picture of Assembling and Programming the Controller
Software:
#include <Servo.h>  // incluindo a biblioteca dos servos

Servo SRx;

Servo SRy;

const int VRx = A0;

const int VRy = A1;

int sensorVRx = 0;      

int sensorVRy = 0;

int outputVRx = 0;

int outputVRy = 0;

long tempo_anterior= 0;

long intervalo= 100; //milisegundos

unsigned long tempo_atual;

void setup()

{
  Serial.begin(9600);

  SRx.attach(9);

  SRy.attach(10);

}

void loop()

{

  tempo_atual = millis();// o tempo atual é igual ao tempo de funcionamento do uC  

  sensorVRx   = analogRead(VRx);  

  sensorVRy   = analogRead(VRy);  

  outputVRx   = map(sensorVRx, 0, 1023, 0, 180);

  outputVRy   = map(sensorVRy, 0, 1023, 0, 180);  
    
  if(tempo_atual - tempo_anterior > intervalo)// se o tempo atual menos o tempo anterior for maior que o intervalo com que eu quero fazer minha acao

    {

      tempo_anterior = tempo_atual;//tempo anterior recebe o tempo atual

      Serial.print(outputVRx); 

      Serial.print(",");

      Serial.print(outputVRy);

      Serial.print(",");

      Serial.println("");

    }

 

  SRx.write(outputVRx);

  SRy.write(outputVRy);

  delay(2);                    

}

Running:

Comments

SelimErkan (author)2013-03-04

hi I love it. I want to ask a question. Will u show joystick controller connections?
I didnt see it
https://www.instructables.com/files/deriv/F5A/JKD1/HDOW3SAE/F5AJKD1HDOW3SAE.LARGE.jpg
I have a gamepad. And ı want to use it. But I didnt use.

PeckLauros (author)SelimErkan2013-03-04

Oops! My mistake! I thought I had put a figure showing the connections. I connected the joystick shield as follows:

Wires-----------Sensor Shield----------Joystick Shield
black wire------------ G--------------------- (gate)
red wire -------------- V--------------------- (5vots)
gray wire ------------ A0-------------------- (X axis)
orange wire --------- A1-------------------- (Y axis)

As soon as I can, I get a better picture.

MikeTheMaker (author)2013-03-04

This is great! I hope to build something similar for my "Froggy World" amusement park--of course I'll credit you for the concept.
I like the fact that you used cardboard--it's a great material for models and prototypes; and actually holds up fairly well.

PeckLauros (author)MikeTheMaker2013-03-04

Thank you! I love using cardboard because it is easy and inexpensive. Your playground is getting very good too. I'm watching. I am proud to know that you're gonna build a toy with the concept that I created. Then show us.

zomfibame (author)2013-03-03

lol, that is a fun lil' project.

goodforcatfish (author)2013-03-03

Nifty idea! well done

Thanks!

About This Instructable

6,005views

27favorites

License:

More by PeckLauros:El Chapulin Colorado Custom Stranger BitsPing Pong Larson Scanner
Add instructable to: