martes, 26 de abril de 2016

Sistemas operativos y automóviles

En el sentido informático del término, el sistema operativo es una colección de programas que gestionan el hardware para hacer utilizable a nivel de aplicación, es decir, abstraer a los programas de la gestión de recursos como procesador, memoria, discos duros o periféricos.
Pasando eso a automóviles, el hardware serían las ruedas, dirección, suspensión, motor, etc. En la generación actual la electrónica ya domina buena parte de la gestión de ese hardware, que antes se gestionaba de forma mecánica y no había un SO como tal. Un carburador no sigue lógica binaria, es mecánico.
Si nos fijamos en una centralita moderna, es relativamente simple. Recibe una serie de señales eléctricas (analógicas o digitales) de diferentes sensores, las procesa, determina los parámetros adecuados y los manda a los inyectores, bujías, etc. Tienen un SO pero bastante primitivo en sus funciones comparado incluso con MS-DOS 1.0.
Nuevos sistemas han requerido el uso de centralitas digitales especializadas, como la del ABS, caja de cambios automática o la suspensión variable. Toda esa información viaja a través de cables, y cuando llega el momento de aprovechar cableado para reducirlo entra en juego el maravilloso mundo del multiplexado.
Para evitar que la masa de cables se dispare, se procura canalizar más información por el mismo lugar, separando las distintas señales. Este concepto ha reducido la fiabilidad en algunos casos, los famosos fallos eléctricos que presentan los coches modernos
En los próximos años el volumen de información que van a mover las centralitas se va a disparar. No es lo mismo mover un puñado de datos sobre inyección y mezcla (KB/s) que imágenes de alta resolución que se combinan con ondas de radar para determinar si hay riesgo de colisión (MB/s). Más información implicamás potencia de proceso.
La electrónica simple no sirve para cualquier aplicación de un coche moderno, y es en este punto cuando podemos empezar a plantearnos el concepto de sistema operativo. No me refiero a Android, QNX o Microsoft. Me refiero a soluciones especializadas y de más bajo nivel, como UNIX o derivados.
Los ingenieros pueden elegir básicamente dos tipos de diseños:


  • pocas centralitas, más multiplexación, perder varios sistemas a la vez si hay fallos
  • muchas centralitas especializadas, más fiabilidad, pero con mayor coste en componentes, más espacio ocupado y más peso


Por ejemplo, en coches modernos de marcas que no quiero mencionar puede fallar a la vez ABS, ESP, y freno de estacionamiento hidráulico. Lo he padecido en mis carnes, al menos con aviso previo.


No hay comentarios:

Publicar un comentario