La revue sera utile pour ceux qui sont engagés dans des robots physiques et pour lesquels l'arduino est devenu insuffisant, ainsi que pour les personnes qui souhaitent mettre en œuvre l'une des fonctions de perception du monde extérieur dans leurs robots ou appareils.
Misty Robot de Misty Robotics au CESSelon l'objectif du robot, il doit résoudre divers problèmes. Il arrive qu'un contrôleur et, par exemple, les capteurs les plus simples soient suffisants pour les résoudre. Cependant, il est parfois nécessaire que le robot puisse effectuer des tâches non pas selon des coordonnées codées en dur, mais en fonction de l'état de l'espace ou de la zone de travail environnant. Il devient alors nécessaire d'utiliser des capteurs plus complexes, tels que des caméras ou des lidars, et d'utiliser des algorithmes spéciaux pour traiter les informations entrantes.
Vision et compréhension
Voir et comprendre ce qui est vu est la première fonction qui peut nous venir à l'esprit.
Détection d'objets
Vous permet de trouver des objets de types spécifiés dans le champ de vision.
Exemple d'algorithmeSuivi des objets
Vous permet de suivre le mouvement d'un objet ou des objets dans le champ de vision.
Exemple d'algorithmeSegmentation
Vous permet de déterminer pixel par pixel le contenu du champ de vision.
Exemple d'algorithmeÉvaluation de la profondeur
Vous permet d'identifier les obstacles sur le chemin et la distance qui les séparent à l'aide de la vision par ordinateur.
Exemple de fonctionnement d'algorithme
Un exemple d'algorithme pour une caméra conventionnelleExemple d'algorithme pour une caméra stéréoSi les conditions de travail de votre robot vous permettent d'utiliser des caméras de profondeur avec un éclairage infrarouge actif, comme Intel Realsense, vous pouvez utiliser le
SDK propriétaire .
Mouvement et prise de décision
La plupart des robots physiques, qu'il s'agisse d'un manipulateur, d'un robot mobile ou de toute autre chose, doivent se déplacer d'une manière ou d'une autre dans l'espace. Et parfois dans le processus de ces mouvements, surtout si les conditions ou l'environnement de fonctionnement peuvent changer de manière significative, le robot doit changer la trajectoire et la vitesse du mouvement.
Orientation spatiale
Vous permet de déterminer les coordonnées de l'emplacement du robot dans l'espace, y compris à l'intérieur des bâtiments.
Exemple d'algorithmePrendre des décisions en se déplaçant
Permet au robot mobile de prendre des décisions sur les manœuvres nécessaires pour optimiser la trajectoire de mouvement dans un environnement dynamique. L'algorithme utilise l'
apprentissage par renforcement .
Exemple d'algorithmeCapturez et manipulez des objets
Permet au bras robotique de prendre des décisions sur les actions nécessaires nécessaires pour capturer des objets de formes diverses. L'algorithme utilise également l'apprentissage par renforcement.
Exemple d'algorithmeFonctions d'implémentation pour les robots
Performances
Les algorithmes décrits dans cet article sont voraces en termes de calcul et nécessitent le plus souvent un GPU. Par conséquent, en fonction des exigences des conditions de fonctionnement du robot, le développeur doit choisir une option de conception et optimiser le code.
Options possibles:
- l'informatique sur un PC personnel dédié
- le cloud computing
- calculs à bord
Le choix effectué dictera ses exigences en termes d'équipement et d'optimisation d'algorithme.
L'interaction
Un algorithme pour résoudre un problème n'est souvent pas suffisant. Par conséquent, lors de l'utilisation d'algorithmes dans des robots, les développeurs devront faire face à la tâche d'intégration, c'est-à-dire Il est nécessaire d'assurer l'interaction avec d'autres algorithmes et logiciels.
Au lieu de la sortie
Travaillant dans une entreprise développant des logiciels pour robots, il faut souvent faire face à divers robots et algorithmes, ainsi qu'à trouver de nouvelles approches pour résoudre des problèmes complexes. J'ai remarqué récemment que l'intérêt pour les fonctions liées à la sécurité et la possibilité de fonctionnement autonome des mécanismes a augmenté, en particulier dans le voisinage immédiat des personnes.
La revue présentée contient une liste loin d'être exhaustive de tâches et d'algorithmes. À titre d'exemples, un algorithme est sélectionné par l'auteur. Notez également que toutes les tâches présentées peuvent être résolues de nombreuses autres manières et / ou en utilisant d'autres algorithmes. Si vous avez à portée de main d'autres exemples de tâches avec des algorithmes, laissez-les dans les commentaires.
PS: Pour le dessert - une belle vidéo de «sous le ciel» avec un robot à roues et un système de prise de décision à bord