powerpoint 프레젠테이션 -...
TRANSCRIPT
컬러 LED바 명령어
5-1 컬러 LED바연결하기5-2 컬러 LED바명령어5-3 순차로켜지는신호등5-4 어두워지면켜지는후레쉬등5-5 밝기가조절되는후레쉬5-6 이동점멸및막대그래프5-7 경광등만들기5-8 이퀄라이저만들기5-9 스마트무드등만들기
05
컬러 LED바명령어
05 - 1 컬러 LED바 연결하기
1. 컬러 LED바연결하기
05
아두이노와 PLC를이용한 IoT구현실습
2
컬러 LED바
3핀 케이블
컬러 LED바명령어
05 - 1 컬러 LED바 연결하기
2. 디지털 2번핀에연결
05
아두이노와 PLC를이용한 IoT구현실습
3
컬러 LED바명령어
05 - 2 컬러 LED바 명령어
1. LED 컬러바명령어구성
05
아두이노와 PLC를이용한 IoT구현실습
4
• 컬러 LED바는 5개의 명령어로 구성됩니다.
• NSBegin -> LED바를 시작합니다.
• NSClear -> LED바를 모두 끕니다.
• NSSetColor -> LED바의 색상을 지정합니다.
• NSSetAllColor -> 전체 LED바의 색상을 지정합니다.
• NSShow -> LED바의 색상을 표시합니다.
컬러 LED바명령어
05 - 2 컬러 LED바 명령어
2. LED 컬러바명령어
05
아두이노와 PLC를이용한 IoT구현실습
5
NSSetColor(위치, Red, Green, Blue)
위치는 0 ~ 7각 색상은 0 ~ 255
컬러 LED바명령어
05 - 2 컬러 LED바 명령어
3. 첫번째 LED 셀을빨간색으로켜는예제
05
아두이노와 PLC를이용한 IoT구현실습
6
• 스크립트 예입니다. LED바를 디지털 2번에 연결합니다.
void setup()
{
NSBegin(8, 2)
}
void loop()
{
NSClear()
NSSetColor(0, 255, 0, 0)
NSShow()
Delay(100)
}
컬러 LED바명령어
05 - 2 컬러 LED바 명령어
4. 7개의 LED셀에무지개색상을만들어봅니다.
05
아두이노와 PLC를이용한 IoT구현실습
7
컬러 LED바명령어
05 - 3 순차로켜지는 신호등
1. 순차로켜지는신호등
05
아두이노와 PLC를이용한 IoT구현실습
8
다음의 순서로 1초씩 LED가 켜지도록 합니다.
첫번째 LED 초록 1초
두번째 LED 주황 1초
세번째 LED 빨강 1초
컬러 LED바명령어
05 - 3 순차로켜지는 신호등
1. 순차로켜지는신호등
05
아두이노와 PLC를이용한 IoT구현실습
9
다음의 순서로 1초씩 LED가 켜지도록 합니다.
첫번째 LED 빨강 3초
두번째 LED 초록 3초
세번째 LED 주황 1초
컬러 LED바명령어
05 - 3 순차로켜지는 신호등
05
아두이노와 PLC를이용한 IoT구현실습
10
void setup()
{
NSBegin(8, 2)
}
void loop()
{
NSClear()
NSSetColor(0, 255, 0, 0)
NSShow()
Delay(3000)
NSClear()
NSSetColor(1, 0, 255, 0)
NSShow()
Delay(3000)
NSClear()
NSSetColor(2, 255, 127, 0)
NSShow()
Delay(1000)
}
컬러 LED바명령어
05 - 4 어두워지면켜지는 후레쉬
1. 전체 LED색상을한번에제어하기
05
아두이노와 PLC를이용한 IoT구현실습
11
NSSetAllColor(Red, Green, Blue)
각 색상은 0 ~ 255
컬러 LED바명령어
05 - 4 어두워지면켜지는 후레쉬
1. 전체 LED색상을한번에제어하기
05
아두이노와 PLC를이용한 IoT구현실습
12
void setup()
{
NSBegin(8, 2)
}
void loop()
{
NSSetAllColor(255, 0, 0)
NSShow()
Delay(1000)
NSClear()
NSShow()
Delay(1000)
}
컬러 LED바명령어
05 - 4 어두워지면켜지는 후레쉬
2. 빨강 -> 초록 -> 파랑색을 1초간격으로켜기
05
아두이노와 PLC를이용한 IoT구현실습
13
void setup()
{
NSBegin(8, 2)
}
void loop()
{
NSSetAllColor(255, 0, 0)
NSShow()
Delay(1000)
NSSetAllColor(0, 255, 0)
NSShow()
Delay(1000)
NSSetAllColor(0, 0, 255)
NSShow()
Delay(1000)
}
컬러 LED바명령어
05 - 4 어두워지면켜지는 후레쉬
3. 조도센서를활용하여어두워지면저절로켜지는장치를구현하시오
05
아두이노와 PLC를이용한 IoT구현실습
14
void setup()
{
NSBegin(8, 2)
}
void loop()
{
a = analogRead(0)
if (a < 500)
{
}
else
{
}
delay(100)
}
컬러 LED바명령어
05 - 4 어두워지면켜지는 후레쉬
3. 조도센서를활용하여어두워지면저절로켜지는장치를구현하시오
05
아두이노와 PLC를이용한 IoT구현실습
15
void setup()
{
NSBegin(8, 2)
}
void loop()
{
a = analogRead(0)
if (a < 500)
{
NSSetAllColor(255, 255, 255)
NSShow()
}
else
{
NSSetAllColor(0, 0, 0)
NSShow()
}
delay(100)
}
컬러 LED바명령어
05 - 5 밝기가조절되는 후레쉬
1. 버튼으로밝기를 3단계로조절하는장치를구현하시오
05
아두이노와 PLC를이용한 IoT구현실습
16
처음에는 꺼져 있음
버튼을 한번 누르면 가장 밝음 (3단계)
다시 한번 누르면 2단계 밝음 (조금 어두워짐)
다시 한번 누르면 1단계 밝음 (많이 어두워짐)
다시 한번 누르면 꺼짐
컬러 LED바명령어
05 - 5 밝기가조절되는 후레쉬
2. 기능개발시유의사항
05
아두이노와 PLC를이용한 IoT구현실습
17
디지털 버튼의 중복 감지 기능이 반영될 것
컬러 LED바명령어
05 - 5 밝기가조절되는 후레쉬
3. LED 밝기설정
05
아두이노와 PLC를이용한 IoT구현실습
18
3단계: 255, 255, 255
2단계: 150, 150, 150
1단계: 50, 50, 50
꺼짐: 0, 0, 0
컬러 LED바명령어
05 - 5 밝기가조절되는 후레쉬
4. 기본템플릿코드
05
아두이노와 PLC를이용한 IoT구현실습
19
count = 0pressed = 0
void loop(){
d = DigitalRead(2)if (d == HIGH){
if (pressed == 0){
count = (count + 1) % 4PrintLine(count)
}
pressed = 1}else
pressed = 0
Delay(100)}
컬러 LED바명령어
05 - 5 밝기가조절되는 후레쉬
4. 기본템플릿코드
05
아두이노와 PLC를이용한 IoT구현실습
20
count = 0pressed = 0
void loop(){
d = DigitalRead(2)if (d == HIGH){
if (pressed == 0){
count = (count + 1) % 4<이곳에기능을추가하시오>
}
pressed = 1}else
pressed = 0
Delay(100)}
컬러 LED바명령어
05 - 5 밝기가조절되는 후레쉬
05
아두이노와 PLC를이용한 IoT구현실습
21
count = 0pressed = 0
void setup(){
NSBegin(8, 2)
NSSetAllColor(0, 0, 0)NSShow()
}
void loop(){
d = DigitalRead(2)if (d == HIGH){
if (pressed == 0){
count = (count + 1) % 4if (count == 0)
NSSetAllColor(0, 0, 0)else if (count == 1)
NSSetAllColor(255, 255, 255)else if (count == 2)
NSSetAllColor(150, 150, 150)else if (count == 3)
NSSetAllColor(50, 50, 50)}
pressed = 1}else
pressed = 0
Delay(100)}
컬러 LED바명령어
05 - 6 이동점멸 및막대그래프
1. 반복문으로하나의 LED 빛을이동시켜켜지도록합니다.
05
아두이노와 PLC를이용한 IoT구현실습
22
컬러 LED바명령어
05 - 6 이동점멸 및막대그래프
1. 반복문으로하나의 LED 빛을이동시켜켜지도록합니다.
05
아두이노와 PLC를이용한 IoT구현실습
23
void setup()
{
NSBegin(8, 2)
}
void loop()
{
for (i = 0; i < 8; i++)
{
NSClear()
NSSetColor(i, 255, 0, 0)
NSShow()
Delay(100)
}
}
컬러 LED바명령어
05 - 6 이동점멸 및막대그래프
2. 반복문으로두개의 LED 빛이끝에서가운데로이동하도록구현해봅니다.
05
아두이노와 PLC를이용한 IoT구현실습
24
컬러 LED바명령어
05 - 6 이동점멸 및막대그래프
2. 반복문으로두개의 LED 빛이끝에서가운데로이동하도록구현해봅니다.
05
아두이노와 PLC를이용한 IoT구현실습
25
void setup()
{
NSBegin(8, 2)
}
void loop()
{
for (i = 0; i < 4; i++)
{
NSClear()
NSSetColor(i, 255, 0, 0)
NSSetColor(7-i, 255, 0, 0)
NSShow()
Delay(100)
}
}
컬러 LED바명령어
05 - 6 이동점멸 및막대그래프
3. 켜지는 LED가계속증가하도록합니다.
05
아두이노와 PLC를이용한 IoT구현실습
26
컬러 LED바명령어
05 - 6 이동점멸 및막대그래프
3. 켜지는 LED가계속증가하도록합니다.
05
아두이노와 PLC를이용한 IoT구현실습
27
void setup()
{
NSBegin(8, 2)
}
void loop()
{
NSClear()
for (i = 0; i < 8; i++)
{
NSSetColor(i, 255, 0, 0)
NSShow()
Delay(100)
}
}
컬러 LED바명령어
05 - 7 경광등장치 만들기
1. 경광등장치설계하기
05
아두이노와 PLC를이용한 IoT구현실습
28
처음 4개의 LED 셀을 빨간색으로 2번 점멸
뒤쪽 4개의 LED 셀을 파간색으로 2번 점멸
컬러 LED바명령어
05 - 7 경광등장치 만들기
2. 기본템플릿
05
아두이노와 PLC를이용한 IoT구현실습
29
void loop()
{
NSClear()
for (i = 0; i < 4; i++)
NSSetColor(i, 255, 0, 0)
NSShow()
Delay(100)
NSClear()
NSShow()
Delay(100)
}
컬러 LED바명령어
05 - 7 경광등장치 만들기
3. 함수만들어서사용하기
05
아두이노와 PLC를이용한 IoT구현실습
30
void BlinkLight(int s, int r, int g, int b)
{
NSClear()
for (int i = 0; i < 4; i++)
NSSetColor(i + s, r, g, b)
NSShow()
Delay(100)
NSClear()
NSShow()
Delay(100)
}
컬러 LED바명령어
05 - 7 경광등장치 만들기
3. 함수만들어서사용하기
05
아두이노와 PLC를이용한 IoT구현실습
31
void loop()
{
BlinkLight(0, 255, 0, 0)
BlinkLight(0, 255, 0, 0)
BlinkLight(4, 0, 0, 255)
BlinkLight(4, 0, 0, 255)
}
컬러 LED바명령어
05 - 8 이퀄라이저만들기
1. random 함수
05
아두이노와 PLC를이용한 IoT구현실습
32
random() 함수를 이용하여 임의의 값을 생성합니다.
• random(a) 는 0부터 a보다 작은 정수중에서 임의의 한 수를 넘겨줍니다.
• random(a, b) 는 a부터 b보다 작은 정수중에서 임의의 한 수를 넘겨줍니다.
컬러 LED바명령어
05 - 8 이퀄라이저만들기
1. random 함수
05
아두이노와 PLC를이용한 IoT구현실습
33
int a = random( 크기 )
• 0 ~ (크기 – 1) 사이의 임의의 값을 생성함
int a = random( 256 )
• 0 ~ 255 사이의 임의의 값을 생성함
int a = random( 100, 256 )
• 100 ~ 255 사이의 임의의 값을 생성함
컬러 LED바명령어
05 - 8 이퀄라이저만들기
2. 임의의위치에있는 LED 셀켜기
05
아두이노와 PLC를이용한 IoT구현실습
34
void setup()
{
NSBegin(8, 2)
}
void loop()
{
p = random(8)
NSClear()
NSSetColor(p, 255, 0, 0)
NSShow()
Delay(100)
}
컬러 LED바명령어
05 - 8 이퀄라이저만들기
3. 임의의위치에있는 LED 셀을임의의색상으로켜기
05
아두이노와 PLC를이용한 IoT구현실습
35
void setup()
{
NSBegin(8, 2)
}
void loop()
{
p = random(8)
r = random(256)
g = random(256)
b = random(256)
NSClear()
NSSetColor(p, r, g, b)
NSShow()
Delay(100)
}
컬러 LED바명령어
05 - 8 이퀄라이저만들기
4. 임의의길이만큼 LED 셀켜기
05
아두이노와 PLC를이용한 IoT구현실습
36
void loop()
{
p = random(8)
r = random(256)
g = random(256)
b = random(256)
NSClear()
for (int i = 0 i <= p; i++)
NSSetColor(i, r, g, b)
NSShow()
Delay(100)
}
컬러 LED바명령어
05 - 8 이퀄라이저만들기
5. 전체 LED를임의의색상으로켜기
05
아두이노와 PLC를이용한 IoT구현실습
37
void loop()
{
r = random(256)
g = random(256)
b = random(256)
NSSetAllColor(r, g, b)
NSShow()
Delay(100)
}
컬러 LED바명령어
05 - 9 스마트무드등 만들기
1. 임의의색상구간생성하기
05
아두이노와 PLC를이용한 IoT구현실습
38
0 255
r1 r2
임의의 색상 구간을 random 함수를 이용해 생성함
컬러 LED바명령어
05 - 9 스마트무드등 만들기
2. 임의의색상구간에서빨간색이서서히변하는기능
05
아두이노와 PLC를이용한 IoT구현실습
39
void loop()
{
r1 = random(256)
r2 = random(r1, 256)
for (i = 0; i < 256; i++)
{
r = map(i, 0, 255, r1, r2)
NSSetAllColor(r, 0, 0)
NSShow()
Delay(10)
}
}
컬러 LED바명령어
05 - 9 스마트무드등 만들기
3. 임의의색상구간에서초록및파랑이서서히변하는기능추가
05
아두이노와 PLC를이용한 IoT구현실습
40
void loop()
{
r1 = random(256)
r2 = random(r1, 256)
g1 = random(256)
g2 = random(g1, 256)
b1 = random(256)
b2 = random(b1, 256)
for (i = 0; i < 256; i++)
{
r = map(i, 0, 255, r1, r2)
g = map(i, 0, 255, g1, g2)
b = map(i, 0, 255, b1, b2)
NSSetAllColor(r, g, b)
NSShow()
Delay(10)
}
}
컬러 LED바명령어
05 - 9 스마트무드등 만들기
4. 프로젝트) 버튼을누르면 25초간작동하는스마트무드등장치를구현하시오
05
아두이노와 PLC를이용한 IoT구현실습
41