Le but de ce module est de se familiariser avec lenvironnement du logiciel CIROS Robotics et de raliser des programmes simples pour piloter un robot Mitsubishi RV-2AJ . Ces programmes pourront tre simuls mais pas transfrs dans les robots disponibles au CTA. 2. Prsentation du logiciel CIROS Robotics
Le logiciel va vous permettre dcrire et de simuler des programmes pour diffrents types de robots. Des modles dentrainement existent pour les stations Festo MPS mais aussi pour dautres applications industrielles, avec diffrents types de robots. Ces modles vont dune application simple la programmation complte dune station. Il est possible de raliser des programmes en utilisant les langages de programmation des robots Mitsubishi : MRL, MELFA BASIC IV et V. En plus dun robot, il est possible de simuler des dtecteurs, des actionneurs, des objets, Le logiciel comporte une aide bien fournie. Toutefois, celle-ci nest pas toujours en franais mais en anglais, voir en allemand.
Remarque importante La licence du programme est assez restrictive. En effet, vous ne pouvez pas enregistrer les environnements que vous avez crs (Workcell) ni transfrer votre programme dans le robot. Pour bnficier de toutes les fonctions, il faut utiliser le logiciel CIROS Studio. Les environnements crs avec CIROS Studio ne peuvent tre ouverts avec CIROS Robotics. Il faut voir CIROS Robotics comme un logiciel dapprentissage et dcriture de programmes.
CROB01 Page 3
3. Prsentation des modles dintroduction et premiers programmes
3.1 Prsentation Le logiciel CIROS Robotics contient des exemples de programmes de niveaux diffrents et avec plusieurs types de robots. Pour se familiariser avec le logiciel et la programmation, il est prfrable de raliser le modle dintroduction. Pour ouvrir le modle, il faut : Lancer laide ( F1 ) Cliquer sur Modles Cliquer sur Modle dintroduction Cliquer sur Modle FirstSteps-NextSteps Slectionner, dans la fentre de droite, le modle dsir.
CROB01 Page 4
Les modles dintroduction proposs ne permettent pas de dutiliser le robot Mitsubishi RV-2SDB disponible au CTA. Il faut choisir le robot RV-2AJ Dans tous les cas, 2 types de modles sont proposs : Open reference model : le modle protg en criture du rpertoire CIROS est ouvert. Open user model : si le modle est prsent dans le rpertoire utilisateur, il est ouvert. Si le modle est introuvable, il y est copi partir du rpertoire de rfrence puis ouvert dans CIROS. Le langage de programmation du robot RV-2AJ (Melfa Basic 4) est lgrement diffrent de celui du robot RV-2SDB (Melfa Basic 5). Il est nanmoins assez facile de passer dun langage lautre. Pour plus dinformations, il faut se reporter laide sur les commandes.
3.2 Modle RV-2AJ FirstSteps Lorsque vous ouvrez le fichier RV-2AJ FirstSteps , lcran de la page suivante apparait. Lcran est divis en 4 zones principales : La zone 1 reprsente la barre des menus et les icnes permettant dans travailler avec le programme. La zone 2 reprsente le modle, cest--dire le robot avec lequel nous allons travailler et son environnement. La zone 3 contient le programme du robot. La zone 4 contient la liste de positions mmorises qui seront utilises dans le programme. Dautres fentres peuvent tre ouvertes. Citons par exemple les entres et sorties du robot ainsi que ses coordonnes.
Le contenu de ces fentres sera approfondi au fur et mesure de votre progression dans les exercices.
CROB01 Page 5
1 2 3 4
CROB01 Page 6
Une fois le projet ouvert, vous pouvez lancer une simulation du programme. Pour cela, appuyez sur F5 ou dans le menu Simulation Start . Lors de lexcution, les instructions sont surlignes en bleu au fur et mesure quon avance dans le programme. Cela peut vous aider en comprendre le fonctionnement. 3.3 Premier programme Enonc Le premier exercice consiste aller chercher le cube rouge (position initiale : P1) et de le dplacer vers la position P7 en passant par la position initiale (P10). Une fois la pice dpose, le robot retourne sa position initiale. Pour savoir quel lment correspond quelle position, il suffit de cliquer sur la position dfinie (fentre position) et un repre apparait dans le modle.
N.B. : Les positions initiales des cubes et des emplacements ou les poser sont dj dfinies. Il ne faut pas modifier les positions existantes dans le programme si on veut que les exercices fonctionnent.
Premires commandes Pour cet exercice, vous devrez utiliser les commandes suivantes : MOV : dplacement de la position actuelle la position de destination. Ex : MOV p1, -40 Si le paramtre -40 (facultatif) est dfini, alors le robot se dplacera une distance de -40 sur laxe Z par rapport sa position de destination. MVS : dplacement linaire de la position actuelle la position de destination. Ex : MVS p1
CROB01 Page 7
HOPEN / HCLOSE : commande louverture / fermeture de la pince. Ex : HOPEN 1 Le chiffre 1 signifie que lon commande la pince n 1. DLY : utilise seule, cette commande cause une temporisation. Ex : DLY 0.5 Avec de passer linstruction suivante, une temporisation de 0.5 seconde est effectue. OVRD : cette instruction dfini la vitesse du robot pour le programme. Elle sexprime en % Ex : OVRD 50 Le robot se dplacera 50 % de sa vitesse. END : marque la fin de lexcution du programme
N.B. : Pour obtenir de laide ou des informations complmentaires sur les commandes, slectionner la commande avec la souris et appuyer sur F1 .
Compilation et simulation Une fois que votre programme est crit, il faut le compiler (programming compile ou ALT+F9 ). Sil y a des erreurs ou des avertissements, un message avec un lien de lerreur vers le programme apparat. Lorsque le programme est compil, vous pouvez lexcuter (Simulation Start ou F5 ). Un mode pas pas est galement disponible (icne next step ou F10 ). 1 : le robot est sa position de dpart
2 : le robot de dplace 40 mm au-dessous de la position P1 initiale 3 : le robot se dplace de manire linaire vers P1 initiale
CROB01 Page 8
Exercice Crer un programme o tous les cubes doivent tre amens de leur position dorigine vers lextrmit droite de la station. Le robot retourne alors vers sa position initiale.
3.4 Modle RV-2AJ NextSteps Lexemple est pratiquement identique au prcdent. La diffrence vient du fait quun cran se trouve entre les deux endroits o lon peut placer les pices. Dans ce cas, il faut penser viter lobstacle lors du dplacement des pices. N.B. : Dans lexemple de base, rien ne se passe si lon traverse le mur. Il est nanmoins possible de dfinir des collisions. Cest ce que nous ferons au point suivant.
3.5 Dfinir des collisions Afin que lexercice ait plus de sens, il est ncessaire que le programme puisse grer les collisions entre le robot et le mur. Dfinition Voici la marche suivre pour dfinir des collisions entre le mur et le reste de lenvironnement. Passer en mode Edition (modeling Edit mode ou CTRL + E ) Cliquer sur le mur (il devient de couleur verte, avec un systme daxe son origine. Cliquer sur licne Select elements for collision detection ). La fentre ci-dessous apparait :
Dans la colonne Test group , cliquer sur All Objects puis Manage Collision Groups . La fentre ci-dessous apparait.
CROB01 Page 9
Slectionner lobjet qui va tre un obstacle. Dans notre cas, cest Wall. Cliquer ensuite sur New et donner un nom au groupe de collision que lon vient de crer (ex : Mur) puis cliquer sur OK . Fermer la fentre en cliquant sur Close . Dans la fentre Collision Detection , le groupe Mur apparait dans la colonne Test Groupe . Cliquer sur Mur dans la premire colonne puis All Objects dans le seconde et enfin sur >> . La collision Mur <-> <All Objects> est maintenant dfinie.
Options Les options vont nous permettre de choisir les actions effectuer lors dune collision. Dans notre exemple, nous allons tout slectionner (couleur, message, suspension de la simulation).
Maintenant, lancer lexercice et observer ce qui se passe lorsque le robot entre en collision avec le mur (au besoin, bouger le mur !).
CROB01 Page 10
4. Nouvelles fonctions et exercices supplmentaires
Pour les exercices qui vont suivre, nous utiliserons le modle RV-2AJ FirstSteps 4.1 Apprendre des positions Vous pouvez apprendre au robot de nouvelles positions que vous pourrez utiliser par la suite dans votre programme. Pour cela, slectionner la fentre du modle puis aller dans Programming Teach In . La fentre Jog Operation souvre.
Vous pouvez maintenant dfinir une nouvelle position le robot. Jog Override permet de modifier la vitesse de dplacement. Une fois que vous avez dfini votre position, cliquer sur Insert Position pour la faire apparaitre dans la liste des postions.
4.2 Crer un obstacle et dfinir une dtection de collision Nous allons crer une boite qui se trouvera entre les deux zones o les pices peuvent tre poses et ensuite dfinir des collisions entre la boite et les autres objets. Cration de la boite
Menu Modeling Model Libraries Ajouter lobjet Box dans Miscellaneous Primitive La boite apparait en dessous du robot.
CROB01 Page 11
Editer les proprits de la boite (position, dimensions,) Menu Modeling Model Explorer Slectionner box Base. Dans la fentre de droite, clic droit sur Box puis properties (voir figure ci-dessous).
Une nouvelle fentre souvre comprenant entre autre les options suivantes : General : permet de dfinir les dimensions de la boite Pose : permet de spcifier les coordonnes du point dinsertion. Vizualisation : permet de modifier la couleur.
CROB01 Page 12
Pour lexercice que nous allons raliser, entrer les valeurs suivantes : Point dinsertion : X = 140 mm Y = - 50 mm Z = 220 mm Dimensions : X : 180 mm Y : 115 mm Z : 75 mm Couleur : Violet
Gestion de la collision Crer un groupe de collision appel Obstacle et qui comprend la boite que nous venons de crer. Dfinir une collision entre ce groupe et tous les objets. Suspendre la simulation en cas de collision. Exercice Crer un programme qui amne le cube rouge en P9 tout en vitant lobstacle que nous avons insr.
4.3 Utilisation des entres du robot Le programme permet dutiliser les entres et sorties du robot. Un exemple dentre pourrait tre le signal dun dtecteur de couleur qui dterminerait la couleur des pices dplacer. Pour accder aux entres du robot, utiliser le menu Modeling Model Explorer RV-2Aj Inputs.
Renommer respectivement les trois premires entres Rouge, Vert et Bleu.
CROB01 Page 13
N.B. : Puisque aucun dtecteur ne correspond ces entres, il va falloir, lorsquon les interroge, pouvoir leur donner une valeur. Pour cela, il faut : Aller dans le menu Modeling Model Explorer Faire un clic droit sur FirstSteps RV-2AJ Slectionner properties Aller dans Messages and Errors et choisir Yes
Grace cela, nous allons pouvoir simuler une information indiquant la couleur des pices dplacer.
Exercice Nous allons raliser un exercice ou il faut tester la couleur dune pice lorsque le robot la saisi. En fonction de sa couleur, la pice sera achemine des positions diffrentes. Le robot se dplace de sa position initiale vers la pice situe en P1. Si la pice est rouge (entre Rouge = 1), alors la pice est amene en P7, si le test est ngatif, la pice est amene en P8 Pour raliser ce programme, nous allons devoir utiliser linstruction IF THEN ELSE dont voici un exemple dutilisation :
CROB01 Page 14
160 if M_IN(0)= 1 then . 250 else . 340 endif 4.4 Simulation dun dtecteur de couleur Le principe est le mme que celui de lexercice prcdent mais cette fois, nous allons introduire dans le modle un dtecteur de couleur. Ce dernier pourra nous renseigner sur la couleur des pices. Insrer un dtecteur de couleur
Le programme contient une bibliothque de dtecteurs de tous types. Pour insrer un dtecteur de couleur, il faut aller dans le menu Modeling Model Libraries Miscellaneous Sensors Color Sensor Add.
Les coordonnes du point dinsertion ncessaires au bon droulement de lexercice sont les suivantes : X : -180 mm Y : 150 mm Z : 450 mm R : -180 Y : -180
CROB01 Page 15
Connecter les sorties du dtecteur aux entres du robot
Pour que le programme puisse traiter les informations provenant du dtecteur, il faut raccorder les sorties de ce dtecteur aux entres du robot. Pour cela, il faut : Aller dans le menu Modeling Model Explorer. Ouvrir le menu color Sensor output et le menu RV-2AJ Input. Relier la sortie 1 du dtecteur lentre 1 du robot par glisser/ dposer. Faite de mme avec les autres entres / sorties.
De base, le dtecteur peut reconnaitre trois couleurs : rouge, vert et bleu. Pour accder ces proprits, aller dans Modeling Model Explorer ColorSensor Clic droit Properties.
CROB01 Page 16
La sortie 0 correspond la couleur bleu. La sortie 1 correspond la couleur verte. La sortie 2 correspond la couleur rouge. Exercice 1 Reprendre le programme prcdent mais cette fois, cest le dtecteur qui doit dterminer la couleur de la pice qui se trouve en P1. N.B. : Pour cet exercice, vous pouvez modifier la couleur des pices dplacer de manire rendre la simulation plus raliste. Exercice 2
Reprendre lexercice prcdent. Si la pice en P1 est : Rouge : la pice est dplace en P7, Verte : la pice est dplace en P8, Bleu : la pice est dplace en P9, Autre : la pice est dplace en P5.