Difference between revisions of "Students/Joeny Thipsidakhom"

From Robert-Depot
Jump to: navigation, search
(FINAL Proposal)
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
Hello,
+
== Statement ==
  
My name is Joeny Thipsidakhom. I'm a fourth year Visual Arts major with an emphasis on computing. I'm taking this class not only for a major requirement but also because I'm interested technology and the whole idea of interactivity between the user and whatever electronic item/interface is used. I've been interested in newly developed technology and where its going since I got my first computer, however my interest in electronics came about during my high school years. I have some previous experience with electronics. During my high school freshman year I joined my school's robotics team and was apart of the electronics section/team. We were in charge of wiring the electronics components together for the robot. I was apart of this club/team throughout high school and proceeded to help the local high school's robotics team during my freshman year of college. Sounds fancy (maybe?) but I just followed the electronics schematic that the organization, FIRST Robotics, provided the teams and adjusted it to whatever the mechanical team wanted in terms of number and type of motors.
+
Joeny Thipsidakhom. Fourth Year: Visual Arts Computing Major.
  
http://247things.files.wordpress.com/2009/05/trafficcamera_thumb.jpg
+
Interests: Film, Photography, 3D, Animation, Video games, and many more....
  
[[Image:intuos4.jpg|200px]]
+
== Midterm ==
 +
Virtual Walk
  
[[Image:civic navigation.jpg|200px]]
+
== Final ==
 
+
Virtual/Camera Keyboard
[[Image:civic engine.jpg|200px]]
 
 
 
[[Image:psp.jpg|200px]]
 
 
 
== Midterm Proposal ==
 
 
 
For the Midterm switch project I want to create a more complicated form of light switch maybe using motors, some type of pulley system, and variable control over speed of the motors. One motor would close the switch allowing the light to turn on, while the other motor would open the switch pulling on it breaking the circuit and in turn turning the light off. The motors and switch would be separated by a simple pulley system allowing the motors to pull on strings opening and closing the switch and completing the circuit.
 
 
 
[[Image:on.jpg|200px]]
 
 
 
[[Image:off.jpg|200px]]
 
 
 
[[Image:concept.jpg|200px]]
 
 
 
== FINAL Proposal ==
 
 
 
For the final project I am going to create an object that interacts with the user when it is triggered. The interaction will be simple, however when the user does a certain thing to the object, a black box, it will react and give a response to the user.
 
 
 
I want to create something that actively engages the user in some manner, get the user involved, and speaks to the user, even if it’s not in a language most people would understand or know. In order to interact with the box a particular motion/interaction has to be done, and the box will only respond to that interaction. To initiate this interaction I'm going to use a piezo sensor. For now what the sensor is going to do is detect if the user taps or knocks on the box and the black box will respond in Morse code and say something to the user. Once I get that code and circuit established I'll work on adding to its to make it more complex.
 
[[Image:InitialCircuit.jpg|200px|thumb|left|Starting/Initial Stage]]
 
 
 
== FINAL Images ==
 
[[Image:Front.jpg|350px]]
 
[[Image:Iso.jpg|339px]]
 
[[Image:Side.jpg|350px]]
 
 
 
[[Image:Blackbox.jpg|350px]]
 
[[Image:Controller.jpg|450px]]   
 
 
 
 
 
== FINAL Code ==
 
/* Joeny Thipsidakhom
 
  VIS 147A Final Project
 
  BlackBox */
 
 
 
const int ledPinred = 13;        //Red LED Pin 13
 
const int knockSensor = 0;      //Piezo Sensor Pin 0
 
const int threshold = 100;      //Sound threshold for Piezo Sensor
 
const int buttonPin1 = 1;        //Second Button Pin 1
 
const int buttonPin2 = 2;        //Second Button Pin 2
 
const int ledPinyellow1 = 3;    //Yellow LED Pin 3
 
const int motor = 4;            //Motor Pin 4
 
 
 
int buttonState1 = 0;
 
int buttonState2 = 0;            // Variable to read button
 
int sensorReading = 0;          // Variable to store the value read from the sensor
 
int ledState = LOW;              // Variable used to store the last LED status
 
 
 
void setup() {
 
pinMode(ledPinred, OUTPUT);    //Sets Red LED as Output
 
pinMode(ledPinyellow1, OUTPUT); //Sets Yellow LED as Output
 
pinMode(motor, OUTPUT);        //Sets Motor as output
 
pinMode(buttonPin1, INPUT);    //Sets Button 1 as Input
 
pinMode(buttonPin2, INPUT);    //Sets Button 2 as Input
 
Serial.begin(9600);            //Use the serial port
 
 
}
 
 
 
void loop() {
 
 
 
  sensorReading = analogRead(knockSensor);    // Read the sensor and set it in the variable sensorReading
 
  buttonState1 = digitalRead(buttonPin1);    // Read the button's state
 
  buttonState2 = digitalRead(buttonPin2);
 
 
 
if (sensorReading >= threshold) {            //If the sensor reading is greater than the threshold/hit,tapped,etc. do bellow
 
 
 
//H 
 
  digitalWrite(ledPinred, HIGH);              //Turn Red LED ON
 
  delay(250);                                //Wait 250ms
 
  digitalWrite(ledPinred, LOW);              //Turn Red LED OFF
 
  delay(250);                 
 
  digitalWrite(ledPinred, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinred, LOW);   
 
  delay(250);
 
  digitalWrite(ledPinred, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinred, LOW);   
 
  delay(250); 
 
  digitalWrite(ledPinred, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinred, LOW);   
 
  delay(750);
 
 
 
  //E
 
  digitalWrite(ledPinred, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinred, LOW);   
 
  delay(750);
 
 
 
  //Y
 
  digitalWrite(ledPinred, HIGH);
 
  delay(750);               
 
  digitalWrite(ledPinred, LOW);   
 
  delay(250);
 
  digitalWrite(ledPinred, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinred, LOW);   
 
  delay(250);
 
  digitalWrite(ledPinred, HIGH);
 
  delay(750);               
 
  digitalWrite(ledPinred, LOW);   
 
  delay(250);
 
  digitalWrite(ledPinred, HIGH);
 
  delay(750);               
 
  digitalWrite(ledPinred, LOW);   
 
  delay(750);
 
 
 
}
 
 
 
if (buttonState1 == LOW){                  //When button 1 is pressed do bellow
 
 
 
  //H User
 
  digitalWrite(ledPinyellow1, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinyellow1, LOW);   
 
  delay(250);                 
 
  digitalWrite(ledPinyellow1, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinyellow1, LOW);   
 
  delay(250);
 
  digitalWrite(ledPinyellow1, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinyellow1, LOW);   
 
  delay(250); 
 
  digitalWrite(ledPinyellow1, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinyellow1, LOW);   
 
  delay(750);
 
  //I  User
 
  digitalWrite(ledPinyellow1, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinyellow1, LOW);   
 
  delay(250);                 
 
  digitalWrite(ledPinyellow1, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinyellow1, LOW);   
 
  delay(750);
 
 
 
  //H  Blackbox
 
  digitalWrite(ledPinred, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinred, LOW);   
 
  delay(250);                 
 
  digitalWrite(ledPinred, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinred, LOW);   
 
  delay(250);
 
  digitalWrite(ledPinred, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinred, LOW);   
 
  delay(250); 
 
  digitalWrite(ledPinred, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinred, LOW);   
 
  delay(750);
 
  //I  Blackbox
 
  digitalWrite(ledPinred, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinred, LOW);   
 
  delay(250);                 
 
  digitalWrite(ledPinred, HIGH);
 
  delay(250);               
 
  digitalWrite(ledPinred, LOW);   
 
  delay(750);
 
}
 
 
 
if (buttonState2 == HIGH){              //Loops unless button is pressed down and held
 
    delay(1000);                        //Delays for 1 second
 
 
 
    digitalWrite(motor, HIGH);          //Run Motor
 
    //H
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);
 
    digitalWrite(motor, LOW);            //Stop Motor
 
    delay(750);
 
    //E
 
    digitalWrite(motor, HIGH);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);
 
    digitalWrite(motor, LOW);   
 
    delay(750);
 
    //L
 
    digitalWrite(motor, HIGH);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(750);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW); 
 
    digitalWrite(motor, LOW);   
 
    delay(750);
 
    //L
 
    digitalWrite(motor, HIGH);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(750);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);
 
    digitalWrite(motor, LOW);     
 
    delay(750);
 
    //O
 
    digitalWrite(motor, HIGH);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(750);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(750);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(750);               
 
    digitalWrite(ledPinred, LOW);
 
    digitalWrite(motor, LOW);     
 
    delay(750);
 
 
 
    //A
 
    digitalWrite(motor, HIGH);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(750);               
 
    digitalWrite(ledPinred, LOW);
 
    digitalWrite(motor, LOW);     
 
    delay(750);
 
    //R
 
    digitalWrite(motor, HIGH);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(750);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);
 
    digitalWrite(motor, LOW);     
 
    delay(750);
 
    //E
 
    digitalWrite(motor, HIGH);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);
 
    digitalWrite(motor, LOW);     
 
    delay(750);
 
 
 
    //Y
 
    digitalWrite(motor, HIGH);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(750);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(750);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(750);               
 
    digitalWrite(ledPinred, LOW);
 
    digitalWrite(motor, LOW);     
 
    delay(750);
 
    //O
 
    digitalWrite(motor, HIGH);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(750);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(750);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(750);               
 
    digitalWrite(ledPinred, LOW);
 
    digitalWrite(motor, LOW);     
 
    delay(750);
 
    //U
 
    digitalWrite(motor, HIGH);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(750);               
 
    digitalWrite(ledPinred, LOW);
 
    digitalWrite(motor, LOW);     
 
    delay(750);
 
 
 
    //T
 
    digitalWrite(motor, HIGH);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(750);               
 
    digitalWrite(ledPinred, LOW);
 
    digitalWrite(motor, LOW);     
 
    delay(750);
 
    //H
 
    digitalWrite(motor, HIGH);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);                 
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250); 
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);
 
    digitalWrite(motor, LOW);     
 
    delay(750);
 
    //E
 
    digitalWrite(motor, HIGH);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);
 
    digitalWrite(motor, LOW);     
 
    delay(750);
 
    //R
 
    digitalWrite(motor, HIGH);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);   
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(750);               
 
    digitalWrite(ledPinred, LOW);
 
    delay(250);
 
    digitalWrite(ledPinred, HIGH);   
 
    delay(250);
 
    digitalWrite(ledPinred, LOW);
 
    digitalWrite(motor, LOW); 
 
    delay(750);
 
    //E
 
    digitalWrite(motor, HIGH);
 
    digitalWrite(ledPinred, HIGH);
 
    delay(250);               
 
    digitalWrite(ledPinred, LOW);
 
    digitalWrite(motor, LOW);     
 
    delay(750); 
 
}
 
 
 
  delay(100);                        //Delay for 100ms before restarting loop
 
}
 

Latest revision as of 21:04, 5 June 2010

Statement

Joeny Thipsidakhom. Fourth Year: Visual Arts Computing Major.

Interests: Film, Photography, 3D, Animation, Video games, and many more....

Midterm

Virtual Walk

Final

Virtual/Camera Keyboard