Archive for the ‘sensor’ Category

Tip: Piezo Film을 사용한 하트비트 센서

June 16, 2008

Heartbeat (IR) sensor

May 28, 2008

조성미학생은 먼저

http://suchamagicworld.blogspot.com/2008/04/still-alive-heartbeat-irsensor-report.html에 있는 Sensors: Infrared Emitters and Detectors와 적외선 Sensitive photo cell로 앰플리파이어없이 심장박동을 값을 아듀니오로 받아보세요. 위의 링크에서 주요 내용을 퍼온겁니다. 더 자세한 내용은 링크를 읽어보세요. 그리고 직접 실험해서 알아보세요. Resource를 가지고 유용하게 쓰는 것도 디자인의 일부입니다.

——————————————————————————

Infrared Emitters and Detectors (얼핏보면 LED와 비슷하게 생겼어요)
SKU#: SEN-00241
Price: $1.95

datasheet:

  • IR Emitter (Clear)
  • IR Detector (Tinted pink)
  • how it works:

    R1

    270 ohm resistor

    R2

    10k resistor

    LED1

    Infrared LED

    Q1

    Infrared-sensitive photoresistor

    Circuit: (simple one without amplifier)

    Description: 납작한 모양의 IR Emitter와 IR 수신기입니다. 이 두 간단한 디바이스는 940 nm에서 작동되며 보통 IR 시스템과 리모콘, 물체를 감지하는데 쓰입니다. 간단한 ADC (photocell)를 아듀니오와 같이 연동시키면 값을 읽을 수 있습니다. EMitter sms 다른 LED처럼 50mA 의 전류와 저항을사용하여 씁니다. The detect is a NPN transistor that is biased by incoming IR light.

    Code:

    arduino:

    /* I AM ALIVE heart beat led
    * by meng li based on the code by Jeff Gray – 2008
    * —————-
    * Triggers a one time event when value goes over threshold,
    * and a different trigger once the value goes back below the threshold
    */

    int an1,an2 = 0;
    int redLedPin =13;
    boolean triggered = false;

    void setup(){
    Serial.begin(9600);
    pinMode(redLedPin, OUTPUT); // set the red LED pin to be an output
    // Serial.println(“Starting”);
    }
    void loop(){
    // read analog value in
    int an2 = analogRead(0);
    Serial.print(“Y”);
    Serial.println(an2,DEC);
    //threshold
    int an1= analogRead(5);
    Serial.print(“X”);
    Serial.println(an1,DEC);

    if(an1 > an2 && !triggered){
    triggered = true;
    digitalWrite(redLedPin, HIGH); // turn off the red LED
    }
    if(an1 <= an2 && triggered){
    triggered = false;
    digitalWrite(redLedPin, LOW); // turn off the red LED
    }
    }

    ——————————————————————-

    이건 성미학생이 찾던 자료인데, 참고로 차후 센서 리포트로 모을 수 있게 하트비트 적외선 센서에 대한 자료를 올립니다.

    Jeff Gray의 제자 ITP학생 한명이 센서워크샵에서 작업한 것을 상세히 오려놓은 사이트가 있습니다. 아듀니오 코드는 Jeff Gray란 분이 쓴겁니다.

    http://hrsensor.wordpress.com/

    그외에도 더 자세히 서술한 블로그 사이트는 아래이고요

    http://suchamagicworld.blogspot.com/2008/04/still-alive-heartbeat-irsensor-report.html

    위의 링크들과 같이 심장박동은 주로 IR(Infrared 즉 적외선) 센서를 사용합니다. IR센서 사용원리는 아래에서 설명이 자세히 되어 있습니다. 물론 영어입니다. ^^

    http://www.oximetry.org/pulseox/principles.htm

    좀 더 응용된 쿨한 작품예로는 하트비트MIDI Controller가 있는데요. 아래의 flickr 링크에 사진이 잘 나와있고, Makezine.com에서 search 하면 나옵니다.

    http://www.flickr.com/photos/recotana/2283818188/in/pool-make/

    참고로 특히 적외선 센서는 종류도 많고 응용되고 있는 분야나 종류도 여~러가지임을 잊지마세요.

    아, 잊어버릴뻔했는데, 쉽개 쓸수있는 a polar heart monitor와 receiver 세트가 sparkfun에서 팝니다.

    Polar Heart Rate Module – RMCM01

    http://www.sparkfun.com/commerce/product_info.php?products_id=8660#

    $14.95이지만 미국이라 배송비가 만만치 않을거에요

    Happy Physical Computing! :-)

    김영희 교수

    arduino code sample: 6 switches + 6 output (LEDs)

    May 19, 2008

    여러분, 참고하세요~ 5월21일 아듀니오 워크샵합니다. 그다음주에는 이 블로그에 다큐멘팅된 사이트로 발표할 계획이니 “post”빨리 만드세요. 이번주 금요일에 체크하여 학점에 반영됩니다. 테크박스도 설명 넣으세요!

    김영희 교수 :-)

    아래는 6개의 스위치 인풋을 사용하여 6개의 다른 LED를 키는 코드 샘플입니다.

    —————————————————————————

    // intialize your LEDs on their appropriate Digital pins

    int ledPin5 = 5;
    int ledPin6 = 6;
    int ledPin9 = 9;
    int ledPin10 = 10;
    int ledPin11 = 11;
    int ledPin13 = 13;

    // same goes for the switches. Each switch according to its input on the Arduino
    int switchPin2 = 2;
    int switchPin3 = 3;
    int switchPin4 = 4;
    int switchPin7 = 7;
    int switchPin8 = 8;
    int switchPin12 = 12;
    // initialize the state of each switch. Start them in the OFF position.
    int switchState1 = 0;
    int switchState2 = 0;
    int switchState3 = 0;
    int switchState4 = 0;
    int switchState5 = 0;
    int switchState6 = 0;

    int inByte = 0;

    void setup(){
    Serial.begin(9600);
    //set each switch as an INPUT, using the pinMode function

    pinMode(switchPin2, INPUT);
    pinMode(switchPin3, INPUT);
    pinMode(switchPin4, INPUT);
    pinMode(switchPin7, INPUT);
    pinMode(switchPin8, INPUT);
    pinMode(switchPin12, INPUT);

    //set each LED as an OUTPUT, using the pinMode function pinMode(ledPin5, OUTPUT);

    pinMode(ledPin6, OUTPUT);
    pinMode(ledPin9, OUTPUT);
    pinMode(ledPin10, OUTPUT);
    pinMode(ledPin11, OUTPUT);
    pinMode(ledPin13, OUTPUT);
    }

    void loop(){

    // the state of your switch means READING the switch. Use digitalRead command

    switchState1 = digitalRead(switchPin2);
    switchState2 = digitalRead(switchPin3);
    switchState3 = digitalRead(switchPin4);
    switchState4 = digitalRead(switchPin7);
    switchState5 = digitalRead(switchPin8);
    switchState6 = digitalRead(switchPin12);

    // if your switch state reads “on“, then…

    if(switchState1 == 1){
    digitalWrite(ledPin5, HIGH);
    Serial.print(“switch1=”);
    Serial.println(switchState1,BIN);

    }
    else{
    digitalWrite(ledPin5, LOW);
    Serial.print(“switch1=”);
    Serial.println(switchState1,BIN);
    }

    if(switchState2 == 1){
    digitalWrite(ledPin6, HIGH);
    Serial.print(“switch2=”);
    Serial.println(switchState2,BIN);
    }
    else{
    digitalWrite(ledPin6, LOW);
    Serial.print(“switch2=”);
    Serial.println(switchState2,BIN);
    }

    if(switchState3 == 1){
    digitalWrite(ledPin9, HIGH);
    Serial.print(“switch3=”);
    Serial.println(switchState3,BIN);
    }
    else{
    digitalWrite(ledPin9, LOW);
    Serial.print(“switch3=”);
    Serial.println(switchState3,BIN);
    }

    if(switchState4 == 1){
    digitalWrite(ledPin10, HIGH);
    Serial.print(“switch4=”);
    Serial.println(switchState4,BIN);
    }
    else{
    digitalWrite(ledPin10, LOW);
    Serial.print(“switch4=”);
    Serial.println(switchState4,BIN);
    }

    if(switchState5 == 1){
    digitalWrite(ledPin11, HIGH);
    Serial.print(“switch5=”);
    Serial.println(switchState5,BIN);
    }
    else{
    digitalWrite(ledPin11, LOW);
    Serial.print(“switch5=”);
    Serial.println(switchState5,BIN);
    }

    if(switchState6 == 1){
    digitalWrite(ledPin13, HIGH);
    Serial.print(“switch6=”);
    Serial.println(switchState6,BIN);
    }
    else{
    digitalWrite(ledPin13, LOW);
    Serial.print(“switch6=”);
    Serial.println(switchState6,BIN);
    }
    }

    ——————————————————————

    한글로 설명을 덧붙인 코드는 아래와 같습니다.

    // your LED를 Digital pins 번호와 동일하게 intialize 한다

    int ledPin5 = 5;
    int ledPin6 = 6;
    int ledPin9 = 9;
    int ledPin10 = 10;
    int ledPin11 = 11;
    int ledPin13 = 13;

    // 스위치도
    int switchPin2 = 2;
    int switchPin3 = 3;
    int switchPin4 = 4;
    int switchPin7 = 7;
    int switchPin8 = 8;
    int switchPin12 = 12;

    // 각 스위치의 상태를 initialize한다.  OFF상태에서 시작한다.
    int switchState1 = 0;
    int switchState2 = 0;
    int switchState3 = 0;
    int switchState4 = 0;
    int switchState5 = 0;
    int switchState6 = 0;

    int inByte = 0;

    void setup(){

    //9600은 baud rate입니다.  (baud rate 설명은 아래에 있습니다.)
    Serial.begin(9600);

    //각 스위치를 INPUT으로 pinMode function을 사용하여 이니셜한다.

    pinMode(switchPin2, INPUT);
    pinMode(switchPin3, INPUT);
    pinMode(switchPin4, INPUT);
    pinMode(switchPin7, INPUT);
    pinMode(switchPin8, INPUT);
    pinMode(switchPin12, INPUT);

    // 각 LED를 OUTPUT으로 pinMode function을 사용하여 이니셜한다.

    pinMode(ledPin5, OUTPUT);
    pinMode(ledPin6, OUTPUT);
    pinMode(ledPin9, OUTPUT);
    pinMode(ledPin10, OUTPUT);
    pinMode(ledPin11, OUTPUT);
    pinMode(ledPin13, OUTPUT);
    }

    void loop(){

    // the state of your switch는 digitalRead command를 사용하여 스위치를 READING함을 뜻한다.

    switchState1 = digitalRead(switchPin2);
    switchState2 = digitalRead(switchPin3);
    switchState3 = digitalRead(switchPin4);
    switchState4 = digitalRead(switchPin7);
    switchState5 = digitalRead(switchPin8);
    switchState6 = digitalRead(switchPin12);

    // if your switch state reads “on“, then…

    if(switchState1 == 1){
    // ledPin5를 켜라
    digitalWrite(ledPin5, HIGH);

    // switch1= 을 시리얼모니터에 프린트함.
    Serial.print(“switch1=”);

    // binary 즉 0와1 상태를 한라인에 프린트하는 function, 8bit data를 읽을 경우에는 BYTE를 사용한다.
    Serial.println(switchState1,BIN);

    }
    else{
    digitalWrite(ledPin5, LOW);
    Serial.print(“switch1=”);
    Serial.println(switchState1,BIN);
    }

    if(switchState2 == 1){
    digitalWrite(ledPin6, HIGH);
    Serial.print(“switch2=”);
    Serial.println(switchState2,BIN);
    }
    else{
    digitalWrite(ledPin6, LOW);
    Serial.print(“switch2=”);
    Serial.println(switchState2,BIN);
    }

    if(switchState3 == 1){
    digitalWrite(ledPin9, HIGH);
    Serial.print(“switch3=”);
    Serial.println(switchState3,BIN);
    }
    else{
    digitalWrite(ledPin9, LOW);
    Serial.print(“switch3=”);
    Serial.println(switchState3,BIN);
    }

    if(switchState4 == 1){
    digitalWrite(ledPin10, HIGH);
    Serial.print(“switch4=”);
    Serial.println(switchState4,BIN);
    }
    else{
    digitalWrite(ledPin10, LOW);
    Serial.print(“switch4=”);
    Serial.println(switchState4,BIN);
    }

    if(switchState5 == 1){
    digitalWrite(ledPin11, HIGH);
    Serial.print(“switch5=”);
    Serial.println(switchState5,BIN);
    }
    else{
    digitalWrite(ledPin11, LOW);
    Serial.print(“switch5=”);
    Serial.println(switchState5,BIN);
    }

    if(switchState6 == 1){
    digitalWrite(ledPin13, HIGH);
    Serial.print(“switch6=”);
    Serial.println(switchState6,BIN);
    }
    else{
    digitalWrite(ledPin13, LOW);
    Serial.print(“switch6=”);
    Serial.println(switchState6,BIN);
    }
    }

    ———————————————————————–

    baud rate
    baud는 변조속도, 즉 컴퓨터의 디지털 신호를 전화선을 통해 전달될 수 있는 아날로그 신호로 바꿔주는 속도를 나타낸다. 프랑스의 발명가 Jean Maurice Emile Baudot가 만든 단위로 예전에는 전신기를 조작할 때 초당 전송하는 클록의 숫자를 나타낼 때 사용했던 단위이지만 현재는 1초에 변조할 수 있는 횟수를 나타낸다.

    Leak Sensor

    April 13, 2008

    Sensor report _설은영, 이지영

    물 감지 센서 (Leak Sensor)

    물 감지센서는 두 전극을 아주 가까이 놓아두고, 미약한 전류라도 감지할 수 있게 하면 그리 힘들지 않게 물을 감지할 수 있다.
    그리고 누수 유무를 감지하는 센서는 평상시 바닥면에 보내는 주파수와 물이 있을 경우의 주파수가 달라지는 걸 감지해서 시그널을 발생시키는 원리다.  

      

    현대 사회에서는 물을 포함한 각종 다양한 액체들이 파이프나 저장 용기에 의하여 저장되어 있는데 만약 이것들이 누출된다면 공장의 전 시스템을 마비시키거나 화학물질 누출은 심각한 환경오염을 야기 시키기 때문에 이의 방지를 위한 필수적인 안전예방장치로 쓰인다.

    * 전기 화학적인 원리를 이용하여 정확하고 신뢰성 있게 물의 유무를 감지할 수 있다.

    * 다양한 종류의 Sensing Cable을 이용하여 모든 종류의 액체 누출을 감지할 수 있다.

    * Plastic Cable을 이용하면 물의 유무를 완벽하게 감지할 수 있다.

     

     

    실생활 용품이나 작품으로 쓰인  예1)

    정혜민과 재키 리가 개발한 연인의 컵 (Lover’s Cups)으로 컵 내부에 액체 감지 센서와 무선망 연결 장치 등이 들어 있어, 남은 음료의 양까지 알려주며 멀리 떨어져 있는 연인들이 흡사 한 자리에서 음료나 와인을 마시는 기분을 일으킨다. ‘연인의 컵’은 서로를 그리워하는 청춘남녀의 원격 교감 뿐 아니라 다양한 편의를 제공할 것이라는 게 개발자들의 설명이다. 

    연인의 컵을 이용하면 병원에 입원한 가족이 음료를 충분히 마시는 지 확인할 수 있으며, 학교에서 밥을 먹는 자녀와 집에 있는 부모 사이의 교감도 이룰 수 있다는 것이다.

     예2)

     

     물 감지센서와 빛 감지 센서가 장착된 이 화분은 화분에 물이 마르면 새가 울어 물을 주라는 표시를 해 주며 밤에는 주인의 잠을 방해하지 않기 위해 해가지면 새가 울지 않고 잠을 잔다.

     

    물감지 센서를 이용한 프로젝트응용구상 기획서.

    Twinkle Rain

    비가오면 신발이 젖는게 싫어서, 산성비가 걱정되서, 우산을 가지고 다녀야하는 번거러움에 비오는날은 왠지 밖에 나가기가 싫다.

    예전에는 일부러 비오는 날이 좋아서, 비 맞는 느낌이 좋아서 가끔은 비오는 날에 그냥 우산없이 그냥 길을 걷기도 했지만 요즘은 산성비가 무서워서인지 이런 낭만을 잊어서인지 우산없이 길을 가는 사람을 더 이상 찾아볼 수 없게 되었다.

    산성비 때문에 잃어버린 비오는 날의 낭만을 다시 찾기위해 이번 프로젝트를 구상하였다.

    우산의 윗부분전체에 물감지센서를 부착하여 비가 떨어져 우산 윗부분에 닿을때 우산안에 달린 작은 LED 조명이 켜진다.

    비의 랜덤하고 리드미컬한 운동에 맞추어 LED조명이 켜지며 옛날의 비를 맞던 그 느낌을 새롭게 되살려주게 될 것이다.


    작품을 이용한 예 1)

    비오는 날의 까페 테라스 조명설치.

    비가 많이 오는 여름철에 노천까페 테라스에 큰 천막과 비 조명을 설치하여 은은한 조명을 연출할 수 있다.


     예 2)

    초등학교 등굣길. 트럭이나 큰 차의 운전자는 키가작은 어린이들이 잘 보이지 않기 때문에 어린자녀를 둔 부모들은 비오는 날이면 더욱 걱정스럽고 안전사고의 위험도 높다.

    비 조명을 이용한 우산을 쓰면 눈에 더 잘 띄여 어린이 안전사고의 위험을 줄일 수 있을 것이다.

     

     

     

     

     

     

    Capacitive Touch Sensor

    April 11, 2008

    Sensor report _  강혜정, 심민지

     Capacitive Touch Sensor
     
     
     
     
    1.Capacitive Touch Sensor (정전용량 터치센서) ?

     

    QT113H

     사람의 몸을 통한 기전력을 기준으로 터치 여부를 검출하여, 사람의 손에 의해 터치센서 입력부를 만졌을때 표면 기전력을 콘덴서의 충/방전을 통해 검출하는 센서이다.

    2.정전용량 터치센서의 원리

    *손이닿지 않았을 때

    *손이 닿았을 때

     

    “정전용량 터치센서 (Capacitive Touch Sensor)”는 신체 또는 특정 물체가 접촉했을때 발생하는 정전용량(Capacitance)의 변화를 감지하여 동작한다. 터치할 면에 인체가 접촉할때 발생하는 미세한 정전용량의 변화치와 설정치간의 차이를 감지하여 최종 출력을 High or Low로 나타낸다.

    일반적으로 Case는 절연물질로 이루어진 Case를 사용하며 도전물질은 사용이 불가능하다.

    (접촉면에 직접접촉 또는 부도체 Case를 중간매체로 한 간접 접촉을 통해 형성된 정전용량은 면적에 비례하고 거리에 반비례함.) 터치센서의 접촉되는 부분은 금속으로 만들어진다. 그 금속 부분에 적은 양의 전류를 흘려주면 동작 대기상태가 된다. 이때 사용자가 스위치에 손을 가져다 대면 사람의 몸에 전기가 흘러 짧은 시간에 그전압이 변하게 되고 내부의 회로는 그전압에 반응하여 출력이 변하게 된다. 즉 사람의 몸이 전지가 되어 동작을 하게 되는 것이다. 만약에 전기가 통하는 물질 즉 도체인 젓가락이나 숟가락 같은 쇠붙이를 잡고 스위치를 건들면 출력이 변하게 된다. 그러나 부도체로 만들어진 물체를 잡고 건들게 되면 출력에 변화를 일으키지 않는다.

    3.정전용량 터치센서의 감지 원리

     인체의 접촉으로 생성되는 Capacitance를 감지하는 방식으로는 Peak 비교방식과 주파수 변환 방식 등으로 구분된다.

    - Peak 비교 방식은 인체의 접촉에 의해 Capacitance 가 증가되면 Peak가 감소되는 원리를 이용한다.

    - 주파수 변환 방식은 인체의 접촉에 의해 Capacitance가 증가되면 주파수가 낮아지는 원리를 이용한다.

    4.검출방식

    사람의 입력부에 손을 접촉 했을때 센서가 검출하는 방식은 접지라는 공간적인 전류 흐름을 감안했을 경우 표면 기전력에 대한 입력 특성이 다른 전류 간의 상호 작용 관계 법칙이 적용된다. 사람의 손에 흐르는 표면 누설전류와는 다르게 기전력은 접지에 의해 특정한 슬레스 홀드(threshold)를 가지는 전위합을 나타낸다. 그로인해 터치센서는 일정 전압 / 전류치를 검출하게 되고 이를 통해 사람의 손이 입력부를 만졌다는 것을 검출하게 된다.

    threshold voltage : 이 전압 이상에서 작동을 시작하는 반도체 소자-회로 등의 입력전압                                hysteresis : 원인이 제거되었는데도 쉽사리 본래의 상태로 되돌아가지 않는 현상

    # 터치스위치 회로도 

     
    # 프로젝트
    kiosk system – “head over      heels”                                                                                                                    

    키오스크 시스템은 독립형 컴퓨터 및 비디오 프로젝션 시스템을 통합한다. 화면의 하단에있는 터치 센서 플레이트 사용자 상호 작용을 도와준다. 프로젝션 스크린 뒤쪽에 제품을 연결할 수있다.
    설명 텍스트 및 이미지는 실제 제품은 옆에 표시된다.                                                                                            

    ——————————————————-

    Eleksen  - ’touch sensitive interactive textiles for electronics interface’ 

    (터치 센서의 역할을 할 수 있는 천 ‘ElekTex’을 만들어 제품에 응용)

    ElekTex 를 이용한 오디오 케이스.

    케이스에서 바로 iPod를 컨트롤 할 수 있다

     

     

     

    ——————————————————–
    Ibar
    iBar는 단순히 테이블과 카운터, 천정등에, 고정된 위치의 조명값을 주는것이 아닌 Bar에서의 고객의 움직임과 술잔, 그릇등의 위치, 바텐더의 움직임을 일종의 터치스크린(Touch screen)패널을 이용한 상호작용(Interactive)적인 빛으로 조명효과를 주는 Bar 인테리어 설비이다.
    일명 Intelligent surface system이라는 요소가 들어가는 iBar는  모니터 터치스크린 같은 2차원상에서의 위치정보 입력 시스템과 비디오 프로젝터를 혼합하여 개발한 Bar 전용 인테리어 설비. 술잔의 위치가 이동될때뿐 아니라 당연히 손가락이나 기타 사물을 가지고도 상호작용적인 빛의 효과를 연출 할수가 있다. 또한 카운터테이블에 올려저 있는 여러가지 술잔들이 서로 빛으로 연결되어 색다른 인테리어 느낌을 연출한다.

    ——————————————————–

    leClone

    ——————————————————–

    *프로젝트

    1.테이블디스플레이 in cafe

    아이디어의 시작

     카페에서 디스플레이를 한다면?    +  주문과 계산을 자유롭게 +    음악선곡을 내 마음대로

    사용자시나리오

     비 오는 오후, 카페에 도착한 K. 아직 친구와의 약속이 30분 정도가 남아있다. 테이블의 터치스크린을 이용해 따뜻한 라떼와 베이글을 주문한다. 자신의 신체상태를 분석하여 지금 자신의 신체상태분석과 함께 자신의 상태에 가장 적합한 음악선곡 목록이 나온다. 노래를 선택하여 노래를 듣던 중 그 노래를 부른 아티스트의 정보를 검색하여 뮤직비디오와 함께 공연모습도 감상한다. 노래가 마음에 든 K씨는 그 노래가 담겨져 있는 앨범과 카페에서 파는 케익을 남자친구에게 선물하기로 한다. 카페에서 케익을 사면 주는 음반할인쿠폰으로 앨범을 구매하여 메시지와 함께 남자친구에게 선물한다.

    기능

    - 주문기능

    - 음악선곡, 듣기

     

    2.cantabile

     

    이 프로젝트는 스크린에 놓인 음표들을 사용자가 원하는 위치에 옮기면 음표의 위치에 따라 자동으로 연주해 준다. 사용자는 스크린에 놓인 음표를 손으로 터치하고 끌어서 원하는 위치로 옮길 수 있다.  우리의 프로젝트 에서는 누구나가 쉽게 음악을 짓고 즐길수 있다.

    스크린에 음표들이 나열되있고 그 음표들이 위치한 음을 소리내고 있다. 소리는 음표가 놓인 순서대로 나게되는데 소리나는 음표에서는 빛이 나서 그 음표가 소리나고 있다는 것을 알려주게 된다. 사용자는 스크린에 손을대고 움직이고싶은음표를 잡고 원하는 위치에 끌어다 놓을 수 있다. 이리저리 자유롭게 음들을 움직일 수 있기때문에 누구나가 자신만의 음악을 쉽게 즐길 수 있다. 음표들 사이 간격도 조절가능해 박자도 조절 가능하다.

    음표를 더 만들어 내고 싶으면 상단에 위치한 음표를 끌어다놓으면 새로운 음표가 생기고 음표를 빼고싶다면 음표를 짚고 스크인 밖으로 끌어다 던져버리면 음표는 사라지게 된다.  

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    TILT sensor

    April 11, 2008

    -정수민,이경택

    1. TILT sensor

    기울기 센서는 각도 측정 센서이다. 집적 회로가 내장된 전자식 액체 충전 방식으로 설계 되었으며 장시간 사용해도 변하지 않는 매우 안정된 성능을 가지고 있는 아날로그 출력센서이다.

     

     2. 사용된 프로젝트

     사용된 프로젝트 1

    _tilt sensor robot

    기울기 센서로 넘어짐을 감지하고 스스로 일어나는 로봇

     

    http://youtube.com/watch?v=L8bNsADH-Og

     

    사용된 프로젝트 2

    _Tilt Sensor LED Watch

    기울기에 따라 시계숫자 led가 켜졌다 꺼졌다 하는 프로젝트

    http://youtube.com/watch?v=9UvIQ6uBsEM

    사용된 프로젝트 3

    http://serviceapi.nmv.naver.com/flash/NFPlayer.swf?vid=FA2C493738A13664B0F601D2991DD77D6E08&outKey=5131dc88ac98478b789c2de7d691f7cd23853c11202b36a40066f7e8ed07fdfea62f7fb7e1e10788bdb8caf43bdcc536

     3. 프로젝트 응용 아이디어

    사용자를 지나치게 배려하는 인터렉션을 지양하고자

    이번 프로젝트의 사용자를 아기로 제한하였다.

    자신의 행동이나 사고를 인지 하지 못하기에

    그렇게 반응되어진 상호 작용 조차 사용자는 인식할수 없다.

    기존의 인터렉션이 많은 대중의 이목을 끌고자 이루어진

    이벤트성 반응이 었다면

    이는 아주 작은곳에서의 움직임 그리고 좀더 순수한 유저를 끌어 내보았다

    흔들침대 아래에 센서를 부착하고

    아기의 미세한 움직임에 인터렉션을 유도하자

    그리고 그 상호 작용을 모빌에 걸어준다면

    사용자는 그 반응에 또 다른 행동을 기대 하게 될것이다.

    이에 따른 반응으로 모빌의 색깔과 움직임 ..그리고 사운드의

    변화를 가정해보았다.

    pressure sensor

    April 11, 2008

    압력센서

    김영창, 정보라

    FlexiForce A101-25

     

    1) 제품특징, 원리

    -압력에 따라 전기저항값 변화

    -압력이 없을 경우 높은 저항값 출력

    -압력이 가해지면 5Kohm 정도까지 저항이 내려감

     

     

    2) Application

    -전자저울, 로봇의 Grip촉각센서등 다양한 분야 활용가능

     

    3) Standard Force Ranges

    (as tested with circuit shown below)

      0 – 1 lb. (4.4 N) 0 – 500 lb. (2224 N)

    0 – 25 lb. (111 N) 0 – 1,000 lb. (4448 N)

    0 – 100 lb. (444 N)

     

     

    압력센서 프로젝트

     

    1) Sound slam

    Highly Responsive Punching Bag, 2002

    설명 ; DJ의 삶은 어렵습니다.  Deejaying는 밤새도록 지나치게 붐비게 되는 클럽에서 단지 명성이 아니라 못된 성질도 초래합니다. 디제이는 근육의 위축과 심장병을 가장 자주 앓고 있습니다. SoundSlam은 12대의 센서를 제공된 펀치 백으로 만들어지는 하이 엔드 컨트롤러입니다  압력, 세계적인 가속 센서와 soundprocessor 단위에 민감합니다. 올바른 장소에서 펀치 백을 꽝 닫는 것은 당신에게 audiofiles를 통제하고, 당신 자신의 신체의 입력을 통하여 노래 구조를 만드는 것을 허락합니다. SoundSlam의 규칙적인 사용은 당신의 근육을 좋게 할 것입니다. 모든 소녀는 당신의 소리뿐만 아니라 당신의 강화된 몸을 좋아할 것입니다.

     

     

    2) Dance Floor Ver 1.0

    압력 센서 매트(Pressure Sensor Mat)와 모션 스케닝 카메라, 그리고 비디오 프로세싱
    카메라로 하여금 시스템을 사용하는 사용자로 하여금, 음악, 비디오를 실시간에 저작하는 시스템으로 새로운 창작 무대를 제공해준다.

     

    3) Joy Slippers

    http://youtube.com/watch?v=wo5O_i8DPoc

    슬리퍼에 압력센서가 장착되어 있고 컴퓨터로 그림을 그릴 수 있는 프로젝트이다. 오른쪽발로 딛으면 선이 우측으로 향하고 왼발로 딛으면 좌측으로 뒷꿈치를 들면 위로, 앞꿈치를 들면 아래로 향하여, 발로 그림을 그릴 수 있게 되어 있다.

    프로젝트 기획

    “Please love me” -bed of pair

     

    동기

    -부부나 커플들 간의 사소한 다툼으로 인해 각방을 쓰는 부부들이 있는데 이는 부부사이를 더욱 악화시키는 원인이 될 수도 있다고 생각해서 작은 다툼이라도, 웃어넘기며 같은 침대에서 잘 수 있도록 유도 할 수 없을까?

     

    동작 원리

    -압력센서가 내장된 이 공기 침대는 부부들의 침대이다. 부풀어 있는 침대는 두 사람 정도의 무게의 압력이 있어야만 그 상태를 유지하게 된다. (압력설정 가능) 한명만 침대에 눕게 되면, 줄어든 압력으로 인해 침대 내부의 공기가 서서히 빠지게 된다. →결국 커플이 함께 침대에 자야 한다.

    -알람시계 기능

    알람을 맞추고 침대에서 일어나지 않으면 알람이(진동) 멈추지 않는다. (알람 두 개설치 한쪽씩)

     

    시나리오

    철수씨와 수진씨는 오늘밤 사소한 일로 다툼을 하고 기분이 상한 철수씨는 베개를 가지고 다른 방으로 옮겨 가려고 침대에서 일어난 순간 침대의 공기는 서서히 빠진다. 수진씨가 혼자 누워 있던 침대의 공기가 점점 빠지고… 수진씨는 결국 철수씨와 무언(?please love me~) 화해를 하고 함께 잠자리에 든다. 다음날 6시 침대 알람이 울린다. 뒤척이던 철수씨는 참지 못하고 일어나 수진씨가 차려준 맛있는 아침을 먹고 출근을 한다.

     

     

     

     

    Vibration Sensor

    April 11, 2008

    진동감지센서 – Vibration Sensor 에 대한 고찰
    강래우,연지숙 조

    피에조를 이용한 진동 감지 센서
    피에조는 피에조 판의 진동이나, 소리 혹은 작은 빛에 전하를 방출하는 특징을 가진 전자부품입니다. 이를 이용하여 진동감지나, 소리감지 혹은 휨 센서등 다양하게 활용 할 수 있습니다.또한 반대로 전기를 흘려주면 소리가 나기때문에 간이 스피커로도 사용됩니다.

    오른쪽이 일반적인 피에조의 모습입니다. 이 피에조에서 필름막을 벗겨내어 센서/스위치 용으로 따로 제작한 부품이 바로 아래의 부품입니다. 사실 피에조는 매우 단단하고 무게감이 있어 사용하기가 번거로운 편이었는데, 왼쪽 사진의 피에조처럼 필름 부분만을 벗겨내어 작게 나와 활용범위가 넓어 졌습니다.

    윗 센서의 데이타 시트 입니다. 보시는데로 Vibration 혹은 Flexsible Switch로 사용할 수 있다고 씌여 있습니다.
    Vibration은 진동 됨에 따라(V/g) – 진동 가속도에 따른 Output Voltage가 달라 집니다.
    Flexsible은 역시 deflection에 다라 Output Voltage가 달라집니다.

    테스트를 하기위해 회로를 제작 하고 프로그래밍을 합니다.
    다른 센서와 달리 피에조는 스스로 전하를 흘려주기 때분에 따로 Voltage를 걸어줄 필요가 없습니다.
    생각보다 큰 전압이 걸리므로 역방향으로 전류가 흐르는것을 방지하도록 다이오드를 다음과 같이 달아줍니다.


    테스트 결과입니다.

    센서로 쓰기에는 조금 바보스럽습니다.데이타 시트대로 진동 감지가 안정적이지 않지만,잘 이용하면 여러가지로 많이 이용될 것 같습니다.(진동 상/중/하 스위치로는 충분히 쓰일 수 있을듯…)

    제품으로는 이를 이용해서 전자미디 악기로 많이 사용되고 있습니다.
    전자 미디 악기의 예 ) 전자드럼

    * 전자드럼이란 ?
    - 전자드럼이란 일반 어쿠스틱 드럼과 생김새와 모양은 비슷하지만 전기적 장치를 이용하여 작동하는 악기를 말한다.
    전자드럼은 일반 드럼과 사용 형태는 비슷하지만 그 원리는 전혀 다르다고 할 수 있다. 어쿠스틱 드럼은 북을 쳤을 때 그 떨림이 북을 울려 소리가 전달되는 형식인데, 전자드럼은 북을 쳤을 때 그 기기 내에서 미리 녹음된 스피커로 음색이 플레이되는 형식이다.
    물론 전자 드럼의 타격 크기에 따라 볼륨이 움직이지만 미세한 진동에 의한 소리의 변화까지는 따라잡을 수 없어 아직까지는 어쿠스틱 드럼의 소리를 따라가지 못한다.

    하지만 어쿠스틱 드럼은 소리를 크게 하고 쳐야 할 경우 일일이 마이크를 설치해야 하지만 전자드럼은 따로 마이킹을 하지 않아도 앰프에 꽂는 정도만으로도 넓은 지역을 커버할 수 있다는 장점이 있다. 또한 헤드셋을 끼고 혼자서 연습이 가능하기 때문에 실내에서도 무리없이 연습이 가능하다.

    Color sensor

    April 11, 2008

     HiTechnic NXT Color Sensor_For LEGO Mindstorms NXT
     김현경, 김영수

     

     

     

    소개
    NTX의 컬러 센서는 3개의 다른 색상의 LED를 이용하여 표적의 조명과 각 색상의 표면에 대해 표면에 반사된 값을 사용한다. 각 색상의 상대적인 색상의 강도를 사용하여 반사된 값을 계산하여 계산된 색상 번호가 NTX 프로그램에 반환된다.
    NTX 센서 포트에 연결하는 센서의 색상을 이용하여 나타난 값은 표준 NTX 와이어 및 i2c 통신 프로토콜을 사용하며 계산된 색상번호는 초당 약100회 고쳐질수있다.

     

    Mindstorms nxt – g ,  Ultrasonic block,  Color sensor block을 이용할 수 있다.


    ultrasonic sensor

     
     color front panel

     
     color number

     

     

    컬러센서가 사용된 프로젝트의 예

    1. 팬톤컬러큐TX (Pantone Color Cue TX)

    색깔 식별기.
    포스트잍이나 견본조각 등의 질감이 다른 물체의 샘플이라도 그 색채명이나 번호를 정확히 식별해 준다.
    색에 민감한 디자이너들 뿐만 아니라 일반인도 편리하게 사용할 수 있다.
    또한 컬러를 RGB 및 HTML의 형태로 변형 시켜주는 기능과 최근 식별한 10개의 색을 기억하는 기능도 있다.
    지나치게 작은문양일 경우 혼합된 색깔로 식별 될 수 있는 문제가 있기도 하다.  

      

    2.  Lego NXT Rubik’s Cube solver



    컬러를 읽고 큐브를 맞추는 로봇.
    Link- http://kr.youtube.com/watch?v=qCUooMoYE3U

     

    3.  Lego Grabber Arm Light

    오른쪽 로봇이 집어 올린 공의 컬러를 인지하면  왼쪽 로봇이 그와 같은 컬러의 깃발을 들어 올린다.
    왼쪽 로봇이 컬러에 반응하여 동작하는 프로젝트.
    Link- http://www.youtube.com/watch?v=jXP347xdAtA

     

    프로젝트 기획


     ”흔적”
     
    넓고 긴 복도나 길.
    한 사람이 지나가면 랜덤으로 컬러가 지정되고, 컬러센서가 작동 되면서 지정된 컬러를 읽는다.
    지정된 컬러의 높이에 컬러의 흔적이 지나가는 사람을 따라 미끄러지듯이 남는다.
    그 뒤에 오는 사람들도 같은 방식으로 다른 컬러가 그 사람을 따라가며 흔적을 남기며 앞의 잔상과 겹쳐져
    의도하지 않은 우연의 흔적을 하나의 아트로 새롭게 해석해 본다.

     example image cut
     
    흔들리는 개채의 상(像) 가운데 한 가지의 색만이 흔적을 남긴다.
    이 사진은 야경에서의 다양한 불빛들의 움직임이지만 우리가 담으려고하는것은
    벽 옆을 지나가는 사람들의 시간과 그시간을 담은 어떠한 작은 흔적이 남겨지는것.
    아무것도없는 종이에 무언가 엷게 중첩되어가는 느낌.
    그것이 우리가 표현하려는것이다.                                           

             
                                                    

                      

     

     

     

     

     

     

     

     

    빛감지센서(CDS)

    April 11, 2008

    감지 센서(CDS)  조성미, 한기옥

    소개

    빛을 감지하는 센서로서, 빛을 숫자 데이터로 바꾸는 센서이다.  LED처럼 작지만 기능은 다루기에 쉽고 빛이라는 존재하는 것에서부터 많은 것을 가능하게 해준다. 청소기나, 방범에 많이 이용되었으며, 다루기 쉽기 때문에 미디어 아티스트들도 애용하는 센서 중에 하나이다.

     

     

    원리

     

    빛이 CSD 인식이 되면, 어둡고 밝기에 따라 그것이 숫자로 값이 바뀌게 된다. 숫자를데이터로 보냄으로써 빛의 값에 따른 반응을 하게 된다.

     

    사용예시

     
     

     

     

    1. 뮤직박스
    <뮤직박스> 단지 시절의 향수를 재생산하는 것만이 아닌 실린더의 손잡이를 돌리는 지금 순간의 기억을 새롭게 간직하게 한다. 목진요 <뮤직박스> 사용자가 직접 마우스를 통해 새로운 음악을 만들고 저장하며, 온라인을 통해 서로 공유하고 다른 사람이 저장한 곡들을 연주할 있다. 밑바닥에 감지센서가 부착 되어있어, 위의 돌리는 구멍으로 빛이 나와 위치에 해당하는 음을 감지 센서가 읽어 연주한다. 
     

     

    2. 자동충전 기능을 갖춘 보급형 청소기

     

    빛을 감지하여 배터리가 떨어지기 전에 어두운 (침대 이나 쇼파 )에서 빠져 나오는 역할을 한다. 감지센서를 장착한 로봇청소기는 현재 헬퍼가 유일하다

     

    3. 진동로봇

     

    센서로봇이란 감지센서- 적외선 수광센서- 의해 외부의 빛을 감지하여 로봇을 움직이게 하는 로봇.  적외선 센서의 수광부 발광부를 이용했다. 적외선의 발광부-, 후레쉬 등등-에서 나오는 적외선을 수광센서가 감지한 신호를 모터 제어회로에 입력해주어 로봇의 움직임을 제어하게 된다.

     

      감지 센서(CDS) 응용프로젝트 기획안

     

    보지마세요(its my privacy)

      신랑 각시의 첫날밤, 문에 구멍을 뚫어 초롱불 아래 둘만의 은밀한 밤을 훔쳐보려는 시절을 기억 하는가. 프로젝트는 둘만의 시간을 보내고 싶은 부끄러운 신랑, 각시를 위한, 센서를 이용한 일종의 사생활 보호막 같다 .

     

    - 구현방법

    -   창호지의 뒷면에 얇은 LCD 장착하여 영상을 보여주는 스크린을 설치한다.

    -    훔쳐보기 위해 누군가가 문에 구멍을 뚫어 가까이 다가가면 감지 센서가 이를 인식하여 앞서 이야기한 스크린에 영상을 보여준다.

     

    Synopsis

    -   둘만의 첫날 , 신랑과 각시는 초롱불 아래에서 그들만의 로맨틱하고도 수줍은 밤을 맞는다. 짓궂은 마을 사람들은 조용히 앞에 모여들어 저마다 거사를 훔쳐보려 하는데.. 손가락으로 조심스럽게 구멍을 내고 앞에 다가가자, 갑자기 영상 속에서 여성이 힘칫 놀라 !! 소리를 지르더니 스스로 커튼을 가린다. 신랑각시의 은밀한 밤을 몰래 훔쳐보려던 마을 사람들은 깜짝 놀라 뒤로 벌러덩 넘어지고 그들은 아쉬워하며 발길을 돌린다. 수줍은 신랑각시는 보지마세요 이용해 안심하고 로맨틱한 밤을 맞이한다.