코코아팹은 누구나 창의적 아이디어를 현실로 만들어 낼 수 있도록
만들고, 공유하고, 배울 수 있는 터전이
되고자 합니다.
아이디와 비밀번호를 잊으셨나요?아이디 / 비밀번호 찾기
코코아팹 회원이 아니신가요? 회원가입
2018-11-30 14:29:48
1) 가변저항이란 무엇인가?
가변저항 (Potentiometer)은 사용자가 직접 저항값을 임의로 바꿀수 있는 저항기를 말합니다. 흔히 소리의 크기를 말하거나 조절하는 손잡이를 볼륨 (Volume)이라 부르는데, 전기/전자분야에서는 가변저항을 말하곤 합니다.
가변저항은 사용하는 저항체의 종류에 따라 다양하며, 회전축을 중심으로 전극을 움직이거나, 좌우로 전극을 움직이는 방식으로 저항값에 변화를 줍니다.
가변저항은 가전 제품부터 산업용 제품에 이르기까지 폭넓은 시장에서 활용되고 있습니다.
2) 가변저항 사용방법
이 예제에서 사용된 가변저항은 아래 그림과 같이 1번 단자와 3번 단자에 걸처 전체 저항이 연결되어 있고, 그 위에 2번 단자와 연결된 스위퍼 (sweeper)의 위치에 따라, 저항 값이 변하게 합니다.
가변저항의 노브를 돌리면 1번 단자와 2번 단자 사이의 저항과, 2번 단자와 3번 단자 사이의 저항값이 각각의 길이에 비례하여 변하게 됩니다. 스위퍼의 위치에 따라 2번과 3번의 저항 값이 변하면, 스위퍼에 연결된 2번단자에 걸리는 전압도 변하게 됩니다. 즉, 양쪽 저항의 크기에 따라 전압분배가 이루어지는 것입니다.
이 예제에서는 2번 단자에 걸리는 전압을 오렌지보드의 아날로그 입력값으로 받아 LED의 밝기를 조절합니다.
저항에 대한 자세한 설명은 2.4 저항의 용도를 참고합니다.
NO | 부품명 | 수량 | 상세설명 |
1 | 오렌지 보드 | 1 | |
2 | 가변저항 | 1 | 10kΩ |
3 | LED | 1 | |
4 | 330Ω 저항 | 1 | |
5 | 브레드 보드 | 1 | |
6 | 점퍼 케이블 | 7 |
부품명 | 오렌지 보드 | 가변저항 | LED | 330Ω 저항 | 브레드 보드 | 점퍼 케이블 |
파트 |
이 소스 코드는 가변저항을 반이상 돌리면 LED가 켜지는 소스 코드 입니다.
아날로그 1번핀에 연결된 가변저항의 값이 512(1024의 중간값)를 넘으면 디지털 3번 핀에 연결된 LED의 불을 키고, 512보다 작아지면 LED의 불을 끕니다.
이러한 비교 작업을 계속 반복해 줌으로써 가변저항을 이용하여 LED의 On/OFF 제어를 하게 됩니다.
void setup() {
pinMode(3, OUTPUT);
}
void loop() {
if (analogRead(A1) > 512) {
digitalWrite(3, HIGH);
} else {
digitalWrite(3, LOW);
}
}
|
|
<오렌지보드 가변저항으로 LED On/Off 제어하기 코드>
2. 가변저항으로 LED의 밝기를 제어하는 코드
이 소스 코드는 가변저항을 돌리면 LED의 밝기를 제어하는 소스 코드 입니다.
아날로그 1번핀에 연결된 가변저항의 값이 0~1023 사이로 들어오는데 이것을 0~255 사이의 값으로 변경 후 이 값에 따라 디지털 3번 핀에 연결된 LED의 밝기를 제어하게 됩니다.
이러한 작업을 계속 반복해 줌으로써 가변저항을 이용하여 LED의 밝기를 제어를 하게 됩니다.
void setup() {
pinMode(3, OUTPUT);
}
void loop() {
int temp = map(analogRead(A1), 0, 1023, 0, 255);
analogWrite(3, temp);
}
|
cs |
<오렌지보드 가변저항으로 LED 밝기를 제어하기 코드>
kocoafabeditor
항상 진취적이고, 새로운 것을 추구하는 코코아팹 에디터입니다!