Détecter les obstacles et sécuriser le robot
Le robot de livraison partage l'entrepôt avec des chariots et des personnes. Vous partez du capteur : l'état de l'art du lidar, ce qu'il mesure et où il se trompe, et la lecture d'un scan. Viennent ensuite le filtrage des mesures, la détection d'un obstacle et son regroupement en objets, puis les nœuds à cycle de vie, pour écrire un gardien de sécurité qui ralentit puis arrête le robot, et un démarrage et un arrêt propres. Tout se vérifie dans le simulateur léger, en 2D dans le navigateur, y compris quand le lidar tombe en panne.
Fil rouge : Le robot de livraison s'arrête à temps, même quand son capteur se tait.
Notion de génie logiciel : Capteurs, robustesse et cycle de vie des nœuds : un logiciel qui échoue en sécurité.
lidarLaserScannœuds lifecyclesimulateur 2D
Cours, terminal, éditeur et simulateur : rien à installer.
Commencer le module 1Accès au parcours : le prix et le fonctionnement sont sur la page Tarifs
Programme
- Le capteur
-
1
Lire un lidar 1 h 30 · L'état de l'art du lidar, puis la pratique : comment il mesure une distance (temps de vol, triangulation, phase, FMCW) et balaie la scène, comment lire sa fiche technique, où il se trompe, et comment lire un message LaserScan pour trouver l'obstacle le plus proche du robot.
-
2
Filtrer les mesures 1 h 30 · Un vrai lidar renvoie du bruit, des zéros, des NaN et des échos fantômes. Écrire une chaîne de filtres qui garde le format LaserScan : validité, médiane spatiale, médiane temporelle, en mesurant ce que chaque filtre coûte, y compris les vrais obstacles qu'il peut effacer.
- Détecter
-
3
Détecter un obstacle 1 h 30 · Passer des points du lidar à une décision : un couloir devant le robot, une distance d'arrêt calculée, trois états (libre, ralentir, arrêt) avec hystérésis pour ne pas clignoter, et un message ROS 2 à soi pour publier l'état.
-
4
Regrouper les points en obstacles 1 h 30 · Passer de 360 points à quelques obstacles : découper le scan là où deux voisins s'écartent, avec un seuil qui grandit avec la distance, recoller le début et la fin d'un tour complet, écarter les petits groupes, puis décrire chaque obstacle (centre, largeur, distance) et le publier.
- Sécuriser le robot
-
5
Le cycle de vie d'un nœud 1 h 30 · Un nœud qui démarre quand on le lui demande : les états et transitions d'un nœud à cycle de vie (lifecycle), les rappels on_configure, on_activate, on_deactivate, on_cleanup et on_shutdown, la vérification des paramètres à la configuration, et le détecteur d'obstacles piloté depuis la ligne de commande.
-
6
Le gardien de sécurité 1 h 30 · Un nœud à cycle de vie qui se place entre la commande et le robot : il plafonne la vitesse selon l'état de la route, coupe l'avance devant un obstacle, et arrête le robot quand le détecteur ou la commande se taisent. Défense en profondeur, échec en sécurité, et pannes simulées dans le lab.
-
7
Démarrer et arrêter proprement 1 h 30 · Un gestionnaire qui démarre les nœuds à cycle de vie dans l'ordre (tout configurer, puis tout activer), défait ce qui a été fait si une configuration échoue, surveille les nœuds et met le robot en sécurité si l'un disparaît, puis les arrête dans l'ordre inverse. Avec un fichier de lancement pour tout démarrer d'une commande.