Você está na página 1de 66

CENTRO PAULA SOUZA FACULDADE DE TECNOLOGIA FATEC SANTO ANDR

Tecnologia em Eletrnica Automotiva

ADEMAR DULTRA CERQUEIRA FERNANDO VENEZIAN BEZERRA GUILHERME ZAMBONI THOMAS EDSON

SISTEMA DE DIAGNSTICO PARA VECULOS QUE UTILIZAM OS PROTOCOLOS ISO 9141 E ISO 14230 ATRAVS DE UMA PLATAFORMA EM LabVIEW

Santo Andr So Paulo 2009

CENTRO PAULA SOUZA FACULDADE DE TECNOLOGIA FATEC SANTO ANDR


Tecnologia em Eletrnica Automotiva

ADEMAR DULTRA CERQUEIRA FERNANDO VENEZIAN BEZERRA GUILHERME ZAMBONI THOMAS EDSON

SISTEMA DE DIAGNSTICO PARA VECULOS QUE UTILIZAM OS PROTOCOLOS ISO 9141 E ISO 14230 ATRAVS DE UMA PLATAFORMA EM LabVIEW

Monografia apresentada ao Curso de Tecnologia em Eletrnica Automotiva da FATEC Santo Andr, como requisito parcial para concluso do curso de Tecnologia em Eletrnica Automotiva Orientador: Prof. Orlando Salvo Junior Co-orientador: Prof. Edson Kitani

Santo Andr So Paulo 2009

Dedicamos este trabalho a nossas famlias e amigos que sempre estiveram prximos durante esta jornada.

AGRADECIMENTOS

Gostaramos de agradecer a todos aqueles que direta e indiretamente contriburam para a realizao deste trabalho e principalmente aos colegas de sala que mantiveram estmulos nos momentos mais rduos desta jornada. Agradecemos aos professores, colaboradores e funcionrios da Fatec Santo Andr que sempre estiveram prontos a nos ajudar. Agradecemos tambm ao professor Cleber Gomes que nos disponibilizou o hardware utilizado do desenvolvimento deste trabalho, e Fatec por disponibilizar o veculo Volkswagen Golf e os demais equipamentos que tornaram possvel o desenvolvimento deste trabalho.

RESUMO

Os sistemas de diagnstico veicular surgiram para controlar os nveis de emisses de poluentes dos veculos automotores, atravs da leitura de informaes e deteco de falhas nos veculos. Este trabalho teve como idia inicial o desenvolvimento de um sistema de diagnstico veicular, para permitir ao usurio acesso s informaes do veculo atravs de uma interface grfica amigvel e de fcil manuseio. Esta interface foi desenvolvida atravs de uma plataforma em LabVIEW que realiza a comunicao atravs de uma porta serial. Para a comunicao desta porta serial com o conector de diagnstico OBD II, foi utilizado um hardware baseado em um circuito integrado da famlia ELM para a leitura dos protocolos ISO 9141 e ISO 14230 (KWP 2000). Como resultado, foram extradas informaes do veculo, como tenso da bateria, rotao do motor e os cdigos de falhas armazenados.

Palavras chaves: OBD II, ISO 9141, ISO 14230, KWP 2000 e LabVIEW.

ABSTRACT

The vehicle diagnostic systems have emerged to control the emissions of pollutants from motor vehicles, by reading information and fault detection in vehicles.This work had as an initial idea to develop a diagnostic system for vehicles, to allow the user access the vehicle information through a friendly interface and easy to use. This interface was developed using LabVIEW platform that performs communication through a serial port. For the communication of this serial port with the diagnostic connector OBD II, it was used a hardware based on an integrated circuit from the ELM family that read the protocols ISO 9141 and ISO 14230 (KWP 2000). Datas were extracted from the vehicle, such as battery voltage, engine speed and the fault codes stored.

Key word: OBD II, ISO 9141, ISO 14230, KWP 2000 and LabVIEW.

LISTA DE ILUSTRAES

Figura 2.1 Barramento de diagnstico ISO 9141............................................... Figura 2.2 Topologia KWP 2000....................................................................... Figura 2.3 Conector OBD II............................................................................... Figura 2.4 Formato do cdigo DTC atravs de 2 bytes...................................... Figura 2.5 Painel Frontal e diagrama de blocos do LabVIEW.......................... Figura 3.1 Esquema eltrico para a utilizao dos protocolos ISO 9141 e ISO 14230 atravs do ELM327.................................................................................... Figura 3.2 Circuito fonte de alimentao............................................................ Figura 3.3 Circuito USB/Serial usando CP2101................................................ Figura 3.4 VI para escrita e leitura de dados na serial........................................ Figura 3.5 Leitura da rotao do motor.............................................................. Figura 3.6 Tratamento da leitura de tenso da bateria........................................ Figura 3.7 Grfico da relao entre o valor de rotao obtido e o valor de rotao real indicado no conta-giros..................................................................... Figura 3.8 Tratamento da leitura de rotao...................................................... Figura 3.9 Tratamento da verificao da quantidade de falhas.......................... Figura 3.10 Tratamento da leitura dos cdigos de falha..................................... Figura 4.1 Leituras de tenso da bateria e rotao.............................................. Figura 4.2 Leitura dos cdigos de falha.............................................................. Figura 4.3 - Aparncia final do Software..............................................................

16 17 18 19 24

27 28 29 30 31 32

34 35 36 38 39 40 41

LISTA DE TABELAS

Tabela 2.1 Principais normas ISO e SAE............................................................ Tabela 2.2 Primeiro dgito do cdigo de falhas................................................... Tabela 2.3 Primeiro e segundo dgitos do cdigo de falhas................................ Tabela 2.4 Terceiro dgito do cdigo de falhas................................................... Tabela 2.5 Diferenas entre o ELM323 e ELM327............................................ Tabela 3.1 Relao entre o valor de rotao obtido e o valor de rotao real indicado no conta-giros.......................................................................................... Tabela 3.2 Lista de caracteres que devem substituir o primeiro dgito do cdigo de falha recebido.........................................................................................

15 18 19 19 23

33

37

SUMRIO

1 INTRODUO............................................................................................................... 10 2 HISTRICO DOS SISTEMAS DE DIAGNSTICO VEICULAR E DA LINGUAGEM LABVIEW................................................................................................. 12 2.1 Protocolos de Comunicao Automotivos........................................................ 13 2.1.1 Classe A.............................................................................................. 13 2.1.2 Classe B.............................................................................................. 13 2.1.3 Classe C.............................................................................................. 14 2.1.4 Utilizados em diagnstico.................................................................. 14 2.1.5 Utilizados em Mobile Media.............................................................. 14 2.1.6 Utilizados em Safety Bus.................................................................... 14 2.1.7 Utilizados em aplicaes BY-WIRE................................................... 15 2.2 Protocolos de Comunicao Utilizados em Diagnstico.................................. 15 2.2.1 O protocolo ISO 9141........................................................................ 15 2.2.2 O protocolo KWP 2000 (ISO 14230)................................................ 16 2.3 O Conector OBD II.......................................................................................... 17 2.3.1 Localizao........................................................................................ 17 2.3.2 Pinagem............................................................................................. 18 2.4 Cdigos de Falha.............................................................................................. 18 2.5 O Circuito Integrado ELM 323......................................................................... 20 2.5.1 Comunicao...................................................................................... 20 2.6 O Circuito Integrado ELM 327........................................................................ 21 2.6.1 Comunicao..................................................................................... 21 2.7 Instrumentao Virtual..................................................................................... 23 2.8 Consideraes Finais........................................................................................ 24 3 METODOLOGIA........................................................................................................... 26 3.1 O Hardware Utilizado...................................................................................... 26 3.1.1 Funcionamento do circuito................................................................ 27 3.2 Desenvolvimento do Software.......................................................................... 29 3.2.1 Tratamento da leitura de tenso da bateria......................................... 31 3.2.2 Tratamento da leitura de rotao........................................................ 32 3.2.3 Leitura dos cdigos de falha............................................................... 35 3.2.3.1 Tratamento da verificao da quantidade de falhas........................ 35 3.2.3.2 Tratamento da leitura dos cdigos de falha.................................... 36

4 ANLISE DE RESULTADOS....................................................................................... 39 4.1 Leitura de Tenso da Bateria............................................................................ 39 4.2 Leitura de Rotao............................................................................................ 40 4.3 Leitura da Quantidade de Falhas....................................................................... 40 4.4 Leitura dos Cdigos de Falha (DTC)................................................................ 40 4.5 Apagando os Cdigos de Falha......................................................................... 41 4.6 Software Final................................................................................................... 41 5 CONCLUSO................................................................................................................. 42 5.1 Propostas Futuras............................................................................................... 42 6 REFERNCIAS BIBLIOGRFICAS ............................................................................ 43 ANEXOS............................................................................................................................. 44 Anexo A Cdigo do Programa em LabVIEW Anexo B Lista dos DTCs Anexo C Datasheet ELM 327 Anexo D Esquema Eltrico ELM 327

1 INTRODUO
Todos os veculos produzidos atualmente dispem de uma ou mais ECUs (Electronic Control Unit), responsveis pelo gerenciamento de determinados parmetros do veculo para garantir seu correto funcionamento. As relaes entre esses parmetros devem permanecer delimitadas, e dependendo das condies externas podem sair de sua faixa, gerando um mau funcionamento do veculo. Os principais parmetros que determinam o funcionamento do motor, que devem ser verificados se esto funcionando corretamente so: velocidade, carga, temperatura do motor, consumo de combustvel, temperatura ambiente, fluxo de ar e emisses de poluentes, sendo que este ltimo o principal parmetro para o qual o sistema de diagnstico foi desenvolvido. Para ler estes parmetros, os automveis atuais incorporam um grande nmero de sensores, que fornecem informaes para a ECU referentes s condies externas do veculo, para que a ECU decida como atuar sobre o motor. Se algum dos parmetros estiver fora da faixa delimitada, o sistema OBD II (On-Board Diagnostics Second Generation) responsvel por armazenar esta informao e notificar ao motorista atravs do painel de instrumentos que h alguma anormalidade no veculo, orientando-o a encaminhar o veculo a uma oficina ou concessionria. Quando o veculo chega oficina ou concessionria, os tcnicos podem acessar as informaes armazenadas pelo sistema OBD II e verificar quais as falhas que ocorreram no veculo, corrigindo-as quando necessrio, sem precisar realizar vrios testes para detectar a procedncia do erro. Evidentemente, o sistema no perfeito, e geralmente quando ocorre uma falha no veculo, esta pode desencadear uma srie de falhas induzidas, que tambm so armazenadas. Neste caso, necessrio um conhecimento mais profundo para detectar a origem ou procedncia do problema. Este trabalho tem o objetivo de desenvolver um sistema de diagnstico veicular utilizando um software desenvolvido em LabVIEW. O LabVIEW um ambiente de programao criado pela National Instruments que utiliza a linguagem grfica para o desenvolvimento de aplicativos. Sua forma de programao altamente produtiva na construo de sistemas voltados para aquisio de dados e instrumentao e permite tambm a comunicao (transmisso e aquisio de dados) atravs de uma porta serial RS232. Para realizar a comunicao entre o sistema OBD II do veculo e a porta serial, foi utilizado um hardware baseado em circuito integrado da famlia ELM. Este circuito integrado

11

permite a converso entre o formato de dados OBD II para o formato de dados do padro serial RS232. Com isto, atravs do software desenvolvido no LabVIEW foi possvel obtermos a comunicao com o veculo atravs de um computador pessoal utilizando somente uma porta serial. No captulo 2, relatado um histrico sobre os temas que foram pesquisados para o desenvolvimento deste trabalho. Entre estes temas esto os sistemas de diagnstico veicular, bem como os protocolos de comunicao automotivos utilizados em diagnstico, o padro OBD II, os circuitos integrados da famlia ELM e a instrumentao virtual baseado em LabVIEW. No captulo 3 descreve-se a metodologia utilizada no desenvolvimento do trabalho. No captulo 4 apresentam-se os resultados de comunicao e monitorao, bem como a plataforma de teste com o veculo. Finalmente, no captulo 5 encontram-se as concluses e propostas futuras.

2 HISTRICO DOS SISTEMAS DE VEICULAR E DA LINGUAGEM LABVIEW

DIAGNSTICO

Segundo Guimares (2007), o termo diagnstico veicular representa as ferramentas que permitem a verificao do funcionamento dos mdulos eletrnicos existentes em um veculo e tambm a programao dos mesmos. Durante os anos 70 e incio dos anos 80, alguns fabricantes comearam a utilizar sistemas eletrnicos para controle e diagnstico de falhas em veculos. A princpio, estes sistemas eram utilizados apenas para conhecer e controlar os nveis de emisses dos veculos e adapt-los aos padres exigidos, porm com o passar do tempo estes sistemas foram se tornando cada vez mais sofisticados, at que nos anos 90 surgiu o padro OBD II. (www.obdii.com). O OBD II, sigla de On Board Diagnostic Second Generation, um sistema para diagnosticar as falhas que ocorrem no veculo sem a necessidade de desmontar as peas para descobrir a origem do erro. Belo (2003), afirma que os sistemas de diagnstico a bordo foram desenvolvidos para controlar o nvel de emisses de poluentes dos veculos automotores dentro dos padres determinados. A primeira gerao destes sistemas controlava o nvel de emisses de forma relativamente eficaz, porm havia alguns problemas graves no sistema. O principal problema estava relacionado ao fato de os mesmos poderem detectar falhas apenas quando o componente era completamente danificado, fazendo com que o veculo permanecesse durante muito tempo operando em condies inadequadas, aumentando o nvel de emisso de poluentes. Outro problema era a falta de padronizao das informaes fornecidas por estes sistemas para o diagnstico de falhas, pois cada fabricante era livre para incorporar seu prprio conector e utilizar cdigos proprietrios. Desta forma, o acesso s informaes de diagnstico era obtido somente por ferramentas proprietrias de cada fabricante. Este sistema de codificao nica encontra-se implantado em todos os veculos de passageiros e veculos comerciais leves produzidos atualmente, e diferente dos sistemas desenvolvidos antes de 1996, caracterizado como um sistema padronizado, que permite visualizar facilmente quais as falhas ocorridas no veculo utilizando cdigos padronizados.

13

2.1 Protocolos de Comunicao Automotivos


Protocolos de comunicao so meios de transmisso e recepo de dados utilizados para intercomunicar mdulos eletrnicos e/ou sensores e atuadores inteligentes equipados com microcontroladores e tranceivers, por exemplo. Existem vrios tipos de protocolos de comunicao, cada qual com suas caractersticas tcnicas especficas e, portanto, com as suas aplicaes mais apropriadas. (GUIMARES, 2007, p.209). A seguir, descreveremos as classes de protocolos existentes e os diversos tipos de protocolos existentes em cada uma destas classes.

2.1.1 Classe A Esto nesta classe os protocolos que utilizam taxa de transmisso de at 10Kbps. Segundo Guimares (2007), estes protocolos geralmente esto relacionados s funes de conforto de um veculo. Alguns dos protocolos pertencentes Classe A so: 2.1.2 Classe B Esto nesta classe os protocolos que utilizam taxa de transmisso de 10Kbps a 125Kbps. Segundo Guimares (2007), estes protocolos geralmente esto relacionados ao controle dos sistemas de entretenimento de um veculo. Alguns dos protocolos pertencentes Classe B so: CAN 2.0 ISO11898 e ISO11519-2 CAN 2.0 SAE J1939 J1859 Classe 2 J1850 SCP J1850PCI SINEBUS 1C SAE J1708 CCD ACP BEAN LIN

14

2.1.3 Classe C Esto nesta classe os protocolos que utilizam taxa de transmisso de 125Kbps a 1Mbps. Segundo Guimares (2007), estes protocolos geralmente esto relacionados ao controle dos sistemas de segurana de um veculo. Alguns dos protocolos pertencentes Classe C so: - CAN 2.0 ISO11898 e ISO11519-2 - CAN 2.0 SAE J1939 2.1.4 Utilizados em diagnstico Nesta classe, esto os protocolos utilizados nos sistemas de diagnstico embarcado On-Board Diagnosis (OBD). Alguns dos protocolos pertencentes classe de Diagnstico so: J1850 Classe 2 J1850 SCP J1850 PCI ISO9141 ISO14230 (KWP2000)

2.1.5 Utilizados em Mobile Media Segundo Guimares (2007), so os protocolos utilizados na implementao do conceito PC-on-wheels ou computador sobre rodas. Alguns dos protocolos pertencentes classe Mobile Media so: IDB-C MOST MML USB IEEE 1394

2.1.6 Utilizados em Safety Bus So os protocolos utilizados em sistemas de airbag. Alguns dos protocolos pertencentes a esta classe so: BST Safe By Wire DSI Byte Flight

15

2.1.7 Utilizados em aplicaes BY-WIRE Segundo Guimares (2007), so os protocolos utilizados em aplicaes nas quais sistemas eletromecnicos substituem os sistemas puramente mecnicos (direo, freio, acelerao, entre outros). Alguns dos protocolos pertencentes a esta classe so: - TTP - FlexRay - TTCAN

2.2 Protocolos de Comunicao Utilizados em Diagnstico


Existem vrios protocolos de comunicao utilizados nos sistemas de diagnstico, e algumas organizaes de padronizaes trabalham no desenvolvimento de padres para protocolos de diagnose veicular. As duas principais organizaes so a ISO (International Organization for Standardization) e a SAE (Society of Automotive Engineers). Cada protocolo exige um tratamento de informaes antes de utilizar o conector de diagnstico do veculo com o equipamento de diagnstico externo, portanto necessitam de interfaces de conexo diferentes. H equipamentos de diagnstico capazes de utilizar todos os protocolos e ainda selecionar automaticamente qual o protocolo utilizado pelo veculo. Alm da norma ISO 9141 que a mais utilizada para diagnstico, a Tabela 2.1 mostra as outras principais normas utilizadas em diagnstico veicular.

ISO 11519 11898 14229 14230 15765

SAE J1708 J1850 J1939 J1979 J2284

Tabela 2.1 Principais normas ISO e SAE (Fonte: Baseado no Seminrio de Diagnose Veicular, AEA 2003)

2.2.1 O protocolo ISO 9141 A norma ISO 9141 a mais utilizada e referenciada por outras normas que tambm so utilizadas para diagnstico. Segundo Guimares (2007), ela descreve os requisitos

16

necessrios para realizao da comunicao entre os mdulos eletrnicos do veculo e os equipamentos de diagnstico. Os mdulos eletrnicos do veculo devem possuir uma ou duas linhas de comunicao utilizadas para inspeo, teste e diagnose. Nos veculos que possuem apenas uma linha de comunicao, esta linha a chamada linha K (K-line), e nos veculos que possuem duas linhas de comunicao, estas linhas so chamadas de linhas K e L (K-line e L-line). A linha K a que fornece informao em uma forma digital serial, a partir do mdulo eletrnico at o equipamento de diagnstico. Ela pode ser utilizada tambm

bidirecionalmente, transmitindo comandos ou dados a partir do equipamento de diagnstico para o mdulo eletrnico. J a linha L unidirecional a partir do equipamento de diagnstico para o mdulo eletrnico (GUIMARES, 2007). A Figura 2.1 ilustra um barramento com a conexo das linhas K e L simultaneamente a dois ou mais mdulos eletrnicos.

Figura 2.1 Barramento de diagnstico ISO 9141. (Fonte: Baseado no Seminrio de Diagnose Veicular, AEA 2003)

2.2.2 O protocolo KWP 2000 (ISO 14230) Segundo Pvoa (2007), em meados dos anos 90 vrias empresas se uniram para criar um protocolo de comunicao padronizado. Este protocolo posteriormente foi chamado de Keyword Protocol 2000, ou KWP 2000. Hoje este protocolo muito utilizado no desenvolvimento de mdulos eletrnicos e ferramentas de diagnstico para o setor automobilstico. Este protocolo, assim como a ISO 9141 possui como estrutura duas linhas seriais para transmisso de dados: a linha K, que utilizada para comunicao e inicializao, e a linha L, que opcional e utilizada apenas para inicializao. A Figura 2.2 ilustra a forma geral desta comunicao serial.

17

Figura 2.2 Topologia KWP 2000 (Fonte: ISO 14230-2:1999)

Segundo Guimares (2007), o KWP 2000 foi desenvolvido para possibilitar a implementao de servios em uma ligao fsica da norma ISO 9141. Permite a compatibilidade com as implementaes ISO 9141-2 existentes, e ao mesmo tempo inclui novas opes para permitir maior flexibilidade e desempenho.

2.3 O Conector OBD II


O conector do sistema OBD II deve atender as seguintes especificaes, segundo a norma ISO 15031-3:2004:

2.3.1 Localizao Em veculos de passageiro e veculos comerciais leves, a localizao do conector deve atender s seguintes especificaes: Prximo ao assento do passageiro ou motorista Prximo ao painel de instrumentos Distncia de 300mm alm da ECU Fcil acesso ao assento do motorista Entre a coluna de direo e a ECU

18

2.3.2- Pinagem O conector possui 16 pinos, sendo que os pinos utilizados esto descritos na Figura 2.3.

Figura 2.3 Conector OBD II (Fonte: Notas de aula do professor Orlando Salvo Junior, 2009)

2.4 Cdigos de Falha


Os cdigos de falha devem seguir o seguinte padro: O primeiro dgito indica a localizao da falha no veculo. Os possveis valores deste cdigo so mostrados na Tabela 2.2.

Valor P B C U

Grupo Sistema Motor (Power Train) Carroceria (Body) Chassi (Chassis) Rede

Tabela 2.2 Primeiro dgito do cdigo de falhas (Fonte: BELO, 2003)

19

O segundo dgito indica qual a entidade responsvel pela sua definio. Atravs deste dgito possvel verificar se o cdigo em questo comum a todos os fabricantes (padro ISO/SAE) ou se um cdigo especfico do fabricante. A Tabela 2.3 mostra os possveis valores deste dgito.
Controle (Segundo Dgito) Grupo Sistema (Primeiro Dgito) P B C U 0 ISO/SAE ISO/SAE ISO/SAE ISO/SAE 1 Fabricante Fabricante Fabricante Fabricante 2 Fabricante Fabricante Fabricante ISO/SAE 3 Reservado Reservado Fabricante/Reserva ISO/SAE Fabricante/Reserva ISO/SAE

Tabela 2.3 Primeiro e segundo dgitos do cdigo de falhas (Fonte: Notas de aula do professor Orlando Salvo Junior, 2009)

O terceiro dgito refere-se a um subgrupo de funes do veculo, e o quarto e quinto dgitos referem-se falha especfica no referido subgrupo. Na Tabela 2.4 so exibidos os valores do terceiro dgito.
Valor 0 1 2 3 4 5 6 7 8 Descrio Sistema Eletrnico Completo Controle Ar/Combustvel Controle Ar/Combustvel; Circuito de Injeo Sistema de Ignio Controle Auxiliar de Emisses Controle de Velocidade do Veculo e Controle de Rotao em Marcha Lenta Circuitos de Entrada e Sada da Central Eletrnica Transmisso Transmisso Tabela 2.4 Terceiro dgito do cdigo de falhas (Fonte: Notas de aula do professor Orlando Salvo Junior, 2009)

O cdigo de falhas DTC (Diagnostic Trouble Code) formado por dois bytes, dispostos conforme a Figura 2.4.

Figura 2.4 Formato do cdigo DTC atravs de 2 bytes. (Fonte: ISO 15031-5:2006)

20

2.5 O Circuito Integrado ELM323


Desde 1996, os veculos fabricados nos Estados Unidos da Amrica devem possuir uma porta de dados OBD II para a conexo com equipamento de teste. Esta porta utilizada para se obter informaes de diagnstico relacionadas a emisses e, em alguns casos, pode ser utilizada tambm para se obter parmetros de operao do veculo em tempo real. O ELM 323 um circuito integrado de 14 pinos capaz de converter dados entre o formato de dados OBD II e o formato de dados serial RS232 padro. Isto permite que qualquer computador pessoal se comunique com um veculo usando apenas uma porta serial padro e um programa terminal. Este circuito suporta grande parte dos protocolos veiculares inclusos na ISO9141 e ISO14230 (KWP2000), mas no todos.

2.5.1 Comunicao O ELM323 depende de uma conexo serial do tipo RS232 padro para poder se comunicar com o usurio. Todas as respostas dadas pelo ELM323, so terminadas com um caractere simples de retorno. No incio da comunicao, o ELM323 envia uma mensagem informando a verso do CI (circuito integrado), o que permite que seja verificado se as configuraes do software utilizado esto de acordo com as do CI. Sempre que o ELM323 est em estado de espera, pronto para receber dados pela porta RS232, enviado o caractere ">". As mensagens enviadas pelo computador tambm podem ser destinadas para uso interno do ELM323 ou para reformatar e passar pelo barramento OBD. Uma vez que a mensagem completa tenha sido recebida, o ELM323 pode determinar rapidamente para onde os dados devem ser enviados, isso atravs da anlise completa dos dados recebidos. Comandos para uso interno do ELM323 sempre devem comear com os caracteres "AT", enquanto que comandos para o barramento OBD devem conter apenas os cdigos ASCII para dgitos hexadecimais (de 0 a 9 e de A a F). As mensagens que no so compreendidas pelo ELM323 sempre sero sinalizadas por um ponto de interrogao. Mas isso no significa que a mensagem foi ou no

21

compreendida pelo veculo, pois o ELM323 no verifica se a mensagem enviada para o veculo est errada. importante mencionar que o ELM323 no distingue letras maisculas de minsculas e, tambm, que ele ignora caracteres de espao e todos os caracteres de controle (tab, enter, etc.)

2.6 O Circuito Integrado ELM327


Quase todos os novos veculos produzidos hoje em dia devem possuir, por lei, alguma interface pela qual os equipamentos de teste possam obter informaes de diagnstico. A transferncia de dados pode ser feita por essas interfaces pode ser feita atravs de diversos padres, e nem um deles diretamente compatvel com os computadores. O ELM327 funciona como uma ponte entre as portas OBD II (On-Board Diagnostics) e uma interface RS232 padro. O ELM327 baseado em outros circuitos integrados, o ELM320, o LM322 e o ELM323 e foram adicionados a ele 7 protocolos CAN. O resultado um circuito integrado que pode automaticamente perceber e converter a maioria dos protocolos que esto em uso atualmente. Tambm h outras melhorias como, por exemplo, uma opo de RS232 de alta velocidade, monitoramento da tenso de bateria e caractersticas personalizveis atravs de parmetros programveis. O ELM327 requer poucos componentes externos para poder utilizar todas as funes do circuito integrado.

2.6.1 Comunicao Um dos mtodos mais simples de se comunicar com o ELM327, atravs de um computador, utilizando-se algum programa "terminal" disponvel (Hyper Terminal, ZTerm, etc.) para se poder digitar caracteres diretamente do teclado do computador utilizado. Para utilizar um programa terminal necessrio configurar o software utilizado para se comunicar corretamente com o ELM327. Todas as respostas dadas pelo ELM327, so terminadas com um caractere simples de retorno.

22

No incio da comunicao, o ELM327 envia uma mensagem informando a verso do CI, o que permite que seja verificado se as configuraes do software utilizado esto de acordo com as do CI. Sempre que o ELM327 est em estado de espera, pronto para receber dados pela porta RS232, enviado o caractere ">". As mensagens enviadas pelo computador tambm podem ser destinadas para uso interno do ELM327 ou para reformatar e passar pelo barramento OBD. Uma vez que a mensagem completa tenha sido recebida, o ELM327 pode determinar rapidamente para onde os dados devem ser enviados, isso atravs da anlise completa dos dados recebidos. Comandos para uso interno do ELM327 sempre devem comear com os caracteres "AT", enquanto que comandos para o barramento OBD devem conter apenas os cdigos ASCII para dgitos hexadecimais (de 0 a 9 e de A a F). As mensagens que no so compreendidas pelo ELM327 sempre sero sinalizadas por um ponto de interrogao. Mas isso no significa que a mensagem foi ou no compreendida pelo veculo, pois o ELM327 no verifica se a mensagem enviada para o veculo est errada. importante mencionar que o ELM327 no distingue letras maisculas de minsculas e, tambm, que ele ignora caracteres de espao e todos os caracteres de controle (tab, enter, etc.). Uma outra caracterstica do ELM327 a habilidade de repetir qualquer comando quando algum caractere de retorno recebido. Se for enviado um comando, no ser mais necessrio reenviar o comando inteiro, mas apenas o caractere de retorno. Porm a memria armazena apenas o ltimo comando enviado. As principais diferenas entre o ELM323 e ELM327 so apresentadas na tabela 2.6.

23

Diferenas Frequencia do cristal Quantidade de pinos Velocidade da RS232 Comandos AT N de protocolos suportados Monitora a tenso da bateria

ELM323 3,58 MHz 14 9600 Parcialmente configurvel via Comandos AT 2 No

ELM327 4,00 MHz 28 9600 ou 38400 Totalmente Configurvel via comandos AT 12 Sim

Tabela 2.5 Diferenas entre o ELM323 e ELM327

2.7 Instrumentao Virtual


A instrumentao virtual pode ser entendida como sendo uma soluo de medio e automao baseada em computador pessoal, sendo personalizada pelo usurio (Regazzi R. D., et al., 2005). O LabVIEW Laboratory Virtual Instruments Engineering Workbench (Regazzi R. D., et al., 2005) o ambiente desenvolvido pela National Instruments que utiliza a linguagem grfica (conhecida tambm por linguagem G), para o desenvolvimento de aplicativos. Sua forma de programao que altamente produtiva na construo de sistemas voltados para aquisio de dados e instrumentao. Segundo o site da empresa National, a linguagem G por sua vez, permite que o programador utilize uma interface grfica para a criao dos cdigos de programao em blocos. Isto facilita o processo de aprendizagem permitindo que pessoas mesmo com pouco treinamento sejam capazes de realizar tarefas que em outras linguagens demandariam maior esforo e muito mais tempo. Os programas em LabVIEW so chamados de VI Virtual Instruments que fornecem duas interfaces: uma interface de fluxo de dados que o cdigo fonte chamado de Diagrama de blocos; e o Painel Frontal que permite que o usurio insira os valores de entrada e observe

24

os valores de sada processados pelos blocos, podendo ser em grficos ou vrios tipos de indicadores. (veja figura 2.5).

Figura 2.5 Painel Frontal e diagrama de blocos do LabVIEW

2.8 Consideraes Finais

Conforme apresentado nos captulos anteriores, o uso de protocolos de comunicao padroniza e torna vivel a transmisso e recepo de dados entre mdulos de controle eletrnicos e aparelhos de diagnstico. Desta forma, as organizaes como a SAE e ISO, desempenham um papel importante no desenvolvimento de padres para protocolos de diagnose veicular. O padro OBD surgiu da necessidade de se padronizar e criar mtodos que facilitem a diagnose de um problema no veculo, sem a necessidade de desmonta os componentes nele instalados e de uma forma mais precisa identificar quando o componente eletrnico est fora de sua faixa de funcionamento, conforme as especificaes estabelecidas pelo fabricante. Dentre as normas para diagnose veicular destacam-se: ISO9141 e

ISO14230(KWP2000), que padronizam os requisitos para se estabelecer uma comunicao entre mdulos eletrnicos no veculo, como por exemplo tipo de conector ODB e sua configurao entre outros. Nestas normas define-se que o veculo deve possuir uma ou duas linhas de comunicao utilizadas para inspeo, teste e diagnose, chamadas de Linha K e Linha L(K-line e L-line). Nesta configurao, a linha K transmite dados de forma serial e

25

bidirecionalmente, enquanto a Linha L transmite de forma unidirecional a partir do equipamento de diagnstico para o mdulo eletrnico do veculo. Outra caracterstica o padro do cdigo de falhas, chamado de DTCs (Diagnostic Trouble Code) que um conjunto de caracteres de 5 dgitos que definem o tipo e origem da falha. Por exemplo, se na consulta com um aparelho de diagnose apresentar o cdigo P0143, o primeiro digito indica a localizao da falha, o segundo digito indica a entidade responsvel pela definio desta falha e o terceiro digito indica o subgrupo de funes do veculo, enquanto o quarto e quinto dgitos definem a referida falha. Para este projeto foi utilizado um mdulo de comunicao eletrnico entre um microcomputador e o veculo. Este mdulo conhecido por ELM327, que tem a funo de converter os dados fornecidos no padro OBDII do veculo para uma conexo serial do tipo RS232 interpretada pelo microcomputador. Atravs de comandos implementados em um software possvel coletar informaes do veculo e apresenta de forma de fcil entendimento para um usurio de informtica ou reparador automotivo.

3 METODOLOGIA
Este projeto prope o desenvolvimento de um sistema de diagnstico veicular atravs de uma interface grfica de computador de fcil manuseio ao usurio. Para tratar os protocolos ISO 9141 e ISO 14230, utilizamos o circuito integrado da famlia ELM. Para este fim, o circuito integrado ELM323 j seria o suficiente, visto que o mesmo trata exatamente os protocolos que pretendemos trabalhar (ISO 9141 e ISO 14230), porm como estes circuitos integrados da famlia ELM no so comercializados no Brasil e devido falta de tempo para importao do ELM323, encontramos com maior facilidade o ELM327, que conforme j visto anteriormente, trata vrios protocolos de diagnstico automotivo, inclusive os protocolos ISO 9141 e ISO 14230. Neste trabalho, o ELM327 foi utilizado para tratar somente os protocolos ISO 9141 e ISO 14230. Para o desenvolvimento de uma interface grfica de computador de fcil manuseio ao usurio, foi utilizado um software desenvolvido em plataforma LabVIEW. A escolha do LabVIEW para o desenvolvimento do software se deu devido possibilidade de se obter uma comunicao (escrita e leitura) com uma porta serial RS232 atravs do software, alm de ser uma ferramenta computacional muito utilizada na indstria. Outro motivo para a escolha o domnio que todos os integrantes do grupo possuem sobre esta ferramenta, visto que esta linguagem parte integrante de uma disciplina ministrada em nosso curso.

3.1 O Hadware Utilizado

Conforme descrito anteriormente, para o desenvolvimento deste trabalho foi utilizado o circuito integrado ELM327. A Figura 3.1 descreve o esquema eltrico para a utilizao dos protocolos ISO 9141 e ISO 14230 (linhas K e L) atravs do ELM327.

27

Figura 3.1 Esquema eltrico para a utilizao dos protocolos ISO 9141 e ISO 14230 atravs do ELM327.

Os terminais ISO-K e ISO-L do circuito so ligados respectivamente aos pinos 7 e 15 do conector OBD II, e utiliza-se um conector fmea DB9 para a interface RS232. O modelo do veculo utilizado nos testes descritos neste trabalho foi um Golf 2.0 ano 2004 a gasolina. O protocolo utilizado em todos os mdulos do referido veculo (motor, transmisso, ABS, air-bag, conforto, radio, gateway, painel de instrumentos e imobilizador) o KWP 1281.

3.1.1 Funcionamento do circuito Todo o trabalho feito pelo circuito integrado ELM327. A tenso de alimentao derivada da tenso da bateria do veculo existente no pino 16 do conector OBD-2 e que apresenta 12 V com o motor desligado e 14,4 V com o motor funcionando. A massa do circuito (GND) est ligada ao pino 5 do conector OBD-2, que, por sua vez, est no potencial do chassi do veculo. Pelo fato de nosso microcontrolador funcionar com 5V, elaboramos uma fonte de alimentao do circuito, mostrado na Figura 3.2, onde o CI U2 estabiliza em +5 V a tenso de alimentao e os diodos D1 e D2 evitam problemas com a tenso de entrada se for aplicada com polaridade invertida e ajuda a diminuir a tenso de entrada do regulador. O

28

LED1 acende sempre que o circuito estiver alimentado pelo OBD ou pela USB (universal serial bus).

Figura 3.2 Circuito fonte de alimentao

Nosso circuito de interface apenas utiliza os sinais existentes nos pinos 7 e 15 do conector OBD-2 (pinos dos sinais das normas ISO 9141 e 14230). De acordo com essas normas, o pino 7 a entrada/sada K, enquanto o pino 15 a entrada L. O CI ELM327 controla essas duas linhas de acordo com as normas, atravs de transistores com resistor de polarizao de 510 . O CI ELM327 recebe os sinais de diagnstico quando o pino 7 do OBDII (linha K) est configurado como sada, sendo assim, os sinais so aplicados no pino 12 (ISO In) de U1e o pino 21 usado para enviar dados para linha K. Para fazer a comunicao com o computador, o ELM327 disponibiliza sinais de comunicao serial UART (universal asynchronous receiver-transmitter - receptortransmissor assncrono universal), porm em nveis TTL (Transistor-Transistor Logic), sendo necessrio o uso de um circuito integrado driver/receiver TTL to TIA/EIA-232-F (conhecido antigamente como RS232) como por exemplo o MAX232. Conforme mostra a Figura 3.3, o nosso circuito usa um conversor USB/Serial CP2101 para fazer a comunicao com o computador. O CP2101 um circuito integrado fabricado pela empresa Silicon Laboratories que converte sinais UART nvel TTL em sinais USB. Quando a USB do CP2101 conectada porta USB do computador, automaticamente detectado um novo dispositivo e atravs de um driver, fornecido pela Silicon Laboratories, o computador cria uma porta serial virtual. Ns escolhemos usar o CP2101 porque atualmente os computadores, principalmente os notebooks, netbook e PDAs, no so fabricados com porta serial.

29

Figura 3.3 Circuito USB/Serial usando CP2101

O pino 7 de U1 est ligado VCC para selecionar o envio de caracteres LF (Line Feed = nova linha) sendo um caracter hexadecimal e mais um CR (carriage return) de terminao na mensagem serial. Os quatro LEDs ligados nos pinos de 25 a 28 e indicam o fluxo de dados nos dois sentidos (TX e RX) do OBD e da USB.

3.2 Desenvolvimento do Software

Primeiramente, foi estudado um exemplo de uma VI (Virtual Instrument) no LabVIEW para a escrita e leitura de dados na serial. As principais funes no LabVIEW responsveis por esta comunicao serial so as funes VISA Whrite (escreve na serial) e VISA Read (l os dados da serial).

30

Figura 3.4 VI para escrita e leitura de dados na serial.

Com esta VI, podemos escrever a solicitao dos dados que queremos obter utilizando alguns comandos do ELM327 no campo string to write e ler os dados obtidos no campo read string. No exemplo da Figura 3.4, ao escrevermos o comando atrv (l tenso da bateria), podemos ler o dado 12.2V seguido do eco do comando que foi escrito (atrv). Da mesma forma, ao escrevermos o comando 010c (l rotao do motor), podemos ler os dados 41 0C 00 00 (hexadecimal) seguido do eco do comando que foi escrito (010c), conforme ilustrado na Figura 3.5.

31

Figura 3.5 Leitura da rotao do motor

Aps estes resultados, comeamos a trabalhar no desenvolvimento de uma interface grfica amigvel e de fcil manuseio. Para isto, foi necessrio tratar os dados recebidos para exibi-los de forma a permitir uma leitura mais fcil destes dados. Apesar de o sistema permitir a leitura de vrias informaes do veculo, nosso trabalho se limitar leitura e tratamento dos seguintes dados: tenso da bateria, rotao do motor e cdigos de falha (DTC).

3.2.1 Tratamento da leitura de tenso da bateria Todos os dados recebidos no campo read string, como o prprio nome diz uma string, ou seja, um conjunto de caracteres onde cada caractere codificado como um inteiro de 8 bits. A interface grfica que escolhemos para a leitura de tenso da bateria uma varivel do tipo DBL (Double Precision) e permite a leitura apenas de dados numricos. Para

32

converter uma string em formato DBL, utilizamos a funo Scan From String, porm ao converter direto a string 12.2 V para o formato DBL, obtm-se na sada apenas o numeral 12, pois o caractere . no reconhecido como numeral. Para resolver este problema, utilizamos duas vezes a funo String Subset para eliminar o caractere . da string. A primeira String Subset fornece na sada o valor a contar do primeiro caractere, exibindo os prximos dois caracteres, ou seja, na sada da primeira String Subset teremos os caracteres 12. A segunda String Subset fornece na sada o valor a contar do quarto caractere, exibindo apenas este caractere, ou seja, na sada da segunda String Subset teremos o caractere 2. Atravs da funo Concatenate Strings, podemos agrupar os dados destas duas sadas, obtendo o caractere 122, que agora pode ser convertido para o formato DBL atravs da funo Scan From String, e ao dividirmos este valor por 10, obtemos o valor desejado de 12,2 para a varivel Bateria (V). Este tratamento ilustrado na Figura 3.6.

Figura 3.6 Tratamento da leitura de tenso da bateria

3.2.2 Tratamento da leitura de rotao Assim como para a leitura de tenso da bateria, a interface grfica escolhida para a leitura de rotao uma varivel do tipo DBL (Double Precision) e permite a leitura apenas de dados numricos. O valor de rotao exibido em formato hexadecimal de 4 bytes, onde os 2 primeiros bytes retornam o comando que foi escrito somando o valor 40h (hexadecimal) no primeiro byte, e os 2 ltimos bytes referem-se ao valor da rotao.

33

Conforme j visto na Figura 3.5, ao escrevermos o comando 010c (l rotao do motor), podemos ler os dados 41 0C 00 00 (hexadecimal). Neste caso, os dois primeiros bytes (41 0C) retornam o comando que foi escrito (01 0C) somando o valor 40h (hexadecimal) no primeiro byte, totalizando 41 0C. Os dois ltimos bytes (00 00) referem-se ao valor da rotao, que neste caso 0 (zero), ou seja, o motor no est em funcionamento. H uma funo no LabVIEW que converte uma string com valores em hexadecimal para o formato numrico U32 (Unsigned Long). Esta funo a Hexadecimal String To Number, porm para utilizar esta funo, o valor hexadecimal no pode conter o caractere espao, ou seja, se entrarmos com o valor de rotao 01 A3 (hexadecimal) nesta funo, obteremos na sada o valor 1 (decimal), pois a funo desconsidera os caracteres que estiverem aps o caractere espao. Para resolver este problema, utilizamos duas vezes a funo String Subset para eliminar o caractere espao da string. A primeira String Subset fornece na sada o valor a contar do stimo caractere (desconsideraremos os dois primeiros bytes da leitura), exibindo os prximos dois caracteres, ou seja, no exemplo anterior, na sada da primeira String Subset teremos os caracteres 01. A segunda String Subset fornece na sada o valor a contar do dcimo caractere, exibindo os prximos dois caracteres, ou seja, na sada da segunda String Subset teremos os caracteres A3. Atravs da funo Concatenate Strings, podemos agrupar os dados destas duas sadas, obtendo os caracteres 01A3, que agora pode ser convertido para o formato numrico U32 atravs da funo Hexadecimal String To Number. Porm, o valor obtido na sada da funo Hexadecimal String To Number diferente do valor real de rotao exibido no conta-giros do veculo, e ao compararmos outros valores de rotao verificamos os valores exibidos no obedecem a uma escala totalmente linear. Isto pode ser visto atravs dos dados exibidos na Tabela 3.1 e no grfico da Figura 3.7.
Rotao indicada no conta-giros (RPM) 620 1000 2000 3000 4000 Mdia Valor de rotao obtido pelo OBD II 3152 4540 8260 12100 16000 Relao (Valor obtido pelo OBD II / Indicao no contagiros) 5,083871 4,54 4,13 4,033333 4

4,357441 Tabela 3.1 Relao entre o valor de rotao obtido e o valor de rotao real indicado no conta-giros.

34

Valor de rotao obtido pelo OBD

18000 16000 14000 12000 10000 8000 6000 4000 2000 0 620 1000 2000 3000 4000 Rotao indicada no conta-giros

Figura 3.7 Grfico da relao entre o valor de rotao obtido e o valor de rotao real indicado no conta-giros.

Neste caso, como a curva obtida foi muito prxima de uma reta, calculou-se a mdia desta relao, considerando todos os valores de rotao. Portanto, o valor de rotao obtido ser dividido por uma constante de valor 4,3. O tratamento da leitura de rotao ilustrado na Figura 3.8. A fim de verificar a funcionalidade do programa em LabVIEW que coleta dados pela porta OBDII do veculo, foram feitas simulaes com um a aparelho de diagnose comercial utilizado em oficinas de mecnica para se obteve o valor da curva de rotao do motor, porm se obteve o mesmo resultado encontrado no programa em LabVIEW construdo neste trabalho. A curva de rotao apresentada no painel de instrumentos do veculo Golf 2.0 ano 2004 se encontrava em desacordo com os aparelhos de medio. Foram feitas simulaes tambm no veculo Plo 2.0 ano 2004, no qual se obteve um valor linear e prximo do valor obtido com os aparelhos de medio e o programa em LabVIEW desse trabalho, o que mostra uma irregularidade na leitura de rotao do motor no painel de instrumentos deste veculo Golf 2.0 ano 2004, utilizados nos teste na FATEC Santo Andr.

35

Figura 3.8 Tratamento da leitura de rotao

3.2.3 Leitura dos cdigos de falha Para a leitura dos cdigos de falha (DTC), primeiramente necessrio enviar um comando para verificar a quantidade de falhas presentes no veculo (0101) e em seguida um novo comando para ler quais so estas falhas (03). Para apagar os cdigos de falha, escreve-se o comando 04.

3.2.3.1 Tratamento da verificao da quantidade de falhas Ao escrevermos o comando 0101, receberemos os dados 41 01 81 07 65 04 (hexadecimal), onde os dois primeiros bytes (41 01) retornam o comando que foi escrito (01 01) somando o valor 40h (hexadecimal) no primeiro byte, totalizando 41 01. O terceiro byte (81) indica a quantidade de falhas somando o valor 80h (hexadecimal) caso a quantidade de falhas seja diferente de zero. Portanto, neste exemplo, h um cdigo de falha registrado no veculo. O valor 80h somando quantidade de falhas (bit mais significativo do byte na posio 1) significa que a lmpada indicadora de falhas localizada no painel de instrumentos do veculo est ligada. Os trs bytes restantes (07 65 04) fornecem informaes sobre os tipos de testes suportados por cada mdulo, porm estes dados no sero tratados neste trabalho, pois referem-se norma SAE J1949. Neste caso, para exibir a quantidade de falhas existentes em um valor numrico, utilizamos a funo String Subset para separarmos em um subconjunto apenas o terceiro byte, que onde encontra-se a informao desejada. Para converter os dados contidos neste

36

subconjunto em valor numrico decimal, foi utilizada a funo Hexadecimal String To Number, e o resultado subtramos por 128, que o valor decimal correspondente ao valor 80h, se o valor decimal for maior que 128, ou seja, se houver falhas. Caso contrrio, ser exibido o valor direto. Este tratamento ilustrado na Figura 3.9.

Figura 3.9 Tratamento da verificao da quantidade de falhas

3.2.3.2 Tratamento da leitura dos cdigos de falha Ao escrevermos o comando 03, receberemos os dados 43 01 33 00 00 00 00 (hexadecimal), onde o primeiro byte (43) retorna o comando que foi escrito somando o valor 40h (hexadecimal). Os bytes seguintes devem ser lidos em pares para a interpretao dos cdigos de falha. Para a leitura correta dos cdigos de falha (vide Anexo A), deve-se substituir o primeiro dgito do cdigo recebido por dois caracteres, conforme descrito na Tabela 3.2.

37

Primeiro dgito do Dois caracteres que devem cdigo de falhas substituir o primeiro dgito 0 P0 1 P1 2 P2 3 P3 4 C0 5 C1 6 C2 7 C3 8 B0 9 B1 A B2 B B3 C U0 D U1 E U2 F U3 Tabela 3.2 Lista de caracteres que devem substituir o primeiro dgito do cdigo de falha recebido.

Neste trabalho, para no ficar muito extenso, a leitura dos cdigos de falhas foi limitada a uma quantidade de 9 (nove) cdigos, portanto, caso haja mais de nove falhas no veculo (esta quantidade pode ser verificada conforme o tpico anterior), devero ser corrigidas algumas falhas para a verificao das outras que no sero exibidas no primeiro instante. Para exibir os cdigos de falha separadamente, foi necessrio utilizarmos dezoito vezes a funo String Subset para eliminarmos o caractere espao entre os bytes. Aps isto, atravs da funo Concatenate Strings, podemos agrupar os bytes aos pares, exibindo cada par em uma varivel separada, conforme ilustrado na Figura 3.10.

38

Figura 3.10 Tratamento da leitura dos cdigos de falha

4 ANLISE DOS RESULTADOS


Aps concludo o tratamento das informaes, foram realizadas as leituras destas informaes atravs do Front Panel (Painel Frontal) do nosso programa desenvolvido em LabVIEW. Os resultados podem ser vistos a seguir:

4.1 Leitura de Tenso da Bateria


Conforme ilustrado na Figura 4.1, ao pressionar o boto Atualiza Tenso da Bateria dentro da aba Leituras, podemos ler qual o valor de tenso da bateria. No exemplo da figura, como o alternador estava em funcionamento, pode-se notar um valor de tenso relativamente alto (14V) no barramento da bateria.

Figura 4.1 Leituras de tenso da bateria e rotao

40

4.2 Leitura de Rotao


Ainda na Figura 4.1 pode-se observar a leitura de rotao do motor, ao pressionar o boto Atualiza Rotao. O valor de rotao exibido na figura foi obtido com o veculo em marcha lenta.

4.3 Leitura da Quantidade de Falhas


Conforme ilustrado na Figura 4.2, ao pressionarmos o boto Ver Quantidade de Falhas dentro da aba Cdigos de Falha, podemos ver a quantidade de falhas que o veculo possui. No exemplo da figura, o veculo est com seis falhas armazenadas.

Figura 4.2 Leitura dos cdigos de falha

4.4 Leitura dos Cdigos de Falha (DTC)


Ainda na Figura 4.2, ao pressionarmos o boto Ler DTC so exibidos os cdigos de falha, que podem ser interpretados de acordo com a Tabela 3.2. No exemplo da figura, podemos observar que todos os cdigos de falhas esto relacionados transmisso, conforme a Tabela 2.4.

41

4.5 Apagando os Cdigos de Falha


Ainda na Figura 4.2, aps pressionar o boto Apagar Cdigos de Falha necessrio desligar religar a chave de ignio, funcionando o motor por alguns segundos para que a unidade de controle reaprenda e identifique novamente as falhas que foram corrigidas e as falhas que ainda persistem.

4.6 Software Final


Para a concluso do software em LABVIEW, criou-se um ambiente similar ao painel de um veculo, onde se identificam alguns mostradores como o de rotao do veculo, medidor de tenso e uma listagem de cdigos de falhas, que podero ser visualizados pelo reparador ou tecnlogo automotivo, conforme mostra a figura 4.3.

Figura 4.3 Aparncia final do Software.

5 CONCLUSO
Com este trabalho, podemos concluir que possvel desenvolver um sistema de diagnstico veicular eficiente com baixo custo em um ambiente acadmico e que para isto no necessrio conhecer profundamente os protocolos, visto que os prprios circuitos integrados da famlia ELM tratam estes protocolos. Verificamos tambm que o LabVIEW possui diversos recursos grficos, possibilitando o desenvolvimento de um software amigvel, com excelente aparncia e de fcil manuseio. Como contribuio, este trabalho pode ser utilizado pela Fatec como uma ferramenta didtica, principalmente nas aulas de Diagnose Veicular e Ferramentas Computacionais.

5.1 Propostas Futuras


Como neste trabalho foram realizadas apenas as leituras de tenso da bateria, rotao do motor e cdigos de falha (limitado a 9 falhas por vez), deixamos como propostas futuras o aprimoramento do software para a leitura de outros dados do veculo (temperatura, freeze frame, testes no sensor de oxignio, etc.) e a ampliao da quantidade de falhas a serem lidas. Outra proposta para um trabalho futuro a leitura de outros protocolos, que pode ser trabalhada atravs do prprio circuito integrado ELM 327, inclusive reconhecendo automaticamente o protocolo do veculo.

6 REFERNCIAS
GUIMARES, Alexandre de Almeida; Eletrnica Embarcada Automotiva 1.ed; So Paulo: Erica, 2007. BELO, Valdeci Pereira; Sistema para Diagnstico Automtico de Falhas em Veculos Automotores OBD-2; UFMG Belo Horizonte; Dissertao de Mestrado; 2003. PVOA, Rodrigo; Aplicao do Protocolo KW2000 para Leitura de Dados Disponveis no Mdulo de Controle do Motor em um Veculo Popular; EPUSP So Paulo; Dissertao de Mestrado; 2007. AEA Associao Brasileira de Engenharia Automotiva; V Seminrio sobre a EletroEletrnica Aplicada Mobilidade Diagnose Veicular; So Paulo; 2003. International Organization for Standardization. ISO 14230-2 Keyword protocol 2000 - Part 2: Data link layer. ISO, 1996. International Organization for Standardization. ISO 15031-5 Road vehicles

Communication between vehicle and external equipment for emissions-related diagnostics Part 5: Emissions-related diagnostic services. ISO, 2006. JUNIOR, Orlando Salvo; Notas de Aula da Disciplina de Diagnose Veicular Ministrada ao Curso de Eletrnica Automotiva da Fatec Santo Andr; 2009. Datasheet ELM323DS; OBD (ISO) to RS232 Interpreter (http://www.elmelectronics.com/). Datasheet ELM327DS; OBD to RS232 Interpreter (http://www.elmelectronics.com/). http://www.obdii.com/ (acessado em 20/10/2009). REGAZZI, Rogrio Dias; PEREIRA, Paulo Srgio e Silva Jr; Manoel Feliciano (2005).: Solues Prticas de Instrumentao Utilizando a Programao Grfica LabVIEW.

ANEXOS

Anexo A - Programa completo para diagnose veicular feito em LabView

SubVI de Escrita na Serial

SubVI de Leitura na Serial

ANEXO B Lista dos DTCS ISO


(Fonte: http://www.obd-codes.com/trouble_codes)

1) POWER TRAIN ERROR CODES P0010...."A" Camshaft Position Actuator circuit (Bank 1) P0011...."A" Camshaft Position - Timing over-advanced (Bank 1) P0012...."A" Camshaft Position - Timing over-retarded (Bank 1) P0013...."B" Camshaft Position Actuator circuit (Bank 2) P0014...."B" Camshaft Position - Timing over-advanced (Bank 1) P0015...."B" Camshaft Position - Timing over-retarded (Bank 1) P0020...."A" Camshaft Position Actuator circuit (Bank 2) P0021...."A" Camshaft Position - Timing over-advanced (Bank 2) P0022...."A" Camshaft Position - Timing over-retarded (Bank 2) P0023...."B" Camshaft Position Actuator circuit (Bank 2) P0024...."B" Camshaft Position - Timing over-advanced (Bank 2) P0025...."B" Camshaft Position - Timing over-retarded (Bank 2) P0030....O2 Sensor heater control circuit (Bank 1 Sensor 1) P0031....O2 Sensor heater control circuit low (Bank 1 Sensor 1) P0032....O2 Sensor heater control circuit high (Bank 1 Sensor 1) P0033....Turbocharger bypass valve control circuit P0034....Turbocharger bypass valve control circuit low P0035....Turbocharger bypass valve control circuit high P0036....O2 Sensor heater control circuit (Bank 1 Sensor 2) P0037....O2 Sensor heater control circuit low (Bank 1 Sensor 2) P0038....O2 Sensor heater control circuit high (Bank 1 Sensor 2) P0042....O2 Sensor heater control circuit (Bank 1 Sensor 3) P0043....O2 Sensor heater control circuit low (Bank 1 Sensor 3) P0044....O2 Sensor heater control circuit high (Bank 1 Sensor 3) P0050....O2 Sensor heater control circuit (Bank 2 Sensor 1) P0051....O2 Sensor heater control circuit low (Bank 2 Sensor 1) P0052....O2 Sensor heater control circuit high (Bank 2 Sensor 1) P0056....O2 Sensor heater control circuit (Bank 2 Sensor 2) P0057....O2 Sensor heater control circuit low (Bank 2 Sensor 2) P0058....O2 Sensor heater control circuit high (Bank 2 Sensor 2) P0062....O2 Sensor heater control circuit (Bank 2 Sensor 3) P0063....O2 Sensor heater control circuit low (Bank 2 Sensor 3) P0064....O2 Sensor heater control circuit high (Bank 2 Sensor 3) P0065....Air Assisted Injector control range/performance problem P0066....Air Assisted Injector control circuit low P0067....Air Assisted Injector control circuit high P0070....Ambient Air Temperature Sensor circuit P0071....Ambient Air Temperature Sensor range/performance problem P0072....Ambient Air Temperature Sensor circuit low input P0073....Ambient Air Temperature Sensor circuit high input P0074....Ambient Air Temperature Sensor circuit intermittent P0075....Intake Valve control Solenoid circuit (Bank 1) P0076....Intake Valve control Solenoid circuit low (Bank 1) P0077....Intake Valve control Solenoid circuit high (Bank 1) P0078....Exhaust Valve control Solenoid circuit (Bank 1) P0079....Exhaust Valve control Solenoid circuit low (Bank 1) P0080....Exhaust Valve control Solenoid circuit high (Bank 1) P0081....Intake Valve control Solenoid circuit (Bank 2) P0082....Intake Valve control Solenoid circuit low (Bank 2)

P0083....Intake Valve control Solenoid circuit high (Bank 2) P0084....Exhaust Valve control Solenoid circuit (Bank 2) P0085....Exhaust Valve control Solenoid circuit low (Bank 2) P0086....Exhaust Valve control Solenoid circuit high (Bank 2) P0100....Mass or Volume Air Flow circuit malfunction P0101....Mass or Volume Air Flow circuit range/performance problem P0102....Mass or Volume Air Flow circuit low input P0103....Mass or Volume Air Flow circuit high input P0104....Mass or Volume Air Flow circuit intermittent P0105....Manifold Absolute Pressure/Barometric Pressure circuit malfunction P0106....Manifold Absolute Pressure/Barometric Pressure circuit range/performance problem P0107....Manifold Absolute Pressure/Barometric Pressure circuit low input P0108....Manifold Absolute Pressure/Barometric Pressure circuit high input P0109....Manifold Absolute Pressure/Barometric Pressure circuit intermittent P0110....Intake Air Temperature circuit malfunction P0111....Intake Air Temperature circuit range/performance problem P0112....Intake Air Temperature circuit low input P0113....Intake Air Temperature circuit high input P0114....Intake Air Temperature circuit intermittent P0115....Engine Coolant Temperature circuit malfunction P0116....Engine Coolant Temperature circuit range/performance problem P0117....Engine Coolant Temperature circuit low input P0118....Engine Coolant Temperature circuit high input P0119....Engine Coolant Temperature circuit intermittent P0120....Throttle/Petal Position Sensor/Switch A circuit malfunction P0121....Throttle/Petal Position Sensor/Switch A circuit range/performance problem P0122....Throttle/Petal Position Sensor/Switch A circuit low input P0123....Throttle/Petal Position Sensor/Switch A circuit high input P0124....Throttle/Petal Position Sensor/Switch A circuit intermittent P0125....Insufficient Coolant Temperature for Closed Loop Fuel control P0126....Insufficient Coolant Temperature for stable operation P0127....Intake Air Temperature too high P0128....Coolant Thermostat (coolant below normal temp range) P0130....O2 Sensor circuit malfunction (Bank 1 Sensor 1) P0131....O2 Sensor circuit low Voltage (Bank 1 Sensor 1) P0132....O2 Sensor circuit high Voltage (Bank 1 Sensor 1) P0133....O2 Sensor circuit Slow Response (Bank 1 Sensor 1) P0134....O2 Sensor circuit No Activity detected (Bank 1 Sensor 1) P0135....O2 Sensor Heater circuit malfunction (Bank 1 Sensor 1) P0136....O2 Sensor circuit malfunction (Bank 1 Sensor 2) P0137....O2 Sensor circuit low Voltage (Bank 1 Sensor 2) P0138....O2 Sensor circuit high Voltage (Bank 1 Sensor 2) P0139....O2 Sensor circuit Slow Response (Bank 1 Sensor 2) P0140....O2 Sensor circuit No Activity detected (Bank 1 Sensor 2) P0141....O2 Sensor Heater circuit malfunction (Bank 1 Sensor 2) P0142....O2 Sensor circuit malfunction (Bank 1 Sensor 3) P0143....O2 Sensor circuit low Voltage (Bank 1 Sensor 3) P0144....O2 Sensor circuit high Voltage (Bank 1 Sensor 3) P0145....O2 Sensor circuit Slow Response (Bank 1 Sensor 3) P0146....O2 Sensor circuit No Activity detected (Bank 1 Sensor 3) P0147....O2 Sensor Heater circuit malfunction (Bank 1 Sensor 3) P0148....Fuel delivery error P0149....Fuel timing error P0150....O2 Sensor circuit malfunction (Bank 2 Sensor 1) P0151....O2 Sensor circuit low Voltage (Bank 2 Sensor 1) P0152....O2 Sensor circuit high Voltage (Bank 2 Sensor 1) P0153....O2 Sensor circuit Slow Response (Bank 2 Sensor 1) P0154....O2 Sensor circuit No Activity detected (Bank 2 Sensor 1) P0155....O2 Sensor Heater circuit malfunction (Bank 2 Sensor 1) P0156....O2 Sensor circuit malfunction (Bank 2 Sensor 2) P0157....O2 Sensor circuit low Voltage (Bank 2 Sensor 2)

P0158....O2 Sensor circuit high Voltage (Bank 2 Sensor 2) P0159....O2 Sensor circuit Slow Response (Bank 2 Sensor 2) P0160....O2 Sensor circuit No Activity detected (Bank 2 Sensor 2) P0161....O2 Sensor Heater circuit malfunction (Bank 2 Sensor 2) P0162....O2 Sensor circuit malfunction (Bank 2 Sensor 3) P0163....O2 Sensor circuit low Voltage (Bank 2 Sensor 3) P0164....O2 Sensor circuit high Voltage (Bank 2 Sensor 3) P0165....O2 Sensor circuit Slow Response (Bank 2 Sensor 3) P0166....O2 Sensor circuit No Activity detected (Bank 2 Sensor 3) P0167....O2 Sensor Heater circuit malfunction (Bank 2 Sensor 3) P0168....Fuel temperature too high P0169....Incorrect fuel composition (flex fuel vehicles) P0170....Fuel Trim malfunction (Bank 1) P0171....System too Lean (Bank 1) P0172....System too Rich (Bank 1) P0173....Fuel Trim malfunction (Bank 2) P0174....System too Lean (Bank 2) P0175....System too Rich (Bank 2) P0176....Fuel Composition Sensor circuit malfunction P0177....Fuel Composition Sensor circuit range/performance P0178....Fuel Composition Sensor circuit low input P0179....Fuel Composition Sensor circuit high input P0180....Fuel Temperature Sensor A circuit malfunction P0181....Fuel Temperature Sensor A circuit range/performance P0182....Fuel Temperature Sensor A circuit low input P0183....Fuel Temperature Sensor A circuit high input P0184....Fuel Temperature Sensor A circuit intermittent P0185....Fuel Temperature Sensor B circuit malfunction P0186....Fuel Temperature Sensor B circuit range/performance P0187....Fuel Temperature Sensor B circuit low input P0188....Fuel Temperature Sensor B circuit high input P0189....Fuel Temperature Sensor B circuit intermittent P0190....Fuel Rail Pressure Sensor circuit malfunction P0191....Fuel Rail Pressure Sensor circuit range/performance P0192....Fuel Rail Pressure Sensor circuit low input P0193....Fuel Rail Pressure Sensor circuit high input P0194....Fuel Rail Pressure Sensor circuit intermittent P0195....Engine Oil Temperature Sensor malfunction P0196....Engine Oil Temperature Sensor range/performance P0197....Engine Oil Temperature Sensor low P0198....Engine Oil Temperature Sensor high P0199....Engine Oil Temperature Sensor intermittent P0200....Injector circuit malfunction P0201....Injector circuit malfunction - Cylinder 1 P0202....Injector circuit malfunction - Cylinder 2 P0203....Injector circuit malfunction - Cylinder 3 P0204....Injector circuit malfunction - Cylinder 4 P0205....Injector circuit malfunction - Cylinder 5 P0206....Injector circuit malfunction - Cylinder 6 P0207....Injector circuit malfunction - Cylinder 7 P0208....Injector circuit malfunction - Cylinder 8 P0209....Injector circuit malfunction - Cylinder 9 P0210....Injector circuit malfunction - Cylinder 10 P0211....Injector circuit malfunction - Cylinder 11 P0212....Injector circuit malfunction - Cylinder 12 P0213....Cold Start Injector 1 malfunction P0214....Cold Start Injector 2 malfunction P0215....Engine Shutoff Solenoid malfunction P0216....Injection Timing control circuit malfunction P0217....Engine Overtemp Condition

P0218....Transmission Over Temperature Condition P0219....Engine Overspeed Condition P0220....Throttle/Pedal Position Sensor/Switch B circuit malfunction P0221....Throttle/Pedal Position Sensor/Switch B circuit range/performance problem P0222....Throttle/Pedal Position Sensor/Switch B circuit low input P0223....Throttle/Pedal Position Sensor/Switch B circuit high input P0224....Throttle/Petal Position Sensor/Switch B circuit intermittent P0225....Throttle/Petal Position Sensor/Switch C circuit malfunction P0226....Throttle/Petal Position Sensor/Switch C circuit range/performance problem P0227....Throttle/Petal Position Sensor/Switch C circuit low input P0228....Throttle/Petal Position Sensor/Switch C circuit high input P0229....Throttle/Petal Position Sensor/Switch C circuit intermittent P0230....Fuel Pump Primary circuit malfunction P0231....Fuel Pump Secondary circuit low P0232....Fuel Pump Secondary circuit high P0233....Fuel Pump Secondary circuit intermittent P0234....Engine Overboost Condition P0235....Turbocharger Boost Sensor A circuit malfunction P0236....Turbocharger Boost Sensor A circuit range/performance P0237....Turbocharger Boost Sensor A circuit low P0238....Turbocharger Boost Sensor A circuit high P0239....Turbocharger Boost Sensor B malfunction P0240....Turbocharger Boost Sensor B circuit range/performance P0241....Turbocharger Boost Sensor B circuit low P0242....Turbocharger Boost Sensor B circuit high P0243....Turbocharger Wastegate Solenoid A malfunction P0244....Turbocharger Wastegate Solenoid A range/performance P0245....Turbocharger Wastegate Solenoid A low P0246....Turbocharger Wastegate Solenoid A high P0247....Turbocharger Wastegate Solenoid B malfunction P0248....Turbocharger Wastegate Solenoid B range/performance P0249....Turbocharger Wastegate Solenoid B low P0250....Turbocharger Wastegate Solenoid B high P0251....Injection Pump Fuel Metering control "A" malfunction (Cam/Rotor/Injector) P0252....Injection Pump Fuel Metering control "A" range/performance (Cam/Rotor/Injector) P0253....Injection Pump Fuel Metering control "A" low (Cam/Rotor/Injector) P0254....Injection Pump Fuel Metering control "A" high (Cam/Rotor/Injector) P0255....Injection Pump Fuel Metering control "A" intermittent (Cam/Rotor/Injector) P0256....Injection Pump Fuel Metering control "B" malfunction (Cam/Rotor/Injector) P0257....Injection Pump Fuel Metering control "B" range/performance (Cam/Rotor/Injector) P0258....Injection Pump Fuel Metering control "B" low (Cam/Rotor/Injector) P0259....Injection Pump Fuel Metering control "B" high (Cam/Rotor/Injector) P0260....Injection Pump Fuel Metering control "B" intermittent (Cam/Rotor/Injector) P0261....Cylinder 1 Injector circuit low P0262....Cylinder 1 Injector circuit high P0263....Cylinder 1 Contribution/Balance Fault P0264....Cylinder 2 Injector circuit low P0265....Cylinder 2 Injector circuit high P0266....Cylinder 2 Contribution/Balance Fault P0267....Cylinder 3 Injector circuit low P0268....Cylinder 3 Injector circuit high P0269....Cylinder 3 Contribution/Balance Fault P0270....Cylinder 4 Injector circuit low P0271....Cylinder 4 Injector circuit high P0272....Cylinder 4 Contribution/Balance Fault P0273....Cylinder 5 Injector circuit low P0274....Cylinder 5 Injector circuit high P0275....Cylinder 5 Contribution/Balance Fault P0276....Cylinder 6 Injector circuit low P0277....Cylinder 6 Injector circuit high

P0278....Cylinder 6 Contribution/Balance Fault P0279....Cylinder 7 Injector circuit low P0280....Cylinder 7 Injector circuit high P0281....Cylinder 7 Contribution/Balance Fault P0282....Cylinder 8 Injector circuit low P0283....Cylinder 8 Injector circuit high P0284....Cylinder 8 Contribution/Balance Fault P0285....Cylinder 9 Injector circuit low P0286....Cylinder 9 Injector circuit high P0287....Cylinder 9 Contribution/Balance Fault P0288....Cylinder 10 Injector circuit low P0289....Cylinder 10 Injector circuit high P0290....Cylinder 10 Contribution/Balance Fault P0291....Cylinder 11 Injector circuit low P0292....Cylinder 11 Injector circuit high P0293....Cylinder 11 Contribution/Balance Fault P0294....Cylinder 12 Injector circuit low P0295....Cylinder 12 Injector circuit high P0296....Cylinder 12 Contribution/range Fault P0300....Random/Multiple Cylinder misfire detected P0301....Cylinder 1 misfire detected P0302....Cylinder 2 misfire detected P0303....Cylinder 3 misfire detected P0304....Cylinder 4 misfire detected P0305....Cylinder 5 misfire detected P0306....Cylinder 6 misfire detected P0307....Cylinder 7 misfire detected P0308....Cylinder 8 misfire detected P0309....Cylinder 9 misfire detected P0311....Cylinder 11 misfire detected P0312....Cylinder 12 misfire detected P0313....misfire detected with low fuel P0314....Single cylinder misfire (cylinder not specified) P0320....Ignition/Distributor Engine Speed input circuit malfunction P0321....Ignition/Distributor Engine Speed input circuit range/performance P0322....Ignition/Distributor Engine Speed input circuit No Signal P0323....Ignition/Distributor Engine Speed input circuit intermittent P0325....Knock Sensor 1 circuit malfunction (Bank 1 or Single Sensor) P0326....Knock Sensor 1 circuit range/performance (Bank 1 or Single Sensor) P0327....Knock Sensor 1 circuit low input (Bank 1 or Single Sensor) P0328....Knock Sensor 1 circuit high input (Bank 1 or Single Sensor) P0329....Knock Sensor 1 circuit intermittent (Bank 1 or Single Sensor) P0330....Knock Sensor 2 circuit malfunction (Bank 2) P0331....Knock Sensor 2 circuit range/performance (Bank 2) P0332....Knock Sensor 2 circuit low input (Bank 2) P0333....Knock Sensor 2 circuit high input (Bank 2) P0334....Knock Sensor 2 circuit intermittent (Bank 2) P0335....Crankshaft Position Sensor A circuit malfunction P0336....Crankshaft Position Sensor A circuit range/performance P0337....Crankshaft Position Sensor A circuit low input P0338....Crankshaft Position Sensor A circuit high input P0339....Crankshaft Position Sensor A circuit intermittent P0340....Camshaft Position Sensor circuit malfunction P0341....Camshaft Position Sensor circuit range/performance P0342....Camshaft Position Sensor circuit low input P0343....Camshaft Position Sensor circuit high input P0344....Camshaft Position Sensor circuit intermittent P0345....Camshaft Position Sensor "A" circuit (Bank 2) P0346....Camshaft Position Sensor "A" circuit out of range (Bank 2) P0347....Camshaft Position Sensor "A" circuit low input (Bank 2)

P0348....Camshaft Position Sensor "A" circuit high input (Bank 2) P0349....Camshaft Position Sensor "A" circuit intermittent (Bank 2) P0350....Ignition Coil Primary/Secondary circuit malfunction P0351....Ignition Coil A Primary/Secondary circuit malfunction P0352....Ignition Coil B Primary/Secondary circuit malfunction P0353....Ignition Coil C Primary/Secondary circuit malfunction P0354....Ignition Coil D Primary/Secondary circuit malfunction P0355....Ignition Coil E Primary/Secondary circuit malfunction P0356....Ignition Coil F Primary/Secondary circuit malfunction P0357....Ignition Coil G Primary/Secondary circuit malfunction P0358....Ignition Coil H Primary/Secondary circuit malfunction P0359....Ignition Coil I Primary/Secondary circuit malfunction P0360....Ignition Coil J Primary/Secondary circuit malfunction P0361....Ignition Coil K Primary/Secondary circuit malfunction P0362....Ignition Coil L Primary/Secondary circuit malfunction P0365....Camshaft Position Sensor "B" circuit (Bank 1) P0366....Camshaft Position Sensor "B" circuit out of range (Bank 1) P0367....Camshaft Position Sensor "B" circuit low input (Bank 1) P0368....Camshaft Position Sensor "B" circuit high input (Bank 1) P0369....Camshaft Position Sensor "B" circuit intermittent (Bank 1) P0370....Timing Reference high Resolution Signal A malfunction P0371....Timing Reference high Resolution Signal A Too Many Pulses P0372....Timing Reference high Resolution Signal A Too Few Pulses P0373....Timing Reference high Resolution Signal A intermittent/Erratic Pulses P0374....Timing Reference high Resolution Signal A No Pulses P0375....Timing Reference high Resolution Signal B malfunction P0376....Timing Reference high Resolution Signal B Too Many Pulses P0377....Timing Reference high Resolution Signal B Too Few Pulses P0378....Timing Reference high Resolution Signal B intermittent/Erratic Pulses P0379....Timing Reference high Resolution Signal B No Pulses P0380....Glow Plug/Heater circuit "A" malfunction P0381....Glow Plug/Heater Indicator circuit malfunction P0382....Exhaust Gas Recirculation Flow malfunction P0385....Crankshaft Position Sensor B circuit malfunction P0386....Crankshaft Position Sensor B circuit range/performance P0387....Crankshaft Position Sensor B circuit low input P0388....Crankshaft Position Sensor B circuit high input P0389....Crankshaft Position Sensor B circuit intermittent P0390....Camshaft Position Sensor "B" circuit intermittent P0391....Camshaft Position Sensor "B" circuit out of range (Bank 2) P0392....Camshaft Position Sensor "B" circuit low input (Bank 2) P0393....Camshaft Position Sensor "B" circuit high input (Bank 2) P0394....Camshaft Position Sensor "B" circuit intermittent (Bank 2) P0400....Exhaust Gas Recirculation Flow malfunction P0401....Exhaust Gas Recirculation Flow Insufficient detected P0402....Exhaust Gas Recirculation Flow Excessive detected P0403....Exhaust Gas Recirculation circuit malfunction P0404....Exhaust Gas Recirculation circuit range/performance P0405....Exhaust Gas Recirculation Sensor A circuit low P0406....Exhaust Gas Recirculation Sensor A circuit high P0407....Exhaust Gas Recirculation Sensor B circuit low P0408....Exhaust Gas Recirculation Sensor B circuit high P0410....Secondary Air Injection System malfunction P0411....Secondary Air Injection System Incorrect Flow detected P0412....Secondary Air Injection System Switching Valve A circuit malfunction P0413....Secondary Air Injection System Switching Valve A circuit open P0414....Secondary Air Injection System Switching Valve A circuit shorted P0415....Secondary Air Injection System Switching Valve B circuit malfunction P0416....Secondary Air Injection System Switching Valve B circuit open P0417....Secondary Air Injection System Switching Valve B circuit shorted

P0418....Secondary Air Injection System Relay "A" circuit malfunction P0419....Secondary Air Injection System Relay "B" circuit malfunction P0420....Catalyst System Efficiency Below Threshold (Bank 1) P0421....Warm Up Catalyst Efficiency Below Threshold (Bank 1) P0422....Main Catalyst Efficiency Below Threshold (Bank 1) P0423....Heated Catalyst Efficiency Below Threshold (Bank 1) P0424....Heated Catalyst Temperature Below Threshold (Bank 1) P0425....Catalyst Temperature Sensor (Bank 1) P0426....Catalyst Temperature Sensor out of range (Bank 1) P0427....Catalyst Temperature Sensor low input (Bank 1) P0428....Catalyst Temperature Sensor high input (Bank 1) P0429....Catalyst Heater control circuit (Bank 1) P0430....Catalyst System Efficiency Below Threshold (Bank 2) P0431....Warm Up Catalyst Efficiency Below Threshold (Bank 2) P0432....Main Catalyst Efficiency Below Threshold (Bank 2) P0433....Heated Catalyst Efficiency Below Threshold (Bank 2) P0434....Heated Catalyst Temperature Below Threshold (Bank 2) P0435....Catalyst Temperature Sensor (Bank 2) P0436....Catalyst Temperature Sensor out of range (Bank 2) P0437....Catalyst Temperature Sensor low input (Bank 2) P0438....Catalyst Temperature Sensor high input (Bank 2) P0439....Catalyst Heater control circuit (Bank 2) P0440....Evaporative Emission control System malfunction P0441....Evaporative Emission control System Incorrect Purge Flow P0442....Evaporative Emission control System Leak detected (small leak) P0443....Evaporative Emission control System Purge control Valve circuit malfunction P0444....Evaporative Emission control System Purge control Valve circuit open P0445....Evaporative Emission control System Purge control Valve circuit shorted P0446....Evaporative Emission control System Vent control circuit malfunction P0447....Evaporative Emission control System Vent control circuit open P0448....Evaporative Emission control System Vent control circuit shorted P0449....Evaporative Emission control System Vent Valve/Solenoid circuit malfunction P0450....Evaporative Emission control System Pressure Sensor malfunction P0451....Evaporative Emission control System Pressure Sensor range/performance P0452....Evaporative Emission control System Pressure Sensor low input P0453....Evaporative Emission control System Pressure Sensor high input P0454....Evaporative Emission control System Pressure Sensor intermittent P0455....Evaporative Emission control System Leak detected (gross leak) P0456....Evaporative Emission control System leak detected (small leak) P0457....Evaporative Emission control System leak detected (loose filler cap) P0460....Fuel Level Sensor circuit malfunction P0461....Fuel Level Sensor circuit range/performance P0462....Fuel Level Sensor circuit low input P0463....Fuel Level Sensor circuit high input P0464....Fuel Level Sensor circuit intermittent P0465....Purge Flow Sensor circuit malfunction P0466....Purge Flow Sensor circuit range/performance P0467....Purge Flow Sensor circuit low input P0468....Purge Flow Sensor circuit high input P0469....Purge Flow Sensor circuit intermittent P0470....Exhaust Pressure Sensor malfunction P0471....Exhaust Pressure Sensor range/performance P0472....Exhaust Pressure Sensor low P0473....Exhaust Pressure Sensor high P0474....Exhaust Pressure Sensor intermittent P0475....Exhaust Pressure control Valve malfunction P0476....Exhaust Pressure control Valve range/performance P0477....Exhaust Pressure control Valve low P0478....Exhaust Pressure control Valve high P0479....Exhaust Pressure control Valve intermittent

P0480....Cooling Fan 1 control circuit malfunction P0481....Cooling Fan 2 control circuit malfunction P0482....Cooling Fan 3 control circuit malfunction P0483....Cooling Fan Rationality Check malfunction P0484....Cooling Fan circuit Over Current P0485....Cooling Fan Power/Ground circuit malfunction P0486....Exhaust Gas Recirculation Sensor "B" circuit P0487....Exhaust Gas Recirculation Throttle Position control circuit P0488....Exhaust Gas Recirculation Throttle Position control out of range P0491....Secondary Air Injection System (Bank 1) P0492....Secondary Air Injection System (Bank 2) P0500....Vehicle Speed Sensor malfunction P0501....Vehicle Speed Sensor range/performance P0502....Vehicle Speed Sensor low input P0503....Vehicle Speed Sensor intermittent/Erratic/high P0505....Idle control System malfunction P0506....Idle control System RPM lower Than Expected P0507....Idle control System RPM higher Than Expected P0508....Idle control System circuit low P0509....Idle control System circuit high P0510....Closed Throttle Position Switch malfunction P0512....Starter request circuit P0513....Incorrect Immobilizer key P0515....Battery Temperature Sensor circuit P0516....Battery Temperature Sensor circuit low P0517....Battery Temperature Sensor circuit high P0520....Engine Oil Pressure Sensor/Switch circuit malfunction P0521....Engine Oil Pressure Sensor/Switch circuit range/performance P0522....Engine Oil Pressure Sensor/Switch circuit low Voltage P0523....Engine Oil Pressure Sensor/Switch circuit high Voltage P0524....Engine oil pressure too low P0530....A/C Refrigerant Pressure Sensor circuit malfunction P0531....A/C Refrigerant Pressure Sensor circuit out of range P0532....A/C Refrigerant Pressure Sensor circuit low input P0533....A/C Refrigerant Pressure Sensor circuit high input P0534....Air Conditioner Refrigerant Charge Loss P0540....Intake Air Heater circuit P0541....Intake Air Heater circuit low P0542....Intake Air Heater circuit high P0544....Exhaust Gas Temperature Sensor circuit (Bank 1) P0545....Exhaust Gas Temperature Sensor circuit low (Bank 1) P0546....Exhaust Gas Temperature Sensor circuit high (Bank 1) P0547....Exhaust Gas Temperature Sensor circuit (Bank 2) P0548....Exhaust Gas Temperature Sensor circuit low (Bank 2) P0549....Exhaust Gas Temperature Sensor circuit high (Bank 2) P0550....Power Steering Pressure Sensor circuit malfunction P0551....Power Steering Pressure Sensor circuit range/performance P0552....Power Steering Pressure Sensor circuit low input P0553....Power Steering Pressure Sensor circuit high input P0554....Power Steering Pressure Sensor circuit intermittent P0560....System Voltage malfunction P0561....System Voltage Unstable P0562....System Voltage low P0563....System Voltage high P0564....Cruise control multi-function input signal P0565....Cruise control On Signal malfunction P0566....Cruise control Off Signal malfunction P0567....Cruise control Resume Signal malfunction P0568....Cruise control Set Signal malfunction P0569....Cruise control Coast Signal malfunction

P0570....Cruise control Accel Signal malfunction P0571....Cruise control/Brake Switch A circuit malfunction P0572....Cruise control/Brake Switch A circuit low P0573....Cruise control/Brake Switch A circuit high P0574....Cruise control system - vehicle speed too high P0575....Cruise control Input circuit P0576....Cruise control Input circuit low P0577....Cruise control Input circuit high P0578....Cruise control Related malfunction P0579....Cruise control Related malfunction P0580....Cruise control Related malfunction P0600....Serial Communication Link malfunction P0601....Internal control Module Memory Check Sum Error P0602....control Module Programming Error P0603....Internal control Module Keep Alive Memory (KAM) Error P0604....Internal control Module Random Access Memory (RAM) Error P0605....Internal control Module Read Only Memory (ROM) Error P0606....PCM Processor Fault P0607....control Module performance P0608....control Module VSS Output "A" malfunction P0609....control Module VSS Output "B" malfunction P0610....control Module vehicle options error P0615....Starter Relay circuit P0616....Starter Relay circuit low P0617....Starter Relay circuit high P0618....Alternative Fuel control Module KAM error P0619....Alternative Fuel control Module RAM/ROM error P0620....Generator control circuit malfunction P0621....Generator Lamp "L" control circuit malfunction P0622....Generator Field "F" control circuit malfunction P0623....Generator Lamp control circuit P0624....Fuel Cap Lamp control circuit P0630....VIN not programmed or mismatch - ECM/PCM P0631....VIN not programmed or mismatch - TCM P0635....Power Steering control circuit P0636....Power Steering control circuit low P0637....Power Steering control circuit high P0638....Throttle Actuator control out of range (Bank 1) P0639....Throttle Actuator control out of range (Bank 2) P0640....Intake Air Heater control circuit P0645....A/C Clutch Relay control circuit P0646....A/C Clutch Relay control circuit high P0647....A/C Clutch Relay control circuit high P0648....Immobilizer Lamp control circuit P0649....Speed control Lamp control circuit P0650....Malfunction Indicator Lamp (MIL) control circuit malfunction P0654....Engine RPM Output circuit malfunction P0655....Engine Hot Lamp Output control circuit malfunction P0656....Fuel Level Output circuit malfunction P0660....Intake Manifold Tuning Valve control circuit (Bank 1) P0661....Intake Manifold Tuning Valve control circuit low (Bank 1) P0662....Intake Manifold Tuning Valve control circuit high (Bank 1) P0663....Intake Manifold Tuning Valve control circuit (Bank 2) P0664....Intake Manifold Tuning Valve control circuit low (Bank 2) P0665....Intake Manifold Tuning Valve control circuit high (Bank 2) P0700....Transmission control System malfunction P0701....Transmission control System out of range P0702....Transmission control System Electrical P0703....Torque Converter/Brake Switch B circuit malfunction P0704....Clutch Switch input circuit malfunction

P0705....Transmission range Sensor circuit malfunction (PRNDL input) P0706....Transmission range Sensor circuit range/performance P0707....Transmission range Sensor circuit low input P0708....Transmission range Sensor circuit high input P0709....Transmission range Sensor circuit intermittent P0710....Transmission Fluid Temperature Sensor circuit malfunction P0711....Transmission Fluid Temperature Sensor circuit range/performance P0712....Transmission Fluid Temperature Sensor circuit low input P0713....Transmission Fluid Temperature Sensor circuit high input P0714....Transmission Fluid Temperature Sensor circuit intermittent P0715....input/Turbine Speed Sensor circuit malfunction P0716....input/Turbine Speed Sensor circuit range/performance P0717....input/Turbine Speed Sensor circuit No Signal P0718....input/Turbine Speed Sensor circuit intermittent P0719....Torque Converter/Brake Switch B circuit low P0720....Output Speed Sensor circuit malfunction P0721....Output Speed Sensor range/performance P0722....Output Speed Sensor No Signal P0723....Output Speed Sensor intermittent P0724....Torque Converter/Brake Switch B circuit high P0725....Engine Speed input circuit malfunction P0726....Engine Speed input circuit range/performance P0727....Engine Speed input circuit No Signal P0728....Engine Speed input circuit intermittent P0730....Incorrect Gear Ratio P0731....Gear 1 Incorrect ratio P0732....Gear 2 Incorrect ratio P0733....Gear 3 Incorrect ratio P0734....Gear 4 Incorrect ratio P0735....Gear 5 Incorrect ratio P0736....Reverse incorrect gear ratio P0737....TCM engine speed output circuit P0738....TCM engine speed output circuit low P0739....TCM engine speed output circuit high P0740....Torque Converter Clutch circuit malfunction P0741....Torque Converter Clutch circuit performance or stuck off P0742....Torque Converter Clutch circuit stuck on P0743....Torque Converter Clutch circuit electrical P0744....Torque Converter Clutch circuit intermittent P0745....Pressure control Solenoid malfunction P0746....Pressure control Solenoid performance or Stuck Off P0747....Pressure control Solenoid Stuck On P0748....Pressure control Solenoid Electrical P0749....Pressure control Solenoid intermittent P0750....Shift Solenoid A malfunction P0751....Shift Solenoid A performance or Stuck Off P0752....Shift Solenoid A Stuck On P0753....Shift Solenoid A Electrical P0754....Shift Solenoid A intermittent P0755....Shift Solenoid B malfunction P0756....Shift Solenoid B performance or Stuck Off P0757....Shift Solenoid B Stuck On P0758....Shift Solenoid B Electrical P0759....Shift Solenoid B intermittent P0760....Shift Solenoid C malfunction P0761....Shift Solenoid C performance or Stuck Off P0762....Shift Solenoid C Stuck On P0763....Shift Solenoid C Electrical P0764....Shift Solenoid C intermittent P0765....Shift Solenoid D malfunction

P0766....Shift Solenoid D performance or Stuck Off P0767....Shift Solenoid D Stuck On P0768....Shift Solenoid D Electrical P0769....Shift Solenoid D intermittent P0770....Shift Solenoid E malfunction P0771....Shift Solenoid E performance or Stuck Off P0772....Shift Solenoid E Stuck On P0773....Shift Solenoid E Electrical P0774....Shift Solenoid E intermittent P0775....Pressure Control Solenoid "B" P0776....Pressure Control Solenoid "B" performance or stuck off P0777....Pressure Control Solenoid "B" stuck on P0778....Pressure Control Solenoid "B" electrical P0779....Pressure Control Solenoid "B" intermittent P0780....Shift malfunction P0781....1-2 Shift malfunction P0782....2-3 Shift malfunction P0783....3-4 Shift malfunction P0784....4-5 Shift malfunction P0785....Shift/Timing Solenoid malfunction P0786....Shift/Timing Solenoid range/performance P0787....Shift/Timing Solenoid low P0788....Shift/Timing Solenoid high P0789....Shift/Timing Solenoid intermittent P0790....Normal/performance Switch circuit malfunction P0791....Intermediate Shaft Speed Sensor circuit P0792....Intermediate Shaft Speed Sensor circuit out of range P0793....Intermediate Shaft Speed Sensor circuit no signal P0794....Intermediate Shaft Speed Sensor circuit intermittent P0795....Pressure Control Solenoid "C" P0796....Pressure Control Solenoid "C" out of range P0797....Pressure Control Solenoid "C" stuck on P0798....Pressure Control Solenoid "C" electrical P0799....Pressure Control Solenoid "C" intermittent P0801....Reverse Inhibit control circuit malfunction P0803....1-4 Upshift (Skip Shift) Solenoid control circuit malfunction P0804....1-4 Upshift (Skip Shift) Lamp control circuit malfunction P0805....Clutch Position Sensor circuit P0806....Clutch Position Sensor circuit out of range P0807....Clutch Position Sensor circuit low P0808....Clutch Position Sensor circuit high P0809....Clutch Position Sensor circuit intermittent P0810....Clutch Position control error P0811....Excessive Clutch Slippage P0812....Reverse Input circuit P0813....Reverse Output circuit P0815....Upshift Switch circuit P0816....Downshift Switch circuit P0817....Starter Disable circuit P0818....Driveline Disconnect Switch input circuit P0820....Gear Lever X-Y Position Sensor circuit P0821....Gear Lever X Position circuit P0822....Gear Lever Y Position circuit P0823....Gear Lever X Position circuit intermittent P0824....Gear Lever Y Position circuit intermittent P0830....Clutch Pedal Switch "A" circuit P0831....Clutch Pedal Switch "A" circuit low P0832....Clutch Pedal Switch "A" circuit high P0833....Clutch Pedal Switch "B" circuit P0834....Clutch Pedal Switch "B" circuit low

P0835....Clutch Pedal Switch "B" circuit high P0837....Four Wheel Drive Switch circuit P0838....Four Wheel Drive Switch circuit low P0839....four Wheel Drive Switch circuit high P0840....Transmission Fluid Pressure Sensor/Switch "A" circuit P0841....Transmission Fluid Pressure Sensor/Switch "A" circuit out of range P0842...Transmission Fluid Pressure Sensor/Switch "A" circuit low P0843....Transmission Fluid Pressure Sensor/Switch "A" circuit high P0844....Transmission Fluid Pressure Sensor/Switch "A" circuit intermittent P0845....Transmission Fluid Pressure Sensor/Switch "B" circuit P0846....Transmission Fluid Pressure Sensor/Switch "B" circuit out of range P0847....Transmission Fluid Pressure Sensor/Switch "B" circuit low P0848....Transmission Fluid Pressure Sensor/Switch "B" circuit high P0849....Transmission Fluid Pressure Sensor/Switch "B" circuit intermittent C0000 - Vehicle Speed Information Circuit Malfunction

2) BODY ERROR CODES Os cdigos de falhas da carroceria do veculo no so padronizados por norma.

3) CHASSIS ERROR CODES C0035....Left Front Wheel Speed Circuit Malfunction C0040....Right Front Wheel Speed Circuit Malfunction C0041....Right Front Wheel Speed Sensor Circuit Range/Performance (EBCM) C0045....Left Rear Wheel Speed Circuit Malfunction C0046....Left Rear Wheel Speed Sensor Circuit Range/Performance (EBCM) C0050....Right Rear Wheel Speed Circuit Malfunction C0051....LF Wheel Speed Sensor Circuit Range/Performance (EBCM) C0060....Left Front ABS Solenoid #1 Circuit Malfunction C0065....Left Front ABS Solenoid #2 Circuit Malfunction C0070....Right Front ABS Solenoid #1 Circuit Malfunction C0075....Right Front ABS Solenoid #2 Circuit Malfunction C0080....Left Rear ABS Solenoid #1 Circuit Malfunction C0085....Left Rear ABS Solenoid #2 Circuit Malfunction C0090....Right Rear ABS Solenoid #1 Circuit Malfunction C0095....Right Rear ABS Solenoid #2 Circuit Malfunction C0110....Pump Motor Circuit Malfunction C0121....Valve Relay Circuit Malfunction C0128....Low Brake Fluid Circuit Low C0141....Left TCS Solenoid #1 Circuit Malfunction C0146....Left TCS Solenoid #2 Circuit Malfunction C0151....Right TCS Solenoid #1 Circuit Malfunction C0156....Right TCS Solenoid #2 Circuit Malfunction C0161....ABS/TCS Brake Switch Circuit Malfunction C0221....Right Front Wheel Speed Sensor Circuit Open C0222....Right Front Wheel Speed Signal Missing C0223....Right Front Wheel Speed Signal Erratic C0225....Left Front Wheel Speed Sensor Circuit Open C0226....Left Front Wheel Speed Signal Missing C0227....Left Front Wheel Speed Signal Erratic C0229....Drop Out of Front Wheel Speed Signals C0235....Rear Wheel Speed Signal Circuit Open C0236....Rear Wheel Speed Signal Circuit Missing C0237....Rear Wheel Speed Signal Erratic C0238....Wheel Speed Mismatch C0241....EBCM Control Valve Circuit C0245....Wheel Speed Sensor Frequency Error

C0254....EBCM Control Valve Circuit C0265....EBCM Relay Circuit C0266....EBCM Relay Circuit C0267....Pump Motor Circuit Open/Shorted C0268....Pump Motor Circuit Open/Shorted C0269....Excessive Dump/Isolation Time C0271....EBCM Malfunction C0272....EBCM Malfunction C0273....EBCM Malfunction C0274....Excessive Dump/Isolation Time C0279....Powertrain Configuration Not Valid C0281....Brake Switch Circuit C0283....Traction Switch Shorted to Ground C0284....EBCM Malfunction C0286....ABS Indicator Lamp Circuit Shorted to B+ C0287....Delivered Torque Circuit C0288....Brake Warning Lamp Circuit Shorted to B+ C0290....Lost Communications With PCM C0292....Lost Communications With PCM C0291....Lost Communications With BCM C0297....Powertrain Configuration Data Not Received C0298....Powertrain Indicated Traction Control Malfunction C0300....Rear Speed Sensor Malfunction C0305....Front Speed Sensor Malfunction C0306....Motor A or B Circuit C0308....Motor A/B Circuit Low C0309....Motor A/B Circuit High C0310....Motor A/B Circuit Open C0315....Motor Ground Circuit Open C0321....Transfer Case Lock Circuit C0323....T-Case Lock Circuit Low C0324....T-Case Lock Circuit High C0327....Encoder Circuit Malfunction C0357....Park Switch Circuit High C0359....Four Wheel Drive Low Range (4LO) Discrete Output Circuit C0362....4LO Discrete Output Circuit High C0367....Front Axle Control Circuit High C0374....General System Malfunction C0376....Front/Rear Shaft Speed Mismatch C0379....Front Axle System C0387....Unable to Perform Shift C0472....Steering Handwheel Speed Sensor Signal V Low C0473....Steering Handwheel Speed Sensor Signal V High C0495....EVO Tracking Error C0498....Steering Assist Control Actuator Feed Circuit Low C0499....Steering Assist Control Solenoid Feed Circuit High C0503....Steering Assist Control Solenoid Return Circuit Low C0504....Steering Assist Control Solenoid Return Circuit High C0550....ECU Malfunction - internal write / checksum malfunction C0559....EEPROM Checksum Error C0563....Calibration ROM Checksum Error C0577....Left Front Solenoid Circuit Low C0578....Left Front Solenoid Circuit High C0579....Left Front Solenoid Circuit Open C0582....Right Front Solenoid Circuit Low C0583....Right Front Solenoid Circuit High C0584....Right Front Solenoid Circuit Open C0587....Left Rear Solenoid Circuit Low C0588....Left Rear Solenoid Circuit High C0589....Left Rear Solenoid Circuit Open

C0592....Right Rear Solenoid Circuit Low C0593....Right Rear Solenoid Circuit High C0594....Right Rear Solenoid Circuit Open C0611....VIN Information Error C0615....Left Front Position Sensor Malfunction C0620....Right Front Position Sensor Malfunction C0625....Left Rear Position Sensor Malfunction C0628....Level Control Position Sensor Circuit High C0630....Right Rear Position Sensor Malfunction C0635....Left Front Normal Force Circuit Malfunction C0638....Left Front Normal Force Circuit High C0640....Right Front Normal Force Circuit Malfunction C0643....Right Front Normal Force Circuit High C0655....Level Control Compressor Relay Malfunction C0657....Level Control Compressor Circuit Low C0658....Level Control Compressor Circuit High C0660....Level Control Exhaust Valve Circuit Malfunction C0662....Level Control Exhaust Valve Circuit Low C0663....Level Control Exhaust Valve Circuit High C0665....Chassis Pitch Signal Circuit C0690....Damper Control Relay Circuit Malfunction C0691....Damper Control Relay Circuit Range C0693....Damper Control Relay Circuit High C0695....Position Sensor Overcurrent (8 volt supply) C0696....Position Sensor Overcurrent (5 volt supply) C0710....Steering Position Signal Malfunction C0750....Tire Pressure Monitor (TPM) system sensor not transmitting C0755....Tire Pressure Monitor (TPM) system sensor not transmitting C0760....Tire Pressure Monitor (TPM) system sensor not transmitting C0765....Tire Pressure Monitor (TPM) system sensor not transmitting C0800....Device Power #1 Circuit Malfunction C0896....Electronic Suspension Control (ESC) voltage is outside the normal range of 9 to 15.5 volts

4) NETWORK ERROR CODES U0001....High Speed CAN Communication Bus U0002....High Speed CAN Communication Bus Performance U0003....High Speed CAN Communication Bus (+) Open U0004....High Speed CAN Communication Bus (+) Low U0005....High Speed CAN Communication Bus (+) High U0006....High Speed CAN Communication Bus (-) Open U0007....High Speed CAN Communication Bus (-) Low U0008....High Speed CAN Communication Bus (-) High U0009....High Speed CAN Communication Bus (-) shorted to Bus (+) U0010....Medium Speed CAN Communication Bus U0011....Medium Speed CAN Communication Bus Performance U0012....Medium Speed CAN Communication Bus (+) Open U0013....Medium Speed CAN Communication Bus (+) Low U0014....Medium Speed CAN Communication Bus (+) High U0015....Medium Speed CAN Communication Bus (-) Open U0016....Medium Speed CAN Communication Bus (-) Low U0017....Medium Speed CAN Communication Bus (-) High U0018....Medium Speed CAN Communication Bus (-) shorted to Bus (+) U0019....Low Speed CAN Communication Bus U0020....Low Speed CAN Communication Bus Performance U0021....Low Speed CAN Communication Bus (+) Open U0022....Low Speed CAN Communication Bus (+) Low U0023....Low Speed CAN Communication Bus (+) High U0024....Low Speed CAN Communication Bus (-) Open

U0025....Low Speed CAN Communication Bus (-) Low U0026....Low Speed CAN Communication Bus (-) High U0027....Low Speed CAN Communication Bus (-) shorted to Bus (+) U0028....Vehicle Communication Bus A U0029....Vehicle Communication Bus A Performance U0030....Vehicle Communication Bus A (+) Open U0031....Vehicle Communication Bus A (+) Low U0032....Vehicle Communication Bus A (+) High U0033....Vehicle Communication Bus A (-) Open U0034....Vehicle Communication Bus A (-) Low U0035....Vehicle Communication Bus A (-) High U0036....Vehicle Communication Bus A (-) shorted to Bus A (+) U0037....Vehicle Communication Bus B U0038....Vehicle Communication Bus B Performance U0039....Vehicle Communication Bus B (+) Open U0040....Vehicle Communication Bus B (+) Low U0041....Vehicle Communication Bus B (+) High U0042....Vehicle Communication Bus B (-) Open U0043....Vehicle Communication Bus B (-) Low U0044....Vehicle Communication Bus B (-) High U0045....Vehicle Communication Bus B (-) shorted to Bus B (+) U0046....Vehicle Communication Bus C U0047....Vehicle Communication Bus C Performance U0048....Vehicle Communication Bus C (+) Open U0049....Vehicle Communication Bus C (+) Low U0050....Vehicle Communication Bus C (+) High U0051....Vehicle Communication Bus C (-) Open U0052....Vehicle Communication Bus C (-) Low U0053....Vehicle Communication Bus C (-) High U0054....Vehicle Communication Bus C (-) shorted to Bus C (+) U0055....Vehicle Communication Bus D U0056....Vehicle Communication Bus D Performance U0057....Vehicle Communication Bus D (+) Open U0058....Vehicle Communication Bus D (+) Low U0059....Vehicle Communication Bus D (+) High U0060....Vehicle Communication Bus D (-) Open U0061....Vehicle Communication Bus D (-) Low U0062....Vehicle Communication Bus D (-) High U0063....Vehicle Communication Bus D (-) shorted to Bus D (+) U0064....Vehicle Communication Bus E U0065....Vehicle Communication Bus E Performance U0066....Vehicle Communication Bus E (+) Open U0067....Vehicle Communication Bus E (+) Low U0068....Vehicle Communication Bus E (+) High U0069....Vehicle Communication Bus E (-) Open U0070....Vehicle Communication Bus E (-) Low U0071....Vehicle Communication Bus E (-) High U0072....Vehicle Communication Bus E (-) shorted to Bus E (+) U0073....Control Module Communication Bus Off U0074....Reserved by Document U0075....Reserved by Document U0076....Reserved by Document U0077....Reserved by Document U0078....Reserved by Document U0079....Reserved by Document U0080....Reserved by Document U0081....Reserved by Document U0082....Reserved by Document U0083....Reserved by Document U0084....Reserved by Document

U0085....Reserved by Document U0086....Reserved by Document U0087....Reserved by Document U0088....Reserved by Document U0089....Reserved by Document U0090....Reserved by Document U0091....Reserved by Document U0092....Reserved by Document U0093....Reserved by Document U0094....Reserved by Document U0095....Reserved by Document U0096....Reserved by Document U0097....Reserved by Document U0098....Reserved by Document U0099....Reserved by Document U0100....Lost Communication With ECM/PCM "A" U0101....Lost Communication with TCM U0102....Lost Communication with Transfer Case Control Module U0103....Lost Communication With Gear Shift Module U0104....Lost Communication With Cruise Control Module U0105....Lost Communication With Fuel Injector Control Module U0106....Lost Communication With Glow Plug Control Module U0107....Lost Communication With Throttle Actuator Control Module U0108....Lost Communication With Alternative Fuel Control Module U0109....Lost Communication With Fuel Pump Control Module U0110....Lost Communication With Drive Motor Control Module U0111....Lost Communication With Battery Energy Control Module "A" U0112....Lost Communication With Battery Energy Control Module "B" U0113....Lost Communication With Emissions Critical Control Information U0114....Lost Communication With Four-Wheel Drive Clutch Control Module U0115....Lost Communication With ECM/PCM "B" U0116....Reserved by Document U0117....Reserved by Document U0118....Reserved by Document U0119....Reserved by Document U0120....Reserved by Document U0121....Lost Communication With Anti-Lock Brake System (ABS) Control Module U0122....Lost Communication With Vehicle Dynamics Control Module U0123....Lost Communication With Yaw Rate Sensor Module U0124....Lost Communication With Lateral Acceleration Sensor Module U0125....Lost Communication With Multi-axis Acceleration Sensor Module U0126....Lost Communication With Steering Angle Sensor Module U0127....Lost Communication With Tire Pressure Monitor Module U0128....Lost Communication With Park Brake Control Module U0129....Lost Communication With Brake System Control Module U0130....Lost Communication With Steering Effort Control Module U0131....Lost Communication With Power Steering Control Module U0132....Lost Communication With Ride Level Control Module U0133....Reserved by Document U0134....Reserved by Document U0135....Reserved by Document U0136....Reserved by Document U0137....Reserved by Document U0138....Reserved by Document U0139....Reserved by Document U0140....Lost Communication With Body Control Module U0141....Lost Communication With Body Control Module "A" U0142....Lost Communication With Body Control Module "B" U0143....Lost Communication With Body Control Module "C" U0144....Lost Communication With Body Control Module "D"

U0145....Lost Communication With Body Control Module "E" U0146....Lost Communication With Gateway "A" U0147....Lost Communication With Gateway "B" U0148....Lost Communication With Gateway "C" U0149....Lost Communication With Gateway "D" U0150....Lost Communication With Gateway "E" U0151....Lost Communication With Restraints Control Module U0152....Lost Communication With Side Restraints Control Module U0153....Lost Communication With Side Restraints Control Module U0154....Lost Communication With Restraints Occupant Sensing Control Module U0155....Lost Communication With Instrument Panel Cluster (IPC) Control Module U0156....Lost Communication With Information Center "A" U0157....Lost Communication With Information Center "B" U0158....Lost Communication With Head Up Display U0159....Lost Communication With Parking Assist Control Module U0160....Lost Communication With Audible Alert Control Module U0161....Lost Communication With Compass Module U0162....Lost Communication With Navigation Display Module U0163....Lost Communication With Navigation Control Module U0164....Lost Communication With HVAC Control Module U0165....Lost Communication With HVAC Control Module U0166....Lost Communication With Auxiliary Heater Control Module U0167....Lost Communication With Vehicle Immobilizer Control Module U0168....Lost Communication With Vehicle Security Control Module U0169....Lost Communication With Sunroof Control Module U0170....Lost Communication With "Restraints System Sensor A" U0171....Lost Communication With "Restraints System Sensor B" U0172....Lost Communication With "Restraints System Sensor C" U0173....Lost Communication With "Restraints System Sensor D" U0174....Lost Communication With "Restraints System Sensor E" U0175....Lost Communication With "Restraints System Sensor F" U0176....Lost Communication With "Restraints System Sensor G" U0177....Lost Communication With "Restraints System Sensor H" U0178....Lost Communication With "Restraints System Sensor I" U0179....Lost Communication With "Restraints System Sensor J" U0180....Lost Communication With Automatic Lighting Control Module U0181....Lost Communication With Headlamp Leveling Control Module U0182....Lost Communication With Lighting Control Module U0183....Lost Communication With Lighting Control Module U0184....Lost Communication With Radio U0185....Lost Communication With Antenna Control Module U0186....Lost Communication With Audio Amplifier U0187....Lost Communication With Digital Disc Player/Changer Module "A" U0188....Lost Communication With Digital Disc Player/Changer Module "B" U0189....Lost Communication With Digital Disc Player/Changer Module "C" U0190....Lost Communication With Digital Disc Player/Changer Module "D" U0191....Lost Communication With Television U0192....Lost Communication With Personal Computer U0193....Lost Communication With "Digital Audio Control Module A" U0194....Lost Communication With "Digital Audio Control Module B" U0195....Lost Communication With Subscription Entertainment Receiver Module U0196....Lost Communication With Rear Seat Entertainment Control Module U0197....Lost Communication With Telephone Control Module U0198....Lost Communication With Telematic Control Module U0199....Lost Communication With "Door Control Module A" U0200....Lost Communication With "Door Control Module B" U0201....Lost Communication With "Door Control Module C" U0202....Lost Communication With "Door Control Module D" U0203....Lost Communication With "Door Control Module E" U0204....Lost Communication With "Door Control Module F"

U0205....Lost Communication With "Door Control Module G" U0206....Lost Communication With Folding Top Control Module U0207....Lost Communication With Movable Roof Control Module U0208....Lost Communication With "Seat Control Module A" U0209....Lost Communication With "Seat Control Module B" U0210....Lost Communication With "Seat Control Module C" U0211....Lost Communication With "Seat Control Module D" U0212....Lost Communication With Steering Column Control Module U0213....Lost Communication With Mirror Control Module U0214....Lost Communication With Remote Function Actuation U0215....Lost Communication With "Door Switch A" U0216....Lost Communication With "Door Switch B" U0217....Lost Communication With "Door Switch C" U0218....Lost Communication With "Door Switch D" U0219....Lost Communication With "Door Switch E" U0220....Lost Communication With "Door Switch F" U0221....Lost Communication With "Door Switch G" U0222....Lost Communication With "Door Window Motor A" U0223....Lost Communication With "Door Window Motor B" U0224....Lost Communication With "Door Window Motor C" U0225....Lost Communication With "Door Window Motor D" U0226....Lost Communication With "Door Window Motor E" U0227....Lost Communication With "Door Window Motor F" U0228....Lost Communication With "Door Window Motor G" U0229....Lost Communication With Heated Steering Wheel Module U0230....Lost Communication With Rear Gate Module U0231....Lost Communication With Rain Sensing Module U0232....Lost Communication With Side Obstacle Detection Control Module U0233....Lost Communication With Side Obstacle Detection Control Module U0234....Lost Communication With Convenience Recall Module U0235....Lost Communication With Cruise Control Front Distance Range Sensor U0300....Internal Control Module Software Incompatibility U0301....Software Incompatibility with ECM/PCM U0302....Software Incompatibility with Transmission Control Module U0303....Software Incompatibility with Transfer Case Control Module U0304....Software Incompatibility with Gear Shift Control Module U0305....Software Incompatibility with Cruise Control Module U0306....Software Incompatibility with Fuel Injector Control Module U0307....Software Incompatibility with Glow Plug Control Module U0308....Software Incompatibility with Throttle Actuator Control Module U0309....Software Incompatibility with Alternative Fuel Control Module U0310....Software Incompatibility with Fuel Pump Control Module U0311....Software Incompatibility with Drive Motor Control Module U0312....Software Incompatibility with Battery Energy Control Module A U0313....Software Incompatibility with Battery Energy Control Module B U0314....Software Incompatibility with Four-Wheel Drive Clutch Control Module U0315....Software Incompatibility with Anti-Lock Brake System Control Module U0316....Software Incompatibility with Vehicle Dynamics Control Module U0317....Software Incompatibility with Park Brake Control Module U0318....Software Incompatibility with Brake System Control Module U0319....Software Incompatibility with Steering Effort Control Module U0320....Software Incompatibility with Power Steering Control Module U0321....Software Incompatibility with Ride Level Control Module U0322....Software Incompatibility with Body Control Module U0323....Software Incompatibility with Instrument Panel Control Module U0324....Software Incompatibility with HVAC Control Module U0325....Software Incompatibility with Auxiliary Heater Control Module U0326....Software Incompatibility with Vehicle Immobilizer Control Module U0327....Software Incompatibility with Vehicle Security Control Module U0328....Software Incompatibility with Steering Angle Sensor Module

U0329....Software Incompatibility with Steering Column Control Module U0330....Software Incompatibility with Tire Pressure Monitor Module U0331....Software Incompatibility with Body Control Module "A" U0400....Invalid Data Received U0401....Invalid Data Received From ECM/PCM U0402....Invalid Data Received From Transmission Control Module U0403....Invalid Data Received From Transfer Case Control Module U0404....Invalid Data Received From Gear Shift Control Module U0405....Invalid Data Received From Cruise Control Module U0406....Invalid Data Received From Fuel Injector Control Module U0407....Invalid Data Received From Glow Plug Control Module U0408....Invalid Data Received From Throttle Actuator Control Module U0409....Invalid Data Received From Alternative Fuel Control Module U0410....Invalid Data Received From Fuel Pump Control Module U0411....Invalid Data Received From Drive Motor Control Module U0412....Invalid Data Received From Battery Energy Control Module A U0413....Invalid Data Received From Battery Energy Control Module B U0414....Invalid Data Received From Four-Wheel Drive Clutch Control Module U0415....Invalid Data Received From Anti-Lock Brake System Control Module U0416....Invalid Data Received From Vehicle Dynamics Control Module U0417....Invalid Data Received From Park Brake Control Module U0418....Invalid Data Received From Brake System Control Module U0419....Invalid Data Received From Steering Effort Control Module U0420....Invalid Data Received From Power Steering Control Module U0421....Invalid Data Received From Ride Level Control Module U0422....Invalid Data Received From Body Control Module U0423....Invalid Data Received From Instrument Panel Control Module U0424....Invalid Data Received From HVAC Control Module U0425....Invalid Data Received From Auxiliary Heater Control Module U0426....Invalid Data Received From Vehicle Immobilizer Control Module U0427....Invalid Data Received From Vehicle Security Control Module U0428....Invalid Data Received From Steering Angle Sensor Module U0429....Invalid Data Received From Steering Column Control Module U0430....Invalid Data Received From Tire Pressure Monitor Module U0431....Invalid Data Received From Body Control Module "A"