인하대 전자회로실험1, 전자공학실험1 PWM
- 최초 등록일
- 2021.04.01
- 최종 저작일
- 2020.03
- 9페이지/ MS 워드
- 가격 1,000원
소개글
"인하대 전자회로실험1, 전자공학실험1_PWM"에 대한 내용입니다.
목차
1. 실험① PWM을 이용한 LED 밝기 조절
1) 코드 및 주석
2) 고찰 및 실험 평가
2. 실험② 서보 모터 예제
1) 코드 및 주석
2) 고찰 및 실험 평가
3. 과제① 서보 모터의 날개가 0, 45, 90, 135, 180도를 가리키는 프로그램
1) 코드 및 주석
2) 고찰 및 실험 평가
4. 과제② 과제1에 LED를 부착하여 현재 각도를 표현하는 프로그램
1) 코드 및 주석
2) 고찰 및 실험 평가
5. 과제③ 초시계 만들기
1) 코드 및 주석
2) 고찰 및 실험 평가
본문내용
실험① PWM을 이용한 LED 밝기 조절
코드 및 주석
int ledPin = 11;
void setup(){
pinMode(ledPin, OUTPUT);
}
void loop(){
for(int i=10; i<=255; i=i+10){
analogWrite(ledPin, i); // i값 10씩 증가함에 따라 LED 밝기 변화
delay(200); // delay 0.2초
}
}
고찰 및 실험 평가
디지털 핀에서 출력은 0V와 1V(아날로그로는 0V와 5V)만 있기 때문에 LED를 연결하면 켜지고 꺼지기만을 반복한다. AnalogWrite 함수를 이용하면 i(value)값의 크기 변화를 통해 LED의 밝기를 조절할 수 있다. I가 255에 가까워지면 High 출력의 비율이 증가하여 LED 밝기가 밝아진다. 이는 Pulse-Width Modulation (PWM)을 이용한 것이다. 디지털 신호는 0과 1 두개의 discrete한 출력만 존재하는데, 이 때 pulse를 이용하여 원하는 전압 신호의 평균값을 출력하면 디지털 신호가 아날로그 신호처럼 continuous하게 출력된다.
Pulse의 high와 low의 비율 조정으로 원하는 전압 신호를 출력해내 디지털 신호가 아날로그 신호처럼 출력되게 하는 PWM 방식에 대해 이해할 수 있는 실험이었다. 이론적인 내용만 공부 하는 것이 아니라 LED의 밝기가 조절되는 것을 눈으로 확임함으로써 PWM 원리를 더욱 효율적으로 습득할 수 있었다.
실험② 서보 모터 예제
코드 및 주석
#include <Servo.h>
int servoPin = 5;
Servo servo; //Servo 라이브러리 내 클래스를 사용하기 위해 객체 생성
int Level = 0; //Servo Motor Level을 조정
void setup()
{
servo.attach(servoPin); //생성된 객체의 초기화
}
참고 자료
없음