Académique Documents
Professionnel Documents
Culture Documents
CROB01 - Introduction À La Programmation D'un Robot À L'aide Du Logiciel CIROS Robotics
CROB01 - Introduction À La Programmation D'un Robot À L'aide Du Logiciel CIROS Robotics
CROB01 Page 1
1. But du module
Ces programmes pourront être simulés mais pas transférés dans les robots disponibles au CTA.
Le logiciel va vous permettre d’écrire et de simuler des programmes pour différents types de robots.
Des modèles d’entrainement existent pour les stations Festo MPS mais aussi pour d’autres
applications industrielles, avec différents types de robots. Ces modèles vont d’une application simple
à la programmation complète d’une station.
Il est possible de réaliser des programmes en utilisant les langages de programmation des robots
Mitsubishi : MRL, MELFA BASIC IV et V.
En plus d’un robot, il est possible de simuler des détecteurs, des actionneurs, des objets,…
Le logiciel comporte une aide bien fournie. Toutefois, celle-ci n’est pas toujours en français 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 créés (Workcell) ni transférer votre programme dans le robot.
Pour bénéficier de toutes les fonctions, il faut utiliser le logiciel CIROS Studio.
Les environnements créés avec CIROS Studio ne peuvent être ouverts avec CIROS Robotics.
CROB01 Page 2
3. Présentation des modèles d’introduction et premiers
programmes
3.1 Présentation
Le logiciel CIROS Robotics contient des exemples de programmes de niveaux différents et avec
plusieurs types de robots.
Lancer l’aide (« F1 »)
Cliquer sur Modèles
Cliquer sur Modèle d’introduction
Cliquer sur Modèle FirstSteps-NextSteps
Sélectionner, dans la fenêtre de droite, le modèle désiré.
CROB01 Page 3
Les modèles d’introduction proposés ne permettent pas de d’utiliser le robot « Mitsubishi RV-2SDB »
disponible au CTA. Il faut choisir le robot « RV-2AJ »
Open reference model : le modèle protégé en écriture du répertoire CIROS est ouvert.
Open user model : si le modèle est présent dans le répertoire utilisateur, il est ouvert. Si le
modèle est introuvable, il y est copié à partir du répertoire de référence puis ouvert dans
CIROS.
Le langage de programmation du robot « RV-2AJ » (Melfa Basic 4) est légèrement différent de celui
du robot « RV-2SDB » (Melfa Basic 5). Il est néanmoins assez facile de passer d’un langage à l’autre.
Pour plus d’informations, il faut se reporter à l’aide sur les commandes.
Lorsque vous ouvrez le fichier « RV-2AJ FirstSteps », l’écran de la page suivante apparait.
La zone 1 représente la barre des menus et les icônes permettant dans travailler avec le
programme.
La zone 2 représente le modèle, c’est-à-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 mémorisées qui seront utilisées dans le programme.
D’autres fenêtres peuvent être ouvertes. Citons par exemple les entrées et sorties du robot ainsi que
ses coordonnées.
Le contenu de ces fenêtres sera approfondi au fur et à mesure de votre progression dans les
exercices.
CROB01 Page 4
1
2 3 4
CROB01 Page 5
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 l’exécution, les instructions sont surlignées en bleu au fur et à mesure qu’on avance dans le
programme. Cela peut vous aider à en comprendre le fonctionnement.
Enoncé
Le premier exercice consiste à aller chercher le cube rouge (position initiale : P1) et de le déplacer
vers la position P7 en passant par la position initiale (P10). Une fois la pièce déposée, le robot
retourne à sa position initiale.
Pour savoir quel élément correspond à quelle position, il suffit de cliquer sur la position définie
(fenêtre position) et un repère apparait dans le modèle.
N.B. : Les positions initiales des cubes et des emplacements ou les poser sont déjà définies. Il ne faut
pas modifier les positions existantes dans le programme si on veut que les exercices fonctionnent.
Premières commandes
Pour cet exercice, vous devrez utiliser les commandes suivantes :
Si le paramètre « -40 » (facultatif) est défini, alors le robot se déplacera à une distance de -40 sur
l’axe Z par rapport à sa position de destination.
Ex : MVS p1
CROB01 Page 6
2 : le robot de déplace 40 mm 3 : le robot se déplace de
1 : le robot est à sa position de
au-dessous de la position P1 manière linéaire vers P1
départ
initiale initiale
HOPEN / HCLOSE : commande l’ouverture / fermeture de la pince.
Ex : HOPEN 1
Ex : DLY 0.5
Avec de passer à l’instruction suivante, une temporisation de 0.5 seconde est effectuée.
OVRD : cette instruction défini la vitesse du robot pour le programme. Elle s’exprime en %
Ex : OVRD 50
N.B. : Pour obtenir de l’aide ou des informations complémentaires sur les commandes, sélectionner 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 »).
S’il y a des erreurs ou des avertissements, un message avec un lien de l’erreur vers le programme
apparaît.
Lorsque le programme est compilé, vous pouvez l’exécuter (Simulation Start ou « F5 »). Un mode
pas à pas est également disponible (icône next step ou « F10 »).
CROB01 Page 7
Exercice
Créer un programme où tous les cubes doivent être amenés de leur position d’origine vers
l’extrémité droite de la station. Le robot retourne alors vers sa position initiale.
L’exemple est pratiquement identique au précédent. La différence vient du fait qu’un écran se trouve
entre les deux endroits où l’on peut placer les pièces.
Dans ce cas, il faut penser à éviter l’obstacle lors du déplacement des pièces.
N.B. : Dans l’exemple de base, rien ne se passe si l’on traverse le mur. Il est néanmoins possible de
définir des collisions. C’est ce que nous ferons au point suivant.
Afin que l’exercice ait plus de sens, il est nécessaire que le programme puisse gérer les collisions
entre le robot et le mur.
Définition
Voici la marche à suivre pour définir des collisions entre le mur et le reste de l’environnement.
Cliquer sur l’icône « Select elements for collision detection » ). La fenêtre ci-dessous
apparait :
Dans la colonne « Test group », cliquer sur « All Objects » puis « Manage Collision Groups ».
La fenêtre ci-dessous apparait.
CROB01 Page 8
Sélectionner l’objet qui va être un obstacle. Dans notre cas, c’est Wall.
Cliquer ensuite sur « New » et donner un nom au groupe de collision que l’on vient de créer
(ex : Mur) puis cliquer sur « OK ».
Fermer la fenêtre en cliquant sur « Close ».
Dans la fenêtre « Collision Detection », le groupe « Mur » apparait dans la colonne « Test
Groupe ».
Cliquer sur « Mur » dans la première colonne puis « All Objects » dans le seconde et enfin
sur « >> ».
Options
Les options vont nous permettre de choisir les actions à effectuer lors d’une collision. Dans notre
exemple, nous allons tout sélectionner (couleur, message, suspension de la simulation).
Maintenant, lancer l’exercice et observer ce qui se passe lorsque le robot entre en collision avec le
mur (au besoin, bouger le mur !).
CROB01 Page 9
4. Nouvelles fonctions et exercices supplémentaires
Pour les exercices qui vont suivre, nous utiliserons le modèle « RV-2AJ FirstSteps »
Vous pouvez apprendre au robot de nouvelles positions que vous pourrez utiliser par la suite dans
votre programme.
Pour cela, sélectionner la fenêtre du modèle puis aller dans « Programming Teach In ». La fenêtre
« Jog Operation » s’ouvre.
Vous pouvez maintenant définir une nouvelle position le robot. « Jog Override » permet de modifier
la vitesse de déplacement.
Une fois que vous avez défini votre position, cliquer sur « Insert Position » pour la faire apparaitre
dans la liste des postions.
Nous allons créer une boite qui se trouvera entre les deux zones où les pièces peuvent être posées et
ensuite définir des collisions entre la boite et les autres objets.
Création de la boite
CROB01 Page 10
Editer les propriétés de la boite (position, dimensions,…)
Menu Modeling Model Explorer
Sélectionner box Base.
Dans la fenêtre de droite, clic droit sur « Box » puis « properties » (voir figure ci-dessous).
Une nouvelle fenêtre s’ouvre comprenant entre autre les options suivantes :
CROB01 Page 11
Pour l’exercice que nous allons réaliser, entrer les valeurs suivantes :
Y = - 50 mm Y : 115 mm
Z = 220 mm Z : 75 mm
Gestion de la collision
Créer un groupe de collision appelé « Obstacle » et qui comprend la boite que nous venons
de créer.
Définir une collision entre ce groupe et tous les objets.
Suspendre la simulation en cas de collision.
Exercice
Créer un programme qui amène le cube rouge en P9 tout en évitant l’obstacle que nous avons inséré.
Le programme permet d’utiliser les entrées et sorties du robot. Un exemple d’entrée pourrait être le
signal d’un détecteur de couleur qui déterminerait la couleur des pièces à déplacer.
Pour accéder aux entrées du robot, utiliser le menu Modeling Model Explorer RV-2Aj
Inputs.
CROB01 Page 12
N.B. : Puisque aucun détecteur ne correspond à ces entrées, il va falloir, lorsqu’on les interroge,
pouvoir leur donner une valeur.
Grace à cela, nous allons pouvoir simuler une information indiquant la couleur des pièces à déplacer.
Exercice
Nous allons réaliser un exercice ou il faut tester la couleur d’une pièce lorsque le robot la saisi. En
fonction de sa couleur, la pièce sera acheminée à des positions différentes.
Le robot se déplace de sa position initiale vers la pièce située en P1. Si la pièce est rouge (entrée
Rouge = 1), alors la pièce est amenée en P7, si le test est négatif, la pièce est amenée en P8
Pour réaliser ce programme, nous allons devoir utiliser l’instruction « IF – THEN – ELSE » dont voici
un exemple d’utilisation :
CROB01 Page 13
160 if M_IN(0)= 1 then
250 else
340 endif
Le principe est le même que celui de l’exercice précédent mais cette fois, nous allons introduire dans
le modèle un détecteur de couleur. Ce dernier pourra nous renseigner sur la couleur des pièces.
Le programme contient une bibliothèque de détecteurs de tous types. Pour insérer un détecteur de
couleur, il faut aller dans le menu Modeling Model Libraries Miscellaneous Sensors Color
Sensor Add.
Les coordonnées du point d’insertion nécessaires au bon déroulement de l’exercice sont les
suivantes :
X : -180 mm
Y : 150 mm
Z : 450 mm
R : -180 °
Y : -180 °
CROB01 Page 14
Connecter les sorties du détecteur aux entrées du robot
Pour que le programme puisse traiter les informations provenant du détecteur, il faut raccorder les
sorties de ce détecteur aux entrées du robot. Pour cela, il faut :
De base, le détecteur peut reconnaitre trois couleurs : rouge, vert et bleu. Pour accéder à ces
propriétés, aller dans Modeling Model Explorer ColorSensor Clic droit Properties.
CROB01 Page 15
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 précédent mais cette fois, c’est le détecteur qui doit déterminer la couleur
de la pièce qui se trouve en P1.
N.B. : Pour cet exercice, vous pouvez modifier la couleur des pièces à déplacer de manière à rendre la
simulation plus réaliste.
Exercice 2
CROB01 Page 16