29
MEC3530 – Fabrication assistée par ordinateur et machines outils Automne 2013 – Cours 7 Le langage de programmation APT Victor Calatoru

Cours_7_MEC3530_A2013

Embed Size (px)

DESCRIPTION

2

Citation preview

  • MEC3530 Fabrication assiste par ordinateur et machines outils

    Automne 2013 Cours 7 Le langage de programmation APT

    Victor Calatoru

  • Plan du cours

    Le langage APT Les sous-sets du langage Dfinition des points et des lignes en APT Description de loutil et des contions de contact entre

    loutil et la pice Exemples de programmes en APT

  • Caractristiques du langage

    Acronyme pour Automatically Programmed Tool. Apparu la fin des annes 50 et raffin dans les

    annes 60. Conu pour faciliter la programmation des trajectoires

    des outils, bas sur une philosophie similaire celle dautres langages de programmation de lpoque.

    Presque abandonn comme langage de programmation directe des MOCNs, utilis encore comme intermdiaire entre les logiciels plus performants et les post-processeurs.

    http://learning.dtpm.unipa.it/emc/it/apt_doc/manual/index.html

  • Les 5 soussets du langage APT

    Systme de contournage multiaxial

    Systme de contournage 3D

    Systme de contournage minimal

    Systme de dplacement pointpoint avanc

    Systme minimal

    Le langage prsente une structure modulaire avec moindres superpositions.

    Les modules peuvent tre ajouts seulement si le cas fera.

    un certain moment il y avait 25 modules spars.

    Le systme minimal est standardis, les modules ne le sont pas.

  • Premier sous set

    (1) Avance attach aux commandes de mouvement. (2) Instructions de copie, pour rpliquer des squences

    de programme, avec ou sans translation et/ou rotation.

    (3) Synonymes pour les mots du vocabulaire APT.

  • Commandes contenues dans le premier sous set

    (1) Dclaration de lorientation de loutil: FROM/x coord, y coord, z coord (2) Commande de dplacement: GOTO / x coord, y coord, z coord GODLTA / delta x, delta y, delta z (3) Limites du programme: PARTNO (identificateur du nom) FINI

  • Deuxime sous set

    (1) Transformations et rotations matricielles (2) Facilits pour macro-commandes (3) Capacit de dfinition imbrique (4) Fonctions de I/O (impression, perforation, et lecture). (5) Patterns des points (6) Control du postprocessing multiple. (7) Boucles de programme et calculs (calculs algbriques,

    fonctions pour racine carre, etc.) (8) Dfinitions pointlignecercle avances.

  • Dfinition des lments gomtriques

    Dfinition des lignes (1) Par deux points dcrits par les

    coordonnes. (2) Par deux points dcrits par des symboles. (3) Par un point et la tangente un cercle. (4) Tangente deux cercles. (5) Par un point et un angle spcifi par

    rapport laxe positive X. (6) Par un point et parallle une autre

    ligne.

    Dfinitions des points (1) Par des coordonnes x, y, et z. (2) Par des coordonnes x et y. (3) Par lintersection de deux lignes. (4) Par lintersection dune ligne et un

    cercle. (5) Par lintersection de deux cercles. (6) Sur la circonfrence dun cercle,

    localis par mesure angulaire, en partant de laxe X positive.

    Dfinitions des cercles (1) Par les coordonnes du centre et valeur du rayon. (2) Par point du centre et valeur du rayon. (3) Par point du centre et une ligne laquelle il est tangent. (4) Par point du centre et un cercle auquel il est tangent.

  • Troisime sous set

    (1) Contournage des sections coniques, incluant les coniques vides.

    (2) Possibilit de spcifier lpaisseur dune surface. (3) Contrle de programme pour terminaison

    conditionnelle de la coupe. (4) Enlvement des squences spcifiques de coupe. (5) Langage pour usinage des poches. (6) Dsignation et manipulation de noms symboliques

    des variables des surfaces. (7) Surfaces cylindriques tabuls (8) Langage spcial pour le dmarrage des dcalages

  • Facilits ajoutes pour le set de contournage minimal

    (1) tablir la surface de la pice. (2) Spcification de loutil par diamtre et rayon du bout. (3) Spcification de la tolrance intrieure et extrieure de la

    trajectoire de loutil. (4) tablir un sens de la direction direction pour les prochains

    mouvements (5) Commandes de mouvement gauche, droite, avant et arrire (6) Procdure de dmarrage pour placer loutil sur une nouvelle

    courbe usiner. (7) Commandes de positionnement de loutil pour orienter loutil

    gauche, droite ou sur la courbe. (8) Dfinitions additionnelles et pour les plans : (a) Par les coefficients de l quation du plan. (b) Par trois points non aligns. (c) Passant par un point et parallle un plan donn. (d) Parallle et dcal par rapport un plan donn.

  • Quatrime sous set

    1. Capacit de gnraliser loutil. 2. Surfaces additionnelles tridimensionnelles 3. Dfinitions additionnelles des vecteurs 4. Langage additionnel de contrle de loutil par

    rapport la pice. 5. Surfaces ajustes 6. Tolrances surfaciques individuelles sur tous les

    surfaces.

  • Facilits ajouts au systme de contournage 3D

    (1) Commandes de dplacement GOUP et GODOWN (2) Dfinitions des vecteurs : (a) Par les composantes x, y et z (b) Par deux points (3) Dfinition dun cne : (a) Par les coordonnes de la pointe, composantes du vecteur de

    laxe, et le cosinus du demi angle. (b) Par les coordonnes de la pointe, vecteur de laxe et le cosinus

    du demi angle. (4) Dfinition dun cylindre : (a) Par les coordonnes du point sur laxe, composantes du vecteur

    de laxe et le rayon. (b) Par point sur axe, vecteur de laxe et rayon. (5) Procdure de dpart tridimensionnel GO/...

    TO ON PAST

    ,S1,S2, { }

  • Facilits ajouts au systme de contournage multiaxial

    Le sousset pour contournage multiaxial ajoute la capacit de contrler laxe de loutil. Ceci est obtenu par la spcification explicite des valeurs du vecteur de laxe ou en spcifiant que laxe va rester en position normale la surface de la pice ou la surface guide.

  • Exemple de programmation en langage APT (1) PARTNO N/C 360 APT SAMPLE PROGRAM (2) SP = POINT/ 0, 0, 0 (3) L1 = LINE/ 4, 0, 0, 4, 8, 0 (4) PT = POINT/ 4.0, 8.0, 0 (5) L2 = LINE/ PT, ATANGL, 45 (6) L3 = LINE/ 8, 12, 0, 12, 12, 0 (7) L4 = LINE/ 14, 5, 0, 14, 10, 0 (8) L5 = LINE/ 0, 2, 0, 10, 2, 0 (9) C1 = CIRCLE/ 12, 10, 0, 2.0 (10) C2 = CIRCLE/ 14, 2, 0, 3.0 (11) INTOL/ 0 (12) OUTTOL/ .005 (13) CUTTER/ .25 (14) SPINDL/ 2000, CLW (15) COOLNT/ ON (16) FEDRAT/ 20.0 (17) FROM/ SP (18) GO/ TO, L1 (19) TLLFT, GOLFT/ L1, PAST, L2 (20) GORGT/ L2, PAST, L3 (21) GORGT/ L3, TANTO, C1 (22) GOFWD/ C1, TANTO, L4 (23) GOFWD/ L4, PAST, C2 (24) GORGT/ C2, PAST, L5 (25) GORGT/ L5, PAST, L1 (26) GOTO/ SP (27) COOLNT/ OFF (28) SPINDL/ OFF (29) FINI

  • Description de loutil

    Forme gnrale CUTTER/ d, r, e, f, , , h avec:

    d = diamtre de loutil r = rayon de coin e, f = centre du rayon de coin = conicit de loutil = angle du bout de loutil h = hauteur de la partie active Il y a une forme rduite, seulement avec les paramtres d et r spcifis. Utile pour les outils cylindriques.

  • Positionnement de loutil

    Tolrance de la trajectoire de loutil

    Surface de la pice suivie par le bout de loutil (TLONPS) ou tangente loutil (TLOFPS), gauche ou droite

    Arrt de loutil avant (TO), sur (ON) ou aprs (PAST) un limiteur. Arrt de loutil tangent un cercle.

  • Commandes de dplacement Les commandes de base

    en mode point point : FROM/ - point de dpart GOTO/ - dplacement absolu GODLTA/ - dplacement relatif

    en mode trajectoire : GO/ - dplacement sur une trajectoire dfinie par les 3 surfaces : - PL1 : Surface guide - PL2 : Surface de la pice - PL3 : Surface limite

    Ex : GO/TO, PL1, TO, PL2, TO, PL3

    Il y a 6 commandes de dplacement selon le changement de direction : GOFWD, GOBACK, GOLFT, GORGT, GOUP et GODOWN.

    GOLFT

    GORGT

    GOFWD

    GOBACK

    GODOWN

    GOUP

    Position courante

    Position antrieure

  • Les primitives gomtriques Figure gomtrique Mot rserv Point POINT Ligne LINE Plan PLANE Cercle CIRCLE Cylindre CYLNDR Ellipse ELLIPS Hyperbole HYPERB Cne CONE Conique gnrale GCONIC Conique vote LCONIC Vecteur VECTOR Matrice MATRIX Sphre SPHERE Quadrique QADRIC Cylindre tabul TABCYL Surface polyconique POLCON Surface rgle RLDSRF

  • Dfinition des points

    PT1 = POINT/ 2, 4, 3 PT2 = POINT/ 2, 4, 0 PT3 = POINT/ -5, -2, 3 PT4 = POINT/ -5, -2, 0

    PT1 = POINT/ INTOF, LN1, LN4 PT2 = POINT/ INTOF, LN2, LN1 PT3 = POINT/ INTOF, LN1, LN3 PT4 = POINT/ INTOF, LN2, LN3 PT5 = POINT/ INTOF, LN2, LN4

    Point lintersection de 2 lignes

    Point par coordonnes

    PT1 = POINT/ RTHETA, XYPLAN, 5.66, 45 PT2 = POINT/ THETAR, XYPLAN, 150.0, 6

    Point en coordonnes polaires

    P1 = POINT/ INTOF, PLANE1, PLANE2, PLANE3

    Point lintersection de 3 plans

  • Dfinition des points

    P1 = POINT/ YSMALL, INTOF, L1, C3 P2 = POINT/ YLARGE, INTOF, L1, C3 P3 = POINT/ YSMALL, INTOF, L1, C1 P4 = POINT/ YLARGE, INTOF, L1, C1 P5 = POINT/ XLARGE, INTOF, L2, C1 P6 = POINT/ XSMALL, INTOF, L2, C1 P7 = POINT/ XLARGE, INTOF, L2, C2 P8 = POINT/ XSMALL, INTOF, L2, C2

    P1 = POINT/ YLARGE, INTOF, C1, C2 P2 = POINT/ YSMALL, INTOF, C1, C2 P3 = POINT/ XSMALL, INTOF, C3, C4 P4 = POINT/ XLARGE, INTOF, C3, C4

    Point lintersection de 2 cercles

    Point lintersection dune ligne avec un cercle

    PT1 = POINT/ CENTER, C1

    Point comme centre dun cercle

    P1 = POINT/ C1, ATANGL, 45.0 P2 = POINT/ C1, ATANGL, 90 P3 = POINT/ C1, ATANGL, 225 ou P1 = POINT/ C1, ATANGL, -315 P2 = POINT/ C1, ATANGL, -270 P3 = POINT/ C1, ATANGL, -135

    Point un angle donn, sur un cercle

  • Dfinition des lignes

    LN1 = LINE/ -3, -3.5, 4, 3.5 LN2 = LINE/ 7, 2, 3, 1 ou PT1 = POINT/ -3, -3.5 PT2 = POINT/ 4, 3.5 PT3 = POINT/ 7, 2 PT4 = POINT/ 3, 1 LN1 = LINE/ PT1, PT2 LN2 = LINE/ PT3, PT4

    Ligne par 2 points

    LN1 = LINE/ PT1, LEFT, TANTO, C1

    LN2 = LINE/ PT1, RIGHT, TANTO, C1

    LN3 = LINE/ PT2, RIGHT, TANTO, C1

    Ligne par 1 point et cercle tangent

    Ligne tangente 2 cercles

    L1 = LINE/ RIGHT, TANTO, C1, RIGHT, TANTO, C2

    L2 = LINE/ LEFT, TANTO, C1, LEFT, TANTO, C2

    L3 = LINE/ RIGHT, TANTO, C1, LEFT, TANTO, C2

    L4 = LINE/ LEFT, TANTO, C1, RIGHT, TANTO, C2

  • Dfinition des lignes

    LN1 = LINE/ PT1, ATANGL, 45, XAXIS LN2 = LINE/ PT2, ATANGL, 22.5 LN3 = LINE/ PT3, ATANGL, 60, YAXIS

    Ligne passant par un point et inclin par rapport une axe

    LN1 = LINE/ PT1, SLOPE, 1, XAXIS LN2 = LINE/ PT2, SLOPE, .4142 LN3 = LINE/ PT3, SLOPE, 1.7321, YAXIS

    Ou, si on connat la pente :

    Ligne passant par un point et inclin par rapport une autre ligne

    L1 = LINE/ PT2, ATANGL, 15, L2

    L3 = LINE/ PT3, ATANGL, 135, L1

    Ou, si on connat la pente :

    Ligne parallle ou perpendiculaire une autre ligne :

    LN1 = LINE/ PT2, SLOPE, .26759, L2

    LN3 = LINE/ PT3, SLOPE, -1, L1

    L1 = LINE/ PT1, PARLEL, LX

    LN1 = LINE/ PT1, PERPTO, LNX

  • Dfinition des lignes

    L1 = LINE/ PARLEL, LX, XSMALL, 2 ou L1 = LINE/ PARLEL, LX, YLARGE, 2.0 L2 = LINE/ PARLEL, LX, XLARGE, 2 ou L2 = LINE/ PARLEL, LX, YSMALL, 2.0

    Ligne parallle une autre ligne et situe une distance

    Ligne inclin interceptant une axe

    L1 = LINE/ ATANGL, 22, INTERC, 3 L2 = LINE/ ATANGL, -22, INTERC, 3 ou L1 = LINE/ ATANGL, 22, INTERC, YAXIS, 3 L2 = LINE/ ATANGL, -22, INTERC, XAXIS, 7.425

    Ou, si on connat la pente :

    Ligne parallle ou perpendiculaire une cylindre tabul :

    L1 = LINE/ SLOPE, .40403, INTERC, 3 L2 = LINE/ SLOPE, -.40403, INTERC, 3 ou L1 = LINE/ SLOPE, .40403, INTERC, YAXIS, 3 L2 = LINE/ SLOPE, -.40403, INTERC, XAXIS, 7.425

    L3 = LINE/ P3, TANTO, TABC, P4

    L2 = LINE/ P1, PERPTO, TABC, P2

  • Dfinition des lignes

    Ligne dfinie comme intersection des deux plans

    L1 = LINE/ INTOF, PLN1, PLN2

    Ligne superpose une axe

    YAXISXAXIS

    /LINEL1 {=

  • Commandes auxiliaires et de post-processeur

    Units de mesure UNITS /MM ou /INCHES Vitesse de coupe SPINDL /1000, CLW ou CCLW SPINDL /OFF Avance FEDRAT /40, IPM ou IPR RAPID Liquide de coupe COOLNT /FLOOD change doutil LOADTL /01

    Entte du programme PARTNO Spcification de la machine MACHIN/ Temps dattente DELAY/ 30 Affichage de la position de loutil CLPRNT Commentaire REMARK/ Fin du programme FINI

  • Oprations arithmtiques et fonctions

    Oprateur Description

    + Addition

    - Soustraction

    * Multiplication

    / Division

    ** Exponentiation

    Oprateur Prcdence valuation fonctions 1 (plus haut)

    ** 2 * / 3 + - 4 (plus bas)

    Nom Fonction Example Usage ABSF(x) Valeur absolue de x X = ABSF(-22.5)

    ATANF(x) Arc tangente de x X = ATANF(.577350)

    EXPF(x) ex X = EXPF(2)

    SINF(x) Sinus de x X = SINF(45)

    COSF(x) Cosinus de x X = COSF(45)

    DOTF(svector, svector) Produit scalaire des Vecteurs DP = DOTF(V1, V2)

    LNTHF(svector) Magnitude dun vecteur LEN = LNTHF(V)

    LOGF(x) logex LOG = LOGF(2)

    SQRTF(x) Racine carre de x SQR = SQRTF(4)

    ANGLF(scircle, spoint) Angle entre laxe positive X et a ligne unissant le centre dun cercle et un point.

    A = ANGLF(C1, (POINT/ 2, -3))

    NUMF(SPAT) Le nombre des points dun pattern. N = NUMF(PAT1) DISTF(splane, splane) ou DISTF(sline, sline)

    Distance entre lignes parallles ou plans parallles . (Mlange des surfaces nest pas permis.)

    D = DISTF(L1, L2)

    LOG10F(x) Log10x LG = LOG10F(2)

    TANF(x) Tangente de x T = TANF(30.)

    ATAN2F(x, y) Arc tangente de x/y A = ATAN2F(2, .5)

  • Exemple de codage pour perage des trous

    PARTNO SAMPLE PART DRILLING OPERATION MACHIN/DRILL,01 CLPRNT UNITS/MM REMARK Part geometry, Points are defined 10 mm above part surface. PTARG = POINT/0, -50.0, 10.0 P5 = POINT/70.0, 30.0, 10.0 P6 = POINT/120.0, 30.0, 10.0 P7 = POINT/70.0, 60.0, 10.0 REMARK Drill bit motion statements. FROM/PTARG RAPID GOTO/P5 SPINDL/1000, CLW FEEDRAT/0.05, IPR GODLTA/0, 0, -25.0 GODLTA/0, 0, 25.0 RAPID

    GOTO/P6 SPINDL/1000, CLW FEEDRAT/0.05, IPR GODLTA/0, 0, -25.0 GODLTA/0, 0, 25.0 RAPID GOTO/P7 SPINDL/1000, CLW FEEDRAT/0.05, IPR GODLTA/0, 0, -25.0 GODLTA/0, 0, 25.0 RAPID GOTO/PTARG SPINDL/OFF FINI

  • Exemple de codage dun contour simple

    PARTNO SAMPLE PART MILLING OPERATION MACHIN/MILLING,02 CLPRNT UNITS/MM CUTTER/20.0 REMARK Part geometry, Points and Lines are defined 25 mm below part top surface. PTARG = POINT/0, -50.0, 10.0 P1 = POINT/0, 0, -25.0 P2 = POINT/160.0, 0, -25.0 P3 = POINT/160.0, 60.0, -25.0 P4 = POINT/35.0, 90.0, -25.0 P8 = POINT/130.0, 60.0, -25.0 L1 = LINE/P1, P2 L2 = LINE/P2, P3 C1 = CIRCLE/CENTER, P8, RADIUS, 30.0 L3 = LINE/P4, LEFT, TANTO, C1

    L4 = LINE/P4, P1 PL1 = PLANE/P1, P2, P4 REMARK Tool motions LOADTL/05 FROM/PTARG SPINDL/1000, CLW FEEDRAT/50, IPM GO/TO, L1, TO, PL1, ON, L4 GORGT/L1, PAST, L2 GOLFT/L2, TANTO, C1 GOFWD/C1, PAST, L3 GOFWD/L3, PAST, L4 GOLFT/L4, PAST, L1 RAPID GOTO/PTARG SPINDL/OFF FINI

    Param. coupe : Feed = 50 mm/min, Speed = 1000 rev/min, Cutter diam. = 20 mm, en position 5 Point origine (PTARG) : X = 0, Y = -50, Z = 10

    PTARG

    P1 P2

    P3 P4

    P8

    L1

    L2

    L3 C1

    L4

  • Questions ?

    MEC3530 Fabrication assiste par ordinateur et machines outilsPlan du coursCaractristiques du langageLes 5 soussets du langage APTPremier sous setCommandes contenues dans le premier sous setDeuxime sous setDfinition des lments gomtriquesTroisime sous setFacilits ajoutes pour le set de contournage minimalQuatrime sous setFacilits ajouts au systme de contournage 3DFacilits ajouts au systme de contournage multiaxialExemple de programmation en langage APTDescription de loutilPositionnement de loutilCommandes de dplacementLes primitives gomtriquesDfinition des pointsDfinition des pointsDfinition des lignesDfinition des lignesDfinition des lignesDfinition des lignesCommandes auxiliaires et de post-processeurOprations arithmtiques et fonctionsExemple de codage pour perage des trousExemple de codage dun contour simpleQuestions ?