배너
닫기

테크노트

배너

[차량용 EPS] CompactRIO를 이용한 EPS용 반력 시뮬레이터 개발

  • 등록 2012.07.31 19:34:05
URL복사

CompactRIO를 이용한
EPS용 반력 시뮬레이터 개발

김응수 Korea Delphi Automotive 선임연구원

애플리케이션 요약

이 애플리케이션은 차량용 EPS(Electronics Power Steering)를 개발하기 위한 Lab Level의 차량 주행 구동조건을 구현하는 반력 시뮬레이터 시스템의 개발이다.
즉, 차량주행 시 Steering Column에 전달되는 노면과 타이어의 마찰력을 유압 시스템을 이용하여 구현 하고자 함이다.
노면과 타이어의 마찰 등으로 발생하는 반발력에 대한 데이터는 Vehicle Level 실 주행 실험에서 추출해 냈으며, 텍스트 기반 2D 맵 데이터로써 차량의 속도와 Steering Angle 조건입력 등을 바탕으로 2D 맵 데이터로부터 값을 추출하여 반력 유압 시스템을 다이내믹 하게 제어함으로써 차량 주행 시 Steering에 전달되는 반발력을 구현했다.
이를 통해 Vehicle Level의 테스트 이전에 안전하고 충분한 EPS개발 테스트와 디버깅을 할 수 있는 환경 을 구축했다.

해결 과제

차량 주행 시 발생하는 조향장치(Steering) 반발력의 구현은 차량의 속도와 조향장치 각도 및 도로의 상태에 따라 매우 다이내믹하며, 높은 응답성을 요구 한다.
따라서 이러한 반발력을 생성하는 요소들에 대한 반응 시간이 가장 중요한 이슈가 되었다. 즉, 차량 속도, 조향장치 각도, 조향장치 각도 속도 등의 입력을 바탕으로 Vehicle Level에서 취득한 반발력 토크 맵 데이터(텍스트 데이터 기반) 중 해당 조건에 대한 반발력 데이터를 매칭하여 해당 값을 유압 시스템에 출력함으로써 최종 반발력을 구현하는 것이다.
이에 각종 센서로부터 데이터 취득과 취득된 데이터를 이용한 연산과 맵 데이터 매칭을 거쳐 출력까지의 일련 동작을 실시간 및 높은 신뢰성과 빠른 응답으로 처리하는 시스템 로직 설계가 필요했다.

[시스템 구성]

LabVIEW 2010, LabVIEW FPGA 모듈, LabVIEW 리얼타임 모듈, NI 9116, CompactRIO-9024, NI 92152Set, NI 9853 1Set, NI 9269 1Set, NI 9474 1Set

[NI 솔루션 채택된 이유]
• 타임 크리티컬(Time Critical)한 시스템의 특성상 FPGA를 통한 고속 데이터수집과 프로세싱 필요
• 정밀한 디지털과 아날로그 제어 신호의 출력 필요
• 차량주행 조건에 맞는 다이내믹 제어 실시간 제공 필요
• Vehicle Level에서 만들어진 반발력 토크 맵 데이터의 빠른 매핑 필요
• LabVIEW를 이용하여 소프트웨어 개발 기간 단축 필요
• 강력한 함수 라이브러리를 이용한 알고리즘 구현의 용이성
• PC 제어 없는 임베디드 시스템의 구축 필요



솔루션

따라서 시스템에는 NI LabVIEW 2010과 Compact RIO를 사용했다. 이에 샤시는 8슬롯으로 모듈 확장이 용이하며, 로직 구현에 충분한 리소스와 높은 응답성 을 제공하는 자일링스사의 Vertex-5 LX85가 내장된 NI-9116을 적용했다. 또한 RT 컨트롤러는 신뢰성이 높은 리얼타임 OS(VxWorks)가 탑재된 NI Compact RIO-9024를 사용했다.
NI CompactRIO-9024는 4GB의 저장소와 512MB DRAM을 탑재하고 있어 방대한 양의 데이터수집 및 로깅과 함께 800MHz의 CPU를 장착하여 빠른 데이터 처리가 가능했다. 또한 2개의 이더넷 포트와 1개의 RS-232로 외부장치와 인터페이스가 용이했으며, 1개 의 USB 포트를 제공하여 외부 메모리 접근의 확장성이 높았다.
I/O 모듈 구성 중 4 채널 아날로그 인풋 모듈인 NI 9215 2개를 장착하여 총 8개의 아날로그 센서 시그널 을 처리했으며, 2개 포트의 CAN 통신을 지원하는 NI 9853을 통해서, 개발 중인 EPS ECU와의 CAN 통신 신호를 처리했다.
NI 9474는 8개의 디지털 출력을 내는 모듈로서 차량의 속도를 PWM으로 구현하여 EPS ECU에 송신함으로 가상의 차량 속도를 만들어 처리하는 기능을 했다. 또한 채널 간 아이솔레이션이 된 NI 9269를 통해 채널 간 간섭 없이 정밀한 아날로그 출력을 유압 시스템에 인가했다.
위의 CompactRIO구성은 다이내믹하고 다양한 차 량의 센서 시그널 처리와 함께 차량용 통신 신호인 CAN 시그널 처리와 정밀한 디지털/아날로그 출력을 제어할 수 있었으며 FPGA와 RT-OS를 통해 빠르고 신뢰성 높은 차량용 시뮬레이터 시스템을 구현할 수 있는 최적 솔루션이었다.



전체 시스템 구성

그림 1과 같이 타깃인 EPS ECU로부터 입력된 8개의 센서 신호(NI 9215)와 CAN 데이터(NI 9853)는 FPGA 필드에서 수집(주기 : 100μs)이 되며 차량 속도 (NI 9269)는 PWM(0Km/h~250Km/h: 1.41Hz~ 353Hz, Duty ratio 50%)으로 생성하여 EPS ECU에 전달한다.
수집된 데이터는 FIFO를 통해 RT Target(cRIO- 9024)에서 데이터 분석과 데이터 프로세싱 로직을 거쳐 유횻값으로 변환 후 RT 타깃 플래시에 미리 저장된 반발력 맵 데이터를 기준으로 매핑 알고리즘을 적용해 최종 제어 값을 맵 데이터상에서 추출과 FPGA의 아날로그 발생 알고리즘에 입력하게 된다. 이에 NI 9269 모듈은 ±10V 범위로 유압 액추에이터에 제어신호를 전달하게 된다.
입력된 센서 신호와 최종 유압 시스템 제어 값은 유압 시스템의 제어에 사용됨과 동시에 큐(Queue)에 저장 후 TCP/IP 통신으로 호스트 PC에 보내지며 Host PC는 반발력 시뮬레이터의 동작과 상태를 모니터링할 수 있도록 구성된다. 또한 사용자 선택에 의해 몇몇 제어신호를 다이내믹 제어와 동시에 제어할 수 있도록 구성되어 있다.



FPGA Field (NI-9116) : 그림 2는 FPGA 소프트웨어의 블록 다이어그램을 나타내며 센서의 입력을 처리 하는 Sensor Input Process Routine과 CAN 통신을 처리하는 CAN Message Process Routine을 볼 수 있다. 출력을 담당하는 EPS Reaction Output Routine 과 PWM Generator Routine은 각각 유압 액추에이 터 제어와 차량 속도를 PWM으로 출력하는 기능을 수행한다.

RT-OS Field (cRIO-9024) : 그림 3은 RT-OS에 구현된 소프트웨어의 블록 다이어그램을 나타내며 FPGA로부터 습득된 데이터를 처리하고 출력 데이터를 저장된 데이터베이스로부터 추출하여 결정 값을 다시 FPGA로 보내며 Host PC로의 각 데이터를 TCP/IP로 보내는 기능을 수행한다
이에 가장 핵심이 되는 부분은 그림 4에서와같이 저장된 맵 데이터를 센서로부터 입력된 값을 기준으로 추출하기 위한 알고리즘이다. 맵 데이터를 입력 값 기준으로 잘라 최소화한 후 리니어리티를 부여하기 위해 보간한 후 값을 추출했다.

Host PC : 그림 5는 Host PC의 메인 화면이며 주로 EPS 시뮬레이터와 각종 센서의 상태 값을 모니터링하는 것이 주 목적이다. 이에 대부분 데이터는 그래프에 누적 데이터로 디스플레이되며 중요한 요소는 따로 디스플레이하도록 구성되어 있다. 로우 데이터를 텍스트 기반의 데이터로 모니터링하기 위하여 탭 컨트롤을 사용해 구성했다.

솔루션 개발 후 이점

4개월이라는 촉박한 개발 목표 기간을 고려했을 때 이 애플리케이션은 2개월 만에 완료가 됐으므로, 상당 한 시간적 절약 효과를 나타내었다.
또한 긴 시간과 노하우가 필요한 FPGA 프로그램의 경우 LabVIEW 코딩만으로 기능 구현과 디버깅이 가능했고, FPGA의 로직 구현으로 인해 빠른 데이터의 수집이 가능했다.
검증된 OS(VxWorks)를 사용한 RT-OS의 높은 안 정성으로 신뢰도 높은 데이터 처리가 보증됐으며 이를 바탕으로 제어 타깃 전체 루프 타임이 50ms로 제어 타깃인 유압 액추에이터의 응답성보다 높은 응답성을 나타냄으로써 시스템의 제어 효과를 높였다.
소프트웨어 개발 완료 후에는 CompactRIO에 소프트웨어를 임베디드함으로써 PC의 제어 없이 스탠드 얼론 오퍼레이션S이 가능하여 반력 시뮬레이터의 제어가 훨씬 원활해졌다. 또한 Vehicle Level 반력 토크 맵 데이터의 경우 다양한 주행조건의 데이터를 Compact RIO-9024 스토리지에 지속적으로 업데이트할 수 있어 더욱 다양한 Lab Level의 시뮬레이션 환경을 제공하게 되었다.
또한 샤시 슬롯의 확장성이 용이하여 모듈의 추가로만 차량의 각종 조건을 추가로 I/O 할 수 있어 한 번의 CompactRIO 시스템 구축을 통해 추후 발생하는 요청 사항의 대응이 비용 부담 없이 용이하게 이뤄질 수 있었다.
소프트웨어 제어 알고리즘 구현 관점에서는 기본적인 알고리즘과 함수들이 제공되어 이를 단순 조합 또는 간단한 변수 변경만으로도 복잡한 알고리즘을 쉽게 만들어, 기능을 빠르고 정확하게 구현할 수 있었다는 점이 LabVIEW와 CompactRIO 솔루션의 강력한 장점이다.









배너










주요파트너/추천기업