본문 바로가기

띠띠빵빵/엔진제어

EMS 개발 - ④ 자동차 OBD 개발 II




OBD 진단의 결과...Fail(실패)일 경우 왼쪽의 엔진 경고등이 뜬다.
(OBD, On Board Diagnosics)

  최근에 'OBD'를 검색으로 찾아주시는 분들이 많은 것을 보고, 자동차 엔진 제어 (EMS) 개발 중에서도 OBD 개발에 관하여 글을 썼습니다. OBD 개발이라는 주제로 글을 쓰고 난 후에 왠지 모를 뿌듯함이 있었는데, 오늘 또 새로운 과제가 나타났습니다.

  유입 경로 중에 'OBD2 감시 항목'이 있어서 마음에 걸렸습니다. 이렇게 세세한 부분까지 검색하시는 분들이 계시는구나라는 생각이 들면서...그래서 OBD 개발의 좀 더 심화된 내용에 대하여 글을 써보겠습니다.


*관련글*
2010/10/13 - [자동차/엔진제어] - 엔진 제어 개발 (EMS calibration)
2010/10/19 - [자동차/엔진제어] - 엔진 제어 개발의 개발 항목들
2010/10/31 - [자동차/엔진제어] - EMS 개발 - ③ 자동차 OBD 개발 I



1. OBD 진단에 대하여 좀 더 알아보자.

  OBD라는 엔진 제어 개발 항목은 미국에서 앞서 개발을 시작하였고, 현재도 미국 내에서도 가장 앞서가는 캘리포니아 주 일명 CARB의 규제가 연방의 규제로 채택되고 있습니다. OBD도 마찬가지입니다.

  이렇게 미국에서 배기 규제 이외의 OBD 관련 규제를 만들어놓다보니 유럽이나 다른 국가들도 OBD 관련 규제를 만들고 따라가기 시작하였습니다. 그래서 유럽의 OBD 규제는 EOBD, 국내 OBD 규제는 KOBD라고 부릅니다.

  OBD라는 것은 앞의 'OBD 개발 I' 포스팅에서 자동차의 진단이라고 설명을 하였습니다. 자동차의 각종 센서와 액츄에이터들이 정상 작동을 하는지 판단하는 기능을 하는 것입니다.

센서의 종류
 - 스로틀 개도 센서 (TPS, Throttle Position Sensor), O2센서, 가속 페달 센서 (Accel pedal Position sensor), 냉각수 온도센서, MAF센서 (Mass Air Flow), MAP센서 (Manifold Air Pressure), 연료 레벨 센서 등등

액츄에이터의 종류
- 인젝터, 이그니션 코일, EGR 밸브, 증발가스 밸브 등등

  ECM (Engine Control Module)과 센서&액츄에이터들이 열심히 정보를 주고 받는데, 기본적으로 그 정보가 담긴 신호(시그널)이 옳다는 전제가 있어야 ECM이 행하는 제어도 정확하다고 판단할 수 있습니다.



2. OBD1과 OBD2의 차이


  OBD는 크게 OBD1과 OBD2로 구분할 수가 있습니다. 표기에 따라 아라비아숫자, 로마숫자로 혼용하기도 하지만 의미는 똑같습니다. (OBD1 <=> OBD-I , OBD2 <=> OBD-II)

  그 차이를 간단하게 설명하자면, OBD1은 단순히 센서&액츄에이터의 고장 진단, OBD2는 센서&액츄에이터의 성능 진단이라고 볼 수 있습니다.

  OBD1은 부품 내 회로가 끊어졌거나(단선), 합선(쇼트)되었거나하여 아무런 응답도 없는 상태, 그야말로 고장을 진단하는 것을 말합니다. 이처럼 단순히 센서&액츄에이터의 고장 여부를 판단하는 수준이 OBD1에 해당되는 것입니다.

  반면에 OBD2는 부품이 옳게 작동하는지 감시하는 것으로, 고장이 발생하지는 않았더라도 충분히 성능을 발휘하는지 여부를 진단합니다.

  예를 들어 연료 내 불순물이 연료 필터에서 걸러지지 못한다면, 차츰 인젝터의 구멍(Hole)이 막힐 수가 있습니다. 이렇게 되면 ECM에서 아무리 정확한 정보를 인젝터에 보내더라도 인젝터는 구멍이 막혀 연료가 부족하게 분사될 수 밖에 없습니다. 이처럼 센서&액츄에이터에 고장은 없지만, 성능을 제대로 발휘 못하는 것을 진단할 필요가 발생하였으며 이러한 수준의 진단 항목들이 OBD2에 포함됩니다.


  OBD1은 단순히 고장 여부, 즉 0과 1의 이분법적으로 접근하기 때문에 개발이 수월하지만, OBD2는 성능 곡선의 어느 지점을 Pass와 Fail을 가르는 선(Threshold)으로 정할지 난해하기 때문에 훨씬 복잡한 소프트웨어와 개발 시간 및 노력을 필요로 합니다.