본문 바로가기
Engineering

[cRIO] 1. CompactRIO Architecture

by 투썬 아빠 2012. 11. 30.



CompactRIO(이하 cRIO)는 National Instruments의 대표적인 제품 중 하나입니다.

RTOS로 동작하는 Rea-Time Processr가 탑재된 Controller와 FPGA가 내장된 샤시로 구성된 산업용 임베디드 컨트롤러입니다. 제어 및 계측 분야에 널리 쓰일 수 있으며 튼튼한 내구성을 자랑합니다. 일반 PC 환경에서 LabVIEW로 개발이 가능 하고 , 개발한 내용을 cRIO에 배포하여 Host없이 Standalone으로 동작이 가능 것이 큰 장점입니다. cRIO의 샤시에 어떤 모듈(AI,AO,DIO, Motion 등)을 연결하느냐에 따라서 다양한 어플리케이션을 구성할 수 있습니다.

 

오늘부터 이 cRIO에 대해 알아보는 내용을 포스팅 하도록 하겠습니다.

이 내용들은 NI에서 제공하는 'NI LabVIEW for CompactRIO Developer's Guide'를 바탕으로 함을 미리 알려드립니다.

 

1. cRIO Architecture

<그림 1 cRIO & cRIO Architecture>

 

cRIO는 앞서 언급 했듯이 Real-Time Processor와 FPGA가 내장된 산업용 임베디드 컨드롤러입니다.

측정 및 제어하고자 하는 내용에 따라 Sensor 혹은 Actuator를 구성할 것입니다. NI에서는 이러한 Sensor나 Actuator에 대한 다양한 I/O 모듈을 제공하고 있습니다. 이 모듈을 제어하는 것인 RT Processor와 FPGA가 되는 것입니다. RT Processor와 FPGA는 내부 버스로 연결이 되어 있으며, RT Processor와 FPGA를 이용하여 I/O 모듈을 사용하게 되는 것입니다.

 

2. Real-Time Controller

cRIO는 제품별로 400MHz,533MHz,800MHz의 Real-Time Controller로 구성되어 있습니다.(최근에는 i7 1.33GHz의 CPU를 가지는 제품도 출시되었습니다.) Controller에는 이더넷 포트. RS-232포트가 기본적으로 포함되어 있으며, 9~30VDC의 전원을 사용합니다. LabVIEW로 개발이 가능하며, 윈도우에서 LabVIEW를 이용하여 일반적인 어플리케이션을 개발하는 방법과 동일합니다. 개발된 내용은 cRIO에 배포할 때 RTOS에 동작할 수 있도록 컴파일됩니다.

<그림 2 cRIO Controller>

 

RTOS에 대한 설명은 http://naset.blog.me/80026234152 http://www.ni.com/white-paper/3938/ko를 참고하시기 바랍니다.

요약하자면 개발자가 개발한 내용을 정확한 시간에 정확하게 동작시키도록 하는 것입니다. 이 때 언급되는 용어가 정시성, 신뢰성입니다.

정시성이란, 동작시간을 정확하게 지킨다는 것입니다. 예를 들어 A라는 프로그램을 10ms마다 동작하게 프로그래밍하였다면 그렇게 동작하게 됩니다. Windows와 같은 일반 OS의 경우 Background로 동작하는 프로그램들(백신 등) 때문에 이런 정시성이 보장되기 어렵습니다.

신뢰성이란, 일종의 보장입니다. 장시간 안정적으로 동작함을 보장한다는 의미입니다.

 

3. 재구성 가능한 FPGA

FPGA란 Field Programmable Gate Array의 약자입니다. 즉, 프로그래밍 가능한 게이트의 집합으로 보십니다. 쉽게는 하드웨어를 직접 프로그래밍 하여 구성하는 것으로 생각 하면 됩니다. cRIO에서는 샤시의 형태로 구성이 되어있으며, Controller와 연결하여 사용합니다.

<그림 3 재구성 가능한 FPGA 샤시>

 

FPGA는 OS가 동작하지 않고, 하드웨어 그 자체로 동작이 이루어집니다. OS의 Clock을 이용하지 않기 때문에 보다 고속, 정확한 타이밍의 동작을 구현할 수 있습니다. RT 컨트롤러와 FPGA 샤시는 버스로 연결이 되지만 FPGA 샤시에 장착하는 I/O Module과는 직접 연결이 됩니다.(버스를 이용하지 않음) 덕분에 보다 빠른 제어 및 측정이 이루어지는 것입니다.

 

4. I/O 모듈

NI에서는 50개 이상의 I/O 모듈을 제공합니다. C 시리즈 모듈이라고 부릅니다.

측정용 I/O 모듈들은 측정 신호에 따라 다양하게 구성되어 있습니다. 기본적으로는 측정하고자 하는 신호의 종류(Analog,Digital), 크기, 속도 등에 따라 선택할 수 있습니다. 측정용 모듈 뿐만 아니라, 통신용(CAN, RS-485 등), 제어용(DC, Step, Serve 모터 등) 등 산업 전반에서 다루어지는 제어 및 측정용 모듈로 구성이 되어 있습니다. C 시리즈 모듈에 대한 정보는 http://sine.ni.com/nips/cds/view/p/lang/ko/nid/14147에서 확인할 수 있습니다.

<그림 4 NI I/O 모듈 >

 

 

이상으로 cRIO의 구조와 개요를 알아보았습니다. 

PC에서 cRIO를 사용하기 위한 기본적인 환경 구성은 [LabVIEW] How to Start Single Board RIO 를 참고하시기 바랍니다.

sbRIO는 cRIO를 보드형태로 만든 것이기 때문에 사용법은 동일합니다.


 


댓글