Students/Angela Kim

From Robert-Depot
Jump to: navigation, search

Angela Kim

Greetings! I am a third year VISARTS media major, and I am very interested in photography and 3D installation. I really, really love weird, crazy, yet intriguing 3D installations, especially the ones that are electronically interactive.

I have recently been thinking about changing my emphasis from photography to computing, which is why I am taking this class. Though I have no prior experience with electronics, and not much with programming either, I am hoping to create and learn lots about electronics!! :)

from left to right: a neon store sign, an electronic chandelier, a backlit market sign, an motion-sensing sink, and a credit card swiper

Final Proposal

With my final project, I wanted to use some kind of interactive light device, and I stumbled across the idea of a POV (persistence of vision) bike wheel project. Though I'm not entirely sure about the final concept of the project, I want the text to change with the speed of the bike wheels.

EDIT: Though I tried extremely hard to make the POV bike work, I couldn't with my still-novice electronics skills...And so, my next project idea ...

HAMILTON, THE DONUT EATING ELEPHANT!

I've lately rediscovered the out-of-this-world goodness of Krispy Kreme - but I've also remembered that there is such thing as too much of a good thing. I feel like donuts are one of those things that can easily straddle the border between delicious and sickening. On one of my trips there with my roommate, we got these paper hats that say "EAT KRISPY KREME DONUTS." I thought it was hilarious that the hat commanded people to eat their donuts... I decided to poke fun at this a little bit.

I made an elephant doll that looks like your average children's toy. Then I put a 7 segment LED display right after the word "EAT" on the Krispy Kreme hat and put it on the doll. This led is hooked up to a PCB that is tucked in the hat, and then wired to the Arduino which is hidden in the ear of the elephant. I programmed the Arduino to display numbers on the LED. There is also breadboard hidden in the elephant's belly, which holds a normally open reed switch. The reed switch closes the circuit everytime it senses a magnet nearby.

So what I did was make a felt donut with magnets inside. Every time HAMILTON the elephant is "fed" a donut, the reed switch closes its circuit, thus making the LED display on his hat go up one, making the hat display "EAT # KRISPY KREME DONUTS." Because I only had access to one LED display, the numbers only go up to 9, and then resets to 0.

CODE:

// Seven-segment LED Display // Common Anode pins 3 and 8

// G F + A B // | | | | | -> pins and segments they control // --------- // F| A |B // |---G---| -> segments // E| D |C // --------- // | | | | | -> pins and segments they control // E D + C DP

// Segments that make each number when lit: // 0 => ABCDEF // 1 => BC // 2 => ABDEG // 3 => ABCDG // 4 => BCFG // 5 => ACDFG // 6 => ACDEFG // 7 => ABC // 8 => ABCDEFG // 9 => ABCDFG

// Arduino digital pins used to light up // corresponding segments on the LED display

  1. define A 0
  2. define B 1
  3. define C 2
  4. define D 3
  5. define E 4
  6. define F 5
  7. define G 6

// Pushbutton connected to pin 9

  1. define BUTTON 9

// Common cathode; // on when pin is high // and off when pin is low

  1. define ON HIGH
  2. define OFF LOW

int count = 0; // current display count int val = 0; // digital input from button

void setup() {

 pinMode(A, OUTPUT);
 pinMode(B, OUTPUT);
 pinMode(C, OUTPUT);
 pinMode(D, OUTPUT);
 pinMode(E, OUTPUT);
 pinMode(F, OUTPUT);
 pinMode(G, OUTPUT);
 pinMode(BUTTON, INPUT);
 zero();

}

void loop() {

 val = digitalRead(BUTTON);
 if (val == LOW) {
   count++;
   delay(400);
   switch (count) {
     case 0:
       zero();
       break;
     case 1:
       one();
       break;
     case 2:
       two();
       break;
     case 3:
       three();
       break;
     case 4:
       four();
       break;
     case 5:
       five();
       break;
     case 6:
       six();
       break;
     case 7:
       seven();
       break;
     case 8:
       eight();
       break;
     case 9: {
       nine();
       count = -1;
       break;
     }
   }
 }

}

// 0 => ABCDEF void zero() {

 digitalWrite(A, ON);
 digitalWrite(B, ON);
 digitalWrite(C, ON);
 digitalWrite(D, ON);
 digitalWrite(E, ON);
 digitalWrite(F, ON);
 digitalWrite(G, OFF);

}

// 1 => BC void one() {

 digitalWrite(A, OFF);
 digitalWrite(B, ON);
 digitalWrite(C, ON);
 digitalWrite(D, OFF);
 digitalWrite(E, OFF);
 digitalWrite(F, OFF);
 digitalWrite(G, OFF);

}

// 2 => ABDEG void two() {

 digitalWrite(A, ON);
 digitalWrite(B, ON);
 digitalWrite(C, OFF);
 digitalWrite(D, ON);
 digitalWrite(E, ON);
 digitalWrite(F, OFF);
 digitalWrite(G, ON);

}

// 3 => ABCDG void three() {

 digitalWrite(A, ON);
 digitalWrite(B, ON);
 digitalWrite(C, ON);
 digitalWrite(D, ON);
 digitalWrite(E, OFF);
 digitalWrite(F, OFF);
 digitalWrite(G, ON);

}

// 4 => BCFG void four() {

 digitalWrite(A, OFF);
 digitalWrite(B, ON);
 digitalWrite(C, ON);
 digitalWrite(D, OFF);
 digitalWrite(E, OFF);
 digitalWrite(F, ON);
 digitalWrite(G, ON);

}

// 5 => ACDFG void five() {

 digitalWrite(A, ON);
 digitalWrite(B, OFF);
 digitalWrite(C, ON);
 digitalWrite(D, ON);
 digitalWrite(E, OFF);
 digitalWrite(F, ON);
 digitalWrite(G, ON);

}

// 6 => ACDEFG void six() {

 digitalWrite(A, ON);
 digitalWrite(B, OFF);
 digitalWrite(C, ON);
 digitalWrite(D, ON);
 digitalWrite(E, ON);
 digitalWrite(F, ON);
 digitalWrite(G, ON);

}

// 7 => ABC void seven() {

 digitalWrite(A, ON);
 digitalWrite(B, ON);
 digitalWrite(C, ON);
 digitalWrite(D, OFF);
 digitalWrite(E, OFF);
 digitalWrite(F, OFF);
 digitalWrite(G, OFF);

}

// 8 => ABCDEFG void eight() {

 digitalWrite(A, ON);
 digitalWrite(B, ON);
 digitalWrite(C, ON);
 digitalWrite(D, ON);
 digitalWrite(E, ON);
 digitalWrite(F, ON);
 digitalWrite(G, ON);

}

// 9 => ABCDFG void nine() {

 digitalWrite(A, ON);
 digitalWrite(B, ON);
 digitalWrite(C, ON);
 digitalWrite(D, ON);
 digitalWrite(E, OFF);
 digitalWrite(F, ON);
 digitalWrite(G, ON);
The electric layout
At zero donuts...
...Then he eats!
The arduino hidden inside the ear
The breadboard hidden inside the belly
The electric parts
The Arduino
The breadboard
The seven segment LED

Midterm Proposal

With my midterm project I wanted to create some kind of interactive toy. So I came up with the idea a pair of interactive dolls, one of which is a girl, and the other a boy.

As I sewed the dolls, I put all the necessary wiring inside to hide most of it, and I put a push lever switch inside the hand of one of the dolls. Thus, when their hands are pressed together, a double pole, single throw switch is closed, and a hidden heart on the female doll’s chest will light up, while on the male doll, a hidden heart on his private area would light up. The hearts are meant to represent the internal reaction of these little people.

The pair of wires for each light bulb comes from inside the dolls’ bodies and meet at the switch that is at the hands of the dolls. The battery, which is taped to the bottom of the chair, is also connected to the same switch. And so the act of having them “hold hands” is what turns on the switch and closes the circuit to make the hearts light up.

The dolls themselves actually turned out to look quite crudely made – but I was actually going for that look. I thought it gave them a sense of anonymity and maybe a little bit of an eerie side. I also sat them on a bench to hide most of the wiring and the battery hook up.

By lighting up different areas on their bodies, I am playing with the stereotype that men are more focused on satisfying their physical needs, while women are more focused on satisfying their emotional needs. I was inspired by the advertisement for the movie “The Ugly Truth”, which addressed this idea of the differences in men and women when it comes to relationships. Though I do think there may be some truth in this stereotype, I really just wanted to have fun with the concept!

Dollscircuit.jpg
A girl & boy... just sitting...
Then, they hold hands!