37 0 11MB
Formation niveau 1
Sommaire Chapitres Niveau 1 – Jour 1 I. Universal Robots II. Matériel & caractéristiques techniques III. Configuration du robot IV. TCP et montage V. Repères et déplacements VI. Configuration des E/S VII. Programmation – Fonctions de base Niveau 1 – Jour 2 I. Programmation – Fonctions avancées II. Programmation – Assistants III. Sécurité – Réglementation IV. Sécurité – Configuration V. Service
Niveau 2 – Jour 1 I. Programmation – URScript II. Programmation – TCP III. Programmation – Travail sur les fonctions IV. Communication V. Serveurs et interface clients VI. Divers
Universal Robots Situation Siège social à Odense – Danemark Site de développement et de production Chronologie 2005 : Fondation 2009 : UR5 2012 : UR10, 1600 robots 2014 : CB3 adaptation des paramètres de sécurité 2015 : UR3, 3500 robots, 2015 : Rachat par Teradyne pour 285M$ www.universal-robots.com
Odense
Copenhague
Universal Robots Chiffres 29M€ de chiffre d’affaire en 2014 dont 4M€ de bénéfice 300 employés dans le monde +300 distributeurs dans 55 pays 750 robots en France 10 000 dans le Monde
Universal Robots Possibilités Applications Encollage Chargement/déchargement de machines à commande numérique Conditionnement et palettisation Inspection qualité Lecture de codes à barre Vissage Adopté par BMW, Volkswagen, Renault, PSA Peugeot Citroën, Valeo, Michelin, LVMH, L’OREAL …
Sommaire Chapitres Niveau 1 – Jour 1 I. Universal Robots II. Matériel & caractéristiques techniques III. Configuration du robot IV. TCP et montage V. Repères et déplacements VI. Configuration des E/S VII. Programmation – Fonctions de base Niveau 1 – Jour 2 I. Programmation – Fonctions avancées II. Programmation – Assistants III. Sécurité – Réglementation IV. Sécurité – Configuration V. Service
Niveau 2 – Jour 1 I. Programmation – URScript II. Programmation – TCP III. Programmation – Travail sur les fonctions IV. Communication V. Serveurs et interface clients VI. Divers
Matériel & Caractéristiques techniques Gamme
UR3
UR5
UR10
6
6
6
Charge
3 kg
5 kg
10 kg
Poids
11 kg
18,4 kg
28,9 kg
Répétabilité
± 0,1 mm
± 0,1 mm
± 0,1 mm
Rayon de travail
500 mm
850 mm
1 300 mm
IP64
IP54
IP54
Nombre d’axes
Indice de protection
Matériaux Armature en aluminium Capot de protection en polypropylène UR3, UR5 & UR10
Matériel & Caractéristiques techniques Axes et espace de travail
Poignet 1 UR3
UR5
UR10
Axe 1 à 5
± 360°
± 360°
± 360°
Axe 6
± infini
± 360°
± 360°
Axe 1 à 2
± 180°/sec
± 180°/sec
± 120°/sec
Axe 3
± 180°/sec
± 180°/sec
± 180°/sec
Axe 4 à 6
± 360°/sec
± 180°/sec
± 180°/sec
Poignet 2
Degré de liberté
Poignet 3
Vitesse
Coude
Epaule
Atteignabilité
Base
Matériel & Caractéristiques techniques Abaques de charges Centre de gravité
Charge
UR3
UR5
UR10
3kg
5kg
10kg
Charge (kg) / Centre de gravité (mm) 10kg / 16cm 5kg / 35cm 3kg / 12cm
UR3
UR5
UR10
Matériel & Caractéristiques techniques Contrôleur
CB3.1 Alimentation Encombrement
110/240VAC – 50/60Hz 475 x 423 x 268mm
Poids
11kg
Indice de protection
IP20 Intérieur contrôleur CB3 Contrôleur CB3
Matériel & Caractéristiques techniques Entrées/Sorties
CB3.1 Alimentation
24V/2A
Port E/S contrôleur
16 entrées digitales 16 sorties digitales 2 entrées analogiques 2 sorties analogiques
Protocoles
Ethernet TCP/IP Modbus TCP Profinet EtherNet/IP
Port E/S Outil
2 entrées digitales 2 sorties digitales 2 entrées analogiques
2 entrées d’arrêt d’urgence 2 entrées d’arrêt de protection 8 entrées configurables 8 sorties configurables
8 entrées digitales 8 sorties digitales
2 entrées analogiques 2 sortie analogiques
Matériel & Caractéristiques techniques Composant
Compact Flash
Carte-mère Mémoire Compact Flash/Clé USB Système d’exploitation : Linux Carte de sécurité
Carte de sécurité
Carte-mère
Matériel & Caractéristiques techniques Connectique RJ45 : liaison carte-mère/carte sécurité RJ45 : liaison carte-mère/communication extérieure USB : liaison carte-mère/prise USB écran DVI : affichage écran tactile RS232 : communication écran tactile Carte Compact Flash/Clé USB : système linux
USB Teach Pendant
RJ45 Extérieure
RJ45 Carte mère/sécurité DVI Teach Pendant
Série RS232 Teach Pendant
Matériel & Caractéristiques techniques Teach Pendant
Teach Pendant Taille
12’’
Type
Tactile résistif, mono touche
Poids
1,5 kg
Indice de protection
Bouton fonctionnement libre Bouton Power
IP20 Prise USB
Bouton d’arrêt d’urgence
Sommaire Chapitres Niveau 1 – Jour 1 I. Universal Robots II. Matériel & caractéristiques techniques III. Configuration du robot IV. TCP et montage V. Repères et déplacements VI. Configuration des E/S VII. Programmation – Fonctions de base Niveau 1 – Jour 2 I. Programmation – Fonctions avancées II. Programmation – Assistants III. Sécurité – Réglementation IV. Sécurité – Configuration V. Service
Niveau 2 – Jour 1 I. Programmation – URScript II. Programmation – TCP III. Programmation – Travail sur les fonctions IV. Communication V. Serveurs et interface clients VI. Divers
Paramètre du contrôleur Menu principal Interface Polyscope Linux Développé par UR Mise à jour gratuite et régulière
Exécuter le programme Ouvrir et exécuter un programme Programmer le robot Modifier un programme ou en créer un nouveau Configuration du robot Réglage des paramètre systèmes Arrêter le robot Mettre le robot et le contrôleur hors tension A propos Version du contrôleur
Paramètre du contrôleur A propos de Information sur les versions Interface utilisateur Contrôleur du robot Processeur A et B Adresse IP Numéro de série
Paramètre du contrôleur Menu configuration robot Réglage des paramètres système Initialiser le robot Langue et unités Mise à jour robot Régler le mot de passe Etalonner l’écran Configuration réseau Régler l’heure Configuration URCaps
Menu et navigation Initialiser le robot Visualiser l’état du robot Contrôler la charge utile paramétrée Charger le fichier d’installation
Voyant
Tension
Freins
Hors tension
Engagés
Sous tension
Engagés
Sous tension
Relachés
Menu et navigation Langue et unités Sélection langue 20 langues disponibles Commande programme en anglais Sélection unités Métrique ou impériale
Menu et navigation Régler les mots de passe Mot de passe système • Accès à la partie programmation • Facultatif Mot de passe sécurité • Accès aux paramètres de sécurité • Obligatoire
Menu et navigation Configuration réseau Réglage de l’adresse IP du contrôleur • Ethernet TCP/IP • Modbus TCP • Profinet • EtherNet/IP • Serveur • Interface client
Menu et navigation Régler l’heure Format de la date et de l’heure Important pour le journal
Sommaire Chapitres Niveau 1 – Jour 1 I. Universal Robots II. Matériel & caractéristiques techniques III. Configuration du robot IV. TCP et montage V. Repères et déplacements VI. Configuration des E/S VII. Programmation – Fonctions de base Niveau 1 – Jour 2 I. Programmation – Fonctions avancées II. Programmation – Assistants III. Sécurité – Réglementation IV. Sécurité – Configuration V. Service
Niveau 2 – Jour 1 I. Programmation – URScript II. Programmation – TCP III. Programmation – Travail sur les fonctions IV. Communication V. Serveurs et interface clients VI. Divers
TCP et montage Description Le TCP (Tool Center Point) est un point virtuel qui correspond à l’extrémité de l’outil Il permet d’apprendre facilement des points (rotations simplifiées)
Définir 1 ou plusieurs TCP Apprentissage des coordonnées de ce point en manuel ou automatique
TCP
TCP et montage Menu principal Programmer le robot Modifier un programme ou en créer un nouveau Avec ou sans protection Mot de passe système
TCP et montage Programmer le robot Programme Charger un programme existant Utiliser un modèle de programme Créer un nouveau programme
TCP et montage Installation Panneau d’installation Configuration du TCP Montage Configuration des E/S Sécurité Variables Client Modbus Fonction EtherNet/IP Profinet Programme par défaut Charger/Enregistrer
TCP et montage Configuration Installation Configuration point central de l’outil Définir 1 ou plusieurs TCP Distance entre la bride et l’extrémité de l’outil Définir les coordonnées [X,Y,Z, rX,rY,rZ] Apprentissage manuel ou automatique Procédure pour apprentissage en automatique Position Orientation TCP coché En cours d’utilisation Chargé par défaut au démarrage du programme Réglage de la charge utile Masse de l’outil Centre de gravité de l’outil
TCP et montage Apprentissage automatique – Position Pointer avec l’outil un même point sous 4 angles différents 1. Apprendre la position 1 2. Apprendre la position 2 3. Apprendre la position 3 4. Apprendre la position 4
Calcul automatique des distances en X, Y et Z du TCP (mm)
Point 2 Point 1
Point 3
Point 4
TCP et montage Apprentissage automatique – Orientation Configuration de l’orientation du TCP 1. Choisir une fonction (repère) 2. Régler un point Calcul automatique des rotations en X, Y et Z du TCP (rad)
Z
X
Y
TCP et montage Masse et centre de gravité Définir la masse de l’outil Définir le centre de gravité (CoG) de l’outil • Par défaut CoG = TCP • N’est pas calculé automatiquement
Voir les abaques de charge pour les limites
Centre de gravité
TCP et montage Montage et angle du robot Installation Montage Définir le positionnement du robot dans l’espace • Au sol • Tête en bas • De coté
TCP et montage Charger/enregistrer Installation Charger/Enregistrer Enregistrer le fichier d’installation (.installation) Contient les réglages et paramètres de tous les onglets Dissocié du programme robot Peut être commun à plusieurs programmes Au chargement d’un programme, le fichier d’installation qui lui est associé est appelé
Sommaire Chapitres Niveau 1 – Jour 1 I. Universal Robots II. Matériel & caractéristiques techniques III. Configuration du robot IV. TCP et montage V. Repères et déplacements VI. Configuration des E/S VII. Programmation – Fonctions de base Niveau 1 – Jour 2 I. Programmation – Fonctions avancées II. Programmation – Assistants III. Sécurité – Réglementation IV. Sécurité – Configuration V. Service
Niveau 2 – Jour 1 I. Programmation – URScript II. Programmation – TCP III. Programmation – Travail sur les fonctions IV. Communication V. Serveurs et interface clients VI. Divers
Repères et déplacements Fonctions Chez Universal Robots les repères sont appelés fonctions Une fonction est un système de coordonnée Ce système de coordonnées est défini par un point appelé origine et 3 vecteurs Z RZ
RX
X
Origine
Y
RY
Repères et déplacements Fonctions – Base
Fonction présente de base et ne peut être modifiée Origine au centre de la base +Y dans le sens du câble
Z RZ
RX
X
Y
RY
Repères et déplacements Fonctions – Outil
Origine au centre de la bride outils +Y à l’opposé du connecteur
RZ
Z X
RY
RX
Y
Repères et déplacements Fonctions – TCP
Origine au centre du TCP
RZ
Z X
RY
RX
Y
Repères et déplacements Fonctions – Utilisateur L’utilisateur peut définir ses propres fonctions Création en 3 étapes Définir l’origine Direction de Y Direction de X
Z Y RZ
RY
X RZ
Repères et déplacements Créer une fonction Installation Fonctions 3 types de fonction Point Ligne Plan
Création d’une fonction plan
Repères et déplacements Créer une fonction - Plan Fonction plan, définit en 3 points Origine Direction de +Y Direction de +X Propriétés Afficher axes : visualiser les axes sur le graphique Pas à pas : se déplacer dans le repère depuis la fenêtre des déplacements
Propriétés
Repères et déplacements Fenêtre de déplacement
Coordonnées du TCP dans la fonction
Choix de la fonction
Linéaire +X / -X +Y / -Y +Z / -Z Articulaire +rX / -rX +rY / -rY +rZ / -rZ
Déplacement linéaire
Déplacement articulaire
Vitesse de déplacement
Déplacement axe par axe
Repères et déplacements Trajectoire Les points de passage définissent la position cible Les déplacements définissent le type de trajectoire entre deux points de passage
Trajectoire Déplacement Point de passage
Repères et déplacements Nouveau programme Création d’un nouveau programme
Repères et déplacements Fenêtre programme Fenêtre programme Programmation
Fenêtre programme
Repères et déplacements Fenêtre de programmation – Présentation Arborescence du programme
Onglets commande
Arborescence du programme Contient les lignes de code Visualiser et suivre l’exécution en temps réel Outils Rechercher Annuler/refaire les modifications Entendre l’arborescence Tableau de bord Contrôler de l’exécution du programme Vitesse du robot Basculer le mode : simulation/robot Onglet commande Paramétrage de la fonction sélectionnée
Outils Tableau de bord
Repères et déplacements Onglet structure - Présentation Onglets structure Onglet structure Insérer des fonctions dans l’arborescence 3 catégories de fonctions De base Avancé Assistants Zone d’édition Copier/Coller/Couper Déplacer des instructions Supprime/suspendre des instructions
Catégories et fonctions
Zone d’édition
Repères et déplacements Ajouter un déplacement Fonction de base Déplacement
Ajouter un déplacement
Repères et déplacements Instruction – Déplacements Déplacement Affecte tous les points Règle la vitesse de l’accélération Type de déplacement : DéplacementA : déplacement articulaire DéplacementL : déplacement linéaire DéplacementP : déplacement process (linéaire lissé) DéplacementC : déplacement arc de cercle Ajouter des points de passages
Ajouter un point de passages
Type de déplacement
Repères et déplacements DéplacementA – Articulaire Paramètres
Déplacement le plus rapide Utile si aucune contrainte extérieure Paramètres Vitesse (°/s) Accélération (°/s²)
Point_1
Point_4
Point_2
Point_3
Repères et déplacements DéplacementL – Linéaire Paramètres
Trajectoires rectilignes Paramètres Vitesse (mm/s) Accélération (mm/s²)
Point_1
Point_2
Point_4
Point_3
Repères et déplacements DéplacementP – Process Paramètres
Vitesse constante Paramètres Vitesse (mm/s) Accélération (mm/s²) Zone de lissage (mm) Lissage ne peut pas être suivie d’une attente
Lissage Point_2
Point_1 Vitesse du TCP constante
Point_4 Petit lissage + vitesse élevé = Forte contrainte
Point_3
Repères et déplacements DéplacementC – Arc de cercle Inclus dans un déplacementP Trois points requis : 1. Départ 2. Intermédiaire 3. Fin
Point_2 (Intermédiaire) Point_1
Point_5
(Départ)
(Fin) Point_3
Point_4
Repères et déplacements Ajouter un point de passage Fonction de base PointPassage Impérativement intégré dans un déplacement Ajouter un point de passage
Repères et déplacements Instruction – Point de passage Renommer le point Type de point de passage : Fixe : point standard Relatif : relatif Variable : utilisation d’une variable Renommer le point Ajouter d’autres points
Ajouter d’autres points
Type de point de passage
Repères et déplacements Instruction – Point de passage Options avancées Régler la vitesse de l’accélération indépendamment du déplacement Régler un temps pour arriver au point Lissage Régler le lissage indépendamment du déplacement
Rayon de lissage Point_1
Lissage
Point_2
Options avancées
Point_4
Point_3
Repères et déplacements Point de passage – Fixe Apprendre le point
Point apprit
Apprendre le point
Repères et déplacements Point de passage – Relatif Apprendre deux points Résultat Distance relative Angle relatif
Résultat
Repères et déplacements Point de passage – Variable Sélection de la variable Variable de type pose
Sélection de la variable
Repères et déplacements Résumé Type de déplacement : DéplacementA : déplacement articulaire DéplacementL : déplacement linéaire DéplacementP : déplacement process (linéaire lissé) DéplacementC : déplacement arc de cercle
Type de point de passage : Fixe : point standard Relatif : relatif Variable : utilisation d’une variable
Repères et déplacements Règles programmation
Nœuds programme Vert : instruction fonctionnelle Orange italique : instruction à compléter Hiérarchie Vérifier le positionnement du curseur à chaque ajout de fonction
Repères et déplacements Fenêtre AutoMove
Remettre le robot en position initiale avant de lancer l’exécution Robot ombré Destination du robot
Repères et déplacements Sauvegarder/charger programme Sauvegarde du programme
Sauvegarde du programme (.urp) Disquette grisée : enregistrement effectué Disquette en couleur : possibilité d’enregistrer Enregistrer Mémoire contrôleur/clé USB Créer un dossier
Enregistrer
Paramètre du contrôleur Exécuter le programme Panneau opérateur Programme en cours Etat du programme Variables en temps réel
Repères et déplacements Exercice 1. 2. 3. 4. 5.
6. 7.
Naviguer dans les menus Créer un TCP Créer une fonction (repère) Enregistrer le fichier d’installation « FORMATION » Créer un nouveau programme « DEPLACEMENT » Effectuer le circuit Enregistrer le programme dans un dossier
Rappel sur la création d'une fonction Point 1 : Définir l’origine Point 2 : Direction de +Y Point 3 : Direction de +X
Sommaire Chapitres Niveau 1 – Jour 1 I. Universal Robots II. Matériel & caractéristiques techniques III. Configuration du robot IV. TCP et montage V. Repères et déplacements VI. Configuration des E/S VII. Programmation – Fonctions de base Niveau 1 – Jour 2 I. Programmation – Fonctions avancées II. Programmation – Assistants III. Sécurité – Réglementation IV. Sécurité – Configuration V. Service
Niveau 2 – Jour 1 I. Programmation – URScript II. Programmation – TCP III. Programmation – Travail sur les fonctions IV. Communication V. Serveurs et interface clients VI. Divers
Configuration – E/S Contrôleur
2 entrées d’arrêt d’urgence 2 entrées d’arrêt de protection
1 entrée marche à distance 1 entrée arrêt à distance 1 alimentation interne fournie (PWR et GND) 1 alimentation bornier E/S (24V et 0V)
8 entrées configurables 8 sorties configurables
8 entrées digitales 8 sorties digitales
2 entrées analogiques (0..10V ou 4..20mA) 2 sortie analogiques (0..10V ou 4..20mA)
Configuration – E/S Câblage Arrêt d’urgence Arrêt de catégorie 1
Arrêt de protection Arrêt de catégorie 2
Configuration – E/S Câblage Entrées digitales
Sorties digitales
Configuration – E/S Outil Connecteur outil M8 – 8broches 2 entrées digitales 2 sorties digitales (NPN) 2 entrées analogiques (0..10V ou 4..20mA)
Alimentation
Entrées digitales
Sortie digitales
Entrées analogiques
Configuration – E/S Fenêtre E/S Visualisation et pilotage des entrées/sorties
Configuration – E/S Visualisation CONTROLEUR
Visualisation Led grise : Off Led bleue : On Réglage des signaux analogiques
Pilotage des sorties
ENTREES
SORTIES
Réglage
OUTIL
Configuration – E/S Configuration E/S Installation Configuration E/S Renommer les signaux Définir une action • Entrées et sorties digitales analogique uniquement Niveau d’accès Sorties standard uniquement
ENTREES
SORTIES
Renommer Action Niveau d’accès
Configuration – E/S Action Fonctions entrées digitales
Démarrer le programme Arrêter le programme Mettre en pause le programme Fonctionnement libre
Fonctions sorties digitales et analogiques
Signal haut lorsque le programme ne s’exécute pas Signal bas lorsque le programme ne s’exécute pas Signal haut lorsque le programme s’exécute et bas lorsqu’il est arrêté
Signal min quand le programme ne s’exécute pas Signal max quand le programme ne s’exécute pas
Sommaire Chapitres Niveau 1 – Jour 1 I. Universal Robots II. Matériel & caractéristiques techniques III. Configuration du robot IV. TCP et montage V. Repères et déplacements VI. Configuration des E/S VII. Programmation – Fonctions de base Niveau 1 – Jour 2 I. Programmation – Fonctions avancées II. Programmation – Assistants III. Sécurité – Réglementation IV. Sécurité – Configuration V. Service
Niveau 2 – Jour 1 I. Programmation – URScript II. Programmation – TCP III. Programmation – Travail sur les fonctions IV. Communication V. Serveurs et interface clients VI. Divers
Programmation – Fonctions de Base Onglet structure Onglet structure Insérer des fonctions dans l’arborescence 3 catégories de fonctions De base Avancé Assistants
Programmation – Fonctions de Base Fonction – Attendre Attente d’une condition Aucune attente Attendre un certain temps (s) Attendre l’état d’une entrée Attendre une entrée analogique Attendre une
Ensemble de conditions (E/S, variables, résultat de calcul etc…)
Programmation – Fonctions de Base Editeur d’expression Affecter une valeur Directement Résultat d’opération
Clavier
Fonctions logiques Fonctions mathématiques
Entrées/Sorties Variables
Programmation – Fonctions de Base Fonction – Régler Faire une action Aucune action Régler l’état d’une sortie Régler l’état d’une sortie analogique Régler Incrémenter une variable Régler la charge utile Régler le TCP
Programmation – Fonctions de Base Fonction – Pop-up Attendre une action opérateur Programme en pause Type du message Message Avertissement Erreur
Programmation – Fonctions de Base Fonction – Stop Stop Arrête l’exécution du programme
Programmation – Fonctions de Base Fonction – Commentaire Ajouter un commentaire Transparent dans le déroulement du programme
Programmation – Fonctions de Base Fonction – Dossier Organiser le programme Regrouper différentes parties du programme Transparent dans le déroulement du programme
Programmation – Fonctions de Base Exercice 1.
Eteindre le contrôleur et brancher la boite à bouton
2.
Configurer les signaux suivant Digital_in[0] = Démarrer le programme Digital_in[3] = Mettre le programme en pause Digital_in[4] = BOUTON_1 Digital_out[0] = Haut lorsque le programme s’exécute et bas lorsqu’il est arrêté Digital_out[3] = VOYANT_1 Tool_in[0] = ETAT Tool_in[1] = MOUVEMENT Tool_out[0] = COMMANDE Tool_out[1] = VITESSE
3.
Créer un nouveau programme « FONCTION_BASE » Le robot démarre en position initiale Prendre une pièce à un endroit Retourner en position initale Allumer le voyant et attendre un appui sur le bouton 1 Eteindre le voyant Déposer la pièce à un autre endroit Créer un pop-up avertissant l’opérateur que le cycle est terminé Revenir en position initiale
4.
Enregistrer le programme dans le dossier « FORMATION »
Sommaire Chapitres Niveau 1 – Jour 1 I. Universal Robots II. Matériel & caractéristiques techniques III. Configuration du robot IV. TCP et montage V. Repères et déplacements VI. Configuration des E/S VII. Programmation – Fonctions de base Niveau 1 – Jour 2 I. Programmation – Fonctions avancées II. Programmation – Assistants III. Sécurité – Réglementation IV. Sécurité – Configuration V. Service
Niveau 2 – Jour 1 I. Programmation – URScript II. Programmation – TCP III. Programmation – Travail sur les fonctions IV. Communication V. Serveurs et interface clients VI. Divers
Programmation – Fonctions avancées Variable
Une variable est une mémoire de stockage La variable peut être lue La variable peut être modifiée
Programmation – Fonctions avancées Type de variable Type
Valeurs
Exemple
Remarque
bool
True ou False
test = True
Majuscule
[-2 147 483 648 … 2 147 483 647]
test = 4 256
32bits
test = 4 256.085
32bits séparateur décimal « . »
int float
string
chaine de caractères
test = ‘’Hello, World !’’
Entre guillemet
pose
p[x, y, z, rx, ry, rz]
test = p[0.4, 0.4, 0.0, 0.0, 3.19, 0.0]
Coordonnées dans l’espace x,y,z en mètre rx,ry,rz en radian
[a, b, c,…]
test = [1, 2, 4, -8060, 552]
Tableau d’un type unique Pas de type string
list
Programmation – Fonctions avancées Portée Type
Valeurs
Exemple
Remarque
bool
True ou False
test = True
Majuscule
[-2 147 483 648 … 2 147 483 647]
test = 4 256
32bits
test = 4 256.085
32bits séparateur décimal « . »
int float
string
chaine de caractères
test = ‘’Hello, World !’’
Entre guillemet
pose
p[x, y, z, rx, ry, rz]
test = p[0.4, 0.4, 0.0, 0.0, 3.19, 0.0]
Coordonnées dans l’espace x,y,z en mètre rx,ry,rz en radian
[a, b, c,…]
test = [1, 2, 4, -8060, 552]
Tableau d’un type unique Pas de type string
list
Variable de programme • Déclarée dans le programme • Accessible que dans le programme • Variable non mémorisée à la mise hors tension du contrôleur Variable d’installation • Déclarée dans l’onglet installation • Accessible dans tous les programmes utilisant le même fichier d’installation • Variable mémorisée à la mise hors tension du contrôleur
Programmation – Fonctions avancées Variable d’installation Installation Variables Créer une variable d’installation Nommer la variable Affecter une valeur Déduction du type Visualiser la valeur actuelle en temps réelle Variable d’installation • Déclarée dans l’onglet installation • Accessible dans tous les programmes utilisant le même fichier d’installation • Sauvegardée sur la carte mémoire
Programmation – Fonctions avancées Variable de programme Une variable de programme est créée dès qu’une fonction lui affecte pour la première fois une valeur (fonction affectation …) Créer une variable de programme Nommer la variable Affecter une valeur Déduction du type Visualiser la valeur actuelle Variable de programme • Déclarée dans le programme • Accessible que dans le programme • Valeur remise a zéro lorsque l’on arrête le contrôleur
Programmation – Fonctions avancées Initialisation des variables programmes Possibilité d’initialiser une variable au démarrage du programme Obligation d’effectuer l’initialisation lorsque la première apparition de la variable est une comparaison
Séquence d’initialisation Valeur d’initialisation
Programmation – Fonctions avancées Fonction avancée Fonction avancée Affectation La fonction affectation permet la création ou la modification d'une variable Ajouter une affectation
Programmation – Fonctions avancées Fonction – Affectation Source Créer une variable de programme Nommer la variable Affecter une valeur Déduction du type Source Expression Opérateur
Programmation – Fonctions avancées Fonction – Si/SinonSi/Sinon Vérifie une condition, si vraie exécute les lignes sous-jacentes Etat d’un capteur Valeur d’une variable Combinaison de valeur Si … Vérifie une condition … SinonSi … Vérifie une nouvelle condition Facultatif … Sinon Quand aucune condition n’est vraie Facultatif Contrôle de la condition
Programmation – Fonctions avancées Fonction – Switch Vérifie une condition, si vraie exécute les lignes sous-jacentes Valeur d’une variable Combinaison de valeur Uniquement des entiers
Switch … Condition … Cas … Vérifie la condition … Cas par défaut Si aucune condition n’est vraie Facultatif
Programmation – Fonctions avancées Fonction – Boucle Effectuer un certain nombre de fois les instructions sousjacente Boucle toujours Boucle un nombre de fois définie Boucle tant que
Contrôle de la condition Une fois par cycle En continue
Contrôle de la condition
Programmation – Fonctions avancées Sous-Programme Toutes les lignes du sous-programme sont exécutées avant de revenir au programme ”principal” Diviser en 2 parties Sous-programme Appel du sous Programme
Programme principal Sous-programmes Appeler Sous-programme 1
Sous-programme 1
Appeler Sous-programme 2
Sous-programme 2
Programmation – Fonctions avancées Fonction – Sous-Programme Création En dehors du programme principal Utiliser un programme existant Créer un nouveau Appel Dans le programme principal
Charger un programme (.urp)
Programmation – Fonctions avancées Thread et Evènement Thread Programme parallèle Tourne continuellement Evènement Programme parallèle Mise en route par une condition Utilité Communication Piloter des matériels (convoyeur, voyant …) Effectuer des calculs lourds
Programme principal
Thread Evènement Déclencheur: DO[0]=HI
Programmation – Fonctions avancées Fonction – Thread Paramètres Boucle toujours Suivre l’exécution du programme
Programme principal
Thread
Programmation – Fonctions avancées Fonction – Evènement Régler la condition
Programme principal
Evènement Déclencheur: DO[0]=HI
Programmation – Fonctions avancées Boucle infinie détectée Erreur de boucle infinie Ajouter une petite temporisation (fonction attendre 0.01s)
Programmation – Fonction avancées Exercice 1.
Créer un nouveau programme « FONCTION_AVANCE_1»
2.
Configurer les signaux suivants : Digital_in[7] = BOUTON_2 Digital_out[4] = VOYANT_2
3.
Créer les sous-programmes suivants : Un sous-programme de prise Un sous-programme de dépose n°1 Un sous-programme de dépose n°2
4.
VOYANT_1 = True Dépose n°1 en cours (utiliser un Thread) VOYANT_2 = True Dépose n°2 en cours (utiliser un Thread)
Enregistrer le programme dans le dossier « FORMATION »
Dépose n°2
Dépose n°1
Déroulement Appeler le sous-programme de prise En fonction de l’état du BOUTON_1 BOUTON_1 = True Appeler le programme de dépose n°1 BOUTON_1 = False Appeler le programme de dépose n°2 Revenir en position initiale et recommencer le cycle BOUTON_2 = True Arrête le programme
5.
P_HOME
Prise
Sommaire Chapitres Niveau 1 – Jour 1 I. Universal Robots II. Matériel & caractéristiques techniques III. Configuration du robot IV. TCP et montage V. Repères et déplacements VI. Configuration des E/S VII. Programmation – Fonctions de base Niveau 1 – Jour 2 I. Programmation – Fonctions avancées II. Programmation – Assistants III. Sécurité – Réglementation IV. Sécurité – Configuration V. Service
Niveau 2 – Jour 1 I. Programmation – URScript II. Programmation – TCP III. Programmation – Travail sur les fonctions IV. Communication V. Serveurs et interface clients VI. Divers
Programmation – Assistants Introduction Les assistants sont des modules de programme prédéveloppés Palette Palettiser/dépalettiser
Rechercher Empilage/Dépilage Force Suivi du convoyeur Tracking Euromap Standard d’echange pour machine à injection Seule option payante (soft et hardware)
Programmation – Assistants Palette – Présentation Déterminer le modèle de palettisation Ligne Carré Boite Liste
Modèle Définir le nombre de pièce La vitesse de prise/dépose des pièces Séquence palette Le cycle à effectuer pour chaque pièce
Programmation – Assistants Palette – Modèle Modèle Définir le nombre de pièce La vitesse de prise/dépose des pièces Mémoriser le compte des pièces entre chaque exécution du programme
Points modèles Apprendre les points des pièces situées aux extrémités
Nombre de pièce
a2eme
a1er
a3eme
a4eme
Mémoriser le compte
Programmation – Assistants Palette – Séquence palette Séquence palette Le cycle à effectuer pour chaque pièce Séquence Par défaut Modifiable
Point d’ancrage
Approche
PointModele= a1er
Quit
Programmation – Assistants Recherche Type de recherche Empilage Dépilage
Programmation – Assistants Recherche Régler le point de départ de la recherche Spécifier l’épaisseur Même épaisseur pour tous les pièces Pièce trouvée quand est vraie Signal d’un capteur
Programmation – Assistants Recherche Régler la direction de la recherche Régler l’arrêt de la fonction de recherche Séquence Par défaut Modifiable Renseigner le même point pour PosDém et PosEmpil
Programmation – Assistants Force Compliance avec l’environnement Ajuster une position par rapport à une force définie Spécifications Plage de force ± 125 N Précision de la force ± 10 N
Plage du couple ± 50 Nm Précision du couple ± 5 Nm
Programmation – Assistants Force Type
Fonction Base Outil Utilisateur Type Simple Cadre Point Mouvement
Fonction
Force (N)
Bouton Test
Force
Bouton Test
Programmation – Assistants Force - Simple Axe compliant Axe Z Direction de la force dans la fonction Axe Z
Point_1
Point_4
Point_2
Point_3
Programmation – Assistants Force - Cadre Axe compliant Au choix Direction de la force dans la fonction Fonction des axes sélectionnés
Programmation – Assistants Force - Point Spécification d’un point cible Adaptation de la force le long de la trajectoire
Programmation – Assistants Force - Mouvement Mouvement selon l’axe X Force selon l’axe Y Axe X non compliant Apprentissage non disponible
Programmation – Assistants Force - Exemple
Programmation – Assistants Suivi du convoyeur - Présentation Les trajectoires robot seront asservie à la vitesse du convoyeur Nécessite de paramétrer la fonction
Programmation – Assistants Suivi du convoyeur - Paramétrage Installation Suivi de convoyeur Paramétrage de l’assistant suivi du convoyeur Type d’encodeur (codeur) Progressif (incrémental) Absolu (uniquement Modbus) Mode Montée (front montant, x1 impulsion) Descente (front descendant, x1 impulsion) Montée et descente (les deux, x2 impulsions) Quadrature (les deux, x2 voies A et B, x4 impulsions) Entrée voie A/voie B Entrée digitale 0,1,2 ou 3 (comptage rapide 40kHz) Type de convoyeur Linéaire : impulsion/mètre et la direction suivie Circulaire : impulsion/révolution et le centre de rotation
Programmation – Assistants Exercice – Partie 1 1.
Créer un nouveau programme « ASSISTANT»
2.
Dépalettiser des pièces sur une ligne
3.
Palettiser sur une palette
4.
Enregistrer le programme dans le dossier « FORMATION »
Programmation – Assistants Correction – Partie 1 1.
Créer un nouveau programme « ASSISTANT»
2.
Dépalettiser des pièces sur une ligne
3.
Palettiser sur une palette
4.
Enregistrer le programme dans le dossier « FORMATION »
Programmation – Assistants Exercice – Partie 2 1.
Manipuler la fonction Force
Point_1
Point_4
Point_2
Point_3
Sommaire Chapitres Niveau 1 – Jour 1 I. Universal Robots II. Matériel & caractéristiques techniques III. Configuration du robot IV. TCP et montage V. Repères et déplacements VI. Configuration des E/S VII. Programmation – Fonctions de base Niveau 1 – Jour 2 I. Programmation – Fonctions avancées II. Programmation – Assistants III. Sécurité – Réglementation IV. Sécurité – Configuration V. Service
Niveau 2 – Jour 1 I. Programmation – URScript II. Programmation – TCP III. Programmation – Travail sur les fonctions IV. Communication V. Serveurs et interface clients VI. Divers
Sécurité – Réglementation Directive, normes et documentation Directive Machine 2006/42/CE ISO 12100:2010 Sécurité des machines -- Principes généraux de conception -- Appréciation du risque et réduction du risque ISO 10218-2:2011 Robots et dispositifs robotiques -- Exigences de sécurité pour les robots industriels -- Partie 2: Systèmes robots et intégration ISO 13849-1:2015 Sécurité des machines -- Parties des systèmes de commande relatives à la sécurité -- Partie 1: Principes généraux de conception
ISO 13849-1:2015 Sécurité des machines -- Parties des systèmes de commande relatives à la sécurité -- Partie 1: Principes généraux de conception ISO/TS 15066:2016 Robots et dispositifs robotiques -- Robots coopératifs
CETIM Les robots collaboratifs : Guide d’intégration de la santé et de la sécurité
Sécurité – Réglementation ISO 12100 – Appréciation et réduction du risque
1
2 Risque non réduit 3
4
•Identifier les scenarios à risques •Déterminer les limites de la machines •Identifier les phénomène dangereux •Estimer/évaluer les risques •Mettre en place les solutions •Eliminer ou réduire les risques •Prendre des mesures de protections si le risque ne peut être éliminer •Informer les utilisateur des risques résiduels •Vérifier et valider les solutions •Pour les efforts, les distance, les temps, l’ergonomie •Pour les essais pratiques des dispositif de limitation, de détection •Pour les niveau de fiabilité (PLr) partie matérielles et logicielles •Pour l’ensemble des cycles de vie de l’îlot et des scénarios •Compléter avec les autres exigences •Information utilisateurs •Exigence relatives au marquage CE •Exigence aux autres directives
Sécurité – Réglementation ISO 12100 – Appréciation et réduction du risque Définitions de l’espace de travail, des zones restreintes, collaborative et non accessible Position, trajectoires et vitesse du robot Emplacement des commandes Conception de l’outils Vitesse de fermeture Course minimale des mords Force de serrage Bord tranchant
Sécurité – Réglementation ISO 12100 – Appréciation et réduction du risque
Sécurité – Réglementation ISO 10218 – Exigences de sécurité pour les robots La norme décrit Les prescriptions de sécurité pour l’intégration d’un robot Fournie des lignes directrices aux intégrateurs de robot Prends en compte l’implantation du robot et des équipements Modes collaboratifs identifiés Arrêt nominal de sécurité contrôlé Guidage manuel Contrôle vitesse et distance de séparation Limitation en force et en puissance
Sécurité – Réglementation Certification 15 Fonctions de sécurité niveau Pl d selon ISO 13849 Arrêt d’urgence Arrêt de protection Fonctions de surveillance Axes : position, vitesse, couple TCP : position, vitesse, force Entrées/Sorties de sécurité
Sommaire Chapitres Niveau 1 – Jour 1 I. Universal Robots II. Matériel & caractéristiques techniques III. Configuration du robot IV. TCP et montage V. Repères et déplacements VI. Configuration des E/S VII. Programmation – Fonctions de base Niveau 1 – Jour 2 I. Programmation – Fonctions avancées II. Programmation – Assistants III. Sécurité – Réglementation IV. Sécurité – Configuration V. Service
Niveau 2 – Jour 1 I. Programmation – URScript II. Programmation – TCP III. Programmation – Travail sur les fonctions IV. Communication V. Serveurs et interface clients VI. Divers
Sécurité – Configuration Fenêtre sécurité Installation Sécurité Nécessite le mot de passe de sécurité pour la modification des paramètres Paramètres de sécurité du mode normal et réduit Limite générales Limites d’articulation Limites E/S de sécurité Au déverrouillage, passe hors tension
Redémarrage du contrôleur robot à l’application des paramètres Synchronisé Modifié Invalide Les paramètres de sécurité sont tout le temps actifs (automatique, manuel et fonctionnement libre)
Déverrouiller
Appliquer
Sécurité – Configuration Modes de sécurité Mode normal • Mode de sécurité activé par défaut Mode réduit Actif lors du passage du TCP derrière un plan de déclenchement du mode réduit Actif lors de l’utilisation d’une entrée de sécurité pour le déclenchement du mode réduit Mode récupération Actif lorsque le robot est en violation de l’un des modes de sécurité Ce mode permet de bouger manuellement le robot jusqu’à ce qu’il ne soit plus en violation Il est impossible de lancer un programme lorsque ce mode est actif
Sécurité – Configuration Limites générales – Paramètres de base Les limites générales s’appliquent uniquement au TCP Force (N) 100 à 250 N Puissance (W) 80 à 1000 W Vitesse (mm/s) De 160 à 5000 mm/s Quantité de mouvement (kg.m/s) 4 à 100 kg.m/s Paramètres de base Utiliser les préréglage Paramètres avancés Réglages personnalisés
Paramètre avancés
Sécurité – Configuration Limites générales – Paramètres avancés Les limites générales s’appliquent uniquement au TCP Force (N) 100 à 250 N Puissance (W) 80 à 1000 W Vitesse (mm/s) De 160 à 5000 mm/s Quantité de mouvement (kg.m/s) 4 à 100 kg.m/s Paramètres de base Utiliser les préréglages Paramètres avancés Réglages personnalisés
Paramètre de base
Sécurité – Configuration Tolérance Définition « Le bras du robot tente de prévenir toute violation du système de sécurité et donne un arrêt de protection en arrêtant l’exécution du programme lorsque la limite moins la tolérance est atteinte. »
Grandeur physique
Arrêt de catégorie 1
Arrêt de catégorie 2
Limite
Limite - tolérance
Temps
Consulter le manuel utilisateur pour connaître le temps de réaction du système
Tolérance
Sécurité – Configuration Limites d’articulation Les limites d’articulation s’appliquent aux axes Vitesse des axes (°/s) Plage de position (°)
Sécurité – Configuration Limites d’articulation – Axes – Position maximale
UR3
UR5
UR10
Normal
Réduit
Normal
Réduit
Normal
Réduit
A0
-363 – 363°
-363 – 363°
-363 – 363°
-363 – 363°
-363 – 363°
-363 – 363°
A1
-363 – 363°
-363 – 363°
-363 – 363°
-363 – 363°
-363 – 363°
-363 – 363°
A2
-363 – 363°
-363 – 363°
-363 – 363°
-363 – 363°
-363 – 363°
-363 – 363°
A3
-363 – 363°
-363 – 363°
-363 – 363°
-363 – 363°
-363 – 363°
-363 – 363°
A4
-363 – 363°
-363 – 363°
-363 – 363°
-363 – 363°
-363 – 363°
-363 – 363°
A5
illimité
illimité
-363 – 363°
-363 – 363°
-363 – 363°
-363 – 363°
Tolérance Position
+3° / -3°
Sécurité – Configuration Limites d’articulation – Axes – Vitesse maximale
UR3
UR5
UR10
Normal
Réduit
Normal
Réduit
Normal
Réduit
A0
191
191
191
191
131
131
A1
191
191
191
191
131
131
A2
191
191
191
191
191
191
A3
371
371
191
191
191
191
A4
371
371
191
191
191
191
A5
371
371
191
191
191
191
Tolérance Vitesse
-11°/s
Sécurité – Configuration Limites
Plan de sécurité
Plan de sécurité 8 au maximum Mode de sécurité Désactivé Normal Réduit Les deux Mode de déclenchement réduit Fonction copie Copie une fonction pour créer le plan de sécurité
Les plans de sécurité s’appliquent uniquement sur le TCP En mode fonctionnement libre, à l’approche d’un plan de sécurité, le robot temps à résister au franchissement
Renommer le plan
Fonction Copie
Modes de sécurité
Sécurité – Configuration Mode de sécurité Désactivé Le plan n’est jamais actif Normal Agit comme limite stricte lorsque le robot est en mode normal Réduit Agit comme limite stricte lorsque le robot est en mode réduit Les deux Agit comme limite en permanence Mode de déclenchement réduit déclenche le mode réduit quand le TCP franchit le plan
Entrée dans le mode réduit
Vitesse normale Vitesse réduite
Sortie du mode réduit
Sécurité – Configuration Limites de l’outil Restreindre le déplacement angulaire de l’outil Réglage d’un angle maxi. de déplacement du TCP dans le repère sélectionné
Limites de l’outil
Fonction Copie
Modes de sécurité
Sécurité – Configuration E/S de sécurité - Entrées Affecter une fonction de sécurité à un signal bi-canal Arrêt d’urgence Mode réduit Réinitialisation de la protection Commutateur 3 positions
Une fois affectée à une fonction de sécurité, les entrées ne sont plus utilisable dans le programme robot
Sécurité – Configuration E/S de sécurité - Sorties Affecter une fonction de sécurité à un signal bi-canal Arrêt d’urgence activé Robot se déplace Robot ne s’arrête pas Mode réduit Mode non Réduit Une fois affectée à une fonction de sécurité, les entrées ne sont plus utilisable dans le programme robot
Sécurité – Configuration Safety checksum Safety Checksum Code de sécurité Tracé dans le fichier journal
Sécurité – Configuration Exercice 1.
Créer un nouveau programme « SECURITE »
2.
Créer 4 points de déplacement
3.
Modifier les limite générales
4.
Créer des plans de sécurité
5.
Configurer des E/S de sécurité
Sommaire Chapitres Niveau 1 – Jour 1 I. Universal Robots II. Matériel & caractéristiques techniques III. Configuration du robot IV. TCP et montage V. Repères et déplacements VI. Configuration des E/S VII. Programmation – Fonctions de base Niveau 1 – Jour 2 I. Programmation – Fonctions avancées II. Programmation – Assistants III. Sécurité – Réglementation IV. Sécurité – Configuration V. Service
Niveau 2 – Jour 1 I. Programmation – URScript II. Programmation – TCP III. Programmation – Travail sur les fonctions IV. Communication V. Serveurs et interface clients VI. Divers
Service Site Universal robots
www.support.universal-robots.com/download Pour chaque robots et version de contrôleur Manuel utilisateur Manuel script (fonction URScript) Manuel de service (maintenance et dépannage) Schémas électriques des contrôleurs Documentation mécanique (embase, bride de fixation …) Mise à jour robot Emulateur Magic Files
Service Emulateur
Emulateur du Teach Pendant Nécessite un logiciel pour créer des machines virtuelles VMware VirtualBox Installation disponible sur le site Universal Robots Téléchargeable sur www.support.universal-robots.com/download
Service Fichiers et extensions .urp programme compilé – illisible .old sauvegarde antérieures du programme – illisible
.installation paramètres de l’installation – illisible .bak sauvegarde antérieures des scripts – illisible .variables liste des variables d’installation – lisible .txt arborescence Polyscope au format texte – lisible .script programme URScript au format texte – lisible Mis a jour à chaque enregistrement du programme
Service Magic Files urmagic_backup_programs.sh copie tous les programmes et fichiers d'installation Robot USB urmagic_upload_programs.sh copie tous les programmes et fichiers d'installation USB Robot
urmagic_configuration_files.sh copie tous les fichiers de configuration robot urmagic_log_file.sh copie l'ensemble du journal d'historique urmagic_screenshot.sh crée une capture d'écran à l’instant ou la clé est insérée Téléchargeable sur www.support.universal-robots.com/download
Service Utiliser les Magic Files 1. 2. 3. 4. 5.
Sur une clé USB copier à la racine le fichier "Magic Files" Insérer la clé USB sur le Teach Pendant Patienter quelques instants, ! USB ! apparait à l'écran. Ne pas déconnecter la clé. Attendre jusqu'à ce que le message