TP 2 : Création de mécanismes sur RobotStudio
I. Création d’un mécanisme
La deuxième simulation aura pour but de créer un mécanisme et de le connecter à un
robot sur la station. Lorsque le robot arrivera sur une cible de sa trajectoire, le mécanisme
se mettra en mouvement. Cette simulation n'a peut-être pas d'application réelle en dehors
du programme. Les étapes suivantes ont été suivies :
1. Créer des solides
La première étape consiste à créer les différents solides qui composeront le mécanisme.
Dans ce cas, il s'agira de trois boîtes (deux fixes sur leurs emplacements et l'autre qui aura
le mouvement de haut en bas).
Tableau 1. Positions des solides - Création du mécanisme
Solid's Coordonnées coin point Taille (longueur, largeur,
hauteur)
nom (x,y,z) [mm]
[mm]
Partie_1 100, 0, 0 50, 50, 700
Partie_2 -150, 0, 0 50, 50, 700
Corps -100, -50, -50 200, 100, 30
Figure 1. Création d'un mécanisme - capture d'écran 1
2. Créer un mécanisme
Une fois que tous les solides ont été créés, dans le menu "Modélisation", l'utilisateur peut
appuyer sur l'option "Créer un mécanisme" située à côté de "Créer un outil". La fenêtre
illustrée à la figure 56 apparaît et l'utilisateur doit introduire le nom du mécanisme, le
type et commencer à configurer les différents liens, articulations etcadres. Le type
de mécanisme, dans ce cas
43
sera un axe externe. Pour un axe externe, un étalonnage est nécessaire pour chaque
articulation.
Figure 2. Création d'un mécanisme - capture d'écran 2
Pour configurer les différents nœuds, l'utilisateur doit cliquer par exemple sur Liens
avec le bas droit de la souris et appuyer sur l'option "Ajouter un lien". Il en va de même
pour tous les nœuds. Les liens sont définis comme les différentes parties du mécanisme
séparées par les articulations. Dans ce cas, deux liens peuvent être identifiés : le lien de
base (solides Part_1 et Part_2) qui n'a pas de mouvement et le corps qui est un solide avec
le mouvement relatif sur le mécanisme.
Dans ce mécanisme, une seule articulation doit être ajoutée : le mouvement prismatique
entre les deux liens. La fenêtre de la figure 56 sera modifiée par l'utilisateur qui choisira
l'axe du mouvement, le type, les limites... Sur la station, une ligne verte apparaîtra pendant
la configuration de l'articulation représentant la direction du mouvement.
44
Figure 3. Création d'un mécanisme - capture d'écran 2 Figure 4. Création d'un
mécanisme - capture d'écran 3
La dernière étape avant la compilation du mécanisme consiste à choisir un cadre, qui est
le point de référence du mécanisme, et à calibrer l'articulation (il suffit d'appuyer sur "add
calibration" et d'accepter, l'utilisateur n'a pas besoin de modifier quoi que ce soit dans ce
cas). Si le mécanisme a été créé correctement, la compilation ne posera pas de problème
et le mécanisme sera déjà créé.
Figure 60. Création d'un mécanisme - capture
d'écran 5
Figure 5. Création d'un mécanisme - capture
d'écran 4
45
3. Créer des poses sur le mécanisme
Une fois le mécanisme créé, l'utilisateur peut programmer différentes positions entre les
limites des articulations du mécanisme et les enregistrer. Dans ce cas, trois positions
seront enregistrées (SyncPose, Pose1 et Pose2).
Figure 6. Création d'un mécanisme - capture d'écran 6
4. Insérer le robot sur la station avec un outil
5. Configurer le contrôleur virtuel
6. Créer une trajectoire simple pour le robot
7. Créer un solide invisible
Comme indiqué précédemment, lorsque le robot se trouve sur l'une des cibles de sa
trajectoire, le mécanisme démarre le mouvement. Une petite boîte a été créée et
positionnée sur une cible. Le solide dont le nom est Part_5 sera invisible pendant la
simulation.
Figure 7. Création d'un mécanisme - capture d'écran 7
46
8. Créer un composant intelligent et y attacher le mécanisme
Dans la liste de disposition située sur le côté gauche de la station, le nom du mécanisme
doit apparaître sous le nom du composant intelligent.
9. Insérer les différents composants intelligents
Dans cette simulation, quatre composants intelligents seront utilisés (trois Pose Mover
et un Collision Sensor). Le Pose Mover a pour propriétés le mécanisme (celui qui se
déplacera), la pose (la position du mécanisme à laquelle le composant intelligent se
rendra) et la durée (le temps dont dispose le mécanisme pour arriver à la pose). Le capteur
de collision sera utilisé pour détecter le moment où l'outil est proche de la petiteboîte,
invisible, et le programme utilisera la sortie numérique du capteur pour exécuterle
mouvement mécanique.
Tableau 6. Propriétés des composants intelligents - Création de mécanismes
Composant Objet1 Objet2 Près du but
intelligent
[mm]
nom
Capteur de collision Mon outil Partie_5 10
Composant Mécanisme Pose Durée [s]
intelligent
nom
PoseMover Mon_mécanisme SyncPose 2
PoseMover_2 Mon_mécanisme Pose1 2
PoseMover_3 Mon_mécanisme Pose2 2
10. Programmer les composants intelligents sur la station logique
Dans la fenêtre "design" de la logique de la station, l'utilisateur peut configurer facilement
les différentes sorties et entrées en établissant des connexions entre lesdifférentes
cases qui représentent les différents composants intelligents (voir la figure 63). Lorsque
le capteur détecte la collision, le premier Pose Mover place le mécanisme dans la position
programmée. Les trois Pose Mover fonctionneront l'un après l'autre.
47
Figure 63. Création d'un mécanisme - capture d'écran 7
11. Synchronisation avec RAPID
12. Langue RAPID
Une fois la simulation créée, le logiciel examine le processus "principal" du code.
L'utilisateur peut choisir de définir le chemin comme point de départ ou d'écrire le nom
du chemin à l'intérieur du "main" du code. Dans ce cas, le code a été modifié en
écrivant le nom du chemin et en utilisant une nouvelle fonction : "WaitTime". Cette
fonction est utilisée pour attendre le temps entre deux instructions, le nombre écrit après
la fonction est le nombre de secondes.
PROC main()
WaitTime 3
; Path_10 ;
ENDPROC
PROC Path_10()
MoveL Target_20,v1000,z100,MyTool\WObj:=wobj0 ;
MoveL Target_10,v1000,fine,MyTool\WObj:=wobj0 ;
MoveL Target_20,v1000,z100,MyTool\WObj:=wobj0
; MoveL
Target_30,v1000,z100,MyTool\WObj:=wobj0 ;
MoveL Target_20,v1000,z100,MyTool\WObj:=wobj0
;
ENDPROC
13. Synchroniser avec la station.
14. Simuler
Images de la simulation :
Figure 64. Création du mécanisme 1 Figure 65. Création du mécanisme 2
II. Mécanisme d'interaction
L’actuelle simulation présente quelques similitudes avec la précédente, mais le
mécanisme sera déplacé en premier et le robot réagira ensuite. Le mécanisme transportera
un objet et le robot prendra le solide du mécanisme et le changera de place. Pour créer la
simulation, les étapes suivantes ont été suivies :
1. Créez une station vide et insérez le robot.
2. Configurer le contrôleur virtuel.
3. Ajouter de nouveaux signaux : start0 et return0
Les deux signaux créés lors de cette simulation seront du type sortie numérique. Dans la
fenêtre du contrôleur, il est possible de configurer les E/S du système et de créer les
nouveaux signaux. La configuration suivante sera insérée pour les deux signaux.
Figure 66. Interaction avec le mécanisme - capture d'écran 1
1. Redémarrer le contrôleur (Warmstart).
Une fois les signaux créés, il est important de redémarrer le contrôleur pour appliquer les
changements.
2. Créer des solides. Créer un mécanisme.
L'utilisateur créera différents solides qui composeront le mécanisme. Ils se composent
d'une base et d'un solide qui aura un mouvement.
Tableau 7. Positions des solides - Interaction des mécanismes
Nom du solide Taille (longueur, Point d'angle Orientation
largeur, hauteur) (x, y, z) [mm] (x,y,z) [degrés]
[mm]
Base 1500 x 100 x 1000, -1000, 0 0, 0, 90
300
Solide1 500 x 300 x 100 500, -1000, 100 0, 0, 0
Figure 67. Interaction avec le mécanisme - capture d'écran 2
Une fois les solides créés, l'utilisateur peut créer le mécanisme en ajoutant les liens, les
articulations et les cadres. Il n'y aura que deux liens, un pour chaque solide, et le solide
"Base" sera le lien de base. L'articulation sera le mouvement prismatique entre les deux
liens et le cadre sera situé au-dessus du Solid1.
Figure 68. Interaction avec le mécanisme - capture
Figure 69. Interaction avec le mécanisme -
d'écran 3
capture d'écran 4
Figure 70. Interaction avec le mécanisme - capture d'écran 5
3. Créez Pose1 devant le robot.
Comme indiqué dans la simulation précédente, il est possible d'enregistrer une position
du mécanisme. La position que l'utilisateur doit enregistrer pour cette simulation est celle
avec le solide devant le robot (Pose1). L'autre position sauvegardée est SyncPoseet il
s'agit de la position initiale du mécanisme.
Figure 71. Interaction avec le mécanisme - capture d'écran 6
Il est possible de déplacer le mécanisme dans ses limites, en appuyant en bas à droite de
la souris sur son nom et en appuyant sur l'option "Mechanism Joint Jog". Une fois que
le mécanisme se trouve à l'endroit désiré, la pose peut être sauvegardée.
4. Créer un nouveau solide "solidcyl" et l'attacher au mécanisme
Figure 72. Interaction avec le mécanisme - capture d'écran 7
Le nouveau solide créé sera un cylindre d'un rayon de 100 mm et d'une hauteur de 100 mm.
mm. Le solide appelé "solidcyl" sera fixé sur le mécanisme en faisant glisser avec la
souris le nom du solide sur le nom du mécanisme. Le solide sera automatiquement placé
sur le cadre du mécanisme.
5. Création du deuxième solide.
Créez une copie du solide précédent "solidcyl" et définissez sa nouvelle position (la
position n'a pas d'importance ; il suffit que le robot puisse l'atteindre). Dans ce cas, la
position utilisée est (100,-500,0).
Figure 73. Interaction avec le mécanisme - capture d'écran 8
6. Insérez l'outil et fixez-le sur le robot. Dans ce cas, l'outil appelé AW_Gun_PSF_25 sera
utilisé.
7. Créer les objectifs nécessaires.
Les différentes cibles ont été créées sur la station. Cinq cibles seulement ont été
nécessaires : la position initiale du robot et deux cibles pour chaque solide du cylindre.
Pour sélectionner le point central de la surface du cylindre, on a utilisé l'outil Objet Snap
qui se trouve en haut de l'interface de la station illustrée à la Figure 74.
Figure 74. Interaction avec le mécanisme - capture d'écran 9
Figure 75. Interaction avec le mécanisme - capture d'écran 10
8. Créer un chemin.
Création de la trajectoire avec toutes les cibles incluses. Dans ce cas, il a fallu répéter
certaines positions. On peut voir l'ordre des cibles sur le côté gauche de la station avec
ses répétitions.
Figure 76. Interaction avec le mécanisme - capture d'écran 11
9. Ajouter des composants intelligents et modifier leurs propriétés.
Dans le menu "Simulation" se trouve la logique de la station pour ajouter les composants
intelligents. Dans ce cas, il s'agit d'ajouter deux PoseMover, deux CollisionSensor, un
Attacher et un Detacher. L'utilisateur doit modifier leurs propriétés.
Tableau 8. Propriétés des composants intelligents - Interaction des mécanismes
Composant intelligent Mécanisme Pose La durée
nom (s)
PoseMover Mon_mécanisme Pose1 2
PoseMover_2 Mon_mécanisme SyncPose 2
Composant intelligent Objet1 Objet2 Manque à
l'appel
nom
(mm)
Capteur de collision AW_Gun_PSF_25 Solidcyl 50
Capteur de collision_2 AW_Gun_PSF_25 Solidcyl_2 50
Composant intelligent Parent Enfant
nom
Attache AW_Gun_PSF_25 Solidcyl
Détacheur - Solidcyl
10. Configuration de la simulation
Dans la configuration de la simulation, qui se trouve dans le menu de simulation,
l'utilisateur sélectionnera le cycle unique. Cela signifie que la simulation s'arrêtera après
que le programme a exécuté un cycle du processus principal sur le code RAPID.
Dans le même menu de simulation, l'utilisateur peut également utiliser le simulateur d'E/S
pour voir les sorties et les entrées lorsqu'elles sont actives ou non. L'utilisateur peut
modifier manuellement si les signaux sont actifs ou non par le biais de cette fenêtrede
simulation. Il est également possible d'insérer une liste d'utilisateurs pour visualiser
uniquement les signaux créés par l'utilisateur.
Figure 77. Interaction avec le mécanisme - capture d'écran 12
11. Logique de la station. 1. Ajouter la connexion E/S sur "Signaux et connexions".
Dans le menu de simulation, à l'intérieur de la logique de la station, il y a la fenêtre
"signaux et connexions". Dans cet espace, l'utilisateur ajoutera les différentes
connexions entre les objets et les signaux. Il suffit de cliquer sur ajouter une connexion
et de remplir la nouvelle fenêtre contextuelle (voir Figure 78). La fenêtre demande
simplement d'où vient le signal (la source), quel signal, dans quel objet va être actionné
et quelle propriété de cet objet va être active.
Figure 78. Interaction avec le mécanisme - capture d'écran
Figure 79. Interaction avec le mécanisme - capture d'écran 14
Les connexions E/S apparaîtront automatiquement dans la fenêtre Conception après
avoir été configurées dans la fenêtre "Signaux et connexions". L'étape suivanteconsiste
à éditer les dernières connexions entre les composants intelligents dans la fenêtre
Conception, comme cela a été fait lors de la simulation précédente.
Figure 80. Interaction avec le mécanisme - capture d'écran 15
Les deux sorties numériques créées seront les signaux qui connecteront les deux
PoseMover pour déplacer le mécanisme d'une Pose à l'autre. Lorsque le
CollisionSensor détectera que l'outil est proche du solide situé au-dessus du
mécanisme (solidcyl), l'attache sera active. Lorsque le CollisionSensor_2 détecte que
l'outil est proche du second solide situé sur le sol de la station (solidcyl_2), le détacheur
est activé. Le mécanisme changera de position avec le solide au-dessus de lui, le robot
suivra sa trajectoire pour attacher le solide et changer de position. Pendant ce temps,
le mécanisme revient à sa position initiale. Une fois que l'utilisateur a configuré la
connexion sur la conception de la fenêtre, il doit sesynchroniser avec RAPID.
12. Code RAPID
Dans la fenêtre RAPID, on trouve le code du module principal (illustré à la figure 81).
L'utilisateur peut double-cliquer sur ce code pour le modifier.
Figure 81. Interaction avec le mécanisme - capture d'écran 16
Une fois que tout ce qui a été expliqué est configuré, le code RAPID montrera
simplement la trajectoire du robot et le processus principal sera vide. Il est important
de se rappeler que le simulateur suit les instructions du processus "main". S'il n'y a pas
de chemin ou de fonction dans le processus, la simulation ne fonctionnera pas.
Deux fonctions seulement seront utilisées dans cette simulation : SetDO et WaitTime.
La dernière fonction mentionnée a déjà été expliquée dans l'autre simulation. SetDO
modifie simplement la valeur du signal : sur la première ligne, la sortie numérique
"start0" passera à l'état actif. Selon le type de signal, la fonction changera de nom :
SetDO (sortie numérique), SetDI (entrée numérique)...
Lorsque la simulation commencera, le premier signal exécutera le premier PoseMove
et le mécanisme changera de position. Après trois secondes, le robot commencera à se
déplacer en suivant la trajectoire programmée. Il prendra l'objet et changera de
position. Ensuite, l'autre signal exécutera le deuxième PoseMover et le mécanisme
reviendra à sa première position. Les deux signaux seront inactifs lorsque la simulation
se terminera. Le code peut être vu dans le carré suivant :
PROC main()
SetDO start0,1
; WaitTime 3 ;
Chemin_10 ;
SetDO return0,1
;
SetDO start0,0 ;
Temps d'attente
1;
SetDO return0,0
;
ENDPROC
PROC Path_10()
MoveL Home,v1000,z100,AW_Gun\WObj:=wobj0 ;
MoveL Target_20,v1000,fine,AW_Gun\WObj:=wobj0
; MoveL
Target_10,v1000,fine,AW_Gun\WObj:=wobj0 ;
MoveL Target_20,v1000,fine,AW_Gun\WObj :=wobj0
; MoveL
Target_40,v1000,fine,AW_Gun\WObj:=wobj0 ;
MoveL Target_30,v1000,fine,AW_Gun\WObj:=wobj0
; MoveL
Target_40,v1000,fine,AW_Gun\WObj:=wobj0 ;
MoveL Home,v1000,z100,AW_Gun\WObj:=wobj0 ;
ENDPROC
Une fois toutes les modifications ajoutées, l'utilisateur peut les appliquer, les synchroniser
avec la station et enregistrer le code avant la simulation.
13. Réinitialiser la simulation. L'utilisateur doit sauvegarder l'état actuel de la
simulation, également mentionné dans la simulation précédente. Il est important de
remettre le solide déplacé à sa place initiale (au-dessus du mécanisme).
4. Modifiez les propriétés de l'objet "solidcyl_2" et rendez-le invisible. Le
chemin peut également être invisible. L'utilisateur peut également
modifier la couleur des solides, par exemple.
Quelques images de la simulation :
Figure 82. Interaction du mécanisme 1
Figure 83. Interaction du mécanisme 2 Figure 84. Interaction avec le mécanisme 3
Figure 85. Interaction du mécanisme 4
Figure 86. Interaction avec le mécanisme 5
Figure 87. Interaction du mécanisme 6 Figure 88. Interaction du mécanisme 7
Figure 89. Interaction avec le mécanisme 8 Figure 90. Interaction du mécanisme 9