1 모터 (Motors) 김원웅
2 모터 (Motor) □ 모터 응용분야 □ Desktop PC 의 DVD ROM, HDD □ 러닝머신, 전동드릴, 선풍기 등 전력에 의해서 뭔가가 움직이 는 분야에는 거의 모두 모터가 사용 □ 우리가 배울 모터의 종류 □ DC 모터 □ 서보모터 □ 스텝모터
3 1. 소형 DC(Direct Current) 모터 □ DC 모터 □ 전기적 에너지를 역학적 에너지로 바꾸는 장치 □ DC Motor 는 우리말로 직류 전동기 □ DC 모터 응용분야 □ 무선 조종 자동차와 보트, 자동차 창문, DVD 플레이어 등 다양한 장치에서 찾아 볼 수 있다. □ DC 모터 사용방법 □ 모터에 권장 이상의 전압을 가하면 모터의 코일이 손상 □ 너무 적은 전류는 모터를 구동 할 수 없다. □ 정회전과 역회전이 가능 □ DC 모터에서는 역회전을 하려면 연결된 전원 선을 반대로 연결해 주면 된다. □ 작은 모터로 큰 힘을 내려고 하면 기어 박스를 사용
4 L293B 모터 드라이버 IC □ L293B □ 정회전과 역회전을 쉽게 위해서 L293B 모터 구동 IC 를 사용 □ 모터를 2 개까지 구동할 수 있다. □ 각 채널당 최대 1A 의 전류를 공급
+ 로 간주
7 # define motor1EnablePin 9 #define motor1_1 2 #define motor1_2 4 void setup() { pinMode(motor1_1, OUTPUT); pinMode(motor1_2, OUTPUT); analogWrite(motor1EnablePin, 0); } DC 모터 – 스케치
8 void loop() { digitalWrite(motor1_1, HIGH); digitalWrite(motor1_2, LOW); analogWrite(motor1EnablePin, 1023); delay(2000); //analogWrite(motor1EnablePin, 50); //analogWrite(motor1EnablePin, 0); // delay(1000); digitalWrite(motor1_1, LOW); digitalWrite(motor1_2, HIGH); analogWrite(motor1EnablePin, 128); delay(2000); // analogWrite(motor1EnablePin, 50); //analogWrite(motor1EnablePin, 0); //delay(1000); }
9 L293B 모터 드라이버 IC 핀 번호핀 설명 1 - Motor1 Enable - DC 모터의 경우 모터 1 번의 회전 속도를 결정 - 1 번 핀을 HIGH 로 주면 최대의 회전 속도를 내고 PWM 을 이용 하여 AnalogWrite( 핀번호, 128) 함수를 사용하면 모터의 회전속도를 50% 로 조정할 수 있다. - 1 번 핀을 LOW 로 주면 1 번 모터가 동작하지 않는다. 2 - 모터 Input Input 1-1, Input 1-2 는 1 번 모터의 회전 방향을 결정 한다. - Input 1-1 을 HIGH 로 주고 Input 1-2 를 LOW 로 설정 하면 정 방향으로 모터가 움직이고 반대로 Input 1-1 을 LOW 로 주고 Input 1-2 를 HIGH 로 설정하면 역 방향으로 모터가 움직인다. 이 것을 표로 정리해 보자. 모터 회전 방향 Input 1-1Input 1-2 정방향 HIGHLOW 역방향 LOWHIGH
10 L293B 모터 드라이버 IC 핀 번호핀 설명 3 - 모터 Output Output 1-2 핀과 함께 DC 모터에 있는 2 개의선중 한쪽에 연결 4,5 - GND 6 - 모터 Output Output 1-1 핀과 함께 DC 모터에 있는 2 개의선중 한쪽에 연결 7 - 모터 Input Input 1-1 참조 8 - 모터 구동 전원 ( 최대 36V ) 9,10,11 - Motor1 참조 12,13 - GND 14,15 - Motor1 참조 16 - 모터 구동 IC 구동 전원 ( 4.5 ~ 36V )
11 2. 서보 (Servo) 모터 □ 서보 모터 □ 서보 모터는 기어로 되어 있어 설정한 각도로 돌릴 수 있다. □ 일반적으로 0 에서 180 도 까지 움직일 수 있고, 4.8V 전원을 공급 □ 서보 모터 응용분야 □ 비행기의 날개, 보트의 방향키, 자동차의 앞 바퀴 조향 장치
12 서보 모터 – 실험 준비물
13 서보 모터 - 배선도 D8 + 로 간주
14 서보 모터 – 스케치 #include int motor_control = 8; Servo servo; void setup() { servo.attach(motor_control); }
15 서보 모터 – 스케치
3. 스탭 (Step) 모터 정교한 움직임을 제어할 수 있는 모터 3D 프린터, CNC 가공, 프린터기 헤드, 종이 공급기 등에 사 용 유니폴라 ( 간단한 프로젝트에 용이, 저가, 6 선 ) 와 바이폴라 2 종류 ( 정밀도가 높음, 강한 힘, 4 선 ) 가 있음
L293D
+ 로 간주 1번1번
#include const int stepsPerRevolution = 200; Stepper myStepper(stepsPerRevolution, 8,9,10,11); void setup() { myStepper.setSpeed(100); // 회전속도 } void loop() { int i; for(i=0;i<200;i++) //200 회를 움직이면 360 도 도달 { myStepper.step(1); delay(10); // 값을 스텝의 텀의 길어짐 } for(i=0;i<200;i++) { myStepper.step(-1); delay(10); }
감사합니다.