Le développement de systèmes de contrôle autonomes sûrs, fiables et efficaces est l'un des défis les plus complexes de l'époque moderne. Ces systèmes doivent intégrer la perception, la prise de décision, la planification, l'actionnement et les opérations de sécurité en cas de défaillance dans une architecture cohérente et redondante. Les ingénieurs ont besoin d'une vision claire et abstraite de la façon dont tous les sous-systèmes interagissent avant de s'engager dans une mise en œuvre détaillée.

Qu'est-ce que les diagrammes de blocs?

Un diagramme de bloc est un schéma où chaque bloc représente un composant ou sous-système fonctionnel, et où les lignes dirigées (ou flèches) indiquent le flux d'information, les signaux de commande ou les quantités physiques entre eux. Ce formalisme n'est pas limité aux logiciels ou à l'électronique, il est également utilisé dans des domaines mécaniques, thermiques et hydrauliques. Dans le contexte de la commande autonome du véhicule, les diagrammes de bloc sont généralement fonctionnels ou orientés vers le contrôle. Un diagramme de bloc fonctionnel[ divise le système en tâches de haut niveau (p. ex. acquisition de données de capteur, suivi des objets, planification du chemin), tandis qu'un diagramme de bloc de contrôle[ comprend des boucles de rétroaction, des fonctions de transfert et des gains pour la régulation en boucle fermée (p. ex., commande de direction, réponse aux gaz).

Les diagrammes de blocs sont présentés dans plusieurs notations standard. Par exemple:

  • Les diagrammes de flux de données[ – mettent l'accent sur le mouvement des données plutôt que sur le contrôle.
  • Diagrammes de cause à effet – utilisés pour l'analyse des défauts en génie de la sécurité.
  • Diagrammes d'état de transition – souvent combinés avec des blocs pour modéliser le comportement des modules.
  • – un graphe de flux de signe – une forme plus mathématique utilisée en théorie du contrôle.

Ce qui rend les diagrammes de blocs uniques pour les systèmes autonomes est leur capacité à couvrir plusieurs niveaux d'abstraction. Un seul bloc au diagramme de haut niveau peut représenter une pile de perception entière, tandis qu'un diagramme de blocs de bas niveau perce dans le processus de fusion des capteurs, montrant des algorithmes de filtrage individuels et des calculs de gain de Kalman. Cette décomposition hiérarchique s'aligne directement sur l'architecture stratifiée commune aux piles de véhicules autonomes modernes.

Diagrammes de blocs dans l'architecture de système de véhicules autonomes

La Société des ingénieurs automobiles (SAE) définit six niveaux d'automatisation de conduite (SAE J3016), du niveau 0 (pas d'automatisation) au niveau 5 (autonomie totale). Au fur et à mesure que le niveau d'automatisation augmente, la complexité du système de contrôle aussi.

Une architecture de véhicule autonome typique peut être divisée en plusieurs blocs principaux : perception, localisation et cartographie[, décision[ (y compris planification du comportement), planification des chemins[, contrôle[, et ]action[. Chaque bloc se décompose en sous-blocs. Un diagramme de blocs devient la seule source de vérité pour la façon dont ces blocs se connectent et interagissent, tant nominalement que dans des conditions de défaillance.

Comme les véhicules autonomes sont des systèmes critiques pour la sécurité, des diagrammes de blocs sont également utilisés pour modéliser redondance et diversité[. Par exemple, un système de perception redondant peut comprendre deux suites de capteurs indépendantes et deux algorithmes de fusion. Un diagramme de blocs peut montrer la logique de vote qui compare les sorties et les arbitres qui conduisent à la confiance.

Système de perception

Le bloc de perception transforme les données brutes du capteur en une compréhension sémantique de l'environnement. Les capteurs comprennent les caméras, le LiDAR, le radar, l'ultrason et les dispositifs thermiques. Un diagramme de bloc pour la perception commence souvent par des interfaces de capteur, puis procède au traitement de signaux de faible niveau (p. ex., dénusage, calibration), à l'extraction des caractéristiques, et enfin à la détection et la classification des objets.

Chaque sous-bloc représente un algorithme ou un composant distinct : un réseau neuronal convolutionnel pour la détection d'images, un réseau de piliers point pour LiDAR, un filtre Kalman pour le suivi et un gestionnaire de fusion qui aligne les cadres de coordonnées et les timbres-temps. Le diagramme de blocs permet de voir facilement où existent les dépendances de données et quels blocs fonctionnent en parallèle par rapport à séquentielle. Cette visibilité est essentielle pour respecter les délais en temps réel.

Prise de décision et planification

Le bloc décisionnel consomme la sortie de perception (le modèle - -world) et produit un plan pour le comportement du véhicule. La plupart des systèmes utilisent une hiérarchie de planification en couches:

  1. Planification de route – détermine un chemin de haut niveau d'origine à destination, souvent à l'aide d'une carte routière précomptée (p. ex., cartes OpenStreetMap ou HD).
  2. La planification du comportement[ – décide de la manœuvre de conduite : changement de voie, fusion, rendement, arrêt ou suivi. Ce bloc utilise des machines à état fini ou des systèmes fondés sur des règles.
  3. La planification de la mobilité[ – génère une trajectoire réalisable et sans collision (profil de trajectoire + vitesse) sur un horizon court (p. ex., 5-10 secondes).

Les diagrammes de blocs dans cette zone représentent souvent les boucles de rétroaction entre la planification et le contrôle. Par exemple, une trajectoire du planificateur de mouvement est transmise au bloc de contrôle, qui le suit à l'aide d'un contrôleur de prédictive du modèle (MPC) ou d'un contrôleur PID + feedforward. Le bloc de contrôle peut ensuite transmettre des erreurs de suivi au bloc de planification pour la replanification.

Système d'activation

Dans un véhicule conventionnel, il s'agit d'unités de commande électroniques (ECU) qui s'interfacent avec des actionneurs hydrauliques ou électriques. Les systèmes de transmission par fil, essentiels pour un fonctionnement autonome, sont eux-mêmes des sous-systèmes complexes avec redondance intégrée (par exemple, deux ou trois canaux indépendants pour la direction).

Un diagramme de bloc pour actionner peut indiquer le chemin de la requête de la pile de décision/commande à l'interface du véhicule, puis se diviser en canaux parallèles, chacun avec un microcontrôleur, conducteur moteur et actionneur. Le diagramme comprend également les réactions des encodeurs et des capteurs de force pour vérifier que l'action commandée a été réalisée.

Sécurité fonctionnelle et tolérance aux défauts

Les véhicules autonomes doivent respecter les normes de sécurité fonctionnelles telles que ISO 26262 (pour les systèmes électriques et électroniques) et les nouvelles ISO 21448 (Sécurité de la fonctionnalité prévue).Les diagrammes de blocs sont fondamentaux pour l'analyse de la sécurité.Les ingénieurs les utilisent pour effectuer Analyse du mode et des effets d'échec (FMEA)[ et Analyse des arbres de défaillance (FTA)[. Chaque bloc peut être annoté avec des taux de défaillance, une couverture diagnostique et des mécanismes de sécurité.

Par exemple, une architecture à deux ordinateurs (primaire et secondaire) peut être modélisée en deux blocs parallèles qui traitent indépendamment les données des capteurs et produisent des commandes de contrôle. Un bloc superviseur surveille la santé et sélectionne la sortie. Le diagramme de bloc rend la stratégie de redondance explicite et permet aux ingénieurs de calculer la fiabilité globale du système et la probabilité d'événements dangereux.

Conception basée sur le modèle à l'aide de diagrammes de blocs

Le développement de véhicules autonomes modernes repose fortement sur la conception basée sur des modèles (MBD).Dans MBD, le diagramme de blocs n'est pas seulement un dessin, c'est une spécification exécutable. Des outils tels que MATLAB/Simulink, SCADE et dSPACE TargetLink permettent aux ingénieurs de simuler le comportement du système complet dès les premières étapes. Les blocs peuvent être implémentés sous forme graphique (par exemple, machines d'état, fonctions de transfert) ou via des extraits de code textuel. Une fois le modèle validé par simulation, l'outil peut générer automatiquement le code C/C++ prêt à la production, éliminant les erreurs de codage manuel et accélérant le chemin d'un concept à un véhicule.

Simulink, par exemple, est équipé de bibliothèques spécialisées pour les applications automobiles, y compris la dynamique des véhicules, les modèles de capteurs et les modèles de vérins. Les ingénieurs peuvent réunir les blocs de perception, de planification et de commande dans un seul environnement de simulation et tester contre un monde virtuel (par exemple, en utilisant le moteur Unreal ou CarSim). Un diagramme de bloc du système complet représente alors à la fois la logique algorithmique et le modèle d'usine (la physique du véhicule), permettant de vérifier la stabilité en boucle fermée, les performances et la manipulation des défauts avant la construction de tout matériel.

Un avantage important des diagrammes de blocs basés sur des modèles est la traçabilité. Chaque bloc peut être lié aux exigences, aux cas d'essai et aux rapports d'inspection. Cette traçabilité est requise par la certification de sécurité (ISO 26262, ASIL‐D). Les vérificateurs peuvent inspecter la hiérarchie des diagrammes de blocs pour confirmer que chaque exigence de sécurité est mise en œuvre et testée.

Avantages pour le développement autonome des véhicules

L'utilisation de diagrammes de blocs offre des avantages concrets et mesurables tout au long du cycle de développement :

  • Clarté de l'architecture – les équipes peuvent visualiser comment le système de contrôle est décomposé, quels blocs sont statiques contre les états, et quelles dépendances existent.
  • La validation précoce – avant toute construction matérielle, les diagrammes de blocs peuvent être simulés pour découvrir des erreurs de synchronisation, des incohérences de données ou des erreurs logiques.La simulation avec les diagrammes de blocs peut tester des milliers de cas de bord en minutes.
  • La communication entre équipes de choc[ – les ingénieurs de perception, les ingénieurs de planification et les ingénieurs de contrôle ont chacun leurs propres diagrammes de domaine, mais le diagramme de bloc de haut niveau sert de langage commun. Il clarifie les interfaces et réduit les surprises d'intégration.
  • Soutien à l'analyse de la sécurité – FMEA, FTA et l'analyse des risques et l'évaluation des risques (HARA) tous les diagrammes de blocs de levier.Les mécanismes de sécurité (p. ex., les vérifications de plausibilité, les chronomètres de surveillance) peuvent être définis comme des blocs explicites, rendant l'architecture de sécurité vérifiable.
  • Configurable pour différentes plateformes – le même diagramme de blocs peut être adapté pour différentes plateformes de véhicules en remplaçant des blocs spécifiques (p. ex., différents modèles de vérins ou configurations de capteurs).
  • La génération et le test de code automatique – les diagrammes de blocs qui sont exécutables peuvent générer des codes et des harnais de test prêts à ECU, réduisant ainsi les possibilités d'erreur humaine dans la traduction.

Exemples du monde réel et adoption par l'industrie

Les principaux développeurs de véhicules autonomes se basent sur des diagrammes de blocs et des modèles.Waymo a publié des documents décrivant une architecture modulaire avec des interfaces claires entre la perception, la prédiction et la planification. Leurs diagrammes de blocs de système mettent l'accent sur la redondance et la conception opérationnelle. NVIDIA DRIVE plate-forme fournit des outils de simulation et de type bloc-diagramme pour construire des piles de conduite autonomes de bout en bout.

Un autre exemple notable est le projet open-source Apollo (de Baidu). La documentation d'Apollon comprend des diagrammes de blocs détaillés de ses modules de perception, de contrôle et de planification. Le diagramme de blocs de contrôle, par exemple, montre un contrôleur PID en cascade avec des termes de flux pour la direction et les gaz, modelés exactement comme on le dessinerait sur un tableau blanc. Ces diagrammes sont utilisés par des milliers de développeurs dans le monde entier pour comprendre et contribuer au système.

Du côté de l'aérospatiale et de la robotique, le Robot Operating System (ROS 2) et sa visualisation des nœuds offrent une vue de l'exécution des blocs-diagrammes. Bien que pas exactement la même que les diagrammes de blocs de commande, le principe est identique – les nœuds sont des blocs, les sujets sont des signaux.

Dans les normes de sécurité, ISO 26262 prévoit l'utilisation de la décomposition fonctionnelle - et -de la conception architecturale système -de diagrammes. De nombreux OEM et fournisseurs de niveau-1, comme Bosch et ZF, produisent des diagrammes de blocs dans leur documentation de cas de sécurité. Ils combinent souvent des diagrammes de blocs de commande avec des diagrammes d'architecture matérielle pour montrer le flux des capteurs vers les actionneurs, y compris les chemins opérationnels en panne.

Conclusion

Les diagrammes de blocs ne sont pas seulement un outil de présentation, mais ils constituent l'épine dorsale du développement d'un système de contrôle des véhicules autonomes. De l'exploration des concepts à la certification finale, ces diagrammes permettent aux ingénieurs de concevoir, simuler, vérifier et communiquer l'immense complexité d'un système de conduite autonome. En intégrant les diagrammes de blocs dans un flux de travail de conception basé sur des modèles, les équipes peuvent attraper les défauts de conception tôt, générer automatiquement le code de production et construire la compréhension profonde nécessaire pour faire des véhicules autonomes sûrs et fiables une réalité.