안녕하세요 에듀이노 입니다.
오늘은 가변저항을 사용해볼껀데요
가변저항은 우리 주변에 실생활에서 많이 볼 수 있는 소자입니다.
예를 들어 스피커의 볼륨 조절, 보일러의 온도 조절 등에 부착되어 조절 슬라이더를 이동하거나
회전시켜서 전기의 흐름을 조절하는 부품입니다.
< 실생활에 사용되는 가변저항 >
■ 정의 (가변저항이란?)
- 가변저항(Potentiometer)이란 저항값이 고정되지 않는 것을 의미합니다.
가변저항을 이용하여 저항을 바꾸면 전류의 크기를 바꿀 수 있습니다. 일반 저항 소자와 달리 보통 3개의 핀(VCC,A0,GND)으로
구성되어 있으며, 슬라이더를 회전시키거나 손잡이를 앞뒤로 밀거나 당겨서 저항 값을 조절하게 됩니다.
■ 동작 원리
<그림1. 가변저항 동작원리>
< 그림2. 가변저항의 스위퍼 >
- 가변저항을 구성하는 3개의 핀은 각각 GND, A0(신호 전달 핀), VCC(5V) 핀에 연결되어 있습니다.
위의 <그림.1>에서 확인 할 수 있듯이 GND 핀과 5V 핀은 각각 가변저항의 내부 저항체와 연결되어 있습니다.
내부 저항체를 통해 전기가 흐르며 저항의 기능을 하게 되는거죠.
- 스위퍼는 <그림.2>에서 볼 수 있듯이 가변저항에서 회전시킬 수 있는 부분을 말하는데요, 스위퍼(Sweeper)를 회전시키면
가변저항 내부의 슬라이더가 움직여 저항 값을 조절 할 수 있습니다.
- 5V핀을 타고 올라간 전류는 가변저항 내부의 슬라이더를 타고 신호 역할을 하는 단자(A0)를 따라내려가게 됩니다.
이 때 슬라이더의 위치에 따라 전류가 흐르는 도선의 길이가 달라지게 되어 저항을 조절할 수 있는거죠.
- 즉, 옴의 법칙에 따라 도선의 길이가 길어지면 저항의 세기는 커지고, 도선의 길이가 짧아지면 저항이 작아지게 되는 원리입니다.
<옴의 법칙>
■ 가변저항 사용하기
- 준비물
(브레드보드를 제외한 나머지 부품들은 '아두이노 우노 종합 키트'에 포함된 부품을 이용했습니다.)
아두이노 우노 보드(SMD) : 링크 클릭
브레드보드 400홀(불투명) : 링크 클릭
가변저항(10K) : 링크 클릭
저항 : 링크 클릭
LED : 링크 클릭
점퍼케이블 : 링크 클릭
(링크를 클릭하면 해당 제품 페이지로 이동합니다.)
1) 아두이노와 가변 저항 연결하기
- 아래 결선도와 같이 아두이노와 가변저항을 연결해줍니다.
< 결선도 >
< 실제 연결 사진 >
2) 코딩 예제
- 아래 코드를 아두이노 스케치에 입력 후 아두이노 보드에 업로드 해줍니다.
int LED = 9; //LED를 9번핀에 연결합니다 void setup (){ Serial.begin(9600); pinMode(LED,OUTPUT); //9번 핀의 모드를 OUTPUT으로 설정해 줍니다 } void loop(){ int val = analogRead(A5)/4; // 가변저항을 아날로그 A5에 연결하고 이를 'val'에 저장합니다 Serial.println(val); // 시리얼 모니터로 가변저항 값을 출력합니다 analogWrite(LED, val); // 가변저항의 값을 LED(9번핀)로 보내 출력합니다 }
| |
코드 상의 ' int val = analogRead(A5)/4; ' 에서 마지막에 4로 나눠준 이유는 아두이노의 아날로그 단자에서 읽어들인 가변저항의 입력값은 0~1024이지만
디지털 단자를 이용한 LED(9번핀)의 밝기 값은 0~255까지 출력할 수 있기때문입니다.
또한 디지털 단자에 연결한 LED의 출력을 digitalWrite가 아닌 analogWrite로 사용한 이유는 PWM(Pulse Width Modulation) 기능을 이용하여
디지털 단자에서도 아날로그 출력을 낼 수 있기때문입니다.
3) 테스트 결과
- 코드 업로드를 마친 후 가변저항의 스위퍼를 돌려가며 LED의 밝기변화를 관찰합니다.
< 테스트 사진 >
< 그림3. 시리얼 모니터로 출력값을 확인한 결과 >
<그림3>은 가변저항을 돌려가며 시리얼 모니터로 출력값을 확인한 결과입니다.
가변저항을왼쪽으로 최대로 돌리고 시리얼 모니터에서 출력값을 확인해보니 '0'이 출력되고, 오른쪽으로 돌리면 출력값이 증가합니다.
또한 오른쪽으로 최대로 돌리면 '255'가 출력됨을 확인할 수 있습니다.
(시리얼 모니터는 아두이노 스케치 오른쪽 상단에 위치한 돋보기 모양 아이콘을 클릭하여 확인합니다.)
<시리얼 모니터 확인하기>
4) 동영상
- 위 테스트 결과를 영상으로 확인합니다.
여기까지 '가변저항을 이용해서 LED 밝기 조절하기' 였습니다.
읽어주셔서 정말 감사합니다 ~
아두이노의 시작은 에듀이노(Eduino) 입니다.
- 에듀이노(Eduino)