최근 자동차 산업에서는 하드웨어 부품에 대한 연구뿐만 아니라 하드웨어를 제어하는 임베디드 소프트웨어에 대한 연구가 점차 증가하고 있다. 기존 임베디드 소프트웨어 개발은 자동차 제작사별로 독자적으로 이루어져 소프트웨어 재사용성, 상호운용성 등의 문제점이 대두되었다. AUTOSAR는 이러한 문제점을 해결하기 위해 제시된 컴포넌트 기반의 자동차 소프트웨어 아키텍처 표준이다. AUTOSAR에서는 다양한 다이어그램들을 작성하고 이들간의 연관성을 유지시켜야 하므로 도구 지원이 요구된다. 현재 몇몇 외국기업에서 고가의 AUTOSAR 지원 개발도구의 프로토타입을 선보이고 있다. 이 연구에서는 이클립스GMF 기술을 이용하여 AUTOSAR 3.0 표준을 충실히 따르면서 기존 도구들의 단점을 보완하는 차량용 소프트웨어의 컴포넌트 모델링 도구를 개발한다. 개발된 도구는 크게 그래픽 기반의 컴포넌트 모델링 도구와 네트워크 토폴로지 도구로 구성된다. 이러한 도구들은 직접 구현된 것이 아니라 개발 업체에 맞게 손쉽게 이클립스 GMF로 생성할 수 있으므로 개발업체 맞춤화 및 국제표준 발전에 쉽게 발맞출 수 있는 장점이 있다.
최근 자동차 산업에서는 하드웨어 부품에 대한 연구뿐만 아니라 하드웨어를 제어하는 임베디드 소프트웨어에 대한 연구가 점차 증가하고 있다. 기존 임베디드 소프트웨어 개발은 자동차 제작사별로 독자적으로 이루어져 소프트웨어 재사용성, 상호운용성 등의 문제점이 대두되었다. AUTOSAR는 이러한 문제점을 해결하기 위해 제시된 컴포넌트 기반의 자동차 소프트웨어 아키텍처 표준이다. AUTOSAR에서는 다양한 다이어그램들을 작성하고 이들간의 연관성을 유지시켜야 하므로 도구 지원이 요구된다. 현재 몇몇 외국기업에서 고가의 AUTOSAR 지원 개발도구의 프로토타입을 선보이고 있다. 이 연구에서는 이클립스 GMF 기술을 이용하여 AUTOSAR 3.0 표준을 충실히 따르면서 기존 도구들의 단점을 보완하는 차량용 소프트웨어의 컴포넌트 모델링 도구를 개발한다. 개발된 도구는 크게 그래픽 기반의 컴포넌트 모델링 도구와 네트워크 토폴로지 도구로 구성된다. 이러한 도구들은 직접 구현된 것이 아니라 개발 업체에 맞게 손쉽게 이클립스 GMF로 생성할 수 있으므로 개발업체 맞춤화 및 국제표준 발전에 쉽게 발맞출 수 있는 장점이 있다.
Recently, in automotive industry, there have been many researches related with hardware components and embedded software which controls hardware components. Since most of embedded software is tightly dependent on car manufacturers, there were some problems in reusability and interoperability of auto...
Recently, in automotive industry, there have been many researches related with hardware components and embedded software which controls hardware components. Since most of embedded software is tightly dependent on car manufacturers, there were some problems in reusability and interoperability of automotive software. In order to solve these problems, AUTOSAR standardized the component-based software architecture of automotive software. In AUTOSAR, several modeling diagrams should be described and their dependencies are also checked. Currently, a few company developed the prototypes of tools supporting AUTOSAR. In this paper, a component modeling tool based on AUTOSAR 3.0 is developed for enhancing the usability of existing tools using Eclipse GMF. The tool is composed of a graphical component modeling tool and a graphical network topology tool. Since these tools are generated based on GMF without hard coding, it is relatively easy to customize the tools for adopting company‘s needs and easy to follow the improvement of the standard and development environments.
Recently, in automotive industry, there have been many researches related with hardware components and embedded software which controls hardware components. Since most of embedded software is tightly dependent on car manufacturers, there were some problems in reusability and interoperability of automotive software. In order to solve these problems, AUTOSAR standardized the component-based software architecture of automotive software. In AUTOSAR, several modeling diagrams should be described and their dependencies are also checked. Currently, a few company developed the prototypes of tools supporting AUTOSAR. In this paper, a component modeling tool based on AUTOSAR 3.0 is developed for enhancing the usability of existing tools using Eclipse GMF. The tool is composed of a graphical component modeling tool and a graphical network topology tool. Since these tools are generated based on GMF without hard coding, it is relatively easy to customize the tools for adopting company‘s needs and easy to follow the improvement of the standard and development environments.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
이 논문에서는 이클립스 GMF(Graphical Modeling Framework) 개발 방법[13]을 이용하여 AUTOSAR 표준을 따르는 차량용 컴포넌트 소프트웨어 모델링 도구를 제안한다. 이 모델링 도구는 AUTOSAR 표준의 기본 개념 중에서 응용 소프트웨어 컴포넌트를 모델링하는 단계와 모델링한 컴포넌트를 각 ECU의 RTE(Runtime Environment) 상황과 네트워크 토폴로지를 고려하여 ECU로 매핑하는 단계를 지원한다.
기존도구들을 상용으로 만들어져 있어 구현언어가 알려져 있지 않으며 단위 도구간의 상호운용성과 사용자 맞춤화 부분이 취약한 것으로 파악된다. 이 연구에서는 AUTOSAR 표준에 따라 도구간의 상호운용성을 보장하며 공개 소스 기반의 개발하여 사용자 맞춤화가 가능한 도구를 개발하고자 한다.
AUTOSAR의 컴포넌트 기반 개발방법에서는 다양한 다이어그램을 작성하여야 하며 다이어그램간의 일관성을 유지하기 위해서는 도구의 지원이 요구된다. 이 연구에서는 이클립스 GMF 기술을 이용하여 AUTOSAR 3.0 표준을 충실히 따르면서 기존 도구들의 단점을 보완하는 차량용 소프트웨어의 컴포넌트 모델링 도구인 그래픽 기반의 컴포넌트 모델링 도구와 네트워크 토폴로지 도구를 개발하였다. 그리고 이러한 모델링 편집기의 속성을 입력할 수 있는 다양한 속성 창을 개발하여 다이어그램 편집기와 연계하였다.
제 5 절에서 간단한 응용시스템을 대상으로 개발된 차량용 소프트웨어 모델링 도구의 유용성과 사용자 GUI 맞춤화 가능성을 언급한다. 제 6 절에서 결론을 맺고 향후 연구에 대해 기술한다.
제안 방법
0 표준을 충실히 따르면서 기존 도구들의 단점을 보완하는 차량용 소프트웨어의 컴포넌트 모델링 도구인 그래픽 기반의 컴포넌트 모델링 도구와 네트워크 토폴로지 도구를 개발하였다. 그리고 이러한 모델링 편집기의 속성을 입력할 수 있는 다양한 속성 창을 개발하여 다이어그램 편집기와 연계하였다. 이러한 도구들은 이클립스 GMF로 생성되어 개발 업체에 맞게 손쉽게 맞춤화할 수 있으며 국제 표준 및 개발 환경 발전에 쉽게 발맞출 수 있는 장점이 있다.
(그림 1)은 AUTOSAR 표준의 기본 개념을 보여준다. 먼저 VFB(Virtual Functional Bus) 관점에서 소프트웨어 컴포넌트들을 정의하고 컴포넌트의 인터페이스 등을 SW-C 명세에 기술하고 이들 소프트웨어 컴포넌트 간의 상호 연관성을 나타낸다. 이후, ECU 명세와 시스템 제약사항 명세를 참조하고 SW 개발 도구를 활용하여 SW 컴포넌트를 구현한다.
논문의 구성은 다음과 같다. 먼저 제 2 절에서 AUTOSAR에 대한 개요와 대표적인 상용화 도구인 dSPACE의 SystemDesk, Vector사의 DaVinci, Mentor Graphics사의 Vehicle System Architect에 대해 기술한다. 제 3 절에서 차량용 소프트웨어 컴포넌트 모델링 도구에 대한 메타 모델을 작성하고 전체 모델링 도구의 설계를 제공한다.
GMF를 이용하여 모델링 도구를 구현하기 위해서는 먼저 EMF를 이용하여 구현하고자 하는 도메인의 메타모델을 정의해야 한다. 앞 절에서 정의한 컴포넌트 다이어그램 편집기와 네트워크 토폴로지 편집기의 메타모델을 Ecore 편집기를 이용하여 메타모델을 입력한 후 EMF 모델인 genmodel 파일을 생성한다. Genmodel 파일에서 Generate Model Code, Generate Edit Code, Generate Editor Code 메뉴를 이용해 EMF 모델 플러그 인을 자동 생성한다.
그리고 GMF로 생성되지 않는 부분들은 직접 프로그래밍하여 다이어그램 편집기와 연계하여 동작하게 한다. 이 논문에서 제공하는 AUTOSAR 지원 도구들은 구현언어로 직접 구현되지 않고 AUTOSAR 표준에 제공되는 메타모델을 기반으로 GMF를 이용하여 다양한 다이어그램 편집기들을 생성하는 방법을 이용한다. 이러한 생성 방법에서는 도구의 아이콘 모양, 레이아웃, 노드의 모양 크기 등을 맞춤화할 수 있기 때문에, 사용자의 요청에 따라 새롭게 생성하여 제공할 수 있는 장점이 있다.
다이어그램 편집기를 생성하기 위해서는 먼저 다이어그램의 편집기의 메타 모델이 명확히 정의되어야 한다. 이 절에서는 AUTOSAR 3.0 표준 명세를 분석하여 소프트웨어 컴포넌트 다이어그램 편집기와 네트워크 토폴로지 편집기에 대한 메타 모델을 정의하고 소프트웨어 컴포넌트 모델링 도구를 설계한다.
그러므로 이 메소드의 반환값에는 메소드의 실행 결과로 모델에 적용되어야 할 사항들이 담겨 있다. 이 프로젝트에서는 노드의 속성을 정의하기 위해서 다이얼로그를 열고, 수정되어야 할 사항들을 EMF가 정의하는 명령어 형태로 만들어 나중에 GMF 명령어에서 실행되도록 매크로 명령어 형태로 구현했다. 이에 해당하는 코드는 아래와 같다.
즉, GUI 기반의 컴포넌트 모델링 도구, 네트워크 토폴로지 다이어그램 생성도구와 ECU와 컴포넌트 매핑 기능 등을 지원한다. 이클립스 GMF를 이용하여 다이어그램 편집기를 개발하므로 우선 컴포넌트 다이어그램과 네트워크 토폴로지 다이어그램의 메타 모델을 정의하고 이를 기반으로 GMF 프레임워크를 이용하여 다이어그램 편집기를 생성한다. 그리고 GMF로 생성되지 않는 부분들은 직접 프로그래밍하여 다이어그램 편집기와 연계하여 동작하게 한다.
먼저 VFB(Virtual Functional Bus) 관점에서 소프트웨어 컴포넌트들을 정의하고 컴포넌트의 인터페이스 등을 SW-C 명세에 기술하고 이들 소프트웨어 컴포넌트 간의 상호 연관성을 나타낸다. 이후, ECU 명세와 시스템 제약사항 명세를 참조하고 SW 개발 도구를 활용하여 SW 컴포넌트를 구현한다. 그 다음 단계는 구현된 컴포넌트들을 ECU에 배치하는 단계로 각 ECU의 RTE 상황을 고려하여 SW 컴포넌트들을 맞춤화 과정을 거친 다음 ECU로 매핑하여 배치한다.
차량용 소프트웨어 컴포넌트 모델링 도구는 크게 컴포넌트 다이어그램 편집기, 네트워크 토폴로지 편집기, 모델정보의 입력하는 속성 편집기로 나뉘어볼 수 있다. 컴포넌트 다이어그램 편집기와 네트워크 토폴로지 편집기는 앞서 정의한 메타모델을 이용하여 이클립스 GMF 프레임워크[13]를 이용하여 개략적인 다이어그램 편집기를 생성한다. 하지만 다양한 컴포넌트 및 네트워크의 속성들을 편집하는 속성 편집기는 속성 창으로 구현되므로 자바 언어로 구현된다.
이론/모형
이 논문에서 개발된 AUTOSAR지원 도구는 공개소스 기반으로 이클립스와 자바 언어로 구현되어 있다. (그림 13)은 도구의 개략적인 구조로 이클립스 GMF 프레임워크에 의해 생성된 부분과 자바로 직접 구현된 속성창 부분을 나타내고 있다.
하지만 기존 자동차 소프트웨어 모듈들은 자동차 제작사별로 독자적으로 개발이 이루어지고 있어 소프트웨어 재사용성 및 상호운용성, 생산성 저하 등의 문제점이 대두되었다. 이러한 문제점들을 해결하기 위한 노력의 일환으로 공통 자동차 소프트웨어 아키텍처인 AUTOSAR(AUTomotive Open System ARchitecture)[4]를 지정하고 이를 국제 표준으로 채택하였다.
후속연구
일부 고급 차량의 내부에는 70개 이상의 ECU(Electronic Control Unit)가 들어가고 각ECU들은 10가지 이상의 다른 버스 시스템으로 연결된다[2]. 그리고 향후 고급 기종의 자동차에는 1G 정도의 소프트웨어 코드가 포함될 것으로 예상된다[3]. 하지만 기존 자동차 소프트웨어 모듈들은 자동차 제작사별로 독자적으로 개발이 이루어지고 있어 소프트웨어 재사용성 및 상호운용성, 생산성 저하 등의 문제점이 대두되었다.
또한 AUTOSAR 개발 방법론의 다음 단계인 ECU 플랫폼 설정 단계에 대한 지원을 위해 AUTOSAR XML 기술 파일로 모델링된 소프트웨어 정보를 추출하는 기능이 요구 된다. 향후 소프트웨어 컴포넌트 모델과 네트워크 토폴로지 모델에 속성을 추가하는 모듈과 AUTOSAR XML 스키마 정의를 참조하여 소프트웨어 모델링 정보를 XML 기술 파일로 추출하는 기능을 구현할 예정이다.
질의응답
핵심어
질문
논문에서 추출한 답변
AUTOSAR는?
AUTOSAR는 컴포넌트 기반 개발에 기반을 둔 모델 기반 개발방법론[5]으로 먼저 논리적인 관점에서 시스템의 컴포넌트들을 식별하고 컴포넌트간의 관계를 다이어그램으로 표현한다. 개념적인 관점에서의 컴포넌트 개발이 완성되면 ECU와 네트워크로 구성된 실제 시스템 아키텍처에 매핑한다.
자동차 소프트웨어 모듈들은 자동차 제작사별로 독자적으로 개발이 이루어지고 있어 소프트웨어 재사용성, 생산성 저하 등의 문제점이 대두되었다. 이를 해결하기 위한 노력의 결실은 무엇인가?
지금까지 자동차 소프트웨어 모듈들은 자동차 제작사별로 독자적으로 개발이 이루어지고 있어 소프트웨어 재사용성, 생산성 저하 등의 문제점이 대두되었다. 이러한 문제점들을 해결하기 위한 노력의 일환으로 AUTOSAR라는 공통 소프트웨어 아키텍처를 국제 표준으로 채택하였다. AUTOSAR 는 자동차 제작사와 부품업체 툴 제작업체가 협조하여 2004년부터 표준화 작업을 시작하였고 2007년 말 Release 3.0을 공개하였으며 이를 바탕으로 자동차 ECU를 개발하는 것이 가능하게 되었다.
ECU간의 연결은 어떻게 하나?
개념적인 관점에서의 컴포넌트 개발이 완성되면 ECU와 네트워크로 구성된 실제 시스템 아키텍처에 매핑한다. ECU간의 연결은 토폴로지 네트워크를 이용하여 네트워크 특성 등을 기술하고 논리적 컴포넌트들은 각각의 ECU로 매핑된다. AUTOSAR의 모델 기반 개발 방법은 다양한 형태의 다이어그램들을 작성하고 이들간의 매핑 등을 제공하여야 하므로 이러한 작업을 효율적으로 수행하기 위해서는 AUTOSAR 표준을 따르는 모델링 도구들의 지원이 필수적이다.
참고문헌 (16)
Hardung Bernd, Kolzow Thorsten, and Kruger Adnreas, "Reuse of Software in Distributed Embedded Automotive Systems," Proceedings of the 4th ACM International Conference on Embedded Software, pp.203-210, 2004.
P. Hansen. "New S-Class Mercedes: Pioneering Electronics," The Hansen Report on Automotive Electronics, Vol.18, No.8, pp.1-2, Oct., 2005.
A. Pretschner, M. Broy, I.H. Kruger, T. Stauner, "Software Engineering for Automotive Systems: A Roadmap," Future of Software Engineering, May, 2007.
AUTOSAR, Automotive Open System Architecture, Release 3.1, http://www.autosar.org
O. Niggemann, J. Stroop, "Models for Model's Sake : Why Explicit System Models are also an End to themselves," 30thinternational Conference on Software Engineering, 2008.
H. Li, P. Lu, M. Yao, N. Li, "SmartSAR: A Component-based Hierarchy Software Platform for Automotive Electronics," International Conference on Embedded Software and Systems, 2009.
D. Schreiner, M. Schordan, K. M. Goschka, "Component Based Middleware-Synthesis for AUTOSAR Basic Software," IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing, 2009.
H. C. Jo, S. Piao, S. R. Cho, W. Y. Jung, "RTE Template Structure for AUTOSAR based Embedded Software Platform,"IEEE/ASME International Conference on Mechtronic and Embedded Systems and Applications, 2008.
dSpace, "SystemDesk for developing complex system architectures," http://www.dspaceinc.com/ww/en/inc/home/products/sw/system_architecture_software/systemdesk.cfm
A. Rajnak, A. Kumar, "Computer-aided Architecture Design & Optimized Implementation of Distributed Automotive EE Systems," 44thACM/IEEE Design Automation Conference, 2007.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.