El uso de I2C redundante en aviónica de naves espaciales

Recientemente leí este informe sobre el proyecto de desarrollo de aviónica JPL x2000, que desarrolló una plataforma de aviónica más modular utilizando silicio comercial, para reducir costos y energía. Optaron por una arquitectura de dos protocolos redundantes que vinculan todos los componentes electrónicos de la nave espacial. Se usa un bus 1394 de alta velocidad para grandes datos, mientras que un bus I2C (a 100 khz) se usa para controles de bajo ancho de banda. Esto se configura como un bus multimaestro, donde cada nodo puede comunicarse entre sí.

No he usado I2C para más que sensores individuales, pero por lo que entiendo, existen serias limitaciones de distancia. Dentro de una nave espacial, podría haber arneses de cableado de una longitud significativa.

Además de tener dos buses I2C redundantes, cada dispositivo tiene un ASIC personalizado que proporciona aislamiento entre el bus y el chip principal que se muestra aquí  y aquí . ¿Este chip también proporciona algún tipo de acondicionamiento?

¿Alguien puede explicar por qué podrían haber elegido usar un protocolo diseñado para la comunicación dentro de una PCB para la comunicación dentro de un vehículo grande?

Sé que probablemente no haya una sola respuesta definitiva, pero me interesaría saber qué factores influyen en ese tipo de elección.

Como a ti, me sorprende esta elección. Yo mismo he tenido dificultades con los autobuses I2C largos: Memorias de un autobús I2C demasiado grande .
Se trata de la carga capacitiva y la velocidad del reloj. Hay muchas maneras de ampliar el rango de I2C, aquí hay una nota de la aplicación que puede ayudarlo: maximintegrated.com/en/app-notes/index.mvp/id/6208 Los esfuerzos de la NASA redujeron la velocidad del reloj a 100kHz, y yo He visto implementaciones exitosas de cables largos de hasta 10 kHz. El mayor problema con la baja frecuencia de reloj es mantener la compatibilidad con SMBUS si es necesario. Esto también puede ayudar: nxp.com/docs/en/application-note/AN10658.pdf
SMBus fue (quizás todavía es) utilizado por las PC con arquitectura Intel para interrogar a los módulos de memoria (DIMM y similares). El DIMM es un PCB separado. Esto no está particularmente relacionado con el punto principal. Pero no estoy seguro de que sea correcto decir que SMBus fue diseñado para la comunicación dentro de una PCB.
"podría haber arneses de cableado de longitud significativa" - defina 'significativo'.
@Bruce En mi experiencia, una longitud significativa para el bus I2C comienza en, digamos, 1 metro. Aquí es donde la capacitancia del bus y la captación de interferencias pueden comenzar a convertirse en un problema. La capacitancia y la interferencia se pueden mitigar con amortiguadores y blindaje, por supuesto. En el momento en que uno comienza a considerar múltiples mitigaciones, también comienza a preguntarse "¿Por qué estamos extendiendo I2C más allá de su uso previsto? ¿Por qué no estamos usando un bus de comunicación diseñado para nuestro tipo de rango?"
electronics.stackexchange.com/questions/106265/… "A 100 kHz, con un buen protocolo de recuperación de errores, se pueden alcanzar fácilmente 25 m usando cables básicos. Incluso pudimos llegar a 100 m una vez con cable CAT5"
Me parece bastante raro que alguien quiera usar I2C para larga distancia en aviónica cuando hay muchas alternativas que funcionan mejor: Arinc-429, can-bus, AFDX, arinc 629. En un avión con muchas redundancias, algún protocolo punto a punto termine teniendo MUCHOS cables (hablando de km aquí) que agregan un peso significativo. Es por eso que arinc-429 se está desvaneciendo.
Porque a millas sobre la tierra, 2 es 1 y 1 es ninguno.
@Nick, si sabe cómo se puede optimizar la integridad de la señal, puede obtener más de >> 1 m, por eso no está en la especificación
@Tony La verdadera pregunta no es si I2C se puede estirar o no más allá de su especificación típica. Todos sabemos que se puede estirar. Eso no significa que uno deba estirar un I2C, en lugar de diseñar una comunicación completamente diferente concebida para un recorrido más largo.
Entonces supongo que el resumen de atributos de NXP es lo que cuenta. Por supuesto, la impedancia importa y si considerara la integridad de la señal como lo más importante, sería direccionable diferencial balanceada, host múltiple con blindaje de plomo;)
He trabajado en hardware aeroespacial (principalmente diseño de PCB), me sorprende que se haya elegido I2C por encima de RS-485, que tiene un mejor rechazo de ruido y soporte de cableado largo. Supongo que el aspecto multimaestro fue una consideración más importante. 485 necesita más componentes de apoyo, eso sí. Sin embargo, I2C es un PITA real, no me atraparás en un cohete espacial que usa I2C para hacer funcionar la cafetera, y mucho menos las cosas importantes :)
sí, de hecho para RS485. La confiabilidad comienza en la capa física, y no hay argumento de que 422/485 sea mucho mejor que I2C de colector abierto no balanceado. Todavía tiene la opción de agregar redundancia si lo desea. Esto suena como "diseño por comité" o "bueno, siempre lo hicimos de esta manera y estuvo bien entonces" y tampoco es un enfoque de primera base para una alta confiabilidad.

Respuestas (2)

Sí, hay una limitación de longitud con I2C, pero creo que su intención es comunicarse con otros circuitos integrados en la misma placa o placas ubicadas dentro del mismo subsistema en lugar de pensar en comunicarse con sensores desplegados alrededor de la nave espacial y otras naves espaciales. sistemas relacionados. La mayoría de los circuitos integrados actuales incorporarán I2C, mientras que las velocidades de datos y la distancia pueden verse como limitaciones, para la comunicación integrada con otros circuitos integrados, se obtiene un método extremadamente confiable de transferencia y control de datos. Los circuitos integrados, como las funciones de administración de energía (PMIC), los sensores de temperatura integrados, los acelerómetros y giroscopios basados ​​en MEMS, por nombrar solo algunos, I2C es un competidor viable.

Tuve los mismos pensamientos al principio, pero luego miré más de cerca el diagrama de bloques en la página 5. Uno de los buses I2C [hay más de uno en ese diagrama de bloques] se ejecuta en paralelo con el bus 1394,
Tienen redundancia @NickAlexeev
  • No fue diseñado para un punto final de PCB sino para muchos puntos multipunto en un enlace corto de 400pF máx. Lo que posiblemente podría alcanzar hasta 15 m sin búferes o repetidores que usen conmutadores.
  • El I2C sería para sensores de bajo ancho de banda de corta distancia (pocos m) y el enlace de alta velocidad IEEE 1394 para comunicaciones de mayor distancia.

Mejoras del informe**

  • Ambos buses son multimaestro y, por lo tanto, admiten arquitecturas distribuidas y escalables simétricas.
  • Se agrega una capa de protocolo al bus I2C. Este protocolo incluye un conteo de bytes después de la dirección y dos bytes CRC después de los datos. El diseño del X2000 también utiliza comandos especiales de mensajes de hardware para controlar funciones críticas. Para estos mensajes, se envía el comando seguido de su complemento para proporcionar una capa más de protección.

  • En condiciones de falla catastrófica, como una falla de energía del bus, ambos conjuntos de bus COTS pueden fallar de modo que se pierdan todas las comunicaciones entre los nodos. Para restablecer la comunicación, cada nodo puede ejecutar un procedimiento de recuperación distribuido que consiste en una secuencia de actividades de habilitación/deshabilitación de enlaces.

  • dado que la causa de la falla catastrófica puede no estar dentro del sistema de aviónica, no hay garantía de que el procedimiento de recuperación distribuida tenga éxito. Por lo tanto, este enfoque es solo el último recurso para salvar la nave espacial.

Opinión

  • El último punto se refiere al conductor del autobús y al cable. No me sorprende que el autor no haya mencionado ningún tema relacionado con la "integridad de la señal", como el espacio y el sistema EMI radiado y la elección de cables o BER frente a los niveles de inmunidad.
  • Creo que el informe tiene fallas debido a esta supresión de información sobre la integridad de la señal y las tasas de error.
  • todo lo que se analiza en el informe son las capas digitales por encima de la capa física 1 de las 7 capas de OSI
  • Sin embargo, eso no significa que no tuvieran los expertos o los datos de Analog, simplemente no se informó allí.
  • Eligieron el I2C en función del costo, la disponibilidad de COTS endurecidos por RAD y la baja potencia, por lo que si manejaron bien los problemas de integridad de la señal, no tendrían que depender tanto de un diseño redundante robusto de detección/corrección/recuperación de fallas.
  • Existen métodos de terminación no coincidentes que los controladores de colector abierto pueden usar para mejorar el margen de la señal, como la fuente de corriente pull-up en lugar de la R pasiva pull-up.

Anecdótico

Esta es un área en la que apoyé a Burroughs a mediados de los años 80 en la actualización de sus estándares de diseño corporativo para métodos de prueba de EMC y de especificaciones para niveles de aceptación de inmunidad al ruido conducido, ESD radiado, ráfagas de RF radiadas, ondas planas radiadas para RF de barrido de campos magnéticos de 100 kHz. a campos radiados de x GHz a intensidades de campo muy altas utilizando bobinas magnéticas con amplificador montado en rack de 1kW y antena plana dodecaédrica con retroalimentación opto para respuesta plana de campo E servo para verificar errores de 0 bits en 10^10 bits.

NXP define los atributos de este estándar de dos hilos llamado I2C de la siguiente manera;

• Consumo de corriente extremadamente bajo
. • Alta inmunidad al ruido.
• Amplio rango de tensión de alimentación.
• Amplio rango de temperatura de funcionamiento.

Sin embargo, está limitado por la capacitancia del cable y, por lo tanto, la elección y la longitud del cable, el nivel de altas corrientes transitorias cercanas o el voltaje de alta velocidad de respuesta, el tipo de controlador, el tipo de búfer CMOS activo de 50 ohmios o la terminación de la fuente de corriente y muchas variaciones.

La especificación NXP dice que no hay problema para una carga de 100kHz hasta 100pF, que puede ser típicamente de 20pF/ft dependiendo de la impedancia del par y luego las notas al pie para el manejo de 100pF a 400pF máx. para 100Kbps.

Si fuera yo, elegiría el par trenzado de mayor impedancia (240 ~ 300+) y luego usaría un sumidero de corriente constante con protección de bloqueo.

En cualquier caso, un ingeniero con experiencia en diseño de líneas de transmisión debe diseñar/realizar pruebas de estrés y verificar la integridad de la señal para estos enlaces de corta distancia.

Apéndice

Los estudiantes de ingeniería de Stanford desarrollaron mejoras para la comunicación espacial que incluyeron temporizadores de vigilancia para el reciclaje de energía y puertos de impacto de bits para opciones de recuperación multiplexadas en el bus.

Opinión

Interpretaría que los problemas principales no fueron la "integridad de la señal" en la tasa de error de bit, sino fallas graves debido a los impulsos de radiación gamma que pueden inducir el bloqueo incluso en dispositivos CMOS litográficos grandes debido a las altas intensidades de campo V/um de estos dispositivos de alta energía. pulsos. Sus métodos de recuperación de mi experiencia se implementaron correctamente a partir de mis experiencias con ESD de 25 kV en el Proyecto IDA en un hogar de prueba de MTS a principios de los años 80

Anecdótico

El Proyecto IDA fue una empresa de I+D de Winnipeg Interdiscom Inc. en la que participé para una WAN de banda ancha ISDN personalizada con televisión de pago, gráficos de datos meteorológicos, sondeos de opinión, telefonía digital, alarmas de abeto/robo, lectura de contadores, teclado con cable para datos en serie de alta velocidad y 2 Arcos de pulgada de ESD desde el tubo de vacío TV estática y los dedos a nuestro decodificador en un invierno seco!! Fue el primer SCADA DS1 a gran escala (1.544 Mbps) bidireccional sobre RF a 100 hogares en el mundo probado y entregado con éxito. Fui responsable de la prueba del sistema, el diseño y la fabricación de varios equipos de prueba BER y el monitoreo general del estado de la red bidireccional, y nuestro equipo lo hizo funcionar. Todos estos 100 hogares compartían 1 cable coaxial y 2 RF para topología de árbol/bus TDM DS1.

Finalmente, se vendió a una empresa propietaria de Scientific Atlanta, Intellivision y algunas otras en Filadelfia.

Supongo que su quinto elemento en la Opinión es la razón real por la que la NASA propuso usar I2C de esta manera. Esta elección genera dudas entre el resto de nosotros, porque no sabemos qué tipos de COTS con qué tipos de buses de comunicación están disponibles o no.
@NickAlexeev Habiendo suministrado a Honeywell una gran cantidad de placas base de aviónica, es un proveedor importante, pero el autor no tuvo que justificar que existen muchas COTS RAD reforzadas, pero como la mayoría de las cosas, las decisiones terminan basándose en los costos con la confiabilidad adecuada.