Engineering Concepts
Robot Project
Today we learned that we are starting the semester with a robot project.
Above is the briefing of the prototype.
This is a continuation of the project above.
Above is the briefing of our final sumo bot.
Moving servo
Today, we went on to arduino and began coding/wiring our servo motors to make them spin in a 180 degree manner.
Servo wiring
Today we worked in tinkercad to wire an arduino.
Two servos independent
Today we coded two servo motors to move independently to spin in different directions.
Robot research
Link here. On this robot, they used 2 motors, a battery pack, a sensor, and 2 wheels to create a Wall-e type robot. I would want to incorporate the sensor onto my robot to help with movement.
Battery Power Wiring
Today, we went into to tinkercad to make a prototype wiring diagram for our battery packs that we're using to make our robots.
Battery Power
Today in class, we added battery packs onto our robot design to make our robot run without being plugged into our computer.
Function Code
Robot base built
Today, I finalized my code in arduino and my robot base to make my robot able to move forward and backward.
Foward, Back, Left, and Right.
Today in class, I added a new part of code into arduino to make more robot move not only forward and backward, but forward, backward, left and right.
Mini Track
Today, I coded my robot using arduino to make my robot follow the track along the floor of class. Using the base code I made to make my code go forward and backwards, I was able to add on to make the robot be able to move left and right.
Function Code
Today we learned how to use function codes. Function codes are codes that give the computer a certain amount of directions to follow when one order is given. for example, If I gave it an order go to the door from the table I was sitting at, the code would know to move forward for 10 seconds, make a 90 degree left turn, then move forward for another 5 seconds.
#include <Servo.h>
Servo Left; // create servo object to control a servo
Servo Right; // create servo object to control a servo
// twelve servo objects can be created on most boards
int pos = 0; // variable to store the servo position
void setup() {
Left.attach(9); // attaches the servo on pin 9 to the servo object
Right.attach(11); // attaches the servo on pin 9 to the servo object
}
void Forward () {
Right.write(0);
Left.write(180);
}
void Backward () {
Right.write(180);
Left.write(0);
}
void Leftturn () {
Right.write(90);
Left.write(180);
}
void Rightturn () {
Right.write(90);
Left.write(0);
}
void loop() {
Forward();
delay(1000);
Backward();
delay(1000);
Leftturn();
delay(2000);
Rightturn();
delay(1400);
}
Onshape and Physical Wheels
Onshape Design
Physical Wheels
Today in class, I worked on using Onshape to help me design two wheels to help create our sumobots. Using Glowforge, I was able print two wheels out and put them onto our hobby motors.
Robot Base Built
Today in class, we worked on creating a base for our two battery-powered hobby motor wheels that we designed on Onshape.
Two Hobby Motors Moving
Today in class, we used code that we made in Arduino and transferred it onto our Arduino NANO unit on our hobby motor base build. Because our base build is battery powered, we were able to have the robot move freely on the ground without having to be plugged into the computer.
Hobby Motor Battle
Today in class, I tested my prototype battle bot for the first time in a battle against another student. Although lost this battle, I was able to note down the pros and conns of my first battle. My code was successful but I need to make the body of my robot bigger and heavier.
Design Decision
For my new design decision, I wanted to have a robot that would be a bit bigger than my current robot body and that would have a wider ramp for a wider range on the sides. My design prior to this was one ramp that led only on the front and not to the sides.
Design process
4 sketches
For part of today's lesson, we had to create 4 sketches that we wanted to possibly make for our dog house/kitty condo.
Final Parts and Final Sketch in Onshape
In onshape, we worked on creating our pieces for our dog house designs and printed them out on Glowforge to make our prototypes.
Here are the pictures from my final prototype parts from my Onshape. My goal was to use my pieces that I made and printed out and make the design that I chose.
Built in LED on Adafruit feather
Today, I worked on loading on python code to Mu editor to get our Adafruit feathers to light up
Neopixel Matrix
After getting our Adafruit feathers to light up, we worked on on connecting our Neofruit matrix to our feathers and getting it to light up as well.
Neopixel Matrix smiley face
Today in class, we worked on creating a smiley face with our neopixel matrix using Python code on Mu Editor. I used python indexing to create the smiley face.
Student Recognition
For our student recognition model, our goal was to use what we learned from our machine learning unit to create a model that could recognize the students and teacher in our 1st period engineering class. We used hundreds of images that we took throughout multiple class periods to help separate and identify every single person being represented in the model. What the model does is take a image, run through the set of data that we uploaded as well as our code, and predict which person it is. We were required to reach a 90% accuracy from a data set to help decide our student. I was able to reach the 90% accuracy model.