Schneider Electric TSXCSY85 Commande de Mouvements Module SERCOS®, Métiers Automates Premium Mode d'emploi

Ajouter à Mes manuels
90 Des pages
Schneider Electric TSXCSY85 Commande de Mouvements Module SERCOS®, Métiers Automates Premium Mode d'emploi | Fixfr
PL7 Junior/Pro
Métiers Automates Premium
Commande de Mouvements
Module SERCOS® TSX CSY 85
Manuel de Mise en Oeuvre Métiers
35008792.01
07/2008 fre
www.schneider-electric.com
2
Table des matières
A propos de ce manuel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Chapitre 1
Architecture SERCOS® . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Présentation de l’architecture SERCOS® . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Evolution des modules TSX CSY xxx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Evolution des services PL7 en fonction des versions des modules . . . . . . . . . . 15
Chapitre 2
Méthodologie de mise en oeuvre . . . . . . . . . . . . . . . . . . . . . . . 17
Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mise en oeuvre d’un axe indépendant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mise en oeuvre d’un groupe d’axes coordonnés ou suiveurs . . . . . . . . . . . . . . .
Chapitre 3
3.1
Chapitre 4
4.1
35008792.01 07/2008
17
18
20
22
Présentation des fonctionnalités du TSX CSY 85 . . . . . . . . . . 23
Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Présentation des spécificités du module TSX CSY 85 . . . . . . . . . . . . . . . . . . . .
Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Présentation des spécificités du module TSX CSY 85 . . . . . . . . . . . . . . . . . . . .
Le fonctionnement de l’instruction TRF_RECIPE . . . . . . . . . . . . . . . . . . . . . . . .
Le fonctionnement de l’instruction WRITE_CMD . . . . . . . . . . . . . . . . . . . . . . . .
Configuration d’un axe indépendant (voies 1 à 12). . . . . . . . . . . . . . . . . . . . . . .
Configuration d’un profil de came . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuration d’un groupe d’axes suiveurs (voies 21 à 24) . . . . . . . . . . . . . . . .
23
24
24
25
27
29
30
36
39
Fonctions d’interpolation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Fonction Calcul de trajectoire : TrjCompute (ACTION_TRF (26900) . . . . . . . . .
Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TrjCompute : fonction de calcul de trajectoire (ACTION_TRF = 26900) . . . . . . .
Interpolation linéaire : type 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Interpolation linéaire avec liaison selon une interpolation polynomiale de
degré 3 : type 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
45
47
47
48
53
54
3
4.2
Annexes
Interpolation linéaire avec liaison selon une interpolation polynomiale de degré 5 :
type 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Interpolation linéaire avec liaison selon une interpolation circulaire : type 10 . . . 62
Interpolation circulaire en indiquant le rayon : type 11. . . . . . . . . . . . . . . . . . . . . 67
Interpolation circulaire en indiquant le centre : type 12 . . . . . . . . . . . . . . . . . . . . 69
Interpolation axe tangentiel : type 100 ou 101 . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Positionnement du maître et gestion de la vitesse . . . . . . . . . . . . . . . . . . . . . . . 74
Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
GetTabResultF : résultat du calcul de trajectoire (ACTION_TRF = 16901). . . . . 75
MoveImmedInterpo : Variation de la vitesse du maître (ACTION_CMD = 905) . 79
GetMinimumConstantSpeed : obtention de la vitesse constante minimum
possible (ACTION_TRF = 14905) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Annexe A
Codes d’erreur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Codes d’erreur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Index
4
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
35008792.01 07/2008
A propos de ce manuel
Présentation
Objectif du
document
Ce manuel traite de la mise en oeuvre logicielle de la commande de mouvements
spécifique au module SERCOS® TSX CSY 85.
Dans ce manuel nous ne traiterons que les spécificités du module TSX CSY 85,
dans tous les autres cas, le module TSX CSY 85 est identique au module
TSX CSY 84, ces fonctionnalités sont décrites dans le manuel de mise en oeuvre
du module TSX CSY 84.
Note : tout ce qui s’applique au montage du module TSX CSY 84 est valable pour
le module TSX CSY 85.
Champ
d'application
Document à
consulter
Commentaires
utilisateur
35008792.01 07/2008
Le module TSX CSY 85 est disponible pour des versions de PL7 supérieures ou
égales à 4.5 et pour la version PL7 V4.4 mise à jour à l’aide du CDROM spécifique
au TSX CSY 85.
Titre
Référence
Manuel de mise en oeuvre métier SERCOS® TSX CSY 84 / 164
TLX DS 57 PL7 xx F
tome 6
Manuel de mise en oeuvre matériellec ommande de mouvement
TSX DM 57 xx F
Manuel de mise en oeuvre logiciel PL7
TSX DOC PL7 V44 F
Envoyez vos commentaires à l'adresse e-mail [email protected]
5
A propos de ce manuel
6
35008792.01 07/2008
Architecture SERCOS®
1
Présentation
Objet du chapitre
Ce chapitre présente de manière succincte la liaison numérique entre un maître et
des esclaves, définie par la norme EN 61491 "Liaison des données sérielles pour la
communication en temps réel entre unités de commande et dispositifs
d’entraînement".
Contenu de ce
chapitre
Ce chapitre contient les sujets suivants :
Sujet
Introduction
Présentation de l’architecture SERCOS®
35008792.01 07/2008
Page
8
10
Evolution des modules TSX CSY xxx
12
Evolution des services PL7 en fonction des versions des modules
15
7
Architecture SERCOS
Introduction
Liaison
numérique
La liaison numérique entre un module de commande d’axes (maître) et des
variateurs de vitesse intelligents (esclaves) est définie par la norme Européenne EN
61491, concernant les équipements électriques des machines industrielles.
L’utilisation d’une architecture distribuée permet de raccorder les entrées/sorties
application (codeur de position, arrêt d’urgence, ...) directement sur les variateurs
de vitesse, ce qui limite les coûts de câblage.
La liaison par fibre optique permet des échanges à grande vitesse (2 ou 4 MHz) et
assure une immunité aux parasites.
Données
échangées
Identification des
objets échangés
Les données échangées via la liaison numérique sont de 2 types :
des données cycliques échangées entre le maître et les esclaves (commande de
position, ...) ou entre les esclaves et le maître (mesure de position, ...). L’échange
de données cycliques, entre le maître et chaque esclave, est limité à 8 objets en
lecture et 8 objets en écriture, tous les cycles SERCOS®.
z des données non cycliques : commandes complexes, écriture ou lecture de
paramètres, ...
Pour chaque cycle, ces échanges s’effectuent au moyen de 2 octets réservés en
lecture et 2 octets réservés en écriture. Plusieurs cycles sont donc nécessaires
pour échanger un objet (par exemple, pour effectuer la lecture d’un paramètre).
z
Tous les objets sont accessibles au travers d’un numéro d’identification : IDN.
La norme permet d’identifier 31768 objets, parmi lesquels elle en spécifie environ
300 (par exemple, IDN 40 = valeur de la vitesse).
Tous les objets comprennent les champs suivants : Nom (64 caractères au
maximum), attribut, unité, valeur maximale, valeur minimale, valeur.
8
35008792.01 07/2008
Architecture SERCOS
Modes de
marche
Les modes de marches du bus suivent les 5 phases suivantes :
Au démarrage :
Phase
Mode de marche
Phase 0
Test du bus en anneau. Les variateurs de vitesse sont en mode répéteur.
Phase 1
Détermination des esclaves présents sur le bus.
Phase 2
Configuration système des variateurs de vitesse.
Phase 3
Programmation des échanges cycliques.
Paramétrage des variateurs de vitesse.
En fonctionnement normal :
Phase
Mode de marche
Phase 4
Echanges cycliques actifs.
Chaque variateur de vitesse servant de répéteur sur le bus, une coupure
d’alimentation, un défaut de communication, un défaut sur l’un des variateur de
vitesse ou la coupure du bus provoque le passage en phase 0.
Note : certains paramètres (IDN) ne sont accessibles qu’en phase 3 (se reporter
à la norme EN 61491). Les fonctions GetActualPhase, GetCommandedPhase et
SetCommandedPhase permettent de connaître la phase en cours et de se
positionner en phase 3.
35008792.01 07/2008
9
Architecture SERCOS
Présentation de l’architecture SERCOS®
Synoptique
Le synoptique de l’architecture SERCOS® est le suivant :
Module de commande
d’axes TSX CSY 84 / 85 / 164
Bus en anneau
Variateurs
de vitesse
Moteurs
PL7 Junior/Pro + UniLink
TjE (TSX CSY 85)
Présentation de
l’offre Premium
10
L’offre Premium se compose :
de la gamme des automate Premium (rack, alimentation, processeur, ...) :
TSX/PCX/PMX 57 version logicielle ≥ V3.3 minimum,
z de modules de commande d’axes TSX CSY 84 ou TSX CSY 85 pouvant piloter
jusqu’à 8 variateurs de vitesse, au travers du bus en anneau,
z de la gamme des variateurs de vitesse Lexium 17S (4 A à 56 A) : LXM 17S,
z de la gamme de moteurs : BPH...,
z du logiciel UniLink, qui permet de paramétrer et de régler les variateurs de
vitesse.
z du logiciel PL7 Junior/Pro version minimum SV 3.4 + complément fonctionnel C
ou SV > 3.4 pour le TSX CSY 84,
z du logiciel PL7 Junior/Pro version minimum SV 4.3 + Add-on Motion
TSX CSY 164 ou SV ≥ 4.4 pour le TSX CSY 164.
z du logiciel PL7 Junior/Pro version minimum SV 4.4 + Add-on Motion TSX CSY 85
ou SV ≥ 4.5 pour le TSX CSY 85.
z
35008792.01 07/2008
Architecture SERCOS
Synoptique
fonctionnel
Le synoptique suivant présente les différentes fonctions réalisées par le module de
commande d’axes et par les variateurs de vitesse :
UniLink
PL7 Junior/Pro
TjE
Automate
TSX/PCX/PMX 57
Programme
application
Variateur de
vitesse
Lexium 17S
TSX CSY
Bus X 84 / 85 / 164
Calcul de
trajectoire
Moteur
BPH
Boucle de
position
Interpolation
Boucle de
Bus en
anneau
Vitesse
Position
Note : il est possible d’utiliser un variateur de vitesse, autre que ceux proposés
dans la gamme Premium. Dans ce cas, il sera configuré par son logiciel de
configuration et non par UniLink.
Fonctions
réalisées par les
différents
modules
Les modules de commande d’axes TSX CSY 84 / 85 / 164 réalisent le calcul de
trajectoire et l’interpolation de plusieurs axes.
Le variateur de vitesse gère les boucles de position, de vitesse et de couple. Il
assure également la conversion de puissance afin de piloter le moteur. Les
informations du codeur sont envoyées au variateur de vitesse (position courante,
vitesse en cours).
Les échanges entre l’automate et le module de commande d’axes s’effectuent au
travers du bus X en fond de rack
Les échanges entre le module de commande d’axes et les variateurs utilisent le bus
en anneau SERCOS®.
35008792.01 07/2008
11
Architecture SERCOS
Evolution des modules TSX CSY xxx
12
35008792.01 07/2008
Architecture SERCOS
Présentation
La version du module est affichée :
z
z
sur l’étiquette se trouvant sur le côté du module,
dans la zone module des écrans de mise au point en mode connecté.
CSY 84 CSY 84 CSY 84 CSY 85
V1.1
V1.2
V1.3
V1.0
CSY
164
V1.0
CSY
164
V1.1
Possibilité de fermer la boucle de position via un codeur
incrémental ou SSI sur les variateurs Lexium 17S et 17HP
(1) (Non documenté)
X
X
X
X
X
X
Possibilité de commuter la commande position en couple
(1) et (2) (Non documenté)
X
X
X
X
X
X
Possibilité de commuter la commande position en
commande vitesse (1) et (2) (Non documenté)
X
X
X
X
X
X
Lire ou écrire les paramètres du variateur
X
X
X
X
X
X
Boucle de position avec codeur externe (1)
X
X
X
X
X
X
Mode Torque (1)
X
X
X
X
X
X
Mode Vitesse (1)
X
X
X
X
X
X
X
Mode Manuel (4)
X
X
X
X
Comportement sur défaut ou dévalidation d’un axe
indépendant (FREEWHEEL_STOP) (3))
X
X
X
X
Propagation des arrêts dans un groupe suiveur
X
X
X
X
Fonction d’alignement des pentes d’arrêts d’urgence
X
X
X
X
Choix du comportement d’arrêt sur ordre de verrouillage
X
X
X
X
Arrêt d'un axe membre d'un groupe suiveur à une position
absolue après un Unlink
X
X
X
Arrêt d'un axe membre d'un groupe suiveur à une position
absolue
X
X
X
Fonction "activation de suivi sur cible"
X
X
X
Service compteur de Modulo
X
X
X
Passage des paramètres ACC et DEC dans le MOVE
X
X
X
Arrêt de suivi (Unlink) du groupe suiveur déclenché par un
trigger
X
X
X
Configuration dynamiques des voies indépendantes
X
X
Reconfiguration dynamique des groupes
X
X
Fonction de surveillance des écarts entre axes
X
X
Fonctions spécifiques d’interpolation (5)
35008792.01 07/2008
X
13
Architecture SERCOS
CSY 84 CSY 84 CSY 84 CSY 85
V1.1
V1.2
V1.3
V1.0
Fonctions spécifiques de cames (5)
CSY
164
V1.0
CSY
164
V1.1
X
(1) Nécessite une modification des fichiers des modules TSX CSY 84/85/164
(Sercos.cfg).
(2) Nécessite une version minimale pour les variateurs Lexium ( MHDS xxxxN 00 ≥
SV 1.3, MHDA xxxx ≥ SV 1.4 ) pas de restriction pour les Lexium HP et Lexium
option AS.
(3) Nécessite une version minimale pour les variateurs Lexium MHDx 5.51.
(4) Nécessite la version PL7 SV4.3 minimale pour obtenir les écrans de mise au
point.
(5) Nécessite la version PL7 SV4.5 ou la version PL7 SV4.4 avec Add-on motion
TSX CSY 85.
14
35008792.01 07/2008
Architecture SERCOS
Evolution des services PL7 en fonction des versions des modules
Illustration
Configuration TSX CSY 84
PL7 3.4 +
Add-On C
PL7 4.0 +
Add-On
Motion
PL7 4.1
PL7 4.2
PL7 4.3
PL7 4.3 +
Add-On
Motion
PL7 4.4 +
Add-On
Motion
PL7 4.5
X
X
X
X
X
X
X
Ecrans de Mise au point
TSX CSY 84
X
X
X
X
X
X
Ecrans de réglage
TSX CSY 84
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Ecrans de mode manuel
TSX CSY 84
Configuration du
TSX CSY 164
Configuration du
TSX CSY 85
35008792.01 07/2008
15
Architecture SERCOS
16
35008792.01 07/2008
Méthodologie de mise en oeuvre
2
Présentation
Objet du chapitre
Ce chapitre décrit la méthodologie globale pour mettre en oeuvre un mouvement
d’axe indépendant ou d’axes interpolés.
Contenu de ce
chapitre
Ce chapitre contient les sujets suivants :
35008792.01 07/2008
Sujet
Page
Introduction
18
Mise en oeuvre d’un axe indépendant
20
Mise en oeuvre d’un groupe d’axes coordonnés ou suiveurs
22
17
Méthodologie de mise en oeuvre
Introduction
Fonctionnalités
du module
TSX CSY 85
Le module TSX CSY 85 permet de réaliser les fonctionnalités suivantes :
z
z
z
z
z
8 axes réels connectés à un variateur de vitesse (voies 1 à 8),
4 axes imaginaires (voies 9 à 12),
4 axes à entrée de mesure externe (voies 13 à 16),
4 groupes d’axes coordonnés (voies 17 à 20). Chaque groupe permet
l’interpolation linéaire de 2 à 8 axes,
4 groupes d’axes suiveurs (voies 21 à 24). Chaque groupe peut être
composé au maximum de 7 axes : 1 axe maître et 6 axes esclaves.
Note : les fonctionnalités en gras sont les seules nécessaires pour mettre en
oeuvre la fonction de trajectoire interpolée spécifique au module TSX CSY 85.
Note : Le module TSX CSY 85 propose également 7 profils de came
(voies 25 à 31).
Axe réel
Un axe réel est un axe physique qui pilote un variateur de vitesse au travers du bus
en anneau SERCOS®.
Axe imaginaire
Un axe imaginaire n’est pas un axe physique. Il peut être utilisé pour coordonner les
mouvements de plusieurs axes physiques. Par exemple, un axe imaginaire peut
être l’axe maître d’un groupe suiveurs.
Un axe imaginaire peut également être utilisé en phase de réglage ou de mise au
point pour simuler un axe réel maître indépendamment du procédé.
Axe à mesure
externe
18
Un axe à mesure externe permet de remonter au module une information de
position externe. Typiquement le module TSX CSY 85 a besoin d’effectuer un suivi
de position à partir d’un codeur piloté par un mécanisme externe et raccordé sur
l’entrée de position auxiliaire du variateur de vitesse.
35008792.01 07/2008
Méthodologie de mise en oeuvre
Groupe d’axes
coordonnés
Un groupe d’axes coordonnés se compose d’axes qui se déplacent en coordination
les uns des autres. Un des axes du groupe, défini comme le maître de la
coordination, sert de référence en vitesse pour le déplacement du groupe.
L’accélération et la vitesse des autres axes coordonnés seront calculés pour que
tous les axes effectuent leur déplacement en même temps.
Groupe d’axes
suiveurs
Un groupe d’axes suiveurs se compose d’un axe maître et d’axes esclaves qui
suivent les mouvement de l’axe maître. Il existe 2 manière de suivre l’axe maître :
z
z
en mode ratio : chaque axe esclave suit l’axe maître suivant un rapport défini en
configuration et appelé Rapport suiveur. Par exemple, la position de l’esclave est
égale à celle du maître multiplié par un rapport x,
en mode came : les axes esclaves suivent l’axe maître suivant un profil de came.
Un profil de came permet de réaliser une came électronique, afin de simplifier la
programmation de mouvements complexes. Une table de points permet de définir
la position de l’esclave en fonction de celle du maître.
35008792.01 07/2008
19
Méthodologie de mise en oeuvre
Mise en oeuvre d’un axe indépendant
Introduction
Un axe indépendant peut être soit un axe réel connecté à un variateur de vitesse,
soit un axe imaginaire, soit un axe à mesure externe.
Les groupes d’axes suiveurs ou coordonnés sont composés d’un ensemble d’axes
indépendants (donc réel, imaginaire ou à mesure externe).
Méthodologie de
mise en oeuvre
d’un axe réel
Avant de mettre en oeuvre un axe réel, il faut que la voie 0 soit valide (tous les bits
ALLOW de la voie 0 : %Qxy.0.18 et %Qxy.0.26 à %Qxy.0.31 sont à l’état 1).
La méthodologie de mise en oeuvre d’un axe réel s’effectue en 3 phases :
Phase 1 : configuration du variateur de vitesse, en utilisant le logiciel UniLink,
création de la trajectoire en utilisant le logiciel TjE (Trajectory Editor),
z Phase 2 : configuration du module TSX CSY 85, en utilisant l’éditeur de
configuration PL7 (déclaration du module et configuration des paramètres pour
tous les axes utilisés),
z Phase 3 : écriture du programme application, transfert de ce programme dans
l’automate, transfert des données de trajectoire dans l’automate et mise au point
de l’application.
z
Note : La validation du variateur par le logiciel Unilink inhibe les commandes du
module vers le variateur. Aussi, est-il nécessaire de dévalider le variateur avant de
quitter le logiciel Unilink.
Méthodologie de
mise en oeuvre
d’un axe
imaginaire
Un axe imaginaire n’est pas connecté à un variateur de vitesse (ce n’est pas un axe
physique). En dehors des opérations liées au variateur de vitesse qui n’existe pas,
la mise en oeuvre d’un axe imaginaire s’effectue de la même manière que pour un
axe réel.
Méthodologie de
mise en oeuvre
d’une entrée de
mesure externe
Une entrée de mesure externe a beaucoup moins de fonctions que les autres types
d’axes indépendants. Sa mise en oeuvre est identique à celle d’un axe réel ou
imaginaire dans lequel seule l’information de position est à configurer. Toutes les
opérations liées au variateur de vitesse ou à la programmation d’un mouvement
n’existe donc pas.
20
35008792.01 07/2008
Méthodologie de mise en oeuvre
Méthodologie de
mise en oeuvre
d’un axe réel
Synoptique
Début
Mode local (Conception)
TjE pour
TSX CSY 85
UniLink
Déclaration du module PL7 Junior/Pro
Editeur de
dans la configuration configuration
automate
Configuration des axes
réels (esclaves), virtuel
(maître) et groupe d’axes
Configuration des
PL7 Junior/Pro
fonctions et paramétrage Editeur de
des axes utilisés
configuration
Edition et visualisation
de la trajectoire
Programmation des
mouvements dans
l’application globale
Configuration des
paramètres du variateur de
vitesse et du moteur
résolveur
PL7 Junior/Pro
Editeur de
programme
PL7 Junior/Pro
Transfert des données Transfert de
Mode Transfert
dans l’application ou la l’application dans la
mémoire de l’automate mémoire de l’automate
Mode connecté
Mode connecté
Réglage des paramètres PL7 Junior/Pro
au travers de codes
opératoires (paramètres
communs, module et
variateurs de vitesse)
35008792.01 07/2008
Phase 1
Phase 2
Tests et mise au point PL7 Junior/Pro
(variateurs de vitesse Mode mise au point
et bus en anneau)
Chargement des
paramètres des drives
dans l’automate.
Edition du dossier
Exploitation
PL7 Junior/Pro
Editeur de
documentation
Réglage des paramètres
des variateurs de vitesse.
Paramètres sauvegardés
dans les variateurs ou dans
l’automate l’automate
UniLink
UniLink
Oscilloscope
Phase 3
PL7 ou pupitre
de contrôle
Fin
21
Méthodologie de mise en oeuvre
Mise en oeuvre d’un groupe d’axes coordonnés ou suiveurs
Groupe d’axes
coordonnés
Les axes coordonnés sont des axes réels ou imaginaires. Mettre en oeuvre un
groupe d’axes coordonnés consiste donc à mettre en oeuvre les axes réels
(méthodologie décrite pages précédentes) puis le groupe.
Groupe d’axes
suiveurs
Dans un groupe d’axes suiveurs, l’axe maître peut être réel, imaginaire ou à mesure
externe et les axes esclaves peuvent être réels ou imaginaires. La mise en oeuvre
d’un groupe d’axes suiveurs revient donc à mettre en oeuvre les axes indépendants
qui composent ce groupe, suivant la méthodologie décrite aux pages précédentes,
puis le groupe.
22
35008792.01 07/2008
Présentation des fonctionnalités
du TSX CSY 85
3
Présentation
Objet de ce
chapitre
Ce chapitre présente les fonctionalités spécifiques du module TSX CSY 85.
Contenu de ce
chapitre
Ce chapitre contient les sous-chapitres suivants :
Souschapitre
3.1
35008792.01 07/2008
Sujet
Présentation des spécificités du module TSX CSY 85
Page
24
23
Présentation fonctionnalités
3.1
Présentation des spécificités du module
TSX CSY 85
Présentation
Objet de ce souschapitre
Ce sous-chapitre présnete les spécificités du module TSX CSY 85.
Contenu de ce
sous-chapitre
Ce sous-chapitre contient les sujets suivants :
Sujet
Présentation des spécificités du module TSX CSY 85
24
Page
25
Rappels sur le fonctionnement de l’instruction TRF_RECIPE
27
Rappels sur le fonctionnement de l’instruction WRITE_CMD
29
Configuration d’un axe indépendant (voies 1 à 12)
30
Configuration d’un profil de came
36
Configuration d’un groupe d’axes suiveurs (voies 21 à 24)
39
35008792.01 07/2008
Présentation fonctionnalités
Présentation des spécificités du module TSX CSY 85
Introdutcion
Comme nous l’avons vu précédemment, le module TSX CSY 85 est en tout point
identique au module TSX CSY 84 hormis une série de fonctionnalités logicielles
d’interpolation.
A l’aide du logiciel d’édition de trajectoires TjE, ces nouvelles fonctionnalités vont
permettre, à partir de quelques points (60 points de références maximum), de créer
aiséement des trajectoires complexes associées à des groupes de 2 ou 3 axes.
Un nombre maximum de 7 profils de came est disponible sur ce module par
conséquent il est possible de gérer un maximum de 2 groupes de 3 axes ou bien 3
groupes de 2 axes. Les groupes étant indépendants et fonctionnant en simultané.
Les trajectoires sont crées à l’aide de points définissant des segments suivant les
types d’interpolation :
z
z
z
z
linéaire stricte,
linéaire avec liaison par interpolation polynomiale (cubique ou de degré 5),
linéaire avec liaison par interpolation circulaire,
circulaire.
Note : le logiciel d’édition de trajectoire est fourni avec le CD TSX CSY 85
fonction trajectoire incluant :
z PL7 V4.4 Add-on motion TSX CSY 85,
z le logiciel TjE (outils d’édition de trajectoire),
z le guide utilisateur du TjE.
35008792.01 07/2008
25
Présentation fonctionnalités
Principe
La trajectoire est crée par l’association d’axes réels esclaves à un axe maître par
l’intermédiare d’un groupe d’axe suiveurs. Des profils de cames (table de 5000
points maîtres maximum pour 4996 points maîtres réels) sont automatiquement
calculés pour obtenir cette trajectoire.
Description du principe :
z
z
z
z
A partir de la table d’interpolation, les profils de came associés à chaque axe
esclave sont calculés par l’algorithme interne du module.
Les axes esclaves sont associés à l’axe maître.
Par la programmation des axes esclaves à l’aide de la fonction standard
TRF_RECIPE et des paramètres spécifiques à chaque type d’interpolation la
trajectoire du maître est calculée.
Ensuite, la gestion de la trajectoire du maître (en manuel ou automatique, par
programmation ou interface utilisateur) permet d’obtenir instantanément les
positions sur chaque axe esclave associé.
Note : l’algorithme d’interpolation permet de créer des trajectoires avec
positionnement en absolu (origine de la trajectoire égale à l’origine des axes) ou
en positionnement relatif (le mouvement est effectué à partir de la position
courante sur l’axe).
Note : les nouvelles fonctions proposées sont également en mesure de déterminer
la vitesse maximum autorisée sur l’axe maître et par conséquent sur chaque axe
pour chaque segment de la trajectoire mais aussi d’effectuer le mouvement
complet à la vitesse maximum possible (vitesse constante sur la somme des
trajectoires) en tenant compte des accélérations maximum supportées par les
moteurs selon la dynamique de la trajectoire.
26
35008792.01 07/2008
Présentation fonctionnalités
Rappels sur le fonctionnement de l’instruction TRF_RECIPE
Rappel
Cette instruction permet avec la fonction "Axe réel", de lire ou d’écrire les
paramètres des variateurs de vitesse.
Note : vous pouvez également lire ou d’écrire les profils de came et lancer
l’exécution de fonctions spéciales.
Syntaxe de
l’instruction
TRF_RECIPE
TRF_RECIPE %CHxy.i (longueur, adresse %MW) : transfert des paramètres du
variateur de vitesse, du profil de came, ou des paramètres d’une fonction spéciale
dans ou à partir de la table qui débute à l’adresse %MW. La longueur de cette table
à transférer est définie par le paramètre longueur. L’action a exécuter est définie par
le mot %MWxy.i.10 (ACTION_TRF).
Exemple : TRF_RECIPE %CH104.3(10,100) (chargement des paramètres du
variateur de vitesse de l’axe réel 3, du module situé en position 4 du rack 1, dans la
table de longueur 10, qui débute à l’adresse %MW100).
Interface
TRF_RECIPE
35008792.01 07/2008
La commande à réaliser est définie dans le mot %MWxy.i.10 et le résultat de la
commande est disponible dans le mot %MWxy.i.3 à %MWxy.i.8.
Adresse
Type
Symbole
Signification
%MWxy.i.3
Mot
ERROR_TRF
Erreur d’écriture de la commande
TRF_RECIPE
%MDxy.i.4
Double Mot
RETURN_TRF_1
Retour 1 de la fonction
%MFxy.i.6
Flottant
RETURN_TRF_2
Retour 2 de la fonction
%MFxy.i.8
Flottant
RETURN_TRF_3
Retour 3 de la fonction
%MWxy.i.10
Mot
ACTION_TRF
Action à réaliser
%MDxy.i.11
Double Mot
PARAM_TRF_1
Paramètre 1
%MDxy.i.13
Double Mot
PARAM_TRF_2
Paramètre 2
%MFxy.i.15
Flottant
PARAM_TRF_3
Paramètre 3
%MFxy.i.17
Flottant
PARAM_TRF_4
Paramètre 4
27
Présentation fonctionnalités
Actions réalisées
par TRF_RECIPE
Les actions qu’il est possible de réaliser avec le service TRF_RECIPE sont :
Fonction
ACTION_TRF
(%MWxy.i.10)
Signification
Axe réel (1)
14905
Nouvelle fonctionnalité du TSX CSY 85 : lecture
de la vitesse minimum possible de la trajectoire
en fonction des tables d’interpolation envoyées
au module par l’intermédiaire du code 26900.
Axe réel (1)
16001
Chargement des paramètres du variateur de vitesse
dans la mémoire automate.
Groupe d’axe
16901
Nouvelle fonctionnalité du TSX CSY 85 : lecture
des paramètres du mouvement suite à un calcul
de trajectoire (code 26900).
z positions clef du maître,
z vitesse maximum possible,
z vitesse calculée (vitesse réellement utilisée).
Axe réel (1)
26001
Déchargement des paramètres du variateur de
vitesse, à partir de la mémoire automate.
Groupe d’axe (1)
26900
Nouvelle fonctionnalité du TSX CSY 85 : calcul
des trajectoires selon les segments
d’interpolations donnés commes paramètres
d’entrée.
Légende
(1)
28
PARAM_TRF_1 à PARAM_TRF_4 = 0
35008792.01 07/2008
Présentation fonctionnalités
Rappels sur le fonctionnement de l’instruction WRITE_CMD
Rappel
Ce service permet d’émettre une commande vers le module de commande d’axes.
WRITE_CMD : écriture explicite des mots de commande dans le module. Cette
opération s’effectue à partir de mots internes %MW qui contiennent la commande à
réaliser et ses paramètres (par exemple, une commande de mouvement).
Syntaxe de
l’instruction
WRITE_CMD
Interface
WRITE_CMD
Contrôle de
l’échange
35008792.01 07/2008
WRITE_CMD %CHxy.i : écriture des informations de commande de la voie i, du
module situé à l’adresse xy (numéro de rack, position dans le rack).
Exemple : WRITE_CMD %CH3.1 (écriture des informations de commande de
la voie 1, du module situé en position 3 du rack 0).
La commande à réaliser est définie dans le mot %MWxy.i.26 et le résultat de la
commande est disponible dans les mots %MWxy.i.19 à %MWxy.i.24
Adresse
Type
Symbole
Signification
%MWxy.i.19
Mot
ERROR_CMD
Erreur d’écriture de la commande
WRITE_CMD
%MDxy.i.20
Double Mot
RETURN_CMD_1 Retour 1 de la fonction
%MFxy.i.22
Flottant
RETURN_CMD_2 Retour 2 de la fonction
%MFxy.i.24
Flottant
RETURN_CMD_3 Retour 3 de la fonction
%MWxy.i.26
Mot
ACTION_CMD
Action à réaliser
%MDxy.i.27
Double Mot
PARAM_CMD_1
Paramètre 1
%MDxy.i.29
Double Mot
PARAM_CMD_2
Paramètre 2
%MFxy.i.31
Flottant
PARAM_CMD_3
Paramètre 3
%MFxy.i.33
Flottant
PARAM_CMD_4
Paramètre 4
Les 2 bits suivants peuvent être utilisés pour contrôler l’écriture des informations de
commande dans le module :
Bit
Signification
%MWxy.i.0:X1
Ce bit est positionné à 1 lorsque l’échange est en cours. Il est remis à 0
lorsque l’échange est terminé.
%MWxy.i.1:X1
Ce bit est positionné à 1 si les paramètres transmis sont hors bornes ou
erronés.
29
Présentation fonctionnalités
Configuration d’un axe indépendant (voies 1 à 12)
Introduction
Vous devez configurer le module TSX CSY 85 à l’aide du logiciel PL7.
Un axe indépendant est soit un axe réel (voies 1 à 8), soit un axe imaginaire (voies
9 à 12). La configuration d’un axe réel va permettre de piloter un axe physique (qui
utilise un variateur de vitesse). Dans ce cas, il est nécessaire d’assurer une certaine
cohérence entre les paramètres saisis dans l’écran de configuration du module
TSX CSY 85 et ceux définis lors de la configuration du variateur de vitesse.
Tout d’abord effectuez la configuration des axes indépendants, deux ou trois axes
réels et un axe qui sera utilisé ensuite comme maître des axes réels qui seront
configurés ensuite comme axes suiveurs.
Pour pouvoir utiliser les nouvelles fonctions d’interpolation décrites dans la suite de
cette documentation vous devez respecter les règles suivantes :
z
z
z
z
30
Les unités de mesure (pour les axes réels) sont exclusivement les suivantes :
z Type = Linéaire,
z Position = mm,
z Vitesse = mm/s,
2
z Accélération = mm/s
Les paramètres limites : Vitesses max., Accélération max. et Décélération
max. de la zone Butées sont utilisées par l’algorithme d’interpolation afin de
calculer les vitesses possibles sur chaque segment de la trajectoire.
Utilisez ces valeurs pour remplir les paramètres de la zone Mouvement tel que :
z Accélération max. = Accélération.
z Décélaration max. = Décélération.
La configuration de l’axe, futur maître de la trajectoire, doit respecter les
conditions suivantes :
z Vitesse max. = somme vectorielle des vitesses maximum de chaque axe réel
de la trajectoire (axes suiveurs).
z Accélération et décélération = minimums respectifs des accélérations et
décélérations des axes réels de la trajectoire.
35008792.01 07/2008
Présentation fonctionnalités
Ecran de
configuration
L’écran de configuration d’un axe indépendant est le suivant. Il propose 5 zones de
saisie des paramètres : Butées, Contrôle de position en validation, Unités,
Facteur d’échelle et Mouvement.
TSX CSY 85 [RACK0 POSITION 3]
Configuration
Désignation : 8 AXIS N4 MOTION.CONT
Symbole :
Voie :
Fonction :
1 Réel
Axe réel
Voies configurées : 0, 1, 14, 15, 17, 22, 27
Butées
Contrôle de position
Position max.
3.000000e+002
Position min.
-3.000000e+002
Vitesse max.
1.000000e+005
Accélération max 1.000000e+001
Décélération max 1.000000e+001
Ctrl. de position en validation
Actif
Tolérance
0.000000e+000
35008792.01 07/2008
Tâche :
MAST
Unités
Type
Linéaire
Position
Vitesse
mm
mm/s
mm/s²
Accélération
Facteur d’échelle
Numérateur 1.000000e+000
Dénominateur 1.000000e+000
Mouvement
Modulo
Modulo max.
Modulo min.
2.000000e+001
-2.000000e+001
Fenêtre au point 7.000000e+000
Accélération
1.000000e+001
Décélération
1.000000e+001
Type d’accélération
Trapèze 125 %
31
Présentation fonctionnalités
Paramètres de la
zone Butées
Description :
Paramètres
Description
Contrôle de
position
Dans le cas d’une machine bornée, cette case à cocher permet d’activer
le contrôle des butées (limites) de position. La position de l’axe est
comparée avec les butées de position définies en configuration.
Lorsque l’axe atteint l’une de ces butées, son mouvement est arrêté et
un défaut est généré.
Dans le cas d’un axe infini, cette case ne doit pas être cochée.
Position max.
Butée de position maximale. Cette valeur est saisie en flottant.
Position min.
Butée de position minimale. Cette valeur est saisie en flottant.
Vitesse max.
Vitesse maximale autorisée. Cette valeur est indépendante de celle
définie dans le variateur de vitesse (axe réel). Cette valeur est saisie en
flottant. Lorsque la vitesse maximale est configurée à la valeur 0, le
contrôle de vitesse n’est plus validé.
Accélération max.
Accélération maximale autorisée. Cette valeur est indépendante de
celle définie dans le variateur de vitesse (axe réel). Cette valeur est
saisie en flottant.
Décélération max. Décélération maximale autorisée. Cette valeur est indépendante de
celle définie dans le variateur de vitesse (axe réel). Cette valeur est
saisie en flottant.
Paramètres de la
zone Contrôle de
position en
validation
32
Description :
Paramètres
Description
Actif
Cette case à cocher permet de valider le contrôle de position.
Lorsque l’axe est désactivé :
z si son déplacement est inférieur à la tôlérance, celui-ci revient à sa
position précédente, sur réactivation de l’axe
z si son déplacement est supérieur à la tôlérance, celui-ci reste à sa
nouvelle position, sur réactivation de l’axe.
Tolérance
Valeur de la fenêtre de contrôle. Cette valeur est saisie en flottant.
35008792.01 07/2008
Présentation fonctionnalités
Paramètres de la
zone Unités
Descirption :
Paramètres
Description
Type
Type d’unités physiques dans lesquelles sont exprimées les mesures de
position, de vitesse et d’accélération : Angulaires, Linéaires, Linéaires
anglais ou Points codeur.
Position
Unité de position.
z Angulaire : mrad, rad, deg, arcmin, tours,
z Linéaire : μm, mm, cm, m
z Linéaire anglais : in, ft, yd, mil
z Points codeur : points.
Vitesse
Unité de vitesse.
z Angulaire : mrad/s, rad/s, rad/mim, deg/s, deg/min, arcmin/s, tours/s,
tours/min
z Linéaire : μm/s, mm/s, mm/min, cm/s, cm/min, m/s, m/min
z Linéaire anglais : in/s, in/min, ft/s, ft/min, yd/min, mil/s
z Points codeur : points/ms, points/s, points/min
Accélération
Unité d’accélération.
z Angulaire : mrad/s2, rad/s2, deg/s2, arcmin/s2, tours/s2, tours/min/s
z Linéaire : μm/s2, mm/s2, cm/s2, m/s2, m/min2, g’s
z Linéaire anglais : in/s2, ft/s2, yd/min2, mil/s2
z Points codeur : points/ms2, points/s2
Paramètres de la
zone Facteur
d’échelle
35008792.01 07/2008
Description :
Paramètre
Description
Numérateur
Numérateur du facteur d’échelle. Cette valeur est saisie en flottant.
Dénominateur
Dénominateur du facteur d’échelle. Cette valeur est saisie en flottant.
33
Présentation fonctionnalités
Paramètres de la
zone Mouvement
Remise à
l’échelle
Description :
Paramètre
Description
Modulo
Dans le cas d’un axe infini, cette case à cocher permet d’activer la
fonction modulo.
Modulo max.
Limite haute du modulo. Cette valeur est saisie en flottant.
Modulo min.
Limite basse du modulo. Cette valeur est saisie en flottant.
Fenêtre au point
Valeur de la fenêtre au point. Cette valeur est saisie en flottant.
Accélération
Valeur d’accélération définie pour un mouvement. Cette valeur est saisie
en flottant.
Décélération
Valeur de décélération définie pour un mouvement. Cette valeur est
saisie en flottant.
Type
d’accélération
Type d’accélération : Rectangle 100%, Trapèze 125%, Trapèze 150%,
Trapèze 175% ou Triangle 200%.
Pour un variateur dont la position est définie en unité angulaire : degrés, le module
effectue une remise à l’échelle, selon sa référence qui est en tours et sa vitesse en
tours/seconde.
Par exemple, si l’on configure l’axe en type angulaire avec un facteur d’échelle de
1/1 :
z unité de position en tours et unité de vitesse en tours/s : un mouvement
incrémental de position 1 et de vitesse 1 exécutera 1 tour en 1 seconde,
z unité de position en degrés et unité de vitesse en tours/min : un mouvement
incrémental de position 360 et de vitesse 60 exécutera 1 tour en 1 seconde.
Changement du
type d’unités
Lorsque l’on change de type d’unités par rapport au variateur qui reste en tours,
l’unité de référence du module est le mm (pour le type linéaire) et le inch (pour le
type linéaire anglais). Le module réalise une transformation égale à :
z 1 tour pour le variateur = 1 mm pour le module (type linéaire),
z 1 tour pour le variateur = 1 inch pour le module (type linéaire anglais).
Par exemple, si l’on configure l’axe en type linéaire avec un facteur d’échelle 1/ 1 :
z unité de position en mm et unité de vitesse en mm/s : un mouvement incrémental
de position 1 et de vitesse 1 exécutera 1 tour en 1 seconde,
z unité de position en mm et unité de vitesse en mm/s : un mouvement incrémental
de position 1000 et de vitesse 1000 exécutera 1 tour en 1 seconde (soit 1000 mm
en 1 seconde).
34
35008792.01 07/2008
Présentation fonctionnalités
Utilisation du
facteur d’échelle
35008792.01 07/2008
Soit une application où l’axe fait avancer un tapis, tel que 1 tour de l’axe fait avancer
le tapis de 100 mm. Si l’on désire exprimer la position en mm :
z l’unité de position sera configurée en mm, la vitesse en mm/s, le numérateur du
facteur d’échelle sera égal à 100 et le dénominateur restera à 1,
z un mouvement incrémental de position 1000 et de vitesse 1000 exécutera un
déplacement du tapis de 1 m (soit 10 tours de l’axe) en 1 seconde (vitesse 1000
mm/s).
35
Présentation fonctionnalités
Configuration d’un profil de came
Introduction
Un profil de came (voies 25 à 31) permet de définir par une table de points, la
position d’un axe esclave, en fonction de celle de l’axe maître. Pour utiliser les
fonctions d’interpolation du module TSX CSY 85 vous devez donc définir un profil
de came par axe réel de la trajectoire et respecter les règles suivantes :
z
z
z
z
Type d’interpolation = Linéaire,
Nb. points = nombre de points de la trajectoire sur l’axe concerné + 5.
Incrément Maître :
z Unité = mm,
z Incrément Fixe,
z Valeur de démarrage = 0.0,
z Incrément = 1.0,
Incrément esclave :
z Unité = mm,
z Incrément Fixe,
z Valeur de démarrage = 0.0,
z Incrément = 1.0.
Note : le nombre de points des profils de came d’axes de même groupe doivent
être identiques. Si ce nombre est trop faible, le module renvoie le code d’erreur 5.
Le nombre total de points configurés pour les cames influent sur le temp de calcul
de l’interpolation (environ 1 seconde pour 100 points configurés. Le nombre
maximum de points pour un module TSX CSY 85 est de 10000. Par conséquent il
est conseillé d’utiliser un nombre de points minimum qui permet d’obtenir une
trajectoire suffisamment précise.
36
35008792.01 07/2008
Présentation fonctionnalités
Exemple de
configuration
L’écran de configuration d’un profil de came sur le module TSX CSY 85 propose 3
zones à obligatoirement configurer comme vu précédemment et qui permettent de
définir la table de points maître et esclave :
TSX CSY 85 [RACK0 POSITION 3]
Configuration
Désignation : 8 AXIS N4 MOTION.CONT
Symbole :
Voie :
Fonction :
27 Profil came
Profil de came
Voies configurées : 0, 1, 14, 15, 17, 22, 27
Linéaire
Cubique
Nb. points
500
Tâche :
MAST
Incrément maître
Unité
Valeur de démarrage
Fixe
mm
Variable Incrément
0.000000e+000
Incrément esclave
Valeur de démarrage
Unité
Fixe
mm
Variable Incrément
0.000000e+000
1.000000e+000
1.000000e+000
Paramètres de la table :
Paramètres
Description
Linéaire
Lorsque ce bouton est coché, l’interpolation entre 2 points consécutifs
du profil de came s’effectue de manière linéaire. Ce bouton fonctionne
en alterné avec le bouton Cubique.
Cubique
Lorsque ce bouton est coché, l’interpolation entre 2 points consécutifs
du profil de came s’effectue de manière cubique. Ce bouton fonctionne
en alterné avec le bouton Linéaire.
Nb. points
Ce champ permet de saisir le nombre de points utilisés pour définir le
profil de came.
Paramètres de lazome incrément maître :
35008792.01 07/2008
Paramètres
Description
Unité
Permet de définir l’unité dans laquelle sont exprimés les incrément du
maître. L’unité choisie peut être une sous-unité de celle définie pour les
axes (par exemple, cm pour les axes et mm pour l’incrément).
Fixe
Lorsque ce bouton est coché, l’incrément entre 2 points consécutifs du
profil de came sera toujours le même. Ce bouton fonctionne en alterné
avec le bouton Variable.
Valeur de
démarrage
Dans le cas d’un incrément fixe, ce champ permet de saisir la valeur de
début du profil de came. Cette valeur est saisie en flottant.
Incrément
Dans le cas d’un incrément fixe, ce champ permet de définir la valeur
de l’incrément. Cette valeur est saisie en flottant.
37
Présentation fonctionnalités
Paramètres
Description
Variable
Lorsque ce bouton est coché, l’incrément entre 2 points consécutifs du
profil de came est variable. La valeur des points est définie par une
table de mots constants %KF dont la longueur est égale au nombre de
points.
Adresse table %KF Dans le cas d’un incrément variable, ce champ permet de saisir
l’adresse de début de la table des points du maître.
Note : un profil de came est toujours bouclé. Il faut assurer l’égalité entre la
première et la dernière valeur de la table pour l’esclave.
La table décrira entièrement le modulo et on rajoutera un point supplémentaire
(modulo + 1) dont la valeur de l’esclave sera la première valeur de la table.
Par exemple, pour modulo 360° les valeurs sont 0 à 359 et la table est la suivante :
Table (maître, esclave) : (0, x0) ; (1, x1) ; (2, x2) ; ... ; (359, x359) ; (360, x0)
Dans le cas d’un mouvement linéaire et si la dernière valeur de la table pour
l’esclave n’est pas égale à la première valeur, on rajoutera des points supplémentaires (par exemple on répétera plusieurs fois le dernier point avec des valeurs
d’esclave qui tendront progressivement vers la première valeur de la table).
Paramètres de lazome incrément esclave :
Paramètres
Description
Unité
Permet de définir l’unité dans laquelle sont exprimés les incrément de
l’esclave. L’unité choisie peut être une sous-unité de celle définie pour
les axes (par exemple, cm pour les axes et mm pour l’incrément).
Fixe
Lorsque ce bouton est coché, l’incrément entre 2 points consécutifs du
profil de came sera toujours le même. Ce bouton fonctionne en alterné
avec le bouton Variable.
Valeur de
démarrage
Dans le cas d’un incrément fixe, ce champ permet de saisir la valeur de
début du profil de came. Cette valeur est saisie en flottant.
Incrément
Dans le cas d’un incrément fixe, ce champ permet de définir la valeur
de l’incrément. Cette valeur est saisie en flottant.
Variable
Lorsque ce bouton est coché, l’incrément entre 2 points consécutifs du
profil de came est variable. La valeur des points est définie par une
table de mots constants %KF dont la longueur est égale au nombre de
points.
Adresse table %KF Dans le cas d’un incrément variable, ce champ permet de saisir
l’adresse de début de la table des points de l’esclave.
38
35008792.01 07/2008
Présentation fonctionnalités
Configuration d’un groupe d’axes suiveurs (voies 21 à 24)
Introduction
Un groupe d’axes suiveurs ou esclaves est un ensemble d’axes, composé d’axes
esclaves (6 au maximum) qui suivent les mouvements d’un axe maître.
L’axe maître peut être un axe réel, un axe imaginaire ou une consigne externe. Les
axes esclaves sont des axes réels ou imaginaires.
Dans le cadre d’un module TSX CSY 85 utilisant les nouvelles fonctions
d’interpolation, les règles à respecter sont les suivantes :
z
z
z
z
z
35008792.01 07/2008
Chaque groupe peut être constitué de 2 ou 3 axes interpolés.
Un profil de came doit être défini pour chaque axe esclave (maximum 7).
Conséquence du point précédent, un maximum de 7 axes interpolés est possible
(par exemple 2 groupes de 2 axes et un groupe de 3 axes).
Seuls deux axes peuvent être interpolés, le troisième axe d’un groupe doit
obligatoirement être lié au maître soit par un profil de came soit par un lien fixe.
Pour chaque axe, les paramètres doivent être les suivants :
z sélectionnez l’option Came,
z Démarrage = Immédiat,
z Offset = 0.0,
z sélectionnez l’option Consigne,
z sélectionnez l’option Stop maître/déf.
39
Présentation fonctionnalités
Ecran de
configuration
L’écran de configuration d’un groupe d’axes suiveurs est le suivant. Il propose 7
zones qui permettent de configurer l’axe maître et les 6 axes esclaves possibles :
TSX CSY 85 [RACK0 POSITION 3]
Configuration
Désignation : 8 AXIS N4 MOTION.CONT
Symbole :
Voie :
Fonction :
22 suiveur
Groupe d’axes suiveurs
Voies configurées : 0, 1, 9, 13, 15, 17, 20 ,24, 28
Maître
1
Esclave 1
Engrenage Came Ratio 1.000000e+000
2
Tâche :
MAST
Bias
Arrêt sur suivi
remains
Stop
Trigger 0.000000e+000
maître/déf
1.000000e+000
Mesure Consigne Démarrage Immediatly
Esclave 2
Bias
Arrêt sur suivi
Engrenage Came No 25
Offset 0.000000e+000
4
remains
Stop
Immediatly
Trigger 0.000000e+000
Mesure Consigne Démarrage
maître/déf
Esclave 3
Bias
Arrêt
sur suivi
Came
Ratio
Engrenage
1.000000e+000
1.000000e+000
N
remains
Stop
Trigger 0.000000e+000
Mesure Consigne Démarrage Immediatly
maître/déf
Esclave 4
Bias
Arrêt sur suivi
Engrenage Came Ratio 1.000000e+000 1.000000e+000
N
remains
Stop
Trigger 0.000000e+000
Mesure Consigne Démarrage Immediatly
maître/déf
Esclave 5
Bias
Arrêt
sur suivi
Engrenage Came Ratio 1.000000e+000 1.000000e+000
N
remains
Stop
Trigger 0.000000e+000
Mesure Consigne Démarrage Immediatly
maître/déf
Maître
Ce champ permet de définir le numéro de l’axe maître (axes 1 à 16). La valeur N
indique que l’axe maître n’est pas choisi.
Zones Esclave
Les 6 zones Esclave 1 à 6 sont identiques. Elles ne sont actives que lorsque le
numéro du maître est défini.
40
35008792.01 07/2008
Présentation fonctionnalités
Paramètres
d’une zone
Esclave
Description :
Paramètre
Description
Esclave 1 (à 6)
Permet de définir le numéro de l’axe esclave (axes 1 à 12).
Mesure
Lorsque ce bouton est coché, l’axe esclave suit la position mesurée de
l’axe maître. Ce bouton fonctionne en alterné avec le bouton Consigne.
Consigne
Lorsque ce bouton est coché, l’axe esclave suit la position de consigne
de l’axe maître. Ce bouton fonctionne en alterné avec le bouton
Mesure.
Engrenage
Lorsque ce bouton est coché, l’axe esclave suit l’axe maître en mode
Ratio ; c’est-à-dire suivant un rapport déterminé par les champ Ratio.
Ce bouton fonctionne en alterné avec le bouton Came.
Came
Lorsque ce bouton est coché, l’axe esclave suit l’axe maître en mode
Came ; c’est à dire suivant le profil de came dont le numéro est choisi
dans le champ No. Ce bouton fonctionne en alterné avec le bouton
Engrenage.
Ratio
En mode Ratio, ces 2 champs permettent de saisir le numérateur et le
dénominateur qui définissent le rapport entre l’axe maître et esclave.
Ces valeurs sont saisies en flottant.
Démarrage
Permet de choisir la condition de démarrage :
z immédiat,
z lorsque la position du maître augmentée de la valeur d’offset atteint
dans le sens positif, la valeur de seuil définie dans le champ Trigger,
z lorsque la position du maître plus la valeur d’offset atteint dans le
sens négatif, la valeur de seuil définie dans la champ Trigger,
z lorsque la position du maître plus la valeur d’offset est supérieure ou
égale à la valeur de seuil définie dans le champ Trigger,
z lorsque la position du maître plus la valeur d’offset est inférieure ou
égale à la valeur de seuil définie dans le champ Trigger.
35008792.01 07/2008
No
En mode Came, ce champ permet de choisir le numéro du profil de
came (compris entre 25 et 31).
Offset
En mode Came, ce champ permet de saisir une valeur d’offset qui sera
ajoutée à la position du maître, afin de définir la position de l’esclave.
La position de l’esclave résultante sera donnée par l’index dans la table
du maître du profil de came. Cet index est égal à la position actuelle du
maître + offset. Par exemple, soit un profil de came défini de 0 à 1000
pour les coordonnés du maître. Pour démarrer le suivi pour une
position du maître égale à 100000, la valeur de l’offset devra être égale
à -100000.0.
Cet offset permet par exemple de définir une fonction sinus et une
fonctions cosinus, à partir d’un même profil de came. Cette valeur est
saisie en flottant.
41
Présentation fonctionnalités
Paramètre
Description
Bias remains
(résiduel)
z un offset dynamique est rajouté de manière automatique à la
Lorsque cette case est cochée :
position du maître, afin de définir la position de l’esclave,
z les mouvements supplémentaires des esclaves ne sont pas arrêtés
sur suppression du lien avec le maître.
Position d’un axe
suiveur
42
Trigger
Lorsque la condition de démarrage dépend de la position de l’axe
maître par rapport à un seuil, ce champ permet de saisir la valeur du
seuil. Cette valeur est saisie en flottant.
Le déclenchement aura lieu lorsque position actuelle du maître + offset
> (ou <, >, <) à la valeur du seuil (Trigger).
Arrêt sur suivi
Lorsque cette case est cochée, la validation du lien entre le maître et
l’esclave provoque l’arrêt d’un éventuel mouvement supplémentaire de
l’axe suiveur, suivant un profil de décélération déterminé
automatiquement.
Stop maître/déf.
Lorsque cette case est cochée, le maître s’arrête lors d’un défaut
d’écart de poursuite entre le maître et l’esclave.
Lorsqu’un axe est suiveur, sa position dépend uniquement de celle de l’axe
maître qu’il suit. Les paramètres de configuration de l’axe (butées de position,
vitesse maximale, accélération maximale,...) sont ignorés. Pour garantir la
sécurité de l’application, configurer ces paramètres (de sécurité) dans le
variateur de vitesse.
35008792.01 07/2008
Présentation fonctionnalités
Facteur d’échelle
Dans un groupe d’axes suiveurs, le facteur d’échelle est décorélé des unités
utilisées pour les axes, lorsque celles-ci sont de même type (Linéaire, Angulaire, ...).
Par exemple, si l’axe maître est configuré en m et l’axe esclave en cm (unités
différentes mais de même type : Linéaire) et si on utilise un facteur d’échelle 1/ 1,
cela signifie que si le maître parcourt 1 mm, l’esclave se déplacera également de 1
mm.
Si les unités du maître et de l’esclave sont de types différents, il faut convertir les
unités dans l’unité de référence du type d’unités (mm pour le type linéaire, inch pour
le type linéaire anglais, tour pour le type angulaire). Par exemple, si le maître est
configuré en m et l’esclave en tours (unités de types différents : Linéaire et
Angulaire) et si on veut que lorsque le maître se déplace de 1 m, l’esclave effectue
1 tour, il faudra définir le facteur d’échelle de la manière suivante :
z 1 m = 1000 mm (en unité de référence du type linéaire),
z 1 tour = 1 tour (en unité de référence du type angulaire),
donc le facteur d’échelle = 1000/1 (quand le maître fait 1000 mm, l’esclave fait 1
tour).
35008792.01 07/2008
43
Présentation fonctionnalités
44
35008792.01 07/2008
Fonctions d’interpolation
4
Présentation
Objet de ce
chapitre
Ce chapitre décrit les nouvelles fonctionnalités d’interpolation du module
TSX CSY 85.
Contenu de ce
chapitre
Ce chapitre contient les souschapitres suivants :
35008792.01 07/2008
Souschapitre
Sujet
Page
4.1
Fonction Calcul de trajectoire : TrjCompute (ACTION_TRF
(26900)
47
4.2
Positionnement du maître et gestion de la vitesse
74
45
Interpolation
46
35008792.01 07/2008
Interpolation
4.1
Fonction Calcul de trajectoire : TrjCompute
(ACTION_TRF 26900)
Présentation
Objet de ce souschapitre
Ce sous chapitre présente la fonction de calcul de trajectoire TrjCompute, obtenue
par le code ACTION_TRF = 26900, chargé dans le module par l’instruction
TRF_RECIPE ainsi que les différents types de segments qu’il est possible de créer.
.
Contenu de ce
sous-chapitre
Ce sous-chapitre contient les sujets suivants :
35008792.01 07/2008
Sujet
Page
TrjCompute : fonction de calcul de trajectoire (ACTION_TRF = 26900)
48
Interpolation linéaire : type 0
53
Interpolation linéaire avec liaison selon une interpolation polynomiale de degré
3 : type 1
54
Interpolation linéaire avec liaison selon une interpolation polynomiale de degré
5 : type 2
59
Interpolation linéaire avec liaison selon une interpolation circulaire : type 10
62
Interpolation circulaire en indiquant le rayon : type 11
67
Interpolation circulaire en indiquant le centre : type 12
69
Interpolation axe tangentiel : type 100 ou 101
72
47
Interpolation
TrjCompute : fonction de calcul de trajectoire (ACTION_TRF = 26900)
Présentation
La fonction TrjCompute permet de charger des trajectoires dans le module
TSX CSY 85.
Elle est réalisée grâce à :
z
z
z
l’instruction standard de transfert d’information au module TRF_RECIPE (voir
Rappels sur le fonctionnement de l’instruction TRF_RECIPE, p. 27)
le code action ACTION_TRF = 26900 (%MWxy.i.10) et
la table de paramètres caractérisant la trajectoire.
Note : la réalisation de la table de paramètres s’effectue de deux manières, soit
directement en saisissant les paramètres dans la table de mots soit en important
cette table à l’aide du logiciel graphique d’édition de trajectoireTjE (Trajectory
Editor).
Dans les pages qui suivent nous indiquons la syntaxe à utiliser puis nous décrivons
toutes les interpolations acceptées par cette fonction ainsi que leur codage.
AVERTISSEMENT
dévalidez le groupe avant d’utiliser la fonction TrjCompute.
Vous devez impérativement mettre à zéro le bit ALLOW_ACQUIRE du
groupe d’axes suiveur avant de lancer la fonction TrjCompute.
Vous pouvez ensuite valider à nouveau le groupe en positionnant à 1
les bits ALLOW_ACQUIRE et CONTROL_ACQUIRE.
Le non-respect de ces instructions peut provoquer la mort, des
blessures graves ou des dommages matériels.
48
35008792.01 07/2008
Interpolation
Syntaxe de la
fonction
La fonction TrjCompute s’exécute :
z
z
z
sur une voie de type groupe d’axes suiveur (voies 21 à 24),
avec le paramétrage suivant :
z %MWxy.i.10 (ACTION_TRF) = 26900,
z %MDxy.i.11 (param_trf_1) = 0,
z %MDxy.i.13 (param_trf_2) = 0,
z %MDxy.i.15 (param_trf_3) = 0,
z %MDxy.i.17 (param_trf_4) = 0,
et la fonction TRF_RECIPE ayant pour paramètres la table de mots contenant la
description de la trajectoire ainsi que la longueur de cette table.
TRF_RECIPE %CHxy.i (Longueur_table, Table_trajectoire) :
Paramètre
Description
%CHxy.i
Voie associée au groupe de voie du module composé des
axes esclaves et de l’axe maître de la trajectoire à calculer.
Longueur_table
Nombre de mots composant la table de trajectoire. La
formule de calcul est la suivante :
Longueur_table = 6 +Nombre d’axes + Nombre de mots par
point * nombre de points :
z Nombre d’axes : nombre d’axes esclaves 2 ou 3.
z Nombre de mots par points : 17 pour 2 axes et 19 pour
3 axes.
z Nombre de points : nombre de points de référence
caractérisant le mouvement.
Table_trajectoire
Premier mot de la table contenant les paramètres de la
trajectoire, cette table est composée d’une entête et d’autant
de blocs que de segments de trajectoires nécessaires à
réaliser le mouvement. Cette table est détaillée dans les
paragraphes qui suivent.
Exemple : TRF_RECIPE %CH3.21 (93,100) ; pour un mouvement sur deux
axes, avec 5 points caractéristiques et une table située en %MW100.
35008792.01 07/2008
49
Interpolation
Entête de la table
de trajectoire
Le tableau suivant décrit le contenu de l’entête de la table de trajectoire
commençant à l’adresse %MWi :
Adresse mémoire
Description
%MWi
Nombre de points à interpoler
%MWi+1
Nombre d’axes esclaves utilisés pour la trajectoire.
%MWi+2
décalage mémoire pour chaque point d’interpolation :
z 17 avec 2 axes esclaves
z 19 avec 3 axes esclaves
%MWi+3
Version de la table d’interpolation, mettre la valeur 0 pour le
moment.
%MWi+4
Réservé
%MWi+5
Réservé
%MWi+6
Identifiant (ID) de l’axe des X
%MWi+7
Identifiant (ID) de l’axe des Y
%MWi+8
Identifiant (ID) de l’axe des Z.
Note : si le mouvement n’utilise que deux axes, ce mot
n’existe pas, l’entête de la table est seulement composée de
8 mots.
Note : ne pas confondre le numéro de la voie associée à l’axe et l’ID de l’axe. Pour
obtenir l’ID d’un axe vous pouvez utiliser la fonction GetAxisID (code 523) à l’aide
de l’instruction WRITE_CMD.
50
35008792.01 07/2008
Interpolation
Corps de la table
de trajectoire
Le corps de la table contient une suite de blocs caractérisant chaque segment de la
trajectoire. Chaque bloc contient un nombre identique de mots constituant les
paramètres d’interpolation de chaque segment.
Le tableau suivant décrit un segment type pour une table de trajectoire dont l’entête
commence à l’adresse %MWi :
35008792.01 07/2008
Adresse mémoire
Paramètre Description
%MFj (1)
XCoord
Coordonné selon l’axe des X du point caractéristique du
segment.
%MFj+2
YCoord
Coordonné selon l’axe des Y du point caractéristique du
segment.
%MFj+4
ZCoord
Coordonné selon l’axe des Z du point caractéristique du
segment.
Note : si le mouvement n’utilise que deux axes, ce
paramètre n’existe pas, le bloc associé à ce segment
n’est alors constitué que de 17 mots au lieu de 19.
%MFj+6
ParF0
Vset : vitesse de consigne de ce segment.
%MFj+8
ParF1
Paramètre ParF1, dépendant du type d’interpolation.
%MFj+10
ParF2
Paramètre ParF2, dépendant du type d’interpolation.
%MFj+12
ParF3
Paramètre ParF3, dépendant du type d’interpolation.
%MWj+14
ParW0
Type d’interpolation du segment :
z 0 : linéaire,
z 1 : linéaire avec liaison selon une interpolation
polynomiale de degré 3,
z 2 : linéaire avec liaison selon une interpolation
polynomiale de degré 5,
z 10 : linéaire avec liaison selon une interpolation
circulaire,
z 11 : circulaire par détermination du rayon du cercle,
z 12 : circulaire par détermination du centre du cercle,
z 100 : uniquement pour le point P0, pour indiquer que
le mouvement s’effectuera avec un axe tangentiel,
z 101 : uniquement pour le point P0, pour indiquer que
le mouvement s’effectuera avec un axe tangentiel
mais avec un décalage de 180° par rapport au code
100 (autre côté de la courbe).
%MWj+15
ParW1
Paramètre ParW1, dépendant du type d’interpolation.
%MWj+16
ParW2
Paramètre ParW2, dépendant du type d’interpolation.
%MWj+17
ParW3
Paramètre ParW3, dépendant du type d’interpolation.
%MWj+18
ParW4
Paramètre ParW4, dépendant du type d’interpolation.
51
Interpolation
Adresse mémoire
Paramètre Description
Légende
(1) j = 6 + Nombre d’axes, j = 9 si l’a trajectoire est configurée sur 3 axes, j= 8 si elle est
configurée sur deux axes.
Note : ces différents paramètres sont utilisés tous ou en partie selon le type
d’interpolation choisi pour chaque segment. Pour obtenir la table de trajectoire
complète, il suffit de positionner à la suite les uns des autres les blocs caractérisant
chaque segment.
AVERTISSEMENT
Association des segments
Chaque bloc caractérise le segment qui permet d’atteindre le point
caractéristique du segment (XCoord, YCoord, ZCoord) et pas le
segment qui part de ce point.
Par conséquent le premier point P0 ne définit pas une section mais
simplement les coordonnés de l’origine de la trajectoire. Ce point est
nécessaire dans des cas précis comme pour une trajectoire fermée afin
d’en pouvoir calculer la longueur.
Le non-respect de ces instructions peut provoquer la mort, des
blessures graves ou des dommages matériels.
Codes d’erreur
52
Lors de l’utilisation de cette fonction, les codes d’erreurs communs à tous les types
d’interpolation pouvant être renvoyés dans le mot %MWxy.i.3 sont les suivants :
Code
Description
9502
Le nombre maximum de points d’une came est dépassé.
9503
Le nombre maximum d’axes est dépassé.
9505
Le nombre de point configuré pour l’une des cames n’est pas suffisant pour
exécuter la fonction.
9507
Came non configurée.
9510
Le nombre maximum de points pour une table est dépassé.
35008792.01 07/2008
Interpolation
Interpolation linéaire : type 0
Présentation
Ce type d’interpolation permet d’effectuer une trajectoire rectiligne entre le point
précédent et le point définissant le segment.
L’inconvénient principal de ce type d’interpolation réside dans le fait qu’une
suite de segments de ce type peuvent définir des lignes brisées et ainsi créer
des contraintes mécaniques et électriques sur les équipements commandés
(des variations brusques de vitesse par exemple). Le seul moyen de réduire ces
contraintes est alors de diminuer la vitesse de déplacement ou de s’arrêter à chaque
point de la table. Ce type de segment peut cependant convenir lors de mouvements
de transition, de repositionnement ou de maintenance.
Paramètres du
bloc
Codes d’erreur
Le tableau suivant indique les paramètres à renseigner dans la table de trajectoire
pour ce type de segment :
Paramètre
Description
ParW0
Saisissez 0 pour indiquer que le type d’interpolation à utiliser est
l’interpolation linéaire.
ParW1
Indiquez dans ce paramètre le nombre de point du segment linéaire. Ce
nombre de points (minimum 1) représente le nombre de points
intermédiaires que le module doit calculer pour définir la trajectoire sur le
segment. Le module TSX CSY 85 définit ces points puis calcule une
interpolation linéaire entre ceux-ci afin de déterminer la position qui sera
envoyée aux variateurs toutes les 4ms.
Dans le cas d’une interpolation linéaire il suffit de mettre la valeur minimum :
1.
ParW4
Pour ce type de segment, seul le mode tangentiel peut être utilisé, mais
seulement dans le cas d’une utilisation d’un troisième axe pour un
mouvement en 3 dimensions.
Note : le mode tangentiel (bit 8 à 1) sera disponible dans une version
ultérieure de l’ensemble TjE / TSX CSY 85, pour le moment seul le
positionnement angulaire du troisème axe Z est supporté.
Pour un mouvement sur deux axes, mettez la valeur 0.
Lors de l’utilisation de ce type de segment, les codes d’erreurs pouvant être
renvoyés dans le mot %MDxy.i.3 sont les suivants :
Code
35008792.01 07/2008
Description
9504
deux points successifs identiques sont présents dans la table.
9515
Le nombre de points du segment est fixé à 0.
53
Interpolation
Interpolation linéaire avec liaison selon une interpolation polynomiale de
degré 3 : type 1
Présentation
Ce type d’interpolation permet de relier des segments linéaires entre eux en
adoucissant les transitions selon une interpolation de degré 3.
La trajectoire ne passe pas par le point défini dans la table mais suit une courbe
définie par les paramètres. Plus la zone de liaison est petite, plus la trajectoire est
proche du point mais plus la courbure est importante, plus la vitesse maximum
possible est faible.
Illustration
La figure suivante présente un exemple de segment de type 1 :
Point segment
Axe Y
Iracc2
Iracc1
Axe X
54
35008792.01 07/2008
Interpolation
Paramètres du
bloc
Le tableau suivant indique les paramètres à renseigner dans la table de trajectoire
pour ce type de segment :
Paramètre
Description
ParW0
Saisissez 1 pour indiquer que le type d’interpolation à utiliser est
l’interpolation linéaire avec liaison selon une interpolation polynomiale de
degré 3.
ParW1 = NpLin
Indiquez dans ce paramètre le nombre de points de la partie linéaire du
segment. Ce nombre de points (minimum 1) représente le nombre de
points intermédiaires que le module doit calculer pour définir la trajectoire
sur cette partie linéaire.
ParW2 = NpRacc Indiquez dans ce paramètre le nombre de points de la partie
d’interpolation cubique du segment. Ce nombre de points (minimum 1)
représente le nombre de points intermédiaires que le module doit calculer
pour définir la trajectoire sur cette partie. Il doit être suffisant afin de
garantir la précision de la trajectoire, un valeur de 15 minimum est
conseillée.
35008792.01 07/2008
ParW3 = KF
Coefficient de forme de l’interpolation de degré 3. Compris entre 50 et 200
ce coefficient permet de modifier la forme de la zone de liaison. la valeur
par défaut est de 100, il est conseillé de garder cette valeur par défaut si
le mouvement désiré le permet car il garantit qu’il n’y aura pas
"d’overshoot" du mouvement.
Note : plus le coefficient KF augmente, plus la courbe se rapproche du
point caractéristique du segment, plus il diminue, plus la courbe s’en
éloigne.
ParW4
Pour ce type de segment, seul le mode tangentiel peut être utilisé. Dans
le cas d’une utilisation d’un troisième axe de type tangentiel sélectionnez
mode tangentiel (bit 8 de ParW4 à 1) pour indiquer que le mouvement du
troisième axe suivra la courbe en utilisant le mode tangentiel
(positionnement d’un outil par exemple de telle sorte qu’il soit toujours
perpendiculaire à la courbe et qu’il suive la tangente de celle-ci).
Note : le mode tangentiel (bit 8 à 1) sera disponible dans une version
ultérieure de l’ensemble TjE / TSX CSY 85, pour le moment seul le
positionnement angulaire du troisème axe Z est supporté.
Pour un mouvement sur deux axes, mettez la valeur 0.
55
Interpolation
Codes d’erreur
Paramètre
Description
ParF1 = lracc1
ParF2 = lracc2
lracc1 est la longueur de la liaison initiale.
lracc2 est la longueur de la liaison finale.
lracc1 et lracc2, exprimées en mm, détermine la longueur de la zone
d’interpolation.
Si ces longueurs sont trop grande (par exemple lracc1 > distance entre
le point courant (Pn) et le point précédent (Pn-1)), la longueur maximale
possible sera utilisée. Cette longueur maximale est automatiquement
calculée par le module en fonction de la section précédente pour lracc1
et de la section suivante pour lracc2.
Exemple : si la somme de lracc2 de Pn-1 et de lracc1 de Pn est
supérieure à la distance entre Pn-1 et Pn, la partie linéaire de la trajectoire
se résumera à un point d’inflexion sur la trajectoire entre ces deux points.
D’autre part si lracc1 > 2*lracc2 alors l’interpolation considère que
lracc1=2*lracc2.
De même si lracc2 > 2*lracc1 alors l’interpolation considère que
lracc2=2*lracc1.
Lors de l’utilisation de ce type de segment, les codes d’erreurs pouvant être
renvoyés dans le mot %MWxy.i.3 sont les suivants :
Code
Description
9501
l’une des longueur lracc1 ou lracc2 est égale à zéro (cas de figure
interdit).
9504
deux points successifs identiques sont présents dans la table.
9514
Liaison trop longue : le segment suivant = 0
9515
Le nombre de points du segment linéaire est fixé à 0.
9516
Le nombre de points du segment d’interpolation polynomiale de degré 3 est
fixé à 0.
Note : les codes d’erreur indiqués sont ceux du module TSX CSY 85, les codes
d’erreur du TjE sont les mêmes avec le 9 en moins (9501 correspond à 501 etc...).
56
35008792.01 07/2008
Interpolation
Coefficient de
forme KF
La figure suivante donne une indication sur l’évolution de la forme de la trajectoire
en fonction de la valeur du coefficient de forme KF (compris entre 50 et 200) :
Courbe de trajectoire du maître en fonction de KF
Y
3,5
3
pol 3° avec Kf=170
2,5
pol 3° avec Kf=125
pol 3° avec Kf=100
pol 3° avec Kf=80
pol 3° avec Kf=50
X
2
0
0,5
1
1,5
Note : plus le coefficient KF augmente, plus la courbe se rapproche du point
caractéristique du segment, plus il diminue, plus la courbe s’en éloigne.
35008792.01 07/2008
57
Interpolation
Exemple de
trajectoire
La figure suivante présente un exemple de trajectoire utilisant des segments de
type 1 :
Trajectoire interpolée XY=f(Maître)
6000
P5
5000
Iracc1
P3
Coord. esclave Y
4000
Iracc2
Iracc1
3000
P6
P1
2000
Iracc2
Iracc2
Iracc1
Iracc1
P4
Iracc2
1000
Iracc1
Point de passage
P2
Trajectoire générée
P0
0
0
58
Iracc2
1000
2000
3000
4000 5000
Coord. esclave X
6000
7000
8000
9000
10000
35008792.01 07/2008
Interpolation
Interpolation linéaire avec liaison selon une interpolation polynomiale de
degré 5 : type 2
Présentation
Ce type d’interpolation permet de relier des segments linéaires entre eux en
adoucissant les transitions selon une interpolation de degré 5.
La trajectoire ne passe pas par le point défini dans la table mais suit une courbe
déifnie par les paramètres. Plus la zone de liaison est petite, plus la trajectoire est
proche du point mais plus la courbure est importante, plus la vitesse maximum
possible est faible.
Par rapport à une interpolation de degré 3, cette interpolation assure un mouvement
plus souple toutefois si la limite d’accélération est atteinte, la vitesse sur le segment
peut être restreinte sur ce type de liaison.
Illustration
La figure suivante présente un exemple de segment de type 2 :
Point segment
Axe Y
Iracc2
Iracc1
Axe X
35008792.01 07/2008
59
Interpolation
Paramètres du
bloc
60
Le tableau suivant indique les paramètres à renseigner dans la table de trajectoire
pour ce type de segment :
Paramètre
Description
ParW0
Saisissez 2 pour indiquer que le type d’interpolation à utiliser est
l’interpolation linéaireavec liaison selon une interpolation polynomiale de
degré 5.
ParW1 = NpLin
Indiquez dans ce paramètre le nombre de points dela partie linéaire du
segment. Ce nombre de points (minimum 1) représente le nombre de
points intermédiaires que le module doit calculer pour définir la
trajectoire sur cette partie linéaire.
ParW2 = NpRacc
Indiquez dans ce paramètre le nombre de points dela partie
d’interpolation de degré 5 du segment. Ce nombre de points (minimum
1) représente le nombre de points intermédiaires que le module doit
calculer pour définir la trajectoire sur cette partie. Il doit être suffisant afin
de garantir la précision de la trajectoire, un valeur de 15 minimum est
conseillée.
ParW3 = KF
Coefficient de forme de l’interpolation de degré 5. Compris entre 50 et
200 ce coefficient permet de modifier la forme de la zone de liaison. la
valeur par défaut est de 100, il est conseillé de garder cette valeur par
défaut si le mouvement désiré le permet car il garantit qu’il n’y aura pas
"d’overshoot" du mouvement.
Note : plus le coefficient KF augmente, plus la courbe se rapproche du
point caractéristique du segment, plus il diminue, plus la courbe s’en
éloigne.
ParW4
Pour ce type de segment, seul le mode tangentiel peut être utilisé. Dans
le cas d’une utilisation d’un troisième axe de type tangentiel sélectionnez
mode tangentiel (bit 8 de ParW4 à 1) pour indiquer que le mouvement
du troisième axe suivra la courbe en utilisant le mode tangentiel
(positionnement d’un outil par exemple de telle sorte qu’il soit toujours
perpendiculaire à la courbe et qu’il suive la tangente de celle-ci).
Note : le mode tangentiel (bit 8 à 1) sera disponible dans une version
ultérieure de l’ensemble TjE / TSX CSY 85, pour le moment seul le
positionnement angulaire du troisème axe Z est supporté.
Pour un mouvement sur deux axes, mettez la valeur 0.
35008792.01 07/2008
Interpolation
Codes d’erreur
Paramètre
Description
ParF1 = lracc1
ParF2 = lracc2
lracc1 est la longueur de la liaison initiale.
lracc2 est la longueur de la liaison finale.
lracc1 et lracc2, exprimées en mm, détermine la longueur de la zone
d’interpolation.
Si ces longueurs sont trop grande (par exemple lracc1 > distance
entre le point courant (Pn) et le point précédent (Pn-1)), la longueur
maximale possible sera utilisée. Cette longueur maximale est
automatiquement calculée par le module en fonction de la section
précédente pour lracc1 et de la section suivante pour lracc2.
Exemple : si la somme de lracc2 de Pn-1 et de lracc1 de Pn est
supérieure à la distance entre Pn-1 et Pn, la partie linéaire de la
trajectoire se résumera à un point d’inflexion sur la trajectoire entre ces
deux points. Ainsi la courbe sera continue ainsi que sa dérivée.
D’autre part si lracc1 > lracc2/0.66 alors l’interpolation considère
que lracc1=lracc2/0.66
De même si lracc2 > lracc1/0.66 alors l’interpolation considère que
lracc2=lracc1/0.66
Lors de l’utilisation de ce type de segment, les codes d’erreurs pouvant être
renvoyés dans le mot %MWxy.i.3 sont les suivants :
Code
Description
9501
l’une des longueur lracc1 ou lracc2 est égale à zéro (cas de figure
interdit).
9504
deux points successifs identiques sont présents dans la table.
9514
Liaison trop longue : le segment suivant = 0
9515
Le nombre de points du segment linéaire est fixé à 0.
9516
Le nombre de points du segment d’interpolation polynomiale de degré 5 est
fixé à 0.
Note : les codes d’erreur indiqués sont ceux du module TSX CSY 85, les codes
d’erreur du TjE sont les mêmes avec le 9 en moins (9501 correspond à 501 etc...).
35008792.01 07/2008
61
Interpolation
Interpolation linéaire avec liaison selon une interpolation circulaire : type 10
Présentation
Ce type d’interpolation permet de relier des segments linéaires entre eux par une
trajectoire circulaire (arcs de cercles ou cercles complets).
Note : ce type d’interpolation n’est possible que lorsque le mouvement s’effectue
dans un plan (2 axes seulement).
Illustration
La figure suivante présente un exemple de segment de type 10 :
Point segment
Axe Y
Iracc
Iracc
ϑ
0
Axe X
62
35008792.01 07/2008
Interpolation
Paramètres du
bloc
35008792.01 07/2008
Le tableau suivant indique les paramètres à renseigner dans la table de trajectoire
pour ce type de segment :
Paramètre
Description
ParW0
Saisissez 10 pour indiquer que le type d’interpolation à utiliser est
l’interpolation linéaire avec liaison selon une interpolation circulaire.
ParW1 = NpLin
Indiquez dans ce paramètre le nombre de points dela partie linéaire du
segment. Ce nombre de points (minimum 1) représente le nombre de
points intermédiaires que le module doit calculer pour définir la
trajectoire sur cette partie linéaire.
ParW2 = NpRacc
Indiquez dans ce paramètre le nombre de points dela partie
d’interpolation circulaire. Ce nombre de points (minimum 1) représente
le nombre de points intermédiaires que le module doit calculer pour
définir la trajectoire sur cette partie. Il doit être suffisant afin de garantir
la précision de la trajectoire, un valeur de 15 minimum est conseillée.
ParW4
Bit 0 à 0 pour une liaison effectuant un angle inférieur à 180°.
Bit 0 à 1 pour une liaison effectuant un angle supérieur à 180°
Dans le cas d’une utilisation d’un troisième axe de type tangentiel
sélectionnez mode tangentiel (bit 8 de ParW4 à 1) pour indiquer que le
mouvement du troisième axe suivra la courbe en utilisant le mode
tangentiel (positionnement d’un outil par exemple de telle sorte qu’il soit
toujours perpendiculaire à la courbe et qu’il suive la tangente de celle-ci).
Note : le mode tangentiel (bit 8 à 1) sera disponible dans une version
ultérieure de l’ensemble TjE / TSX CSY 85, pour le moment seul le
positionnement angulaire du troisème axe Z est supporté.
ParF1 = lracc
lracc est la longueur du segment d’interpolation circulaire.
63
Interpolation
Codes d’erreur
Lors de l’utilisation de ce type de segment, les codes d’erreurs pouvant être
renvoyés dans le mot %MWxy.i.3 sont les suivants :
Code
Description
9501
la longueur lracc est égale à zéro (cas de figure interdit).
9504
deux points successifs identiques sont présents dans la table.
9506
utilisation d’un type d’interpolation circulaire alors que plus de deux axes sont
définis.
9508
Liaison circulaire selon un angle de 180°.
9509
Liaison circulaire selon un angle de 0°.
9514
Liaison trop longue : le segment suivant = 0
9515
Le nombre de points du segment linéaire est fixé à 0.
9517
Le nombre de points du segment d’interpolation circulaire est fixé à 0.
Note : les codes d’erreur indiqués sont ceux du module TSX CSY 85, les codes
d’erreur du TjE sont les mêmes avec le 9 en moins (9501 correspond à 501 etc...).
64
35008792.01 07/2008
Interpolation
Exemple de
trajectoire
La figure suivante présente un exemple de trajectoire utilisant des segments de type
10 et 1. Le point P4 donne un exemple de mouvement circulaire avec le paramètre
ParW4 = . Attention dans ce cas la vitesse n’est plus continue :
Trajectoire interpolée XY=f(Maître)
6000
P5
5000
Iracc2
Iracc1
P3
Coord. esclave Y
4000
Iracc
3000
P6
P1
2000
Iracc
Iracc
P4
1000
Iracc
Point de passage
P2
Trajectoire générée
P0
0
0
35008792.01 07/2008
1000
2000
3000
4000 5000
Coord. esclave X
6000
7000
8000
9000
10000
65
Interpolation
Exemple de
trajectoire
circulaire
complète
La figure suivante présente un exemple de trajectoire circulaire pour laquelle sont
définis les coins du carré circonscrit avec pour longueur des segments ciculaires la
moitié du côté de ce carré :
Trajectoire interpolée XY=f(Maître)
4500
Point de passage
Trajectoire générée
P0/P4
P1/P5
4000
Coord. esclave Y
3500
Iracc
3000
2500
Iracc
2000
1500
3500
66
Iracc
P3
Iracc
4000
4500
5000
5500
Coord. esclave X
P2
6000
6500
35008792.01 07/2008
Interpolation
Interpolation circulaire en indiquant le rayon : type 11
Présentation
Ce type d’interpolation permet également de relier des segments linéaires entre eux
par une trajectoire circulaire.
Vous devez spécifier :
z
z
z
z
le point d’origine (Pn-1),
le point d’arrivée (Pn),
le rayon du cercle et
la direction de la trajectoire (horaire ou anti-horaire).
Note : Un mouvement circulaire complet n’est pas possible pour ce type
d’interpolation. Si vous désirer parcour un cercle entier vous devez utiliser
l’interpolation de type 10.
Note : ce type d’interpolation n’est possible que lorsque le mouvement s’effectue
dans un plan (2 axes seulement).
Illustration
La figure suivante présente un exemple de segment de type 11 :
Axe Y
P2
P1
R
ϑ
C
35008792.01 07/2008
Axe X
67
Interpolation
Paramètres du
bloc
Codes d’erreur
Le tableau suivant indique les paramètres à renseigner dans la table de trajectoire
pour ce type de segment :
Paramètre
Description
ParW0
Saisissez 11 pour indiquer que le type d’interpolation à utiliser est
l’interpolation linéaireavec liaison selon une interpolation circulaire dont
on donne le rayon.
ParW1 = NpLin
Indiquez dans ce paramètre le nombre de points de l’arc de cercle. Ce
nombre de points (minimum 1) représente le nombre de points
intermédiaires que le module doit calculer pour définir la trajectoire sur ce
segment.
ParW4
Bit 0 à 0 pour un sens anti-horaire de la trajectoire.
Bit 0 à 1 pour un sens horaire de la trajectoire.
Dans le cas d’une utilisation d’un troisième axe de type tangentiel
sélectionnez mode tangentiel (bit 8 de ParW4 à 1) pour indiquer que le
mouvement du troisième axe suivra la courbe en utilisant le mode
tangentiel (positionnement d’un outil par exemple de telle sorte qu’il soit
toujours perpendiculaire à la courbe et qu’il suive la tangente de celle-ci).
Note : le mode tangentiel (bit 8 à 1) sera disponible dans une version
ultérieure de l’ensemble TjE / TSX CSY 85, pour le moment seul le
positionnement angulaire du troisème axe Z est supporté.
ParF1 = R
Radius est la longueur du rayon de l’arc de cercle.
Lors de l’utilisation de ce type de segment, les codes d’erreurs pouvant être
renvoyés dans le mot %MWxy.i.3 sont les suivants :
Code
Description
9504
deux points successifs identiques sont présents dans la table.
9506
utilisation d’un type d’interpolation circulaire alors que plus de deux axes sont
définis.
9511
le rayon est inférieur à la moitié de la distance entre les points Pn-1 et Pn.
9512
Cercle impossible.
9513
Rayon égal à 0.
9518
Le nombre de points du segment d’interpolation circulaire est fixé à 0.
Note : les codes d’erreur indiqués sont ceux du module TSX CSY 85, les codes
d’erreur du TjE sont les mêmes avec le 9 en moins (9504 correspond à 504 etc...).
68
35008792.01 07/2008
Interpolation
Interpolation circulaire en indiquant le centre : type 12
Présentation
Ce type d’interpolation permet également de relier des segments linéaires entre eux
par une trajectoire circulaire.
Vous devez spécifier :
z
z
z
z
le point d’origine (Pn-1),
le point d’arrivée (Pn),
les coordonnés du centre du cercle et
la direction de la trajectoire (horaire ou anti-horaire).
Note : un mouvement circulaire complet est possible si le point de départ est égal
au point d’arrivée.
Note : ce type d’interpolation n’est possible que lorsque le mouvement s’effectue
dans un plan (2 axes seulement).
Illustration
La figure suivante présente un exemple de segment de type 12 :
Axe Y
P2
P1
R
ϑ
C (Xc,Yc)
35008792.01 07/2008
Axe X
69
Interpolation
Paramètres du
bloc
70
Le tableau suivant indique les paramètres à renseigner dans la table de trajectoire
pour ce type de segment :
Paramètre
Description
ParW0
Saisissez 12 pour indiquer que le type d’interpolation à utiliser est
l’interpolation linéaire avec liaison selon une interpolation circulaire dont
on indique les coordonnés du centre du cercle.
ParW1 = NpLin
Indiquez dans ce paramètre le nombre de points de l’arc de cercle. Ce
nombre de points (minimum 1) représente le nombre de points
intermédiaires que le module doit calculer pour définir la trajectoire sur ce
segment.
ParW4
Bit 0 à 0 pour un sens anti-horaire de la trajectoire.
Bit 0 à 1 pour un sens horaire de la trajectoire.
Dans le cas d’une utilisation d’un troisième axe de type tangentiel
sélectionnez mode tangentiel (bit 8 de ParW4 à 1) pour indiquer que le
mouvement du troisième axe suivra la courbe en utilisant le mode
tangentiel (positionnement d’un outil par exemple de telle sorte qu’il soit
toujours perpendiculaire à la courbe et qu’il suive la tangente de celle-ci).
Note : le mode tangentiel (bit 8 à 1) sera disponible dans une version
ultérieure de l’ensemble TjE / TSX CSY 85, pour le moment seul le
positionnement angulaire du troisème axe Z est supporté.
ParF1 = Xc
ParF2 = Yc
Xc est la position du centre du cercle selon l’axe X.
Yc est la position du centre du cercle selon l’axe Y.
Note : le module TSX CSY 85 recalcule automatiquement la position
exacte du centre. Toutefois si la position indiquée différe de la position
exacte de plus de la moitié de la longueur du rayon du cercle le code
d’erreur 9519 est généré.
35008792.01 07/2008
Interpolation
Codes d’erreur
Lors de l’utilisation de ce type de segment, les codes d’erreurs pouvant être
renvoyés dans le mot %MWxy.i.3 sont les suivants :
Code
Description
9506
utilisation d’un type d’interpolation circulaire alors que plus de deux axes sont
définis.
9512
Cercle impossible.
9518
Le nombre de points du segment d’interpolation circulaire est fixé à 0.
9519
La position indiquée du centre est en dehors de la tolérance acceptée par le
module.
Note : les codes d’erreur indiqués sont ceux du module TSX CSY 85, les codes
d’erreur du TjE sont les mêmes avec le 9 en moins (9506 correspond à 506 etc...).
35008792.01 07/2008
71
Interpolation
Interpolation axe tangentiel : type 100 ou 101
Présentation
Ce type d’interpolation permet d’utiliser un troisième axe qui suivra automatiquement la courbe créée à partir de deux axes.
Ce troisième axe va permettre de positionner un outil de découpe pour lequel sera
indiqué un angle d’attaque de l’outil. Cette interpolation garantit un positionnement
angulaire constant sur chaque segment.
Note : ce type d’interpolation est uniquement utilisé sur le point P0 pour indiquer
que le troisième axe est de type tangentiel.
Note : pour chaque segment de la courbe, la position sur le troisième axe
indique l’angle (en degré) selon lequel l’outil de découpe doit être positionné
si le bit 8 du paramètre ParW4 du segment est à 0. Si ce bit 8 est à 1 la
position de l’outil sera automatiquement tangent à la courbe.
le mode tangentiel (bit 8 à 1) sera disponible dans une version ultérieure de
l’ensemble TjE / TSX CSY 85, pour le moment seul le positionnement angulaire du
troisème axe Z est supporté.
Note : le code 100 est utilisé pour positionner l’outil d’un côté de la courbe et le
code 101 pour l’autre côté.
72
35008792.01 07/2008
Interpolation
Illustration
La figure suivante indqiue par les flèches rouges le positionnement du troisème axe
sur la courbe :
Axe Y
Axe X
Paramètres du
bloc
35008792.01 07/2008
Le tableau suivant indique les paramètres à renseigner dans la table de trajectoire
pour ce type de segment :
Paramètre
Description
ParW0
Saisissez 101 pour indiquer que le troisième axe du mouvement est de type
tangentiel.
Note : ce type est uniquement utilisé sur le premier point P0 de la courbe car
il indique le mode de fonctionnement du troisième axe sur la totalité de la
trajectoire.
73
Interpolation
4.2
Positionnement du maître et gestion de la vitesse
Présentation
Objet de ce souschapitre
Ce sous-chapitre décrit les fonctions de positionnement du maître et de gestion de
la vitesse du mouvement sur la trajectoire.
Contenu de ce
sous-chapitre
Ce sous-chapitre contient les sujets suivants :
74
Sujet
Page
GetTabResultF : résultat du calcul de trajectoire (ACTION_TRF = 16901)
75
MoveImmedInterpo : Variation de la vitesse du maître (ACTION_CMD = 905)
79
GetMinimumConstantSpeed : obtention de la vitesse constante minimum
possible (ACTION_TRF = 14905)
82
35008792.01 07/2008
Interpolation
GetTabResultF : résultat du calcul de trajectoire (ACTION_TRF = 16901)
Présentation
Après avoir chargé la trajectoire dans le module (voir TrjCompute : fonction de calcul
de trajectoire (ACTION_TRF = 26900), p. 48), le module a calculé les différents
profils de came pour chaque axe qui associent les axes réels esclaves à l’axe
maître.
Vous pouvez maintenant travailler sur le mouvement et sa trajectoire en obtenant
différentes informations.
La fonction GetTabResultF permet d’obtenir la vitesse maximum autorisée ainsi
que la vitesse calculée (vitesse réellement utilisée).
35008792.01 07/2008
75
Interpolation
Syntaxe de la
fonction
La fonction GetTabResultF s’exécute :
z
z
z
sur une voie de type groupe d’axes suiveur (voies 21 à 24),
avec le paramétrage suivant :
z %MWxy.i.10 (ACTION_TRF) = 16901,
z %MDxy.i.11 (param_trf_1) = 0,
z %MDxy.i.13 (param_trf_2) = 0,
z %MDxy.i.15 (param_trf_3) = 0.0 pour lire la table du maître, 1.0 pour lire la
table des vitesses maximum autorisées et 2.0 pour obtenir la tale des
vitesses calculées.
z %MDxy.i.17 (param_trf_4) = 0,
et la fonction TRF_RECIPE ayant pour paramètres la table de mots devant
recevoir les informations demandées par le param_trf_3 ainsi que la longueur de
cette table.
TRF_RECIPE %CHxy.i (Longueur_table, Table_réception) :
76
Paramètre
Description
%CHxy.i
Voie associée au groupe de voie du module composé des
axes esclaves et de l’axe maître de la trajectoire dont on
veut obtenir les informations.
Exemple : %CH3.21
Longueur_table
Nombre de mots composant la table de réception :
Longueur_table = 4 x Nombre de points de la trajectoire.
Table_réception
Premier mot de la table réceptionnant les valeurs
demandées par le paramètre param_trf_3. Cette table
contient deux flottants pour chaque point de la trajectoire.
Ces mots contiennent les vitesses (param_trf_3 = 1.0 ou
2.0) ou des positions caractéristiques pour chaque type de
segment (param_trf_3 = 0.0). Les paragraphes qui suivent
détaillent plus précisément l’information reçue lorsque vous
voulez obtenir la position du maître.
Exemple : %MW0:
35008792.01 07/2008
Interpolation
Position du
maître
Lorsque vous demandez la position du maître, vous obtenez deux mots flottants
pour chaque point (P0, P1,..., Pn...) des segments des axes esclaves. Ces mots
flottants correspondent à la position des points du maître identiques aux points des
esclaves pour les segments de type 0 (voir Interpolation linéaire : type 0, p. 53), 11
(voir Interpolation circulaire en indiquant le rayon : type 11, p. 67) et 12 (voir
Interpolation circulaire en indiquant le centre : type 12, p. 69). Dans le cas des
segments de type 1 (voir Interpolation linéaire avec liaison selon une interpolation
polynomiale de degré 3 : type 1, p. 54), 2 (voir Interpolation linéaire avec liaison
selon une interpolation polynomiale de degré 5 : type 2, p. 59) et 10 (voir
Interpolation linéaire avec liaison selon une interpolation circulaire : type 10, p. 62),
l’interpolation crée deux segments pour représenter le segment demandé et ainsi
les points (et par conséquent les vitesses) ne coincident plus.
Le tableau suivant donne un exemple de points pour une trajectoire dont l’illustration
est donnée ensuite
Point
X
Y
Type
P0
0
0
ignoré
P1
P2
P3
P4
P5
P6
2000
3500
4000
3000
2000
0
35008792.01 07/2008
4000
4000
3000
2000
2000
0
10
0
10
0
1
linéaire
liaison
Position Maître Point sur illustration
0
Toujours 0
0
Toujours 0
3472,136
Fin de linéaire entre P0 et P1, début liaison circulaire
5263,540
Fin liaison circulaire en P1
5263,540
Fin linéaire entre P1 et P2
5263,540
Fin linéaire entre P1 et P2
6381,574
Fin de linéaire entre P2 et P3, début liaison circulaire
7248,053
Fin liaison circulaire en P3
8162,267
Fin linéaire entre P3 et P4
8162,267
Fin linéaire entre P3 et P4
8162,267
Fin de linéaire entre P4 et P5, début liaison degré 3
10161,267
Fin liaison degré 3 en P5
11990,695
Fin linéaire entre P5 et P6 (longueur totale maitre)
11990,695
Fin linéaire entre P5 et P6 (longueur totale maitre)
77
Interpolation
Illustration
Illustration du tableau précédent :
Trajectoire interpolée XY=f(Maître)
4500
P2
P1
4000
3500
P3
Coord. esclave
3000
2500
P5
2000
P4
1500
Point de passage
1000
Trajectoire générée
Position renvoyée dans la table
de position du maître
500
P0/P6
0
0
500
1000
1500
2000
2500
3000
3500
4000
4500
Coord. esclave
78
35008792.01 07/2008
Interpolation
MoveImmedInterpo : Variation de la vitesse du maître (ACTION_CMD = 905)
Présentation
Après avoir chargé la trajectoire dans le module (voir TrjCompute : fonction de calcul
de trajectoire (ACTION_TRF = 26900), p. 48), le module a calculé les différents
profils de came pour chaque axe qui associent les axes réels esclaves à l’axe virtuel
maître.
Vous pouvez maintenant travailler en agissant sur le mouvement et sa trajectoire.
La fonction MoveImmedInterpo permet de positionner le maître sur la trajectoire en
utilisant la vitesse maximum autorisée en fonction des différents segment la
composant.
Sur chaque segment le module essaye d’obtenir la vitesse minimum entre la vitesse
désirée et la vitesse permise sur le segment en respectant les accélérations et
décélérations fixées sur le maître.
Syntaxe de la
fonction
La fonction MoveImmedInterpo s’exécute :
z
z
z
sur la voie 0 du module,
avec le paramétrage suivant :
z %MWxy.i.26 (ACTION_CMD) = 905,
z %MDxy.i.27 (param_cmd_1) = ID du groupe d’axe (601 à 604),
z %MDxy.i.29 (param_cmd_2) = 10 si vitesse absolue (param_cmd_4), toute
autre valeur indique que la vitesse contenue dans param_cmd_4 est un
pourcentage de la vitesse maximale calculée,
z %MDxy.i.31 (param_cmd_3) = position à atteindre,
z %MDxy.i.33 (param_cmd_4) = vitesse désirée soit en absolu soit en relatif (de
0 pour 0% à 10000 pour 100%) selon la valeur de param_cmd_2,
et l’instruction WRITE_CMD appliquée à la voie 0 du module.
Note : pour obtenir l’ID de l’axe, utilisez la fonction GetAxisID (code 523) à l’aide
de l’instruction WRITE_CMD.
35008792.01 07/2008
79
Interpolation
Exemple de
trajectoire
La figure suivante donne un exemple de trajectoire :
Trajectoire interpolée XY=f(Maître)
4500
4000
3500
Coord. esclave Y
3000
2500
2000
1500
1000
500
Trajectoire générée
0
0
500
1000
1500
2000
2500
3000
3500
4000 4500
Coord. esclave X
Exemple de
mouvement non
modulé
La figure suivante donne un exemple de mouvement non modulé
(param_cmd_2 = 10) sur l’exemple de trajectoire précédente :
10000
5000
0
80
1.000
2.000
3.000
35008792.01 07/2008
Interpolation
Exemple de
mouvement
modulé
La figure suivante donne un exemple de mouvement modulé (param_cmd_2
différent de 10, param_cmd_4 de 0 pour 0% à 10000 pour 100%) sur l’exemple de
trajectoire précédente :
10000
5000
0
1.000
2.000
3.000
4.000
Note : sur cette figure, nous constatons que le maître change sa vitesse en
fonction des segments (ralentissements sur des segments plus serrés). Lorsque la
vitesse est modulée le mouvement s’effectue dans sa totalité alors que dans le
mouvement non modulé, figure précédente, les axes risquent de passer en défaut
car la vitesse reste trop importante par rapport à la dynamique du mouvement.
Codes d’erreur
35008792.01 07/2008
Lors de l’utilisation de cette fonction, les codes d’erreurs pouvant être renvoyés
dans le mot %MWxy.i.3 sont les suivants :
Code
Description
7001
Pour les interpolations de types 1, 2 et 10 une liaison a été fixée avec l’un
des paramètres ParF1 ou ParF2 à 0.
7002
Q_stop est en dehors des points de la trajectoire.
7003
La commande de mouvement ne s’est pas effectuée correctement.
7004
Le mouvement en cours a été arrêté.
7038
Le groupe spécifié (ID) n’est pas configuré.
7046
La trajectoire du groupe sélectionné n’a pas été calculée.
9015
La version du module ne supporte pas cette fonction.
81
Interpolation
GetMinimumConstantSpeed : obtention de la vitesse constante minimum
possible (ACTION_TRF = 14905)
Présentation
Après avoir chargé la trajectoire dans le module (voir TrjCompute : fonction de calcul
de trajectoire (ACTION_TRF = 26900), p. 48), le module a calculé les différents
profils de came pour chaque axe qui associent les axes réels esclaves à l’axe
maître.
Vous pouvez maintenant travailler sur le mouvement et sa trajectoire en obtenant
différentes informations.
La fonction GetMinimumConstantSpeed permet d’obtenir la vitesse minimum
autorisée sur la totalité des segments de la trajectoire.
Syntaxe de la
fonction
La fonction GetMinimumConstantSpeed s’exécute :
z
z
z
sur une voie de type groupe d’axes suiveur (voies 21 à 24),
avec le paramétrage suivant :
z %MWxy.i.10 (ACTION_TRF) = 14905,
z %MDxy.i.11 (param_trf_1) = 0,
z %MDxy.i.13 (param_trf_2) = 0,
z %MDxy.i.15 (param_trf_3) = 0,
z %MDxy.i.17 (param_trf_4) = 0,
z %MDxy.i.6 (return_trf_2) = contient la vitesse demandée,
et la fonction TRF_RECIPE dont les paramètres ne sont pas utilisés.
Syntaxe de l’appel de la fonction :
TRF_RECIPE %CHxy.i (0, 0)
Codes d’erreur
82
Lors de l’utilisation de cette fonction, les codes d’erreurs pouvant être renvoyés
dans le mot %MWxy.i.3 sont les suivants :
Code
Description
1
Numéro de groupe incorrect.
3
la trajectoire n’a pas été calculée avant l’exécution de la fonction.
35008792.01 07/2008
Annexes
Présentation
Objet de cette
annexe
Cette anexe présente les différents codes d’erreur spécifiques au module
TSX CSY 85.
Contenu de cette
annexe
Cette annexe contient les chapitres suivants :
Chapitre
A
35008792.01 07/2008
Titre du chapitre
Codes d’erreur
Page
85
83
Annexes
84
35008792.01 07/2008
Codes d’erreur
A
Codes d’erreur
Présentation
Le mot %MWxy.i.3 (i compris entre 21 et 24 pour les groupes de voies) contient les
codes d’erreur survenant après une instruction TRF_RECIPE.
Le bit %MWxy.i:X3 renvoie l’état de la commande en cours sur la voie i.
L’algorithme d’interpolation du module TSX CSY 85 gère les codes d’erreur
supérieurs à 9500.
La méthode de diagnostic est la suivante :
z
z
z
z
z
35008792.01 07/2008
vérifiez que la commande est terminée : %MWxy.i:X3 = 0,
consultez le flottant %MFxy.i.8 (return_trf_3) pour obtenir le point concerné par
l’erreur,
consultez le code d’erreur dans le mot %MWxy.i.3,
reportez-vous au tableau suivant pour savoir quel type d’erreur est survenu,
modifiez votre programme ou la configuration de votre module pour supprimer
cette erreur lors de la prochaine exécution de l’instruction TRF_RECIPE.
85
Codes d’erreur
Codes d’erreur
86
Le tableau suivant décrit les codes d’erreur possibles :
Code
Description
9501
Pour une interpolation de type 1, 2 ou 10, l’un des paramètres ParF1 ou
ParF2 est égal à zéro.
9502
Le nombre maximum de points pour une trajectoire a été atteint. Le module
TSX CSY 85 autorise 10 000 points maximum.
9503
Le nombre d’axes déini est supérieur à celui autorisé.
9504
Deux points successifs identiques sont présents dans la table pour des
interpolations de types autres que 12.
9505
Le nombre de points définis pour au moins une came est insuffisant par
rapport au nombre de point de la trajectoire.
9506
Utilisation d’un type d’interpolation circulaire alors que plus de deux axes
sont définis (types 10, 11 et 12).
9507
Une came correspondant à l’un des axes n’a pas été configurée.
9508
Liaison circulaire selon un angle de 180° (type 10).
9509
Liaison circulaire selon un angle de 0° (type 10).
9510
Une trajectoire a été définie avec un nombre de points supérieur au
maximum autorisé (60 points de références maximum).
9511
Le rayon est inférieur à la moitié de la distance entre les points Pn-1 et Pn.
9512
Cercle impossible, si le type est 11 le point origine est égal au point
destination, si le type est 12, le point origine est égal au point destination et
est égal au centre du cercle.
9513
Rayon égal à 0 (type 11).
9514
Liaison trop longue : le segment suivant = 0 (types 1, 2 ou 10).
9515
Le nombre de points du segment linéaire est fixé à 0 (types 0, 1 ou 10).
9516
Le nombre de points du segment d’interpolation polynomiale de degré 3 est
fixé à 0 (type 1).
9517
Le nombre de points du segment d’interpolation circulaire est fixé à 0 (type
10).
9518
Le nombre de points du segment d’interpolation circulaire est fixé à 0 (type
11 ou 12).
9519
La position du centre fixée dans la table différe de plus de 50% du rayon du
cercle par rapport à la position calculée par le module (type 12).
9520
Groupe non configuré.
9521
L’un au moins des axes associés au groupe n’est pas configuré.
9522
Le nombre de points du segment d’interpolation polynomiale de degré 5 est
fixé à 0 (type 2).
35008792.01 07/2008
Codes d’erreur
35008792.01 07/2008
Code
Description
9523
Le nombre de points de la table d’interpolation est égal à zéro (premier mot
de la table).
9524
Mémoire insuffisante pour calculer l’interpolation.
9525
Le segment suivant étant de longueur nulle, il est impossible d’effectuer la
liaison.
9526
La table du maître est vide, le calcul d’interpolation n’a pas été effectué.
9527
Le nombre de mots par point n’est pas correct dans la table d’interpolation.
9528
Le type d’interpolation demandé n’existe pas (paramètre type différent de 0,
1, 2, 10, 11 ou 12).
9002
Code d’erreur existant déjà mais pouvant survenir lorsque l’anneau
SERCOS n’est pas configuré correctement.
87
Codes d’erreur
88
35008792.01 07/2008
B
AC
Index
A
E
ACTION_CMD, 29
905 MoveImmedInterp, 79
ACTION_TRF
14905 GetMinimumConstantSpeed, 82
16901 GetTabResultF, 75
26900 TrjCompute, 48
Architecture SERCOS, 10
Esclave
Module SERCOS®, 39
B
I
Butées
Module SERCOS(r), 30
IDN, 8
Incrément esclave
Module SERCOS®, 36
Incrément maître
Module SERCOS®, 36
Interpolation
type 0, 53
type 1, 54
type 10, 62
type 100, 72
type 101, 72
type 11, 67
type 12, 69
type 2, 59
C
Calcul de trajectoire
Module SERCOS®, 10
Configuration d’un profil de came
Module SERCOS®, 36
Contrôle de position en validation
Module SERCOS(r), 30
D
Données cycliques
Module SERCOS®, 8
Données non cycliques
Module SERCOS®, 8
35008792.01 07/2008
F
Facteur d’échelle
Module SERCOS(r), 30
L
Liaison numérique
Module SERCOS®, 8
89
Index
M
Maître
Module SERCOS®, 39
Mise en oeuvre d’un axe imaginaire
Module SERCOS®, 20
Mise en oeuvre d’un axe réel
Module SERCOS®, 20
Mise en oeuvre d’une entrée de mesure
externe
Module SERCOS®, 20
Modes de marche, 9
Module SERCOS®, 8
Mouvement
Module SERCOS(r), 30
O
Offre Premium
Module SERCOS®, 10
P
PARAM_CMD, 29
R
RETURN_CMD, 29
T
TRF_RECIPE, 27
U
Unités, 30
W
WRITE_CMD, 29
90
35008792.01 07/2008

Manuels associés