2012년 9월 19일 수요일

AVR, ARM, PLC, PAC 기초개념잡기

기계 혹은 공정을 제어하는 '두뇌'들의 이름이 참으로 다양해서, 뭘 붙들고 공부해야 할 지 포인트가 안잡혔는데, 의외로 주변(풍력터빈의 제어)에서 힌트를 얻어 찾아보니 어렴풋이 그림이 나오는 듯 하다. 일단 결론부터 요약하면, 매우 다양한 컨트롤러가 있는데 성능과 가격에 따라서 그 활용처가 달라지는 것이고, 개발자에게 제공하는 인터페이스 또한 각자 특색을 지니는 것 같다.

AVR하고 인텔I7 비교, 일단 pin수만 비교해도 어떤게 더 비싼넘인지 딱 나온다.


1. AVR

AVR 이나 PIC 같은 마이크로컨트롤러는 천원정도의 낮은 가격에 단순한 제어에 적합한 MCU(Micro Controller Unit)로서, 만약 휴머노이드를 만든다고 하면 팔다리의 반사신경이나 반복동작을 구현하는 데 적합한 것으로 보인다. 밥통, 냉장고 등 단순생활가전에 많이 사용되는 편임.


2. ARM

요넘은 AVR류보다 메모리용량이 크고, 속도도 빠르다고 한다. 요즘 MP3 player는 어떤지 모르겠지만, 한창 임베디드 리눅스나 CE계열 운영체제가 탑재되었던 MP3는 요넘을 썼다고 한다. 가격은 AVR에 10배정도 되는 것 같다.(물론 구매방식에 따라 다를 수 있겠지...)


3. PLC

Programmable Logical Unit의 약자로 위의 AVR, ARM같은 MCU에다가 추가적인 회로와 응용프로그램을 덧붙여서 만든 '프로세스 제어용 유닛'인듯... 특정한 제품형태를 지칭한다기 보다는 제어처리기의 일반명사이다. 요넘은 각 메이커 별로 고유의 Hardware, OS, Protocol, Programming Tool 등을 사용하기에 제조사가 바뀌면 그에 따른 학습이 필요하다.


4. PAC

한 마디로 PC를 사용한 PLC라고 할 수 있는데, Programmable Automation Controller라고 부르는 듯 하다. 위에 쓴 것처럼 PLC는 제조업체에 따라서 다른 특성을 지니고 있는데 반해, PC를 제어의 중심에 두면 Windows도 깔 수 있고... 로직을 다양한 언어로 작성할 수 있으며, 유연하게 확장할 수 있다는 장점이 생긴다. 하지만, Windows라는 말에서 느낄 수 있듯이(?) 안정성이 떨어지는 단점이 있다. 바이러스나 악성코드에도 취약하기 때문에 산업용 컨트롤 유닛으로는 부적합하다는 주장이 많은 듯...

그래도 대규모 기계나 공정프로세스를 운영할 때는 PC를 쓰나 AVR을 쓰나 제품의 가격 혹은 플랜트의 경제성에 미치는 영향이 크지 않으므로 날이 갈수록 용처가 많아지는 듯 함. 게다가 멀티코어 CPU가 많이 발달한 요즈음, 개별코어들을 활용해서 제어의 Safety를 backup하는 솔루션도 선보이는 것 같다.


한 풍력터빈 제어업체는 쿼드코어 CPU에서 각각의 코어를 컨트롤하기 때문에 한 넘이 죽어도 다른 넘들은 지장이 없도록 잘 해놓았다고 한다.

댓글 없음:

댓글 쓰기