소프트웨어 정의로 설계된 PAC
  • 2013-11-08
  • 김창수 기자, cskim@elec4.co.kr
  • 글 | 브렛 버거(Brett Burger) 내쇼날인스트루먼트 임베디드 시스템 시니어 제품 매니저


오늘날 컨트롤 설계자들은 복잡해져 가는 문제를 해결해야 하는 임무로 시스템 간소화에 대한 압박에 시달리고 있다. 안타깝게도 이런 문제를 해결하기 위한 솔루션을 명확히 정의하기는 어렵다. 따라서 시스템 간소화에 대한 해결법에 접근하기 위해 산업시장의 트렌드가 대신 논의되고 있다.



글 | 브렛 버거(Brett Burger)
내쇼날인스트루먼트 임베디드 시스템 시니어 제품 매니저


먼저 산업시장의 트렌드는 모터의 초기 동작에 대한 오류나 효율성 손실에 대한 원인을 확인하기 위해 계속해서 모니터링되고 있다. 또한 절삭기 제어 입력은 디지털 온-오프 제어 방식에서 벗어나, 힘을 정밀하게 제어해 대상의 모서리와 밀도를 감지하는 피드백을 활용한 비전 가이드 모션 구조로 진화하고 있다. 이와 같이 시장의 요구와 복잡해지는 제어 문제를 해결하기 위해 상용 기술의 통합이 필요하다는 것을 알 수 있다. 다행히도 컨트롤 설계자를 위한 상용기술은 계속해서 발전하는 중이다.

PAC와 임베디드 컨트롤러 프로세싱 결합으로 다양한 서브시스템 간소화
PAC을 위한 최신 프로세싱 기술은 현재 소프트웨어 정의로 설계된 내쇼날인스트루먼트 cRIO-9068 컨트롤러와 함께 사용할 수 있다. 이 컨트롤러의 마이크로프로세서는 Xilinx의 최신 실리콘 기술인 Zynq에 구축됐다. 이 SoC는 부동소수점 연산 코어와 FPGA, DSP 슬라이스를 단일 칩에 결합해 컨트롤 설계자들이 더욱 간소화된 아키텍처를 생성할 수 있어, 고급 머신을 위한 알고리즘을 컨트롤러에 나눌 수 있다.
로직 게이트보다 래더 로직에 더 익숙한 컨트롤 설계자에게는 다소 생소할 수 있지만, 모든 PAC과 PLC, 임베디드 컨트롤러는 프로세싱 요소가 포함되어 있다. 일부 요소는 신호 처리와 타이밍을 위해 사용되는 FPGA 또는 ASIC이 포함되며, 이러한 프로세싱 요소는 망치와 같은 기초 공구와 유사하다. 철물점의 공구 코너에 가면, 다양한 종류의 망치들이 전시되어 있다. 종류는 많지만, 역할에 따라 용도가 나뉘어 작업에 맞는 올바른 공구를 사용하는 것이 중요하다. PC 기반 자동화는 일반 망치와 유사하다. 즉 대부분 애플리케이션에 사용하기 충분할 정도로 다용도이지만, 나무망치로서 임무를 수행하기에 너무 강하고, 쇠망치로 쓰기에는 너무 가벼우며, 해머로 사용하기에는 너무 작다. 표준 부동 소수점 연산 프로세서는 비록 고속 타이밍과 트리거링, 낮은 지연성이 요구되는 애플리케이션에는 부족할 수 있지만, 광범위한 애플리케이션에서 사용하기 에는 적합하다. 부동소수점 연산 프로세서는 신호 및 제어 신호를 위해서도 사용할 수 있다. 하지만 반복적인 알고리즘에 사용되는 FPGA나 DSP와 비교하면 비용이 비싸다. FPGA는 프로세싱 집약적인 알고리즘에는 적합하지만, 런타임 유연성에 제약이 있다. 따라서 PAC/PLC와 임베디드 컨트롤러의 프로세싱 요소들을 결합한 솔루션은 다양한 서브시스템을 간소화하는 데 아주 좋다.

서브시스템, 특정 기능 역할
기본적인 수준에서 보면, 서브시스템은 하드웨어와 소프트웨어를 조합해 온도 제어 시스템과 같은 특정 기능의 역할을 한다. 이 경우 하드웨어 입력은 온도 센서이고, 출력은 팬이나 히터를 제어하며, 시스템을 위한 소프트웨어 로직은 간단한 리밋 기능부터 고급 PID 알고리즘까지 적용될 수 있다. 이 온도 컨트롤러는 여러 컴포넌트가 있는 복합 머신의 맞춤형 보드에 개별적으로 구현된 디자인으로써, 케이블로 연결된 버스를 통해 메인 컨트롤러와 통신한다. 서브 컨트롤러마다 개별적으로 최적화된 하드웨어 디자인이 필요 없이 설계자들은 새로운 임베디드 컨트롤러를 이용해 유연한 단일 코어를 더욱 쉽게 활용할 수 있다. 이로써 소프트웨어로 설계한 더욱 적은 컨트롤러는 머신을 간소화해 더 적은 설계비용으로 더 빠르게 시장 출시가 가능하다. 머신의 서브시스템은 호스트 부동소수점 연산 프로세서나 가용 FPGA/DSP 리소스에서 실행할 수 있는 소프트웨어 블록으로써 간략화할 수 있다. 이제 서브 컨트롤러가 아닌 서브루틴을 생각하면 된다.
하드웨어 기반의 많은 서브 컨트롤러들은 이미 모듈형 I/O와 새로운 임베디드 컨트롤러의 고급 기능을 이용해 맞춤형 FPGA/DSP를 사용해 구현됨으로써, 추가적인 하드웨어 구성을 줄이는 데 효과적이다. 이 기술은 여러 서브시스템과 페어링된 고성능 머신을 포함하는 애플리케이션에 적합하다. 예를 들어 레이저 톱은 실리콘 웨이퍼의 제작 공정에 사용된다. 이 상용 기술은 첨단 기계식 커터를 이용했을 때보다 낭비가 덜하고 속도도 빠르게 엔지니어의 프로세스 실리콘 웨이퍼를 제조하는 데 도움을 준다. 이런 결과를 얻기 위해 머신에는 온도 제어와 레이저 제어, 인라인 처리가 가능한 고속 아날로그 입력, 사용자 인터페이스를 제공하는 모니터링용 PC를 위한 개별 컨트롤러가 포함된 여러 서브시스템이 있다. 중앙 컨트롤과의 통신 프레임워크는 모든 서브 컨트롤러에 필요하므로 현재의 머신 설계자들은 각 서브시스템을 위한 개별 디자인을 개발한다. 최신 프로세싱 기술이 적용된 임베디드 컨트롤러를 이용하면 그림 1과 같이 여러 서브시스템을 단일 컨트롤러로 대체할 수 있다. 각 컨트롤러를 위한 소프트웨어/펌웨어 명령 세트는 메인 컨트롤러의 서브루틴으로 존재하며, 시스템 설계자들은 적절한 서브루틴을 복사/붙여넣기 하거나, 다른 I/O 모듈을 추가해 시스템을 확장할 수 있다.



맞춤형 ASIC, 효율적인 CPU 사용에 제한

고성능 머신은 청결한 웨이퍼 제조 환경에만 국한시켜 사용하지 않는 것이 중요하다. 집약적인 신호 처리와 측정 품질 I/O는 특히 중장비의 유지보수에서 더 많이 보급되어 있다. 상용 임베디드 컨트롤러로 이러한 시스템을 설계하는 것이 더욱 직관적이지만, 전통적인 맞춤형 ASIC 또는 FPGA/DSP를 사용해 설계하는 경우도 있다. 맞춤형 ASIC을 사용하는 경우, 모터의 유지보수를 위해 RMS 연산과 FFT를 사용하고, 이러한 알고리즘은 채널수와 함께 CPU 리소스를 증가시키며, 다른 태스크를 위한 CPU 리소스를 사전에 예약해놓기 때문에 CPU의 효율적인 사용을 제한하거나 비용을 증가시킨다. 이 프로세스를 FPGA/DSP 프로세싱 유닛과 조합하면 FPGA가 여러 프로세스를 더욱 효율적으로 처리하는 것처럼 CPU에 워크로드 일부가 없어지고 데이터 전송률이 향상된다. FPGA의 크기는 정해져 있지만, 이 공간에 병렬 프로세스를 추가하는 데 기능 제한은 없다. 앞의 비유처럼 무언가를 부수는 데 망치를 이용할 수 있지만, 효율성이 높아진다면 해머를 이용하는 것이 적합하다.

중요해지는 소프트웨어 툴
일부 디자인의 중심이 소프트웨어로 이동하면서 가용 프로세싱 기술을 이용하기 위해 사용할 수 있는 소프트웨어 툴이 중요해졌다. PAC/PLC에 가장 일반적인 프로그래밍 표준은 IEC 61131이다. 61131은 순차 디지털 프로세스와 제어에 중점을 둔 추상 언어이고, 고급 프로그래밍을 처리하거나 FPGA/DSP를 대상으로 제작되지 않았다. 많은 고급 컨트롤 설계자들이 임베디드 설계에 C 언어와 같은 표준 프로그래밍 언어를 찾고 있다. C 언어는 대부분의 태스크나 프로세싱 타깃을 처리할 수 있지만, 로우-레벨 언어로 서브루틴 디자인을 구현하는 데 다양한 지식과 시간이 필요하다. 61131과 C 언어의 중간쯤에 해당하는 프로그래밍 환경도 존재한다. 예를 들어 NI LabVIEW 시스템 디자인 소프트웨어는 두 소프트웨어 환경 간의 균형을 제공한다. 이 소프트웨어는 메모리 핸들링과 스레딩, 코어 관리를 포함한 프로그래밍 프로세스를 간소화하는 동시에, FPGA 코어의 프로세싱과 I/O 요소에 로우-레벨 접근도 제공한다.

상용 기술 활용이 관건
프로그래밍을 위한 문법적인 부분 이외에도, 표준 변경과 더욱 낮은 비용으로 더 빠르게 혁신해야 하는 요구 등, 계속해서 복잡해지는 문제들을 해결하기 위해 시스템 설계자들이 상용 기술을 활용할 수 있어야 한다. 결과적으로 이 요소를 프로그래밍하는 방법이 없다면, 프로세싱 요소들은 설계자에게 이점이 되지 않는다. 현재의 고급 컨트롤 시스템에서 사용할 수 있는 프로세싱 요소와 펌웨어 대부분이 고정되어 있거나 접근할 수 없다. 임베디드 컨트롤러가 더 많이 개방될수록 컨트롤 설계자들은 이러한 복합 머신을 더욱 적은 서브시스템들로 병합하기 쉬워진다. 예를 들어 PAC/PLC는 웨이브폼을 측정하고 후처리 값 또는 PID ‘컨트롤 칩’만 출력하는 모듈을 갖춰 이미 하드웨어적으로 구성된 기능이 포함됐다. 이 설계 방식은 구현해야 할 하드웨어비용을 절감시키지만, 펌웨어를 디버깅하거나 수정할 수 있는 유연함을 설계자에게 제공하지는 않는다. 또한 컴포넌트의 수명이 다하면, 알고리즘을 정확하게 복제하는 것이 어려워 여러 잠재적인 문제를 낳을 수 있다.



차세대 임베디드 컨트롤러, 간소화된 아키텍처로 시장 출시 앞당겨
새로운 cRIO-9068 컨트롤러(그림 2)는 부동 소수점 연산 프로세서와 DSP 슬라이스를 제공하는 FPGA, Linux 리얼타임 버전의 운영체제를 제공한다. 설계자들은 쉘 액세스를 통해 방대한 Linux 커뮤니티에 접근함으로써, 절감된 시간과 리소스로 머신을 구성하고 실행할 수 있다. 상용 Linux 애플리케이션 외에도 새로운 부동 소수점 연산 프로세서는 LabVIEW 소프트웨어와 Eclipse 개발환경 모두를 지원해 컨트롤 설계자가 기존의 C/C++ 코드를 재사용할 수 있다. 따라서 사용자는 기존의 소프트웨어를 최소한의 작업만으로 최신 하드웨어에 배포할 수 있다.
제강 공장과 섬유 산업, 반도체 등의 업계는 더욱 스마트한 머신에 대한 수요가 일어나면서 향상된 머신 컨트롤 디자인 기술에 대한 요구가 강해질 것이다. 최신 하이브리드 프로세싱 기술을 이용하는 PAC과 임베디드 컨트롤러의 아키텍처가 여러 특정 PAC/PLC 또는 맞춤형 설계와 통합되어 컨트롤러 개수가 적은 소프트웨어 설계 방식의 컨트롤러로 전환되면서, 머신 설계를 발전시키고 간소화되는데 도움을 줄 수 있다. 차세대 임베디드 컨트롤러는 기존의 프로세스 환경에서 사용되던 툴들을 대체하지는 않을 것이다. 단 이 컨트롤러는 차세대 스마트 머신에 적합하며, 더 간소화된 아키텍처로 시장 출시를 앞당기고자 하는 설계자에게 최적화되어 있다.  ES

<저작권자(c)스마트앤컴퍼니. 무단전재-재배포금지>



  • 100자평 쓰기
  • 로그인

세미나/교육/전시
TOP