There are a lot of fun ways to build cranes. For this project we used:
- 1 – Arduino Mega (Uno or equivalent could also be used).
- 1 – generic motor/servo shield
- 1 – breadboard
- 1 – Webcam mount (with 2 servos)
- 4 buttons and 4 resistors (10KΩ whatever you have).
- jumpers
- K’Nex pieces
- String or wire to support the servos to the structure
We used string and wire to secure the Webcam mount to our structure.
For the servos that we used we found that they had “jitter” if they were connected directly to the Arduino. Depending on the servos that you use you may or may not experience “jitter”. To remove “jitter” a motor/servo shield can be used, these shields have from filtering to remove noise on the power and data pins to the servos.
There is no difference in the Arduino code if you are or are not using a servo shield. Typically a servo shield will use data pins 9 and 10.
For this project we used 4 buttons to control the 2 servos. The circuit that we used is shown below.
The code is:
// 4 button crane project // #include Servo servo1; Servo servo2; char thecmd; int xpos = 90; int ypos = 90; int uPin = 31; int dPin = 33; int lPin = 35; int rPin = 37; void setup() { Serial.begin(9600); Serial.println("Crane Controls"); Serial.println("Push a button to control..."); servo1.attach(9); // attaches the servo on pin 9 to the servo object servo2.attach(10); // attaches the servo on pin 9 to the servo object servo1.write(xpos); // left and right servo servo2.write(ypos); //up and down servo pinMode(uPin, INPUT); pinMode(dPin, INPUT); //pinMode(rPin, INPUT); //pinMode(lPin, INPUT); } void loop() { if (digitalRead(uPin) == HIGH) { move_crane(servo2, 5); } if (digitalRead(dPin) == HIGH) { move_crane(servo2, -5); } if (digitalRead(lPin) == HIGH) { move_crane(servo1, 5); } if (digitalRead(rPin) == HIGH) { move_crane(servo1, -5); } } void move_crane(Servo theservo, int direction) { Serial.println("Button pushed"); int minpos = 50; int maxpos = 220; if (direction minpos) { ypos = ypos + direction; theservo.write(ypos); } } else { if (ypos < maxpos) { ypos = ypos + direction; theservo.write(ypos); } } delay(500); }
hey bro can you give me the black thing thats in the middle of crane pls pls pls aaaaa
LikeLike
Hi,
The dual webcam servo mount is available on Amazon for about $6-7. Sorry the link in the blog is no long available.
LikeLike