Saladuino ($14 Chef)

by Bioma Tech in Circuits > Arduino

297 Views, 0 Favorites, 0 Comments

Saladuino ($14 Chef)

IMG_1030.jpg
IMG_1035 (1).jpg

Hey everyone!

We're two high school students and here is the first one of many guides we will be posting about robots we made to make our everyday lives easier and more exciting. This simple and cheap robot can make salads, although for demostration purposes we have it only making a really simple salad made of spinach and ranch; you can easily tweak the codes to add other ingredients as well, such as croutons. We spent $15 total on the parts.... if you have some arduino parts left over or dc motors you can salvage RC car you can push the price down even further.

Supplies

1 Arduino Uno

2. 8 12" Male/Male wires

3. 1 blade or lightweight knife, 3-4" blade ideal.

4. I scoop. 1/8 cup size. A measuring cup works.

5. 1 cork with 1" diameter, and 1 cork with .75" diameter

6. 4 pairs of wooden/bamboo chopsticks - 1 pair 3", 2 pairs 4", 1 pair 5-6"

7.10 rubber bands.

8. 1 12"x12"x1" wooden board

9. 4 DC motors, 3-4.5v

10. I .5"-1" .4"/1cm screm

Build the Base

IMG_0987.jpg

Take a drill and create 3 holes in the shape of a triangle, each hole as wide as a chopstick, in the middle of the board. Make these holes as deep as the board is thick.

Assemble the Base Motor.

IMG_0989.jpg
IMG_1012.jpg
IMG_0990.jpg
IMG_0992.jpg
IMG_0996.jpg

Get your 2 3" chopstick pieces, 1 motor, and 2 rubber bands. Place the chopstick pieces against sides of the motor vertically, aligning them to have an equal spacing apart. Then, use your rubber bands to tie the chopsticks to the motor; make sure that the motor is pointing upwards. Plant the ends of your chopstick in the 3 holes you drilled in your board. Then, stick your 1" diameter cork to the motor shaft - make sure it's on tight!

Building the Middle Arm

IMG_1018.jpg
IMG_1015.jpg
IMG_1011.jpg
IMG_1016.jpg
IMG_1021.jpg

Take your drill and cut two holes at the opposite sides of the cork's top, these holes should be .75"-1" deep. Use a pair of 6" chopsticks and fill in these holes. Next, take your screw and place it over the shaft of one of the other dc motors. Hot glue it into place. Place this motor at the top and between the 6" chopsticks, make sure the shaft facing right. Leave .4" away from the end of the chopstick. Then secure this motor to the 6" chopstick pieces with 2 rubber bands.

Take the .75" diameter cork and split it into thirds. Then, take these cork and drill ridges along the parallel horizontal sides of the cork... they should be deep enough that another chopstick can rest inside smugly. Put one of these corks in-between the 2 4" chopsticks, .4" away from the end, and use two rubber bands to secure them together. Then, take the cork and chop stock and stick the screw of the last motor into this cork.

Take another third of the .75" cork and place it in between in 4" chopsticks. Secure near the end of the chopstick with rubber bands.

Assembly and End Piece

IMG_1004.jpg
IMG_1001.jpg
IMG_1005.jpg
IMG_0998.jpg
IMG_0999.jpg
IMG_0997.jpg
IMG_1008.jpg
IMG_1006.jpg
IMG_1007.jpg
IMG_1002.jpg
IMG_1017.jpg
IMG_1020.jpg

For the end piece, first gouge out the inner section of the handle of the measuring cup, with a knife, soldering iron, etc. Then, break off 80% of your knife's handle. Place into hollowed space of the cup handle the knife's remaining handle space. Make sure the cup is facing upwards and the knife is upwards as well. Use two rubber bands and some tape to secure this together.

Take your last third of the .75" cork and place it into the middle of this combined knife and cup, vertically. Use tape to secure it to the knife/cup.

Building the Upper Arm

IMG_1010.jpg
IMG_1009.jpg

Then, stick the shaft of another dc motor into the last cork mentioned in "Building the middle arm". Get the last pair of 4" chopsticks and use rubber bands to secure the motor to this rubber band. Take the motor with the cork and knife/scoop attached to and use rubber bands to fasten it to the other end of the 4" chopsticks.

Arduino and Code

IMG_1027.jpg
IMG_1026.jpg

Get your female/females and attach them to ports 1-8 in the Arduino and with the corresponding motor parts. Make sure the Arduino is plugged into a power supply such as a laptop.

Use the following code for this arduino:

int motorPin1 = 1;
int motorPin2 = 2; int motorPin3 = 3; int motorPin4 = 4; int motorPin5 = 5; int motorPin6 = 6; int motorPin7 = 7; int motorPin8 = 8;

void setup() {

pinMode(motorPin1, OUTPUT); pinMode(motorPin2, OUTPUT); pinMode(motorPin3, OUTPUT); pinMode(motorPin4, OUTPUT); pinMode(motorPin5, OUTPUT); pinMode(motorPin6, OUTPUT); pinMode(motorPin7, OUTPUT); pinMode(motorPin8, OUTPUT); }

void loop() { //chop spinach and bring blade back up rotateRightM2(50, 500); rotateRightM3(50, 500); rotateRightM4(150, 250); rotateLeftM3(50, 500); rotateLeftM4(150, 250); rotateLeftM2(50, 500);

//shift assembly towards dressing rotateLeftFullM4(1000);

//pick up dressing and scoop up rotateRightM2(50, 750); rotateRightM3(50, 750); rotateRightM4(150, 400); rotateLeftM3(50, 750); rotateLeftM4(150, 400); rotateLeftM2(50, 750);

//rotate back to lettuce pile rotateRightFullM4(1000);

//drop dressing and lift back to initial position rotateRightM2(50, 1000); rotateRightM3(50, 1000); rotateRightM4(150, 500); rotateLeftM3(50, 1000); rotateLeftM4(150, 500); rotateRightM2(50, 1000);

}

void rotateLeftM1(int speedOfRotate, int length) { analogWrite(motorPin1, speedOfRotate); digitalWrite(motorPin2, LOW); delay(length); //waits digitalWrite(motorPin1, LOW); }

void rotateRightM1(int speedOfRotate, int length) { analogWrite(motorPin2, speedOfRotate); digitalWrite(motorPin1, LOW); delay(length); //waits digitalWrite(motorPin2, LOW); }

void rotateLeftM2(int speedOfRotate, int length) { analogWrite(motorPin3, speedOfRotate); digitalWrite(motorPin4, LOW); delay(length); //waits digitalWrite(motorPin3, LOW); }

void rotateRightM2(int speedOfRotate, int length) { analogWrite(motorPin4, speedOfRotate); digitalWrite(motorPin3, LOW); delay(length); //waits digitalWrite(motorPin4, LOW); }

void rotateLeftM3(int speedOfRotate, int length) { analogWrite(motorPin5, speedOfRotate); digitalWrite(motorPin6, LOW); delay(length); //waits digitalWrite(motorPin5, LOW); }

void rotateRightM3(int speedOfRotate, int length) { analogWrite(motorPin6, speedOfRotate); digitalWrite(motorPin5, LOW); delay(length); //waits digitalWrite(motorPin6, LOW); }

void rotateLeftFullM4(int length) { digitalWrite(motorPin7, HIGH); digitalWrite(motorPin8, LOW); delay(length); //waits digitalWrite(motorPin7, LOW); }

void rotateRightFullM4(int length) { digitalWrite(motorPin8, HIGH); digitalWrite(motorPin7, LOW); delay(length); //waits digitalWrite(motorPin8, LOW);

Enjoy!

IMG_1029.jpg
IMG_1035.jpg
IMG_1034.jpg
IMG_1039.jpg
IMG_1043.jpg

The robots done! You can easily tweak it to add some more cook stuff. In these photos we have it first cutting spinach up, then scooping up some ranch and adding it to the spinach.