Académique Documents
Professionnel Documents
Culture Documents
Avant-propos
___________________
Programmation CN flexible 1
Gestion des fichiers et
___________________
programmes 2
___________________
Zones de protection 3
SINUMERIK Instructions de dplacement
___________________
spciales 4
Transformations de
SINUMERIK 840D sl/828D ___________________
coordonnes (FRAMES) 5
Notions complmentaires
___________________
Transformations 6
___________________
Corrections d'outils 7
Manuel de programmation
___________________
Modes de dplacement 8
___________________
couplages d'axes 9
Actions synchrones au
___________________
dplacement 10
___________________
Oscillation 11
___________________
Poinonnage et grignotage 12
___________________
Rectification 13
___________________
Autres fonctions 14
Programmes de chariotage
___________________
personnaliss 15
___________________
Tableaux 16
___________________
Annexes A
Valable pour
Commande
SINUMERIK 840D sl / 840DE sl
SINUMERIK 828D
Logiciel Version
Logiciel systme NCU 2.6 SP1
03/2010
6FC5398-2BP20-1DA0
Mentions lgales
Mentions lgales
Signaltique d'avertissement
Ce manuel donne des consignes que vous devez respecter pour votre propre scurit et pour viter des
dommages matriels. Les avertissements servant votre scurit personnelle sont accompagns d'un triangle de
danger, les avertissements concernant uniquement des dommages matriels sont dpourvus de ce triangle. Les
avertissements sont reprsents ci-aprs par ordre dcroissant de niveau de risque.
DANGER
signifie que la non-application des mesures de scurit appropries entrane la mort ou des blessures graves.
ATTENTION
signifie que la non-application des mesures de scurit appropries peut entraner la mort ou des blessures
graves.
PRUDENCE
accompagn dun triangle de danger, signifie que la non-application des mesures de scurit appropries peut
entraner des blessures lgres.
PRUDENCE
non accompagn dun triangle de danger, signifie que la non-application des mesures de scurit appropries
peut entraner un dommage matriel.
IMPORTANT
signifie que le non-respect de l'avertissement correspondant peut entraner l'apparition d'un vnement ou d'un
tat indsirable.
En prsence de plusieurs niveaux de risque, c'est toujours l'avertissement correspondant au niveau le plus lev
qui est reproduit. Si un avertissement avec triangle de danger prvient des risques de dommages corporels, le
mme avertissement peut aussi contenir un avis de mise en garde contre des dommages matriels.
Personnes qualifies
Lappareil/le systme dcrit dans cette documentation ne doit tre manipul que par du personnel qualifi pour
chaque tche spcifique. La documentation relative cette tche doit tre observe, en particulier les consignes
de scurit et avertissements. Les personnes qualifies sont, en raison de leur formation et de leur exprience,
en mesure de reconnatre les risques lis au maniement de ce produit / systme et de les viter.
Utilisation des produits Siemens conforme leur destination
Tenez compte des points suivants:
ATTENTION
Les produits Siemens ne doivent tre utiliss que pour les cas d'application prvus dans le catalogue et dans la
documentation technique correspondante. S'ils sont utiliss en liaison avec des produits et composants d'autres
marques, ceux-ci doivent tre recommands ou agrs par Siemens. Le fonctionnement correct et sr des
produits suppose un transport, un entreposage, une mise en place, un montage, une mise en service, une
utilisation et une maintenance dans les rgles de l'art. Il faut respecter les conditions d'environnement
admissibles ainsi que les indications dans les documentations affrentes.
Marques de fabrique
Toutes les dsignations repres par sont des marques dposes de Siemens AG. Les autres dsignations
dans ce document peuvent tre des marques dont l'utilisation par des tiers leurs propres fins peut enfreindre les
droits de leurs propritaires respectifs.
Exclusion de responsabilit
Nous avons vrifi la conformit du contenu du prsent document avec le matriel et le logiciel qui y sont dcrits.
Ne pouvant toutefois exclure toute divergence, nous ne pouvons pas nous porter garants de la conformit
intgrale. Si l'usage de ce manuel devait rvler des erreurs, nous en tiendrons compte et apporterons les
corrections ncessaires ds la prochaine dition.
Documentation SINUMERIK
La documentation SINUMERIK comporte 3 catgories :
Documentation gnrale
Documentation utilisateur
Documentation constructeur / S.A.V.
Le lien http://www.siemens.com/motioncontrol/docu fournit des informations sur les thmes
suivants :
Ordering documentation
Vous trouverez ici un aperu actuel de la documentation disponible.
Download documentation
Liens permettant de tlcharger des fichiers partir de Service & Support
(Online) research in the documentation
Informations sur DOConCD et accs direct aux documents dans DOConWEB.
Pour tablir de la documentation individuellement sur la base des contenus Siemens
l'aide de My Documentation Manager (MDM) (Compiling documentation individually), voir
http://www.siemens.com/mdm.
My Documentation Manager propose des fonctionnalits permettant de crer votre
propre documentation machine.
Formation (Training) et foire aux questions (FAQ)
Des informations sur les offres de formation et les FAQ (foires aux questions) sont
accessibles partir du menu de navigation.
Groupe cible
Le prsent manuel s'adresse aux :
programmeurs
ingnieurs de projet
Utilit
Le Manuel de programmation permet au groupe cible de crer, d'crire, de tester des
programmes et des interfaces logicielles et de supprimer des erreurs.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 3
Avant-propos
Version standard
Le prsent manuel de programmation dcrit les fonctionnalits de la version standard. Les
options complmentaires ou modifications apportes par le constructeur de la machine-outil
sont documentes par celui-ci.
La commande numrique peut possder des fonctions qui dpassent le cadre de la prsente
description. Le client ne peut toutefois pas faire valoir de droit en liaison avec ces fonctions,
que ce soit dans le cas de matriels neufs ou dans le cadre d'interventions du service aprs-
vente.
Pour des raisons de clart, la prsente documentation ne contient pas toutes les
informations de dtail relatives toutes les variantes du produit ; elle ne peut pas non plus
tenir compte de tous les cas d'installation, d'exploitation et de maintenance.
Assistance technique
Pour toutes vos questions techniques, adressez-vous au service d'assistance tlphonique :
Europe / Afrique
Tlphone +49 180 5050 - 222
Tlcopie +49 180 5050 - 223
0,14 /minute depuis le rseau tlphonique fixe allemand, les tarifs de tlphonie mobile peuvent
tre diffrents.
Internet http://www.siemens.com/automation/support-request
Amrique
Tlphone +1 423 262 2522
Tlcopie +1 423 262 2200
Courrier lectronique mailto:techsupport.sea@siemens.com
Asie / Pacifique
Tlphone +86 1064 757575
Tlcopie +86 1064 747474
Courrier lectronique mailto:support.asia.automation@siemens.com
Remarque
Vous trouverez les numros de tlphone pour une assistance technique dans les diffrents
pays sur le site Internet :
http://www.automation.siemens.com/partner
Notions complmentaires
4 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Avant-propos
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 5
Avant-propos
Notions complmentaires
6 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Table des matires
Avant-propos ............................................................................................................................................. 3
1 Programmation CN flexible ...................................................................................................................... 15
1.1 Variables ......................................................................................................................................15
1.1.1 Informations gnrales sur les variables .....................................................................................15
1.1.2 Variables systme........................................................................................................................16
1.1.3 Variables utilisateur prdfinies : Paramtre de calcul (R)..........................................................18
1.1.4 Variables utilisateur prdfinies : variables Link..........................................................................20
1.1.5 Dfinition de variables utilisateur (DEF) ......................................................................................22
1.1.6 Redfinition de variables systme, variables utilisateur et instruction de langage CN
(REDEF).......................................................................................................................................28
1.1.7 Attribut : Valeur d'initialisation......................................................................................................31
1.1.8 Attribut : valeurs limites (LLI, ULI)................................................................................................34
1.1.9 Attribut : unit physique (PHU) ....................................................................................................35
1.1.10 Attribut : droits d'accs (APR, APW, APRP, APWP, APRB, APWB) ..........................................38
1.1.11 Vue d'ensemble des attributs dfinissables et redfinissables....................................................43
1.1.12 Dfinition et initialisation de variables de tableau (DEF, SET, REP)...........................................44
1.1.13 Dfinition et initialisation de variables de tableau (DEF, SET, REP) : Informations
complmentaires..........................................................................................................................49
1.1.14 Types de donnes .......................................................................................................................52
1.2 Programmation indirecte..............................................................................................................53
1.2.1 Programmation indirecte d'adresses ...........................................................................................53
1.2.2 Programmation indirecte de codes G ..........................................................................................56
1.2.3 Programmation indirecte d'attributs de position (PB) ..................................................................57
1.2.4 Programmation indirecte de lignes de programme pice (EXECSTRING) .................................60
1.3 Fonctions de calcul ......................................................................................................................61
1.4 Oprations relationnelles et oprations logiques.........................................................................64
1.5 Correction de la prcision pour les erreurs relationnelles (TRUNC) ...........................................66
1.6 Minimum, maximum et plage de variables (MINVAL, MAXVAL, BOUND)..................................68
1.7 Priorit des oprations .................................................................................................................70
1.8 Conversions de types possibles ..................................................................................................71
1.9 Oprations sur les chanes de caractres ...................................................................................72
1.9.1 Conversion de type en type STRING (AXSTRING) ....................................................................73
1.9.2 Conversion de type partir de STRING (NUMBER, ISNUMBER, AXNAME) ...........................74
1.9.3 Concatnation de chanes de caractres (<<) ............................................................................75
1.9.4 Conversion en minuscules/majuscules (TOLOWER, TOUPPER) .............................................77
1.9.5 Dterminer la longueur d'une chane de caractres (STRLEN) .................................................78
1.9.6 Recherche de caractres/chanes de caractres dans une chane (INDEX, RINDEX,
MINDEX, MATCH) ......................................................................................................................78
1.9.7 Slection d'une chane de caractres partielle (SUBSTR) .........................................................80
1.9.8 Slection d'un caractre individuel (STRINGVAR, STRINGFELD) ............................................80
1.10 Sauts de programme ...................................................................................................................82
1.10.1 Retour au dbut du programme (GOTOS) ..................................................................................82
1.10.2 Sauts de programme sur repres de saut (IF, GOTOB, GOTOF, GOTO, GOTOC)...................83
1.10.3 Saut de programme (CASE ... OF ... DEFAULT ...) ....................................................................86
1.11 Rptition de sections de programme (REPEAT, REPEATB, ENDLABEL, P)...........................88
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 7
Table des matires
Notions complmentaires
8 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Table des matires
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 9
Table des matires
5.6 Calcul d'un frame partir de 3 points mesurs dans l'espace (MEAFRAME) ......................... 298
5.7 Frames dfinition globale pour NCU...................................................................................... 302
5.7.1 Frames spcifiques un canal ($P_CHBFR, $P_UBFR) ......................................................... 303
5.7.2 Frames actifs dans un canal ..................................................................................................... 304
6 Transformations..................................................................................................................................... 309
6.1 Programmation gnrale des types de transformation............................................................. 309
6.1.1 Mouvements d'orientation lors des transformations ................................................................. 312
6.1.2 Aperu de la transformation d'orientation TRAORI................................................................... 315
6.2 Transformation trois, quatre et cinq axes (TRAORI) ................................................................ 317
6.2.1 Corrlations gnrales de tte de fraisage de type cardan ...................................................... 317
6.2.2 Transformation trois, quatre et cinq axes (TRAORI) ................................................................ 320
6.2.3 Variantes de programmation d'orientation et position initiale (ORIRESET) ............................. 321
6.2.4 Programmation de l'orientation de l'outil (A..., B..., C..., LEAD, TILT) ...................................... 323
6.2.5 Fraisage en bout (fraisage 3D A4, B4, C4, A5, B5, C5) ........................................................... 329
6.2.6 Rfrence des axes d'orientation (ORIWKS, ORIMKS) ........................................................... 331
6.2.7 Programmation des axes d'orientation (ORIAXES, ORIVECT, ORIEULER, ORIRPY,
ORIRPY2, ORIVIRT1, ORIVIRT2)............................................................................................ 333
6.2.8 Programmation de l'orientation le long d'une enveloppe de cne (ORIPLANE,
ORICONCW, ORICONCCW, ORICONTO, ORICONIO).......................................................... 335
6.2.9 Dfinition de l'orientation de deux points de contact (ORICURVE, PO[XH]=, PO[YH]=,
PO[ZH]=) ................................................................................................................................... 339
6.3 Polynmes d'orientation (PO[angles], PO[coordonne]) .......................................................... 341
6.4 Rotations de l'orientation de l'outil (ORIROTA, ORIROTR, ORIROTT, ORIROTC, THETA) ... 343
6.5 Orientations par rapport la trajectoire .................................................................................... 346
6.5.1 Types d'orientation par rapport la trajectoire ......................................................................... 346
6.5.2 Rotation de l'orientation de l'outil relative la trajectoire (ORIPATH, ORIPATHS, angle de
rotation) ..................................................................................................................................... 348
6.5.3 Interpolation relative la trajectoire de la rotation de l'outil (ORIROTC, THETA).................... 349
6.5.4 Lissage du trac d'orientation (ORIPATHS A8=, B8=, C8=) .................................................... 352
6.6 Compactage de l'orientation (COMPON, COMPCURV, COMPCAD) ...................................... 353
6.7 Lissage du trac d'orientation (ORISON, ORISOF).................................................................. 357
6.8 Transformation cinmatique...................................................................................................... 359
6.8.1 Oprations de fraisage sur des pices de tournage (TRANSMIT) ........................................... 359
6.8.2 Transformation de surface latrale de cylindre (TRACYL) ....................................................... 362
6.8.3 Axe oblique (TRAANG) ............................................................................................................. 371
6.8.4 Programmation d'un axe oblique (G05, G07) ........................................................................... 374
6.9 Dplacement PTP cartsien ..................................................................................................... 376
6.9.1 PTP avec TRANSMIT ............................................................................................................... 381
6.10 Conditions marginales pour l'activation d'une transformation................................................... 385
6.11 Dsactivation d'une transformation (TRAFOOF) ...................................................................... 386
6.12 Transformations concatnes (TRACON, TRAFOOF)............................................................. 387
7 Corrections d'outils ................................................................................................................................ 389
7.1 Mmoire de correcteurs ............................................................................................................ 389
7.2 Corrections additives................................................................................................................. 392
7.2.1 Slection des corrections additives (DL)................................................................................... 392
7.2.2 Dfinition des valeurs d'usure et de rglage ($TC_SCPxy[t,d], $TC_ECPxy[t,d]).................... 394
7.2.3 Effacer les corrections additives (DELDL) ................................................................................ 395
7.3 Correcteur d'outil : Interventions spciales ............................................................................... 396
7.3.1 Application de la fonction miroir aux longueurs d'outil .............................................................. 398
7.3.2 Exploitation du signe de l'usure ................................................................................................ 399
Notions complmentaires
10 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Table des matires
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 11
Table des matires
Notions complmentaires
12 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Table des matires
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 13
Table des matires
14.8 Appel interactif des fentres depuis le programme pice (MMC)............................................. 691
14.9 Temps d'excution du programme / Compteur de pices ........................................................ 692
14.9.1 Temps d'excution du programme / Compteur de pices (vue d'ensemble) ........................... 692
14.9.2 Temps d'excution de programme............................................................................................ 692
14.9.3 Compteurs de pices ................................................................................................................ 697
14.10 Alarmes (SETAL) ...................................................................................................................... 699
15 Programmes de chariotage personnaliss............................................................................................. 701
15.1 Fonctions additionnelles pour le chariotage.............................................................................. 701
15.2 Cration d'une table de contour (CONTPRON)........................................................................ 702
15.3 Cration d'une table de contour code (CONTDCON)............................................................. 708
15.4 Dtermination de l'intersection entre deux lments de contour (INTERSEC) ........................ 712
15.5 Excution des lments de contour d'une table bloc par bloc (EXECTAB) ............................. 714
15.6 Calcul de donnes de cercles (CALCDAT)............................................................................... 715
15.7 Dsactivation de la prparation du contour (EXECUTE).......................................................... 717
16 Tableaux................................................................................................................................................ 719
16.1 Liste des instructions................................................................................................................. 719
A Annexes................................................................................................................................................. 791
A.1 Liste des abrviations ............................................................................................................... 791
A.2 Remarques sur la documentation ............................................................................................. 797
A.3 Vue d'ensemble de la documentation ....................................................................................... 799
Glossaire ............................................................................................................................................... 801
Indice ..................................................................................................................................................... 823
Notions complmentaires
14 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible 1
1.1 Variables
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 15
Programmation CN flexible
1.1 Variables
Variables de prtraitement
Il s'agit de variables systme qui sont lues et crites dans le contexte du prtraitement,
autrement dit au moment de l'interprtation du bloc de programme pice dans lequel la
variable systme est programme. Les variables de prtraitement ne dclenchent pas d'arrt
de prtraitement.
Variables d'excution
Il s'agit de variables systme qui sont lues ou crites dans le contexte de l'excution,
autrement dit au moment de l'excution du bloc de programme pice dans lequel la variable
systme est programme. Les variables d'excution sont des :
variables systme pouvant tre programmes dans des actions de synchronisation
(lecture/criture),
variables systme pouvant tre programmes dans le programme pice et capables de
dclencher un arrt de prtraitement (lecture/criture),
variables systme pouvant tre programmes dans le programme pice, et dont la valeur
est dtermine durant le prtraitement, mais n'est crite que lors de l'excution
(synchrones l'excution : criture seule)
Systmatique de prfixe
Pour l'identification spcifique de variables systme, leur nom est normalement prcd d'un
prfixe form par le caractre $, suivi d'une ou de deux lettres et d'un trait de soulignement :
Notions complmentaires
16 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
Conditions marginales
Exception dans la systmatique des prfixes
Les variables systme suivantes divergent de la systmatique des prfixes indiqus ci-
dessus :
$TC_... : Le deuxime caractre C ne dsigne pas une variable spcifique au canal, mais
une variable systme spcifique au porte-outils (TC = Tool Carrier)
$P_ ... : Variables systme spcifiques un canal
Utilisation de paramtres machine et de donnes de rglage dans des actions synchrones
En cas d'utilisation des paramtres machine et des donnes de rglage dans des actions
synchrones, le prfixe permet de dterminer si la lecture/criture du paramtre machine ou
de la donne de rglage s'effectue de faon synchrone au prtraitement ou l'excution.
Si le paramtre reste inchang pendant l'excution, la lecture peut tre effectue de faon
synchrone au prtraitement. Le prfixe du paramtre machine ou de la donne de rglage
s'crit de ce fait avec un caractre $ :
Code de programme
ID=1 WHENEVER G710 $AA_IM[z] < $SA_OSCILL_REVERSE_POS2[Z]6 DO $AA_OVR[X]=0
Si le paramtre est modifi pendant l'excution, la lecture /criture doit tre effectue de
faon synchrone l'excution. Le prfixe du paramtre machine ou de la donne de rglage
s'crit de ce fait avec deux caractres $ :
Code de programme
ID=1 WHENEVER $AA_IM[z] < $$SA_OSCILL_REVERSE_POS2[Z]6 DO $AA_OVR[X]=0
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 17
Programmation CN flexible
1.1 Variables
Remarque
Ecriture de paramtres machine
Lors de l'criture d'un paramtre machine ou d'une donne de rglage, il faut s'assurer que
le niveau d'accs actif pour l'excution du programme pice / cycle autorise la protection en
criture et que la prise d'effet du paramtre soit "IMMEDIATE".
Bibliographie
Pour obtenir la liste des proprits de toutes les variables systme, rfrez-vous aux :
/PGA1/ Tables de paramtres Variables systme
Fonction
Les paramtres de calcul ou paramtres R correspondent une variable utilisateur
prdfinie dsign par R et dfinie comme champ de type de donnes REAL. Pour des
raisons historiques, outre la notation des paramtres R avec un indice de tableau, p. ex.
R[10], la notation sans indice de tableau, p. ex. R10 est galement autorise.
En cas d'utilisation dans des actions synchrones, la lettre $ doit figurer en tte, p. ex. $R10.
Syntaxe
En cas d'utilisation comme variable de prtraitement :
R<n>
R[<expression>]
En cas d'utilisation comme variable d'excution :
$R<n>
$R[<expression>]
Notions complmentaires
18 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
Signification
Exemple
Affectations de paramtres R et utilisation de paramtres R dans des fonctions
mathmatiques :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 19
Programmation CN flexible
1.1 Variables
Fonction
Dans le cadre de la fonction "Link NCU", les variables Link permettent de raliser l'change
cyclique de donnes entre des NCU mises en rseau. Elle autorisent un accs spcifique au
format de donnes la mmoire de variables Link. La taille et la structure de donnes de la
mmoire de variables Link sont dfinies de manire spcifique l'installation par l'utilisateur
/ le constructeur de la machine-outil.
Les variables Link sont des variables utilisateur globales du systme, dont l'criture et la
lecture peuvent tre effectues dans des programmes pice et des cycles partir de toutes
les NCU du groupe Link, condition que la communication Link soit configure.
Contrairement aux variables utilisateur globales (GUD), l'utilisation des variables Link est
galement possible dans des actions synchrones.
Dans le cas d'installations ne disposant pas de Link NCU actif , les variables Link peuvent
tre utilises localement dans la commande en plus des variables utilisateur globales
(GUD), comme variables utilisateur globales supplmentaires.
Syntaxe
$A_DLB[<indice>]
$A_DLW[<indice>]
$A_DLD[<indice>]
$A_DLR[<indice>]
Signification
$A_DLB : Variable Link pour le format de donnes BYTE (1 octet)
Type de donnes : UINT
Plage de valeurs : 0 ... 255
$A_DLW : Variable Link pour le format de donnes WORD (2 octets)
Type de donnes : INT
Plage de valeurs : -32768 ... 32767
$A_DLD : Variable Link pour le format de donnes DWORD (4 octets)
Type de donnes : INT
Plage de valeurs : -2147483648 ... 2147483647
$A_DLR : Variable Link pour le format de donnes REAL (8 octets)
Type de donnes : REAL
Plage de valeurs : (2,2*10-308 1,8*10+308)
Notions complmentaires
20 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
Exemple
L'installation d'automatisation ne contient que 2 NCU (NCU1 et NCU2). L'axe machine AX2
dplac comme axe Link par NCU2 est raccord NCU1.
NCU1 inscrit de faon cyclique la valeur relle du courant ($VA_CURR) de l'axe AX2 dans la
mmoire de variables Link. NCU2 lit de faon cyclique la valeur relle du courant transmise
par la communication Link et affiche l'alarme 61000 en cas de dpassement de la valeur
limite.
La structure de donnes dans la mmoire des variables Link est reprsente dans la figure
suivante. La valeur relle du courant est transmise au moyen de la valeur REAL.
0PRLUHGHYDULDEOHV/LQN
0'01B00B6,=(2)B/,1.9$5B'$7$
':25' ':25'
5($/
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 21
Programmation CN flexible
1.1 Variables
NCU1
Durant la priode d'appel de l'interpolateur pendant une action synchrone statique, NCU1
crit de faon cyclique la valeur relle du courant de l'axe AX2 dans la mmoire des
variables Link, au moyen de la variable Link $A_DLR[ 16 ].
Code de programme
N111 IDS=1 WHENEVER TRUE DO $A_DLR[16]=$VA_CURR[AX2]
NCU2
Durant la priode d'appel de l'interpolateur pendant une action synchrone statique, NCU2 lit
de faon cyclique la valeur relle du courant de l'axe AX2 dans la mmoire des variables
Link, au moyen de la variable Link $A_DLR[ 16 ]. Si la valeur relle du courant est
suprieure 23.0 A, l'alarme 61000 s'affiche.
Code de programme
N222 IDS=1 WHEN $A_DLR[16] > 23.0 DO SETAL(61000)
Fonction
L'instruction DEF permet l'utilisateur de dfinir ses propres variables et leur affecter des
valeurs. Pour les diffrencier des variables systme, celles-ci sont dsignes comme
variables dfinies par l'utilisateur ou variables utilisateur (User Data).
Les catgories suivantes de variables utilisateurs sont disponibles en fonction du domaine
de validit, autrement dit du domaine dans lequel la variable est visible :
Variables utilisateur locales (LUD)
Les variables utilisateur locales (LUD) sont des variables dfinies dans un programme
pice qui n'est pas le programme principal au moment de l'excution. Elles sont
dclares l'appel du programme pice et supprimes la fin du programme pice ou
du Reset CN. L'accs aux variables LUD peut uniquement tre ralis dans le
programme pice dans lequel ces variables sont dfinies.
Variables utilisateur globales d'un programme (PUD)
Les variables utilisateur globales d'un programme (PUD) sont des variables dfinies dans
un programme pice utilis comme programme principal. Elles sont dclares au
lancement du programme pice et supprimes la fin du programme pice ou du Reset
CN. L'accs aux variables PUD peut tre ralis dans le programme principal et dans
tous ses sous-programmes.
Variables utilisateur globales (GUD)
Les variables utilisateur globales (GUD) sont des variables globales d'une CN ou d'un
canal, dfinies dans un bloc de donnes (SGUD, MGUD, UGUD, GUD4 ... GUD9) et
conserves mme aprs un Power On. L'accs aux variables GUD peut tre ralis dans
tous les programmes pice.
Notions complmentaires
22 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
Les variables utilisateur doivent avoir t dfinies avant leur utilisation (lecture / criture). Il
convient de respecter les rgles suivantes :
Les variables GUD doivent tre dfinies dans un fichier de dfinition, par ex.
_N_DEF_DIR/_M_SGUD_DEF.
Les variables PUD et LUD doivent tre dfinies dans la section de dfinition d'un
programme pice.
La dfinition des donnes doit tre effectue dans un bloc spcifique.
Un seul type de donnes peut tre utilis par dfinition de donnes.
Plusieurs variables du mme type de donnes peuvent tre dfinies par dfinition de
donnes.
Syntaxe
DEF <domaine> <type> <arrt prtraitement blocs> <instant
d'initialisation> <unit physique> <valeurs limites> <droits
d'accs> <nom>[<valeur_1>,<valeur_2>,<valeur_3>]=<valeur
d'initialisation>
Signification
DEF : Instruction de dfinition de variables utilisateur GUD, PUD, LUD
<domaine> : Domaine de validit, uniquement significatif pour GUD :
NCK : Variable utilisateur globale dans la CN
CHAN : Variable utilisateur globale dans le canal
<type> : Type de donnes :
INT : valeur entire avec signe
REAL : Nombre rel (LONG REAL selon IEEE)
BOOL : Valeur boolenne TRUE (1) / FALSE (0)
CHAR : Caractre ASCII
STRING[<Longueur
Chane de caractres de longueur dfinie
maximale>] :
AXIS : Descripteur d'axe/de broche
FRAME : Indications gomtriques pour une
transformation statique de coordonnes
voir ""
<arrt prtraitement
Arrt de prtraitement des blocs, uniquement significatif pour
blocs> :
GUD (facultatif)
SYNR : Arrt du prtraitement la lecture
SYNW : Arrt du prtraitement l'criture
SYNRW : Arrt du prtraitement la lecture/criture
<instant
Instant auquel la variable est rinitialise (facultatif)
d'initialisation> :
INIPO : Power On
INIRE : Fin du programme principal, Reset CN ou
Power On
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 23
Programmation CN flexible
1.1 Variables
Notions complmentaires
24 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
Exemples
Exemple 1 : dfinitions de variables utilisateur dans le bloc de donnes pour constructeur de
la machine-outil
Code de programme
%_N_MGUD_DEF ; Bloc GUD : constructeur de la machine-outil
$PATH=/_N_DEF_DIR
DEF CHAN REAL PHU 24 LLI 0 ULI 10 STROM_1, STROM_2
; Description
; Dfinition de deux variables GUD : STROM_1, STROM_2
; Domaine de validit : pour l'ensemble du canal
; Type de donnes : REAL
; Arrt prtraitement blocs : non programm => valeur par dfaut = pas d'arrt prtraitement blocs
; Unit physique : 24 = [A]
; Valeurs limites : infrieure = 0.0, suprieure = 10.0
; Droits d'accs : non programms => valeur par dfaut = 7 = position 0 du commutateur cl
; Valeur d'initialisation : non programme => valeur par dfaut = 0.0
DEF NCK REAL PHU 13 LLI 10 APWP 3 APRP 3 APWB 0 APRB 2 ZEIT_1=12, ZEIT_2=45
; Description
; Dfinition de deux variables GUD : ZEIT_1, ZEIT_2
; Domaine de validit : pour l'ensemble du NCK
; Type de donnes : REAL
; Arrt prtraitement blocs : non programm => valeur par dfaut = pas d'arrt prtraitement blocs
; Unit physique : 13 = [s]
; Valeurs limites : infrieure = 10.0, suprieure = non programme => limite de la plage de
dfinition
; Droits d'accs :
; Programme pice : criture/lecture = 3 = utilisateur final
; OPI : criture = 0 = Siemens, lecture = 3 = utilisateur final
; Valeur d'initialisation : ZEIT_1 = 12.0, ZEIT_2 = 45.0
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 25
Programmation CN flexible
1.1 Variables
Notions complmentaires
26 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
Contraintes
Variables utilisateur globales (GUD)
Les paramtres machines suivants doivent tre pris en compte dans le cadre de la dfinition
de variables utilisateur globales (GUD) :
IMPORTANT
Visibilit de variables utilisateur locales d'un programme (PUD)
Les variables utilisateur locales dfinies dans le programme principal (PUD) sont
uniquement galement visibles dans les sous-programmes, si le paramtre machine
suivant est mis 1 :
MD11120 $MN_LUD_EXTENDED_SCOPE = 1
Avec MD11120 = 0, les variables utilisateur locales dfinies dans le programme principal
sont uniquement visibles dans le programme principal.
Utilisation dans tous les canaux d'une variable utilisateur globale NCK du type de donnes
AXIS
Une variable utilisateur globale NCK du type de donnes AXIS, initialise au moyen d'un
descripteur lors de la dfinition dans le bloc de donnes, peut uniquement tre utilise dans
diffrents canaux de la CN, si l'axe possde le mme numro de canal dans l'ensemble des
canaux.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 27
Programmation CN flexible
1.1 Variables
Si cela n'est pas le cas, la variable doit tre charge au dbut du programme pice, ou la
fonction AXNAME(...) (voir "") doit tre utilise, comme dans l'exemple suivant.
Fonction
L'instruction REDEF permet de modifier les attributs de variables systme, variables utilisateur
et instructions de langage CN. La condition de base ncessaire pour une redfinition est
qu'elle soit excute aprs la dfinition correspondante.
Lors d'une redfinition, il n'est pas possible de modifier simultanment plusieurs attributs.
Une instruction REDEF spcifique doit tre programme pour chaque attribut modifier.
Dans le cas o plusieurs modifications d'attributs concurrentes sont programmes, la
modification active est toujours la dernire.
Attributs redfinissables
Voir "Vue d'ensemble des attributs dfinissables et redfinissables (Page 43)"
Variables utilisateur locales (PUD / LUD)
Aucune redfinition n'est autorise pour des variables utilisateur locales (PUD / LUD).
Syntaxe
REDEF <nom> <arrt prtraitement blocs>
REDEF <nom> <unit physique>
REDEF <nom> <valeurs limites>
REDEF <nom> <droits d'accs>
REDEF <nom> <instant d'initialisation>
REDEF <nom> <instant d'initialisation> <valeur d'initialisation>
Signification
Notions complmentaires
28 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 29
Programmation CN flexible
1.1 Variables
<valeur
Valeur d'initialisation
d'initialisation> :
Pour redfinir la valeur d'initialisation, il faut galement toujours
spcifier un instant d'initialisation (voir <instant d'initialisation>).
voir "Attribut : Valeur d'initialisation (Page 31)"
Pour l'initialisation de variables de tableaux :
voir ""
Nota
Non redfinissable pour :
variables systme, l'exception des donnes de rglage
Exemple
Redfinitions de la variable systme $TC_DPC1 dans le bloc de donnes pour le
constructeur de la machine-outil
Code de programme
%_N_MGUD_DEF ; Bloc GUD : constructeur de la machine-outil
$PATH=/_N_DEF_DIR
REDEF $TC_DPC1 APWB 2 APWP 3
REDEF $TC_DPC1 PHU 21
REDEF $TC_DPC1 LLI 0 ULI 200
REDEF $TC_DPC1 INIPO (100, 101, 102, 103)
; Description
; Droit d'accs en criture : BTSS = niveau de protection 2, programme pice = niveau de protection 3
; Nota
; En cas d'utilisation de fichiers ACCESS, la redfinition des droits d'accs doit tre transpose de
; _N_MGUD_DEF en _N_MACCESS_DEF
; Unit physique = [ % ]
; Valeurs limites : infrieure = 0, suprieure = 200
; La variable de tableau est initialise avec les quatre valeurs lors d'un PowerOn
M30
Conditions
Granularit
Une redfinition concerne toujours la variable complte, caractrise de faon univoque par
son nom. Il n'est pas possible, p. ex. pour des variables de tableau, d'attribuer diffrentes
valeurs d'attribut des lments individuels de tableau.
Notions complmentaires
30 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 31
Programmation CN flexible
1.1 Variables
L'attribut PRLOC ne doit tre utilis que dans le contexte de donnes de rglage
programmables (voir le tableau suivant).
43740 $SA_OSCILL_VELO FA
43780 $SA_OSCILL_IS_ACTIVE OS
Contraintes
Valeur d'initialisation : variables utilisateur globales (GUD)
Dans le cas de la variable utilisateur globale (GUD) avec le domaine de validit NCK, seul
l'instant d'initialisation INIPO (Power On) peut tre prdfini.
Dans le cas de variables utilisateur globales (GUD) avec le domaine de validit CHAN, il
est possible de prdfinir comme instant d'initialisation, outre INIPO (Power On),
galement INIRE (Reset) ou INICF (NewConfig).
Dans le cas de variables utilisateur globales (GUD) avec le domaine de validit CHAN et
l'instant d'initialisation INIRE (Reset) ou INICF (NewConfig), les variables sont seulement
rinitialises pour Reset CN, Reset GMF et NewConfig dans les canaux dans lesquels
les vnements spcifis ont t dclenchs.
Notions complmentaires
32 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
IMPORTANT
Synchronisme
La synchronisation d'vnements dclenchant la rinitialisation d'une variable globale avec
lecture de cette variable un autre endroit relve totalement de la responsabilit de
l'utilisateur / du constructeur de la machine-outil.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 33
Programmation CN flexible
1.1 Variables
Notions complmentaires
34 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
Remarque
Redfinition (REDEF) de variables utilisateur
Lors de la redfinition des valeurs limites d'une variable utilisateur, il faut veiller la
modification cohrente des valeurs suivantes :
Valeurs limites
Valeur relle
Valeur d'initialisation lors de la redfinition et de la rinitialisation automatique sur la base
de INIPO, INIRE ou INICF
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 35
Programmation CN flexible
1.1 Variables
Notions complmentaires
36 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
Remarque
Dpassement de niveaux d aux conversions de format
Le format de stockage interne de l'ensemble des variables utilisateur (GUD / PUD / LUD)
exprimes en units physiques de longueur est mtrique. Une utilisation excessive de telles
variables lors de l'excution de la NCK, p. ex. durant des actions synchrones, risquerait de
provoquer un dpassement de la dure de calcul du niveau de l'interpolateur en cas de
changement de systme de coordonnes, ce qui conduirait l'mission de l'alarme 4240.
IMPORTANT
Compatibilit d'units
La compatibilit des units concernes n'est pas vrifie lors de l'utilisation de variables
(affectation, comparaison, calcul, etc.). Une ventuelle conversion requise relve
exclusivement de la responsabilit de l'utilisateur / constructeur de la machine.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 37
Programmation CN flexible
1.1 Variables
1.1.10 Attribut : droits d'accs (APR, APW, APRP, APWP, APRB, APWB)
Les niveaux de protection suivants, indiquer lors de la programmation, correspondent aux
diffrents droits d'accs :
Notions complmentaires
38 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
Donnes utilisateur
Paramtre R
Variable action synchrone ($AC_MARKER, $AC_PARAM, $AC_TIMER)
Variable GUD action synchrone (SYG_xy[ ], avec x=R, I, B, A, C, S et y=S, M, U, 4,
..., 9)
Paramtre EPS
Donnes outil OEM
Donnes magasin OEM
Variables utilisateur globales (GUD)
Remarque
Lors de la redfinition, vous pouvez attribuer le droit d'accs une variable
quelconque comprise entre le niveau de protection le plus faible, savoir 7, et son
propre niveau de protection, p. ex. 1 (constructeur de la machine).
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 39
Programmation CN flexible
1.1 Variables
Droits d'accs concernant les programmes pice et les cycles (APRP, APWP)
Les diffrents droits d'accs dans un programme pice ou dans un cycle sont les suivants :
APRP 0 / APWP 0
Lors de l'excution du programme pice, le mot de passe de l'utilisateur final doit tre
dfini
Le cycle doit tre enregistr dans le rpertoire _N_CUS_DIR (utilisateur),
_N_CMA_DIR ou _N_CST_DIR
Pour les rpertoires _N_CUS_DIR, _N_CMA_DIR ou _N_CST_DIR, les droits
d'excution doivent tre dfinis au moins pour l'utilisateur final dans les paramtres
machine MD11162 $MN_ACCESS_EXEC_CUS, MD11161
$MN_ACCESS_EXEC_CMA ou MD11160 $MN_ACCESS_EXEC_CST.
APRP 4...7 / APWP 4...7
Notions complmentaires
40 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
Remarque
Droits d'accs IHM locaux
Lors de la modification des droits d'accs de donnes systme, vous devez veillez ce
qu'elle s'effectue de faon cohrente avec les droits d'accs dfinis par les mcanismes
IHM.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 41
Programmation CN flexible
1.1 Variables
L'accs depuis des cycles des lments protgs ncessite l'adaptation des droits
d'excution et des droits d'criture aux rpertoires _N_CST_DIR, _N_CMA_DIR et
_N_CST_DIR de ces cycles :
Droits d'excution
MD11160 $MN_ACCESS_EXEC_CST
MD11161 $MN_ACCESS_EXEC_CMA
MD11162 $MN_ACCESS_EXEC_CUS
Droits d'criture
MD11165 $MN_ACCESS_WRITE_CST
MD11166 $MN_ACCESS_WRITE_CMA
MD11167 MN_ACCESS_WRITE_CUS
Le droit d'excution doit tre dfini au moins au mme niveau de protection que le niveau
de protection le plus lev de l'lment utilis.
Le droit d'criture doit tre dfini au moins au mme niveau de protection que le droit
d'excution.
Les droits d'criture des rpertoires des cycles pour l'IHM locale doivent tre dfinis au
mme niveau de protection que les rpertoires des cycles de la CN locale.
Bibliographie
/BAD/ Manuel d'utilisation HMI-Advanced,
Chapitre : Groupe fonctionnel Services > Gestion des donnes > Modification des
proprits
Appels de sous-programmes dans des fichiers ACCESS
Pour une meilleure structuration de la protection d'accs, il est possible d'appeler galement
des sous-programmes (extension SPF ou MPF) dans les fichiers ACCESS. Les droits
d'accs du fichier ACCESS appelant sont alors attribus ces sous-programmes.
Remarque
Seuls les droits d'accs peuvent tre redfinis dans les fichiers ACCESS. La programmation
ou la redfinition de tous les autres attributs doit toujours encore s'effectuer dans les fichiers
de dfinition correspondants.
Notions complmentaires
42 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
Donnes systme
Type de paramtre Valeur initiale Valeurs limites Unit physique Droits d'accs
Paramtres machine --- --- --- REDEF
Donnes utilisateur
Type de paramtre Valeur initiale Valeurs limites Unit physique Droits d'accs
Paramtre R REDEF REDEF REDEF REDEF
Variables utilisateur globales (GUD) DEF / REDEF DEF DEF DEF / REDEF
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 43
Programmation CN flexible
1.1 Variables
Fonction
Une variable utilisateur peut tre dfinie comme tableau (Array) de 1 3 dimensions au
maximum :
1 dimension : DEF <type de donnes> <nom de variable>[<n>]
Remarque
Les variables utilisateur du type de donnes STRING peuvent tre dfinies comme
tableau 2 dimensions au maximum.
Types de donnes
Les variables utilisateur peuvent tre dfinie comme tableaux pour les types de donnes
suivants : BOOL, CHAR, INT, REAL, STRING, AXIS, FRAME
Affectation de valeur des lments de tableau
Les affectations de valeurs des lments de tableau peuvent tre ralises aux instants
suivants :
Lors de la dfinition du tableau (valeurs d'initialisation)
Pendant l'excution du programme
Les affectations de valeurs peuvent tre ralises par :
Indication explicite d'un lment de tableau
Indication explicite d'un lment de tableau comme lment de dpart et indication d'une
liste de valeurs (SET)
Indication explicite d'un lment de tableau comme lment de dpart et indication d'une
valeur ainsi que de sa frquence d'itration (REP)
Remarque
Il n'est pas possible d'affecter des valeurs d'initialisation des variables utilisateur du
type de donnes FRAME.
Syntaxe (DEF)
DEF <type de donnes> <nom de variable>[<n>,<m>,<o>]
DEF STRING[<longueur de chane>] <nom de variable>[<n>,<m>]
Notions complmentaires
44 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
Syntaxe (DEF...=SET...)
Utilisation d'une liste de valeurs :
Lors de la dfinition :
DEF <type de donnes> <nom de variable>[<n>,<m>,<o>] =
SET(<valeur1>,<valeur2>,...)
Equivaut :
DEF <type de donnes> <nom de variable>[<n>,<m>,<o>]= (<valeur1>,<valeur2>,...)
Remarque
Lors de l'initialisation au moyen d'une liste de valeurs, l'indication de SET est facultative.
Syntaxe (DEF...=REP...)
Utilisation d'une valeur avec itration
Lors de la dfinition :
DEF <type de donnes> <nom de variable>[<n>,<m>,<o>]=REP(<Valeur>)
Signification
DEF : Instruction de dfinition des variables
<type de donnes> : Type de donnes de la variable
Plage de valeurs :
Pour les variables systme :
BOOL, CHAR, INT, REAL, STRING, AXIS
Pour les variables GUD et LUD :
BOOL, CHAR, INT, REAL, STRING, AXIS,
FRAME
<longueur de chane> : Nombre maximal de caractres du type de donnes
STRING
<nom de variable> : Nom de variable
[<n>,<m>,<o>] : Dimensions de tableaux ou indices de tableaux
<n> : Dimension ou indice pour un tableau 1 dimension
Type : INT (galement AXIS pour les variables
systme)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 45
Programmation CN flexible
1.1 Variables
Notions complmentaires
46 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
Indice de tableau
L'ordre implicite des lments de tableau, p. ex. lors d'une affectation de valeur via SET ou
REP est dtermin par itration de l'indice de tableau de droite gauche.
Exemple : Initialisation d'un tableau 3 dimensions comportant 24 lments de tableau :
FOR n=0 TO 1
FOR m=0 TO 2
FOR o=0 TO 3
FELD[n,m,o] = 1
ENDFOR
ENDFOR
ENDFOR
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 47
Programmation CN flexible
1.1 Variables
Code de programme
N10 DEF REAL TABLEAU1[10,3]=SET(0,0,0,10,11,12,20,20,20,30,30,30,40,40,40,)
N20 TABLEAU1[0,0]=REP(100)
N30 TABLEAU1[5,0]=REP(-100)
N40 TABLEAU1[0,0]=SET(0,1,2,-10,-11,-12,-20,-20,-20,-30, , , ,-40,-40,-50,-60,-70)
N50 TABLEAU1[8,1]=SET(8.1,8.2,9.0,9.1,9.2)
,QGLFHGHWDEOHDX
1,QLWLDOLVDWLRQORUVGHOD ,QLWLDOLVDWLRQDYHF
11 11 ,QLWLDOLVDWLRQDYHF
GILQLWLRQ GHVYDOHXUVLGHQWLTXHV GHVYDOHXUVGLIIUHQWHV
/HVOPHQWVGHWDEOHDX /HVOPHQWVGHWDEOHDX>@
>@>@RQWWLQLWLDOLVV >@RQWWLQLWLDOLVVSDUOD
SDUODYDOHXUSDUGIDXW YDOHXUSDUGIDXW/HV
OPHQWVGHWDEOHDX>@
>@Q
RQWSDVWPRGLILV
Notions complmentaires
48 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 49
Programmation CN flexible
1.1 Variables
Notions complmentaires
50 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.1 Variables
IMPORTANT
Affectations de valeurs des paramtres machine axiaux
Lors d'affectations de valeurs un paramtre machine axial avecSET ou REP, l'indice de
tableau du type de donnes AXIS est ignor ou pas excut.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 51
Programmation CN flexible
1.1 Variables
Notions complmentaires
52 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.2 Programmation indirecte
Fonction
Dans le cas de la programmation indirecte d'adresses, l'indice d'adresse est remplac par
une variable de type appropri.
Remarque
La programmation indirecte d'adresses est impossible pour :
N (numro de bloc)
L (sous-programme)
Adresses rglables
(par exemple, X[1] au lieu de X1 n'est pas autoris)
Syntaxe
<ADRESSE>[<indice>]
Signification
Exemples
Exemple 1 : Programmation indirecte d'un numro de broche
Programmation directe :
Programmation indirecte :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 53
Programmation CN flexible
1.2 Programmation indirecte
Programmation indirecte :
Programmation Commentaire
$AA_MM[X] ; Lecture de la valeur de mesure du palpeur (SCM) de l'axe "X"
Programmation indirecte :
Code de programme
X1=100 X2=200
Programmation indirecte :
Notions complmentaires
54 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.2 Programmation indirecte
Code de programme
G2 X100 I20
Programmation indirecte :
Programmation indirecte :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 55
Programmation CN flexible
1.2 Programmation indirecte
Fonction
La programmation indirecte des codes G permet une programmation efficace des cycles.
Syntaxe
G[<groupe>]=<numro>
Signification
Remarque
En rgle gnrale, seuls des codes G non dterminants pour la syntaxe peuvent tre
programms indirectement.
Parmi les codes G dterminants pour la syntaxe, seuls ceux du groupe de fonctions G 1 sont
possibles.
Les codes G dterminants pour la syntaxe des groupes de fonction 2, 3 et 4 ne sont pas
possibles.
Remarque
La programmation indirecte des codes G n'admet pas les fonctions arithmtiques. Le calcul
du numro de code G doit s'effectuer dans une ligne distincte du programme pice, avant sa
programmation indirecte.
Exemples
Exemple 1 : Dcalage d'origine rglable (groupe de fonctions G "8")
Notions complmentaires
56 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.2 Programmation indirecte
Bibliographie
Pour des informations sur les groupes de fonctions G, voir :
Manuel de programmation Notions de base, chapitre "Groupes de fonctions G"
Fonction
Les attributs de position tels que la programmation relative ou absolue de la position d'axe
peuvent tre programms indirectement en tant que variables, en liaison avec le mot cl GP.
Application
La programmation indirecte d'attributs de position s'utilise dans les cycles de substitution,
car elle prsente alors les avantages suivants par rapport la programmation des attributs
de position comme mot cl (IC, AC, etc.)
Avec la programmation indirecte comme variables, aucune instruction CASE n'est ncessaire
pour accder tous les attributs de position possibles.
Syntaxe
<INSTRUCTION DE POSITIONNEMENT>[<axe/broche>]=
GP(<position>,<attribut de position>)
<Axe/broche>=GP(<position>,<attribut de position>)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 57
Programmation CN flexible
1.2 Programmation indirecte
Signification
<INSTRUCTION DE
Les instructions de positionnement suivantes peuvent
POSITIONNEMENT>[] :
tre programmes avec le mot cl GP :
POS, POSA,SPOS, SPOSA
Autres possibilits :
Tous les descripteurs d'axe/broche prsents dans le
canal :
<Axe/broche>
Descripteur d'axe/broche variable AX
<axe/broche> : Axe/broche positionner
GP() : Mot cl pour le positionnement
<position> : Paramtre 1
Position d'axe/broche comme constante ou variable
<attribut de position> : Paramtre 2
Attribut de position (par exemple le mode d'accostage
de la position) comme variable (par exemple
$P_SUB_SPOSMODE) ou comme mot cl (IC, AC,
etc.)
Notions complmentaires
58 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.2 Programmation indirecte
Exemple
En cas de couplage actif de broches synchrones entre la broche pilote S1 et la broche
asservie S2, l'instruction SPOS appelle le cycle de substitution suivant pour le positionnement
des broches dans le programme principal.
Le positionnement est effectu par l'instruction de N2230 :
SPOS[1]=GP($P_SUB_SPOSIT,$P_SUB_SPOSMODE)
SPOS[2]=GP($P_SUB_SPOSIT,$P_SUB_SPOSMODE)
La position accoster est lue dans la variable systme $P_SUB_SPOSIT et le mode
d'accostage de la position dans la variable systme $P_SUB_SPOSMODE.
Conditions marginales
Dans les synchronisations, la programmation indirecte des attributs de position est
impossible.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 59
Programmation CN flexible
1.2 Programmation indirecte
Bibliographie
Description fonctionnelle Fonctions de base ; GMF, Canal, Mode de programme,
Comportement au reset (K1),
chapitre : Substitution de fonctions CN par des sous-programmes
Fonction
Une variable chane de caractres cre au pralable peut tre excute en tant que ligne
de programme pice au moyen de l'instruction EXECSTRING.
Syntaxe
est programme dans une ligne spcifique du programme pice :
EXECSTRING
EXECSTRING (<variable de type STRING>)
Signification
EXECSTRING : Instruction pour l'excution d'une variable chane de caractres
en tant que ligne de programme pice
<variable de type
Variable du type STRING dans laquelle figure la ligne de
STRING> :
programme pice excuter proprement dite
Remarque
Tous les lments susceptibles d'tre programms dans une section d'un programme pice
peuvent tre transmis avec EXECSTRING. Les instructions PROC et DEF et, d'une manire
gnrale, l'utilisation dans des fichiers INI et DEF en sont exclues.
Exemple
Code de programme Commentaire
N100 DEF STRING[100] BLOCK ; Dfinition des variables chanes de caractres
pour la prise en compte des lignes de programme
pice excuter.
N110 DEF STRING[10] MFCT1="M7"
...
N200 EXECSTRING(MFCT1 << "M4711") ; Excution de la ligne "M7 M4711" du programme
pice.
...
N300 R10=1
N310 BLOC="M3"
N320 IF(R10)
N330 BLOCK = BLOCK << MFCT1
N340 ENDIF
N350 EXECSTRING(BLOCK) ; Excution de la ligne "M3 M7" du programme
pice.
Notions complmentaires
60 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.3 Fonctions de calcul
Fonction
Les fonctions de calcul sont applicables en priorit aux paramtres R et aux variables (ou
constantes et fonctions) de type REAL. Les types INT et CHAR sont galement admis.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 61
Programmation CN flexible
1.3 Fonctions de calcul
MAXVAL()
valeur la plus grande de deux variables
(voir "Minimum, maximum et plage de variables (MINVAL,
MAXVAL, BOUND) (Page 68)")
BOUND()
valeur de variable se trouvant dans la plage de valeurs
dfinie
(voir "Minimum, maximum et plage de variables (MINVAL,
MAXVAL, BOUND) (Page 68)")
CTRANS()
Dcalage
CROT ()
Rotation
CSCALE ()
Changement d'chelle
CMIRROR ()
Fonction miroir
Programmation
La notation mathmatique usuelle est valable pour les fonctions de calcul. Les priorits de
traitement sont fixes par des parenthses. Les fonctions trigonomtriques et leurs inverses
emploient la notation en degrs (angle droit = 90).
Exemples
Exemple 1 : ATAN2
5 $7$1
DQJOH r
YHFWHXU
HU
PHYHFWHXU
Notions complmentaires
62 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.3 Fonctions de calcul
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 63
Programmation CN flexible
1.4 Oprations relationnelles et oprations logiques
Fonction
Les oprations relationnelles peuvent servir par exemple formuler une condition de saut
dans le programme. Elles s'appliquent galement aux expressions complexes.
Les oprations relationnelles sont applicables aux variables de type CHAR, INT, REAL et BOOL.
Avec le type CHAR, la valeur de code est compare.
Pour les types STRING, AXIS et FRAME, sont possibles : == et <> qui peuvent aussi tre
employs pour les oprations de type STRING, y compris dans des actions synchrones.
Le rsultat d'oprations relationnelles est toujours du type BOOL.
Les oprateurs logiques servent la combinaison de valeurs boolennes.
Les oprations logiques s'appliquent exclusivement aux variables du type BOOL. Avec la
conversion de type interne, ils sont galement applicables aux types de donnes CHAR, INT
et REAL.
Avec les oprations logiques (boolennes) sont valables, pour les types de donnes BOOL,
CHAR, INT et REAL :
0 correspond : FALSE
valeur diffrente de 0 correspond : TRUE
Oprateurs logiques sur bits
Les variables des types CHAR et INT permettent galement d'effectuer des oprations
logiques sur bits. Le cas chant, il est procd une conversion automatique de type.
Programmation
Notions complmentaires
64 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.4 Oprations relationnelles et oprations logiques
Remarque
Des parenthses places dans les expressions arithmtiques permettent de fixer un ordre
des oprations diffrent des rgles normales de priorit.
Remarque
Entre les oprandes boolens et les oprateurs doivent figurer des espacements.
Remarque
L'oprateur B_NOT ne se rapporte qu' un seul oprande qui suit l'oprateur.
Exemples
Exemple 1 : oprateurs relationnels
IF R10>=100 GOTOF DESTINATION
ou
R11=R10>=100
IF R11 GOTOF DESTINATION
Le rsultat de la comparaison R10>=100 est d'abord mmoris dans R11.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 65
Programmation CN flexible
1.5 Correction de la prcision pour les erreurs relationnelles (TRUNC)
Fonction
L'instruction TRUNC ampute l'oprande de la multiplication par un facteur de prcision.
Prcision rglable dans les instructions relationnelles
En interne, les donnes de type REAL du programme pice sont reprsentes par 64 bits en
format IEEE. De ce fait, les nombres dcimaux ne peuvent pas tre reprsents de manire
prcise et leur comparaison avec des valeurs calcules de faon idale peut conduire des
rsultats inattendus.
Egalit relative
Afin que les imprcisions causes par le format de reprsentation ne faussent pas le flux du
programme, les instructions relationnelles ne vrifient pas l'galit absolue, mais l'galit
relative.
Syntaxe
Correction de la prcision pour les erreurs relationnelles
TRUNC (R1*1000)
Signification
Remarque
Pour les raisons qui ont t cites, les comparaisons avec des donnes du type REAL
connaissent d'une manire gnrale une certaine imprcision. Lorsque les carts ne sont
pas acceptables, vous devez effectuer des calculs de type INTEGER en multipliant les
oprandes par un facteur de prcision, puis en les amputant avec TRUNC.
Notions complmentaires
66 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.5 Correction de la prcision pour les erreurs relationnelles (TRUNC)
Actions synchrones
Ce qui a t dcrit pour les instructions relationnelles est aussi valable pour les actions
synchrones.
Exemples
Exemple 1 : considrations relatives la prcision
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 67
Programmation CN flexible
1.6 Minimum, maximum et plage de variables (MINVAL, MAXVAL, BOUND)
Fonction
Les instructions MINVAL et MAXVAL permettent de comparer entre elles les valeurs de deux
variables. Le rsultat fourni en retour la valeur la plus petite (pour MINVAL) ou la valeur la plus
grande (pour MAXVAL).
L'instruction BOUND permet de vrifier si la valeur d'une variable tester se trouve dans une
plage de valeurs dfinie.
Syntaxe
<valeur la plus petite>=MINVAL(<variable1>,<variable2>)
<valeur la plus grande>=MAXVAL(<variable1>,<variable2>)
<valeur en retour>=<BOUND>(<minimum>,<maximum>,<variable tester>)
Signification
Notions complmentaires
68 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.6 Minimum, maximum et plage de variables (MINVAL, MAXVAL, BOUND)
Remarque
MINVAL, MAXVAL et BOUND peuvent galement tre programmes dans actions synchrones.
Remarque
Comportement en cas d'galit
En cas d'galit de MINVAL/MAXVAL, cette valeur identique est fournie. Avec BOUND, la valeur
de la variable tester est de nouveau fournie.
Exemple
rVar3=45.2
rRetVar=BOUND(rVar1,rVar2,rVar3) ; rVar3 se situe au-dessus de la limite maximale,
rRetVar est rgle 33.7.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 69
Programmation CN flexible
1.7 Priorit des oprations
Fonction
A chaque oprateur est affecte une priorit. Lors du traitement d'une expression, les
oprateurs au degr de priorit le plus lev sont appliqus en premier lieu. En cas
d'oprateurs d'gale priorit, le traitement s'opre de gauche droite.
Des parenthses places dans les expressions arithmtiques permettent de fixer un ordre
des oprations diffrent des rgles normales de priorit.
Remarque
L'oprateur de concatnation ":" pour frames ne doit pas figurer avec d'autres oprateurs
dans une mme expression. Cet oprateur ne ncessite donc pas d'ordre de priorit.
Exemple d'instruction If
If (otto==10) and (anna==20) gotof end
Notions complmentaires
70 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.8 Conversions de types possibles
Fonction
Conversion de type lors d'une affectation
La valeur numrique constante, la variable ou l'expression assigne une variable doit tre
compatible avec le type de cette variable. Si cette condition n'est pas remplie, le type est
automatiquement converti au moment de l'affectation.
* En cas de conversion du type REAL en type INT, une partie dcimale >= 0,5 est
arrondie par excs ; dans le cas contraire, elle est arrondie par dfaut (voir fonction
ROUND)
1) La valeur <> 0 quivaut TRUE, la valeur == 0 quivaut FALSE
2) Si la valeur se situe dans la plage numrique admise
3) Dans le cas d'un seul caractre
4) Longueur de chane de caractres 0 = >FALSE, sinon TRUE
Remarque
Un message d'erreur est mis lorsqu'une valeur de conversion est suprieure la plage
cible.
Lorsque des types diffrents figurent dans une mme expression, leur adaptation s'effectue
automatiquement. Des conversions de type sont aussi possibles dans des actions
synchrones, voir le chapitre Actions synchrones au dplacement, conversion de type
implicite".
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 71
Programmation CN flexible
1.9 Oprations sur les chanes de caractres
Notions complmentaires
72 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.9 Oprations sur les chanes de caractres
Fonction
La fonction "Conversion de type en type STRING" permet d'utiliser des variables de types
diffrents comme lments d'un message (MSG).
Lors de l'utilisation de l'oprateur <<, la fonction est excute implicitement pour les
donnes de type INT, REAL, CHAR et BOOL (voir "Concatnation de chanes de caractres
(<<) (Page 75)").
Une valeur INT est convertie sous la forme normale lisible. Les valeurs REAL sont donnes
avec un nombre de dcimales pouvant aller jusqu' 10.
L'instruction AXSTRING convertit des variables de type AXIS en type STRING.
Syntaxe
<STRING_ERG> = << <type_quelconque>
<STRING_ERG> = AXSTRING(<descripteur d'axe>)
Signification
Remarque
Les variables FRAME ne peuvent pas tre converties.
Exemples
Exemple 1 :
MSG("Position:"<<$AA_IM[X])
Exemple 2 : AXSTRING
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 73
Programmation CN flexible
1.9 Oprations sur les chanes de caractres
Fonction
Avec l'instruction NUMBER, la conversion se fait du type STRING en type REAL. L'instruction
ISNUMBER s'utilise pour vrifier si la conversion est possible.
L'instruction AXNAME convertit une chane de caractres de type STRING en type AXIS.
Syntaxe
<RES_REAL>=NUMBER("<chane de caractres>")
<RES_BOOL>=ISNUMBER("<chane de caractres>")
<RES_AXIS>=AXNAME("<chane de caractres>")
Signification
Notions complmentaires
74 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.9 Oprations sur les chanes de caractres
Exemple
Fonction
La fonction "Concatnation de chanes de caractres" permet de composer une chane de
caractres partir d'lments individuels.
La concatnation s'effectue avec l'oprateur "<<". Cet oprateur possde, pour toutes les
combinaisons des types de base, CHAR, BOOL, INT, REAL et STRING, comme type de
destination STRING. Une conversion ventuellement indispensable est entreprise selon les
rgles tablies.
Syntaxe
<Type_quelconque> << <type_quelconque>
Signification
<Type_quelcon
Variable de type CHAR, BOOL, INT, REAL ou STRING
que> :
<< : Oprateur pour la concatnation de variables (<type_quelconque>) en
chane de caractres compose (type STRING).
Cet oprateur est galement disponible seul en variante dite "unaire".
permettant d'effectuer une conversion de type explicite en type STRING (
l'exception des types FRAME et AXIS) :
<< <type_quelconque>
Il est ainsi possible, par exemple, de composer un message ou une commande partir de
listes de textes et d'insrer des paramtres (nom de bloc, etc.) :
MSG(STRG_TAB[LOAD_IDX]<<NOM_BLOC)
PRUDENCE
Les rsultats intermdiaires de la concatnation de la chane de caractres ne doivent pas
dpasser la longueur de chane maximale.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 75
Programmation CN flexible
1.9 Oprations sur les chanes de caractres
Remarque
L'utilisation des types FRAME et AXIS est impossible avec l'oprateur "<<".
Exemples
Exemple 1 : Concatnation de chanes de caractres
Notions complmentaires
76 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.9 Oprations sur les chanes de caractres
Fonction
La fonction "Conversion en minuscules/majuscules" permet d'harmoniser l'criture au sein
d'une chane de caractres.
Syntaxe
<RES_STRING>=TOUPPER("<chane de caractres>")
<RES_STRING>=TOLOWER("<chane de caractres>")
Signification
Exemple
Etant donn qu'il est possible de rattacher l'interface utilisateur des indications introduites
par l'utilisateur, cette fonctionnalit permet d'obtenir une prsentation uniformise en lettres
minuscules ou majuscules:
Code de programme
DEF STRING [29] STRG
...
IF "LEARN.CNC"==TOUPPER(STRG) GOTOF LOAD_LEARN
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 77
Programmation CN flexible
1.9 Oprations sur les chanes de caractres
Fonction
L'instruction STRLEN permet de dterminer la longueur d'une chane de caractres.
Syntaxe
<RES_INT>=STRLEN("<chane de caractres>")
Signification
Exemple
En liaison avec l'accs des caractres individuels, la fonction permet de dterminer la fin
d'une chane de caractres :
Code de programme
IF (STRLEN(NOM_BLOC)>10) GOTOF ERREUR
Fonction
Cette fonctionnalit permet de rechercher des caractres isols ou une suite de caractres
dans une chane de caractres. Les rsultats signalent quel endroit de la chane de
caractres se trouve le caractre / la suite de caractres qui fait l'objet de la recherche.
Syntaxe
INT_ERG=INDEX(STRING,CHAR) ; Type de rsultat : INT
INT_ERG=RINDEX(STRING,CHAR) ; Type de rsultat : INT
INT_ERG=MINDEX(STRING,STRING) ; Type de rsultat : INT
INT_ERG=MATCH(STRING,STRING) ; Type de rsultat : INT
Notions complmentaires
78 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.9 Oprations sur les chanes de caractres
Smantique
Fonctions de recherche : elles fournissent la position trouve dans la chane de caractres
(premier paramtre). Si le caractre ou la chane de caractres est introuvable, le rsultat
est -1, la position du premier caractre tant 0.
Signification
Exemple
Dcomposition d'une entre en noms de chemin et de bloc
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 79
Programmation CN flexible
1.9 Oprations sur les chanes de caractres
Fonction
Cette fonctionnalit permet d'extraire une chane partielle de caractres d'une chane de
caractres. Pour ce faire, on prcise l'indice du premier caractre et, le cas chant, la
longueur dsire. Si l'information de longueur n'est pas prcise, c'est toute la chane de
caractres restante qui est prise en compte.
Syntaxe
STRING_ERG = SUBSTR (STRING,INT) ; Type de rsultat : INT
STRING_ERG = SUBSTR(STRING,INT, INT) ; Type de rsultat : INT
Smantique
Dans le premier cas, le rsultat correspond la chane de caractres partielle allant de la
position dfinie par le deuxime paramtre jusqu' la fin de la chane.
Dans le deuxime cas, le rsultat est limit la longueur maximale dfinie par le troisime
paramtre.
Si la position de dbut se situe aprs la fin de la chane de caractres, le rsultat est une
chane vide (" ").
Si la position de dbut ou la longueur sont ngatives, une alarme est dclenche.
Exemple
Code de programme Commentaire
DEF STRING[29] RES
RES = SUBSTR ("ACQUITTEMENT:10 99", 10, 2) ; On a donc : RES == "10"
Fonction
Cette fonctionnalit permet de slectionner des caractres individuels dans une chane. Cela
est valable pour l'accs en lecture aussi bien que pour l'accs en criture.
Syntaxe
CHAR_ERG = STRINGVAR [IDX] ; Type de rsultat : CHAR
CHAR_ERG = STRINGFELD [IDX_FELD, IDX_CHAR] ; Type de rsultat : CHAR
Smantique
Le caractre situ l'emplacement spcifi dans la chane de caractres est lu/crit. Si
l'indication de position est ngative ou plus grande que la chane de caractres, une alarme
est dclenche.
Notions complmentaires
80 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.9 Oprations sur les chanes de caractres
Exemple de messages :
Installation d'un descripteur d'axe dans une chane de caractres prtablie.
Paramtres
L'accs un caractre individuel est possible uniquement dans les variables dfinies par
l'utilisateur (donnes LUD, GUD et PUD).
De plus, dans le cas de l'appel d'un sous-programme, ce mode d'accs n'est possible que
pour des paramtres de type "Call-By-Value".
Exemples
Exemple 1 : accs d'un caractre individuel un paramtre systme, paramtre machine,
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 81
Programmation CN flexible
1.10 Sauts de programme
Fonction
Pour une rptition de programme, l'instruction GOTOS permet de retourner au dbut d'un
programme principal ou d'un sous-programme.
Pour le retour au dbut du programme, les paramtres machine permettent de rgler :
la mise "0" du temps d'excution du programme,
l'incrmentation du comptage de pices de la valeur "1".
Syntaxe
GOTOS
Signification
Conditions marginales
GOTOS dclenche un STOPRE interne (arrt du prtraitement).
Dans le cas d'un programme pice avec des dfinitions de donnes (variables LUD),
GOTOS excute un retour au premier bloc de programme qui suit la section de dfinition,
autrement dit l'excution des dfinitions de donnes n'est pas rpte. Les variables
dfinies gardent donc la valeur atteinte dans le bloc GOTOS et ne sont pas remises aux
valeurs par dfaut programmes dans la section de dfinition.
L'instruction GOTOS n'est pas disponible dans les actions synchrones et les cycles
technologiques.
Notions complmentaires
82 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.10 Sauts de programme
Exemple
Code de programme Commentaire
N10 ... ; Dbut du programme.
...
N90 GOTOS ; Saut au dbut du programme.
...
1.10.2 Sauts de programme sur repres de saut (IF, GOTOB, GOTOF, GOTO,
GOTOC)
Fonction
Des repres de saut (tiquettes) rejoindre au sein d'un programme avec les instructions
GOTOF, GOTOB, GOTO et GOTOC peuvent tre dfinis dans ce programme. L'excution du
programme reprend alors l'instruction qui suit immdiatement le repre de saut. Il est donc
possible de raliser des sauts l'intrieur du programme.
Outre les repres de saut, les destinations de saut peuvent tre galement des numros de
bloc principal ou auxiliaire.
Si une condition de saut (IF ...) est formule avant l'instruction de saut, le saut de
programme n'est excut que si cette condition est remplie.
Syntaxe
GOTOB <destination de saut>
IF <condition de saut> = TRUE GOTOB <destination de saut>
GOTOF <destination de saut>
IF <condition de saut> = TRUE GOTOF <destination de saut>
GOTO <destination de saut>
IF <condition de saut> = TRUE GOTO <destination de saut>
GOTOC <destination de saut>
IF <condition de saut> = TRUE GOTOC <destination de saut>
Signification
GOTOB : Instruction de saut avec destination de saut en direction du dbut du
programme.
GOTOF : Instruction de saut avec destination de saut en direction de la fin du
programme.
GOTO : Instruction de saut avec recherche de destination de saut. La
destination est d'abord recherche en direction de la fin du
programme, puis en direction du dbut du programme.
GOTOC : Mme effet que GOTO, sauf que l'alarme 14080 "Destination de saut
pas trouve" est inhibe.
Cela signifie que l'excution du programme n'est pas annule en cas
de recherche de destination de saut sans rsultat, mais qu'elle reprend
la ligne de programme qui suit l'instruction GOTOC.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 83
Programmation CN flexible
1.10 Sauts de programme
<destination de
Paramtre de la destination de saut
saut> :
Les indications possibles sont :
<repre de saut> : La destination de saut correspond au repre de
saut dfini dans le programme avec un nom
dfini par l'utilisateur : <repre de saut> :
<numro de bloc> : La destination de saut est un numro de bloc
principal ou auxiliaire (par exemple : 200, N300)
Variable de type Destination de saut variable. La variable
STRING : correspond un repre de saut ou un
numro de bloc.
IF : Mot cl pour formuler la condition de saut.
Pour la condition de saut, vous pouvez utiliser toutes les oprations
relationnelles et logiques (rsultat : TRUE ou FALSE). Le saut est
excut si le rsultat de l'opration est TRUE.
Remarque
Repres de saut (tiquettes)
Les repres de saut figurent toujours au dbut d'un bloc. S'il existe un numro de
programme, le repre de saut figure immdiatement aprs le numro de bloc.
Les rgles suivantes s'appliquent la dfinition des repres de saut :
Nombre de caractres :
Minimum 2
Maximum 32
Caractres autoriss :
Caractres alphabtiques
Chiffres
Traits de soulignement
Les deux premiers caractres doivent tre obligatoirement des lettres ou des traits de
soulignement.
Le nom d'un repre de saut est suivi de deux points (":").
Conditions marginales
La destination du saut doit tre un bloc avec un repre de saut ou un numro de bloc
figurant dans le programme.
Une instruction de saut sans condition de saut doit tre programme dans un bloc
spcifique. Cette restriction ne s'applique pas aux instructions de saut avec des
conditions de saut. Dans ce cas, plusieurs instructions de saut peuvent tre formules
dans un bloc.
Dans le cas de programmes comportant des instructions de saut sans condition de saut,
l'instruction de fin de programme M2/M30 peut figurer avant la fin du programme.
Notions complmentaires
84 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.10 Sauts de programme
Exemples
Exemple 1 : Sauts sur repres de saut
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 85
Programmation CN flexible
1.10 Sauts de programme
Fonction
La fonction CASE permet de vrifier la valeur actuelle (type : INT) d'une variable ou d'une
fonction de calcul et de sauter diffrents endroits dans le programme en fonction du
rsultat obtenu.
Syntaxe
CASE(<expression>) OF <constante_1> GOTOF <destination de saut_1>
<constante_2> GOTOF <destination de saut_2> ... DEFAULT GOTOF
<destination de saut_n>
Signification
Notions complmentaires
86 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.10 Sauts de programme
Exemple
Code de programme
...
N20 DEF INT VAR1 VAR2 VAR3
N30 CASE(VAR1+VAR2-VAR3) OF 7 GOTOF Label_1 9 GOTOF Label_2 DEFAULT GOTOF Label_3
N40 Label_1: G0 X1 Y1
N50 Label_2: G0 X2 Y2
N60 Label_3: G0 X3 Y3
...
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 87
Programmation CN flexible
1.11 Rptition de sections de programme (REPEAT, REPEATB, ENDLABEL, P)
Fonction
Cette fonction permet la rptition de sections de programme dans un ordre quelconque.
Les lignes ou sections de programme rpter sont repres par des repres de saut
(tiquettes).
Remarque
Repres de saut (tiquettes)
Les repres de saut figurent toujours au dbut d'un bloc. S'il existe un numro de
programme, le repre de saut figure immdiatement aprs le numro de bloc.
Les rgles suivantes s'appliquent la dfinition des repres de saut :
Nombre de caractres :
Minimum 2
Maximum 32
Caractres autoriss :
Caractres alphabtiques
Chiffres
Traits de soulignement
Les deux premiers caractres doivent tre obligatoirement des lettres ou des traits de
soulignement.
Le nom d'un repre de saut est suivi de deux points (":").
Syntaxe
1. Rptition d'une ligne de programme individuelle :
Notions complmentaires
88 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.11 Rptition de sections de programme (REPEAT, REPEATB, ENDLABEL, P)
Remarque
Il n'est pas possible de placer l'instruction REPEAT entre les deux repres de saut. Si le
<repre de saut de dbut> est plac devant l'instruction REPEAT et si le <repre de saut de
fin> n'est pas atteint avant l'instruction REPEAT, la rptition a lieu entre le <repre de saut
de dbut> et l'instruction REPEAT.
Remarque
Il n'est pas possible de placer l'instruction REPEAT entre le <repre de saut> et ENDLABEL. Si le
<repre de saut> est plac devant l'instruction REPEAT et si le ENDLABEL n'est pas atteint avant
l'instruction REPEAT, la rptition a lieu entre le <repre de saut> et l'instruction REPEAT.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 89
Programmation CN flexible
1.11 Rptition de sections de programme (REPEAT, REPEATB, ENDLABEL, P)
Signification
Notions complmentaires
90 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.11 Rptition de sections de programme (REPEAT, REPEATB, ENDLABEL, P)
Exemples
Exemple 1 : rpter des lignes de programme individuelles
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 91
Programmation CN flexible
1.11 Rptition de sections de programme (REPEAT, REPEATB, ENDLABEL, P)
Notions complmentaires
92 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.11 Rptition de sections de programme (REPEAT, REPEATB, ENDLABEL, P)
Informations complmentaires
Des imbrications sont autorises dans une section de programme rpter. Chaque
appel correspond un niveau de sous-programme.
Si M17 ou RET sont programms pendant l'excution de la rptition d'une section de
programme, celle-ci est annule. L'excution du programme reprend au bloc suivant la
ligne REPEAT.
Dans l'affichage du programme en cours, la rptition de la section de programme est
visualise en tant que niveau spcifique de sous-programme.
Si un abandon est dclench pendant l'excution de la section de programme,
l'excution du programme reprend aprs le bloc comportant l'instruction REPEAT.
Exemple :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 93
Programmation CN flexible
1.11 Rptition de sections de programme (REPEAT, REPEATB, ENDLABEL, P)
Exemple :
Code de programme
N10 G1 F300 Z-10
N20 DEBUT1:
N30 X=10
N40 Y=10
N50 GOTOF DEBUT2
N60 ENDLABEL:
N70 DEBUT2:
N80 X20
N90 Y30
N100 ENDLABEL: Z10
N110 X0 Y0 Z0
N120 Z-10
N130 REPEAT DEBUT1 P=2
N140 Z10
N150 X0 Y0
N160 M30
Remarque
Il est recommand que l'instruction REPEAT se trouve aprs les blocs de dplacement.
Notions complmentaires
94 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.12 Structures de contrle
Fonction
En version standard, la commande traite les blocs CN dans l'ordre de leur programmation.
Il est possible de varier cet ordre en programmant des blocs de programme et des boucles
de programme alternatifs. La programmation de ces structures de contrle s'effectue avec
les lments de structures de contrle (mots cls) IF...ELSE, LOOP, FOR, WHILE et REPEAT.
PRUDENCE
Les structures de contrle ne sont possibles qu' l'intrieur de la partie instructions d'un
programme. Les dfinitions dans l'en-tte de programme ne peuvent pas tre excutes de
faon conditionnelle ou rptitive.
Les mots-cls pour les structures de contrle, tout comme les destinations de sauts, ne
doivent pas tre utiliss dans des macros. Ceci ne fait pas l'objet d'une vrification lors de
la dfinition des macros.
Prise d'effet
Les structures de contrle sont valables localement dans le programme.
Niveaux d'imbrication
Une imbrication de 16 structures de contrle au maximum est possible l'intrieur de
chaque niveau de sous-programme.
3URJUDPPHSULQFLSDO 6RXVSURJUDPPH
352&68%352*
/223 5(3($7
)25
:+,/( )25
,) :+,/(
(1',) (1':+,/(
:+,/( :+,/(
(1':+,/(
68%352* (1')25
(1':+,/( (1')25
(1':+,/( 817,/
(1'/223
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 95
Programmation CN flexible
1.12 Structures de contrle
Conditions marginales
Les blocs comportant des lments de structures de contrle ne peuvent pas tre
dclars optionnels.
Les repres de saut (tiquettes) ne sont pas autoriss dans les blocs contenant des
lments de structures de contrle.
Les structures de contrle sont excutes de faon interprtative. En cas d'identification
d'une fin de boucle, le dbut de la boucle est recherch compte tenu des structures de
contrle ainsi trouves. Par consquent, en mode interprteur, la structure d'un
programme n'est pas compltement teste.
En principe, il est recommand de ne pas utiliser en commun des structures de contrle
et des sauts dans le programme.
Si des cycles subissent un prtraitement, l'imbrication correcte des structures de contrle
est vrifie.
Fonction
Une construction avec IF et ELSE s'utilise lorsque la boucle de programme doit contenir un
bloc de programme alternatif. Si la condition IF est remplie, le bloc de programme qui suit IF
est excut. Si la condition IF n'est pas remplie, le bloc de programme alternatif qui suit ELSE
est excut.
Remarque
Si une alternative n'est pas ncessaire, il est galement possible de programmer une boucle
IF sans instruction ELSE ni bloc de programme plac aprs ELSE.
Syntaxe
IF <condition>
...
ELSE
...
ENDIF
Notions complmentaires
96 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.12 Structures de contrle
Signification
Exemple
Sous-programme de changement d'outil
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 97
Programmation CN flexible
1.12 Structures de contrle
Fonction
La boucle infinie trouve son application dans des programmes infinis. Un retour au dbut de
boucle a toujours lieu en fin de boucle.
Syntaxe
LOOP
...
ENDLOOP
Signification
Exemple
Code de programme
...
LOOP
MSG ("Pas de changement d'outil actif")
M0
STOPRE
ENDLOOP
...
Notions complmentaires
98 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.12 Structures de contrle
Fonction
La boucle de comptage est utilise lorsqu'une section de programme doit tre rpte un
certain nombre de fois.
Syntaxe
Signification
Exemples
Exemple 1 : Variable INT ou paramtre R en tant que variable de comptage
Variable INT en tant que variable de comptage :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 99
Programmation CN flexible
1.12 Structures de contrle
Fonction
Dans une boucle WHILE, la condition figure au dbut de la boucle. La boucle WHILE est
excute tant que la condition est remplie.
Syntaxe
WHILE <condition>
...
ENDWHILE
Signification
Notions complmentaires
100 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.12 Structures de contrle
Exemple
Fonction
Dans une boucle REPEAT, la condition figure la fin de la boucle. La boucle REPEAT est
excute une fois, puis rpte jusqu' ce que la condition soit remplie.
Syntaxe
REPEAT
...
UNTIL <condition>
Signification
Exemple
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 101
Programmation CN flexible
1.12 Structures de contrle
Notions complmentaires
102 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.13 Coordination de programmes (INIT, START, WAITM, WAITMC, WAITE, SETM, CLEARM)
Fonction
Canaux
Un canal est susceptible d'excuter son propre programme, indpendamment des autres
canaux. C'est par ce moyen que les axes et broches qui lui sont affects temporairement,
sont contrlables par programme.
A la mise en service, on peut crer deux canaux ou plus pour la commande.
Coordination de programmes
Si plusieurs canaux sont partie prenante dans la ralisation d'une pice, une synchronisation
du droulement des programmes peut alors devenir ncessaire.
Pour raliser cette synchronisation de programmes, il existe des instructions spciales
(ordres) qui doivent figurer dans un bloc spcifique.
Remarque
La coordination de programme est galement possible dans un canal spar.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 103
Programmation CN flexible
1.13 Coordination de programmes (INIT, START, WAITM, WAITMC, WAITE, SETM, CLEARM)
Paramtres
Les variables la disposition commune des canaux (variables globales spcifiques NCK)
peuvent tre utilises pour l'change de donnes entre programmes. Sinon l'laboration des
programmes sera entreprise sparment pour chaque canal.
Notions complmentaires
104 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.13 Coordination de programmes (INIT, START, WAITM, WAITMC, WAITE, SETM, CLEARM)
Remarque
Toutes les instructions ci-dessus doivent figurer dans des blocs qui leur sont propres.
Le nombre de marques dpend de l'UC en place.
Numros de canaux
Pour les canaux coordonner, jusqu' 10 canaux peuvent tre indiqus par leur numro
(valeur entire).
Noms des canaux
Les noms de canaux doivent tre convertis en numros par des variables (voir le chapitre
"Variables et paramtres de calcul") ou, la place de numros de canaux, les noms de
canaux (descripteur ou mot cl) dfinis par $MC_CHAN_NAME peuvent galement tre
programms. Les noms dfinis doivent tre conformes aux conventions linguistiques CN
(autrement dit, les deux premiers caractres sont des lettres ou des caractres de
soulignement).
PRUDENCE
Protger l'affectation des numros pour viter toute modification accidentelle.
Ces noms ne doivent pas pralablement exister avec une autre signification dans la CN,
par exemple comme mot-cl, comme commande CN, comme nom d'axe, etc.
SETM() et CLEARM()
SETM()et CLEARM() peuvent galement tre programms partir d'une action synchrone. Voir
chapitre "Activer/effacer la marque d'attente : SETM CLEARM"
Exemple
Au canal avec le nom "MACHINE", on affecte le numro de canal 1,
au canal avec le nom "CHARGEUR", on affecte le numro de canal 2 :
DEF INT MACHINE=1, CHARGEUR=2
Les variables reoivent les mmes noms que les canaux.
L'instruction START s'appelle donc :
START(MACHINE)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 105
Programmation CN flexible
1.13 Coordination de programmes (INIT, START, WAITM, WAITMC, WAITE, SETM, CLEARM)
Canal 2 :
_N_MPF200_MPF
Notions complmentaires
106 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.13 Coordination de programmes (INIT, START, WAITM, WAITMC, WAITE, SETM, CLEARM)
1 1
:$,70 :$,70
FDQDO
1
03) 1
DWWHQWH 0
FDQDO 1
1 1
DWWHQWH DWWHQWH 0
Code de programme
N10 INIT(2,"/_N_WKS_DIR/_N_ARBRE1_WPD/_N_CHARIOTAGE1_MPF")
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 107
Programmation CN flexible
1.13 Coordination de programmes (INIT, START, WAITM, WAITMC, WAITE, SETM, CLEARM)
Notions complmentaires
108 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.14 Routine d'interruption (ASUP)
Remarque
Les termes "sous-programme asynchrone (ASUP)" et "routine d'interruption" utiliss en
alternance dans la description suivante dsignent la mme fonctionnalit.
Fonction
La fonction d'une routine d'interruption est explicite l'aide d'un exemple typique :
5RXWLQHVG
LQWHUUXSWLRQ
5HWUDLWGHO
RXWLO
&KDQJHPHQWG
RXWLO
1RXYHOOHVYDOHXUVGH
FRUUHFWLRQ
5DFFRVWDJH
3URJUDPPH
SULQFLSDO
L'outil se brise pendant l'usinage. Ceci dclenche un signal qui arrte la phase d'usinage en
cours et lance simultanment un sous-programme appel "routine d'interruption". Ce sous-
programme contient toutes les instructions qui doivent tre excutes dans ce cas.
Lorsque l'excution du sous-programme est termine (et la machine nouveau prte), la
commande retourne dans le programme principal et poursuit l'usinage, selon l'instruction
REPOS, l'endroit o il avait t interrompu (voir "Raccostage du contour (Page 476)").
PRUDENCE
Si vous ne programmez pas d'instruction REPOS dans le sous-programme, il y a
positionnement au point final du bloc qui suit le bloc interrompu.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 109
Programmation CN flexible
1.14 Routine d'interruption (ASUP)
Bibliographie
Description fonctionnelle Fonctions de base ; GMF, Canal, Mode de programme,
Comportement au reset (K1), chapitre : "Sous-programmes asynchrones (ASUP), routines
d'interruption"
Bibliographie
Pour plus d'informations sur la cration de sous-programmes, consultez le chapitre "Sous-
programmes, macro-instructions".
Notions complmentaires
110 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.14 Routine d'interruption (ASUP)
Fonction
La commande dispose de signaux (entres 18) qui dclenchent l'interruption du
programme courant et qui peuvent dmarrer la routine d'interruption correspondante.
Dans le programme pice, l'affectation d'une entre au dmarrage d'un programme
s'effectue avec l'instruction SETINT.
Si le programme pice contient plusieurs instructions SETINT et que, par consquent,
plusieurs signaux peuvent se prsenter simultanment, les routines d'interruption
correspondantes doivent avoir des valeurs de priorit dfinissant l'ordre d'excution :
PRIO=<valeur>
Si de nouveaux signaux arrivent pendant l'excution d'une routine d'interruption, cette
routine est interrompue par les routines prioritaires.
Syntaxe
SETINT(<n>) PRIO=<valeur> <NOM>
SETINT(<n>) PRIO=<valeur> <NAME> BLSYNC
SETINT(<n>) PRIO=<valeur> <NAME> LIFTFAST
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 111
Programmation CN flexible
1.14 Routine d'interruption (ASUP)
Exemples
Exemple 1 : Affectation des routines d'interruption et dfinition de priorit
Notions complmentaires
112 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.14 Routine d'interruption (ASUP)
Fonction
Une instruction SETINT se dsactive avec DISABLE et se ractive avec ENABLE sans perdre
l'affectation entre routine d'interruption.
Syntaxe
DISABLE(<n>)
ENABLE(<n>)
Signification
Exemple
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 113
Programmation CN flexible
1.14 Routine d'interruption (ASUP)
Fonction
Une affectation entre routine d'interruption dfinie avec SETINT peut tre supprime avec
CLRINT.
Syntaxe
CLRINT(<n>)
Signification
Exemple
Notions complmentaires
114 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.14 Routine d'interruption (ASUP)
Fonction
Dans le cas d'une instruction SETINT avec LIFTFAST, un retrait rapide loigne l'outil du contour
de pice lorsque l'entre commute.
La suite dpend de l'instruction SETINT, c'est--dire si celle-ci contient ou non une routine
d'interruption en plus de LIFTFAST :
Avec une routine La routine d'interruption est excute aprs le retrait rapide.
d'interruption :
Sans routine Aprs le retrait rapide, l'usinage s'arrte avec une alarme.
d'interruption :
Syntaxe
SETINT(<n>) PRIO=1 LIFTFAST
SETINT(<n>) PRIO=1 <NOM> LIFTFAST
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 115
Programmation CN flexible
1.14 Routine d'interruption (ASUP)
Conditions marginales
Comportement en cas de frame actif avec fonction miroir
Lors de la dtermination du sens de retrait, il est vrifi si un frame avec fonction miroir est
actif. Dans ce cas, la gauche et la droite sont inverses pour le sens de retrait par rapport
la direction tangentielle. Les parts directionnelles dans le sens de l'outil ne seront pas prises
en compte par la fonction miroir. Ce comportement est activ par le rglage du paramtre
machine :
MD21202 $MC_LIFTFAST_WITH_MIRROR = TRUE
Exemple
Un outil bris doit tre remplac automatiquement par un outil de rechange. L'usinage se
poursuit alors avec le nouvel outil.
Programme principal :
Notions complmentaires
116 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.14 Routine d'interruption (ASUP)
Sous-programme :
Sous-programme Commentaire
PROC CHANG_O SAVE ; Sous-programme avec mise en mmoire
de l'tat courant
N10 G0 Z100 M5 ; Position de changement de l'outil,
arrt de la broche
N20 T11 M6 D1 G41 ; Changement d'outil
N30 REPOSL RMB M3 ; Raccostage du contour et retour au
programme principal (programmation
dans un bloc)
Dplacement de retrait
Le plan du dplacement de retrait est dtermin par les codes G suivants :
LFTXT
Le plan du dplacement de retrait est dtermin par la tangente de la trajectoire et la
direction de l'outil (prrglage).
LFWP
Le plan du dplacement de retrait est le plan de travail actif slectionn avec les
fonctions G17, G18 et G19 du code G. Le sens du dplacement de retrait est indpendant
de la tangente la trajectoire. Ceci permet de programmer un retrait rapide paraxial.
LFPOS
Retrait de l'axe introduit avec POLFMASK / POLFMLIN la position d'axe absolue programme
avec POLF.
ALF n'a aucune influence sur la direction du retrait pour plusieurs axes ainsi que pour
plusieurs axes dans un contexte linaire.
Bibliographie :
Manuel de programmation Notions de base ; chapitre : "Retrait rapide en cours de
filetage l'outil"
Code de programme
N10 SETINT(2) PRIO=1 RETR_Z LIFTFAST
ALF=7
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 117
Programmation CN flexible
1.14 Routine d'interruption (ASUP)
Lorsque G41 est activ (sens d'usinage gauche du contour), le retrait de l'outil est
perpendiculaire au contour.
* $/)
7DQJHQWH
7DQJHQWH
3RLQWGH
FRQWDFW
7DQJHQWH
7DQJHQWH
3RLQWGH
FRQWDFW
Notions complmentaires
118 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.14 Routine d'interruption (ASUP)
$[HGHSQWUDWLRQ
9XHGDQVOHVHQVGH
GSODFHPHQW
r
r
9XHGHGHVVXV
*
*
6HQVGHGSODFHPHQW
PRUDENCE
Lorsque la correction de rayon d'outil est active, il est recommand de ne pas utiliser :
les codes 2, 3, 4 pour G41
les codes 6, 7, 8 pour G42
car, dans ces cas, l'outil se dplace vers le contour et entre en collision avec la pice.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 119
Programmation CN flexible
1.14 Routine d'interruption (ASUP)
Remarque
La distance de retrait rapide des axes gomtriques par rapport au contour est rglable dans
un paramtre machine.
Notions complmentaires
120 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.15 Permutation d'axe, permutation de broche (RELEASE, GET, GETD)
Fonction
Un ou plusieurs axes ou broches ne peuvent tre interpols que dans un canal. Si l'on
prvoit d'utiliser un axe alternativement dans deux canaux diffrents (par exemple dans le
cas d'un changeur de palettes), il faut d'abord le librer dans le canal actuel, puis le prendre
en charge dans l'autre canal. L'axe est permut entre les canaux.
Extensions de permutation d'axe
Un axe/broche peut tre remplac avec un arrt du prtraitement et une synchronisation
entre le prtraitement et l'excution des blocs ou encore sans arrt du prtraitement. Par
ailleurs, une permutation d'axe est galement possible via
une rotation conteneur d'axes AXCTSWE ou AXCTWED via un GET/GETD implicite.
Frame avec rotation lorsque cet axe est combin avec d'autres axes.
Actions synchrones, voir Actions synchrones au dplacement, "Permutation d'axe
RELEASE, GET".
Constructeur de la machine-outil
Tenez compte des indications du constructeur de la machine. Des paramtres machines
configurables doivent dfinir de manire univoque un axe pour la permutation d'axe dans
tous les canaux et des paramtres machines peuvent aussi modifier le comportement de la
permutation d'axe.
Syntaxe
RELEASE (nom d'axe, nom d'axe, ...) ou RELEASE (S1)
Avec GETD (GET Directly), un axe est extrait directement d'un autre canal. Cela signifie
que, pour ce GETD, il n'est pas ncessaire de programmer un RELEASE appropri dans un
autre canal. Cela signifie aussi que dsormais, une autre communication de canal doit tre
mise en place (par exemple marques wait).
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 121
Programmation CN flexible
1.15 Permutation d'axe, permutation de broche (RELEASE, GET, GETD)
PRUDENCE
Un axe ou une broche pris(e) en charge avec GET reste assign ce canal, mme aprs
un RESET de touche ou de programme.
En cas de redmarrage du programme, l'affectation des axes permuts ou des broches
permutes doit tre programme si les axes ou les broches doivent tre utiliss dans leurs
canaux d'origine.
A la mise sous tension de la CN, les axes et les broches sont affects aux canaux spcifis
dans les paramtres machine.
Exemples
Exemple 1 : permuter des axes entre deux canaux
Sur 6 axes sont utiliss pour le traitement dans le canal 1 : 1., 2., 3. et le 4e axe.
les axes 5 et 6 sont employs dans le canal 2 pour le changement de pice.
L'axe 2 doit pouvoir tre permut entre les deux canaux et, lors de la mise sous tension de la
CN, affect au canal 1.
Programme "MAIN" dans le canal 1 :
Code de programme Commentaire
INIT (2,"PERMUT2") ; Slection du programme PERMUT2 dans le canal 2.
N START (2) ; Dmarrage du programme dans le canal 2.
N GET (AX2) ; Prise en charge de l'axe AX2.
...
N RELEASE (AX2) ; Libration de l'axe AX2.
N WAITM (1,1,2) ; Attendre la marque WAIT dans les canaux 1 et 2 pour
la synchronisation dans les deux canaux.
... ; Poursuite de l'excution aprs la permutation
d'axe.
N M30
Notions complmentaires
122 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.15 Permutation d'axe, permutation de broche (RELEASE, GET, GETD)
Programmation Commentaire
N01 G0 X0
N02 RELEASE(AX5)
N03 G64 X10
N04 X20
N05 GET(AX5) ; Si aucune synchronisation n'est requise, ce bloc
sera non excutable.
N06 G01 F5000 ; Bloc non excutable.
N07 X20 ; Bloc non excutable, car position X comme dans N04.
N08 X30 ; Premier bloc excutable aprs N05.
...
Exemple 3 : activer une permutation d'axes sans arrt du prtraitement des blocs
Prrequis : La permutation d'axe sans arrt du prtraitement doit tre configure via un
paramtre machine.
Programmation Commentaire
N010 M4 S100
N011 G4 F2
N020 M5
N021 SPOS=0
N022 POS[B]=1
N023 WAITP[B) ; L'axe B devient un axe banalis.
N030 X1 F10
N031 X100 F500
N032 X200
N040 M3 S500 ; L'axe ne dclenche pas d'arrt du
prtraitement/REORG.
N041 G4 F2
N050 M5
N099 M30
Lorsque la broche ou l'axe B sont dplacs directement aprs le bloc N023 comme axe AP
par exemple sur 180 degrs puis nouveau sur 1 degr, alors cet axe redevient un axe
banalis et ne dclenche pas d'arrt du prtraitement dans le bloc N40.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 123
Programmation CN flexible
1.15 Permutation d'axe, permutation de broche (RELEASE, GET, GETD)
Condition pralable
Conditions ncessaires la permutation d'axe
L'axe doit tre dfini par le biais des paramtres machine dans tous les canaux qui
veulent utiliser cet axe.
Le canal auquel l'axe est affect lors de la mise sous tension doit tre dfini via le
paramtre machine spcifique un axe.
Description
Libration de l'axe : RELEASE
Lors de la libration de l'axe, veillez aux points suivants :
1. L'axe ne doit participer aucune transformation.
2. En cas de couplage d'axes (commande tangentielle), tous les axes du groupe doivent
tre librs.
3. Il est impossible de permuter un axe de positionnement concurrent dans cet tat.
4. Dans le cas d'un axe matre Gantry (axe de portique), tous les axes asservis sont aussi
permuts.
5. Dans le cas d'un couplage d'axes (dplacement conjugus , couplage pilote , rducteur
lectronique), seul l'axe pilote du groupe peut tre libr.
Prise en charge de l'axe : GET
La permutation d'axe devient effective avec cette instruction. Le canal dans lequel
l'instruction a t programme prend entirement en charge l'axe.
Effets de GET :
Permutation d'axe avec synchronisation :
Un axe doit toujours tre synchronis s'il a t affect entre temps un canal diffrent ou
l'AP, et qu'il n'y a pas eu synchronisation avant GET par "WAITP", G74 ou effacement de la
distance restant parcourir.
Un arrt du prtraitement a lieu (comme pour STOPRE).
L'excution du programme est interrompue jusqu' ce que la permutation d'axe soit
termine.
"GET" automatique
Si un axe est disponible par principe dans le canal, mais rendu momentanment indisponible
comme axe de canal, alors un GET est automatiquement excut. Si le ou les axes sont
dj synchroniss, aucun arrt du prtraitement n'a lieu.
Notions complmentaires
124 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.15 Permutation d'axe, permutation de broche (RELEASE, GET, GETD)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 125
Programmation CN flexible
1.16 Transmettre un axe un autre canal (AXTOCHAN)
Fonction
Avec la commande CN AXTOCHAN, un axe peut tre demand pour transmettre cet axe un
autre canal. L'axe peut aussi bien tre amen au canal correspondant par le programme
pice CN que par une action synchrone.
Syntaxe
AXTOCHAN(nom d'axe,numro de canal[,nom d'axe,numro de
canal[,...]])
Signification
Remarque
Axe de positionnement concurrent et axe exclusivement contrl par l'AP
Un axe AP ne peut pas changer de canal en tant qu'axe de positionnement concurrent. Un
axe exclusivement contrl par l'AP ne peut pas tre assign au programme CN.
Bibliographie
Description fonctionnelle Fonctions d'extension ; axes de positionnement (P2)
Notions complmentaires
126 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.16 Transmettre un axe un autre canal (AXTOCHAN)
Exemple
AXTOCHAN dans le programme CN
Les axes X et Y sont connus dans le 1er et dans le 2me canal. Actuellement, c'est le canal
1 qui dtient le droit d'interpolation et le programme suivant dmarre dans le canal 1:
Informations complmentaires
AXTOCHAN dans le programme CN
Un GET est alors excut uniquement en cas de demande de l'axe pour le programme CN
dans un canal spar et la modification d'tat relle est attendue. Lorsque l'axe est demand
pour un autre canal ou s'il doit devenir un axe banalis dans un canal spar, alors
seulement la demande est gnre.
AXTOCHAN partir d'une action synchrone
Lorsqu'un axe est demand pour un canal spar alors AXTOCHAN est reprsent sur un GET
partir d'une action synchrone. Dans ce cas, l'axe devient axe banalis la premire
demande pour le canal propre. la deuxime demande, l'axe est affect au programme CN
d'une manire analogue la demande GET dans le programme CN. En ce qui concerne la
demande GET partir d'une action synchrone, se reporter au chapitre "Actions synchrones
au dplacement".
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 127
Programmation CN flexible
1.17 Activation des paramtres machine (NEWCONF)
Fonction
L'instruction NEWCONF permet d'activer tous les paramtres machine du niveau de prise d'effet
"NEW_CONFIG". La fonction peut galement tre active dans l'interface utilisateur IHM en
actionnant la touche logicielle "Activer PM".
Lors de l'excution de la fonction "NEWCONF", un arrt implicite du prtraitement des blocs
a lieu, c'est--dire que le dplacement avec interpolation est interrompu.
Syntaxe
NEWCONF
Signification
Remarque
Afin d'activer toutes les modifications de faon sre, l'instruction NEWCONF doit tre excute
dans chaque canal dans lequel doivent tre calculs les axes ou fonctions concerns par les
modifications des paramtres machine.
Avec NEWCONF, aucun paramtre machine axial n'est activ.
Un RESET axial doit tre excut pour les axes contrls par l'AP.
Exemple
Rseau de trous : raliser des trous tarauds en diffrentes positions
Notions complmentaires
128 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.18 Ecriture d'un fichier (WRITE)
Fonction
L'instruction WRITE permet d'crire des blocs/donnes d'un programme pice la fin d'un
fichier (fichier de journal) spcifi ou la fin du programme pice en cours d'excution. Les
blocs/donnes sont ajouts la fin du fichier, c'est--dire aprs M30.
Remarque
Si le fichier dcrire avec l'instruction WRITE n'existe pas dans la CN, il est cr.
Son lieu de stockage est la mmoire statique de la CN. Pour SINUMERIK 840D sl, il s'agit
de la carte CompactFlash Card. Par rapport SINUMERIK 840D, le temps d'excution de
l'instruction WRITE augmente alors d'environ 75 ms.
S'il existe un fichier de mme nom sur le disque dur, ce fichier est cras aprs sa fermeture
(dans la CN). Aide : Modifier le nom dans la CN en utilisant la touche logicielle "Proprits"
du groupe fonctionnel "Services".
Condition
Le niveau de protection rgl doit tre suprieur ou gal au droit WRITE du fichier. Si ce
n'est pas le cas, l'accs est refus avec mission du message d'erreur (valeur en retour de
la variable d'erreur = 13).
Syntaxe
DEF INT <erreur>
WRITE(<erreur>,"<nom de fichier>","<bloc/donnes>")
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 129
Programmation CN flexible
1.18 Ecriture d'un fichier (WRITE)
<nom de fichier> : Nom du fichier dans lequel le bloc ou les donnes indiqus doivent
tre ajouts
Type : STRING
Lors de la spcification du nom de fichier, les points suivants doivent
tre respects :
Le nom de fichier spcifi ne doit pas contenir de caractres
d'espacement ou de caractres de commande (caractres avec un
code ASCII 32), car sinon l'instruction WRITE est interrompue avec
le code d'erreur 1 "chemin d'accs non autoris".
Le nom du fichier peut tre spcifi avec l'indication du chemin
d'accs et l'extension de fichier :
Chemins d'accs
L'indication du chemin doit tre absolue, c'est--dire commencer
par "/".
En l'absence d'indication du chemin, le fichier enregistr dans le
rpertoire actuel (=rpertoire du programme slectionn).
Extension de fichier
Si le nom du fichier ne comporte pas de nom de domaine (_N_),
celui-ci est ajout automatiquement.
Si, dans le nom du fichier, le quatrime caractre avant la fin est
un trait de soulignement "_", les trois caractres suivants sont
interprts comme extension du fichier. Afin de pouvoir utiliser
le mme nom de fichier pour toutes les instructions de fichier,
p. ex. au moyen d'une variable de type STRING, seules les
extensions de fichier _SPF et _MPF doivent tre utilises.
Si aucune extension "_MPF" ou "_SPF" n'est spcifie, _MPF
est ajout automatiquement.
La longueur du nom du fichier ne doit pas dpasser 32 octets, la
longueur du nom du chemin 128 octets.
Exemple :
"PROTFILE"
"_N_PROTFILE"
"_N_PROTFILE_MPF"
"/_N_MPF_DIR_/_N_PROTFILE_MPF/"
<bloc/donnes> : Bloc ou donnes ajouter dans le fichier spcifi.
Type : STRING
Nota :
LF est ajout en interne, c'est--dire que la chane de texte est
rallonge d'1 caractre.
Notions complmentaires
130 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.18 Ecriture d'un fichier (WRITE)
Conditions marginales
Taille maximale du fichier ( constructeur de la machine !)
La taille maximale possible des fichiers de journal est rgle avec le paramtre machine :
MD11420 $MN_LEN_PROTOCOL_FILE
La taille maximale s'applique tous les fichiers crs avec l'instruction WRITE. En cas de
dpassement, un message d'erreur est mis et l'enregistrement du bloc ou des donnes
ne s'effectue pas. Si la capacit mmoire est suffisante, un nouveau fichier peut tre
cr.
Exemples
Exemple 1 : instruction WRITE sans indication absolue du chemin
Code de programme
...
WRITE(ERROR,"/_N_WKS_DIR/_N_PROT_WPD/_N_PROT_MPF","JOURNAL DU 7.2.97")
...
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 131
Programmation CN flexible
1.19 Suppression d'un fichier (DELETE)
Fonction
L'instruction DELETE permet de supprimer tous les fichiers, qu'ils aient t crs avec
l'instruction WRITE ou non. DELETE permet galement de supprimer les fichiers ayant t crs
avec des niveaux d'accs suprieurs.
Syntaxe
DEF INT <erreur>
DELETE(<erreur>,"<nom de fichier>")
Signification
Notions complmentaires
132 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.19 Suppression d'un fichier (DELETE)
Exemple
Code de programme Commentaire
N10 DEF INT ERROR ; Dfinition de la variable d'erreur.
N15 STOPRE ; Arrt du prtraitement des blocs.
N20 ; Supprimer le fichier TEST1 dans le
DELETE(ERROR,"/_N_SPF_DIR/_N_TEST1_SPF") rpertoire du sous-programme.
N30 IF ERROR ; Exploitation des erreurs.
N40 MSG ("Erreur lors instruction DELETE :
" <<ERROR)
N50 M0
N60 ENDIF
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 133
Programmation CN flexible
1.20 Lecture des lignes d'un fichier (READ)
Fonction
L'instruction READ permet de lire une ou plusieurs lignes dans le fichier spcifi et
d'enregistrer les informations lues dans un tableau de type STRING. Chaque ligne lue
occupe un lment de ce tableau.
Remarque
Ce fichier doit se trouver dans la mmoire utilisateur statique du NCK (systme passif de
fichiers).
Condition
Le niveau de protection rgl doit tre suprieur ou gal au droit READ du fichier. Si ce n'est
pas le cas, l'accs est refus avec mission du message d'erreur (valeur en retour de la
variable d'erreur = 13).
Syntaxe
DEF INT <erreur>
DEF STRING[<longueur de chane>] <rsultat>[<n>,<m>]
READ(<erreur>,"<nom de fichier>",<ligne de dbut>,<nombre de
lignes>,<rsultat>)
Signification
READ : Instruction de lecture des lignes du fichier spcifi et
d'enregistrement de ces lignes dans un tableau de variables.
<erreur> : Variable pour la valeur d'erreur en retour (paramtre Call-By-
Reference)
type. INT
Valeur : 0 Pas d'erreur
1 chemin d'accs non autoris
2 chemin d'accs introuvable
3 fichier introuvable
4 type de fichier erron
13 droits d'accs insuffisants
21 Ligne inexistante (paramtres <ligne de dbut>
ou <nombre de lignes> suprieurs au nombre de
lignes du fichier spcifi).
22 Longueur de tableau de la variable de rsultat
(<rsultat>) trop petite.
23 Zone de lignes trop grande (paramtre <nombre
de lignes> trop grand, si bien que la lecture se
poursuit au-del de la fin du fichier).
Notions complmentaires
134 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.20 Lecture des lignes d'un fichier (READ)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 135
Programmation CN flexible
1.20 Lecture des lignes d'un fichier (READ)
Remarque
La lecture dans un fichier binaire est impossible. L'erreur "Type de fichier erron" (valeur en
retour de la variable d'erreur = 4) est signale. Les types de fichiers suivants ne sont pas
lisibles : _BIN, _EXE, _OBJ, _LIB, _BOT, _TRC, _ACC, _CYC, _NCK.
Exemple
Notions complmentaires
136 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.21 Vrification de l'existence d'un fichier (ISFILE)
Fonction
L'instruction ISFILE permet de vrifier si un fichier existe dans la mmoire utilisateur statique
du NCK (systme passif de fichiers).
Syntaxe
<rsultat>=ISFILE("<nom de fichier>")
Signification
ISFILE : Instruction permettant de vrifier que le fichier spcifi existe dans la
systme passif de fichiers.
<nom de fichier> : Nom du fichier dont l'existence doit tre vrifie dans le systme passif
de fichiers.
Type : STRING
Lors de la spcification du nom de fichier, les points suivants doivent
tre respects :
Le nom de fichier spcifi ne doit contenir ni caractres
d'espacement, ni caractres de commande (caractres avec un
code ASCII 32).
Le nom du fichier peut tre spcifi avec l'indication du chemin
d'accs et l'extension de fichier :
Chemins d'accs
L'indication du chemin doit tre absolue, c'est--dire commencer
par "/".
En l'absence d'indication du chemin, le fichier est recherch
dans le rpertoire actuel (= rpertoire du programme
slectionn).
Extension de fichier
Si le nom du fichier ne comporte pas de nom de domaine (_N_),
celui-ci est ajout automatiquement.
Si, dans le nom du fichier, le quatrime caractre avant la fin est
un trait de soulignement "_", les trois caractres suivants sont
interprts comme extension du fichier. Afin de pouvoir utiliser
le mme nom de fichier pour toutes les instructions de fichier,
p. ex. au moyen d'une variable de type STRING, seules les
extensions de fichier _SPF et _MPF doivent tre utilises.
Si aucune extension "_MPF" ou "_SPF" n'est spcifie, _MPF
est ajout automatiquement.
La longueur du nom du fichier ne doit pas dpasser 32 octets, la
longueur du nom du chemin 128 octets.
Exemple :
"PROTFILE"
"_N_PROTFILE"
"_N_PROTFILE_MPF"
"/_N_MPF_DIR_/_N_PROTFILE_MPF/"
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 137
Programmation CN flexible
1.21 Vrification de l'existence d'un fichier (ISFILE)
Exemple
ou :
Notions complmentaires
138 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.22 Lecture des informations fichier (FILEDATE, FILETIME, FILESIZE, FILESTAT, FILEINFO)
Fonction
Les instructions FILEDATE, FILETIME, FILESIZE, FILESTAT et FILEINFO permettent de lire des
informations fichier telles que date / heure du dernier accs en criture, taille actuelle du
fichier, tat du fichier ou l'ensemble de ces informations.
Remarque
Ce fichier doit se trouver dans la mmoire utilisateur statique du NCK (systme passif de
fichiers).
Condition
Le niveau de protection actuellement paramtr doit tre gal ou suprieur au droit show du
rpertoire principal. Si ce n'est pas le cas, l'accs est refus avec mission du message
d'erreur (valeur en retour de la variable d'erreur = 13).
Syntaxe
DEF INT <erreur>
DEF STRING[<longueur de chane>] <rsultat>
FILE....(<erreur>,"<nom de fichier>",<rsultat>)
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 139
Programmation CN flexible
1.22 Lecture des informations fichier (FILEDATE, FILETIME, FILESIZE, FILESTAT, FILEINFO)
Notions complmentaires
140 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.22 Lecture des informations fichier (FILEDATE, FILETIME, FILESIZE, FILESTAT, FILEINFO)
Exemple
L'exemple pourrait p. ex. fournir le rsultat suivant dans la variable de rsultat RESULT :
"77777 12345678 26.05.00 13:51:30"
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 141
Programmation CN flexible
1.23 Calcul du total de contrle d'un tableau (CHECKSUM)
Fonction
L'instruction CHECKSUM permet de calculer le total de contrle d'un tableau. La comparaison
entre ce total de contrle et le rsultat d'un calcul prcdent du total de contrle permet de
dterminer une ventuelle modification de donnes du tableau.
Application
vrification si le contour d'entre a t modifi lors du chariotage.
Syntaxe
DEF INT <erreur>
DEF STRING[<longueur de chane>] <total de contrle>
DEF ... <tableau>[<n>,<m>,<o>]
<erreur>=CHECKSUM(<total de contrle>,"<tableau>"[,<colonne de
dbut>,<colonne de fin>])
Signification
Notions complmentaires
142 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.23 Calcul du total de contrle d'un tableau (CHECKSUM)
Remarque
Les paramtres <colonne de dbut> et <colonne de fin>sont facultatifs. Lorsque aucun
indice de colonne n'est donn, la somme de contrle est forme sur tout le tableau.
Le rsultat d'une somme de contrle est toujours univoque. En cas de modification d'un
lment du tableau, la chane de caractres rsultat change galement.
Exemple
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 143
Programmation CN flexible
1.24 Arrondissement (ROUNDUP)
Fonction
La fonction "ROUNDUP" arrondit les valeurs d'entre de type REAL (nombres rationnels
avec point dcimal) l'entier suprieur le plus proche.
Syntaxe
ROUNDUP(<valeur>)
Signification
Remarque
Les valeurs d'entre de type INT (nombres entiers) restent inchanges.
Exemples
Exemple 1 : Arrondis de diffrentes valeurs d'entre
Exemple Arrondi
ROUNDUP(3.1)
4.0
ROUNDUP(3.6)
4.0
ROUNDUP(-3.1)
-3.0
ROUNDUP(-3.6)
-3.0
ROUNDUP(3.0)
3.0
ROUNDUP(3)
3.0
Code de programme
N10 X=ROUNDUP(3.5) Y=ROUNDUP(R2+2)
N15 R2=ROUNDUP($AA_IM[Y])
N20 WHEN X=100 DO Y=ROUNDUP($AA_IM[X])
...
Notions complmentaires
144 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
1.25.1 Gnralits
1.25.1.1 Sous-programme
Fonction
La dsignation "Sous-programme" date encore de l'poque o les programmes pice taient
rpartis de faon dtermine en programmes principaux et sous-programmes. Les
programmes principaux correspondaient aux programmes pice qui, en vue de leur
excution, taient slectionns, puis dmarrs sur la commande. Les sous-programmes
correspondaient aux programmes pice qui taient appels par le programme principal.
Cette rpartition dtermine n'a plus lieu d'tre avec la langage CN SINUMERIK actuel.
Chaque sous-programme peut par principe tre slectionn et dmarr comme programme
principal ou tre appel comme sous-programme par un autre programme pice.
Ainsi, nous dsignerons par la suite par sous-programme, un programme pice appel par
un autre programme pice.
3URJUDPPHSULQFLSDO
6RXV
SURJUDPPH
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 145
Programmation CN flexible
1.25 Technique des sous-programmes
Application
Comme dans tous les langages de programmation volus, les sous-programmes dans le
langage CN servent galement transfrer des sections de programme, qui sont excutes
plusieurs fois, en tant que programmes complets, autonomes.
Les sous-programmes offrent les avantages suivants :
Augmentation de la clart et de la lisibilit des programmes
Augmentation de la qualit grce la rutilisation de sections de programme testes
Possibilit de crer des bibliothques d'usinage spcifiques
Economie de capacit mmoire
Remarque
Dans le langage CN SINUMERIK, aucune distinction n'est faite entre majuscules et
minuscules.
Notions complmentaires
146 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
2. _N_SUB_PROG
3. SUB_PROG_SPF
4. _N_SUB_PROG_SPF
Remarque
Noms identiques pour programmes principaux et sous-programmes
Si des programmes principaux (.MPF) et des sous-programmes (.SPF) portent le mme nom
de programme, il faut indiquer le postfixe respectif lors de l'utilisation du nom de programme
dans le programme pice, afin d'identifier de manire univoque le programme.
Niveaux d'imbrication
Le langage CN met actuellement disposition 16 niveaux de programme. Le programme
principal s'excute toujours dans le niveau de programme suprieur, le niveau 0. Un sous-
programme s'excute toujours dans le niveau de programme directement infrieur conscutif
l'appel. Le niveau de programme 1 correspond ainsi au premier niveau de sous-
programme.
Cloisonnement des niveaux de programme :
Niveau de programme 0 : Niveau de programme principal
Niveau de programme 1 - 15 : Niveau de sous-programme 1 - 15
1LYHDX[GHSURJUDPPHPD[
3URJU
SULQF 6RXV
SURJU 6RXV
SURJU
... 6RXV
... SURJU
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 147
Programmation CN flexible
1.25 Technique des sous-programmes
Cycles Siemens
Les cycles Siemens requirent 3 niveaux de programme. L'appel d'un cycle Siemens doit
donc tre ralis au plus tard lors de :
l'excution du programme pice : niveau de programme 12
la routine d'interruption : niveau de programme 14
Notions complmentaires
148 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Paramtres formels
Lors de la dfinition d'un sous-programme, les paramtres transfrer au sous programme,
appels paramtres formels, doivent tre dfinis avec leur type et nom de paramtre.
Les paramtres formels dfinissent ainsi l'interface du sous-programme.
Exemple :
Paramtres effectifs
A l'appel d'un sous-programme, des valeurs absolues ou variables, appels paramtres
formels, doivent tre transfres au sous-programme.
Les paramtres effectifs fournissent ainsi des valeurs effectives l'interface du sous-
programme.
Exemple :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 149
Programmation CN flexible
1.25 Technique des sous-programmes
Programme principal :
Exemples d'appel de sous-programme dans N30, avec indication complte des paramtres :
Notions complmentaires
150 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
PRUDENCE
Transfert de paramtres de type Call-by-Reference
Les paramtres transfrs via Call-by-Reference ne doivent pas tre omis l'appel du
sous-programme.
PRUDENCE
Type de donnes AXIS
Les paramtres du type de donnes AXIS ne doivent pas tre omis l'appel du sous-
programme.
Programmation Commentaire
PROC SUB_PROG (REAL X, REAL Y, REAL Z) ; Paramtres formels : X, Y et Z.
N20 IF $P_SUBPAR[1]==TRUE ; Vrification du 1er paramtre formel
X.
... ; Ces actions sont ralises si le
paramtre formel X a t transfr de
manire explicite.
N40 ELSE
... ; Ces actions sont ralises si le
paramtre formel X n'a pas t
transfr.
N60 ENDIF
... ; Actions gnrales
N100 RET
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 151
Programmation CN flexible
1.25 Technique des sous-programmes
Fonction
Dans le cas de la dfinition de sous-programmes sans transfert de paramtres, la ligne de
dfinition au dbut du programme n'est pas ncessaire.
Syntaxe
Signification
Exemple
Exemple 1 : Sous-programme avec l'instruction PROC
Notions complmentaires
152 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Fonction
La dfinition d'un sous-programme avec transfert de paramtres Call-by-Value s'effectue
avec le mot-cl PROC, suivi du nom de programme et d'une liste complte de tous les
paramtres attendus par le sous-programme, y compris le type et le nom. L'instruction de
dfinition doit figurer dans la premire ligne du programme.
Le transfert de paramtres Call-by-Value n'a pas d'effets sur le programme appelant. Le
programme appelant transfre simplement les valeurs des paramtres effectifs au sous-
programme.
3URJUDPPHSULQFLSDO
DIIHFWDWLRQG
XQHYDOHXU
/21*
/$5* 6RXVSURJUDPPH
/21*/$5*
QRXYHOOHDIIHFWDWLRQ
GHYDOHXU
/21*8(85
/$5*(85
QRXYHOOHV
YDOHXUV
WRXWHVOHV
YDOHXUV
YDOLGHV
Remarque
Il est possible de transfrer au maximum 127 paramtres.
Syntaxe
PROC <nom de programme> (<type de paramtre> <nom de paramtre>,
...)
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 153
Programmation CN flexible
1.25 Technique des sous-programmes
IMPORTANT
Le nom de programme indiqu aprs le mot-cl PROC doit correspondre avec le nom de
programme attribu dans l'interface utilisateur.
Exemple
Dfinition d'un sous-programme avec 2 paramtres de type REAL :
Notions complmentaires
154 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Fonction
La dfinition d'un sous-programme avec transfert de paramtres Call-by-Reference
s'effectue avec le mot-cl PROC, suivi du nom de programme et d'une liste complte de tous
les paramtres de type VAR attendus par le sous-programme, y compris le type et le nom.
L'instruction de dfinition doit figurer dans la premire ligne du programme.
Le transfert de paramtres Call-by-Reference permet galement de transfrer des
rfrences des tableaux.
Le transfert de paramtres Call-by-Reference a des d'effets sur le programme appelant. Le
programme appelant transfre au sous-programme une rfrence au paramtre effectif et lui
permet ainsi d'accder directement la variable correspondante.
3URJUDPPHSULQFLSDO
DIIHFWDWLRQGH
YDOHXU
/21*8(85
/$5*(85 6RXVSURJUDPPH
/21*8(85/$5*(85
QRXYHOOHDIIHFWDWLRQ
GHYDOHXU
/21*8(85
/$5*(85
QRXYHOOHV
YDOHXUV
YDOLGHV
/21*8(85/$5*(85
QRXYHOOHV
YDOHXUV
YDOLGHV
Remarque
Il est possible de transfrer au maximum 127 paramtres.
Remarque
Un transfert de paramtres Call-by-Reference est uniquement ncessaire si la variable
transmise a t dfinie dans le programme appelant (LUD). Il n'est pas ncessaire de
transfrer les variables globales du canal ou la CN, car il est possible d'y accder
directement partir du sous-programme.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 155
Programmation CN flexible
1.25 Technique des sous-programmes
Syntaxe
PROC <nom de programme> (VAR <type de paramtre> <nom de paramtre>,
...)
PROC <nom de programme> (VAR <type de tableau> <nom de tableau>
[<m>,<n>,<o>], ...)
Signification
IMPORTANT
Le nom de programme indiqu aprs le mot-cl PROC doit correspondre avec le nom de
programme attribu dans l'interface utilisateur.
Remarque
L'utilisation de tableaux de longueur indtermine en tant que paramtres formels permet
aux sous-programmes de traiter des tableaux de longueur variable. A cet effet, la longueur
de la premire dimension n'est p. ex. pas indique dans la dfinition d'un tableau
bidimensionnel utilis en tant que paramtre formel. Par contre, la virgule doit y figurer.
Exemple : PROC <nom de programme> (VAR REAL FELD[ ,5])
Exemple
Dfinition d'un sous-programme avec 2 paramtres comme rfrence au type REAL :
Code de programme Commentaire
PROC SUB_PROG(VAR REAL LONGUEUR, VAR REAL ; Paramtre 1 : Rfrence au type : REAL, nom : LONGUEUR
LARGEUR) Paramtre 2 : Rfrence au type : REAL, nom : LARGEUR
...
N100 RET
Notions complmentaires
156 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Fonction
Avec l'attribut SAVE, les fonctions G modales actives avant l'appel du sous-programme sont
sauvegardes, puis ractives la fin du sous-programme.
PRUDENCE
Interruption du contournage
Si un sous-programme avec l'attribut SAVE est appel alors que le contournage est actif, le
contournage est interrompu la fin du sous-programme (saut de retour).
Syntaxe
PROC <non de sous-programme> SAVE
Signification
Exemple
La fonction G modale G91 (cote relative) est active dans le sous-programme CONTOUR. La
fonction G modale G90 (cote absolue) est active dans le programme principal. En raison de
la dfinition de SAVE dans le sous-programme, G90 agit de nouveau dans la programme
principal aprs la fin du sous-programme.
Dfinition de sous-programme :
Programme principal :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 157
Programmation CN flexible
1.25 Technique des sous-programmes
Contraintes
Frames
Dans le cas de sous-programmes avec l'attribut SAVE, le comportement des frames dpend
du type de frame et se rgle dans les paramtres machine.
Bibliographie
Description fonctionnelle Fonctions de base ; Axes, Systmes de coordonnes, Frames (K2)
Chapitre : "Retour de sous-programme avec SAVE"
Fonction
Inhibition du bloc par bloc pour l'ensemble du programme
Les programmes identifis par SBLOF sont excuts en entier comme un bloc lorsque
l'excution bloc par bloc est active, autrement dit l'excution bloc par bloc est inhibe pour
l'ensemble du programme.
SBLOF figure dans la ligne PROC et est actif jusqu' la fin ou l'abandon du sous-programme.
Linstruction de retour permet de dterminer si lexcution doit ou non tre interrompue la
fin du sous-programme :
Syntaxe
Inhibition du bloc par bloc pour l'ensemble du programme :
PROC ... SBLOF
Inhibition du bloc par bloc l'intrieur du programme :
SBLOF
...
SBLON
Notions complmentaires
158 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Signification
Conditions marginales
Inhibition du bloc par bloc et affichage de bloc
DISPLOF permet d'inhiber l'affichage du bloc courant dans les cycles/sous-programmes. Si
DISPLOF est programm en liaison avec SBLOF, l'appel de cycle/sous-programme est
encore affich en cas d'arrts bloc par bloc dans le cycle/sous-programme.
Inhibition du bloc par bloc dans l'ASUP systme ou l'ASUP utilisateur
Si l'arrt bloc par bloc est inhib dans l'ASUP systme ou utilisateur par les rglages du
paramtre machine MD10702 $MN_IGNORE_SINGLEBLOCK_MASK (bit0 = 1 et bit1 =
1), la programmation de SBLON permet de ractiver l'arrt bloc par bloc dans l'ASUP.
Si l'arrt bloc par bloc est inhib dans l'ASUP utilisateur par le rglage du paramtre
machine MD20117 $MC_IGNORE_SINGLEBLOCK_ASUP, il n'est pas possible de
ractiver l'arrt bloc par bloc dans l'ASUP en programmant SBLON.
Particularits de l'inhibition du bloc par bloc pour les diffrents types d'excution bloc par
bloc
Lorsque l'excution bloc par bloc SBL2 (arrt aprs chaque bloc du programme pice)
est active, il n'y a pas d'arrt dans le bloc SBLON si le bit 12 est mis "1" dans le
paramtre machine MD10702 $MN_IGNORE_SINGLEBLOCK_MASK (inhibition de l'arrt
bloc par bloc).
Lorsque l'excution bloc par bloc SBL3 (arrt aprs chaque bloc du programme pice
mme dans un cycle), l'instruction SBLOF est inhibe.
Exemples
Exemple 1 : Inhibition du bloc par bloc l'intrieur d'un programme
En mode bloc par bloc, la section de programme entre N20 et N60 est excute comme un
pas.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 159
Programmation CN flexible
1.25 Technique des sous-programmes
Code de programme
N10 G1 X10 G90 F200
N20 X-4 Y6
N30 CYCLE1
N40 G1 X0
N50 M30
CYCLE1 :
Le CYCLE1 est excut lorsque l'excution bloc par bloc est active, cest--dire que la
touche Start doit tre active une fois pour le traitement du CYCLE1.
Exemple 3 :
Un ASUP lanc par l'AP pour l'activation de dcalages d'origine et de corrections d'outil
modifis ne doit pas tre visible.
Code de programme
N100 PROC NV SBLOF DISPLOF
N110 CASE $P_UIFRNUM OF 0 GOTOF _G500
1 GOTOF _G54
2 GOTOF _G55
3 GOTOF _G56
4 GOTOF _G57
DEFAULT GOTOF END
N120 _G54: G54 D=$P_TOOL T=$P_TOOLNO
N130 RET
N140 _G54: G55 D=$P_TOOL T=$P_TOOLNO
N150 RET
N160 _G56: G56 D=$P_TOOL T=$P_TOOLNO
N170 RET
N180 _G57: G57 D=$P_TOOL T=$P_TOOLNO
N190 RET
N200 END: D=$P_TOOL T=$P_TOOLNO
N210 RET
Notions complmentaires
160 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Exemple 4 : Lorsque le bit 12 = 1 dans le paramtre machine MD10702, il n'y a pas d'arrt.
Situation de dpart :
L'excution bloc par bloc est active.
MD10702 $MN_IGNORE_SINGLEBLOCK_MASK Bit12 = 1
Programme principal :
CYCLE :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 161
Programmation CN flexible
1.25 Technique des sous-programmes
Exemple 5 : Inhibition du bloc par bloc dans le cas d'un programme imbriqu
Situation de dpart :
L'excution bloc par bloc est active.
Imbrication de programmes :
Notions complmentaires
162 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Autres informations
Blocage du bloc par bloc pour des sous-programmes asynchrones
Pour excuter un sous-programme asynchrone bloc par bloc en une seule tape, il est
ncessaire de programmer une instruction PROC avec SBLOF dans ce sous-programme
asynchrone. Ceci est galement valable pour la fonction "ASUP systme modifiable"
(MD11610 $MN_ASUP_EDITABLE).
Exemple d'ASUP systme modifiable :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 163
Programmation CN flexible
1.25 Technique des sous-programmes
Fonction
Le bloc courant du programme s'affiche par dfaut. Dans les cycles ou sous-programmes,
l'affichage du bloc courant peut tre inhib par l'instruction DISPLOF. C'est l'appel du cycle ou
du sous-programme qui s'affiche alors la place du bloc courant. L'instruction DISPLON
permet d'annuler l'inhibition de l'affichage du bloc courant.
DISPLOF ou DISPLON sont programmes dans la ligne de programme avec l'instruction PROC et
s'appliquent l'ensemble du sous-programme et, implicitement, tous les sous-programmes
appels par celui-ci et ne contenant pas d'instruction DISPLON ou DISPLOF. Ce comportement
s'applique galement aux ASUP.
Syntaxe
PROC DISPLOF
PROC DISPLOF ACTBLOCNO
PROC DISPLON
Signification
DISPLOF : Instruction d'inhibition de l'affichage du bloc courant.
Positionnem A la fin de la ligne de programme avec l'instruction PROC
ent :
Prise Jusqu'au retour depuis le sous-programme ou la fin du
d'effet : programme.
Nota :
si, avec l'instruction DISPLOF, vous appelez d'autres sous-programmes
depuis le sous-programme, l'affichage du bloc courant y sera galement
inhib, condition que DISPLON n'y soit pas programme de manire
explicite.
DISPLON : Instruction d'annulation de l'inhibition de l'affichage du bloc courant
Positionnem A la fin de la ligne de programme avec l'instruction PROC
ent :
Prise Jusqu'au retour depuis le sous-programme ou la fin du
d'effet : programme.
Nota :
si, avec l'instruction DISPLON, vous appelez d'autres sous-programmes
depuis le sous-programme, le bloc de programme courant s'y affiche
galement, condition que DISPLOF n'y soit pas programme de manire
explicite.
ACTBLOCNO : Utilis avec l'attribut ACTBLOCNO, DISPLOF a pour effet d'afficher le numro
du bloc courant dans lequel une ventuelle alarme est survenue. Ceci
est galement valable lorsque DISPLOF est programm seul dans un
niveau de programme infrieur.
Lorsque DISPLOF est programm sans ACTBLOCNO, c'est par contre le
numro de bloc de l'appel de cycle ou de sous-programme du dernier
niveau de programme sans DISPLOF qui s'affiche.
Notions complmentaires
164 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Exemples
Exemple 1 : Inhibition de l'affichage du bloc courant dans le cycle
Code de programme Commentaire
PROC CYCLE (AXIS TOMOV, REAL ; Inhibition de l'affichage du bloc courant. L'appel de cycle doit
POSITION) SAVE DISPLOF s'afficher sa place, p. ex. : CYCLE(X,100.0)
DEF REAL DIFF ; Contenu du cycle
G01 ...
...
RET ; Retour de sous-programme. Le bloc qui suit l'appel du cycle s'affiche.
Programme principal :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 165
Programmation CN flexible
1.25 Technique des sous-programmes
Notions complmentaires
166 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
1LYHDXGHSURJUDPPHb
+3
VDQV 83
352& 83
352& 83
',63/2) VDQV 83
352&
352& 352& $683
',63/21 83
',63/2) 352& 83
352&
',63/2) 352& 83
',63/2) 83
',63/21 VDQV
352& 352&
',63/2)
+3b3URJUDPPHSULQFLSDO
83b6RXVSURJUDPPH
$683b6RXVSURJUDPPHDV\QFKURQHURXWLQHG
LQWHUUXSWLRQ
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 167
Programmation CN flexible
1.25 Technique des sous-programmes
Fonction
Le mot-cl PREPRO permet d'identifier tous les fichiers pendant le dmarrage ralis la fin de
la ligne d'instruction PROC.
Remarque
Ce prtraitement de programme dpend des paramtres machine configurs. Veuillez tenir
compte des indications du constructeur de la machine.
Bibliographie :
Description fonctionnelle Fonctions spciales ; Conditionnement (V2)
Syntaxe
PROC PREPRO
Signification
Notions complmentaires
168 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Fonction
A la fin d'un sous-programme, on trouve l'instruction de retour M17 (ou l'instruction de fin du
programme pice M30). Elle entrane le retour dans le programme appelant sur le bloc du
programme pice suivant l'appel du sous-programme.
Remarque
M17 et M30 sont traits de la mme manire dans le langage CN.
Syntaxe
Conditions marginales
effet du retour du sous-programme sur le mode contournage
Si M17 (ou M30) figure seul dans le bloc du programme pice, un contournage actif dans le
canal est interrompu.
Pour viter l'interruption du contournage, M17 (ou M30) doit galement tre inscrit dans le
dernier bloc de dplacement. De plus, le paramtre machine suivant doit tre mis sur "0" :
MD20800 $MC_SPF_END_TO_VDI = 0 (pas de sortie M30/M17 dans l'interface CN/AP)
Exemple
1. Sous-programme avec M17 dans un bloc spcifique
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 169
Programmation CN flexible
1.25 Technique des sous-programmes
Fonction
A la place de l'instruction de M17, il est galement possible d'utiliser l'instruction RET dans le
sous-programme. RET doit tre programme dans un bloc spcifique du programme pice.
Comme M17, RET entrane le retour dans le programme appelant sur le bloc du programme
pice suivant l'appel du sous-programme.
Remarque
La programmation de paramtres permet de modifier le comportement de retour de RET (voir
"Retour paramtrable dans les sous-programmes (RET ...) (Page 171)").
Application
L'instruction RET doit tre utilise lorsqu'un contournage G64 (G641 ... G645) ne doit pas tre
interrompu par le saut de retour.
Condition
L'instruction RET peut uniquement tre utilise dans des sous-programmes n'ayant pas t
dfinis avec l'attribut SAVE.
Syntaxe
Exemple
Programme principal :
Notions complmentaires
170 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Sous-programme :
Fonction
Depuis un sous-programme, le retour dans le programme depuis lequel le sous-programme
a t appel s'effectue gnralement avec une fin de sous-programme RET ou M17,
l'excution reprenant la ligne de programme qui suit l'appel du sous-programme.
Il existe cependant des cas o l'excution du programme doit reprendre un autre endroit.
Par exemple :
Poursuite de l'excution du programme aprs l'appel des cycles de chariotage en dialecte
ISO (aprs la description du contour).
Retour dans le programme principal partir d'un niveau de sous-programmes
quelconque (aprs un sous-programme asynchrone ASUP aussi) pour traiter une erreur.
Retour sur plusieurs niveaux de programme pour des applications spciales dans des
cycles de compilation, en dialecte ISO.
Dans ces cas, l'instruction RET est programme avec des "paramtres de retour".
Syntaxe
RET("<bloc de destination>")
RET("<bloc de destination>",<bloc suivant le bloc de destination>)
RET("<bloc de destination>",<bloc suivant le bloc de destination>,
<nombre de niveaux de retour>)
RET("<bloc de destination>", ,<nombre de niveaux de retour>)
RET("<bloc de destination>",<bloc suivant le bloc de destination>,
<nombre de niveaux de retour>,
<retour au dbut du programme>)
RET (, ,<nombre de niveaux de retour>,<retour au dbut du
programme>)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 171
Programmation CN flexible
1.25 Technique des sous-programmes
Signification
Notions complmentaires
172 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Remarque
Lorsqu'une chane de caractres est indique pour la recherche du bloc de destination d'un
saut de retour de sous-programme, le systme recherche toujours d'abord un repre de saut
dans le programme appelant.
Pour qu'une chane de caractres dfinisse une destination de saut univoque, la chane de
caractres ne doit pas tre identique un nom de repre de saut, le saut de retour de sous-
programme tant sinon toujours effectu sur le repre de saut et non pas sur la chane de
caractres (voir l'exemple 2).
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 173
Programmation CN flexible
1.25 Technique des sous-programmes
Conditions marginales
Lors d'un retour sur plusieurs niveaux de programme, les instructions SAVE des diffrents
niveaux sont values.
Si un sous-programme modal est actif lors d'un retour sur plusieurs niveaux de programme
et que l'instruction de dslection MCALL est programme pour le sous-programme modal
dans l'un des sous-programmes sauts, le sous-programme modal reste actif.
PRUDENCE
Le programmeur doit veiller ce que l'excution reprenne avec les rglages modaux
corrects lors d'un retour sur plusieurs niveaux de programme. Ceci s'obtient, par exemple,
par la programmation d'un bloc principal adquat.
Exemples
Exemple 1 : Retour dans le programme principal aprs lexcution dun sous-programme
asynchrone ASUP
Programmation Commentaire
N10010 CALL "UP1" ; Niveau de programme 0 (programme
principal)
N11000 PROC UP1 ; Niveau de programme 1
N11010 CALL "UP2"
N12000 PROC UP2 ; Niveau de programme 2
...
N19000 PROC ASUP ; Niveau de programme 3 (excution d'un
sous-programme asynchrone ASUP)
...
N19100 RET("N10900", ,$P_STACK) ; Retour dans les sous-programmes
N10900 ; Retour dans le programme principal.
N10910 MCALL ; Dsactivation du sous-programme modal
N10920 G0 G60 G40 M5 ; Correction d'autres rglages modaux.
Notions complmentaires
174 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Sous-programme subProg1 :
Sous-programme subProg2 :
Sous-programme subProg3 :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 175
Programmation CN flexible
1.25 Technique des sous-programmes
Informations complmentaires
Les graphiques suivants mettent en vidence les diffrents effets des paramtres de retour 1
3.
3URJUDPPHSULQFLSDO
6RXVSURJUDPPH
168%
1*
352&68%
1
15(71
1
Notions complmentaires
176 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
3URJUDPPHSULQFLSDO
6RXVSURJUDPPH
168%
1*
352&68%
1
15(7
1
1
1
Aprs l'instruction RET, l'excution du programme reprend au bloc (N210) qui suit le bloc N200
dans programme principal.
QLYHDX[GHSURJUDPPHPD[
3URJU
SULQF
6RXV
SURJU
6RXV
SURJU
6RXV
SURJU
5(71
1
5HWRXU
5HWRXU
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 177
Programmation CN flexible
1.25 Technique des sous-programmes
Fonction
L'appel d'un sous-programme s'effectue soit avec l'adresse L et le numro de sous-
programme, soit par indication du nom du programme.
Un programme principal peut tre appel aussi en tant que sous-programme. Dans ce cas,
la fin du programme M2 ou M30 spcifie dans le programme principal est traite comme M17
(fin du programme avec retour au programme appelant).
Remarque
Inversement, un sous-programme peut galement tre lanc comme programme principal.
Stratgie de recherche de la commande :
*_MPF existe-t-il ?
*_SPF existe-t-il ?
Il en rsulte : si le nom du sous-programme appelant est identique au nom du programme
principal, c'est le programme principal qui sera rappel. Pour viter cet effet qu'on ne dsire
gnralement pas, il convient de nommer sans aucune ambigut les programmes
principaux et les sous-programmes.
Remarque
Des sous-programmes ne ncessitant pas de transfert de paramtres peuvent galement
tre appels partir d'un fichier d'initialisation.
Syntaxe
L<numro>/<nom de programme>
Remarque
L'appel d'un sous-programme doit toujours tre programm dans le bloc CN spcifique.
Notions complmentaires
178 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Signification
Exemples
Exemple 1 : appel d'un sous-programme sans transfert de paramtres
3URJUDPPHSULQFLSDO
1/
RX 6RXVSURJUDPPH
1 WRXULOORQB
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 179
Programmation CN flexible
1.25 Technique des sous-programmes
3URJUDPPHSULQFLSDO
103) VXLWH
RX SURJUDPPHSULQFLSDO
1$5%5(
1
10
Fonction
A l'appel d'un sous-programme avec transfert de paramtres, des variables ou valeurs
peuvent tre transfres directement (sauf pour les paramtres VAR).
Les sous-programmes avec transfert de paramtres doivent tre dclars dans le
programme principal avec l'instruction EXTERN avant leur appel (par exemple en dbut de
programme). Il faut alors indiquer le nom du sous-programme et les types de variables dans
l'ordre du transfert.
PRUDENCE
Les types de variables de mme que l'ordre de transfert doivent correspondre aux
dfinitions dclares sous PROC dans le sous-programme. Les noms des paramtres
peuvent tre diffrents dans le programme principal et le sous-programme.
Syntaxe
Notions complmentaires
180 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
PRUDENCE
Un appel de sous-programme doit toujours tre programm dans un bloc CN spcifique.
Signification
Exemples
Exemple 1 : appel d'un sous-programme avec dclaration pralable
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 181
Programmation CN flexible
1.25 Technique des sous-programmes
3URJUDPPHSULQFLSDO
1(;7(51
&+$66,65($/5($/5($/
1&+$66,6
3URJUDPPHSULQFLSDO
1&+$66,6
/21*8(85/$5*(85352)21'(85
RX
1&+$66,6
Notions complmentaires
182 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Fonction
Si un sous-programme doit tre excut plusieurs fois d'affile, le nombre souhait de
rptitions peut tre programm sous l'adresse P, dans le bloc qui contient l'appel du sous-
programme.
PRUDENCE
Appel de sous-programme avec rptition et transfert de paramtres
Les paramtres sont transfrs uniquement l'appel du sous-programme, c'est--dire lors
de la premire excution. Ils restent inchangs lors des rptitions. Si vous dsirez que les
paramtres soient modifis lors de rptitions, vous devez dfinir des conventions
correspondantes dans le sous-programme.
Syntaxe
<nom du programme> P<valeur>
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 183
Programmation CN flexible
1.25 Technique des sous-programmes
Exemple
3URJUDPPHSULQFLSDO
6RXVSURJUDPPH
1&$'5(3
Notions complmentaires
184 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Fonction
L'appel modal d'un sous-programme avec MCALL excute automatiquement le sous-
programme aprs chaque bloc comportant un dplacement de positionnement. Ceci permet
d'automatiser l'appel de sous-programmes qui doivent tre excuts diffrentes positions
de la pice (par exemple pour la ralisation de rseaux de trous).
La fonction se dsactive avec MCALL sans appel de sous-programme, ou par programmation
d'un nouvel appel modal pour un autre sous-programme.
PRUDENCE
Un seul appel MCALL peut tre actif un instant donne dans l'excution d'un programme.
Les paramtres sont transfrs une seule fois lors de l'appel MCALL.
Dans les conditions suivantes, le sous-programme modal appelle un dplacement mme
sans programmation :
Programmation des adresses S et F lorsque G0 ou G1 est actif.
G0/G1 programm seul dans le bloc ou avec d'autres codes G.
Syntaxe
MCALL <nom de programme>
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 185
Programmation CN flexible
1.25 Technique des sous-programmes
Exemples
Exemple 1 :
3URJUDPPHSULQFLSDO
1*;<
10&$/// 6RXVSURJUDPPH /
1;<
1;<
Exemple 2 :
Code de programme
N10 G0 X0 Y0
N20 MCALL L70
N30 L80
Dans cet exemple, les blocs CN ci-aprs figurent avec des axes interpolation programms
dans le sous-programme L80. L70 est appel par L80.
Notions complmentaires
186 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Fonction
Dans certaines conditions, il peut tre ncessaire de faire appel diffrents sous-
programmes un endroit donn du programme. Pour ce faire, indiquer le nom du sous-
programme dans une variable du type STRING. L'appel du sous-programme s'effectue avec
CALL et le nom de la variable.
PRUDENCE
L'appel indirect de sous-programme ne s'adresse qu' des sous-programmes sans
transfert de paramtres. Pour l'appel direct d'un sous-programme, rangez le nom de ce
dernier dans une constante de type STRING.
Syntaxe
CALL <nom_de_programme>
Signification
Exemple
Appel direct avec constante de type STRING :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 187
Programmation CN flexible
1.25 Technique des sous-programmes
Fonction
Avec CALL et la combinaison de mots-cls BLOCK ... TO, un sous-programme est appel
indirectement et la section de programme repre par repres de dbut et de fin est
excute.
Syntaxe
CALL <nom de programme> BLOCK <repre de dbut> TO <repre de fin>
CALL BLOCK <repre de dbut> TO <repre de fin>
Signification
Notions complmentaires
188 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Exemple
Programme principal :
Sous-programme :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 189
Programmation CN flexible
1.25 Technique des sous-programmes
Fonction
ISOCALL permet d'appeler de faon indirecte un programme programm en langage ISO.
L'appel active le mode ISO rgl dans les paramtres machine. Le mode d'usinage initial est
rtabli la fin du programme. En l'absence du mode ISO dans les paramtres machine,
l'appel du sous-programme s'effectuera en mode Siemens.
Pour de plus amples informations sur le mode ISO, voir :
Bibliographie :
Description fonctionnelle Dialectes ISO
Syntaxe
ISOCALL <nom_programme>
Signification
Exemple : Appel d'un contour avec programmation de cycles depuis le mode ISO
...
N2000 R11 = $AA_IW[X]
N2010 ISOCALL NOM_PROG
N2020 R10 = R10+1 ; Excution du programme 0122.spf
en mode ISO
...
N2400 M30
Notions complmentaires
190 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Fonction
PCALL permet d'appeler des sous-programmes avec indication de chemin absolu et transfert
de paramtres.
Syntaxe
PCALL <chemin/nom de programme>(<paramtre 1>, ,<paramtre n>)
Signification
Exemple
Code de programme
PCALL/_N_WKS_DIR/_N_ARBRE_WPD/ARBRE(paramtre1,paramtre2, )
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 191
Programmation CN flexible
1.25 Technique des sous-programmes
Fonction
L'instruction CALLPATH permet d'tendre le chemin de recherche pour l'appel de sous-
programmes.
Ainsi il est galement possible d'appeler des sous-programmes d'un rpertoire pice qui
n'est pas slectionn, sans indication complte du chemin absolu du sous-programme.
L'extension du chemin de recherche s'effectue avant l'entre des cycles utilisateur
(_N_CUS_DIR).
Les vnements suivants annulent de nouveau l'extension du chemin de recherche :
CALLPATH avec espace
CALLPATH sans paramtre
Fin de programme pice
Reset
Syntaxe
CALLPATH("<chemin>")
Signification
Notions complmentaires
192 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Exemple
Code de programme
CALLPATH ("/_N_WKS_DIR/_N_MYWPD_WPD")
Le rglage du chemin de recherche est alors le suivant (le point 5 est nouveau) :
1. Rpertoire courant/descripteur du sous-programme
2. Rpertoire courant/descripteur du sous-programme_SPF
3. Rpertoire courant/descripteur du sous-programme_MPF
4. /_N_SPF_DIR/descripteur du sous-programme_SPF
5. /_N_WKS_DIR/_N_MYWPD/descripteur du sous-programme_SPF
6. /N_CUS_DIR/_N_MYWPD/descripteur du sous-programme_SPF
7. /_N_CMA_DIR/descripteur du sous-programme_SPF
8. /_N_CST_DIR/descripteur du sous-programme_SPF
Conditions marginales
CALLPATH vrifie l'existence relle du chemin programm. En cas d'erreur, l'excution du
programme pice est annule avec l'alarme de correcteur 14009.
CALLPATH peut galement tre programm dans les fichiers INI. L'instruction est alors
active pendant la dure d'excution du fichier INI (fichier WPD-INI ou programme
d'initialisation de donnes actives CN, par exemple frames dans le 1er canal
_N_CH1_UFR_INI). Puis le chemin de recherche est de nouveau annul.
Fonction
L'instruction EXTCALL permet de recharger et d'excuter un sous-programme partir d'une
mmoire programme externe (lecteur local, lecteur rseau, lecteur USB).
Le chemin vers le rpertoire de sous-programmes externes peut tre prrgl par la donne
de rglage :
SD42700 $SC_EXT_PROG_PATH
Avec le chemin vers le sous-programme ou le descripteur spcifi lors de l'appel EXTCALL on
obtient le chemin global du programme a appeler.
Remarque
Les sous-programmes externes ne doivent pas contenir d'instructions de saut telles que
GOTOF, GOTOB, CASE, FOR, LOOP, WHILE ou REPEAT.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 193
Programmation CN flexible
1.25 Technique des sous-programmes
Syntaxe
EXTCALL("<chemin/><nom de programme>")
Signification
Remarque
Spcification du chemin : dsignations abrges
Les dsignations abrges suivantes peuvent tre utilises lors de la spcification du
chemin :
LOCAL_DRIVE : pour lecteur local
CF_CARD : pour carte CompactFlash
USB : pour connexion USB en face avant
CF_CARD : et LOCAL_DRIVE : peuvent tre utiliss de faon alternative.
Remarque
Excution d'un programe externe via lecteur USB
Le transfert de programmes externes partir d'un lecteur USB externe via une interface
USB ne doit tre effectu que par le biais de l'interface X203 avec le nom "TCU_1".
IMPORTANT
Excution d'un programe externe via cl USB (sur connexion USB en face avant)
L'excution directe depuis une cl USB est dconseille.
Il n'existe aucune protection contre les problmes de contact, la dconnexion ou le retrait
accidentel de la cl USB pendant le fonctionnement.
Une dconnexion pendant lusinage dune pice provoque un arrt immdiat de l'usinage,
la pice tant par consquent endommage.
Notions complmentaires
194 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
Exemple
Excution depuis le lecteur local
Programme principal :
Code de programme
N010 PROC MAIN
N020 ...
N030 EXTCALL ("EBAUCHE")
N040 ...
N050 M30
Sous-programme externe :
Code de programme
N010 PROC EBAUCHE
N020 G1 F1000
N030 X= ... Y= ... Z= ...
N040 ...
...
...
N999999 M17
Remarque
Sans spcification du chemin dans le SD42700, l'instruction EXTCALL pour cet exemple
devrait tre programme comme suit :
EXTCALL("LOCAL_DRIVE:WKS.DIR/WST1.WPD/EBAUCHE")
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 195
Programmation CN flexible
1.25 Technique des sous-programmes
Informations complmentaires
Appel EXTCALL avec chemin absolu
Si le sous-programme existe sous le chemin spcifi, il est excut par l'appel EXTCALL. S'il
n'existe pas, l'excution du programme est abandonne.
Appel EXTCALL avec chemin relatif / sans chemin
Lors d'un appel EXTCALL avec chemin relatif ou sans chemin, les mmoires de programme
prsentes sont parcourues selon le modle suivant :
Lorsqu'un chemin par dfaut est spcifi dans SD42700 $SC_EXT_PROG_PATH, la
recherche s'effectue, dans un premier temps, partir de cet endroit l'aide de l'indication
fournie dans l'appel EXTCALL (nom du programme avec chemin relatif, le cas chant). Le
chemin absolu est dtermin alors par concatnation de chanes :
le chemin prrgl dans le SD42700
le caractre "/" comme caractre de sparation
et du chemin du sous-programme ou du descripteur du sous-programme, indiqu
dans EXTCALL.
Si le sous-programme appel n'est pas trouv sous le chemin prrgl, la recherche
s'effectue dans les rpertoires du disque de l'utilisateur selon les indications de l'appel
EXTCALL.
Bibliographie
Pour plus d'informations sur l'"Excution d'un programme externe", se rfrer la :
Description fonctionnelle Fonctions de base ; GMFC, Canal, Mode de programme,
Comportement au reset (K1)
Notions complmentaires
196 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
1.25.4 Cycles
Fonction
Des cycles utilisateur peuvent tre paramtrs l'aide des fichiers cov.com et uc.com.
Le fichier cov.com est livr avec des cycles standard et peut tre tendu. Le fichier uc.com
doit tre cr par l'utilisateur.
Ces deux fichiers doivent tre chargs dans le systme passif de fichiers, dans le rpertoire
"Cycles utilisateur" ou pourvus de l'indication correspondante de chemin :
;$PATH=/_N_CUS_DIR
dans le programme.
Syntaxe
Pour tout nouveau cycle ajouter, il y a lieu d'insrer une ligne dont la syntaxe est la
suivante :
C<Numro> (<Nom du cycle>) Texte de commentaire
Numro : un nombre entier quelconque qui n'a pas encore t utilis dans le fichier ;
Nom du cycle : le nom du cycle insrer
Texte de commentaire : un commentaire au choix, relatif au cycle
Exemple :
C25 (MON_CYCLE_1) Cycle_utilisateur_1
C26 (CYCLE_SPECIAL)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 197
Programmation CN flexible
1.25 Technique des sous-programmes
Programmation Commentaire
PROC MON_CYCLE_1 (REAL PAR1, INT PAR2, CHAR PAR3, STRING[10] PAR4)
Le cycle contient les paramtres suivants :
PAR1 : ; Rel compris dans la plage -1000.001 <= PAR2 <= 123.456,
prrglage 100
PAR2 : ; Nombre entier positif compris dans la plage 0 <= PAR3 <=
999999, prrglage 0
PAR3 : ; 1 caractre ASCII
PAR4 : ; Chane de caractres de longueur 10 pour un nom de sous-
programme
...
M17 ;
Programmation Commentaire
PROC CYCLE_SPECIAL (REAL VALEUR1, INT VALEUR2)
Le cycle contient les paramtres suivants :
VALEUR1 : ; rel sans limitation de plage de valeurs ni prrglage
VALEUR2 : ; Nombre entier sans limitation de plage de valeurs ni
prrglage
...
M17 ;
Programmation
%_N_UC_COM
;$PATH=/_N_CUS_DIR
//C25(MON_CYCLE_1) Cycle_utilisateur_1
(R/-1000.001 123.456 / 100 /paramtre_2 du cycle)
(I/0 999999 / 1 / nombre entier)
(C//"A" / caractre)
(S///nom du sous-programme)
//C26(CYCLE_SPECIAL)
(R///longueur totale)
(I/*123456/3/type d'usinage)
M17
Notions complmentaires
198 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.25 Technique des sous-programmes
3DUDPWUHGXF\FOH
QRPEUHHQWLHU
FDUDFWUH
VRXVSURJUDPPHV
/RQJXHXUWRWDOH
7\SHGXVLQDJH
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 199
Programmation CN flexible
1.25 Technique des sous-programmes
R pour Real
I pour Integer
C pour un caractre
S pour une chane de caractres
Notions complmentaires
200 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.26 Macroprogrammation (DEFINE ... AS)
PRUDENCE
Les macro-instructions peuvent entraner une forte modification du langage de
programmation de la CN ! Par consquent, utiliser les macro-instructions avec prcaution !
Fonction
Une macro-instruction runit diffrentes instructions en une nouvelle instruction globale qui a
son propre nom. Des fonctions G, M et H et des sous-programmes L peuvent galement
tre dfinis sous forme de macro-instructions. En appelant la macro-instruction pendant
l'excution du programme, les instructions programmes dans la macro-instruction sont
excutes l'une aprs l'autre.
Application
Les suites d'instructions qui reviennent souvent sont programmes en une seule fois sous la
forme d'une macro-instruction dans un bloc spcifique (fichier de macro-instructions) ou bien
une seule fois en dbut de programme. La macro-instruction peut alors tre appele et
excute dans tout programme principal ou sous-programme.
Activation
Pour pouvoir utiliser les macro-instructions d'un fichier de macro-instructions dans le
programme CN, il faut charger ce fichier dans la CN.
Syntaxe
Dfinition d'une macro-instruction :
DEFINE <non de macro> AS <instruction 1> <instruction 2> ...
Appel dans le programme CN :
<Nom de macro>
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 201
Programmation CN flexible
1.26 Macroprogrammation (DEFINE ... AS)
PRUDENCE
Les mots-cls et les noms rservs ne doivent pas tre dfinis en surnombre avec des
macro-instructions.
Conditions marginales
L'imbrication de macro-instructions n'est pas possible.
Exemples
Exemple 1 : Macro-instruction dfinie en dbut de programme
Notions complmentaires
202 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmation CN flexible
1.26 Macroprogrammation (DEFINE ... AS)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 203
Programmation CN flexible
1.26 Macroprogrammation (DEFINE ... AS)
Notions complmentaires
204 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Gestion des fichiers et programmes 2
2.1 Mmoire de programmes
Fonction
Les fichiers et programmes (p. ex. programmes principaux et sous-programmes, dfinitions
de macros) sont stocks de manire permanente dans la mmoire de programme (
systme de fichiers passif).
Bibliographie :
Description fonctionnelle Fonctions d'extension ; configuration de la mmoire (S7)
A cot de ceux-ci, il y a un certain nombre de types de fichiers qui peuvent y tre stocks de
faon provisoire pour tre transfrs, sur demande (par exemple lors de la ralisation d'une
pice dtermine) dans la mmoire de travail (par exemple pour des raisons d'initialisation).
0PRLUHGHSURJUDPPHV
B1B:(//(B03) B1B03)B03)
B1B3$57B03) B1B/B63)
B1B3$57B63) B1BB
B1B3$57B63)
B1B:(//(B,1,
B1B:(//(B6($
B1B3$57B,1,
B1B3$57B8)5
1RPVQRLUVH[LVWDQWVHWIL[HV
B1B3$57B&20
1RPVJULVDWWULEXVSDUO
XWLOLVDWHXU B1B:(//(
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 205
Gestion des fichiers et programmes
2.1 Mmoire de programmes
Rpertoires standard
Les rpertoires suivants sont crs en version standard :
Rpertoire Contenu
_N_DEF_DIR Blocs de donnes et blocs de macros
_N_CST_DIR Cycles standard
_N_CMA_DIR Cycles constructeur
_N_CUS_DIR Cycles utilisateur
_N_WKS_DIR Pices
_N_SPF_DIR Sous-programmes globaux
_N_MPF_DIR Programmes principaux
_N_COM_DIR Commentaires
Types de fichiers
Les types de fichiers suivants peuvent tre introduits dans la mmoire de programmes :
Notions complmentaires
206 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Gestion des fichiers et programmes
2.1 Mmoire de programmes
Fichier Description
_N_ARBRE_MPF Programme principal
_N_PART2_MPF Programme principal
_N_PART1_SPF Sous-programme
_N_PART2_SPF Sous-programme
_N_ARBRE_INI Programme gnral d'initialisation des donnes pour la pice
_N_ARBRE_SEA Programme d'initialisation des donnes de rglage
_N_PART2_INI Programme gnral d'initialisation des donnes pour le programme partie 2
_N_PART2_UFR Programme d'initialisation des donnes frame pour le programme { partie 2
_N_ARBRE_COM Fichier de commentaires
Code de programme
%_N_ARBRE_MPF
; $PATH=/_N_WKS_DIR/_N_ARBRE_WPD
N10 G0 X Z
...
M2
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 207
Gestion des fichiers et programmes
2.1 Mmoire de programmes
Code de programme
%_N_ARBRE_SPF
...
M17
Code de programme
...
CALL"/_N_CST_DIR/_N_CYCLE1_SPF"
...
Code de programme
...
CYCLE1
...
Notions complmentaires
208 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Gestion des fichiers et programmes
2.1 Mmoire de programmes
Selon le programme appel, les rpertoires sont parcourus dans l'ordre suivant :
N Rpertoire Description
1 rpertoire courant / nom Rpertoire pice ou rpertoire standard _N_MPF_DIR
2 rpertoire courant / nom_SPF
3 rpertoire courant / nom_MPF
4 /_N_SPF_DIR / nom_SPF Sous-programmes globaux
5 /_N_CUS_DIR / nom_SPF Cycles utilisateur
6 /_N_CMA_DIR / nom_SPF Cycles constructeur
7 /_N_CST_DIR / nom_SPF Cycles standard
Code de programme
CALLPATH ("/_N_WKS_DIR/_N_MYWPD_WPD")
...
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 209
Gestion des fichiers et programmes
2.2 Mmoire de travail (CHANDATA, COMPLETE, INITIAL)
Fonction
La mmoire de travail contient les donnes systme et les donnes utilisateur courantes qui
permettent la commande de fonctionner (systme actif de fichiers). Par exemple :
Paramtres machine actifs
Donnes de correction d'outil
Dcalages d'origine
...
programmes d'initialisation
Les programmes d'initialisation servent l'initialisation des donnes de la mmoire de
travail. Les types de fichier suivants peuvent tre utiliss :
Zones de donnes
Vous pouvez intgrer les donnes dans diffrentes zones au sein desquelles elles doivent
tre valides. Ainsi, une commande peut disposer de plusieurs canaux ou, d'une manire
gnrale, galement de plusieurs axes.
La rpartition est la suivante :
Notions complmentaires
210 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Gestion des fichiers et programmes
2.2 Mmoire de travail (CHANDATA, COMPLETE, INITIAL)
PRUDENCE
Instruction CHANDATA
Dans le programme pice, l'instruction CHANDATA ne peut tre utilise que pour le canal dans
lequel le programme est excut ; c'est--dire que l'instruction peut tre utilise pour
protger le programme CN contre l'excution dans un canal non prvu cet effet.
En cas d'erreur, l'excution du programme est abandonne.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 211
Gestion des fichiers et programmes
2.2 Mmoire de travail (CHANDATA, COMPLETE, INITIAL)
Remarque
Les fichiers INI dans des listes de tches ne contiennent pas d'instruction CHANDATA.
IMPORTANT
Aprs le chargement du fichier "INITIAL_INI", tous les paramtres qui ne sont pas dfinis
dans le fichier sont initialiss avec des paramtres par dfaut, except les paramtres
machine. Les donnes de rglage, donnes d'outil, dcalages d'origine, valeurs GUD, ...
sont donc rgls des valeurs par dfaut (normalement "ZERO").
Notions complmentaires
212 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Gestion des fichiers et programmes
2.3 Instruction structurelle dans l'diteur Step (SEFORM)
Fonction
L'instruction structurelle SEFORM est traite dans l'diteur Step (aide la programmation avec
l'diteur) pour gnrer la vue squentielle dans le logiciel HMI Advanced. La vue
squentielle amliore la lisibilit du sous-programme CN.
Syntaxe
SEFORM(<nom de section>,<niveau>,<icne>)
Signification
SEFORM()
Appel de l'instruction structurelle avec les paramtres <nom de
section>, <niveau> et <icne>
<Nom de section>
Descripteur de l'opration d'usinage
Type : STRING
<Niveau>
Indice du niveau principal ou du niveau infrieur
Type : INT
Valeur : 0 Niveau principal
1, ..., <n> Niveau infrieur 1, ... , niveau infrieur
<n>
<Icne>
Nom de l'icne qui doit tre affiche pour cette section.
Type : STRING
Remarque
Les instructions SEFORM sont gnres dans l'diteur Step.
La chane de caractres transfre avec le paramtre <nom de section> est range dans la
variable OPI en synchronisation avec l'excution des blocs, de manire analogue
l'instruction MSG. L'information persiste jusqu' son crasement par l'instruction SEFROM
suivante. Le contenu est effac par un reset et par une fin de programme pice.
Les paramtres <niveau> et <icne> sont vrifis lors de l'excution du programme pice,
mais ils ne sont pas utiliss.
Bibliographie
Pour d'autres informations sur l'aide la programmation avec l'diteur, voir :
Manuel d'utilisation HMI Advanced
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 213
Gestion des fichiers et programmes
2.3 Instruction structurelle dans l'diteur Step (SEFORM)
Notions complmentaires
214 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Zones de protection 3
3.1 Dfinition des zones de protection (CPROTDEF, NPROTDEF)
Fonction
Grce aux zones de protection, il est possible de protger diffrents lments de la machine,
l'outillage et la pice contre les dplacements errons.
Zones de protection orientes outil :
Pour les lments qui font partie de l'outil (outil, porte-outil, etc.).
Zones de protection orientes pice :
Pour les lments qui font partie de la pice (parties de la pice, table porte-pice, pinces,
mandrins, contre-poupes, etc.)
=RQHGHSURWHFWLRQ <
RULHQWHRXWLO =RQHGHSURWHFWLRQ
RULHQWHRXWLO
%
=
;
=RQHGHSURWHFWLRQ
RULHQWHSLFH
Syntaxe
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 215
Zones de protection
3.1 Dfinition des zones de protection (CPROTDEF, NPROTDEF)
Signification
DEF INT NOT_USED : Variable locale, dfinition du type de donnes INTEGER (entier)
(cf. chapitre "Actions synchrones au dplacement (Page 551)")
G17/G18/G19 : Le plan souhait est slectionn avant CPROTDEF ou NPROTDEF au
moyen de G17/G18/G19 et ne doit pas tre modifi avant EXECUTE. La
programmation d'une cote (3me dimension) entre CPROTDEF ou
NPROTDEF et EXECUTE n'est pas autorise.
CPROTDEF : Dfinition des zones de protection spcifiques au canal (pour NCU
572/573 uniquement)
NPROTDEF : Dfinition des zones de protection spcifiques la machine
G0/G1/... X/Y/Z...
On peut dcrire le contour d'une zone de protection avec 11
... : dplacements au maximum dans le plan slectionn. Le premier
dplacement est constitu par l'accostage du contour. La zone de
protection est le domaine se trouvant gauche du contour.
Remarque :
Les dplacements figurant entre CPROTDEF ou NPROTDEF et EXECUTE ne
sont pas excuts mais ils dfinissent la zone de protection.
EXECUTE : Fin de la dfinition
<n> : Numro de la zone de protection dfinie
<t> : Type de la zone de protection
TRUE : zone de protection oriente outil
FALSE : zone de protection oriente pice
<applim> : Type de limitation dans la 3me dimension
0: aucune limitation
1: limitation en sens plus
2: limitation en sens moins
3: limitation dans le sens positif et ngatif
<applus> : Valeur de la limitation dans le sens positif de la 3me dimension
<appminus> : Valeur de la limitation dans le sens ngatif de la 3me dimension
NOT_USED : En prsence de zones de protection, la variable d'erreur est sans
effet avec EXECUTE
Contraintes
Aucune des fonctions suivantes ne doit tre active lors de la dfinition des zones de
protection :
correction du rayon de la fraise ou du tranchant,
transformation,
frame.
Aucun accostage du point de rfrence (G74), aucun accostage de point fixe (G75), aucun
arrt de recherche de blocs, ni aucune fin de programme ne doit tre programm.
Notions complmentaires
216 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Zones de protection
3.1 Dfinition des zones de protection (CPROTDEF, NPROTDEF)
Informations complmentaires
Dfinition des zones de protection
Font partie de la dfinition des zones de protection :
CPROTDEF pour les zones de protection spcifiques au canal
NPROTDEF pour les zones de protection spcifiques la machine
la description du contour de la zone de protection
la clture de la dfinition avec EXECUTE
Lors de l'activation de la zone de protection dans le programme pice CN, on peut dplacer,
de faon relative, le point de rfrence de la zone de protection.
Point de rfrence de la description du contour
Les zones de protection orientes pice sont dfinies dans le systme de coordonnes de
base.
Les zones de protection orientes outil sont dfinies par rapport au point de rfrence F de
l'organe porte-outil.
Elments de contour admissibles
Sont autoriss pour la description du contour de la zone de protection :
G0 et G1 pour les parties rectilignes du contour
G2 pour les arcs de cercle dans le sens horaire (seulement pour les zones de protection
orientes pice)
G3 pour les arcs de cercle dans le sens antihoraire
Remarque
Si la zone de protection doit tre dfinie par un cercle complet, il faut subdiviser ce
dernier en deux cercles partiels. Les squences G2, G3 et G3, G2 ne sont pas autorises. Il
faut, dans ce cas, insrer un bloc court avec G1.
Le dernier point et le premier point de la description du contour doivent concider.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 217
Zones de protection
3.1 Dfinition des zones de protection (CPROTDEF, NPROTDEF)
=RQHVGHSURWHFWLRQFRQYH[HV
=RQHVGHSURWHFWLRQFRQFDYHQRQDXWRULVHV
Notions complmentaires
218 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Zones de protection
3.2 Activation/dsactivation des zones de protection (CPROT, NPROT)
Fonction
Practiver ou activer les zones de protection dfinies prcdemment pour assurer une
surveillance anticollision ou dsactiver les zones de protection actives.
Le nombre maximal de zones de protection qui peuvent tre actives simultanment dans
un mme canal est fix par un paramtre machine.
Si aucune zone de protection oriente outil n'est active, la trajectoire de l'outil fera l'objet
d'une surveillance rapporte aux zones de protection orientes pice.
Remarque
Si aucune zone de protection oriente pice n'est active, il n'y aura aucune surveillance de
la trajectoire de l'outil.
Syntaxe
CPROT(<n>,<state>,<xMov>,<yMov>,<zMov>)
NPROT(<n>,<state>,<xMov>,<yMov>,<zMov>)
Signification
Contraintes
Surveillance de zone de protection avec correction de rayon d'outil active
Lorsque la correction de rayon d'outil est active, une surveillance de zone de protection
oprationnelle n'est possible que si le plan de la correction de rayon d'outil est identique au
plan des dfinitions de zone de protection.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 219
Zones de protection
3.2 Activation/dsactivation des zones de protection (CPROT, NPROT)
Exemple
Sur une fraiseuse, il convient d'viter une collision entre la fraise et le palpeur de mesure. La
position du palpeur doit tre indique par un dcalage lors de l'activation. A cet effet, on
dfinit les zones de protection suivantes :
Une zone de protection spcifique la machine et oriente pice pour le support du
palpeur (n-SB1) et pour le palpeur lui-mme (n-SB2).
Une zone de protection spcifique au canal et oriente outil pour l'organe porte-fraise (c-
SB1), la queue de la fraise (c-SB2) et la fraise elle-mme (c-SB3).
Toutes les zones de protection sont orientes en Z.
Le point de rfrence du palpeur de mesure doit se trouver en X = -120, Y = 60 et Z = 80
lors de l'activation.
3RLQWGHUIUHQFHSRXU
OD]RQHGHSURWHFWLRQ
GXSDOSHXUGHPHVXUH
Q6%
Q6% &6%
&6%
=
&6%
<
Notions complmentaires
220 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Zones de protection
3.2 Activation/dsactivation des zones de protection (CPROT, NPROT)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 221
Zones de protection
3.2 Activation/dsactivation des zones de protection (CPROT, NPROT)
Informations complmentaires
Etat d'activation (<state>)
<state>=2
Une zone de protection est active en gnral dans un programme pice avec
<state> = 2.
L'tat est toujours spcifique au canal, mme pour des zones de protection spcifiques
la machine.
<state>=1
Si la possibilit d'activation d'une zone de protection est prvue dans le programme AP,
la practivation ncessaire cet effet se fait avec <state> = 1.
<state>=3
Lors de la practivation avec arrt conditionnel, aucun arrt n'est en principe effectu
avant une zone de protection dpasse, practive. L'arrt se produit uniquement,
lorsque la zone de protection a t active. Ceci permet un usinage sans interruption
lorsque les zones de protection ne sont actives que dans certains cas. Il faut toutefois
tenir compte du fait que la rampe de freinage provoque, le cas chant, un dplacement
dans une zone de protection, si la zone de protection n'a t active qu'immdiatement
avant le dplacement.
La practivation avec arrt conditionnel s'effectue avec <state> = 3.
<state>=0
La dsactivation des zones de protection s'effectue avec <state> = 0. Aucun dcalage
n'est ncessaire cet effet.
Notions complmentaires
222 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Zones de protection
3.3 Contrle des violations de zone de protection, des limitations de la zone de travail et des fins de course logiciels (CALC
Fonction
La fonction CALCPOSI permet de vrifier si, partir d'un point de dpart donn, les axes
gomtriques peuvent parcourir un trajet prdfini sans violer les limites d'axe (limites
logicielles), les limitations de la zone de travail, ni les zones de protection.
Pour le cas o le trajet spcifi ne peut pas tre parcouru, la valeur maximale autorise est
retourne.
La fonction CALCPOSI est un sous-programme prdfini. Elle doit tre isole dans un bloc.
Syntaxe
Etat=CALCPOSI(_STARTPOS, _MOVDIST, _DLIMIT, _MAXDIST, _BASE_SYS, _TESTLIM)
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 223
Zones de protection
3.3 Contrle des violations de zone de protection, des limitations de la zone de travail et des fins de course
logiciels (CALCPOSI)
Notions complmentaires
224 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Zones de protection
3.3 Contrle des violations de zone de protection, des limitations de la zone de travail et des fins de course logiciels (CALC
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 225
Zones de protection
3.3 Contrle des violations de zone de protection, des limitations de la zone de travail et des fins de course
logiciels (CALCPOSI)
Exemple
Dans l'exemple (voir figure), des fins de course logiciels et des limitations de la zone de
travail sont inscrits sur l'axe X. En plus, trois zones de protection sont dfinies : les deux
zones de protection C2 et C4 spcifiques au canal ainsi que la zone de protection N3 du
NCK. C2 est une zone de protection active circulaire de 2 mm de rayon, oriente outil. C4
est une zone de protection carre de 10 mm de ct, practive et oriente pice, et N3 est
une zone de protection active rectangulaire de 10 et 15 mm de ct. Dans le programme CN
suivant, les zones de protection et les limitations de la zone de travail sont d'abord dfinies
comme sur la figure, puis la fonction CALCPOSI est appele avec diffrents paramtrages.
Les rsultats des diffrents appels de la fonction CALCPOSI sont rsums dans le tableau
qui figure la fin de l'exemple.
<
/LPLWHVORJLFLHOOHV
& SUDFWLYH
11
1
1
1
&
/LPLWDWLRQGHOD]RQHGHWUDYDLO
Notions complmentaires
226 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Zones de protection
3.3 Contrle des violations de zone de protection, des limitations de la zone de travail et des fins de course logiciels (CALC
N210 x25
N220 y15
N230 x10
N240 y5
N250 execute(_SB)
N260 cprot(2,2,0, 0, 0) ; Activation ou
N270 cprot(4,1,0, 0, 0) practivation des zones de
protection
N280 nprot(3,2,0, 0, 0)
N290 g25 XX=YY= ; Dfinition des limitations de la
N300 g26 xx= 20 yy= 21 zone de travail
N310 _STARTPOS[0] = 0.
N320 _STARTPOS[1] = 0.
N330 _STARTPOS[2] = 0.
N340 _MOVDIST[0] = 35.
N350 _MOVDIST[1] = 20.
N360 _MOVDIST[2] = 0.
N370 _DLIMIT[0] = 0.
N380 _DLIMIT[1] = 0.
N390 _DLIMIT[2] = 0.
N400 _DLIMIT[3] = 0.
N410 _DLIMIT[4] = 0.
; Diffrents appels de fonctions ; Autre point de dpart
N420 _ETAT = calcposi(_STARTPOS,_MOVDIST,
_DLIMIT, _MAXDIST)
N430 _ETAT = calcposi(_STARTPOS,_MOVDIST,
_DLIMIT, _MAXDIST,,3)
N440 _ETAT = calcposi(_STARTPOS,_MOVDIST,
_DLIMIT, _MAXDIST,,1)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 227
Zones de protection
3.3 Contrle des violations de zone de protection, des limitations de la zone de travail et des fins de course
logiciels (CALCPOSI)
Notions complmentaires
228 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Zones de protection
3.3 Contrle des violations de zone de protection, des limitations de la zone de travail et des fins de course logiciels (CALC
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 229
Zones de protection
3.3 Contrle des violations de zone de protection, des limitations de la zone de travail et des fins de course
logiciels (CALCPOSI)
Remarque
Pour plus de dtails sur les limitations de la zone de travail, voir le
/PG/ Manuel de programmation Notions de base,
sur les limites logicielles, voir
/FB1/ Manuel de fonctions de base ; surveillance d'axes, zones de protection (A3).
Notions complmentaires
230 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales 4
4.1 Accostage de positions codes (CAC, CIC, CDC, CACP, CACN)
Fonction
Les instructions suivantes permettent, au moyen de numros de position, de dplacer des
axes linaires et rotatifs jusqu' des positions d'axe fixes dfinies dans des tableaux de
paramtres machine. Ce type de programmation est appel "accostage de positions
codes".
Syntaxe
CAC(<n>)
CIC(<n>)
CACP(<n>)
CACN(<n>)
Signification
CAC(<n>)
Accostage de la position code du numro de position n
CIC(<n>)
Accostage de la position code n positions en avant (+n) ou en arrire
(n), partir du numro de position courant
CDC(<n>)
Accostage de la position code sur le chemin le plus court depuis le
numro de position n
(uniquement pour les axes rotatifs)
CACP(<n>)
Accostage de la position code dans le sens positif depuis le numro
de position n
(uniquement pour les axes rotatifs)
CACN(<n>)
Accostage de la position code dans le sens ngatif depuis le numro
de position n
(uniquement pour les axes rotatifs)
<n>
Numro de position dans le tableau de paramtres machine
Plage de valeurs : 0, 1, (nombre maximal de positions dans le
tableau - 1)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 231
Instructions de dplacement spciales
4.1 Accostage de positions codes (CAC, CIC, CDC, CACP, CACN)
Bibliographie
Description fonctionnelle Fonctions d'extension ; Axes indexs (T1)
Description fonctionnelle Actions synchrones
Notions complmentaires
232 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.2 Interpolation de type spline (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN, EAUTO,
ENAT, ETAN, PW, SD, PL)
Fonction
Pour les contours de pice de forme courbe quelconque, une description analytique exacte
est impossible. C'est pourquoi de tels contours sont dcrits approximativement par un
nombre limit de points intermdiaires, notamment lors de la numrisation des surfaces.
Pour gnrer une surface de pice numrise, il est ncessaire de relier les points
intermdiaires et d'en faire une description du contour. C'est ce que permet l'interpolation de
type spline.
Un spline dfinit une courbe compose de polynmes du 2e ou 3e degr. Les proprits des
points intermdiaires d'un spline peuvent tre dfinis selon le type de spline utilis.
3
3
3 3
3
3
33FRRUGRQQHVSUGILQLHV
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 233
Instructions de dplacement spciales
4.2 Interpolation de type spline (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN, EAUTO, ENAT, ETAN,
PW, SD, PL)
Syntaxe
Gnralits :
ASPLINE X... Y... Z... A... B... C...
BSPLINE X... Y... Z... A... B... C...
CSPLINE X... Y... Z... A... B... C...
Le spline B permet en outre de programmer :
PW=<n>
SD=2
PL=<valeur>
Les splines A et C permettent en outre de programmer :
BAUTO / BNAT / BTAN
EAUTO / ENAT / ETAN
Signification
Notions complmentaires
234 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.2 Interpolation de type spline (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN, EAUTO,
ENAT, ETAN, PW, SD, PL)
%$872
($872
DXFXQHVSFLILFDWLRQ
%1$7
(1$7
&RXUEXUHQXOOH
5DFFRUGHPHQW
WDQJHQWLHO
%7$1 (7$1
Remarque
Le comportement de transition programmable n'influence pas le spline B. Au point de dpart
et au point final, le spline B est toujours tangent au polygone de contrle.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 235
Instructions de dplacement spciales
4.2 Interpolation de type spline (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN, EAUTO, ENAT, ETAN,
PW, SD, PL)
Conditions marginales
La correction de rayon d'outil est utilisable.
La surveillance anticollision s'effectue par projection dans le plan.
Exemples
Exemple 1 : Spline B
Notions complmentaires
236 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.2 Interpolation de type spline (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN, EAUTO,
ENAT, ETAN, PW, SD, PL)
<
3RO\JRQHGHFRQWUOH
WRXVOHVSRLGV
SRLGVGLIIUHQWV
;
Code de programme
N10 G1 X0 Y0 F300
N15 X10
N20 BNAT ENAT
N30 CSPLINE X20 Y10
N40 X30
N50 X40 Y5
N60 X50 Y15
N70 X55 Y7
N80 X60 Y20
N90 X65 Y20
N100 X70 Y0
N110 X80 Y10
N120 X90 Y0
N130 M30
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 237
Instructions de dplacement spciales
4.2 Interpolation de type spline (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN, EAUTO, ENAT, ETAN,
PW, SD, PL)
<
;
Code de programme
N10 X20 Y18
N20 X10 Y21
N30 X6 Y31
N40 X18 Y31
N50 X13 Y43
N60 X22 Y42
N70 X16 Y58
N80 X33 Y51
N90 M1
Notions complmentaires
238 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.2 Interpolation de type spline (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN, EAUTO,
ENAT, ETAN, PW, SD, PL)
$63/,1(
%63/,1(
< &63/,1(
13UHPLHUDSSHOGHVRXVSURJUDPPH
1'HX[LPHDSSHO
GHVRXVSURJUDPPH
;
Autres informations
Avantages de l'interpolation de type spline
Contrairement l'utilisation de blocs linaires G01, l'interpolation de type spline prsente les
avantages suivants :
Rduction de nombre de blocs requis dans le programme pice pour la description du
contour
Courbes douces mnageant la mcanique lors des transitions entre les blocs du
programme pice
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 239
Instructions de dplacement spciales
4.2 Interpolation de type spline (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN, EAUTO, ENAT, ETAN,
PW, SD, PL)
Spline A
6SOLQH$VSOLQH$NLPD
3 3
3
3
3
3
3
33bFRRUGRQQHVSUGILQLHV
Proprits :
Courbe passant exactement par les points intermdiaires indiqus.
La courbe est caractrise par la continuit de la tangente, mais pas du
rayon de courbure.
Elle ne cre presque pas de vibrations indsirables.
La modification d'un point intermdiaire a un effet local, ce qui signifie qu'elle
n'influence pas plus de 6 points intermdiaires voisins.
Application :
Le spline A convient avant tout l'interpolation de courbes avec de grandes
variations de pente (par exemple les courbes en forme d'escalier).
Notions complmentaires
240 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.2 Interpolation de type spline (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN, EAUTO,
ENAT, ETAN, PW, SD, PL)
Spline B
6SOLQH%
3RO\JRQHGHFRQWUOH 3 3
3
3
3
3
3
33bFRRUGRQQHVSUGILQLHV
Proprits :
Courbe ne passant pas par les points intermdiaires indiqus, mais
proximit de ceux-ci. La courbe tend vers les points intermdiaires.
L'utilisation d'un facteur de pondration des points intermdiaires permet en
outre d'influencer le trac de la courbe.
La courbe est caractrise par la continuit de la tangente et du rayon de
courbure.
Elle ne cre aucune vibration indsirable.
La modification d'un point intermdiaire a un effet local, ce qui signifie qu'elle
n'influence pas plus de 6 points intermdiaires voisins.
Application :
Le spline B est destin en premier lieu servir d'interface avec les systmes de
CAO.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 241
Instructions de dplacement spciales
4.2 Interpolation de type spline (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN, EAUTO, ENAT, ETAN,
PW, SD, PL)
Spline C
VSOLQH&VSOLQHFXELTXH
3
3 3
3
3
3
3
33bFRRUGRQQHVSUGILQLHV
Proprits :
Courbe passant exactement par les points intermdiaires indiqus.
La courbe est caractrise par la continuit de la tangente et du rayon de
courbure.
Elle cre frquemment des vibrations indsirables, en particulier aux
endroits avec de grandes variations de pente.
La modification d'un point intermdiaire a un effet global, ce qui signifie
qu'elle influence l'ensemble du trac de la courbe.
Application :
Le spline C convient particulirement bien lorsque les points se situent sur une
courbe analytique connue (cercle, parabole, hyperbole).
Notions complmentaires
242 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.2 Interpolation de type spline (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN, EAUTO,
ENAT, ETAN, PW, SD, PL)
Comparaison des trois types de splines avec des points intermdiaires identiques
3
3
3
3
3
3
3
6SOLQH$
6SOLQH%
6SOLQH&
Remarque
Si la valeur est infrieure la valeur tolre, une alarme est mise, de mme que si un axe
participant l'interpolation de type spline est programm comme axe de positionnement.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 243
Instructions de dplacement spciales
4.2 Interpolation de type spline (ASPLINE, BSPLINE, CSPLINE, BAUTO, BNAT, BTAN, EAUTO, ENAT, ETAN,
PW, SD, PL)
Notions complmentaires
244 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.3 Groupe spline (SPLINEPATH)
Fonction
Les axes interpoler dans le groupe spline sont slectionns avec l'instruction SPLINEPATH.
L'interpolation de type spline admet jusqu' 8 axes interpolation.
Remarque
Si l'instruction SPLINEPATH n'est pas programme de faon explicite, ce sont les trois premiers
axes du canal qui seront dplacs en tant que groupe spline.
Syntaxe
La dfinition du groupe spline se fait dans un bloc spar :
SPLINEPATH(n,X,Y,Z,)
Signification
SPLINEPATH
Instruction de dfinition du groupe spline
n
=1 (valeur fixe)
X,Y,Z,
Descripteurs des axes interpoler dans le groupe spline
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 245
Instructions de dplacement spciales
4.3 Groupe spline (SPLINEPATH)
=
63/,1(3$7+;<=
<
Notions complmentaires
246 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.4 Compactage de bloc CN (COMPON, COMPCURV, COMPCAD, COMPOF)
Fonction
Les systmes de CAO/FAO fournissent gnralement des blocs linaires qui respectent la
prcision paramtre. Ceci conduit, dans le cas des contours complexes, une quantit
considrable de donnes et, ventuellement, des segments de trajectoire courts. Ceux-ci
limitent la vitesse d'usinage.
Grce l'utilisation de blocs de polynme, une fonction compacteur entrane un
rapprochement du contour dfini par blocs linaires. Il en rsulte les avantages suivants :
Rduction de nombre de blocs requis dans le programme pice pour la description du
contour de la pice
Transitions progressives entre les blocs
Augmentation des vitesses tangentielles maximales
Les fonctions compacteur suivantes sont disponibles :
COMPON
Seule la vitesse est continue aux transitions entre blocs, l'acclration des axes
concerns pouvant prsenter des chelons.
COMPCURV
L'acclration est continue aux transitions entre les blocs. La vitesse aussi bien que
l'acclration de tous les axes ne varient donc pas brusquement aux transitions entre
blocs.
COMPCAD
Compactage caractris par une optimisation de l'tat de surface et de la vitesse, et qui
exige beaucoup de temps de calcul et de capacit mmoire. COMPCAD ne devrait tre
utilis que lorsque les mesures, permettant une amlioration de l'tat de surface, ne
peuvent pas tre assures en amont par le programme CAO/FAO.
La fonction compacteur se termine avec COMPOF.
Syntaxe
COMPON
COMPCURV
COMPCAD
COMPOF
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 247
Instructions de dplacement spciales
4.4 Compactage de bloc CN (COMPON, COMPCURV, COMPCAD, COMPOF)
Signification
Remarque
Pour une amlioration supplmentaire de l'tat de surface, il est possible d'utiliser la fonction
d'arrondissement G642 et la limitation des -coups SOFT. Ces instructions doivent figurer en
dbut de programme.
Contraintes
La compression de bloc CN est en rgle gnrale effectu pour des blocs linaires (G1).
Seuls les blocs qui satisfont une syntaxe simple sont compacts :
N... G1X... Y... Z... F... ; commentaire
Tous les autres blocs sont excuts tels quels (sans compactage).
Les blocs de dplacement adresses tendues tels que C=100 ou A=AC(100) sont
galement compacts.
Il n'est pas ncessaire de programmer directement les valeurs de position qui peuvent
galement tre indiques indirectement par des affectations de paramtres telles que
X=R1*(R2+R3).
Notions complmentaires
248 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.4 Compactage de bloc CN (COMPON, COMPCURV, COMPCAD, COMPOF)
Exemples
Exemple 1 : COMPON
Exemple 2 : COMPCAD
Bibliographie
Description fonctionnelle Fonctions de base ; contournage, arrt prcis, look-ahead (B1),
chapitre : "Compactage de bloc CN"
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 249
Instructions de dplacement spciales
4.5 Interpolation polynomiale (POLY, POLYPATH, PO, PL)
Fonction
Linterpolation polynomiale (POLY) nest en fait pas une interpolation de type spline. Elle est
destine avant tout servir d'interface pour la programmation de courbes spline gnres
de manire externe. Les sections spline peuvent tre programmes directement.
Ce mode d'interpolation vite la CN de calculer les coefficients de polynme. Elle peut tre
utilise de manire optimale lorsque les coefficients sont issus directement d'un systme de
CAO ou d'un postprocesseur.
Syntaxe
Polynme du 3e degr :
POLY PO[X]=(xe,a2,a3) PO[Y]=(ye,b2,b3) PO[Z]=(ze,c2,c3) PL=n
Polynme du 5me degr et nouvelle syntaxe polynomiale :
POLY X=PO(xe,a2,a3,a4,a5) Y=PO(ye,b2,b3,b4,b5) Z=PO(ze,c2,c3,c4,c5)
PL=n
POLYPATH("AXES","VECT")
Remarque
La somme des coefficients de polynme et des axes programms dans un bloc CN ne doit
pas dpasser le nombre maximal d'axes autoriss par bloc.
Signification
POLY : Activation de l'interpolation polynomiale par un bloc avec POLY.
POLYPATH : Interpolation polynomiale slectionnable pour les deux groupes d'axes
AXIS ou VECT
PO[descripteur
Points finaux et coefficients de polynme
d'axe/variable] :
X, Y, Z : Descripteur d'axe
xe, ye, ze : Indication de la position finale de l'axe correspondant ; plage de valeurs
comme pour le positionnement non index
a2, a3, a4, a5 : Les coefficients a2, a3, a4, et a5 sont crits avec leur valeur ; plage de
valeurs comme pour le positionnement non index. Le dernier
coefficient peut tre omis si sa valeur est gale zro.
PL : Longueur de l'intervalle de paramtre sur lequel le polynme est dfini
(domaine de dfinition de la fonction f(p)).
L'intervalle commence toujours 0 et la valeur de p peut aller de 0
PL.
Plage de valeurs thorique de PL :
0,0001 99 999,9999
Remarque :
La valeur de PL est valable pour le bloc dans lequel elle figure. Si PL
n'est pas programm, PL=1.
Notions complmentaires
250 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.5 Interpolation polynomiale (POLY, POLYPATH, PO, PL)
L'instruction G POLY ainsi que G0, G1, G2, G3, ASPLINE, BSPLINE et CSPLINE font partie du 1er
groupe G.
Etant uniquement programms avec un nom et un point final (par ex. X10) les axes sont
dplacs linairement. Aprs avoir programm tous les axes d'un bloc CN de la sorte, la
commande se comporte comme pour G1.
L'interpolation polynomiale est de nouveau dsactive de manire implicite en programmant
une autre instruction du 1er groupe G (par ex. G0, G1).
Coefficient du polynme
La valeur (PO[]=) ou ...=PO(...) indique tous les coefficients de polynme d'un axe.
Selon le degr du polynme, plusieurs valeurs spares par des virgules sont spcifies.
Dans un bloc, diffrents degrs de polynme de diffrents axes sont possibles.
Sous-programme POLYPATH
POLYPATH(...) permet de dbloquer l'interpolation polynomiale de manire slective pour
certains groupes d'axes :
POLYPATH("AXES")
Uniquement axes interpolation et axes
supplmentaires :
POLYPATH("VECT")
Uniquement axes d'orientation :
(lors du dplacement avec transformation
d'orientation)
Les axes respectifs non dbloqus sont dplacs linairement.
Par dfaut, l'interpolation polynomiale est dbloque pour les deux groupes d'axes.
Une programmation sans paramtre POLYPATH( ) permet de dsactiver l'interpolation
polynomiale pour tous les axes.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 251
Instructions de dplacement spciales
4.5 Interpolation polynomiale (POLY, POLYPATH, PO, PL)
Exemple
Code de programme
N9 X0 Y0 G90 F100
N10 POLY PO[Y]=(2) PO[X]=(4,0.25) PL=4
Notions complmentaires
252 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.5 Interpolation polynomiale (POLY, POLYPATH, PO, PL)
<
3RLQWILQDO
S
;
3RLQWILQDO
([HPSOH
1;<*
132/<32><@
32>;@
3/
3/ S
<
5VXOWDWGDQVOHSODQ;<
3/
;
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 253
Instructions de dplacement spciales
4.5 Interpolation polynomiale (POLY, POLYPATH, PO, PL)
Description
La forme gnrale de la fonction polynomiale est la suivante :
f(p)= a0 + a1p
En outre :
Le coefficient constant (a0) du polynme dnominateur est toujours considr comme tant
gal 1. Le point final programm est indpendant de G90 / G91.
Notions complmentaires
254 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.5 Interpolation polynomiale (POLY, POLYPATH, PO, PL)
X(p) et Y(p) sont calculs comme suit partir des valeurs programmes :
Numrateur 10 + 0 * p - 10 * p2
(X) =
Numrateur 0 + 20 * p + 0 * p2
(Y) =
Dnominateur 1 + p2
=
<
Remarque
Dans le cas de l'interpolation polynomiale, on peut activer une correction de rayon d'outil
avec G41, G42 et l'utiliser comme pour l'interpolation linaire ou circulaire.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 255
Instructions de dplacement spciales
4.6 Rfrence rglable de trajectoire (SPATH, UPATH)
Fonction
Pendant l'interpolation polynomiale, l'utilisateur peut souhaiter deux relations diffrentes
entre les axes FGROUP dterminant la vitesse et les autres axes interpolation : le
dplacement de ces derniers doit tre synchronis soit avec la trajectoire S ou avec le
paramtre de courbe U des axes FGROUP.
Ces deux modes d'interpolation sont ncessaires dans diverses applications et peuvent tre
slectionns l'aide des deux instructions de langage modales SPATH et UPATH contenues
dans le 45me groupe de codes G.
Syntaxe
SPATH
UPATH
Signification
Remarque
UPATH et SPATH dterminent galement la relation entre le polynme dcrivant le mot F (FPOLY,
FCUB, FLIN) et le dplacement le long de la trajectoire.
Contraintes
La rfrence de trajectoire paramtre est sans aucune signification :
pour l'interpolation linaire et circulaire
dans des blocs de filetage
lorsque tous les axes interpolation sont compris dans FGROUP.
Notions complmentaires
256 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.6 Rfrence rglable de trajectoire (SPATH, UPATH)
Exemples
Exemple 1 :
Dans l'exemple suivant, un carr avec une longueur d'arte de 20 mm est arrondi avec
G643. Dans ce contexte, les carts maximaux du contour exact sont dfinis pour chaque
axe avec le paramtre machine MD33100 $MA_COMPRESS_POS_TOL[<n>] spcifique
l'axe.
Exemple 2 :
L'exemple suivant illustre la diffrence entre les deux modes de pilotage du dplacement.
Dans les deux cas, on considre que le prrglage FGROUP(X,Y,Z) est actif.
63$7+ 83$7+
$ $; ; $ $; 6457;
; ;
'LIIUHWHVUHODWLRQVJRPWULTXHVHQWUHOHVD[HV
SRXU63$7+HW83$7+
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 257
Instructions de dplacement spciales
4.6 Rfrence rglable de trajectoire (SPATH, UPATH)
Code de programme
ou
Code de programme
N10 G1 X0 F1000 UPATH
N20 POLY PO[X]=(10,10) A10
Dans le bloc N20, le trajet S des axes FGROUP dpend du carr du paramtre de courbe U.
Il en rsulte donc des positions diffrentes de l'axe synchrone A le long de la trajectoire de
X, selon que SPATH ou UPATH est actif.
Informations complmentaires
Pendant l'interpolation polynomiale - ceci sous-entendant toujours l'interpolation polynomiale
au sens strict du terme (POLY), toutes les interpolations de type spline (ASPLINE,
BSPLINE, CSPLINE) et une interpolation linaire avec fonction compresseur (COMPON,
COMPCURV) - les positions de tous les axes interpolation i sont spcifies par des
polynmes pi(U). Dans un bloc CN, le paramtre de courbe U varie de 0 1, c'est--dire
qu'il est norm.
L'instruction FGROUP permet de slectionner, parmi les axes interpolation, ceux auxquels
doit se rapporter l'avance tangentielle programme. Une interpolation polynomiale vitesse
constante sur le trajet S de ces axes ne signifie cependant pas en gnral une variation
constante du paramtre de courbe U.
Comportement de la commande en cas de Reset et paramtres machine/d'option
Aprs un Reset, le code G dtermin par MD20150 $MC_GCODE_RESET_VALUES[44] est
actif (45me groupe de codes G). Pour rester compatible avec des installations existantes,
la valeur SPATH est prrgle.
La valeur de position initiale pour le type d'arrondissement est dfinie par
MD20150 $MC_GCODE_RESET_VALUES[9] (10me groupe de codes G).
Le paramtre machine spcifique l'axe MD33100 $MA_COMPRESS_POS_TOL[<n>] a
une signification tendue : il contient les tolrances pour la fonction compresseur et
larrondissement avec G642.
Notions complmentaires
258 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.7 Mesure avec palpeur dclenchement (MEAS, MEAW)
Fonction
La fonction "Mesure avec palpeur dclenchement" permet d'accoster des positions relles
sur la pice, de mesurer les positions de chaque axe programm dans le bloc de mesure
lors du front de dclenchement du palpeur et de les crire dans la cellule mmoire
correspondante.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 259
Instructions de dplacement spciales
4.7 Mesure avec palpeur dclenchement (MEAS, MEAW)
Remarque
Avec STOPRE, un arrt du prtraitement doit tre programm dans le programme CN un
emplacement adapt. faute de quoi il y aura lecture de valeurs errones.
Syntaxe
MEAS=<TE> G... X... Y... Z...
MEAW=<TE> G... X... Y... Z...
Signification
MEAS
Instruction : Mesure avec effacement de la distance restant parcourir
Prise d'effet : bloc par bloc (non modale)
MEAW
Instruction : Mesure sans effacement de la distance restant parcourir
Prise d'effet : bloc par bloc (non modale)
<TE>
Evnement dclencheur de la mesure
Type : INT
Plage de valeurs : -2, -1, 1, 2
Nota :
il existe au maximum 2 palpeurs de mesure (selon le
niveau d'extension).
Signification :
(+)1 Front montant du palpeur de mesure 1 ( l'entre de
mesure 1)
-1 Front descendant du palpeur de mesure 1 ( l'entre de
mesure 1)
(+)2 Front montant du palpeur de mesure 2 ( l'entre de
mesure 2)
-2 Front descendant du palpeur de mesure 2 ( l'entre de
mesure 2)
Nota :
il existe au maximum 2 palpeurs de mesure (selon le niveau d'extension).
G...
Mode d'interpolation, p. ex. G0, G1, G2 ou G3
X... Y... Z...
Point final en coordonnes cartsiennes
Notions complmentaires
260 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.7 Mesure avec palpeur dclenchement (MEAS, MEAW)
Exemple
Informations complmentaires
tat du contrat de mesure
S'il est ncessaire de savoir, dans le programme, si le dclenchement du palpeur a eu lieu
ou non, il est possible d'interroger la variable d'tat $AC_MEA[n] (n = numro du palpeur) :
Valeur Signification
0 Tche de mesure non excute
1 Tche de mesure excute correctement (le dclenchement du palpeur a eu lieu)
Remarque
Si le palpeur est dvi dans le programme, la variable est mise 1. Au dbut d'un bloc de
mesure, la variable est mise automatiquement l'tat initial du palpeur.
Remarque
Si un axe gomtrique est programm dans un bloc de mesure, les valeurs de mesure sont
enregistres pour tous les axes gomtriques courants.
Si un axe concern par une transformation est programm dans un bloc de mesure, les
valeurs de mesure sont enregistres pour tous les axes concerns par cette transformation.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 261
Instructions de dplacement spciales
4.8 Fonction de mesure tendue (MEASA, MEAWA, MEAC) (option)
Fonction
Plusieurs types de palpeurs et plusieurs systmes de mesure peuvent tre utiliss pour la
mesure axiale.
Les instructions MEASA et MEAWA permettent de saisir chaque mesure jusqu' quatre valeurs
de mesure pour l'axe programm et de les ranger dans des variables systme en fonction de
l'vnement dclencheur.
L'instruction MEAC permet d'effectuer des mesures en continu. Les rsultats des mesures sont
rangs dans des variables FIFO. Pour MEAC, il est galement possible de saisir jusqu'
quatre valeurs par mesure.
Syntaxe
MEASA[<axe>]=(<mode>,<TE1>,...,<TE4>)
MEAWA[<axe>]=(<mode>,<TE1>,...,<TE4>)
MEAC[<axe>]=(<mode>,<mmoire de mesure>,<TE1>,...,<TE4>)
Notions complmentaires
262 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.8 Fonction de mesure tendue (MEASA, MEAWA, MEAC) (option)
Remarque
MEASA et MEAWA ont un effet non modal et peuvent tre programmes dans un bloc. Par
contre, si vous programmez MEASA/MEAWA avec MEAS/MEAW dans un mme bloc, un message
d'erreur sera mis.
Signification
MEASA
Instruction : Mesure axiale avec effacement de la distance restant
parcourir
Prise d'effet : bloc par bloc (non modale)
MEAWA
Instruction : Mesure axiale sans effacement de la distance restant
parcourir
Prise d'effet : bloc par bloc (non modale)
MEAC
Instruction : Mesure axiale continue sans effacement de la distance restant
parcourir
Prise d'effet : bloc par bloc (non modale)
<Axe>
Nom de laxe de canal utilis pour la mesure
<Mode>
Nombre deux chiffres pour l'indication du mode de fonctionnement (mode
de mesure et systme de mesure)
Mode de mesure (unit) :
0 annulation du contrat de mesure.
1 Jusqu' 4 vnements dclencheurs diffrents, activables
simultanment.
2 Jusqu' 4 vnements dclencheurs activables successivement.
3 Jusqu' 4 vnements dclencheurs activables successivement,
cependant sans surveillance de l'vnement dclencheur 1 au
dmarrage (inhibition des alarmes 21700/21703).
Nota :
ce mode n'est pas possible avec MEAC.
Systme de mesure (dizaine) :
0 (ou aucune indication) systme de mesure actif
1 systme de mesure 1
2 systme de mesure 2
3 les deux systmes de mesure
<TE>
Evnement dclencheur de la mesure
Type : INT
Plage de valeurs : -2, -1, 1, 2
Signification :
(+)1 Front montant du palpeur 1
-1 Front descendant du palpeur 1
(+)2 Front montant du palpeur 2
-2 Front descendant du palpeur 2
<mmoire de
mesure> Numro de la FIFO (mmoire file d'attente)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 263
Instructions de dplacement spciales
4.8 Fonction de mesure tendue (MEASA, MEAWA, MEAC) (option)
Exemples
Exemple 1 : mesure axiale avec effacement de la distance restant parcourir en mode 1
(valuation dans l'ordre chronologique)
a) avec 1 systme de mesure
Notions complmentaires
264 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.8 Fonction de mesure tendue (MEASA, MEAWA, MEAC) (option)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 265
Instructions de dplacement spciales
4.8 Fonction de mesure tendue (MEASA, MEAWA, MEAC) (option)
Notions complmentaires
266 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.8 Fonction de mesure tendue (MEASA, MEAWA, MEAC) (option)
Informations complmentaires
Contrat de mesure
La programmation d'une tche de mesure peut avoir lieu dans le programme pice ou
partir d'une action synchrone (voir chapitre "Action synchrone au dplacement"). On ne peut
activer quun seul contrat de mesure par axe un moment donn.
Remarque
Lavance est adapter au problme de mesure pos.
Dans le cas de MEASA et MEAWA , des rsultats corrects sont garantis uniquement avec des
avances pour lesquelles il ne survient pas plus d'un mme vnement dclencheur et pas
plus de quatre vnements dclencheurs diffrents par priode d'chantillonnage de
l'asservissement de position.
Dans le cas de la mesure continue avec MEAC , le rapport entre la priode d'interpolation et
la priode d'chantillonnage de l'asservissement de position ne doit pas tre suprieur 8:1.
Evnement dclencheur
Un vnement dclencheur se compose du numro du palpeur de mesure et du critre de
dclenchement du signal de mesure (front montant ou descendant).
Pour chaque mesure, le programme peut traiter respectivement jusqu' 4 vnements
dclencheurs des palpeurs, autrement dit jusqu' deux palpeurs avec deux fronts de mesure
chacun. L'ordre du traitement et le nombre maximal de facteurs de dclenchement
dpendent du mode slectionn.
Remarque
Rgle valable pour le mode de mesure 1 : un mme vnement de dclenchement ne doit
tre programm qu'une seule fois dans chaque tche de mesure !
Mode de fonctionnement
Le premier chiffre (dizaines) du mode de fonctionnement permet de slectionner le systme
de mesure souhait. Sil nexiste quun seul systme de mesure, alors que le second a t
programm, cest automatiquement le systme de mesure existant qui sera pris en compte.
Le second chiffre (units) permet de slectionner le mode de mesure souhait. La procd
de mesure s'adapte ainsi aux possibilits de la commande respective :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 267
Instructions de dplacement spciales
4.8 Fonction de mesure tendue (MEASA, MEAWA, MEAC) (option)
Mode 1
Les vnements dclencheurs sont traits dans l'ordre chronologique de leur apparition.
Dans ce mode, quand on met en uvre des cartes 6 axes, on ne peut programmer quun
seul vnement dclencheur ou alors, si on en programme plusieurs, il y a commutation
automatique dans le mode 2 (sans avertissement pralable).
Mode 2
Les vnements dclencheurs sont traits dans l'ordre de leur programmation.
Mode 3
Les vnements dclencheurs sont traits dans l'ordre de leur programmation,
cependant aucune surveillance de l'vnement dclencheur 1 au dmarrage n'est
ralise.
Remarque
Si vous travaillez avec 2 systmes de mesure, seulement deux vnements
dclencheurs sont programmables.
9
'LVWDQFHSURJUDPPH
Notions complmentaires
268 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.8 Fonction de mesure tendue (MEASA, MEAWA, MEAC) (option)
Remarque
MEASA n'est pas programmable dans des actions synchrones. Si on le souhaite, on peut
programmer MEAWA plus effacement de la distance restant parcourir en tant qu'action
synchrone.
Quand le contrat de mesure est lanc avec MEAWA partir dune action synchrone, les
valeurs mesures sont disponibles uniquement dans le systme de coordonnes machine.
$AA_MM1[<axe>]
Valeur de mesure du systme de mesure programm pour
l'vnement dclencheur 1
...
...
$AA_MM4[<axe>]
Valeur de mesure du systme de mesure programm pour
l'vnement dclencheur 4
dans le systme de coordonnes pice :
$AA_WM1[<axe>]
Valeur de mesure du systme de mesure programm pour
l'vnement dclencheur 1
...
...
$AA_WM4[<axe>]
Valeur de mesure du systme de mesure programm pour
l'vnement dclencheur 4
Remarque
A la lecture de ces variables, aucun arrt du prtraitement n'est cr. Avec STOPRE, un arrt
du prtraitement doit tre programm un emplacement adapt. faute de quoi il y aura
lecture de valeurs errones.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 269
Instructions de dplacement spciales
4.8 Fonction de mesure tendue (MEASA, MEAWA, MEAC) (option)
$AA_MM1[<axe>] $AA_MW1[<axe>]
ou Valeur de mesure du systme
de mesure 1 pour l'vnement
dclencheur 1
$AA_MM2[<axe>] $AA_MW2[<axe>]
ou Valeur de mesure du systme
de mesure 2 pour l'vnement
dclencheur 1
$AA_MM3[<axe>] $AA_MW3[<axe>]
ou Valeur de mesure du systme
de mesure 1 pour l'vnement
dclencheur 2
$AA_MM4[<axe>] $AA_MW4[<axe>]
ou Valeur de mesure du systme
de mesure 2 pour l'vnement
dclencheur 2
Etat du palpeur de mesure
L'tat du palpeur est disponible dans la variable systme suivante :
$A_PROBE[<n>]
<n>=palpeur
Valeur Signification
1 Palpeur actionn
0 Palpeur non actionn
Etat du contrat de mesure MEASA, MEAWA
S'il est ncessaire de connatre, dans le programme, l'tat de la tche de mesure, il peut tre
interrog avec $AC_MEA[n], <n> = numro du palpeur de mesure. Aussitt que tous les
vnements dclencheurs du palpeur "n" programms dans un bloc ont eu lieu, cette
variable fournit la valeur 1. Sinon, elle fournit la valeur 0.
Remarque
Si la mesure est lance partir d'actions synchrones, $AC_MEA n'est plus actualis. Dans
ce cas, il convient d'interroger les nouveaux signaux d'tat de l'AP, DB31, DBX62.3, ou la
variable quivalente $AA_MEAACT[<axe>].
Signification :
$AA_MEAACT==1 : mesure active
$AA_MEAACT==0 : mesure non active
Notions complmentaires
270 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.8 Fonction de mesure tendue (MEASA, MEAWA, MEAC) (option)
La mmoire FIFO est une mmoire file d'attente dans laquelle on enregistre les valeurs de
mesure dans des variables $AC_FIFO suivant le principe "premier entr, premier sorti" (voir
chapitre "Actions synchrones au dplacement").
Remarque
Le contenu de la mmoire FIFO ne peut tre lu qu'une seule fois. Si vous souhaitez pouvoir
rutiliser les valeurs mesures, mmorisez-les temporairement dans les donnes utilisateur.
Ds que le nombre de mesures destines la mmoire FIFO dpasse le nombre maximum
prvu dans les paramtres machine, il est mis fin automatiquement la mesure.
Pour raliser une mesure sans fin, programmez la lecture cyclique des valeurs de mesure.
La lecture doit tre effectue au moins la mme frquence que l'entre de nouvelles
valeurs de mesure.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 271
Instructions de dplacement spciales
4.9 Fonctions spciales pour l'utilisateur OEM (OEMIPO1, OEMIPO2, G810 G829)
Fonction
Adresses OEM
L'utilisateur OEM dfinit la signification des adresses OEM. La fonctionnalit est entre par
le biais de cycles de compilation. Cinq adresses OEM sont rserves. Les descripteurs
d'adresse peuvent tre spcifis. Les adresses OEM sont admises dans chaque bloc.
Paramtres
Groupes de fonctions G rservs
Groupe 1 avec OEMIPO1, OEMIPO2
L'utilisateur OEM peut dfinir deux noms supplmentaires des fonctions G OEMIPO1, OEMIPO2
. La fonctionnalit est entre par le biais de cycles de compilation et elle est rserve
l'utilisateur OEM.
Groupe 31 avec G810 G819
Groupe 32 avec G820 G829
Deux groupes de fonctions G comptant chacun dix fonctions G OEM sont rservs
l'utilisateur OEM. Ceci permet de sortir, pour une utilisation externe, les fonctions introduites
par l'utilisateur OEM.
Fonctions et sous-programmes
En outre, l'utilisateur OEM peut crer des fonctions et des sous-programmes prdfinis avec
transfert de paramtres.
Notions complmentaires
272 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.10 Rduction de l'avance avec dclration aux angles (FENDNORM, G62, G621)
Fonction
Lors de la dclration automatique aux angles, l'avance est rduite juste avant l'angle
concern selon une courbe en forme de cloche. En outre, l'tendue du comportement d'outil
pertinent pour l'usinage peut tre paramtre au moyen des donnes de rglage. Ce sont :
Dbut et fin de la rduction de l'avance
Correction de vitesse avec laquelle l'avance est rduite
Identification de l'angle pertinent
En tant qu'angles pertinents, on prend en considration les angles dont l'angle interne est
infrieur l'angle paramtr par l'intermdiaire de la donne de rglage .
La valeur par dfaut FENDNORM dsactive la fonction de correction automatique aux angles.
Bibliographie :
/FBA/ Description fonctionnelle Dialectes ISO
Syntaxe
FENDNORM
G62 G41
G621
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 273
Instructions de dplacement spciales
4.11 Critre programmable de fin de dplacement (FINEA, COARSEA, IPOENDA, IPOBRKA, ADISPOSA)
Fonction
De faon analogue aux critres de changement de bloc en interpolation de trajectoire (G601,
G602 et G603), vous pouvez programmer un critre de fin de dplacement en interpolation
d'axes individuels dans un programme pice ou une action synchrone pour axes de
commande/AP.
Selon le rglage du critre de fin de dplacement, les blocs de programme pice ou de cycle
technologique comportant des dplacements d'axes individuels se terminent plus ou moins
rapidement. Cela vaut galement pour l'AP via FC15/16/18.
Syntaxe
FINEA[<axe>]
COARSEA[<axe>]
IPOENDA[<axe>]
IPOBRKA(<axe>[,<instant>])
ADISPOSA(<axe>[,<mode>,<taille de fentre>])
Signification
Notions complmentaires
274 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.11 Critre programmable de fin de dplacement (FINEA, COARSEA, IPOENDA, IPOBRKA, ADISPOSA)
Exemples
Exemple 1 : fin de dplacement lorsque l'arrt d'interpolateur est atteint
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 275
Instructions de dplacement spciales
4.11 Critre programmable de fin de dplacement (FINEA, COARSEA, IPOENDA, IPOBRKA, ADISPOSA)
Exemple 3 : critre de changement de bloc dans la rampe de freinage dans les actions
synchrones
Code de Commentaire
programme
; Dans le cycle technologique :
FINEA ; Critre de fin de dplacement "Arrt prcis fin".
POS[X]=100 ; Le changement de bloc de cycle technologique s'effectue ds que l'axe X a atteint la
position 100 avec arrt prcis fin.
IPOBRKA(X,100) ; Activation du critre de changement de bloc "Rampe de freinage".
POS[X]=100 ; POS[X]=100 ; le changement de bloc de cycle technologique a lieu ds que l'axe X
commence freiner.
POS[X]=250 ; L'axe X ne freine pas la position 200, mais poursuit jusqu' la position 250 et le
changement de bloc a lieu dans le cycle technologique ds que l'axe X commence
freiner.
POS[X]=250 ; L'axe X freine et revient la position 0, le changement de bloc s'effectue la
position 0 avec arrt prcis fin.
M17
Informations complmentaires
Lecture du critre de fin de dplacement
Le critre de fin de dplacement rgl peut tre interrog avec la variable
systme$AA_MOTEND[<axe>] :
Valeur Signification
1 Fin du dplacement avec "Arrt prcis fin"
2 Fin du dplacement avec "Arrt prcis grossier"
3 Fin du dplacement avec "Arrt IPO"
4 Critre de changement de bloc dans la rampe de freinage de l'axe en mouvement
5 Changement de bloc dans la rampe de freinage avec fentre de tolrance rapporte la
"consigne de position
6 Changement de bloc dans la rampe de freinage avec fentre de tolrance rapporte la
"position relle
Remarque
Aprs RESET, la dernire valeur programme est conserve.
Notions complmentaires
276 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Instructions de dplacement spciales
4.11 Critre programmable de fin de dplacement (FINEA, COARSEA, IPOENDA, IPOBRKA, ADISPOSA)
Bibliographie
Pour plus d'informations sur le critre de changement de bloc des axes de positionnement,
rfrez-vous la :
Description fonctionnelle Fonctions d'extension ; axes de positionnement (P2)
Manuel de programmation Notions de base, chapitre "Rgulation par avance"
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 277
Instructions de dplacement spciales
4.12 Jeu de paramtres servo programmable (SCPARA)
Fonction
Avec SCPARA, vous pouvez dfinir le jeu de paramtres constitu de PM dans un programme
pice et des actions synchrones (jusqu' prsent, uniquement possible par le biais de l'AP).
DB3n DBB9 Bit3
Pour viter tout conflit entre demande AP et CN, un bit supplmentaire a t dfini dans
l'interface AP NCK.
DB3n DBB9 Bit3 Dfinition jeu de paramtres avec SCPARA bloque".
Dans le cas o la dfinition du jeu de paramtres avec SCPARA est bloque, il n'y a pas de
message d'erreur si la fonction est malgr tout programme.
Syntaxe
SCPARA[<axe>]=<valeur>
Signification
SCPARA
Dfinition du jeu de paramtres
<Axe>
Nom d'axe de canal (X, Y, ....)
<Valeur>
Jeu de paramtres dsir (1<= valeur <=6)
Remarque
Le jeu de paramtres actuel peut tre interrog avec la variable systme $AA_SCPAR[<axe>].
Pour les fonctions G33, G331 ou G332, la commande slectionne le jeu de paramtres le plus
appropri.
Si le changement du jeu de paramtres servo doit avoir lieur aussi bien dans un programme
pice ou une action synchrone que dans l'AP, le programme AP utilisateur doit tre tendu.
Bibliographie :
/FB1/ Manuel de fonctions de base ; Avances (V1),
Chapitre "Influence sur l'avance".
Exemple
Notions complmentaires
278 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations de coordonnes (FRAMES) 5
5.1 Transformation de coordonnes par variables frames
Fonction
En plus des possibilits prcdemment dcrites dans le manuel de programmation "Notions
de base", il est possible de dterminer des systmes de coordonnes galement avec des
variables frames prdfinies.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 279
Transformations de coordonnes (FRAMES)
5.1 Transformation de coordonnes par variables frames
; 6&3
3B3)5$0(
; 6&5
3B,)5$0(3B8,)5>@
; 6&'
3B%)5$0(3B8%)5
; 6&%
Notions complmentaires
280 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations de coordonnes (FRAMES)
5.1 Transformation de coordonnes par variables frames
$P_BFRAME
Variable frame de base courant qui tablit la corrlation entre le systme de coordonnes de
base (SCB) et le systme de coordonnes de base rglable (SBR).
Si le frame de base dfini par $P_UBFR doit tre immdiatement actif dans le programme, il
faut
soit programmer G500,G54...G599
=6&% =6&'
; 6&'
3B%)5$0(3B8%)5
; 6&%
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 281
Transformations de coordonnes (FRAMES)
5.1 Transformation de coordonnes par variables frames
$P_IFRAME
Variable frame rglable courant qui tablit la corrlation entre le systme de coordonnes de
base rglable (SBR) et le systme de coordonnes pice rglable (SPR).
$P_IFRAME correspond $P_UIFR[$P_IFRNUM]
$P_IFRAME contient, aprs la programmation de G54 par exemple, la translation, la
rotation, l'homothtie et la fonction miroir dfinies par G54 .
= 6&5
= 6&'
<
6&5
<6&'
;
6&5
; 6&'
Notions complmentaires
282 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations de coordonnes (FRAMES)
5.1 Transformation de coordonnes par variables frames
$P_PFRAME
Variable de frame programmable courante qui tablit la relation entre le systme de
coordonns-pice rglable (SPR) et le systme de coordonnes-pice (SCP).
$P_PFRAME contient le frame rsultant, obtenu
partir de la programmation de TRANS/ATRANS, ROT/AROT, SCALE/ASCALE, MIRROR/AMIRROR
ou
partir de l'affectation de CTRANS, CROT, CMIRROR, CSCALE au frame programmable.
= 6&3
= (16
= %16
<
(16
< %16
<
6&3
; 6&3
; (16
; %16
$P_ACTFRAME
Frame rsultant courant, obtenu par concatnation
de la variable frame de base courante $P_BFRAME,
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 283
Transformations de coordonnes (FRAMES)
5.1 Transformation de coordonnes par variables frames
= 6&3
=
= 6&% (16
= %16
<(16
< %16
<6&3
; 6&3
; (16
; %16
; 6&%
,QWURGXFWLRQYLDSURJUDPPH ,QWURGXFWLRQYLDSURJUDPPHSDU
SDUH[B8%)5 &75$16; H[3B8,)5>Q@ &75$16;
,QWURGXFWLRQYLD ,QWURGXFWLRQYLD
+0,00& +0,00&
3B8%)5 3B8,)5>Q@
DFWLYYLD
***
,QWURGXFWLRQYLDSURJUDPPHSDU ,QWURGXFWLRQYLDSURJUDPPHSDUH[
H[3B%)5$0( &75$16; 3B3)5$0( &75$16;
RX75$16;
,QWURGXFWLRQYLDSURJUDPPHSDU
H[3B,)5$0( &75$16;
Notions complmentaires
284 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations de coordonnes (FRAMES)
5.1 Transformation de coordonnes par variables frames
Remarque
Ceci permet de crer 100 systmes de coordonnes en tout, qui peuvent tre appels par
tous les programmes, par exemple comme origines pour diffrents montages d'usinage.
PRUDENCE
La programmation de variables frames et { de frames se fait dans un bloc CN spcifique.
Exception :Programmation d'un frame rglable avec G54, G55 , ...
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 285
Transformations de coordonnes (FRAMES)
5.2 Affectation de valeurs des variables frames / frames
Fonction
Vous pouvez affecter directement des valeurs des frames ou des variables frames dans
le programme CN.
Syntaxe
$P_PFRAME=CTRANS (X, valeur d'axe, Y, valeur d'axe, Z, valeur d'axe, )
$P_PFRAME=CROT (X, angle, Y, angle, Z, angle, )
$P_UIFR[..]=CROT (X, angle, Y, angle, Z, angle, )
$P_PFRAME=CSCALE (X, chelle, Y, chelle, Z, chelle, )
$P_PFRAME=CMIRROR (X, Y, Z)
La programmation de $P_BFRAME est analogue celle de $P_PFRAME.
Signification
Notions complmentaires
286 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations de coordonnes (FRAMES)
5.2 Affectation de valeurs des variables frames / frames
Exemple
L'affectation des valeurs au frame programmable courant active la translation, la rotation et
la fonction miroir.
=
<
<
<
;
= ;
<
&75$16
&527
&0,5525
;
N10 $P_PFRAME=CTRANS(X,10,Y,20,Z,5):CROT(Z,45):CMIRROR(Y)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 287
Transformations de coordonnes (FRAMES)
5.2 Affectation de valeurs des variables frames / frames
Description
Vous pouvez programmer successivement plusieurs rgles opratoires.
Exemple :
$P_PFRAME=CTRANS(...):CROT(...):CSCALE...
Attention : les instructions doivent tre lies entre elles par l'oprateur de concatnation
deux-points ():(). Les instructions sont ainsi, d'une part, combines l'une l'autre et,
d'autre part, excutes de manire additive dans l'ordre programm.
/(
&$
&6
&527
$16
&75
Remarque
Les valeurs programmes avec les instructions indiques sont affectes aux frames et
mises en mmoire.
Les valeurs ne deviennent actives que lorsqu'elles sont affectes au frame d'une variable
frame active $P_BFRAME ou $P_PFRAME .
Notions complmentaires
288 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations de coordonnes (FRAMES)
5.2 Affectation de valeurs des variables frames / frames
5.2.2 Lecture et modification de composantes de frames (TR, FI, RT, SC, MI)
Fonction
Vous avez la possibilit d'accder des donnes individuelles d'un frame, par exemple
une valeur de dcalage ou un angle de rotation bien dfini. Vous pouvez modifier ces
valeurs ou les affecter une autre variable.
Syntaxe
R10=$P_UIFR[$P_UIFNUM,X,RT]
L'angle de rotation RT autour de l'axe X issu du dcalage
d'origine rglable actuellement valide $P_UIFRNUM doit
tre affect la variable R10.
R12=$P_UIFR[25,Z,TR]
La valeur de dcalage TR dans Z, issue du bloc de
donnes du frame n 25 rgl, doit tre affecte la
variable R12.
R15=$P_PFRAME[Y,TR]
La valeur de dcalage TR en Y du frame programmable
courant doit tre affecte la variable R15.
$P_PFRAME[X,TR] = 25
La valeur de dcalage TR en X du frame programmable
courant doit tre modifie. X25 s'applique ds prsent.
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 289
Transformations de coordonnes (FRAMES)
5.2 Affectation de valeurs des variables frames / frames
Description
Appeler le frame
En indiquant la variable systme $P_UIFRNUM, vous pouvez accder directement au
dcalage d'origine courant, rgl avec $P_UIFR ou G54, G55,
($P_UIFRNUM contient le n du frame courant rgl).
Vous appelez tous les autres frames rglables mmoriss $P_UIFR en indiquant le n {
correspondant $P_UIFR[n].
Pour les variables frames prdfinies et les frames que vous avez dfinis vous-mme,
indiquez le nom, par exemple $P_IFRAME.
Appeler les donnes
Le nom de l'axe et la composante de frame laquelle vous voulez accder ou que vous
voulez modifier figurent entre crochets droits, par ex. [X, RT] ou [Z, MI].
Fonction
Dans le programme CN, un frame complet peut tre affect un autre frame ou bien des
frames peuvent tre concatns.
On utilise la concatnation de frames pour dcrire par exemple plusieurs pices disposes
sur une palette et qui doivent tre usines en un seul cycle.
=
<
*
Pour la description des tches d'usinage sur palette, les composantes de frame pourraient,
par exemple, ne contenir que certaines valeurs partielles dont la concatnation pourraient
gnrer diffrentes origines pice.
Notions complmentaires
290 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations de coordonnes (FRAMES)
5.2 Affectation de valeurs des variables frames / frames
Syntaxe
Affectation de frames
Concatnation de frames
Les frames sont concatns dans l'ordre programm, les composantes de frame (dcalages,
rotations, etc.) tant excutes successivement et de manire additive.
Remarque
N'oubliez pas que les frames doivent tre relis entre eux par l'oprateur de concatnation :
(deux-points)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 291
Transformations de coordonnes (FRAMES)
5.2 Affectation de valeurs des variables frames / frames
Fonction
Outre les frames rglables prdfinis dcrits jusqu'ici, vous pouvez galement crer de
nouveaux frames. Il s'agit de variables du type frame auxquelles vous attribuez un nom de
votre choix.
Les fonctions CTRANS, CROT, CSCALE et CMIRROR vous permettent d'affecter des
valeurs vos frames dans le programme CN.
Syntaxe
DEF FRAME PALETTE1
PALETTE1=CTRANS():CROT()
Signification
Notions complmentaires
292 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations de coordonnes (FRAMES)
5.3 Dcalage grossier et dcalage fin (CFINE, CTRANS)
Fonction
Dcalage fin
L'instruction CFINE(X, ...,Y ...) permet de programmer un dcalage fin du frame de
base et de tous les frames rglables.
Un dcalage fin n'est possible que si le paramtre machine MD18600
$MN_MM_FRAME_FINE_TRANS=1.
Dcalage grossier
CTRANS(...) permet de dfinir le dcalage grossier.
+RPRWKWLH
)RQFWLRQPLURLU
5RWDWLRQ
'FDODJHILQ
'FDODJHJURVVLHU
6WUXFWXUHGHIUDPHDYHFGFDODJHILQ
Syntaxe
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 293
Transformations de coordonnes (FRAMES)
5.3 Dcalage grossier et dcalage fin (CFINE, CTRANS)
L'accs aux composantes dcalage fin d'un frame a lieu l'aide de FI (Translation Fine).
Signification
Constructeur de la machine-outil
Avec le paramtre machine MD18600 $MN_ MM_FRAME_FINE_TRANS, vous pouvez
configurer le dcalage fin de deux manires :
0:
le dcalage fin ne peut tre ni introduit ni programm. G58 et G59 sont impossibles.
1:
le dcalage fin peut tre introduit ou programm pour les frames rglables, les frames de
base, les frames programmables, G58 et G59.
Description
Un dcalage fin modifi via le tableau de commande HMI n'est actif qu'aprs activation du
frame correspondant, c'est--dire aprs activation par G500, G54...G599. Le dcalage fin
d'un frame reste actif aussi longtemps que le frame l'est.
Le frame programmable ne possde pas de composante dcalage fin. Si un frame avec
dcalage fin est affect au frame programmable, le dcalage total de ce dernier rsulte de la
somme du dcalage grossier et du dcalage fin. Lors de la lecture du frame programmable,
le dcalage fin est toujours nul.
Notions complmentaires
294 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations de coordonnes (FRAMES)
5.4 Dcalage d'origine externe
Fonction
Il s'agit d'une autre possibilit pour dcaler l'origine entre le systme de coordonnes de
base et le systme de coordonnes pice.
Dans le cas du dcalage d'origine externe, vous ne pouvez programmer que des dcalages
linaires.
; 635
**
; 6%5
)UDPHGHEDVH
'FDODJHG
RULJLQHH[WHUQH
'FDODJH'5)
; 6&%
7UDQVIRUPDWLRQFLQPDWLTXH
; 6&0
'FDODJH3UHVHW
Programmation
La programmation des valeurs de dcalage, $AA_ETRANS s'effectue en affectant des
valeurs aux variables systme spcifiques aux axes.
Affecter une valeur de dcalage
$AA_ETRANS[axe]=RI
RI est la variable de calcul du type REAL qui contient la nouvelle valeur.
Le dcalage externe n'est en gnral pas indiqu dans le programme pice, mais est
spcifi par l'AP.
Remarque
La valeur crite dans le programme pice ne prend effet que lorsque le signal correspondant
est activ au niveau de l'interface VDI (interface NCU-AP).
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 295
Transformations de coordonnes (FRAMES)
5.5 Dcalage Preset (PRESETON)
Fonction
Pour certaines applications spcifiques, il peut tre ncessaire d'affecter une nouvelle valeur
relle programme la position courante d'un ou de plusieurs axes ( l'arrt).
PRUDENCE
Avec la fonction PRESETON, le point de rfrence perd sa validit. Par consquent,
utilisez cette fonction uniquement pour les axes sans point de rfrence obligatoire. Pour
rtablir le systme initial, il est ncessaire d'accoster les points de rfrence avec G74
voir chapitre "Gestion des fichiers et programmes".
<6&0 <6&0
7UDQVIRUPDWLRQFLQPDWLTXH
; 6&0
'FDODJH3UHVHW
Syntaxe
PRESETON(axe, valeur, ...)
Signification
Remarque
Le forage de la valeur relle avec des actions synchrones ne devrait s'effectuer qu'avec les
mots-cl "WHEN" ou "EVERY".
Notions complmentaires
296 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations de coordonnes (FRAMES)
5.5 Dcalage Preset (PRESETON)
Exemple
L'affectation des valeurs relles se fait dans le systme de coordonnes machine - les
valeurs se rapportent aux axes machine.
N10 G0 A760
N20 PRESETON(A1,60)
L'axe A accoste la position 760. A la position 760, l'axe machine A1 reoit la nouvelle valeur
relle 60. { Ds lors, le positionnement s'effectue dans le nouveau systme de coordonnes.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 297
Transformations de coordonnes (FRAMES)
5.6 Calcul d'un frame partir de 3 points mesurs dans l'espace (MEAFRAME)
Fonction
MEAFRAME est une extension du langage 840D pour l'assistance des cycles de mesure.
La fonction MEAFRAME calcule le frame partir de trois points idaux et des points
mesurs correspondants.
Lorsqu'une pice est positionne pour l'usinage, sa position dans le systme de
coordonnes cartsiennes machine est en gnral dcale et pivote par rapport sa
position idale. Pour un usinage ou une mesure prcise, un rglage physique onreux ou
une modification des dplacements dans le programme pice est ncessaire.
Un frame peut tre dtermin par palpage de trois points dans l'espace, dont les positions
idales sont connues. Le palpage s'effectue avec un capteur optique ou contact qui
accoste des trous ou des billes de mesure qui ont t positionns avec une grande prcision
sur la plaque support.
Syntaxe
MEAFRAME IDEAL_POINT,MEAS_POINT,FIT_QUALITY)
Signification
Notions complmentaires
298 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations de coordonnes (FRAMES)
5.6 Calcul d'un frame partir de 3 points mesurs dans l'espace (MEAFRAME)
Remarque
Qualit de la mesure
Pour que les coordonnes mesures puissent tre mises en relation avec les coordonnes
idales par une rotation/translation combines, il doit y avoir congruence entre le triangle
form par les points mesurs et le triangle idal. Ceci est obtenu par un algorithme de
compensation qui minimise la somme des carrs des carts qui permettent de passer du
triangle mesur au triangle idal.
La distorsion effectivement ncessaire des points mesurs tant le reflet de la qualit de la
mesure, elle est fournie par MEAFRAME en tant que variable supplmentaire.
Remarque
Le frame cr par MEAFRAME peut, l'aide de la fonction ADDFRAME, tre transform en un autre
frame de la chane de frames.
Voir exemple : Concatnation de frames "Concatnation avec ADDFRAME".
Pour de plus amples informations pour les paramtres de ADDFRAME(FRAME,STRING), voir
/FB1/ Manuel de fonctions de base; axes, systmes de coordonnes, frames (K2), chapitre
"Concatnation de frames".
Exemple
Programmation Commentaire
DEF REAL IDEAL_POINT[3,3] = SET(10.0,0.0,0.0, 0.0,10.0,0.0,
0.0,0.0,10.0)
DEF REAL MEAS_POINT[3,3] = SET ; Pour le test
(10.1,0.2,-0.2, -0.2,10.2,0.1, -0.2,0.2,9.8)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 299
Transformations de coordonnes (FRAMES)
5.6 Calcul d'un frame partir de 3 points mesurs dans l'espace (MEAFRAME)
Notions complmentaires
300 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations de coordonnes (FRAMES)
5.6 Calcul d'un frame partir de 3 points mesurs dans l'espace (MEAFRAME)
Les paramtres d'entre pour les valeurs relles et les valeurs de consigne sont les
coordonnes de la pice. Dans le systme de base de la commande, ces coordonnes
doivent tre indiqus en
mm ou en pouces (G71/G70) et en tant que
mesure portant sur le rayon
(DIAMOF).
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 301
Transformations de coordonnes (FRAMES)
5.7 Frames dfinition globale pour NCU
Fonction
Les frames dfinition globale pour NCU sont disponibles une seule fois par NCU, pour tous
les canaux. Ils peuvent tre crass et lus par tous les canaux. L'activation des frames
dfinition globale pour NCU a lieu dans le canal correspondant.
Les frames dfinition globale permettent d'appliquer des dcalages, des changements
d'chelle et des fonctions miroir des axes de canal ou des axes machine.
Liens gomtriques et concatnations de frames
Dans le cas de ces frames, il n'existe pas de lien gomtrique entre les axes. C'est pourquoi
les rotations et la programmation de descripteurs d'axes gomtriques sont impossibles.
Les frames dfinition globale ne peuvent contenir aucune composante de rotation. La
programmation d'une rotation est refuse avec mission de l'alarme : "18310 Canal %1
Bloc %2 Frame : rotation non autorise".
La concatnation de frames dfinition globale et de frames spcifiques un canal est
possible. Le frame rsultant contient toutes les composantes des frames, y compris les
rotations pour tous les axes. L'affectation d'un frame comportant des composantes de
rotation un frame dfinition globale est refuse avec mission de l'alarme "Frame :
rotation non autorise".
Notions complmentaires
302 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations de coordonnes (FRAMES)
5.7 Frames dfinition globale pour NCU
Fonction
Les frames rglables ou les frames de base peuvent tre crass et lus par l'oprateur (ex.
HMI Advanced) et par l'AP
par l'intermdiaire du programme pice et
par l'intermdiaire de l'OPi.
Le dcalage fin est galement possible pour les frames dfinition globale. L'inhibition de
frames dfinition globale a lieu comme pour les frames spcifiques un canal, avec G53,
G153, SUPA et G500.
Constructeur de la machine-outil
Le PM 28081 MM_NUM_BASE_FRAMES permet de dfinir le nombre de frames de base
dans un canal. En configuration standard, il existe au moins un frame de base par canal. 8
frames de base sont possibles au maximum par canal. En plus de ces 8 frames de base, 8
frames de base dfinition globale pour NCU peuvent galement exister dans le canal.
$P_UBFR
$P_UBFR est identique $P_CHBFR[0]. En version standard, il y a toujours un frame de base
dans le canal, de sorte que la variable systme est compatible avec les versions de logiciel
prcdentes. S'il n'y a pas de frame de base spcifique au canal, l'alarme "Frame :
instruction non autorise" est mise lors de l'criture ou de la lecture.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 303
Transformations de coordonnes (FRAMES)
5.7 Frames dfinition globale pour NCU
Fonction
Les frames actifs dans un canal sont introduits par le programme pice via les variables
systme respectives de ces frames. Les frames systme en font galement partie. Ces
variables systme permettent de lire et d'craser le frame systme courant dans le
programme pice.
Notions complmentaires
304 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations de coordonnes (FRAMES)
5.7 Frames dfinition globale pour NCU
3B$&7%)5$0(
6%5
; 6%5
FRQILJXUDEOHYLD
3B&+%)5$0(>Q@Q0&B00B180B%$6(B)5$0(6
3B&+%)5$0(>@ 3B%)5$0(
FRQILJXUDEOHYLD
3B1&%)5$0(>Q@Q01B00B180B*/2%$/B%$6(B)5$0(6
;
3B1&%)5$0(>@
; 6&%
6%5 6\VWPHGHFRRUGRQQHVGHEDVHUJODEOH
6&%
6&% 6\VWPHGHFRRUGRQQHVGHEDVH
3$&7%)5$0( 3B1&%)5$0(>@3B1&%)5$0(>Q@3B&+%)5$0(>@3B&+%)5$0(>Q@
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 305
Transformations de coordonnes (FRAMES)
5.7 Frames dfinition globale pour NCU
par ex.
$P_NCBFRMASK = 'H81' ;$P_NCBFRAME[0] : $P_NCBFRAME[7]
$P_CHBFRMASK = 'H11' ;$P_CHBFRAME[0] : $P_CHBFRAME[4]
$P_IFRAME Frame rglable courant
La variable frame prdfinie $P_IFRAME permet de lire et d'craser, dans le programme
pice, le frame rglable courant qui est valide dans le canal. Le frame rglable cras est
pris immdiatement en considration.
Dans le cas des frames rglables dfinition globale pour NCU, le frame modifi n'est actif
que dans le canal dans lequel le frame a t programm. Si le frame doit tre modifi pour
tous les canaux d'une NCU, il faut craser simultanment $P_UIFR[n] et $P_IFRAME. Ensuite,
le frame correspondant doit encore tre activ dans les autres canaux l'aide de G54, par
ex.
$P_PFRAME Frame programmable courant
$P_PFRAME est le frame programmable obtenu partir de la programmation de TRANS/ATRANS,
G58/G59, ROT/AROT, SCALE/ASCALE, MIRROR/AMIRROR ou de l'affectation de CTRANS, CROT,
CMIRROR, CSCALE au FRAME programmable.
Notions complmentaires
306 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations de coordonnes (FRAMES)
5.7 Frames dfinition globale pour NCU
DFWLYYLD DFWLYYLD
*** ***
)UDPHUVXOWDQW
,QWURGXFWLRQYLDSURJUDPPHSDUH[
)UDPHUVXOWDQWDFWLI 3B1&%)5$0(>@ &75$16;
3B722/)5$0( 3B:3)5$0(
3B75$)5$0( 3B3)5$0( 3B&<&)5$0(
,QWURGXFWLRQYLDSURJUDPPHSDUH[
,QWURGXFWLRQYLDSURJUDPPHSDUH[
3B3)5$0( &75$16; 3B,)5$0( &75$16;
75$16;
RX
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 307
Transformations de coordonnes (FRAMES)
5.7 Frames dfinition globale pour NCU
Concatnation de frames
Le frame courant rsulte de la concatnation du frame de base rsultant, du frame rglable,
du frame systme et du frame programmable (voir frame rsultant courant, ci-dessus).
&KDQHGHIUDPHV
6&3
)UDPHSRXUF\FOHVIUDPHSURJUDPPDEOH
WUDQVIRUPDWLRQV
635
)UDPHV\VWPHSRXU72527
72)5$0(SLFHV
**IUDPHUJODEOHVSFLIDX
FDQDORXYDOLGLWJORESRXUOD1&8
6%5
7DEOHDXFRQFDWHQGHIUDPHVGHEDVH
VSFLIDXFDQDOHWRXYDOLGLWJORESRXUOD1&8
)UDPHVV\VWPHFRQFDWHQVSRXU3$527SUUJODJHGHVYDOHXUV
UHOOHVHIIOHXUHPHQWGFDODJHG
RULJLQHH[WHUQHH[W
7UDQVIRUPDWLRQFLQPDWLTXH
6&0
'FDODJHGXSRLQWGHUIUHQFH
Notions complmentaires
308 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations 6
6.1 Programmation gnrale des types de transformation
Fonctionnement gnral
Pour adapter la commande diffrentes cinmatiques de machine, il est possible de
programmer une slection de types de transformation avec des paramtres appropris. Par
le biais de ces paramtres, il est possible, pour la transformation choisie, de convenir de
l'orientation approprie de l'outil dans l'espace, mais aussi des mouvements d'orientation
des axes rotatifs.
Avec les transformations trois, quatre ou cinq axes, les indications de position programmes
se rfrent toujours la pointe de l'outil qui est poursuivie perpendiculairement la surface
d'usinage dans l'espace. Les coordonnes cartsiennes sont converties du systme de
coordonnes de base au systme de coordonnes machine et se rapportent aux axes
gomtriques. Ceux-ci dcrivent le point de fonctionnement. Les axes rotatifs virtuels
dcrivent les orientations de l'outil dans l'espace et se programment avec TRAORI.
Lors de la transformation cinmatique, il est possible de programmer des positions dans le
systme de coordonnes cartsiennes. La commande transforme les dplacements du
systme de coordonnes cartsiennes programms avec TRANSMIT, TRACYL et TRAANG
en dplacements des axes machine rels.
Programmation
Transformations trois, quatre et cinq axes TRAORI
La transformation d'orientation convenue est active avec l'instruction TRAORI et les trois
paramtres possibles pour numro transfo, vecteur d'orientation et dcalages d'axes rotatifs.
TRAORI(numro transfo, vecteur d'orientation, dcalages d'axes rotatifs)
Transformations cinmatiques
Parmi les transformations cinmatique, on compte les transformations convenues
TRANSMIT(numro transfo)
TRACYL(diamtre d'usinage, numro transfo)
TRAANG(angle de l'axe en oblique, numro transfo)
Dsactiver la transformation active
TRAFOOF permet de dsactiver la transformation active ce moment.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 309
Transformations
6.1 Programmation gnrale des types de transformation
Transformation d'orientation
Transformations trois, quatre et cinq axes TRAORI
Pour usiner de manire optimale des surfaces relief irrgulier dans la zone de travail de la
machine, les machines-outils ont besoin d'axes supplmentaires en plus des trois axes
linaires X, Y et Z. Les axes supplmentaires dcrivent l'orientation dans l'espace et sont
nomms ci-aprs "axes d'orientation". On en dispose sous forme d'axes de rotation sur
quatre types de machines dotes d'une cinmatique diffrente.
1. Tte pivotante sur deux axes, par exemple tte d'outil Cardan avec un axe rotatif
parallle un axe linaire, le plateau porte-outil tant fixe.
2. Plateau tournant sur deux axes, par exemple tte pivotante fixe avec plateau porte-outil
pivotant sur deux axes.
3. Tte pivotante sur un axe et plateau tournant sur un axe, par exemple tte pivotante
tournante avec outil orientable et plateau porte-outil pivotant sur un axe.
4. Tte pivotante sur deux axes et plateau tournant sur un axe, par exemple plateau porte-
outil pivotant sur un axe et tte pivotante tournante avec outil tournant autour de son
propre axe.
Les transformations 3 et 4 axes sont des formes particulires des transformations 5 axes et
se programment de manire analogue aux transformations 5 axes.
La "transformation gnrique 3, 4, 5, 6 axes" couvre grce l'tendue de ses fonctions pour
les axes rotatifs disposs angle droit ainsi que les transformations pour la tte de fraisage
Cardan et peut tre active avec TRAORI comme toute autre transformation d'orientation
pour ces quatre types de machine. En cas de transformation gnrique 5/6 axes,
l'orientation de l'outil dispose d'un troisime degr de libert pour lequel l'outil peut tourner
sur son axe propre dans l'espace pour la direction de l'outil.
Bibliographie : /FB3/ Manuel de fonctions spciales ; Transformation 3 5 axes (F2).
Notions complmentaires
310 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.1 Programmation gnrale des types de transformation
Transformations cinmatiques
TRANSMIT et TRACYL
Pour les fraisages effectuer sur des tours, on peut, pour la transformation convenue,
programmer soit
1. un usinage frontal avec TRANSMIT dans le dispositif de serrage du tour ou
2. un usinage de rainures quelconques sur des corps cylindriques avec TRACYL.
TRAANG
Si l'axe de pntration doit aussi pouvoir pntrer en oblique (pour une utilisation en
rectification par exemple), on peut, avec TRAANG, programmer un angle paramtrable pour
la transformation convenue.
Dplacement PTP cartsien
Ce que l'on appelle le "dplacement PTP cartsien", dans lequel on peut programmer
jusqu' 8 positions d'articulations STAT= diffrentes, fait galement partie de la
transformation cinmatique. Les positions sont programmes dans le systme de
coordonnes cartsiennes, le dplacement de la machine s'effectuant en coordonnes
machine.
Bibliographie :
/FB2/ Manuel de fonctions d'extension ; transformation cinmatique (M1)
Transformations concatnes
Il est possible d'effectuer deux transformations successives. Pour la deuxime
transformation ainsi concatne, les trajets des axes sont repris partir de la premire
transformation.
La premire transformation peut tre :
la transformation de l'orientation TRAORI
Transformation polaire TRANSMIT
Transformation de cylindre TRACYL
Transformation d'axe oblique TRAANG
La deuxime transformation doit tre de type "axe oblique TRAANG"
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 311
Transformations
6.1 Programmation gnrale des types de transformation
3ODWHDXSRUWHRXWLOIL[H
$
;
2XWLOWRXUQ 2XWLOWRXUQ3LFH 3LFHWRXUQH
WRXUQH
Notions complmentaires
312 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.1 Programmation gnrale des types de transformation
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 313
Transformations
6.1 Programmation gnrale des types de transformation
Notions complmentaires
314 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.1 Programmation gnrale des types de transformation
Exemple Transformation trois cinq axes pour une tte de fraisage Cardan
La machine-outil comporte au moins 5 axes, dont
Trois par translation pour des mouvements rectilignes dplaant le point de
fonctionnement n'importe quelle position dans l'espace de travail.
Deux axes de pivotement rotatifs disposs selon un angle configurable (gnralement 45
degrs) permettant l'outil d'adopter des orientations dans l'espace qui se limitent une
demi-sphre pour une disposition 45 degrs.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 315
Transformations
6.1 Programmation gnrale des types de transformation
Notions complmentaires
316 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Fonction
Pour runir des conditions de coupe optimales lors de l'usinage de surfaces courbes, il est
ncessaire de pouvoir modifier l'angle d'inclinaison de l'outil.
$[HGHO
RXWLO
Transformation 5 axes
Tte de fraisage de type cardan
Trois axes linaires (X, Y, Z) et deux axes d'orientation (C, A) dterminent l'angle
d'inclinaison et le point d'attaque de l'outil. L'un des deux axes d'orientation - dans l'exemple
A' - est inclin, souvent 45.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 317
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
$
= <
&
;
7WHGHIUDLVDJHGHW\SHFDUGDQYDULDQWH
Dans les exemples montrs ici, vous voyez les dispositions illustres avec la tte d'outil
Cardan de la cinmatique de machine CA!
Constructeur de la machine-outil
La succession d'axes des axes d'orientation et la direction d'orientation de l'outil peuvent se
rgler en fonction de la cinmatique de machine par le biais de paramtres machine.
$
&
7WHGHIUDLVDJHGHW\SHFDUGDQYDULDQWH
Sur cet exemple, A' se trouve sous l'angle par rapport l'axe X
Notions complmentaires
318 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
% <
La succession d'axes des axes rotatifs et la direction d'orientation de l'outil sont peuvent se
rgler en fonction de la cinmatique de machine par le biais de paramtres machine.
Les corrlations possibles sont les suivantes :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 319
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Fonction
L'utilisateur peut configurer deux ou trois axes linaires et un axe rotatif. On suppose que
l'axe rotatif est perpendiculaire au plan d'orientation.
L'orientation de l'outil est possible uniquement dans le plan perpendiculaire l'axe rotatif.
Les transformations sont plus particulirement destines aux machines avec outil et pice
mobiles.
La configuration et la programmation des transformations 3 axes et 4 axes sont analogues
aux transformations 5 axes.
Bibliographie :
Description fonctionnelle Fonctions spciales ; Transformations multi-axes (F2)
Syntaxe
TRAORI(<n>)
TRAORI(<n>,<X>,<Y>,<Z>,<A>,<B>)
TRAFOOF
Signification
Remarque
Ds que la transformation est active, les indications de position (X, Y, Z) se rfrent
toujours la pointe de l'outil. Toute modification des positions des axes rotatifs impliqus
dans la transformation entrane des dplacements compensatoires des autres axes
machine, ce qui permet que la position de la pointe de l'outil reste inchange.
Notions complmentaires
320 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Exemples
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 321
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Remarque
Variantes de programmation d'orientation pour transformations trois cinq axes
Dans le cas de la transformation trois cinq axes, les variantes
1. A, B, C indication directe des positions des axes machine
2. A2, B2, C2 programmation des angles des axes virtuels par le biais d'angles d'Euler ou
d'angles RPY
3. A3 ,B3, C3 indication des composantes vectorielles
4. LEAD, TILT indication des angles d'avance et des angles latraux par rapport la
trajectoire et la surface
5. A4, B4, C4 et A5, B5, C5 vecteur normal la surface en dbut et en fin de bloc
6. A6, B6, C6 et A7, B7, C7 interpolation du vecteur d'orientation sur une enveloppe de cne
7. A8, B8, C8 rorientation de l'outil, direction et longueur de parcours du mouvement de
retrait
s'excluent mutuellement.
Des messages d'alarme empchent une programmation mixte de valeurs.
Remarque
Uniquement lorsque une transformation d'orientation est active avec TRAORI(...), une
position initiale de l'orientation de l'outil peut tre programme indpendamment de la
cinmatique avec ORIRESET(...) sans alarme 14101.
Exemples
Notions complmentaires
322 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Fonction
On dispose des possibilits suivantes pour programmer l'orientation de l'outil:
1. Programmation directe du dplacement des axes rotatifs. Le changement d'orientation
s'effectue toujours dans le systme de coordonnes de base ou dans le systme de
coordonnes machine. Les axes d'orientation sont dplacs sous forme d'axes
synchrones.
2. Programmation dans les angles Euler ou RPY selon la dfinition d'angle via A2, B2, C2.
3. Programmation du vecteur de direction par le biais de A3, B3, C3. Le vecteur de direction
est dirig de la pointe de l'outil vers le porte-outil.
4. Programmation du vecteur normal la surface en dbut de bloc avec A4, B4, C4 et en fin
de bloc avec A5, B5, C5 (fraisage avant).
5. Programmation par le biais de l'angle d'avance LEAD et de l'angle latral TILT
6. Programmation de l'axe rotatif du cne comme vecteur norm par le biais de A6, B6, C6
ou de l'orientation intermdiaire sur l'enveloppe du cne par le biais de A7, B7, C7,
voir chapitre "Programmation de l'orientation le long d'une enveloppe de cne
(ORIPLANE, ORICONxx)".
7. Programmation de rorientation, de direction et longueur de parcours de l'outil pendant le
mouvement de retrait via A8, B8, C8,
voir chapitre "Lissage du trac d'orientation (ORIPATHS A8=, B8=, C8=)"
Remarque
Dans tous les cas, la programmation de l'orientation est autorise uniquement si une
transformation d'orientation est active.
Avantage : ces programmes sont transposables sur n'importe quelle cinmatique de
machine.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 323
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Remarque
Constructeur de la machine-outil
Le paramtre machine permet de commuter entre angle Euler ou RPY. Avec des
paramtres machine adapts, une commutation aussi bien dpendante qu'indpendante du
code G actif du groupe 50 est possible. Les paramtrages suivants sont possibles :
1. Lorsque les deux paramtres machine pour la dfinition des axes d'orientation et la
dfinition de l'angle d'orientation sont remis zro par le code G :
Les angles programms avec A2, B2, C2 sont interprts en fonction du paramtre
machine Dfinition de l'angle de la programmation d'orientation soit comme des angles
Euler soit comme des angles RPY.
2. Lorsque le paramtre machine pour la dfinition des axes d'orientation est mis un par le
code G, la commutation a lieu
en fonction du code G actif du groupe 50 :
Les angles programms avec A2, B2, C2 sont interprts selon l'un des codes G actifs
ORIEULER, ORIRPY, ORIVIRT1, ORIVIRT2, ORIAXPOS et ORIPY2. Les valeurs programmes
avec les axes d'orientation sont galement interprtes comme angles d'orientation selon
le code G actif du groupe 50.
3. Lorsque le paramtre machine pour la dfinition des angles d'orientation au moyen du
code G est mis un et le paramtre machine pour la dfinition des axes d'orientation au
moyen du code G est mis zro, la commutation s'effectue
indpendamment du code G actif dans le groupe 50 :
les angles programms avec A2, B2, C2 sont interprts en fonction de l'un des codes G
ORIEULER, ORIRPY, ORIVIRT1, ORIVIRT2 ORIAXPOS et ORIPY2 actifs. Les valeurs
programmes avec les axes d'orientation sont toujours interprtes comme positions
d'axe rotatif, indpendamment code G actif du groupe 50.
Programmation
G1 X Y Z A B C
Programmation du dplacement des axes rotatifs
G1 X Y Z A2= B2= C2=
Programmation en angles d'Euler
G1 X Y Z A3== B3== C3==
Programmation du vecteur de direction
G1 X Y Z A4== B4== C4==
Programmation du vecteur normal la surface en
dbut de bloc
G1 X Y Z A5== B5== C5==
Programmation du vecteur normal la surface en
fin de bloc
LEAD=
Angle d'avance pour la programmation de
l'orientation de l'outil
TILT=
Angle latral pour la programmation de
l'orientation de l'outil
Notions complmentaires
324 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Paramtres
VDQVWUDQVIRUPDWLRQD[HV
DYHFWUDQVIRUPDWLRQD[HV
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 325
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Description
En rgle gnrale, les programmes 5 axes sont gnrs par des systmes de CAO/FAO et
ne sont pas entrs au pied de la machine. C'est pourquoi les explications suivantes
s'adressent principalement aux programmeurs de postprocesseurs.
Le type de programmation d'orientation est dtermine dans le code G du groupe 50 :
ORIEULER par angle d'Euler
ORIRPY par angle RPY (ordre de rotation ZYX)
ORIVIRT1 par les axes d'orientation virtuels (dfinition 1)
ORIVIRT2 par les axes d'orientation virtuels (dfinition 2)
ORIAXPOS par les axes d'orientation virtuels avec positions d'axe rotatif
ORIPY2 par angle RPY (ordre de rotation XYZ)
Constructeur de la machine-outil
Le constructeur de la machine-outil peut dfinir diffrentes variantes via des paramtres
machine. Tenez compte des indications du constructeur de la machine.
= =
= < = ;
<
; < <
DYHFURWDWLRQGH
$ rDXWRXU
GHO
D[H=
; ;
,QLWLDOLVDWLRQ
=
=
< ;
%
< DYHFURWDWLRQGH
% r
DXWRXUGHO
D[H;
;VXLWODURWDWLRQ
; <
Dans ce cas, la valeur de C2 (rotation autour du nouvel axe Z) est sans signification et n'est
pas programmer.
Notions complmentaires
326 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Remarque
Contrairement la programmation en angles d'Euler { , les trois valeurs agissent ici sur le
vecteur d'orientation
Constructeur de la machine-outil
En cas de dfinition d'angle d'orientation par l'angle RPY, on a, pour les axes d'orientation,
$MC_ORI_DEF_WITH_G_CODE = 0
Le vecteur d'orientation est obtenu en faisant pivoter un vecteur en direction Z d'abord avec
C2 autour de l'axe Z, puis avec B2 autour du nouvel axe Y et enfin avec A2 autour du nouvel
axe X.
= =
= = <
; < %
&
<
; ,QLWLDOLVDWLRQ
; <
= = <
DYHFURWDWLRQGH
& r
; DXWRXUGHO
D[H=
$ DYHFURWDWLRQGH
DYHFURWDWLRQGH % r
$ r DXWRXUGHO
D[H<
DXWRXUGHO
D[H; <VXLWODURWDWLRQ
;VXLWOD ; <
URWDWLRQ
Lorsque le paramtre machine pour la dfinition des axes d'orientation via le code G
$MC_ORI_DEF_WITH_G_CODE = 1, alors :
Le vecteur d'orientation rsulte de la rotation d'un vecteur dans la direction Z autour de l'axe
Z avec A2, puis autour de l'axe Y avec B2 et enfin autour du nouvel axe X avec C2.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 327
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
YHFWHXUGHGLUHFWLRQ
&
<
%
$
Notions complmentaires
328 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
/($'
<
7,/7 ;
6.2.5 Fraisage en bout (fraisage 3D A4, B4, C4, A5, B5, C5)
Fonction
Le fraisage en bout sert l'usinage des surfaces courbure quelconque.
$
%
& $
%
&
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 329
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Pour ce type de fraisage 3D, vous avez besoin de la description des diffrentes trajectoires
3D qui balayent la surface de la pice, ligne aprs ligne.
Les calculs sont gnralement raliss l'aide d'un systme de FAO, en tenant compte de
la forme et des dimensions de l'outil. Les blocs CN gnrs sont ensuite lus dans la
commande par l'intermdiaire de postprocesseurs.
Notions complmentaires
330 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Fonction
Lors de la programmation de l'orientation dans le systme de coordonnes pices par le
biais
des angles d'Euler ou RPY ou
du vecteur d'orientation,
ORIMKS/ORIWKS permettent de rgler la trajectoire du mouvement de rotation.
Remarque
Constructeur de la machine-outil
Le mode d'interpolation pour l'orientation est dfini par le paramtre machine :
MD21104 $MC_ORI_IPO_WITH_G_CODE
= FALSE : Les fonctions G, ORIWKS et ORIMKS, servent de rfrence
= TRUE : Les fonctions G du groupe 51 (ORIAXES, ORIVECT, ORIPLANE, ...) servent de
rfrence
Syntaxe
ORIMKS=...
ORIWKS=...
Signification
ORIMKS
Rotation dans le systme de coordonnes machine
ORIWKS
Rotation dans le systme de coordonnes pice
Remarque
ORIWKS correspond au rglage de base. Si on ne connat pas d'avance la machine sur
laquelle doit fonctionner un programme 5 axes, il faut par principe choisir ORIWKS. Les
dplacements effectivement excuts par la machine dpendent de sa cinmatique.
ORIMKS permet de programmer les mouvements rels de la machine, p. ex. pour viter des
collisions avec des quipements, etc.
Description
Avec ORIMKS, le dplacement effectu par l'outil dpend de la cinmatique de la machine.
Ds qu'il y a un changement d'orientation avec pointe de l'outil fixe, il y a excution d'une
interpolation linaire entre les positions des axes rotatifs.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 331
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
3ODQHQWUHOHVGHX[
YHFWHXUV
9HFWHXUDXGEXW
GXEORF
9HFWHXUODILQGXEORF
Positions singulires
Remarque
ORIWKS
Les mouvements d'orientation au voisinage de la position singulire d'une machine 5 axes
ncessitent des dplacements importants de la part des axes machine. (C'est le cas par
exemple sur une tte pivotante et tournante, avec C comme axe de rotation et A comme axe
de pivotement, toutes les positions avec A = 0 tant des positions singulires.)
Constructeur de la machine-outil
Pour ne pas surcharger les axes machine, le pilotage de la vitesse rduit fortement la
vitesse tangentielle au voisinage des points singuliers.
Les paramtres machine
$MC_TRAFO5_NON_POLE_LIMIT
$MC_TRAFO5_POLE_LIMIT
permettent de paramtrer la transformation de faon ce que les dplacements d'orientation
au voisinage du ple passent effectivement par le ple, ce qui permet un usinage plus
rapide.
Les positions singulires sont traites uniquement avec le PM $MC_TRAFO5_POLE_LIMIT .
Bibliographie :
/FB3/ Manuel de fonctions spciales ; Transformation 3 5 axes (F2),
chapitre "Positions singulires et leur traitement".
Notions complmentaires
332 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Fonction
La fonction "Axes d'orientation" dcrit l'orientation de l'outil dans l'espace et s'obtient en
programmant les dcalages pour les axes rotatifs. On peut obtenir un troisime degr de
libert par une rotation supplmentaire de l'outil autour de son propre axe. Cette orientation
de l'outil s'effectue au choix dans l'espace par le biais d'un troisime axe rotatif et requiert la
transformation six axes. La rotation de l'outil autour de son propre axe se fixe en fonction du
type d'interpolation des vecteurs de rotation avec l'angle de rotation THETA, voir chapitre
"Rotations de l'orientation de l'outil (ORIROTA/TR/TT, ORIROTC, THETA)".
Programmation
Les axes d'orientation se programment par le biais des descripteurs d'axes A2, B2, C2.
Pour les modifications d'orientation le long d'une enveloppe de cne situe dans l'espace, on
peut programmer d'autres dcalages d'axes rotatifs des axes d'orientation, voir chapitre
"Programmation de l'orientation le long d'une enveloppe de cne (ORIPLANE, ORICONxx).
Paramtres
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 333
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Description
Constructeur de la machine-outil
Le paramtre machine $MC_ORI_DEF_WITH_G_CODE rgle le mode de dfinition des
angles A2, B2, C2 programms :
La dfinition s'effectue d'aprs le paramtre machine $MC_ORIENTATION_IS_EULER (par
dfaut) ou d'aprs le groupe de codes G 50 (ORIEULER, ORIRPY, ORIVIRT1, ORIVIRT2).
Le paramtre machine $MC_ORI_IPO_WITH_G_CODE permet de dterminer le type
d'interpolation : ORIWKS/ORIMKS ou ORIAXES/ORIVECT.
Mode de fonctionnement Jog
Dans ce mode de fonctionnement, les angles d'orientation sont toujours interpols de faon
linaire. En cas de positionnement incrmental et continu l'aide des touches de
dplacement, un seul axe d'orientation peut tre dplac. Avec les manivelles, le
dplacement simultan des axes d'orientation est possible.
En dplacement manuel d'axes d'orientation, le commutateur de correction de l'avance ou le
commutateur de correction du rapide en dplacement en rapide spcifique au canal est actif.
Les paramtres machine suivants permettent de dfinir sparment les vitesses :
$MC_JOG_VELO_RAPID_GEO
$MC_JOG_VELO_GEO
$MC_JOG_VELO_RAPID_ORI
$MC_JOG_VELO_ORI
Notions complmentaires
334 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Remarque
SINUMERIK 840D avec "Paquet de transformation pour manipulateurs"
En mode JOG, la fonction "Dplacement manuel cartsien" permet de rgler la translation
d'axes gomtriques dans les systmes de rfrence SCM, SCP et TKS, sparment les
uns des autres.
Bibliographie :
/FB2/ Description fonctionnelle Fonctions d'extension ; transformation cinmatique (M1)
Fonction
L'orientation tendue permet d'effectuer des changements d'orientation le long d'une
enveloppe de cne situe dans l'espace. L'interpolation du vecteur d'orientation sur une
enveloppe de cne s'effectue avec les instructions modales ORICONxx. Pour l'interpolation
dans un plan, on peut programmer l'orientation finale avec ORIPLANE. D'une manire
gnrale, l'orientation de dpart est dtermine par les blocs prcdents.
$[HG
RULHQWDWLRQ
$QJOHGH
URWDWLRQ3+,
25,&21&::
GDQVOHVHQVDQWLKRUDLUH
25,&21&: 2ULHQWDWLRQILQDOH
GDQVOHVHQV
KRUDLUH 2ULHQWDWLRQLQWHUPGLDLUH
2ULHQWDWLRQGHGSDUW
IL[HSDUOHEORF $QJOHG
RXYHUWXUH36,
SUFGHQW GXFQH
6XUIDFHGH
ODSLFH
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 335
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Programmation
L'orientation finale se dtermine soit par l'indication de la programmation d'angles en angles
d'Euler ou RPY avec A2, B2, C2 ou par la programmation des positions des axes rotatifs
avec a, B, C. Pour les axes d'orientation le long de l'enveloppe de cne, d'autres indications
de programmation sont ncessaires:
Axe rotatif du cne sous forme de vecteur avec A6, B6, C6
Remarque
Programmation du vecteur de direction A6, B6, C6 pour l'axe rotatif du cne
La programmation d'une orientation finale n'est pas absolument ncessaire. Si aucune
orientation finale n'est indique, une enveloppe de cne complte est interpole avec 360
degrs.
Programmation de l'angle d'ouverture du cne avec NUT=angle
L'indication d'une orientation finale est imprativement ncessaire.
De cette manire, on ne peut pas interpoler une enveloppe de cne complte avec 360
degrs.
Programmation de l'orientation intermdiaire A7, B7, C7 dans l'enveloppe de cne
L'indication d'une orientation finale est imprativement ncessaire. Le changement
d'orientation et le sens de rotation sont dtermins de manire univoque par les trois
vecteurs Orientation de dpart, Orientation finale et Orientation intermdiaire. Ce faisant,
les trois vecteurs doivent tre diffrents. Si l'orientation intermdiaire programme est
parallle l'orientation de dpart ou l'orientation finale, une interpolation circulaire de
grand rayon de l'orientation est effectue dans le plan dfini entre le vecteur de dpart et
le vecteur final.
Notions complmentaires
336 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Paramtres
N10 G1 X0 Y0 F5000
N20 TRAORI(1) ; Transformation d'orientation active.
N30 ORIVECT ; Interpoler l'orientation de l'outil comme vecteur.
; Orientation de l'outil dans le plan.
N40 ORIPLANE ; Slectionner l'interpolation circulaire de grand rayon.
N50 A3=0 B3=0 C3=1
N60 A3=0 B3=1 C3=1 ; Orientation dans le plan Y/Z tourne de 45 degrs,
l'orientation (0,1/2,1/2) est atteinte en fin de bloc.
N70 ORICONCW ; Programmation de l'orientation sur l'enveloppe de cne :
N80 A6=0 B6=0 C6=1 A3=0 ; Le vecteur d'orientation est interpol dans le sens
B3=0 C3=1 horaire sur une enveloppe de cne avec la direction
(0,0,1) jusqu' l'orientation (1/2,0,1/2), l'angle de
rotation tant de 270 degrs.
N90 A6=0 B6=0 C6=1 ; L'orientation de l'outil effectue un tour complet sur la
mme enveloppe de cne.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 337
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Description
Si l'on veut dcrire des changements d'orientation sur une enveloppe de cne situe un
endroit quelconque dans l'espace, il faut que le vecteur autour duquel la rotation de
l'orientation de l'outil doit s'effectuer, soit connu. Il faut en outre que l'orientation de dpart et
l'orientation finale soient prdfinies. L'orientation de dpart dcoule du bloc prcdent et
l'orientation finale doit tre soit programme, soit dtermine par d'autres conditions.
La programmation dans le plan ORIPLANE correspond ORIVECT
La programmation de l'interpolation circulaire de grand rayon conjuge aux polynmes
trigonomtriques correspond l'interpolation linaire et polynmiale de contours.
L'orientation de l'outil est interpole dans un plan dfini par l'orientation de dpart et
l'orientation finale. Si l'on programme aussi des polynmes, il se peut que le vecteur
d'orientation bascule galement hors du plan.
Programmation de cercles dans un plan G2/G3, CIP et CT
L'orientation tendue correspond l'interpolation de cercles dans un plan. En ce qui
concerne les possibilits de programmation de cercles avec indication du centre ou du rayon
comme G2/G3, cercle via point intermdiaire CIP et cercles tangentiels CT, voir
Bibliographie: Manuel de programmation Bases, "Programmation des instructions de
dplacement".
Programmation de l'orientation
Interpolation du vecteur d'orientation sur une enveloppe de cne ORICONxx
Pour l'interpolation d'orientations sur une enveloppe de cne, on peut slectionner quatre
types d'interpolations diffrents dans le groupe 51 des codes G:
1. Interpolation sur une enveloppe de cne dans le sens horaire ORICONCW avec indication de
l'orientation finale et de la direction du cne ou de son angle d'ouverture. Le vecteur de
direction se programme avec les descripteurs A6, B6, C6 et l'angle d'ouverture du cne
avec le descripteur NUT= plage de valeurs dans l'intervalle 0 180 degrs.
2. Interpolation sur une enveloppe de cne dans le sens antihoraire ORICONCWW avec
indication de l'orientation finale et de la direction du cne ou de son angle d'ouverture. Le
vecteur de direction se programme avec les descripteurs A6, B6, C6 et l'angle
d'ouverture du cne avec le descripteur NUT= plage de valeurs dans l'intervalle 0 180
degrs.
3. Interpolation sur une enveloppe de cne ORICONIO avec indication de l'orientation finale et
d'une orientation intermdiaire, programme avec les descripteurs A7, B7, C7.
4. Interpolation sur une enveloppe de cne ORICONTO avec transition tangentielle et
indication de l'orientation finale. Le vecteur de direction se programme avec les
descripteurs A6, B6, C6.
Notions complmentaires
338 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Fonction
Programmation du changement d'orientation par la deuxime courbe spatiale ORICURVE
Une autre possibilit pour programmer les changements d'orientation est de programmer
avec ORICURVE, outre la pointe de l'outil le long d'une courbe spatiale, galement le
mouvement d'un deuxime point de contact de l'outil. On peut ainsi, comme lors de la
programmation du vecteur de l'outil lui-mme, dfinir de manire univoque les changements
d'orientation de l'outil.
Constructeur de la machine-outil
Veuillez respecter les indications du constructeur de la machine-outil en ce qui concerne les
descripteurs d'axes rglables par le biais de paramtres machine pour la programmation de
la deuxime trajectoire d'orientation de l'outil.
Programmation
Dans le cas de ce type d'interpolation, on peut, pour les deux courbes spatiales, programmer
des points avec G1 ou des polynmes avec POLY. Les cercles et les dveloppantes ne sont
pas admis. De plus, une interpolation de type spline peut tre active avec BSPLINE et avec
une fonction "groupement de blocs spline courts".
Bibliographie :
/FB1/ Description fonctionnelle Fonctions de base ; contournage, arrt prcis, look-ahead
(B1), chapitre : Groupement de blocs spline courts
Les autres types de spline ASPLINE et CSPLINE tout comme l'activation d'un compacteur avec
COMPON, COMPCURV ou COMPCAD ne sont pas admissibles.
Le dplacement des deux points de contact de l'outil peut tre prdfini lors de la
programmation des polynmes d'orientation pour des coordonnes du 5e degr maximum.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 339
Transformations
6.2 Transformation trois, quatre et cinq axes (TRAORI)
Paramtres
Remarque
Descripteurs XH YH ZH pour la programmation d'une 2e trajectoire d'orientation
On doit choisir les descripteurs de manire ce qu'il ne se produise pas de conflits avec les
autres descripteurs des axes linaires
, les axes X Y Z
et les axes rotatifs tels que
A2 B2 C2, les angles d'Euler ou les angles RPY
A3 B3 C3, les vecteurs de direction
A4 B4 C4 ou A5 B5 C5, les vecteurs normaux la surface
A6 B6 C6, les vecteurs de rotation ou les coordonnes de points intermdiaires A7 B7 C7
ou d'autres paramtres d'interpolation.
Notions complmentaires
340 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.3 Polynmes d'orientation (PO[angles], PO[coordonne])
Fonction
Indpendamment de l'interpolation polynomiale du groupe 1 des codes G actuellement
active, on peut programmer deux types de polynmes d'orientation jusqu'au 5e degr
maximum dans le cas d'une transformation trois cinq axes.
1. Polynmes pour angles: Angle d'avance LEAD, angle latral TILT
par rapport au plan dfini par l'orientation de dpart et l'orientation finale.
2. Polynmes pour coordonnes: XH, YH, ZH de la deuxime courbe spatiale pour
l'orientation de l'outil d'un point de rfrence sur l'outil.
Dans le cas d'une transformation six axes, on peut, en plus de l'orientation de l'outil,
programmer la rotation du vecteur de rotation THT avec des polynmes du 5e degr
maximum pour les rotations de l'outil lui-mme.
Syntaxe
Polynmes d'orientation du type 1 pour angles
On peut en outre, dans les deux cas, programmer un polynme pour la rotation dans le cas
d'une transformation six axes avec
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 341
Transformations
6.3 Polynmes d'orientation (PO[angles], PO[coordonne])
Signification
PO[PHI]
Angle dans le plan entre l'orientation de dpart et l'orientation finale
PO[PSI]
Angle dcrivant le basculement de l'orientation depuis le plan entre l'orientation
de dpart et l'orientation finale.
PO[THT]
Angle de rotation dcrit par la rotation du vecteur de rotation d'un des codes G
du groupe 54 programms avec THETA
PHI
Angle d'avance LEAD
PSI
Angle latral TILT
THETA
Rotation par rapport la direction de l'outil en Z
PO[XH]
Coordonne X du point de rfrence sur l'outil
PO[YH]
Coordonne Y du point de rfrence sur l'outil
PO[ZH]
Coordonne Z du point de rfrence sur l'outil
Description
On ne peut pas programmer les polynmes d'orientation
si les interpolations spline ASPLINE, BSPLINE, CSPLINE sont actives.
Les polynmes du type 1 pour les angles d'orientation sont possibles pour chaque type
d'interpolation sauf Spline c.--d. pour l'interpolation linaire avec vitesse rapide G00 ou
avec avance G01
pour l'interpolation polynmiale avec POLY et
pour l'interpolation circulaire ou dveloppante avec G02, G03, CIP, CT, INVCW et
INCCCW
Notions complmentaires
342 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.4 Rotations de l'orientation de l'outil (ORIROTA, ORIROTR, ORIROTT, ORIROTC, THETA)
Fonction
Si l'orientation de l'outil doit pouvoir tre modifie sur les machines avec outil mobile, chaque
bloc doit tre programm avec une orientation finale. En fonction de la cinmatique de la
machine, le sens d'orientation des axes d'orientation ou le sens de rotation du vecteur
d'orientation THETA peuvent tre programms. Diffrents types d'interpolation sont
programmables pour ces vecteurs de rotation :
ORIROTA : Angle de rotation rapport un sens de rotation en indication absolue.
ORIROTR : Angle de rotation relatif par rapport au plan entre orientation de dpart et
orientation finale.
ORIROTT : Angle de rotation relatif par rapport la modification du vecteur d'orientation.
ORIROTC: Angle de rotation tangentiel la tangente la trajectoire.
Syntaxe
A la condition expresse que le type d'interpolation ORIROTA soit actif, l'angle de rotation ou le
vecteur de rotation peut tre programm selon l'un des quatre modes suivants :
1. Directement dans les positions d'axes rotatifs A, B, C
Si ORIOTR ou ORIOTT est actif, l'angle de rotation ne peut tre programm que directement
l'aide de THETA .
Une rotation peut galement tre programme seule dans un bloc, sans qu'un changement
d'orientation ne se produise. ORIROTR et ORIROTT n'ont alors aucune signification. Dans
ce cas, l'angle de rotation est toujours interprt par rapport la direction absolue (ORIROTA).
N... ORIROTA
Dfinition de l'interpolation du vecteur de rotation
N... ORIROTR
N... ORIROTT
N... ORIROTC
N... A3= B3= C3= THETA=valeur
Dfinir la rotation du vecteur d'orientation
N... PO[THT]=(d2, d3, d4, d5) Interpolation de l'angle de rotation l'aide d'un
polynme du cinquime degr
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 343
Transformations
6.4 Rotations de l'orientation de l'outil (ORIROTA, ORIROTR, ORIROTT, ORIROTC, THETA)
Signification
Notions complmentaires
344 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.4 Rotations de l'orientation de l'outil (ORIROTA, ORIROTR, ORIROTT, ORIROTC, THETA)
Description
ORIROTA
L'angle de rotation THETA est interpol dans l'espace par rapport une direction dtermine
de manire absolue. Le sens de rotation par dfaut est fonction des paramtres machine.
ORIROTR
L'angle de rotation THETA est interprt de manire relative par rapport au plan dfini par
l'orientation initiale et l'orientation finale.
ORIROTT
L'angle de rotation THETA est interprt de manire relative par rapport au changement
d'orientation. PourTHETA=0, le vecteur de rotation est interpol de manire tangentielle par
rapport au changement d'orientation et ne se distingue d'ORIROTR que si au moins un
polynme pour l'"angle de basculement PSI" a t programm pour l'orientation. Il en rsulte
un changement d'orientation qui ne se produit pas dans le plan. La programmation d'un
angle de rotation THETA supplmentaire permet d'interpoler par exemple le vecteur de
rotation de manire ce qu'il forme toujours une valeur dfinie par rapport au changement
d'orientation.
ORIROTC
Le vecteur de rotation est interpol par rapport la tangente la trajectoire avec un
dcalage programmable par le biais de l'angle THETA . Pour l'angle de dcalage, on peut
aussi programmer un polynme PO[THT]=(c2, c3, c4, c5) du 5e degr maximum.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 345
Transformations
6.5 Orientations par rapport la trajectoire
Fonction
Cette fonction tendue permet d'atteindre l'orientation relative non seulement en fin de bloc,
mais aussi sur tout le trac de la trajectoire. L'orientation atteinte au cours du bloc prcdent
est transfre au moyen de l'interpolation circulaire de grand rayon dans l'orientation finale
programme. Par principe, il existe deux possibilits pour programmer l'orientation souhaite
par rapport la trajectoire:
1. L'orientation de l'outil et la rotation de l'outil sont interpoles avec ORIPATH, ORPATHTS
par rapport la trajectoire.
2. Le vecteur d'orientation est programm et interpol de la manire habituelle. La rotation
du vecteur d'orientation par rapport la tangente la trajectoire s'opre avec ORIROTC.
Syntaxe
Le type d'interpolation de l'orientation et de la rotation de l'outil se programme avec:
N... ORIPATH
Orientation par rapport la trajectoire
N... ORIPATHS
Orientation par rapport la trajectoire avec
lissage du trac d'orientation
N... ORIROTC
Interpolation par rapport la trajectoire du
vecteur de rotation
Avec ORIPATHS, on peut lisser un coude de l'orientation provoqu par un angle dans le trac
de la trajectoire. La direction et la longueur de parcours du mouvement de retrait se
programme par le biais du vecteur avec les composants A8=X, B8=Y C8=Z .
Notions complmentaires
346 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.5 Orientations par rapport la trajectoire
Remarque
Constructeur de la machine-outil
Veuillez tenir compte des indications du constructeur de la machine. Par le biais de
paramtres machine et de donnes de rglage configurables, on peut procder d'autres
rglages en plus du type d'orientation par rapport la trajectoire. Pour plus d'explications, se
reporter
Bibliographie :
/FB3/ Description fonctionnelle Fonctions spciales ; Transformation 3 5 axes (F2),
Chapitre "Orientation"
Signification
L'interpolation des angles LEAD et TILT peut se rgler diffremment par le biais de
paramtres machine:
La rfrence de l'orientation de l'outil programme avec LEAD et TILT est respecte
pendant toute la dure du bloc.
Angle d'avance LEAD: Rotation par rapport la direction perpendiculaire la tangente et
vecteur normal TILT: Rotation de l'orientation par rapport au vecteur normal.
Angle d'avance LEAD: Rotation par rapport la direction perpendiculaire la tangente et
vecteur normal Angle latral TILT: Rotation de l'orientation par rapport la direction de
la tangente la trajectoire.
Angle de rotation THETA: Rotation de l'outil autour de son propre axe avec un troisime
axe rotatif supplmentaire en tant qu'axe d'orientation dans le cas de transformation six
axes.
Remarque
Orientation relative la trajectoire non autorise avec OSC, OSS, OSSE, OSD, OST
L'interpolation d'orientation par rapport la trajectoire ORIPATH ou ORIPATHS et ORIOTC ne
peut pas tre programme avec le lissage du trac d'orientation avec l'un des codes G du
groupe 34. Pour ce faire, il faut qu'OSOF soit activ.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 347
Transformations
6.5 Orientations par rapport la trajectoire
Fonction
Dans le cas d'une transformation six axes, en plus de l'orientation de l'outil d'une manire
quelconque dans l'espace, ce dernier peut galement tourner autour de son propre axe avec
un troisime axe supplmentaire. Dans le cas d'une rotation de l'orientation de l'outil par
rapport la trajectoire avec ORIPATH ou ORIPATHS, la rotation supplmentaire peut se
programmer par le biais de l'angle de rotation THETA. En guise d'alternative, les angles
LEAD et TILT peuvent tre programms par le biais d'un vecteur perpendiculaire la
direction de l'outil dans le plan.
Constructeur de la machine-outil
Tenez compte des indications du constructeur de la machine. L'interpolation des angles
LEAD et TILT peut se rgler diffremment par le biais de paramtres machine.
Syntaxe
Rotation de l'orientation de l'outil et de l'outil
On active le type d'orientation de l'outil par rapport la trajectoire avec ORIPATH ou
ORIPATHS.
N... ORIPATH
Activer le type d'orientation par rapport la
trajectoire
N... ORIPATHS
Activer le type d'orientation par rapport la
trajectoire avec lissage du trac d'orientation
Activation des trois angles possibles avec effet de rotation:
N... LEAD=
Angle pour l'orientation programme par rapport
au vecteur normal la surface
N... TILT=
Angle pour l'orientation programme dans le plan
perpendiculaire la tangente la trajectoire par
rapport au vecteur normal la surface
N... THETA=
;Angle de rotation par rapport au changement
d'orientation par rapport la direction d'outil du
troisime axe rotatif
Les valeurs des angles en fin de bloc se programment avec LEAD=valeur, TILT=valeur ou
THETA=valeur. En plus des angles constants, on peut programmer des polynmes du 5e
degr maximum pour les trois angles.
Notions complmentaires
348 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.5 Orientations par rapport la trajectoire
Signification
Orientation de l'outil par rapport la trajectoire
Remarque
Angle de rotation THETA
Pour la rotation de l'outil avec un troisime axe rotatif en tant qu'axe d'orientation par rapport
lui-mme, une transformation six axes est ncessaire.
Fonction
Type d'interpolation avec vecteurs de rotation
En plus de la rotation de l'outil (programme avec ORIROTC) par rapport la tangente la
trajectoire, on peut aussi interpoler le vecteur de rotation avec un dcalage programmable
par le biais de l'angle de rotation THETA. cette occasion, on peut, avec PO[THT],
programmer un polynme du 5e degr maximum pour l'angle de dcalage.
Syntaxe
N... ORIROTC
Appliquer la rotation de l'outil par
rapport la tangente la trajectoire
N... A3= B3= C3= THETA=valeur
Dfinir la rotation du vecteur
d'orientation
N... A3= B3= C3= PO[THT]=(c2, c3, c4, c5)
Interpolation de l'angle de dcalage
avec polynme du 5e degr au
maximum
Une rotation peut galement tre programme seule dans un bloc, sans qu'un changement
d'orientation ne se produise.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 349
Transformations
6.5 Orientations par rapport la trajectoire
Signification
Interpolation (par rapport la trajectoire) de la rotation de l'outil dans le cas d'une
transformation six axes
Remarque
Interpolation du vecteur de rotation ORIROTC
Si l'on veut appliquer galement la rotation de l'outil par rapport la tangente la trajectoire
dans le sens oppos la direction d'orientation de l'outil, ce n'est possible que dans le cas
d'une transformation six axes.
Dans le cas o ORIROTC est activ
Le vecteur de rotation ORIROTA ne peut pas tre programm. Dans le cas d'une
programmation, le message d'alarme 14128 "Programmation absolue de la rotation de l'outil
dans le cas o ORIROTC est activ" est mis.
Direction d'orientation de l'outil dans le cas d'une transformation trois cinq axes
La direction d'orientation de l'outil peut se programmer comme on en a l'habitude avec une
transformation trois cinq axes par le biais d'angles d'Euler ou d'angles RPY ou de vecteurs
de direction. galement possibles: changements d'orientation de l'outil dans l'espace par
programmation de l'interpolation circulaire de grand rayon ORIVECT, de l'interpolation
linaire des axes d'orientation ORIAXES, de toutes les interpolations sur une enveloppe de
cne ORICONxx ainsi que de l'interpolation en plus de la courbe spatiale avec deux points
de contact de l'outil ORICURVE.
Notions complmentaires
350 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.5 Orientations par rapport la trajectoire
Remarque
Si l'orientation de l'outil est interpole par le biais des axes d'orientation alors qu'ORIAXES
est activ, l'application de l'angle de rotation par rapport la trajectoire n'est ralise qu'en
fin de bloc.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 351
Transformations
6.5 Orientations par rapport la trajectoire
Fonction
Dans le cas de changements d'orientation acclration continue sur le contour, toute
interruption des dplacements avec interpolation, pouvant notamment survenir un angle du
contour, est inopportune. Le coude qui en rsulte dans le trac d'orientation peut tre liss
en ajoutant un bloc intermdiaire qui lui est propre. Le changement d'orientation s'effectue
alors acclration continue mme si ORIPATHS est actif pendant la rorientation. Pendant
cette phase, un mouvement de retrait de l'outil peut tre excut.
Constructeur de la machine-outil
Veuillez respecter les indications du constructeur de la machine-outil en ce qui concerne les
paramtres machine et les donnes de rglage prdfinis le cas chant et avec lesquels
cette fonction est active.
Par le biais des paramtres machine, on peut dfinir comment interprter le vecteur de
retrait.
1. Dans le systme de coordonnes de l'outil, on dfinit la coordonne Z par la direction de
l'outil.
2. Dans le systme de coordonnes pice, on dfinit la coordonne Z par le plan actif.
Pour plus d'explications sur la fonction "Orientation par rapport la trajectoire", se reporter
Bibliographie: /FB3/ Manuel de fonctions spciales ; Transformation 3 5 axes (F2).
Syntaxe
Pour des orientations d'outil continues par rapport l'ensemble de la trajectoire, d'autres
indications de programmation sont ncessaires un angle du contour. La direction et la
longueur de parcours de ce mouvement se programme par le biais du vecteur avec les
composants A8=X, B8=Y C8=Z:
N... ORIPATHS A8=X B8=Y C8=Z
Signification
ORIPATHS Orientation de l'outil par rapport la trajectoire, lissage de coude dans le
trac d'orientation.
A8= B8= C8= Composants de vecteur pour la direction et la longueur de parcours
X, Y, Z Mouvement de retrait dans la direction de l'outil
Remarque
Programmation du vecteur de direction A8, B8, C8
Si la longueur de ce vecteur est gale zro, il ne se produit pas de mouvement de retrait.
ORIPATHS
L'orientation de l'outil par rapport la trajectoire est active avec ORIPATHS. Dans le cas
contraire, l'orientation est transfre par le biais d'une interpolation circulaire de grand rayon
de l'orientation de dpart vers l'orientation finale.
Notions complmentaires
352 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.6 Compactage de l'orientation (COMPON, COMPCURV, COMPCAD)
Fonction
Les programmes CN dans lesquels une transformation d'orientation (TRAORI) est active et
dans lesquels l'orientation est programme par le biais de vecteurs de direction peuvent tre
compacts en respectant des tolrances prdfinies.
Remarque
Le mouvement d'orientation n'est compact que si l'interpolation circulaire de grand rayon
est active et dpend donc du code G pour l'interpolation d'orientation. Celui-ci se rgle, tout
comme la longueur de parcours maximale et une tolrance admise pour chaque axe ou pour
l'avance tangentielle pour la fonction compacteur, par le biais de paramtres machine.
Veuillez tenir compte des indications du constructeur de la machine.
Programmation
Orientation de l'outil
Si une transformation d'orientation (TRAORI) est active, l'orientation de l'outil peut tre
programme de la manire suivante (indpendante de la cinmatique) sur les machines 5
axes :
Programmation du vecteur de direction avec :
A3=<...> B3=<...> C3=<...>
Rotation de l'outil
Sur les machines 6 axes, on peut programmer la rotation de l'outil en plus de son
orientation.
La programmation de l'angle de rotation s'effectue avec :
THETA=<...>
Remarque
Les blocs CN dans lesquels la rotation est programme en plus ne sont compactables que si
l'angle de rotation varie linairement. Donc il ne doit pas y avoir de polynme programm
avec PO[THT]=(...) pour l'angle de rotation.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 353
Transformations
6.6 Compactage de l'orientation (COMPON, COMPCURV, COMPCAD)
ou
N... X=<...> Y=<...> Z=<...> A2=<...> B2=<...> C2=<...> THETA=<...> F=<...>
Remarque
Les valeurs de position peuvent tre indiques directement (par exemple X90) ou
indirectement par le biais d'affectations de paramtres (par exemple X=R1*(R2+R3)).
Dans ce cas, le compactage est effectu de deux manires diffrentes selon qu'une
interpolation circulaire de grand rayon est excute ou non. Si une interpolation circulaire de
grand rayon a lieu, le changement d'orientation compact est reprsent de manire
habituelle par des polynmes axiaux pour les axes rotatifs.
Prcision du contour
Selon le mode de compactage rgl (MD20482 $MC_COMPRESSOR_MODE), les
tolrances qui prennent effet pour les axes gomtriques et les axes d'orientation lors du
compactage sont soit les tolrances spcifiques aux axes (configures dans le paramtre
machine MD33100 $MA_COMPRESS_POS_TOL) ou les tolrances spcifiques aux canaux
(rglables dans les donnes de rglage) suivantes :
SD42475 $SC_COMPRESS_CONTUR_TOL (cart maximal par rapport au contour)
SD42476 $SC_COMPRESS_ORI_TOL (cart maximal par rapport l'angle d'orientation de
l'outil)
SD42477 $SC_COMPRESS_ORI_ROT_TOL (cart maximal par rapport l'angle de rotation
de l'outil) (disponible uniquement pour les machines 6 axes)
Bibliographie :
Description fonctionnelle Fonctions de base ; Transformation 3 5 axes (F2),
chapitre : "Compactage de l'orientation"
Notions complmentaires
354 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.6 Compactage de l'orientation (COMPON, COMPCURV, COMPCAD)
Activation/dsactivation
Les codes G effet modal COMPON, COMPCURV et COMPCAD activent les fonctions compacteur.
La fonction compacteur se termine avec COMPOF.
Voir "Compactage de bloc CN (COMPON, COMPCURV, COMPCAD) (Page 247)".
Remarque
Le dplacement d'orientation est uniquement compact lorsque l'interpolation circulaire de
grand diamtre est active (l'orientation de l'outil se modifie dans le plan dfini par
l'orientation initiale et l'orientation finale).
Une interpolation circulaire de grand diamtre est excute dans les conditions suivantes :
MD21104 $MC_ORI_IPO_WITH_G_CODE = 0,
ORIWKS est actif et
l'orientation est programme au moyen de vecteurs (avec A3, B3, C3 et A2, B2, C2).
MD21104 $MC_ORI_IPO_WITH_G_CODE = 1 et
ORIVECT ou ORIPLANE est actif.
L'orientation de l'outil peut tre programme sous forme de vecteur de direction ou de
positions d'axes rotatifs. Si l'un des codes G ORICONxx et ORICURVE est actif ou si des
polynmes sont programms pour les angles d'orientation (PO[PHI] et PO[PSI]), il n'y a
pas d'interpolation circulaire de grand rayon.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 355
Transformations
6.6 Compactage de l'orientation (COMPON, COMPCURV, COMPCAD)
Exemple
Dans cet exemple de programmation, un cercle, qui est obtenu par une approximation
polygonale, est compact. L'orientation de l'outil se dplace de faon synchrone sur une
surface latrale de cne. Bien que les changements successifs dorientation programms
soient discontinus, la fonction compacteur gnre un trac lisse de lorientation.
Programmation Commentaire
DEF INT NOMBRE=60
DEF REAL RAYON=20
DEF INT COMPTEUR
DEF REAL ANGLE
N10 G1 X0 Y0 F5000 G64
TRAORI
COMPCURV
; Le dplacement a lieu sur un cercle obtenu par une
approximation polygonale. L'orientation se dplace
sur un cne autour de l'axe Z avec un angle au
centre de 45 degrs.
N100 X0 Y0 A3=0 B3=-1 C3=1
N110 FOR COUNTER=0 TO NOMBRE
N120 ANGLE=360*COUNTER/NOMBRE
N130 X=RAYON*cos(ANGLE) Y=RAYON*sin(ANGLE)
A3=sin(ANGLE) B3=-cos(ANGLE) C3=1
N140 ENDFOR
Notions complmentaires
356 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.7 Lissage du trac d'orientation (ORISON, ORISOF)
Fonction
La fonction "Lissage du trac d'orientation (ORISON)" permet de lisser des fluctuations
d'orientation sur plusieurs blocs. On obtient ainsi un trac lisse aussi bien de l'orientation
que du contour.
Condition
La fonction "Lissage du trac d'orientation (ORISON)" est uniquement disponible dans les
systmes de transformation 5/6 axes.
Syntaxe
ORISON
...
ORISOF
Signification
Donnes de rglage
Le lissage du trac d'orientation ncessite la prise en compte :
d'une tolrance maximale prdfinie (cart maximum en degr par rapport l'angle
d'orientation de l'outil)
et
d'un trajet maximum prdfini.
Ces prslections sont dfinies au moyen de donnes de rglage :
SD42678 $SC_ORISON_TOL (tolrance pour le lissage du trac d'orientation)
SD42680 O$SC_ORISON_DIST (trajet pour le lissage du trac d'orientation)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 357
Transformations
6.7 Lissage du trac d'orientation (ORISON, ORISOF)
Exemple
Un pivotement de l'orientation de 90 degrs est ralis dans le plan XZ, de -45 +45
degrs. En raison du lissage de son trac, l'orientation n'atteint plus les valeurs angulaires
maximales de -45 ou +45 degrs.
Informations complmentaires
Nombre de blocs
Le lissage du trac d'orientation s'effectue sur un nombre configur de blocs figurant dans le
paramtre machine MD28590 $MC_MM_ORISON_BLOCKS.
Remarque
Si le lissage du trac d'orientation est activ avec ORISON, alors que la mmoire configure
pour des blocs est insuffisante (MD28590 < 4), un message d'alarme est mis et la fonction
ne peut plus tre excute.
Notions complmentaires
358 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.8 Transformation cinmatique
Fonction
La fonction TRANSMIT offre les possibilits suivantes :
Usinage frontal de pices de tournage sans dmontage de la pice (trous, contours).
Pour la programmation de ces oprations, vous pouvez utiliser un systme de
coordonnes cartsiennes.
La commande transforme les dplacements programms dans le systme de
coordonnes cartsiennes en dplacements des axes machine rels (cas standard) :
Axe rotatif
Axe de pntration perpendiculaire l'axe { de rotation
Axe longitudinal parallle l'axe rotatif
Les axes linaires sont perpendiculaires les uns par rapport aux autres.
Un dcalage du centre de l'outil par rapport l'axe de rotation est permis.
Le pilotage de la vitesse tient compte des limitations dfinies pour les rotations.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 359
Transformations
6.8 Transformation cinmatique
Syntaxe
TRANSMIT ou TRANSMIT(n)
TRAFOOF
Axe rotatif
L'axe rotatif ne peut pas tre programm, tant donn qu'il est affect comme axe
gomtrique et qu'il n'est donc pas programmable directement comme axe de canal.
Signification
Remarque
Une transformation active TRANSMIT est galement dsactive quand, dans le canal
concern, il y a activation de l'une des autres transformations (par exemple TRACYL, TRAANG,
TRAORI).
Notions complmentaires
360 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.8 Transformation cinmatique
Exemple
<
N80 Y10
N90 X10
N100 Y10
N110 G0 Z20 G40 OFFN=0 ; Changement d'outil
N120 T2 D1 X15 Y15
N130 Z10 G41
N140 G1 X10 Y10 ; Finition du carr
N150 X10
N160 Y10
N170 X10
N180 Y10
N190 Z20 G40 ; Dsactiver un frame
N200 TRANS
N210 TRAFOOF
N220 G0 X20 Z10 SPOS=45 ; Accostage de la position de dpart
N230 M30
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 361
Transformations
6.8 Transformation cinmatique
Description
Ple
Il est existe deux possibilits de passer par le ple :
Dplacement de l'axe linaire seul
Dplacement vers le ple avec rotation de l'axe rotatif au ple et sortie du ple.
La slection s'effectue l'aide des PM 24911 et 24951.
TRANSMIT avec axe linaire Y supplmentaire (type de transformation 257) :
Cette variante de transformation de la transformation polaire utilise la redondance sur une
machine avec un autre axe linaire afin d'excuter une correction d'outil amliore. Pour le
deuxime axe linaire, s'applique alors :
une zone de travail plus rduite et
l'interdiction d'utiliser le deuxime axe linaire pour l'excution du programme pice.
Le programme pice et l'affectation des axes correspondants dans le SCB ou le SCM
prsuppose certains rglages des paramtres machine, voir
Bibliographie
/FB2/ Manuel de fonctions d'extension ; transformations cinmatiques (M1)
Fonction
La transformation de surface latrale de cylindre TRACYL offre les possibilits suivantes :
Ralisation de :
rainures longitudinales sur des corps cylindriques,
rainures transversales sur des corps cylindriques,
rainures de forme quelconque sur des corps cylindriques.
La forme des rainures est programme sur la surface dveloppe du cylindre.
Notions complmentaires
362 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.8 Transformation cinmatique
<
Syntaxe
TRACYL(d) ou TRACYL(d, n) ou
pour le type de transformation 514
TRACYL(d, n, correction des flancs de la rainure)
TRAFOOF
Axe rotatif
L'axe rotatif ne peut pas tre programm, tant donn qu'il est affect comme axe
gomtrique et qu'il n'est donc pas programmable directement comme axe de canal.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 363
Transformations
6.8 Transformation cinmatique
Signification
TRACYL (d) Activation de la premire fonction TRACYL convenue dans les
paramtres machine spcifiques aux canaux. Paramtre d pour le
diamtre d'usinage.
TRACYL (d, n) Activation de la nime fonction TRACYL convenue dans les
paramtres machine spcifiques aux canaux, n tant limit 2,
TRACYL(d,1) correspond TRACYL(d).
D Valeur pour le diamtre d'usinage. Le diamtre d'usinage correspond
deux fois la distance entre la pointe de l'outil et le centre de l'axe de
rotation. Ce diamtre doit toujours tre indiqu et sa valeur doit tre
suprieure 1.
n Deuxime paramtre optionnel pour le jeu de donnes TRACYL 1
(prslectionn) ou 2.
Correction des Troisime paramtre optionnel dont la valeur pour TRACYL est
flancs de la prslectionne partir du mode des paramtres machine.
rainure
Plage de valeurs :
0 : Type de transformation 514 traditionnelle sans correction des
flancs de rainure
1 : Type de transformation 514 avec correction des flancs de la
rainure
TRAFOOF Dsactivation de la transformation (SCB et SCM sont nouveau
identiques).
OFFN Dcalage normal au contour : Distance sparant le flanc de rainure du
contour de rfrence programm.
Remarque
Une transformation active TRACYL est galement dsactive quand, dans le canal concern,
il y a activation de l'une des autres transformations (par exemple TRANSMIT, TRAANG, TRAORI).
Notions complmentaires
364 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.8 Transformation cinmatique
<
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 365
Transformations
6.8 Transformation cinmatique
Notions complmentaires
366 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.8 Transformation cinmatique
Description
Sans correction du flanc de rainure (type de transformation 512) :
La commande transforme les dplacements programms dans le systme de coordonnes
cylindre en dplacements des axes machine rels :
Axe rotatif
Axe de pntration perpendiculaire l'axe { de rotation
Axe longitudinal parallle l'axe rotatif
Les axes linaires sont perpendiculaires les uns par rapport aux autres. L'axe de pntration
coupe l'axe rotatif.
< RX&0
$60
= RX=0
;0
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 367
Transformations
6.8 Transformation cinmatique
< RX&0
= RX=0
<0
$60
;0
Section de la rainure
Sur la configuration d'axe 1, les rainures le long de l'axe rotatif ne sont parallles que
lorsque la largeur de la rainure correspond exactement au rayon de l'outil.
Les rainures parallles la circonfrence (rainures transversales) ne sont pas parallles au
dbut et la fin.
Notions complmentaires
368 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.8 Transformation cinmatique
FRQWRXU
2))1 SURJUDPP
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 369
Transformations
6.8 Transformation cinmatique
Un programme pice pour le fraisage d'une rainure comprend gnralement les tapes
suivantes :
1. Slection de l'outil
2. Slection de TRACYL
3. Slection du dcalage du systme de coordonnes appropri (FRAME)
4. Positionnement
5. Programmation d'OFFN
6. Slection de la CRO (correction de rayon d'outil)
7. Bloc d'accostage (CRO et accostage du flanc de la rainure)
8. Contour correspondant l'axe de symtrie de la rainure
9. Dsactivation de la CRO
10.Bloc de retrait (retrait de la CRO et loignement du flanc de rainure)
11.Positionnement
12.TRAFOOF
13.Reprise du dcalage de coordonnes initial (FRAME)
Particularits
Slection de la CRO :
La programmation de la CRO ne s'effectue pas par rapport au flanc de rainure, mais par
rapport l'axe de symtrie de rainure programm. Pour que l'outil se dplace gauche
du flanc de rainure, il convient d'introduire G42 (au lieu de G41). Vous vitez cela en
indiquant une largeur de rainure ngative avec OFFN.
OFFN avec TRACYL a un comportement diffrent de OFFN sans TRACY . Comme OFFN
sans TRACYL est galement pris en considration si la CRO est active, il est
recommand d'annuler nouveau OFFN aprs TRAFOOF.
Il est possible de modifier OFFN l'intrieur du programme pice. L'axe de symtrie d'une
rainure peut donc tre dsax (voir figure).
Rainures de guidage :
TRACYL ne permet pas de crer la mme rainure de guidage que celle fabrique avec un
outil dont le diamtre prsente la largeur de rainure. En principe, il n'est pas possible de
gnrer la mme gomtrie de flanc de rainure avec un outil cylindrique de petite taille et
avec un outil plus grand. TRACYL minimise l'erreur. Pour viter des problmes de
prcision, il est recommand d'utiliser un outil dont le rayon n'est que lgrement infrieur
la moiti de la largeur de la rainure.
Remarque
OFFN et CRO
Si TRAFO_TYPE_n = 512, la valeur sous OFFN agit en addition la CRO.
Si TRAFO_TYPE_n = 513, la valeur sous OFFN correspond la demi-largeur de la
rainure. Le contour est parcouru avec OFFN-CRO.
Notions complmentaires
370 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.8 Transformation cinmatique
Fonction
La fonction axe oblique est destine l'utilisation en rectification et offre les possibilits
suivantes :
Usinage avec axe de pntration oblique
Un systme de coordonnes cartsiennes peut tre utilis pour la programmation.
La commande transforme les dplacements programms dans le systme de
coordonnes cartsiennes en dplacements des axes machine rels (cas standard) : axe
de pntration oblique.
08
;
0HXOHGH
UHFWLILFDWLRQ
& = $6 0=
3LFH
Syntaxe
TRAANG() ou TRAANG(, n)
TRAFOOF
Signification
TRAANG( ) ou Activer la transformation avec le paramtrage de la slection prcdente.
TRAANG( ,n)
TRAANG() Activation de la premire transformation convenue d'axe oblique
TRAANG(,n) Activation de la nime transformation convenue de l'axe oblique, n tant
limit 2. TRAANG(,1) correspond TRAANG().
A Angle de l'axe oblique
Les valeurs autorises pour sont les suivantes :
-90 degrs < < + 90 degrs
TRAFOOF Dsactivation de la transformation
n Nombre de transformations convenues
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 371
Transformations
6.8 Transformation cinmatique
Exemple
08
;
0HXOHGH
UHFWLILFDWLRQ
& = $6 0=
3LFH
Notions complmentaires
372 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.8 Transformation cinmatique
Description
Les usinages suivants sont possibles :
1. Cylindrage
2. Dressage
3. Profilage d'un contour donn
4. Rectification en plonge oblique
Constructeur de la machine-outil
Les rglages suivants sont dfinis par les paramtres machine :
l'angle entre un axe machine et l'axe oblique,
la position de l'origine pice par rapport l'origine du systme de coordonnes convenu
par la fonction "axe oblique",
la rserve de vitesse disposition sur l'axe parallle pour le dplacement compensateur,
la rserve d'acclration disposition sur l'axe parallle pour le dplacement
compensateur.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 373
Transformations
6.8 Transformation cinmatique
Configuration d'axes
Pour pouvoir programmer dans un systme de coordonnes cartsiennes, le rapport entre
ce systme de coordonnes et les axes machine effectifs (MU, MZ) doit tre communiqu
la commande :
Dnomination des axes gomtriques
Affectation des axes gomtriques aux axes de canal
cas gnral (axe oblique inactif)
axe oblique actif
Affectation des axes de canal aux numros d'axe machine
Identification des broches
Attribution de noms aux axes machine
A l'exception de "axe oblique actif", la manire de procder est identique celle utilise pour
la configuration d'axes normale.
Fonction
En mode manuel, la meule peut tre dplac au choix dans le sens cartsien ou dans le
sens des axes obliques (l'affichage reste cartsien). Seul l'axe U {rel se dplace, l'affichage
de l'axe Z{est actualis.
Les dcalages REPOS doivent retourner en mode manuel dans le sens cartsien.
En "Dplacement PTP", le dpassement de la limitation cartsienne de la zone de travail
est surveill en mode manuel, l'axe correspondant est frein auparavant. Si le "dplacement
PTP" n'est pas actif, l'axe peut tre dplac avec prcision jusqu' la limitation de la zone de
travail.
Bibliographie
/FB2/ Manuel de fonctions d'extension ; transformation cinmatique (M1)
Syntaxe
G07
G05
Les instructions G07/G05 servent faciliter la programmation des axes obliques. Des
positions peuvent tre programmes et affiches dans un systme de coordonnes
cartsiennes. La correction d'outil et le dcalage d'origine seront calculs dans le systme
cartsien. Aprs la programmation de l'angle pour l'axe oblique dans le programme CN, la
position de dpart peut tre accoste (G07) puis la plonge oblique (G05) peut tre engage.
Notions complmentaires
374 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.8 Transformation cinmatique
Signification
Exemple
8
D
;
1
1
0HXOHGH
UHFWLILFDWLRQ
& = $6
3LFH
Programmation Commentaire
N.. G18 ; Programmation de l'angle pour l'axe oblique
N50 G07 X70 Z40 F4000 ; Accostage de la position de dpart
N60 G05 X70 F100 ; Plonge oblique
N70 ... ;
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 375
Transformations
6.9 Dplacement PTP cartsien
Fonction
Avec cette fonction, vous pouvez programmer une position dans un systme de
coordonnes cartsiennes, bien que le dplacement des axes machine s'effectue dans le
systme de coordonnes machine. La fonction peut tre utilise, par exemple, pour modifier
la position d'articulations, si cela entrane le passage par un point singulier.
Remarque
Cette fonction n'a d'intrt que si une transformation est active. En outre, le "dplacement
PTP" n'est admissible qu'en liaison avec G0 et G1.
Syntaxe
N... TRAORI
N... STAT='B10' TU='B100' PTP
N... CP
Dplacement PTP avec une transformation gnrique cinq/six axes
Lorsque, lors d'une transformation gnrique 5 / 6 axes avec PTP, un dplacement point--
point est activ dans le systme de coordonnes machine (ORIMKS), alors l'orientation de
l'outil peut aussi bien tre programme avec des positions d'axes rotatifs
N... G1 X Y Z A B C
qu'avec des vecteurs d'Euler ou des angles RPY indpendants de la cinmatique
N... ORIEULER ou ORIRPY
N... G1 X Y Z A2 B2 C2
ou des vecteurs de direction
N... G1 X Y Z A3 B3 C3
. Une interpolation d'axe rotatif tout comme une interpolation vectorielle avec une
interpolation circulaire de grand rayon ORIVECT ou une interpolation du vecteur d'orientation
sur une enveloppe de cne ORICONxx peuvent tre paralllement actives.
Ambiguts de l'orientation avec des vecteurs
Lors de la programmation de l'orientation avec des vecteurs, il existe une ambigut dans les
positions possibles de l'axe rotatif. Les positions d'axe rotatif accoster peuvent tre
slectionnes avec la programmation de STAT = <...>. Lorsque
STAT = 0 est programm (cela correspond au paramtrage par dfaut),
les positions qui ont la distance la plus faible aux positions de dpart sont accostes.
Lorsque
STAT = 1 est programm,
les positions qui ont la distance la plus importante aux positions de dpart sont accostes.
Notions complmentaires
376 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.9 Dplacement PTP cartsien
Signification
Les commandes PTP et CP sont des fonctions modales. CP est le paramtrage par dfaut.
Alors que la programmation de la valeur STAT est effet modal, la programmation de TU =
<...> agit bloc par bloc.
Une autre diffrence est que la programmation d'une valeur STAT n'a d'effet qu'avec une
interpolation vectorielle tandis que la programmation de TU est galement value en cas
d'interpolation active d'axe rotatif.
Exemple
DUWLFXODWLRQHQKDXW
$
=
<
DUWLFXODWLRQHQEDV
;
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 377
Transformations
6.9 Dplacement PTP cartsien
Description
La commutation du dplacement cartsien au dplacement des axes machine a lieu l'aide
des instructions PTP et CP.
Dplacement PTP avec une transformation gnrique cinq/six axes
Lors du dplacement PTP, le TCP ne reste gnralement pas stationnaire, contrairement
la transformation 5/6 axes, au cas o seule l'orientation est modifie. Les positions finales
transformes de tous les axes de transformation (axes linaires et jusqu' 3 axes rotatifs)
sont accostes linairement sans la transformation soit encore active au sens propre.
Le dplacement PTP est dsactiv par la programmation du code G modal CP.
Les diffrentes transformations sont dcrites dans l'imprim :
/FB3/ Manuel de fonctions spciales ; Pack de transformation Manipulation (TE4).
Programmation de la position des articulations (STAT=)
L'indication de la position en coordonnes cartsiennes et de l'orientation de l'outil ne suffit
pas pour dterminer de faon univoque une position de la machine. Selon le type de
cinmatique, 8 positions distinctes d'articulation sont possibles. Ces positions sont donc
spcifiques une transformation. Afin de pouvoir convertir de faon univoque une position
cartsienne en angles d'axe, la position des articulations doit tre indique avec l'instruction
STAT= . L'instruction "STAT" comporte un bit pour chacune des positions possibles.
Pour plus d'informations sur les bits de position programmer pour "STAT", voir :
/FB2/ Manuel de fonctions d'extension ; transformation cinmatique (M1), chapitre
"Dplacement PTP cartsien".
Notions complmentaires
378 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.9 Dplacement PTP cartsien
3RVLWLRQGHGSDUW
VHQVQJDWLI
VHQVSRVLWLI
3RVLWLRQGHGHVWLQDWLRQ
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 379
Transformations
6.9 Dplacement PTP cartsien
Autre comportement
Changement de mode de fonctionnement
La fonction "Dplacement PTP cartsien" n'a d'intrt que dans les modes de
fonctionnement AUTO et MDA. En cas de passage au mode JOG, le rglage courant est
conserv.
Si le code G PTP est rgl, les axes sont dplacs dans le SCM. Si le code G CP est rgl,
les axes sont dplacs dans le SCP.
Power On/RESET
Aprs Power On ou aprs RESET, le paramtrage dpend du paramtre machine
$MC_GCODE_REST_VALUES[48]. Le mode de dplacement "CP" est prrgl.
REPOS
Si la fonction "Dplacement PTP cartsien" tait rgle pendant le bloc interrompu, le
repositionnement s'effectue galement avec PTP .
Corrections de dplacement
Le dcalage DRF ou le dcalage d'origine externe ne sont possibles qu'avec des restrictions
en dplacement PTP cartsien. Aucune correction ne doit tre active dans le SCB lors du
passage du dplacement PTP au dplacement CP.
Arrondissement entre des dplacements CP et PTP
Vous pouvez programmer un arrondissement de la transition entre des blocs CP et PTP
avec G641 .
La taille de la zone arrondie est le trajet en mm ou inch parcouru sur la trajectoire entre le
dbut et la fin de l'arrondissement. Cette taille doit tre indique de la manire suivante :
pour les blocs G0, avec ADISPOS
Le calcul du trajet tient compte des adresses F dans le cas des blocs qui ne comportent pas
G0. L'avance est celle des axes indiqus dans l'instruction FGROUP(...) .
Calcul de l'avance
Dans le cas des blocs CP, les axes cartsiens du systme de coordonnes de base sont
utiliss pour le calcul.
Dans le cas des blocs PTP, les axes correspondants du systme de coordonnes machine
sont utiliss pour le calcul.
Notions complmentaires
380 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.9 Dplacement PTP cartsien
Fonction
PTP avec TRANSMIT permet l'accostage l'aide des blocs G0 et G1 avec optimisation du
temps. Au lieu de dplacer les axes du systme de coordonnes de base de manire
linaire (CP), ce sont les axes machine qui sont dplacs de manire linaire (PTP). Ainsi,
le comportement du dplacement des axes machine au voisinage du ple permet d'atteindre
le point final de bloc beaucoup plus rapidement.
Le programme pice continue tre crit dans le systme de coordonnes cartsiennes et
tous les dcalages de coordonnes, toutes les rotations et programmations de frames
restent valables. La simulation sur IHM est galement affiche dans le systme de
coordonnes cartsiennes de la pice.
Syntaxe
N... TRANSMIT
N... PTPG0
N... G0 ...
...
N... G1 ...
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 381
Transformations
6.9 Dplacement PTP cartsien
<
373
&3 1*;<
1;<
Notions complmentaires
382 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.9 Dplacement PTP cartsien
PTP
30
CP
N070 X20 Y2 20
10 N060 X0 Y0
-10
-20
Programmation Commentaire
N001 G0 X90 Z0 F10000 T1 D1 G90 ; Position de dpart
N002 SPOS=0
N003 TRANSMIT ; Transformation TRANSMIT
N010 PTPG0 ; PTP automatiquement pour chaque
bloc G0
puis nouveau CP
N020 G0 X90 Y60
N030 X-90 Y-60
N040 X-30 Y-20
N050 X10 Y0
N060 X0 Y0
N070 X-20 Y2
N170 G1 X0 Y0
N160 X10 Y0
N150 X-30 Y-20
M30
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 383
Transformations
6.9 Dplacement PTP cartsien
Description
PTP et PTPG0
PTPG0 est pris en compte pour toutes les transformations qui peuvent excuter PTP. Dans
tous les autres cas, PTPG0 n'est pas pertinent.
Les blocs G0 sont excuts en mode CP.
La slection de PTP ou PTPG0 s'effectue dans le programme pice ou en dslectionnant CP
dans le paramtre machine $MC_GCODE_RESET_VALUES[48].
PRUDENCE
Conditions marginales
En ce qui concerne les dplacements d'outil et les collisions, plusieurs conditions
marginales et certaines exclusions de fonctions s'appliquent:
Avec PTP , aucune correction de rayon d'outil (CRO) ne doit tre active.
Avec PTPG0, en cas de correction de rayon d'outil (CRO) active, l'accostage se fait par CP.
Avec PTP, les cycles de chariotage (CONTPRON, CONTDCON) ne sont pas possibles.
Avec PTPG0, l'accostage dans les cycles de chariotage (CONTPRON, CONTDCON) se fait par CP.
Notions complmentaires
384 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.10 Conditions marginales pour l'activation d'une transformation
Fonction
La slection de transformations est possible par le biais du programme pice ou en mode
MDA. Attention :
Aucun bloc intermdiaire de dplacement n'est insr (chanfreins/rayons).
Une squence de blocs de type spline doit tre termine, sinon un message s'affiche.
La correction fine d'outil doit tre dsactive (FTOCOF), sinon un message s'affiche.
La correction de rayon d'outil doit tre dsactive (G40), sinon un message s'affiche.
Une correction de longueur d'outil active est reprise dans la transformation par la
commande.
Le frame courant activ avant la transformation est dsactiv par la commande.
Une limitation active de la zone de travail est dsactive par la commande pour les axes
impliqus dans la transformation (correspond WALIMOF).
La surveillance de la zone de protection est dsactive.
Le contournage et l'arrondissement sont interrompus.
Tous les axes indiqus dans les paramtres machine doivent tre synchroniss au
niveau des blocs.
Les axes permuts sont rtablis, sinon un message apparat.
Un message apparat en prsence d'axes dpendants.
Changement d'outil
Un changement d'outil n'est autoris que si la correction de rayon d'outil est dsactive.
Un changement de la correction de longueur d'outil et une activation/ dsactivation de la
correction de rayon d'outil ne doivent pas tre programms dans le mme bloc.
Changement de frame
Toutes les instructions qui se rapportent uniquement au systme de coordonnes de base
sont autorises (FRAME, correction de rayon d'outil). Un changement de frame avec G91
(cotes relatives) ne sera cependant pas trait part, contrairement ce qui se passe
lorsque la transformation est inactive. L'incrment parcourir est trait dans le systme de
coordonnes pice du nouveau frame, quel que soit le frame qui tait actif dans le bloc
prcdent.
Exclusions
Les axes impliqus dans une transformation ne peuvent pas tre utiliss :
comme axes Preset (alarme),
pour l'accostage de point fixe (alarme),
pour la prise de rfrence (alarme).
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 385
Transformations
6.11 Dsactivation d'une transformation (TRAFOOF)
Fonction
L'instruction TRAFOOF permet de dsactiver l'ensemble des transformations et frames actifs.
Remarque
Les frames ncessaires doivent ensuite tre activs par une nouvelle programmation.
Attention :
Les conditions marginales pour l'activation d'une transformation (voir chapitre "Conditions
marginales pour l'activation d'une transformation") s'appliquent galement la dsactivation
d'une transformation.
Syntaxe
TRAFOOF
Signification
TRAFOOF
Instruction de dsactivation de l'ensemble des transformations/frames
actifs
Notions complmentaires
386 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Transformations
6.12 Transformations concatnes (TRACON, TRAFOOF)
Fonction
Deux transformations peuvent tre actives en srie (concatnes) chaque fois, de sorte
que les trajets des axes de la premire transformation constituent les donnes d'entre pour
la deuxime transformation concatne. Les axes machine effectuent les dplacements
rsultant de la deuxime transformation.
Deux transformations peuvent tre concatnes.
Remarque
Un outil est toujours affect la premire transformation d'une transformation rsultante. La
deuxime transformation se comporte alors comme si la longueur active de l'outil valait zro.
Seules les longueurs de base rgles par paramtres machine pour l'outil (_BASE_TOOL_)
sont actives pour la premire transformation.
Constructeur de la machine-outil
Veuillez observer les indications du constructeur de machines concernant des
transformations ventuellement prdfinies par paramtres machine.
Les transformations et les transformations concatnes sont des options. Le catalogue le
plus rcent indique les transformations qu'il est possible de concatner en fonction du type
de commande.
Applications
Rectification de contours programms en tant que lignes d'une surface dveloppe de
cylindre (TRACYL) avec une meule oblique, par exemple l'afftage d'outil.
Finition d'un contour non circulaire gnr avec TRANSMIT l'aide d'une meule oblique.
Syntaxe
TRACON(trf,par)
Activation d'une transformation rsultant d'une
concatnation.
TRAFOOF
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 387
Transformations
6.12 Transformations concatnes (TRACON, TRAFOOF)
Signification
Condition pralable
La deuxime transformation doit tre de type "Axe oblique" (TRAANG). La premire
transformation peut tre :
Transformations d'orientation (TRAORI), tte de fraisage de type cardan comprise
TRANSMIT
TRACYL
TRAANG
L'instruction d'activation d'une transformation rsultant d'une concatnation ne peut tre
utilise que si les transformations concatner et la transformation rsultante sont dfinies
par paramtres machine.
Les conditions marginales indiques dans les descriptions spares pour les
transformations et les cas particuliers doivent galement tre respects lors de l'utilisation
l'intrieur d'une concatnation.
Des informations sur la configuration des paramtres machine des transformations se
trouvent dans :
/FB2/ Manuel de fonctions d'extension ; transformations cinmatiques (M1) et
/FB3/ Manuel de fonctions spciales ; Transformations 3 5 axes (F2)
Notions complmentaires
388 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils 7
7.1 Mmoire de correcteurs
Fonction
Structure de la mmoire de correcteurs
Chaque champ de donnes peut tre appel l'aide d'un numro T et d'un numro D (sauf
"Numros D absolus") et contient, outre les donnes gomtriques de l'outil, d'autres
indications telles que le type d'outil.
Structure des numros D absolus
La "structure horizontale des numros D" est utilise lorsque la gestion d'outils a lieu en
dehors de NCK. Dans ce cas, les numros D, c'est--dire les correcteurs d'outil, sont crs
sans relation avec les outils.
Dans le programme pice, vous pouvez continuer programmer T. Ce numro T est
cependant indpendant du numro D programm.
Donnes de tranchant utilisateur
Des donnes utilisateur de tranchant peuvent tre configures l'aide de PM. Veuillez tenir
compte des indications du constructeur de la machine.
Paramtres d'outil
Remarque
Les diffrentes valeurs de la mmoire de correction
Les diffrentes valeurs de la mmoires de correction P1 P25 peuvent tre lues et crites
par le programme grce des variables systme. Tous les autres paramtres sont rservs.
Les paramtres d'outil $TC_DP6 $TC_DP8, $TC_DP10 et $TC_DP11 ainsi que $TC_DP15
$TC_DP17, $TC_DP19 et $TC_DP20 possdent, en fonction du type d'outil, une autre
signification.
1Est galement valable pour les fraises pour le fraisage avant 3D
2En cas de scie rainurer type d'outil
3rserv : N'est pas utilis par la SINUMERIK 840D.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 389
Corrections d'outils
7.1 Mmoire de correcteurs
Notions complmentaires
390 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.1 Mmoire de correcteurs
Remarque
Les paramtres d'outils qui ne figurent pas dans le tableau, comme par exemple $TC_DP7,
ne sont pas valus autrement dit leur contenu n'a pas d'importance.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 391
Corrections d'outils
7.2 Corrections additives
Fonction
Les corrections additives permettent de programmer des compensations qui dpendent du
processus d'usinage. Elles se rapportent aux donnes gomtriques d'un tranchant et font
donc partie des donnes de tranchant d'outil.
L'accs aux corrections additives a lieu avec un numro DL (DL : location dependent ;
corrections en fonction du lieu d'utilisation) et leur saisie s'effectue sur l'interface utilisateur.
Application
Les corrections additives permettent de compenser les erreurs de cotes dues au lieu
d'utilisation.
Syntaxe
DL=<numro>
Signification
DL
Instruction d'activation d'une correction additive
<Numro>
Le bloc de donnes de correction additive activer est indiqu dans le
paramtre <numro>.
Remarque
La dtermination du nombre de corrections additives et leur activation ont lieu par le biais de
paramtres machine ( voir les indications du constructeur de la machine).
Notions complmentaires
392 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.2 Corrections additives
Exemple
Le mme tranchant est utilis pour usiner 2 portes de roulement :
/LHXG
H[SORLWDWLRQ /LHXG
H[SORLWDWLRQ
;
''/ '
=
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 393
Corrections d'outils
7.2 Corrections additives
Fonction
La lecture et l'criture des valeurs d'usure et de rglage s'effectuent l'aide de variables
systme. La structure des nouveaux paramtres systme est analogue celle des variables
systme correspondants pour les outils et les tranchants.
Variables systme
Remarque
Les valeurs d'usure et de rglage sont ajoutes aux valeurs des paramtres gomtriques et
des autres paramtres de correction (numro D).
Exemple
La valeur d'usure associe la longueur 1 est fixe 1.0 pour le tranchant <d> de l'outil <t>.
Paramtre : $TC_DP3 (longueur 1, pour outils de tournage)
Valeurs d'usure : $TC_SCP13 $TC_SCP63
Valeurs de rglage : $TC_ECP13 $TC_ECP63
$TC_SCP43 [<t>,<d>] = 1.0
Notions complmentaires
394 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.2 Corrections additives
Fonction
L'instruction DELDL permet d'effacer les corrections additives associes des tranchants
d'outil (libration d'espace mmoire). L'effacement concerne les valeurs d'usure aussi bien
que les valeurs de rglage.
Syntaxe
DELDL[<t>,<d>]
DELDL[<t>]
DELDL
<Etat>=DELDL[<t>,<d>]
Signification
DELDL
Instruction de suppression des corrections additives
<t>
Numro T de l'outil
<d>
Numro D du tranchant de l'outil
DELDL[<t>,<d>]
Suppression toutes les corrections additives du tranchant <d> de
l'outil <t>.
DELDL[<t>]
Suppression de toutes les corrections additives de tous les
tranchants de l'outil <t>.
DELDL
Suppression de toutes les corrections additives de tous les
tranchants de tous les outils de l'unit TO (pour le canal dans lequel
l'instruction est programme).
<Etat>
Etat de suppression
Valeur : Signification :
0 Effacement excut correctement.
- L'effacement n'a pas eu lieu (lorsque le paramtrage
dsigne un tranchant prcis) ou l'effacement n'a pas t
entirement effectu (lorsque le paramtrage dsigne
plusieurs tranchants).
Remarque
Les valeurs d'usure et de rglage d'outils actifs ne peuvent pas tre effaces (par analogie
avec l'effacement de correcteurs D et de donnes d'outil).
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 395
Corrections d'outils
7.3 Correcteur d'outil : Interventions spciales
Fonction
Les donnes de rglage SD42900 SD42960 permettent de grer l'exploitation du signe
pour la longueur d'outil et l'usure.
Ceci concerne galement le comportement des composantes d'usure lors de l'application de
la fonction miroir des axes gomtriques ou en cas de changement de plan de travail,
mais aussi pour la compensation de temprature dans la direction d'outil.
Valeurs d'usure
Lorsque nous faisons rfrence des valeurs d'usure dans ce qui suit, il s'agit de la somme
des valeurs d'usure proprement dites ($TC_DP12 $TC_DP20) et des corrections totales
qui comprennent les valeurs d'usure ($SCPX3 $SCPX11) et les valeurs de rglage
($ECPX3 $ECPX11).
Pour de plus amples informations sur les corrections totales, voir :
Bibliographie :
Description fonctionnelle Gestion des outils
Donnes de rglage
Bibliographie
Description fonctionnelle Fonctions de base, Correction d'outil (W1)
Notions complmentaires
396 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.3 Correcteur d'outil : Interventions spciales
Autres informations
Prise d'effet des donnes de rglage modifies
En cas de modification des donnes de rglage dcrites, les composantes du correcteur
d'outil ne sont actualises que lors de la prochaine slection du tranchant d'outil. Dans le cas
o un outil est dj actif et o les donnes de correction modifies de cet outil doivent
prendre effet, il faut appeler nouveau cet outil.
Ceci est galement valable si la longueur rsultante de l'outil est modifie du fait de
l'application de la fonction miroir un axe. L'outil doit faire l'objet d'une nouvelle slection
aprs la fonction miroir afin que les composantes modifies de longueur d'outil prennent
effet.
Organes porte-outil orientables et nouvelles donnes de rglage
Les donnes de rglage SD42900 SD42940 n'ont pas d'effet sur les composantes d'un
organe porte-outil orientable ventuellement actif. En prsence d'un organe porte-outil
orientable, l'outil est toujours pris en considration avec sa longueur totale rsultante
(longueur d'outil + usure + cote de base). Lors du calcul de cette longueur totale rsultante,
la commande tient compte de toutes les modifications provoques par des donnes de
rglage c'est--dire les vecteurs d'un organe porte-outil orientable sont donc indpendants
du plan d'usinage.
Remarque
En cas de mise en oeuvre d'organes porte-outil orientables, il sera souvent prfrable de
dfinir tous les outils pour un systme de base non invers par fonction miroir, mme ceux
utiliss uniquement pour un usinage symtrique. Pour l'usinage avec des axes inverss,
l'organe porte-outil sera pivot de telle sorte que la position effective de l'outil soit dcrite
correctement. Toutes les composantes de longueur d'outil agissent alors automatiquement
dans le sens correct, de sorte que l'interprtation de certaines composantes par les donnes
de rglage en fonction de l'tat d'inversion d'axes est superflue.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 397
Corrections d'outils
7.3 Correcteur d'outil : Interventions spciales
Fonction
Avec des donnes de rglage SD42900 $SC_MIRROR_TOOL_LENGTH et
SD42910 $SC_MIRROR_TOOL_WEAR diffrentes de zro, il est possible d'appliquer la
fonction miroir aux composantes de longueur d'outil et de cote de base avec les valeurs
d'usure par rapport leurs axes respectifs.
; ' ;
= =
0 : : 0
:.6 :.6
'DYHF6/ 'DYHF6/
SD42900 $SC_MIRROR_TOOL_LENGTH
Donne de rglage diffrente de zro :
Les composantes de longueur d'outil ($TC_DP3, $TC_DP4 et $TC_DP5) et les composantes
de cote de base ($TC_DP21, $TC_DP22 et $TC_DP23), dont les axes associs font l'objet
de la fonction miroir, sont aussi soumises la fonction miroir - par inversion de leur signe.
La fonction miroir n'est pas applique aux valeurs d'usure. Si cela doit tre le cas, vous
devez rgler de faon adquate la donne de rglage
SD42910 $SC_MIRROR_TOOL_WEAR.
SD42910 $SC_MIRROR_TOOL_WEAR
Donne de rglage diffrente de zro :
Les valeurs d'usure pour les composantes de longueur d'outil, dont les axes associs font
l'objet de la fonction miroir, sont aussi soumises la fonction miroir - par inversion de leur
signe.
Notions complmentaires
398 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.3 Correcteur d'outil : Interventions spciales
Fonction
Avec les donnes de rglage SD42920 $SC_WEAR_SIGN_CUTPOS et
SD42930 $SC_WEAR_SIGN diffrentes de zro, il est possible d'inverser l'exploitation du
signe des composantes d'usure.
SD42920 $SC_WEAR_SIGN_CUTPOS
Donne de rglage diffrente de zro :
Dans le cas des outils position de tranchant dfinie (outils de tournage et de rectification
type d'outil 400), l'exploitation du signe des composantes d'usure dans le plan de travail
dpend de la position du tranchant. Dans le cas des outils sans position de tranchant dfinie,
cette donne de rglage n'est pas prise en considration.
Dans le tableau suivant, les cotes dont le signe est invers par le SD42920 (diffrent de 0)
sont repres par X :
Remarque
Les modifications de signe en fonction des SD42920 et SD42910 sont indpendantes. Si le
signe d'une cote est modifi par les deux donnes de rglage par exemple, il restera
inchang.
SD42930 $SC_WEAR_SIGN
Donne de rglage diffrente de zro :
Le signe de toutes les cotes d'usure est invers. Cette donne agit aussi bien sur la
longueur d'outil que sur les autres dimensions, par exemple le rayon de l'outil, le rayon
d'arrondi, etc.
S une cote d'usure positive est entre, l'outil devient "plus court" et "plus fin". A ce sujet, voir
chapitre "Correcteur d'outil : Interventions spciales, Prise d'effet des donnes de rglage
modifies".
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 399
Corrections d'outils
7.3 Correcteur d'outil : Interventions spciales
Fonction
En fonction de la cinmatique de la machine ou de la prsence d'un organe porte-outil
orientable, les valeurs d'usure mesures dans l'un de ces systmes de coordonnes sont
transposes voire transformes dans un systme de coordonnes adapt.
Systmes de coordonnes de l'usinage actif
Des offsets de longueur d'outil peuvent rsulter des systmes de coordonnes suivants et
prendre en compte en compte les composantes d'usure de longueur d'outil avec le code G
correspondant du groupe 56 dans un outil actif.
Systme de coordonnes machine (SCM)
Systme de coordonnes de base (SCB)
Systme de coordonnes pice (SCP)
Systme de coordonnes de l'outil (SCO)
Systme de coordonnes de l'outil de transformation cinmatique (SCT)
Syntaxe
TOWSTD
TOWMCS
TOWWCS
TOWBCS
TOWTCS
TOWKCS
Signification
TOWSTD
Valeur de position de base pour corrections sur la longueur d'outil de la
valeur d'usure
TOWMCS
Corrections dans la longueur d'outil dans SCM
TOWWCS
Corrections dans la longueur d'outil dans SCP
TOWBCS
Corrections dans la longueur d'outil dans SCB
TOWTCS
Corrections de la longueur d'outil sur le point de rfrence de l'organe
porte-outil (organe porte-outil orientable)
TOWKCS
Corrections de la longueur d'outil de la tte d'outil (transformation
cintique)
Notions complmentaires
400 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.3 Correcteur d'outil : Interventions spciales
Autres informations
Diffrences
Le tableau suivant reprsente les principales diffrences :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 401
Corrections d'outils
7.3 Correcteur d'outil : Interventions spciales
Remarque
L'valuation de chaque composante d'usure (affectation aux axes gomtriques,
exploitation du signe) est influence par :
le plan actif,
la transformation d'adaptateur,
les donnes de rglage suivantes :
SD42910 $SC_MIRROW_TOOL_WEAR
SD42920 $SC_WEAR_SIGN_CUTPOS
SD42930 $SC_WEAR_SIGN
SD42940 $SC_TOOL_LENGTH_CONST
SD42950 $SC_TOOL_LENGTH_TYPE
Notions complmentaires
402 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.3 Correcteur d'outil : Interventions spciales
Fonction
Avec les donnes de rglage SD42940 $SC_TOOL_LENGTH_CONST diffrentes de zro, il
est possible d'affecter les composantes de longueur d'outil telles que la longueur, l'usure et
la cote de base aux axes gomtriques pour les outils de tournage et de rectification lors
d'un changement de plan.
SD42940 $SC_TOOL_LENGTH_CONST
Donne de rglage diffrente de zro :
L'affectation des composantes de longueur d'outil (longueur, usure et cote de base) aux
axes gomtriques n'est pas modifie en cas de changement de plan de travail (G17 G19).
Le tableau suivant indique l'affectation des composantes de longueur d'outil aux axes
gomtriques pour des outils de tournage et de rectification (types 400 599) :
Remarque
Dans ces tableaux, on suppose que les axes gomtriques 1 3 sont dsigns par X, Y, Z.
Pour l'affectation d'une correction un axe, ce n'est pas le descripteur d'axe mais l'ordre des
axes qui est dterminant.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 403
Corrections d'outils
7.4 Correction d'outil en ligne (PUTFTOCF, FCTDEF, PUTFTOC, FTOCON, FTOCOF)
Fonction
Lorsque la fonction "Correction d'outil en ligne" est active, une correction de longueur d'outil
de rectification rsultant de l'usinage peut tre prise en compte immdiatement.
Le dressage CD, dans lequel la meule est dresse paralllement l'usinage constitue un
exemple d'application :
5OHGHGUHVVDJH
9DOHXUGH
GUHVVDJH
0HXOH
/RQJXHXU
FRUULJHU
3LFH
La correction de longueur d'outil peut tre modifie partir du canal d'usinage ou d'un canal
parallle (canal de dressage).
En fonction de l'instant souhait pour l'opration de dressage, on utilise diffrentes fonction
pour l'criture de la correction d'outil en ligne :
Ecriture en continu bloc par bloc (PUTFTOCF)
Avec PUTFTOCF, le processus de dressage s'effectue en mme temps que l'usinage.
La correction d'outil est modifie en continu dans le canal d'usinage suivant une fonction
polynmiale du premier, second ou troisime degr qui doit tre dfinie pralablement
avec FCTDEF.
PUTFTOCF agit toujours bloc par bloc, autrement dit dans le bloc de dplacement qui suit.
Ecriture en continu effet modal : ID=1 DO FTOC (voir "Correction d'outil en ligne (FTOC)
(Page 593)")
Ecriture discrte (PUTFTOC)
Avec PUTFTOC, le processus de dressage ne s'effectue pas en mme temps que l'usinage
partir d'un canal parallle. La valeur de correction indique par PUTFTOC est
immdiatement active dans le canal de destination.
Remarque
La correction d'outil en ligne s'applique uniquement aux outils de rectification.
Notions complmentaires
404 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.4 Correction d'outil en ligne (PUTFTOCF, FCTDEF, PUTFTOC, FTOCON, FTOCOF)
Syntaxe
Activation/dsactivation d'outil en ligne dans le canal de destination :
FTOCON
...
FTOCOF
FCTDEF(<fonction>,<LLimit>,<ULimit>,<a0>,<a1>,<a2>,<a3>)
PUTFTOCF(<fonction>,<valeur de rfrence>,<paramtre d'outil>,<canal>,<broche>)
...
Discrte :
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 405
Corrections d'outils
7.4 Correction d'outil en ligne (PUTFTOCF, FCTDEF, PUTFTOC, FTOCON, FTOCOF)
Notions complmentaires
406 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.4 Correction d'outil en ligne (PUTFTOCF, FCTDEF, PUTFTOC, FTOCON, FTOCOF)
Exemple
Rectifieuse plane avec :
Y : axe de pntration pour la meule
V : axe de pntration pour la molette de dressage
Canal d'usinage : canal 1 avec les axes X, Z, Y
Canal de dressage : canal 2 avec l'axe V
Aprs le dbut du dplacement de la meule, on souhaite obtenir une profondeur de passe
de dressage de la meule de 0,05 X100. La profondeur de passe de dressage doit entrer en
action avec "Ecriture continue de la correction d'outil en ligne".
<
5OHGHGUHVVDJH
9DOHXUGH
GUHVVDJHb
0HXOH
/RQJXHXU
FRUULJHU
3LFH
;
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 407
Corrections d'outils
7.4 Correction d'outil en ligne (PUTFTOCF, FCTDEF, PUTFTOC, FTOCON, FTOCOF)
Informations complmentaires
Gnralits sur la correction d'outil en ligne
Dans le cas de l'criture en continu ( la priode d'appel de l'interpolateur), aprs l'activation
de la fonction de traitement, chaque modification est additionne dans la mmoire des
usures (pour viter des sauts de valeurs de consigne).
Dans tous les cas : La correction d'outil en ligne peut agir dans chaque canal, pour chaque
broche, pour la longueur 1, 2 ou 3 des paramtres d'usure.
L'affectation des longueurs aux axes gomtriques s'effectue l'aide du plan de travail
courant.
L'affectation des broches l'outil s'effectue l'aide des donnes d'outil pour GWPSON ou TMON,
condition qu'il ne s'agisse pas de la meule courante.
La correction agit toujours sur le paramtre d'usure pour le ct courant de la meule ou le
ct gauche quand les outils ne sont pas actifs.
Remarque
Si la correction est identique pour plusieurs cts de la meule, on applique une rgle de
concatnation pour que les valeurs soient reprises automatiquement pour le ct suivant de
la meule.
Si des corrections en ligne sont prescrites pour un canal d'usinage, les valeurs d'usure pour
l'outil courant dans ce canal ne doivent pas tre modifies partir du programme d'usinage
ou au tableau de commande.
La correction d'outil en ligne est galement prise en compte pour la vitesse priphrique
constante de meule (VPM), ainsi que pour la surveillance d'outil (TMON).
Notions complmentaires
408 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.5 Activation des corrections d'outil 3D (CUT3DC..., CUT3DF...)
Fonction
L'orientation variable de l'outil est prise en compte dans la correction du rayon des outils
cylindriques.
Les instructions pour la slection de la correction de rayon d'outil 3D sont les mmes que
pour la correction de rayon d'outil 2D. La correction gauche/droite dans le sens de
dplacement est indique avec G41/G42. L'accostage se fait toujours suivant NORM. La
correction de rayon d'outil 3D agit uniquement si la transformation 5 axes est active.
La correction de rayon d'outil 3D est galement appele correction 5D, vu que, dans ce cas,
on dispose de cinq degrs de libert pour la position de l'outil dans l'espace.
&RQWRXUGH
SLFH
7UDMHFWRLUHGXFHQWUHGH
O
RXWLOJDOHGLVWDQFHGX
FRQWRXUTXLGLVWDQWH
,6' / 5
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 409
Corrections d'outils
7.5 Activation des corrections d'outil 3D (CUT3DC..., CUT3DF...)
Syntaxe
CUT3DC
CUT3DFS
CUT3DFF
CUT3DF
ISD=<valeur>
Signification
CUT3DC
Activation de la correction de rayon 3D pour le fraisage
priphrique
CUT3DFS
Correction d'outil 3D pour le fraisage en bout avec
orientation d'outil constante. L'orientation de l'outil est
dfinie par G17 - G19 et n'est pas influence par les
frames.
CUT3DFF
Correction d'outil 3D pour le fraisage en bout avec
orientation d'outil constante. L'orientation de l'outil est
dfinie par G17 - G19 et, le cas chant, par la composante
rotationnelle d'un frame.
CUT3DF
Correction d'outil 3D pour le fraisage en bout avec
modification de l'orientation d'outil (uniquement si la
transformation 5 axes est active).
G40 X... Y... Z...
Pour la dsactivation : bloc linaire G0/G1 avec axes
gomtriques
ISD
Profondeur de pntration
Remarque
Les instructions sont effet modal et figurent dans le mme groupe que CUT2D et CUT2DF. La
dsactivation n'a lieu que lors du prochain dplacement dans le plan courant. Ceci est
toujours valable pour G40 et est indpendant de l'instruction CUT.
Des blocs intermdiaires sont permis lorsque la correction du rayon d'outil 3D est active. Les
caractristiques de la correction de rayon d'outil 2D 1/2 sont applicables.
Conditions marginales
G450/G451 et DISC
Un bloc interpolation circulaire est toujours insr aux angles saillants. G450/G451 sont
sans signification.
L'instruction DISC n'est pas prise en compte.
Notions complmentaires
410 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.5 Activation des corrections d'outil 3D (CUT3DC..., CUT3DF...)
Exemple
Fraisage priphrique
La variante de fraisage priphrique utilise ici est ralise par spcification d'un contour
(ligne directrice) et de l'orientation correspondante. Dans ce type d'usinage, la forme de
l'outil n'a aucune importance pour la trajectoire. Seul le rayon est dterminant au point
d'attaque de l'outil.
)UDLVDJHSULSKULTXH
$
;
<
Remarque
La fonction de correction de rayon d'outil 3D est limite aux outils cylindriques.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 411
Corrections d'outils
7.5 Activation des corrections d'outil 3D (CUT3DC..., CUT3DF...)
Fraisage en bout
Pour ce type de fraisage 3D, vous avez besoin de la description des diffrentes trajectoires
3D qui balayent la surface de la pice, ligne aprs ligne. Les calculs sont gnralement
raliss l'aide d'un systme de FAO, en tenant compte de la forme et des dimensions de
l'outil. Dans le programme pice, le postprocesseur crit non seulement les blocs CN, mais
galement les orientations d'outil (lorsque la transformation 5 axes est active) et le code G
de la correction d'outil 3D souhaite. Ainsi l'oprateur de la machine a la possibilit d'utiliser
des outils lgrement plus petits par rapport l'outil utilis pour le calcul des trajectoires CN.
Exemple :
Calcul des blocs CN avec une fraise de 10 mm. L'usinage serait galement possible avec un
diamtre de fraise de 9,9 mm, le profil des asprits pouvant cependant varier dans ce cas.
Notions complmentaires
412 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.5 Activation des corrections d'outil 3D (CUT3DC..., CUT3DF...)
5 5 5 5
U U
D D D
U
5
5 5
Si un numro de type d'outil qui ne figure pas sur la figure est indiqu dans le programme
CN, la commande utilise automatiquement le type d'outil 110 (fraise bout hmisphrique).
Une alarme est mise si les valeurs limites des donnes d'outil ne sont pas respectes.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 413
Corrections d'outils
7.5 Activation des corrections d'outil 3D (CUT3DC..., CUT3DF...)
Notions complmentaires
414 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.5 Activation des corrections d'outil 3D (CUT3DC..., CUT3DF...)
Fonction
Correction sur la trajectoire
Dans le cas du fraisage en bout, il faut considrer le cas o le point de contact change
brusquement au niveau de la surface de l'outil, comme dans le cas de l'usinage d'une
surface convexe avec un outil vertical (exemple ci-contre). L'exemple reprsent sur la figure
ci-contre peut tre considr comme un cas limite.
3RLQWVLQJXOLHU
Ce cas limite est surveill par la commande qui dtecte immdiatement toute modification
brutale du point de contact en s'appuyant sur les angles forms par l'outil et les vecteurs
normaux la surface. A ces emplacements, la commande insre des blocs interpolation
linaire, de sorte que le dplacement peut tre effectu.
Pour le calcul de ces blocs interpolation linaire, des plages angulaires admissibles pour
l'angle latral figurent dans des paramtres machine. Une alarme est mise si les plages
angulaires admissibles figurant dans des paramtres machines sont dpasses.
Courbure de la trajectoire
La courbure de la trajectoire ne fait pas l'objet d'une surveillance. C'est pourquoi il est
galement recommand de n'utiliser que des outils avec lesquels un usinage sans violation
du contour est garanti.
Profondeur de pntration (ISD)
La profondeur de pntration ISD est prise en compte uniquement si la correction de rayon
d'outil 3D est active.
Avec l'instruction ISD (Insertion Depth), vous programmez la profondeur de pntration de
l'outil lors du fraisage priphrique. Cela permet de modifier la position du point d'usinage
sur la surface latrale de l'outil.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 415
Corrections d'outils
7.5 Activation des corrections d'outil 3D (CUT3DC..., CUT3DF...)
Syntaxe
Correction d'outil 3D pour fraisage priphrique
CUT3DC
ISD=<valeur>
Signification
CUT3DC
Activer la correction d'outil 3D pour fraisage priphrique, par exemple le
fraisage de poche avec faces latrales obliques.
ISD
L'instruction ISD indique la distance (<valeur>) entre la pointe de la fraise
(FS) et le point auxiliaire de la fraise (FH).
)+
)6
,6'
Notions complmentaires
416 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.5 Activation des corrections d'outil 3D (CUT3DC..., CUT3DF...)
Autres informations
Fraisage de poche avec faces latrales obliques pour fraisage priphrique avec CUT3DC
Dans le cas de cette correction de rayon d'outil 3D, un cart du rayon de fraise est
compens par un dplacement perpendiculaire la surface usiner. Le plan dans lequel se
trouve la surface d'attaque de la fraise reste inchang lorsque la profondeur de pntration
ISD reste inchange. Une fraise dote par exemple d'un rayon plus petit par rapport un
outil standard n'atteindrait pas le fond de la poche, qui reprsente galement la surface de
dlimitation. Pour permettre un dplacement perpendiculaire automatique de l'outil, la
commande doit connatre cette surface de dlimitation (voir chapitre "Fraisage priphrique
3D avec surfaces de dlimitation").
Pour d'autres informations sur la surveillance anticollision, voir :
Bibliographie :
Manuel de programmation Notions de base, chapitre "Corrections d'outil".
Fonction
Angles rentrants/angles saillants
Les angles saillants et les angles rentrants sont traits sparment. L'appellation angle
rentrant ou angle saillant dpend de l'orientation de l'outil.
En cas de changement d'orientation un angle, il peut arriver que le type d'angle change
pendant l'usinage. Dans ce cas, l'usinage est arrt et un message d'erreur est mis.
6HQVG
XVLQDJH
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 417
Corrections d'outils
7.5 Activation des corrections d'outil 3D (CUT3DC..., CUT3DF...)
Syntaxe
G450
G451
Signification
G450
Arc de raccordement (l'outil contourne les angles de la pice sur une
trajectoire circulaire)
G451
Point d'intersection des quidistantes (l'outil s'arrte aux angles de la pice)
Autres informations
Mthode du point d'intersection pour la correction 3D
Dans le cas du fraisage priphrique 3D, les codes G G450/G451 sont maintenant traits aux
angles saillants, c.--d. que le point d'intersection des trajectoires dcales peut tre
accost. Jusqu' la version 4 du logiciel, un cercle tait toujours insr aux angles saillants.
La mthode du point d'intersection disponible est particulirement intressante pour des
programmes 3D gnrs par des systmes de CAO. En effet, ces programmes sont souvent
constitus de blocs linaires courts (approximation de courbes lisses), les transitions entre
blocs voisins tant pratiquement tangentielles.
En cas d'activation de la correction de rayon d'outil, des cercles taient jusqu' prsent
insrs pour contourner les angles saillants. Comme ces blocs deviennent trs courts si les
transitions sont pratiquement tangentielles, des baisses de vitesse indsirables se
produisent.
Dans ces cas, les deux parties de trajectoires adjacentes sont prolonges de faon
analogue la correction de rayon 2D , et le point d'intersection des parties de trajectoires
prolonges est accost.
Le point d'intersection est dtermin en prolongeant les trajectoires dcales des deux blocs
concerns dans le plan perpendiculaire la direction de l'outil au niveau de l'angle. S'il
n'existe pas de point d'intersection, l'angle est trait comme prcdemment, c.--d. qu'un
cercle est insr.
Pour d'autres informations sur la mthode du point d'intersection, voir :
Bibliographie :
Description fonctionnelle Fonctions de base, Correction de rayon d'outil 3D (W5)
Notions complmentaires
418 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.5 Activation des corrections d'outil 3D (CUT3DC..., CUT3DF...)
Applications
En plus des applications typiques dans lesquelles un outil rel dcrit la trajectoire du centre
au lieu de l'outil standard, les outils cylindriques avec une correction d'outil 3D sont
galement prsents. Dans ce cas, la trajectoire programme se rapporte au contour de la
surface d'usinage. La surface de dlimitation correspondante dpend de l'outil. Comme pour
la correction de rayon d'outil conventionnelle, on tient compte du rayon total pour le calcul du
dcalage vertical par rapport la surface de dlimitation.
Fonction
fraisage priphrique 3D avec outils rels
Dans le cas du fraisage priphrique 3D avec modification continue ou constante de
l'orientation de l'outil, la trajectoire du centre de l'outil est souvent programme pour un outil
standard dfini. Compte tenu que dans bien des cas rels, on ne dispose pas des outils
standard adquats, on peut utiliser un outil ne diffrant pas trop sensiblement d'un outil
standard.
Avec CUT3DCCD, une surface de dlimitation, qui dcrirait l'outil standard programm, est prise
en compte pour un outil diffrentiel rel. Le programme CN dcrit la trajectoire du centre d'un
outil standard.
Avec CUT3DCC, une surface de dlimitation, qui aurait atteint l'outil standard programm, est
prise en compte dans le cas de l'utilisation d'outils cylindriques. Le programme CN dcrit le
contour de la surface d'usinage.
Syntaxe
CUT3DCCD
CUT3DCC
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 419
Corrections d'outils
7.5 Activation des corrections d'outil 3D (CUT3DC..., CUT3DF...)
Signification
CUT3DCCD
Activation de la correction d'outil 3D pour fraisage priphrique avec
outil diffrentiel sur la trajectoire du centre de l'outil : dplacement
perpendiculaire jusqu' la surface de dlimitation.
CUT3DCC
Activation de la correction d'outil 3D pour fraisage priphrique avec
surfaces de dlimitation et correction de rayon 3D : contour de la surface
d'usinage
Remarque
Correction de rayon d'outil avec G41, G42
Pour la correction de rayon d'outil avec G41, G42 dans le cas o CUT3DCCD ou CUT3DCC sont
actifs, l'option "Transformation d'orientation" doit tre active.
Exemple
Dimensions d'outil pour une fraise convexe demi-cercle avec un rayon plus petit par rapport
l'outil standard.
Outil rel avec arrondi : R' = $TC_DP6 + $TC_DP15 + OFFN r' = $TC_DP7 + $TC_DP16
types d'outil 121 et 131 fraises convexes
demi-cercle (fraise cylindrique)
Dans cet exemple, $TC_DP15 + OFFN ainsi que $TC_DP16 sont ngatifs.
le type d'outil ($TC_DP1) est exploit.
Sont uniquement autoriss les types de Pour ces types de fraise autoriss, le rayon de cong r est gal au rayon
fraise avec un corps cylindrique (fraise de tige R. Tous les autres types d'outil autoriss sont interprts comme
cylindrique) ainsi que des fraises convexes tant des fraises cylindriques et la cote ventuellement indique pour
demi-cercle (types 121 et 131) et, dans un l'arrondi n'est pas prise en compte.
cas limite, la fraise bout hmisphrique
(type 110).
Notions complmentaires
420 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.5 Activation des corrections d'outil 3D (CUT3DC..., CUT3DF...)
Autres informations
Trajectoire du centre de l'outil avec dplacement jusqu' la surface de dlimitation
CUT3DCCD
En cas d'utilisation d'un outil avec un rayon plus petit que celui de l'outil standard
correspondant, une fraise pntrant dans le sens longitudinal avance jusqu' ce qu'elle
touche de nouveau le fond de la poche. Ainsi l'angle form par la surface d'usinage et la
surface de dlimitation est vid autant que l'outil le permet. Il s'agit d'un mode d'usinage
mixte par fraisage priphrique et par fraisage en bout. De manire analogue l'outil avec
un rayon rduit, le dplacement s'effectue dans la direction inverse dans le cas d'un outil
avec un rayon plus grand.
2XWLOVWDQGDUG
JH
LQD
XV
2XWLOUD\RQSOXVSHWLW
HG
GSODFMXVTX
ODVXUIDFH
IDF
GHGOLPLWDWLRQ
6XUIDFHGHGOLPLWDWLRQ
Par rapport toutes les autres corrections d'outil du groupe de codes G 22, un paramtre
d'outil $TC_DP6 spcifi pour CUT3DCCD est sans signification pour le rayon d'outil et n'influence
pas la correction rsultante.
Le dcalage de la correction rsulte de la somme des valeurs suivantes :
Valeur d'usure du rayon d'outil (paramtre d'outil $TC_DP15)
Dcalage d'outil OFFN programm pour le calcul du dcalage perpendiculaire la surface
de dlimitation.
Le programme pice gnr ne permet pas de savoir si la surface usine se situe gauche
ou droite de la trajectoire. On part donc d'un rayon positif et d'une valeur d'usure ngative
de l'outil original. Une valeur d'usure ngative dcrit toujours un outil de diamtre rduit.
Utilisation d'outils cylindriques
En cas d'utilisation d'outils cylindriques, un dplacement est uniquement ncessaire si la
surface d'usinage et la surface de dlimitation forment un angle aigu (moins de 90 degrs).
L'utilisation de fraises convexes demi-cercle exige un dplacement de l'outil dans le sens
longitudinal aussi bien en prsence d'un angle aigu que d'un angle obtus.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 421
Corrections d'outils
7.5 Activation des corrections d'outil 3D (CUT3DC..., CUT3DF...)
5IUHQFHGHWUDMHFWRLUH
5
H J
LQD
XV
HG
)DF
6XUIDFHGHGOLPLWDWLRQ
L'angle form par la surface d'usinage et la surface de dlimitation peut galement passer
d'un angle aigu un angle obtus, et vice versa, l'intrieur d'un bloc.
L'outil utilis rellement peut tre aussi bien plus grand que plus petit que l'outil standard.
Cependant le rayon d'arrondi rsultant ne doit pas devenir ngatif et le signe du rayon d'outil
rsultant doit rester inchang.
Avec CUT3DCC, le programme pice CN se rapporte au contour de la surface d'usinage.
Comme pour la correction de rayon d'outil conventionnelle, on tient compte du rayon total qui
correspond la somme des valeurs suivantes :
Rayon d'outil (paramtre d'outil $TC_DP6)
Valeur d'usure (paramtre d'outil $TC_DP15)
Dcalage d'outil OFFN programm pour le calcul du dcalage perpendiculaire la surface
de dlimitation.
La position de la surface de dlimitation est dtermine par la diffrence des deux valeurs
suivantes :
Dimensions de l'outil standard
Rayon d'outil (paramtre d'outil $TC_DP6)
Notions complmentaires
422 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.6 Orientation de l'outil (ORIC, ORID, OSOF, OSC, OSS, OSSE, ORIS, OSD, OST)
Fonction
On entend par orientation de l'outil l'orientation gomtrique de l'outil dans l'espace. Sur une
machine-outil cinq axes, l'orientation de l'outil peut tre spcifie par des instructions du
programme.
9HFWHXUGH
GLUHFWLRQ
<
Des dplacements d'arrondissement de l'orientation activs par OSD et OST sont forms
diffremment selon le type d'interpolation pour l'orientation d'outil.
En cas d'interpolation vectorielle active, le trac liss de l'orientation est galement interpol
par l'interpolation vectorielle. Par contre, en cas d'interpolation d'axe rotatif active,
l'orientation est directement lisse par des dplacements d'axe rotatif.
Programmation
Programmation du changement d'orientation :
On peut programmer un changement d'orientation de l'outil par :
programmation directe des axes rotatifs A, B, C (interpolation d'axe rotatif)
Angles d'Euler ou RPY
Vecteur de direction (interpolation vectorielle par indication de A3 ou de B3 ou de C3)
LEAD/TILT (fraisage en bout)
Le systme de coordonnes de rfrence est soit le { systme de coordonnes machine
(ORIMKS), soit le systme de coordonnes pice courant (ORIWKS ).
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 423
Corrections d'outils
7.6 Orientation de l'outil (ORIC, ORID, OSOF, OSC, OSS, OSSE, ORIS, OSD, OST)
0RGLILFDWLRQ
GHO
RULHQWDWLRQ
Instruction Signification
ORIC : orientation et dplacement le long de la trajectoire en parallle
ORID : orientation et dplacement le long de la trajectoire successifs
OSOF : aucun lissage de l'orientation
OSC : orientation constante
OSS : lissage de l'orientation seulement en dbut du bloc
OSSE : lissage de l'orientation en dbut et en fin de bloc
ORIS : Vitesse, en degrs par mm, du changement d'orientation lors de l'activation
du lissage de l'orientation (s'applique OSS et OSSE)
OSD : Arrondissement de l'orientation par prescription de la longueur
d'arrondissement avec la donne de rglage :
SD42674 $SC_ORI_SMOOTH_DIST
OST : Arrondissement de l'orientation par prescription de la tolrance d'angle en
degrs en cas d'interpolation vectorielle avec la donne de rglage :
SD42676 $SC_ORI_SMOOTH_TOL
En cas d'interpolation d'axe rotatif, la tolrance prescrite est prise comme
tant l'cart maximal des axes d'orientation.
Remarque
Toutes les instructions ralisant un arrondissement de l'orientation de l'outil (OSOF, OSC, OSS,
OSSE, OSD et OST) sont regroupes dans le groupe de fonctions G34. Elles sont effet modal,
autrement dit, une seule de ces instructions peut tre excute la fois.
Notions complmentaires
424 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.6 Orientation de l'outil (ORIC, ORID, OSOF, OSC, OSS, OSSE, ORIS, OSD, OST)
Exemples
Exemple 1 : ORIC
Si, entre les blocs de dplacement N10 et N20, deux ou plusieurs blocs sont programms
avec des changements d'orientation (p. ex. A2=... B2=... C2=...) et si ORIC est actif, le bloc
interpolation circulaire insr est rparti sur ces deux blocs intermdiaires conformment
la valeur des changements d'angle.
1
1 1
1
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 425
Corrections d'outils
7.6 Orientation de l'outil (ORIC, ORID, OSOF, OSC, OSS, OSSE, ORIS, OSD, OST)
Exemple 2 : ORID
Si ORID est active, tous les blocs situs entre les deux blocs de dplacement sont excuts
la fin du premier bloc de dplacement. Le bloc interpolation circulaire avec orientation
constante est excut directement avant le deuxime bloc de dplacement.
([FXWHU1HW1
1
1
Remarque
L'instruction de programme qui est active dans le premier bloc de dplacement d'un angle
saillant est dterminante pour le type de changement d'orientation cet angle saillant.
Sans changement d'orientation : Si l'orientation n'est pas modifie la fin du bloc, la section
de l'outil est un cercle en contact avec les deux contours.
Notions complmentaires
426 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.6 Orientation de l'outil (ORIC, ORID, OSOF, OSC, OSS, OSSE, ORIS, OSD, OST)
1
1
1
:5.
Code de programme
ORIC
N10 X Y Z G1 F500
N12 X Y Z A2= B2= C2=
N15 X Y Z A2= B2= C2=
Informations complmentaires
Comportement aux angles saillants
Un bloc interpolation circulaire avec un rayon gal celui de la fraise est toujours insr
aux angles saillants.
Les instructions de programme ORIC et ORID permettent de dfinir si les changements
d'orientation qui ont t programms entre le bloc N1 et le bloc N2 seront effectus avant le
dbut du bloc interpolation circulaire insr ou en mme temps que celui-ci.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 427
Corrections d'outils
7.6 Orientation de l'outil (ORIC, ORID, OSOF, OSC, OSS, OSSE, ORIS, OSD, OST)
8QEORFLQWHUSRODWLRQFLUFXODLUHHVW
LQVUHQWUHOHEORF1HWOHEORF1
1
1
Si un changement d'orientation est ncessaire aux angles saillants, celui-ci peut s'effectuer
paralllement l'interpolation ou bien sparment, en mme temps que le dplacement le
long de la trajectoire.
Avec ORID, les blocs insrs sont excuts d'abord sans dplacement le long de la
trajectoire. Le bloc de raccordement par interpolation circulaire est insr directement avant
le second des deux blocs de dplacement qui forment l'angle.
Si plusieurs blocs d'orientation sont insrs un angle saillant et si ORIC est actif, le
mouvement circulaire est rparti sur les diffrents blocs insrs, conformment aux valeurs
des changements d'orientation de ces blocs.
Arrondissement de l'orientation avec OSD ou OST
Lors de l'arrondissement avec G642, l'cart maximal pour les axes de contour et les axes
d'orientation ne peut pas varier beaucoup. La tolrance, la plus petite des deux, dtermine la
forme du dplacement d'arrondissement et de la tolrance d'angle et permet de lisser assez
fortement le trac de l'orientation sans carts de contour importants.
L'activation de OSD ou OST permet, avec une longueur d'arrondissement ou une tolrance
d'angle prescrites, de lisser "gnreusement" de trs faibles carts du trac de l'orientation
sans carts de contour importants.
Remarque
A la diffrence de l'arrondissement du contour (et du trac de l'orientation) avec G642, aucun
bloc spar n'est form lors de l'arrondissement de l'orientation avec OSD ou OST, mais le
dplacement d'arrondissement est directement introduit dans les blocs d'origine
programms.
Avec OSD ou OST, aucune transition entre blocs ne peut tre arrondie pour lesquels un
changement du type d'interpolation pour l'orientation de l'outil (vecteur axe rotatif, axe
rotatif vecteur) a lieu. Ces transitions entre blocs peuvent ventuellement tre arrondies
avec les fonctions d'arrondissement conventionnelles G641, G642 ou G643.
Notions complmentaires
428 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.7 Numros D libres, numro de tranchant
Numro D
Les numros D peuvent tre utiliss en tant que numros de correcteur. En outre, CE
permet l'adressage du numro de tranchant. L'criture du numro de tranchant est possible
l'aide de la variable systme $TC_DPCE.
Prrglage : n correction == n tranchant
Le nombre maximal de numros D (numros de tranchant) et le nombre maximal de
tranchants par outil sont dfinis dans les paramtres machine ( constructeur de la
machine-outil). Les instructions suivantes sont recommandes uniquement lorsque le
nombre maximal de numros de tranchant (paramtre machine MD18105) est plus grand
que le nombre de tranchants par outil (MD18106). Veuillez observer les indications du
constructeur de machines.
Remarque
Outre les numros D relatifs, vous pouvez galement attribuer des numros D "absolus" (1-
32000) sans rfrence un numro T (avec la fonction "structure horizontale des numros
D").
Bibliographie
Description fonctionnelle Fonctions de base, Correction d'outil (W1)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 429
Corrections d'outils
7.7 Numros D libres, numro de tranchant
Fonction
L'instruction CKKDNO permet un contrle d'univocit de l'attribution des numros D. Les
numros D de tous les outils dfinis dans une unit TO ne peuvent tre attribus qu'une fois.
La vrification ne porte pas sur les outils de rechange.
Syntaxe
state=CHKDNO(Tno1,Tno2,Dno)
Signification
state
= TRUE : Les numros D ont t attribus de faon
univoque dans le domaine contrl.
= FALSE : Une collision entre des numros D a t
constate ou le paramtrage est incorrect.
Tno1, Tno2 et Dno sont les paramtres ayant
conduit la collision. Ces donnes peuvent
tre exploites dans le programme pice.
CHKDNO (Tno1,Tno2)
Tous les numros D des outils indiqus sont compars.
CHKDNO(Tno1)
Tous les numros D de l'outil Tno1 sont compars tous les
numros D des autres outils.
CHKDNO
Tous les numros D de tous les outils sont compars tous
les numros D de tous les autres outils.
Notions complmentaires
430 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.7 Numros D libres, numro de tranchant
Fonction
L'attribution des numros D doit tre univoque. Deux tranchants distincts d'un outil ne
peuvent pas possder le mme numro D.
GETDNO
Cette instruction fournit le numro D d'un certain tranchant (ce) d'un outil avec le numro T t.
S'il n'existe pas de numro D correspondant aux paramtres indiqus, la valeur d=0 est
attribue. Si le numro D n'est pas valable, d contient une valeur suprieure 32000.
SETDNO
Avec cette instruction, vous attribuez la valeur d au numro D du tranchant ce de l'outil t. Le
paramtre state fournit le rsultat de l'instruction (TRUE ou FALSE). S'il n'existe pas
d'enregistrement correspondant aux paramtres indiqus, le rsultat de l'instruction est
FALSE. Les erreurs de syntaxe gnrent une alarme. La valeur 0 ne peut pas tre attribue
explicitement un numro D.
Syntaxe
d = GETDNO (t,ce)
state = SETDNO (t,ce,d)
Signification
Programmation Commentaire
$TC_DP2[1,2] = 120 ;
$TC_DP3[1,2] = 5.5 ;
$TC_DPCE[1,2] = 3 ; Numro de tranchant CE
... ;
N10 def int NDAncien, NDNouveau = 17 ;
N20 NDAncien = GETDNO(1,3) ;
N30 SETDNO(1,3,NDNouveau) ;
Le nouveau correcteur D17 est affect au tranchant CE=3. L'accs aux donnes de ce
tranchant a dornavant lieu avec le numro D17 ; ceci concerne les paramtres systme
aussi bien que la programmation avec l'adresse CN.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 431
Corrections d'outils
7.7 Numros D libres, numro de tranchant
Fonction
Avec l'instruction GETACTTD, vous dterminez le numro T correspondant un numro D
absolu. Il n'y a pas de contrle d'univocit. En prsence de plusieurs numros D identiques
dans une unit TO, l'instruction fournit le numro T du premier outil trouv. En cas
d'utilisation de la "structure horizontale des numros D", l'instruction ne prsente pas
d'intrt, car son rsultat est toujours "1" (pas de numro T dans la gestion des donnes).
Syntaxe
Etat=GETACTTD(Tnr,Dnr)
Signification
nD
Numro D pour lequel le numro T doit tre recherch.
Tnr
Numro T trouv
tat
Valeur : Signification :
0 Le numro T a t trouv. Le paramtre n T contient sa valeur.
-1 Il n'existe pas de numro T pour le numro D indiqu ; n T=0.
-2 Le numro D n'est pas univoque. Le paramtre n T contient la
valeur du premier outil trouv comportant le numro D dont la
valeur est n D.
-5 La fonction n'a pas pu tre excute pour une autre raison.
Notions complmentaires
432 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.7 Numros D libres, numro de tranchant
7.7.5 Libre affectation des numros D : numros D dclars non valides (DZERO)
Fonction
L'instruction DZERO sert faciliter le routillage. Les correcteurs dclars non valides ne font
plus l'objet d'un contrle par l'instruction CHKDNO. Pour avoir de nouveau accs aux
correcteurs, il faut procder une nouvelle affectation des numros D avec SETDNO.
Syntaxe
DZERO
Signification
DZERO
Dclare tous les numros D de l'unit TO non valides.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 433
Corrections d'outils
7.8 Cinmatique d'un organe porte-outil
Conditions
Un organe porte-outil ne peut orienter un outil dans toutes les directions de l'espace que
si deux axes rotatifs V1 et V2 sont prsents.
si les axes rotatifs sont perpendiculaires les uns par rapport aux autres.
si l'axe longitudinal de l'outil est perpendiculaire au deuxime axe rotatif V2.
En outre, la condition ci-dessous doit tre satisfaite dans le cas des machines sur lesquelles
il doit tre possible de rgler toutes les orientations :
- l'orientation de l'outil doit tre perpendiculaire au premier axe rotatif V1.
Fonction
La cinmatique d'un organe porte-outil ayant deux axes rotatifs au maximum v1 ou v2 est
dcrite l'aide des 17 variables systme allant de $TC_CARR1[m] $TC_CARR17[m]. Cette
description comprend :
le vecteur distance entre le premier axe rotatif et le point de rfrence de l'organe porte-
outil I1, le vecteur distance entre le premier et le second axe rotatif I2, le vecteur
distance entre le second axe rotatif et le point de rfrence de l'outil I3.
le vecteur de direction des deux axes rotatifs V1, V2.
les angles rotatifs 1, 2autour des deux axes. Les angles rotatifs sont positifs s'ils
provoquent une rotation en sens horaire pour un observateur regardant dans la direction
des axes rotatifs.
O
9
O
O
9
Pour les machines cinmatique dcompose (l'outil et la pice sont orientables), les
variables systme supplmentaires
$TC_CARR18[m] bis $TC_CARR23[m] ont t dfinies.
Notions complmentaires
434 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.8 Cinmatique d'un organe porte-outil
Paramtres
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 435
Corrections d'outils
7.8 Cinmatique d'un organe porte-outil
Remarque
Explication des paramtres
"m" est le numro de l'organe porte-outil dcrire.
Les paramtres $TC_CARR47 jusqu' $TC_CARR54 ainsi que $TC_CARR61 jusqu' $TC_CARR63 ne
sont pas dfinis et gnrent une alarme en cas de tentative d'accs en lecture ou en
criture.
Vous pouvez choisir librement les points initiaux et finaux des vecteurs distances sur les
axes. Les angles rotatifs 1, 2autour des deux axes sont gaux 0 lorsque l'organe porte-
outil est en position initiale. Il existe donc un grand nombre de possibilits pour dcrire la
cinmatique d'un organe porte-outil.
Vous pouvez dcrire des organes porte-outil n'ayant qu'un axe rotatif ou aucun axe rotatif en
annulant les composantes du vecteur de direction d'un ou des deux axes rotatifs.
Dans le cas d'un organe porte-outil sans axe rotatif, les vecteurs distances ont le mme effet
que des corrections d'outil supplmentaires, dont les composantes ne sont pas influences
par le basculement entre les plans d'usinage (G17 G19).
Dcalage des axes Changement de position de l'axe rotatif v1 ou v2 lorsque l'organe porte-outil
rotatifs v11 et v2 orientable est en position initiale.
Dcalage Dcalage ou incrment angulaire de la denture Hirth des axes rotatifs v1 et v2.
angulaire/incrment L'angle programm ou calcul est arrondi la valeur la plus proche qui
angulaire des axes s'obtient l'aide de la formule phi = s + n * d, n tant un nombre entier.
rotatifs v1et v2
Position minimale et Position minimale/maximale des axes rotatifs Angles limites (limite logicielle)
maximale Axes des axes rotatifs v1 et v2.
rotatifs v1, v2
Notions complmentaires
436 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.8 Cinmatique d'un organe porte-outil
Exemple
L'organe porte-outil utilis dans l'exemple suivant peut tre dcrit entirement par une
rotation autour de l'axe Y.
]
]
= <
<
;
<
;
;
;
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 437
Corrections d'outils
7.8 Cinmatique d'un organe porte-outil
Autres informations
Cinmatique dcompose
Pour les machines cinmatique dcompose (l'outil et la pice sont orientables), les
variables systme supplmentaires $TC_CARR18[m] $TC_CARR23[m] permettent de dfinir :
l'organe porte-pice orientable l'aide :
du vecteur distance entre le second axe rotatif V2 et le point de rfrence d'une table
porte-pice pivotante I4 du troisime axe rotatif.
les axes rotatifs l'aide :
des deux descripteurs d'axes de canal associs aux axes rotatifs V1et V2, et dont les
positions peuvent tre interroges pour la dtermination de l'orientation.
le type de cinmatique l'aide d'une des valeurs T, P ou M :
type de cinmatique T : seul l'outil est orientable.
type de cinmatique P : seule la pice est orientable.
type de cinmatique M : l'outil et la pice sont orientables.
Effacement des donnes d'organe porte-outil
Avec $TC_CARR1[0] = 0, vous pouvez effacer les donnes de tous les organes porte-outil.
La valeur du paramtre pour le type de cinmatique $TC_CARR23[T] = T doit tre une des
trois lettres majuscules ou minuscules (T, P, M) ; ce paramtre ne doit donc pas tre effac.
Modification des donnes d'organe porte-outil
Vous pouvez modifier chacune des valeurs en lui affectant une nouvelle valeur dans le
programme pice. Tout autre caractre que T, P ou M conduit une alarme lors de la
tentative d'activer l'organe porte-outil orientable.
Lecture des donnes d'organe porte-outil
Vous pouvez lire chacune des valeurs en l'affectant une variable dans le programme
pice.
Dcalage fin
Une valeur de dcalage fin non autorise n'est dtecte que lorsqu'un organe porte-outil
orientable contenant une telle valeur est activ et que, dans le mme temps, la donne de
rglageSD42974 $SC_TOCARR_FINE_CORRECTION = TRUE.
La valeur absolue du dcalage fin autorise est limite par les paramtres machine une
valeur maximale admissible.
Notions complmentaires
438 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.9 Correction de longueur d'outil pour organes porte-outils orientables (TCARR, TCOABS, TCOFR, TCOFRX, TCOFRY,
Fonction
Les composantes de longueur d'outil varient lorsque l'orientation dans l'espace de l'outil en
question change.
= =
;
Syntaxe
TCARR=[<m>]
TCOABS
TCOFR
TCOFRZ
avec TCOFRY
avec TCOFRX
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 439
Corrections d'outils
7.9 Correction de longueur d'outil pour organes porte-outils orientables (TCARR, TCOABS, TCOFR, TCOFRX,
TCOFRY, TCOFRZ)
Signification
Autres informations
Correction de longueur d'outil partir de l'organe porte-outil (TCOABS)
TCOABS calcule la correction de longueur d'outil sur la base des angles d'orientation de
l'organe porte-outil, qui sont rangs dans les variables systme $TC_CARR13 et
$TC_CARR14.
Pour la dfinition de la cinmatique de l'organe porte-outil avec des variables systme, voir
"Cinmatique de l'organe porte-outil (Page 434)".
Pour que la correction de longueur d'outil soit recalcule en cas de changement de frame, il
convient de rappeler l'outil.
direction d'outil du frame actif
L'organe porte-outil orientable peut tre rgl de telle faon que l'outil soit orient dans les
directions suivantes :
dans la direction Z avec TCOFR ou TCOFRZ
dans la direction Y avec TCOFRY
dans la direction X avec TCOFRX
Toute commutation entre TCOFR et TCOABS provoque un recalcul de la correction de longueur
d'outil.
Appel de l'organe porte-outil (TCARR)
Avec TCARR, vous appelez les donnes gomtriques de l'organe porte-outil de numro m
(mmoire de correcteurs).
Avec m=0, vous dsactivez l'organe porte-outil actif.
Les donnes gomtriques de l'organe porte-outil ne deviennent oprantes qu'aprs l'appel
de l'outil. L'outil slectionn reste activ mme aprs un changement d'organe porte-outil.
Les donnes gomtriques de l'organe porte-outil peuvent aussi tre dfinies dans le
programme pice, par le biais des variables systme correspondantes.
Notions complmentaires
440 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.9 Correction de longueur d'outil pour organes porte-outils orientables (TCARR, TCOABS, TCOFR, TCOFRX, TCOFRY,
Remarque
L'orientation de l'outil doit tre adapte manuellement au frame actif.
Lors du calcul de la correction de longueur d'outil, les angles de rotation de l'organe porte-
outil font galement l'objet d'un calcul. Etant donn que les organes porte-outil deux axes
de rotation ont gnralement deux paires d'angles de rotation, avec lesquels on peut
adapter l'orientation d'outil au frame actif, les valeurs des angles de rotation ranges dans
les variables systme doivent correspondre au moins approximativement aux angles de
rotation rgls mcaniquement.
Remarque
Orientation de l'outil
La commande n'est pas en mesure de contrler la possibilit de rglage sur la machine des
angles de rotation calculs sur la base de l'orientation du frame.
Si les axes de rotation de l'organe porte-outil sont situs de telle faon qu'il soit impossible
l'outil de rallier l'orientation calcule sur la base de l'orientation du frame, une alarme est
mise.
Combiner la correction fine d'outil et les fonctionnalits de la correction de longueur d'outil
n'est pas autoris pour les organes porte-outils orientables. Si vous tentez d'appeler les
deux fonctions en mme temps, un message d'erreur vous sera donn.
Avec TOFRAME il est possible de dfinir un frame en fonction de la direction dans laquelle est
orient l'organe porte-outil. Pour de plus amples informations, se reporter au chapitre
"Frames".
Quand une transformation d'orientation est active (transformation 3, 4, 5 axes), vous pouvez
appeler un organe porte-outil ayant une orientation s'cartant de la position zro, sans
dclencher une alarme.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 441
Corrections d'outils
7.9 Correction de longueur d'outil pour organes porte-outils orientables (TCARR, TCOABS, TCOFR, TCOFRX,
TCOFRY, TCOFRZ)
Remarque
Lors du transfert de valeurs angulaires un cycle standard ou de mesure, il convient
d'arrondir zro toute valeur infrieure l'unit de calcul de la CN !
L'unit de calcul de la CN pour les positions angulaires est dfinie dans le paramtre
machine :
PM10210 $MN_INT_INCR_PER_DEG
Notions complmentaires
442 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.10 Correction de longueur d'outil en ligne (TOFFON, TOFFOF)
Fonction
La variable systme $AA_TOFF[<n> ] permet de corriger en temps rel et en trois
dimensions les longueurs d'outil effectives en fonction des trois directions de l'outil.
Les trois descripteurs d'axes gomtriques servent d'indices <n>. De cette faon, le nombre
des directions de correction actives est dtermin par les axes gomtriques qui sont actifs
au mme moment.
Toutes les corrections peuvent tre actives simultanment.
La fonction de correction des longueurs d'outil en ligne est applicable dans :
la transformation de l'orientation TRAORI
l'organe porte-outil orientable TCARR
Remarque
La correction en ligne de longueur d'outil est une option qui doit tre valide auparavant.
Cette fonction n'a de sens qu'en liaison avec la transformation active de l'orientation ou
avec un organe porte-outil orientable l'tat activ.
Syntaxe
TRAORI
TOFFON(<direction de correction>[,<valeur de
l'offset>])
WHEN TRUE DO $AA_TOFF[<sens de correction>] ; Dans des actions synchrones.
...
TOFFOF(<sens de correction>)
Signification
TOFFON : Activation de la correction en ligne de la longueur d'outil
<sens de correction> : Direction de l'outil (X, Y, Z) dans laquelle la correction en
ligne de la longueur d'outil doit prendre effet.
<valeur de l'offset> : Ds que la fonction est active, une valeur offset peut
tre indique pour la direction dans laquelle doit
s'effectuer la correction et cette valeur fait
immdiatement l'objet d'un mouvement de correction.
TOFFOF : Remise zro de la correction en ligne de la longueur d'outil
Les valeurs de correction dans le sens de correction spcifi sont remises zro
et un arrt du prtraitement des blocs est dclench.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 443
Corrections d'outils
7.10 Correction de longueur d'outil en ligne (TOFFON, TOFFOF)
Exemples
Exemple 1 : activation de la correction de longueur d'outil
Notions complmentaires
444 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.10 Correction de longueur d'outil en ligne (TOFFON, TOFFOF)
Informations complmentaires
Prparation des blocs
Lors de la prparation des blocs au cours de leur prtraitement, l'offset de longueur d'outil
qui agit dans l'excution de blocs est pris en considration. Afin de pouvoir exploiter au
mieux les vitesses d'axes maximales autorises, il est ncessaire d'arrter la prparation
des blocs avec un arrt du prtraitement des blocs STOPRE pendant la ralisation d'un offset
d'outil.
Cet offset d'outil est connu au moment du prtraitement des blocs si les corrections de
longueur d'outil n'ont pas t modifies aprs le lancement du programme ou - quand il y a
eu modification des corrections de longueur d'outil - si le nombre de blocs excuts est
suprieur au nombre de blocs que peut recevoir le tampon IPO entre le prtraitement des
blocs et leur excution.
Variable $AA_TOFF_PREP_DIFF
Le degr de diffrence entre la correction actuelllement effective dans l'interpolateur et la
correction effective au moment de la prparation des blocs peut tre interroge dans la
variable $AA_TOFF_PREP_DIFF[<n>].
Rglage des paramtres machine et des donnes de rglage
Les donnes systme suivantes sont disponibles pour la correction en ligne de la longueur
d'outil :
MD20610 $MC_ADD_MOVE_ACCEL_RESERVE (rserve d'acclration pour
dplacement forc)
MD21190 $MC_TOFF_MODE
Le contenu de la variable systme$AA_TOFF[<n>] fait l'objet d'un dplacement en absolu
ou d'une intgration force.
MD21194 $MC_TOFF_VELO (vitesse de la correction en ligne de la longueur d'outil)
MD21196 $MC_TOFF_ACCEL (acclration de la correction en ligne de la longueur
d'outil)
Donne de rglage pour la spcification de valeurs limites :
SD42970 $SC_TOFF_LIMIT (limite suprieure de la valeur de correction de la longueur
d'outil)
Bibliographie :
Description fonctionnelle Fonctions spciales ; F2 : transformations multi-axes
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 445
Corrections d'outils
7.11 Modification des donnes de tranchant des outils orientables (CUTMOD)
Fonction
La fonction "Modification des donnes de tranchant des outils orientables" permet de tenir
compte de la modification des conditions gomtriques, qui rsulte de la rotation des outils
(essentiellement les outils de tournage, mais aussi les outils de perage et de fraisage) par
rapport la pice usine, pour la correction d'outil.
%URFKHSRUWHRXWLO $[H%
%URFKHSULQFLSDOH
& & &RQWUHEURFKH
%
; &
<
=
=
La rotation courante de l'outil est toujours dtermine partir d'un organe porte-outil
orientable, actif l'instant (voir "Correction de longueur d'outil pour organes porte-outils
orientables (Page 439)").
L'instruction CUTMOD active cette fonction.
Syntaxe
CUTMOD=<valeur>
Notions complmentaires
446 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.11 Modification des donnes de tranchant des outils orientables (CUTMOD)
Signification
CUTMOD
Instruction d'activation de la fonction "Modification des donnes de tranchant
des outils orientables"
<Valeur>
Les valeurs suivantes peuvent tre affectes l'instruction CUTMOD :
0 La fonction est dsactive.
Les valeurs fournies par les variables systme $P_AD... sont gales
aux paramtres d'outil correspondants.
>0 La fonction est active si un organe porte-outil orientable portant le
numro indiqu est actif, ce qui signifie que l'activation est lie un
organe porte-outil orientable dfini.
Par rapport aux paramtres d'outil correspondants, les valeurs
fournies par les variables systme $P_AD... sont modifies le cas
chant en fonction de la rotation active.
La dsactivation de l'organe porte-outil orientable dsign dsactive la
fonction temporairement et l'activation d'un autre organe porte-outil
orientable la dsactive durablement. Dans le premier cas, la fonction
est donc de nouveau active si le mme organe porte-outil orientable
est ractiv. Dans le deuxime cas, il est ncessaire de l'activer
nouveau mme si l'organe porte-outil orientable portant le numro
indiqu est ractiv ultrieurement.
La fonction n'est pas influence par un reset.
-1 La fonction est toujours active lorsqu'un organe porte-outil orientable
est actif.
Lors d'un changement de l'organe porte-outil ou lorsque celui-ci est
dsactiv, puis ractiv ultrieurement, il n'est pas ncessaire de
ractiver CUTMOD.
-2 La fonction est toujours active lorsqu'un organe porte-outil orientable
dont le numro est identique l'organe porte-outil orientable actif
l'instant est actif.
Si aucun organe porte-outil orientable n'est actif, cela quivaut
CUTMOD=0. Si un organe porte-outil orientable est actif, cela quivaut
l'indication directe du numro de l'organe porte-outil courant.
< -2 Les valeurs infrieures -2 sont ignores, ce qui signifie que ce cas
est trait comme si CUTMOD n'tait pas programm.
Remarque :
L'utilisation de cette plage de valeurs est dconseille, car elle est
rserve pour d'ventuelles extensions ultrieures.
Remarque
SD42984 $SC_CUTDIRMOD
La fonction qui est activable avec l'instruction CUTMOD remplace la fonction qui est activable
au moyen de la donne de rglage SD42984 $SC_CUTDIRMOD. Cependant la disponibilit
de cette fonction reste inchange. L'utilisation parallle des deux fonctions tant cependant
dconseille, elle ne peut tre active que lorsque CUTMOD est gal zro.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 447
Corrections d'outils
7.11 Modification des donnes de tranchant des outils orientables (CUTMOD)
Exemple
L'exemple suivant se rapporte un outil avec la position de tranchant 3 et un organe porte-
outil orientable pouvant tourner l'outil autour de l'axe B.
Les valeurs numriques des commentaires indiquent les positions de fin de bloc en
coordonnes machine (SCM), dans l'ordre X, Y, Z.
N190 $TC_CARR13[2]=30
N200 TCARR=2
N210 X0 Y0 Z0 ; 10.892 0.000 -5.134
N220 G42 Z10 ; 8.696 0.000 17.330
N230 Z20 ; 8.696 0.000 21.330
N240 X10 ; 12.696 0.000 21.330
N250 G40 X20 Z0 ; 30.892 0.000 5.134
N310 M30
Notions complmentaires
448 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.11 Modification des donnes de tranchant des outils orientables (CUTMOD)
Explications
Dans le bloc N180, l'outil est d'abord activ avec CUTMOD=0 et organe porte-outil orientable non
pivot. Tous les vecteurs de dcalage de l'organe porte-outil tant 0, la position accoste
correspond aux longueurs d'outil indiques dans $TC_DP3[1,1] et $TC_DP4[1,1].
Dans le bloc N200, l'organe porte-outil orientable est activ avec une rotation de 30 autour
de l'axe B. La position du tranchant n'tant pas modifie compte tenu de CUTMOD=0, l'ancien
point de rfrence du tranchant reste dterminant. C'est pourquoi la position qui garde
l'ancien point de rfrence du tranchant l'origine (ce qui signifie que le vecteur (1, 12)
tourne de 30 dans le plan Z/X) est accoste dans le bloc N210.
Contrairement au bloc N200, CUTMOD=2 est actif dans le bloc N260. En raison de la rotation
de l'organe porte-outil orientable, la position modifie du tranchant est 8. Il en rsulte
galement des positions d'axe diffrentes.
Dans les blocs N220 et N270, la correction de rayon d'outil est active. La position du
tranchant, qui diffre dans les deux sections de programme, n'influence pas les positions
finales des blocs dans lesquels la correction de rayon d'outil est active. Les positions
correspondantes sont donc identiques. Ce n'est que dans les blocs de dsactivation N260 et
N300 que les diffrentes positions du tranchant ont de nouveau un effet.
Autres informations
Prise d'effet des donnes de tranchant modifies
La position modifie du tranchant et le point de rfrence modifi du tranchant prennent effet
immdiatement mme s'ils sont programms pour un outil dj actif. A cet effet, il n'est pas
ncessaire de ractiver l'outil.
Influence du plan de travail actif
Pour la dtermination de la position modifie du tranchant, du sens de coupe et de l'angle du
porte-outil ou de l'angle de dpouille, le tranchant doit tre considr dans le plan actif
correspondant (G17 - G19).
Si la donne de rglage SD42940 $SC_TOOL_LENGTH_CONST (modification des
composantes de longueur d'outil en cas de changement de plan) contient cependant une
valeur valide diffrente de zro (plus ou moins 17, 18 ou 19), son contenu dtermine le plan
dans lequel les grandeurs dterminantes sont considres.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 449
Corrections d'outils
7.11 Modification des donnes de tranchant des outils orientables (CUTMOD)
Variables systme
Les variables systme suivantes sont disponibles :
Notions complmentaires
450 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Corrections d'outils
7.11 Modification des donnes de tranchant des outils orientables (CUTMOD)
Remarque
Les donnes sont toujours modifies par rapport aux paramtres d'outil correspondants
($TC_DP2[..., ...] etc.) lorsque la fonction "Modification des donnes de tranchant des outils
orientables" a t active avec l'instruction CUTMOD et qu'un organe porte-outil orientable
entranant une rotation de l'outil est actif.
Bibliographie
Pour d'autres informations sur la fonction "Modification des donnes de tranchant des outils
orientables", voir :
Description fonctionnelle Fonctions de base, Correction d'outil (W1)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 451
Corrections d'outils
7.11 Modification des donnes de tranchant des outils orientables (CUTMOD)
Notions complmentaires
452 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement 8
8.1 Positionnement tangentiel (TANG, TANGON, TANGOF, TLIFT,
TANGDEL)
Fonction
L'axe asservi est, comme son nom l'indique, asservi selon la tangente la trajectoire
dtermine par les axes pilotes. Ainsi, un outil peut tre positionn paralllement au contour.
Via l'angle programm dans l'instruction TANGON, l'outil peut tre positionn de manire
relative par rapport la tangente.
<
Application
Le positionnement tangentiel peut par ex. tre utilis pour les applications suivantes :
positionnement tangentiel d'un outil indexable pour le grignotage
asservissement du positionnement de la pice dans le cas d'une scie ruban (voir figure
ci-aprs)
positionnement d'un outil de dressage par rapport une meule
positionnement d'une molette de coupe pour la transformation du verre ou du papier
amene tangentielle d'un fil pour le soudage cinq axes
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 453
Modes de dplacement
8.1 Positionnement tangentiel (TANG, TANGON, TANGOF, TLIFT, TANGDEL)
<
3LFH
5XEDQGHODVFLH
;
Syntaxe
Dfinition de l'asservissement tangentiel :
TANG (<AxeA>,<AxeP1>,<AxeP2>,<Facteur de couplage>,<SC>,<Opt>)
Activation du positionnement tangentiel :
TANGON(<AxeA>,<angle>,<Traj>,<Tolrance angulaire>)
Dsactivation du positionnement tangentiel :
TANGOF (<AxeA>)
Activation de la fonction ''Insertion d'un bloc intermdiaire aux angles du contour'' :
TLIFT(<AxeA>)
L'instruction TLIFT est spcifie aprs l'affection des axes avec TANG().
Dsactivation de la fonction ''Insertion d'un bloc intermdiaire aux angles du contour'' :
Rpter l'instruction TANG(...) sans la faire suivre d'une instruciton TLIFT(<AxeA>).
Suppression de la dfinition d'un asservissement tangentiel :
TANGDEL(<AxeA>)
Tout asservissement tangentiel dfini par l'utilisateur existant doit tre supprim lorsqu'un
nouvel asservissement tangentiel doit tre dfini avec le mme axe asservi dans l'appel de
prparation TANG. La suppression est uniquement possible si le couplage avec TANGOF
(<AxeA>) a t dsactiv.
Signification
Notions complmentaires
454 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.1 Positionnement tangentiel (TANG, TANGON, TANGOF, TLIFT, TANGDEL)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 455
Modes de dplacement
8.1 Positionnement tangentiel (TANG, TANGON, TANGOF, TLIFT, TANGDEL)
Exemples
Exemple 1 : dfinition et activation de l'asservissement tangentiel
Remarque
Programmation simplifie
TANG(C,X,Y,1,"B","P") peut tre programm de manire simplifie comme suit
TANG(C,X,Y,,,"P").
Notions complmentaires
456 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.1 Positionnement tangentiel (TANG, TANGON, TANGOF, TLIFT, TANGDEL)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 457
Modes de dplacement
8.1 Positionnement tangentiel (TANG, TANGON, TANGOF, TLIFT, TANGDEL)
Informations complmentaires
dfinition de l'axe asservi et des axes pilotes
La dfinition de l'axe asservi et des axes pilotes s'effectue avec TANG.
Un facteur de couplage indique le rapport entre les variations angulaires de la tangente et de
l'axe asservi. Sa valeur est en gnral 1 (prrglage).
angle de dcalage par limitation de la zone de travail
Quand les dplacements se font en va-et-vient, la tangente fait un saut de 180 au point
d'inversion de la trajectoire, l'axe asservi fait de mme. En rgle gnrale, ce comportement
n'a pas de sens : le dplacement en arrire doit s'effectuer avec le mme angle de dcalage
ngatif que le dplacement en avant :
<
D
D
D 0RXYHPHQWHQDUULUH
QRQVRXKDLW
;
<
0RXYHPHQWHQDUULUH
VRXKDLW
;
la zone de travail de l'axe asservi doit ce but tre limite (G25, G26). La limitation de la zone
de travail doit tre active au moment de l'inversion de la trajectoire (WALIMON). Ds que l'angle
de dcalage sort de la zone de travail limite, la commande tente de l'y faire revenir avec un
angle de dcalage ngatif.
Insertion d'un bloc intermdiaire aux angles du contour (TLIFT)
Quand on s'approche d'un angle de contour, la tangente au contour montre des variations
angulaires brusques qui se rpercutent sur la consigne de position de l'axe asservi. Celui-ci
essaie normalement de compenser ces brusques variations angulaires par une vitesse
maximale. Cependant, sur un certain trajet la suite de l'angle de contour en question, on
constate qu'il en rsulte un cart par rapport la position tangentielle dsire. Si cet cart
n'est pas tolrable pour des raisons techniques, on peut avec l'instruction TLIFT et par le
biais d'un bloc intermdiaire cr automatiquement, amener le positionnement tangentiel
s'arrter avant l'angle de contour et positionner l'axe asservi dans la nouvelle direction
tangentielle.
La rotation s'effectue avec l'axe d'interpolation programm lorsque l'axe asservi a t
dplac une fois comme axe d'interpolation. La fonction TFGREF[<Axe>] = 0.001 permet
d'atteindre dans ce cas une vitesse d'axe maximale de l'axe asservi.
Si l'axe asservi n'a pas t dplac jusqu'ici comme axe d'interpolation, cet axe est dplac
comme axe de positionnement. La vitesse dpend alors de la vitesse de positionnement qui
figure dans les paramtres machine.
Notions complmentaires
458 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.1 Positionnement tangentiel (TANG, TANGON, TANGOF, TLIFT, TANGDEL)
YF
3URILOGHYLWHVVHGHFRQVLJQHGH
O
D[H&DVVHUYL
3URILOGHYLWHVVHOLVV
WV
'LVW
Valeur Signification
0 Aucun couplage activ
1,2,3 Asservissement tangentiel actif
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 459
Modes de dplacement
8.2 Variation de l'avance (FNORM, FLIN, FCUB, FPO)
Fonction
En vue d'une introduction plus flexible de l'avance, la programmation de l'avance selon
DIN 66025 est tendue aux variations linaires et cubiques.
Les variations cubiques peuvent tre programmes directement ou sous la forme de splines
interpols. Par ce moyen, il est possible de programmer des variations continues et lisses,
dpendant de la courbure de la pice usiner.
Ces variations de la vitesse permettent des variations d'acclration sans -coup et, de ce
fait, la ralisation d'tats de surface plus rguliers.
Syntaxe
F FNORM
F FLIN
F FCUB
F=FPO(,,)
Signification
FNORM
Prrglage. La valeur de l'avance est dfinie sur la longueur de la
trajectoire du bloc et vaut alors comme valeur modale.
FLIN
Variation de l'avance tangentielle linaire :
La valeur de l'avance varie linairement de la valeur en dbut de bloc la
valeur en fin de bloc et vaut alors comme valeur modale. Ce
comportement peut tre combin avec G93 et G94.
FCUB
Variation de l'avance tangentielle cubique :
Les valeurs F programmes dans les blocs - rapportes au point final de
bloc - sont raccordes par un spline. Le spline dbute et se termine de
faon tangentielle aux valeurs d'avance programmes dans le bloc
prcdent, voire suivant, et agit avec G93 et G94.
Si l'adresse F manque dans un bloc, c'est la dernire valeur F
programme qui sera utilise.
F=FPO
Variation de l'avance tangentielle dfinie par un polynme :
l'adresse F dcrit la variation de l'avance selon un polynme, de la valeur
courante jusqu' la valeur en fin de bloc. La valeur finale vaut alors comme
valeur modale.
Optimisation de l'avance sur des sections de trajectoire courbes
Le polynme d'avance F=FPO et le spline d'avance FCUB doivent toujours tre excuts
vitesse de coupe constante CFC . De ce fait, une variation de consigne d'avance
acclration continue est gnre.
Notions complmentaires
460 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.2 Variation de l'avance (FNORM, FLIN, FCUB, FPO)
$YDQFH
7UDMHF
WRLUH
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 461
Modes de dplacement
8.2 Variation de l'avance (FNORM, FLIN, FCUB, FPO)
FNORM
L'adresse d'avance F dsigne l'avance tangentielle en tant que valeur constante selon DIN
66025.
Vous trouverez plus d'informations sur ce sujet dans "Manuel de programmation - Notions
de base".
$YDQFH
7UDMHFWRLUH
FLIN
L'avance varie de faon linaire jusqu' la fin du bloc, depuis la valeur d'avance courante
jusqu' la valeur F programme.
Exemple :
N30 F1400 FLIN X50
$YDQFH
7UDMHFWRLUH
Notions complmentaires
462 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.2 Variation de l'avance (FNORM, FLIN, FCUB, FPO)
FCUB
L'avance varie de faon cubique jusqu' la fin du bloc, depuis la valeur courante jusqu' la
valeur F programme. La commande relie toutes les valeurs programmes dans les blocs
avec un FCUB actif par des splines. Les valeurs d'avance servent dans ce cas de points
intermdiaires pour le calcul de l'interpolation spline.
Exemple :
N50 F1400 FCUB X50
N60 F2000 X47
N70 F3800 X52
$YDQFH
7UDMHFWRLUH
F=FPO(,,)
La variation de l'avance est directement programme par le biais d'un polynme.
L'introduction des coefficients du polynme est la mme que pour l'interpolation polynomiale.
Exemple :
F=FPO(endfeed, quadf, cubf)
endfeed, quadf et cubf sont des variables prcdemment dfinies.
Quand FCUB est active, le spline se raccorde tangentiellement en dbut et en fin de bloc
l'avance dfinie par le biais de FPO .
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 463
Modes de dplacement
8.2 Variation de l'avance (FNORM, FLIN, FCUB, FPO)
$YDQFH
7UDMHFWRLUH
Conditions marginales
Les fonctions programmes pour le mode de dplacement restent valables,
indpendamment de la variation de l'avance.
La variation programmable de l'avance est toujours valable de faon absolue,
indpendamment de G90 ou G91.
La variation de l'avance FLIN et FCUB agit avec
G93 et G94.
Notions complmentaires
464 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.3 Excution du programme avec une mmoire tampon (STOPFIFO, STARTFIFO, FIFOCTRL, STOPRE)
Fonction
Selon la configuration, la commande dispose d'une mmoire tampon d'une certaine
capacit, capable de stocker les blocs prtraits afin de pouvoir ensuite les transmettre un
rythme rapide lors du droulement de l'usinage. Ainsi, on peut effectuer des trajets courts
grande vitesse. La mmoire tampon est remplie au fur et mesure que le permet la
commande.
3URJUDPPH 7DPSRQ
&1 G
H[FXWLRQ
&\FOHGHIDEULFDWLRQ
VTXHQFHVUDSLGHVGHEORFV
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 465
Modes de dplacement
8.3 Excution du programme avec une mmoire tampon (STOPFIFO, STARTFIFO, FIFOCTRL, STOPRE)
Syntaxe
STOPFIFO
...
STARTFIFO
...
FIFOCTRL
...
...
STOPRE
...
Remarque
Les instructions STOPFIFO, STARTFIFO, FIFOCTRL et STOPRE doivent tre programmes dans un
bloc spcifique.
Signification
Notions complmentaires
466 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.3 Excution du programme avec une mmoire tampon (STOPFIFO, STARTFIFO, FIFOCTRL, STOPRE)
Remarque
Le remplissage de la mmoire tampon n'est ni effectu, ni interrompu lorsque la section
d'excution contient des instructions qui ncessitent un fonctionnement sans tampon
(accostage du point de rfrence, fonctions de mesure, ...).
Remarque
Lors de l'accs des donnes d'tat de la machine ($SA...), la commande dclenche un
arrt du prtraitement des blocs.
PRUDENCE
Lorsque la correction d'outil et active et dans le cas d'interpolations de type spline, il est
recommand de ne pas programmer STOPRE afin d'viter d'interrompre des squences de
blocs contigus.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 467
Modes de dplacement
8.4 Sections de programme interruptibles sous conditions (DELAYFSTON, DELAYFSTOF)
Fonction
Les sections de programme pice interruptibles sous conditions sont appeles plages d'arrt
temporis. Il ne doit pas y avoir d'arrt l'intrieur de certaines sections de programme et
l'avance ne doit pas tre modifie. En substance, les sections de programme courtes qui
servent par exemple l'usinage d'un filetage, doivent tre protges contre presque tous les
vnements d'arrt. Un arrt ventuel agit seulement aprs que le traitement de la section
de programme a t termin.
Syntaxe
DELAYFSTON
DELAYFSTOF
Les instructions se trouvent seules sur une ligne du programme pice.
Ces deux instructions ne sont autorises que dans les programmes pice et non pas dans
les actions synchrones.
Signification
DELAYFSTON
Dfinition du dbut d'une plage dans laquelle des arrts "en douceur"
sont temporiss jusqu' la fin de la plage d'arrt temporis.
DELAYFSTOF
Dfinition de la fin d'une plage d'arrt temporis
Remarque
Avec MD11550 $MN_STOP_MODE_MASK Bit 0 = 0 (par dfaut), une plage d'arrt
temporis est dfinie de manire implicite lorsque G331/G332 est actif et qu'un dplacement
avec interpolation ou G4 est programm.
Notions complmentaires
468 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.4 Sections de programme interruptibles sous conditions (DELAYFSTON, DELAYFSTOF)
immdiate (vnement d'arrt "brusque") Arrt immdiat mme dans la plage d'arrt
temporis
diffre (vnement d'arrt "en douceur") Arrt (mme de courte dure) seulement aprs
la plage d'arrt temporis.
Alarme 16954 Le programme est interrompu compte tenu que
des instructions de programme non autorises
ont t utilises dans la plage d'arrt temporis.
Alarme 16955 Le programme se poursuit, une action non
autorise s'est produite dans la plage d'arrt
temporis.
Alarme 16957 La plage de programme (plage d'arrt
temporis) dlimite par DELAYFSTON et
DELAYFSTOF n'a pas pu tre active. Ainsi,
chaque arrt dans cette plage agit
immdiatement et n'est pas temporis.
Pour un rcapitulatif des autres ractions aux vnements d'arrt, voir :
Bibliographie :
Description fonctionnelle Fonctions de base ; GMF, Canal, Mode de programme, (K1),
chapitre "Correction et rpercussion sur des vnements d'arrt"
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 469
Modes de dplacement
8.4 Sections de programme interruptibles sous conditions (DELAYFSTON, DELAYFSTOF)
$UUWGHOD&1 1*=
1*; 1*;=
1*=;.
1*=.
;
7RXFKHG
DUUW
7RXFKHG
DUUWSHQGDQWXQ
= XVLQDJH*
On peut voir sur la figure que l'utilisateur appuie sur "Arrt" dans la plage d'arrt temporis et
que la CN commence l'opration de freinage l'extrieur de la plage d'arrt temporis, c'est-
-dire dans le bloc N100. Ainsi, la CN s'arrte au dbut de N100 .
Notions complmentaires
470 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.4 Sections de programme interruptibles sous conditions (DELAYFSTON, DELAYFSTOF)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 471
Modes de dplacement
8.4 Sections de programme interruptibles sous conditions (DELAYFSTON, DELAYFSTOF)
Chevauchement / imbrication :
Si deux plages d'arrt temporis se chevauchent, l'une issue des instructions et l'autre issue
du paramtre machine PM 11550 : STOP_MODE_MASK, la plage d'arrt temporis la plus
grande possible est cre.
Les points suivants rgissent l'interaction des instructions DELAYFSTON et DELAYFSTOF avec
les imbrications et la fin de sous-programme :
1. la fin du sous-programme dans lequel DELAYFSTON a t appele, l'instruction
DELAYFSTOF est active de manire implicite.
Remarque
REPOSA est une fin de sous-programme et DELAYFSTON est dsactive dans tous les
cas.
S'il se produit un vnement d'arrt "brusque" dans la plage d'arrt temporis", cette
dernire est compltement dsactive ! Autrement dit, si un autre arrt quelconque se
produit dans cette section de programme, l'excution est immdiatement arrte. Seule
une nouvelle programmation (nouvelle instruction DELAYFSTON) permet de commencer une
nouvelle plage d'arrt temporis.
Si la touche Arrt est presse avant la plage d'arrt temporis et que la CN doit accoster
la plage d'arrt temporis pour le freinage, la CN s'arrte dans la plage d'arrt temporis
et cette dernire demeure dsactive!
En cas d'entre dans une plage d'arrt temporis avec correction gale 0 %, la plage
d'arrt temporis n'est pas accepte!
Cela vaut pour tous les vnements d'arrt "en douceur".
AvecSTOPALL , il est possible de freiner dans la plage d'arrt temporis. Toutefois, avec
STOPALL , tous les autres vnements d'arrt qui taient temporiss jusque l sont
immdiatement activs.
Variables systme
La prsence d'une plage d'arrt temporis peut tre dtermine l'aide de l'instruction
$P_DELAYFST dans le programme pice. Si le bit 0 de la variable systme est mis 1,
l'excution du programme pice se trouve ce moment-l dans une plage d'arrt temporis.
La prsence d'une plage d'arrt temporis peut tre dtermine l'aide de l'instruction
$AC_DELAYFST dans les actions synchrones. Si le bit 0 de la variable systme est mis 1,
l'excution du programme pice se trouve ce moment-l dans une plage d'arrt temporis.
Compatibilit
Le prrglage du paramtre machine PM 11550 : STOP_MODE_MASK bit 0 = 0 gnre une
plage d'arrt temporis implicite au cours du groupe de codes G331/G332 et lorsqu'un
dplacement avec interpolation ou G4 est programm.
Bit 0 = 1 permet l'arrt au cours du groupe de codes G331/G332 et si un dplacement avec
interpolation ou G4 est programm (comportement jusqu' la version 6 du logiciel). Les
instructions DELAYFSTON/DELAYFSTOF doivent tre utilises pour la dfinition d'une plage
d'arrt temporis.
Notions complmentaires
472 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.5 Interdire des positions de programme pour SERUPRO (IPTRLOCK, IPTRUNLOCK)
Fonction
Pour certaines situations mcaniques complexes, il est ncessaire d'interdire l'opration de
recherche de bloc SERUPRO sur la machine.
Avec un pointeur d'interruption programmable, il est possible via la "recherche de points
d'interruption", d'intervenir avant la position interdite la recherche.
Il est galement possible de dfinir des plages interdites la recherche dans les plages de
programme pice dans lesquelles le noyau CN ne peut pas redmarrer. Avec l'abandon de
programme, le noyau CN note le bloc trait en dernier sur lequel peut tre effectue la
recherche via l'interface utilisateur IHM.
Syntaxe
IPTRLOCK
IPTRUNLOCK
Les instructions se trouvent seules sur une ligne du programme pice et permettent
l'utilisation d'un pointeur d'interruption programmable
Signification
IPTRLOCK
Dbut de la section de programme interdite la recherche
IPTRUNLOCK
Fin de la section de programme interdite la recherche
Ces deux instructions ne sont autorises que dans les programmes pice et non pas dans
les actions synchrones.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 473
Modes de dplacement
8.5 Interdire des positions de programme pour SERUPRO (IPTRLOCK, IPTRUNLOCK)
Exemple
Imbrication de sections de programme interdites la recherche dans deux niveaux de
programmes avec l'instruction implicite IPTRUNLOCK. L'instruction implicite IPTRUNLOCK du
sous-programme 1 termine la plage interdite la recherche.
L'instruction IPTRLOCK gle le pointeur d'interruption sur un mode bloc par bloc excutable
(SBL1). Ce bloc est dsign dans ce qui suit par "bloc d'arrt". Si une interruption de
programme se produit aprs IPTRLOCK , la recherche est possible sur l'interface utilisateur
HMI aprs ce bloc d'arrt.
Notions complmentaires
474 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.5 Interdire des positions de programme pour SERUPRO (IPTRLOCK, IPTRUNLOCK)
Variable systme
La prsence d'une plage interdite la recherche peut tre dtermine l'aide de l'instruction
$P_IPTRLOCK dans le programme pice.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 475
Modes de dplacement
8.6 Raccostage du contour (REPOSA, REPOSL, REPOSQ, REPOSQA, REPOSH, REPOSHA, DISR, DISPR,
RMI, RMB, RME, RMN)
Fonction
Si vous stoppez le programme en cours d'usinage et si vous dgagez l'outil pour viter par
exemple un bris d'outil ou parce que vous voulez faire une mesure, vous pouvez
programmer le raccostage du contour un point de votre choix.
L'instruction REPOS a le mme effet qu'un retour de sous-programme (par exemple avec
M17). Les blocs suivants dans la routine d'interruption ne seront plus excuts.
5(326
Notions complmentaires
476 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.6 Raccostage du contour (REPOSA, REPOSL, REPOSQ, REPOSQA, REPOSH, REPOSHA, DISR, DISPR,
RMI, RMB, RME, RMN)
Syntaxe
REPOSA RMI DISPR=
REPOSA RMB
REPOSA RME
REPOSA RMN
REPOSL RMI DISPR=
REPOSL RMB
REPOSL RME
REPOSL RMN
REPOSQ RMI DISPR= DISR=
REPOSQ RMB DISR=
REPOSQ RME DISR=
REPOSQA DISR=
REPOSH RMI DISPR= DISR=
REPOSH RMB DISR=
REPOSH RME DISR=
REPOSHA DISR=
Signification
Trajet d'accostage
REPOSA
Accostage sur une droite avec tous les axes
REPOSL
accostage sur une droite
REPOSQ DISR=
Accostage sur un quart de cercle avec rayon DISR
REPOSQA DISR=
Accostage dans tous les axes sur un quart de cercle avec rayon
DISR
REPOSH DISR=
Accostage sur un demi-cercle avec diamtre DISR
REPOSHA DISR=
Accostage dans tous les axes sur un demi-cercle avec rayon
DISR
Point de raccostage
RMI
Accostage du point d'interruption
RMI DISPR=
Point d'entre une distance DISPR en mm/inch avant le point
d'interruption
RMB
Accostage du point de dbut de bloc
RME
Accostage du point de fin de bloc
RME DISPR=
Accostage du point de fin de bloc une distance DISPR avant
le point final
RMN
Accostage au point de contour suivant
A0 B0 C0
Axes dans lesquels le dplacement doit avoir lieu
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 477
Modes de dplacement
8.6 Raccostage du contour (REPOSA, REPOSL, REPOSQ, REPOSQA, REPOSH, REPOSHA, DISR, DISPR,
RMI, RMB, RME, RMN)
< 3RLQWG
LQWHUUXSWLRQ
'
,6
35
5(326/
3RLQWGH
UDFFRVWDJH
Notions complmentaires
478 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.6 Raccostage du contour (REPOSA, REPOSL, REPOSQ, REPOSQA, REPOSH, REPOSHA, DISR, DISPR,
RMI, RMB, RME, RMN)
< 3RLQWLQWHUP
GLDLUH
'
,6
5
5(3264
3RLQWGH
UDFFRVWDJH
3RLQWGHGSDUW
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 479
Modes de dplacement
8.6 Raccostage du contour (REPOSA, REPOSL, REPOSQ, REPOSQA, REPOSH, REPOSHA, DISR, DISPR,
RMI, RMB, RME, RMN)
3RLQWLQWHUPGLDLUH
<
5
,6
'
3RLQWGHGSDUW
3RLQWGH
UDFFRVWDJH
Notions complmentaires
480 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.6 Raccostage du contour (REPOSA, REPOSL, REPOSQ, REPOSQA, REPOSH, REPOSHA, DISR, DISPR,
RMI, RMB, RME, RMN)
<
3RLQWGHILQGXEORF
50( 3RLQWG
LQWHUUXSWLRQ
3RLQWGHGEXWGX
50, EORF
50%
Avec RMI DISPR=...ou RME DISPR=..., vous pouvez dfinir un point de raccostage se
trouvant avant le point d'interruption ou le point de fin de bloc.
Avec DISPR=..., vous programmez, en mm/inch, la distance sur le contour entre le point de
raccostage et le point d'interruption ou le point de fin de bloc. Ce point ne peut pas figurer
au-del du point de dbut de bloc mme pour les plus grandes valeurs.
Si DISPR=... n'est pas programm, DISPR=0 s'applique, c'est--dire que le raccostage a lieu
au point d'interruption (pour RMI) ou au point de fin de bloc (pourRME).
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 481
Modes de dplacement
8.6 Raccostage du contour (REPOSA, REPOSL, REPOSQ, REPOSQA, REPOSH, REPOSHA, DISR, DISPR,
RMI, RMB, RME, RMN)
Signe de DISPR
Le signe de DISPR est exploit. Si le signe est positif, le comportement est le mme que
prcdemment.
Si le signe est ngatif, le raccostage a lieu derrire le point d'interruption ou, pour RMB,
derrire le point de dpart.
La distance point d'interruption-point de raccostage est la valeur absolue de DISPR. Ce
point ne peut pas se trouver au-del du point de fin de bloc, mme pour les plus grandes
valeurs absolues.
Exemple d'application :
Un capteur surveille les abords d'une griffe de serrage. En cas de violation, un ASUP, qui
assure le contournement de la griffe de serrage, est dclench.
Ensuite, un repositionnement un point situ derrire la griffe de serrage avec DISPR ngatif
a lieu et le programme se poursuit.
< 3RLQWGHILQGXEORF
3RVLWLRQUHOOHSRXUUHFKHUFKH
GHEORF
3RVLWLRQDWWHLQWH
O
DLGHGHVWRXFKHV-2*
50(
$FFRVWDJH6(58352
501 3RLQWGHGEXWGX
EORF
50, 50%
Remarque
SERUPRO
Pour SERUPRO , RMI et RMB sont identiques. RMN n'est pas seulement limit SERUPRO , il est
valide de manire gnrale.
Notions complmentaires
482 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.6 Raccostage du contour (REPOSA, REPOSL, REPOSQ, REPOSQA, REPOSH, REPOSHA, DISR, DISPR,
RMI, RMB, RME, RMN)
< 3RLQWGHILQGXEORF
50(
5DFFRVWDJH
$VXS
501 3RLQWGHGEXWGX
50, EORF
50%
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 483
Modes de dplacement
8.6 Raccostage du contour (REPOSA, REPOSL, REPOSQ, REPOSQA, REPOSH, REPOSHA, DISR, DISPR,
RMI, RMB, RME, RMN)
<
Notions complmentaires
484 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.6 Raccostage du contour (REPOSA, REPOSL, REPOSQ, REPOSQA, REPOSH, REPOSHA, DISR, DISPR,
RMI, RMB, RME, RMN)
Accostage du contour
Le dplacement effectuer pour raccoster le contour est programmable. Indiquez zro
pour les adresses des axes dplacer.
Avec les instructions REPOSA, REPOSQA et REPOSHA , tous les axes sont repositionns
automatiquement. Il n'est pas ncessaire de prciser les axes.
Quand on programme REPOSL, REPOSQ et REPOSH , tous les axes gomtriques se dplacent
automatiquement, autrement dit sans qu'il soit ncessaire de le prciser dans l'instruction.
Tous les autres axes repositionner sont prciser dans l'instruction.
Les points suivants s'appliquent pour les mouvements circulaires REPOSH et REPOSQ :
Le mouvement circulaire est dcrit dans le plan de travail G17 G19 indiqu.
Si vous indiquez le troisime axe gomtrique (pntration) dans le bloc d'accostage et si la
position de l'outil et la position programme dans la direction de pntration ne concordent
pas, le raccostage du contour se fera suivant un mouvement hlicodal.
Dans les cas suivants, il y a commutation automatique sur
accostage linaire REPOSL :
Vous n'avez indiqu aucune valeur pour DISR .
Il n'existe aucun sens d'accostage dfini (interruption de l'excution du programme dans
un bloc ne contenant aucune information de dplacement).
Le sens d'accostage est perpendiculaire au plan de travail courant.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 485
Modes de dplacement
8.7 Correction du pilotage des dplacements
Fonction
L'instruction CN JERKLIM permet de rduire ou d'augmenter l'-coup maximal possible
paramtr par un paramtre machine lors de dplacements avec interpolation dans des
sections critiques d'un programme.
Condition
Il est ncessaire que le mode d'acclration SOFT soit activ.
Prise d'effet
La fonction prend effet :
dans les modes de fonctionnement AUTOMATIQUE,
uniquement sur des axes interpolation.
Syntaxe
JERKLIM[<axe>]=<valeur>
Signification
JERKLIM : Instruction de correction d'-coup
<Axe> : Axe machine dont la valeur limite d'-coup doit tre adapte.
<Valeur> : Valeur de correction en pourcentage, en rapport l'-coup maximal
configur de l'axe lors d'un dplacement avec interpolation
(MD32431 $MA_MAX_AX_JERK).
Plage de 1 ... 200
valeurs :
La valeur 100 n'entrane aucune correction de l'-coup.
Remarque
Le comportement de JERKLIM la fin du programme pice ou lors d'un Reset de canal est
configur avec le bit 0 dans le paramtre machine
MD32320 $MA_DYN_LIMIT_RESET_MASK :
Bit 0 = 0 :
La valeur programme pour JERKLIM est remise 100 % avec un Reset de canal/M30.
Bit 0 = 1 :
La valeur programme pour JERKLIM reste inchange mme aprs un Reset de
canal/M30.
Notions complmentaires
486 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.7 Correction du pilotage des dplacements
Exemple
Fonction
L'instruction CN VELOLIM permet de rduire la vitesse maximale possible paramtre par un
paramtre machine pour un axe/une broche en mode axe ou la vitesse de rotation maximale
possible d'une broche dpendant du rapport de transmission en mode broche (mode de
rgulation de vitesse de rotation M3, M4, M5 et mode de positionnement SPOS, SPOSA,
M19) dans des sections critiques d'un programme, par ex. pour rduire les sollicitations de la
machine ou pour amliorer la qualit d'usinage.
Prise d'effet
La fonction prend effet :
dans les modes de fonctionnement AUTOMATIQUE,
sur des axes interpolation et de positionnement,
sur des broches en mode broche / mode axe.
Syntaxe
VELOLIM[<Axe/Broche>]=<Valeur>
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 487
Modes de dplacement
8.7 Correction du pilotage des dplacements
Signification
Remarque
Comportement la fin du programme pice et lors d'un Reset de canal
Le comportement de VELOLIM la fin du programme pice ou lors d'un Reset de canal est
configur avec le bit 0 dans le paramtre machine
MD32320 $MA_DYN_LIMIT_RESET_MASK :
Bit 0 = 0 :
La valeur programme pour VELOLIM est remise 100 % avec un Reset de canal/M30.
Bit 0 = 1 :
La valeur programme pour VELOLIM reste inchange mme aprs un Reset de
canal/M30.
Notions complmentaires
488 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.7 Correction du pilotage des dplacements
Remarque
VELOLIM pour broches dans des actions synchrones
Aucune distinction n'est faite entre le mode broche et le mode axe lors de la programmation
de VELOLIM dans des actions synchrones. La vitesse de rotation en mode broche et la vitesse
en mode axe sont limites de manire identique, indpendamment du descripteur utilis lors
de la programmation.
Diagnostic
Diagnostic de VELOLIM en mode broche
Une limitation de la vitesse de rotation active par VELOLIM (infrieur 100 %) peut tre
dtecte en mode broche par la lecture des variables systme $AC_SMAXVELO et
$AC_SMAXVELO_INFO.
Dans le cas d'une limitation, $AC_SMAXVELO fournit la limite de vitesse de rotation gnre
par VELOLIM. Dans ce cas, la variable $AC_SMAXVELO_INFO fournit en retour la valeur "16"
comme identification pour la cause de la limitation VELOLIM.
Exemples
Exemple 1 : limitation de vitesse d'un axe machine
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 489
Modes de dplacement
8.7 Correction du pilotage des dplacements
Notions complmentaires
490 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.8 Tolrance de contour/orientation programmable (CTOL, OTOL, ATOL)
Fonction
Les instructions CTOL, OTOL et ATOL permettent d'adapter les tolrance d'usinage dfinies par
les paramtres machine et les donnes de rglage pour les fonctions de compresseur
(COMPON, COMPCURV, COMPCAD), les modes d'arrondissement G642, G643, G645,
OST et le lissage de l'orientation ORISON dans le programme CN.
Les valeurs programmes s'appliquent jusqu' ce qu'elles soient reprogrammes ou
supprimes par l'affectation d'une valeur ngative. Elles sont en outre supprimes la fin du
programme, lors d'un RESET du canal, RESET GMF, RESET NCK (dmarrage chaud) et
Power On (dmarrage froid). Aprs leur suppression, les valeurs dfinies dans les
paramtres machine et donnes de rglage s'appliquent nouveau.
Syntaxe
CTOL=<valeur>
OTOL=<valeur>
ATOL[<axe>]=<valeur>
Signification
CTOL
Instruction de programmation de la tolrance de contour
CTOLs'applique :
toutes les fonctions de compresseur
tous les modes d'arrondissement, l'exception de G641 et G644
<valeur> : La valeur de la tolrance de contour est exprime par une cote.
Type : REAL
Unit : pouce/mm (en fonction de la cotation actuellement
rgle)
OTOL
Instruction de programmation de la tolrance d'orientation
OTOLs'applique :
toutes les fonctions de compresseur
au lissage de l'orientation ORISON
tous les modes d'arrondissement, l'exception de G641, G644, OSD
<valeur> : La valeur de la tolrance d'orientation est exprime par une cote
angulaire.
Type : REAL
Unit : degr
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 491
Modes de dplacement
8.8 Tolrance de contour/orientation programmable (CTOL, OTOL, ATOL)
ATOL
Instruction de programmation d'une tolrance spcifique l'axe
ATOLs'applique :
toutes les fonctions de compresseur
au lissage de l'orientation ORISON
tous les modes d'arrondissement, l'exception de G641, G644, OSD
<axe> : Nom de l'axe pour lequel il s'agit de programmer une tolrance
<valeur> : Selon le type d'axe (linaire ou rotatif), la valeur de la tolrance de
l'axe est exprime par une cote ou une cote angulaire.
Type : REAL
Unit : pour axes pouce/mm (en fonction de la
linaires : cotation actuellement rgle)
pour axes rotatifs : degr
Remarque
CTOL et OTOL sont prioritaires par rapport ATOL.
Conditions marginales
Frames mis l'chelle
Les frames mis l'chelle agissent sur la tolrance programme de la mme manire que
sur les positions des axes, c'est--dire que la tolrance relative reste identique.
Exemple
Notions complmentaires
492 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.8 Tolrance de contour/orientation programmable (CTOL, OTOL, ATOL)
Informations complmentaires
Lecture des valeurs de tolrance
Pour des applications plus approfondies ou pour le diagnostic, la lecture des tolrance
actuellement en vigueur pour les fonctions de compresseur (COMPON, COMPCURV,
COMPCAD), les modes d'arrondissement G642, G643, G645, OST et le lissage de
l'orientation ORISON peut tre ralise au moyen de variables systme, quel que soit la
faon dont ces tolrances ont t obtenues.
Dans les actions synchrones ou avec arrt d'avance dans le programme pice, au moyen
des variables systme :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 493
Modes de dplacement
8.8 Tolrance de contour/orientation programmable (CTOL, OTOL, ATOL)
Remarque
Si aucune valeur de tolrance n'a t programme, les variables $A ne sont pas
suffisamment diffrencies pour permettre une distinction entre les tolrances
ventuellement diffrentes de chacune des fonctions, puisqu'elles ne peuvent fournir qu'une
seule valeur.
De tels cas sont susceptibles de se produire lorsque les paramtres machine et les donnes
de rglage dfinissent des tolrances diffrentes pour les fonctions de compresseur,
l'arrondissement et le lissage de l'orientation. Les variables fournissent alors la valeur la plus
grande des fonctions en cours.
Si une fonction de compresseur est p. ex. active avec une tolrance d'orientation gale
0,1 et un lissage de l'orientation ORISON gal 1, la variable $AC_OTOL fournit la valeur
"1". Si l'on dsactive le lissage de l'orientation, on ne lit plus que la valeur "0.1".
Sans arrt d'avance dans le programme pice, au moyen des variables systme :
Remarque
Si aucune valeur de tolrance n'est programme, les variables $P fournissent la valeur "-1".
Notions complmentaires
494 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Modes de dplacement
8.9 Tolrance pour dplacements G0 (STOLF)
Facteur de tolrance G0
Contrairement l'usinage de pices, les dplacements G0 (vitesse rapide, mouvements
d'approche) peuvent tre effectus avec une plus grande tolrance. Ceci a pour avantage
que les temps de retrait pour des dplacements G0 sont rduits.
Les tolrances pour les dplacements G0 sont rgls par la configuration du facteur de
tolrance G0 (MD20560 $MC_G0_TOLERANCE_FACTOR).
Le facteur de tolrance G0 prend uniquement effet si :
une des fonctions suivantes est active :
Fonctions compresseur : COMPON, COMPCURV et COMPCAD
Fonctions d'arrondissement : G642 et G645
Arrondissement d'orientation : OST
Lissage d'orientation : ORISON
Lissage pour orientation relative la trajectoire : ORIPATH
plusieurs blocs G0 ( 2) se suivent.
Le facteur de tolrance G0 ne prend pas effet pour un bloc G0 individuel tant donn
que, lors de la transition d'un dplacement non G0 un dplacement G0 (et vice-versa),
c'est toujours la ''plus petite tolrance'' (tolrance d'usinage) qui prend effet !
Fonction
La programmation de STOLF dans le programme pice permet d'craser temporairement le
facteur de tolrance G0 configur (MD20560). La valeur dans MD20560 n'tant alors pas
modifie. Le facteur de tolrance configur prend de nouveau effet aprs un Reset ou la
fin du programme pice.
Syntaxe
STOLF=<Facteur de tolrance>
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 495
Modes de dplacement
8.9 Tolrance pour dplacements G0 (STOLF)
Variables systme
Le facteur de tolrance G0 effectif dans le programme pice ou dans le bloc IPO peut tre lu
par le biais des variables systme.
Dans les actions synchrones ou avec un du prtraitement des blocs dans le programme
pice, au moyen de la variable systme :
Sans arrt du prtraitement des blocs dans le programme pice, au moyen de la variable
systme :
Si aucune valeur n'est programme avec STOLF dans le programme pice actif, ces deux
variables systme fournissent la valeur rgle par MD20560
$MC_G0_TOLERANCE_FACTOR.
Si aucune vitesse rapide (G0) n'est active dans un bloc, ces variables systme fournissent
toujours la valeur 1.
Exemple
Notions complmentaires
496 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes 9
9.1 Dplacements conjugus (TRAILON, TRAILOF)
Fonction
Lors du dplacement d'un axe pilote dfini, les axes conjugus qui lui sont affects (= axes
asservis) dcrivent les courses qui dcoulent de ce dplacement, compte tenu d'un facteur
de couplage.
L'axe pilote et les axes asservis constituent un groupe d'axes dplacements conjugus.
Domaines d'application
Dplacement d'un axe par le biais d'un autre axe simul. L'axe pilote est un axe simul et
l'axe conjugu un axe rel. Ainsi, l'axe rel peut tre dplac en tenant compte du facteur
de couplage.
Usinage bilatral avec 2 groupe d'axes dplacements conjugus :
1. Axe pilote Y, axe conjugu V
2. Axe pilote Z, axe conjugu W
$[H
< $[H
$[H 9
=
$[H
:
$[H
;
Syntaxe
TRAILON(<axe asservi>,<axe pilote>,<facteur de couplage>)
TRAILOF(<axe asservi>,<axe pilote>,<axe pilote 2>)
TRAILOF(<axe asservi>)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 497
couplages d'axes
9.1 Dplacements conjugus (TRAILON, TRAILOF)
Signification
TRAILON
Instruction pour l'activation et la dfinition d'un groupe d'axes
dplacements conjugus
Prise d'effet : modale
<axe asservi>
Paramtre 1 : Dsignation de l'axe conjugu (asservi)
Nota :
un axe conjugu peut galement tre l'axe pilote d'autres axes
conjugus. Ceci permet de raliser des groupes d'axes
dplacements conjugus interdpendants.
<axe pilote>
Paramtre 2 : Dsignation de l'axe pilote
<facteur de couplage>
Paramtre 3 : facteur de couplage
Le facteur de couplage indique le rapport souhait entre la course
de l'axe conjugu et celle de l'axe pilote :
<facteur de couplage> = course de l'axe conjugu/course de l'axe
pilote
Type : REAL
Paramtrage 1
par dfaut :
En entrant une valeur ngative, les dplacements de l'axe pilote
et de l'axe conjugu s'effectuent en sens oppos.
Si le facteur de couplage n'est pas indiqu lors de la
programmation, le facteur de couplage 1 est pris en compte
automatiquement.
TRAILOF
Instruction de dsactivation d'un groupe d'axes dplacements
conjugus
Prise d'effet : modale
TRAILOF avec 2 paramtres dsactive uniquement le couplage
l'axe pilote indiqu :
TRAILOF(<axe asservi>,<axe pilote>)
Si un axe conjugu possde 2 axes pilotes, TRAILOF peut tre
appel avec 3 paramtres pour dsactiver les deux couplages :
TRAILOF(<axe asservi>,<axe pilote>,<axe pilote 2>)
La programmation de TRAILOF sans indication d'axe pilote fournit
le mme rsultat :
TRAILOF(<axe asservi>)
Remarque
Les dplacements conjugus s'effectuent toujours dans le systme de coordonnes de base
(SCB).
Le nombre de groupes d'axes dplacements conjugus que vous pouvez activer
simultanment dpend uniquement des combinaisons d'axes possibles sur la machine.
Notions complmentaires
498 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.1 Dplacements conjugus (TRAILON, TRAILOF)
Exemple
La pice doit tre usine simultanment sur deux faces avec la configuration d'axes
reprsente ci-contre. Pour ce faire, former deux groupes d'axes dplacements conjugus.
$[H
< $[H
$[H 9
=
$[H
:
$[H
;
Informations complmentaires
Types d'axes
Un groupe d'axes dplacements conjugus peut combiner volont axes linaires et axes
rotatifs. Un axe simul peut aussi tre dfini comme axe pilote.
Axes conjugus
A un axe conjugu, vous pouvez affecter deux axes pilotes la fois. L'affectation s'effectue
dans des groupes d'axes dplacements conjugus diffrents.
Un axe conjugu peut tre programm avec toutes les instructions de dplacement
disponibles (G0, G1, G2, G3, ). En plus des dplacements dfinis indpendamment, l'axe
conjugu dcrit les courses dduites de ses axes pilotes avec les facteurs de couplage.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 499
couplages d'axes
9.1 Dplacements conjugus (TRAILON, TRAILOF)
Limitation dynamique
La limitation dynamique dpend du mode d'activation du groupe d'axes dplacements
conjugus :
Activation dans le programme pice
Lorsque l'activation s'effectue dans le programme pice et que tous les axes pilotes sont
des axes du programme dans le canal d'activation, la dynamique de chaque axe
conjugu est prise en compte lors du dplacement des axes pilotes, de sorte ce
qu'aucun axe conjugu ne soit surcharg.
Lorsque l'activation s'effectue dans le programme pice avec des axes pilotes qui ne sont
pas des axes de programme dans le canal d'activation ($AA_TYP 1), la dynamique de
l'axe conjugu n'est pas prise en compte lors du dplacement des axes pilotes. Dans le
cas d'axes conjugus, dont la dynamique est infrieure celle requise pour le couplage,
il peut ainsi en rsulter une surcharge.
Activation dans une action synchrone
Lorsque l'activation s'effectue dans une action synchrone, la dynamique des axes
conjugus n'est pas prise en compte lors du dplacement des axes pilotes. Dans le cas
d'axes conjugus, dont la dynamique est infrieure celle requise pour le couplage, il
peut ainsi en rsulter une surcharge.
PRUDENCE
Lorsqu'un groupe d'axes dplacements conjugus est activ dans
des actions synchrones,
le programme pice avec des axes pilotes qui ne sont pas des axes de programme
dans le canal de l'axe conjugu,
il relve de la responsabilit expresse de l'utilisateur/du constructeur de la machine de
prvoir des mesures adaptes, afin que les dplacements de l'axe pilote n'entranent
pas de surcharge des axes conjugus.
Etat du couplage
L'interrogation de l'tat du couplage d'un axe peut tre ralise dans le programme pice au
moyen de la variable systme :
$AA_COUP_ACT[<axe>]
Valeur Signification
0 aucun couplage activ
8 dplacements conjugus actifs
Notions complmentaires
500 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.2 Tables de courbes (CTAB)
Fonction
Les tables de courbes permettent de programmer des rapports de position et de vitesse
entre deux axes (axe pilote et axe asservi). La dfinition d'une table de courbes s'effectue
dans le programme pice.
Application
Les tables de courbes remplacent des cames mcaniques. la table de courbes est la base
du couplage de deux axes par valeur pilote, puisqu'elle cre le lien fonctionnel entre valeur
pilote et valeur asservie : A partir des positions en corrlation rciproque de l'axe asservi et
de l'axe pilote, la commande calcule conformment la programmation, un polynme
quivalent la came qu'il est appel remplacer.
<
[\
DDD[
DD[
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 501
couplages d'axes
9.2 Tables de courbes (CTAB)
Fonction
Une table de courbes reprsente un programme pice ou une partie d'un programme pice
qui est identifi(e) par l'instruction CTABDEF en dbut et l'instruction CTABEND en fin de
programme.
Dans cette section du programme pice, on met en correspondance, par le biais
d'instructions de dplacement, des positions isoles de l'axe pilote avec des positions
univoques de l'axe asservi ; ces positions servent de points intermdiaires pour le calcul
d'une courbe sous forme d'un polynme du 5me degr au maximum.
9DOHXUDVVHUYLH
SRLQWVLQWHUPGLDLUHV
&RXUEH
9DOHXUSLORWH
3ODJHGHGILQLWLRQ
9DOHXULQLWLDOH 9DOHXUGHILQ
Condition
La dfinition de tables de courbes requiert la rservation d'un espace mmoire au moyen
d'une configuration correspondante des paramtres machine ( constructeur de la
machine !).
Syntaxe
CTABDEF(<axe asservi>,<axe pilote>,<n>,<priodicit>[,<lieu
d'enregistrement>])
...
CTABEND
Notions complmentaires
502 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.2 Tables de courbes (CTAB)
Signification
CTABDEF ( )
Dbut de la dfinition de tables de courbes
CTABEND
Fin de la dfinition de tables de courbes
<axe asservi>
Axe dont il s'agit de calculer le dplacement au moyen de la table de
courbes
<axe pilote>
Axe fournissant les valeurs pilotes pour le calcul du dplacement de
l'axe asservi
<n>
Numro (ID) de la table de courbes
Le numro d'une table de courbes est univoque et indpendant du
lieu d'enregistrement. Des tables portant le mme numro ne
peuvent pas se trouver la fois dans la mmoire statique et dans la
mmoire dynamique de la CN.
<priodicit>
Priodicit de la table
0
la table n'est pas priodique (elle n'est traite qu'une seule
fois, mme dans le cas d'axes rotatifs)
1
la table est priodique par rapport l'axe pilote
2
la table est priodique par rapport l'axe pilote et l'axe asservi
<lieu
d'enregistrement> Indication du lieu d'enregistrement (facultative)
"SRAM"
La table de courbes est cre dans la mmoire statique
de la CN.
"DRAM"
La table de courbes est cre dans la mmoire
dynamique de la CN.
Nota :
si aucune valeur n'est programme pour ce paramtre, le lieu
d'enregistrement par dfaut paramtr avec
MD20905 $MC_CTAB_DEFAULT_MEMORY_TYPE est utilis.
Remarque
Ecraser
Une table de courbes est crase lorsque son numro (<n>) est utilis pour la nouvelle
dfinition d'une table de courbes (exception : la table de courbes est active dans un
couplage d'axes ou bloque avec CTABLOCK). L'crasement n'est pas accompagn d'un
avertissement correspondant !
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 503
couplages d'axes
9.2 Tables de courbes (CTAB)
Exemples
Exemple 1 : section de programme comme dfinition d'une table de courbes
Une partie d'un programme doit servir, sans tre modifie, la dfinition d'une table de
courbes. L'instruction d'arrt du prtraitement des blocs STOPRE qui y figure peut y tre
conserve et sera ractive aussitt que cette section de programme ne sera plus utilise
pour la dfinition d'une table de courbes, c'est--dire, ds que CTABDEF et CTABEND auront t
supprims.
<
;
Notions complmentaires
504 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.2 Tables de courbes (CTAB)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 505
couplages d'axes
9.2 Tables de courbes (CTAB)
Informations complmentaires
Valeur de dpart et valeur de fin de la table de courbes
Le couple de positions axiales corrles que l'on indique en premier (il s'agit de la premire
instruction de dplacement) dans la dfinition de la table de courbes est considr comme
valeur de dpart de la plage de dfinition de la table de courbes. La valeur finale de la plage
de dfinition de la table de courbes est constitue par la dernire instruction de
dplacement.
Langage disponible
Pour dfinir la table de courbes, vous disposez du langage CN dans son intgralit.
Remarque
Les indications suivantes ne sont pas autorises dans les dfinitions de tables de courbes :
l'arrt du prtraitement des blocs,
les variations brusques dans le dplacement de l'axe pilote (en cas de changement de
transformation par exemple),
une instruction de dplacement seule pour l'axe asservi,
une inversion du dplacement de l'axe pilote, autrement dit la position de l'axe pilote ne
doit jamais tre ambigu,
les instructions CTABDEF et CTABEND dans des niveaux de programme diffrents.
Notions complmentaires
506 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.2 Tables de courbes (CTAB)
Code de programme
...
CTABDEF(Y,X,1,0)
X0 Y0
ASPLINE
X=5 Y=10
X10 Y40
...
CTABEND
Remarque
L'crasement d'une table de courbes n'est pas accompagn d'un avertissement particulier !
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 507
couplages d'axes
9.2 Tables de courbes (CTAB)
Fonction
L'instruction CTABEXISTS permet de vrifier la prsence d'un numro donn de table de
courbes dans la mmoire de la CN.
Syntaxe
CTABEXISTS(<n>)
Signification
CTABEXISTS
Vrification de la prsence de la table de courbes de numro <n> dans la
mmoire statique ou dynamique de la CN
0 La table n'existe pas.
1 La table existe
<n>
Numro (ID) de la table de courbes
Fonction
CTABDEL permet de supprimer des tables de courbes.
Remarque
Vous ne pouvez pas effacer des tables de courbes quand elles sont actives dans un
couplage d'axes.
Notions complmentaires
508 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.2 Tables de courbes (CTAB)
Syntaxe
CTABDEL(<n>)
CTABDEL(<n>,<m>)
CTABDEL(<n>,<m>,<lieu d'enregistrement>)
CTABDEL()
CTABDEL(,,<lieu d'enregistrement>)
Signification
CTABDEL
Instruction de suppression de tables de courbes
<n>
Numro (ID) de la table de courbes supprimer
Lors de la suppression d'une plage de tables de courbes
CTABDEL(<n>,<m>), <n> indique le numro de la premire table de
courbes de la plage.
<m>
Lors de la suppression d'une plage de tables de courbes
CTABDEL(<n>,<m>), <m> indique le numro de la dernire table de
courbes de la plage.
<m> doit tre suprieur <n> !
<lieu
d'enregistrement> Indication du lieu d'enregistrement (facultative)
Lors d'une suppression sans indication de lieu d'enregistrement, les
tables de courbes indiques sont supprimes dans les mmoires
statique et dynamique de la CN.
Lors d'une suppression avec indication de lieu d'enregistrement,
seules les tables de courbes indiques se trouvant dans la mmoire
spcifie sont supprimes. Les autres tables de courbes sont
conserves.
"SRAM"
Suppression dans la mmoire statique de la CN
"DRAM"
Suppression dans la mmoire dynamique de la CN
Si CTABDEL est programm sans indication de la table de courbes supprimer, toutes les
tables de courbes ou toutes celles qui se trouvent dans la mmoire spcifie sont
supprimes :
CTABDEL()
Supprime toutes les tables de courbes dans les mmoires
statique et dynamique de la CN
CTABDEL(,,"SRAM")
Supprime toutes les tables de courbes dans la mmoire
statique de la CN
CTABDEL(,,"DRAM")
Supprime toutes les tables de courbes dans la mmoire
dynamique de la CN
Remarque
Si, en cas de suppression multiple CTABDEL(<n>,<m>) ou CTABDEL(), l'une au moins des tables
de courbes supprimer est active dans un couplage, l'instruction de suppression n'est pas
excute, autrement dit aucune des tables de courbes adresses n'est supprime.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 509
couplages d'axes
9.2 Tables de courbes (CTAB)
Fonction
Les tables de courbes peuvent tre protges contre la suppression et l'crasement par
inadvertance au moyen d'un verrouillage. Ce dernier peut tout moment de nouveau tre
annul.
Syntaxe
Verrouillage :
CTABLOCK(<n>)
CTABLOCK(<n>,<m>)
CTABLOCK(<n>,<m>,<lieu d'enregistrement>)
CTABLOCK()
CTABLOCK(,,<lieu d'enregistrement>)
Annulation du verrouillage :
CTABUNLOCK(<n>)
CTABUNLOCK(<n>,<m>)
CTABUNLOCK(<n>,<m>,<lieu d'enregistrement>)
CTABUNLOCK()
CTABUNLOCK(,,<lieu d'enregistrement>)
Signification
CTABLOCK
Instruction de verrouillage contre la suppression/l'crasement
CTABUNLOCK
Instruction d'annulation du verrouillage contre la
suppression/l'crasement
CTABUNLOCK libre les tables de courbes verrouilles avec CTABLOCK. Les
tables de courbe qui agissent dans un couplage actif restent
verrouilles et ne peuvent pas tre supprimes. Le verrouillage avec
CTABLOCK est annul aussitt que le couplage actif est dsactiv. Cette
table peut donc tre efface. Un nouvel appel de CTABUNLOCK n'est pas
ncessaire.
<n>
Numro (ID) de la table de courbes verrouiller/dverrouiller
Lors du verrouillage/dverrouillage d'une plage de tables de courbes
CTABLOCK(<n>,<m>)/CTABUNLOCK(<n>,<m>), <n> indique le numro de la
premire table de courbes de la plage.
<m>
Lors du verrouillage/dverrouillage d'une plage de tables de courbes
CTABLOCK(<n>,<m>)/CTABUNLOCK(<n>,<m>), <m> indique le numro de la
dernire table de courbes de la plage.
<m> doit tre suprieur <n> !
Notions complmentaires
510 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.2 Tables de courbes (CTAB)
<lieu
d'enregistrement> Indication du lieu d'enregistrement (facultative)
Lors du verrouillage/dverrouillage sans indication de lieu
d'enregistrement, les tables de courbes indiques sont
verrouilles/dverrouilles dans les mmoires statique et dynamique
de la CN.
Lors du verrouillage/dverrouillage avec indication de lieu
d'enregistrement, seules les tables de courbes indiques se trouvant
dans la mmoire spcifie sont verrouilles/dverrouilles. Les tables
de courbes restantes ne sont pas verrouilles/dverrouilles.
"SRAM"
Verrouillage/dverrouillage dans la mmoire statique de la
CN
"DRAM"
Verrouillage/dverrouillage dans la mmoire dynamique de la
CN
Si CTABLOCK/CTABUNLOCK est programm sans indication de la table de courbes
verrouiller/dverrouiller, toutes les tables de courbes ou toutes celles qui se trouvent dans la
mmoire spcifie sont verrouilles/dverrouilles.
CTABLOCK()
Verrouille toutes les tables de courbes dans les
mmoires statique et dynamique de la CN
CTABLOCK(,,"SRAM")
Verrouille toutes les tables de courbes dans la mmoire
statique de la CN
CTABLOCK(,,"DRAM")
Verrouille toutes les tables de courbes dans la mmoire
dynamique de la CN
CTABUNLOCK()
Dverrouille toutes les tables de courbes dans les
mmoires statique et dynamique de la CN
CTABUNLOCK(,,"SRAM")
Dverrouille toutes les tables de courbes dans la
mmoire statique de la CN
CTABUNLOCK(,,"DRAM")
Dverrouille toutes les tables de courbes dans la
mmoire dynamique de la CN
Fonction
Ces instructions permettent d'interroger les principales proprits d'une table de courbes
(numro de la table, tat de verrouillage, lieu d'enregistrement, priodicit).
Syntaxe
CTABID(<p>)
CTABID(<p>,<lieu d'enregistrement>)
CTABISLOCK(<n>)
CTABMEMTYP(<n>)
TABPERIOD(<n>)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 511
couplages d'axes
9.2 Tables de courbes (CTAB)
Signification
CTABID
Indique le numro de la table inscrit comme <p>me table de
courbes dans la mmoire spcifie.
Exemple :
CTABID(1,"SRAM") indique le numro de la premire table de courbes
dans la mmoire statique de la CN. La premire table de courbes
correspond celle dont le numro est le plus lev.
Nota :
si l'ordre des tables de courbes est modifi dans la mmoire entre
des appels conscutifs de CTABID, p. ex. pour la suppression de
tables de courbes avec CTABDEL, CTABID(<p>,...) peut indiquer une
autre table de courbes que prcdemment avec le mme numro
<p>.
CTABISLOCK
Indique l'tat de verrouillage de la table de courbes portant le
numro <n> :
0 La table n'est pas verrouille
1 La table est verrouille par CTABLOCK
2 La table est verrouille par le couplage actif
3 La table est verrouille par CTABLOCK et par le couplage actif
-1 La table n'existe pas.
CTABMEMTYP
Indique le lieu d'enregistrement de la table de courbes portant le
numro <n> :
0 table dans la mmoire statique de la CN
1 table dans la mmoire dynamique de la CN
-1 La table n'existe pas.
CTABPERIOD
Indique la priodicit de la table de courbes portant le numro <n> :
0 la table n'est pas priodique
1 la table est priodique dans l'axe pilote
2 la table est priodique dans l'axe pilote et dans l'axe asservi
-1 La table n'existe pas.
<p>
Numro d'entre en mmoire
<n>
Numro (ID) de la table de courbes
<lieu
d'enregistrement> Indication du lieu d'enregistrement (facultative)
"SRAM"
Mmoire statique de la CN
"DRAM"
Mmoire dynamique de la CN
Nota :
si aucune valeur n'est programme pour ce paramtre, le lieu
d'enregistrement par dfaut paramtr avec
MD20905 $MC_CTAB_DEFAULT_MEMORY_TYPE est utilis.
Notions complmentaires
512 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.2 Tables de courbes (CTAB)
Fonction
Les valeurs suivantes de la table de courbes peuvent tre lues dans le programme pice :
Valeurs de l'axe asservi et de l'axe pilote au dbut et la fin d'une table des courbes
Valeurs de l'axe asservi au dbut et la fin d'un segment de courbe
Valeur de l'axe asservi correspondant une valeur de l'axe pilote
Valeur de l'axe pilote correspondant une valeur de l'axe asservi
Valeur minimale et valeur maximale de l'axe asservi
dans la plage de dfinition entire de la table de courbes
ou
dans un intervalle dfini de la table de courbes
Syntaxe
CTABTSV(<n>,<gradient>[,<axe asservi>])
CTABTEV(<n>,<gradient>[,<axe asservi>])
CTABTSP(<n>,<gradient>[,<axe pilote>])
CTABTEP(<n>,<gradient>[,<axe pilote>])
CTABSSV(<valeur pilote>,<n>,<gradient>[,<axe asservi>])
CTABSEV(<valeur pilote>,<n>,<gradient>[,<axe asservi>])
CTAB(<valeur pilote>,<n>,<gradient>[,<axe asservi>,<axe pilote>]
CTABINV(<valeur asservie>,<valeur approche>,<n>,<gradient>[,<axe
asservi>,<axe pilote>]
CTABTMIN(<n>[,<axe asservi>])
CTABTMAX(<n>[,<axe asservi>])
CTABTMIN(<n>,<a>,<b>[,<axe asservi>,<axe pilote>])
CTABTMAX(<n>,<a>,<b>[,<axe asservi>,<axe pilote>])
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 513
couplages d'axes
9.2 Tables de courbes (CTAB)
Notions complmentaires
514 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.2 Tables de courbes (CTAB)
Exemples
Exemple 1 :
Dterminer les valeurs de l'axe asservi et de l'axe pilote au dbut et la fin de la table de
courbes ainsi que les valeurs minimale et maximale de l'axe asservi dans la plage de
dfinition entire de la table de courbes.
Exemple 2 :
Dterminer les valeurs de l'axe asservi au dbut et la fin du segment de courbe
correspondant la valeur de l'axe pilote X=30.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 515
couplages d'axes
9.2 Tables de courbes (CTAB)
Informations complmentaires
Utilisation dans des actions synchrones
Il est galement possible de lire dans des actions synchrones l'ensemble des instructions de
lecture des valeurs d'une table de courbes (voir aussi le chapitre "Actions synchrones au
dplacement").
Pour l'utilisation des instructions CTABINV, CTABTMIN et CTABTMAX, il faut s'assurer que :
la puissance de la CN soit suffisante au moment de l'excution
ou
le nombre de segments de la table de courbes soit interrog avant l'appel afin de pouvoir
subdiviser, le cas chant, la table concerne
CTAB dans le cas de tables de courbes non priodiques
Lorsque la <valeur pilote> se situe en-dehors de la plage de dfinition, la valeur asservie
fournie est la limite suprieure ou infrieure :
9DOHXUDVVHUYLH
9DOHXUSLORWH
/ 3ODJHGHGILQLWLRQ /
Notions complmentaires
516 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.2 Tables de courbes (CTAB)
9DOHXUDVVHUYLH
9DOHXUSLORWH
/
3ODJHGHGILQLWLRQ
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 517
couplages d'axes
9.2 Tables de courbes (CTAB)
Fonction
Ces instructions permettent au programmeur de s'informer sur l'occupation actuelle des
ressources requises par les tables de courbes, segments de tables et polynmes.
Syntaxe
CTABNO
CTABNOMEM(<lieu d'enregistrement>)
CTABFNO(<lieu d'enregistrement>)
CTABSEGID(<n>,<lieu d'enregistrement>)
CTABSEG(<lieu d'enregistrement>,<type de segment>)
CTABFSEG(<lieu d'enregistrement>,<type de segment>)
CTABMSEG(<type de segment>,<type de segment>)
CTABPOLID(<n>)
CTABPOL(<lieu d'enregistrement>)
CTABFPOL(<lieu d'enregistrement>)
CTABMPOL(<lieu d'enregistrement>)
Signification
CTABNO
Dtermination du nombre total de tables de courbes dfinies (dans
les mmoires statique et dynamique de la CN)
CTABNOMEM
Dtermination du nombre de tables de courbes dfinies dans le
<lieu d'enregistrement>indiqu
CTABFNO
Dtermination du nombre de tables de courbes qu'il est encore
possible d'enregistrer dans le <lieu d'enregistrement> indiqu
CTABSEGID
Dtermination du nombre de segments de courbe avec le <type de
segment>spcifi qu'il est possible d'utiliser dans la table de courbes
de numro <n>
CTABSEG
Dtermination du nombre de segments de courbe utiliss avec le
<type de segment> spcifi dans le <lieu d'enregistrement> indiqu
CTABFSEG
Dtermination du nombre de segments de courbe avec le <type de
segment> spcifi qu'il est encore possible d'enregistrer dans le <lieu
d'enregistrement> indiqu
CTABMSEG
Dtermination du nombre maximum possible de segments de
courbe avec le <type de segment> spcifi qu'il est possible
d'enregistrer dans le <lieu d'enregistrement> indiqu
CTABPOLID
Dtermination du nombre de polynmes de courbe utiliss par la
table de courbes de numro <n>
CTABPOL
Dtermination du nombre de polynmes de courbes utiliss dans le
<lieu d'enregistrement>indiqu
Notions complmentaires
518 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.2 Tables de courbes (CTAB)
CTABFPOL
Dtermination du nombre de polynmes de courbes qu'il est encore
possible d'enregistrer dans le <lieu d'enregistrement> indiqu
CTABMPOL
Dtermination du nombre maximum possible de polynmes de
courbes qu'il est possible d'enregistrer dans le <lieu
d'enregistrement> indiqu
<n>
Numro (ID) de la table de courbes
<lieu
d'enregistrement> Indication du lieu d'enregistrement (facultative)
"SRAM"
Mmoire statique de la CN
"DRAM"
Mmoire dynamique de la CN
Nota :
si aucune valeur n'est programme pour ce paramtre, le lieu
d'enregistrement par dfaut paramtr avec
MD20905 $MC_CTAB_DEFAULT_MEMORY_TYPE est utilis.
<type de segment>
Indication du type de segment (facultative)
"L"
Segments linaires
"P"
Segments polynmiaux
Nota :
si aucune valeur n'est programme pour ce paramtre, la somme
des segments linaires et polynmiaux est fournie.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 519
couplages d'axes
9.3 Couplage de deux axes par valeur pilote (LEADON, LEADOF)
Remarque
Cette fonction n'est pas disponible pour SINUMERIK 828D.
Fonction
Quand il y a couplage de deux axes par valeur pilote, l'axe pilote et l'axe asservi se
dplacent de faon synchrone. Une position donne de l'axe asservi correspond sans
quivoque une position de l'axe pilote (simule le cas chant) sur la base d'une table de
courbes ou d'un polynme en dcoulant.
<
Axe pilote est le nom donn l'axe qui fournit les valeurs d'entre pour la table de courbes.
Axe asservi est le nom donn l'axe qui prend les positions calcules sur la base de la table
de courbes.
Couplage par valeur relle et couplage par valeur de consigne
Comme valeurs pilotes, autrement dit comme valeurs de dpart pour dterminer les
positions de l'axe asservi, on peut utiliser :
les valeurs relles de l'axe pilote : couplage par valeur relle
Valeurs de consigne de la position de l'axe pilote : Couplage par valeur de consigne
Le couplage par valeur pilote se rfre toujours au systme de coordonnes de base.
Pour crer des tables de courbes, voir chapitre "Tables de courbes".
Pour le couplage par valeur pilote, voir /FB/, M3, Dplacements conjugus et couplage par
valeur pilote.
Notions complmentaires
520 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.3 Couplage de deux axes par valeur pilote (LEADON, LEADOF)
Syntaxe
LEADON(axeA,axeP,n)
LEADOF(axeA,axeP)
ou dsactivation sans indication de l'axe pilote :
LEADOF(AxeA)
Le couplage par valeur pilote peut tre activ et dsactiv aussi bien depuis le programme
pice que pendant les dplacements depuis une action synchrone (voir chapitre "Actions
synchrones au dplacement").
Signification
LEADON
Activer le couplage par valeur pilote
LEADOF
Dsactiver le couplage par valeur pilote
AxeA
axe conjugu
AxeP
Axe pilote
n
Numro de la table de courbe
$SA_LEAD_TYPE
Permutation entre le couplage par valeur relle et le couplage
par valeur de consigne
Dsactiver le couplage par valeur pilote, LEADOF
Aprs la dsactivation du couplage par valeur pilote, l'axe asservi redevient axe de
commande normal.
Couplage de deux axes par valeur pilote et diffrents tats de fonctionnement, RESET
Selon le rglage qui a t fait dans les paramtres machine, les couplages par valeur pilote
sont dsactivs avec RESET.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 521
couplages d'axes
9.3 Couplage de deux axes par valeur pilote (LEADON, LEADOF)
Actions
Parmi les actions synchrones, on trouve :
Couplage, LEADON (axe asservi, axe pilote, numro de la table de courbe)
Conditions
Des entres TOR rapides, des variables temps rel $AC_MARKER et des comparaisons de
positions, combines avec l'oprateur logique AND, sont exploites comme conditions.
Remarque
Dans l'exemple qui suit, nous avons utilis des retours de lignes, des retraits et des
caractres gras pour une meilleure lisibilit du programme. Pour la commande, tout ce qui
figure sous un numro de ligne reprsente effectivement une ligne de programme.
Commentaire
Notions complmentaires
522 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.3 Couplage de deux axes par valeur pilote (LEADON, LEADOF)
Description
Le couplage par valeur pilote exige la synchronisation de l'axe pilote et de l'axe asservi.
Cette synchronisation est obtenue uniquement si l'axe asservi se trouve, au moment o le
couplage par valeur pilote est activ, dans la plage de tolrance de la courbe calcule avec
la table.
La plage de tolrance pour la position de l'axe asservi est dfinie par le paramtre machine
PM 37200 : COUPLE_POS_POL_COARSE A_LEAD_TYPE .
Si, lors de l'activation du couplage par valeur pilote, l'axe asservi n'est pas encore positionn
correctement, le synchronisme s'enclenchera automatiquement ds que la position de
consigne calcule pour l'axe asservi approchera de sa position effective. Pendant la
synchronisation, l'axe asservi est dplac dans la direction dfinie par sa vitesse de
consigne (calcule partir de la vitesse de l'axe pilote et CTAB).
<
UYL
V VH V
D H
[H XUE
H O
D FR
G G H
LRQ OH
R VLW WDE
3RVLWLRQGHO
D[HDVVHUYL 3 ORQ
VH
<
Pas de synchronisation
Si la position calcule de l'axe asservi s'loigne de sa position effective lors de l'activation du
couplage par valeur pilote, il n'y a pas de synchronisation.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 523
couplages d'axes
9.3 Couplage de deux axes par valeur pilote (LEADON, LEADOF)
1&8
FRXSODJHSDUYDOHXU
GHFRQVLJQH
$[ $[
FRXSODJHSDUYDOHXU
UHOOH
Le couplage par la valeur de consigne est possible uniquement si l'axe pilote et l'axe asservi
sont interpols par la mme NCU. Quand l'axe pilote est un axe externe, le couplage de
l'axe asservi avec cet axe pilote ne peut se faire que par des valeurs relles.
1&8 1&8
$[ $[
FRXSODJHSDUYDOHXU
UHOOH
Le basculement entre couplage par valeur relle et couplage par valeur de consigne doit
toujours se faire quand l'axe asservi est en tat d'immobilisation. En effet, une
resynchronisation aprs le basculement n'a lieu que dans cet tat.
Exemple d'application
Quand la machine est soumise de fortes vibrations, la lecture des valeurs relles ne peut
pas se faire correctement. Pour mettre en uvre le couplage par valeur pilote dans un
transfert sur presse, il peut tre ncessaire de basculer du couplage par valeur relle au
couplage par valeur de consigne, dans les phases d'usinage o les vibrations sont les plus
fortes.
Notions complmentaires
524 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.3 Couplage de deux axes par valeur pilote (LEADON, LEADOF)
et lues partir de celles-ci. Pour utiliser ces variables, il convient de dfinir la donne de
rglage comme suit : $SA_LEAD_TYPE = 2.
Etat du couplage
Vous pouvez interroger l'tat du couplage dans le programme pice CN avec la variable
systme suivante :
$AA_COUP_ACT[axe]
0 : aucun couplage activ
16 : couplage par valeur pilote activ
Gestion des tats pour les actions synchrones
Les phases de commutation et de couplage sont gres par des variables temps rel :
$AC_MARKER[i] = n
avec :
numro de mmento i
valeur d'tat n
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 525
couplages d'axes
9.4 Rducteur lectronique (EG)
Fonction
La fonction "Rducteur Electronique" permet, aprs un bloc de dplacement linaire, de faire
piloter le dplacement d'un axe asservi en fonction de 5 axes pilotes au maximum. Les
relations entre les axes pilotes et l'axe asservi sont dfinis, pour chaque axe pilote, par un
facteur de couplage.
Le trajet de l'axe asservi est calcul en additionnant les diffrents trajets des axes pilotes
multiplis par les facteur de couplage respectifs. Lors de l'activation d'un groupe d'axes EG,
une synchronisation de l'axe asservi une position dfinie peut avoir lieu. Un groupe de
rducteurs lectroniques peut tre :
dfini,
activ,
dsactiv,
effac
.
Le dplacement de l'axe asservi peut tre dduit des :
valeurs de consignes des axes pilotes,
valeurs relles des axes pilotes.
Dans le cadre de l'extension, des couplages non linaires entre les axes pilotes et les axes
asservis peuvent tre raliss par des tables de courbes (voir chapitre Mode de
dplacement). Les rducteurs lectroniques peuvent tre monts en cascade, c'est--dire
que l'axe asservi d'un rducteur lectronique peut tre l'axe pilote d'un autre rducteur
lectronique.
Fonction
Un groupe d'axes EG est dtermin par l'indication de l'axe asservi et d'au moins un (au plus
cinq) axes pilotes avec le type de couplage respectif.
Conditions requises
Condition pour la dfinition d'un groupe d'axes EG :
un couplage d'axe ne doit pas tre dfini pour l'axe asservi (le cas chant, un couplage
existant doit tre effac avec EGDEL).
Syntaxe
EGDEF(axe asservi,axe pilote1,type de couplage1,axe pilote2,type de
couplage2,...)
Notions complmentaires
526 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.4 Rducteur lectronique (EG)
Signification
EGDEF
Dfinition d'un rducteur lectronique
axe conjugu
Axe influenc par les axes pilotes
Axe pilote1
,..., Axes qui influencent l'axe asservi
axe pilote5
Type de couplage1
,..., Type de couplage
type de couplage5
Les types de couplage pouvant tre diffrents, ceux-ci doivent
tre indiqus pour tous les axes pilotes.
Valeur : Signification :
0 L'axe asservi est influenc par la valeur relle de l'axe
pilote correspondant.
1 L'axe asservi est influenc par la consigne de l'axe
pilote correspondant.
Remarque
Les facteurs de couplage sont prrgls avec la valeur zro lors de la dfinition du groupe
d'axes EG.
Remarque
EGDEF dclenche un arrt du prtraitement des blocs. La dfinition de transmission avec
EGDEF est alors utiliser de manire inchange si, sur les systmes, un ou plusieurs axes
pilotes influencent l'axe asservi par des tables de courbes.
Exemple
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 527
couplages d'axes
9.4 Rducteur lectronique (EG)
Fonction
Il existe 3 variantes pour activer un groupe d'axes EG.
Syntaxe
Variante 1 :
Le groupe d'axes EG est activ de faon slective sans synchronisation par :
EGON(AA,"mode de changement de
bloc",AP1,Z1,N1,AP2,Z2,N2,...,AP5,Z5,N5)
Variante 2 :
Le groupe d'axes EG est activ de faon slective avec synchronisation par :
EGONSYN(AA,"mode de changement de
bloc",SynPosAA,[,APi,SynPosAPi,Zi,Ni])
Variante 3 :
Le groupe d'axes EG est activ de faon slective avec synchronisation et le mode
d'accostage est dfini par :
EGONSYNE(AA,"mode de changement de bloc",SynPosAA,mode
d'accostage[,APi,SynPosAPi,Zi,Ni])
Signification
Variante 1 :
AA
axe asservi
Mode de changement de
bloc Les modes suivants peuvent tre utiliss :
"NOC"
Le changement de bloc s'effectue
immdiatement.
"FINE"
Le changement de bloc s'effectue au
"synchronisme fin".
"COARSE"
Le changement de bloc s'effectue au
"synchronisme grossier".
"IPOSTOP"
Le changement de bloc s'effectue la
valeur de consigne du synchronisme.
AP1, ... AP5
Axes pilotes
Z1, ... Z5
Numrateur pour le facteur de couplage i
N1, ... N5
Dnominateur pour le facteur de couplage i
Facteur de couplage i = numrateur i / dnominateur i
Seuls les axes pilotes spcifis auparavant dans l'instruction EGDEF peuvent tre
programms. Un axe pilote au moins doit tre indiqu.
Notions complmentaires
528 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.4 Rducteur lectronique (EG)
Variante 2 :
AA axe asservi
Mode de changement de bloc
Les modes suivants peuvent tre utiliss :
"NOC"
Le changement de bloc s'effectue
immdiatement.
"FINE"
Le changement de bloc s'effectue au
"synchronisme fin".
"COARSE"
Le changement de bloc s'effectue au
"synchronisme grossier".
"IPOSTOP"
Le changement de bloc s'effectue la
valeur de consigne du synchronisme.
[,APi,SynPosAPi,Zi,Ni] (ne pas crire les crochets droits)
Au minimum 1, au maximum 5 suites de :
AP1, ... AP5 Axes pilotes
PosSynAPi Position de synchronisation pour l'axe pilote i
Z1, ... Z5 Numrateur pour le facteur de couplage i
N1, ... N5 Dnominateur pour le facteur de couplage i
Facteur de couplage i = numrateur i / dnominateur i
Seuls les axes pilotes spcifis auparavant dans l'instruction EGDEF peuvent tre
programms. Les "positions de synchronisme" programms pour l'axe asservi (PosSynAA) et
pour les axes pilotes (PosSynAP) sont des positions dans lesquelles le couplage d'axes est
considr synchronis. Si le rducteur lectronique n'est pas synchronis l'activation, l'axe
asservi se dplace la position de synchronisation dfinie.
Variante 3 :
Les paramtres sont identiques ceux de la variante 2 avec en plus :
Mode d'accostage
Les modes suivants peuvent tre utiliss :
"NTGT"
accoster l'entredent suivant avec une optimisation du
temps
"NTGP"
accoster l'entredent suivant avec une optimisation du
parcours
"ACN"
dplacer l'axe rotatif en sens de rotation ngatif, en
absolu
"ACP"
dplacer l'axe rotatif en sens de rotation positif, en
absolu
"DCT"
Position de synchronisme programme avec une
optimisation du temps
"DCP"
Position de synchronisme programme avec une
optimisation du parcours
La variante 3 influe uniquement sur les axes asservis modulos coupls aux axes pilotes
modulos. L'optimisation du temps tient compte des limites de vitesse de l'axe asservi.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 529
couplages d'axes
9.4 Rducteur lectronique (EG)
Autres informations
Description des variantes d'activation
Variante 1 :
Les positions des axes pilotes et des axes asservis sont enregistres, lors de l'activation, en
tant que "positions de synchronisme". Les "positions de synchronisme" peuvent tre lues
l'aide de la variable $AA_EG_SYN.
Variante 2 :
Si le groupe d'axes comprend des axes valeur modulo, leurs positions sont ramens la
plage dfinie par la valeur modulo. Ceci garantit que la position de synchronisation la plus
proche est accoste (synchronisation relative : par exemple l'entredent suivant). Si le signal
d'interface DB (30 +numro d'axe), DBX 26 bit 4 "Dblocage forage dplacement axe
asservi" n'est pas 1 pour l'axe asservi, la position de synchronisation n'est pas accoste.
Dans ce cas, le programme est arrt au bloc EGONSYN et l'alarme effacement
automatique 16771 est signale jusqu' ce que le signal mentionn ci-dessus soit mis 1.
Variante 3 :
L'entredent (degrs) est calcul de la manire suivante : 360 * Zi/Ni. Si l'axe asservi est
l'arrt au moment de l'activation, l'optimisation du parcours gnre le mme comportement
que l'optimisation du temps.
Si l'axe asservi est dj en dplacement, NTGP est synchronis avec l'entredent suivant
indpendamment de sa vitesse actuelle. Si l'axe asservi est dj en dplacement, NTGT est
synchronis avec l'entredent suivant en fonction de sa vitesse actuelle. Le cas chant, la
vitesse est rduite.
Tables de courbes
Si une table de courbes est utilise pour un axe pilote, il faut :
Notions complmentaires
530 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.4 Rducteur lectronique (EG)
Fonction
Il existe 3 variantes pour dsactiver un groupe d'axes EG actif.
Programmation
Variante 1 :
Syntaxe Signification
EGOFS(axe asservi)
Le rducteur lectronique est dsactiv. L'axe asservi est
frein jusqu' l'arrt. Cette instruction dclenche un arrt du
prtraitement des blocs.
Variante 2 :
Syntaxe Signification
EGOFS(axe asservi,axepilote1,,axepilote5)
Ce paramtrage permet de
supprimer de faon slective
l'influence de certains axes
pilotes sur le dplacement de
l'axe asservi.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 531
couplages d'axes
9.4 Rducteur lectronique (EG)
Un axe pilote au moins doit tre indiqu. L'influence des axes pilotes indiqus sur l'axe
asservi est supprime. Cette instruction dclenche un arrt du prtraitement des blocs. S'il
reste des axes pilotes actifs, l'axe asservi continue de se dplacer sous leur influence.
Lorsque toutes les influences d'axes pilotes sont dsactives de cette manire, l'axe asservi
est frein jusqu' l'arrt.
Variante 3 :
Syntaxe Signification
EGOFC(broche asservie1)
Le rducteur lectronique est dsactiv. La broche asservie
continue de tourner la vitesse qu'elle a l'instant de la
dsactivation. Cette instruction dclenche un arrt du
prtraitement des blocs.
Remarque
Cette variante n'est autorise que pour des broches.
Fonction
La dfinition d'un groupe d'axes EG ne peut tre efface que si celui-ci a t dsactiv
auparavant.
Programmation
Syntaxe Signification
EGDEL(axe asservi)
La dfinition du couplage du groupe d'axes est efface. Vous
pouvez nouveau dfinir des groupes d'axes avec EGDEF
jusqu' ce que le nombre maximal de groupes d'axes actif
simultanment soit atteint. Cette instruction dclenche un arrt
du prtraitement des blocs.
Notions complmentaires
532 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.4 Rducteur lectronique (EG)
Fonction
L'instruction FPR permet galement d'indiquer l'axe asservi d'un rducteur lectronique en
tant qu'axe dterminant l'avance par tours. Dans ce cas, les rgles suivantes s'appliquent :
L'avance dpend de la vitesse de consigne de l'axe asservi du rducteur lectronique.
La vitesse de consigne est calcule partir des vitesses des broches pilotes et des axes
pilotes valeur modulo (qui ne sont pas des axes interpolation) et des facteurs de
couplage correspondants.
Les vitesses des axes pilotes linaires et des axes pilotes sans valeur modulo ainsi que
les dplacements forc de l'axe asservi ne sont pas pris en considration.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 533
couplages d'axes
9.5 Broche synchrone
Fonction
En mode de "broche synchrone", il y a une broche pilote (BP) et une broche asservie (BA),
qui forment la paire de broches synchrones. Quand le couplage est activ (mode "broche
synchrone"), la broche asservie suit les dplacements de la broche pilote, en fonction du lien
fonctionnel qui a t dfini auparavant.
Les paires de broches synchrones peuvent tre aussi bien configures de manire fixe pour
chaque machine l'aide de paramtres machine spcifiques un canal ou dfinies en
fonction de l'application par le programme pice de la CNC. Deux paires de broches
synchrones sont utilisables simultanment par canal CN.
A partir du programme pice, le couplage peut tre
dfini ou modifi,
activ,
dsactiv,
effac.
De plus, en fonction de la version du logiciel,
les conditions de synchronisme peuvent tre contrles,
le mode de changement de bloc peut tre modifi,
le type de couplage, soit couplage par valeur de consigne soit couplage par valeur relle,
peut tre slectionn ou le dcalage angulaire entre broche pilote et broche asservi peut
tre prescrit
l'activation du couplage, une programmation prcdente de la broche asservie peut
tre reprise
un cart de synchronisme mesur ou encore dj connu peut tre corrig
Notions complmentaires
534 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.5 Broche synchrone
Fonction
La fonction de broche synchrone permet un dplacement synchrone de deux broches
(broche asservie BA et broche pilote BP), par ex. pour un transfert de pice la vole.
Cette fonction dispose des modes suivants :
Synchronisme de vitesse de rotation (nBA = n BP)
Synchronisme de position (BA = BP)
Synchronisme de position avec dcalage angulaire (BA = BP)
0DQGULQ
Q Q
%URFKH %URFKH
Q Q
%URFKH %URFKH
Q Q
%URFKH %URFKH
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 535
couplages d'axes
9.5 Broche synchrone
La prdfinition d'un rapport de transmission diffrent de 1 entre l'axe pilote et l'axe asservi
permet galement le traitement de plusieurs faces (rotation de polygne).
Q Q
Syntaxe
COUPDEF(<BA>,<BP>,<RBA>,<RBP>,<Changement de bloc>,<Mode de
couplage>)
COUPON(<BA>,<BP>,<POSBA>)
COUPONC(<BA>,<BP>)
COUPOF(<BA>,<BP>,<POSBA>,<POSBP>)
COUPOFS(<BA>,<BP>)
COUPOFS(<BA>,<BP>,<POSBA>)
COUPRES(<BA>,<BP>)
COUPDEL(<BA>,<BP>)
WAITC(<BA>,<Changement de bloc>,<BP>,<Changement de bloc>)
Remarque
Notation abrge
Les instructions COUPOF, COUPOFS, COUPRES et COUPDEL permettent l'utilisation d'une notation
abrge sans indication de la broche pilote.
Signification
Notions complmentaires
536 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.5 Broche synchrone
Paramtres optionnels :
<BP> : Dsignation de la broche pilote
Indication avec numro de broche : par ex. S2, S1
<RBA>, <RBP> : Rapport de transmission entre BA et BP.
<RBA> = numrateur, <RBP> = dnominateur
Rglage par dfaut : <RBA> / <RBP> = 1.0 ; indication facultative du
dnominateur
<Changement de
Mode de changement de bloc
bloc> :
Le changement de bloc s'effectue :
"NOC"
sur le champ,
"FINE"
lorsque le "Synchronisme fin" est atteint
"COARSE"
lorsque le "Synchronisme grossier" est atteint
"IPOSTOP"
lorsque IPOSTOP est atteint, c.--d. quand la
valeur de consigne du synchronisme est atteinte
(paramtrage par dfaut)
Le mode de changement de bloc est effet modal.
<Mode de couplage> : Type de couplage : couplage entre BA et BP
"DV"
Couplage par la valeur de consigne (prrglage)
"AV"
Couplage par valeur relle
"VV"
Couplage de vitesse
Le type de couplage est effet modal.
<POSBA> : dcalage angulaire entre broche pilote et broche asservie
Plage de 0 359,999
valeurs :
<POSBA>,<POSBP> : Positions d'arrt de broche asservie et de broche pilote
"Le changement de bloc est dbloqu aprs le passage par POSBA,
POSBP."
Plage de 0 359,999
valeurs :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 537
couplages d'axes
9.5 Broche synchrone
Exemples
Exemple 1 : Travail avec broche pilote et broche asservie
Programmation Commentaire
; Broche pilote = broche matre = broche 1
; Broche asservie = broche 2
N05 M3 S3000 M2=4 S2=500 ; La broche pilote tourne 3000 tr/min,
la broche asservie tourne 500 tr/min.
N10 COUPDEF(S2,S1,1,1,"NOC","Dv") ; Dfinition du couplage (peut galement tre configur).
...
N70 SPCON ; Placement de la broche pilote en asservissement de
position (contrle de consigne)
N75 SPCON(2) ; Broche asservie intgre dans la rgulation de position.
N80 COUPON(S2,S1,45) ; Couplage au vol sur position de dcalage = 45 degrs.
...
N200 AA[S2]=100 ; Vitesse de positionnement = 100 degrs/min
N205 SPOS[2]=IC(-90) ; Dplacement forc de 90 degrs dans le sens ngatif.
N210 WAITC(S2,"Fine") ; Attente du synchronisme "fin".
N212 G1 X... Y... F... ; Usinage
...
N215 SPOS[2]=IC(180) ; Dplacement forc de 180 degrs dans le sens positif.
N220 G4 S50 ; Dure d'attente = 50 tours de la broche matre
N225 AA[S2]=0 ; Activation de la vitesse configure (PM).
N230 SPOS[2]=IC(-7200) ; 20 tours. Dplacement dans le sens ngatif la vitesse
configure.
...
N350 COUPOF(S2,S1) ; Dcouplage au vol, S=S2=3000
N355 SPOSA[2]=0 ; Arrt de la broche asservie 0 degrs.
N360 G0 X0 Y0
N365 WAITS(2) ; Attendre la broche 2.
N370 M5 ; Arrter la broche asservie.
N375 M30
Notions complmentaires
538 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.5 Broche synchrone
Programmation Commentaire
; Broche pilote = broche matre = broche 1
; Broche asservie = broche 2
N01 M3 S500 ; Broche pilote tourne 500 tr/min.
N02 M2=3 S2=300 ; Broche asservie tourne 300 tr/min.
...
N10 G4 F1 ; Temporisation de la broche matre.
N15 COUPDEF (S2,S1,-1) ; Facteur de couplage avec un rapport de transmission de -1:1
N20 COUPON (S2,S1) ; Activer le couplage. La vitesse de rotation de la broche asservie est
dfinie partir de la vitesse de rotation de la broche pilote et du
facteur de couplage.
...
N26 M2=3 S2=100 ; Programmation d'une vitesse de rotation diffrentielle.
Programmation Commentaire
; Broche pilote = broche matre = broche 1
; Broche asservie = broche 2
N05 M3 S100 M2=3 S2=200 ; Broche pilote tourne 100 tr/min, broche asservie tourne 200 tr/min.
N10 G4 F5 ; Temporisation = 5 secondes de la broche matre
N15 COUPDEF(S2,S1,1) ; Le rapport de transmission BA par rapport BP est de 1,0 (rglage par
dfaut).
N20 COUPON(S2,S1) ; Couplage au vol sur la broche pilote.
N10 G4 F5 ; Broche asservie tourne 100 tr/min.
Programmation Commentaire
; Broche pilote = broche matre = broche 1
; Broche asservie = broche 2
N05 M3 S100 M2=3 S2=200 ; Broche pilote tourne 100 tr/min, broche asservie tourne 200 tr/min.
N10 G4 F5 ; Temporisation = 5 secondes de la broche matre
N15 COUPDEF(S2,S1,1) ; Le rapport de transmission BA par rapport BP est de 1,0 (rglage par
dfaut).
N20 COUPONC(S2,S1) ; Couplage au vol sur la broche pilote et application de la vitesse de
rotation prcdente S2.
N10 G4 F5 ; S2 tourne 100 tr/min + 200 tr/min = 300 tr/min
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 539
couplages d'axes
9.5 Broche synchrone
Programmation Commentaire
; Broche pilote = broche matre = broche 1
; Broche asservie = broche 2
N05 SPOS=10 SPOS[2]=20 ; Broche asservie S2 en mode de positionnement.
N15 COUPDEF(S2,S1,1) ; Le rapport de transmission BA par rapport BP est de 1,0 (rglage
par dfaut).
N20 COUPON(S2,S1) ; Couplage au vol sur la broche pilote.
N10 G4 F1 ; Le couplage est ferm, S2 s'arrte 20 degrs.
Remarque
Mode de positionnement ou mode axe
Si la broche asservie se trouve en amont du couplage en mode de positionnement ou en
mode axe, la broche asservie se comporte de la mme faon pour COUPON(<BA>,<BP>) et
pour COUPONC(<BA>,<BP>).
IMPORTANT
Broche pilote et mode d'axe
Si la broche pilote se trouve en mode axe avant que le couplage ne soit dfini, la valeur
limite de vitesse transmise par le paramtre machine suivant agit galement aprs
activation du couplage :
MD32000 $MA_MAX_AX_VELO (vitesse d'axe maximale)
Afin d'viter ce comportement, l'axe doit tre commut en mode broche (M3 S... ou M4
S...) avant la dfinition du couplage.
Informations complmentaires
Dfinir la paire de broches synchrones
Couplage configur :
Dans le cas du couplage configur, la broche pilote et la broche asservie sont dfinies dans
les paramtres machine. Les broches configures ne peuvent pas tre modifies dans le
programme pice. Le paramtrage du couplage peut tre ralis dans le programme pice
avec COUPDEF(condition : qu'aucune protection en criture ne soit dfinie).
Couplage dfini par l'utilisateur :
COUPDEF permet de dfinir un nouveau couplage ou de modifier un couplage existant dans le
programme pice. Si un couplage est dj actif, il doit d'abord tre supprim avec COUPDEL
avant la dfinition d'un nouveau couplage.
Dfinition du couplage : COUPDEF
Un couplage est de faon complte avec :
COUPDEF(<BA>,<BP>,<RBA>,<RBP>, comportement de changement de bloc, mode de couplage)
Notions complmentaires
540 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.5 Broche synchrone
Q Q
%URFKH %URFKH
EURFKHSLORWH EURFKHDVVHUYLH
Remarque
Le rapport de transmission peut galement tre modifi pendant que le couplage est activ
et que les broches sont en rotation.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 541
couplages d'axes
9.5 Broche synchrone
PRUDENCE
La modification du type de couplage ne peut se faire que lorsque le couplage est dsactiv
!
COUPON(S2,S1,<POSBA>)
COUPON(S2)
Activation du couplage avec un dcalage angulaire <POSBA>
Couplage synchronis en position pour les pices profiles.
<POSBA> se rfre la position 0 de la broche pilote dans le sens de rotation positif
Plage de valeurs <POSBA> : 0 359,999
COUPON(S2,S1,30)
Vous pouvez ainsi modifier le dcalage angulaire, alors que le couplage est dj actif.
Positionnement de la broche asservie
Quand le couplage de broches synchrones est activ, on peut toujours encore positionner
des broches asservies dans une plage de 180, indpendamment du dplacement
dclench par la broche pilote.
Positionnement SPOS
La broche asservie peut tre interpole avec SPOS =....
Exemple :
SPOS[2]=IC(-90)
Pour plus d'informations sur SPOS, se rfrer la :
Bibliographie :
Manuel de programmation Notions de base
Vitesse de rotation diffrentielle M3 S... ou M4 S...
Une vitesse de rotation diffrentielle rsulte d'une superposition avec signe de deux sources
de vitesse de rotation et est nouveau programme pour la broche asservie, par ex. avec
S<n>=... ou M<n>=3, M<n>=4 en mode de rgulation de vitesse de rotation pendant un
couplage actif de broche synchrone. La composante de vitesse de rotation est dduite par le
facteur de couplage et la broche asservie est additionne de manire algbrique.
Remarque
Avec le sens de rotation M3 ou M4, la vitesse de rotation S... doit galement tre nouveau
programme afin d'viter la signalisation de la programmation manquante par une alarme.
Pour plus d'informations sur la vitesse de rotation diffrentielle, se rfrer la :
Bibliographie :
Description fonctionnelle Fonctions d'extension ; broche synchrone (S3)
Notions complmentaires
542 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.5 Broche synchrone
Remarque
Dblocage de la superposition
La superposition d'une vitesse de rotation de broche ( M3 S... ou M4 S...) par couplage de
broche synchrone COUPONC est uniquement effective si la superposition est libre.
Remarque
Composante de l'acclration JERKLIMA[S<n>]
La programmation d'un accroissement ou d'une rduction de la vitesse axiale n'a
actuellement pas d'effet pour les broches.
Pour plus d'informations sur la configuration de la dynamique axiale, se rfrer la :
Bibliographie :
Description fonctionnelle Fonctions d'extension ; axes rotatifs (R2)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 543
couplages d'axes
9.5 Broche synchrone
Attendre que la condition de synchronisme dfinie dans FINE soit atteinte pour la broche
asservie S2 et celle dfinie dans COARSE pour la broche asservie S4 :
WAITC(S2,"FINE",S4,"COARSE")
Dsactivation du couplage COUPOF
COUPOF permet de prdfinir le comportement de dsactivation du couplage :
Dsactivation du couplage avec changement de bloc immdiat :
COUPOF(S2,S1) (avec indication de la broche pilote)
COUPOF(S2) (sans indication de la broche pilote)
Dsactivation du couplage aprs le passage de la position d'arrt. Le changement de
bloc a lieu aprs le passage de la position d'arrt.
COUPOF(S2,S1,150) (position d'arrt BA : 150)
COUPOF(S2,S1,150,30) (position d'arrt BA : 150, BP : 30)
Dsactivation du couplage avec arrt de la broche asservie COUPOFS
COUPOFS permet de prdfinir le comportement de dsactivation du couplage avec arrt de la
broche asservie :
Dsactivation du couplage avec arrt de la broche asservie et changement de bloc
immdiat :
COUPOFS(S2,S1) (avec indication de la broche pilote)
COUPOFS(S2) (sans indication de la broche pilote)
Dsactivation du couplage aprs le passage de la position d'arrt avec arrt de la broche
asservie. Le changement de bloc a lieu aprs le passage de la position d'arrt.
COUPOFS(S2,S1,150) (position d'arrt BA : 150)
Effacement de couplages COUPDEL
COUPDEL permet de supprimer le couplage :
COUPDEL(S2,S1) (avec indication de la broche pilote)
COUPDEL(S2) (sans indication de la broche pilote)
Remise zro des paramtres de couplage COUPRES
COUPRES active les valeurs du couplage dfinies dans les paramtres machine et des
donnes de rglage :
COUPRES(S2,S1) (avec indication de la broche pilote)
COUPRES(S2) (sans indication de la broche pilote)
Notions complmentaires
544 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.5 Broche synchrone
Variables systme
Etat de couplage courant de la broche asservie
La lecture de l'tat de couplage courant d'une broche asservie peut s'effectuer avec la
variable systme suivante :
$AA_COUP_ACT[<FS>]
Valeur Signification
0 Aucun couplage activ
4 le couplage de broches synchrones est activ
Nota
les autres valeurs de la variable systme concernent le mode de l'axe
Bibliographie :
Tables de paramtres variables systme
Dcalage angulaire courant
La lecture du dcalage angulaire courant d'une broche asservie par rapport la broche
pilote peut s'effectuer avec la variable systme suivante :
$AA_COUP_OFFS[<FS>] (valeur de consigne du dcalage angulaire)
$VA_COUP_OFFS[<FS>] (valeur effective du dcalage angulaire)
Remarque
Si le dblocage des rgulateurs est supprim alors que le couplage et le fonctionnement
en poursuite sont actifs, le dcalage de position change par rapport la valeur
initialement programme, lorsque le dblocage des rgulateurs est nouveau valid.
Dans ce cas, le dcalage de position modifi peut tre lu et ventuellement corrig dans
le programme pice.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 545
couplages d'axes
9.6 Couplage matre/esclave (MASLDEF, MASLDEL, MASLON, MASLOF, MASLOFS)
Fonction
Avant la version 6.4 du logiciel, le couplage des axes esclaves avec un axe matre ne peut
s'effectuer que lorsque les axes concerns sont l'arrt.
La version 6.5 du logiciel autorise le couplage et le dcouplage de broches en rotation et de
broches en asservissement de vitesse ainsi que la configuration dynamique.
Syntaxe
MASLON(Slv1,Slv2,..., )
MASLOF(Slv1,Slv2,..., )
MASLDEF(Slv1,Slv2,..., axe matre)
Extension pour configuration dynamique
MASLDEL(Slv1,Slv2,..., )
Extension pour configuration dynamique
MASLON(Slv1, Slv2, ..., )
Extension pour broche esclave
Remarque
L'arrt implicite du prtraitement des blocs n'est pas excut avec MASLOF/MASLOFS . Du fait
de l'absence de cet arrt du prtraitement des blocs, les variables systme $P ne
fournissent pas de valeurs actualises pour les axes esclaves jusqu'au moment de la
reprogrammation.
Signification
Gnralits
MASLON
Enclencher un couplage temporaire.
MASLOF
Sparer un couplage actif. Pour les broches, les extensions doivent tre
considres.
MASLDEF
Crer/modifier un couplage dfini par l'utilisateur via les paramtres machine ou
partir du programme pice.
MASLOFS
Supprimer le couplage de faon analogue MASLOF et freiner automatiquement
la broche esclave.
MASLDEL
Dcoupler matre/esclave et supprimer la dfinition du couplage.
Slv1,
Slv2, Axes esclaves pilots par un axe matre.
...
Axe
matre Axe pilotant les axes esclaves dfinis dans un couplage matre/esclave.
Notions complmentaires
546 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.6 Couplage matre/esclave (MASLDEF, MASLDEL, MASLON, MASLOF, MASLOFS)
Exemples
Exemple 1 : Configuration dynamique d'un couplage matre/esclave
Configuration dynamique d'un couplage matre/esclave partir du programme pice :
L'axe rsultant de la rotation d'un conteneur d'axes doit devenir l'axe matre.
Exemples
Exemple 2 : Couplage par valeur relle d'un axe esclave
Couplage par valeur relle entre un axe esclave et la mme valeur de l'axe matre l'aide de
PRESETON.
Dans le cas d'un couplage matre/esclave permanent, la valeur relle de l'axe esclave doit
tre modifie l'aide de PRESETON .
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 547
couplages d'axes
9.6 Couplage matre/esclave (MASLDEF, MASLDEL, MASLON, MASLOF, MASLOFS)
6 6
6HQVGH
URWDWLRQGX $; $; 3QWUDWLRQ
FRQWHQHXU PFDQLTXH
6 $; $; $8;
$; $;
6 6
6 6
6HQVGH
URWDWLRQGX $; $; 3QWUDWLRQ
FRQWHQHXU PFDQLTXH
6 $; $; $8;
$; $;
6 6
Bibliographie :
Manuel des fonctions d'extension, plusieurs tableaux de commande et NCU (B3), chapitre :
"Conteneur d'axes"
Notions complmentaires
548 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
couplages d'axes
9.6 Couplage matre/esclave (MASLDEF, MASLDEL, MASLON, MASLOF, MASLOFS)
Autres informations
Gnralits
MASLOF
Pour les broches en mode de rgulation de vitesse, cette instruction est
excute immdiatement. Les broches esclaves qui tournent ce
moment-l conservent leur vitesse de rotation jusqu' la
reprogrammation de celle-ci.
Extension d'une configuration dynamique
MASLDEF
Dfinition d'un couplage matre/esclave partir du programme pice.
Auparavant, la dfinition s'effectuait exclusivement au moyen de
paramtres machine.
MASLDEL
L'instruction supprime l'affectation des axes esclaves l'axe matre et
spare simultanment le couplage de manire analogue MASLOF.
Dans les paramtres machine, les dfinitions matre/esclave sont
conserves.
MASLOFS
MASLOFS peut tre utilis pour le freinage automatique des broches
esclaves lors de la sparation du couplage.
Pour les axes et les broches en mode de positionnement, la fermeture et
l'ouverture du couplage ne s'oprent qu' l'arrt.
Remarque
Pour l'axe esclave, PRESETON permet de synchroniser la valeur relle la mme valeur que
l'axe matre. Ceci exige une brve dsactivation du couplage permanent matre/esclave pour
que la valeur relle de l'axe esclave non rfrenc puisse tre mise la valeur de l'axe
matre avec un Power On. Le couplage permanent est ensuite referm.
Le rglage du paramtre machine MD37262 $MA_MS_COUPLING_ALWAYS_ACTIVE = 1
active le couplage permanent matre/esclave qui n'a pas d'effet sur les instructions du
couplage temporaire.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 549
couplages d'axes
9.6 Couplage matre/esclave (MASLDEF, MASLDEL, MASLON, MASLOF, MASLOFS)
Notions complmentaires
550 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement 10
10.1 Notions de base
Fonction
Des actions synchrones permettent d'excuter des actions simultanment aux blocs
d'usinage.
Le moment d'excution des actions peut tre dfini par des conditions. Les conditions sont
surveilles dans la priode d'appel de l'interpolateur. Les actions constituent par consquent
une raction des vnements en temps rel ; leur excution n'est pas tributaire des limites
de blocs.
Par ailleurs, une action synchrone contient des indications sur sa dure de vie et sur la
frquence d'interrogation pour les variables d'excution programmes et, par consquent,
sur la frquence d'excution des actions lancer. Ainsi, une action peut tre lance une fois
seulement ou bien de faon cyclique (toujours dans la priode d'appel de l'interpolateur).
Applications possibles
3URJUDPPHSLFH
3USDUDWLRQGHVEORFV
%ORFVSUWUDLWV
&RQGLWLRQV $FWLRQV
(QWUHV1&. 6RUWLHV1&.
&RQVLJQHV 3RVLWLRQV
9DOHXUVUHOOHV 9LWHVVHV
7UDLWHPHQWHQWHPSVUHO
&RHIIGH $FWLRQVV\QFKURQHV
SRO\QPH /RJLTXHFRPELQDWRLUH )RQFWLRQV&1
3DUDPWUHV 0HVXUH
0PHQWRV DFWLYFRXSODJH
9DOHXUV6HUYR JQUHUIRQFW0+
0RGFRHIISRO\QPH
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 551
Actions synchrones au dplacement
10.1 Notions de base
Programmation
Une action synchrone occupe un bloc elle seule et agit partir du prochain bloc
excutable comportant une fonction machine (par exemple un dplacement avec G0, G1, G2,
G3).
Les actions synchrones sont composes au maximum de 5 lments d'instruction avec des
tches diffrentes :
DFWLRQVF\FWHFKQ
&RGH*RSWSRXU
$FWLRQ
&RGH*RSWS
1XPUR,'b 0RWFOb
&RQGLWLRQ '2
FRQGLWLRQ
'RPDLQHGHYDOLGLW )UTXHQFH
G
LQWHUURJDWLRQ &\FOH
WHFKQRORJLTXH
Syntaxe :
DO <action1> <action2>
<MOT CLE> <condition> DO <action1> <action2>
ID=<n> <MOT CLE> <condition> DO <action1> <action2>
IDS=<n> <MOT CLE> <condition> DO <action1> <action2>
Signification :
DO
Instruction de dclenchement de la ou des actions programmes
Prise d'effet uniquement si la <condition> est remplie (si celle-ci est
programme).
Voir "Actions"
<Action1>
<action2> Action(s) lancer
Exemples :
Affectation de variable
Lancement de cycle technologique
<MOT CLE>
Le mot cl (WHEN, WHENEVER, FROM ou EVERY) dfinit le contrle cyclique de la
<condition> d'une action synchrone.
Voir "Contrle cyclique de la condition"
<Condition>
Logique combinatoire pour variables d'excution
La condition est contrle dans la priode d'appel de l'interpolateur.
ID=<n>
Numro d'identification
ou
IDS=<n> Le numro d'identification dfinit le domaine de validit et la position au sein
de la squence d'excution.
Voir "Domaine de validit et ordre d'excution"
Notions complmentaires
552 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.1 Notions de base
Instruction Signification
CANCEL(<n>)
Effacer des actions synchrones
Voir "Effacer des actions synchrones"
LOCK(<n>)
Bloquer des actions synchrones
UNLOCK(<n>)
Dbloquer des actions synchrones
RESET
Remettre le cycle technologique zro
Pour LOCK, UNLOCK et RESET :
voir "Bloquer, dbloquer, remettre zro"
Exemple
Fonction
Domaine de validit
Le domaine de validit d'une action synchrone est dfini par l'identificateur ID ou IDS :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 553
Actions synchrones au dplacement
10.1 Notions de base
Ordre d'excution
Les actions synchrones effet modal statique sont traites dans l'ordre de leur numro ID
ou IDS (ID=<n> ou IDS=<n>) dans la priode d'appel de l'interpolateur.
Les actions synchrones effet non modal (sans numro ID) sont traites dans l'ordre de
programmation, aprs excution des actions synchrones effet modal.
Remarque
Des paramtres machines permettent de protger des actions synchrones effet modal face
des modifications ou des suppressions ( constructeur de la machine-outil).
Programmation
Syntaxe Signification
Sans ID modal L'action synchrone est uniquement active en mode automatique.
Elle est valide uniquement pour le bloc excutable suivant (bloc
avec instruction de dplacement ou autre action machine),
autrement dit elle est effet non modal.
Exemple :
WHEN $A_IN[3]==TRUE DO $A_OUTA[4]=10
ID=<n> ...
L'action synchrone agit dans les blocs qui suivent et elle a donc un
effet modal. Elle peut tre dsactive par CANCEL(<n>) ou par la
programmation d'une autre action synchrone sous le mme numro
ID.
Les actions synchrones actives dans le bloc M30 retardent la fin du
programme.
Les actions synchrones avec ID sont uniquement actives en mode
automatique.
Plage de valeurs de <n> : 1 ... 255
Exemple :
ID=2 EVERY $A_IN[1]==1 DO POS[X]=0
IDS=<n>
Les actions synchrones statiques agissent de faon modale dans
tous les modes de fonctionnement. Elles restent actives au-del de
la fin du programme et peuvent tre directement actives aprs
Power On avec un ASUP. Il est ainsi possible d'activer des actions
qui doivent tre excutes dans la CN indpendamment du mode
de fonctionnement slectionn.
Plage de valeurs de <n> : 1 ... 255
Exemple :
IDS=1 EVERY $A_IN[1]==1 DO POS[X]=100
Notions complmentaires
554 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.1 Notions de base
Fonction
Un mot-cl dfinit le contrle cyclique de la condition d'une action synchrone. Si aucun mot-
cl n'est programm, les actions de l'action synchrone sont excutes dans chaque priode
d'appel de l'interpolateur.
Mots-cls
pas de mot-cl L'excution de l'action n'est lie aucune condition. L'action est
excute de faon cyclique dans la priode d'appel de
l'interpolateur.
WHEN
La condition est interroge dans chaque priode d'appel de
l'interpolateur, jusqu' ce qu'elle soit remplie une premire fois ;
et l'action s'y rapportent est alors excute une fois.
WHENEVER
La condition est vrifie dans chaque priode d'appel de
l'interpolateur de manire cyclique. L'action est excute dans
chaque priode d'appel de l'interpolateur, aussi longtemps que
la condition est remplie.
FROM
La condition est contrle dans chaque priode d'appel de
l'interpolateur jusqu' ce qu'elle soit remplie une premire fois.
L'action est alors excute tant que l'action synchrone est
active, c'est--dire mme si la condition n'est plus remplie.
EVERY
La condition est interroge dans chaque priode d'appel de
l'interpolateur. L'action est toujours excute une seule fois,
quand la condition est remplie.
Commande par fronts :
L'action sera excute une nouvelle fois ds que la condition
passe de l'tat FALSE l'tat TRUE.
Variables d'excution
Les variables utilises sont values dans la priode d'appel de l'interpolateur. Les variables
d'excution dans les actions synchrones ne dclenchent pas d'arrt du prtraitement.
Evaluation :
Quand des variables d'excution apparaissent dans un programme pice (par exemple une
valeur relle, une position d'une entre ou sortie TOR, etc.), le prtraitement des blocs est
stopp jusqu' ce que le bloc prcdent soit entirement trait et que les valeurs des
variables d'excution soient connues.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 555
Actions synchrones au dplacement
10.1 Notions de base
Exemples
Exemple 1 : Sans mot cl
Exemple 2 : WHENEVER
Exemple 3 : EVERY
Autres informations
Condition
La condition se prsente toujours sous la forme d'une expression logique pouvant tre
structure de faon quelconque par des oprateurs boolens. Les expressions boolennes
doivent toujours tre indiques entre parenthses.
La condition est contrle dans la priode d'appel de l'interpolateur.
Il est possible de programmer un code G avant la condition. Ceci vous permet de dfinir des
rglages particuliers pour le traitement de la condition et l'action/le cycle technologique
excuter, indpendamment des rglages en vigueur dans le programme pice. Le
dcouplage des actions synchrones de l'environnement du programme est ncessaire, car
les actions synchrones doivent excuter leurs actions des instants quelconques dans un
tat initial dfini lorsque des conditions de dclenchement sont remplies.
Applications
Dtermination du systme d'units pour le traitement de la condition et l'action l'aide des
codes G G70, G71, G700, G710.
Un code G indiqu dans la partie "condition" est valable pour le traitement de la condition et
pour l'action, si aucun code G n'est indiqu dans la partie "action".
Un seul code G du groupe de codes G peut tre programm dans une partie "condition".
Notions complmentaires
556 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.1 Notions de base
Conditions possibles
Comparaison de variables d'excution (E/S analogiques/TOR par exemple)
Combinaison logique entre des rsultats de comparaisons
Calcul d'expressions temps rel
Temporisation/Distance du dbut du bloc
Distance de la fin du bloc
Valeurs de mesure, rsultats de mesure
Valeurs Servo
Vitesses, tat des axes
Fonction
Dans des actions synchrones, vous pouvez programmer une ou plusieurs actions. Toutes
les actions programmes dans un bloc deviennent actives dans la mme priode d'appel de
l'interpolateur.
Syntaxe
DO <action1> <action2> ...
Signification
DO
Dclenche, lorsque la condition est remplie, une action ou un cycle
technologique.
<Action>
Action dclenche lorsque la condition est remplie, comme par exemple
affecter une valeur une variable, activer un couplage d'axe, mettre 1
des sorties du noyau CN, sortir les fonctions M-, S- et H, imposer le code
G programm, ...
Les codes G peuvent tre programms dans la partie "actions/cycles technologiques" d'une
action synchrone. Ce code G est valable pour toutes les actions et tous les cycles
technologiques du bloc et remplace le code G ventuellement indiqu dans la partie
"condition". Si la partie "action" comporte des cycles technologiques, ce code G s'applique,
galement lorsque les cycles technologiques sont termins, de faon modale pour toutes les
actions suivantes jusqu'au prochain code G.
Un seul code G du groupe de codes G (G70, G71, G700, G710) peut tre programm dans la
partie "action".
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 557
Actions synchrones au dplacement
10.2 Oprateurs pour les conditions et actions
Exemple
Combinaison des oprations arithmtiques
La multiplication est prioritaire sur l'addition, les parenthses sont admises. Les oprateurs
DIV et MOD sont galement admis pour les donnes de type REAL
Programmation Commentaire
DO $AC_PARAM[3] = $A_INA[1]-$AA_IM[Z1] ; ; Soustraction de deux
;Variables d'excution
WHENEVER $AA_IM[x2] < $AA_IM[x1]-1.9 DO ; ;Soustraction d'une constante de
$A_OUT[5] = 1 variables
DO $AC_PARAM[3] = $INA[1]-4*SIN(45.7 ; Expression constante, calcule
$P_EP[Y])*R4 dans le prtraitement des blocs
Fonctions mathmatiques
Programmation Commentaire
DO $AC_PARAM[3] = COS($AC_PARAM[1]) ;
;
Notions complmentaires
558 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.2 Oprateurs pour les conditions et actions
Programmation Commentaire
ID=1 WHENEVER ($AA_IM[Y]>30) AND ; Slection d'une fentre de
($AA_IM[Y]<40) positionnement
DO $AA_OVR[S1]=80
ID=67 DO $A_OUT[1]=$A_IN[2] XOR $AN_MARKER[1] ; Evaluation de 2 signaux boolens
ID=89 DO $A_OUT[4]=$A_IN[1] OR ($AA_IM[Y]>10) ; Sortie du rsultat d'une
comparaison
Programmation Commentaire
WHENDO $AC_PARAM[$AC_MARKER[1]] = 3 ;
N'est pas admis ;
$AC_PARAM[1] = $P_EP[$AC_MARKER] ;
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 559
Actions synchrones au dplacement
10.3 Variables d'excution pour actions synchrones
Fonction
Des variables systme permettent de lire et d'crire des donnes de la CN. Les variables
systme se distinguent entre variables de prtraitement et variables d'excution. Les
variables de prtraitement sont toujours excutes lors du prtraitement. Les variables
d'excution dterminent systmatiquement leurs valeurs par rapport l'tat d'excution
courant.
Dsignation
Le nom des variables systme commence toujours par le caractre "$" :
Variables de prtraitement :
$M... Paramtres machine
$S... Donnes de rglage, zones de protection
$T... Paramtres de gestion des outils
$P... Valeurs programmes, donnes de prtraitement
$C... Variables des cycles enveloppes ISO
$O... Donnes optionnelles
R ... Paramtres R
Variables d'excution :
$$A... Donnes d'excution courantes
$$V... Donnes servo
$R... Paramtres R
Notions complmentaires
560 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.3 Variables d'excution pour actions synchrones
Types de donnes
Les variables d'excution peuvent possder les types de donnes suivants :
Tableaux de variables
Les variables systme peuvent tre cres sous forme de tableaux de 1 3 dimensions.
Les types de donnes suivants sont pris en charge : BOOL, CHAR, INT, REAL, STRING,
AXIS
Le type de donnes des indices peut tre INT ou AXIS en combinaison quelconque.
Les variables STRING peuvent tre cres uniquement en 2 dimensions.
Exemples de dfinitions de tableau :
DEF BOOL $AA_NEWVAR[x,y,2]
DEF CHAR $AC_NEWVAR[2,2,2]
DEF INT $AC_NEWVAR[2,10,3]
DEF REAL $AA_VECTOR[x,y,z]
DEF STRING $AC_NEWSTRING[3,3]
DEF AXIS $AA_NEWAX[x,3,y]
Remarque
L'affichage de variables systme trois dimensions n'est soumis aucune restriction s'il
existe une variable OPI pour la variable systme.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 561
Actions synchrones au dplacement
10.3 Variables d'excution pour actions synchrones
Fonction
Lors de lectures d'affectations et de transmissions de paramtres, des variables de types de
donnes diffrents peuvent tre assigns ou transmis.
La conversion de type implicite dclenche une conversion interne de type de valeurs.
* En cas de conversion du type REAL en type INT, une partie dcimale >= 0,5 est
arrondie par excs ; dans le cas contraire, elle est arrondie par dfaut (voir fonction
ROUND).
En cas de dpassements de valeur, une alarme est dclenche.
1) La valeur <> 0 quivaut TRUE, la valeur == 0 quivaut FALSE
Rsultats
Notions complmentaires
562 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.3 Variables d'excution pour actions synchrones
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 563
Actions synchrones au dplacement
10.3 Variables d'excution pour actions synchrones
L'indice <x> indique le bloc de donnes (droits d'accs), la valeur <nombre>, le nombre de
variables GUD action synchrone du type de donnes correspondant (REAL, INT, ...). Une
variable de tableau unidimensionnelle est ensuite cre dans le bloc de donnes respectif
pour chaque type de donnes, avec le schma de nom suivant : SYG_<type de
donne><droit d'accs>[<indice>] :
Proprits
Les variables action synchrone prsentent les proprits suivantes :
La lecture et l'criture des variables GUD action synchrone sont possibles dans les
actions synchrones et les programmes pice / cycles
L'accs aux variables GUD action synchrone peut tre ralis avec BTSS
L'affichage des variables GUD action synchrone s'effectue dans l'interface utilisateur de
l'IHM, dans la zone de commande "Paramtres"
Les variables GUD action synchrone peuvent tre utilises sur l'IHM, dans la vue des
variables et dans le journal des variables de l'assistant
La dimension de tableau pour les variables GUD action synchrone de type STRING est
dfinie 32 (31 caractres + \0).
Mme si aucun fichier de dfinition n'a t cr manuellement pour les donnes
utilisateur globales (GUD), la lecture des variables GUD action synchrone dfinies dans
des paramtres machine est possible dans le bloc GUD correspondant de l'IHM.
IMPORTANT
La dfinition de variables utilisateur (GUD, PUD, LUD) portant le mme nom que des
variables GUD action synchrone (DEF ... SYG_xy) est uniquement possible si aucune
variable GUD action synchrone de mme nom n'a t paramtre (MD18660 -
MD18665). Ces variables GUD dfinies par l'utilisateur ne peuvent pas tre utilises
dans des actions synchrones.
Notions complmentaires
564 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.3 Variables d'excution pour actions synchrones
Droits d'accs
Les droits d'accs dfinis dans un fichier de dfinition GUD restent valables et s'appliquent
exclusivement aux variable GUD dfinies dans ce fichier de dfinition GUD.
Comportement la suppression
Lorsque le contenu d'un fichier de dfinition GUD donn est ractiv, l'ancien bloc de
donnes GUD est d'abord supprim dans le systme de fichier actif. Les variables GUD
action synchrone configures sont galement rinitialises. Cette procdure est galement
possible sur l'IHM, dans le groupe fonctionnel "Services" > "Dfinir et activer des donnes
utilisateur (GUD)".
Fonction
Les variables ou les paramtres de type AXIS qui n'ont pas t initialiss avec une valeur
peuvent tre pourvus de descripteurs d'axe par dfaut dfinis. Les variables d'axes non
dfinies sont galement initialises avec cette valeur par dfaut.
Des noms d'axe valables non initialiss sont reconnus par une interrogation de la variable
"NO_AXIS" dans les actions synchrones. Le descripteur d'axe par dfaut configur par un
paramtre machine est affect ces descripteurs d'axe non initialiss.
Constructeur de la machine-outil
Au moins un descripteur d'axe valable existant doit tre dfini et prrgl par des
paramtres machine. Mais il est galement possible que tous les descripteurs d'axes
valables existants soient prrgls. Tenez compte des indications du constructeur de la
machine.
Remarque
Les variables nouvellement cres se voient maintenant affecter automatiquement lors de la
dfinition la valeur sauvegarde dans le paramtre machine pour les noms d'axe par dfaut.
Pour d'autres informations sur une dfinition valable par paramtre machine, voir :
Bibliographie :
/FBSY/ Description fonctionnelle Actions synchrones
Syntaxe
PROC UP(AXIS PAR1=NO_AXIS, AXIS PAR2=NO_AXIS)
IF PAR1 <>NO_AXIS...
Signification
PROC Dfinition de sous-programme
SP Nom du sous-programme pour son identification
PARn Paramtre n
NO_AXIS Initialisation du paramtre formel avec descripteur d'axe par dfaut
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 565
Actions synchrones au dplacement
10.3 Variables d'excution pour actions synchrones
Code de programme
DEF AXIS AXVAR
UP( , AXVAR)
Fonction
La variable de tableau $AC_MARKER[n] peut tre lue et crite dans des actions synchrones.
Ces variables peuvent se trouver soit dans la mmoire du systme de fichier passif, soit
dans celle du systme de fichier actif.
Code de programme
WHEN ... DO $AC_MARKER[0] = 2
WHEN ... DO $AC_MARKER[0] = 3
WHENEVER $AC_MARKER[0] == 3 DO $AC_OVR=50
Fonction
Les paramtres d'actions synchrones $AC_PARAM[n] servent aux calculs et comme
mmoires tampons dans des actions synchrones. Ces variables peuvent se trouver soit
dans la mmoire du systme de fichier passif, soit dans celle du systme de fichier actif.
Notions complmentaires
566 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.3 Variables d'excution pour actions synchrones
$AC_PARAM[n]
Variable de calcul pour les actions synchrones au
dplacement (REAL)
$MC_MM_NUM_AC_PARAM
Paramtre machine pour le paramtrage du nombre de
paramtres pour des actions synchrones au dplacement
jusqu' 20000 maximum.
n
Indice de tableau du paramtre 0n
Code de programme
$AC_PARAM[0]=1.5
$AC_MARKER[0]=1
ID=1 WHEN $AA_IW[X]>100 DO $AC_PARAM[1]=$AA_IW[X]
ID=2 WHEN $AA_IW[X]>100 DO $AC_MARKER[1]=$AC_MARKER[2]
Fonction
Cette variable de tableau statique sert pour les calculs dans le programme pice et les
actions synchrones.
Syntaxe
Programmation dans le programme pice :
REAL R[n]
REAL Rn
Programmation dans des actions synchrones :
REAL $R[n]
REAL $Rn
Paramtre de calcul
L'utilisation de paramtres de calcul permet de :
la mise en mmoire des valeurs qui doivent tre sauvegardes aprs la fin d'un
programme, aprs un reset CN ou aprs un Power On.
Affichage de valeurs mmorises dans l'image des paramtres R.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 567
Actions synchrones au dplacement
10.3 Variables d'excution pour actions synchrones
Exemples
Code de programme
SYG_AS[2]=X
SYG_IS[1]=1
WHEN $AA_IM[SGY_AS[2]]>10 DO $R3=$AA_EG_DENOM[SYG_AS[1]], SYG_AS[2]]
WHEN $AA_IM[SGY_AS[2]]>12 DO $AA_SCTRACE[SYG_AS[2]]=1
SYG_AS[1]=X
SYG_IS[0]=1
WHEN $AA_IM[SGY_AS[1]]>10 DO $R3=$$MA_POSCTRL_GAIN[SYG_IS[0]],SYG_AS[1]]
WHEN $AA_IM[SGY_AS[1]]>10 DO $R3=$$MA_POSCTRL_GAIN[SYG_AS[1]]
WHEN $AA_IM[SGY_AS[1]]>15 DO $$MA_POSCTRL_GAIN[SYG_AS[0]], SYG_AS[1]]=$R3
Fonction
La lecture et l'criture des paramtres machine et des donnes de rglage CN sont
possibles depuis des actions synchrones. Lors de la lecture et de l'criture d'lments de
tableau de paramtres machine, un indice peut tre omis la programmation. Si cela a lieu
dans un programme pice, alors, la lecture, le premier lment de tableau est lu et,
l'criture, tous les lments du tableau sont dcrits avec la valeur.
Dans des actions synchrones, seul le premier lment est lu et crit dans ce cas.
Dfinition
PM, SD avec
$: Lecture de la valeur au moment de l'interprtation des actions synchrones
$$: Lecture de la valeur dans l'excution
Notions complmentaires
568 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.3 Variables d'excution pour actions synchrones
Exemple
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 569
Actions synchrones au dplacement
10.3 Variables d'excution pour actions synchrones
Fonction
La variable systme $AC_TIMER[n] permet de lancer des actions aprs coulement d'un
temps d'attente dfini.
$AC_TIMER[n]
Temporisateur spcifique au canal de type de donnes REAL
s
Unit en secondes
n
Indice de la variable de temporisation
Rgler la temporisation
L'incrmentation d'une variable de temporisation dmarre avec l'affectation d'une valeur :
$AC_TIMER[n] = value
Exemple
Sortie d'une valeur relle sur sortie analogique 500 ms aprs dtection d'une entre
numrique :
Notions complmentaires
570 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.3 Variables d'excution pour actions synchrones
Fonction
Pour mmoriser des suites de donnes connexes, vous avez 10 variables FIFO disposition
(mmoire dfilement).
Type de donne : REAL
Application :
Mesure cyclique
Usinage en srie
Chaque lment est accessible en lecture et en criture.
Variable FIFO
Le nombre de variables FIFO disponibles est dfini par le paramtre machine
MD28260 $MC_NUM_AC_FIFO.
Le nombre de valeurs pouvant tre crites dans une variable FIFO est dfini par le
paramtre machine MD28264 $MC_LEN_AC_FIFO. Les variables FIFO ont toutes la mme
longueur.
La somme de tous les lments FIFO n'est calcule que lorsque
MD28266 $MC_MODE_AC_FIFO Bit0 = 1.
Les indices 0 5 ont une signification particulire :
Indice Signification
0 En criture : La nouvelle valeur est range dans FIFO.
En lecture : L'lment le plus ancien est lu et supprim du FIFO.
1 Accs l'lment le plus ancien qui est mmoris
2 Accs l'lment le plus rcent qui est mmoris
3 Somme de tous les lments FIFO
4 Nombre d'lments disponibles dans FIFO
Chaque lment FIFO est accessible en lecture et en criture. La remise zro
des variables FIFO s'effectue par la remise zro du nombre d'lments, par
exemple pour la premire variable FIFO : $AC_FIFO1[4]=0
5 Indice d'criture relatif au dbut du FIFO
6 nmax Accs au nime lment FIFO
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 571
Actions synchrones au dplacement
10.3 Variables d'excution pour actions synchrones
D
E
F
O G
Notions complmentaires
572 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.3 Variables d'excution pour actions synchrones
Fonction
En ce qui concerne les actions synchrones, les variables systme suivantes sont disponibles
pour obtenir des informations sur un bloc courant en cours d'excution :
$AC_BLOCKTYPE
$AC_BLOCKTYPEINFO
$AC_SPLITBLOCK
$AC_BLOCKTYPE $AC_BLOCKTYPEINFO
Valeur : Valeur :
0 diffrente de 0 T H Z E Signification :
Bloc Bloc intermdiaire Dclenchement de bloc intermdiaire :
d'origine
1 1 0 0 0 Bloc gnr en interne, aucune autre information
2 2 0 0 1 Chanfreins/arrondis : complte
2 2 0 0 2 Chanfreins/arrondis : Cercle
Correction d'outil :
4 4 0 0 1 bloc d'accostage aprs STOPRE
4 4 0 0 2 Blocs de liaison dans le point d'intersection non
trouv
4 4 0 0 3 Cercle sous forme de point dans les angles
rentrants
(uniquement dans TRACYL)
4 4 0 0 4 Arc de contournement (ou section conique) dans
les angles saillants
4 4 0 0 5 Blocs d'accostage dans l'inhibition de la
correction
4 4 0 0 6 Blocs d'accostage dans l'activation rpte de la
correction de rayon d'outil
4 4 0 0 7 Ddoublement du bloc en raison d'une courbure
trop forte
4 4 0 0 8 Blocs de compensation pour le fraisage en
bout 3D (vecteur outil || vecteur surface)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 573
Actions synchrones au dplacement
10.3 Variables d'excution pour actions synchrones
$AC_BLOCKTYPE $AC_BLOCKTYPEINFO
Valeur : Valeur :
0 diffrente de 0 T H Z E Signification :
Bloc Bloc intermdiaire Dclenchement de bloc intermdiaire :
d'origine
Arrondissement via :
5 5 0 0 1 G641
5 5 0 0 2 G642
5 5 0 0 3 G643
5 5 0 0 4 G644
Segmentation du dplacement :
7 7 0 0 1 la segmentation du dplacement est programme
sans que le poinonnage ou le grignotage ne soit
actif
7 7 0 0 2 la segmentation du dplacement est programme
avec un poinonnage ou un grignotage actif
7 7 0 0 3 la segmentation du dplacement est
automatiquement gnre en interne
Cycles de compilation :
8 ID de l'application ID de l'application des cycles de compilation
ayant cr le bloc
Remarque
Dans la position des milliers (T), $AC_BLOCKTYPEINFO contient toujours galement la
valeur du type de bloc pour le cas o il existe un bloc intermdiaire. Si la valeur dans
$AC_BLOCKTYPE est diffrente de 0, la position des milliers n'est pas reprise.
Notions complmentaires
574 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.3 Variables d'excution pour actions synchrones
$AC_SPLITBLOCK
Valeur : Signification :
0 Bloc programm non modifi (un bloc gnr par le compacteur est galement trait en
tant que bloc programm)
1 Il existe un bloc gnr en interne ou un bloc d'origine tronqu
3 Le dernier bloc se trouve dans une chane de blocs gnrs en interne ou de blocs
d'origine tronqus
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 575
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Notions complmentaires
576 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 577
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Notions complmentaires
578 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Instant de sortie
La sortie des fonctions auxiliaires s'effectue dans l'action synchrone directement au moment
de la sortie de l'action. L'instant de sortie de la fonction auxiliaire, rang dans un paramtre
machine, { n'est pas pris en compte.
Le moment de la sortie est dtermin lorsque la condition est remplie.
Exemple :
Enclencher l'arrosage une position d'axe bien dfinie :
WHEN $AA_IM[X]>=15 DO M07 POS[X]=20 FA[X]=250
Mots-cls autoriss dans les actions synchrones effet non modal (sans ID modal)
L'utilisation de fonctions auxiliaires dans des actions synchrones effet non modal (sans ID
modal) est uniquement possible avec les mots-cls WHEN ou EVERY.
Remarque
Les fonctions auxiliaires suivantes ne sont pas autorises dans une action synchrone :
M0, M1, M2, M17, M30 : Arrt/fin du programme (M2, M17, M30 possibles dans le cycle
technologique)
M6 ou fonctions M rgles par le biais de paramtres machine pour le changement d'outil
Exemple
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 579
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Lorsque la condition est remplie, RDISABLE arrte la poursuite du traitement des blocs du
programme principal. Les actions synchrones au dplacement, qui sont programmes,
continuent tre traites et les blocs suivants continuent tre prtraits.
Dans le contournage, au dbut d'un bloc avec RDISABLE, il y a toujours dclenchement
d'un arrt prcis dans des actions synchrones, que RDISABLE soit actif ou non.
Exemple
Lancer un programme dans la priode d'appel de l'interpolateur, en fonction des entres
externes.
Notions complmentaires
580 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Quand le prtraitement de blocs a t arrt par programmation explicite de STOPRE ou
par activation implicite par le biais d'une action synchrone active, l'instruction STOPREOF
annule cet arrt du prtraitement des blocs aprs le prochain bloc d'usinage et ce, ds que
la condition est remplie.
Remarque
STOPREOF doit tre programm avec le mot-cl WHEN et de faon non modale (sans
numro ID).
Exemple
Branchement rapide dans le programme en fin de bloc.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 581
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Un effacement de la distance restant parcourir peut tre dclench pour la trajectoire et les
axes indiqus, en fonction d'une condition.
A disposition :
Effacement rapide de la distance restant parcourir, avec prparation
Effacement de la distance restant parcourir sans prparation
L'effacement de la distance restant parcourir avec prparation, programm avec DELDTG,
permet de ragir trs rapidement l'vnement dclencheur. Il est utilis par consquent
dans des applications critiques en temps, par exemple quand :
le temps entre l'effacement de la distance restant parcourir et le lancement du bloc
suivant doit tre extrmement court.
la condition ncessaire pour l'effacement de la distance restant parcourir est remplie
avec une trs forte probabilit.
Remarque
Le descripteur d'axe entre crochet suivant le DELDTG n'est valable que pour un axe de
positionnement.
Syntaxe
Effacement de la distance restant parcourir pour la trajectoire
DO DELDTG
N110 G01 X
IF $AA_DELT>50
Notions complmentaires
582 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Autres informations
A la fin du bloc de dplacement, dans lequel on a dclench un effacement de la distance
restant parcourir avec prparation, un arrt du prtraitement des blocs est activ de faon
implicite.
Ainsi, le dplacement d'interpolation et les dplacements d'axes de positionnement sont
interrompus ou stopps par un effacement rapide de la distance parcourir la fin du bloc.
Remarque
Prparation de l'effacement de la distance restant parcourir :
ne peut pas tre appliqu quand la correction du rayon d'outil est active.
ne doit tre programm que dans des actions synchrones non modales (sans numro
ID).
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 583
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Avec FCTDEF, vous pouvez dfinir des polynmes du 3e degr de la forme
y=a0+a1x+a2x2+a3x3 . Ces polynmes sont utiliss par la correction d'outil en ligne FTOC et
par la fonction d'valuation SYNFCT.
Syntaxe
FCTDEF(n de polynme,LLIMIT,ULIMIT,a0,a1,a2,a3)
Signification
N de polynme
Numro du polynme du 3e degr
LLIMIT
limite infrieure de la valeur de la fonction
ULIMIT
limite suprieure de la valeur de la fonction
a0, a1, a2, a3
coefficients du polynme
$AC_FCTLL[n]
limite infrieure de la valeur de la fonction
$AC_FCTUL[n]
limite suprieure de la valeur de la fonction
$AC_FCT0[n]
a0
$AC_FCT1[n]
a1
$AC_FCT2[n]
a2
$AC_FCT3[n]
a3
Remarque
Ecrire des variables systme
Les variables systme peuvent tre crites partir du programme pice ou d'une action
synchrone. Pour l'criture partir du programme pice, il convient de programmer
STOPRE pour faire la synchronisation avec les blocs.
Les variables systme $AC_FCTLL[n], $AC_FCTUL[n], $AC_FCT0[n] $AC_FCTn[n] sont
modifiables partir des actions synchrones
Dans le cas d'une criture partir d'actions synchrones, les coefficients du polynme et les
valeurs limites de la fonction sont actifs immdiatement.
Notions complmentaires
584 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
I;
/LPLWHVXSULHXUH
D ;
/LPLWHLQIULHXUH
D
)LQGHEORF
$&B)&782 >@
(; $&B)&7>@
'EXWGHEORF
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 585
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Remarque
L'utilisation du polynme dfini plus haut se fait avec SYNFCT.
Fonction
SYNFCT calcule la valeur de sortie d'un polynme de 3e degr pondr avec les variables
d'entre. Le rsultat figure dans les variables de sortie et est limit par le haut et par le bas.
On utilise la fonction d'valuation
pour la rgulation AC (Adaptive Control),
pour le pilotage de la puissance d'un laser,
pour le forage de positions.
Syntaxe
SYNFCT(n polynme, sortie variable d'excution, entre variable d'excution)
Notions complmentaires
586 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Signification
Comme variables de sortie, il est possible de choisir des variables qui sont prises en
considration
avec un effet correcteur additif,
avec un effet correcteur multiplicatif,
comme dcalage de position,
directement,
dans l'opration d'usinage.
DO SYNFCT
Activation de la fonction d'valuation
N de polynme
Polynme dfini avec FCTDEF (voir "Dfinition des
polynmes")
Sortie de variable
d'excution Ecrire une variable d'excution
Entre de variable
d'excution Lire une variable d'excution
)
PPPQ
>@
/LPLWHVXSULHXUH
,
>@
$
/LPLWHLQIULHXUH
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 587
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Notions complmentaires
588 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
295
>@
/LPLWHVXSULHXUH
/LPLWHLQIULHXUH
/RDG
>@
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 589
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Remarque
Cette fonction n'est pas disponible pour SINUMERIK 828D.
Fonction
Le calcul intgrant des valeurs d'cartement s'effectue avec un contrle de zone limite :
$AA_OFF_MODE = 1
= 5JXODWLRQGHGLVWDQFH
PRQRGLPHQVLRQQHOOH
&DSWHXUGH
GLVWDQFH
SDUH[WOH
PP
;
9WHVVHIRUFH
/LPLWHVXSULHXUH
PPLQ
9 9
9
/LPLWHLQIULHXUH
IMPORTANT
Le gain de la boucle de rgulation de niveau suprieur dpend du rglage de la priode
d'appel de l'interpolateur.
Aide : lecture du paramtre machine de la priode d'appel de l'interpolateur et prise en
compte dans le calcul.
Notions complmentaires
590 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Remarque
Limitation de la vitesse de l'interpolateur forc par le paramtre machine MD 32020:
JOG_VELO pour une priode d'appel de l'interpolateur gale 12 ms.
Formule de vitesse :
PP P
P9 9
PV PLQ
Exemple
Sous-programme "AON" : Rgulation d'cartement active
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 591
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Autres informations
Dcalage de position dans le systme de coordonnes de base
La variable systme $AA_OFF[axe] permet de superposer un dplacement chaque axe du
canal. Ce dplacement forc agit comme un dcalage de position dans le systme de
coordonnes de base.
Le dcalage de position ainsi programm est immdiatement appliqu sur l'axe en question,
que cet axe soit programm pour tre dplac ou non.
Limiter la sortie de variable d'excution :
Il est possible de limiter la valeur de correction absolue (sortie de variable d'excution) la
valeur enregistre dans la donne de rglage SD43350 $SA_AA_OFF_LIMIT.
Le type de superposition de l'cartement est dfini dans le paramtre machine MD36750
$MA_AA_OFF_MODE.
Valeur Signification
0 Evaluation proportionnelle
1 Evaluation intgrante
La variable systme $AA_OFF_LIMIT[axe] permet de savoir, en fonction de la direction, si la
valeur de correction se situe dans la zone limite. Cette variable systme peut tre interroge
depuis les actions synchrones et, par exemple, arrter un axe ou dclencher une alarme
lorsqu'une valeur limite est atteinte.
Notions complmentaires
592 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
FTOC permet un dplacement forc pour un axe gomtrique, selon un polynme programm
avec FCTDEF et en fonction d'une valeur de rfrence qui peut tre p. ex. la valeur relle d'un
axe.
Le coefficient a0 de la dfinition de fonction FCTDEF(...) est valu avec FTOC. Les limites
suprieure et infrieure dpendent de a0.
FTOC permet de programmer des corrections d'outil modales en ligne ou des rgulations
d'cartement comme actions synchrones.
On utilise cette fonction pour la rectification de la pice et dressage de la meule dans le
mme canal ou dans des canaux diffrents (canal d'usinage et de dressage).
Les conditions marginales et les dfinitions pour le dressage des meules sont valables pour
FTOC de manire analogue la correction d'outil en ligne avec PUTFTOCF (voir "Correction
d'outil en ligne (PUTFTOCF, FCTDEF, PUTFTOC, FTOCON, FTOCOF) (Page 404)").
Syntaxe
FCTDEF(<fonction>,<LLimit>,<ULimit>,<a0>,<a1>,<a2>,<a3>)
FTOC(<fonction>,<valeur de rfrence>,<paramtre d'outil>,<canal>,<broche>)
...
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 593
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Remarque
FTOCON doit tre activ dans le canal de destination.
Notions complmentaires
594 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Exemple
Il s'agit de corriger la longueur de la meule active mise en oeuvre.
<
5OHGHGUHVVDJH
9DOHXUGH
GUHVVDJHb
0HXOH
/RQJXHXU
FRUULJHU
3LFH
;
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 595
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Avec la variable systme $AA_TOFF[ ], les longueurs d'outil effectives peuvent tre
imposes en temps rel dans les trois directions de l'outil.
Les trois descripteurs d'axes gomtriques servent d'indices. De cette faon, le nombre des
directions de correction actives est dtermin par les axes gomtriques qui sont actifs au
mme moment.
Toutes les corrections peuvent tre actives simultanment.
Syntaxe
N... TRAORI
N... TOFFON(X,<valeur offset>)
N... WHEN TRUE DO $AA_TOFF[X]
N... TOFFON(Y,<valeur offset>)
N... WHEN TRUE DO $AA_TOFF[Y]
N... TOFFON(Z,<valeur offset>)
N... WHEN TRUE DO $AA_TOFF[Z]
Signification
Notions complmentaires
596 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Exemples
Exemple 1 : Activation de la correction de longueur d'outil
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 597
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Vous pouvez positionner des axes de faon totalement asynchrones au programme pice,
l'aide d'actions synchrones. La programmation d'axes de positionnement dans des actions
synchrones est recommande pour les processus cycliques ou ceux pilots par
vnements. Les axes programms dans des actions synchrones s'appellent axes de
commande.
Programmation
Bibliographie :
/PG/ Manuel de programmation Notions de base ; chapitre "Instructions de dplacement"
/FBSY/ Description des fonctions d'actions synchrones ; "Lancement d'axes de commandes"
Paramtres
Le systme d'units pour les tches de positionnement avec des actions synchrones est
dfini l'aide des codes G G70/G71/G700/G710 .
La programmation de fonctions G dans une action synchrone permet de fixer l'valuation
INCH/METRIC pour cette action synchrone indpendamment du contexte du programme
pice.
Notions complmentaires
598 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Contrairement la programmation partir du programme pice, le dplacement axial de
positionnement n'a aucun impact sur l'excution du programme pice.
Syntaxe
POS[axe]=valeur
Signification
DO POS
Lancer/positionner un axe de commande
Axe
Nom de l'axe qui doit tre dplac
Valeur
Indication de la valeur parcourir (selon le mode de
dplacement)
Exemples
Exemple 1 :
Exemple 2 :
Trajet de positionnement de l'axe de positionnement influenc par l'environnement du
programme
(pas de fonction G dans la partie action de l'action synchrone) :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 599
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Dans la partie action de l'action synchrone, l'instruction G71 entrane une dtermination
explicite (mtrique) du trajet de positionnement de l'axe de positionnement,
indpendamment de l'environnement du programme :
Si le dplacement de l'axe ne doit pas dmarrer au dbut du bloc, la correction de l'axe peut
tre maintenue 0 par une action synchrone jusqu' l'instant souhait :
Notions complmentaires
600 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
La fonction POSRANGE( ) permet de dterminer si la position de consigne courante
interpole d'un axe se trouve dans une fentre autour d'une position de rfrence prescrite.
Les indications de position peuvent se rapporter des systmes de coordonnes
dfinissables.
Lors de l'interrogation de la position relle de l'axe, la correction modulo est prise en compte.
Remarque
La fonction peut seulement tre appele de l'action synchrone. Lors de l'appel partir du
programme pice survient l'alarme 14091 %1 bloc %2 fonction non autorise, indice : %3
appel avec l'indice 5.
Syntaxe
BOOL POSRANGE(Axe, Refpos, Winlimit,[Coord])
Signification
BOOL POSRANGE
La position courante de l'axe de commande est dans la
fentre de la position de rfrence donne.
AXIS <Axe>
Descripteur de l'axe machine, canal ou gomtrique
REAL Refpos
Position de rfrence dans le systme de coordonnes
Coord
REAL Winlimit
Montant indiquant la limite de la fentre de position
INT Coord
Le SCM est actif en option. Il est possible de :
0 pour SCM (systme de coordonnes machine)
1 pour SCB (systme de coordonnes de base)
2 pour SPR (systme de coordonnes rglable)
3 pour SCP (systme de coordonnes pice)
valeur fonction
Position de consigne courante selon l'indication de la position dans le systme de
coordonnes prescrit
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 601
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Avec MOV[axe]=valeur, vous pouvez dmarrer un axe de commande sans indication de la
position finale. L'axe en question est dplac dans le sens programm, jusqu' ce qu'une
nouvelle instruction de dplacement ou de positionnement indique un autre dplacement ou
jusqu' ce qu'il soit immobilis par une instruction d'arrt.
Syntaxe
MOV[Axe] = valeur
Signification
DO MOV
Dmarrer un dplacement de l'axe de commande
Axe
Nom de l'axe qui doit tre dmarr
Valeur
Instruction de dmarrage/d'arrt
du dplacement { Le signe dtermine le sens du dplacement
Type de donnes de la valeur : INTEGER.
Valeur >0 (normalement
+1) sens positif
Valeur <0 (normalement
-1) sens ngatif
Valeur ==0
Arrter le dplacement axial
Remarque
Si vous arrtez un axe index avec MOV[Axe] = 0 , l'arrt se fera la prochaine position
indexe.
Exemple
Notions complmentaires
602 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Pour un changement d'outil, les axes de commande concerns peuvent tre demands en
tant qu'action d'une action synchrone avec GET(Axe). Le type d'axe affect ce canal et le
droit d'interpolation qui lui est corrl ce moment peut tre interrog via la variable
systme $AA_AXCHANGE_TYP. En fonction de l'tat rel et du canal possdant le droit
d'interpolation courant de cet axe, diffrents processus sont possibles.
Lorsque le changement d'outil est termin, cet axe de commande peut alors tre valid
comme action d'une action synchrone avec RELEASE(Axe) pour le canal.
Constructeur de la machine-outil
L'axe concern doit tre affect au canal par le biais des paramtres machine. Tenez
compte des indications du constructeur de la machine
Syntaxe
GET(axe[,axe{,...}]) demande d'axe
RELAESE(axe[,axe{,...}]) dblocage d'axe
Signification
DO RELEASE
Dbloquer l'axe en tant qu'axe neutre
DO GET
Aller chercher l'axe pour permutation d'axe
Axe
Nom de l'axe qui doit tre dmarr
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 603
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
La ligne du dplacement de l'axe de commande POS[U] n'est excute qu'aprs que l'on a
fait passer l'axe U dans le canal 2.
Notions complmentaires
604 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Procdure
L'axe demand au moment de l'activation de l'action GET(axe) peut - en ce qui concerne le
type d'axe - tre lu pour une permutation d'axes avec la variable systme
($AA_AXCHANGE_TYP[<axe>] :
0: Axe affect au programme CN
1: Axe affect l'AP ou actif en tant qu'axe de commande ou axe pendulaire
2: un autre canal dispose du droit d'interpolation
3: L'axe est un axe banalis
4: L'axe banalis est contrl par l'AP
5: un autre canal dispose du droit d'interpolation, l'axe a t demand pour le programme
CN
6: un autre canal dispose du droit d'interpolation, l'axe a t demand comme axe
banalis
7: Axe de l'AP ou actif en tant qu'axe de commande ou axe pendulaire, l'axe a t
demand pour le programme CN
8: Axe de l'AP ou actif en tant qu'axe de commande ou axe pendulaire, l'axe a t
demand comme axe banalis
Conditions marginales
L'axe concern doit tre affect au canal par le biais des paramtres machine.
Un axe exclusivement contrl par l'AP ne peut pas tre affect au programme CN.
Bibliographie :
/FB2/ Manuel de fonctions d'extension ; axes de positionnement (P2)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 605
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
L'axe est actif en tant qu'axe de commande banalis ou axe pendulaire ou est affect l'AP.
Si l'axe est actif en tant qu'axe de commande ou axe pendulaire ou qu'il est affect l'AP
pour le dplacement, axe AP == axe de positionnement pilot par l'AP,
($AA_AXCHANGE_TYP[<axe>]==1), il est demand en tant qu'axe banalis
($AA_AXCHANGE_TYP[<axe>]==8) et est bloqu ce faisant, en fonction du bit 0 au
paramtre machine MD 10722: AXCHANGE_MASK, pour une permutation d'axes
automatique entre canaux (bit 0 == 0). Ceci correspond ($AA_AXCHANGE_STAT[<axe>]
==1).
Une nouvelle action GET demande alors l'axe pour le programme CN
($AA_AXCHANGE_TYP[<axe>] devient == 7).
Notions complmentaires
606 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
L'avance axiale pour les axes de commande est effet modal.
Syntaxe
AA[<axe>]=<valeur>
Exemple
Fonction
La limitation de la zone de travail programme avec G25/G26 est prise en considration
pour les axes de commande en fonction de la donne de rglage
$SA_WORKAREA_PLUS_ENABLE.
L'activation et la dsactivation de la limitation de la zone de travail par le biais des fonctions
G WALIMON/WALIMOF dans le programme pice n'agissent pas sur les axes de
commande.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 607
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Par principe, un axe est dplac soit partir du programme pice, soit partir d'une action
synchrone comme axe de positionnement.
Mais si un mme axe doit tre dplac de faon alterne partir du programme pice
comme axe interpolation ou axe de positionnement et partir d'une action synchrone,
alors un transfert coordonn a lieu entre les deux dplacements de l'axe.
Si un axe de commande est ensuite dplac partir du programme pice, ceci exige une
rorganisation du prtraitement. Cette rorganisation entrane de son ct une interruption
de l'excution du programme pice, comparable un arrt du prtraitement des blocs.
N20 ID=1 WHEN $A_IN[1]==1 DO ; Dmarrage du positionnement depuis l'action synchrone lorsque
POS[X]=150 FA[X]=200 l'entre numrique est prsente
N100 G01 X240 Y200 F1000 ; X devient axe interpolation ; avant le dplacement,
apparition d'un temps d'attente d au transfert d'axe
si l'entre numrique tait 1 et que X a t positionn
depuis l'action synchrone.
Notions complmentaires
608 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
La position courante de l'axe n'est pas modifie lors de l'excution de PRESETON
(axe,valeur) ; une nouvelle valeur lui est affecte.
PRESETON peut figurer dans une action synchrone pour :
des axes rotatifs modulos qui ont t dmarrs dans le programme pice
tous les axes de commande qui ont t dmarrs partir de l'action synchrone
Syntaxe
DO PRESETON(axe, valeur)
Signification
DO PRESETON
Prrgler les mmoires de valeurs relles dans les actions
synchrones
Axe
Axe, dont l'origine de la commande doit tre modifie
Valeur
Valeur par laquelle l'origine de la commande sera modifie
Exemple
Dcaler l'origine de la commande d'un axe
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 609
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
A partir d'actions synchrones, vous pouvez positionner des broches de faon totalement
asynchrone avec le programme pice. Ce type de programmation est recommand pour des
oprations cycliques ou pilotes par des vnements.
Si des instructions concurrentes sont donnes pour une broche par diffrentes actions
synchrones actives simultanment, ce sera la dernire instruction dans l'ordre
chronologique qui sera prise en considration.
Notions complmentaires
610 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Quand on active le couplage partir de l'action synchrone, l'axe pilote peut tre en cours de
dplacement. Dans ce cas, l'axe asservi subit une acclration pour atteindre la vitesse de
consigne. La position de l'axe pilote au moment de la synchronisation des vitesses constitue
la position de dpart des dplacements conjugus. Les dplacements conjugus sont
dcrits dans le chapitre "Mode de dplacement".
Syntaxe
Activer les dplacements conjugus
DO TRAILON(axe asservi, axe pilote, facteur de couplage)
Dsactiver les dplacements conjugus
DO TRAILOF(axe asservi, axe pilote, axe pilote 2)
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 611
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Exemple
Notions complmentaires
612 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Remarque
Cette fonction n'est pas disponible pour SINUMERIK 828D.
Fonction
Le couplage de deux axes par valeur pilote est programmable sans restriction dans des
actions synchrones. La modification d'une table de courbes dans un couplage existant sans
une nouvelle synchronisation pralable n'est possible que dans les actions synchrones
(facultatif).
Syntaxe
Activer le couplage par valeur pilote
DO LEADON(Axe asservi, axe pilote, n_table de courbes, OVW)
Dsactiver le couplage par valeur pilote
DO TRAILOF(axe asservi, axe pilote, axe pilote 2)
Signification
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 613
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Notions complmentaires
614 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 615
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
En comparaison avec l'utilisation dans des blocs de dplacement du programme pice, la
fonction de mesure peut tre active et dsactive volont partir d'actions synchrones.
Pour de plus amples informations sur la fonction de mesure, voir les instructions de
dplacement spciales "Fonction de mesure tendue"
Syntaxe
Mesure axiale sans effacement de la distance restant parcourir
MEAWA[axe]=(mode, vnement dclencheur_1, ..._4)
Mesure sans effacement de la distance restant parcourir
MEAWA[axe]=(mode, vnement dclencheur_1, ..._4)
Signification
Code de Commentaire
programme
DO MEAWA ; Activer la mesure axiale
DO MEAC ; Activer la mesure continue
Axe ; Nom de l'axe mesur
Mode ; Indication de la Indication de ladcade
dcadedcimale unitaire 0 : annulation du
0 : systme de mesure actif contrat de mesure
Nombre de systmes de mesure jusqu' 4 vnements
(en fonction du mode) dclencheurs activables
1 : 1. systme de mesure 1 : simultanment
2 : 2. systme de mesure 2 : successivement
3 : les deux systmes de 3 : identique 2 sans la
mesure surveillance de l'vnement
dclencheur1 au dpart
Evnement ; : front montant, palpeur 1
dclencheur_1 -1 : front descendant,
_4 palpeur 1 facultatif
2 : front montant, palpeur 2
facultatif
-2 : front descendant,
palpeur 2 facultatif
Mmoire de ; Numro de la mmoire file
mesure d'attente FIFO
Notions complmentaires
616 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Dans les actions synchrones, des variables de tableau peuvent tre initialises ou tre
dcrites avec certaines valeurs.
Remarque
Seules les variables accessibles en criture dans des actions synchrones sont possibles.
Des paramtres machine ne peuvent tre initialiss ainsi. Des variables d'axe ne peuvent
pas tre indiques avec la valeur NO_AXIS.
Syntaxe
DO TABLEAU[n,m]=SET(<valeur1>,<valeur2>,...)
DO TABLEAU[n,m]=REP(<valeur>)
Signification
TABLEAU[n,m]
Indices de tableau programms
L'initialisation dbute par les indices de tableau
programms. En cas de tableaux deux dimensions, le
2e indice est incrment en premier. En cas d'indices
d'axes, celui-ci n'est pas effectu.
SET(<valeur1>,<valeur2>,...)
Initialisation avec listes de valeurs
Le tableau est dcrit par les indices de tableau
programms avec les paramtres de SET. Il y a autant
d'lments de tableau attribus que de valeurs
programmes. Si le nombre de valeurs programmes
est suprieur celui des lments de tableau rsiduels
disponibles, une alarme est dclenche.
REP(<valeur>)
Initialisation avec des valeurs identiques
Le tableau est rpt par les indices de tableau
programms jusqu'' la fin du tableau avec le paramtre
(<valeur>) de REP.
Exemple
Code de programme Commentaire
WHEN TRUE DO SYG_IS[0]=REP(0) ; Rsultat :
WHEN TRUE DO SYG_IS[1]=SET(3,4,5) ; SYG_IS[0]=0
SYG_IS[1]=3
SYG_IS[2]=4
SYG_IS[3]=5
SYG_IS[4]=0
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 617
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Dans des actions synchrones, vous pouvez activer ou effacer des marques d'attente, par
exemple pour coordonner des canaux entre eux.
Syntaxe
DO SETM(<numro de marque>)
DO CLEARM(<numro de marque>)
Signification
SETM
Instruction de dfinition de la marque d'attente pour le canal
L'instruction SETM peut tre crite dans le programme pice
et dans la partie action d'une action synchrone. Elle active la
marque (<numro de marque>) pour le canal auquel elle est
affecte.
CLEARM
Instruction de suppression de la marque d'attente pour le
canal
L'instruction CLEARM peut tre crite dans le programme pice
et dans la partie action d'une action synchrone. Elle supprime
la marque (<numro de marque>) pour le canal auquel elle est
affecte.
<Numro de marque>
Marque d'attente
Notions complmentaires
618 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Avec les actions synchrones, il est possible de programmer des ractions aux erreurs avec
interrogation des variables d'tat et dclenchement d'actions correspondantes.
En rponse des tats d'erreur, les ractions suivantes sont possibles :
Arrt de l'axe (correction=0)
Activation d'une alarme
Avec SETAL, on peut activer des alarmes cycliques partir d'actions synchrones.
mettre sortie 1
Toutes les actions possibles dans des actions synchrones
Syntaxe
Activation d'une alarme cyclique :
DO SETAL(<numro d'alarme>)
Signification
SETAL
Instruction d'activation d'une alarme cyclique
<Numro d'alarme>
Numro de l'alarme
Zone d'alarme cyclique pour l'utilisateur : 65000 69999
Exemple
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 619
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Les instructions de la fonction "Accostage d'une bute" sont programmes avec les
instructions de programme pice FXS, FXST et FXSW dans les actions synchrones/cycles
technologiques.
L'activation peut se faire sans dplacement, la limitation du couple agit immdiatement. Ds
que l'axe est dplac suivant les consignes, la surveillance de la bute est active.
Dplacement avec rduction du couple/force (FOC)
La fonction permet de modifier le couple/force tout moment par l'intermdiaire d'actions
synchrones et peut tre active avec un effet modal ou non modal.
Syntaxe
FXS[<axe>]
FXST[<axe>]
FXSW[<axe>]
FOCON[<axe>]
FOCOF[<axe>]
Signification
FXS
Activation uniquement dans les systmes entranements
numriques (VSA, HSA, HLA)
FXST
Modification du couple de blocage FXST
FXSW
Modification de la fentre de surveillance FXSW
FOCON
Activation de la limitation de couple/force effet modal
FOCOF
Dsactivation de la limitation de couple/force
<Axe> Descripteur d'axe
Sont autoriss :
Descripteur d'axe gomtrique
Descripteur d'axe de canal
Descripteur d'axe machine
Remarque
L'activation ne doit avoir lieu qu'une fois.
Notions complmentaires
620 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Exemples
Exemple 1 : Accostage d'une bute (FXS) dclench par une action synchrone
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 621
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Autres informations
Activation multiple
Si la suite d'une erreur de programmation, la fonction est de nouveau appele aprs son
activation (FXS[<axe>]=1), l'alarme suivante est gnre :
Alarme 20092 "Accostage d'une bute encore active"
Une programmation qui interroge soit $AA_FXS[ ] ou un mmento spcifique (R1 dans ce
cas) dans la condition vite une activation multiple de la fonction "Fragment de programme
pice" :
Code de programme
N10 R1=0
N20 IDS=1 WHENEVER ($R1==0 AND
$AA_IW[AX3] > 7) DO R1=1 FXST[AX1]=12
Actions synchrones non modales
La programmation d'une action synchrone non modale permet d'activer l'accostage d'une
bute pendant un dplacement d'axe.
Exemple :
Notions complmentaires
622 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
La variable systme lisible dans les actions synchrones $AC_TANEB (Tangent ANgel at End
of Block) dtermine l'angle entre tangente la trajectoire au point final du bloc courant et la
tangente la trajectoire au point de dpart du bloc suivant programm.
Paramtres
L'angle des tangentes est indiqu en valeur positive entre 0,0 et 180,0 degrs. S'il n'existe
aucun bloc suivant, l'angle indiqu est
-180,0 degrs.
La variable systme $AC_TANEB ne doit pas tre lue pour des blocs crs par le systme
(blocs intermdiaires). La variable systme $AC_BLOCKTYPEpermet d'identifier qu'il s'agit d'un
bloc programm (bloc principal).
Exemple
ID=2 EVERY $AC_BLOCKTYPE==0 DO $SR1 = $AC_TANEB
Fonction
La correction de vitesse courante
(Composante CN) peut tre lue et crite avec les variables systme :
$AA_OVR Correction axiale
$AC_OVR Correction d'avance tangentielle
dans des actions synchrones.
La correction de vitesse dtermine par l'AP pour les actions synchrones dans les variables
systme:
$AA_PLC_OVR Correction axiale
$AC_PLC_OVR Correction d'avance tangentielle
peut tre accde en lecture.
La correction rsultante
pour les actions synchrones dans les variables systme :
$AA_TOTAL_OVR Correction axiale
$AC_TOTAL_OVR Correction d'avance tangentielle
peut tre accde en lecture.
La correction rsultante se calcule comme suit :
$AA_OVR * $AA_PLC_OVR ou
$AC_OVR * $AC_PLC_OVR
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 623
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
Fonction
Dans une priode d'appel de l'interpolateur, les actions synchrones doivent tre interprtes
pendant que les dplacements, et autres, sont calculs par la CN. Les variables systme
dcrites ci-aprs permettent aux actions synchrones d'accder leurs composantes de
temps courantes dans la priode d'appel de l'interpolateur et de connatre le temps de calcul
du rgulateur de position.
3ULRGHG
DSSHOGHO
LQWHUSRODWHXU
01B,32B0$;B/2$'
9DOHXUOLPLWHSRXUO
XWLOLVDWLRQGHODSULRGHG
DSSHOGHO
LQWHUSRODWHXU
$1B,32B$&7B/2$'
WHPSVFDOFLQWHUSFRXULQFOV\QFFDQDO
$1B6<1&B$&7B/2$'
WHPSVFDOFFRXUSDFWV\QF
SRXUWRXVOHVFDQDX[
$&B6<1&B$&7B/2$' YRLHb
7HPSVGHFDOFXOSDFWLRQVV\QFKURQHVGHFDQDO
$&B6<1&B$&7B/2$' YRLHb
7HPSVGHFDOFXOSDFWLRQVV\QFKURQHVGHFDQDO
Signification
Les valeurs des variables sont uniquement valides, lorsque le paramtres machine
$MN_IPO_MAX_LOAD est suprieur 0. Autrement, les variables indiquent toujours, aussi bien
pour SINUMERIK powerline que pour les systmes solution line, le temps de calcul net pour
lequel les interruptions cres par IHM ne sont plus prises en compte. Le temps de calcul
net est dfini partir :
de la dure des actions synchrones,
du temps d'asservissement de position et
du temps de calcul restant de l'interpolateur sans interruptions conditionnes par IHM
Notions complmentaires
624 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.4 Actions dans des actions synchrones
$AC_SYNC_ACT_LOAD
Temps de calcul courant pour les actions synchrones dans le
canal
$AC_SYNC_MAX_LOAD
Temps de calcul le plus long pour les actions synchrones dans le
canal
$AC_SYNC_AVERAGE_LOAD
Temps de calcul moyen pour les actions synchrones dans le
canal
$AN_SERVO_ACT_LOAD
Temps de calcul courant du rgulateur de position
$AN_SERVO_MAX_LOAD
Temps de calcul le plus long du rgulateur de position
$AN_SERVO_MIN_LOAD
Temps de calcul le plus court du rgulateur de position
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 625
Actions synchrones au dplacement
10.5 Cycles technologiques
Fonction
Dans des actions synchrones, vous pouvez aussi appeler, comme actions, des programmes,
qui toutefois doivent contenir uniquement des fonctions admises elles aussi comme actions
dans des actions synchrones. De tels programmes sont appels des cycles technologiques.
Les cycles technologiques sont rangs comme sous-programmes dans la commande.
Plusieurs cycles technologiques ou actions peuvent tre excuts en parallle dans un
canal.
Programmation
Les rgles suivantes sont valables pour la programmation de cycles technologiques :
La fin du programme se programme avec M02/M17/M30/RET.
Au sein d'un niveau de programme, toutes les actions indiques dans ICYCOF peuvent
tre traites sans cycles d'attente dans une priode.
Il est possible d'interroger jusqu' 8 cycles technologiques la suite par action
synchrone.
Les cycles technologiques sont galement possibles dans des actions synchrones non
modales.
Il est possible de programmer aussi bien des structures de contrle IF que des
instructions de saut GOTO, GOTOF et GOTOB.
Rgles valables pour les blocs avec DEF et DEFINE :
Les instructions DEF et DEFINE sont ignores dans les cycles technologiques.
Elles entranent un message d'alarme en cas de syntaxe incomplte ou incorrecte.
Elles peuvent, sans tre cres elles-mmes, tre ignores sans message d'alarme.
Elles sont entirement prises en compte avec des affectations de valeur comme cycle
de programme pice.
Transfert de paramtres
Un transfert de paramtres sur des cycles technologiques est possible. Sont aussi bien pris
en compte des types de donnes simples transmis comme des paramtres formels "Call by
Value" que des paramtrages par dfaut qui deviennent valables l'appel de cycles
technologiques. Ce sont :
Valeurs par dfaut programmes lorsque aucun paramtre de transmission n'est
programm.
Affectation de valeurs initiales aux paramtres par dfaut.
Transmettre des paramtres rels non initialiss avec une valeur par dfaut.
Notions complmentaires
626 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.5 Cycles technologiques
Procdure
Les cycles technologiques sont dmarrs, ds que leurs conditions sont remplies. Chaque
ligne d'un cycle technologique est excute dans une priode d'appel de l'interpolateur
spare. Dans le cas d'axes de positionnement, plusieurs priodes d'appel de l'interpolateur
sont ncessaires pour leur excution. D'autres fonctions sont excutes en une seule
priode. Dans le cycle technologique, l'excution des blocs est squentielle.
Si des actions qui s'excluent rciproquement sont appeles dans une mme priode d'appel
de l'interpolateur, l'action active sera celle qui est appele par l'action synchrone avec le
numro ID le plus lev.
Exemples
Exemple 1 : dmarrage de programmes d'axe par activation d'entres numriques
3ULRGHG
DSSHO &RQGLWLRQ &RQGLWLRQ &RQGLWLRQ
GHO
LQWHUSRODWHXU
3ULRGHG
DSSHO 0 326><@ 326>=@
GHO
LQWHUSRODWHXU
3ULRGHG
DSSHO 326>;@
GHO
LQWHUSRODWHXU
3ULRGHG
DSSHO 326><@ 326>=@
GHO
LQWHUSRODWHXU
3ULRGHG
DSSHO 0
GHO
LQWHUSRODWHXU
3ULRGHG
DSSHO 0 0
GHO
LQWHUSRODWHXU
3ULRGHG
DSSHOGH
O
LQWHUSRODWHXU
Programme principal :
Code de programme Commentaire
ID=1 EVERY $A_IN[1]==1 DO AXE_X ; Dmarrage du programme d'axe AXE_X lorsque l'entre 1 est mise 1.
ID=2 EVERY $A_IN[2]==1 DO AXE_Y ; Dmarrage du programme d'axe AXE_Y lorsque l'entre 2 est mise 1.
ID=3 EVERY $A_IN[3]==1 DO AXE_Z ; Dmarrage du programme d'axe AXE_Z lorsque l'entre 3 est mise 1.
M30
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 627
Actions synchrones au dplacement
10.5 Cycles technologiques
Code de programme
POS[Y]=10 FA[Y]=200
POS[Y]=-10
M17
Code de programme
POS[Z]=90 FA[Z]=250
POS[Z]=-90
M17
Code de programme
PROC CYCLE
N10 DEF REAL VALEUR=12.3
N15 DEFINE ABC AS G01
Les deux blocs sont ignors sans alarme ni cration de variables ou de macros.
Code de programme
PROC CYCLE
N10 DEF REAL
N15 DEFINE ABC G01
Les deux blocs entranent en outre une alarme CN parce que la syntaxe n'a pas t crite
correctement.
Code de programme
PROC CYCLE
N10 DEF AXIS AXE1=XX2
Lorsque l'axe XX2 n'est pas connu, l'alarme 12080 est mise. Sinon, le bloc est ignor sans
alarme et sans cration de variable.
Code de programme
PROC CYCLE
N10 DEF AXIS AXE1
N15 G01 X100 F1000
N20 DEF REAL VALEUR1
Le bloc N20 conduit toujours l'alarme 14500, car aucune instruction de dfinition ne doit
succder la premire instruction du programme.
Notions complmentaires
628 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.5 Cycles technologiques
Fonction
La variable $P_TECCYCLE permet de subdiviser les programmes entre programmes
d'actions synchrones et programmes d'excution. Il est ainsi possible de traiter des blocs ou
des squences de programme syntaxe correcte, galement comme cycle de programme
pice.
IF $P_TECCYCLE==TRUE
... ; Squence de programme pour cycle technologique dans
l'action synchrone.
ELSE
... ; Squence de programme pour cycle de programme pice.
ENDIF
Remarque
Un bloc avec une syntaxe de programme errone ou non autorise ainsi que des
affectations de valeur inconnues entranent galement dans le cycle de programme pice un
message d'alarme.
Exemple
Squence de programme avec interrogation de $P_TECCYCLE dans le cycle technologique
:
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 629
Actions synchrones au dplacement
10.5 Cycles technologiques
Fonction
Les cycles technologiques peuvent tre dfinis avec des paramtres Call-by-Value. Des
types de donnes simples comme INT, REAL, CHAR, STRING, AXIS et BOOL sont
possibles comme paramtres.
Remarque
Les paramtres formels qui transmettent des Call-by-Value ne peuvent pas tre des
tableaux.
Les paramtres effectifs peuvent galement tre des paramtres par dfaut (voir
"Initialisation de paramtres par dfaut (Page 630)").
Syntaxe
ID=1 WHEN $AA_IW[X]>50 DO TEC(IVAL,RVAL,,SVAL,AVAL)
Dans le cas de paramtres effectifs non initialiss, une valeur par dfaut est transmise :
ID=1 WHEN $AA_IW[X]>50 DO TEC(IVAL,RVAL,,SYG_SS[0],AVAL)
Fonction
Des paramtres par dfaut peuvent galement tre pourvus d'une valeur initiale dans
l'instruction PROC.
Syntaxe
Dans le cycle technologique, attribuer des paramtres par dfaut :
PROC TEC (INT IVAL=1, REAL RVAL=1.0, CHAR CVAL='A', STRING[10] SVAL="ABC", AXIS
AVAL=X, BOOL BVAL=TRUE)
Lorsque un paramtre rel se compose d'un paramtre par dfaut, la valeur initiale est
transmise par l'instruction PROC. Cela est aussi bien valable dans le programme pice que
dans les actions synchrones.
Exemple
Notions complmentaires
630 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.5 Cycles technologiques
Fonction
Les instructions ICYCOF et ICYCON servent au pilotage du traitement temporel de cycles
technologiques.
Avec ICYCOF, tous les blocs d'un cycle technologique sont traits dans une seule priode
d'appel de l'interpolateur. Toutes les actions ncessitant plusieurs priodes entranent des
processus de traitement parallles avec ICYCOF.
Application
Avec ICYCON, plusieurs dplacements d'axe de commande peuvent entraner la
temporisation du traitement d'un cycle technologique. Si cela n'est pas souhait, ICYCOF
permet de traiter toutes les actions sans temps d'attente dans une priode d'appel de
l'interpolateur.
Syntaxe
Pour le traitement cyclique de cycles technologiques, on a :
ICYCON Chaque bloc d'un cycle technologique est excut dans une priode d'appel de
l'interpolateur spare aprs ICYCON.
ICYCOF Tous les blocs suivants d'un cycle technologique sont excuts dans une priode
d'appel de l'interpolateur aprs ICYCOF.
Remarque
Les deux instructions ICYCON et ICYCOF ne sont valables que dans un niveau de
programme. Dans le programme pice, les deux commandes sont simplement ignores
sans raction.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 631
Actions synchrones au dplacement
10.5 Cycles technologiques
Fonction
Il est possible d'excuter jusqu' 8 cycles technologiques activs en srie. Plusieurs cycles
technologiques sont donc programmables dans une action synchrone.
Syntaxe
ID=1 WHEN $AA_IW[X]>50 DO TEC1($R1) TEC2 TEC3(X)
Ordre d'excution
Les cycles technologiques sont traits la suite (en cascade) de la gauche vers la droite
selon la programmation indique prcdemment. Lorsque un cycle doit tre trait en mode
ICYCON, il temporise tous les traitements ultrieurs. Une alarme qui survient interrompt
toutes les actions suivantes.
Fonction
Les cycles technologiques sont galement possibles dans des actions synchrones non
modales.
Si le temps d'excution d'un cycle technologique est suprieur au temps de traitement du
bloc correspondant, le cycle technologique est interrompu au changement de bloc.
Remarque
Un cycle technologique n'empche pas le changement de bloc.
Fonction
Pour des ramifications dans l'ordre de droulement de cycles technologiques, les structures
de contrle IF peuvent tre employes dans des actions synchrones.
Syntaxe
IF <condition>
$R1=1
[ELSE] en option
$R1=0
ENDIF
Notions complmentaires
632 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.5 Cycles technologiques
Fonction
Dans des cycles technologiques, les instructions de saut GOTO, GOTOF, GOTOB sont
possibles. les tiquettes indiques doivent figurer dans le sous-programme afin qu'aucune
alarme ne soit gnre.
Remarque
Les tiquettes et les numros de bloc peuvent seulement tre des constantes.
Syntaxe
Sauts inconditionnels
GOTO Etiquette, numro de bloc
GOTOF Etiquette, numro de bloc
GOTOB Etiquette, numro de bloc
GOTO
Saute tout d'abord en aval puis en amont
GOTOF
Saute en aval
GOTOB
Saute en amont
Etiquette :
Marque de saut
numro de bloc
Destination de saut pour ce bloc
N100
Le numro de bloc est un bloc secondaire
:100
Le numro de bloc est un bloc principal
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 633
Actions synchrones au dplacement
10.5 Cycles technologiques
Fonction
Le droulement d'un cycle technologique peut tre bloqu, libr ou remis zro par une
autre action synchrone modale.
Syntaxe
LOCK(<n1>,<n2>,...)
UNLOCK(<n1>,<n2>,...)
RESET(<n1>,<n2>,...)
Signification
LOCK
Instruction de blocage des actions synchrones
L'action active est interrompue.
UNLOCK
Instruction de dblocage des actions synchrones
RESET
Instruction de remise zro des cycles technologiques
<n1>,<n2>,...
Numros d'identification des actions synchrones ou des cycles
technologiques devant tre bloqus, dbloqus ou remis zro.
Remarque
Une action synchrone programme est active par dfaut et peut tre protge contre un
crasement des donnes/un blocage par le biais d'un paramtre machine.
L'utilisateur ne doit pas pouvoir modifier les actions synchrones qui ont t dfinies par le
constructeur de la machine.
Notions complmentaires
634 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.5 Cycles technologiques
Exemples
Exemple 1 : Bloquer les actions synchrones (LOCK)
Code de programme
N100 ID=1 WHENEVER $A_IN[1]==1 DO M130
...
N200 ID=2 WHENEVER $A_IN[2]==1 DO LOCK(1)
Code de programme
N100 ID=1 WHENEVER $A_IN[1]==1 DO M130
...
N200 ID=2 WHENEVER $A_IN[2]==1 DO LOCK(1)
...
N250 ID=3 WHENEVER $A_IN[3]==1 DO UNLOCK(1)
Code de programme
N100 ID=1 WHENEVER $A_IN[1]==1 DO M130
...
N200 ID=2 WHENEVER $A_IN[2]==1 DO RESET(1)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 635
Actions synchrones au dplacement
10.6 Effacer une action synchrone (CANCEL)
Fonction
L'instruction CANCEL permet d'annuler (supprimer) une action synchrone effet modal ou
statique dans le programme pice.
Quand une action synchrone est annule, alors que le dplacement axial de positionnement
qu'elle avait enclench est encore actif, ce dplacement sera men terme. Si vous ne le
souhaitez pas, vous pouvez freiner le dplacement axial par effacement de la distance
restant parcourir avant l'instruction CANCEL.
Syntaxe
CANCEL(<n1>,<n2>,...)
Signification
Exemples
Exemple 1 : annuler l'action synchrone
Notions complmentaires
636 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.7 Comportement de la commande dans des tats de fonctionnement donns
POWER ON
Avec POWER ON, aucune action synchrone n'est par principe active. Les actions
synchrones statiques peuvent tre actives par le biais d'un sous-programme asynchrone
(ASUP) lanc par l'AP.
RESET
Un RESET de la CN met fin toutes les actions synchrones modales et non modales. Les
actions synchrones statiques restent actives. De nouvelles actions peuvent tre lances
partir de celles-ci. Si un dplacement de l'axe de commande est actif lors d'un RESET, il est
interrompu. Les actions synchrones de type WHEN dj excutes ne seront plus traites
aprs un RESET.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 637
Actions synchrones au dplacement
10.7 Comportement de la commande dans des tats de fonctionnement donns
arrt CN
Les actions synchronesstatiquesrestent actives lors de l'arrt CN. Les dplacements
amorcs par les actions synchrones statiques ne sont pas abandonns. Les actions
synchrones spcifiques au programme et appartenant au bloc activ restent actives, mais
les dplacements qui avaient t amorcs sont abandonns.
Fin du programme
Fin de programme et action synchrone n'ont aucune influence rciproque. Les actions
synchrones en cours sont menes terme, mme aprs une fin de programme. Les actions
synchrones actives dans le bloc M30 le restent au-del de la fin du programme. Si vous ne
le souhaitez pas, vous devez annuler l'action synchrone avant la fin du programme avec
CANCEL.
Recherche de bloc
Les actions synchrones sont accumules lors de la recherche de bloc et traites la reprise
du programme ; les actions correspondantes sont relances le cas chant. Les actions
synchrones statiques restent actives pendant la recherche de bloc. Si la recherche de bloc
fait apparatre des coefficients de polynme programms avec FCTDEF , ces derniers seront
appliqus avec effet immdiat.
Notions complmentaires
638 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Actions synchrones au dplacement
10.7 Comportement de la commande dans des tats de fonctionnement donns
Repositionnement (REPOS)
Aprs Repositionnement (REPOS), les actions synchrones actives dans le bloc interrompu
sont ractives. Les actions synchrones modales modifies depuis le sous-programme
asynchrone ne sont pas actives aprs REPOS lors de l'excution du bloc restant.
Les coefficients de polynme programms avec FCTDEF ne sont pas influencs par les sous-
programmes asynchrones ni par REPOS. Indpendamment de l'endroit o ils ont t
programms, on peut les utiliser tout moment dans le sous-programme asynchrone et
dans le programme principal, mme aprs un REPOS.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 639
Actions synchrones au dplacement
10.7 Comportement de la commande dans des tats de fonctionnement donns
Notions complmentaires
640 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Oscillation 11
11.1 Oscillation asynchrone (OS, OSP1, OSP2, OST1, OST2, OSCTRL,
OSNSC, OSE, OSB)
Fonction
Un axe d'oscillation va et vient, avec une avance donne, entre deux points d'inversion de
sens 1 et 2 jusqu' dsactivation de l'oscillation.
Pendant l'oscillation, d'autres axes peuvent tre interpols librement. Une pntration
continue peut tre obtenue par un dplacement de contournage ou avec un axe de
positionnement. Il n'existe toutefois aucun lien entre l'oscillation et le mouvement de
pntration.
Caractristiques de l'oscillation asynchrone
L'oscillation asynchrone agit au-del des limites du bloc et est spcifique un axe.
Une activation de l'oscillation, synchronise avec le bloc, est assure par le programme
pice.
Une interpolation commune de plusieurs axes et une correction de la course d'oscillation
ne sont pas possibles.
Programmation
Les instructions suivantes permettent d'activer et d'agir sur l'oscillation asynchrone partir
du programme pice, en fonction de l'excution du programme CN.
Les valeurs programmes sont inscrites dans les donnes de rglage correspondantes
pendant l'excution du programme et restent actives jusqu' la prochaine modification.
Syntaxe
OSP1[<axe>]=<valeur> OSP2[<axe>]=<valeur>
OST1[<axe>]=<valeur> OST2[<axe>]=<valeur>
AA[<axe>]=<valeur>
OSCTRL[<axe>]=(<options de rglage>,<option de dsactivation>)
OSNSC[<axe>]=<valeur>
OSE[<axe>]=<valeur>
OSB[<axe>]=<valeur>
OS[<axe>]=1
OS[<axe>]=0
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 641
Oscillation
11.1 Oscillation asynchrone (OS, OSP1, OSP2, OST1, OST2, OSCTRL, OSNSC, OSE, OSB)
Signification
<Axe>
Nom de l'axe d'oscillation
OS
Activer/dsactiver l'oscillation
Valeur 1 Activer l'oscillation
: 0 Dsactiver l'oscillation
OSP1
Dfinir la position partir du point d'inversion de sens 1
OSP2
Dfinir la position partir du point d'inversion de sens 2
Nota :
si un dplacement incrmental est actif, la position est calcule de manire
incrmentale par rapport la dernire position d'inversion correspondante
programme dans le programme CN.
OST1
Dfinir le temps d'arrt au point d'inversion de sens 1 en [s]
OST2
Dfinir le temps d'arrt au point d'inversion de sens 2 en [s]
<valeur> : -2 l'interpolation est poursuivie sans attente de l'arrt prcis
-1 attente de l'arrt prcis grossier
0 attente de l'arrt prcis fin
>0 attente de l'arrt prcis fin puis coulement du temps d'arrt
indiqu
Nota :
l'unit du temps d'arrt est identique celle programme
avecG4.
FA
Dfinir la vitesse d'avance
La vitesse d'avance applique ici est celle dfinie pour l'axe de positionnement.
Si aucune vitesse d'avance n'a t dfinie, c'est la valeur qui figure dans le
paramtre machine qui s'applique.
Notions complmentaires
642 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Oscillation
11.1 Oscillation asynchrone (OS, OSP1, OSP2, OST1, OST2, OSCTRL, OSNSC, OSE, OSB)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 643
Oscillation
11.1 Oscillation asynchrone (OS, OSP1, OSP2, OST1, OST2, OSCTRL, OSNSC, OSE, OSB)
OSNSC
Dfinir le nombre de passes lcher
OSE
Dfinir la position finale accoster (dans le SCP) aprs dsactivation de
l'oscillation
Nota :
la programmation de OSE active de faon implicite l'option 4 pour OSCTRL.
OSB
Dfinir la position de dpart accoster (dans le SCP) avant activation de
l'oscillation
La position de dpart est accoste avant le point d'inversion de sens 1. Si la
position de dpart concide avec la position d'inversion 1, la position d'inversion
2 est ensuite accoste. Lorsque la position de dpart est atteinte, aucun temps
d'arrt n'a d'effet, mme lorsque la position de dpart concide avec la position
d'inversion 1, par contre un arrt prcis fin est attendu. La condition de
prcision rgle est respecte.
Nota :
afin que la position de dpart puisse tre accoste, le bit 9 doit tre mis 1
dans la donne de rglage SD43770 $SA_OSCILL_CTRL_MASK.
Exemples
Exemple 1 : l'axe d'oscillation doit osciller entre deux points d'inversion
L'axe d'oscillation Z doit osciller entre la position 10 et la position 100. Le point d'inversion de
sens 1 doit tre accost avec un arrt prcis fin, le point d'inversion de sens 2 avec un arrt
prcis grossier. L'avance de l'axe d'oscillation doit tre gale 250. A la fin de l'usinage, 3
passes lcher doivent tre excutes et l'axe d'oscillation doit atteindre la position finale
200. L'avance pour l'axe de pntration doit tre gale 1, la fin de la pntration en
direction X doit tre atteinte la position 15.
Notions complmentaires
644 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Oscillation
11.1 Oscillation asynchrone (OS, OSP1, OSP2, OST1, OST2, OSCTRL, OSNSC, OSE, OSB)
Remarque
La squence d'instructions OSP1[Z]=... OSNCS[Z]=... peut galement tre programme
dans un bloc.
Informations complmentaires
Axe d'oscillation
Pour les axes d'oscillation, il est convenu que :
chaque axe peut tre utilis comme axe d'oscillation
Plusieurs axes d'oscillation peuvent tre actifs simultanment (au maximum : le nombre
des axes de positionnement).
Quelle que soit la fonction G momentanment active dans le programme, l'interpolation
linaire G1 est toujours active pour l'axe d'oscillation.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 645
Oscillation
11.1 Oscillation asynchrone (OS, OSP1, OSP2, OST1, OST2, OSCTRL, OSNSC, OSE, OSB)
Code de programme
N10 OSP1[Z]=100 OSP2[Z]=110
...
...
N40 OSP1[Z]= IC(3)
WAITP
Pour faire osciller un axe gomtrique, il faut le dbloquer avecWAITP pour l'oscillation.
Lorsque l'oscillation est termine, WAITP l'axe d'oscillation est nouveau dfini comme axe
de positionnement et peut nouveau tre utilis normalement.
Oscillation avec actions synchrones au dplacement et temps d'arrt
Aprs coulement des temps d'arrt rgls, le changement de bloc interne a lieu pendant
l'oscillation (visible aux nouvelles distances restant parcourir des axes). La fonction de
dsactivation est vrifie lors du changement de bloc. Elle est dtermine aprs le rglage
de la squence de dplacements (OSCTRL). Ce comportement temporel peut tre modifi par
la correction de l'avance.
Il est possible qu'une course d'oscillation soit encore effectue ensuite avant le dmarrage
des passes lcher ou l'accostage de la position finale. On a l'impression que le
comportement la dsactivation est modifi. Ceci n'est toutefois pas le cas.
Notions complmentaires
646 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Oscillation
11.2 Oscillation commande par des actions synchrones (OSCILL)
Fonction
Avec ce type d'oscillation, le mouvement de pntration n'est autoris qu'aux points
d'inversion de sens ou dans des zones d'inversion de sens bien dfinies.
Selon les besoins, l'oscillation peut
soit tre poursuivie
soit tre arrte jusqu' ce que la pntration soit entirement effectue.
Syntaxe
1. Fixer les paramtres pour l'oscillation
2. Dfinir les actions synchrones au dplacement
3. Affecter les axes, fixer la profondeur de pntration
Signification
OSP1[<Axe d'oscillation>]=
Position du point d'inversion de sens 1
OSP2[<Axe d'oscillation>]=
Position du point d'inversion de sens 2
OST1[<Axe d'oscillation>]=
Temps d'arrt au point d'inversion de sens 1 en secondes
OST2[<Axe d'oscillation>]=
Temps d'arrt au point d'inversion de sens 2 en secondes
FA[<Axe d'oscillation>]=
Avance de l'axe d'oscillation
OSCTRL[<Axe d'oscillation>]=
Options d'activation ou de dsactivation
OSNSC[<Axe d'oscillation>]=
Nombre de passes lcher
OSE[<Axe d'oscillation>]=
Position de fin
WAITP(<Axe d'oscillation>)
Libration de l'axe pour l'oscillation
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 647
Oscillation
11.2 Oscillation commande par des actions synchrones (OSCILL)
WHEN DO
Quand..., alors...
WHENEVER DO
A chaque fois que..., alors...
Exemple
Il ne doit pas y avoir de pntration au point d'inversion de sens 1. Au point d'inversion de
sens 2, la pntration doit dj commencer la distance ii2 du point d'inversion de sens
accoster position de fin et l'axe d'oscillation ne doit pas attendre la fin de la pntration
partielle. L'axe Z est axe d'oscillation et l'axe X axe de pntration.
=
$FFRVWHUODSRVLWLRQ $FFRVWDJHGH
G
LQYHUVLRQHWSDVVHV ODSRVLWLRQ
OFKHU ILQDOH
;
Notions complmentaires
648 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Oscillation
11.2 Oscillation commande par des actions synchrones (OSCILL)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 649
Oscillation
11.2 Oscillation commande par des actions synchrones (OSCILL)
Description
1. Fixer les paramtres pour l'oscillation
Les paramtres pour l'oscillation sont fixer dans le programme avant le bloc de
dplacement qui contient d'une part la correspondance entre l'axe de pntration et l'axe
d'oscillation et d'autre part l'instruction avec les paramtres de pntration (voir
"Oscillation asynchrone").
2. Dfinir les actions synchrones au dplacement {
Par le biais des actions synchrones, il est possible de :
Inhiber le mouvement de pntration, jusqu' ce que l'axe d'oscillation se trouve
l'intrieur d'une zone d'inversion
(ii1, ii2) ou un point d'inversion (U1, U2).
Arrterl'oscillation pendant la pntration au point d'inversion de sens.
Redmarrerl'oscillation lorsque la pntration partielle esttermine.
Dfinir le lancement de la pntration partielle suivante .
3. Affecter les axes d'oscillation et de pntration et dfinir la pntration totale et partielle.
Remarque
Avant le dmarrage de l'oscillation, les conditions synchrones pour le comportement des
axes doivent tre dfinies.
Notions complmentaires
650 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Oscillation
11.2 Oscillation commande par des actions synchrones (OSCILL)
Remarque
Dans certains cas particuliers, les conditions synchrones peuvent galement tre
programmes diffremment.
des mots-cls
WHEN DO
Quand..., alors...
WHENEVER DO
A chaque fois que..., alors...
Fonctions
Avec les instructions dcrites en dtail ci-aprs, vous pouvez raliser les fonctions
suivantes :
1. Pntration au point d'inversion de sens.
2. Pntration dans la zone d'inversion de sens.
3. Pntration aux deux points d'inversion de sens.
4. Arrt de l'oscillation au point d'inversion de sens.
5. Redmarrage de l'oscillation.
6. Inhibition puis dmarrage de la pntration partielle suivante.
Toutes les actions synchrones mentionnes ici titre d'exemple sont bases sur les
hypothses { suivantes :
point d'inversion de sens 1 < point d'inversion de sens 2
Z = axe d'oscillation
X = axe de pntration
Remarque
Pour plus d'explications, voir le chapitre Actions synchrones au dplacement.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 651
Oscillation
11.2 Oscillation commande par des actions synchrones (OSCILL)
Zone d'inversion de sens 1 A chaque fois que la position courante de l'axe d'oscillation
: est suprieure au dbut de la zone d'inversion de sens 1
WHENEVER dans le SCM, mettre la correction axiale de l'axe de
$AA_IM[Z]>$SA_OSCILL_RESE
RVE_POS1[Z]+ii1 DO pntration 0%.
$AA_OVR[X] = 0
Zone d'inversion de sens 2 A chaque fois que la position courante de l'axe d'oscillation
: est infrieure au dbut de la zone d'inversion de sens 2 dans
WHENEVER le SC, mettre la correction axiale de l'axe de pntration
$AA_IM[Z]<$SA_OSCILL_RESE
RVE_POS2[Z]+ii2 DO 0%.
$AA_OVR[X] = 0
Zone d'inversion de sens 1 A chaque fois que la position courante de l'axe d'oscillation Z
: est suprieure ou infrieure la position du point d'inversion
WHENEVER de sens 1 dans le SCM, mettre la correction axiale de l'axe
$AA_IM[Z]<>$SA_OSCILL_RES
ERVE_POS1[Z] DO de pntration X 0% et la correction axiale de l'axe
$AA_OVR[X] = 0
$AA_OVR[Z] = 100 d'oscillation Z 100%.
Zone d'inversion de sens 2 A chaque fois que la position courante de l'axe d'oscillation
: Zu est suprieure ou infrieure la position du point
Pour le point d'inversion 2 : d'inversion de sens 2 dans le SCM, mettre la correction
WHENEVER axiale de l'axe de pntration X 0% et la correction axiale
$AA_IM[Z]<>$SA_OSCILL_RES
ERVE_POS2[Z] DO de l'axe d'oscillation Z 100%.
$AA_OVR[X] = 0
$AA_OVR[Z] = 100
Notions complmentaires
652 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Oscillation
11.2 Oscillation commande par des actions synchrones (OSCILL)
Zone d'inversion de sens 1 A chaque fois que la position courante de l'axe d'oscillation
: est gale la position d'inversion de sens 1 dans le SCM,
WHENEVER mettre la correction axiale de l'axe d'oscillation 0% et la
$AA_IM[Z]<>$SA_OSCILL_RES
ERVE_POS1[Z] DO correction axiale de l'axe de pntration 100%.
$AA_OVR[X] = 0
$AA_OVR[Z] = 100
Zone d'inversion de sens 2 A chaque fois que la position courante de l'axe d'oscillation
: Zu est gale la position d'inversion de sens 2 dans le SCM,
WHENEVER mettre la correction axiale de l'axe d'oscillation X 0% et la
$AA_IM[Z]<>$SA_OSCILL_RES
ERVE_POS1[Z] DO correction axiale de l'axe de pntration 100%.
$AA_OVR[X] = 0
$AA_OVR[Z] = 100
Remarque
Pour plus d'informations ce sujet, voir le chapitre "Actions synchrones au dplacement".
Redmarrage de l'oscillation
Cette action synchrone sert reprendre le mouvement d'oscillation, quand la pntration
partielle est termine.
Avec les hypothses formules (voir ci-dessus), les instructions sont les suivantes :
WHENEVER $AA_DTEPW[X]==0
DO $AA_OVR[Z]= 100 A chaque fois que la distance restant parcourir pour la
pntration partielle de l'axe de pntration X est gale
zro dans le SCM, mettre la correction axiale de l'axe
d'oscillation 100%.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 653
Oscillation
11.2 Oscillation commande par des actions synchrones (OSCILL)
Selon les hypothses formules (voir ci-dessus), les instructions sont les suivantes pour le
point d'inversion de sens 1 par exemple :
1. Dfinir les marques : A chaque fois que la distance restant parcourir pour la
WHENEVER $AA_DTEPW[X]==0 pntration partielle de l'axe de pntration X est gale
DO $AC_MARKER[1] = 1
zro dans le SCM, mettre le mmento avec l'indice 1 la
valeur 1.
2. Effacer les marques A chaque fois que la position courante de l'axe d'oscillation Z
WHENEVER $AA_IM[Z]<> est suprieure ou infrieure la position du point d'inversion
$SA_OSCILL_RESERVE_POS1[Z
] DO $AC_MARKER[1] = 0 de sens 1 dans le SCM, mettre le mmento 1 0.
3. Inhiber la pntration A chaque fois que le mmento 1 est gal, mettre la correction
WHENEVER $AC_MARKER[1]==1 axiale de l'axe de pntration X 0%.
DO $AA_OVR[X] = 0
Notions complmentaires
654 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Poinonnage et grignotage 12
12.1 Activation, dsactivation
Fonction
Activation/dsactivation du poinonnage ou du grignotage
PON et SON permettent d'activer la fonction de poinonnage ou de grignotage. SPOF met fin
toutes les fonctions spcifiques au poinonnage et au grignotage. Les instructions modales
PON et SON s'excluent mutuellement, c'est--dire que PON dsactive SON et vice versa.
Remarque
La dfinition du temps de retard s'effectue dans la donne de rglage
SD42400 $SC_PUNCH_DWELLTIME.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 655
Poinonnage et grignotage
12.1 Activation, dsactivation
Remarque
Condition : une deuxime paire d'E/S doit tre dfinie dans un paramtre machine pour la
fonctionnalit de poinonnage ( voir les indications du constructeur de la machine !).
Syntaxe
PON G... X... Y... Z...
SON G... X... Y... Z...
SONS G... X... Y... Z...
PONS G... X... Y... Z...
PDELAYON
PDELAYOF
PUNCHACC(<Smini>,<Amini>,<Smaxi>,<Amaxi>)
SPIF1/SPIF2
SPOF
Signification
PON
Activer le poinonnage
SON
Activer le grignotage
PONS
Activer le poinonnage la priode d'appel de l'interpolateur
SONS
Activer le grignotage la priode d'appel de l'interpolateur
SPOF
Dsactiver le poinonnage/grignotage
PDELAYON
Activer le poinonnage avec temporisation
PDELAYOF
Dsactiver le poinonnage avec temporisation
PUNCHACC
Activer l'acclration en fonction de la course
Paramtre :
<Smini>
Distance minimale entre les trous
<Amini>
Acclration initiale
<Amini> peut tre suprieur <Amaxi>.
<Smaxi>
Distance maximale entre les trous
<Amaxi>
Acclration finale
<Amax> peut tre suprieur <Amin>.
SPIF1
Activer la premire interface de poinonnage
Le pilotage du poinon s'effectue avec la premire paire d'E/S rapides.
Notions complmentaires
656 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Poinonnage et grignotage
12.1 Activation, dsactivation
SPIF2
Activer la deuxime interface de poinonnage
Le pilotage du poinon s'effectue avec la deuxime paire d'E/S rapides.
Nota :
aprs un RESET ou un dmarrage de la commande, la premire interface
de poinonnage est toujours active. Si une seule interface de poinonnage
est utilise, il n'est pas ncessaire de la programmer.
Exemples
Exemple 1 : activer le grignotage
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 657
Poinonnage et grignotage
12.1 Activation, dsactivation
Informations complmentaires
Poinonnage et grignotage la priode d'appel de l'interpolateur (PONS/SONS)
Le poinonnage et le grignotage la priode d'appel de l'interpolateur ne sont pas possibles
simultanment dans plusieurs canaux. L'activation de PONS ou SONS n'est possible que dans
un seul canal la fois.
Acclration en fonction de la course (PUNCHACC)
Exemple :
PUNCHACC(2,50,10,100)
Distances entre les trous infrieures 2mm :
Le dplacement a lieu avec une acclration gale 50% de l'acclration maximale.
Distances entre les trous comprises entre 2mm et 10mm :
L'acclration augmente proportionnellement la distance, jusqu' 100%.
Distances entre les trous suprieures 10mm :
Dplacement avec une acclration gale 100%.
Dclenchement du premier coup de poinon
Selon qu'il s'agit du poinonnage ou du grignotage, le dclenchement du premier coup de
poinon, aprs activation de la fonction, intervient des instants diffrents :
PON/PONS :
Tous les coups de poinon - y compris celui du premier bloc aprs l'activation - sont
excuts en fin de bloc.
SON/SONS :
Le premier coup de poinon aprs l'activation du grignotage, est toujours excut en
dbut de bloc.
Les autres coups de poinon sont toujours librs en fin de bloc.
<
321
621
;
3RVLWLRQQHPHQW
3RVLWLRQQHPHQWHWFRXSGHSRLQRQ
Notions complmentaires
658 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Poinonnage et grignotage
12.1 Activation, dsactivation
Remarque
Pour positionner des outils indexables de faon tangentielle la trajectoire programme,
utilisez la fonction Positionnement tangentiel.
Utilisation d'instructions M
Grce la macroprogrammation, il est toujours possible d'utiliser des fonctions M spciales
au lieu des instructions en language de programmation (compatibilit). Les correspondances
avec les systmes plus anciens sont les suivantes :
Exemple de programmation :
Code de programme Commentaire
...
N100 X100 M20 ; Positionnement sans dclenchement de poionnage.
N110 X120 M22 ; Activer le grignotage, dclenchement d'un coup
avant et aprs le dplacement.
N120 X150 Y150 M25 ; Activer le poinonnage, dclenchement d'un coup
la fin du dplacement.
...
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 659
Poinonnage et grignotage
12.2 Prparation automatique du dplacement
Fonction
Segmentation en distances partielles
Quand le poinonnage ou le grignotage est activ, SPP et SPN provoquent la segmentation
en un nombre donn de distances partielles de mme longueur (rpartition quidistante) de
l'ensemble du dplacement programm pour les axes interpolation. En interne, chaque
distance partielle correspond un bloc.
Nombre de coups de poinon
En poinonnage, le premier coup de poinon intervient au point final de la premire distance
partielle ; par contre, en grignotage, il intervient au point de dpart de la premire distance
partielle. Sur la distance globale parcourue, les valeurs sont les suivantes :
Poinonnage : nombre de coups = nombre de distances partielles
Grignotage : nombre de coups = nombre de distances partielles + 1
Fonctions auxiliaires
Les fonctions auxiliaires sont excutes dans le premier des blocs gnrs.
Syntaxe
SPP=
SPN=
Signification
Notions complmentaires
660 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Poinonnage et grignotage
12.2 Prparation automatique du dplacement
Exemple 1
Les parcours de grignotage doivent tre dcomposs automatiquement en distances
partielles identiques.
;
<
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 661
Poinonnage et grignotage
12.2 Prparation automatique du dplacement
Exemple 2
On souhaite une segmentation automatique de la distance parcourir pour chaque range
de trous. Pour la segmentation, la longueur maximale de distance partielle (valeur de SPP)
sera programme.
;
<
Notions complmentaires
662 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Poinonnage et grignotage
12.2 Prparation automatique du dplacement
Remarque
La segmentation du dplacement avec SPP donne toujours lieu des dplacements
quidistants : toutes les distances partielles ont la mme longueur. Autrement dit, la taille de
la distance partielle programme (valeur de SPP) n'est valable que si, et seulement si, le
quotient du dplacement total par la valeur de SPP est un entier. Si ce n'est pas le cas, la
taille de la distance partielle est rduite, de faon interne, de manire que le quotient soit
un entier.
<
<
(
(
; ;
;< 'LVWDQFHSDUFRXULUSURJUDPPH
EORFGHJULJQRWDJHSRLQRQQDJH
'LVWDQFHSDUWLHOOHSURJUDPPH
(
(
'LVWDQFHSDUWLHOOHDXWRPDWLTXHPHQWDUURQGLH
Exemple :
N10 G1 G91 SON X10 Y10
N20 SPP=3.5 X15 Y15
Avec un dplacement total de 15 mm et une distance partielle de 3,5 mm, on obtient un
quotient qui n'est pas un nombre entier (4.28). Une rduction de la valeur de SPP a donc
lieu jusqu' l'obtention d'un quotient entier. Il en rsulte une taille de distance partielle de 3
mm.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 663
Poinonnage et grignotage
12.2 Prparation automatique du dplacement
<
<
<
; ;
;
;<'LVWDQFHSDUFRXULUSURJUDPPH
; 'LVWDQFHSDUWLHOOHFDOFXOHDXWRPDWLTXHPHQWHQ ;
< 'LVWDQFHSDUWLHOOHFDOFXOHDXWRPDWLTXHPHQWHQ <
Remarque
Si le poinonnage/grignotage sont disponibles sur votre commande numrique, vous pouvez
utiliser la programmation de la segmentation automatique du dplacement avec SPN et SPP
, indpendamment de cette technologie.
Notions complmentaires
664 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Poinonnage et grignotage
12.2 Prparation automatique du dplacement
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 665
Poinonnage et grignotage
12.2 Prparation automatique du dplacement
Notions complmentaires
666 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Rectification 13
13.1 Surveillance d'outil spcifique la rectification dans le programme
pice (TMON, TMOF)
Fonction
Avec l'instruction TMON, vous pouvez activer, dans le programme pice CN, la surveillance de
la gomtrie et de la vitesse de rotation pour des outils de rectification (types 400 499). La
surveillance reste active jusqu ce quelle soit dsactive dans le programme pice avec
linstruction TMOF.
Remarque
Respectez les consignes du constructeur de la machine !
Conditions requises
Les paramtres d'outil $TC_TPG1 $TC_TPG9 spcifiques la rectification doivent tre
activs.
Syntaxe
TMON (<n T>)
TMOF (<n T>)
Signification
TMON
Instruction d'activation de la surveillance d'outil spcifique la rectification
TMOF
Instruction de dsactivation de la surveillance d'outil spcifique la
rectification
<n T>
Indication du numro T
Remarque :
L'indication du numro T est ncessaire uniquement si l'outil portant ce
numro T n'est pas actif.
TMOF(0)
dsactiver la surveillance pour tous les outils
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 667
Rectification
13.1 Surveillance d'outil spcifique la rectification dans le programme pice (TMON, TMOF)
Autres informations
Paramtres d'outil spcifiques la rectification
Notions complmentaires
668 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Autres fonctions 14
14.1 Fonctions d'axe (AXNAME, AX, SPI, AXTOSPI, ISAXIS,
AXSTRING, MODAXVAL)
Fonction
AXNAMEest utilis par exemple pour la cration de cycles caractre gnral lorsque les
noms des axes ne sont pas connus.
AX est utilis pour la programmation indirecte d'axes gomtriques et d'axes synchrones. Le
descripteur d'axe est alors enregistr dans une variable de type AXIS ou est fourni par une
instruction telle qu'AXNAME ou SPI.
SPIest utilis lorsque des fonctions d'axe sont programmes pour une broche (par exemple
une broche synchrone).
AXTOSPI est utilis pour convertir un descripteur d'axe en indice de broche (fonction inverse
de SPI).
AXSTRING est utilis pour convertir un descripteur d'axe (type de donnes AXIS) en chane de
caractres (fonction inverse de AXNAME).
ISAXIS est utilis dans des cycles caractre gnral, pour vrifier l'existence d'un axe
gomtrique bien dfini et pour viter qu'un appel conscutif de $P_AXNX soit interrompu du
fait d'une erreur.
MODAXVAL est utilis pour dterminer la position modulo d'axes rotatifs modulo.
Syntaxe
AXNAME("chane de caractres")
AX[AXNAME("chane de caractres")]
SPI(n)
AXTOSPI(A) ou AXTOSPI(B) ou AXTOSPI(C)
AXSTRING( SPI(n) )
ISAXIS(<numro d'axe gomtrique>)
<Position modulo>=MODAXVAL(<axe>,<position d'axe>)
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 669
Autres fonctions
14.1 Fonctions d'axe (AXNAME, AX, SPI, AXTOSPI, ISAXIS, AXSTRING, MODAXVAL)
Signification
AXNAME
Convertit la chane de caractres d'entre en un descripteur d'axe ; la
chane de caractres d'entre doit comporter un nom d'axe valide.
AX
Descripteur d'axe variable
SPI
Conversion du numro de broche indiqu en descripteur d'axe ; le
paramtre doit tre un numro de broche valide.
n
numro de broche
AXTOSPI
Convertit un descripteur d'axe en un indice de broche de type Integer.
AXTOSPI correspond la fonction d'inversion pour SPI.
X, Y, Z
Descripteur d'axe de type AXIS comme variable ou comme constante
AXSTRING
La chane de caractres avec numro de broche attribu.
ISAXIS
vrifie si l'axe gomtrique indiqu existe
MODAXVAL
Dtermination de la position modulo des axes rotatifs modulo, qui
correspond au reste modulo par rapport la zone modulo paramtre
(0 360 degrs en rglage par dfaut ; les paramtres machine
MD30340 MODULO_RANGE_START et MD30330
$MA_MODULO_RANGE permettent de modifier le dbut et la taille de
la zone modulo).
Remarque
Extensions SPI
La fonction d'axe SPI(n) est galement utilisable pour la lecture et l'criture de composantes
de frame. Il est ainsi possible, par exemple, d'crire des frames avec la syntaxe
$P_PFRAME[SPI(1),TR]=2.22.
Exemples
Exemple 1 : AXNAME, AX, ISAXIS
Notions complmentaires
670 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Autres fonctions
14.1 Fonctions d'axe (AXNAME, AX, SPI, AXTOSPI, ISAXIS, AXSTRING, MODAXVAL)
Exemple 2 : AXSTRING
En cas de programmation avec AXSTRING[SPI(n)], ce n'est plus l'indice de l'axe auquel la
broche est affecte qui est sorti en tant que numro de broche, mais la chane de caractres
"Sn".
Exemple 3 : MODAXVAL
La position modulo de l'axe rotatif modulo A doit tre dtermine.
Le calcul part de la position d'axe 372.55.
La zone modulo paramtre s'tend de 0 360 degrs :
MD30340 MODULO_RANGE_START = 0
MD30330 $MA_MODULO_RANGE = 360
Exemple 4 : MODAXVAL
Si le descripteur d'axe programm ne se rapporte pas un axe rotatif modulo, la valeur
convertir (<position d'axe>) est retourne telle quelle.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 671
Autres fonctions
14.2 Axes gomtriques permutables (GEOAX)
Fonction
La fonction "Axes gomtriques permutables" permet de modifier, partir du programme
pice, le groupe d'axes gomtriques qui a t configur dans les paramtres machine. Un
axe de canal dfini comme axe supplmentaire synchrone peut remplacer un axe
gomtrique quelconque.
Syntaxe
GEOAX(<n>,<axe de canal>,<n>,<axe de canal>,<n>,<axe de canal>)
GEOAX()
Signification
GEOAX(...)
Instruction de permutation des axes gomtriques
Remarque :
GEOAX()sans indication de paramtre appelle la configuration de base
des axes gomtriques.
<n>
Ce paramtre indique le numro de l'axe gomtrique auquel l'axe de
canal dont l'indication suit doit tre affect.
Plage de valeurs 1, 2 ou 3
:
Remarque :
<n>=0 permet de supprimer du groupe d'axes gomtriques l'axe de
canal dont l'indication suit, sans contrepartie.
<Axe de canal>
Ce paramtre indique le nom de l'axe de canal qui doit tre intgr
dans le groupe d'axes gomtriques.
Notions complmentaires
672 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Autres fonctions
14.2 Axes gomtriques permutables (GEOAX)
Exemples
Exemple 1 : Deux axes permuts de faon alterne comme axe gomtrique
Un chariot porte-outil peut tre dplac par le biais des axes de canal X1, Y1, Z1, Z2 :
=
=
<
;
<
=
;
Les axes gomtriques sont configurs de sorte que d'abord, aprs la mise sous tension, Z1
soit actif en tant que 3e axe gomtrique avec le nom d'axe gomtrique "Z" et qu'il forme le
groupe d'axes gomtriques avec X1 et Y1.
Dans le programme pice, les axes Z1 et Z2 doivent ensuite intervenir de faon alterne
comme axe gomtrique Z :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 673
Autres fonctions
14.2 Axes gomtriques permutables (GEOAX)
Notions complmentaires
674 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Autres fonctions
14.2 Axes gomtriques permutables (GEOAX)
Remarque
Configuration d'axes
La correspondance entre les axes gomtriques, les axes supplmentaires, les axes de
canal et les axes machine, ainsi que la dfinition des noms des diffrents types d'axe, est
dfinie par les paramtres machine suivants :
MD20050 $MC_AXCONF_GEOAX_ASIGN_TAB (affectation de l'axe gomtrique
l'axe de canal)
MD20060 $MC_AXCONF_GEOAX_NAME_TAB (nom d'axe gomtrique dans le canal)
MD20070 $MC_AXCONF_MACHAX_USED (numro d'axe machine valable dans le canal)
MD20080 $MC_AXCONF_CHANAX_NAME_TAB (nom d'axe de canal dans le canal)
MD10000 $MN_AXCONF_MACHAX_NAME_TAB (nom d'axe machine)
MD35000 $MA_SPIND_ASSIGN_TO_MACHAX (affectation de la broche l'axe machine)
Bibliographie :
Description fonctionnelle Fonctions de base ; axes, systmes de coordonnes, frames (K2)
Restrictions
La permutation des axes gomtriques n'est pas possible dans les cas suivants :
Transformation active
Interpolation de type spline active
Correction de rayon d'outil active
Correction d'outil fine active
Quand l'axe gomtrique et l'axe de canal portent le mme nom, la permutation de l'axe
gomtrique est impossible.
Aucun axe concern par la permutation ne doit tre concern par une action pouvant
durer au-del des limites de bloc, tel que cela peut tre le cas par exemple pour les axes
de positionnement de type A et les axes asservis.
L'instruction GEOAX permet uniquement de remplacer des axes gomtriques qui existent
dj au moment de la mise sous tension (il est donc impossible d'en dfinir de
nouveaux).
Pendant la prparation de la table de contour (CONTPRON, CONTDCON), une permutation d'axe
avec GEOAX entrane une alarme.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 675
Autres fonctions
14.2 Axes gomtriques permutables (GEOAX)
Conditions marginales
Etat d'un axe aprs le remplacement
Un axe remplac par commutation dans le groupe d'axes gomtriques est programmable
en tant qu'axe supplmentaire au moyen de son nom d'axe de canal aprs la commutation.
Frames, zones de protection, limitations de la zone de travail
La permutation des axes gomtriques supprime tous les frames, les zones de protection et
les limitations de la zone de travail.
Coordonnes polaires
Une permutation des axes gomtriques avec GEOAX met les coordonnes polaires modales
la valeur 0 de manire analogue un changement de plan avec G17-G19.
DRF, DO
Un ventuel dcalage par manivelle (DRF) ou un dcalage d'origine externe (DO) reste actif
aprs la permutation.
Configuration de base des axes gomtriques
L'instruction GEOAX() appelle la configuration de base du groupe d'axes gomtriques.
Aprs un POWER ON et en cas de commutation en mode de fonctionnement "Prise de
rfrence", on retourne automatiquement la configuration de base.
Correction de longueur d'outil
Une correction de longueur d'outil active reste active aprs la permutation. Pour les axes
gomtriques qui viennent d'tre intgrs ou dont la position a t permute, on considre
cependant que le dplacement correspondant n'a pas encore t excut. Pour la premire
instruction de dplacement de ces axes gomtriques, le dplacement rsultant est donc
gal la somme de la correction de longueur d'outil et du dplacement programm.
Les axes gomtriques qui gardent leur position dans le groupe d'axes aprs la permutation
conservent galement leur tat relatif la correction de longueur d'outil.
Configuration d'axe gomtrique en cas de transformation active
La configuration d'axe gomtrique valable dans une transformation active (dfinie dans les
paramtres machine) ne peut pas tre modifie avec la fonction "Axes gomtriques
permutables".
S'il est ncessaire de modifier la configuration d'axe gomtrique en liaison avec des
transformations, ceci est uniquement possible au moyen d'une transformation
supplmentaire.
L'activation d'une transformation efface une configuration d'axe gomtrique modifie avec
GEOAX.
Notions complmentaires
676 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Autres fonctions
14.3 Conteneur d'axes (AXCTSWE, AXCTSWED)
Fonction
Dans le cas des machines transfert rotatif/multibroches, les axes supportant la pice se
dplacent d'une unit d'usinage la suivante. Comme les units d'usinage sont pilotes par
diffrents canaux NCU, les axes supportant la pice doivent tre raffects dynamiquement
au canal NCU correspondant en cas de changement de poste d'usinage/position. Les
conteneurs d'axes ont t prvus cet effet.
A un instant donn, un seul axe/broche d'ablocage de pice est actif au niveau de l'unit
d'usinage locale. Le conteneur d'axes regroupe tous les axes/broches d'ablocage parmi
lesquels seulement un axe/broche est activ pour l'unit d'usinage concerne.
Le remplacement des axes dfinis dans un conteneur d'axes a lieu par dcalage des
inscriptions dans le conteneur ("rotation du conteneur d'axes") avec un pas qui peut tre
dfini par une donne de rglage (nombre de ports).
Depuis le programme pice, l'appel d'une rotation du conteneur d'axes s'effectue avec
l'instruction AXCTSWE ou AXCTSWED.
Syntaxe
AXCTSWE(<conteneur d'axes>)
AXCTSWED(<conteneur d'axes>)
Signification
AXCTSWE
Instruction de rotation d'un conteneur d'axes
La rotation du conteneur d'axes avec le pas spcifique au conteneur,
qui est rang dans la donne de rglage SD41700
$SN_AXCT_SWWIDTH[<numro de conteneur>], a lieu lorsque la
commande a reu les validations de tous les canaux possdant des
axes dans le conteneur.
AXCTSWED
Instruction de rotation d'un conteneur d'axes sous le seul effet du
canal actif (variante de l'instruction pour la mise en service !)
Remarque :
Les axes indiqus dans le conteneur ne sont librs que si tous les
autres canaux, qui possdent des axes dans le conteneur, sont
l'tat Reset.
<Conteneur d'axes>
Descripteur du conteneur d'axes pour lequel la rotation doit tre
excute.
Les indications possibles sont :
CT<numro de conteneur>
Le numro du conteneur d'axes est
attach la combinaison de lettres CT.
Exemple : CT3
<Nom de conteneur>
Nom individuel du conteneur d'axes,
rgl avec
MD12750 $MN_AXCT_NAME_TAB.
Exemple : A_CONT3
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 677
Autres fonctions
14.3 Conteneur d'axes (AXCTSWE, AXCTSWED)
Autres informations
Conteneur d'axes
Un conteneur d'axes peut contenir :
des axes locaux et/ou
Axes Link
Les conteneurs d'axes axes Link constituent une fonctionnalit commune toutes les
NCUs (globale) qui est coordonne par la commande. Un conteneur d'axes peut galement
grer uniquement des axes locaux.
Bibliographie :
Pour des informations dtailles sur la configuration des conteneurs d'axes, voir :
Description fonctionnelle Fonctions d'extension ; Plusieurs panneaux de commande sur
plusieurs NCU, Systmes dcentraliss (B3)
Critres de libration
AXCTSWE( )
Chaque canal, dont les axes sont inscrits dans le conteneur indiqu, fournit la validation pour
une rotation conteneur (enable), lorsque l'usinage de la position/du poste correspondant est
termin. La rotation du conteneur d'axes avec le pas spcifique au conteneur, qui est rang
dans la donne de rglage SD41700 $SN_AXCT_SWWIDTH[<numro de conteneur>], a
lieu lorsque la commande a reu les validations de tous les canaux possdant des axes
dans le conteneur.
Notions complmentaires
678 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Autres fonctions
14.3 Conteneur d'axes (AXCTSWE, AXCTSWED)
Exemple :
1RPG
D[H 1rGDQVO
LPDJHORJLTXH ,PDJHORJLTXH
GHFDQDO GHVD[HV GHVD[HVPDFKLQH
; $; >@$[HPDFKLQHORFDOH
< $; >@$[HPDFKLQHORFDOH
=
6
&7B6/ >@&RQWHQHXUG
D[HVLQVFULSWLRQ
HPSODFHPHQW
&RQWHQHXUG
D[HV &RQWHQHXUG
D[HV
1&B$; 1&B$;
1&B$; 1&B$;
1&B$; 1&B$;
$;&76:(&7
1&B$;
1&B$;
'FDODJHGHVLQVFULSWLRQVGX
FRQWHQHXUG
D[HVDYHFOHSDV
L'axe de canal Z se voit affect l'axe AX5 de NCU1 la place de l'axe AX1 de NCU1 aprs
rotation du conteneur d'axes de 1.
AXCTSWED ()
La variante d'instruction AXCTSWED() peut tre utilise pour simplifier la mise en service. Le
conteneur d'axes tourne du pas qui lui est spcifique et qui est rang dans la donne de
rglage SD41700 $SN_AXCT_SWWIDTH[<numro de conteneur>], sous le seul effet du
canal actif. Cette instruction ne peut tre utilise que si tous les autres canaux, qui
possdent des axes dans le conteneur, sont l'tat Reset.
Prise d'effet
La nouvelle affectation des axes aprs une rotation de conteneur d'axes concerne toutes les
NCU dont les canaux accdent au conteneur d'axes permut par intermdiaire de l'image
logique des axes machine.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 679
Autres fonctions
14.3 Conteneur d'axes (AXCTSWE, AXCTSWED)
Remarque
Ce comportement est rglable avec un paramtre machine. Tenez compte des indications
du constructeur de la machine.
Remarque
La rotation du conteneur d'axes avec GET/GETD implicites ne peut pas tre utilise pour un
axe prsentant l'tat d'un axe ddi l'excution du programme (un axe AP par exemple),
car cet axe devrait alors abandonner cet tat pour la rotation du conteneur d'axes.
Notions complmentaires
680 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Autres fonctions
14.4 Attente de la position d'axe dfinitive (WAITENC)
Fonction
L'instruction de langage WAITENC permet d'attendre dans le programme CN que les positions
d'axes synchronises ou restaures pour les axes configurs avec
MD34800 $MA_WAIT_ENC_VALID = 1 soient disponibles.
Une interruption peut avoir lieu en mode d'attente, par ex. par le dmarrage d'un ASUP ou
par le changement de mode de fonctionnement en JOG. Le mode d'attente est
ventuellement repris avec la poursuite du programme.
Remarque
Le mode d'attente est affich dans l'interface utilisateur au moyen de l'tat d'arrt "Attendre
systme de mesure".
Syntaxe
WAITENC peut tre programm dans la section d'un programme CN quelconque.
La programmation doit tre ralise dans un bloc spcifique :
...
WAITENC
...
Exemple
WAITENC est par ex. utilis dans le programme d'application command par vnement
.../_N_CMA_DIR/_N_PROG_EVENT_SPF ainsi que le montre l'exemple d'application
suivant.
Exemple d'application :retrait d'outil aprs POWER OFF avec transformation d'orientation
Un usinage avec orientation d'outil a t interrompu par une coupure de courant.
Le programme d'application command par vnement
.../_N_CMA_DIR/_N_PROG_EVENT_SPF est appel lors du dmarrage s'en suivant.
Dans le programme d'application command par vnement, WAITENC permet d'attendre des
positions d'axe synchronises ou restaures afin de pouvoir calculer par la suite une grille
pour orienter le SCP dans la direction de l'outil.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 681
Autres fonctions
14.4 Attente de la position d'axe dfinitive (WAITENC)
En mode JOG, l'outil peut par la suite, par un dplacement de retrait, tre dgag dans la
direction de l'axe d'outil.
Notions complmentaires
682 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Autres fonctions
14.5 Contrler le langage CN existant (STRINGIS)
Fonction
La fonction STRINGIS(...) permet de contrler si la chane de caractres indique est
disponible comme lment de langage de programmation CN dans l'tendue actuelle des
langages.
Dfinition
INT STRINGIS(STRING <nom>)
Syntaxe
STRINGIS(<nom>)
Signification
Adresses DIN ou CN comme par ex. ADIS, RNDM, SPN, SR, MEAS
Fonctions par ex. TANG(...) ou GETMDACT
Procdures par ex. SBLOF.
Mots-cls par ex. ACN, DEFINE ou SETMS
Donnes systme par ex. paramtres machine $M... , donnes de rglage $S... ou
donnes optionnelles $O...
Variable systme $A... , $V... , $P...
Paramtre de calcul R...
Noms de cycles activs
Variables GUD et LUD
Noms de macros
Noms d'tiquettes
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 683
Autres fonctions
14.5 Contrler le langage CN existant (STRINGIS)
Valeur de retour
La valeur de retour est uniquement significative dans les 3 premiers chiffres en notation
dcimale. Le format de la valeur de retour est yxx, y tant alors = information de base et xx =
information dtaille.
Notions complmentaires
684 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Autres fonctions
14.5 Contrler le langage CN existant (STRINGIS)
Exemples
Dans les exemples ci-dessous, il est suppos que les lments de langage CN indiqus
comme chane de caractres, sauf indication contraire, sont principalement programmables
dans la commande.
1. La chane de caractres "T" est dfinie comme fonction auxiliaire :
400 == STRINGIS("T")
000 == STRINGIS ("T3")
14.La chane de caractres "XYZ" n'est pas une instruction connue dans NCK, variable
GUD, nom de macro ni nom de cycle :
000 == STRINGIS("XYZ")
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 685
Autres fonctions
14.5 Contrler le langage CN existant (STRINGIS)
Mode ISO
Si la fonction "Mode ISO" est active :
MD18800 $MN_MM_EXTERN_LANGUAGE (activation de langages CN externes)
MD10880 $MN_ MM_EXTERN_CNC_SYSTEM (systme de commande devant tre
adapt)
TRINGIS contrle la chane de caractres indique tout d'abord titre de code G
SINUMERIK. Si la chane de caractres n'est pas un code G SINUMERIK, elle est par la
suite contrle titre de code G ISO.
Des commutations programmes (G290 (mode SINUMERIK), G291 (mode ISO)) n'ont aucun
effet sur STRINGIS.
Exemple
Les importants paramtres machine pour la fonction STRINGIS(...) ont les valeurs
suivantes :
MD10711 $MN_NC_LANGUAGE_CONFIGURATION = 2 (seules les instructions de
langage CN dont les options sont configures sont considres comme tant reconnues)
MD19410 $ON_TRAFO_TYPE_MASK = 'H0' (option : transformations)
MD10700 $MN_PREPROCESSING_LEVEL='H43' (conditionnement pour cycles actif)
Le programme exemplaire ci-dessous est excut sans messsage d'erreur :
Notions complmentaires
686 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Autres fonctions
14.6 Lecture de l'appel de la fonction ISVAR et des paramtres machine d'indice de tableau
Fonction
L'instruction ISVAR est une fonction au sens du langage CN avec :
Valeur de la fonction du type BOOL
un paramtre de transmission du type STRING
L'instruction ISVAR fournit TRUE, lorsque le paramtre de transfert contient une variable
connue de la CN (paramtre machine, donne de rglage, variable systme ou variable
gnrale telle qu'une donne utilisateur GUD).
Syntaxe
ISVAR(<descripteur de variable>)
ISVAR(<descripteur>,[<valeur>,<valeur>])
Signification
<Descripteur de variable>
Le paramtre de transmission du type chane de caractres
peut tre adimensionnel, monodimensionnel ou
bidimensionnel
<Descripteur>
Descripteur avec une variable connue de la CN, avec ou sans
indice de tableau comme paramtre machine, donne de
rglage, variable systme ou variable gnrale.
Extension :
dans le cas de paramtres machine gnraux et spcifiques
un canal, le premier lment de tableau est galement lu
mme si l'indice est manquant
<Valeur>
Valeur de la fonction du type BOOL
Vrifications
Conformment au paramtre de transmission, les points suivants sont vrifis :
il y a un descripteur
il s'agit d'un champ monodimensionnel ou bidimensionnel
un indice de tableau est admis
Si tous ces points sont affirmatifs, l'tat TRUE est indiqu en retour. Si un seul des points est
ngatif ou s'il existe une erreur de syntaxe, c'est l'tat FALSE qui est retourn. Les variables
axiales sont acceptes en tant qu'indices pour les noms d'axe, mais elles ne sont pas
vrifies plus prcisment.
Extension : Lecture du tableau des paramtres machine et des donnes de rglage sans
indice.
L'alarme 12400 "Canal % 1 Bloc % 2 Champ % 3 Elment non disponible" n'est plus mise
par les paramtres machine gnraux et spcifiques un canal si l'indice est manquant.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 687
Autres fonctions
14.6 Lecture de l'appel de la fonction ISVAR et des paramtres machine d'indice de tableau
En outre, l'indice d'axe au moins doit tre programm pour les paramtres machine
spcifiques un axe. Dans le cas contraire, l'alarme 12400 est mise.
Notions complmentaires
688 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Autres fonctions
14.7 Apprentissage de compensations (QECLRNON, QECLRNOF)
[ P
,, ,
[ P
,,, ,9
Syntaxe
QECLRNON
QECLRNOF
Activation de la procdure d'apprentissage : QECLRNON
L'activation de la procdure d'apprentissage proprement dite s'effectue dans le programme
CN avec l'instruction QECLRNON :
QECLRNON (X1, Y1, Z1, Q)
Les caractristiques sont modifies uniquement si cette instruction est active.
Dsactivation de l'apprentissage : QECLRNOF
A la fin des dplacements d'apprentissage des axes souhaits, la procdure d'apprentissage
se dsactive simultanment pour tous les axes avec QECLRNOF.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 689
Autres fonctions
14.7 Apprentissage de compensations (QECLRNON, QECLRNOF)
Signification
Description
Les dplacements des axes ncessaires l'apprentissage sont gnrs l'aide d'un
programme CN. Dans ce dernier, les dplacements d'apprentissage se prsentent sous la
forme d'un cycle d'apprentissage.
Premier apprentissage
Pour le premier apprentissage, la mise en service, il existe sur la disquette qui contient le
programme de base de l'AP, des programmes CN types pour s'initier aux dplacements
d'apprentissage et l'affectation des variables systme QFK :
Rapprentissage
Le rapprentissage permet d'optimiser les courbes caractristiques dj apprises. Les
donnes qui se trouvent dj dans la mmoire utilisateur sont alors utilises. Pour le
rapprentissage, vous adaptez les programmes CN types vos besoins.
Les paramtres du cycle d'apprentissage (par exemple QECLRN.SPF) doivent, le cas
chant, tre modifis pour le "rapprentissage" :
rgler "mode d'apprentissage" = 1
rduire le cas chant le "nombre de cycles d'apprentissage"
le cas chant, activer "l'apprentissage par zone" et fixer les limites de ces zones
Notions complmentaires
690 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Autres fonctions
14.8 Appel interactif des fentres depuis le programme pice (MMC)
Fonction
L'instruction MMC permet de dclencher, partir du programme pice, l'affichage de botes de
dialogue dfinies par l'utilisateur sur lIHM.
L'aspect de ces botes de dialogue est dfini par une configuration purement textuelle
(fichier COM dans le rpertoire des cycles), le logiciel systme IHM restant inchang.
Une bote de dialogue dfinie par l'utilisateur ne peut tre appele simultanment dans
diffrents canaux.
Syntaxe
MMC(CYCLES,PICTURE_ON,T_SK.COM,IMAGE,MGUD.DEF,IMAGE_3.AWB,TEST_1,A1"
,"S")
Signification
MMC
Appel interactif de botes de dialogue partir du programme pice
pour affichage sur lIHM.
CYCLES
Groupe fonctionnel dans lequel sont excuts les dialogues
utilisateur qui ont t configurs.
PICTURE_ON
ou Instruction : activation ou dsactivation bote de dialogue
PICTURE_OFF
T_SK.COM
Fichier com : Nom du fichier de botes de dialogue (cycles
utilisateur). L'aspect des botes de dialogue y est dfini. Les
variables utilisateur et/ou les commentaires peuvent tre affichs
dans la bote de dialogue.
BOITE
Nom de la bote de dialogue : la slection des diffrentes botes de
dialogue s'effectue par leurs noms.
MGUD.DEF
Fichier de dfinition de donnes utilisateur, dans lequel les variables
sont lues/crites.
BOITE_3.AWB
Fichier graphique
TEST_1
Dure d'affichage ou variable d'acquittement
A1
Variable de texte...",
"S"
Mode d'acquittement : synchrone, acquittement l'aide de la
touche logicielle "OK"
Bibliographie
Pour des informations dtailles sur la programmation de l'instruction MMC (avec des
exemples de programmation), voir : Manuel de mise en service.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 691
Autres fonctions
14.9 Temps d'excution du programme / Compteur de pices
Fonction
Pour la surveillance de processus technologiques, la fonction "Temps d'excution" met
disposition des compteurs chronomtriques internes de la CN, qui peuvent tre lus dans le
programme pice et dans les actions synchrones au moyen de variables systme
spcifiques la CN et au canal.
Le dclencheur de la mesure de temps d'excution ($AC_PROG_NET_TIME_TRIGGER) est
la seule variable systme de la fonction, qui est accessible en criture. Il sert oprer une
mesure slective de sections de programme, ce qui signifie que l'criture du dclencheur
dans le programme CN permet d'activer et de dsactiver la mesure de temps.
Spcifiques la CN
$AN_SETUP_TIME Temps (en minutes) depuis le dernier dmarrage de Activation
la commande avec les valeurs par dfaut permanente
("dmarrage froid")
Remise "0" automatique chaque dmarrage de la
commande avec les valeurs par dfaut.
$AN_POWERON_TIME Temps en minutes depuis le dernier dmarrage
normal de la commande ("dmarrage chaud")
Remise "0" automatique chaque dmarrage
normal de la commande.
Notions complmentaires
692 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Autres fonctions
14.9 Temps d'excution du programme / Compteur de pices
Spcifiques au canal
$AC_OPERATING_TIME Temps global en secondes pour l'excution de Activation par le
programmes CN en mode automatique paramtre
machine MD27860
Remise "0" automatique de la valeur chaque
dmarrage de la commande. Uniquement en
mode AUTO
$AC_CYCLE_TIME Temps d'excution du programme CN slectionn en
secondes
Remise "0" automatique de la valeur au dmarrage
d'un nouveau programme CN.
$AC_CUTTING_TIME Temps d'usinage en secondes
Le temps d'excution des axes interpolation (au
moins l'un d'entre eux est actif) est totalis sans
l'activation du rapide dans tous les programmes CN,
entre le dpart CN et la fin du programme / RESET
de la CN. La mesure est suspendue pendant tout
arrt temporis.
Remise "0" automatique de la valeur chaque
dmarrage de la commande avec les valeurs par
dfaut.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 693
Autres fonctions
14.9 Temps d'excution du programme / Compteur de pices
Remarque
Constructeur de la machine-outil
Les temporisations activables sont actives au moyen du paramtre machine
MD27860 $MC_PROCESSTIMER_MODE.
Le comportement des mesures de temps actives pour certaines fonctions (par ex. GOTOS,
correction = 0%, test d'avance actif, test de programme, ASUP, PROG_EVENT, ) est
configur au moyen des paramtres machine MD27850 $MC_PROG_NET_TIMER_MODE
et MD27860 $MC_PROCESSTIMER_MODE.
Bibliographie :
Description fonctionnelle Fonctions de base ; GMF, Canal, Mode de programme,
Comportement au reset (K1), chapitre : Temps d'excution de programme
Notions complmentaires
694 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Autres fonctions
14.9 Temps d'excution du programme / Compteur de pices
Remarque
Temps restant pour une pice
Lorsqu'il s'agit de produire des pices identiques dans la foule, les valeurs des
temporisations :
temps d'usinage de la dernire pice produite (voir $AC_OLD_PROG_NET_TIME)
et
temps d'usinage actuel (voir $AC_ACT_PROG_NET_TIME)
permettent de dterminer le temps restant requis pour une pice.
Le temps restant s'affiche sur l'interface utilisateur, en plus du temps d'usinage actuel.
IMPORTANT
Utilisation de STOPRE
Les variables systme $AC_OLD_PROG_NET_TIME et
$AC_OLD_PROG_NET_TIME_COUNT n'entranent pas d'arrt implicite du prtraitement.
En cas d'utilisation dans le programme pice, ceci n'est pas critique lorsque la valeur des
variables systme provient de l'excution prcdente du programme. Par contre, si le
dclencheur de la mesure du temps d'excution ($AC_PROG_NET_TIME_TRIGGER) est
crit avec une frquence leve, modifiant ainsi frquemment
$AC_OLD_PROG_NET_TIME, il est recommand d'utiliser un STOPRE explicite dans le
programme pice.
Contraintes
Recherche de bloc
Aucun temps d'excution de programme n'est dtermin pendant une recherche de bloc.
REPOS
La dure d'un processus REPOS est ajoute au temps d'usinage actuel
($AC_ACT_PROG_NET_TIME).
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 695
Autres fonctions
14.9 Temps d'excution du programme / Compteur de pices
Exemples
Exemple 1 : Mesure du temps de "mySubProgrammA"
Code de programme
...
N50 DO $AC_PROG_NET_TIME_TRIGGER=2
N60 FOR ii= 0 TO 300
N70 mySubProgrammA
N80 DO $AC_PROG_NET_TIME_TRIGGER=1
N95 ENDFOR
N97 mySubProgrammB
N98 M30
Code de programme
...
N10 DO $AC_PROG_NET_TIME_TRIGGER=2
N20 mySubProgrammA
N30 DO $AC_PROG_NET_TIME_TRIGGER=3
N40 mySubProgrammB
N50 DO $AC_PROG_NET_TIME_TRIGGER=4
N60 mySubProgrammC
N70 DO $AC_PROG_NET_TIME_TRIGGER=1
N80 mySubProgrammD
N90 M30
Notions complmentaires
696 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Autres fonctions
14.9 Temps d'excution du programme / Compteur de pices
Fonction
La fonction "Compteurs de pices" met disposition diffrents compteurs, qu'il est en
particulier possible d'utiliser en interne la commande pour le comptage de pices.
Les compteurs sont disponibles sous forme de variables systme spcifiques un canal
avec accs en criture et lecture dans la plage de valeurs de 0 999 999 999.
Remarque
Chaque compteur de pices est prrgl sa valeur par dfaut "0" au dmarrage de la
commande et son contenu peut tre lu/crit indpendamment de son mode d'activation.
Remarque
Des paramtres machine spcifiques au canal permettent de rgler le mode d'activation des
compteurs, l'instant de leur remise zro et l'algorithme de comptage.
Remarque
Comptage de pices avec fonction M dfinie par l'utilisateur
Des paramtres machine permettent de dfinir le dclenchement des impulsions de
comptage pour les diffrents compteurs de pices au moyen de fonctions M dfinies par
l'utilisateur la place du dclenchement la fin du programme M2/M30.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 697
Autres fonctions
14.9 Temps d'excution du programme / Compteur de pices
Bibliographie
Pour plus d'informations sur cette la fonction "Compteurs de pices", rfrez-vous la :
Description fonctionnelle Fonctions de base ; GMF, Canal, Mode de programme,
Comportement au reset (K1), chapitre : Compteurs de pices
Notions complmentaires
698 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Autres fonctions
14.10 Alarmes (SETAL)
Fonction
Les alarmes peuvent tre dfinies dans un programme CN. Elles sont affiches dans une
fentre particulire de l'interface utilisateur. A une alarme correspond obligatoirement une
raction de la commande qui dpend de la catgorie laquelle appartient l'alarme.
Bibliographie :
Pour de plus amples informations sur les ractions d'alarme, voir : Manuel de
programmation.
Syntaxe
SETAL(<numro d'alarme>)
SETAL(<numro d'alarme>,<chane de caractres>)
Signification
SETAL
Mot cl pour la programmation d'une alarme.
SETAL doit tre programm dans un bloc CN spcifique.
<Numro d'alarme>
Variable de type INT contenant le numro d'alarme.
La plage admise pour les numros d'alarmes est comprise entre
60000 et 69999, les numros 60000 64999 tant rservs pour les
cycles SIEMENS et les numros 65000 69999 la disposition de
l'utilisateur.
<Chane de
caractres> Lors de la programmation d'alarmes de cyclique utilisateur, il est
possible d'ajouter une chane de caractres comportant jusqu' 4
paramtres.
Dans ces paramtres, il est possible de dfinir des textes utilisateur
variables.
Les paramtres prdfinis suivants sont galement disponibles :
Paramtres Signification
%1 numro de canal
%2 numro de bloc, tiquette
%3 Indice de texte pour alarmes de cycles
%4 Paramtre d'alarme supplmentaire
Remarque
Les textes d'alarme doivent tre configurs dans l'interface utilisateur.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 699
Autres fonctions
14.10 Alarmes (SETAL)
Exemple
Notions complmentaires
700 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmes de chariotage personnaliss 15
15.1 Fonctions additionnelles pour le chariotage
Fonctions
Pour le chariotage, on vous propose des cycles d'usinage prts l'usage. En plus, vous
avez la possibilit de crer vos propres cycles de chariotage grce aux fonctions labores
suivantes :
Cration d'une table de contour (CONTPRON)
Cration d'une table de contour code (CONTDCON)
Dsactivation de la prparation du contour (EXECUTE)
Dtermination de l'intersection entre deux lments de contour (INTERSEC)
(uniquement pour des tables cres avec CONTPRON)
Excution des lments de contour d'une table bloc par bloc (EXECTAB)
(uniquement pour des tables cres avec CONTPRON)
Calcul de donnes de cercles (CALCDAT)
Remarque
Ces fonctions sont utilisables de faon universelle et pas seulement pour le chariotage.
Conditions
Avant tout appel des fonctions CONTPRON ou CONTDCON, il faut :
accoster un point de dpart permettant un usinage sans collision,
dsactiver la correction du rayon du tranchant avec G40.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 701
Programmes de chariotage personnaliss
15.2 Cration d'une table de contour (CONTPRON)
Fonction
L'instruction CONTPRON active la prparation du contour. Les blocs CN appels par la suite ne
sont pas excuts, mais dcomposs en dplacements lmentaires qui sont rangs dans
la table de contour. A chaque lment de contour correspond une ligne de la table de
contour deux dimensions. Le nombre de dtalonnages qui a t dtermin est indiqu en
retour.
Syntaxe
Activer la prparation du contour :
CONTPRON(<table de contour>,<type d'usinage>,<dtalonnages>,
<sens d'usinage>)
Dsactiver la prparation du contour et revenir au mode de traitement normal :
EXECUTE(<ERREUR>)
Voir "Dsactivation de la prparation du contour (EXECUTE)"
Signification
CONTPRON
Instruction d'activation de la prparation du contour
pour la cration d'une table de contour
<Table de contour>
Nom de la table de contour
<Type dusinage>
Paramtre pour le type d'usinage
Type : CHAR
"G"
Valeur : longitudinale : usinage intrieur
"L"
longitudinale : usinage extrieur
"N"
transversale : usinage intrieur
"P"
transversale : usinage extrieur
<Dtalonnages>
Variable de rsultat pour le nombre d'lments de
dtalonnage gnrs
Type : INT
<Sens d'usinage>
Paramtre pour le sens d'usinage
Type : INT
Valeur : 0 Prparation du contour en avant
(valeur par dfaut)
1 Prparation du contour dans les
deux sens
Notions complmentaires
702 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmes de chariotage personnaliss
15.2 Cration d'une table de contour (CONTPRON)
Exemple 1
Cration d'une table de contour avec :
le nom "TABC"
30 lments de contour au maximum (arcs de cercle, segments de droite)
une variable pour le nombre d'lments de dtalonnage gnrs
une variable pour les messages d'erreur
=
Programme CN :
Code de programme Commentaire
N10 DEF REAL KTAB[30,11] ; Table de contour nomme TABC avec 30 lments de
contour au maximum. La valeur 11 (nombre de
colonnes de la table) est fixe.
N20 DEF INT NBDETAL ; Variable pour le nombre d'lments de dtalonnage,
nomme NBDETAL.
N30 DEF INT ERREUR ; Variable pour la signalisation d'erreur (0=aucune
erreur, 1=erreur).
N40 G18
N50 CONTPRON(TABC,"G",NBDETAL) ; Activer la prparation du contour.
N60 G1 X150 Z20 ; N60 N120 : Description du contour
N70 X110 Z30
N80 X50 RND=15
N90 Z70
N100 X40 Z85
N110 X30 Z90
N120 X0
N130 EXECUTE(ERREUR) ; Fin du remplissage de la table de contour et
retour au mode de programme normal.
N140 ; Suite du traitement de la table.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 703
Programmes de chariotage personnaliss
15.2 Cration d'une table de contour (CONTPRON)
Indice Colonne
Ligne
(0) (1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
7 7 11 0 0 20 150 0 82.40535663 0 0
0 2 11 20 150 30 110 -1111 104.0362435 0 0
1 3 11 30 110 30 65 0 90 0 0
2 4 13 30 65 45 50 0 180 45 65
3 5 11 45 50 70 50 0 0 0 0
4 6 11 70 50 85 40 0 146.3099325 0 0
5 7 11 85 40 90 30 0 116.5650512 0 0
6 0 11 90 30 90 0 0 90 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
(0) Index pointant l'lment de contour suivant (le numro de ligne de la mme
table)
(1) Index pointant l'lment de contour prcdent
(2) Codage du mode de contour pour le dplacement
Valeurs possibles pour X = abc
a = 102 G90 = 0 G91 = 1
b= 101 G70 = 0 G71 = 1
c = 100 G0 = 0 G1 = 1 G2 = 2 G3 = 3
(3), (4) Point de dpart des lments de contour
(3) = abscisse, (4) = ordonne dans le plan courant
(5), (6) Point final des lments de contour
(5) = abscisse, (6) = ordonne dans le plan courant
(7) Indicateur maxi/mini : indique les maxima et minima locaux du contour
(8) Valeur maximale entre lment de contour et abscisse (dans le cas d'un
usinage longitudinal) ou ordonne (en surfaage). L'angle dpend du type
d'usinage programm.
(9), (10) Coordonnes du centre de l'lment de contour, si c'est un arc de cercle..
(9) = abscisse, (10) = ordonne
Notions complmentaires
704 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmes de chariotage personnaliss
15.2 Cration d'une table de contour (CONTPRON)
Exemple 2
Cration d'une table de contour avec
le nom TABC
92 lments de contour au maximum (arcs de cercle, segments de droite)
Mode d'usinage : cylindrage, usinage extrieur
Prparation dans les deux sens
=
Programme CN :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 705
Programmes de chariotage personnaliss
15.2 Cration d'une table de contour (CONTPRON)
Indice Colonne
Ligne (0) (1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
0 61) 72) 11 100 100 20 20 0 45 0 0
1 03) 2 11 20 20 20 45 -3 90 0 0
2 1 3 11 20 45 0 45 0 0 0 0
3 2 4 12 0 45 -15 30 5 90 -15 45
4 3 5 11 -15 30 -30 30 0 0 0 0
5 4 7 11 -30 30 -30 45 -1111 90 0 0
6 7 04) 11 -30 80 -40 80 0 0 0 0
7 5 6 11 -30 45 -30 80 0 90 0 0
8 15) 26) 0 0 0 0 0 0 0 0 0
...
83 84 07) 11 20 45 20 80 0 90 0 0
84 90 83 11 20 20 20 45 -1111 90 0 0
85 08) 86 11 -40 80 -30 80 0 0 0 0
86 85 87 11 -30 80 -30 30 88 90 0 0
87 86 88 11 -30 30 -15 30 0 0 0 0
88 87 89 13 -15 30 0 45 -90 90 -15 45
89 88 90 11 0 45 20 45 0 0 0 0
90 89 84 11 20 45 20 20 84 90 0 0
91 839) 8510) 11 20 20 100 100 0 45 0 0
Notions complmentaires
706 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmes de chariotage personnaliss
15.2 Cration d'une table de contour (CONTPRON)
Signification du contenu des colonnes et des remarques concernant les lignes 0, 1, 6, 8, 83,
85 et 91
Les significations du contenu des colonnes donnes dans l'exemple 1 sont valables.
Toujours dans ligne 0 :
1) Prcdent : ligne n contient la fin du contour en avant
2) Suivant : ligne n est la fin de la table de contour en avant
Une fois pour les lments de contour en avant :
3) Prcdent : dbut du contour (en avant)
4) Suivant : fin du contour (en avant)
Toujours dans ligne fin de table de contour (en avant) +1 :
5) Prcdent : nombre de dtalonnages en avant
6) Suivant : nombre de dtalonnages en arrire
Une fois pour les lments de contour en arrire :
7) Suivant : fin du contour (en arrire)
8) Prcdent : dbut du contour (en arrire)
Toujours dans la dernire ligne de la table :
9) Prcdent : ligne n est le dbut de la table de contour (en arrire)
10) Suivant : ligne n contient le dbut du contour (en arrire)
Autres informations
Instructions de dplacements autorises, systme de coordonnes
Pour la programmation du contour, les instructions G suivantes sont autoriss :
Groupe G 1 : G0, G1, G2, G3
Possibles aussi :
Arrondi et chanfrein
Programmation de cercle avec CIP et CT
Les fonctions spline, polynme et filetage provoquent des erreurs.
Entre CONTPRON et EXECUTE, la modification du systme de coordonnes par activation d'un
frame est illicite. Ceci est galement valable pour la permutation entre G70 et G71 ou entre
G700 et G710.
Pendant la prparation de la table de contour , une permutation d'axe avec GEOAX entrane
une alarme.
Elments de dtalonnage
La description des diffrents lments de dtalonnage peut tre ralise sous la forme d'un
sous-programme ou de blocs isols, au choix.
Chariotage indpendamment du sens de contour programm
La prparation du contour avec CONTPRON a t tendue de sorte qu'aprs son appel, la table
de contour est disponible quel que soit le sens programm.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 707
Programmes de chariotage personnaliss
15.3 Cration d'une table de contour code (CONTDCON)
Fonction
En cas d'activation de la prparation du contour avec CONTDCON, les blocs CN appels par la
suite sont enregistrs sous forme code dans une table de contour de 6 colonnes pour
simplifier la mmorisation. A chaque lment de contour correspond une ligne de la table de
contour. Compte tenu des rgles de codage indiques ci-dessous, vous pouvez crer des
programmes en code DIN partir des lignes de la table, par exemple pour des cycles. Dans
la ligne numro 0 sont enregistres les donnes du point de dpart.
Syntaxe
Activer la prparation du contour :
CONTDCON(<table de contour>,<sens d'usinage>)
Dsactiver la prparation du contour et revenir au mode de traitement normal :
EXECUTE(<ERREUR>)
Voir "Dsactivation de la prparation du contour (EXECUTE)"
Signification
CONTDCON
Instruction d'activation de la prparation du contour
pour la cration d'une table de contour code
<Table de contour>
Nom de la table de contour
<Sens d'usinage>
Paramtre pour le sens d'usinage
Type : INT
Valeur : 0 Prparation du contour suivant la
squence de blocs de contour
(valeur par dfaut)
1 non admis
Remarque
Pour CONTDCON, les codes G admis dans la section de programme dcoder sont plus
nombreux que pour la fonction CONTPRON. En outre, l'avance et le type d'avance sont
enregistrs pour chaque lment de contour.
Notions complmentaires
708 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmes de chariotage personnaliss
15.3 Cration d'une table de contour code (CONTDCON)
Exemple
Cration d'une table de contour avec :
le nom "TABC"
les lments de contour (arcs de cercle, segments de droite)
Mode d'usinage : Tournage
Sens d'usinage : vers l'avant
=
Programme CN :
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 709
Programmes de chariotage personnaliss
15.3 Cration d'une table de contour code (CONTDCON)
Indice de colonne
0 1 2 3 4 5
Indice ligne Mode de Point final Point final Centre Centre Avance
contour abscisse ordonne abscisse ordonne
0 30 100 100 0 0 7
1 11031 20 20 0 0 200
2 111031 20 45 0 0 300
3 11031 0 45 0 0 400
4 11032 -15 30 -15 45 100
5 11031 -30 30 0 0 600
6 11031 -30 80 0 0 700
7 11031 -40 80 0 0 800
8 0 0 0 0 0 0
Notions complmentaires
710 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmes de chariotage personnaliss
15.3 Cration d'une table de contour code (CONTDCON)
Autres informations
Instructions de dplacements autorises, systme de coordonnes
Pour la programmation du contour, les groupes G et les instructions G suivants sont
autoriss :
Possibles aussi :
Arrondi et chanfrein
Programmation de cercle avec CIP et CT
Les fonctions spline, polynme et filetage provoquent des erreurs.
Entre CONTDCON et EXECUTE, la modification du systme de coordonnes par activation d'un
frame est illicite. Ceci est galement valable pour la permutation entre G70 et G71 ou entre
G700 et G710.
Pendant la prparation de la table de contour , une permutation d'axe avec GEOAX entrane
une alarme.
Sens d'usinage
La table de contour gnre avec CONTDCON est prvue pour le chariotage dans le sens
programm du contour.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 711
Programmes de chariotage personnaliss
15.4 Dtermination de l'intersection entre deux lments de contour (INTERSEC)
Fonction
INTERSEC dtermine le point d'intersection de deux lments de contour norms de la table
de contour cre avec CONTPRON.
Syntaxe
<Etat>=INTERSEC(<table de contour_1>[<lment de contour_1>],
<table de contour_2>[<lment de contour_2>],<intersection>,<mode
d'usinage>)
Signification
INTERSEC
Mot cl pour dterminer l'intersection de deux lments de
contour issus de tables de contour gnres avec CONTPRON
<Etat>
Variable de l'tat de l'intersection
Type : BOOL
Valeur : TRUE existence d'une intersection
FALSE pas d'intersection
<Table de contour_1>
Nom de la premire table de contour
<Elment de contour_1>
Numro de l'lment de contour de la premire table de
contour
<Table de contour_2>
Nom de la deuxime table de contour
<Elment de contour_2>
Numro de l'lment de contour de la deuxime table de
contour
<Intersection>
Coordonnes du point d'intersection dans le plan actif
(G17/G18 / G19)
Type : REAL
<Type dusinage>
Paramtre pour le type d'usinage
Type : INT
Valeur : 0 Calcul du point d'intersection dans le plan
activ avec le paramtre 2
(valeur par dfaut)
1 Calcul du point d'intersection
indpendamment du plan transmis
Remarque
Les variables doivent avoir t dfinies avant leur utilisation.
Notions complmentaires
712 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmes de chariotage personnaliss
15.4 Dtermination de l'intersection entre deux lments de contour (INTERSEC)
La transmission des contours exige le respect des valeurs dfinies avec CONTPRON :
Paramtres Signification
2 Codage du mode de contour pour le dplacement
3 Abscisse du point de dpart du contour
4 Ordonne du point de dpart du contour
5 Abscisse du point final du contour
6 Ordonne du point final du contour
9 Coordonnes du centre pour l'abscisse (uniquement pour le contour du cercle)
10 Coordonnes du centre pour l'ordonne (uniquement pour le contour du cercle)
Exemple
Il s'agit de dterminer l'intersection de l'lment de contour 3 de la table TABNAME1 et de
l'lment de contour 7 de la table TABNAME2. Les coordonnes de l'intersection, dans le
plan actif, sont ranges dans la variable ISCOORD (1er lment = abscisse, 2me lment
= ordonne). S'il n'existe pas d'intersection, il y a saut vers PASINTER (aucune intersection
trouve).
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 713
Programmes de chariotage personnaliss
15.5 Excution des lments de contour d'une table bloc par bloc (EXECTAB)
15.5 Excution des lments de contour d'une table bloc par bloc
(EXECTAB)
Fonction
Avec l'instruction EXECTAB, vous pouvez excuter bloc par bloc les lments de contour d'une
table qui a t cre, par exemple, avec l'instruction CONTPRON.
Syntaxe
EXECTAB(<table de contour>[<lment de contour>])
Signification
EXECTAB
Instruction d'excution d'un lment de contour
<Table de contour>
Nom de la table de contour
<Elment de contour>
Numro de l'lment de contour
Exemple
Les lments de contour 0 2 de la table TABC doivent tre excuts bloc par bloc.
Notions complmentaires
714 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmes de chariotage personnaliss
15.6 Calcul de donnes de cercles (CALCDAT)
Fonction
L'instruction CALCDAT vous permet de calculer le rayon et les coordonnes du centre d'un
cercle partir de trois ou quatre points connus du cercle. Les points indiqus doivent tre
distincts. En cas d'indication de 4 points qui ne se trouvent pas exactement sur un cercle,
des valeurs moyennes sont calcules pour le centre du cercle et le rayon.
Syntaxe
<Etat>=CALCDAT(<points du
cercle>[<nombre>,<type>],<nombre>,<rsultat>)
Signification
CALCDAT
Instruction de calcul du rayon et des coordonnes du centre
d'un cercle partir de 3 ou 4 points
<Etat>
Variable de l'tat du calcul du cercle
Type : BOOL
Valeur : TRUE Les points indiqus se situent sur un
cercle.
FALSE Les points indiqus ne se situent pas sur
un cercle.
<Points du cercle>[]
Variable pour l'indication des points du cercle
avec les paramtres :
<Nombre>
Nombre de points du cercle (3 ou 4)
<Type>
Type de coordonnes,
par exemple 2 pour coordonnes deux points
<Nombre>
Paramtre du nombre de points utiliss pour le calcul (3 ou4)
<Rsultat>[3]
Variables du rsultat :
Coordonnes du centre du cercle et rayon
0 Coordonnes du centre du cercle : abscisse
1 Coordonnes du centre du cercle : ordonne
2 Rayon
Remarque
Les variables doivent avoir t dfinies avant leur utilisation.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 715
Programmes de chariotage personnaliss
15.6 Calcul de donnes de cercles (CALCDAT)
Exemple
On veut savoir si trois points sont situs sur un arc de cercle.
<
>@
(5*
(5*>@
;
(5*>@
Notions complmentaires
716 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Programmes de chariotage personnaliss
15.7 Dsactivation de la prparation du contour (EXECUTE)
Fonction
Avec l'instruction EXECUTE, on arrte la prparation du contour et on retourne dans le mode
d'excution normal.
Syntaxe
EXECUTE(<ERREUR>)
Signification
EXECUTE
Instruction pour terminer la prparation du contour
<ERREUR>
Variable pour la signalisation d'erreur
Type : INT
La valeur de la variable indique si le contour a pu tre prpar
correctement :
0 Erreur
1 Pas d'erreur
Exemple
Code de programme
...
N30 CONTPRON()
N40 G1 X Z
...
N100 EXECUTE()
...
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 717
Programmes de chariotage personnaliss
15.7 Dsactivation de la prparation du contour (EXECUTE)
Notions complmentaires
718 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux 16
16.1 Liste des instructions
Lgende :
1) Rfrence au document contenant la description complte de l'instruction :
PGsl Manuel de programmation Notions de base
PGAsl Manuel de programmation Notions complmentaires
BHDsl Manuel d'utilisation Tournage
BHFsl Manuel d'utilisation Fraisage
FB1 ( ) Description fonctionnelle Fonctions de base (avec l'indication entre parenthses de l'abrviation
alphanumrique de la description fonctionnelle correspondante)
FB2 ( ) Description fonctionnelle Fonctions d'extension (avec l'indication entre parenthses de l'abrviation
alphanumrique de la description fonctionnelle correspondante)
FB3 ( ) Description fonctionnelle Fonctions spciales (avec l'indication entre parenthses de l'abrviation
alphanumrique de la description fonctionnelle correspondante)
FBSIsl Description fonctionnelle Safety Integrated
FBSY Description fonctionnelle Actions synchrones
FBW Description fonctionnelle Gestion d'outils
2) Prise d'effet de l'instruction :
m modale
b bloc par bloc (non modale)
3) Disponibilit pour SINUMERIK 828D (D = Tournage, F = Fraisage) :
Standard
Option
- Non disponible
4) Rglage par dfaut en dbut du programme (dans la version de base de la commande, si elle n'a pas t
programme autrement).
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 719
Tableaux
16.1 Liste des instructions
Notions complmentaires
720 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 721
Tableaux
16.1 Liste des instructions
Notions complmentaires
722 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 723
Tableaux
16.1 Liste des instructions
Notions complmentaires
724 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 725
Tableaux
16.1 Liste des instructions
Notions complmentaires
726 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 727
Tableaux
16.1 Liste des instructions
Notions complmentaires
728 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 729
Tableaux
16.1 Liste des instructions
Notions complmentaires
730 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 731
Tableaux
16.1 Liste des instructions
Notions complmentaires
732 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 733
Tableaux
16.1 Liste des instructions
Notions complmentaires
734 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 735
Tableaux
16.1 Liste des instructions
Notions complmentaires
736 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 737
Tableaux
16.1 Liste des instructions
Notions complmentaires
738 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 739
Tableaux
16.1 Liste des instructions
Notions complmentaires
740 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 741
Tableaux
16.1 Liste des instructions
Notions complmentaires
742 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 743
Tableaux
16.1 Liste des instructions
Notions complmentaires
744 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 745
Tableaux
16.1 Liste des instructions
Notions complmentaires
746 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 747
Tableaux
16.1 Liste des instructions
Notions complmentaires
748 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 749
Tableaux
16.1 Liste des instructions
Notions complmentaires
750 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 751
Tableaux
16.1 Liste des instructions
Notions complmentaires
752 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 753
Tableaux
16.1 Liste des instructions
Notions complmentaires
754 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 755
Tableaux
16.1 Liste des instructions
Notions complmentaires
756 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 757
Tableaux
16.1 Liste des instructions
Notions complmentaires
758 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 759
Tableaux
16.1 Liste des instructions
Notions complmentaires
760 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 761
Tableaux
16.1 Liste des instructions
Notions complmentaires
762 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 763
Tableaux
16.1 Liste des instructions
Notions complmentaires
764 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 765
Tableaux
16.1 Liste des instructions
Notions complmentaires
766 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 767
Tableaux
16.1 Liste des instructions
Notions complmentaires
768 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 769
Tableaux
16.1 Liste des instructions
Notions complmentaires
770 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 771
Tableaux
16.1 Liste des instructions
Notions complmentaires
772 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 773
Tableaux
16.1 Liste des instructions
Notions complmentaires
774 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 775
Tableaux
16.1 Liste des instructions
Notions complmentaires
776 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 777
Tableaux
16.1 Liste des instructions
Notions complmentaires
778 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 779
Tableaux
16.1 Liste des instructions
Notions complmentaires
780 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 781
Tableaux
16.1 Liste des instructions
Notions complmentaires
782 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 783
Tableaux
16.1 Liste des instructions
Notions complmentaires
784 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 785
Tableaux
16.1 Liste des instructions
Notions complmentaires
786 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 787
Tableaux
16.1 Liste des instructions
Notions complmentaires
788 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Tableaux
16.1 Liste des instructions
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 789
Tableaux
16.1 Liste des instructions
Notions complmentaires
790 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Annexes A
A.1 Liste des abrviations
A Sortie
AS Automate
ASCII American Standard Code for Information Interchange : Code standard amricain
pour l'change d'information
ASIC Application Specific Integrated Circuit : Circuit utilisateur
ASUP Sous-programme asynchrone
AV Notions complmentaires
AWL Liste des instructions
BA Mode de fonctionnement
GMFC Groupe mode de fonctionnement commun
PRT Prt fonctionner
BuB, B&B Conduite et supervision
DCB Dcimal cod en binaire : chiffres dcimaux cods en binaire
MCC Mini-console de commande
BIN Fichiers binaires (Binary Files)
BIOS Basic Input Output System
SCB Systme de coordonnes de base
IU Interface utilisateur
BOT Boot Files : fichiers boot pour SIMODRIVE 611 digital
BT Tableau de commande
OPI Interface du tableau de commande
CAO Conception Assiste par Ordinateur
FAO Fabrication Assiste par Ordinateur
CNC Computerized Numerical Control: Commande numrique CNC
COM Communication
CP Communication Processor : processeur de communication
CPU Central Processing Unit : unit centrale de traitement
CR Carriage Return : retour chariot
CRT Cathode Ray Tube : tube cathodique
CSB Central Service Board : carte AP
CTS Clear To Send : signalisation de l'tat Prt l'mission (PAE) des interfaces srie
CUTCOM Cutter radius compensation: Correction de rayon de l'outil
CNA Convertisseur numrique-analogique
DB Bloc de donnes dans l'AP
DBB Octet de bloc de donnes dans l'AP
DBW Mot de bloc de donnes dans l'AP
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 791
Annexes
A.1 Liste des abrviations
Notions complmentaires
792 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Annexes
A.1 Liste des abrviations
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 793
Annexes
A.1 Liste des abrviations
Notions complmentaires
794 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Annexes
A.1 Liste des abrviations
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 795
Annexes
A.1 Liste des abrviations
Notions complmentaires
796 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Annexes
A.2 Remarques sur la documentation
Courriel : mailto:docu.motioncontrol@siemens.com
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 797
Annexes
A.2 Remarques sur la documentation
'HVWLQDWDLUHb (PHWWHXU
6,(0(16$*
1RPb
,'70&06
3RVWIDFK $GUHVVHGHYRWUHVRFLWVHUYLFH
5XHb
'(UODQJHQ
&RGHSRVWDOb 9LOOHb
7OSKRQHb
3URSRVLWLRQVHWRXFRUUHFWLRQV
Notions complmentaires
798 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Annexes
A.3 Vue d'ensemble de la documentation
'RFXPHQWDWLRQJQUDOH
'RFXPHQWDWLRQXWLOLVDWHXU
0DQXHOG
XWLOLVDWLRQ 0DQXHOGHSURJUDPPDWLRQ 0DQXHOGHSURJUDPPDWLRQ 0DQXHOGHGLDJQRVWLF
8QLYHUVHO
1RWLRQVGHEDVH
7RXUQDJH)UDLVDJH,62
7RXUQDJH
3USDUDWLRQGXWUDYDLO
)UDLVDJH
&\FOHVGHPHVXUH
+0,$GYDQFHG
/LVWHV9DULDEOHVV\VWPH
'RFXPHQWDWLRQFRQVWUXFWHXU6$9
'RFXPHQWDWLRQOHFWURQLTXH
6,180(5,.
6,1$0,&6
0RWHXUV
'2&RQ&'
'RFXPHQWDWLRQPLQLPDOHUHFRPPDQGH
'2&RQ:(%
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 799
Annexes
A.3 Vue d'ensemble de la documentation
Notions complmentaires
800 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Glossaire
Actions synchrones
1. Sortie de fonct. auxiliaire
Pendant l'usinage de la pice, il est possible de sortir du programme CNC des fonctions
technologiques ( fonctions auxiliaires) pour les transmettre l'AP. A l'aide de ces
fonctions auxiliaires, il est possible, par exemple, de piloter des quipements
supplmentaires de la machine-outil tels que fourreaux, prhenseurs, mandrins, etc.
2. Sortie de fonctions auxiliaires rapide
Dans le cas de fonctions de commutation critiques en temps, il est possible de minimiser
les dlais d'acquittement pour les fonctions auxiliaires et d'viter les points d'arrt
inutiles dans le processus d'usinage.
Adresse
L'adresse permet d'identifier un oprande ou une plage d'oprandes dtermine, par ex. une
entre, une sortie etc.
Adresse d'axe
Voir Descripteur d'axe
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 801
Glossaire
Alarmes
Tous les messages et alarmes sont affichs l'cran du panneau de commande, en texte
clair, avec leur horodatage et le symbole correspondant au critre d'effacement. Les alarmes
sont affiches sparment des messages.
1. Alarmes et messages dans le programme pice
L'affichage en texte clair des alarmes et messages peut tre dclench directement dans
le programme pice.
2. Alarmes et messages de l'AP
Les alarmes et messages de la machine peuvent tre affichs en texte clair directement
partir du programme AP. Des kits de blocs fonctionnels supplmentaires ne sont pas
ncessaires.
Anticipation
La fonction Look Ahead est une fonction d'anticipation qui permet le pilotage optimal de la
vitesse d'usinage, un nombre paramtrable de blocs de dplacement l'avance.
AP
Automate Programmable : Automate programmable. Composant de la CN : Commande
d'adaptation pour le traitement de la logique de la machine-outil.
Archivage
Sortie de fichiers et/ou rpertoires sur une unit de mmorisation externe.
Arrt prcis
Dans le cas d'une instruction d'arrt prcis programme, la position indique dans un bloc
peut tre accoste de faon prcise et ventuellement trs lentement. Pour limiter la dure
d'ap proche, des limites d'arrt prcis sont dfinies pour le mode rapide et l'avance.
Auto
Mode de fonctionnement d'un systme CN Mode de fonctionnement des systmes de
commandes numriques dans lequel un programme pice est slectionn et excut de
faon continue.
Notions complmentaires
802 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Glossaire
Automate programmable
Les automates programmables (AP) sont des commandes lectroniques dont la fonction est
mmorise sous la forme d'un programme dans le mcanisme de commande. La structure
et le cblage de l'appareil ne dpendent donc pas de la fonction de l'automate. L'automate
programmable possde la structure d'un calculateur. Elle se compose d'une CPU (unit
centrale) avec mmoire, cartes d'entre/sortie et systme de bus interne. La priphrie et le
langage de programmation sont orients vers les besoins de la technique de commande.
Avance tangentielle
L'avance tangentielle agit sur les si possible axes interpolation. Elle correspond la
somme gomtrique des avances des axes gomtriques.
Axe arrondissage
Les axes arrondissage provoquent une rotation de la pice ou de l'outil dans une position
angulaire correspondant une grille d'indexation. L'axe arrondissage est considr
comme tant "en position" lorsque l'incrment d'indexation est atteint.
Axe interpolation
Les axes interpolation sont tous les axes d'usinage du canal qui sont pilots par l'
interpolateur de telle manire qu'ils dmarrent, acclrent, s'arrtent et atteignent le point
final simultanment.
Axe C
Axe de la broche porte-pice autour duquel des mouvements de rotation et de
positionnement pilots ont lieu.
Axe de base
Axe dont la valeur relle ou la valeur de consigne est prise en compte pour le calcul d'une
valeur de compensation.
Axe de compensation
Axe dont la valeur de consigne et la valeur relle sont modifies par la valeur de
compensation.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 803
Glossaire
Axe de positionnement
Axe excutant un mouvement auxiliaire sur une machine-outil, (par exemple, magasin
d'outils, transport de palettes). Les axes de positionnement sont des axes qui ne sont pas en
interpolation avec les axes d'interpolation.
Axe de synchronisme
L'axe synchrone est l'axe Gantry dont la position de consigne est toujours dvire du
dplacement de l'axe directeur, et dont le dplacement est donc synchrone. Du point de
vue de l'utilisateur et du programmeur, l'axe synchrone "n'existe pas".
Axe directeur
L'axe directeur est l'axe Gantry qui existe du point de vue de l'utilisateur et du
programmeur, et qui peut donc tre influenc comme un axe CN normal.
axe gomtrique
Les axes gomtriques permettent la description d'un domaine deux ou trois dimensions
dans le systme de coordonnes pice.
Axe linaire
L'axe linaire est un axe qui, contrairement l'axe circulaire, dcrit une droite.
Axe rotatif
Les axes rotatifs provoquent une rotation de la pice ou de l'outil dans une position angulaire
prdfinie.
Axe synchrone
Pour effectuer leur course, les axes synchrones ont besoin du mme temps que les axes
gomtriques pour leur trajectoire.
Axes
Selon leurs fonctionnalits, les axes CNC sont classs en deux catgories :
Axes : interpolation
axes auxiliaires : axes de dplacement et de positionnement sans interpolation, mais
avec une avance spcifique. Les axes auxiliaires ne sont gnralement pas concerns
par l'usinage proprement dit, par exemple les axes de dispositifs de chargement d'outils,
de magasins d'outils.
Axes machine
Dans le cas d'une machine-outil, axes ayant une existence matrielle.
Notions complmentaires
804 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Glossaire
Bloc
On dsigne par "blocs" tous les fichiers ncessaires llaboration et lexcution du
programme.
Bloc de donnes
1. Entit de donnes de l'AP, accessible pour les programmes HIGHSTEP.
2. Entit de donnes de la CN : Les blocs de donnes contiennent des dfinitions de
donnes utilisateur globales. Ces donnes peuvent tre initialises directement dans la
dfinition.
Bloc de programme
Les blocs de programme contiennent les programmes principaux et sous-programmes des
programmes pice.
Bloc principal
Bloc prcd de ":" contenant toutes les indications pour pouvoir excuter une tche dans
un programme pice.
Bloc secondaire
Bloc introduit par "N", comportant des informations pour une opration, par exemple une
indication de position.
Blocs intermdiaires
Les dplacements avec correction d'outil slectionne (G41/G42) peuvent tre interrompus
par un nombre limit de blocs intermdiaires (blocs sans mouvement axial dans le plan de
correction). Dans ce cas, la correction d'outil peut encore tre prise en compte. Le nombre
autoris de blocs intermdiaires que la commande peut lire l'avance peut tre rgl par
l'intermdiaire d'un paramtre systme.
Cble de liaison
Les cbles de liaison sont constitus de 2 conducteurs et de 2 connecteurs ; ils peuvent tre
prquips ou assembls par l'utilisateur. Ces cbles permettent de relier la CPU avec
une console de programmation ou d'autres CPU via l' interface multipoint (MPI).
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 805
Glossaire
Canal
Un canal se distingue par le fait qu'il est en mesure d'excuter un programme pice
indpendamment des autres canaux. Le canal pilote exclusivement les axes et broches qui
lui sont assigns. Les squences d'un programme pice issues de canaux diffrents peuvent
tre coordonnes par une synchronisation.
Canal d'usinage
La structure multicanal permet de rduire les temps morts grce des dplacements en
parallle (par exemple le dplacement d'un portique de chargement simultanment
l'usinage). Un canal CNC est une commande CNC part entire avec dcodage,
prtraitement des blocs et interpolation.
CN
Numerical Control : Une commande numrique comprend tous les constituants ncessaires
la commande dune machine-outil : NCK, PLC, HMI, COM.
Remarque
Pour les commandes SINUMERIK 840D, le terme de commande CNC serait plus appropri :
Computerized Numerical Control.
CNC
Voir CN
Code de programmation
Caractres et chanes de caractres ayant une signification dfinie dans le langage de
programmation pour les programmes pice.
COM
Module de la commande numrique pour lexcution et la coordination de la communication.
Commutateur cl
Le commutateur cl situ sur le tableau de commande machine possde 4 positions, qui
sont affectes des fonctions par le systme d'exploitation de la commande. Le
commutateur cl peut tre actionn laide de trois cls de diffrentes couleurs qui
peuvent tre retires dans les positions indiques.
Notions complmentaires
806 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Glossaire
Compensation du jeu
Compensation du jeu mcanique d'une machine, par exemple dans le cas de vis bille.
Pour chaque axe, il est possible d'indiquer une compensation de jeu distincte.
Contour
Contour de la pice
Contour de pice
Contour programm de la pice fabriquer/usiner.
Contournage
Le but du contournage est d'viter une dclration importante des axes interpolation
aux limites de bloc du programme pice et de passer au bloc suivant si possible avec la
mme vitesse tangentielle.
Coordonnes polaires
Systme de coordonnes permettant de dfinir la position dun point dans un plan par la
distance qui spare ce point de lorigine et par langle form par le rayon vecteur avec un
axe dfini.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 807
Glossaire
correction
Possibilit d'intervention manuelle ou programmable, qui permet l'utilisateur de corriger
des avances ou des vitesses de rotation programmes, pour les adapter une pice ou un
matriau spcifique.
Correction doutil
Prise en compte des dimensions de l'outil lors du calcul de la trajectoire.
Cote absolue
Indication de la destination du dplacement d'un axe par une cote qui se rapporte l'origine
du systme de coordonnes slectionn. Voir Cote relative.
Cote relative
Aussi appele cote incrmentale : Programmation du point final de dplacement d'un axe au
moyen d'une distance parcourir et d'un sens, par rfrence un point dj atteint. Voir
Cote absolue.
Courbure
La courbure d'un contour est l'inverse du rayon r du cercle osculateur (cercle de courbure) :
k = 1/r.
CPU
Central Processing Unit, voir Automate programmable
Notions complmentaires
808 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Glossaire
Cycles
Sous-programmes protgs pour l'excution d'usinages rcurrents sur la pice.
Cycles standard
Des cycles standard sont disponibles pour les tches dusinage rptitives :
pour le perage/fraisage
pour la technologie tournage
Dans le groupe fonctionnel "Programme", les cycles disponibles sont affichs dans le menu
"Assistance aux cycles". Aprs slection du cycle dusinage souhait, les paramtres sont
affichs en clair pour laffectation de valeurs.
Dbit de transfert
Vitesse (bits/s) laquelle une transmission de donnes a lieu.
Dcalage d'origine
Dfinition d'un nouveau point de rfrence pour un systme de coordonnes, rglable en
fonction d'une origine existante et d'un frame.
1. rglable
SINUMERIK 840D : Un nombre configurable de dcalages d'origine rglables est
disponible pour chaque axe CNC. Les dcalages slectionnables par l'intermdiaire des
fonctions G peuvent galement tre activs.
2. Externe
En plus de tous les dcalages qui dfinissent la position de l'origine pice, on peut
superposer un dcalage d'origine externe par manivelle (dcalage DRF) ou par le biais
de l'AP.
3. Programmable
Avec l'instruction TRANS, des dcalages d'origine sont programmables pour tous les axes
d'interpolation et de positionnement.
Dfinition de variables
Une dfinition de variable comprend la dfinition d'un type de donnes et un nom de
variable. Avec le nom de la variable, la valeur des variables peut tre active.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 809
Glossaire
des mots-cls
Mots ayant une notation fixe et qui, dans le langage de programmation, ont une signification
particulire pour des programmes pices.
Descripteur
Les mots de la norme DIN 66025 sont complts par des descripteurs (noms) de variables
(variables de calcul, variables systme, variables utilisateur), de sous-programmes, de mots-
cls et de mots plusieurs lettres adresse. Ces adjonctions ont la mme signification que
les mots dans la syntaxe des blocs. Les descripteurs doivent tre uniques. Un mme
descripteur ne peut tre utilis pour dsigner plusieurs objets.
Descripteur d'axe
Selon DIN 66217, les axes sont dsigns par X, Y, Z dans un systme de coordonnes
cartsiennes.
Les descripteurs A, B, C sont affects aux axes rotatifs tournant autour de X, Y, Z. Les
axes additionnels, parallles aux axes indiqus, peuvent tre caractriss par d'autres
adresses.
Diagnose
1. Groupe fonctionnel de la commande
2. La commande est dote dun programme dautodiagnostic et daides aux tests pour la
maintenance : Affichage d'tats, d'alarmes et de donnes pour la maintenance
Donnes de rglage
Donnes qui communiquent des caractristiques de la machine-outil la commande
numrique selon une procdure dfinie par le logiciel systme.
DRF
Differential resolver function : Fonction de rsolveur diffrentiel. Cette fonction entrane un
dcalage d'origine incrmental en relation avec une manivelle lectronique en mode
automatique.
Editeur
Lditeur permet de crer, de modifier, de complter, de fusionner et dinsrer des
programmes/textes/blocs de programme.
Editeur de texte
Voir Editeur
Notions complmentaires
810 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Glossaire
Effacement gnral
Lors de l'effacement gnral, les mmoires suivantes de la CPU sont effaces :
la mmoire de travail,
la zone de lecture/d'criture de la mmoire de chargement,
la mmoire systme,
la mmoire de sauvegarde.
Entranement
L'entranement est l'unit de la CN, qui excute la rgulation de vitesse de rotation et de
couple en fonction des consignes de la CN.
Fonction miroir
La fonction miroir inverse les signes des coordonnes dun contour pour un axe. La fonction
miroir peut tre applique simultanment plusieurs axes.
Fonctions auxiliaires
Les fonctions auxiliaires permettent de transfrer, dans les programmes pices, des
paramtres un AP, qui, ce niveau, dclenchent des ractions dfinies par le
constructeur de la machine.
Fonctions de scurit
La commande dispose de fonctions de surveillance actives en permanence, capables de
dtecter les dfaillances dans la CNC, la commande d'adaptation ( AP) et la machine
suffisamment tt, de telle sorte que les dommages peuvent tre en grande partie vits sur
la pice, l'outil ou la machine. En cas de dfaillance, le droulement de l'usinage est
interrompu et les entranements sont arrts, la cause de la dfaillance sauvegarde en
mmoire et affiche sous forme d'alarme. Dans le mme temps, la prsence d'une alarme
CNC est signale l'AP.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 811
Glossaire
Frame
Un frame est une rgle opratoire qui transpose un systme de coordonnes cartsiennes
en un autre systme de coordonnes cartsiennes. Le frame contient les composants
dcalage d'origine , rotation , mise l'chelle , fonction miroir.
Frames programmables
Avec les frames programmables, il est possible de dfinir en dynamique, au cours du
traitement du programme pice, de nouveaux points d'origine du systme de coordonnes.
Une distinction est opre entre la dfinition absolue, au moyen d'un nouveau frame et la
dfinition additive, par rfrence un point d'origine existant.
Gain
Gain de boucle, grandeur de rgulation d'une boucle de rgulation.
Gomtrie
Description d'une pice dans le systme de coordonnes pice.
HIGHSTEP
Synthse des possibilits de programmation pour l'AP du systme AS300/AS400.
Homothtie
Elment d'un frame ralisant des changements dchelle spcifiques aux axes.
Notions complmentaires
812 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Glossaire
Interface utilisateur
L'interface utilisateur (IU) permet la communication entre l'utilisateur et la commande CNC.
Elle est constitue d'un cran qui comporte des touches logicielles horizontales et verticales.
Interpolateur
Unit logique du NCK qui dtermine, en fonction de la position de destination dans le
programme pice, des valeurs intermdiaires pour les dplacements effectuer sur les
diffrents axes.
Interpolation circulaire
L'outil doit se dplacer sur un cercle, entre des points dfinis du contour et avec une
avance donne, pour l'usinage de la pice.
Interpolation hlicodale
L'interpolation hlicodale est particulirement adapte la fabrication simple de filetages
intrieurs ou extrieurs avec des fraises de forme et pour le fraisage de rainures de
graissage.
Dans ce cas, l'hlice se compose de deux dplacements :
Dplacement circulaire dans un plan
Dplacement linaire perpendiculaire ce plan
Interpolation linaire
L'outil est dplac sur une droite jusqu'au point cible et la pice est alors usine.
interpolation polynomiale
L'interpolation polynomiale permet de gnrer les formes de courbe les plus diverses,
notamment droite, parabole, fonctions exponentielles (SINUMERIK 840D).
JOG
Mode de fonctionnement de la commande (mode de rglage) : Le mode de fonctionnement
JOG permet de rgler la machine. Des axes ou broches spcifiques peuvent tre dplacs
au moyen des touches de sens en mode manuel. Autres fonctionnalits du mode Jog :
Accostage du point de rfrence, Repos et Preset (Forcer la valeur relle).
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 813
Glossaire
Macroprogrammation
Regroupement d'une certaine quantit d'instructions sous un descripteur. Le descripteur
reprsente, au sein du programme, la quantit d'instructions regroupes.
Masse
La masse correspond la totalit des parties inactives relies entre elles sur un moyen
d'exploitation et ne pouvant pas adopter une tension dangereuse par contact, mme en cas
d'anomalie.
MDA
Mode de fonctionnement de la commande : Manual Data Automatic. Dans le mode de
fonctionnement MDA, des blocs de programme et des squences de blocs peuvent tre
introduits et excuts immdiatement avec la touche Dpart programme (sans excution
dun programme principal ou sous-programme).
Mmoire de chargement
Dans le cas de la CPU 314, la mmoire de chargement de l'AP est quivalente la
mmoire de travail.
Mmoire de corrections
Zone de donnes de la commande, dans laquelle des donnes de correction d'outil sont
mmorises.
Notions complmentaires
814 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Glossaire
Mmoire de programmes AP
SINUMERIK 840D : Dans la mmoire de travail AP, le programme AP utilisateur et les
donnes utilisateur sont mmoriss ensemble avec le programme de base de l'AP.
mmoire de travail
La mmoire vive est une mmoire RAM se trouvant dans la CPU et dans laquelle le
processeur accde au programme utilisateur durant l'excution du programme.
Mmoire systme
La mmoire systme est une mmoire de la CPU, dans laquelle les donnes ci-aprs sont
sauvegardes :
Donnes ncessaires au systme d'exploitation
Oprandes de temps, compteurs, mmentos.
mmoire utilisateur
Tous les programmes et toutes les donnes, tels que les programmes pice, les sous-
programmes, les commentaires, les corrections d'outil, les dcalages d'origine / frames ainsi
que les donnes utilisateur de programme et de canal, peuvent tre rangs dans une
mmoire CNC utilisateur commune.
Messages
Tous les messages et alarmes programms dans le programme pice et reconnus par le
systme sont affichs l'cran du tableau de commande, en texte clair, avec leur
horodatage et le symbole correspondant au critre d'effacement. Les alarmes sont affiches
sparment des messages.
Mode de fonctionnement
Type de fonctionnement d'une commande SINUMERIK. Les modes de fonctionnement
Jog, MDA, Automatique sont dfinis.
Module de priphrie
Les modules de priphrie tablissent la relation entre unit centrale et processus.
Les modules de priphrie sont :
les modules d'entres/sorties TOR,
les modules d'entres/sorties analogiques,
les modules de simulation.
Mot de donnes
Entit de donnes de deux octets faisant partie d'un bloc de donnes.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 815
Glossaire
NCK
Numerical control kernel : Composants de la commande numrique qui excutent les
programmes pices et surtout coordonnent les dplacements pour la machine-outil.
Nom d'axe
Voir Descripteur d'axe
NRK
Numeric Robotic Kernel (systme d'exploitation du NCK)
NURBS
Le pilotage des dplacements et l'interpolation de trajectoire dans la commande sont
excuts sur la base de NURBS (Non Uniform Rational B-Splines). Ainsi, avec SINUMERIK
840D, pour toutes les interpolations, il existe un dplacement unifi qui est interne la
commande.
OEM
Pour les constructeurs de machine qui veulent crer leur propre interface utilisateur ou
introduire des fonctions spcifiques une technologie dans la commande, des
amnagements sont prvus pour des solutions individuelles (applications OEM) pour le
systme SINUMERIK 840D.
Origine machine
Point fixe de la machine-outil, auquel se rapportent tous les systmes de mesure (dduits).
Origine pice
L'origine pice est l'origine du systme de coordonnes pice. Elle est dfinie par des
distances par rapport l' origine machine.
Outil
Objet mont sur la machine-outil dont la pointe ou le tranchant gnre la forme obtenir (par
ex. outil de tournage, fraise, foret, faisceau LASER ...)
Paramtres R
Paramtres de calcul ; peuvent tre renseigns ou interrogs dans le programme pice
aux fins juges utiles par le programmeur.
Pice
Pice fabriquer/usiner sur la machine-outil.
Notions complmentaires
816 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Glossaire
Pice brute
Pice l'tat brut, avant le commencement de l'usinage.
Pile de sauvegarde
La pile de sauvegarde permet la protection du programme utilisateur de la CPU contre
les coupures du rseau et la sauvegarde des zones de donnes, mmentos, horodatages et
compteurs de faon rmanente.
Pilotage de la vitesse
Dans le cas de mouvements de dplacement de trs faible amplitude par bloc, il est
possible, pour pouvoir atteindre une vitesse acceptable, de faire appel une valuation
anticipe sur plusieurs blocs ( Look Ahead).
Plage de dplacement
La plage de dplacement maximale autorise pour les axes linaires recouvre 9 dcades.
La valeur absolue dpend de la dfinition et de la rsolution slectionnes du rgulateur de
position et du systme d'units (inch ou mtrique).
Point de rfrence
Point de la machine-outil, auquel le systme de mesure des axes machine fait rfrence.
Pr-concidence
Changement de bloc dj effectu si le trajet s'est approch de la position finale d'un delta
prdtermin.
Programmation AP
L'AP est programm l'aide du logiciel STEP 7. Le logiciel de programmation STEP 7 est
bas sur le systme d'exploitation WINDOWS et contient les fonctions de la programmation
STEP 5, avec des perfectionnements innovateurs.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 817
Glossaire
Programme pice
Suite d'instructions transmises la commande numrique pour la fabrication d'une pice
dtermine. Ralisation d'un usinage dfini sur une pice brute.
Programme principal
Programme pice, dsign par un numro ou par un descripteur, dans lequel il est
possible d'appeler d'autres programmes principaux, sous-programmes ou cycles.
Programme utilisateur
Les programmes utilisateur destins aux systmes d'automatisation S7-300 sont crs avec
le logiciel de programmation STEP 7. De conception modulaire, ils sont constitus de
diffrents blocs.
Les principaux types de blocs sont les suivants :
Blocs de codes
Ces blocs contiennent les instructions STEP 7.
Blocs de donnes
Ces blocs contiennent des constantes et des variables pour le programme STEP 7.
Recherche de bloc
La fonction "Recherche de blocs" permet de rechercher une partie quelconque du
programme pice o l'usinage doit tre dmarr ou repris (pour le test de programmes pice
ou aprs une interruption de l'usinage).
Redmarrage
Chargement du programme aprs une mise sous tension.
Rseau
Un rseau est une association de plusieurs S7-300 et d'autres terminaux, par exemple une
console de programmation, relis entre eux au moyen d'un cble de liaison. Par
l'intermdiaire du rseau, il y a un change de donnes entre les appareils connects.
Notions complmentaires
818 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Glossaire
Rotation
Elment d'un frame dfinissant la rotation d'un systme de coordonnes d'un angle dfini.
Routines d'interruption
Les routines d'interruption sont des sous-programmes spcifiques qui peuvent tre
lances par les vnements (signaux externes) du processus de traitement. Lorsqu'un bloc
de programme pice est interrompu en cours de traitement, la position d'interruption des
axes est automatiquement enregistre.
RT
Rapport de transmission
Sous-programme
Squence d'instructions dun programme pice pouvant tre appele plusieurs fois avec
des valeurs de paramtres diffrentes. Les sous-programmes sont appels partir d'un
programme principal. Tous les sous-programmes peuvent tre protgs contre la lecture et
l'affichage par des personnes non autorises. Les cycles sont une forme de sous-
programmes.
Sous-programme asynchrone
Programme pice qui peut tre dmarr de faon asynchrone (indpendamment de l'tat du
programme actuel) par un signal d'interruption (par ex. signal "Entre CN rapide").
Spline C
Le spline C est le spline le plus connu et le plus utilis. Les raccordements au niveau des
points intermdiaires sont caractriss par la continuit de la tangente et du rayon de
courbure. Des polynmes de 3me degr sont utiliss.
Surveillance du contour
Pour valuer la prcision du contour, on utilise l'cart de tranage l'intrieur d'une plage de
tolrance dfinie. Un cart de tranage excessivement lev peut s'expliquer, par exemple,
par une surcharge du systme d'entranement. Dans ce cas, une alarme se dclenche et les
axes sont immobiliss.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 819
Glossaire
Synchronisation
Instructions figurant dans les programmes pice pour la coordination des squences dans
les diffrents canaux, des emplacements d'usinage dfinis.
Systme anglo-saxon
Systme de mesure dans lequel les distances sont exprimes en "inch" et en fractions
dinch.
Systme de coordonnes
Voir Systme de coordonnes machine, Systme de coordonnes pice
Table de compensation
Table des points intermdiaires. Elle indique, pour des positions slectionnes de l'axe de
base, les valeurs de compensation de l'axe de compensation.
Notions complmentaires
820 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Glossaire
Touche logicielle
Touche dont le libell est reprsent par un champ de l'cran, qui s'adapte dynamiquement
la situation de commande courante. Les touches de fonction librement affectables
(softkeys) sont assignes par voie logicielle des fonctions dfinies.
Transformation
Dcalage d'origine additif ou absolu d'un axe.
Unit TOA
Chaque zone TOA peut contenir plusieurs units TOA. Le nombre des units TOA
possibles est limit via le nombre maximal de canaux actifs. Une unit TOA comprend un
seul bloc de donnes d'outils et un seul bloc de donnes de magazine. Un bloc de donnes
de porte-outil peut galement tre contenu (facultatif).
Valeur de compensation
Diffrence entre la position d'axe mesur par l'indicateur de mesure et la position d'axe
programme et souhaite.
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 821
Glossaire
Variable systme
Variable existant indpendamment de l'intervention du programmeur d'un programme
pice. Elle est dfinie par un type de donnes et par un nom de variable commenant par $.
Voir Variable dfinie par l'utilisateur.
Vitesse rapide
Vitesse de dplacement la plus rapide dun axe. Le rapide est utilis par exemple pour
approcher loutil du contour de la pice partir dune position de repos ou pour dgager
loutil du contour de la pice. La vitesse rapide se rgle dans un paramtre machine. Le
rglage est spcifique la machine.
Vitesse tangentielle
La vitesse tangentielle maximale programmable dpend de la rsolution d'introduction
(dfinition). Dans le cas d'une rsolution d'introduction de 0,1 mm par exemple, la vitesse
tangentielle maximale programmable vaut 1000 m/min.
WinSCP
WinSCP est un programme Open Source pour Windows, qui est disponible gratuitement et
qui est utilis pour le transfert de fichiers.
Zone de protection
Espace tridimensionnel l'intrieur de l' espace de travail dans lequel la pointe de l'outil ne
doit pas pntrer.
Zone de travail
Zone tridimensionnelle dans laquelle la pointe d'outil peut se trouver, compte tenu de la
structure de la machine-outil. Voir Volume de protection.
Zone TOA
La zone TOA comprend toutes les donnes d'outils et de magasins. Par dfaut, la zone
relative la porte des donnes concide avec la zone du canal. Par contre, des
paramtres machine permettent de dterminer que plusieurs canaux partagent une unit
TOA de sorte que des donnes de gestion d'outil communes soient ensuite disponibles pour
ces canaux.
Notions complmentaires
822 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Indice
$P_OTOL, 494
$P_STOLF, 496
" $P_SUBPAR, 151
$P_TECCYCLE, 629
"GET" automatique, 124
$PA_ATOL, 494
$R, 567
$Rn, 567
$
$SA_LEAD_TYPE, 524, 525
$AA_ATOL, 493 $SC_PA_ACTIV_IMMED, 222
$AA_COUP_ACT, 459, 500, 525 $SN_PA_ACTIV_IMMED, 222
$AA_LEAD_SP, 525 $TC_CARR1...14, 434
$AA_LEAD_SV, 525 $TC_CARR18[m], 434, 438
$AA_MOTEND, 276 $TC_DP1, 390
$AA_TOFF[ ], 596 $TC_DP10, 390
$AC_ACT_PROG_NET_TIME, 693 $TC_DP11, 390
$AC_ACTUAL_PARTS, 697 $TC_DP12, 390
$AC_BLOCKTYPE, 573 $TC_DP13, 390
$AC_BLOCKTYPEINFO, 573 $TC_DP14, 390
$AC_CTOL, 493 $TC_DP15, 390
$AC_CUT_INV, 450 $TC_DP16, 390
$AC_CUTMOD, 450 $TC_DP17, 390
$AC_CUTMOD_ANG, 450 $TC_DP18, 390
$AC_CUTTING_TIME, 693 $TC_DP19, 390
$AC_CYCLE_TIME, 693 $TC_DP2, 390
$AC_FIFO1, 571 $TC_DP20, 390
$AC_MARKER, 566 $TC_DP21, 390
$AC_OLD_PROG_NET_TIME, 693 $TC_DP22, 390
$AC_OLD_PROG_NET_TIME_COUNT, 693 $TC_DP23, 390
$AC_OPERATING_TIME, 693 $TC_DP24, 390
$AC_OTOL, 493 $TC_DP25, 390
$AC_PARAM, 566 $TC_DP3, 390
$AC_PROG_NET_TIME_TRIGGER, 694 $TC_DP4, 390
$AC_REQUIRED_PARTS, 697 $TC_DP5, 390
$AC_SMAXVELO, 489 $TC_DP6, 390
$AC_SMAXVELO_INFO, 489 $TC_DP7, 390
$AC_SPECIAL_PARTS, 697 $TC_DP8, 390
$AC_SPLITBLOCK, 573 $TC_DP9, 390
$AC_STOLF, 496 $TC_ECPxy, 394
$AC_TIMER, 570 $TC_SCPxy, 394
$AC_TOTAL_PARTS, 697 $TC_TPG1 ... 9, 667, 668
$AN_POWERON_TIME, 692
$AN_SETUP_TIME, 692
$MC_COMPESS_VELO_TOL, 464 *
$P_AD, 451
* (fonction de calcul), 61
$P_CTOL, 494
$P_CUT_INV, 450
$P_CUTMOD, 450
$P_CUTMOD_ANG, 450
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 823
Index
/ Syntaxe, 552
Actions synchrones
/ (fonction de calcul), 61
Variable d'excution, 560
Variables de prtraitement, 560
Vue d'ensemble des actions, 576
+
ADISPOSA, 274
+ (fonction de calcul), 61 Adresses
Programmation indirecte, 53
Adresses OEM, 272
< Affichage de bloc, 190
Inhibition, 164
< (oprateur de comparaison), 64
Alarme, 699
<<, 70
Comportement pour les actions synchrones, 639
<< (oprateur de concatnation), 75
numro, 699
<= (oprateur de comparaison), 64
Alarmes de cycle, 699ALF, 115, 117
<> (oprateur de comparaison), 64
AND, 64
Angle d'avance, 324
Angle de la tangente la trajectoire, 623
=
Angle de rotation, 344
== (oprateur de comparaison), 64 Angle final, 344
Angle latral, 324
angle rotatif 1, 2, 434
> Appel de sous-programme avec indication de chemin
et paramtres, 191
> (oprateur de comparaison), 64
Appel modal d'un sous-programme, 185
>= (oprateur de comparaison), 64
Apprentissage de compensations, 689
APR, 38
APRB, 38
A
APRP, 38
A1, A2, 434 APW, 38
A2, 323 APWB, 38
A3, 323 APWP, 38
A4, 323, 330 Arrondir au chiffre suprieur, 144
A5, 323, 330 AS, 201
A6, 335 ASIN, 61
A7, 335 ASPLINE, 233
AA, 607 ASUP, 109
ABS, 61 ATAN2, 61
ACC, 540 ATOL, 491
Accostage au point de contour suivant, 483 Attributs de position
Accostage de bute, 620 Programmation indirecte, 57
ACOS, 61 AV, 535
ACTBLOCNO, 164 Avance
ACTFRAME, 281 axiale, 607
Action synchrone Avance axiale, 607
Action, 557 avec TCOFRX, 439
Condition, 555 avec TCOFRY, 439
Domaine de validit, 553 AX, 669
Effacement, 636 AXCTSWE, 677
Elments d'instructions, 552 AXCTSWED, 677
interruption, 636 Axe
Positionnement d'un axe, 599 Ablocage, 677
Notions complmentaires
824 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Index
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 825
Index
Notions complmentaires
826 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Index
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 827
Index
Notions complmentaires
828 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Index
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 829
Index
Notions complmentaires
830 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Index
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 831
Index
Notions complmentaires
832 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Index
R S
R..., 18, 20 S1, S2, 535
RDISABLE, 580 Saisie et recherche de plages interdites la
Raccostage du contour recherche, 474
accostage avec un nouvel outil, 484 Saut
point de raccostage, 481 au dbut du programme, 82
READ, 134 Condition, 84
REAL, 22 Destination, 83
REDEF, 28 Instruction, 83
rducteur lectronique, 526 Repre, 84, 88
Rfrence angulaire, 542 SAVE, 157
Rfrence de trajectoire SBLOF, 158
Paramtrable, 256 SBLON, 158
Refpos, 601 SC, 453
Rgulation AC, additive, 587 SCPARA, 278
Rgulation AC, multiplicative, 588 SD, 233
Rgulation d'cartement, 590 SD42475, 354
RELEASE, 121 SD42476, 354
REP, 44, 617 SD42477, 354
REPEAT, 88, 101 SD42678, 357
REPEATB, 88 SD42680, 357
Rptition de sections de programme SD42900, 398
avec programmation indirecte CALL, 188 SD42910, 398
REPOS, 109 SD42920, 399
REPOSA, 476 SD42930, 399
REPOSH, 476 SD42935, 402
REPOSHA, 476 SD42940, 403, 449
REPOSL, 476 SD42984, 447
REPOSQ, 476 Section de programme
REPOSQA, 476 Rptition:, 88
RESET, 634 SEFORM, 213
RET, 170, 171 Segmentation automatique du dplacement, 660
Retrait rapide du contour, 115 Segmentation du dplacement dans le cas d'axes
RINDEX, 78 interpolation, 663
RMB, 476 Segmentation en distances partielles, 664
RME, 476 Slection d'un caractre individuel, 80
RMI, 476 SET, 44, 617
RMN, 476 SETAL, 619, 699
ROUND, 61 SETDNO, 431
ROUNDUP, 144 SETINT, 111
Routine d'interruption, 109 SETM, 103, 618
Affectation et dmarrage, 111 Simulation de valeurs pilotes, 525
Delete, 114 SIN, 61
Dplacement de retrait, 117 SON, 655, 663, 664
mettre hors tension/sous tension, 113 SONS, 655
Nouvelle affectation, 112 Sous-programme, 145
Retrait rapide du contour, 115 Appel avec transfert de paramtres, 180
Sauvegarde des fonctions G modales, 110 Appel indirect, 187
sens de dplacement programmable, 116, 117 Appel modal, 185
Routines de conversion, 562 Appel sans transfert de paramtres, 178
Chemin de recherche programmable, 192
Nom, 146
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 833
Index
Notions complmentaires
834 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0
Index
Notions complmentaires
Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0 835
Index
, 371
Notions complmentaires
836 Manuel de programmation, 03/2010, 6FC5398-2BP20-1DA0