We were given this paper so that we know the tools and skills we are going to be using for the project.
This is the page we were given for the project that tells us the constraints or limits.
This page tells us all the different benchmarks for this project and we had to complete all of these as a knowledge and thinking grade.
I made a simple gear box that has a parent gear rotating twice as fast as the child gear. The child gear moves half the speed of the parent gear.
I completed the laser benchmark second. I learned how to operate the laser cutter then cut my name on a piece of cardboard.
I completed my gear box benchmark third. I learned how to make the parent gear move the same direction as the child gear.
In this benchmark I uploaded a code then made my led light blink red, green, and blue.
In this benchmark I designed a pumpkin then laser cut it using cardboard. Then I uploaded code and made the led light blink orange, yellow, and red.
In this benchmark I got a shaft and had to figure out how to get both gears to rotate independently. Once I understood how to arrange the gears I hot glued them into place.
In this benchmark I got two servos to rotate while making an LED blink by using the same Arduino. I had to figure out wiring in order to complete this benchmark.
In this benchmark I got a servo to rotate left and right. I found a code and learned how to wire it.
In this benchmark I designed two different moires on a software named Inkscape. I did this by using CAD.
I competed this benchmark by coming up with two different moire sketches.I made sure I met the constraints given for this.
In this benchmark I laser cut out a perpendicular servo mount. I took measurements of a servo then created the mount on Inkscape.
For this benchmark I downloaded files for my moire prototype. Then I used pieces of cardboard and laser cut my files.
This is my solid works file.I used this file by downloading it off google drive then opened the download on solid works .Then I used this file as a reference on how to assemble my kinetic sculpture.
The purpose of the functional prototype is to teach us how to assemble the moire. The crunch and quality of the cardboard affects the prototype from functioning well without damaging my moire. One improvement to the solid works file that needs to be made so that I can have a functional prototype is changing the gears on the file to wood .One change I need to make to my moire files is the craftsmanship or quality of the designs.One change that can be made to the solid works file is adjusting the visual effects settings.
#include <Servo.h>
Servo myservo1;
Servo myservo2;
int redPin = 11;
int greenPin = 10;
int bluePin = 9;
//uncomment this line if using a Common Anode LED
#define COMMON_ANODE
void setup()
{
myservo1.attach(8);
myservo1.write(90); // set servo to mid-point
myservo2.attach(7);
myservo2.write(90); // set servo to mid-point
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
}
void loop() {
myservo1.write(0); // set servo to mid-point
delay(1000);
myservo2.write(0); // set servo to mid-point
delay(1000);
setColor(255, 0, 0); // red
delay(1000);
setColor(0, 255, 0); // green
delay(1000);
setColor(0, 0, 255); // blue
delay(1000);
}
void setColor(int red, int green, int blue)
{
#ifdef COMMON_ANODE
red = 255 - red;
green = 255 - green;
blue = 255 - blue;
#endif
analogWrite(redPin, red);
analogWrite(greenPin, green);
analogWrite(bluePin, blue);
My code makes two servos spin at the same time and also makes my two LED lights blink blue and green.
For this benchmark I installed my 2 servos in acrylic .I used screws to do so and I also attached my servo horns with screws.
In this benchmark I submitted a file of my first moire design and then learned how to operate the Glowforge and cut it out on a piece of 1/8" thick basswood plywood.
In this benchmark I submitted a file of my second moire design and then learned how to operate the Glowforge and cut it out on a piece of 1/8" thick basswood plywood.
I installed all my LED lights using super glue and soldered them together with an iron. Then I had to wire my LED lights to blink RGB.
In this benchmark I had to use my wooden moires and create a gear box that would allow them to rotate independently. Then I had to create a code to complete this task.
In this benchmark I installed my arduino board by drilling holes in my acrylic and screwing the arduino in.
In this benchmark I took acrylic pieces, wood frames and wooden dowels to assemble my three layers.
In this benchmark I created a code myself creating different light color patterns. I used my old RGB code and made new colors.
In this benchmark I also created a code on my own. Then I came up with three distinct motions I wanted my moire pieces to rotate.
int greenPin = 10;
int bluePin = 9;
//uncomment this line if using a Common Anode LED
//#define COMMON_ANODE
#include <Servo.h>
Servo myservo1;
Servo myservo2;
void setup()
{
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
myservo1.attach(3);
myservo2.write(90); //set servo to mid-point
myservo2.attach(5);
myservo2.write(90); //set servo to mid-point
}
void loop()
{
myservo1.write(180); // set servo to mid-piont
delay(1000);
myservo2.write(-180); // set servo to mid-piont
delay(1000);
setColor(255, 255, 255); // red
delay(1000);
setColor(40, 0, 0); // green
delay(2000);
setColor(65, 0, 0); // blue
delay(3000);
setColor(100, 0, 0); // red
delay(1000);
setColor(125, 0, 0); // green
delay(1000);
setColor(150, 0, 0); // blue
delay(2000);
setColor(180, 0, 0); // red
delay(1000);
setColor(200, 0, 0); // green
delay(2000);
setColor(0, 0, 108); // blue
delay(3000);
myservo1.write(180); // set servo to mid-piont
delay(1000);
setColor(255, 255, 255); // red
delay(1000);
setColor(40, 0, 0); // green
delay(2000);
setColor(65, 0, 0); // blue
delay(3000);
setColor(100, 0, 0); // red
delay(1000);
setColor(125, 0, 0); // green
delay(1000);
setColor(150, 0, 0); // blue
delay(2000);
setColor(180, 0, 0); // red
delay(1000);
setColor(200, 0, 0); // green
delay(2000);
setColor(0, 0, 108); // blue
delay(3000);
myservo1.write(180); // set servo to mid-piont
delay(1000);
myservo2.write(180); // set servo to mid-piont
delay(1000);
setColor(255, 0, 255); // red
delay(1000);
setColor(0, 255, 0); // green
delay(1000);
setColor(0, 255, 255); // blue
delay(1000);
setColor(255, 0, 255); // red
delay(1000);
setColor(0, 255, 0); // green
delay(1000);
setColor(0, 255, 255); // blue
delay(1000);
setColor(255, 0, 255); // red
delay(1000);
setColor(0, 255, 0); // green
delay(1000);
setColor(0, 255, 255); // blue
delay(1000);
setColor(255, 0, 128); // red
delay(1000);
setColor(128, 255, 0); // green
delay(1000);
setColor(0, 128, 255); // blue
delay(1000);
setColor(255, 0, 128); // red
delay(1000);
setColor(128, 255, 0); // green
delay(1000);
setColor(0, 128, 255); // blue
delay(1000);
setColor(255, 0, 128); // red
delay(1000);
setColor(128, 255, 0); // green
delay(1000);
setColor(0, 128, 255); // blue
delay(1000);
myservo1.write(-180); // set servo to mid-piont
delay(1000);
myservo2.write(-180); // set servo to mid-piont
delay(1000);
}
void setColor(int red, int green, int blue)
{
#ifdef COMMON_ANODE
red = 255 - red;
green = 255 - green;
blue = 255 - blue;
#endif
analogWrite(redPin, red); //reed
analogWrite(greenPin, green); //green
analogWrite(bluePin, blue); //bleu
}
In this benchmark I took my code for the final functioning kinetic sculpture and copy and pasted it in google sites.