Thursday, July 22, 2010

Materials

1 Arduino Microcontroller
6 L.F. 1 x 12 Red Oak
12 L.F. 1 x 2 Red Oak
4 L.F. 1 x 12 Pine
12 L.F. 1 x 2 Pine
8 L.F. 2 x 4 Pine
1/8” Plywood - 4’ x 8’ Sheet
2 Hi Torque Digital Servo Motors
5/16” Threaded Rod - Approx 24”
2 EA. 5/16” Nuts and Washers
24 Rubber Bands
1/8” Wood Dowels
1/2” Diameter Soft Metal Rod
1/4” Drive Chain - Approx. 24”
1/2” Bearing
1/2” Sprocket (2 Ea.)
2 Straight Metal Brackets

Code

Here is how the arduino is currently setup:

Servo is in pin 9 and the proximity sensor in in analog pin 0.

Code:
#include <Servo.h>

#define proximityPin 0
#define maxCount 40

int proximity = 0;
 
Servo centerHub;  // create servo object to control a servo 
                // a maximum of eight servo objects can be created 
 
int pos = 0;    // variable to store the servo position 

boolean state = true; //true = open, false = close
int count = 0;


 
void setup() 
{ 
  centerHub.attach(9);
 // centerHub.write(0); //position 0 is all the way open
 Serial.begin(9600);
} 
 
 
void loop() 
{ 
  proximity = analogRead(proximityPin);
  Serial.println(proximity,DEC);
  //if some one is far away
  if(proximity < 100 && state == false){
    if(count > maxCount){
       //open
       for(pos = 180; pos>=1; pos-=1){                                
          centerHub.write(pos); 
          delay(20);
        } 
        delay(5000);
       state = true;
       count = 0;
    } else {
      count++;
    }
  }
  //if some ones comes close
  else if(proximity > 300 && state == true){
    if(count > maxCount){
       //close
      for(pos = 0; pos < 188; pos += 1) {                                  
        centerHub.write(pos);           
        delay(10);                        
      } 
      delay(5000);
       state = false;
       count = 0;
    } else {
      
      count++;
    }
  }
  //if you are standing the middle
  else {
   count = 0; 
   
  }
  delay(50);

}

Tuesday, July 20, 2010

Laser Cutting

One of the coolest things the USF School of Architecture has is a laser cutter.
IMG_0717
Cut marks are drawn in red in autocad and printed to the Versa Laser program

IMG_0713
Load in material, quarter inch birch plywood
IMG_0726
the laser cuts it perfectly

IMG_0730

IMG_0733
The pieces just needed a little push to fall out.

IMG_0738
The parts assembled for the wave machine

Tuesday, July 6, 2010

Marching towards the final

For the final, each group has a 2' square to use as a foundation to create some sort of interactive electronic demonstration
IMG_0463
IMG_0498IMG_0524IMG_0596
Our groups design is centered around a roating shaft that will slide panels open and close to reveal some sort of moving backdrop.
IMG_0552
IMG_0535

The shaft is going to be turned by 2 high torq servo link to the center shaft with gears. These parts will be delivered this week.

Currently the electronic design looks like:

For this project we are using a infrared proximity sensor connected to an arduino that will drive the servos. The mechanical design for the background is still being developed so this diagram may change.

More Photos

Tuesday, June 29, 2010

Hacking a Light Toy

So after much frustration with my first attempt I decided to hack a toy instead of making something from scratch. The toy, shown below, just had a push button before, but I wanted to make it come on when the lights went off.

IMG_3334

IMG_3335

After breaking open the toy I popped out a piece from the back and slipped the wires out of the new hole.

IMG_3344

Before adding a sensor I wanted to make sure I could hack it and ran it with a simple blink code.
After doing this I was able to manipulate the function by making it strobe on and off. Success!

IMG_3383

Now it's time for the photo resistor.

IMG_3385

I removed the button to replace it with the photo resistor.

IMG_3388

Set the resistor with hot glue.

IMG_3389

Solder some wires to it.

IMG_3390

Pull out the wires.

IMG_5576

Wire it up to the arduino.

IMG_5578

Lights on...

IMG_5583

Lights off...

The code I used is very simple. It's a combination of the example blink and button.

Here's the code:

/*
photo resistor as a Button

Turns on and off anything connected to digital
pin 13, when pressing a pushbutton attached to pin 2.


The circuit:
* LED attached from pin 13 to ground
* pushbutton attached to pin 2 from +5V
* 10K resistor attached to pin 2 from ground

* Note: on most Arduinos there is already an LED on the board
attached to pin 13.


created 2005
by DojoDave
modified 17 Jun 2009
by Tom Igoe

http://www.arduino.cc/en/Tutorial/Button

modified june 2010
by Richard Meacham
http://interactivesquared.blogspot.com/
*/

// constants won't change. They're used here to
// set pin numbers:
const int buttonPin = 2; // the number of the pushbutton pin
const int ledPin = 13; // the number of the LED pin

// variables will change:
int buttonState = 2000 ; // variable for reading the pushbutton status.

void setup() {
// initialize the LED pin as an output:
pinMode(ledPin, OUTPUT);
// initialize the pushbutton pin as an input:
pinMode(buttonPin, INPUT);
}

void loop(){
// read the state of the pushbutton value:
buttonState = digitalRead(buttonPin);

// check if the pushbutton is pressed.
// if it is, the buttonState is HIGH:
if (buttonState == HIGH) {
// turn LED on:
digitalWrite(ledPin, HIGH); // set the LED on
delay(500); // wait for a second
digitalWrite(ledPin, LOW); // set the LED off
delay(250); // wait for a second
}
else {
// turn LED off:
digitalWrite(ledPin, LOW);
}
}

And the wiring diagram:

button

Monday, June 21, 2010

Brain Storm

So I've been working on a list of ideas that I thought might be fun some better than others;

Board of balloons that inflate to reflect the location of a person

Series of fans that move to blow air away from people

Maybe we integrate the idea of a projected touchscreen with sound so that it projects an image on the floor and when you step in a certain area it produces some sort of sound

Some type of audio instructions that tell people how to interact with the project, then when they do it something happens

Some type of mirror mirror on the wall looking thing that begs to be freed from the "mirror prison" then when you touch it, it screams to leave it alone

Multitouch Surface

I've been looking at precedents for this final installation project and was intrigued by this multitouch surface. Its a little bit on the complicated side but I think we can do within our time constraints. Essentially it is a touchscreen that is attached to a computer in such a way that you dont need a mouse or keyboard. Check out the website below to see some of the applications.

Its an interesting project and has the potential to be extremely interactive but its also kind of boring in the sense that it is competely digital; It doesnt move, there arent any interesting mechanics or cool materials. Anyhow, check it out and let me know what you think. Also shoot any ideas you guys might have my way.

http://www.maximumpc.com/article/features/maximum_pc_builds_a_multitouch_surface_computer?page=0%2C0