Since Covid-19 has paused the world, we are doing school virtually . Therefore we are learning at home. Our teacher gave us kits for a project. In this project we will create a robot that operates on Arduino bread board, and servos.
We now have started our first project. We will be creating a robot that will be able to operate on an Arduino, servos, and code. It will be able to understand its sensors and read its surroundings so it won't hit anything.
This is the plan of the qualities that we want our robots to be able to do. This is like our constraints.
As an engineering student I need to avail the design process to solve world problems, or problems in general. The research part of the design process is to better understand what it is you are doing and how you want to do it. Research also provides information about similar projects. Underneath i wrote my research to help me start up ideas for my robot.
This robot is powered by a Arduino. I really like this robot because it reminds me of Wall-E the robot. This robot is also very tiny . This robot has its sensor in the front.
This robot is also powered with Arduino. I love this robot because it is very well put together. I believe who so ever made this took there time to make it look so neat. I really like the shield that covers the whole entire robot, even the servos.
I like this robot because it is very different then a lot of robots I saw . I love how this robot has a base, but still has pegs to hold everything up. This robot is also very unique
NOTE: On my research i did not find images with a link, i got got them off of google search
I also found a couple of videos:
https://www.youtube.com/watch?v=aO-nAtUaVxc
https://www.youtube.com/watch?v=6TB0F_7SZHg
https://www.youtube.com/watch?v=1n_KjpMfVT0
https://www.youtube.com/watch?v=tXsP9STxdBc
A circuit diagram is a prototype of what the arrangement of the wires and components would be like. Its purpose is to layout the circuit for better understanding on how it will look and work.
A coin battery diagram shows the electrical connections, and where everything will be placed.
I used this picture i found from google images on a circuit with 2 servos, to use as reference to wire my servos.
I made this circuit diagram to represent my circuit. This is how professionals show or communicate their circuits. From the image above you can see my wires wired in the 5V and GND pins. For my robots signal I wired wires that go to my breadboard into 9 and 10 on my Arduino for its signal
In the video above my servos are moving. The two servos are going in opposite directions. Also one of the servo start two seconds before the other. This means that my wiring and coding worked.
#include <Servo.h>
Servo myservo;
Servo myservo2;
void setup()
{
myservo.attach(9);
myservo2.attach(9);
}
void loop() {
myservo.write(0);
delay(2000);
myservo2.write(180);
delay(2000);
}
In my path my robot will start in the far right of my dining room, go through the living. In the living room my robot has to go around my ottoman. Then turn the perimeter of the far down left corner in my living room, to turn around to go back to where the robot started.
Start motor
Straight
45 degree turn to right
Straight
45 degree turn to left
Straight
90 degree right turn
Straight
90 degree left turn
Straight
90 degree left turn
Straight
90 degree right turn
Straight
90 degree left turn
Straight
90 degree left turn
Straight
90 degree right turn
Straight
45 degree left turn
Straight
45 degree right turn
Straight
45 degree left turn
Straight
Stop
A circuit diagram is a prototype of what the arrangement of the wires and components would be like. Its purpose is to layout the circuit for better understanding on how it will look and work.
A coin battery diagram shows the electrical connections, and where everything will be placed.
Today we labeled our wires so we wont be confused. Also we are going to add more components and wiring the ultra sonic sensor.
This is a circuit diagram, that will show how the Ultra Sonic Sensor will be put into the Arduino to be added to my robot.
https://www.theengineeringprojects.com/2017/08/ultrasonic-sensor-arduino-interfacing.html
This is an ultrasonic sensor, also known as an ultrasonic transducer that is based on a transmitter and receiver and mainly used to determine the distance from objects. It mainly depends on the sound waves.
https://www.theengineeringprojects.com/2018/10/introduction-to-hc-sr04-ultrasonic-sensor.html
During today's class my teacher wanted to check my understanding of the code. She gave each student in my class and individual "pseudo code". To complete the test we had to code our robot with the proper code that matches the commands our teacher gave us. If we are having trouble with our robots we can do the code, without a video of our robot performing the code and we can still get 90%. I wanted to do a video but my robot was acting up last minute. For my individual "pseudo code" I hade to make my robot
{180 degree left tank turn
backwards five seconds
stop three seconds
90 degree standard left turn
forward five seconds}
For extra credit you have to make the robot do a 360 degree right and left tank turn.
The code I made to complete my test is to the right.
#include <Servo.h>
Servo myservoR;
Servo myservoL;
void setup()
{
myservoR.attach(9);
myservoL.attach(10);
}
void loop() {
myservoR.write(0);
myservoL.write(0);
delay (500);///(left tank turn)(180o)
myservoR.write(180);
myservoL.write(0);
delay (5000);/// ( back 5sec)
myservoR.write(90);
myservoL.write(90);
delay (3000); ///( Stop 3sec)
myservoR.write(90);
myservoL.write(0);
delay (2000); //(left *reg* turn 90o)
myservoR.write(0);
myservoL.write(180);
delay (5000); ///( forward 5sec)
myservoR.write(0);
myservoL.write(0);
delay (2000);///(left tank turn)(360o)
myservoR.write(180);
myservoL.write(180);
delay (2000);///(Right tank turn)(360o)
}
This is the circuit picture I used to connect and wire my sensor. On the sensor there are two pins labeled "Trig" and "Echo". Those twin are suppose to be connected to a pin number. The other two pins on the sensor labeled "Vcc' and "GND" are suppose to connect to power pins on the Arduino. "GND" on the sensor should be wired to "GND" on the Arduino. "Vcc" on the sensor should be wired to "5V" on the Arduino.
const int trigPin = 12;
const int echoPin = 11;
// defines variables
long duration;
int distance;
void setup() {
pinMode(trigPin, OUTPUT); // Sets the trigPin as an Output
pinMode(echoPin, INPUT); // Sets the echoPin as an Input
Serial.begin(9600); // Starts the serial communication
}
void loop() {
// Clears the trigPin
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
// Sets the trigPin on HIGH state for 10 micro seconds
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Reads the echoPin, returns the sound wave travel time in microseconds
duration = pulseIn(echoPin, HIGH);
// Calculating the distance
distance= duration*0.034/2;
// Prints the distance on the Serial Monitor
Serial.print("Distance: ");
Serial.println(distance);
}
Ultra sonic sensors put out sound waves, too loud for the human ear and that sound waves bounces off an object and back to the sensor. Therefore calculating the distance based on time.
1.Wake up at 5:00 10.Go Inside 11.get a rag
2.Brush your teeth 11.get a rag
3.Wash your face 12.get a towel
4. Put on shorts 13. get a robe
5.Put on shirt 14.Take a shower
6.Get basketball 15.get out shower
7.Go outside 16.put on clothes
8.Practice 17. Eat breakfast
basketball
for an hour
10.Go Inside
An if/else statement is like a cause and affect. Depending on what happened before. A function is like a demand and it ells you exactly what to do. It does not depends on other actions.
Function example: "Pick up the ball"
If/Else example: "If I throw you the ball, catch it. Else wait till I throw it to you."
#include <Servo.h>
Servo myservoL;
Servo myservoR;
void setup()
{
myservoL.attach(9);
myservoR.attach(10);
}
void Lefttank(){
myservoR.write(0);
myservoL.write(0);
}
void Righttank(){
myservoR.write(180);
myservoL.write(180);
}
void Left(){
myservoR.write(90);
myservoL.write(0);
}
void Right(){
myservoR.write(0);
myservoL.write(90);
}
void Forward(){
myservoR.write(0);
myservoL.write(180);
}
void Back(){
myservoR.write(180);
myservoL.write(0);
}
void loop()
{
Forward();
delay(2000);
Back();
delay(2000);
Right();
delay(2000);
Righttank();
delay(2000);
Left();
delay(2000);
Lefttank();
delay(2000);
}
For this assignment we were suppose to document a video of my robot avoiding at least five obstacles. sadly my robot is not working without computer power so it is not able to do this. Below is a video of my robots current condition.
These diagrams show the addition of the ultra sonic sensor and how it is wired.
#include <Servo.h>
Servo myservoR;
Servo myservoL;
// defines pins numbers
const int trigPin = 12;
const int echoPin = 11;
// defines variables
long duration;
int distance;
void setup() {
pinMode(trigPin, OUTPUT); // Sets the trigPin as an Output
pinMode(echoPin, INPUT); // Sets the echoPin as an Input
Serial.begin(9600); // Starts the serial communication
myservoL.attach(9);
myservoR.attach(10);
}
void Lefttank(){
myservoR.write(0);
myservoL.write(0);
}
void Righttank(){
myservoR.write(180);
myservoL.write(180);
}
void Left(){
myservoR.write(90);
myservoL.write(0);
}
void Right(){
myservoR.write(0);
myservoL.write(90);
}
void Forward(){
myservoR.write(0);
myservoL.write(180);
}
void Back(){
myservoR.write(180);
myservoL.write(0);
}
void loop() {
// Clears the trigPin
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
// Sets the trigPin on HIGH state for 10 micro seconds
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Reads the echoPin, returns the sound wave travel time in microseconds
duration = pulseIn(echoPin, HIGH);
// Calculating the distance
distance= duration*0.034/2;
// Prints the distance on the Serial Monitor
Serial.print("Distance: ");
Serial.println(distance);
Forward();
delay(2000);
Back();
delay(2000);
Right();
delay(2000);
Righttank();
delay(2000);
Left();
delay(2000);
Lefttank();
delay(2000);
}
A Bluetooth module is a way of wireless communication. Through communication and code it tells the robot what to do .
To connect all you have to do is wire the Bluetooth module in the right pins. The Arduino Pin 0 or RX goes to TX on the module. The Arduino Pin 1 or TX goes to RX on the module. The Arduino Pin 5V goes to VCC on the module. The Arduino Pin GND goes to GND on the module. If you plug in the pins correctly with the right code it will surely work.
https://create.arduino.cc/projecthub/mayooghgirish/arduino-bluetooth-basic-tutorial-d8b737
The Arduino Bluetooth module receives data and sends it to the Arduino through a pin. The code uploaded to the Arduino checks the data that was received from the module.
https://create.arduino.cc/projecthub/m_karim02/arduino-and-hc-05-bluetooth-module-tutorial-9f15ed
Due to the speed of the class we skipped over this step and will not be putting in the Bluetooth module.
I love the way that this car is designed and built. I feel it would be really cool If I made a model that looks exactly like. I feel it would be super unique, to make something so big in the real world small.
Although I want to make my design something that looks like it can be in the real world. I like the rounded design. It makes it look more futuristic.
I like this design mainly because it looks more human. If I do this design, I would make it look more like a human. It would also be unique for it to look human-like.
For our project we are creating a Mechanical motions and power transmission steam sculpture model.
During this project we wil learn all about gears
Today I practiced using Inkscape to create shapes. Therefore I made a person Which required lot of shapes. I first created a rounded rectangle for the forehead and a regular square for the face and then grouped those two shapes together. I then created a circle for the hair and pushed the layer behind the others. Next, I made two ovals and four circles for the eyes. I then made four more circles for the ears and the earrings. I then used the freehand tool and calligraphic brush to do the beard, dimple, body lines, neck, mouth, nose, and eyebrows. I lastly made two more circles for the nostrils.
This is my gear design I created. To get some more practice and learn new tools in Inkscape I will create this.
In this project there are tri-cams which is moving in a rotational motion. Which is engaging with the sticks connected to the clock making it go in a linear motion. I believe in order to put the number onto the project, the creator added mechanical slots. All of this would not work if the tri-cams were not ran by motors, and is not using a shaft like our project.
In this sculpture, Ms. white is using a drive shaft to rotate the drive gear which engages with three other gears. Some of the gears have layers and is creating an illusion that one gear is going in two opposite directions.
Today we were required to plan our final project using our kit. First, we had to decide what we wanted to do. I decided to pursue the one rotation to two opposing. Wich means I would drive a gear in the opposing direction.
Science was incorporated in the project especially when we use the ultrasonic sensor. The ultra sonic sensor is based on a transmitter and receiver. When it determines the distance of someone getting loser based off the code that i have created it will make the gears turn faster. In order for the sensor to detect the distance it sends out sound waves and the sound waves then bounces back.
Technology played a major role in this project. We designed our gears on the computer. We coded on the computer. We used motors to make the gears move and a ultra sonic sensor to make the gears go faster when something or someone gets closer. My favorite part was creating a circuit on the computer. I love seeing things laid out . To me it expands your thinking on the project
Engineering was obviously included in this project. We defined and recognized our problems and constraints. We then did research on gears by doing reverse engineering and learning new things about gears. Once done we sketched and planned our designs. Afterward, we completed the gear design virtually on the computer for our prototype. Then to conclude the project we built our project
Art play a role in the making of my gears. Using the Art / Design process I was able to create creative designs for my gears. I had so many ideas for my design. I wanted it to be unique, so I sketched out different ideas and chose the best ones. When I designed them on the computer some did not look like how i wanted them too so had to do some editing . In the end I thought they looked pretty cool.
Math was also included in the project. We measured the circles to fit in the provided space and creating holes to go into our gears. I ran into a problem where one of my gears were to large so I had to figure the circumference of that circle and compare it to the volume of the space provided.
This year was the year of COVID-19 therefore we participate in school online. The most challenging part of engineering this year was trying to keep up. When in school we have all the materials and we do not have to drive to our teacher's house to get materials. Having to go get my materials set me back a lot because I did not have a way to get there considering my daily schedule. In the end I am proud of not giving up although I could not complete my project like everyone else. There were days when I did not want to go to class because I knew that it was going to set me back further and further.