실험 1: 80196과 L298을 사용한 DC 모터의 PWM 구동

1. 스텝 모터:

* 장점: 피드벡이 필요없이 제어계가 단순하다, 마이컴 접속이 용이하다

신뢰성이 좋다

* 단점: 무게가 크고 가격이 비교적 비싸다, 관성부하에 약하고 탈조현상이 있다.

* 상수와 스텝각

- 상수: 고정자 측 코일의 상수에 따라 단상(1상) ,2상, 3상, 4상,5상등으로 분류하고,

소형은 4상이 표준으로 사용된다.

- 스텝각: 모터의 상수와 회전자의 톱니수에 의해 결정되는 위치각

* 구동방법 (지난학기의 실험 참조)

▷ 유니폴라(Unipolar) 구동방식

저속영역에서 큰토크를 기대할수 없다. 에너지 효율이 나빠지게 된다.

모터회로가 간단하고, 고속에서 탈조 될 위험이 적어 고속회전에 용이하다.

순간적으로 빠른 속도를 필요로 하는 마이크로 로봇에 많이 쓰인다.

IC로는 SLA7024M,L297을 사용한다

▷ 바이폴라(Bioplar)구동방식

각도의 정밀도가 좋고, 저속에서 토크가 좋으며 에너지 효율도 좋다.

회로가 복잡하고 고속에서 토크가 떨어지는 결점이 있다.

전용 드라이버 IC로는 L297,L298을 사용한다.

2. DC 모터

* 가격이 싸고 능률이 좋다.

* 반면에 피드벡을 사용한 폐루프 제어가 필요하다 (엔코더 필요)

* 토크의 증가를 위한 감속기의 사용이 필요하다.

* 일반적 DC 모터의 구성

Encoder

Motor

Gear box

* 동작 원리

자기장 B

N

S

고정자

고정자

회전자

전류 I

힘 F

U (외부에서 가한 전압) = E + [eqn: I][eqn: times][eqn: r]

E (역기전력 (back-emf)) = [eqn: k_bemf times] n

T (모터의 토크) = [eqn: k_T times I]

[eqn: I]: 회전자에 흐르는 전류

[eqn: r]: 회전자의 저항 (amature resistance)

n: 회전자의 회전 속도

[eqn: k_bemf]: 역기전력 상수

[eqn: k_T]: 토크 상수

*  DC 모터의 속도와 토크관계

그림 4. 토크와 속도 및 전류 관계

속도(n)

전류(I)

속도(n)

전류(I)

rpm

A

토크([eqn: tau])

mNm

* DC 모터 PWM 구동회로

모터의 입력을 다음과 같은 펄스로 준다

그림 4.5 펄스 제어 방법

[eqn: rm V_평균전압~ = ~V_입력 ~times ~T_ON over T [V]]

* H 브리지에 의한 DC 모터 구동회로

그림 4.6 H-브릿지 회로

그림 4.7 정방향 회전

그림 4.8 역방향 회전

- L298은 내부에 2개의 H-브릿지 회로를 가지고 있어서 2개의 모터를 구동할 수 있다.

- L298의 구성 (Home page에서 Data Sheet는 다운로드할것)

DC모터를 드라이브하기 위한 회로가 2조 있으며, 1조당 2A까지 전류를 흘릴 수 있다.      2조를 병렬로 연결하면 4A까지도 가능하다. (46V까지)

또한 L298은 L297과 함께 스테핑 모터 드라이버로 사용되기도 한다.

- 기본적 구성회로도

+ 8,9번 핀에 5V 전원을 연결

+ 4번 핀에는 모터를 구동할 전압을 걸어주며 46V까지 가능하다.

+ A의 모터 구동.

input1(5), input2(7):  모터의 방향을 결정한다.

output1(2), output2(3): 모터의 양단자에 연결한다.

enable A(6): 모터의 on/off 역할 입력이 H일 때 on, L일 때 off. (PWM 연결)

current sensing A(1): 0.5옴의 저항을 통해 GND로 연결. 정격전력이 높은 저항사용.

+ B의 모터 구동

input3(10), input4(12):  모터의 방향을 결정한다.

output3(13), output4(14):  모터의 양단자에 연결한다.

enable B(11): 모터의 on/off 역할 입력이 H일 때 on, L일 때 off. (PWM 연결)

current sensing B(15): 0.5옴의 저항을 통해 GND로 연결. 정격전력이 높은 저항사용

* L298과 80196을 이용한 DC 모터 구동실험

5V                                                                                                                    Vs

P1.0                            10  IN3                        OUT3  13                               FE3D

p1.1                            12  IN4                        OUT4  14

p2.5                            11  EN2

9   Vss

100uF                  8  Gnd

4   Vs

5   IN1                        OUT1   2

7   IN2                        OUT2   3

6   EN1

1   SE1

15    SE2

0.5/1W

5V

330         330

P0.0

P0.1

실험 내용: 다음의 목적에 맞는 C 프로그램을 작성하여 80196을 작동시켜라. (RAM Download)

P0.0이 ON, P0.1가 OFF면 모터를 시계방향으로 20% duty로 회전시킨다.

P0.0이 OFF, P0.1가 ON면 모터를 반시계방향으로 20% duty로 회전시킨다.

P0.0이 ON P0.1가 ON 이면 50% duty로 회전시킨다

P0.0이 OFF, P0.1가 OFF 이면 0% duty로 회전