|
자동차의 Programming and 코딩
자동차의 Programming and Coding에 대해 알아보려고 한다. 차량을 제어하는 다양한 컴퓨터들을 여러 차종에 적용시켜 사용한다면 생산비, 개발비, 물류의 유통비등을 대폭으로 축소시킬 수 있게 된다.
그러한 이유로 자동차의 제작사들은 하나의 부품으로 여러 차종에 사용할 수 있게 만들어진 컴퓨터들을 만들어내기 시작하게 된다. 마치 프린터 하나를 생산해서 여러 가지 다른 사양의 컴퓨터에 설치해서 사용하게 되는 것과 같은 모양이 되는 것이다. 여기서 등장하는 것이 바로 프로그래밍과 코딩이다.
1. Programming and Coding
인터넷에 좋은 글이 있어서 인쇄를 하려고 프린터를 한 대 샀다. 프린터를 사용설명서에 나오는데로 전원을 연결하고 컴퓨터와 케이블을 연결을 해도 인쇄가 되질 않는다. 이상한다.
내가 그동안 자동차를 고쳐본 상식으로는 무슨 부품이던 자동차에 원래 있던데로 배선을 연결하고 볼트를 알맞게 조여주면 잘 작동을 했었는데......컴퓨터는 자동차와는 좀 다른 모양이다.
그림_1 프린트와 컴퓨터의 연결방식
여기 저기 물어보니 프린터를 사용하기 위해서는 프린터를 연결만 해서는 안되고 내가 사용하는 컴퓨터 사양에 알맞게 설치를 해주어야 한다는 것을 알게 되었다. 알고보니 프린터를 포장해 놓은 상자에 프로그램 CD가 동봉되어 있는 것이다.
이걸 프린터가 설치되어 있는 콤퓨타에 설치를 하고 나니 인쇄를 할 수가 있게 된다는 사실을 알게되었다. 심지어는 가로로 인쇄할지 세로로 인쇄 할지 등의 다양한 옵션들이 있다는 것도 배우게 되었다.
컴퓨터는 사전적 의미로는 다음과 같다. 전자 회로를 이용한 고속의 자동 계산기. 숫자 계산, 자동 제어, 데이터 처리, 사무 관리, 언어나 영상 정보 처리 따위에 광범위하게 이용되는 장치를 의미한다.
요즘 대부분의 가정에 사용이 되는 컴퓨터는 여러 가지가 있다. 노트북, 프린터, TV, 오디오, 전기밥솥, 냉장고, 에어컨 등 여러 가지가 있다. 하지만 근래의 자동차에는 더 많은 컴퓨터가 장착이 되어 있으며 예전에 엔진을 제어하는 컴퓨터 하나만 있을 때와는 차원이 다른 세계이다.
그림_2 Mercedes S-Class W221모델의 각종 컴퓨터
2005년에 첫 시판이 된 Mercedes W221모델의 경우 컴퓨터가 100여개 가량 되며, 2001년에 첫 시판이 된 BMW의 E66모델의 경우 80여개에 달한다.
ME와 같은 엔진제어컴퓨터(이하 ME로 표기)의 경우에 배기량과 모델의 크기가 다른 여러 차종(S-Class, E-Class, C-Class, M-Class, A-Class, B-Class , SL-Class, CLK-Class등)을 동시에 생산하게 될 경우 하나의 ME로 그 여러 차종에 사용하게 된다면 생산비, 개발비, 물류의 유통비등을 대폭으로 축소시킬 수 있게 된다.
그러한 이유로 자동차의 제작사들은 하나의 부품으로 여러 차종에 사용할 수 있게 만들어진 컴퓨터들을 만들어내기 시작하게 된다.
마치 프린터 하나를 생산해서 여러 가지 다른 사양의 컴퓨터에 설치해서 사용하게 되는 것과 같은 모양이 되는 것이다. 여기서 등장하는 것이 바로 프로그래밍과 코딩이다. 아래의 그림을 보면 좀 더 쉽게 이해를 할 수 있을 것이다.
그림_3 프로그램과 코딩을 설명한 그림
2. 프로그래밍
신품 컴퓨터를 장착 후 자동차의 사양에 알맞은 프로그램을 설치하는 행위를 말한다. 프로그램을 하기 전의 경우 위의 그림과 같이 기본적인 컴퓨터의 데이터, 제조 연월일, 해당 컴퓨터의 품번 정도만 기록이 되어 있다. 아래의 헥사 코드는 신품 컴퓨터의 내부에 프로그램이 설치되는 칩셋의 내용의 극히 일부를 읽은 것이다.
좌측 부분의 빨간색으로 표시 된 부분은 신품 컴퓨터에 실제로 쓰여져 있는 데이터이며, 우측의 파란색으로 표시 된 부분은 일반적인 사람이 알아볼 수 있게 10진수와 알파벳으로 변환을 시켜보았다. 변환을 하고 나면 이 데이터가 표시하는 의미를 어느 정도 알 수가 있을 것이다.
그림_4 프로그래밍이 되기 전의 칩셋 데이터
아래는 프로그램이 끝난 후 같은 부분의 데이터이다. 비교를 해보면 뭔가의 내용이 써졌다는 것을 알게 된다. 통상적으로 프로그래밍은 많은 량의 데이터를 컴퓨터에 쓰는 기능이므로 분량이 작을 때에는 1분에서 분량이 많을 때에는 13시간정도의 프로그래밍 시간이 필요한 컴퓨터도 있다.
그림_5 프로그래밍이 끝난 칩셋의 데이터
3. 코딩
자동차에 알맞은 데이터를 프로그래밍하고 나면, 자동차의 옵션에 따라서 시스템의 설정을 해야한다. 예를 들어서 수동변속기차량과 자동변속기 서로 옵션이 다르다. 그러므로 이러한 자동차에 설치된 옵션에 여러 가지 설정들을 선택하는 행위를 코딩이라고 한다.
아래는 코딩이 끝난 컴퓨터의 데이터이다. 위에서 프로그래밍이 끝난 상태와 비교하면 조금의 변화가 생겼다. 코딩은 옵션의 선택이므로 프로그래밍만큼 시간이 소요되지 않는다.
그림_6 코딩이 끝난 칩셋의 데이터
빨간색 밑줄을 쳐놓은 곳을 살펴보자. 몇 가지가 바뀌었다는 것을 알게 된다. 몇 가지만 예를 들어서 설명을 하게 되면 숫자 LG24000D라는 내용을 볼 수가 있다.
1) L은 좌측조향차량(Left Steering)
2) G는 가솔린(Gasoline Engine)을 표시하게 되는 것이다.
3) 아래에 차대번호가 표시된것도 볼수가 있다. 이 차대번호도 코딩을 할 때 일어나는 기능중의 일부이다.
4) 24000이라는 숫자의 의미는 다음 엔진오일 또는 소모품의 교환 주기를 의미한다. 이 경우에는 운전자가 주행을 할수록 숫자가 줄어들게 되며, 소모품 교환 주기가 되어 진단기로 리셋을 할 경우에 다시 24000으로 변경이 되게 된다.
5) 이 화면에는 나오지 않지만, 배기량과 기통 수 등의 여러 가지 코딩이 있다.
4. 업데이트 (소프트웨어 업데이트)
업데이트라고 하는 것은 말 그대로 컴퓨터에 설치되어 있는 프로그램을 상위버전의 소프트웨어로 다시 쓰는 것을 의미한다. 자동차의 제작사에서는 자동차가 판매되고 나서 소프트웨어의 결함이나 보다 더 좋은 소프트웨어가 개발이 되면, 업데이트를 할 수가 있게 되는 것이다.
<필독> 자동차에는 다양한 역할을 하는 컴퓨터들이 장착이 되어 있으며, 각각의 컴퓨터에 따라서 교환시 프로그래밍과 코딩이 필요한 컴퓨터가 있는가 하면 단순히 코딩만 있는 컴퓨터도 있으므로 유념을 하기 바란다. 또한 이것을 확인 하기 위해서는 진단기의 기능을 제대로 사용을 할 수 있어야 한다. 프로그래밍 항목이 있을 경우에는 프로그래밍을 실시하고 코딩을 실시하며, 프로그래밍 항목이 없을 때에는 바로 코딩을 실시를 하면 되겠다.
위의 내용을 토대로 컴퓨터의 프로그래밍이 제대로 실시되지 않거나 코딩이 해당 차종과 다르게 되면, 어떠한 증상이 나타날지 모르게 된다. 예를 들어 8기통 엔진을 6기통으로 코딩이 된다면, 두 개의 실린더는 작동을 하지 않게 되는 경우도 생기게 된다. 이러한 경우 그동안 자동차 정비사들이 국산자동차에서 경험 해보지 못한 고장진단과 코딩만 수정해서 자동차를 수리하는 이상한 상황들이 펼쳐지게 된다. 그러므로 프로그래밍과 코딩은 이제 자동차에서 가장 중요한 역할을 하며자동차 정비사에게 가장 기본이 되는 지식으로 자리를 잡고 있다.
5. 프로그래밍과 코딩의 과정에 따른 진단과 수리
이제 실제 자동차에서 컴퓨터를 교환하고 실시되는 프로그래밍, 코딩의 과정과 그에 따른 진단과 수리를 살펴보도록 하자. 자동차 한 대에 100여개의 컴퓨터가 장착이 되지만, 여기에서는 현장에서 가장 많이 접하게 되는 ME(엔진컴퓨터- 이하 ME로 표기)를 예시로 설명하겠다.
1) ME의 교환 프로그래밍
신품 ME를 장착하고 ME항목으로 진입을 한다. 컨트롤유닛 설정으로 진입한다.
여러 가지 항목이 나온다. 여기서 컨트롤 유닛 프로그래밍으로 진입한다.
그림_7 ME 항목에서 컨트롤유닛 설정으로 진입하는 모습
프로그래밍 시 주의 사항 프로그래밍을 할 때는 엔진의 시동을 걸 수가 없기 때문에 발전기에서 충전이 이루어지지 않는다. 더군다나 위의 주의 사항에서 언급하듯 흡입팬(냉각팬)이 고속으로 구동되게 되면 많은 량의 배터리 전류가 소모가 된다. 그러므로 위의 사항에서 어긋나는 사항이 있을 시에는 다음과 같은 현상이 발생한다. ① 프로그래밍 도중 방전이 되면, 해당 컴퓨터는 파손이 되어 재사용이 불가능하다. 자동차의 프로그래밍이라고 하는 것은 진단기에서 전기적인 데이터가 자동차에 장착된 특정 컴퓨터에 전기적으로 데이터가 이동한다는 의미와 같기 때문에 일정한 전압이 유지가 되지 않으면, 진단기에서 보낸 데이터가 컴퓨터에 쓰여 질 때 에러가 생기기 때문이다.
수입산 장비인 경우 A/S가 발생되었을 경우 상당히 곤혹을 치르는 경우가 많으므로 신중을 기해야 하며, 110V 제품의 경우 220V에서 110V로 다운되는 트랜스가 필요한데, 트랜스의 성능 문제로 프로그래밍 중 에러가 발생하는 경우가 많다. 자동차의 점프단자 또는 배터리에 연결하게 된다. ■ 석영 기기 |
그림_8 컨트롤유닛 프로그래밍 항목으로 진입하는 모습
자동차의 프로그래밍 과정에서 발생되는 주의 사항에 대한 안내가 나온다. F2를 눌러 다음 단계로 넘어 갈수 있다. 하지만 아래의 준수사항을 정확하게 지키지 않을 경우 발생되는 모든 책임은 정비사에게 있으므로 정확히 지침을 따르도록 한다. F2를 눌러서 다음으로 진행한다.
그림_9 프로그래밍 항목 선택 시 주의사항
온라인 프로그래밍과 오프라인 프로그래밍은 상관이 없다. 여기서는 오프라인으로 진행을 하겠다.
그림_10 프로그래밍에서 온라인과 오프라인은 상관이 없음
프로그래밍이 끝나고 나면, 코딩이 이루어져야한다. 단순히 프로그래밍만 실시해서는 자동차의 시동이 되지 않거나 시동이 되어도 기능상의 문제가 발생 할 수 있으므로 주의하도록 한다. 프로그래밍에 대한 안내가 나오고 다시 한번 주의사항이 나온다. 아래에서는 6분이 소요된다고 한다.
그림_11 프로그래밍이 끝나고 나오는 주의사항
컴퓨터에 따라서 프로그래밍 시에 10시간을 초과하는 경우도 있다. 이런 경우 오후 5시에 프로그래밍을 시작해서 새벽 5시까지 퇴근도 못하고 기다리다가 해가 뜨는 경우가 있을 수 있으므로 시간이 많이 걸리는 경우에는 차량을 안전한 곳에 주차 후 프로그래밍을 시작시키고 퇴근했다가 아침에 출근과 동시에 다음 작업을 수행하는 경우도 있다. F4를 눌러서 다음으로 진행을 한 후 프로그래밍을 하는 이유를 기입한다.
그림_12 빈칸에 프로그래밍을 하는 이유를 기입. 한글도 상관없다
그림_13 기입 후에는 F6을 눌러 프로그래밍을 시작
프로그래밍이 완료되고 나면 진단기가 키를 껏다가 켜라고 지시한다. 프로그래밍이 완료가 된 것이다.
참고로 아래와 같은 경우에는 자동차의 프로그램을 실시할 수 없다. 자동차 제작사에 도난으로 등록이 된 것이다. 이런 경우에는 독일 본사에 합당한 사유와 서류를 준비해 도난 등록을 해제 한 후 프로그래밍이 가능하다.
그림_14 도난 차량으로 등록된 경우 나타나는 화면
대부분의 정비사들은 해당 부품을 교환만 하면 일이 해결되는 것으로 생각한다. 하지만, 근래의 자동차들은 기계적인 교환보다 교환 후의 처리가 더욱 중요하게 된다.
이러한 경우 정비사는 고가의 부품을 주문해서 자동차에 장착을 하였지만 고객에게 수리비를 청구 할 수 없는 경우가 되고 이것을 해결하기 위해 몇일에서 몇 달을 고생하게 된다.
심지어는 간단한 윈도우 스위치 하나를 교환하고도 쩔쩔매는 경우를 본다. 이러한 것들은 모두 정비사가 무지해서 자동차에 대해서 잘 알지 못하여 일어나는 안타까운 일이다.
2) 코딩
먼저 코딩은 두 종류로 분류가 된다. 온라인 코딩과 오프라인 코딩이다. 구형차종의 경우 코딩을 할 때 옵션을 선택하는 것이 많지가 않기 때문에 정비사가 간단히 코딩을 할 수가 있다.
하지만 신형차량의 경우 옵션이 많아짐에 따라서 정비사가 짧은 시간에 모든 코딩을 할 수 없으므로 온라인을 통해서 코딩을 실시하게 된다. 온라인 코딩의 경우 본사서버에 진입할 수 있는 ID와 패스워드를 부여받아야 가능하므로 프로그래밍 후 코딩을 실시하지 못해서 낭패를 보는 경우도 많다.
(1) online coding
위에서 ME를 프로그램 하였다. 이어서 코딩을 실시하도록 하겠다. 컨트롤유닛 설정으로 들어간다.
일반적인 안내가 나오고 다음부터는 자동으로 코딩을 다운로드 받아서 컴퓨터에 삽입을 한다. 진단기가 키를 껏다가 다시 켜라는 지시가 나오면 완료가 된 것이다.
그림_15 컨트롤유닛 설정으로 진입
그림_16 버전 코딩을 선택 후 진입
그림_17 해당차량의 차대번호 확인 후 F3를 눌러 진입
그림_18 온라인 SCN-코딩 선택
그림_19 독일의 본사 서버에 진입하는 ID와 패스워드 삼입
그림_20 코딩이 완료됐다는 화면
(2) Offline coding
오프라인 코딩은 정비사가 직접 옵션을 선택할 수 있는 코딩이다. 가장 많이 사용되는 계기반을 예로 들어 진행해보겠다. 상당히 많은 수의 코딩을 해야하고 복잡하다. 신형모델에서는 더 분량이 많아지고 복잡해짐에 따라 온라인 SCN코딩으로 바뀌었다는 것을 짐작할 수 있다.
먼저 계기반으로 진입을 한 후 컨트롤유닛 설정으로 진입한다.
그림_21 컨트롤유닛 설정으로 진입
그림_22 버전 코딩 선택
아래의 모든 항목은 코딩의 대상이다. 총 48개의 코딩이 실시되어야 계기반이 정상적으로 작동이 된다. 첫 번째 항목인 국가유형부터 실시를 하기 위해 진입을 한다.
그림_23 국가유형 코딩을 선택 후 진입
그림_24 F3를 눌러 국가유형 코딩을 실시
우측의 역삼각형을 마우스로 클릭하여 알맞은 국가를 선택한다. 여기서 부터는 실제차량과 코딩이 다르게 될 경우 계기반이 비정상적으로 작동이 된다.
그림_25 실제차량에 맞춰 국가를 선택해야 한다
그림_26 한국을 선택 후 F3를 눌러 다음으로 진행
변경된 것이 있으므로 F5번 버튼이 활성화가 된다. F5를 눌러서 계기반에 전송을 하고, 아래에 있는 SA 코드 461로 진입한다.
그림_27 SA 코드 461로 진입
점검 차량에 알맞은 코딩을 선택하고 F3으로 빠져나온다.
그림_28 SA 코드 461 진입 후 차량에 알맞은 코딩을 선택
그림_29 F5 버튼을 눌러 계기반으로 전송
이제 국가유형의 코딩이 실시되었으므로 선택사양을 코딩을 실시한다. 선택사양을 선택해서 들어간다.
그림_30 선택사양 항목으로 진입
화면에 보이는 모든 것들을 하나씩 선택해서 코딩을 실시한다. 자동차에 알맞은 코딩을 실시하여야 하는데, 예를 들어서 변속기 유형이 자동변속기인데도 불구하고 수동변속기로 코딩이 될 경우 계기반에 기어포지션이 디스플레이 되지 않는다.
코딩을 모두 선택하고 빠져나오면 F5를 눌러서 계기반에 전송을 하도록 한다.
그림_31 코딩을 모두 선택하고 빠져나왔다면 F5를 눌러 계기반에 전송
아래의 모든 항목들에 진입해서 일일이 코딩을 하는 것들을 설명하여야 하지만, 아래는 생략하도록 하겠다.
그림_32 모든 부분을 코딩시키는 방식은 동일
정비사가 계기반을 교환하고 오프라인으로 직접 코딩을 하게 되면, 숙련자일 경우 1시간, 비숙련자일 경우 하루 종일 하는 경우도 많이 봤다. 또한 정비사가 지식이 없어 코딩을 잘못 선택하는 경우 자동차가 출고 되었다가 다시 입고되는 경우도 많이 발생하게 된다.
또한 신형의 경우 코딩이 200개를 넘어가게 되니 정비사가 몇 일 동안 코딩을 해야 하는 경우가 생기므로 온라인 코딩으로 데이터화해 짧은 시간에 코딩을 모두 끝마치게 된다.
하지만 오프라인 코딩의 경우 정비사가 아주 단시간에 고객이 원하는 옵션을 변경해 줄 수 있어서 좋은 점도 많으며, 인터넷이 되지 않는 환경에서는 오프라인 코딩이 휠씬 이득이 된다.
현재 생산되는 Mercedes의 경우 40여개 정도의 컴퓨터가 교환 후 온라인으로만 코딩을 할 수 있게 되어 있으므로 이점을 숙지하고 정비 시 고객에게도 충분히 안내를 하기 바란다.