88
Sensor Kit (41) for Arduino Anyone can easily㈜퍼스트봇 ( V1.0 ) www.firstbot.co.kr www.firstbot.co.kr

Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

  • Upload
    others

  • View
    10

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino Anyone can easily…

㈜퍼스트봇 ( V1.0 )

www.firstbot.co.kr ww

w.fi

rstb

ot.c

o.kr

Page 2: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

2 | 페 이 지

총 41 개로 구성된 Sensor Kit 는 초보자들이 쉽게 납땜이 필요없이 케이블을 이용

하여 Arduino 와 구성하여 Sensor 를 쉽게 동작하고 응용 할 수 있게 구성 하였습니다.

각 Sensor 의 기본 동작을 파악 한 후 응용을 통해 본인이 원하는 프로젝트를 계획 하고

실행 할 수 있습니다.

- 목 차 -

1. 조이스틱 모듈 ( Dual-axis XY Joystick Module ) – joystick (KY-023)

2. 5V 릴레이 모듈 ( Relay Module ) – relay (KY-019)

3. 고감도 사운드 감지 센서 ( High Sensitivity Sound Sensor ) - Big sound (KY-037)

4. 마이크로폰 사운드 감지 센서 ( Microphone Voice Sound Sensor ) - Small sound (KY-038)

5. 적외선 라인 트랙킹 센서 ( IR Line Tracking Sensor ) – Tracking (KY-033)

6. 적외선 장애물 감지 센서 (IR Obstacle Avoidance Sensor ) – Avoid (KY-032)

7. 화염 감지 센서 ( Flame Fire Detection Sensor ) – Flame (KY-026)

8. 리니어 홀 자기 센서 ( linear hall magnetic Sensor ) - Linear Hall (KY-024)

9. 금속 터치 센서 ( Metal Touch Sensor ) – Touch (KY-036)

10. 디지털 온도 센서 ( Digital temperature Sensor ) - Digital temp (KY-028)

11. 피에조 부저 모듈 ( Piezo buzzer ) – buzzer (KY-012)

12. 수동 부저 모듈 ( Passive buzzer ) - passive buzzer (KY-006)

13. RGB 3컬러 LED 모듈 ( RGB 3 Color LED Module ) - RGB LED (KY-016)

14. SMD RGB 3컬러 LED 모듈 ( SMD RGB 3 Color LED Module ) - SMD RGB (KY-009)

15. 2컬러 3mm LED 모듈 ( Dual Color LED Module – 3mm ) - Two-color LED (KY-029)

16. 2컬러 5mm LED 모듈 ( Dual Color LED Module – 5mm ) – Two-color (KY-011)

17. 마그네틱 리드 스위치 센서 ( Magnetic Reed switch Sensor ) – Reed switch (KY-025)

18. 마그네틱 미니 리드 스위치 센서 (Magentic Mini Reed switch Sensor) – mini Reed (KY-021)

ww

w.fi

rstb

ot.c

o.kr

Page 3: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

3 | 페 이 지

19. 손가락 심박 센서 ( Finger heartbeat measurement Sensor ) – Heartbrat (KY-039)

20. 7 Color 플래시 LED 모듈 ( 7 Color Colour Flashing LED Module ) – 7 color flash (KY-034)

21. 레이저 발광 모듈 ( Laser transmitter Module ) – Laser emit (KY-008)

22. 리셋 버튼 모듈 ( Key switch Module ) – Button (KY-004)

23. 진동감지센서 ( Vibration detection Sensor ) – Shock (KY-002)

24. 로터리 인코더 모듈 (Rotary encoder Module) – Rotary encoders (KY-040)

25. 매직 라이트컵 센서 ( magic light cup Sensor ) – Light Cup (KY-027)

26. 수은 기울기 스위칭 센서 ( Mercury open optical Sensor ) – Tilt switch (KY-017)

27. 기울기 센서 ( Tilt switch Sensor ) – Ball switch (KY-020)

28. 조도 센서 ( Photoresistor Sensor ) – Photoresistor (KY-018)

29. 디지털 온습도 센서 ( DHT11 Temp and Humidity Sensor ) – Temp and humldlty (KY-015)

30. 아날로그 홀 자기 센서 ( Analog Hall Effect Magnetic Sensor ) – Analog Hall (KY-035)

31. 홀 자기 센서 ( Hall Magnetic Sensor ) – Hall magnetic (KY-003)

32. 디지털 온도 센서 ( Digital temperature Sensor DS18B20 ) – TEMP (KY-001)

33. 아날로그 온도 센서 ( Analog temperature Sensor ) – Analog temp (KY-013)

34. 적외선 방출(송신) 센서 ( IR emission Sensor ) – IR emission (KY-005)

35. 적외선 수신 센서 ( IR Receiver Sensor ) – IR receiver (KY-022)

36. 노크 센서 ( Knock Sensor ) – Tap module (KY-031)

37. 적외선 포토 인터럽터 센서 ( IR Photo Interrupter Sensor ) – light blocking (KY-010)

---------------------------------- 기본 37 종 Kit 에서 아래 4 종 추가 ----------------------------------

38. HC-SR04 초음파 센서 ( HC-SR04 Ultrasonic Sensor )

39. L293D 모터 드라이버 ( L293D Motor Driver )

40. DC 모터 ( DC Motor )

41. 74HC595N 쉬프트 레지스터 ( 74HC595N Shift Resister )

ww

w.fi

rstb

ot.c

o.kr

Page 4: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

4 | 페 이 지

1. 조이스틱 모듈 ( Dual-axis XY Joystick Module ) - (KY-023)

각종 제어에 많이 쓰이는 조이스틱은 X, Y 축의 움직임을 2개의 Analog 신호로 만들어 주고

Z 축(KEY)으로 누르면 버튼 처럼 동작해서 1개의 Digital 신호로 만들어 준다.

Analog 출력 방식으로 아두이노에 연결하여 로보트 나 모터등의 제어를 쉽게 할 수 있다.

< 아두이노 연결 구성 >

Joystic Module Arduino UNO

GND GND

VCC 5V

X A0

Y A1

KEY(SW) D2

ww

w.fi

rstb

ot.c

o.kr

Page 5: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

5 | 페 이 지

< Joystic Module 동작 스캐치 예제 >

int Xin= A0; // X Input Pin

int Yin = A1; // Y Input Pin

int KEYin = 2; // Push Button

void setup ()

{

pinMode (KEYin, INPUT);

Serial.begin (9600);

}

void loop ()

{

int xVal, yVal, buttonVal;

xVal = analogRead (Xin); // X 축

yVal = analogRead (Yin); // Y 축

buttonVal = digitalRead (KEYin); // Z 축 (KEY)

Serial.print("X = ");

Serial.println (xVal, DEC);

Serial.print ("Y = ");

Serial.println (yVal, DEC);

Serial.print("Button is ");

if (buttonVal == HIGH){

Serial.println ("not pressed"); // Z축을 누르지 않았을 때

}

else{

Serial.println ("PRESSED"); // Z 축을 눌렀을 때

}

delay (500);

ww

w.fi

rstb

ot.c

o.kr

Page 6: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

6 | 페 이 지

2. 5V 릴레이 모듈 ( Relay Module ) - (KY-019)

릴레이는 코일이 전자석으로 되었을 때 철판을 끌어당겨, 그 철판에 붙어있는 스위치부의 접점을

열거나 닫는다. 쉽게 말해 릴레이는 자동으로 컨트롤이 가능한 스위치의 일종으로 작은 전압으로

큰 전압을 컨트롤 하기 위한 부품이다.

신호(제어부의 전원)를 받으면 릴레이가 작동되어 접점이 바뀐다.

신호가 끊어지면 릴레이가 작동되지 않아 다시 원래의 접점으로 돌아온다.

릴레이가 작동할 때 전류는 순간적으로 끌어가므로 다른 모듈들의 전류부족을 조심 해야 한다.

< 아두이노 연결 구성 >

ww

w.fi

rstb

ot.c

o.kr

Page 7: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

7 | 페 이 지

5V Relay Module Arduino UNO

GND GND

VCC 5V

Signal D8

< 5V Relay Module 동작 스캐치 예제 >

int Relay = 8;

void setup()

{

pinMode(Relay, OUTPUT);

}

void loop()

{

digitalWrite(Relay, HIGH); // relay Switch ON

delay(5000);

digitalWrite(Relay, LOW); // relay Switch OFF

delay(5000);

}

ww

w.fi

rstb

ot.c

o.kr

Page 8: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

8 | 페 이 지

3. 고감도 사운드 감지 센서 ( High Sensitivity Sound Sensor ) - (KY-037)

Analog 와 Digital 값을 사용하여 소리의 세기 및 유무를 인식 할 수 있다.

파란색 부품 윗면의 - 나사를 시계반 방향으로 돌리면 감도가 증가, 시계방향으로 돌리면

감도가 감소한다.

< 아두이노 연결 구성 >

High Sensitivity Sound Microphone Sensor Arduino UNO

A0 A0

G GND

+ 5V

D0 D12

ww

w.fi

rstb

ot.c

o.kr

Page 9: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

9 | 페 이 지

< High Sensitivity Sound Microphone Sensor 동작 스캐치 예제 >

int SPin = 0; // Sensor A0

int ledPin = 12;

void setup()

{

pinMode(ledPin,OUTPUT);

Serial.begin(9600);

}

void loop()

{

int value = analogRead(SPin); // Sensor Read

int intensity = map(value,20,300,0,255); // 최소값 20, 최 값 300 설정

analogWrite(ledPin, intensity);

delay(10);

Serial.println(value);

delay(100);

}

ww

w.fi

rstb

ot.c

o.kr

Page 10: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

10 | 페 이 지

4. 마이크로폰 사운드 감지 센서 ( Microphone Voice Sound Sensor ) - (KY-038)

Analog 와 Digital 값을 사용하여 소리의 세기 및 유무를 인식 할 수 있다.

파란색 부품 윗면의 - 나사를 시계반 방향으로 돌리면 감도가 증가, 시계방향으로 돌리면

감도가 감소한다.

< 아두이노 연결 구성 >

Microphone Voice Sound Sensor Arduino UNO

A0 A0

G GND

+ 5V

D0 -

ww

w.fi

rstb

ot.c

o.kr

Page 11: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

11 | 페 이 지

< Microphone Voice Sound Sensor 동작 스캐치 예제 >

int led = 13;

int threshold = 50; //감도조절 값 (변경가능)

int volume;

void setup()

{

Serial.begin(9600);

pinMode(led, OUTPUT);

}

void loop()

{

volume = analogRead(A0);

Serial.println(volume);

delay(100);

if(volume>=threshold){ //소리가 threashold(50) 와 같거나 크면 LED ON

digitalWrite(led, HIGH);

}

else{

digitalWrite(led, LOW);

}

}

ww

w.fi

rstb

ot.c

o.kr

Page 12: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

12 | 페 이 지

5. 적외선 라인 트랙킹 센서 ( IR Line Tracking Sensor ) - (KY-033)

트랙킹 센서는 적외선을 이용하여 장애물을 감지하거나 검은색/흰색 선을 구별하여

장애물을 회피하거나 Line 을 따라가는 자동차 등을 제작, 활용 할 수 있다.

< 트랙킹 센서 3개를 이용한 Line 을 따라 가는 자동차 >

< 아두이노 연결 구성 >

ww

w.fi

rstb

ot.c

o.kr

Page 13: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

13 | 페 이 지

< IR Line Tracking Sensor 동작 스캐치 예제 >

IR Line Tracking Sensor Arduino UNO

S D2

V+ 5V

G GND

int TR = 2;

void setup()

{

Serial.begin(9600);

Serial.println("tracking Sensor");

pinMode(TR, INPUT);

}

void loop()

{

if (LOW == digitalRead(TR))

{

Serial.println("Detect !!"); // 감지함

}

else

{

Serial.println("NOT Detect !!"); // 감지못함

}

delay(100);

}

ww

w.fi

rstb

ot.c

o.kr

Page 14: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

14 | 페 이 지

6. 적외선 장애물 감지 센서 ( IR Obstacle Avoidance Sensor ) - (KY-032)

적외선이 장애물에 의해 반사가 되면 Obstacle LED 가 작동을 한다. IR LED 를 통해 방출된

빛이 장애물에 의해 반사되면 이를 Photodiode 를 통해 다시 읽는다.

< 아두이노 연결 구성 >

ww

w.fi

rstb

ot.c

o.kr

Page 15: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

15 | 페 이 지

< IR Obstacle Avoidance Sensor 동작 스캐치 예제 >

IR Obstacle Avoidance Sensor Arduino UNO

GND GND

+ 5V

OUT D3

EN 연결안함

int Led=13;

int buttonpin=3;

int val;

void setup()

{

pinMode(Led,OUTPUT);

pinMode(buttonpin,INPUT);

}

void loop()

{

val=digitalRead(buttonpin);

if(val==HIGH)

{

digitalWrite(Led,HIGH); // 감지했을때 LED ON

}

else

{

digitalWrite(Led,LOW); // 감지못할때 LED OFF

}

}

ww

w.fi

rstb

ot.c

o.kr

Page 16: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

16 | 페 이 지

7. 화염 감지 센서 ( Flame Fire Detection Sensor ) - (KY-026)

적외선LED를 통해 불꽃에서 감지되는 적외선 파장을 감지하여 이를 아날로그 혹은 디지털 신

호로 변환해 주는 구조이다. 기본적으로 빛을 받으면 전기에너지로 변환시켜 증폭하는 작용을

하며 빛을 많이 받을 수록 생성되는 전기 에너지가 커진다.

불꽃도 결국은 빛 이므로 이를 감지하여 화재여부를 감지하는 센서로 사용이 된다.

< 아두이노 연결 구성 >

Flame Fire Detection Sensor Arduino UNO

A0 A0

GND GND

+ 5V

D0 D2

ww

w.fi

rstb

ot.c

o.kr

Page 17: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

17 | 페 이 지

< Flame Fire Detection Sensor 동작 스캐치 예제 >

int Led=13;

int OutputDO=2;

int OutputAO=A0;

int val;

float sensor;

void setup (){

pinMode (Led, OUTPUT) ;

pinMode (OutputDO, INPUT) ;

pinMode (OutputAO, INPUT) ;

Serial.begin(9600);

}

void loop (){

sensor = analogRead(OutputAO);

Serial.println(sensor);

val = digitalRead (OutputDO) ;

if (val == HIGH) // 불꽃신호감지시

{

digitalWrite (Led, HIGH); // LED ON

}

else

{

digitalWrite (Led, LOW); // LED OFF

}

delay(1000);

}

ww

w.fi

rstb

ot.c

o.kr

Page 18: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

18 | 페 이 지

8. 리니어 홀 자기 센서 ( linear hall magnetic Sensor ) - (KY-024)

리니어 홀 자기 센서는 자석과 같은 자성에 반응하는 센서이다. 자성이 없을 경우, N극 과

S극에 따라 홀센서 방향과 위치, 자석의 방향과 위치에 따라 값이 변한다.

< 아두이노 연결 구성 >

linear hall magnetic Sensor Arduino UNO

A0 A0

GND GND

+ 5V

ww

w.fi

rstb

ot.c

o.kr

Page 19: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

19 | 페 이 지

< linear hall magnetic Sensor 동작 스캐치 예제 >

int S = A0;

void setup()

{

Serial.begin(9600);

Serial.println("Linear Hall Sensor");

pinMode(S, INPUT);

}

void loop()

{

Serial.print("S=");

Serial.println(analogRead(S), DEC); // 반응할때의 값 출력

delay(100);

}

ww

w.fi

rstb

ot.c

o.kr

Page 20: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

20 | 페 이 지

9. 금속 터치 센서 ( Metal Touch Sensor ) - (KY-036)

인체나 자성과 금속성을 가진 물체가 접촉 되면 반응을 감지해 신호를 출력 한다.

< 아두이노 연결 구성 >

Metal Touch Sensor Arduino UNO

A0 A0

GND GND

+ 5V

D0 D2

ww

w.fi

rstb

ot.c

o.kr

Page 21: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

21 | 페 이 지

< Metal Touch Sensor 동작 스캐치 예제 >

const int S = 2;

const int ledPin = 13;

int sensorstate = 0;

void setup()

{

pinMode(ledPin, OUTPUT);

pinMode(S, INPUT);

}

void loop()

{

sensorstate = digitalRead(S);

if (sensorstate == HIGH){

digitalWrite(ledPin, HIGH); // 감지시 LED ON

}

else{

digitalWrite(ledPin, LOW); // 미감지시 LED OFF

}

}

ww

w.fi

rstb

ot.c

o.kr

Page 22: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

22 | 페 이 지

10. 디지털 온도 센서 ( Digital temperature Sensor ) - (KY-028)

센서 주위 환경의 온도를 측정, 확인 할 수 있다. 온도계 제작 등의 프로젝트로 활용 할수있다.

< 아두이노 연결 구성 >

Digital temperature Sensor Arduino UNO

A0 A0

GND GND

+ 5V

D0 -

ww

w.fi

rstb

ot.c

o.kr

Page 23: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

23 | 페 이 지

< Digital temperature Sensor 동작 스캐치 예제 >

int temp = A0;

void setup()

{

Serial.begin(115200);

pinMode(temp, INPUT);

}

int adcvalue = 0;

void loop()

{

adcvalue = analogRead(temp);

Serial.print("Temp=");

Serial.print(adcvalue, DEC);

adcvalue = GetTemper(adcvalue);

Serial.print(", T=");

Serial.print(adcvalue / 10, DEC);

Serial.print(".");

Serial.println(adcvalue % 10, DEC);

delay(100);

}

int GetTemper(int v)

{

// 29.0 도 일때 adc 값 172

// 34.1 도 일때 adc 값 160

return ( v-172 )* ((341 - 290) / (160 - 172)) + 290;

}

ww

w.fi

rstb

ot.c

o.kr

Page 24: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

24 | 페 이 지

11. 피에조 부저 모듈 ( Piezo buzzer Module ) - (KY-012)

피에조 부저는 피에조 효과를 이용한 소자인데 피에조 효과란 수정, 세라믹과 같은 일부

물질의 경우 전기적 신호를 주면 물질이 응축, 신장을 하는 효과를 말한다.

여기에 판을 붙여주면 소리가 나는데 이것이 피에조 부저이다. 내부에 회로가 있어 전원을

연결하면 스스로 소리를 낸다. 피에조 부저는 케이스와 판의 크기를 조절해서 특정한

주파수에서 공진이 발생해서 큰소리가 나도록 기구적으로 만든다.

Active 부저와 같은 말로 사용된다.

< 아두이노 연결 구성 >

Piezo buzzer Module Arduino UNO

S D12

+ 5V

- GND

ww

w.fi

rstb

ot.c

o.kr

Page 25: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

25 | 페 이 지

< Piezo buzzer Module 동작 스캐치 예제 >

/* Piezo buzzer 를 테스트할 때 간혹 buzzer 의 +, - 가 바뀌어 있는 경우가

있다. 소리가 나지 않거나 할 때 +,- 를 바꿔본다 */

int speakerpin = 12;

int note[] = {2093,2349,2637,2793,3136,3520,3951,4186}; //도레미파솔라시도 값 배열 생성

void setup()

{

int elementCount = sizeof(note) / sizeof(int);

for (int i=0; i < elementCount; i++) //소리(배열값) play

{

tone(speakerpin,note[i],500);

delay(750);

}

}

void loop()

{

}

ww

w.fi

rstb

ot.c

o.kr

Page 26: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

26 | 페 이 지

12. 수동 부저 모듈 ( Passive buzzer Module ) - (KY-006)

수동 부저는 주파수를 만들어 전류를 흘려주면 해당 주파수 로 소리를 낸다.

내장된 회로가 없어 스스로 소리를 낼 수는 없지만 코딩을 통해 원하는 음역 의

소리를 낼 수 있다

< 아두이노 연결 구성 >

Passive buzzer Module Arduino UNO

S D8

+ 5V

- GND

ww

w.fi

rstb

ot.c

o.kr

Page 27: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

27 | 페 이 지

< Passive Buzzer Module 동작 스케치 예제 >

int buzzer = 8;

void setup()

{

pinMode(buzzer, OUTPUT);

}

void loop()

{

for (int i = 0; i < 80; i++){ // 1번 소리 생성

digitalWrite(buzzer, HIGH);

delay(1);

digitalWrite(buzzer, LOW);

delay(1);

}

delay(50);

for (int i = 0; i < 100; i++){ 2번 소리 생성

digitalWrite(buzzer, HIGH);

delay(2);

digitalWrite(buzzer, LOW);

delay(2);

}

delay(100);

}

ww

w.fi

rstb

ot.c

o.kr

Page 28: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

28 | 페 이 지

13. RGB 3컬러 LED 모듈 ( RGB 3 Color LED Module ) - (KY-016)

RED, GREEN, BLUE 세종류의 광원을 이용하여 색을 혼합하며 여러가지 색상을 표현 할 수 있다.

칼라 LED에 3개의 PWM 채널이 연결되기 때문에 총 256*256*256=16,777,216가지의 조합이

만들어 질 수 있다.

< 아두이노 연결 구성 >

RGB 3 Color LED Module Arduino UNO

R D11

G D9

B D10

GND GND

ww

w.fi

rstb

ot.c

o.kr

Page 29: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

29 | 페 이 지

< RGB 3 Color LED Module 동작 스케치 예제 >

int redpin = 11; // red LED

int bluepin =10; //blue LED

int greenpin = 9;// green LED

int val;

void setup(){

pinMode(redpin, OUTPUT);

pinMode(bluepin, OUTPUT);

pinMode(greenpin, OUTPUT);

Serial.begin(9600);

}

void loop(){ // 어두어졌다 밝아졌다 반복

for(val = 255; val > 0; val--) // 점점 어두워짐

{

analogWrite(redpin, val); // PWM value for red

analogWrite(bluepin, 255 - val); // PWM value for blue

analogWrite(greenpin, 128 - val); // PWM value for green

Serial.println(val); //print current value

delay(1);

}

for(val = 0; val < 255; val++) // 점점 밝아짐

{

analogWrite(redpin, val);

analogWrite(bluepin, 255 - val);

analogWrite(greenpin, 128 - val);

Serial.println(val);

delay(1);

}

}

ww

w.fi

rstb

ot.c

o.kr

Page 30: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

30 | 페 이 지

14. SMD RGB 3컬러 LED 모듈 ( SMD RGB 3 Color LED Module ) - (KY-009)

RED, GREEN, BLUE 세종류의 광원을 이용하여 색을 혼합하며 여러가지 색상을 표현 할 수 있다.

SMD Type 의 LED 를 사용한 모듈이다.

칼라 LED에 3개의 PWM 채널이 연결되기 때문에 총 256*256*256=16,777,216가지의 조합이

만들어 질 수 있다.

< 아두이노 연결 구성 >

SMD RGB 3 Color LED Module Arduino UNO

R D11

G D9

B D10

GND GND ww

w.fi

rstb

ot.c

o.kr

Page 31: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

31 | 페 이 지

< SMD RGB 3 Color LED Module 동작 스케치 예제 >

int redpin = 11; // red LED

int bluepin =10; //blue LED

int greenpin = 9;// green LED

int val;

void setup(){

pinMode(redpin, OUTPUT);

pinMode(bluepin, OUTPUT);

pinMode(greenpin, OUTPUT);

Serial.begin(9600);

}

void loop(){ // 어두어졌다 밝아졌다 반복

for(val = 255; val > 0; val--) // 점점 어두워짐

{

analogWrite(redpin, val); // PWM value for red

analogWrite(bluepin, 255 - val); // PWM value for blue

analogWrite(greenpin, 128 - val); // PWM value for green

Serial.println(val); //print current value

delay(1);

}

for(val = 0; val < 255; val++) // 점점 밝아짐

{

analogWrite(redpin, val);

analogWrite(bluepin, 255 - val);

analogWrite(greenpin, 128 - val);

Serial.println(val);

delay(1);

}

}

ww

w.fi

rstb

ot.c

o.kr

Page 32: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

32 | 페 이 지

15. 2컬러 3mm LED 모듈 ( Dual Color LED Module – 3mm ) - (KY-029)

1개의 LED 로 RED 와 Green 두가지 색상을 가지고 analogWrite 함수로 밝기를

조절 해 볼 수 있다.

< 아두이노 연결 구성 >

Dual Color LED Module Arduino UNO

- GND

G D10

R D11

ww

w.fi

rstb

ot.c

o.kr

Page 33: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

33 | 페 이 지

< Dual Color LED Module 동작 스케치 예제 >

int redpin = 11; //red LED

int greenpin = 10; //green LED

int val;

void setup ()

{

pinMode (redpin, OUTPUT);

pinMode (greenpin, OUTPUT);

}

void loop () // 어두워졌다 밝아졌다 반복

{

for (val = 255; val> 0; val--) // 점점 어두워짐

{

analogWrite (greenpin, val);

analogWrite (redpin, 255-val);

delay (15);

}

for (val = 0; val <255; val++) // 점점 밝아짐

{

analogWrite (greenpin, val);

analogWrite (redpin, 255-val);

delay (15);

}

}

ww

w.fi

rstb

ot.c

o.kr

Page 34: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

34 | 페 이 지

16. 2컬러 5mm LED 모듈 ( Dual Color LED Module – 5mm ) - (KY-011)

1개의 LED 로 RED 와 Green 두가지 색상을 가지고 analogWrite 함수로 밝기를

조절 해 볼 수 있다.

< 아두이노 연결 구성 >

Dual Color LED Module Arduino UNO

- GND

G D10

R D11

ww

w.fi

rstb

ot.c

o.kr

Page 35: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

35 | 페 이 지

< Dual Color LED Module 동작 스케치 예제 >

int redpin = 11; // red LED

int greenpin = 10; // green LED

int val;

void setup ()

{

pinMode (redpin, OUTPUT);

pinMode (greenpin, OUTPUT);

}

void loop () // 어두어졌다 밝아졌다 반복

{

for (val = 255; val> 0; val--) // 점점 어두워짐

{

analogWrite (greenpin, val);

analogWrite (redpin, 255-val);

delay (15);

}

for (val = 0; val <255; val++) // 점점 밝아짐

{

analogWrite (greenpin, val);

analogWrite (redpin, 255-val);

delay (15);

}

}

ww

w.fi

rstb

ot.c

o.kr

Page 36: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

36 | 페 이 지

17. 마그네틱 리드 센서 ( Magnetic Reed switch Sensor ) - (KY-025)

유리관 속에 밀봉된 2개의 자성 리드 조각이 스프링의 탄성에 의해 열린 상태로 되어 있다.

스위치에 자석을 접근 시키면 2개의 리드 조각을 통하여 자기회로가 되어 2개의 리드는

끌어당겨져 접점을 닫는다. 다시 자석을 멀리하면 탄성으로 인해서 열린 상태로 돌아간다.

< 아두이노 연결 구성 >

Magnetic Reed switch Sensor Arduino UNO

G GND

+ 5V

D0 D2

ww

w.fi

rstb

ot.c

o.kr

Page 37: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

37 | 페 이 지

< Magnetic Reed switch Sensor 동작 스케치 예제 >

const int S = 2;

const int ledPin = 13;

int sensorstate = 0;

void setup()

{

pinMode(ledPin, OUTPUT);

pinMode(S, INPUT);

}

void loop()

{

sensorstate = digitalRead(S);

if(sensorstate == HIGH)

{

digitalWrite(ledPin, HIGH); // 접점 연결시 LED on

}

else

{

digitalWrite(ledPin, LOW); // 접점 떨어질때 LED off

}

}

ww

w.fi

rstb

ot.c

o.kr

Page 38: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

38 | 페 이 지

18. 마그네틱 미니 리드 스위치 센서 ( Magentic Mini Reed switch Sensor ) - (KY-021)

유리관 속에 밀봉된 2개의 자성 리드 조각이 스프링의 탄성에 의해 열린 상태로 되어있다.

스위치에 자석을 접근시키면 2개의 리드 조각을 통하여 자기회로가 되어 2개의 리드는

끌어당겨져 접점을 닫는다. 다시 자석을 멀리하면 탄성으로 인해서 열린 상태로 돌아간다.

< 아두이노 연결 구성 >

Magnetic Mini Reed switch Sensor Arduino UNO

- GND

+ 5V

S D2

ww

w.fi

rstb

ot.c

o.kr

Page 39: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

39 | 페 이 지

< Magnetic Mini Reed switch Sensor 동작 스케치 예제 >

int reedSwitch = 2;

int reedState;

int LED =13;

void setup()

{

pinMode(reedSwitch, INPUT);

pinMode(LED,OUTPUT);

}

void loop()

{

reedState = digitalRead(reedSwitch);

switch(reedState){

case LOW:

digitalWrite(LED,HIGH); // 접점 연결시 led on

break;

case HIGH:

digitalWrite(LED,LOW); // 접점 떨어질때 led off

break;

}

}

ww

w.fi

rstb

ot.c

o.kr

Page 40: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

40 | 페 이 지

19. 손가락 심박 센서 ( Finger heartbeat measurement Sensor ) - (KY-039)

적외선 송수신을 이용하여 심장박동을 측정 가능하게 하는 센서이다.

동맥 부분에 빛(적외선)을 쏴주고, 정맥 부분에서 포토 디텍터로 빛의 값을 읽어 계산을 한다.

< 아두이노 연결 구성 >

Finger heartbeat measurement Sensor Arduino UNO

- GND

+ 5V

S A0

ww

w.fi

rstb

ot.c

o.kr

Page 41: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

41 | 페 이 지

< Finger heartbeat measurement Sensor 동작 스케치 예제 >

int sensorPin = 0;

double alpha = 0.75;

int period = 100;

double change = 0.0;

double minval = 0.0;

void setup ()

{

Serial.begin (9600);

}

void loop ()

{

static double oldValue = 0;

static double oldChange = 0;

int rawValue = analogRead (sensorPin);

double value = alpha * oldValue + (1 - alpha) * rawValue;

Serial.print (rawValue);

Serial.print (",");

Serial.println (value);

oldValue = value;

delay (period);

}

ww

w.fi

rstb

ot.c

o.kr

Page 42: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

42 | 페 이 지

20. 7 Color 플래시 LED 모듈 ( 7 Color Colour Flashing LED Module ) - (KY-034)

하나의 LED 전구에 RGB 색상이 7가지 Color 로 조합, 연속으로 방출되어 화려한

색상의 빛이 발산된다.

< 아두이노 연결 구성 >

7 Color Colour Flashing LED Module Arduino UNO

S D11

- GND

ww

w.fi

rstb

ot.c

o.kr

Page 43: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

43 | 페 이 지

< 7 Color Colour Flashing LED Module 동작 스케치 예제 >

void setup()

{

pinMode(11, OUTPUT);

}

void loop()

{

digitalWrite(11, HIGH); // LED on

delay(1000);

digitalWrite(11, LOW); // LED off

delay(1000);

}

ww

w.fi

rstb

ot.c

o.kr

Page 44: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

44 | 페 이 지

21. 레이저 발광 모듈 ( Laser transmitter Module ) - (KY-008)

레이저는 유도방출에 의해 빛을 증폭 또는 발진하는 장치로, 메이저(maser)의 동작원리를

빛의 영역으로 확장한 것으로 「유도방출에 의한 빛의 증폭」

(light amplification by stimulated emission of radiation)의 머리글자를 딴 용어로 알려져 있다.

레이저의 광원은 눈에 치명적인 손상을 일으킬수 있어 반드시 사용에 주의를 하여야 한다.

< 아두이노 연결 구성 >

Laser transmitter Module Arduino UNO

S D8

+ 5V

- GND

ww

w.fi

rstb

ot.c

o.kr

Page 45: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

45 | 페 이 지

< Laser transmitter Module 동작 스케치 예제 >

const int SignPin=8;

const int ledPin=13;

void setup()

{

pinMode(SignPin,OUTPUT);

pinMode(ledPin,OUTPUT);

digitalWrite(ledPin,LOW);

Serial.begin(9600);

}

void loop()

{

digitalWrite(SignPin,HIGH); // Laser 방출

digitalWrite(ledPin,HIGH); // LED ON

delay(1000);

digitalWrite(SignPin,LOW ); // Laser OFF

digitalWrite(ledPin,LOW); // LED OFF

delay(1000);

}

ww

w.fi

rstb

ot.c

o.kr

Page 46: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

46 | 페 이 지

22. 리셋 버튼 모듈 ( Key switch Module ) - (KY-004)

버튼을 누르고 있을 때만 ON이 유지되는 스위치 이다.

버튼에서 손을 떼면 스위치가 원상복귀됨과 동시에 OFF로 전환 된다.

< 아두이노 연결 구성 >

Key switch Module Arduino UNO

S D2

+ 5V

- GND

ww

w.fi

rstb

ot.c

o.kr

Page 47: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

47 | 페 이 지

< Key switch Module 동작 스케치 예제 >

int led = 13;

int buttonpin = 3;

int val;

void setup()

{

pinMode(led,OUTPUT);

pinMode(buttonpin,INPUT);

}

void loop()

{

val = digitalRead(buttonpin); // 버튼 상태 check

if(val==HIGH) // 버튼이 눌리면 LED ON

{

digitalWrite(led,HIGH);

}

else // 버튼이 눌리지 않으면 LED OFF

{

digitalWrite(led,LOW);

}

}

ww

w.fi

rstb

ot.c

o.kr

Page 48: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

48 | 페 이 지

23. 진동감지센서 ( Vibration detection Sensor ) - (KY-002)

진동센서는 흔들어보면 물체가 내부에서 움직이는 느낌이 난다. 그것이 흔들리면서

진동(움직임)을 감지 한다.

진동을 감지(그림-Connect)하면 디지털신호로 Signal 을 보내게 되어 있다.

< 아두이노 연결 구성 >

Vibration detection Sensor Arduino UNO

S D7

+ 5V

- GND

ww

w.fi

rstb

ot.c

o.kr

Page 49: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

49 | 페 이 지

< Vibration detection Sensor 동작 스케치 예제 >

int Led=13;

int vib=7;

int val;

void setup()

{

pinMode(Led,OUTPUT);

pinMode(vib,INPUT);

}

void loop()

{

val=digitalRead(vib);

if(val==HIGH) // 진동 없음( NO Connect )

{

digitalWrite(Led,LOW); // LED OFF

}

else // 진동 감지 ( Connect )

{

digitalWrite(Led,HIGH); // LED ON

}

}

ww

w.fi

rstb

ot.c

o.kr

Page 50: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

50 | 페 이 지

24. 로터리 인코더 모듈 (Rotary encoder Module) - (KY-040)

로터리 인코더는 전기모터나 엔진의 회전각도 또는 회전속도를 측정할 때 사용되는

센서 이다. 축이 일정량의 각도를 회전할 때마다 펄스를 발생하며 펄스 수를 계산함으로써

축의 각도를 검출 할 수 있다.

< 아두이노 연결 구성 >

Rotary encoder Module Arduino UNO

GND GND

+ 5V

DT D3

CLK D2

ww

w.fi

rstb

ot.c

o.kr

Page 51: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

51 | 페 이 지

< Rotary encoder Module 동작 스케치 예제 >

int clock = 2; // Define encoder pin A

int data = 3; // Define encoder pin B

int count = 0; // pre-init the count to zero

int c = LOW; // pre-init the state of pin A low

int cLast = LOW; // and make its last val the same - ie no change

int d = LOW; // and make the data val low as well

void setup(){

pinMode (clock,INPUT);

pinMode (data,INPUT);

Serial.begin (9600);

}

void loop(){

c = digitalRead(clock); // clock 값 Read

d = digitalRead(data); // data 값 Read

if (c != cLast){ // clock pin has changed value... now we can do stuff

d = c^d; // work out direction using an XOR

if ( d ){

count--; // non-zero is Anti-clockwise

}

else{

count++; // zero is therefore anti-clockwise

}

Serial.print ("Jog:: count:");

Serial.println(count);

cLast = c; // store current clock state for next pass

}

}

ww

w.fi

rstb

ot.c

o.kr

Page 52: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

52 | 페 이 지

25. 매직 라이트컵 센서 ( Magic light cup Sensor ) - (KY-027)

수은 기울기 센서와 LED를 가진 2쌍이 하나가 되는 센서 이다.

해당 센서 2개를 연결한 후 한쪽으로 기울이게 되면 기울인 쪽 방향의 LED로 빛이 이동이 된다.

센서를 기울일 때 접점의 상태를 이용 할 수 있다.

< 아두이노 연결 구성 >

ww

w.fi

rstb

ot.c

o.kr

Page 53: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

53 | 페 이 지

Magic Light cup Sensor Arduino UNO

- GND

+ 5V

S 1번모듈: D7, 2번모듈: D4

L 1번모듈: D5, 2번모듈: D6

< Magic light cup Sensor 동작 스케치 예제 >

//1번 모듈 D7, D5

//2번 모듈 D4, D6

int SPinA = 7;

int SPinB = 4;

int LedPinA = 5;

int LedPinB = 6;

int buttonStateA = 0;

int buttonStateB = 0;

int brightness = 0;

void setup()

{

pinMode(LedPinA, OUTPUT);

pinMode(LedPinB, OUTPUT);

pinMode(SPinA, INPUT);

pinMode(SPinB, INPUT);

}

ww

w.fi

rstb

ot.c

o.kr

Page 54: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

54 | 페 이 지

void loop()

{

buttonStateA = digitalRead(SPinA); // 1번 수은 스위치 값

if (buttonStateA == HIGH && brightness != 255)

{

brightness ++; // 1번 수은 스위치 OFF, 밝기가 최 치가 아니면 밝기 UP

}

buttonStateB = digitalRead(SPinB); // 2번 수은 스위치 값

if (buttonStateB == HIGH && brightness != 0)

{

brightness -- ; //2번 수은 스위치 OFF/ 불이 꺼져있지 않으면 밝기 down

}

// 1,2번 각각 반 가 되도록 LED 밝기값 설정

analogWrite(LedPinA, brightness);

analogWrite(LedPinB, 255 - brightness);

delay(25);

}

ww

w.fi

rstb

ot.c

o.kr

Page 55: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

55 | 페 이 지

26. 수은 기울기 스위칭 센서 ( Mercury open optical Sensor ) - (KY-017)

센서가 똑바로 서 있으면 수은이 Lead 양쪽에 닿지 않아(Lead 한쪽만 닿아도) OFF

상태가 되고 Lead 양쪽 모두 에 수은이 닿게 되면 ON이 된다.

< 아두이노 연결 구성 >

Mercury open optical Sensor Arduino UNO

S D2

+ 5V

- GND

ww

w.fi

rstb

ot.c

o.kr

Page 56: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

56 | 페 이 지

< Mercury open optical Sensor 동작 스케치 예제 >

const int Sen = 2;

const int ledpin = 13;

int sensorstate = 0;

void setup(){

pinMode(ledpin, OUTPUT);

pinMode(Sen, INPUT);

}

void loop() {

sensorstate = digitalRead(Sen); // 센서의 데이터 값

if (sensorstate == HIGH) // 수은기울기 센서가 신호 OFF

{

digitalWrite(ledpin, HIGH); // LED ON

}

else // 수은기울기 센서 신호 ON

{

digitalWrite(ledpin, LOW); // LED OFF

}

}

ww

w.fi

rstb

ot.c

o.kr

Page 57: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

57 | 페 이 지

27. 기울기 센서 ( Tilt switch Sensor ) - (KY-020)

기울어짐에 따라 on/off 되는 센서이다. 일반 스위치처럼 눌러서 on/off 시키는 것이 아니라,

기울어짐에 따라 on/off 가 된다. 해당 센서는 모듈이 기울어지면 내부 스위치가 작동하는

방식으로 기울어진 각도등 상세값은 알수 없으며 기울어졌는지만 확인이 가능하다.

< 아두이노 연결 구성 >

Tilt Switch Sensor Arduino UNO

S D7

+ 5V

- GND

ww

w.fi

rstb

ot.c

o.kr

Page 58: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

58 | 페 이 지

< Tilt Switch Sensor 동작 스케치 예제 >

int tilt_din=7;

void setup()

{

pinMode(tilt_din,INPUT);

Serial.begin(9600);

}

void loop()

{

if(digitalRead(tilt_din)==LOW) // 내부 스위치 ON

{

Serial.println("shock");

}

else

{

Serial.println("Not shock");

}

delay(500);

}

ww

w.fi

rstb

ot.c

o.kr

Page 59: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

59 | 페 이 지

28. 조도 센서 ( Photoresistor Sensor ) - (KY-018)

빛의 양, 세기를 감지하는 센서로 실내, 실외 환경의 빛의 양을 측정할 수 있으며 빛의

밝기에 따라 변화되는 광센서(CDS)의 입력 값을 아두이노 시리얼 모니터를 통해 확인

할 수 있다.

< 아두이노 연결 구성 >

Photoresistor Sensor Arduino UNO

S A0

+ 5V

- GND

ww

w.fi

rstb

ot.c

o.kr

Page 60: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

60 | 페 이 지

< Photoresistor Sensor 동작 스케치 예제 >

int potpin = 0;

int ledpin=13;

int val = 0;

void setup()

{

pinMode(ledpin, OUTPUT);

Serial.begin(9600);

}

void loop()

{

val = analogRead(potpin); // 조도 값 Read

Serial.println(val);

delay(10);

}

ww

w.fi

rstb

ot.c

o.kr

Page 61: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

61 | 페 이 지

29. 디지털 온습도 센서 ( DHT11 Temp and Humidity Sensor ) - (KY-015)

상 습도와 온도를 측정해 주는 센서로 장시간 사용해도 변화율이 낮다.

온도는 2 °C, 습도는 ± 5% 정도의 오차범위를 갖는다.

< 아두이노 연결 구성 >

DHT11 Temp and Humidity Sensor Arduino UNO

VCC 5V

DATA D2

GND GND

ww

w.fi

rstb

ot.c

o.kr

Page 62: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

62 | 페 이 지

< DHT11 Temp and Humidity Sensor 동작 스케치 예제 >

#include <DHT11.h> // DHT11 Library (DHT11 라이브러리 추가)

int pin=2;

DHT11 dht11(pin);

void setup()

{

Serial.begin(9600);

}

void loop()

{

int err;

float temp, humi;

if((err=dht11.read(humi, temp))==0)

{

Serial.print("temperature:");

Serial.print(temp); // 온도

Serial.print(" humidity:");

Serial.print(humi); // 습도

Serial.println();

}

else

{

Serial.println();

Serial.print("Error No :");

Serial.print(err);

Serial.println();

}

delay(DHT11_RETRY_DELAY);

}

ww

w.fi

rstb

ot.c

o.kr

Page 63: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

63 | 페 이 지

30. 아날로그 홀 자기 센서 ( Analog Hall Effect Magnetic Sensor ) - (KY-035)

홀효과를 이용해 자기장의 세기 측정 및 극성을 감지할 수 있다.

홀효과란 전류와 자기장에 의해 모든 전도체 물질에 나타나는 효과이다. 전류가 흐르는 전기

전도체에 수직하게 자기장이 걸릴때, 전류와 자기장의 방향에 수직하게 걸리는 전압을

홀전압이라 하며, 이러한 효과를 홀 효과라 한다. 회전하는 물체의 회전속도를 측정하는데

많이 사용된다.

< 아두이노 연결 구성 >

ww

w.fi

rstb

ot.c

o.kr

Page 64: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

64 | 페 이 지

Analog Hall Effect Magnetic Sensor Arduino UNO

- GND

VCC A0

S 5V

< Analog Hall Effect Magnetic Sensor 동작 스케치 예제 >

int sensorPin = A0;

int ledPin = 13;

int sensorValue = 0;

void setup ()

{

pinMode (ledPin, OUTPUT);

Serial.begin (9600);

}

void loop ()

{

sensorValue = analogRead (sensorPin);

digitalWrite (ledPin, HIGH);

delay (sensorValue); // sensorValue 값으로 Delay 설정

digitalWrite (ledPin, LOW);

delay (sensorValue); // sensorValue 값으로 Delay 설정

Serial.println (sensorValue, DEC);

}

ww

w.fi

rstb

ot.c

o.kr

Page 65: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

65 | 페 이 지

31. 홀 자기 센서 ( Hall Magnetic Sensor ) - (KY-003)

자기장의 세기에 따라 전압이 변하는 소자로서 펄스 변조, 유량 및 유속 감지, 자동차

속도 측정 등 회전체의 회전수 감지등의 다양한 분야에 사용된다.

< 아두이노 연결 구성 >

Hall Magnetic Sensor Arduino UNO

- GND

VCC 5V

S D3

ww

w.fi

rstb

ot.c

o.kr

Page 66: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

66 | 페 이 지

< Hall Magnetic Sensor 동작 스케치 예제 >

int led = 13;

int sensor = 3;

int val;

void setup()

{

pinMode(led, OUTPUT);

pinMode(sensor, INPUT);

}

void loop()

{

val = digitalRead(sensor);

if(val == HIGH)

{

digitalWrite(Led, HIGH); // 감지시 LED ON

}

else

{

digitalWrite(Led, LOW);

}

}

ww

w.fi

rstb

ot.c

o.kr

Page 67: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

67 | 페 이 지

32. 디지털 온도 센서 ( Digital temperature Sensor DS18B20 ) - (KY-001)

DS18B20 온도센서 칩을 사용하여 센서 주위 환경의 온도를 측정, 확인 할 수 있는 센서

이다. -55℃ ~ +125℃ 의 온도범위 측정이 가능하다. 해당 센서는 I2C프로토콜을 사용하여

온도값을 받아 온다.

< 아두이노 연결 구성 >

Digital temperature Sensor DS18B20 Arduino UNO

- GND

VCC 5V

S D2

ww

w.fi

rstb

ot.c

o.kr

Page 68: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

68 | 페 이 지

< Digital temperature Sensor DS18B20 동작 스케치 예제 >

#include <OneWire.h> // OneWire Library 사용

OneWire ds(2);

void setup(){

Serial.begin(9600);

}

void loop(){

byte i;

byte present = 0;

byte data[12];

byte addr[8];

float Temp;

if (!ds.search(addr)){

ds.reset_search();

return;

}

ds.reset();

ds.select(addr);

// start conversion, with parasite power on at the end

ds.write(0x44,1);

delay(1000);

present = ds.reset();

ds.select(addr);

ds.write(0xBE); // Read Scratchpad

ww

w.fi

rstb

ot.c

o.kr

Page 69: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

69 | 페 이 지

for (i = 0; i < 9; i++){ //Sensor 값 배열 정리

data[i] = ds.read();

}

Temp=(data[1]<<8)+data[0];

Temp=Temp/16;

/*위에서 받아온 값중에 1번 배열에 있는 값을 256배

(2 의 8승) 해주고 0번 배열에 있는 값과 더해준다.

그 값을 16으로 나누면 섭씨 온도가 된다.*/

// 섭씨 출력

Serial.print("C=");

Serial.print(Temp);

Serial.print(", ");

// 섭씨를 화씨로 변환

Temp=Temp*1.8+32;

// 화씨 출력

Serial.print("F=");

Serial.print(Temp);

Serial.println(" ");

}

ww

w.fi

rstb

ot.c

o.kr

Page 70: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

70 | 페 이 지

33. 아날로그 온도 센서 ( Analog temperature Sensor ) - (KY-013)

NTC 서미스터를 사용하여 온도가 올라가면 저항이 감소하고, 반 로 온도가 내려가면

저항이 증가하는 방식이며 전압을 ADC로 읽어 저항값을 구한다음 온도로 변환을 시켜준다.

steinhart-hart equation 이라는 공식을 적용하여 온도를 계산 할 수 있다.

< 아두이노 연결 구성 >

Analog temperature Sensor Arduino UNO

- GND

VCC 5V

S A0

ww

w.fi

rstb

ot.c

o.kr

Page 71: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

71 | 페 이 지

< Analog temperature Sensor 동작 스케치 예제 >

int sensorPin = 0;

void setup()

{

Serial.begin(9600);

}

void loop()

{

int reading = analogRead(sensorPin);

// converting that reading to voltage, for 3.3v arduino use 3.3

float voltage = reading * 5.0;

voltage /= 1024.0;

Serial.print(voltage);

Serial.println(" volts");

// now print out the temperature

//converting from 10 mv per degree wit 500 mV offset

float temperatureC = (voltage - 0.5) * 100 ; //to degrees ((voltage - 500mV) times 100)

Serial.print(temperatureC);

Serial.println(" degrees C");

float temperatureF = (temperatureC * 9.0 / 5.0) + 32.0;

// now convert to Fahrenheit

Serial.print(temperatureF);

Serial.println(" degrees F");

delay(1000);

}

ww

w.fi

rstb

ot.c

o.kr

Page 72: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

72 | 페 이 지

34. 적외선 방출(송신) 센서 ( IR emission Sensor ) - (KY-005)

적외선 송신모듈로 적외선을 쏘는 모듈이다. 리모컨과 같은 원리이다.

적외선은 일반LED처럼 눈으로 식별이 되지 않지만 스마트폰 카메라를 켜고 적외선

송신모듈에 갖다 고 자세히 보면 확인 할 수 있다.

적외선 수신 센서와 연동하여 전송하는 data 를 확인 할 수 있다.

< 아두이노 연결 구성 >

IR emission Sensor Arduino UNO

S D3

VCC 5V

- GND

ww

w.fi

rstb

ot.c

o.kr

Page 73: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

73 | 페 이 지

< IR emission Sensor 동작 스케치 예제 >

#include <IRremote.h> // IRremot library ( IRremot 라이브러리 호출 )

IRsend irsend;

void setup()

{

serial.begin(9600);

}

void loop()

{

// 한번에 3번씩 16진수 a90 을 전송

for(int i = 0; i < 3; i++)

{

irsend.sendSony(0xa90, 12);

delay(40);

}

delay(2000);

}

ww

w.fi

rstb

ot.c

o.kr

Page 74: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

74 | 페 이 지

35. 적외선 수신 센서 ( IR Receiver Sensor ) - (KY-022)

적외선 송신모듈에서 전송한 data 를 수신받아 수신 개체 (아두이노) 로 전송한다.

이전 34번 IR emission sensor 와 조합하여 사용할 수 있으며, 가정에서 사용하는

IR 리모콘등으로 data 를 전송하여 스케치 프로그램 시리얼 모니터로 전송한 data 를

확인 할 수 있다.

< 아두이노 연결 구성 >

IR Receiver Sensor Arduino UNO

S D11

VCC 5V

- GND

ww

w.fi

rstb

ot.c

o.kr

Page 75: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

75 | 페 이 지

< IR Receiver Sensor 동작 스케치 예제 >

#include <IRremote.h> // IRremot library ( IRremot 라이브러리 호출 )

int RECV_PIN = 11;

IRrecv irrecv(RECV_PIN);

decode_results results;

void setup()

{

Serial.begin(9600);

irrecv.enableIRIn(); // Start the receiver

}

void loop()

{

if (irrecv.decode(&results))

{

Serial.println(results.value, HEX);

irrecv.resume(); // Receive the next value

}

delay(100);

}

ww

w.fi

rstb

ot.c

o.kr

Page 76: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

76 | 페 이 지

36. 노크 센서 ( Knock Sensor ) - (KY-031)

플라스틱 안의 금속이 충격 및 진동을 감지하여 이를 출력하는 센서 이다.

진동센서와 작동 원리가 거의 흡사하다.

< 아두이노 연결 구성 >

Knock Sensor Arduino UNO

S D3

VCC 5V

- GND

ww

w.fi

rstb

ot.c

o.kr

Page 77: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

77 | 페 이 지

< Knock Sensor 동작 스케치 예제 >

int Led = 13;

int Nock = 3;

int val;

void setup()

{

pinMode(Led,OUTPUT);

pinMode(Nock,INPUT);

}

void loop()

{

val = digitalRead(Nock);

if(val == HIGH)

{

digitalWrite(Led,HIGH); // 진동 감지시 LED ON

}

else

{

digitalWrite(Led,LOW);

}

}

ww

w.fi

rstb

ot.c

o.kr

Page 78: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

78 | 페 이 지

37. 적외선 포토 인터럽터 센서 (IR Photo Interrupter Sensor ) - (KY-010)

발광 소자(IR LED)와 수광 소자(phototransistor)를 1개의 패키지에 마주보도록 배열하고,

그 사이를 검출물이 통과할 때 빛이 차단되는 현상을 통해 물체의 유무를 검출한다.

이 투과형 포토 센서를 포토 인터럽터라고 하며 기계식 스위치와 달리, 접점이 없는 무접점

스위치 (비접촉형 스위치)이므로 접점의 마찰이 없어 신뢰성이 높다.

< 아두이노 연결 구성 >

IR Photo Interrupter Sensor Arduino UNO

S D3

VCC 5V

- GND

ww

w.fi

rstb

ot.c

o.kr

Page 79: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

79 | 페 이 지

< IR Photo Interrupter Sensor 동작 스케치 예제 >

int led = 13;

int sensor = 3;

void setup()

{

pinMode(led, OUTPUT);

pinMode(sensor, INPUT);

}

void loop()

{

int val = digitalRead(sensor); //포토 인터럽터 센서 측정값

if(val == HIGH) //U자 홈 사이에 물체 들어왔을 경우

{

digitalWrite(led, HIGH); // val 값이 HIGH 이면 LED ON

}

else

{

digitalWrite(led, LOW); // val 값이 HIGH 가 아니면 LED OFF

}

}

ww

w.fi

rstb

ot.c

o.kr

Page 80: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

80 | 페 이 지

38. HC-SR04 초음파 센서 ( HC-SR04 Ultrasonic Sensor )

초음파 센서는 2개의 압전소자(또는 1개의 압전소자와 금속판)로 되어 있으며 2개의 압전

소자로되어 있는 것을 Bimole(바이몰), 1개의 압전소자로 되어 있는 것을 Unimole(유니몰)

이라 부른다. 이것에 초음파가 입사되면 압전소바는 진동해서 전압이 발생되고 역으로 압전

소자에 전압을 인가 하면 초음파가 발생이 된다. 초음파 센서는 센서 자신이 갖고 있는

고유 진동 주파수와 똑같은 주파수의 교류 전압을 가하면 좀더 효율이 좋은 음파를 발생할

수 있다. 물체에서 반사된 음파를 그 로 센서로 입력(진동)시켜서 발생된 전압을 회로에서

처리 함으로서 측정 거리를 계산할수 있게 된다.

< 아두이노 연결 구성 >

ww

w.fi

rstb

ot.c

o.kr

Page 81: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

81 | 페 이 지

HC-SR04 Ultrasonic Sensor Arduino UNO

VCC 5V

Trig D4

Echo D2

GND GND

< HC-SR04 Ultrasonic Sensor 동작 스케치 예제 >

int trigPin = 4;

int echoPin = 2;

void setup(){

Serial.begin(9600);

pinMode(trigPin, OUTPUT); // trigPin 출력

pinMode(echoPin, INPUT); // echoPin 입력

}

void loop(){

float duration, distance;

digitalWrite(trigPin, HIGH);

delay(10);

digitalWrite(trigPin, LOW);

duration = pulseIn(echoPin, HIGH); // echoPin 이 HIGH를 유지한 시간을 저장

// HIGH 였을 때 시간(초음파가 보냈다가 다시 들어온 시간)을 가지고 거리를 계산

// 340은 초당 초음파(소리)의 속도, 10000은 밀리세컨드를 세컨드로

distance = ((float)(340 * duration) / 10000) / 2; // 왕복거리이므로 2로 나눔

Serial.print("Duration:");

Serial.print(duration);

Serial.print("\nDIstance:");

Serial.print(distance);

Serial.println("cm\n");

delay(500);

}

ww

w.fi

rstb

ot.c

o.kr

Page 82: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

82 | 페 이 지

39. L293D 모터 드라이버 ( L293D Motor Driver )

L293D 는 고전압, 고전류를 지원하는 4채널 모터 드라이버이다.

4.5V~36V 까지 전원을 입력할 수 있으며 채널당 600mA의(1.2A peak current) 전류를 인가

할 수 있다. (thermal protection 내장) 주로 큰 용량의 DC/Stepper 모터를 제어하는데 적합하다.

5V servo 모터를 제어하기 위한 2개의 인터페이스가 별도로 있으며 4개의 DC 모터 또는

2개의 stepper 모터를 제어할 수 있다.

Stepper 모터는 single coil, double coil, interleaved stepping 방식의 unipolar, bipolar stepper

모터를 사용할 수 있다.

DC모터와 스텝모터는 5-12VDC 이여야 한다. (3V 모터는 동작하지 않음)

Pulldown resistor 가 내장되어 전원 인가할 때 모터를 보호해준다.

ww

w.fi

rstb

ot.c

o.kr

Page 83: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

83 | 페 이 지

< 아두이노 연결 구성 >

< L293D / DC Motor 동작 스케치 예제 >

int motorpin1 = 3; // L293D OUTPUT1

int motorpin2 = 4; // L293D INPUT2

void setup (){

pinMode(motorpin1,OUTPUT);

pinMode(motorpin2,OUTPUT);

}

void loop (){

digitalWrite(motorpin1,LOW); // 모터 정방향 회전

digitalWrite(motorpin2,HIGH);

delay(1000);

digitalWrite(motorpin1,HIGH); // 모터 역방향 회전

digitalWrite(motorpin2,LOW);

delay(1000);

} ww

w.fi

rstb

ot.c

o.kr

Page 84: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

84 | 페 이 지

40. DC 모터 ( DC Motor )

고정자로 영구자석을 사용하고, 회전자(전기자)로 코일을 사용하여 구성한 것으로, 전기자에

흐르는 전류의 방향을 전환함으로써 자력의 반발, 흡인력으로 회전력을 생성 시킨다.

RC 자동차, Drone, 기타 장난감 등을 비롯하여 여러 방면에서 가장 널리 사용되고 있다.

DC 모터는 회전 제어가 쉽고, 제어용 모터로서 아주 우수한 특성을 가지고 있다.

하지만 그 구조상 브러시(brush)와 정류자(commutator)에 의한 기계식 접점이 있다는 점이다.

이것에 의한 영향은 전류시의 전기불꽃(spark), 회전 소음, 수명이라는 형태로 나타난다.

그리고, 마이크로컴퓨터 제어를 하려는 경우는 "노이즈"가 발생하게 된다. 이 노이즈

책을 위해서는 각 단자와 케이스 사이에 0.01μF∼0.1μF 정도의 세라믹 콘덴서를 직접

부착한다. 이것으로 정류자에서 발생하는 전기불꽃을 흡수하여 노이즈를 억제할 수 있다.

< 아두이노 연결 구성 >

ww

w.fi

rstb

ot.c

o.kr

Page 85: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

85 | 페 이 지

상기 구성은 모터의 속도조절을 하기 위한 구성이다.

모터의 스피드가 증가하는 것을 확인 할 수 있다.

< DC Motor / L293D 동작 스케치 예제 >

// 아두이노 디지털 4,5,6

int motorPin1 = 4;

int motorPin2 = 5;

int motorPinEnable = 6;

void setup(){

pinMode(motorPin1, OUTPUT);

pinMode(motorPin2, OUTPUT);

pinMode(motorPinEnable, OUTPUT);

Serial.begin(9600);

}

void loop(){

int motor_speed;

// 모터 스피드를 250 보다 작으면 0부터 249 까지 스피드 증가

for (motor_speed = 0; motor_speed < 250; motor_speed++)

{

setMotor(true, motor_speed);

Serial.pritnln(motor_speed); // 시리얼 모니터로 스피드 증가 확인

delay(10);

}

}

// 모터 콘트롤 함수

void setMotor(boolean forward, int motor_speed)

{

digitalWrite(motorPin1, forward);

digitalWrite(motorPin2, !forward);

analogWrite(motorPinEnable, motor_speed); // PWM

}

ww

w.fi

rstb

ot.c

o.kr

Page 86: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

86 | 페 이 지

41. 74HC595N 쉬프트 레지스터 ( 74HC595N Shift Resister )

시프트 레지스터는 다른 이름으로 Serial to Parallel Converter 로 불린다.

시리얼(직렬)로 입력되는 데이터를 패러럴(병렬)로 바꿔준다는 말이다.

시프트 레지스터에게 데이터가 전달된다고 알려주는 클럭(clock) 신호와 함께 8개의

핀 출력이 어떻게 되는지 알려주는 시리얼 데이터를 일렬로 보내준다.

8개의 출력을 가지고 있으며 3개의 입력 핀을 가지고 있다. 74HC595N의 동작은

클럭핀(clock pin), 래치핀(latch pin), 데이터핀(data input)으로 동작을 시킨다.

데이터핀에 데이터를 주고 클럭을 주고 래치핀에 신호를 주면 데이터가 74HC595N의

각핀에서 데이터가 병렬로 출력된다.

ww

w.fi

rstb

ot.c

o.kr

Page 87: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

87 | 페 이 지

< 아두이노 연결 구성 , 자료 출처 : bildr.blog >

ww

w.fi

rstb

ot.c

o.kr

Page 88: Sensor Kit for Arduino-41종firstbot.ipdisk.co.kr/publist/HDD1/Link/Manual/41in1... · 2016-11-21 · Sensor Kit (41) for Arduino ( V1.0 ) 2 | 페이지 총 41 개로 구성된 Sensor

Sensor Kit (41) for Arduino ( V1.0 )

88 | 페 이 지

< 74HC595N 쉬프트 레지스터 동작 스케치 예제, 자료 출처 : bildr.blog >

// 상기 표에서 아두이노 연결 ( latch pin, clock pin, data input )

int latchPin = 10;

int clockPin = 9;

int dataPin = 8;

byte leds = 0; // 8개의 LED의 on/off 패턴을 저장하기 위한 변수

void setup() {

pinMode(latchPin, OUTPUT);

pinMode(dataPin, OUTPUT);

pinMode(clockPin, OUTPUT);

}

void loop() {

leds = 0;

up_SR();

delay(500);

for(int i = 0; i < 8; i++)

{

bitSet(leds, i); // bitset함수를 이용하여 leds변수의 비트를 셋팅

up_SR(); // up_SR를 호출, leds변수의 비트패턴을 업데이트

delay(200); // delay time 에 따라 변환 확인

}

}

void up_SR(){

digitalWrite(latchPin, LOW);

// shiftOut : 1.Data, 2.Clock, 3.비트시작위치, 4.쉬프트레지스터 input data

//MSB - Most Significant Bit : 가장 큰 자릿수의 비트, 즉 가장 왼쪽 비트

//LSB - Least Significant Bit : 가장 작은 자릿수의 비트, 즉 가장 오른쪽 비트

//LSBFIRST,MSBFIRST 에 따라 LED 점등순서바뀜

shiftOut(dataPin, clockPin, LSBFIRST, leds);

digitalWrite(latchPin, HIGH);

}

ww

w.fi

rstb

ot.c

o.kr