Introduction: Robotics Machine Project

In the current day, robots are now used to speed up processes of manufacturing, including their use in assembly lines, automation, and much more. In order to get us used to the field of engineering and and to adapt ourselves to building a working robot, our goal was to construct a working robot that will collect a ball and deposit it in a goal.

Step 1: Determine Your Goal and Limitations

Whenever a project is going underway, it is important for someone to recognize a goal that they need to get too, as this allows them to stay more focused and to find a way to achieve that goal. Also, limitations are important because they give you a limit of how much energy, time, or money you can put it into the build.

In this case, our goal was to make a robot that could use various methods of Arduino programming to drive down a hallway, powered by a remote controller, and then, without the remote controller, find its way back to the goal and push the ball into the goal. With this goal in mind, we could then move onto the next step in the project. Our only limitation for this project was that the overall price could not be more then 75 dollars.

Step 2: Supplies Needed With Costs

When doing a robotics project, it is always important to generate a list of parts before you start the project instead of as you go on with the project. Making a list also gives you an idea of how much the project should cost you and how much you need to save up and prepare for.

Our parts list consisted of: (Any that do not have a price next to them were provided)

50 Male to male wires

50 male to female wires

50 female to female wires

1 Arduino Uno/Arduino Mega 2560

4 Wheels $26.99

2 Ball Casters $4.99

4 Motors

4 Motor Mounts

Assorted Aluminium Sheets *ALL MEASUREMENTS ARE IN INCHES AND ARE ⅛” THICK* (4) 2 x 10 (4) 1.189 x 1.598 (4) 1.345 x .663 (2) 1.75 x 1.598 (2) 7 base, 3.861 high, and 10 hypotenuse (2) 10 x 10 (1) 3.861 x 10 (1) 7 x 10

1 Battery

1 Motor Driver

1 Remote Controller with Receiver

38 Nuts $4.99

38 Bolts $5.99

Step 3: Schematics

Any good robotics project needs to have schematics so the builder or engineer can see what they have to build for the project to work. In this case, we needed more simple robotic schematics that would just demonstrate the concept of the motor retrieval system. We also had some for a battery pack and Arduino case.

Step 4: Construction

There is not really much to say about this aspect of the project part, but some safety tips on tools. When in the workshop, always wear glasses and gloves and an apron. Taking these precautions have saved countless lives and injuries. Some equipment we used in this case was a welder, a band saw, drill press, and other metal working tools. Also, before you weld, make sure what you weld is 100% correct because there is no going back.

Step 5: Programming

A robot typically moves by either programming of some sort of language, or by using mechanical parts designed to work in harmony. In this case, we programmed our robot using the Arduino coding language. This lead to some of us having to learn an entire new database of programming in order to master the skills needed.

Above is a basic schematic of our expected wiring plans for the robot.

Below is our driving program for our robot, and the ball retrieval method would be much simpler because we would just need a motor moving forward and backwards.

CODE:

int ch1;

int ch2;

int myInts[20];

int finalDistance;

int MOVING;

int STOP;

int timer;

int x = 0;

int stopTimer;

int ArrayValue;

void setup() { // put your setup code here, to run once: pinMode(45,INPUT);

pinMode(43,INPUT);

Serial.begin(9600);

}

void loop() {

// put your main code here, to run repeatedly:

ch1 = pulseIn(22, HIGH);

ch2 = pulseIn(24, HIGH);

//Serial.print("chA: ");

Serial.print(chA);

//Serial.print("chB: ");

Serial.println(chB);

if(ch1 > 1463){ timer = millis();

}

if(ch1 == 1463){

stopTimer = millis();

ArrayValue = (timer - stopTimer);

if(ArrayValue >= 0)

{

Serial.print(myInts[0]);

myInts[x] = ArrayValue; x++;

}

}

Step 6: Use Your Robot to the Best!

After all that hard work was put in, you should now have a fully working robot that reacts to a remote control! Be proud of yourself and enjoy your robot!