Code de programme dans la voiture

(Publication 2009)

image


Il faut beaucoup de microprocesseurs pour traiter 100 millions de lignes de code afin de faire fonctionner une voiture premium ( 2009 ). Et cela deviendra bientôt encore plus difficile.

Le système avionique du F-22 Raptor, un avion de chasse de l'US Air Force, comprend environ 1,7 million de lignes de code. Le F-35 Joint Strike Fighter, introduit en 2010, nécessite environ 5,7 millions de lignes de code pour les systèmes embarqués. Et le nouveau Boeing 787 Dreamliner a besoin d'environ 6,5 millions de lignes de code de programme pour faire fonctionner les systèmes d'équipements électroniques embarqués.

Impressionnant, non? Mais si vous avez récemment acheté une voiture premium, elle contient probablement environ 100 millions de lignes de code. C'est ce que dit Manfred Broy, professeur d'informatique à l'Université technique de Munich, l'un des principaux experts des logiciels automobiles. Tous ces logiciels fonctionnent sur 70-100 unités de contrôle électronique ( ECU ) à microprocesseur réparties dans toute votre voiture.

Alfred Katzenbach, directeur de la gestion des technologies de l'information chez Daimler, a déclaré que l'actuel système de radionavigation Mercedes-Benz Classe S nécessite plus de 20 millions de lignes de code. La voiture contient presque autant d'écus que le nouvel Airbus A380 (à l'exclusion du système de divertissement à bord). Les logiciels dans les voitures augmenteront non seulement en quantité. La complexité du logiciel augmente à chaque fois de plus en plus. À la fin de l'année dernière, la firme de recherche Frost & Sullivan a calculé que pour les machines, dans un proche avenir, 200 à 300 millions de lignes de code seraient nécessaires.

Même dans les voitures économiques, il y a maintenant de 30 à 50 ECU intégrés dans la carrosserie, les portes, le tableau de bord, le toit, le coffre, les sièges. Ils peuvent être trouvés presque partout. Tout dépend de l'imagination des concepteurs automobiles. Cela signifie que la plupart des voitures neuves traitent des dizaines de millions de lignes de code de programme, contrôlant tout, de vos freins au volume de la radio.

image


«Les voitures ne sont plus seulement une batterie, un distributeur ou un alternateur et un carburateur; ils sont extrêmement modernes dans leur complexité », explique Thomas Little, professeur de génie électrique à l'Université de Boston du Massachusetts. Thomas développe des systèmes de transport intelligents. «Dans le but d'économiser de l'énergie, de réduire [les émissions] et d'améliorer la sécurité, nous avons également proposé l'introduction de l'électronique.»

J'ai récemment vécu cette difficulté sur moi-même. L'année dernière, j'ai acheté une nouvelle voiture et j'ai été étonné lorsque j'ai ouvert le manuel d'utilisation. Il avait 500 pages. 200 autres pages expliquaient le fonctionnement des systèmes GPS et radio. L'une des nouvelles fonctionnalités annoncées était une augmentation de la section des gants, mais les tailles étaient probablement indiquées quelque part dans le manuel sans fin.

Ma nouvelle voiture est livrée avec des airbags frontaux et latéraux. Des dizaines de capteurs fournissent des données électroniques sur le contrôleur d'airbag. Ces capteurs devraient fonctionner pendant des années à n'importe quelle température - à la fois par un gel intense au Minnesota et sous le chaud soleil d'été en Arizona.

La plupart du temps, le système d'airbag surveille simplement l'état de la voiture. Mais parfois, les airbags se déclenchent, par exemple, en raison d'une collision de plusieurs véhicules. Dans ce cas, le logiciel de l'ECU qui contrôle leur déploiement dispose de 15 à 40 millisecondes pour déterminer quels airbags sont activés et dans quel ordre, dit Broy.

Dans un avenir proche, selon Broy, les systèmes de contrôle des coussins gonflables n'utiliseront pas seulement des informations sur la probabilité d'une collision. Par exemple, BMW a de nombreux modèles 2009 équipés de BMW Assist. Ce système calcule le «risque de blessure grave» sur la base des informations reçues du contrôleur d'airbag du véhicule et de ses autres calculateurs. Les services d'urgence reçoivent des informations non seulement sur le lieu de l'accident, mais également sur la probabilité de blessures graves pour les passagers.

La quantité de logiciels dans les voitures de nos jours est stupéfiante.
Le premier calculateur série d'un micro-ordinateur automobile était un contrôleur à fonction unique. Il a été utilisé pour l'allumage électronique en 1977 chez General Motors dans une voiture Oldsmobile Toronado. En 1978, GM a proposé d'installer son ordinateur de bord Cadillac sur la Cadillac Seville. L'ordinateur était une puce de microprocesseur modifiée Motorola 6802. Il affichait des informations sur la vitesse, le carburant, la conduite et le moteur. Cependant, la puce a rempli une fonction différente: GM l'a utilisée pour tester dans quelle mesure le microprocesseur peut contrôler plusieurs fonctions, telles que l'injection de carburant, le calage de l'allumage électronique et le régulateur de vitesse.

En 1981, GM utilisait la commande de moteur à microprocesseur dans la fabrication de voitures particulières. Ils ont traité environ 50 000 lignes de code. D'autres constructeurs automobiles ont rapidement emboîté le pas.

Jonas Bereisa, un ingénieur de GM, a écrit dans un article de IEEE Transactions sur l'électronique industrielle en 1983 que "le développement de logiciels sera le facteur le plus important dans le développement de nouveaux produits." Il avait sacrément raison. Broy estime que plus de 80% de l'innovation automobile provient des systèmes informatiques. Le logiciel est devenu la principale source de valeur dans les automobiles, y compris la liste de prix. Le ratio du coût de l'électronique et du coût des véhicules en pourcentage est passé de 5% à la fin des années 70 à 15% en 2005 (hors coût de l'assemblage final).
Les hybrides ont la quantité de logiciels nécessaires pour une seule commande de moteur, presque deux fois plus qu'une voiture standard. Le rapport entre le coût de l'électronique et le coût des véhicules qui s'y trouvent approche de 45%. D'ici 10 ans, selon certains experts, le pourcentage du coût de l'électronique par rapport au coût d'un véhicule passera à 50% pour les véhicules ordinaires et jusqu'à 80% pour les hybrides.

Pour les voitures haut de gamme modernes, «le coût des logiciels et de l'électronique peut atteindre 35 à 40% du coût d'une voiture», explique Broy. Le développement de logiciels représente environ 13 à 15% de ce coût. Il dit que si chaque gamme de logiciels développés coûte 10 $ - ce qui est très petit - pour une voiture premium, son logiciel à lui seul représente un investissement d'environ un milliard de dollars.

John Voelcker, rédacteur en chef de IEEE Spectrum, a écrit en avril 2007 sur la voiture hybride GMC Yukon et sa transmission automatique bimode. Voelcker a déclaré que "de toutes les heures de travail consacrées à la création d'une boîte de vitesses à double mode ... environ 70 pour cent ... ont été consacrées au développement d'un logiciel de gestion".

Voelcker a noté que la logique du logiciel de contrôle analyse des centaines de données d'entrée toutes les 10 millisecondes, y compris la charge du véhicule, les performances du moteur, les paramètres de la batterie et la température dans les composants électriques haute tension.

En raison de la complexité du code, des problèmes de fiabilité se posent. IBM affirme qu'environ 50% des coûts de la garantie automobile sont actuellement liés à l'électronique et à leurs logiciels intégrés. Selon les données de 2005, les constructeurs automobiles aux États-Unis ont coûté environ 350 $ par voiture et les constructeurs européens à 250 $.

En 2005, Toyota a retiré 160 000 de ses hybrides Prius 2004 et certains modèles ont commencé en 2005 en raison d'un problème logiciel - les voitures ont calé ou se sont arrêtées soudainement. Le temps nécessaire pour réparer le logiciel a été estimé à environ 90 minutes par véhicule, soit environ 240 000 heures de travail. Cela leur a coûté très cher.

L'année dernière seulement, il y a eu plusieurs évaluations de voitures liées à des problèmes logiciels. Par exemple, en mai 2008, Chrysler a retiré 24 535 de ses Jeep Commanders 2006 en raison d'un problème dans le logiciel de transmission automatique. Puis, en juin, Volkswagen a retiré environ 4 000 de ses Passat et Passat Wagon 2008 et environ 2 500 Tiguans en raison d'un problème dans le logiciel du module de commande du moteur. Ce problème peut entraîner une augmentation inattendue du régime moteur lorsque la climatisation est allumée. En novembre, GM a rappelé 12 662 de ses voitures Cadillac CTS 2009 en raison d'un problème logiciel dans le système de détection des passagers qui pouvait désactiver le coussin gonflable du passager assis devant lorsqu'il devait être activé, ou l'activer lorsqu'il devrait être désactivé. . Néanmoins, cela vaut la peine de rendre hommage aux développeurs de logiciels automobiles, car il n'y a pas tellement de critiques de voitures en raison des logiciels.

L'utilisation plus large des logiciels a non seulement affecté le coût de la garantie automobile, mais a également compliqué la réparation des voitures. Il est plus facile pour les compagnies d'assurance de déclarer la perte totale d'une voiture endommagée dans un accident que de la réparer.

Il est facile de comprendre pourquoi. «La voiture haut de gamme dispose de 2 000 à 3 000 fonctionnalités logicielles uniques», explique Broy. Ensuite, ils sont combinés en 250-300 fonctions utilisées par le conducteur et les passagers pour contrôler les systèmes du véhicule.

La plupart des avions commerciaux ont des pare-feu entre les systèmes embarqués critiques et les systèmes de divertissement embarqués. Dans les voitures, contrairement aux avions, il existe une transmission d'informations plus complexe entre les systèmes électroniques utilisés pour contrôler la voiture et les systèmes conçus pour divertir le conducteur et les passagers. Un article a été publié à la Wharton Business School sous le titre "Problèmes automobiles: faut-il révoquer l'industrie automobile américaine?" Il y a quelques années, certains conducteurs de Mercedes ont constaté que le siège du conducteur s'était déplacé en appuyant sur un certain bouton; le problème était que le bouton était censé contrôler le système de navigation.

Selon un ancien ingénieur automobile avec qui j'ai parlé, environ un tiers de tous les logiciels automobiles sont consacrés uniquement au diagnostic. Mais même avec toutes ces informations de diagnostic, la mécanique automobile ne peut souvent pas déterminer la cause exacte du problème.

Broy m'a dit que plus de 50% des calculateurs que les mécaniciens remplacent dans les voitures sont techniquement exempts d'erreurs: ils n'ont aucun problème avec le matériel ou les logiciels. Les mécaniciens remplacent l'ECU simplement parce qu'ils ne peuvent pas réparer la voiture autrement.

«Les travailleurs de l'entretien automobile et les amateurs de voitures dans le garage sont vraiment dans ces réalités lorsque la réparation automobile est trop compliquée et coûteuse [pour eux]», explique Broy. Les diagnostics et réparations à distance peuvent rendre la mécanique inutile pour de nombreuses tâches.

Selon Broy, dans un avenir pas trop lointain, lorsque vous aurez des problèmes avec le système informatique de la voiture, vous irez au garage, où votre voiture sera connectée au réseau. Les fabricants OEM tiers pourront télécharger les données, effectuer l'analyse, puis télécharger le correctif logiciel.

Selon Voelcker, il ne sera pas surpris de voir que des systèmes embarqués tels que BMW Assist, Ford Sync et GM OnStar commencent à retransmettre régulièrement les paramètres de données opérationnelles vers des systèmes centralisés contrôlés par les constructeurs automobiles. Et les fabricants, à leur tour, analyseront les données pour les pièces qui vont au-delà des spécifications ou pour les logiciels qui doivent être mis à jour. Le conducteur sera automatiquement informé que la voiture doit être prise en réparation.

En plus de surveiller l'état de leurs pièces internes, les voitures commencent à analyser le monde qui les entoure. «Nous entrons dans une ère où, en plus de savoir ce qui se passe à l'intérieur de la voiture, nous utilisons des éléments comme des radars pour détecter la présence d'objets externes, des lasers pour mesurer la distance au régulateur de vitesse et des vidéos et des ultrasons pour détecter des objets derrière toi, dit Little. «La tendance sera de récupérer les informations qui s'appliquent à votre voiture et aux autres véhicules. Ces informations seront ensuite utilisées pour accroître la sécurité. Par exemple, les voitures devant vous diront à votre voiture s'il y a de la glace sur l'autoroute ou si un accident s'est produit.

Little dit: «Nous abandonnons de petites parties de contrôle en échange de la sécurité. À quel moment vous et moi serons prêts à dire: «Bien. Je ne vais pas conduire de voiture, laisse-moi conduire.

À propos de l'auteur


Robert N. Charette est un éditeur IEEE Spectrum, un «écologiste des risques» autoproclamé, qui explore l'impact d'un concept changeant de risque sur la technologie et la société. Charette écrit également The Risk Factor d'IEEE Spectrum Online.

Nous allons plus loin


Manfred Broy et ses collègues ont rédigé un article exhaustif pour le numéro de février des Actes de l'IEEE intitulé Engineering Automotive Software en février 2007. C'est probablement l'une des meilleures critiques sur la façon de développer et d'utiliser un logiciel de voiture.

Pour un bon premier point de vue historique sur l'utilisation des logiciels dans les automobiles, voir l'article de Jonas Bereisa, publié en mai 1983 dans IEEE Transactions in industrial electronics intitulé « Applications of Microprocessors in Automotive Electronics ». Il présente une chronologie intéressante de nombreuses applications de micro-ordinateurs qui ont été utilisées dans les automobiles de 1977 à 1982.

à propos du magazine IEEE Spectrum
image


(Basé sur Wikipedia)
IEEE Spectrum est un magazine mensuel publié par l'Institut des ingénieurs électriciens et électroniciens (IEEE). Description du Journal officiel:

«Le magazine IEEE Spectrum, la publication phare de l'IEEE, explore le développement, l'application et les conséquences de l'introduction de nouvelles technologies. Il anticipe les tendances en matière d'ingénierie, de science et de technologie, et sert également de forum pour la compréhension, la discussion et le leadership dans ces domaines. »


Le magazine IEEE Spectrum est lu par plus de 385 000 ingénieurs dans le monde, ce qui en fait l'une des principales revues scientifiques et d'ingénierie au monde. La revue couvre un large éventail de problèmes techniques et des progrès de la technologie informatique, des communications et de l'électronique. Comme dans les magazines standard, IEEE Spectrum tente de rendre les articles accessibles aux non-spécialistes, bien que leur formation en ingénierie soit envisagée. Le matériel des revues est respecté et souvent cité par d'autres publications.

Source: https://habr.com/ru/post/fr475576/


All Articles