Mobilgene C Studio 에서 AUTOSAR 개발을 진행할 때
새로운 기능을 구현하려면 Component 추가 작업이 필수이다.
이번 글에서는 Software Component(arxml) 생성부터 RTE 반영까지 전체 흐름을 정리한다.
처음 접하는 경우 가장 헷갈리는 부분이
"arxml 파일 생성 → Component 생성 → 왜 Composition과 RTE까지 연결해야 하는가?" 이다.
이 글에서는 단순 절차가 아니라 왜 이 과정을 하는지까지 포함해서 이해 중심으로 설명한다.
1. Component 란 무엇인가?
AUTOSAR에서 Component는 하나의 "기능 블록" 이다.
예를 들면:
- 도어 잠금 제어
- 윈도우 제어
- 전동 시트 제어
- 충전 도어 제어
이런 기능들이 각각 하나의 Component로 나뉜다.
코드가 아니라 구조(설계 단위)를 만드는 과정이다.
2. AUTOSAR File (arxml) 생성
내가 연습하고 있는 프로젝트 구성은 아래와 같다.
폴더에 마우스 커서를 놓고 우클릭하여 New > AUTOSAR File 을 선택한다.
왜 arxml 파일을 먼저 만드는가? 의문이 들 수 있다.
AUTOSAR 는 모든 설정을 arxml (XML 기반 설정 파일) 로 관리하기 때문이다.

3. AUTOSAR File 이름 설정
File Name 을 입력한다.
예: SWC_TEST.arxml

Finish 를 누르게 되면 아래와 같이 arxml 이 생성되고 하위 항목에 ARPackage 가 생성된다.
- ARPackage = 폴더 개념 (논리적 그룹)
- Component를 묶어서 관리하는 단위
Component를 정리하는 폴더라고 생각하면 된다.

4. Component 생성
생성된 arxml 파일 하위(ARPackage)에서 마우스 우클릭 → New → 원하는 Component 타입을 선택한다.
대표적으로 Application Sw Component Type 을 많이 선택한다.

Component 를 생성했으면 Short Name 에 이름을 입력한다.
단순 이름이 아니라 식별자 역할을 한다.
이 이름은 이후 코드, RTE, 연결 설정에 모두 사용된다.
(아래는 TEST 로 예를 들어 설명하나, 실제 개발에 사용할 떄는 TEST 라는 이름은 사용하지 말자)

5. Composition 연결 (핵심)
생성된 Component 를 Root Composition 에 추가한다.
(프로젝트 > Configuration > System > Composition > RootComposition.arxml > CSWC_RootComposition)
여기서 대부분 막힌다.
질문: Component 만들었는데 왜 동작 안하지?
이유: Composition 에 연결 안했기 때문
Composition이란?
Component 들을 실제 ECU 구조로 배치하는 단계이다.
비유하면:
- Component = 부품
- Composition = 완성된 제품 조립
즉, Component 는 만들기만 하면 끝이 아니라 시스템에 배치해야 한다.

6. RTE 설정 (실제 코드 생성과 연결)
Scons.arxml 내 Rte 설정에서 해당 Input Files List 에 Component 를 추가해준다.
왜 RTE 등록이 필요한가?
RTE(Runtime Environment)는 Component 간 통신을 연결해주는 중간 계층이다.
RTE 역할:
- 함수 호출 연결
- 데이터 전달
- 인터페이스 연결
RTE에 등록해야 실제 코드가 생성된다.


여기서 Scons.arxml 라고 했는데, 사실 이건 AUTOSAR 표준이 아니다.
툴(Mobilgene) 또는 프로젝트에서 정의한 설정 파일이라 프로젝트마다 다를 수 있다.
* 참고: Scons 는 빌드 시스템 이름에서 유래됨 (SCons 기반)
예:
- Scons.arxml
- Rte_Config.arxml
- BuildConfig.arxml
정리
- Component는 기능 단위 블록이다.
- arxml은 AUTOSAR의 설정 중심 파일이다.
- Composition은 시스템 구성 단계이다. (Composition 이 누락되면 실행이 안된다.)
- RTE는 실제 코드 생성과 연결된다. (RTE 등록이 누락되면 코드가 생성되지 않는다.)
Component 생성 → 연결 → RTE 등록까지 해야 비로소 동작한다.
'mobilgene' 카테고리의 다른 글
| 기본 동작 6. Runnable 생성 및 동작 추가 (0) | 2026.04.10 |
|---|---|
| 기본 동작 5. P-Port 와 R-Port 연결 하기 (0) | 2026.04.10 |
| 기본 동작 4. Interface 생성 및 Port 설정 방법 (0) | 2026.04.10 |
| 기본 동작 2. Project Import 방법 (0) | 2026.04.09 |
| 기본 동작 1. Build Command (0) | 2026.04.09 |