Acabo de entrar en contacto con can, cómo entender j1939, cómo conectar can con j1939
El instrumento del automóvil es una ventana para el intercambio de información entre el automóvil y el conductor. Es el centro de información del automóvil y puede reflejar varios indicadores dinámicos del automóvil de manera centralizada, intuitiva y rápida durante la conducción. como velocidad de conducción y kilometraje, estado del sistema eléctrico, frenos, presión, velocidad del motor, temperatura del refrigerante, volumen de aceite, diversas alarmas de peligro.
FAN100 ofrece aquí una solución de diseño de instrumentos automotrices basada en el bus CAN (Controller Area Network). El instrumento utiliza el bus CAN para formar parte de la red de la carrocería y sigue el protocolo SAE J1939 para leer la velocidad del motor, la temperatura del agua y otra información. El instrumento también puede recibir y mostrar señales de sensores como la velocidad del vehículo, el volumen de combustible, la presión del aceite y la presión de los frenos, proporcionando al conductor las condiciones de funcionamiento del vehículo en tiempo real. El instrumento diseñado se utiliza principalmente en vehículos de transporte pesado y otros campos. Los resultados de las pruebas realizadas en una fábrica de vehículos pesados muestran que el instrumento puede cumplir con los requisitos de confiabilidad de datos y rendimiento en tiempo real.
1 Bus CAN y protocolo SAE J1939
1.1 Introducción al bus CAN y protocolo SAE J1939
El bus FAN100CAN pertenece a la categoría de bus de campo y es un producto de La empresa alemana Bosch desarrolló a principios de la década de 1980 una red de comunicación en serie que soporta eficazmente el control distribuido o el control en tiempo real para resolver el problema del intercambio de datos entre numerosos instrumentos de control y prueba en los automóviles modernos. La comunicación por bus CAN tiene un sólido rendimiento en tiempo real y la velocidad de transmisión de datos puede llegar a 1 Mb/s. El medio de comunicación puede ser par trenzado, cable coaxial o fibra óptica, que se puede conectar fácilmente a través de conectores estándar. La comunicación de datos por bus CAN tiene una confiabilidad excepcional, rendimiento en tiempo real y flexibilidad, y actualmente es el bus automotriz más utilizado.
El protocolo FAN100SAE J1939 es un protocolo de control y comunicación en serie de red de vehículos lanzado por la Sociedad de Ingenieros Automotrices (SAE) con CAN2.0B como protocolo de red central. J1939 se desarrolló con referencia al modelo de referencia de 7 capas definido por el modelo de interconexión de datos abiertos de ISO. El protocolo estipula claramente la configuración de la dirección, el nombre, el método de comunicación y la prioridad de envío de mensajes de la ECU dentro del automóvil, y proporciona explicaciones detalladas de cada comunicación específica de la ECU dentro del automóvil. Utiliza tecnología de multiplexación para proporcionar conexiones de red estandarizadas de alta velocidad basadas en el bus CAN para varios sensores, actuadores y controladores en el automóvil, lo que permite compartir datos de alta velocidad entre dispositivos electrónicos a bordo, lo que reduce en gran medida la cantidad de cableado electrónico. aprovecha, mejora la flexibilidad, confiabilidad, mantenibilidad y estandarización del sistema de control electrónico del vehículo y maximiza el excelente rendimiento de CAN.
1.2 Formato de trama de datos SAE J1939
La trama de datos FAN100SAE J1939 se basa en PDU (unidad de datos de protocolo), que consta de prioridad (P), bit reservado (R) y página de datos ( DP), formato de PDU (PF), detalles de PDU (Ps), dirección de origen (SA) y campo de datos (campo de fecha). La PDU, excepto el campo de datos, corresponde al identificador de 29 bits de la trama de extensión CAN. Donde PS es un segmento de 8 bits cuya definición depende del valor de PF. Si el valor de PF es inferior a 240, PS es la dirección de destino (DA). Si el valor de PF está entre 240 y 255, el PS es una extensión de grupo (GE).
Algunas tramas de datos CAN de FAN100 no están definidas en la PDU, incluidas SOF, SRR, IDE, RTR, parte del campo de control, campo CRC, campo ACK y campo EOF. Estos campos están definidos por CAN y no son modificados por SAE J1939.
2 Diseño de instrumentos de automóvil con bus CAN
2.1 Diseño general de instrumentos
FAN100 El sistema de instrumentos de automóvil consta de tres módulos: adquisición, procesamiento y visualización de datos. El módulo de adquisición de datos se encarga de recibir diversos datos del vehículo, preprocesar los datos y enviarlos al microprocesador. Entre ellos, las señales de los sensores, como señales analógicas, señales de pulso y señales de conmutación, se recopilan en cada sensor y luego se envían al microprocesador después de la división de voltaje, el filtrado, la conformación y el aislamiento fotoeléctrico.
Después de que los datos del bus CAN, como la velocidad del motor, la temperatura del agua y el código de falla, se envían al bus CAN a través del módulo CAN del motor, se reciben a través del transceptor CAN. Después de recibir los datos requeridos, el microprocesador procesa los datos de acuerdo con un algoritmo predeterminado y genera los resultados del procesamiento. El módulo de visualización incluye punteros, LCD y varias visualizaciones de luces de señal. El microprocesador envía la velocidad del motor, la velocidad del vehículo y otros resultados al controlador del motor, que hace girar el motor paso a paso, lo que hace que la pantalla del puntero encienda y apague directamente la pantalla LCD y las luces LED; La estructura del sistema de instrumentos del automóvil se muestra en la Figura 1.
FAN100 basado en el análisis general de la instrumentación del automóvil, el panel de instrumentos del automóvil se compone de tres subesferas: la subesfera izquierda muestra la velocidad del motor, el volumen de aceite y otros datos, la subesfera derecha muestra. velocidad del vehículo, presión de aceite y otros datos, y el subdial central muestra datos como la velocidad del vehículo y la presión de aceite. El subdial se utiliza para colocar la pantalla LCD y varias luces indicadoras. Todos los punteros de los instrumentos son accionados por motores paso a paso. Entre los diversos datos recibidos por el instrumento, la velocidad del motor, la temperatura del agua y el voltaje se obtienen del bus CAN, y la velocidad del vehículo, el volumen de combustible, la presión del aire y la presión del aceite se obtienen de varios sensores. 2.2 Diseño de hardware del sistema
El instrumento FAN100 utiliza el procesador LM3S2948 de Luminarv Company. Se trata de un microprocesador basado en el núcleo ARM Cortex M3, que utiliza RISC de 32 bits y un controlador CAN integrado, un convertidor analógico a digital (ADC), un comparador analógico y otros módulos funcionales, lo que reduce los circuitos periféricos y los costos de diseño del sistema. El módulo CAN integrado del procesador LM3S2948 facilita la transmisión de datos del bus CAN, facilita la implementación de la comunicación del instrumento y mejora la confiabilidad. Su módulo CAN incorporado tiene las siguientes características: admite el protocolo CAN 2.0B y admite la transmisión de mensajes de tramas extendidas que cumplen con el protocolo SAE J1939: la velocidad de bits puede alcanzar hasta 1 Mb/s y tiene 32 objetos de mensaje, cada objeto tiene; su propio código de máscara de identificación; incluye interrupciones enmascarables, para aplicaciones CAN activadas por tiempo (1TrCAN), puede optar por desactivar el modo de reenvío automático y se conecta sin problemas a CAN PHY externo a través de pines CANOTx y CANORx; tiene modo F1F0 programable. ?
El microprocesador FAN100LM3S2948 tiene las características de velocidad de computación rápida, bajo consumo de energía, tamaño pequeño y precio bajo. Las características de su módulo controlador CAN cumplen completamente con los requisitos de aplicación de la instrumentación automotriz del bus CAN. El procesador tiene potentes capacidades de procesamiento y puede reflejar información del vehículo en tiempo real en diversas condiciones de trabajo del vehículo. Al mismo tiempo, el procesador tiene un gran espacio de escalabilidad, lo que favorece el desarrollo posterior.
FAN100 Dado que LM3S2948 tiene un módulo controlador CAN incorporado, solo necesita conectar un transceptor CAN externo para recibir datos del bus. Este instrumento utiliza CTM8251T como transceptor CAN. CTM8251T es un transceptor CAN aislado universal. El dispositivo integra todo el aislamiento CAN y los transceptores CAN necesarios. Este dispositivo se puede conectar a cualquier controlador de protocolo CAN para realizar las funciones de envío, recepción y aislamiento de los nodos CAN. El dispositivo está diseñado para ser de tamaño pequeño y altamente integrado. Puede reemplazar el transceptor CAN tradicional y sus circuitos periféricos, reduciendo la complejidad del circuito y reduciendo el costo de diseño, como se muestra en la Figura 2.
El instrumento FAN100 utiliza el controlador VID6606 para accionar el motor paso a paso. Cada VID6606 puede accionar 4 motores paso a paso al mismo tiempo. Al ingresar la secuencia de pulsos F (SCX) en su terminal de control de frecuencia, el terminal de salida se puede controlar para hacer que el eje de salida del motor paso a paso gire en micropasos. Cada eje de salida del motor de micropasos gira 1/12 (°), y el máximo. La velocidad angular puede alcanzar 600 (°)/s. Este controlador de motor tiene las siguientes características: accionamiento de micropasos por hardware, simple y fácil de usar, el motor solo necesita dos terminales de control: velocidad F (sexo) y dirección (CW/CCW), todos los pines de entrada tienen filtros de interferencia, amplio funcionamiento voltaje, baja radiación de interferencia electromagnética. El puntero del panel de instrumentos es impulsado por un motor VID-29. El motor tiene un tren de engranajes incorporado con una relación de reducción de 180/1, que puede convertir de manera directa y precisa señales digitales en salida de pantalla analógica. El motor tiene una alta precisión de visualización y su ángulo de paso mínimo puede alcanzar 1/2 (°). La Figura 3 muestra el circuito del instrumento controlador VID6606.
FAN100 Este instrumento utiliza una pantalla LCD para mostrar la hora, el consumo de combustible y el nombre de la falla cuando ocurre una falla. La señal enviada por el procesador se amplifica primero con energía 74HC245 y luego se envía a la pantalla LCD F2000LCD para su visualización.
El circuito LCD se muestra en la Figura 4.
2.3 Diseño del software del sistema
El diseño del software del sistema FAN100 se divide en cuatro módulos: programa principal, comunicación CAN, adquisición y procesamiento de datos y visualización de datos. El módulo de programa principal maneja el procesamiento de datos llamando a cada programa de submódulo: el módulo de comunicación CAN es responsable de enviar y recibir datos, el módulo de adquisición y procesamiento de datos completa la recopilación y el cálculo de varios tipos de datos que muestran el vehículo; velocidad, presión de aceite, luces de señal, etc. La información se muestra en el instrumento.
FAN100 La Figura 5 muestra el flujo de programa principal del sistema. El flujo de programa principal del sistema se divide en: 1) Inicialización del sistema. La inicialización del sistema incluye principalmente la inicialización del reloj del sistema, los nodos CAN, la pantalla LCD, el motor paso a paso, etc., la habilitación de la interrupción CAN y la configuración del código de máscara CAN y el código de aceptación. La inicialización del nodo CAN consiste principalmente en inicializar el controlador CAN e interrumpir el controlador CAN: 2) Leer los datos del sensor y del bus CAN, y controlar el puntero, la pantalla LCD y otras pantallas, mientras espera la interrupción de la recepción CAN. 3) Se genera la interrupción de recepción CAN y se ingresa la subrutina de interrupción de recepción para leer los datos. Determine si los datos cumplen con las condiciones de recepción de datos y, de ser así, recíbalos. Este proceso compara el identificador de 29 bits recibido con el código de aceptación y el código de enmascaramiento bit a bit. Sólo cuando los bits correspondientes del identificador y los bits correspondientes del código de aceptación son iguales, el sistema comienza a recibir datos. 4) El procesador analiza el mensaje recibido, extrae los datos requeridos y los procesa. El procesador procesa y calcula los datos del sensor y los datos leídos del bus CAN, obtiene los parámetros de accionamiento del puntero correspondientes, calcula el ángulo de rotación del puntero y calcula la velocidad de rotación del puntero en función de los parámetros del motor paso a paso inicializado. La velocidad de rotación del puntero es proporcional a la velocidad de cambio de parámetro correspondiente. Al mismo tiempo, se calcula el kilometraje del vehículo y se suma a la distancia total. 5) El procesador envía un conjunto de secuencias de pulsos que contienen las condiciones de funcionamiento del vehículo al controlador del motor paso a paso, que hace que el motor paso a paso gire en micropasos, indicando la velocidad correspondiente del motor, la velocidad del vehículo, la temperatura del agua, la presión del aceite, etc.; el procesador enviará datos que contienen la distancia total del vehículo y otra información al controlador LCD, y el controlador controla la pantalla LCD para mostrar la distancia total correspondiente, etc.: El procesador cambia el estado del pin de E/S correspondiente a Enciende/apaga directamente la luz indicadora correspondiente.
2.4 Visualización de fallas
FAN100 Este instrumento puede recibir el código de falla del bus CAN y analizar el código de falla y compararlo con el código de falla escrito previamente para encontrar la falla correspondiente. información y se muestra en la pantalla LCD. Cada tipo de datos tiene una ID de marco de datos específica y el sistema determina la ubicación de la falla en función de la ID del marco. Si se recibe una falla de una sola trama, el sistema extrae el número total de bytes y paquetes; si se recibe una falla de varias tramas, el sistema extrae continuamente mensajes de diagnóstico de fallas en bytes específicos y luego busca según el código de falla. .
3 Conclusión
Con base en el estudio del bus CAN y el protocolo SAE J1939, se diseñó un instrumento automotriz con bus CAN. Este diseño aprovecha al máximo las funciones de LM3S2948 y VID6606, lo que reduce en gran medida el diseño y el costo de los circuitos periféricos del sistema. Los resultados de múltiples pruebas reales en vehículos muestran que, en comparación con los instrumentos convencionales, este instrumento de bus CAN tiene las siguientes ventajas: fuerte capacidad antiinterferencias y alta velocidad de transmisión, lo que puede garantizar una transmisión de datos efectiva, rápida y estable, reduce el cableado de la carrocería e implementa; soluciones de hardware basadas en software, que simplifican el diseño y reducen costos; verificar fallas del vehículo de manera oportuna e intuitiva; el bus CAN convierte todo el vehículo en un sistema de red, lo que puede mejorar la flexibilidad del sistema, agregar equipos y expandirse fácilmente; el espacio de desarrollo.