Robot

Projet - Maquette salon 2026 - 02/2026

5.6 Programme automate

Afin de pouvoir contrôler un robot avec un automate il faut passer par un RSR = Remote Start Register.
C’est un mode de démarrage à distance qui permet à un automate, une cellule, ou n’importe quel système externe de lancer un programme en langage TP sur un robot Fanuc en envoyant des bits.

Net12 FB5025 Gestion UOP

Figure 84 : Net12 FB5025 Gestion UOP

Nous avons créé un bloc de fonction qui permet de gérer la partie UOP de manière optimale dans notre programme de référence. On peut retrouver les demandes de RSR et les états des RSR.

La programmation du robot pour la machine de salon est gérée par un GRAFCET général :

G7 10 Ctrl lance trajectoire

Figure 85 : G7 10 Ctrl lance trajectoire

Le G7 permet de donner les autorisations aux différentes trajectoires afin que le programme principal puisse les rediriger. Lors du lancement du GRAFCET, on retrouve les conditions de déclenchement suivantes :

  1. BP de demande d’initialisation ;
  2. Mode Manuel ;
  3. Défaut robot ;
  4. Nouvelle grille.

Ces conditions sont disposées en parallèle.
Ensuite viennent les conditions générales :

  1. RSR1 en cours ;
  2. Marche automatique activée.

Ces conditions permettent de vérifier que la machine est en fonctionnement et que le RSR1 , vu précédemment, est bien lancé.

À l'étape 100, nous retrouvons la phase de prise des pièces :

G7 100 Robot Prise

Figure 86 : G7 100 Robot Prise

Les différentes trajectoires du GRAFCET général sont placées en parallèle afin d’éviter qu’elles ne s’exécutent simultanément. La structure des GRAFCET comporte toujours une demande de trajectoire, puis le robot renvoie son état pour indiquer s’il est en train d’exécuter cette trajectoire ou non. On retrouve également des vérifications dans le programme, comme pour la prise, qui se met en attente si l’autorisation de venir prendre la pièce n’est pas active.
L'étape 130 du GRAFCET comporte la particularité suivante :
Le suivi de la pièce depuis sa prise jusqu’à sa dépose pour le suivi de pièce de LINA.

Dans le GRAFCET étape 200, on retrouve également la partie dépose :

G7 200 Robot Dépose

Figure 87 : G7 200 Robot Dépose

Cette séquence est découpée en trois sections : une première pour la dépose sur le plateau, puis une pour le bac, et enfin une seconde pour le bac. On retrouve également dans cette zone la partie dédiée au suivi de la pièce, depuis sa prise jusqu’à sa dépose.

Dans G7 étape 500 :

G7 500 Robot Prise Balai

Figure 88 : G7 500 Robot Prise Balai

Ce bout de GRAFCET correspond à la trajectoire de prise du balai.

L'étape 600 permet d’effectuer le balayage :

G7 600 Robot Balayage plateau

Figure 89 : G7 600 Robot Balayage plateau

L'étape 630 permet de déposer le balai.
L'étape 700 gère la trajectoire utilisée pour les mouvements lorsque la machine est allumée mais inactive :
Dans ce cas, on utilise des numéros de trajectoire pour identifier clairement chaque trajectoire. Les autres trajectoires (utiles au fonctionnement ), elles, sont gérées via des bits de demande de trajectoire.

L'étape 800 gère la trajectoire qui permet de remettre le robot en position Home :

G7 800 Robot utilitaire

Figure 90 : G7 800 Robot utilitaire

Si le préhenseur contient une pièce, le robot la dépose d’abord dans le bol avant de revenir en position Home.

L'étape 900 est la dernière :

G7 900 FIN

Figure 91 : G7 900 FIN

Présentation du programme de gestion du robot
Ce programme assure la gestion complète du robot en coordination avec le GRAFCET présenté précédemment :

Net01 Prog Gestion UOP RSR

Figure 92 : Net01 Prog Gestion UOP RSR

Il reçoit les demandes de trajectoires, applique les autorisations issues du GRAFCET général et pilote l’exécution des mouvements correspondants.

Dans Réseau 2 : Fin de demande du RSR1 : production

Net02 Fin DMD RSR1

Figure 93 : Net02 Fin DMD RSR1

Ce réseau permet d’arrêter une demande de RSR1 qui est en cours d’exécution.

Dans Réseau 3 : Fin de demande du RSR2 : Maintenance

Net03 Fin DMD RSR2

Figure 94 : Net03 Fin DMD RSR2

On réinitialise la demande maintenance RSR2.

Dans Réseau 4 : Fin de demande du RSR4 : Init

Net04 Fin DMD RSR4

Figure 95 : Net04 Fin DMD RSR4

On réinitialise la demande d’initialisation RSR4.

Dans Réseau 7 : Demande de démarrage automatique du RSR1 : Production

Net07 DMD RSR1 Prod

Figure 96 : Net07 DMD RSR1 Prod

C’est la demande de démarrage automatique du RSR1 de production lors de la mise en route du cycle.

Dans Réseau 8 : Demande de démarrage automatique du RSR2 : Maintenance

Net08 DMD RSR2 MAINT

Figure 97 : Net08 DMD RSR2 MAINT

La demande de démarrage automatique de la maintenance pour le RSR2.

Dans Réseau 9 : Demande de démarrage automatique du RSR3 : Nettoyage

Net09 DMD RSR3 NETT

Figure 98 : Net09 DMD RSR3 NETT

Démarrage en automatique du RSR3 de nettoyage, mais il n’est pas utilisé sur la machine salon.

Dans Réseau 10 : Demande de démarrage automatique du RSR4 : Init

Net10 DMD RSR4 INIT

Figure 99 : Net10 DMD RSR4 INIT

Démarrage en automatique du RSR4 d’initialisation.

Dans Réseau 14 : Etat préhenseur

Net14 Etat préhenseur

Figure 100 : Net14 Etat préhenseur

Réseau de gestion de l’état de la pince du préhenseur dans la logique de gestion robot.

Dans Réseau 15 : préhenseur plein avec une pièce

Net15 Préhenseur Plein Pièce

Figure 101 : Net15 Préhenseur Plein Pièce

Afin de déterminer l’état de la pince, ce réseau active le bit indiquant que le préhenseur est plein lorsque la pièce est correctement saisie.

Dans Réseau 16 : Préhenseur plein avec un balai

Net16 Préhenseur Plein Balai

Figure 102 : Net16 Préhenseur Plein Balai

Afin de déterminer l’état de la pince, ce réseau gère l’activation du bit indiquant que le préhenseur est plein lorsque le balai est correctement saisi.

Dans Réseau 17 : Préhenseur vide

Net17 Préhenseur Vide

Figure 103 : Net17 Préhenseur Vide

Afin de déterminer l’état de la pince, ce réseau gère l’activation du bit indiquant que le préhenseur est vide.

Dans Réseau 19 : Mémorisation demande prise en défaut de sens

Net19 Défaut De Sens

Figure 104 : Net19 Défaut De Sens

On mémorise la demande de prise lorsqu’elle est en défaut de sens.

Dans Réseau 20 : Memorisation demande prise en défaut d'emplacement

Net20 Défaut d’emplacement

Figure 105 : Net20 Défaut d’emplacement

On mémorise la demande de prise lorsqu’elle est en défaut d’emplacement. C’est un défaut créé pour la démonstration pour les salons pour démontrer de notre savoir-faire.

Gestion des différents échanges entre les entrées/sorties digitales (DI) de l’automate et celles du robot.

Net22 Gestion DI

Figure 106 : Net22 Gestion DI

Réseau 23 : DI1 - La demande d’exécution du code de trajectoire du robot :

DI1 DMD D’exécution

Figure 107 : DI1 DMD D’exécution

Demande de trajectoire d’attente lorsque la machine est en pause :

DI2 DMD Traj d'attente

Figure 108 : DI2 DMD Traj d'attente

Demande de position Home du robot :

DI4 DMD Traj HOME

Figure 109: DI4 DMD Traj HOME

Demande de prise pièce du robot :

DI5 DMD Traj Prise

Figure 110 : DI5 DMD Traj Prise

Demande de trajectoire de dépose pièce sur la grille :

DI6 DMD Traj Dep Grille

Figure 111 : DI6 DMD Traj Dep Grille

Demande de trajectoire de dépose dans le bol vibrant :

DI7 DMD Traj Dep Bol

Figure 112 : DI7 DMD Traj Dep Bol

Demande de trajectoire de dépose dans le bac :

DI8 DMD Traj Dep Bac

Figure 113 : DI8 DMD Traj Dep Bac

Demande de trajectoire de prise du balai :

DI10 DMD Traj PR Balai

Figure 114 : DI10 DMD Traj PR Balai

Demande de trajectoire de balayage de la grille :

DI11 DMD Traj Balai Grille

Figure 115 : DI11 DMD Traj Balai Grille

Demande de trajectoire de dépose du balai :

DI12 DMD Traj Dep Balai

Figure 116 : DI12 DMD Traj Dep Balai

Autorisation de prise pièce lorsque le robot est en position d’attente de cette entrée digitale :

DI15 Auto prise pièce

Figure 117 : DI15 Auto prise pièce

On autorise le robot à se mouvoir dans la ZONE1 :

DI17 SpaceCheck 01

Figure 118 : DI17 SpaceCheck 01

Voir photo ci-dessous pour la localisation des deux zones de la machine :

ZONE1 verte. ZONE2 rouge

Figure 119 : ZONE1 verte. ZONE2 rouge

Il ya deux SpaceCheck :

  1. SpaceCheck ZONE1 verte ;
  2. SpaceCheck ZONE2 rouge.

On autorise le robot à se mouvoir dans la SpaceCheck 02 :

DI18 Auto move SpaceCheck 02

Figure 120 : DI18 Auto move SpaceCheck 02

Vérification de l’ouverture de la pince pour la prise pièce avant d’envoyer l’information au robot :

DI19 Vérif Open PR Pièce

Figure 121 : DI19 Vérif Open PR Pièce

Vérification de l’ouverture de la pince pour la dépose avant d’envoyer l’information au robot :

DI20 Vérif Open Dep Pièce

Figure 122 : DI20 Vérif Open Dep Pièce

Pince est en position fermée :

DI21 pos fermée PR Pièce

Figure 123 : DI21 pos fermée PR Pièce

Vérification de l’ouverture de la pince pour la dépose du balai avant d’envoyer l’information au robot :

DI22 open DEP balai

Figure 124 : DI22 open DEP balai

Vérification de la fermeture de la pince pour la prise du balai avant d’envoyer l’information au robot :

DI23 Close PR Balai

Figure 125 : DI23 Close PR Balai

On peut annuler les trajectoires robot grâce à cette DI lors d’une demande de nouvelle grille :

DI27 Cancel Traj

Figure 126 : DI27 Cancel Traj

On acquitte les défauts programmés du robot :

DI30 Ack Def

Figure 127 : DI30 Ack Def

Simulation :

DI32 Simulation robotguide

Figure 128 : DI32 Simulation robotguide

Le bit %M2.2 permet de sauter certaines parties du programme et facilite les tests.

Gestion des différents échanges avec les GI (Gestion In) entre l’automate et le robot :

Net 56 Échanges GI

Figure 129 : Net 56 Échanges GI

Il existe deux modes de contrôle de trajectoire : par bit et par numéro :

GI1 Traj Exécuter

Figure 130 : GI1 Traj Exécuter

Cette première GI permet d’envoyer le code correspondant à la trajectoire que l’on souhaite exécuter.

Code de trajectoire utilisé pour la trajectoire d’attente lorsque la machine est à l’arrêt :

GI2 Code Traj D’attente

Figure 131 : GI2 Code Traj D’attente

Code envoyé au robot pour la dépose sur la grille en X :

GI5 Côte Dep Grille X

Figure 132 : GI5 Côte Dep Grille X

Code envoyé au robot pour la dépose sur la grille en Y :

GI6 Côte Dep. Grille Y

Figure 133 : GI6 Côte Dep. Grille Y

Code envoyé au robot pour la prise du posage en Z :

GI7 Côte PR. pièce POS Z

Figure 134 : GI7 Côte PR. pièce POS Z

Angle envoyé au robot pour la prise de la pièce :

GI8 Angle prise pièce

Figure 135 : GI8 Angle prise pièce

Cote de dépose dans le bac des pièces, déplacement en X :

GI10 Côte Dep bac X

Figure 136 : GI10 Côte Dep bac X

Envoi de la coordonnée du plateau pour la dépose en X :

GI5 Coord Départ Tab X

Figure 137 : GI5 Coord Départ Tab X

Envoi de la coordonnée du plateau pour la dépose en Y :

GI6 Coord Départ Tab Y

Figure 138 : GI6 Coord Départ Tab Y

La vitesse prédéfinie par l’automate est envoyée au robot :

GI25 Speed Max Robot

Figure 139 : GI25 Speed Max Robot

Afin de choisir le mode entre DI et GI pour la sélection des trajectoires :

GI29 Choix Mode Traj

Figure 140 : GI29 Choix Mode Traj