L’Add-in Smart Motion est un planificateur de mouvement qui vous aide à créer automatiquement des parcours sûrs permettant à votre robot de se déplacer d’un point à un autre sans collision. Il utilise un algorithme d’évitement de collision afin de garantir la recherche rapide d’une solution sans collision.

Remarque : assurez-vous que l’Add-in Smart Motion est bien installé et activé.
Vous pouvez ouvrir le menu Smart Motion en vous rendant dans Utilitaires➔ Smart Motion, puis en cliquant sur « Générer un parcours sans collision ».

Une autre façon d’ouvrir ce menu consiste à cliquer sur la première icône « Smart Motion » (la plus à gauche) dans la barre d’outils.


Vous pouvez également y accéder via le menu déroulant « Vérification des collisions » de la barre d’outils.

Vous devez vous assurer que votre projet RoboDK est correctement configuré pour utiliser efficacement le planificateur Smart Motion.
Votre projet doit inclure les éléments suivants :
1.Robot : un bras robotisé. Dans notre exemple, nous utilisons le robot Comau Smart5 NJ 130-2.6.

2.Outil : un ou plusieurs outils (CDO). L'exemple de soudage par points utilisera le pistolet de soudage par points OBARA.
Remarque : l’outil « Pistolet de soudage par points OBARA » porte l’extension de fichier .robot (au lieu de .tool), car nous pouvons ainsi illustrer son mécanisme d’ouverture/fermeture.

3.Objets : au moins un objet (obstacle) doit être présent dans l’espace de travail pour permettre l’évitement des collisions. Dans ce cas, nous avons utilisé un châssis de voiture personnalisé, ainsi qu’un support de châssis de voiture et un rail de châssis de voiture.

4.Cibles : les emplacements de départ et d’arrivée du parcours généré doivent être définis à l’aide de cibles. Ainsi, au moins deux cibles doivent être présentes dans la station. L’exemple contient des cibles d’approche/de retrait à l’avant et à l’arrière, ainsi que quelques cibles à l’intérieur du châssis de voiture, là où le soudage par points doit avoir lieu.

Pour créer un parcours sécurisé à l’aide de Smart Motion, sélectionnez les cibles vers lesquelles le robot doit se déplacer, puis cliquez sur « Générer le parcours ». L’Add-in effectue les calculs à votre place.
Nous allons utiliser l’exemple de soudage par points suivant pour illustrer le fonctionnement de l’Add-in Smart Motion : soudage par points avec Comau. Cet exemple comprend les 4 composants décrits précédemment.
Ce projet comprend également des parcours sans collision sous forme de scripts créés à l’aide du plug-in PRM. Afin de présenter l’Add-in Smart Motion, nous supprimons ces programmes qui ont été créés automatiquement à l’aide du plug-in PRM :
●AppFrontPg
●AppRearPg
●HomePg
●HomeToAppFront
●AppRearToHome
●AppFrontToAppRear
●AppRearToAppFront
●Main
Astuce : vous trouverez un exemple de soudage par points ici : Exemple de soudage par points. Cet exemple présente les étapes détaillées de création de la station et vous aidera également à vous familiariser avec la carte de collision et la détection de collision.

Pour utiliser l’Add-in, procédez comme suit :
1.Ouvrez le sélecteur de cibles : cliquez sur le bouton « Sélectionner les cibles » dans le menu Smart Motion pour ouvrir la fenêtre de sélection. Ces cibles définissent le parcours que vous souhaitez générer.


2.Choisissez et organisez les points : sélectionnez les cibles que vous souhaitez utiliser dans la section « Cibles disponibles » située à gauche, puis cliquez sur le bouton « >> » pour les déplacer vers la section « Cibles sélectionnées » située à droite. Vous pouvez modifier leur ordre à droite (par glisser-déposer) afin de déterminer où le robot se rendra en premier. Une fois les cibles sélectionnées, vous pouvez valider votre sélection à l’aide du bouton « OK ».

Astuce : vous pouvez également « désélectionner » des cibles en les déplaçant de la section « Cibles sélectionnées » vers la section « Cibles disponibles » à l’aide du bouton <<.
3.Choisissez la qualité du parcours : déplacez le curseur « Qualité du parcours ». Utilisez le réglage « Grossier » pour des vérifications rapides, ou déplacez-le vers « Fin » pour vous assurer que le robot inspecte les espaces restreints en toute sécurité.
Remarque : un parcours plus précis prendra plus de temps à générer, mais garantira l’absence de collision. Cette option est recommandée lorsque votre station comprend des objets plus fins qui risqueraient de ne pas être pris en compte lors de la création d’un parcours moins précis.

4.Créez le parcours : cliquez sur le bouton « Générer le parcours ». L’outil créera un déplacement en toute sécurité entre chaque paire de points de votre liste.


Astuce : accédez facilement à l’option « Générer un parcours sans collision » de Smart Motion en sélectionnant plusieurs cibles dans l’arborescence de la station elle-même, puis en cliquant simplement avec le bouton droit n’importe où sur la sélection. Veillez à sélectionner ces cibles en respectant l’ordre dans lequel elles apparaissent dans le parcours généré. Cela constitue une solution en un seul clic, avec moins d’étapes et un processus plus rapide.

Vous pouvez également « lier des éléments » en sélectionnant plusieurs cibles dans l’arborescence des stations (dans l’ordre requis) et en cliquant sur l’icône « Lier les éléments sélectionnés » dans la barre d’outils (la deuxième icône ou celle située l’extrême droite de Smart Motion).
Lorsque vous configurez un parcours de mouvement via le menu du sélecteur de cibles, une liste des points disponibles est transférée dans la liste « Cibles sélectionnées ». À côté de certains de ces éléments sélectionnés, une case à cocher intitulée « Approche » peut être activée ou désactivée.
Ces cases à cocher servent d’indications intelligentes pour le solveur de planification de parcours.
●Lorsqu’elles ne sont pas cochées (Arrêt standard) : le robot considère la cible comme une destination stricte. Il planifiera un parcours complet du point A au point B, puis un tout nouveau parcours du point B au point C. Le robot s’engagera pleinement à arriver exactement au point B avant d’envisager l’étape suivante.
●Lorsqu’elle est cochée (« Passage » ou « Point d’approche ») : le fait de cocher cette case indique au solveur que ce point n’est qu’un « tremplin » temporaire ou une porte d’entrée sur le chemin menant à la véritable destination. Au lieu de diviser le déplacement en segments distincts et rigides (de A à B, puis de B à C), le solveur évalue l’ensemble de la chaîne (A➔ B➔ C) comme une seule séquence fluide.
Le fait de marquer une cible d'approche modifie complètement la manière dont l'outil « Simplify Program » optimise le parcours :
●Prise de virage fluide : comme le solveur sait que le robot n’a pas besoin de s’arrêter complètement au point d’approche, il enchaîne les mouvements en douceur. Le robot se déplace vers le point d’approche et se dirige avec élégance vers sa destination finale sans « saccades » ni arrêt brusque.
●Nettoyage agressif : lorsque l’outil de simplification traite un parcours à plusieurs points, il peut réaliser l’ébavurage des mouvements superflus et encombrants bien plus efficacement s’il peut anticiper l’ensemble de la séquence plutôt que d’interrompre ses calculs à chaque cible intermédiaire. Il en résulte un nombre réduit de lignes de code, une vitesse constante du robot et des temps de production globaux plus courts.
Le Add-in Smart Motion propose également des options supplémentaires permettant d’affiner la solution en fonction de vos besoins. Ces options vous permettent de personnaliser certains paramètres qui influent sur les résultats finaux ou sur le parcours généré.
La rotation du CDO peut être limitée à l’aide de l’option « Autoriser une rotation Z de l’outil de +/- » dans le menu. Si cette option est activée, les rotations X et Y sont verrouillées tandis que la rotation Z est limitée à la valeur sélectionnée (par exemple, +/- 45°).
Cette fonctionnalité fonctionne à l’inverse de l’option « Espace contraint » : elle oblige le solveur à opérer dans l’espace cartésien afin de restreindre l’orientation de l’outil. Elle verrouille les rotations X et Y, tandis que la rotation autour de l’axe Z peut être limitée à une plage de degrés spécifique (plus ou moins une valeur définie). Si la valeur de ce champ est définie sur « 0 », la rotation Z est également verrouillée, tout comme les rotations X et Y. Pour que les rotations des trois axes (X, Y et Z) restent déverrouillées, utilisez la valeur « -1 » dans cette option.
Si l’option « Espace contraint » est activée, le robot tentera de passer par une ouverture étroite ou de travailler dans un environnement encombré. Ce paramètre impose l’utilisation de l’algorithme dans l’espace d’articulation (plutôt que dans l’espace cartésien), ce qui garantit que la configuration testée est bien celle qui sera utilisée. Ceci est essentiel pour les morphologies de robots où les poses cartésiennes peuvent donner lieu à plusieurs configurations d’articulation possibles, ce qui peut entraîner des problèmes lors de la génération de parcours. En imposant l’espace d’articulation, le système garantit que le parcours identifié est unique et sans collision.
Remarque : cela peut légèrement augmenter le temps de calcul initial lorsque le parcours est très serré.
Vous pouvez également ouvrir les paramètres de la carte de collision de RoboDK en cliquant sur le bouton « Collision Map » dans le menu de Smart Motion. Une carte de collision correctement configurée garantit que l’Add-in calcule un parcours sans collision en se référant à la matrice de collision.

Remarque : avant de générer un parcours, utilisez cette option pour définir les objets que le robot doit éviter.
L’option « Simplifier le programme sélectionné » permet à l’utilisateur de réduire le nombre d’instructions d’un programme tout en évitant les collisions. En d’autres termes, elle simplifie un programme déjà créé afin de réduire le nombre de cibles sur le parcours tout en garantissant que le parcours reste exempte de collision.
Cela s’avère utile dans les cas suivants :
1.Réduit la taille du programme : il analyse le parcours et supprime les cibles superflues. Ceci est essentiel pour les anciens contrôleurs de robot dont la mémoire est limitée et qui ne peuvent stocker qu’un certain nombre de lignes de code.
2.Mouvement plus fluide : en supprimant les points redondants, vous évitez que le robot ne « bégaye ». Les contrôleurs peuvent parfois avoir des à-coups ou ralentir s’ils reçoivent trop de commandes pour une même petite zone ; la simplification du parcours aide le robot à maintenir une vitesse plus constante et plus fluide.
3.Exécution plus rapide : un programme simplifié se traduit souvent par des temps de cycle plus courts, car le contrôleur du robot n’a pas à traiter autant de points, ce qui lui permet de se concentrer sur le maintien de la vitesse programmée.
4.Nettoyage des parcours « encombrés » : si le programme est créé à partir d’un enregistrement de mouvements ou de l’importation d’un parcours CAO dense, il peut comporter des centaines de points superflus. Cet outil « nettoie » ces données tout en garantissant que le nouveau parcours, plus court, évite toujours toutes les collisions.
5.Préserve la sécurité de la configuration : à l’instar du reste de la solution Smart Motion, le processus de simplification respecte la configuration du robot. Il garantit que, lors de la suppression de points, le robot ne tente pas accidentellement de modifier sa configuration (comme un basculement du coude) d’une manière susceptible de provoquer une collision.
Smart Motion ne se limite pas à relier des cibles ; il peut également faire le lien entre des programmes autonomes distincts. Cette fonctionnalité est particulièrement utile pour enchaîner des opérations complexes, telles que le passage d’une séquence de préhension à un parcours d’usinage sans intervention manuelle.
Pour utiliser cette fonctionnalité, sélectionnez des éléments de programme distincts dans l’interface du sélecteur de cibles afin de calculer des parcours de transition sûrs entre l’état final du premier programme et l’état initial du second.

L'Add-in relie deux programmes en identifiant le dernier mouvement du premier programme et le premier mouvement du programme suivant, générant ainsi efficacement un parcours de liaison entre les deux.
Dans RoboDK, Smart Motion et le planificateur de mouvement sans collision (PRM) sont tous deux conçus pour aider un robot à se déplacer sans heurter d’obstacles. Cependant, ils utilisent des calculs et des flux de travail différents pour y parvenir.
La fonctionnalité de planification de mouvement du planificateur de mouvement sans collision crée automatiquement des parcours sans collision dans l’espace de travail du robot à l’aide d’un algorithme de planification de mouvement appelé « probabilistic roadmaps » (PRM).
La principale différence entre ces deux planificateurs de mouvement réside dans l’ampleur du travail de préparation nécessaire avant que le robot ne se déplace.
Le planificateur PRM est un outil qui fonctionne comme la construction d’un réseau routier permanent. Il exécute d’abord une « phase de construction », durant laquelle il passe plusieurs minutes à placer des points de manière aléatoire et à tenter de les relier pour former une carte routière géante. Une fois cette carte terminée, la recherche d’un parcours est instantanée car les « routes » sont déjà construites. Cependant, si vous déplacez ne serait-ce qu’une table, une boîte ou tout autre objet présent dans la station, la carte entière devient inutilisable et vous devez la reconstruire à partir de zéro.
Smart Motion est conçu pour être beaucoup plus flexible. Il n’y a pas d’étape fastidieuse de création de carte. Il analyse précisément où se trouve le robot et où il doit se rendre, puis trouve un « tunnel » sûr à travers les obstacles. Il s’agit d’un processus en une seule étape : sélectionnez les points (cibles), cliquez sur « Générer », et le robot se déplace. Si vous déplacez un objet dans votre Cellule, il vous suffit de cliquer à nouveau sur « Générer un parcours » sans attendre la création d’une nouvelle carte.
Remarque : Smart Motion s'avère plus efficace à cet égard, car il permet de maintenir la fluidité du flux de travail. Vous n'avez pas besoin de vous arrêter pendant 15 minutes pour « remapper » à chaque fois qu'une petite modification est apportée à la configuration de la station.
La rapidité de la planification de trajectoire ne se résume pas à la vitesse à laquelle le robot se déplace, mais dépend également du temps que met le planificateur à effectuer ses calculs.
La « phase de requête » du planificateur PRM (recherche du parcours sur la carte) est très rapide, mais elle s’accompagne d’une « phase de construction » très longue. C’est idéal si la station reste toujours statique, mais cela prend du temps en cas de modifications fréquentes.
Smart Motion utilise un algorithme incroyablement rapide pour résoudre un problème simple de type « de A à B ». Il commence à rechercher le parcours à partir des deux extrémités simultanément, et les points de départ se rejoignent au milieu. Cela rend le « temps de réflexion » pratiquement imperceptible pour la plupart des tâches courantes.
La détection et l’évitement des collisions constituent la priorité de tout planificateur de mouvement. La précision des parcours sûrs générés est donc un facteur très important.
Le planificateur PRM s’appuie sur les points aléatoires qu’il a placés lors de la phase de cartographie. Si ces points aléatoires ne se trouvent pas à l’intérieur d’un espace étroit, le robot considérera qu’il est bloqué, même s’il y a largement la place. Un plus grand nombre d’échantillons et davantage de bords par échantillon permettront d’obtenir une carte plus détaillée, dont la génération prendra plus de temps, mais qui aboutira à une solution plus précise.
Smart Motion inclut une option « Espace contraint » pour ces situations délicates. Lorsqu’elle est activée, le solveur est contraint d’opérer dans l’espace des articulations plutôt que dans l’espace cartésien. Ce faisant, cela garantit que, lorsqu’une pose est testée, le système identifie une configuration d’articulation unique, ce qui évite les problèmes liés à l’existence de plusieurs solutions possibles pour une même pose cartésienne. En résumé, cela aide le planificateur à mémoriser la position et la configuration du robot afin de garantir que le parcours trouvé soit préservé.
Les deux planificateurs de mouvement vous permettent de contrôler dans quelle mesure le robot « tient compte » de son environnement.
Pour obtenir un parcours plus fluide ou plus sûr avec le planificateur PRM, il convient d’augmenter en conséquence le nombre d’échantillons et le nombre d’arêtes par échantillon. Cela améliore la qualité de la carte, mais allonge le temps d’attente.
Smart Motion utilise un simple curseur de « qualité du parcours » avec les limites suivantes :
1.« Grossier » : cette option est utilisée dans les espaces très dégagés pour obtenir une réponse immédiate.
2.Précis : ce mode est utilisé pour les tâches complexes. Il oblige le robot à effectuer de « minuscules pas » afin de vérifier l'absence de collision et de générer un parcours globalement fluide.