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.

IMG-6006.MOV

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.

IMG_6074.MOV

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.

This robot is really simple. It is a battery pack, a motor, and a body to hold all of it. One thing from this robot that I would like to add would be the size of the wheels to keep my robot steady.

This robot is similar to the last robots but I like this one the best because the motors are hidden inside of the robot instead of being visible from the outside. This also a benefit because it is one of the requirements for the robot assignment.

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.

IMG_6189.MOV

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

IMG_6368.MOV

Robot base built

Today, I finalized my code in arduino and my robot base to make my robot able to move forward and backward.

IMG_6500.MOV

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.

IMG_6506.MOV

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.

IMG_7076.MOV

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. 

IMG_7305.MOV

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.

IMG_6267.MOV

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.

IMG_0349.MOV

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.