본문 바로가기
Engineering etc.

PWM 완전 정복!

by 항공학도 2012. 11. 1.

기계과나 전자과 2학년쯤 되면서부터 PWM이란 말을 많이 듣게 되실텐데요 그 개념에대해 정확히 이해하지 못하면 참 쉬운건데도 무슨소린지 햇갈리죠 그래서 준비 했습니다 PWM완전정복!!!

PWM이란 Pulse Width Modulation의 줄임말로 한국말로 바꾸면 펄.스.폭.변.조 입니다. 이 "펄스 폭 변조" 라는 말만 잘 떠올려 보시면 PWM의 모든것을 이해하실 수 있는데요 PWM의 모든것이기 때문이죠.

그럼 펄스폭 변조가 무엇이냐? 다음 그림으로 이해하시면 빠르실거라 생각합니다. 아래 사진은 제가 AVR을 이용해 PWM 파형을 생성한후 Oscilloscope로 측정한 화면인데요

     

위 두사진을 보시면 사각파의 펄스 폭이 서로 다른것을 알 수 있죠? 바로 이렇게 사각파펄스폭을 바꿔주는 것을 PWM이라고 합니다. 또 이러한 파형 자체를 PWM이라고 부르기도 하죠.

그러면 도대체 펄스폭을 바꿔서 뭘 어쩌겠다는 것일까요? 우리가 실험 환경에서 주로 사용하는 소형 모터들은 0~12V의 전압으로 동작하고 그 인가되는 전압의 크기에 따라 모터의 속도를 변화 시키죠. 이렇게 모터의 속도를 바꾸려면 다소 복잡한.. 모터드라이브가 필요한데요(만약, 모터드라이브 없이 모터에 12V와 GND만 연결하면 최고 속도로만 계속 회전하겠죠)하지만, 이 모터드라이브의 출력은 보통 0과 5V 또는 0과 12v의 디지털 출력입니다. 즉 2.3V, 3,25V등의 전압을 만들어 낼 수가 없다는 말이죠,,

여기서 바로 PWM이란 녀석이 등장하게 됩니다. 0~5V전압으로 동작하는 모터가 중간속도를 내려면 2.5V의 전압이 흘러들어와야 하겠죠? 그런데 모터드라이버 이녀석은 0과 5V밖에 만들어 내지 못하므로 2.5V를 만드려면 새로운 발상의 전환이 필요했어요(엔지니어링에서 혁신은 항상 발상의 전환으로 부터 나오는 것 같네요^^)

바로 작은 트릭을 쓰는 것이죠, 2.5V를 만들고 싶으면 0V와 5V를 같은 비율로 하여(Duty ratio 50%) 빠른 속도로 바꿔 줍니다.(위 첫번째 사진처럼요 주파수가 1kH인것을 보실 수 있죠) 그럼 모터드라이브의 출력은 같은 비율을 유지하면서 0505050505050505이렇게 빠르게 바뀌게 되는데요 이때!! 바로 모터는 이것을 2.5V인것처럼 인식한다는 것이 PWM의 핵심이에요 실제로 실험을 해보시면 마치 2.5V를 인가해준 것처럼 동작하게 되죠. 이렇게 PWM의 펄스 폭을 바꾸어 주면 자신이 원하는 아날로그 전압을 디지털 전압 출력만으로 만들 수 있게 됩니다.(사실 트릭이라고 얘기 했지만 수학적으로 증명이 되는 내용입니다 ^^ 간단한 적분만 하면 증명할 수 있어요)

이러한 펄스폭의 비율을 Duty Ratio라고 하는데요  아래 그림에서 보듯이 5V인 시간을 전체주기로 나누어 100을 곱하면 duty ratio가 됩니다. 아래 그림은 제가 25%의 duty ratio를 주어 만든 파형인데요 그럼 5V인시간이 전체 주기의 1/4이 되겠죠.

이렇게 PWM의 duty ratio를 바꾸어줌으로서 자신이 원하는 속도로 모터를 회전시킬 수 있게 됩니다. PWM은 그 의미와 주변 용어들의 의미만 잘 기억해 놓으신다면 전혀 어려울 것 없는 내용이니 꼭 기억해 두시기 바랍니다!~

댓글