본문 바로가기

Work

Automotive Diagnostics

잘 모르는 걸, 일하면서 배우려니 환장할 노릇이다.
하지만 전 직장 동료들도 아주 깊은 수준까지 아는 사람은 제한적이었을 것. 그럼 결국 이건 내가 원하면 파고들 수 있는 분야라는 이야기. 가치가 높아진다는 생각을 갖고 구조적으로 학습해 보자.


SAE J1939는 차량용 통신 규격이며, CAN을 기반으로 한다. (LIN이나 RS232, RS485 등은 따로 있다는 얘긴가?)
다만 이 규격은 heavy duty 차량에만 적용되고, light/medium duty/1996년 이후 미국차량엔 OBD-II 규격이 적용된다.
그러나 지금 회사에선 medium duty truck에도 J1939를 적용하는데, 저 duty가 중장비 차량의 용어는 아닌 건가? 미국향 라인업은 OBD-II를 사용해야 한다고 들었다.

DTC (Diagnostic Trouble Code)
1) OBD-II DTC: P-code, C-code 등 카테고리 이름으로도 부른다. P0123와 같은 형태로 되어 있다.
2) J1939 DTC: : 4 바이트짜리 코드다.
    SPN(Suspect Parameter Number, 19-bit), 결국 fault code.
    FMI(Failure Mode Identifier, 5-bit): 카테고리 같은 건가?
    CM(Conversion Mode, 1-bit): 정확히 이해 안 되지만, old version code와의 호환성을 위한 값으로 보인다.
    OC(Occurrence Counter, 7-bit): 발생횟수. 코드에 상태 값이 포함된다니 신기.
아래 링크에 아주 상세히 설명되어 있다.
https://www.calamp.com/blog/dtc-codes/

같은 J1939라도 J2012 표준이 있고, ISO15031 표준이 있다. 호환 안 됨.


ISO26262는 차량용 기능안전 규격이다.
ASIL(Automotive Safety Integrity Level)은 차량의 안전 충실도 수준이라고 해석할 수 있는데, 어떤 상황의 위험 등급을 가리킨다.
ASIL-A는 총점(빈도, 심각성 등 평가지표 합산)이 낮은 상황. 어떤 기능이 ASIL-A 기능이라고 한다면 Functional Safety 관점에서 중요도/치명도가 낮다는 의미가 된다. 반면 ASIL-D는 발생 시 치명적인 사고 상황이며, 그 등급의 기능은 매우 중요하게 설계되어야 한다. 하나의 등급 기능을 여러개로 쪼개 위험점수를 낮추는 분석을 하던데, 상세한 건 아직 잘 모르겠다. (ex. ASIL-D => ASIL-C + ASIL-A)
ASIL 등급에 해당하지 않는 failure/fault 경우들은 QM(Quality Management)이라고 분류하며, 그냥 제품에 문제는 있지만 컴플레인 받거나 성능에 지장이 있는 것이지 위험 상황을 초래하지 않는 것들이라고 본다.

그간 느낀 점을 솔직히 말하자면, ASIL 등급 산정하는 건 업계 관례에 따르거나 자의적인 부분이 많고, 새로운 기능에 대해 F/S 인증평가자의 해석이나 협의에 따라 헛다리 짚는 경우가 나오지 않으리란 법이 없다 (전엔 몰랐는데 알고보니 한방에 사람 죽는 사고로 이어지더라 식). 그런 의미에서, ISO26262는 '이런 방식으로 제품을 설계하면 아마 충분히 고민해서 어이없는 제품을 만들지 않을 것이다' 정도의 가이드라인이지 절대적 안전 수호자가 아니다.

 

 

 

 

'Work' 카테고리의 다른 글

BMS의 전화위복  (0) 2024.03.15
Easy way to fix employees  (0) 2024.03.13
CAN Frame 구조  (0) 2023.11.11
Machine learning이 재난을 예측하기 어려운 이유  (0) 2023.10.07
Industrial-technical-professional deception  (0) 2023.10.01