본문 바로가기
반응형

AUTOSAR16

[UDS] DiagnosticSessionControl (0x10) — 세션 변경이 실제로 의미하는 것 (ISO 14229) 진단 통신을 하다 보면 한 번쯤은 이해되지 않는 순간을 마주하게 된다. 세션을 변경했을 뿐인데 통신이 끊기거나, 방금까지 풀려 있던 Security가 다시 잠기고,정상적으로 동작하던 기능이 갑자기 멈추는 상황이다. 이런 문제들은 대부분 하나의 지점으로 수렴한다. 바로 ISO 14229에서 정의하는 DiagnosticSessionControl (0x10)이다. 이 서비스는 단순히 “세션을 바꾸는 기능”처럼 보이지만, 실제로는 ECU 내부 상태를 크게 뒤흔드는 동작이다.이걸 단순 상태 전환으로 이해하면, 이후 발생하는 문제들을 설명할 수 없게 된다. 1. Diagnostic Session이란 무엇인가 ISO 14229에서는 ECU가 항상 하나의 진단 세션을 유지하도록 정의하고 있다. 이 세션은 EC.. 2026. 5. 7.
AUTOSAR DCM - Diagnostic Request 처리 흐름 완전 이해 (DSL → DSD → DSP + 전체 흐름) DCM 설정을 어느 정도 해보고 나면, 대부분 한 번쯤 같은 문제를 겪는다. CAN 통신도 정상이고 DID 설정도 맞는 것 같은데, 실제로는 응답이 없거나 기대한 값이 나오지 않는 상황이다. 이때 많은 경우 설정을 다시 확인하는 데 시간을 쓰지만, 실제로 필요한 것은 설정이 아니라 "요청이 ECU 내부에서 어떤 경로로 이동하고 처리되는지에 대한 흐름 이해"다. AUTOSAR 구조에서 DCM은 단순히 데이터를 읽고 쓰는 모듈이 아니라, 진단 요청을 해석하고 시스템 전체로 전달하는 중앙 처리 역할을 수행한다. 이 글에서는 Diagnostic Request가 들어왔을 때 내부에서 어떤 일이 일어나는지를 전체 흐름 → 내부 구조 → 실제 처리 흐름 순서로 연결해서 설명한다. 1. 전체 흐름 먼저 이해해야.. 2026. 4. 28.
AUTOSAR 통신 모듈 관계도 완전 정리: CAN Stack 구조와 계층별 역할 이해 AUTOSAR를 공부할 때 많은 개발자가 가장 먼저 혼란을 느끼는 부분은 통신 모듈 구조이다.COM, PduR, CanIf, CanTp, CanNm, Can Driver 등 여러 모듈 이름은 자주 보이지만,각각이 어떤 역할을 하고 서로 어떻게 연결되는지 한 번에 이해하기는 쉽지 않다. 특히 설정 툴에서 모듈이 각각 분리되어 보이기 때문에 개별 설정은 따라 할 수 있어도,전체 데이터 흐름과 구조를 이해하지 못하면 Generate 오류나 통신 문제를 분석하기 어려워진다. 이번 글에서는 첨부한 구조도를 기준으로 AUTOSAR CAN 통신 스택이 어떤 계층으로 나뉘어 있으며, 각 모듈이 어떤 역할을 담당하는지 설명한다. 1. AUTOSAR 통신 구조는 계층 구조이다. 위 그림은 AUTOSAR 전체 구조 중 CA.. 2026. 4. 27.
AUTOSAR 통신 제어 구조 완전 정리: ComM, CanSM, CanNm, BswM 역할 이해 AUTOSAR 통신 구조를 학습할 때 COM, PduR, CanIf와 같은 데이터 송수신 모듈은 비교적 역할이 명확하다. Signal을 처리하고, 데이터를 전달하고, 실제 CAN 하드웨어와 연결되는 구조이기 때문이다. 반면 ComM, CanSM, CanNm, BswM은 직접 데이터를 만드는 모듈이 아니라통신 상태(Network Communication State)와 모드 전환(Mode Management)을 관리하는 모듈이다. 따라서 개별 기능만 보면 이해가 어렵고, 모듈 간 관계를 함께 봐야 전체 구조가 보인다.이번 글에서는 첨부한 구조도를 기준으로 AUTOSAR 통신 제어 구조를 설명하고,ComM, CanSM, CanNm, BswM이 각각 어떤 책임을 가지며 어떻게 연결되는지 정리한다. 1. AU.. 2026. 4. 27.
AUTOSAR Runnable과 Event 관계 완전 이해 AUTOSAR를 공부하다 보면 SWC, Port, Interface, RTE 같은 용어는 빠르게 익히게 된다.하지만 실제 프로젝트에 들어가면 가장 자주 듣게 되는 개념은 따로 있다. 바로 Runnable 과 Event 이다. - 이 기능은 어떤 Runnable에서 동작하나요? - 몇 ms 주기로 실행되나요? - CAN 수신하면 바로 반응하나요? - Init 시점에 실행되나요? - Task랑 Runnable은 무엇이 다른가요? 이 질문들에 답할 수 있어야 AUTOSAR 실행 구조가 보이기 시작한다. 코드는 함수처럼 보이지만, 실제로는 설정된 조건에 따라 자동 실행되기 때문이다. AUTOSAR의 핵심 구조는 다음 한 줄로 정리된다. Runnable은 실행될 로직이고, Event는 그 로직을 실행시키는 .. 2026. 4. 23.
AUTOSAR 초보자를 위한 E2E Protection (통신 보호) 완벽 정리 1. E2E Protection의 정의와 필요성 E2E(End-to-End) Protection은 AUTOSAR에서 송신 애플리케이션부터 수신 애플리케이션까지 전달되는 데이터에 대해 무결성(Integrity), 순서(Sequence), 최신성(Freshness) 을 보장하기 위해, 데이터 끝단에서 수행하는 통신 보호 메커니즘이다. 즉, 중간 통신 계층(CAN, COM, PduR, RTE 등)을 신뢰하지 않고,송신 SWC와 수신 SWC 사이에서 데이터가 변조·누락·중복되지 않았는지를 End-to-End 방식으로 검증하는 기능이다. ECU 간 통신은 CAN, CAN FD, Ethernet 등 다양한 네트워크를 통해 이루어지지만,다음과 같은 이유로 데이터 신뢰성을 100% 보장할 수 없다. - 전자기 노이즈(.. 2026. 4. 22.
AUTOSAR Rte_Read / Rte_Write / Rte_Call 차이 완벽 정리 (실무 + 공식 Spec 기준) AUTOSAR 프로젝트를 처음 접하면 가장 먼저 보게 되는 코드 중 하나가 Rte_Read(), Rte_Write(), Rte_Call()이다. Runnable 함수 안에서 반복적으로 등장하고, 대부분의 Application 로직이 이 API를 중심으로 동작한다.하지만 처음 보면 이름만 비슷하고 어떤 상황에서 무엇을 써야 하는지 헷갈리기 쉽다. 예를 들어 이런 의문이 생긴다. - Rte_Read는 어디서 값을 읽는가? - Rte_Write는 일반 변수 대입과 무엇이 다른가? - Rte_Call은 왜 함수 호출처럼 생겼는가? - 세 함수는 Interface와 어떤 관계가 있는가? 이 글에서는 단순 사용법만 설명하지 않고, AUTOSAR RTE 구조 안에서 세 API가 왜 존재하는지까지 함께 정리한다... 2026. 4. 22.
AUTOSAR Port Interface 종류 총정리 (SenderReceiver / ClientServer 쉽게 이해하기) AUTOSAR를 공부하다 보면 SWC, RTE, Composition까지는 어느 정도 이해되지만,실제로 모델을 만들거나 설정을 시작하는 순간 가장 많이 헷갈리는 개념이 있다. 바로 Port 와 Interface 다. 실무에서도 AUTOSAR 설정 화면을 열어보면 다양한 Port 타입과 Interface 종류가 등장한다.처음 보는 입장에서는 아래와 같은 질문이 자연스럽게 생긴다. - Port는 정확히 무엇을 의미하는가?- Interface는 Port와 무엇이 다른가?- SenderReceiver와 ClientServer는 왜 나뉘어 있는가?- 어떤 상황에서 어떤 Interface를 선택해야 하는가?- P-Port와 R-Port는 Interface와 어떤 관계인가? 이 부분이 중요한 이유는 AUTOSAR 소.. 2026. 4. 21.
AUTOSAR Composition SWC란 무엇인가? 실무자가 반드시 알아야 할 계층 설계 구조 AUTOSAR를 공부하다 보면 SWC(Software Component)까지는 이해했는데, 그 다음 단계에서 많이 막히는 개념이 있다. 바로 Composition SWC (CompositionSwComponentType) 이다. 처음 보는 사람 입장에서는 이런 의문이 생긴다. - SWC도 있는데 왜 Composition이 또 필요할까? - Composition도 코드를 실행하나? - 내부 SWC와 무엇이 다른가? - Connector는 왜 필요한가? - 실무에서는 언제 쓰는가? 이 질문들은 매우 자연스럽다.왜냐하면 Composition은 “기능 구현용 컴포넌트”가 아니라 구조 설계용 컴포넌트이기 때문이다. 즉, Composition은 직접 기능을 수행하는 코드보다 여러 SWC를 어떻게 묶고 연결할.. 2026. 4. 20.
AUTOSAR SWC란 무엇인가? 실무자가 반드시 알아야 할 구조 정리 AUTOSAR를 공부하거나 실무 프로젝트에 들어가면 가장 자주 듣는 용어 중 하나가 SWC(Software Component) 이다. 그리고 AUTOSAR 구조를 제대로 이해하려면 가장 먼저 잡아야 하는 개념도 SWC다. 실무에서는 이런 말이 자주 나온다. - 이 기능은 어느 SWC에 넣을까? - Port 연결됐나? - Runnable 주기 몇 ms야? - Interface 맞췄나? - RTE Generate 했나? - 다른 ECU와 Signal 맵핑 끝났나? 즉, AUTOSAR 개발은 결국 SWC를 설계하고 연결하는 작업이라고 해도 과언이 아니다. 이번 글에서는 SWC의 개념, 구조, Port 종류, Interface 의미, 동작 방식, 실무 예제까지 그림과 함께 자세히 정리한다. 1. AUT.. 2026. 4. 20.
ISO26262 에서 ASIL 등급이란 무엇인가? A/B/C/D 차이 완전 정리 자동차 기능 안전을 공부하다 보면 가장 먼저 마주치는 핵심 용어 중 하나가 바로 ASIL이다. ISO 26262를 읽거나 자동차 전장 프로젝트 문서를 보다 보면ASIL A, ASIL B, ASIL C, ASIL D와 같은 표현이 반복적으로 등장한다. 처음 접하는 사람 입장에서는 단순히 “등급이 높을수록 중요한 것 같다” 정도로 이해하기 쉽지만,실제로 ASIL은 그보다 훨씬 더 중요한 의미를 가진다. ASIL은 단순한 분류표가 아니다. 어떤 차량 기능이 고장 났을 때 얼마나 위험한 결과를 만들 수 있는지 평가하고,그 위험 수준에 맞추어 개발 방법, 검증 절차, 요구사항 관리 수준을 결정하는 기준이다.즉, 자동차 소프트웨어와 하드웨어를 어떤 강도로 개발해야 하는지를 판단하는 핵심 체계라고 볼 수 있다. 이.. 2026. 4. 17.
ISO 26262란 무엇인가? 자동차 기능 안전 완전 정리 자동차는 이제 단순한 기계가 아니다. 과거에는 엔진, 브레이크, 조향장치처럼 기계적인 부품이 중심이었다면, 현재의 차량은 수십 개 이상의 ECU와 수백만 줄 이상의 소프트웨어 코드로 동작하는 복합 전자 시스템이 되었다. 운전자가 버튼 하나를 누르는 동작 뒤에도 수많은 센서 데이터 처리, 통신 네트워크 메시지, 제어 알고리즘, 진단 로직이 동시에 작동한다. 이처럼 자동차 내부의 전자 제어 시스템이 복잡해질수록, 소프트웨어 오류나 하드웨어 결함이 단순 불편을 넘어서 실제 사고로 이어질 가능성도 함께 커졌다. 예를 들어 브레이크 제어 로직이 오동작하거나, 전동 파워 스티어링 시스템이 잘못된 신호를 받아 조향이 불가능해지거나, 주행 중 계기판이 잘못된 속도를 표시한다면 운전자와 탑승자의 생명에 직접적인 영향을.. 2026. 4. 17.
반응형