Maison  >  Article  >  Périphériques technologiques  >  Une introduction complète aux postes de conduite autonomes : le chapitre le plus complet de l'histoire

Une introduction complète aux postes de conduite autonomes : le chapitre le plus complet de l'histoire

王林
王林avant
2024-01-16 12:12:15457parcourir

1. Contexte

Récemment, alors que je parlais de la transformation des entreprises de haute technologie dans le domaine de la conduite autonome, plusieurs amis m'ont posé la même question : "Quels sont les postes pour la conduite autonome L2~L4 ? Quel métier spécifique le contenu correspond-il ?" ? Quelles sont les compétences nécessaires ? "Aujourd'hui, je vais partager sur ce sujet que tout le monde veut connaître.

Tout d'abord, introduisons le schéma fonctionnel du système de conduite autonome (version simplifiée) pour donner à chacun un concept global de conduite autonome

Une introduction complète aux postes de conduite autonomes : le chapitre le plus complet de lhistoire

  • Ensuite, nous l'introduirons en deux catégories : les ingénieurs algorithmiques et les ingénieurs non algorithmiques.
  • Ingénieur en algorithme
  1. Ingénieur en algorithme SLAM laser
  2. Ingénieur en algorithme SLAM visuel
  3. Ingénieur en algorithme de fusion multi-capteurs
  4. Ingénieur en algorithme d'apprentissage automatique
  5. Ingénieur en algorithme de vision par ordinateur
  6. Natur al Ingénieur en algorithme de traitement du langage
  7. Décision Ingénieur algorithmique
  8. Ingénieur algorithmique de planification
  9. Ingénieur algorithmique de contrôle
  • Ingénieur non algorithmique
  1. Ingénieur développement de plateforme logicielle
  2. Ingénieur système
  3. Ingénieur sécurité fonctionnelle
  4. Ingénieur étalonnage
  5. S ingénieur environnement imitation
  6. Ingénieur de test
  7. Ingénieur de données
  8. Ingénieur de développement d'interface utilisateur
  • Ce qui suit est une introduction détaillée aux responsabilités du poste et au contenu requis pour apprendre pour chaque poste

2. Ingénieur d'algorithmes

2.1. Ingénieur

Une introduction complète aux postes de conduite autonomes : le chapitre le plus complet de lhistoire

  • Présentation du poste :
  • Collectez les données des capteurs laser et construisez une carte de l'environnement environnant du véhicule autonome sur la base de données de nuages ​​de points.
  • Responsable de la conception et du développement d'algorithmes SLAM basés sur des capteurs laser, capables de mettre à jour et de produire des cartes de haute précision couvrant diverses scènes complexes.
  • Exigences de compétences :
  • Utiliser la programmation c, c++ ;
  • Exiger une connaissance des algorithmes de filtrage : ESKF, EKF, UKF, etc.
  • En même temps, vous devez apprendre G2O, ceres et d'autres frameworks C++ ; utilisé pour optimiser les fonctions d’erreur non linéaires.
  • La familiarité avec les frameworks SLAM open source, tels que GLoam, Kimera, VINS, etc. est préférable.

2.2.2.2.2.2.2.2.2.2.Basé sur VSLAM, développer des algorithmes de navigation et de positionnement autonomes de robots, y compris la construction de modèles de mouvement de robots basés sur le lidar, le gyroscope, l'odométrie, la vision et d'autres fusions d'informations

Exigences de compétences :Une introduction complète aux postes de conduite autonomes : le chapitre le plus complet de lhistoire

    Apprenez les algorithmes VSLAM couramment utilisés, tels que ORB-SLAM, SVO, DSO, MonoSLAM, VINS et RGB-D, etc.
  • Système d'exploitation du robot ROS ;
  • Nécessite une connaissance des algorithmes de filtrage : ESKF, EKF, UKF, etc. ; ceres et d'autres frameworks C++ utilisés pour optimiser les fonctions d'erreur non linéaires.
  • 2.3. Ingénieur en algorithme de fusion multi-capteurs
    • Présentation du poste :
    • Traiter et fusionner les informations provenant de plusieurs capteurs tels que les caméras, le lidar et le radar à ondes millimétriques pour améliorer les capacités de perception environnementale des véhicules à conduite autonome
    • Responsable de la détection, du suivi et du suivi des cibles ; sur la fusion d'informations multi-sources. Identification et positionnement ;
    • est responsable de l'extraction de caractéristiques environnementales basée sur la fusion d'informations multi-sources, fournissant un support à la construction de cartes et fournissant un support à la navigation et au positionnement basés sur la fusion d'informations multi-sources.
    • Exigences de compétences :
    • Caméra principale, radar à ondes millimétriques, lidar, navigation inertielle et autres algorithmes d'analyse et de fusion de données connexes 
    • Baccalauréat ou supérieur en sciences de l'information informatique, en génie électronique ou en mathématiques, avec un ordinateur solide ; théorie Base
    • modèle de caméra de précision, géométrie multi-visuelle, principes d'ajustement des bundles, expérience en SfM, télémétrie géométrique et autres projets
    • Maîtrise de C/C++, familiarité avec Matlab, bonnes idées de programmation orientée objet et habitudes de codage
    • Familiaire avec IMU, GPS, DR et d'autres cadres d'algorithmes de positionnement de navigation inertielle
    • Familier avec IMU, GPS, principes du système corporel, caractéristiques matérielles, algorithmes d'étalonnage

    2.4.4. Ingénieur en algorithmes d'apprentissage automatique

    • Présentation du poste :
    • Cette direction est principalement responsable de la conduite des véhicules. L'application des données générées dans le processus en ingénierie est orientée vers la direction de l'analyse des données, telle que l'analyse d'impact du kilométrage du véhicule, la modélisation de l'analyse des mégadonnées, etc.
    • Exigences de compétences :
    • Python, C/C++
    • Apprendre les algorithmes théoriques de base de l'apprentissage automatique, tels que LR, GBDT, SVM, DNN, etc.
    • Apprendre la formation de modèles de cadres d'apprentissage automatique traditionnels tels que scikit ; -apprendre ;
    • Familier avec les frameworks d'apprentissage profond tels que PyTorch, TensorFlow (partiellement sur les réseaux de neurones), etc.

    2.5. Ingénieur en algorithme de vision par ordinateur

    Une introduction complète aux postes de conduite autonomes : le chapitre le plus complet de lhistoire

    • Introduction au poste :
    • Cette direction est principalement basée sur des capteurs de caméra, comprenant principalement : la détection de lignes de voie, la détection de véhicules et autres obstacles, la détection de zones carrossables, feux de circulation En attente de la détection des informations routières, etc.
    • Exigences de compétences :
    • C/C++, Python, OpenCV ;
    • Nécessite des algorithmes de base d'apprentissage automatique (réduction de dimensionnalité, classification, régression, etc.)
    • Besoin d'apprendre le deep learning, le framework d'apprentissage profond ;
    • Apprendre l'informatique Méthodes courantes de vision et de traitement d'images (détection d'objets, suivi, segmentation, reconnaissance de classification, etc.).

    2.6. Ingénieur en algorithmes de traitement du langage naturel

    • Présentation du poste :
    • Cette direction est principalement responsable de la reconnaissance vocale dans les scénarios de véhicules, de la conception d'interactions vocales, etc.
    • Exigences de compétences :
    • Apprendre Algorithme d'apprentissage automatique, algorithme d'apprentissage profond (RNN)
    • Tâches de base du traitement du langage naturel (segmentation de mots, marquage de parties du discours, analyse syntaxique, extraction de mots clés)
    • Besoin d'utiliser des méthodes d'apprentissage automatique telles que le clustering, la classification, régression, tri et autres modèles pour résoudre des problèmes de gestion de texte ;
    • Familial avec les frameworks d'apprentissage profond tels que PyTorch, TensorFlow (partie partiellement RNN), etc.

    2.7. Ingénieur en algorithme de décision

    Une introduction complète aux postes de conduite autonomes : le chapitre le plus complet de lhistoire

    • Introduction au poste :
    • La prise de décision en matière de conduite autonome consiste à convertir les informations transmises par le module de détection en comportement du véhicule pour atteindre l'objectif de conduite. Par exemple, l'accélération, la décélération, le virage à gauche, le virage à droite, le changement de voie et les dépassements sont tous des résultats du module de prise de décision. Les décisions doivent prendre en compte la sécurité et le confort de la voiture, garantir la sécurité des passagers et atteindre la destination le plus rapidement possible.
    • Exigences de compétences :
    • c/c++/python, familier avec le système ROS ;
    • Apprendre les algorithmes de prise de décision couramment utilisés, tels que les machines à états de décision, les arbres de décision, les processus de décision de Markov, POMDP, etc. ; Si vous allez plus loin Si vous voulez apprendre, vous devez être familier avec les algorithmes d'apprentissage automatique (RNN, LSTM, RL), maîtriser au moins un cadre d'apprentissage profond (comme gym ou univers et autres plateformes d'apprentissage par renforcement profond
    • ) ; être familier avec les modèles de cinématique et de dynamique des véhicules.
    • 2.8. Ingénieur en algorithme de planification

    Une introduction complète aux postes de conduite autonomes : le chapitre le plus complet de lhistoire

    • Présentation du poste :
    • La planification comprend la planification du trajet et la planification de la vitesse
    • Dans l'algorithme de planification, le véhicule autonome détermine d'abord le chemin que le véhicule peut parcourir grâce à la planification du chemin, puis sélectionne le chemin pour déterminer la vitesse de déplacement.
    • Exigences de compétences :
    • c/c++/python, système d'exploitation de robot ROS (certaines entreprises sont développées en utilisant Matlab/simulink)
    • Apprendre des algorithmes de planification de chemin communs, tels que A, D, RRT, etc. ;
    • Apprenez certaines méthodes de représentation de courbes, telles que : courbe quintique, Clothoïde, spline cubique, B-spline, etc.
    • Si vous souhaitez en savoir plus, apprenez les algorithmes de prédiction de trajectoire, tels que MDP, POMDP, Came Theory, etc. .;
    • Apprendre les technologies de deep learning et d'apprentissage par renforcement est également un plus, comme RNN, LSTM, Deep Q-Learning, etc.
    • Avoir une base et une formation théoriques mathématiques, et être familier avec les modèles cinématiques et dynamiques des véhicules.

    2.9. Ingénieur en algorithme de contrôle

    Une introduction complète aux postes de conduite autonomes : le chapitre le plus complet de lhistoire

    • Présentation du poste :
    • Généralement, il est utilisé pour modéliser la dynamique horizontale et verticale du véhicule, puis développer des algorithmes de contrôle pour réaliser le contrôle du mouvement du véhicule, etc.
    • Ce poste a plus à voir avec les véhicules, et convient aux constructeurs automobiles traditionnels pour se transformer dans le domaine de la conduite autonome. Pour les partenaires, c'est une bonne opportunité d'entrer.
    • Exigences de compétences :
    • C/C++, Matlab/Simulink
    • Apprendre les bases de la théorie du contrôle automatique et de la théorie du contrôle moderne
    • Apprendre les algorithmes PID, LQR, MPC
    • Apprendre les modèles cinématiques et dynamiques des véhicules ; une certaine compréhension du châssis de la voiture ;
    • Apprendre des logiciels de simulation tels que CarSim
    • Apprendre le développement de fonctions auxiliaires de conduite telles que ACC, AEB, APA, LKA, LCC, etc. est un bonus
    • Avoir un véritable débogage de véhicule ; l'expérience est également un plus.

    3. Ingénieur non-algorithme

    3.1. Ingénieur de développement de plate-forme logicielle

    • Introduction au poste :
    • Concevoir et mettre en œuvre une plate-forme logicielle de conduite autonome, y compris la modification/extension du noyau, la mise en œuvre/l'amélioration du pilote, implémentation/amélioration du middleware, intégration du système, optimisation des performances/consommation d'énergie, tests de stress/stabilité/conformité ;
    • Responsable de la construction de l'architecture du système et de l'écriture des pilotes sous-jacents ; , DSP, ARM et autres plateformes) ;
    • Aider les ingénieurs en algorithmes à terminer la transplantation, l'intégration, les tests et l'optimisation des algorithmes sur les plateformes embarquées.
    • Exigences de compétences :
    • Compétences en programmation C/C++, Python ;
    • Avoir une expérience en développement de noyaux ou de pilotes de systèmes d'exploitation embarqués et de systèmes d'exploitation temps réel, familier avec QNX, ROS ;
    • Familial avec le débogage et le débogage de logiciels ; outils de débogage ;
    • Comprendre les calculateurs et capteurs ADAS des véhicules, tels que les radars, les caméras, les ultrasons et le lidar ;
    • Familiarisé avec le service de diagnostic universel (UDS), le réseau de zone de contrôleur (CAN) ; , DoIP, SOME/IP , DDS, MQTT, REST, etc.) est un plus.
    • 3.2. Ingénieur système

    Introduction au poste :

    • Responsable de la connexion des besoins des clients avec les développeurs internes Responsable de la construction du cadre du système logiciel de conduite autonome ; , Conception d'architecture logicielle système vérifiable et optimisation des performances en temps réel ;
    • Travailler avec les équipes de matériel, d'algorithmes et de tests pour intégrer et optimiser les systèmes de conduite autonomes ;
    • Exigences de compétences :
    • Avoir de solides connaissances théoriques de base en informatique (telles que : contrôle automatique, reconnaissance de formes, apprentissage automatique, vision par ordinateur, traitement de nuages ​​de points)
    • Avoir le noyau du système d'exploitation embarqué et le temps réel ; Expérience en développement de système d'exploitation ou de pilote ;Avoir de bonnes compétences en communication et une conscience du travail d'équipe
    • 3.3.3.3. Ingénieur en sécurité fonctionnelle

    Introduction au poste :

    Supporter la sécurité fonctionnelle du produit tout au long du cycle de vie du produit
    • . Responsable de la conception des systèmes de sécurité fonctionnelle des produits de systèmes de conduite sans pilote/autonome et proposer des suggestions d'amélioration des processus existants ; Responsable de l'analyse des dangers (HARA, FMEA, FMEDA, FTA) des systèmes de conduite sans pilote/autonome ; Définition des objectifs de sécurité pour les systèmes de conduite sans pilote/autonome ;
    • Responsable de la définition des exigences de sécurité pour les systèmes de conduite sans pilote/autonome ;
    • Exigences de compétences :
    • Maîtrise de la norme ISO26262 et expérience dans la mise en œuvre de projets de sécurité fonctionnelle pour la conduite autonome ; ou les systèmes ADAS ; (Ceux qui travaillent dans la sécurité fonctionnelle dans les usines automobiles traditionnelles et souhaitent changer de carrière peuvent également envisager
    • Comprendre FMEA, FMEDA, FMEA-MSR, FTA et autres méthodes correspondantes 
    •  ;
    • Introduction au poste :

    Responsable de l'étalonnage de multi-capteurs pour la conduite autonome, notamment GPS, IMU, LiDAR, caméra, radar et USS, etc. Concevoir et mettre en œuvre des algorithmes d'étalonnage des paramètres internes et externes des capteurs ; , et construire un système d'étalonnage multi-capteurs ;

      Responsable des tests pertinents des paramètres d'étalonnage du véhicule, en fournissant un rapport de test.
    • Exigences de compétences :
    • Programmation C++, familier avec les systèmes Linux et ROS;
    • Avoir une expérience en étalonnage de capteurs, familier avec les algorithmes SLAM visuels ou laser
    • Ingénieur en environnement de simulation 3.5
    • ;
      • Introduction au poste :
      • Cette orientation nécessite de participer à la construction de systèmes de simulation liés à la conduite autonome, y compris des simulations liées à la dynamique des véhicules, la modélisation et la simulation de divers modèles de capteurs virtuels et de scènes virtuelles, la construction de scénarios de test basés sur des cas de test , et exécuter des tests de simulation d'algorithmes de conduite autonome, etc. ;
      • Responsable de la construction d'un système de simulation de conduite autonome et de la réalisation de simulations logicielles de voitures, de capteurs et d'environnements. Les résultats de la simulation seront utilisés avec des données réelles pour prédire le comportement de la voiture dans des scénarios réels.
      • Coopérer avec des modules tels que la prise de décision de conduite, la planification de trajectoire et les algorithmes de simulation pour réaliser une simulation en boucle fermée de la conduite autonome et visualiser informations de débogage pertinentes.
      • Exigences de compétences :
      • MATLAB/simulink, Python/C++
      • Maîtrise de l'exploitation d'un logiciel commun de simulation de dynamique de véhicule ou de véhicule sans pilote, tel que Perscan, Carsim, Carmaker, etc.
      • Familiarité avec le système d'exploitation de robot ; ROS, etc. ;
      • Certains postes de simulation sont uniquement destinés à la simulation, mais certains postes nécessitent le développement d'environnements de simulation. Ces postes auront des exigences de programmation plus élevées.

      3.6 Ingénieur de Test

      • Introduction au poste :
      • Cette direction est principalement responsable des travaux de test connexes des véhicules autonomes, testant les performances de divers indicateurs des fonctions du système de conduite autonome et évaluant ses conditions aux limites et modes de défaillance ;
      • Responsable de la conception et de la mise en œuvre des tests automatisés (SIL, HIL) et de la vérification associée des produits de conduite intelligente ;
      • Responsable de la formulation de cas de test et de plans de test basés sur les exigences fonctionnelles du système ou du produit ;
      • Responsable de la formulation et de la mise en œuvre d'un plan de test complet d'un système ou d'un produit, et enfin de la rédaction d'un rapport de test ;
      • Collecter et tester des exemples limites du système, évaluer la sécurité du système de conduite intelligente et fournir des commentaires raisonnables sur la technologie ;
      • Exigences de compétences :
      • Familier avec le système d'exploitation Ubuntu/Linux, capable d'écrire des scripts python
      • Familier avec le bus CAN
      • Familier avec les méthodes et techniques d'écriture de cas de test
      • Familier avec les algorithmes de reconnaissance d'images et l'apprentissage profond ; , et maîtriser Spark Points bonus pour ceux qui sont intéressés par les outils liés au Big Data
      • Une connaissance de l'application du radar laser, du radar à ondes millimétriques, des sondes à ultrasons et des caméras est un bonus ;

      3.7 Ingénieur de développement Big Data

      • Introduction au poste :
      • Les données incluent l'architecture des données d'arrière-plan et la présentation frontale. Un véhicule autonome génère 1 téraoctet de données chaque jour. Comment nettoyer, affiner et résumer rapidement les données, par exemple comment trouver rapidement les désengagements les plus importants lors d'un test de conduite. Cela aide les ingénieurs à tester plus efficacement.
      • Responsable de la conception, du développement et de l'optimisation du système de plateforme Big Data de conduite autonome ;
      • Responsable du développement d'outils visuels pour les processus d'annotation et de traitement des données de conduite autonome, ainsi que de la conception et du développement de plateformes d'annotation automatisées.
      • Exigences de compétences :
      • Avoir une base solide en structures de données et en algorithmes ;
      • Maîtriser au moins un langage de programmation de haut niveau tel que Java/Python/C++ ;
      • Familier avec l'environnement de développement Linux ; Avoir une expérience basée sur la conception et le développement d'applications de bases de données SQL ou No-SQL ;
      • Familier avec les services REST et les normes Web, familier avec un cadre de développement front-end grand public, tel que React/AngularJS, points supplémentaires pour ceux qui peuvent créer de manière indépendante applications frontales ;
      • Familier avec la conduite autonome et les données Lidar, Caméra et autres capteurs associées recevront des points supplémentaires.
      • 3.8 Ingénieur de développement d'interface utilisateur

      Présentation du poste :
      • Chaque entreprise doit créer des outils internes pour vérifier le développement des véhicules. Il est également nécessaire de créer diverses pages interactives pour que le centre de contrôle à distance puisse contrôler à distance le véhicule autonome via une interface utilisateur. Il comprend également l'interface utilisateur préparée pour les passagers du transport. Les amis qui aiment le design ou qui sont bons en front-end peuvent l'envisager.
      • Exigences de compétences :
      • Posséder une excellente esthétique et une expression visuelle riche ;
      • Maîtriser les principes et méthodes de conception des couleurs, des graphiques, des informations et des interfaces graphiques ;
      • 4. Fin

      Enfin, les politiques nationales promeuvent vigoureusement les nouveaux véhicules intelligents en termes d'énergie, et nous espérons que de plus en plus de partenaires rejoindront l'industrie de la conduite autonome.

      Lien original : https://mp.weixin.qq.com/s/d41a5VYtJ4lvMP3GO6In_gUne introduction complète aux postes de conduite autonomes : le chapitre le plus complet de lhistoire

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer