관리 메뉴

드럼치는 프로그래머

[H/W] DC모터제어 본문

★─Programing/☆─HardWare

[H/W] DC모터제어

드럼치는한동이 2008. 5. 2. 03:57

DC모터속도제어

 

DC모터의 가변속도 제어법


1. DC 모터의 가변속 제어
  DC 모터의 속도를 연속적으로 바꾸려는 경우에는 어떻게 하는가. 기본적으로는 DC 모터에 가하는 전압을 바꾸면 속도는 변화한다. 단순히 모터의 코일에 흐르는 전류와 속도가 정비례 하기 때문에 그림 1과 같이 하여 모터의 구동전압을 변화시키면 속도를 가변으로 할 수 있는 것이다.
  이 구동전압을 변화시키는 방법으로 아날로그 방식과 펄스폭 변조방식의 두 가지 방법이 있다.
  다음은 각 방식과 특징에 대해 설명한다.

2. 아날로그 방식의 가변속 제어
  직접 구동전압 그 자체를 변화시키는 것으로, 기본회로는 그림 2와 같다. 즉, 트랜지스터로 전압 Dropper를 구성하고 컬렉터 이미터간의 드롭 전압을 바꿈으로써 모터에 가해지는 구동전압을 가변으로 한다. 이 기본원리에 의해 드롭퍼 전압이 그대로 열로 되어 손실로 되며, 특히 저속으로 할 때 전력 사용 효율이 나빠지고 만다. 이 손실로 인해 발생하는 열대책을 위해, 큰 방 열판을 필요로 하기 때문에 전체가 대형으로 되고 만다. 그러나 소형 모터이고 게다가 속도의 가변폭이 작아도 좋은 경우에는 손실을 작게 할 수 있다는 점과 제어회로가 간단하기 때문에 흔히 사용되고 있다.

3. 펄스폭 변조(PWM) 방식
  PWM 방식은 결과적으로는 구동전압을 바꾸고 있는 것과 같은 효과를 내고 있지만, 그 방법이 펄스폭에 따르고 있으므로 펄스폭 변조(PWM:Puls-e Width Modulation)라 부르고 있다.
  구체적으로는 모터 구동전원을 일정 주기로 On/Off 하는 펄스 형상으로 하고, 그 펄스의 Duty비(On 시간과 Off 시간의 비)를 바꿈으로써 실현하고 있다. 이것은 DC 모터가 빠른 주파수의 변화에는 기계 반응을 하지 않는다는 것을 이용하고 있다. 기본회로는 그림 3과 같으며 트랜지스터를 일정시간 간격으로 On/Off 하면 구동전원이 On/Off 되는 것이다.
  이 펄스 형상의 전압으로 DC 모터를 구동했을 때의 실제 모터에 가해지는 전압 파형은 그림 3과 같이 되며 평균전력, 전압을 생각하면 외관상 구동전압이 변화하고 있는 것이다. 여기서 중요한 기능을 담당하고 있는 것이 위의 회로도에 있는 다이오드이며, 일반적인 전원용 다이오드를 사용하지만 그 동작 기능에 의해 flywheel diode라 부르고 있다. 즉, 트랜지스터가 Off로 되어 있는 동안 모터의 코일에 축적된 에너지를 전류로 흘리는 작용을 한다(회생전류라 부른다). 이 상태를 그림으로 나타내면 그림 4와 같이 되며 이 플라이휠 효과에 의해 모터에 흐르는 전류는 트랜지스터가 Off로 되어 있는 동안에도 쉬지 않고 흐르고 있는 것처럼 보이게 되며, 평균전류도 On시의 전류와 이 회생전류의 합으로 된다.

4. IC에 의한 실제 회로
  모터 제어용의 전용 IC 가운데는 가변속 제어의 기능을 탑재한 것이 있다. 아래에 대표적인 것을 사용한 실제 제어회로의 예를 소개한다.
  아래 예는 스테핑 모터(Stepping Motor)용이지만, 단독으로 DC 모터의 가변속 제어용으로도 사용할 수 있다.
·TA7289P PWM 방식 바이폴러형 스테핑 모터 드라이버의 특징
① 동작 전원전압 범위 Vcc=6∼27V
② 정회전, 역회전, 스톱의 3가지 모드 선택 제어 가능
③ 4비트 D/A 컨버터 내장, 가변속 제어 가능
④ 드라이브 능력 Io=1.5A Max
⑤ PWM chopper 방식에 의한 정전류 구동방식
⑥ 외부부착 부품수가 적다
⑦ 입력은 LS-TTL compatible
  IC의 내부회로 블록은 그림 6과 같이 되어 있으며, 펄스폭의 기준이 되는 톱니파를 D/A 변환부 출력의 직류 레벨로 상하 동작시키고 있다.
  이 모양을 그림 5와 같이 중첩되는 D/A 변환부의 직류 레벨에 의해 톱니파가 상하로 움직이고, 출력 레벨을 끊는 위치가 연동하여 움직인다. 이에 따라 출력의 On/Off 펄스폭이 가변되는 것이다.

5. 실제의 사용 사례
  그림 7은 PWM 방식의 가변속 IC를 사용한 제작의 한 예로, 주행 로봇에 탑재한 회로이다.
  PIC에서 직접 TA7289P를 컨트롤 하고 있다. 4비트의 데이터를 PIC의 포트로 설정하여, 정/역회전의 제어신호에 의해 모터가 회전을 시작한다.

DC 모터의 위치 및 속도 제어

1. DC 모터 제어기술
  DC 모터 제어란 모터의 속도 및 위치를 원하는 대로 조정하는 것을 의미한다. DC 모터 제어를 위해서는 모터 축 또는 기어 축의 위치(회전 각도)를 측정할 수 있는 엔코더가 부착되어 있어야 한다. 제어기는 이 엔코더로부터 들어오는 정보로부터 모터의 속도 및 회전각을 계산하고 이를 바탕으로 모터에 가해지는 전압을 조절하게 된다. 그림 8은 모터 제어를 위한 시스템 다이어그램이다.
  모터 제어부는 그림 8과 같이 엔코더의 펄스를 세어 12비트 또는 16비트의 펄스 수로 바꾸어 주는 계수기(Counter)와 이 계수기(Counter)값으로 속도 및 위치를 계산하여 모터에 가할 전압을 결정하는 논리회로 그리고 모터로 가하는 전압에 충분한 전류를 공급하여 모터가 큰 토크로 구동할 수 있도록 해주는 driver로 구성된다. 이러한 제어부를 구성하는 방법은 크게 두 가지 로 첫 번째는 각각의 부품을 따로따로 구입하여 하나의 제어부를 구성하는 방법과 제어부 전체를  담당하는 하나의 칩을 구입하여 구성하는 방법이 다. 후자의 경우 여러 회사에서 판매하고 있는 모션 컨크롤러(Motion Controller)라고 하는 전용칩을 사용하는 것이다.
  이 칩은 단지 주 CPU에서 속도 및 위치를 입력하면 칩 차체에서 일정 샘플링 시간으로 스스로 모터를 제어하기 때문에 주 CPU의 부하를 크게 줄일 수 있다는 장점이 있다.

2. 엔코더
  엔코더는 회전 위치 및 속도를 검출하는 목적으로 서보모터를 사용한 고속회전 위치 제어에 사용된다. 엔코더는 수십khz 정도까지 응답하는 고속성과 비접촉 동작에 의한 높은 신뢰성을 가지고 있다. 로터리 엔코더에는 절대값형(Absoulte)과 중분형(Incremental)이 있다.
(1) 인크리멘탈 엔코더(Incremental Encoder)
  그림 9는 Zero상 신호 Z를 가지고 있는 A, B 출력형 인크리멘탈 엔코더의 구조도이다.
  LED로부터 광투사된 광선은 회전 디스크의 슬릿을 통과한 뒤 고정 슬릿판의 A, B, Z에 해당하는 각각의 슬릿을 통과하여 A, B, Z의 수광소자에서 검출된다. 고정 슬릿판상의 A, B의 슬릿은 90°의 위상차를 갖도록 배치되어 있으며, 파형이 정비된 전기적 신호 출력도 9
0°의 위상차를 갖는 구형파로 된다.
  인크리멘탈 엔코더는 구조가 간단하고 가격이 싸며, 출력 전선의 개수도 작아서 신호전달이 간단하다. 엔코더의 출력 펄스는 축의 회전위치의 절대치를 나타내지는 않고 축의 회전한 각도에 비례한 펄스수가 얻어지는 것이며, 절대치 표시를 수행하는 경우는 엔코더 출력 펄스를 카운터에 축적한 것으로 표시한다. 사용상의 주의점으로서는, 신호 전달 중의 노이즈를 카운터에 축적하는 결점이 있기 때문에 노이즈 대책을 충분히 세워야 될 필요가 있다. 또 전원이 끊어진 경우에는 다시 전원을 투입하여도 원래 위치의 표시는 불가능하게 되기 때문에 충분히 주의를 기울여야 한다.
  인크리멘탈 엔코더는 엔코더 자체에서 단지 펄스열을 발생하기 때문에 회전 속도를 검출하기 위한 아날로그 신호를 얻기 위해서는 엔코더의 출력펄스 수를 F/V Converter에서 펄스 주파수에 비례한 아날로그 신호로 변환하여야 한다.
  보통 증분형 엔코더의 회전 반향 감지 및 분해도를 증가하기 위해 두 개의 광당속기를 1/4위상차를 두도록 배치한다.
  그림 10에서 시계 방향(CW)과 반시계 방향(CCW)으로 휠이 회전할 때 광단속기에서 발생하는 파형을 보이고 있다. 각각의 광단속기를 각각 채널 A와 채널 B라고 명명하며, 이 두 채널의 신호 파형을 이용하여 회전 방향을 판별할 수 있다.
(2) 절대치형 엔코더
  절대치형 엔코더의 기본적인 구성은 인크리멘탈형과 동일하다. 회전 디스크의 슬릿은 2진 부호열로 되어 있는데, 회전 디스크의 바깥 둘레를 최하위 비트로 하고 중심을 향하여 필요한 비트(행) 수 만큼의 슬릿이 동심원상으로 배치되어 있다. 그림 11은 절대치형 엔코더의 구조도이다.
  절대치형 엔코더는 명칭 그대로 입력측의 절대위치를 검출할 수 있기 때문에 신호 전송중의 노이즈에 의해 오차가 누적되지 않으며, 또 전원이 단절되어 재투입하는 경우에도 인크리멘탈형에서 처럼 원래 위치를 잃어버리지 않고 정상적으로 올바른 현재 위치를 검출할 수가 있다. 단점으로는 비트 수가 많아지면 출력 신호선의 수가 많아져 구조상 소형화, 저가화가 어렵다는 것을 들 수 있다.

3. 모션 제어기(Motion Controller)를 사용한 모터 제어
  National Semieoductor사의 LM629 칩을 사용하여 DC 모터의 위치및 속도 제어 시스템을 구성하는 방법에 대하여 알아보도록 한다. 이 모션 제어기는 카운터와 PWM 제어기의 기능을 수행한다. 따라서 모터축에 연결된 엔코더의 A, B 펄스와 전원을 인가하면 원하는 모터의 속도 또는 위치를 제어하기 위한 PWM 신호를 출력하고, 이것을 드라이버를 통해 모터에 입력하면 원하는 모터 제어를 할 수 있다. LM629는 소형 마이크로 프로세서라고도 볼 수 있으므로 A, B 펄스 입력핀과 PWM 출력핀이 있음은 물론 외부로부터 데이터를 주고 받을 수 있는 8비트 데이터 버스를 가지고 있다. 이 모션 제어기를 이용한 모터 제어는 그림 12와 같은 형태의 블록 다이어그램을 갖는다.
  Main CPU는 모터 제어를 위해서 매 샘플링시간마다 엔코더 정보를 이용해서 피드백을 갖지 않고, 단순히 원하는 회전 속도만을 지령하게 되며, 모션 제어기에서 매 샘플링 시간마다 엔코더 정보를 피드백 받아서 제어하게 된다.

[출처] DC모터제어|작성자 북청물짱

Comments