Introduction: Froggy World 1 the Catapult
Step 1:
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!

Participated in the
UP! Contest

Participated in the
Instructables Design Competition
32 Comments
10 years ago on Introduction
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
}
Reply 10 years ago on Introduction
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!
Reply 10 years ago on Introduction
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.
Reply 10 years ago on Introduction
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).
Reply 10 years ago on Introduction
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.
Reply 10 years ago on Introduction
Working on the connections still.. Tried re-wiring it.. http://puu.sh/4S6zI
Am i doing something wrong?
10 years ago on Introduction
I'll look forward to seeing the result :)
10 years ago on Introduction
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)
10 years ago
oh and also the battery holder only holds 4 AA is there a way to make this work?
Reply 10 years ago on Introduction
4 AA batteries will work (6 volts instead of 7.5). The servo pulling the spring will be slightly less powerful.
10 years ago on Introduction
Looking good . . . it looks like the black servo wires are tied together, but not connected to ground . .(negative from the batteries)
10 years ago on Introduction
The first line should be:
#include <Servo.h>
10 years ago on Introduction
Nice work!
10 years ago on Introduction
I know what the frog is saying "WEEEEEEEE!!!"
Reply 10 years ago on Introduction
In the next few days, the frog will "land" and have a new experience :)
Reply 10 years ago on Introduction
By the way, how far can go
Reply 10 years ago on Introduction
From carpeted floor to carpeted floor--12 to 15 feet. From a table to a tile floor, quite a bit farther.
Reply 10 years ago on Introduction
That's what I thought any plans to make one human size that might be fun.
I better not give you any ideas.
Reply 10 years ago on Introduction
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/
Reply 10 years ago on Introduction
I would build it if there were any plans.