Você está na página 1de 26

S43784D - Manual de Programao e Operao - CNC Fanuc 21i - M

12 - M!C"O
Atravs do uso de subprograma pode-se repetir facilmente a mesma operao. Com a funo
MACRO tambm, pois permite o uso de variveis, operaes aritmticas, desvios condicionais, etc.
Com isso o usurio consegue criar desde programas como alo!amentos e ciclos pr"prios definidos
pelo usurio.
#m programa pode invocar uma macros atravs de um simples comando.
$RO%RAMA &' #()*A%'M MACRO
O+++, O-,.+
/ /
/ 0,10,234
/ %+, %54 60, 70, 8.++
%9: $-,.+ R:+ ;4 %+4 60, 70, R0,
/ /
/ /
/ /
M.+
M--
#$planao%
<uando definimos uma varivel, especificamos um s=mbolo >0? seguido pelo numero da
varivel. computadores pessoais permitem assinalar um nome para varivel, porm esta
possibilidade no e permitida nesta macro.
#$emplo/ 0,
#ma e@presso pode ser usada para especificar o numero da uma varivel, nesse caso, a
e@presso deve ser e@pressa entre colcAetes.
#$emplo% 0 B0,C04-,4D
12&1 - 'ipo( de )ari*+ei(
As variveis so classificadas em 5 tipos/
a? 0+ - (empre nula Ealores podem ser assinalados para esta varivelF
b? 0, - 0.. - Eariveis locais $odem apenas ser usadas em macro para carregar dados
como resultado de operaes Guando o comando e as variveis locais so inicialiHadas sem valores
>nulas?. <uando uma macro e invocada, argumentos so assinalados para a variveis locaisF
c? 0,++ - 0,5- >0,--? 3 0:++ - 0:., >0---? - Eariveis comuns $odem estar parcialmente
entre diferentes programas Macros. <uando o comando e desligado, as variveis 0,++ a 0:., mantm
os dados sempre Gue o comando for desligado. Como opo, variveis comuns, 0,:+ a 0,-- e 0:.4 a
0--- so permitidas >opcional?F
d? 0,+++ - Eariveis de (istema (o usadas para ler uma variedade de dados *C como
posio atual, valores de compensao de ferramenta.

1

S43784D - Manual de Programao e Operao - CNC Fanuc 21i - M



12&2 - ,ama de +alore( para a( +ari*+ei(
Eariveis locais e comuns podem ter valor 1 + ou um valor na seguinte fai@a
-,+
5I
a -,+
-4-
,+
-4-
a ,+
5I
(e o resultado do calculo for invalido, um alarme ,,, ser mostrado.
12&3 - Omi((o do pon-o decimal
<uando um valor de varivel for definido em um programa, o ponto decimal pode ser omitido.
#$emplo% <uando 0,1,4. for definido, o valor real da varivel 0, ,4..+++
12&4 - "e.erenciando +ari*+ei(
$ara referenciar o valor de uma varivel em um programa, especifiGue o endereo seguido
pelo numero da varivel. <uando uma e@presso for usada para especificar uma varivel, inclua a
e@presso entre colcAetes.
#$emplo%
%+, 6B0,C04D 80.
#m valor de varivel e automaticamente arredondado de acordo com o m=nimo incremento do
endereo
#$emplo/
<uando %+ 60,F for e@ecutado no C*C ,3,+++mm e o valor for ,4,.5:9 for assinalado para a
varivel 0, o comando interpreta como %+ 6,4,.59.
$ara reverter o sinal do valor de uma varivel, programe o sinal menos >-? para uma varivel.
#$emplo%
%+ 6-0,
12&/ - Opera0e( ari-im1-ica( e opera0e( l2gica(
As operaes listadas na tabela seguinte podem ser e@ecutadas com variveis.
A e@presso a direita da operao pode conter constantes e3ou variveis combinadas por uma
funo ou operao.
As variveis 0J e 0K podem ser substitu=das por uma constante.
As variveis da esGuerda tambm podem ser substitu=das por uma e@presso.

2

S43784D - Manual de Programao e Operao - CNC Fanuc 21i - M




3

S43784D - Manual de Programao e Operao - CNC Fanuc 21i - M



12&2 - ,ama de +alore( para a( +ari*+ei(
Eariveis locais e comuns podem ter valor 1 + ou um valor na seguinte fai@a
-,+
5I
a -,+
-4-
,+
-4-
a ,+
5I
(e o resultado do calculo for invalido, um alarme ,,, ser mostrado.
12&3 - Omi((o do pon-o decimal
<uando um valor de varivel for definido em um programa, o ponto decimal pode ser omitido.
#$emplo% <uando 0,1,4. for definido, o valor real da varivel 0, ,4..+++
12&4 - "e.erenciando +ari*+ei(
$ara referenciar o valor de uma varivel em um programa, especifiGue o endereo seguido
pelo numero da varivel. <uando uma e@presso for usada para especificar uma varivel, inclua a
e@presso entre colcAetes.
#$emplo%
%+, 6B0,C04D 80.
#m valor de varivel e automaticamente arredondado de acordo com o m=nimo incremento do
endereo
#$emplo/
<uando %+ 60,F for e@ecutado no C*C ,3,+++mm e o valor for ,4,.5:9 for assinalado para a
varivel 0, o comando interpreta como %+ 6,4,.59.
$ara reverter o sinal do valor de uma varivel, programe o sinal menos >-? para uma varivel.
#$emplo%
%+ 6-0,
12&/ - Opera0e( ari-im1-ica( e opera0e( l2gica(
As operaes listadas na tabela seguinte podem ser e@ecutadas com variveis.
A e@presso a direita da operao pode conter constantes e3ou variveis combinadas por uma
funo ou operao.
As variveis 0J e 0K podem ser substitu=das por uma constante.
As variveis da esGuerda tambm podem ser substitu=das por uma e@presso.

4

S43784D - Manual de Programao e Operao - CNC Fanuc 21i - M



12&/&1 - 'a3ela de opera0e( ari-im1-ica( e opera0e( l2gica(

Funo Forma-o
&'8)*)CAO 0)10J
(OMA 0)10JC0K
&)8'R'*CA 0)10J-0K
$RO&#LO 0)10J@0K
<#OC)'*L' 0)10J30K
('*O 0)1()*B0JD
CO(('*O 0)1CO(B0JD
LA*%'*L' 0)1LA*B0JD
ARCO LA*%'*L' 0)1ALA*B0JD3B0KD
RA)M <#A&RA&A 0)1(<RLB0JD
EA;OR AN(O;#LO 0)1AN(B0JD
ARR'&O*&AM'*LO 0)1RO#*&B0JD
ARR'&O*&AM'*LO &OO* 0)18)6B0JD
ARR'&O*&AM'*LO #$ 0)18#$B0JD
OR 0)10J OR 0K
6OR 0)10J 6OR 0K
A*& 0)10J A*& 0K
CO*E'R(AO &' NC& A N)* 0)1N)*B0JD
CO*E'R(AO &' N)* A NC& 0)1NC&B0JD
OS#")!45O/ #ma operao l"gica se e@ecuta em nPmeros binrios bit a bit.

5

S43784D - Manual de Programao e Operao - CNC Fanuc 21i - M



#$plicao%
#*)&A&'( &' Q*%#;O - As unidades de Rngulos usadas com as funes ()*, CO(, LA*
e
ALA* so em graus.
'@emplo/ -+S.+T 1 -+,:S.
8#*UVO ALA* - Ap"s a 8#*UVO ALA*, especifiGue o comprimento de dois lados
separados por uma barra se obtm um resultado onde +W resultadoW .9+.
'@emplo/ <uando 0,1ALA*B,D3B,D, o valor da varivel , e ,.:.
8#*UVO ARR'&O*&AM'*LO - <uando se inclui uma funo de arredondamento em
uma operao aritmtica ou l"gica a declarao )8 ou OX);', a funo RO#*& arredonda a
primeira casa decimal.
#$emplo/ <uando se e@ecuta 0,1RO#*&B04D onde a varivel 04 contem o valor ,,4.5:, o
valor para a varivel 0, e ,.
A funo de arredondamento apro@ima o valor especificado segundo o incremento m=nimo de
entrada.
#$emplo% #m programa de furaco Gue realiHa um movimento segundo os valores das variveis
0,
e 04 e logo retorna a posio inicial.
(upondo Gue o sistema m=nimo incrementos e de ,3,+++mm, a varivel 0, contem o valor
armaHenado de ,,4.5I e a varivel 04 contem o valor armaHenado de 4,.5:9.
&ai temos/
%++ %-, 6-0, Movimento de ,,4.:mm
%+, 6-04 8.++ Movimento de 4,.59mm
Y %++ 6B0,104D
(endo Gue ,,4.5IC4,.5:91.,:2+. a distancia de deslocamento e .,:2+ em Gue a ferramenta
no retorna a posio inicial.
Y %+ 6BRO#*&B0,DCRO#*&B04DD
&eve ser programado para retorno da ferramenta na posio inicial.
'@emplo sobre as funes 8#$ e 8)6.
(uponAa Gue 0,1,,4 e 041-,,4F
<uando 0. 1 8#$B0,D e e@ecutada, o valor 4 e assinalado para a varivel .. <uando 0. 1
8)6B0,D e e@ecutada, o valor , e assinalado para a varivel .. <uando 0. 1 8#$B04D e e@ecutada, o
valor -4 e assinalado para a varivel .. <uando 0. 1 8)6B04D e e@ecutada, o valor -, e assinalado
para a varivel ..
12&6 - Prioridade( de opera0e(
, - 8unes
4 - Operaes como multiplicao e diviso >Y,3,A*&?
. - Operaes como adio e subtrao >C,-,OR,6OR?

6

S43784D - Manual de Programao e Operao - CNC Fanuc 21i - M




7

S43784D - Manual de Programao e Operao - CNC Fanuc 21i - M



#$emplo%
0,104C0.Y()*B05D
$rimeira resoluo ()*B05D (egunda resoluo 0.Y()*B05D Lerceira resoluo 04C0.Y()*B05D
12&7 - N7+ei( de colc8e-e(
$ara modificar as ordens das operaes deve-se usar colcAete BD.
Os colcAetes podem ser usados ate : n=veis incluindo os colcAetes usados ate fecAar a
e@presso. <uando um n=vel de : colcAetes for ultrapassado um alarme ,,2 ocorrera.
'@emplo/
0,1()*BBB04C0.DY05C0:DY09D
,Z operao B04C0.D
4Z operao B04C0.DY05
.Z operao BB04C0.DY05C0:D
5Z operao BB04C0.DY05C0:DY09
:Z operao ()*BBB04C0.DY05C0:DY09D
12&8 - De(+io e repe-io
'm um programa o flu@o do controle pode modificar-se usando a declarao %OLO e a
declarao )8 de desvio e repeties.
Lr[s tipos de operaes so usadas/
,Z %OLO - desvio incondicional
4Z )8 - desvio condicional/ (', '*LAO.
.Z OX);' - repetio/ '*<#A*LO.
12&8&1 - De(+io incondicional - ,O'O
'@ecuta um desvio para o nPmero de seG\[ncia *.
<uando se especifica um numero de seG\[ncia no compreendido entre , ate -----, um alarme
,42 ser mostrado.
Lambm pode-se especificar um numero de seG\[ncia usando uma e@presso.
%OLO * * - nPmero de seG\[ncia >, ate -----?
'@emplo/
%OLO:++F >desvia para o bloco *:++?

8

S43784D - Manual de Programao e Operao - CNC Fanuc 21i - M



12&8&2 - De(+io condicional - 9F
'specifiGue uma e@presso condicional depois de ])f]. (e a e@presso condicional for
verdadeira e@ecuta-se um desvio para o numero de seG\[ncia *. (e a e@presso condicional for
falsa e@ecuta-se o bloco seguinte.
#$emplo%
(e o valor da varivel 0, for superior a ,+, e@ecuta um desvio ao numero de seG\[ncia *4.
se for falsa
a
)8 B0,%L,+D %OLO 4
condio
se for verdadeira a
processamento
*4 %++ %-,
6,+
condio
#$plica0e(%
'@presso condicional - #ma e@presso condicional deve incluir um operador colocado entre
as variveis ou entre uma varivel e uma constante e deve estar entre colcAetes.
*o lugar de uma varivel pode ser usada uma e@presso.
Operadores - Os operadores so formados por duas letras e usado para comparar dois valores
com a finalidade de determinar se so iguais ou se um valor e menor ou maior Gue outro valor.
Operador
Signi.icado
'< )gual a
*' &iferente de
%L Maior Gue
%' Maior ou igual a
;L Menor Gue
;' Menor ou igual a

9

S43784D - Manual de Programao e Operao - CNC Fanuc 21i - M




10
Programa e$emplo%
&eterminar a soma dos nPmeros de , a ,+.
O-,++
041, Ealor inicial da varivel 041,
*, )8B04 %L,+D %OLO4 &esviar para *4 se 04 for maior Gue ,+
04104C, )ncrementando a varivel
%OLO , &esviar para *,
*4 M.+ 8im do programa
Os valores das variveis 04 a cada etapa.
0414,.,5,:,9,I,I,2,-,,+,,,.
12&8&3 - "epe-io - :;9<#
'specifiGue uma e@presso condicional depois de OX);'. 'nGuanto a condio especificada
for verdadeira, o programa vai sendo e@ecutado desde a declarao &O ate a declarao '*&. (e a
condio especificada for falsa o programa passa a ser e@ecutado no bloco Gue vem em seguida a
declarao '*&.
se for
falsa a
condio
OX);' Be@presso condicionalD &Om
>m1,,4,.?
$rocessamento
'*&
m
/
/
se for verdadeira a condio
#$plicao%
'nGuanto a condio especificada for verdadeira, depois de OX);' +, desde a declarao &O
ate a declarao '*&.
(e a condio especificada for falsa o programa continua sendo e@ecutado a partir do bloco Gue
vem depois de '*&. (e aplica id[ntico formato para a declarao )8.
#m numero depois de &O e um numero depois de '*& so nPmeros de identificao para
especificar um intervalo de e@ecuo.
&eve-se usar os nPmeros ,, 4 e ., Guando se usa um numero diferente de ,, 4 e . e mostrado o
alarme ,49.
12&8&4 - N7+ei( de ro-ina( u(ando a .uno :;9<#
Os nPmeros de identificao de , ate . em um desvio &O-'*& pode ser usado Guantas veHes
dese!ado. *ote porem Gue Guando um programa inclui rotinas de repetio entrelaados >intervalos
do sobrepostos? um alarme ,45 ocorrer.
, - Os nPmeros de identificao >, a .? podem ser usados varias veHes como dese!ado.
OX);' B.....D &O,
/
e@ecuo
/
'*&
,
/
OX);' B.....D &O,
/
e@ecuo
/
'*&
,
4 - *o podemos sobrepor os intervalos &O
OX);' B.....D &O,
/
e@ecuo
/
OX);' B.....D &O4
/
'*&
,
/
e@ecuo
/
'*&
4
. - As rotinas &O podem ser entrelaadas ate o m@imo de . n=veis.
OX);' B.....D &O,
/
OX);' B.....D &O4
/
OX);' B.....D &O.
/
e@ecuo
/
'*&
.
/
'*&
4
/
'*&
,
5 - O comando pode ser transferido para uma rotina e@terna.
OX);' B.....D &O,
/
)8 B.....D %OLO n
/
'*&
,
/
*
n
: - Os desvios no podem ocorrer para um ponto dentro da rotina.
)8 B.....D %OLO n
/
OX);' B.....D &O,
/
*
n
/
'*&
,
12&= - <imi-e(
<uando se especifica &Om sem especificar a declarao OX);', se e@ecuta uma rotina infinita
Gue vai desde &O ate '*&. Lempo de processamento/ <uando se e@ecuta um desvio a um numero
de seG\[ncia especificada em uma declarao %OLO se busca um numero de seG\[ncia.
$or este motivo o processamento no sentido inverso >para trs?, demora-se mais Gue o
processamento no sentido direto >para frente?.
#tiliHando a declarao OX);' para repetio se reduH o tempo de processamento.
12&1> - )ari*+el no de.inida
'm uma e@presso condicional Gue utiliHa '< ou *', uma varivel nula e o Hero tem efeitos
diferentes. 'm outros tipos de e@presses condicionais, um valor nulo e considerado Hero.
12&11 - C8amada de macro(
$ode-se invocar um programa macro usando os seguintes mtodos. CAamada simples %9:.
CAamada modal %99.
CAamada de macro atravs do c"digo %. CAamada de macro atravs do c"digo M. CAamada
de subprograma com c"digo M. CAamada de subprograma com c"digo L.
12&11&1 - Di.erena( en-re c8amada( de macro e c8amada( de
(u3programa(
A cAamada de macro >%9:? e diferente da cAamada de um subprograma >M-2? como se
descreve a seguir/
, - Com %9: pode-se especificar um argumento >dado transferido a uma macro?, M-2 no
permite faHe-lo.
4 - <uando um bloco M-2 cintem outro comando - e@./ %+, 6,++ M-2 $p -F se cAama o
subprograma depois de se e@ecutar o comando. $or outro lado, %9: cAama incondicionalmente uma
macro.
. - <uando um bloco M-2 contem outro comando - e@./ %+, 6,++ M-2 $p -F a maGuina para
no modo bloco a bloco por outro lado, %9: no detm a maGuina.
5 - Com %9:, o n=vel de variveis locais variam, com M-2 o n=vel de variveis locais no
varia.
12&11&2 - C8amada Simple( ?,6/@
<uando se especifica %9:, se cAama uma macro especificado no endereo $. Os dados
>argumentos?
podem ser transferidos para um programa macro.
Sin-a$e/
G65 P____ L_____
Onde/
$ ^^^ F nPmero do programa Gue contem a macro
; ^^^ F nPmero de repeties >,1default?
#$emplo%
O+++, O-,++
%9: $-,++ ,4 A, N4 0.10,C04
M.+ )8B0. %L.9+D %OLO -
%+ %-, 6 0.
*- M--
#$plana0e(/
Ap"s %9: especifiGue o endereo $ com o numero do programa Gue contem a macro.
<uando o nPmero de repeties for necessrio especifiGue o numero de , ate ----, Guando , for
omitido a repetio ser Pnica. #tiliHando uma especificao do argumento se atribuem valores
as correspondentes variveis locais.
12&12 - #(peci.ica0e( de argumen-o(
'@istem dois tipos de especificaes de argumentos. A especificao de argumentos ) usa
letras diferentes de %, ;, O, * e $.
A especificao de argumentos )) utiliHa as letras A, N, C e tambm ), J, K ate deH veHes.
O tipo de especificao do argumento esta determinado automaticamente pelas letras utiliHadas.
12&12&1 - #(peci.icao de argumen-o( 9
#ndereo NAmero da )ari*+el
A 0,
N 04
C 0.
& 0I
' 02
8 0-
X 0,,
) 05
J 0:
K 09
M 0,.
< 0,I
R 0,2
( 0,-
L 04+
# 04,
E 044
O 04.
6 045
7 04:
M 049
OS#")!45O% Os endereos %, ;, *, O, e $ no podem ser usados como argumento, os
endereos Gue no se usam podem ser omitidos, as variveis locais correspondentes a um endereo
omitido se configuram como nulas.
12&12&2 - Me(clagem da( e(peci.ica0e( de argumen-o( 9 e 99
#ndereo NAmero da
)ari*+el
A 0,
N 04
C 0.
), 05
J, 0:
K, 09
)4 0I
J4 02
K4 0-
). 0,+
J. 0,,
K. 0,4
)5 0,.
J5 0,5
K5 0,:
): 0,9
J: 0,I
K: 0,2
#ndereo NAmero da )ari*+el
)9 0,-
J9 04+
K9 04,
)I 044
JI 04.
KI 045
)2 04:
J2 049
K2 04I
)- 042
J- 04-
K- 0.+
),+ 0.,
J,+ 0.4
K,+ 0..
OS#")!45O% Os sub=ndices de ), J, K, para indicar a ordem da especificao de
argumentos no se registram no programa.
12&13 - <imi-a0e(
8ormato - Antes de GualGuer argumento deve-se especificar %9:
Mescla de especificaes de argumentos ) e ))
(e e@iste a mescla dos argumentos ) e )) tem prioridade o tipo especificado em ultimo lugar.
*=veis de cAamadas/
$ode-se programar desvios de cAamadas num m@imo de 5 n=veis. AGui no se incluem as
cAamadas de um subprograma >M-2?
12&14 - N7+ei( de +ari*+ei( locai(&
'@istem variveis locais desde o n=vel + ate o n=vel 5 para programao de desvio. O n=vel do
programa principal e o Hero.
Cada veH Gue uma macro e cAamada com %9: ou %99, o n=vel da varivel local aumenta em ,.
Os valores das variveis locais do n=vel anterior se armaHenam no C*C.
<uando um M-- e e@ecutado num programa de macro, o comando retorna para o programa
onde Aouve o desvio. *este momento, o n=vel da varivel local e decrementado em uma unidade. Os
valores das variveis locais armaHenadas ser restabelecido Guando a macro foi cAamada.
Programa
Principal Macro Macro Macro Macro
Nvel0 Nvel1 Nvel2 Nvel3 Nvel4
O0001 O0002 O0003 O0004 O0005
#1=l . . .
. G65 P2 A2 G65 P3 A3 G65 P4 A4 G65 P5
A5 .
. . . . .
. . . . .
. . . . .
M30 M99 M99 M99 M99
12&14&1 - )ari*+ei( locai(
N7+el > N7+el 1 N7+el 2 N7+el 3 N7+el 4
0, , 0, 4 0, . 0, 5 0, :
. . . . . . . . . .
. . . . . . . . . .
0.. . 0.. . 0.. . 0.. . 0.. .
12&14&2 - )ari*+ei( comun(
0,++ - , 0:++ - Eariveis Gue podem ser lidas e gravadas por macros em diferentes n=veis.
12&1/ - C8amada modal ?,66@
Ativa uma macro depois do deslocamento dos ei@os.
)sto continua ate Gue se programe a funo %9I para anular uma cAamada MO&A;.
Sin-a$e%
G66 P___ L____
Onde/
$ - nPmero do subprograma
; - nPmero de repeties
Argumentos dados transferidos a macro. '@emplo/ O+++,
.
%99 $-,+, A, N4 O-,+,
%+ %-+ 6+ 7+ %+, M-0, 8.++
6:+ 7:+ M-04
%9I M--
M.+
#$plica0e(%
Ap"s especificar %99, programe o endereo $ com o numero do programa Gue contem a
macro. <uando se dese!a o numero de repeties, o endereo ; pode conter um numero de , ate
----. Assim como usado na funo %9:, os dados so transferidos a um programa de macro atravs
de argumentos.
Cancelamento/ <uando se especifica um c"digo %9I ! no se e@cetua as cAamadas modais
nos blocos posteriores.
*=veis de cAamadas/ As cAamadas podem ser especificadas usando desvios ate 5 n=veis
incluindo as cAamadas modais.
*=veis de cAamadas modais/ $ode-se ativar uma cAamada modal dentro de outras
especificando outro c"digo %99.
;imitaes/ 'm um bloco %99 no se pode ativar macros. %99 deve ser especificado antes de
GualGuer argumento.
As variveis locais >argumentos? podem ser definidas unicamente em blocos %99.
12&16 - #$emplo( de programao%
Abai@o esto alguns e@emplos de aplicao da programao parametriHada.
#$emplo 1% $rograma parametriHado para e@ecutar uma fam=lia de peas, conforme o desenAo
abai@o/
O+++, >8AM);)A ,?
*,+ 0,19+ >COM$R)M'*LO ,?
*4+ 041,++ >COM$R)M'*LO LOLA; &A $'CA?
*.+ 0.1.+ >;AR%#RA ,?
*5+ 0519+ >;AR%#RA LOLA; &A $'CA
*:+ 0:1: >;AR%. &O CXA*8RO @ 5: %RA#(?
*9+ 0914: >RA)O ,?
*I+ 0I1I >RA)O 4?
*2+ 0214+ >RA)O .?
*-+ 0-14+ >&)AM'LRO &A 8'RRAM'*LA?
*,++ 0,+15++ >AEA*CO?
*,,+ 0,,1+ >M )*)C)A;?
*,4+ 0,41-4+ >M 8)*A; ?
*,.+ 0,.14 >$RO8#*&)&A&' &' CORL'?
*,5+ 0,51: >8O;%A $3 A$RO6)M. 'M 6 ' 7?
*,:+ 0,:1: >8O;%A $3 A$RO6)M. 'M M?
*,9+ 0-10-34 >CA;C#;O &O RA)O &A
8'RRAM.?
*,I+ 0,,10,,C0,: >CA;C#;O &O M )*)C)A;?
*,2+ 04+10,,-0,. >COOR&. $R)M')RA $A((A&A?
*,-+ %,I %4, %-+ %-5
*4++ %:. %+ M-,,+ X+
*4,+ L.
*44+ M9
*4.+ %:5 (.:++ M.
*45+ %+ 6-B0-C0,5D 7-B0-C0,5D M2
*4:+ %5. MB0,,D X. &.
*49+ %+ MB04+D
*4I+ %54 %, 6+ 7+ 8B0,+D
*42+ 6B0,D ,RB02D
*4-+ 6B04D 7B0.D
*.++ 7B05D ,CB0:D
*.,+ 6B09D
*.4+ %4 6+ 7B05-09D RB09D ,RB0ID
*..+ %, 7+
*.5+ %5+ 6-B0-C0,5D 7-B0-C0,5D
*.:+ 04+1B04+-0,.D
*.9+ )8 B 04+ %L 0,4 D %OLO49+
*.I+ %+ MB0,4D
*.2+ %OLO4I+
*.-+ %+ MB0,,D
*5++ %:. %+ M-,,+ X+ M:
*5,+ M.+
#$emplo 2% $rograma parametriHado para faHer um arco >c=rculo? de posicionamentos,
conforme o desenAo abai@o/
0,
04
0
.
0
5
0:@5:_
02
09
0I
O+++, >$RO%. $R)*C)$A;?
%,I %4, %-+ %-5
%:. %+ M-,,+ X+
L, >NROCA &2.: MM?
M9
%:5 (,:++ M.
%+ 6+ 7+ M2
%5. M,+ X, &,
%-- %2, M-,+ R4 8,9+ K+
%9: 62+ 7:+ R4+ A5: N5: X. $,+++
%2+
%:. %+ M-,,+ X+ M- M:
M.+
O,+++ >(#N$RO%. MACRO?
0.1,
*, 6B045CB0,2YCO(B0,DDD 7B04:CB0,2Y()*B0,DDD
0,10,C04
0.10.C,
)8 B0,, ;' 0.D %OLO,
M--
#$emplo 3% $rograma parametriHado para faHer uma elipse real de .9+_.
(inta@e/
G65 X___ Y___ R___ A___ B___ H___ P___
Onde/
6 e 7 - Coordenada do centro do c=rculo
R - Raio do c=rculo
A - Qngulo da primeira posio
N - &istRncia angular entre as posies
X - *Pmero total de posies
$ - *Pmero do subprograma macro
(inta@e/
G65 X___ Y___ I___ J___ A___ B___
Q__ R___ F___ P___
Onde/
6 e 7 - Coordenada do centro da elipse
) - Comprimento do ei@o longitudinal
J - Comprimento do ei@o transversal
A - Qngulo inicial
N - )ncremento angular >resoluo?
< - 8olga para apro@imao >em 67?
R - Raio da ferramenta
8 - Avano
$ - *Pmero do subprograma macro
O++,+ >$RO%. $R)*C)$A;?
*, %,I %4, %-+ %-5
*4 %:. %+ M-,,+ X+
*. L,2 >8R'(A &4+ MM?
*5 M9
*: %:5 (.:++ M.
*9 %+ 69+ 7+ M2
*I %5. M,+ X,2 &,2
*2 M-4
*- %9: 6+ 7+ )2+ J:+ A+ N, <:
R,+ 8:4+ $4+++
*,+ %:. %+ M-,,+ X+ M- M:
*,, M.+
O4+++ >(#N$RO%. MACRO?
*, 051B0534DC0,2
*4 0:1B0:34DC0,2
*. %++ 6BB05C0,IDYCO(B0,DD 7BB0:C0,IDY()*B0,DD
*5 OX);' B0, ;L .9+D &O,
*: %+, 6B05YCO(B0,DD 7B0:Y()*B0,DD 8B0-D
*9 0,10,C04
*I '*&,
*2 %+, 6B05YCO(B.9+DD 7B0:Y()*B.9+DD
*- %++ 6BB05C0,IDYCO(B0,DD 7BB0:C0,IDY()*B0,DD
*,+ M--
#$emplo 4% 'laborar um programa parametriHado para faHer um se@tavado inscrito num
determinado c=rculo/
O+++, >MACRO ('6LAEA&O?
%,I %4, %-+ %-5
%:. %+ M-,,+ X+
L,4
M9
%:5 (4I++ M.
0,1:+ >RA)O &O C)RC#;O?
041,+ >&)AM'LRO 8'RRAM'*LA?
0.1+ >A*%#;O )*)C)A;?
051. >8O;%A $3 A A$RO6)MACAO?
0:14++ >E';OC)&A&' &' AEA*UO?
091+ >CO*LA&OR &O *O. ;A&O(?
0410434 >CA;C#;O RA)O 8'RR3LA?
0,10,C04 >R'&'8)*. RA)O C)RC#;O?
0,+10. >&#$;)CA A EAR)AE'; R.?
0,,14++ >E';. &' AEA*UO?
%+ 6BB0,C05DYCO(B0.DD 7BB0,C05DY()*B0.DD
%5. M4 X,4
%, M-: 8,:+
*,4 %, 6B0,YCO(B0.DD 7B0,Y()*B0.DD 8B0,,D
0.10.C9+
09109C,
)8 B09 ;' 9D %OLO,4
%, 6BB0,C05DYCO(B0,+DD
7BB0,C05DY()*B0,+DD
%:. %+ M-,,+ X+
M.+
P"O<#M! /% 'laborar um programa parametriHado para e@ecutar arcos de +,++, a .9+
graus de abertura utiliHando a funo %+,.
O+++: >MACRO C)RC#;AR?
%,I %4, %-+ %-5
%:. %+ M-,,+ X+
L,
M9
%:5 (4:++ M.
0,1:+ >RA)O &O ARCO?
04+1,+ >&)AM'LRO 8'RRAM'*LA?
0.1+ >A*%#;O )*)C)A;3CORR'*L'?
051.9+ >A*%#;O 8)*A;?
0:1, >)*CR'M'*LO A*%#;AR?
09104+34 >&'8)*. RA)O 8'RRAM'*LA?
0I1. >8O;%A $3 A A$RO6)MACAO?
0,+14++ >E';OC)&A&' &' AEA*UO?
0,10,C09 >R'&'8)*. RA)O &O ARCO?
%+ 6BB0,C0IDYCO(B0.DD 7BB0,C0IDY()*B0.DD
%5. M4 X,
%+, M-: 84:+
*,, %, 6B0,YCO(B0.DD 7B0,Y()*B0.DD 8B0,+D
0.10.C0:
)8 B05 %L 0.D %OLO,,
%, 6B0,YCO(B05DD 7B0,Y()*B05DD
6BB0,C0IDYCO(B05DD 7BB0,C0IDY()*B05DD
%:. %+ M-,,+ X+
M.+
P"O<#M! 6% 'laborar um programa parametriHado para e@ecutar uma espiral de
arGuimedes tendo/
O++,+ >MACRO '($)RA;?
%,I %4, %-+ %-5
%:. %+ M-,,+ X+
L,4
M9
%:5 (44:+ M.
0,1,+ >RA)O )*)C)A;?
04+195 >RA)O 8)*A;?
Raio inicial/ ,+mm
Raio final/ 95mm
*.espirais/ :
$osio inicial/ + grau
0.1+ >A*%#;O )*)C)A;3CORR'*L'?
0I1: >*#M'RO &' '($)RA)(?
0510IY.9+ >A*%#;O 8)*A;?
0:1, >)*CR'M'*LO A*%#;AR?
021B04+-0,D305 >)*C3LO RA&)A; 6?
0-102Y0: >)*C3LO RA&. $3 )*C3LO A*%.?
0,+14++ >E';OC)&A&' &' AEA*UO?
%+ 6B0,YCO(B0.DD 7B0,Y()*B0.DD
%5. M4 X,4
%, M-: 84++
*5: %, 6B0,YCO(B0.DD 7B0,Y()*B0.DD 8B0,+D
0.10.C0:
0,10,C0-
)8 B05 %L 0.D %OLO5:
%, 6B04+YCO(B05DD 7B04+Y()*B05DD
%:. %+ M-,,+ X+
M.+
P"O<#M! 7% 'laborar um programa parametriHado para e@ecutar uma espiral de
arGuimedes con!ugado com uma descida em `Ma tendo/
O++,, >MACRO '($)RA; 4?
%,I %4, %-+ %-5
%:. %+ M-,,+ X+
L,
M9
%:5 (.:++ M.
0,1,+ >RA)O )*)C)A;?
04+195 >RA)O 8)*A;?
0.1+ >A*%#;O )*)C)A;?
0I1: >*#M'RO &' '($)RA)(?
0510IY.9+ >A*%#;O 8)*A;?
0:1, >)*CR'M'*LO A*%#;AR?
021B04+-0,D305 >)*C3LO RA&)A; 6?
0-102Y0: >)*C. RA&. $3 )*C. A*%.?
0,+14++ >E';OC. &' AEA*UO?
0,,1+ >A;L#RA M )*)C)A;?
0,414: >A;L#RA M 8)*A;?
0,.10,4-0,, >$RO8#*&)&A&'?
0,510,.305 >)*C3LO M?
0,:10,5Y0: >)*C. M $3 )*C. A*%.?
%+ 6B0,YCO(B0.DD 7B0,Y()*B0.DD
%5. M4 X,
%, MB0,,D 8B0,+D
*44 %, 6B0,YCO(B0.DD 7B0,Y()*B0.DD MB0,,D
0.10.C0:
0,10,C0-
0,,10,,-0,:
)8 B05 %L 0.D %OLO44
%, 6B04+YCO(B05DD 7B04+Y()*B05DD MB-0,4D
%:. %+ M-,,+ X+
M.+
P"O<#M! 8% 'laborar um programa parametriHado para e@ecutar uma calota Bmeia
esferaD utiliHando uma ferramenta ponta esfrica.
Raio inicial/ ,+mm
Raio final/ 95mm
*.espirais/ :
$osio inicial/ + graus
$os `Ma inicial/ +
$os `Ma final/ 4:
O,+++ >CA;OLA?
%,I %4, %-+ %-5
%:. %+ M-,,+ X+
L,
M9
%:5 (4+++ M.
0,1:+ >RA)O &A CA;OLA?
04+1,+ >&)AM'LRO 8'RRAM'*LA?
04+104+34 >&'8. RA)O 8'RR3LA?
0,10,C04+ >&'8. $'RC#R(O 8'RR3LA?
0.1+ >A*%#;O )*)C)A;?
051-+ >A*%#;O 8)*A;?
0:1, >)*CR'M'*LO A*%#;AR?
091+ >$O()UVO `Ma )*)C)A;?
0I1: >8O;%A $ARA $RO6)MACAO?
0,+14++ >E';OC)&A&' &' AEA*UO?
%+ 6BB0,C0IDYCO(B0.DD 7+
MB04+C4D
%+, MB09D 8B0,+D
*,4.5 %, 6B0,YCO(B0.DD 7+ MB0,Y()*B0.DD
%4 6B0,YCO(B0.DD 7+ )B-0,YCO(B0.DD J+
0.10.C0:
)8 B05 %L 0.D %OLO,4.5
%:. %+ M-,,+ X+
M.+

Você também pode gostar