CAN ( Controller Area Network - una red de controladores) es un estándar de red industrial enfocado principalmente en combinar varios actuadores y sensores en una sola red. Modo de transmisión: serie, difusión, paquete.
CAN fue desarrollado por Robert Bosch GmbH a mediados de la década de 1980 y ahora se usa ampliamente en la automatización industrial, la tecnología de automatización del hogar (hogar inteligente) , la industria automotriz y muchas otras áreas. El estándar para la automatización automotriz.
El estándar CAN de Bosch define directamente la transmisión aislada de la capa física; puede ser cualquier cosa, por ejemplo, un canal de radio o fibra óptica . Pero en la práctica, una red CAN suele significar una red de topología de bus con una capa física en forma de par diferencial , definida en la norma ISO 11898 . La transmisión se realiza por tramas que son recibidas por todos los nodos de la red. Para acceder al bus, se producen chips especializados: controladores de bus CAN .
CAN es un bus síncrono con tipo de acceso Resolución de colisión ( CR , resolución de colisión) que, a diferencia de las redes Collision Detect ( CD , detección de colisión) ( Ethernet ), proporciona acceso determinista (prioritario) a la transmisión de mensajes, lo que es especialmente valioso para control de redes industriales (fieldbus). La transmisión se realiza en tramas . El payload en una trama consiste en un identificador de 11 bits (formato estándar) o 29 bits (formato extendido, superconjunto del anterior) y un campo de datos de 0 a 8 bytes de longitud. El identificador informa sobre el contenido del paquete y se utiliza para determinar la prioridad cuando se intenta transmitir simultáneamente por varios nodos de la red.
Para abstraerse del medio de transmisión, la especificación CAN evita describir los bits de datos como "0" y "1". En su lugar, se utilizan los términos bit "recesivo" y bit "dominante", lo que implica que si un nodo de la red transmite un bit recesivo y otro transmite un bit dominante, se recibirá el bit dominante. Por ejemplo, al implementar una capa física en un canal de radio, la ausencia de una señal significa un bit recesivo y la presencia significa un bit dominante; mientras que en una implementación típica de una red cableada, se produce un recesivo en presencia de una señal y un dominante, respectivamente, en ausencia. El estándar de red requiere, de hecho, solo una condición de la "capa física": que el bit dominante pueda suprimir al recesivo, pero no al revés. Por ejemplo, en una fibra óptica, el bit dominante debería corresponder a "luz" y el bit recesivo debería corresponder a "oscuridad". En un cable eléctrico puede ser así: estado recesivo - alto voltaje en la línea (de una fuente con alta resistencia interna ), dominante - bajo voltaje (el nodo de red dominante "tira" de la línea a tierra). Si la línea está en estado recesivo, cualquier nodo de la red puede pasarla al estado dominante (encendiendo la luz en la fibra o cortando la alta tensión). Al contrario, es imposible (es imposible encender la oscuridad).
Las tramas de datos y solicitudes están separadas de las tramas anteriores por un espacio entre tramas .
Campo | Longitud (en bits) | Descripción |
---|---|---|
Inicio de cuadro (SOF) | una | Señala el inicio de la transmisión de tramas |
identificador | once | Identificador único |
Solicitud de transferencia (RTR) | una | debe ser dominante |
Bit de extensión de identificador (IDE) | una | Debe ser dominante (define la longitud del identificador) |
Bit reservado (r0) | una | Reservar |
Longitud de datos (DLC) | cuatro | Longitud del campo de datos en bytes (0-8) |
Campo de datos | 0-8 bytes | Datos transmitidos (longitud en el campo DLC) |
Suma de comprobación (CRC) | quince | Suma de verificación de fotograma completo |
Delimitador de suma de comprobación | una | debe ser recesivo |
Intervalo de reconocimiento (ACK) | una | El transmisor envía recesivo, el receptor inserta dominante |
delimitador de acuse de recibo | una | debe ser recesivo |
Fin de trama (EOF) | 7 | debe ser recesivo |
No es necesario que los primeros 7 bits de un identificador sean todos recesivos.
Formato de marco de datos extendidoCampo | Longitud (en bits) | Descripción |
---|---|---|
Inicio de cuadro (SOF) | una | Señala el inicio de la transmisión de tramas |
Identificador A | once | Primera parte del identificador |
Suplantación de identidad de solicitud de envío (SRR) | una | debe ser recesivo |
Bit de extensión de identificador (IDE) | una | Debe ser recesivo (define la longitud de la identificación) |
Identificador B | Dieciocho | La segunda parte del identificador. |
Solicitud de transferencia (RTR) | una | debe ser dominante |
Bits reservados (r1 y r0) | 2 | Reservar |
Longitud de datos (DLC) | cuatro | Longitud del campo de datos en bytes (0-8) |
Campo de datos | 0-8 bytes | Datos transmitidos (longitud en el campo DLC) |
Suma de comprobación (CRC) | quince | Suma de verificación de fotograma completo |
Delimitador de suma de comprobación | una | debe ser recesivo |
Intervalo de reconocimiento (ACK) | una | El transmisor envía recesivo, el receptor inserta dominante |
delimitador de acuse de recibo | una | debe ser recesivo |
Fin de trama (EOF) | 7 | debe ser recesivo |
El identificador se obtiene combinando las partes A y B.
Formato de marco de solicitud remotaIgual que los marcos de datos de formato estándar o extendido, con dos excepciones:
Con un bus libre, cualquier nodo puede comenzar a transmitir en cualquier momento. En el caso de transmisión simultánea de tramas por dos o más nodos, se produce el arbitraje de acceso : al transmitir el identificador, el nodo comprueba simultáneamente el estado del bus. Si se recibe un bit dominante durante la transmisión de un bit recesivo, se considera que otro nodo está transmitiendo un mensaje con mayor prioridad, y se pospone la transmisión hasta que el bus esté libre. Por lo tanto, a diferencia, por ejemplo, de Ethernet , en CAN no hay pérdida de sobrecarga del ancho de banda del canal durante las colisiones. El costo de esta solución es la posibilidad de que los mensajes de baja prioridad nunca se transmitan.
CAN tiene varios mecanismos de control y prevención de errores:
Los desarrolladores estiman la probabilidad de no detectar un error de transmisión en 4,7×10 −11 .
Todos los nodos de la red deben operar a la misma velocidad. El estándar CAN no especifica las velocidades de operación, pero la mayoría de los adaptadores, tanto separados como integrados en microcontroladores, le permiten cambiar la velocidad sin problemas en el rango de al menos 20 kilobits por segundo a 1 megabit por segundo. Hay soluciones que van mucho más allá de este rango.
Límite de longitud de la redLos métodos de control de errores anteriores requieren que un cambio de bit durante la transmisión tenga tiempo de propagarse por toda la red en el momento en que se mide el valor. Esto hace que la longitud máxima de la red esté inversamente relacionada con la velocidad de transmisión: a mayor velocidad, menor longitud. Por ejemplo, para una red ISO 11898 , los límites de longitud son aproximadamente:
1Mbps | 40 metros |
500 kbps | 100 metros |
125 kbps | 500 metros |
10 kbps | 5000m |
El uso de optoacopladores para proteger los dispositivos de la interferencia de alto voltaje en la red reduce aún más la longitud máxima, cuanto más, mayor es el retraso de la señal en el optoacoplador. Las redes altamente ramificadas (redes) también reducen la velocidad debido a muchos reflejos de señal y una mayor capacitancia eléctrica del bus.
La especificación CAN básica carece de muchas características requeridas en los sistemas reales: transmisión de datos de más de 8 bytes, distribución automática de identificadores entre nodos, control uniforme de dispositivos de varios tipos y fabricantes. Por lo tanto, poco después de que CAN apareciera en el mercado, comenzaron a desarrollarse protocolos de alto nivel para él. Los protocolos actualmente en uso incluyen:
En todos los sistemas de alta tecnología de un automóvil moderno, el protocolo CAN se usa para conectar la ECU con dispositivos adicionales y controladores de actuadores y varios sistemas de seguridad. En algunos vehículos, CAN vincula IMMO , tableros, unidades SRS , etc.
Además, el protocolo CAN ISO 15765-4 pasó a formar parte del estándar OBD-II .
Redes industriales | |
---|---|
Autobuses del sistema de control | |
Periféricos distribuidos | |
Tecnología de accionamiento |
|
Dispositivos de campo |
|
Automatización de edificios |
Microcontroladores | ||||||||
---|---|---|---|---|---|---|---|---|
Arquitectura |
| |||||||
Fabricantes |
| |||||||
Componentes | ||||||||
Periferia | ||||||||
Interfaces | ||||||||
sistema operativo | ||||||||
Programación |
|