AI로 OBD 진단 시작하기 — 기록을 남기는 것부터

AI로 OBD 진단 시작하기 — 기록을 남기는 것부터

4 min read

BESTNET TECH BLOG

AI로 OBD 진단 시작하기 — 기록을 남기는 것부터

시동 불량인 W204 C63 AMG를 소재로, 사람과 AI의 분담과 원본 로그를 조건과 함께 남기는 설계를 소개한다

저자: Hideyuki Chinda / BESTNET LLC2026-10-13연재 “AI를 활용한 OBD 진단” 제1회

엔진 시동이 걸리지 않는다. 예전에는 냉간 시동 직후부터 냉각 팬이 고속으로 돌았다. 이런 증상을 마주하면 곧바로 원인이나 교체 부품을 알고 싶어집니다. 이번 대상은 2009년식 Mercedes-Benz W204 C63 AMG입니다. AI를 활용해 진단을 진행하면서 가장 먼저 한 일은 차량이 돌려주는 정보를 조건과 함께 저장하는 것이었습니다.

이 연재에서는 실차에서 확인한 것과 아직 확인하지 못한 것을 나누면서 그 과정을 소개합니다. 현재 시점에서 시동 불능과 팬 이상의 원인은 확정되지 않았습니다. 첫 회의 성과는 다음 진단에 쓸 수 있는 원본을 남기고, 조사해야 할 점을 정리한 것입니다.

OBD로 무엇을 읽을 수 있나 #

OBD는 On-Board Diagnostics, 즉 차량 자기진단의 약자입니다. 차량의 전자 제어 유닛(ECU)과 통신해 고장 코드, 온도, 회전수 등을 얻을 수 있습니다. 다만 표준 OBD로 다룰 수 있는 항목과 제조사 고유 진단에서 다루는 항목은 구분해야 합니다. 고장 코드, 실측값, 차량 정보에는 각각 다른 읽기 서비스가 있고, 지원 범위도 차량마다 다릅니다. (OBD Solutions 서비스 목록)

이번에 PC와 차량을 연결한 것은 USB 연결 방식의 OBDLink EX입니다. 연결 후 기기의 모델명과 펌웨어 응답을 읽어 실물이 OBDLink EX임을 확인했습니다.

사람과 AI의 분담 #

담당작업 내용
AI공개 자료 확인, 통신 프로그램 작성, 돌아온 로그 정리
사람커넥터 연결, 키 조작, 팬 소리와 스타터 움직임 관찰

AI는 차량 앞에 서 있지 않습니다. 기기가 돌려준 값과 사람이 보고 들어 보고한 증상은 기록상으로도 나누어 다뤘습니다.

예를 들어 "키 ON, 엔진 정지"는 온도나 회전수를 읽을 때 중요한 조건입니다. 키 위치를 추측해 통신을 시작하지 않고, 현장의 보고를 확인한 뒤 진행했습니다. 시동 조작 순간을 측정하지 않았다면, 정지 중에 얻은 전압을 시동 시 전압으로 쓸 수도 없습니다. 이런 조건의 차이가 이후의 해석을 좌우합니다.

첫 회에 취득할 범위를 정하다 #

프로그램의 범위도 먼저 정했습니다. 첫 회는 어댑터 식별과 전압 확인, 이어서 표준 OBD 읽기로 한정했고, 고장 코드 삭제는 하지 않았습니다. ECU 리셋, 작동 테스트, 코딩, 플래시 쓰기도 실시하지 않았습니다. 고장 상태를 조사하기 위해 먼저 삭제 전의 응답을 남긴다는 방침입니다.

"읽기"라는 말에는 주의가 필요합니다. 이번 표준 OBD 읽기에서는 차량에 요청 프레임을 송신하고 그 응답을 받았습니다. 송신을 수반하지 않는 CAN 수동 관측과는 절차가 다릅니다.

OBDLink 공식 매뉴얼에서도 어댑터용 명령과 차량에 보내는 OBD 요청이 구분되어 있습니다. 구현은 허용한 요청만 보내는 구성으로 했습니다. (OBDLink 공식 프로그래밍 매뉴얼)

원본 로그와 취득 결과를 남기다 #

저장하는 것은 읽기 쉽게 가공한 수치만이 아닙니다. 보낸 명령, 받은 문자열과 원래의 바이트열, 일시, 기기, 키 상태를 남기고, 그 후에 해독 결과를 따로 만들었습니다. 이렇게 하면 나중에 해독 방법을 고쳐도 취득 당시의 원본으로 돌아가 확인할 수 있습니다. 화면에 "수온 21 ℃"라고 표시하는 것과, 그 값에 이른 응답을 저장하는 것에는 각각 역할이 있습니다.

또한 응답을 얻지 못한 항목을 정상값으로 채우지 않는다는 것도 정했습니다.

상태의미
0건조회에 정상 응답이 있었고 해당 항목이 없었다
미취득응답을 얻지 못했다. 0건이라고도 고장이라고도 단정할 수 없다
통신 실패통신 자체가 성립하지 않았다

중간까지만 도착한 응답을 완전한 목록으로 해석하는 것도 피합니다. AI에게 분석을 맡길수록 이 구분을 흐리지 않는 기록이 필요해집니다.

첫 회의 결과와 다음 측정 #

첫 회의 짧은 취득에서는 표준 OBD로부터 정상 응답이 있었고, 수온 21 ℃, 엔진 회전수 0 rpm 등을 확인할 수 있었습니다. 응답한 범위의 저장 고장 코드와 보류 고장 코드는 0건이었습니다. 반면 영구 고장 코드는 취득하지 못했습니다. 표준 OBD 결과만으로는 시동 허가나 조명 등을 포함한 차량 전체의 정상 여부를 판단할 수 없습니다.

어댑터로 읽은 전압은 키 OFF에서 11.9 V, 키 ON에서 11.6 V였습니다. 이는 OBD 단자 쪽 값입니다. 배터리 단자에서의 측정이나 스타터가 작동하는 동안의 전압은 취득하지 않았습니다. 다음에 전원 상태를 확인할 재료는 되지만, 이것만으로 배터리 수명이나 교체 필요성을 결정할 단계는 아닙니다.

증상 보고에도 변화가 있었습니다. 이번 키 ON에서는 팬 고속 회전이 일어나지 않았고, 시동 조작에서는 스타터가 잠깐 돌았다는 보고가 있었습니다. 이전의 "완전히 무반응"이라는 보고는 그 시점의 이력으로 남깁니다. 이번 엔진 정지 상태의 관찰로 냉간 시동 직후의 팬 이상이 해소되었다고 판단하지도 않았습니다.

이 시점에서 실차 작업은 일단 마치고, 다음에는 전원 상태를 정비한 뒤 확인을 진행하기로 했습니다. 제조사 고유 진단 프로그램도 준비했지만, 모의 응답에 의한 테스트와 실차 취득은 구분하고 있습니다. 프로그램이 테스트를 통과했다는 것은 이 차량의 각 제어 유닛과 통신했다는 증거가 되지 않습니다.

AI를 활용하면 자료 정리, 통신 처리 구현, 로그 비교를 진행하기 쉬워집니다. 그 판단을 뒷받침하는 것은 현장에서 확인한 조건과 가공 전의 응답입니다.

다음 회에서는 첫 로그를 어떻게 읽었는지, 무엇을 알게 되었고 무엇을 아직 모르는지를 취득 결과에 따라 살펴봅니다.

Updated on 2026년 10월 19일

What are your feelings

  • Happy
  • Normal
  • Sad

©2020 BESTNET.LLC . All Rights Reserved.