Froggy World 1 the Catapult

9.8K4232

Intro: Froggy World 1 the Catapult



Froggy World is an amusement park for adventurous frogs. 

This ride is the first in a series.  Each ride receives a signal from the previous ride "You've got the frog;" and each ride signals the next that "Frog has left, you've got the frog." Eventually, the frog will be returned to the catapult (by another ride) and the cycle will repeat.

The concept for winding and releasing the catapult spring comes from Arduino Controlled Catapultby UnusualTravis
https://www.instructables.com/id/Arduino-Controlled-Catapult/


STEP 1:

There is no real "beginning" or "end" to this amusement park, but I had to start somewhere.  The signal on Arduino pin #13 (brought low) will cause this ride to catapult the frog, return to "ready" position and notify the next ride (by a low signal on pin #11) that the frog is now in their hands.

The code "winds" the spring servo, then moves the "release servo."  The spring servo unwinds (catapult falls back to start position) and the "release servo" moves to the latch position.  Then the "frog has left" signal is activated.

#include <Servo.h>

Servo myservo;

Servo release;

int start = 13;

int next = 11;

int val = 0;

void setup ()

{myservo.attach(5);

release.attach(6);

pinMode(start, INPUT);

pinMode(next, OUTPUT);

digitalWrite(next, HIGH);

myservo.write(150);

release.write(120);

}

void loop ()

{val=digitalRead(start);

if(val==LOW)

{myservo.write(5);

delay(1000);

release.write(180);

delay(1000);

myservo.write(150);

delay(2000);

release.write(120);

digitalWrite(next, LOW);

delay(1000);

digitalWrite(next, HIGH);

}}

STEP 2:

I had to start somewhere . . . and this frog is actually #7 in my design sequence.

Design and 3d print files are available at:

http://www.thingiverse.com/thing:42991

STEP 3:

I used magnet wire to tie the 1/4" x 3 1/4" x .025" spring to the catapult arm.

STEP 4:

The catapult restraint keeps the arm in a position such that it will return to rest when the wound spring is released.

STEP 5:

I cut a 1/4" x 3 1/4" x .025" spring to fit in the restraint.

STEP 6:

The spring sticking out looks hazardous . . .

STEP 7:

So, I cut the spring off and added a "safety button" on the end.

STEP 8:

The 8" x 15" by 1/4" plywood base should be painted at this time.  (I didn't--had to remove everything to paint).

Add the base and the restraint with screws or small bolts.

STEP 9:

Take the "servo extender" and drill two 1/16" diameter holes through the extender and the servo horn.  Use magnet wire to secure the extender to the horn.

STEP 10:

Mount the servo (Hi tec HS 311--available at amazon.com) into the servo spring bracket.

STEP 11:

Secure this with the spring servo bracket lid.

STEP 12:

Install the catapult lever using a 3" long by 1/4" diameter wood dowel.  Attach a 1/4" x 3 1/4" by .025 spring to the catapult lever and the servo extender using magnet wire (#22).

Attach the servo horn to the servo motor and stretch the spring just enough that the catapult arm will lie at rest when the servo horn is in the leftmost position.

STEP 13:

Fasten the "release servo" so that it prevents the catapult arm from lifting.

STEP 14:

Secure the servo arm with the servo screw.

STEP 15:

Secure the 9 volt battery holder to the plywood.

Solder jumper pins to the ends of all wires (use heat shrink tubing to protect the solder connections from shorting).

STEP 16:

Screw the AA battery holder to the plywood.

STEP 17:

Screw the Arduino to the plywood. 

Download the software from step #2 to the Arduino if you have not already done so.

STEP 18:

Remove the sticky back paper and attach the perf board to the plywood (you'll never get it loose--be sure it's where you want it). 

Neaten up the cable runs with cable ties or holders (some printed ones are available if you are 3d printing parts).

STEP 19:

Fasten everything together, as neatly as possible.

STEP 20:

The frog should be ready to fly!

32 Comments

OK, let's try this. Look at step #1 and remove the wires from pins 11 and 13. Remove the 10K resistor that goes to 5V.
Now, let's change the code so that the catapult only fires once (on power up or whenever you push the reset button on the Arduino).

Run the program, with nothing attached to the servos. After a few seconds, the servos will settle down. Attach the servo arms--myservo will be in the relaxed position, the release servo will be in position to hold the arm.

#include

Servo myservo;

Servo release;


void setup ()

{myservo.attach(5);

release.attach(6);


myservo.write(150);//this puts the spring in the unwound position

release.write(120);//this puts the release servo in a position to hold the catapult

}



void loop ()

{

myservo.write(5);//wind the spring

delay(1000);//give the spring time to get wound

release.write(180);//release the catch

delay(1000);//wait for the arm to fling

myservo.write(150);//return spring to released position

delay(2000);//give arm time to flop down

release.write(120);//reset catch



delay(1000000000);//wait a long long time before repeating



}
Hi! Thanks so much for the information.. I really appreciate your time and I'm really new at this. So, I am wondering if you could help point out which wires go to where on the breadboard and where I need to solder. Do I still need both servos? Also, where do the wires go on the Arduino. I'm really new to this (Like 1 week) and I'm just going by google and your pictures.. Are there any extra wires that I need to buy and what kind? Sorry for the trouble but this would help me so much! Project is due Thursday --- I've got 2 more nights. Thank you!
It looks right--a little hard to tell. Connecting the 9 volt battery should turn the Arduino on. Pushing the little brown button on the Arduino should reset it and cause it to recycle.
You need both servos--one winds the spring and the other releases the arm when the spring is wound.

Red on both servos are connected together and connected to positive on the 7.5 volt battery.

Black on both servos are connected together and connected to negative on the 7.5 volt battery. Negative on the 7.5 volt battery is connected to negative on the 9 volt battery.

Yellow on the spring winding servo is connected to pin 5 on the Arduino.

Yellow on the release servo is connected to pin 6 on the Arduino.

Positive from the 9 volt battery goes to Vin on the Arduino.

Negative from both batteries (you connected them earlier) also goes to "Gnd" on the Arduino.

You will probably need some jumper wires if you don't already have them. They have little metal pins on the ends . . . those pins will plug into the arduino sockets or the breadboard holes.

On the sides of the breadboard, everything near the red line is connected together (usually put positive from a battery there). Everything next to the blue line (between the blue line and red line) is connected together--usually put battery negative there. In the middle of the breadboard, groups of 5 pins (like A,B,C,D,E) are all connected together.

Do most of your connecting on the breadboard. You may have to solder wires from the servo and wires from the batteries (if they do not have pin connectors).
I've included 4 images--a servo, a jumper and an Arduino; jumper pin next to the servo connector; jumper pin in the servo connector; jumper pin connected to Arduino

Jumper pins make life a lot easier than soldering--then it is easy to change your projects around.
Working on the connections still.. Tried re-wiring it.. http://puu.sh/4S6zI
Am i doing something wrong?
I'll look forward to seeing the result :)
If you put it in series with the 4 AA (plus off the 4AA connects to negative on the one AA), then plus off the one AA goes where the 4 AA positive used to go)
oh and also the battery holder only holds 4 AA is there a way to make this work?
4 AA batteries will work (6 volts instead of 7.5). The servo pulling the spring will be slightly less powerful.
Looking good . . . it looks like the black servo wires are tied together, but not connected to ground . .(negative from the batteries)
The first line should be:

#include <Servo.h>
I know what the frog is saying "WEEEEEEEE!!!"
In the next few days, the frog will "land" and have a new experience :)
By the way, how far can go
From carpeted floor to carpeted floor--12 to 15 feet. From a table to a tile floor, quite a bit farther.
That's what I thought any plans to make one human size that might be fun.
I better not give you any ideas.
I can think of a few people who need to ride the human size version . . . "The Boot" (where Froggy lands) is now ready
https://www.instructables.com/id/Froggy-World-2-The-Boot/
I would build it if there were any plans.
More Comments