Mobilgene에서 CAN DB Import는 단순히 .dbc 파일을 넣는 작업이 아니다.
DBC 파일의 메시지 / Signal 정보를 프로젝트에 반영하고, 이후 Harmonize와 Generate까지 진행해야 실제 ECU 코드에 적용된다.
즉, 전체 흐름은 아래와 같다.
DBC 준비
→ Import
→ 설정 확인
→ Harmonize
→ Generate
→ Build
이번 글에서는 실제로 어디서 무엇을 눌러야 하는지, 그리고 왜 그 작업을 하는지까지 함께 정리한다.
1. Import 전에 먼저 확인할 것
DBC Import 전에 가장 먼저 해야 할 일은 현재 프로젝트 상태 확인이다.
이미 이전 버전 DBC가 반영되어 있다면 새 DBC를 그대로 Import했을 때 중복 메시지, Signal 충돌, Generate 오류가 발생할 수 있다.
따라서 아래 항목을 먼저 확인한다.
- 기존 CAN DB가 이미 들어가 있는지
- 같은 메시지 이름이 있는지
- 신규 DBC가 최신 버전인지
- 사용할 ECU Node 이름이 무엇인지
- CAN Cluster 이름이 무엇인지 (B_CAN, PT_CAN 등)
2. 기존 설정이 있다면 정리
프로젝트 안에 기존 DB가 있다면 아래 메뉴에서 확인한다.
EcuExtract → Communication and Topology 탭

여기서 기존 CAN 관련 Element가 남아 있다면 새 DB와 중복될 수 있다.
실무 팁
- 전체 교체 작업이면 기존 항목 삭제 후 Import
- 일부 추가 작업이면 중복 여부 확인 후 진행
BCAN DB Import 작업을 할 예정이다. (현재 BCAN Cluster 를 제거한 모습)
3. DBC Import 시작
이제 실제 Import를 진행한다.
EcuExtract → Overview 탭 → Import DBC

버전에 따라 메뉴 이름은 조금 다를 수 있지만 보통 Overview 탭에 있다.
DBC 파일을 Drag & Drop으로 넣을 수 있는 버전도 있다.
4. 파일 선택 창 설정
Import 창이 열리면 아래 항목을 설정한다.

1. Select File
가져올 DBC 파일 경로를 선택한다. DBC를 변환한 ARXML 파일 저장 위치다.
2. New AUTOSAR File
생성될 ARXML 파일 이름이다.
예:
B_CAN.arxml
BCAN.arxml
기존 프로젝트에서 사용하던 이름이 있다면 동일하게 유지하는 것이 안전하다.
5. Select ECU 설정
다음 화면에서 Select ECU를 선택한다.
여기서 현재 개발 중인 ECU Node를 선택해야 한다.

DBC 안에는 여러 ECU가 정의되어 있다.
내 ECU를 선택해야 툴이 자동으로 아래처럼 구분한다.
내가 보내는 메시지 → Tx
내가 받는 메시지 → Rx
잘못 선택하면 Rx / Tx 가 반대로 생성되고, 필요한 메시지가 누락되거나, 불필요한 메시지가 추가될 수 있다.

Handle Out Of Range는 Signal 값이 정의된 범위를 벗어났을 때 어떻게 처리할지를 설정하는 옵션이다.
Import 화면에서는 Message 단위로 선택하여 일괄 적용할 수 있으며, 모든 Message를 선택(Alt+A)한 후 Handle Out Of Range를 NONE으로 설정하면 해당 Message에 포함된 모든 Signal에 적용된다.
예를 들어, 특정 Signal이 0~100 범위로 정의되어 있는데 150과 같은 값이 들어올 경우, 해당 값을 어떻게 처리할지 결정하는 역할을 한다.
Import 과정에서 해당 항목이 설정되지 않으면 아래와 같이 Warning이 발생할 수 있다.

이 경우, 모든 메시지들을 선택(Alt+A)한 후 하단의 Handle Out Of Range 항목을 NONE으로 설정하고 Do it!을 클릭하여 일괄 적용할 수 있다.
다만, 이 설정은 프로젝트 요구사항에 따라 달라질 수 있으며, Safety 또는 OEM 규격이 있는 경우 별도로 정의해야 한다.
Import 단계에서는 DBC → AUTOSAR 구조 변환이 목적이므로, Handle Out Of Range 설정은 필수 사항이 아니며, Warning이 발생하더라도 무시하고 Next를 진행해도 문제 없다.
6. CAN Cluster 선택
다음 단계에서는 CAN Cluster를 지정한다.
이 설정은 메시지가 어느 CAN 네트워크에 연결되는지 의미한다.
예를 들어 B-CAN 메시지를 PT-CAN에 연결하면 실제 차량에서 통신되지 않는다.
목록에 없다면 직접 입력하는 경우도 있다.

7. Finish로 Import 완료
설정을 마치고 Finish를 누르면 Import가 진행된다.
내부적으로는 아래 작업이 수행된다.
DBC 분석
→ 메시지 생성
→ Signal 생성
→ AUTOSAR 구조 반영
8. Import 후 바로 확인할 것
Import가 끝났다고 바로 끝난 것이 아니다.
필요한 메시지가 들어왔는지 반드시 확인한다.
메시지 확인은 EcuExtract → Communication and Topology 탭에 BCAN Cluster 가 생겼는지 확인한다.

9. Harmonize 진행
Import된 내용을 ECU 설정과 연결하는 단계다.

EcucValueCollection → Overview → Generate ECU Configuration 을 클릭한다.
다음 화면에서 DBImport > BCAN.arxml 파일이 체크되어 있는지 확인한다.

Harmonize는 Import된 Communication 정의를 ECU Configuration에 연결하고, 관련 모듈 설정을 동기화하는 작업이다.
쉽게 말하면 “새로운 통신 정보가 들어왔으니 Can, CanIf, Com, PduR 같은 모듈 설정도 맞춰서 정리해라”라는 과정이다.
이 작업을 수행하면 프로젝트 내부에서 필요한 PDU, Signal, Routing Path 등이 자동으로 연결된다.
Import만 해서는 실제 코드 생성까지 이어지지 않기 때문에 Harmonize는 거의 필수 단계라고 볼 수 있다.

Database 추가/변경되어야 하는 모듈들을 위와 같이 선택 후 Next → Finish 순으로 선택한다.
Diagnostic, IO Stack, Lin Stack, Service, Error Modules 는 선택하지 않는다.
Service-Rte 를 체크하면 기존 Application Port 깨질 수 있고, Compile 에러가 발생할 가능성이 있다.
Error Modules 를 체크하면, 불필요한 에러가 확산될 것이고
Lin Stackt 을 체크하면 LIN을 변경하지 않았는데 LIN 모듈까지 영향이 갈 수 있다.
10. Generate 및 Build
Harmonize가 끝났다면 Generate 를 수행한다.
여기서 에러가 없으면 설정 반영은 정상적으로 완료된 것이다.

정리
Mobilgene에서 CAN DB Import는 아래 순서만 기억하면 된다.
Import DBC
→ ECU 선택
→ Cluster 선택
→ 메시지 확인
→ Harmonize
→ Generate
→ Build
중요한 것은 Import 버튼을 누르는 것이 아니라, 올바른 ECU 선택과 Import 후 검증이다.
'mobilgene > CAN' 카테고리의 다른 글
| [CAN] AUTOSAR Com Timeout 설정 방법과 동작 원리 (0) | 2026.05.24 |
|---|---|
| [CAN] AUTOSAR Rte_COMCbk 함수는 왜 필요한가 (SignalGroup Notification) (0) | 2026.04.29 |
| [CAN] AUTOSAR Com 구조 완전 이해 — ComSignalGroup 중심 실무 설정 방법 (0) | 2026.04.28 |