auto electronico

Upload: conde-juanjo

Post on 07-Jul-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/18/2019 Auto Electronico

    1/5

    DP (Describe theCorrent Protocol)El LM327 puede determinar

    automáticamente el protocolo OBDadecuado para usar en cada vehícu-lo al cual se conecte. Cuando el CIse conecta a un vehículo, devuelvesólo los datos pedidos y no informael protocolo encontrado. El comandoDP se usa para mostrar el protocolocorriente que se seleccionó para elLM 327 (aunque no esté conectado).

    Si también se selecciona laopción automática, el protocolo mos-trará la palabra “AUTO” delante deél, seguido del tipo. Se muestran losnombres reales de protocolo, no losnúmeros usados por los comandos

    de establecimiento de protocolos.

    DPN (Describe the Protocolby Number)Este comando es similar al

    comando DP, pero devuelve unnúmero que representa el protocolocorriente. Si también se habilita lafunción de búsqueda automática, elnúmero será precedido por la letra“A”. El número es el mismo que seusa con el protocolo establecido ylos comandos de protocolo de prue-ba.

    E0 y E1 (Echo off(0) or on (1)Estos comandos controlan si los

    caracteres recibidos en el puesto

    RS232 son retransmitidos o no a lacomputadora anfitrión. El eco delcarácter se puede usar para confir-mar que los caracteres enviados alLM327 fueron recibidos correcta-mente. El comando por defecto esE1 (o eco activo).

    FC JM h (Flow ControlSet Mode to h)Este comando establece cómo

    responde el ELM 327 a mensajes dePrimer Cuadro cando se habilitanlas respuestas del Control de Flujoautomático. El dígito suministradopuede ser “0” (por defecto) para res-puestas completamente automáti-cas, “1” para respuestas completa-

    LM327: Intérprete OBD a RS232

    Descripción de una Interfase OBDParte 4: Descripción de los Comandos ATpara Generar Programas en OBD II(Continuación)

    En esta sección estamos explicando el funcionamiento de uno de los circuitos integrados más utilizados para la crea -

    ción de interfases para OBD II, nos referi - mos al LM327. Los comandos AT son instrucciones codificadas que confor - man un lenguaje de comunicación entre el hombre y un terminal tipo modem.Como hemos visto, para diagnóstico a bordo de automóviles, también se emple - an comandos AT y cada fabricante, en función del protocolo elegido, utiliza un sistema de escaneo para poder leer los códigos de error que permitan identificar las fallas.Es por eso que comenzamos a explicar el funcionamiento del circuito integrado LM327,fabricado exclusivamente para satisfacer las necesidades de la mayoría de los protocolos empleados en diagnóstico automotor. En esta nota continuamos analizando más coman - dos AT y cómo se los utiliza.

    Por Luis Horacio Rodríguez

    Saber Electrónica

    7

    A UTO ELÉCTRICO

  • 8/18/2019 Auto Electronico

    2/5

    mente definidas por el usuario, o “2”para bytes de datos definidos por elusuario en la respuesta.

    FC SH hhh (Flow ControlSet Header to….)Los bytes de encabezamiento (o

    más correctamente “CAN ID”) usa-dos para los mensajes de respuestadel Control de Flujo CAN se puedenestablecer usando este comando.Sólo los 11 bits más a la derecha delos suministrados son los que usa-rán, mientras que el bit más signifi-cativo siempre se elimina. Estecomando sólo afecta el modo 1 deControl de Flujo.

    FC SH hhhhhhhh(Flow Control Set Header to …)Este comando se usa para esta-

    blecer los bits de encabezamiento (o“CAN ID”) pars las respuestas deControl de Flujo en sistemas CAN IDde 29 bits. Dado que 8 nibbles defi-nen 32 bits, sólo se usarán los 29bits más a la derecha de aquellossuministrados. Los 3 bits más signi-ficativos siempre se eliminan. Estecomando sólo afecta el modo 1 delControl de Flujo.

    FC SD (1-5 bytes)(Flow Control Set Data to..)Los bytes de datos que se enví-

    an en un mensaje de Control deFlujo CAN pueden establecerse coneste comando.

    La versión corriente del softwarepermite que se definan de 1 a 5bytes de datos, y el resto de losbytes de datos del mensaje se esta-

    blecen en el byte de relleno CAN pordefecto. Los datos provistos coneste comando sólo se usan cuandose han habilitado los modos 1 o 2 deControl de Flujo.

    FE (Forget Events)Hay ciertos eventos que pueden

    cambiar cómo responde el LM327de ahí en más. Uno de ellos es queocurra la condición ERR94, que blo-

    quea la búsqueda subsecuente através de protocolos CAN si el bit 5del PP24 es “1”. Normalmente, unevento tal como este afectará todaslas búsquedas hasta el próximo apa-gado y encendido, pero se puede“olvidar” usando software con elcomando AT FE.

    Similarmente, un evento “LVRESET” evitará búsquedas a travésde protocolos CAN si el bit 4 dePP24 es “1”, y también se puedeolvidar con el comando FE. FE es uncomando nuevo con L1.3ª del CI.

    H0 y H1 (Headers off (o)or on (1))

    Estos comandos controlan si losbytes adicionales (encabezamiento)de información se muestran o no enlas respuestas del vehículo.Normalmente no se muestran porparte del ELM327, pero se puedenactivar emitiendo un comando ATH1.

    La activación de los encabeza-dores muestra más que tan solo losbytes de encabezamiento, Ud. Veráel mensaje completo como se trans-mite, incluyendo los dígitos de verifi-cación y los bytes PCI, y posible-mente el código de la longitud dedatos CAN (DLC) si ha sido habilita-do con PP 29.

    La versión corriente de este CIno muestra el código CAN CRC nilos bytes especiales J1850 IFR (quealgunos protocolos usan para reco-nocer la recepción de un mensaje).

    I (Identify yourself)Este comando hace que el chip

    se identifique imprimiendo la cadenaID de producto (actualmente“ELM327 L1.3ª”). El software puedeusarlo para determinar exactamentea qué CI le está hablando, sin tenerque reinicializar el CI.

    IB 10 (set the IS0 Baudrate to 10400)Este comando restaura las velo-

    cidades ISO 9141-2 e ISO 14230-4

    al valor por defecto de 10400.

    IB 96Varios usuarios han pedido este

    comando. Se usa para cambiar lavelocidad usada para los protocolosISO 9141-2 e ISO 14230-4 (números3, 4 y 5) a 9600 Baud , mientras quese relajan algunos de los requeri-mientos para la iniciación de lastransferencias de bytes. Puede serútil para experimentar con algunosvehículos. La operación normal de10400 baud se puede restaurar encualquier momento emitiendo uncomando IB 10.

    IFR0, IFR1 e IFR2 (IFR control)El protocolo SAE J1850 permiteque un byte IFR (In-FrameResponse: respuesta dentro delcuadro) sea enviado después decada mensaje, usualmente parareconocer la recepción correcta deese mensaje. El ELM 327 automáti-camente genera y envía este bytepor defecto, pero se puede anulareste comportamiento con estecomando.

    El comando AT IFRO inhabilitaráel envío de todos los IFRs, sinimportar lo que requieren los bytesde encabezamiento. AT IFR2 es locontrario: hará que siempre se envíeun byte IFR, sin importar lo que indi-can los bytes de encabezamiento.

    El comando AT IFR1 restaura larespuesta para suministrar el envíoautomático de IFRs, como lo deter-mina el bit “K” del byte de encabeza-miento. IFR1 es la posición pordefecto del LM327.

    IFR H e IFR S(IFR from Header or Source)

    El valor enviado en el byte IFRnormalmente es el mismo que elvalor enviado como el byte deDirección de la Fuente que estabaen el encabezamiento del pedido.Puede haber ocasiones cuando esdeseable usar algún otro valor y esteconjunto de comandos lo permite.

    Saber Electrónica

    7

    Auto Eléctrico

  • 8/18/2019 Auto Electronico

    3/5

    Saber Electrónica

    77

    Resumen de Comandos OBD II

    Si envía AT IFR s, el ELM327usará el valor definido comoDirección de fuente (usualmente F1,pero se puede cambiar con PP 06),aunque se enviara otro valor en losbytes del Encabezador. Esto no eslo que se requiere normalmente, yse debe tener precaución cuando seusa AT IFR S. AT IFR H restaura elenvío de los bytes IFR a los provis-tos en el Encabezamiento, y es laposición por defecto.

    IIA hh (set the ISOInit Address to hh)Las normas ISO 9141 – 2 e ISO

    14230- 4 dicen que cuando comien-

    za una sesión con un ECU, lasecuencia de iniciación se tiene quedirigir a una dirección específica($33). Si desea experimentar diri-giendo la secuencia lenta de 5 Bauda otra dirección, se hace con estecomando. Por ejemplo, si prefiereque la iniciación se realice con elECU en la dirección $7ª, entoncessimplemente envíe:

    >AT IIA 7ª

    y el ELM327 usará esa direccióncuando se le pida que haga así (pro-tocolos 3 o 4). El valor completo de8 bits se usa exactamente como sesuministró (no se le hace ningúncambio, o sea, no se agregan bitsde paridad, etc).

    Note que el establecimiento deeste valor no afecta ningún valor dedirección usado en los bytes deencabezamiento. La dirección deinic. ISO se restaura a $33 cada vez

    que se reinicializa el ELM327 o lasposiciones por defecto.

    JE (enables the J1939ELM data format)La norma J1939 requiere que los

    pedidos PGN sean enviados con elorden de los bytes invertido. Porejemplo, para enviar un pedido de latemperatura del motor (PGN OOFE-EE), los bytes de datos realmente se

    envían en el orden inverso, o sea EEFE OO, y el ELM 327 normalmenteesperaría recibir los datos en eseorden para pasarlos al vehículo.

    Cuando se experimenta, estaconstante necesidad de inversionesde los bytes puede ser muy confusa,de modo que hemos definido un for-mato ELM que invierte los bytespara Ud.

    Cuando se habilita el formatoJ1939 ELM (JE), y ha seleccionadoel protocolo J1939, y Ud. Suministralos 3 bytes de datos al ELM 327,invertirá el orden para Ud. Antes deenviarlos al ECU. Para pedir la tem-peratura del motor PGN, Ud.

    Enviaría OO FE EE (y no EE FEOO). El tipo “JE” de formateo auto-mático se habilita por defecto.

    JS (enables the J1939SAE data format)El comando AT JS inhabilita el

    reordenamiento automático de losbytes que el comando JE ejecutapara Ud.. Si desea enviar bytes dedatos al vehículo J1939 sin manipu-lación del orden de los bytes, enton-ces elija el formateo JS.

    Usando el ejemplo anterior parala temperatura del motor (PGNOOFEEE) con el formato de losdatos puesto en JS, Ud. debe enviarlos bytes al ELM327 como EE FEOO.

    El tipo JS de formateo de datosse anula por defecto, pero era elúnico tipo de formateo de datos pro-visto por el ELM327 v 1.2. si cambiala versión del CI, tenga en cuentaesta diferencia.

    KW (display the key words)Cuando se inicializan los proto-

    colos ISO 9141-2 e ISO 14230 – 4,se transmiten 2 bytes especiales(palabras clave) al ELM 327 (losvalores se usan internamente paradeterminer si una variación particu-lar de protocolo puede ser soportadapor el ELM 327). Si desea ver cuáleseran los valores de esos bytes, sim-

    plemente envíe el comando AT KW.

    KW0 y KW 1 (key Wordchecks off (0) or on (1))El ELM 327 busca bytes especí-

    ficos (llamados Palabras Clave) quese le envían durante las secuenciasde iniciación ISO 9141-2 e ISO14230-4. si no se encuentran esosbytes, se dice que la iniciación hafallado. Esto puede ser porque Ud.Está tratando de conectarse a unECU no compatible con OBD, o qui-zás con uno viejo.

    Si desea experimentar pero noquiere que el ELM327 verifique losvalores contenidos en las palabras

    clave, puede desactivar la verifica-ción con:

    >AT KWO

    después de lo cual el CI buscarálos bytes de la Palabra Clave en larespuesta, pero no los valores rea-les de los bytes. Esto puede permitiruna conexión en una situación quede otra manera sería “imposible”. Elcomportamiento normal puede vol-ver con AT KW1, que es la posiciónpor defecto.

    Se debe tener precaución coneste comando, dado que se está sal-teando las verificaciones que nor-malmente se ejecutan sobre losbytes de la palabra clave. El CIenvía un reconocimiento al ECU porestos bytes, pero esto es sin consi-derar cuáles son realmente losbytes. Ud. podría activar incorrecta-mente un ISO 9141 o un protocoloKWP 2000, así que sea cuidadoso.

    L0 y L1 (Linefeeds off (o)or on (1) )Esta opción controla el envío de

    caracteres de alimentación de líneadespués de cada carácter de retornode carro. Para AT L1 se generaránalimentaciones de línea después decada carácter de retorno de carro, ypara AT L0, se desactivarán. Losusuarios generalmente desearán

  • 8/18/2019 Auto Electronico

    4/5

    tener esta opción activada si se usaun programa de terminal, perodesactivada si se usa una interfaseespecial de computadora (dado quelos caracteres extra transmitidossólo servirán para desacelerar lascomunicaciones). La posición pordefecto está determinada por la ten-sión en la pata 7 durante el encendi-do (o reinicialización). Si el nivel esalto, por defecto las alimentacionesde línea estarán activadas; de locontrario, estarán desactivados.

    M0 y M1 (Memory off (o)or on (1))El ELM327 tiene una memoria

    interna no volátil que puede recordarel último protocolo usado, inclusodespués de apagada la potenciaaplicada. Esto puede ser convenien-te si el CI se usa a menudo con unprotocolo particular, dado que seráel primero que se intente cuandoluego se aplique la potencia. Parahabilitar esta función de memoria, esnecesario usar un comando AT paraseleccionar la opción M1 o haberelegido “memoria activada” como elmodo por defecto (conectando lapata 5 del CI en un nivel lógico alto).

    Cuando se habilita la función dememoria, cada vez que el CIencuentra un protocolo OBD válido,ese protocolo se memorizará (alma-cenará) y se convertirá en el nuevopor defecto. Si no se habilita la fun-ción de memoria, los protocolosencontrados durante una sesión nose memorizarán, y el CI siemprearrancará usando el último protocologuardado.

    Si el CI se usa en un entornodonde el protocolo cambia constan-temente, es probable que lo mejorsea desactivar la función de memo-ria y emitir un comando AT SP 0 unavez. El comando SP 0 le dice al CIque comience en un modo de bús-queda de protocolo “automático”,que es el más útil en un entorno des-conocido. Los CI5 vienen de fábricacon este modo. Sin embargo, si Ud.

    tiene un solo vehículo al cual seconecta regularmente, lo que tendríamás sentido sería almacenar el pro-tocolo del vehículo como el protoco-lo por defecto.

    Como se mencionó, la posiciónpor defecto de la función de memo-ria está determinada por la tensiónen la pata 5 en el arranque (o reini-cialización del sistema). Si se conec-ta a nivel alto (Vdd), entonces la fun-ción de memoria se activa por defec-to. Si la pata 5 se conecta a un nivelbajo, el almacenamiento de lamemoria se desactivará por defecto.

    MA (Monito All messages)

    Este comando pone al CI en unmodo de monitoreo del bus, en elcual continuamente monitorea (ymuestra) todos los mensajes que veen el bus OBD. Es un monitoreoquieto, sin enviar IFR5 para siste-mas J1850, reconocimientos parasistemas CAN o mensajesDespertar para los protocolos IS09141 e IS0 14230. El monitoreo con-tinuará hasta que se detenga la acti-vidad en la entrada RS232, o la pataRTS.

    Para detener el monitoreo, sim-plemente envíe cualquier carácter alELM327, luego espere que respon-da con un prompt (“>”), o una salidade nivel bajo en la pata Buiy (ponien-do la entrada RTS en un nivel bajointerrumpirá al dispositivo también).Es necesario esperar el prompt dadoque el tiempo de respuesta varíasegún lo que estaba haciendo el CIcuando fue interrumpido. Si porejemplo está en el medio de laimpresión de una línea, primerocompletará esa línea, luego vuelveal estado del comando, emitiendo uncarácter “prompt”. Si simplementefuera esperar la entrada, volveráinmediatamente. Note que el carác-ter que detiene el monitoreo siempreserá descartado, y no afectará a loscomandos subsiguientes.

    Comenzando con V1.3 de esteCI, todos los mensajes se imprimirán

    a medida que se encuentren, aun-que esté activado el autoformateoCAN (CA F1). La versión anterior deeste CI (V1.2) no mostraba algunosmensajes CAN ilegales si estabaactivado el autoformateo, pero ahorase muestran todos los mensajesrecibidos, y si el formato de los datosno parece ser correcto, entonces semostrará “

  • 8/18/2019 Auto Electronico

    5/5

    Saber Electrónica

    79

    Resumen de Comandos OBD II

    datos EP comando MP es uncomando único especial J1939 quese usa para buscar respuestas a unpedido particular PGN, y seguir cual-quier aparición multisegmentada deellas. Note que este comando MP noprovee ningún medio para estable-cer los 2 primeros dígitos del PGNpedido, y siempre se supone queson 00. Por ejemplo, el DM2 PGNtiene un valor asignado de 00 FE CB(ver SAE J1939-73). Para monitore-ar los mensajes DM2, Ud. emitiríaAT MP FECB, eliminando 00 dadoque el comando MP hhhh siempresupone que PGN está precedido por2 ceros. Este comando sólo está dis-

    ponible cuando se ha seleccionadoun Protocolo CAN (A, B o C) para elformateo SAE J1939. Devuelveerror si se intenta bajo cualquier otracondición. También note que estaversión del ELM327 sólo muestrarespuestas que satisfacen los crite-rios, no los pedidos que solicitan lainformación.

    MP hhhhhh (Monitor forPGN hhhhhh)Este comando es similar al ante-

    rior, pero extiende el número debytes previstos en uno, de modo quehay un control completo de la defini-ción de PGN (no hace la suposiciónque el bit de Página de Datos es 0,como lo hace el comando anterior).Esto permite una expansión futuraen caso de que se definan PG Nsadicionales con el bit de Página deDatos en 1. Note que sólo el bit dePágina de Datos es relevante en elbyte extra. Los bits Reservados y de

    Prioridad se ignoran.MR hh (Monitor forReceiver hh)Este comando es muy similar al

    comando AT M A salvo que sólomostrará mensajes que fueronenviados a la dirección hexadecimaldada por hh. Estos son mensajesque tienen el valor hh en el segundobyte de un encabezamiento OBD

    tradicional de 3 bytes, en los bits 8 a15 de un CAN ID de 29 bits, o en bits8 a 10 de un CAN ID de 11 bits.Cualquier carácter RS 232 anula elmonitoreo, como con el comandoMA. Note que si se usa este coman-do con protocolos CAN, y si el filtroCAN y/o máscara fueron previamen-te establecidos (con CF, CM o CRA),entonces el comando MR sobrescri-birá los valores anteriores paraestos bits solamente; los otros per-manecerán sin cambio. Como ejem-plo, si la dirección de recepción hasido establecida con CRA 4B0, yluego envía MR 02, el 02 reempla-zará el 4, y la máscara/filtros CAN

    solo permitirán IDs que sean igualesa 2B0. A menudo esto no es lo quese desea; Ud. puede querer primeroreinicializar la máscaras y los filtros(con AT AR). Como con el comandoAT MA, este comando comienza eje-cutando un Cierre Interno deProtocolo. Los pedidos OBD subsi-guientes pueden mostrar los mensa-

    jes “SEARCHING “ o BUS INIT”, etc.Cuando se reactiva el protocolo.

    MT hh (Monitor forTransmitter hh)Este comando también es muy

    similar al comando AT MA, salvo quesólo mostrará mensajes que fueronenviados por el transmisor con ladirección hexadecimal dada por hh.Estos son mensajes que tienen esevalor en el 3º byte de un encabeza-miento OBD tradicional de 3 bytes, oen bits 0 a 7 para CAN IDs. Como enlos modos de monitoreo MA y MR,cualquier actividad RS232 (monoca-

    racter) anula el monitoreo.Note que si se usa este coman-do con protocolos CAN, y si el filtroCAN y/o máscara fueron estableci-dos previamente (con CF, CM oCRA), entonces el comando MTsobrescribirá los valores anteriorespara estos bits solamente; los otrospermanecerán sin cambio. Comoejemplo si la dirección de recepciónha sido establecida con CRA 4B0, y

    luego Ud. envía MT 20, el 20 reem-plazará el B0, y la s máscaras/filtrosCAN solo permitirán IDs que seaniguales a 420. A menudo esto no eslo que se desea; Ud. puede quererprimero reinicializar las máscaras ylos filtros (con AT AR).

    Como con el comando AT MA,este comando comienza ejecutandoun Cierre Interno de Protocolo. Lospedidos OBD subsiguientes puedenmostrar los mensajes “SEAR-CHING” o “BUS INIT”, etc. cuandose reactiva el protocolo.

    NL (Normal Length messages)Activando el modo NL hace que

    todos los envíos y recepciones selimiten a los 7 bytes de datos stan-dard en longitud, similar a los otrosELM32x OBD. Para permitir mensa-

    jes máslargos, use el comando CIsAL. Comenzando con V1.2, el ELM327 no requiere un cambio a AL parapermitir la recepción mensajes delongitudes más largas para los pro-tocolos KWP (como lo determinanlos valores de longitud del encabe-zamiento). Ud. simplemente puededejar el CI en la posición por defec-to de NL, y se mostrarán todos losbytes recibidos.

    PC (Protocol Close)Hay ocasiones en que es desea-

    ble desactivar un protocolo. Quizásno esté usando la búsqueda auto-mática de protocolos y desea activary desactivar manualmente los proto-colos.

    Quizás desee detener el envíode mensajes de reposo (despertar)

    o alguna otra razón. El comando PCse usa en estos casos para forzar elcierre del protocolo.

    En la próxima edición continua - remos desarrollando este tema,exponiendo el resto de los coman - dos AT que maneja el LM327 para luego realizar algunos ejemplos de programación que nos permitan comprender la sintaxis de un progra - ma. !