목차
1) DC 모터란?
2) 가변저항을 이용한 모터 속도 제어하기
3) 스위치를 이용하여 모터 방향 바꾸기
4) 스위치를 이용하여 기어드모터 방향 바꾸기
5) 버튼 두개를 연결하여 기어드모터 방향 바꾸기
1. DC 모터란?
DC(Direct Current) 직류 모터이다. (교류 Alternative Current = AC모터)
직류전원으로 동작하며, 다른 고정장치에 비해 가볍고 간단하다.
DC 모터는 속도 및 방향 제어 등이 쉽다.
미니카 같은 장난감 모터로도 사용하는 DC 모터,
DC 모터 선택 기준은,
RPM(Revolutions Per Minute) : 분당 회전수, 예를 들어 500 rpm은 분당 500회전을 뜻함.
이번 수업에서는 RPM을 조절하기 위해서 PWM 포트에 연결하여 속도를 조절해 보겠습니다!
2. 가변저항을
이용한 모터 속도 제어하기
int mpin = 9;
void setup()
{
pinMode(mpin , OUTPUT);
Serial.begin(9600);
}
void loop()
{
int val = analogRead(A5); //아날로그 입력을 val에 입력받는다.
int convertval = map(val,0,1023,0,255);
//val변수가 가지고 있는 0~1024 센서 값을 0~255로 연산하여 convertval변수값에 넣어준다.
Serial.println(convertval); //가변저항 값을 출력한다.
analogWrite(mpin,conval); //가변저항 값에 따라 모터의 속도를 조절한다.
delay(100);
}
3. 스위치를 이용하여 모터 방향 바꾸기
void setup()
{
pinMode(9 , OUTPUT); //pwm 지원
pinMode(10, OUTPUT); //pwm 지원
pinMode(8, INPUT); //스위치 입력 받기위한 핀
Serial.begin(9600);
}
void loop()
{
int val = analogRead(A5);
int convertval = map(val,0,1023,0,255);
int inputSwitch = digitalRead(8); //스위치값을 inputSwitch 변수에 넣는다
int OnOff = inputSwitch; //입력받은 스위치값이 On 인지 Off 인지 확인하기위한 변수
if(inputSwitch == LOW){ //스위치의 값이 LOW이면 9번 핀에 전원을 넣고
analogWrite(9,convertval);
analogWrite(10,0);
}
else{ //스위치의 값이 HIGH이면 10번 핀에 전원을 넣는다
analogWrite(9,0);
analogWrite(10,convertval);
}
Serial.print(OnOff); //스위치가 On인지 Off인지 출력한다
Serial.print(" ");
Serial.println(convertval); //가변저항으로 받는 전압의 값을 출력한다
delay(100);
}
4. 스위치를 이용하여 기어드모터 방향 바꾸기
5. 버튼 두개를 연결하여 기어드모터 방향 바꾸기
참조: https://m.blog.naver.com/icbanq/2215999245
반응형
'IOT 로봇 아두이노 > 아두이노 기본센서 연결하기' 카테고리의 다른 글
[아두이노 응용] 초음파센서 거리 측정 후 LCD 출력 하기 (0) | 2021.05.12 |
---|---|
[아두이노 기초] LCD 글자 출력하기 (0) | 2021.04.26 |
[아두이노 기초] 서보모터 사용하기 (0) | 2021.04.18 |
[아두이노 기초] 버튼 연결하기 (0) | 2021.04.11 |
[아두이노 기초] 초음파센서 연결하기 (2) | 2021.04.07 |
댓글