Prévia do material em texto
R73224 1 APRESENTAÇÃO Máquina a Comando Numérico é aquela que possui um equipamento eletro-eletrônico aqui tratado como comando o qual possibilita à mesma a execução de uma sequência automática de atividades. O comando MACH 9, é constituído basicamente por: - Painel frontal: é o componente através do qual o operador interage com a máquina. Contém um tubo de raios catódicos de 9 polegadas, um teclado alfa-numérico e controles de operação da máquina. - Controle: é o principal componente operacional do sistema. Contém um módulo CPU que processa as informações e dirige os movimentos dos eixos, e um módulo CRT que controla o painel frontal e monitora a máquina. - Interface: é o circuito que interliga o Controle com a máquina-ferramenta. A sequência de atividades a ser executada deverá ser devidamente planejada de acordo com o processo de fabricação da peça que será usinada, sendo transmitida ao Comando através do Programa. Dessa forma, um Programa de Comando Numérico é simplesmente uma sequência de informações escritas em uma linguagem própria. O Comando MACH 9, devido ao nível de seus componentes aliado a um poderoso “software” possue recursos que permitem uma programação mais rápida e simples tanto para as operações elementares como para as de maior complexidade. Este manual contém as características elementares de codificação, estruturação e técnica de programação da Linguagem do Comando Numérico MACH 9. Juntamente com o “Manual de Programação Avançada”, forma um guia completo de treinamento e consulta relativos à mesma. acompanha também uma apostila de “Exemplos de Programação” que traz exemplos completos abrangendo todas as funções preparatórias (funções G), os quais permitem um contato direto com as técnicas usuais de programação. R732242 CAPÍTULO 1 - INTRODUÇÃO A PROGRAMAÇÃO 1.0 - DESCRIÇÃO DO CAPÍTULO Neste capítulo é apresentado uma descrição geral da linguagem de programação usada pelo comando, bem como são fornecidas a estrutura e as características da mesma. 1.1 - BLOCO DE DADOS A construção básica de um programa é o bloco de dados que é constituido de: - CARACTERES - Um caracter é um número, uma letra ou um símbolo que significa alguma coisa para o comando. Por exemplo: G, X, /, # são caracteres significativos. - ENDEREÇOS - Um endereço é uma letra que define a instrução para o controle. Exemplos de endereços são: G, X, Z, F. - PALAVRAS - Uma palavra consiste de um endereço seguido por um valor numérico. Exemplos de palavras são: G01, X25, F100. Cada palavra requer um formato específico para sua parte numérica. Estes formatos são apresentados mais adiante, neste capítulo. - UM BLOCO DE DADOS - É constituido de uma série de palavras. A palavra identifica as operações que o controle deve executar. Um programa é constituido de uma série de blocos. Por exemplo: G90 # Define coordenada absoluta. G1 X54. Y30. F120 # Move os eixos até a posição determinada (X54. Y30) com 120mm/min de Va. A este tipo de movimento de interpolação (G1). G Z O M02 Move o eixo Z até coordenada 0 em avanço rápido (G00) cancelando o corretor (O0) e finalizando o programa com M02. O exemplo acima é uma série de 3 blocos válidos. As palavras no bloco de dados tem significado específico para o controle. Dizendo ao controle as palavras corretas na ordem correta teremos uma execução perfeita. R73224 3 1.1.1.SISTEMA DE COORDENADAS O percurso da ferramenta dentro do campo de trabalho da máquina que gerará a geometria e dimensões desejadas da peça, será transmitido ao controle com base no sistema de coordenadas. EIXOS: O sistema de coordenadas utilizado pelo Mach 5 MP assume a existência de três eixos cartesianos : X, Y e Z cada um em uma das direções de movimentos possíveis da máquina. Normalmente o eixo Z é paralelo a linha de centro do eixo árvore e tem seu sentido positivo " entrando " na ferramenta. Caso a máquina possua mais do que três possibilidades de movimento existem os eixos secundários : U - linear na direção de X ou rotacional em torno de X V - linear na direção de Y ou rotacional em torno de Y W - linear na direção de Z ou rotacional em torno de Z Zero: A localização da origem do sistema de coordenadas a ser utilizado pode ser definida de diferentes maneiras . Chamamos de Zero programa ao ponto pertencente ao campo de trabalho da máquina no qual o controle assumirá a posição dessa origem . Através da página " REFERENCIA " o operador define na posição atual dos eixos, o chamado Zero programa, que é um ponto do campo de trabalho que o controle tomará como referência inicial para definição das coordenadas . O zero programa permanece fixo na posição definida mesmo que a máquina seja desligada, podendo ser alterado somente por outra operação de referência. A determinacâo das coordenadas dos pontos a serem programados poderá ser feita de duas maneiras : Sistema de coordenadas Absolutas: As coordenadas de cada ponto a ser atingido pela ferramenta sâo dadas tomando-se como referência sempre o zero programa . O sinal da coordenada depende do lado do eixo " positivo ou negativo" em que se encontra o ponto com relação a origem . R732244 Sistema de coordenadas Incrementais: As coordenadas de cada ponto a ser atingido pela ferramenta são dadas tomando-se como referência o ponto anterior de localização da mesma. Esse ponto passa a ser uma origem instantânea com os eixos conservando a mesma direção. supõe-se que a ferramenta esteja inicialmente no ponto a meta coord. absolutas coord. incrementais de para X Y X Y A B 10 30 -10 20 B C -20 0 -30 -30 C D -20 -20 0 -20 D A 20 10 40 30 1.1.2 - VALORES NUMÉRICOS Esta seção descreve considerações importantes para a programação dos valores numéricos que fazem parte das funções. Ponto Decimal (Formato) Neste manual, representa-se o formato das funções fornecendo o número de dígitos permitidos à esquerda do ponto decimal, o ponto, e o número de dígitos permitidos à direita do ponto. Por exemplo, o formato da função X sendo X3.4. R73224 5 Significa que a função X permite 3 dígitos à esquerda do ponto decimal e 4 dígitos à direita. Importante: O formato das funções variam de controle para controle. O instalador do seu sistema define valores no PAM (Parâmetros Ajustáveis da Máquina) que afetam o formato das funções, a resolução da programação e a resolução do posicionamento para certas palavras. informe-se com o instalador sobre o formato das funções do seu controle. Métrico/Polegada (Formato) O controle pode operar tanto em unidades do sistema inglês quanto do sistema métrico. Porém, o formato de algumas funções pode mudar quando o sistema de unidade é trocado. Polegada Métrico X125.0148 (pol) X3175.376 (mm) 3.4 4.3 7 digítos numéricos para ambas as unidades. FORMATO: O formato de algumas funções pode alterar-se quando programado juntamente com funções específicas. Por exemplo, considerando a função I: em interpolação circular (G02) Função: I513.901mm Formato I3.4 Em programação de conjunto de furos (G25) Função: I134 pontos Formato I3 Importante: O controle permite a entrada de qualquer número de dígitos para todas as funções, porém, exibirá mensagem de erro para algumas e para outras, terá uma interpretação específica e executará de acordo. Mas, para evitar erros durante a execução do programa, não se deve usar mais do que o número de dígitos diferentes de zero permitidos pelo formato. Exemplo considerando sistema métrico e formato G2, X3.3 Ex.: X121.0548 O controle exibirá mensagem de erro. X COD. FORA DE FAIXA G0001 O controle interpretará como G01 pois dispensa zeros à esquerda. R732246 Programação sem ponto decimal As funções cujo formato possui o ponto decimal podem ser programadas sem o mesmo, cabendo ao Controle a interpretação do seu valor. O controle determina a posição automática do ponto decimal de acordo com as regras a seguir: . Omite zero à esquerda. Os zeros à esquerda não são necessários para nenhum valor numérico. O controle considera G01 e G1 como o mesmo valor. Da mesmadefinir um movimento polar linear, ela informa o comprimento do movimento a partir do zero programa passando pela posição atual da ferramenta até a posição final desejada. R - pode ser absoluto, neste caso ele informa a distância do zero programa até a posição final desejada. R - pode ser incremental, neste caso ele informa a distância da posição atual até a posição final desejada. POSICIONAMENTO POLAR LINEAR SOMENTE COM R N0010 G99 # N0020 G90 # " " N0110 G00 X34.641 Y20. N0120 G01 R70 ou G01 r30 R73224 49 3.3.5- POSICIONAMENTO POLAR SOMENTE COM C Quando somente C for usado para definir movimentos num bloco de interpolação linear polar, haverá deslocamento da posição atual dos eixos até o ponto final do ângulo C partindo do zero programa. A distância entre o ponto final e o zero programa é a mesma entre o ponto atual da ferramenta e o zero programa. O ângulo C tem seu vértice no último centro polar definido. Se não for definido o vértice estará no zero programa. O ângulo C pode ser absoluto ou incremental. Quando o ângulo C for absoluto, é medido a partir da linha positiva do eixo X que passa pelo Zero Programa. Quando o ângulo C for incremental ele é medido a partir de uma linha imaginária unindo o Zero Programa a posição atual da ferramenta. N0010 G99 N0020 G90 " " N0080 G00 X32.766 Y-22.943 N0090 G1 C70. ou G1 c105. R7322450 3.3.6- POSICIONAMENTO POLAR COM “R/A” Quando R e A forem usados para definir movimentos num bloco de interpolação linear polar, eles provocam um deslocamento da posição atual da ferramenta até o ponto final desejado (definido pela distância R e ângulo A). R deve ser somente incremental nesta combinação. Um movimento deve preceder o bloco contendo R/A. O ângulo A tem seu vértice na posição atual da ferramenta. Ele pode ser absoluto como incremental. Quando A for absoluto, ele é medido da linha positiva do eixo X passando pela posição atual da ferramenta. Quando A for incremental, ele é medido a partir de uma linha imaginária que se prolonga do movimento anterior. N0010 G99 N0020 G90 " " N0090 G0 X0 Y0 N0100 G01 X24. Y21.5 N0110 G01 r33. A85 ou G01 r33. a43.145 R73224 51 3.3.7- POSICIONAMENTO POLAR COM RC Quando R e C forem usados para definir movimentos num bloco de interpolação polar linear, eles provocam um deslocamento da posição atual da ferramenta para o ponto final que está posicionado na linha do ângulo C. R pode ser absoluto ou incremental. Quando R for absoluto o comprimento da linha do ângulo C é o comprimento de R. Quando R for incremental o comprimento da linha do ângulo C é: r + X2 + Y2 Onde X e Y são coordenadas da posição atual da ferramenta medido do centro polar. O ângulo C pode ser absoluto ou incremental. Quando C for absoluto ele é medido a partir da linha positiva de X que passa pelo centro polar até o ponto final. Quando C for incremental ele é medido de uma linha que une o centro de posicionamento polar e a posição atual da ferramenta. N0010 G90 N0020 G99 " " N0080 G00 X27.189 Y-12.678 N0090 G01 R60.C40 ou N0090 G01 R60. c65 (increm.) ou N0090 G01 r30. C40. Centro polar coincide c/ zero programa Posição Atual da ferramenta Ponto final desejado R7322452 3.3.8- POSICIONAMENTO POLAR “COM R I J” Quando R, I e J forem usados para definir movimentos num bloco de interpolação polar linear, eles provocam um movimento da posição atual dos eixos para o ponto final da linha. Esta linha sai do centro polar que é definido por I J e passa pela posição atual dos eixos. I e J podem ser absoluto ou incremental. Quando eles são absoluto definem coordenadas X e Y do centro polar medido a partir do zero programa. Quando I e J for incremental definem a distância e direção nos eixos X Y da posição atual da ferramenta para o centro polar . R pode ser absoluto ou incremental. Quando R for absoluto, ele indica o comprimento do centro polar até o ponto final. Quando R for incremental, indica o comprimento entre a posição atual da ferramenta e o ponto final. N0010 G90 N0020 G99 “ “ N0070 G00 X42.658 Y39.434 N0080 G01 I20 J50 R50 ou N0080 G01 I20 J50 r25 ou N0080 G01 i-22.658 j10.566 R50. ou N0080 G01 i-22.658 j10.566 r25. Zero programa Centro polar Posição atual da ferramenta Ponto final R73224 53 3.3.9- POSICIONAMENTO POLAR C I J Quando C, I e J forem usados para definir movimentos num bloco de interpolação polar linear, eles provocam um movimento da posição atual dos eixos para o ponto final na linha do ângulo C. A distância entre o ponto final e o centro definido por I e J é a mesma entre a posição atual da ferramenta e o centro polar. I e J pode ser absoluto ou incremental quando for absoluto definem coordenadas X e Y do centro polar a partir do zero programa. Quando for incremental, definem a distância e a direção nos eixos X e Y da atual posição da ferramenta para o centro polar. O ângulo C pode ser absoluto ou incremental. Quando C for absoluto ele é medido da linha positiva de X que passa pelo centro polar. Quando C for incremental ele é medido a partir de uma linha que une o centro polar a atual posição dos eixos. N0010 G99 N0020 G90 " " N0070 G00 X50.981 Y15 N0080 G01 C40.I25.J30. ou N0080 G01 I25.J30.c70. ou N0080 G01 C40.i-25.981 j15. ou N0080 G01 c70.i-25.981 j15. Zero programa Centro polar Posição atual da ferramenta R7322454 3.3.10- INTERPOLAÇÃO LINEAR POLAR COM R C I J Quando R, C, I e J forem usados para definir movimentos num bloco de interpolação linear polar, eles provocam um movimento da posição atual dos eixos para o ponto final. Este ponto final é conhecido em função do centro polar definido por I e J, do ângulo C e distância R. I e J podem ser absoluto ou incremental. Quando for absoluto definem coordenadas X e Y do centro polar a partir do Zero Programa. Quando I e J forem incremental definem a distância e direção nos eixos X Y da posição atual da ferramenta para o centro polar. R pode ser absoluto ou incremental. Quando R for absoluto, o comprimento da linha do ângulo C é o valor de R. Quando R for incremental (r), o comprimento da linha do ângulo C será r mais a distância do centro polar até a posição atual dos eixos. r + X2 + Y2 Onde X e Y são coordenadas da posição atual da ferramenta medido a partir do centro polar. O ângulo C pode ser absoluto ou incremental. Quando C for absoluto ele é medido a partir da linha positiva de X que passa pelo centro polar. Quando C for incremental ele é medido a partir de uma linha que une o centro polar até a posição atual dos eixos. N0010 G99 N0020 G90 " " N0080 G00 X56.252 Y13095 N0090 G01 I20.J30 R60 C25. ou N0090 G01 i-36.252 j16.904 R60.C25. ou N0090 G01 I20 J30 r20. C25. N0090 G01 I20 J30 r20. c50. ou " " Posição final Zero programa Posição atual R73224 55 3.4 - INTERPOLAÇÃO CIRCULAR G02 E G03 Um bloco G02 gera um arco circular no sentido horário. Um bloco G03 produz um arco no sentido anti-horário. O arco é executado através de movimentos simultâneos dos 2 eixos do plano de trabalho. O movimento é considerado horário ou anti-horário olhando na direção positiva para a negativa do eixo que não faz parte do plano onde está sendo gerado o arco (regra da mão direita). Um bloco G02 ou G03 pode definir um arco de qualquer comprimento. O arco pode cruzar a fronteira dos quadrantes contínuamente. Antes da execução de um bloco contendo uma interpolação circular, o controle automaticamente checa as coordenadas do ponto final e do centro do arco. Se foi programado um arco de geometria impossível, o controle suspende a execução e exibe a mensagem “CHECAR BLOCO G02/G03”. Convém lembrar que um programa pode ser checado rapidamente, para verificar esse tipo de erro, usando [CHECA RÁPIDO] ou através de “EDIÇÃO DE PROGRAMA”, G02 e G03 não são modais. Entretanto, elas cancelam o modo G00 e habilitam o modo G01 para os blocos subsequentes. 3.4.1 - TELA PARA ENTRADA DE DADOS A tabela a seguir descreve os “prompts”que o Controle fornece para uma interpolação circular horária (G02) e anti-horária (G03). A tabela refere-se ao G02 porém para G03 é identica. PROMPT DESCRIÇÃO ARCO H G2 X PTO FINAL X “X” corresponde à coordenada X do ponto final do arco. Ela é usada apenas para arcos nos planos XY (G17) e XZ (G18). X pode ser especificada em coordenada absoluta ou incremental. Como absoluta, X corresponde à coordenada X do ponto final do arco em relação ao zero programa. Como incremental, X corresponde à coordenada X do ponto final em relação ao ponto inicial do arco. Y PTO FINAL Y “Y” corresponde à coordenada Y do ponto final do arco. Ela é usada apenas para arcos nos planos XY (G17) e YZ (G19). Y pode ser especificada como coordenada absoluta ou incremental. Como absoluta, Y corresponde à coordenada Y do ponto final em relação ao zero programa. Como incremental, Y corresponde à coordenada Y do ponto final em relação ao ponto inicial do arco. R7322456 Z PTO FINAL Z “Z” corresponde à coordenada Z do ponto final do arco. Ela é usada apenas para arcos nos planos XZ (G18) e YZ (G19). Z pode ser especificada em coordenada absoluta ou incremental. Como absoluta, Z corresponde à coordenada Z do ponto final em relação ao zero programa. Como incremental, Z corresponde à coordenada Z do ponto final em relação ao ponto inicial do arco. X CENTRO ARCO I “I” corresponde à coordenada X do centro do arco. Ela é usada para arcos nos planos XZ (G18) e XY (G17) e pode ser absoluta ou incremental. Como absoluta, especifica a coordenada X do centro do arco em relação ao zero programa. Como incremental, especifica a distância do ponto de inicio do arco até o centro medido ao longo do eixo X. Y CENTRO ARCO J “J” corresponde à coordenada Y do centro do arco. Ela é usada para arcos nos planos XY (G17) e YZ (G19) e pode ser absoluta ou incremental. Como absoluta, especifica a coordenada Y do centro do arco em relação ao zero programa. Como incremental, especifica a distância do ponto de início do arco até o centro medido ao longo do eixo Y. Z CENTRO ARCO K “K” corresponde à coordenada Z do centro do arco. Ela é usada para arcos nos planos Z (G18) e YZ (G19) e pode ser absoluta ou incremental. Como absoluta, especifica a coordenada Z do centro do arco em relação ao zero programa. Como incremental, especifica a distância do ponto de inicio do arco até o centro medido ao longo do eixo Z. ANG. POLAR (C) Ângulo cujo vértice está num ponto de centro em posicionamento polar (somente plano XY), medido da direção positiva de “X” até a linha compreendida entre o ponto final e o vértice (ponto de centro com posição diferente do “XY” atual. COMPR. POLAR (R) Raio do arco polar (somente plano XY). Um movimento deve preceder o bloco contendo o arco polar “R” é medido do ponto final desse movimento. ÂNGULO INICIAL (A) Ângulo de uma linha imaginária que um arco polar está tangente (somente plano XY) um movimento deve preceder o bloco do arco polar no qual “A” está contido. “A” tem seu vértice no ponto final desse movimento. “A” é medido da direção positiva de “X” ao movimento prévio. R73224 57 3.4.2 - SELEÇÃO DO PLANO Antes de programar o bloco que executará o arco deve-se programar um bloco especificando o plano no qual estão contidos os 2 eixos nos quais será desenvolvido o arco. Use: . G17 Para arco no plano XY. Esse plano é selecionado pelo Controle ao ser ligado. . G18 Para arco no plano XZ. . G19 Para arco no plano YZ. 3.4.3 - PROGRAMAÇÃO DO ARCO Para produzir um arco, o controle precisa conhecer ou estar em condições de calcular: . O centro do arco. . O ponto final do arco. O ponto de início do arco é sempre a posição atual dos eixos. Existem várias maneiras para se programar um bloco de dados que produza um arco. Ilustraremos essas maneiras nas seções seguintes. 3.4.4 - INTERPOLAÇÃO CIRCULAR PADRÃO Como já vimos podemos programar um bloco de dados para produzir um arco em qualquer um dos planos de trabalho. Existem duas maneiras de se programar uma interpolação circular padrão: . Programando o centro e, o ponto final do arco. Neste caso será produzido um arco cujo comprimento depende do ponto final programado. Através do ponto final programado, o controle sabe a posição do fim do arco. Para programar um círculo completo, o ponto de início do arco (posição atual dos eixos) e o ponto final do arco devem ser o mesmo. . Programando apenas o centro do arco. Neste caso sempre será produzido um círculo completo. Como não é programado o ponto final do arco, o controle assume que ele coincide com o ponto de início, resultando num círculo completo. R7322458 PONTO FINAL E CENTRO DO ARCO Em coordenadas absolutas, os posicionamentos são especificados com referência ao zero programa. Assim, pode-se programar o centro e o ponto final do arco diretamente com o valor de suas coordenadas. Em coordenadas incrementais, os posicionamentos são especificados com referência à posição atual dos eixos. Assim, as coordenadas do centro do arco correspondem à distância até o ponto de início do arco medidas sobre o correspondente eixo. O ponto final também terá coordenadas que correspondem à distância deste até o ponto de início, medidas sobre o eixo correspondente. O programador pode optar entre o sistema de coordenadas absoluto e o sistema de coordenadas incremental, usando G90 e G91 apropriadamente. Lembre-se, o ponto de início de um arco é sempre a posição atual dos eixos. A tabela abaixo mostra as funções usadas para programar arcos em cada um dos planos. Formato do bloco para arcos padrões para todos os planos: Se o plano é Programe Por exemplo o ponto final com o centro com XY (G17) X e Y I e J G02 XYIJ # XZ (G18) X e Z I e K G02 XYIK # YZ (G19) Y e Z J e K G02 YZJK # Fig. 3.8 A figura 3.8 mostra arcos gerados pela programação do centro e do ponto final, em coordenadas absolutas e incrementais. A figura refere-se ao plano XY, mas a concepção para outros planos é a mesma. Figura 3.8 - Centro e Ponto Final do Arco Letras maiúsculas = modo absoluto Letras minúsculas = modo incremental = Zero programa = Centro do arco = Posição atual = Ponto final R73224 59 Exemplo: G99 - cancela função G92 G90 - coordenadas absolutas G71 - programação em mm G17 - seleção do plano XY G0 X56.699 Y50 T01 M06 - posicionam p/ início do arco e troca de ferramenta 001 S650 M03 - corretor 01 - rotação liga eixo Z5. - posiciona rápido G1 Z-3. F200. - aproxima para dentro da peça G02 X135.355 Y110.355 I100 J75 - interpolação GZ0 M05 - afastamento M02 - fim de programa Na figur 3.9 temos exemplos para programar o centro e o ponto final de um arco. Figura 3.9 - Exemplos de Centro e Ponto Final de um Arco. ABSOLUTO (G90) R7322460 INCREMENTAL (G91) Se o plano é Programe o centro com Por exemplo XY (G17) I e J G02 IJ XZ (G18) I e K G02 IK YZ (G19) J e K G02 JK Exemplo G99 G90 G71 G17 G00 X56.699 Y50 T01 M06 O01 S650 M03 Z5. G91 G1 Z-8 F200 G2 X78.656 Y60.355 I43.301 J25. GZO M05 M02 Quando é programado somente o centro de um arco, o controle gera um círculo completo. O controle assume que o ponto final é o mesmo que o ponto de início. A tabela a seguir mostra as funções que devem ser usadas para programar o centro do arco em cada um dos três planos. Funções para Centro dos Círculos somente para os três planos. R73224 61 A figura 3.10 mostra o conceito visto de programar o centro do círculo somente. Esta vista é para o plano XY somente, mas o conceito aplica-se aos outros planos também. INCREMENTAL G99 G90 G71 G17 G00 X56.699 Y50. T01 M06 O01 S550 M08 M03 Z5. G91 G1 Z-8. F200 G2 I43.301 J25. (ARCO COMPLETO) GZO M05 M2 ABSOLUTO G99 G90 G71 G17 G00 X56.699 Y50. T01 M06 O01 S550 M08 M03 Z5. G1 Z-3. F200 G2 I100. J75. (ARCO COMPLETO) GZO M05 M02 R7322462 3.4.5 - ARCOS POLAR Você pode programar arcos usando posicionamento polar, porém, somente no plano XY (G17). Se você tentar executar um arco polar em outro plano, o comando interromperá a execução e exibiráa mensagem “CHECAR EIXOS E PLANO”. Arcos polares podem usar as palavras - R, A ou C em várias combinações. R - Informa o Raio partindo de um ponto que é tangente ao final do movimento executado previamente. R deve ser programado como um valor absoluto. A - Informa um ângulo que se origina na posição atual dos eixos. Quando A for absoluto é medido a partir da linha positiva de X. Quando for incremental ele é medido a partir de um prolongamento da linha do movimento prévio. C - Informa um ângulo que se origina no centro polar. Quando C for absoluto ele é medido a partir da linha positiva de X. Quando C for incremental ele é medido a partir de uma linha imaginária que une o centro do raio a posição atual da ferramenta. Há 6 combinações possíveis para interpolação circular polar a saber. . R . RA . RAC . RC . C . CIJ 3.4.6- INTERPOLAÇÃO CIRCULAR POLAR SOMENTE COM R Quando somente a palavra R é usada para definir um movimento circular polar, ela define um círculo completo. O círculo tem um valor do Raio igual a R e inicia-se no ponto que é tangente ao fim do último movimento. R deve ser absoluto. Se for programado incremental terá o mesmo efeito do absoluto. R73224 63 Um movimento prévio deve ser feito antes do bloco contendo a interpolação circular polar. Caso o movimento anterior seja de valor = 0 o comando exibirá a mensagem “COMPRIMENTO REFERÊNCIA = 0” Ponto de tangência e posição atual da ferramenta Zero programa Exemplo: N0010 G99 N0020 G90 “ “ N0060 G00 X40 Y10 N0070 G01 X85. Y25. N0080 G02 R20. ou N0090 G03 R20. R7322464 3.4.7- INTERPOLAÇÃO CIRCULAR POLAR R/A Quando somente R e A forem usados num bloco de interpolação polar o resultado será um círculo completo. O círculo terá o raio no valor de R e o seu início será no ponto final do último movimento programado. O círculo será tangente ao ângulo especificado por A. R deve ser absoluto. Se R for programado no sistema incremental o efeito será o mesmo do sistema absoluto. Um movimento diferente de zero deverá preceder o bloco que contenha o arco polar. A palavra A pode ser absoluto ou incremental. Quando A for absoluto, o ângulo do qual o círculo será tangente é medido da linha positiva de X. Quando A for incremental ele será medido a partir de um prolongamento do movimento anterior. N0010 G99 N0020 G90 “ “ N0080 G00 X20. Y15. N0090 G01 X85. Y55. F800. N0100 G03 R20. A60 Zero programa Posição atual R73224 65 3.4.8- INTERPOLAÇÃO CIRCULAR POLAR USANDO R A C Estas palavras R, A e C são usados num bloco para definir um movimento circular polar. O arco tem raio R e seu início é no ponto final do último movimento programado. O arco é tangente ao ângulo especificado por A. O final do arco é especificado por C. R deve ser absoluto. E um movimento diferente de zero deve preceder o bloco que contenha as informações do arco. O ângulo do qual o arco será tangente será definido por A. O vértice deste ângulo será no ponto final do movimento que precede o bloco do arco. O ângulo A pode ser absoluto ou incremental. Quando A for absoluto ele é medido de uma linha positiva do eixo X. Quando A for incremental ele é medido a partir de um prolongamento da linha do movimento prévio. O comprimento do arco, ângulo C, tem seu vértice no centro do arco. O ângulo C pode ser absoluto ou incremental. Quando C for absoluto ele é medido a partir de uma linha positiva de X até o final do arco em relação ao centro do próprio arco. Quando C for incremental ele é medido a partir de uma linha que une o ponto inicial do arco ao ponto de centro do arco. N0010 G99 N0020 G90 " " N0080 G00 X10. Y20. N0090 G01 X60. Y40. N0100 G02 R15. A50. C-15. ou N0100 G02 R15. A50. c-155. ou N0100 G02 R15. a28.198 C-15. a 28.198o X 10. Y 20. A 50o C-15. c-155. X 71.490 Y 30.358 (Pto. Centro do raio) X 85.979 Y 26.476 X 60. Y 40. R 15. R7322466 3.4.9- POSICIONAMENTO POLAR USANDO R C As palavras R e C podem ser usadas para executar uma interpolação circular polar. O arco tem o raio definido por R e o comprimento do arco é definido pela palavra C. R deve ser absoluto e um movimento diferente de zero deve preceder o bloco que contenha interpolação. O arco será tangente ao último ponto programado. O comprimento do arco, ângulo C, têm seu vértice no centro do raio. O ângulo C pode ser absoluto ou incremental. Quando C for absoluto ele é medido de uma linha positiva de X que se extende do centro do arco. Quando C for incremental é medido a partir da linha que une o centro do raio e o ponto inicial do arco. N0010 G99 N0020 G90 " " N0080 G00 X10. Y10. N0090 G01 X40. Y30. N0100 G03 R20. C30. ou N0100 G03 R20 c86.309 R73224 67 3.4.10- INTERPOLAÇÃO CIRCULAR POLAR USANDO C Quando somente a palavra C for usada para definir um movimento circular polar, ela produz um arco que tem o comprimento determinado pela palavra C. O centro do arco é sempre o último centro polar definido. Se não for definido, o vértice será no zero programa. Consequentemente o raio do arco é o comprimento da atual posição da ferramenta até o zero programa. O ângulo C pode ser absoluto ou incremental. Quando C for absoluto, ele é medido a partir da linha positiva de X que está passando no zero programa. Quando C for incremental ele é medido a partir da linha que une o zero programa até a posição atual da ferramenta. N0010 G99 N0020 G90 “ “ N0100 G01 X40. Y-16. N0110 G03 C30. ou N0120 G03 c51.801 Z e r o programa Posição atual da f e r r a m e n t a R7322468 3.4.11- INTERPOLAÇÃO CIRCULAR POLAR USANDO C I J Quando C, I e J forem usados para definir um movimento circular polar, produzem um arco que tem o comprimento determinado por C. O raio do arco é a distância da posição atual dos eixos até o centro do raio definido por I e J. I e J determina o centro do arco. Eles podem ser absoluto ou incremental. Quando absoluto o centro é medido a partir do zero programa. Quando I e J for incremental, eles indicam a distância e direção do ponto de início do arco para o centro do arco. O comprimento do arco, ângulo C, tem seu vértice no centro do arco ele também pode ser absoluto ou incremental. Quando C for absoluto, ele é medido a partir de uma linha positiva de X que passa pelo centro do arco. Quando C for incremental, ele é medido a partir de uma linha que une o ponto de início do arco até o centro. N0010 G99 N0020 G90 " " N0080 G00 X42. Y7 N0090 G03 I20 J20. C55. ou N0090 G03 i-22. j13. c85.579 ou N0090 G03 i20. j20. c85.579 Zero programa Posição atual da ferramenta R73224 69 3.5 - TEMPO DE PERMANÊNCIA (“DWELL”) - G04 Um bloco G04 programa um tempo de permanência. O tempo da permanência, em segundos, é definido pela função F (formato 3.2) que aparece no bloco G04. Este tempo de permanência é modal. Ele é usado por algum bloco G04 subsequente no programa desde que não haja outra função F programada com algum valor diferente para F. Caso se queira mudar o tempo de permanência, pode-se especificar uma nova função F com outro valor num outro bloco G04. Por exemplo: BLOCO DE DADOS COMENTÁRIO . . G4 F10.# Executa uma permanência de 10 segundos . . . . . G4# Executa uma permanência de 10 segundos . . . G4 F5.# Executa uma permanência de 5 segundos . . . . . G4# Executa uma permanência de 5 segundos . . Enquanto o bloco G04 está sendo executado, o tempo de permanência fica em contagem regressiva do seu valor inicial até zero. Pode-se acompanhar esta contagem regressiva na página STATUS do Controle. A permanência pode ser necessária em algumas operações ou pode ser usada para dar ao operador tempo para ler um comentário no programa da peça na página [STATUS]. Neste caso o bloco do comentário deve vir imediatamente após o bloco G04. A função G04 não troca o status ou a função do Controle servindo apenas para inserir uma pausa por um tempo determinado. Depois que o tempo de permanência foi completado, o Controle continua a execução com o próximo bloco. R73224703.5.1 - A tabela abaixo explica os comandos (“prompts”) que o Controle fornece para G04. Tabela 15.D PROMPT PERMANÊNCIA PERMANÊNCIA G04 SEGUNDOS (F) A função F especifica a quantia de tempo de permanência em segundos. O formato para F é 3.2. Esta quantia permanece ativa para blocos G04 que venham a seguir, a menos que uma nova permanência seja programada. 3.6 ARCO TANGENTE A função G05 permite programar 2 retas que são tangentes a um arco cujo raio e coordenadas de centro são conhecidos. Os pontos de tangência são automaticamente determinados pelo comando, aliviando a necessidade do programador calcular estes pontos. G05 é modal e permanece em efeito até que seja programado uma função G00, G01, G02, G03 ou G73. G05 executa interpolação circular previamente definido pelos planos G17, G18 ou G19. Este capítulo será descrito para o plano XY (G17), porém, as mesmas informações são aplicadas para outros planos. Se a ferramenta estiver em um ponto qualquer e for ativado um bloco contendo G05 e informações do centro do arco e o raio, o comando posicionará a ferramenta em avanço de trabalho, para o ponto de tangência do arco. A escolha entre os 2 pontos de tangência possíveis é determinado pelo sinal do raio especificado por Q. As coordenadas do primeiro ponto de tangência podem ser armazenados pelo comando para facilitar o término do percurso. Neste mesmo ponto se o programador desejar. Se uma função G05 está ativa e programa-se um G05 ou um G01 instruirá ao comando para continuar ao longo do arco até atingir um ponto de tangência do qual ele possa continuar num percurso linear para a nova meta. R73224 71 Se o comando ativo é um G05 a meta pode ser um outro ponto tangente de um novo arco especificado com G05. Uma função G05 sem dados, informa ao comando para terminar o percurso no primeiro ponto tangente previamente armazenado. As funções usadas no G05 consiste primeiramente nas coordenadas do centro do arco (X,Y,Z) e a função Q especifica o raio do arco. se a função Q não for definida, ou se Q for igual a zero determinará um ponto (canto vivo). Se o valor de Q for positivo o arco será executado no sentido anti-horário. Se o valor de Q for negativo o arco será executado no sentido horário. O centro do arco pode ser determinado usando coordenadas cartesianas ou coordenadas polares seguindo os mesmos conceitos para movimentos polares. Lembrando que, programação polar somente é possível no plano XY. A função G05 admite as seguintes funções: A, B, C, I, J, R, X, Y (K e Z para outros planos). Q - Especifica o raio do arco. “+” para anti-horário; “-” para horário. N - Número do bloco (opcional). H,E,P - Admite sub-rotina ou sub-programa. F - Admite um avanço. M,S,T,O - Admite funções miscelâneas, velocidade do eixo, número da ferramenta, número do corretor. L - Admite repetição de blocos. D - Não especifica divisão de segmento quando usado juntamente com a função G05. A função D, neste caso, informa ao comando para armazenar a coordenada do ponto de tangência para ser usada no término do percurso. R7322472 Uma função G05 em que não é especificado as coordenadas de centro do arco é um comando especial que é utilizado para fechar o percurso. O comando reverte o movimento P/ G01. Se um parâmetro D estava especificado em um bloco contendo G05 previamente determinado e você programa um bloco somente com G05 haverá um movimento para o ponto de tangência daquele primeiro arco, que foi memorizado pelo comando através da função D. Veja exemplo abaixo: X0 Y81.88 G05 X35.56 Y62.23 Q-7.62 D X29.21 Y30.48 Q 5.08 X63.5 Y57.15 Q-10.16 G01 X100.33 Y57.15 Q 7.112 X86.36 Y16.848 Q 5.588 G02 I95.25 J0 X114.3 Y0 Q 4.064 G01 X57.15 G05 X5.08 Y41.91 Q-7.62 G05 G00 X0 Y81.28 81 .28 57 .15 62 .23 41 .91 30 .48 16.848 7 . 6 2 7 . 6 2 10 .16 7.112 5.588 4.064 114.3 100.33 86.36 6 3 .5 57.15 35.56 29.21 5 .0 8 R73224 73 3.6.1 - FUNÇÃO Q : CHANFRO OU ARREDONDAMENTO Esta funçÃo quando programada juntamente com as funções G1,G2 e G3 provocará a inserção de um chanfro ou raio,entre o movimento gerado pelo bloco que contém a função Q e o bloco seguinte. Se o valor de Q for positivo especificará o raio do arco a ser inserido entre os dois movimentos,e se o valor de Q for negativo especificará a dimensão do chanfro a ser inserido entre os dois movimentos. EXEMPLO: . . . G1 XY X60. Q10. Y60. Q-5. X Q15. Y . . . . . . N60 GXY N70 G1 X70.Q10. N80 X30.Y50. N90 X N100 Y . . . . . . N50 GXY N60 G1 Y30. N70 X10. N80 X20.Y20. N90 G2 X40.Y0 120.J0Q5. N100 G1X. . . . R7322474 CAPÍTULO 4 - MODO DOS EIXOS 4.0 -DESCRIÇÃO DO CAPÍTULO Este capítulo descreve como funciona um bloco de dados que contém uma função G do grupo que define o modo dos eixos. Após a leitura deste capítulo, o usuário saberá como: . Selecionar o plano no qual se deseja realizar uma interpolação circular e/ou compensação de ferramentas. . Programar compensação do raio da ferramenta. . Selecionar um corretor de posicionamento. 4.1 - SELEÇÃO DE PLANO - G17, G18 E G19 As funções G17, G18 e G19 permitem selecionar o plano no qual se pretende executar interpolação circular (incluindo um arco de interpolação helicoidal e/ou uma compensação de diâmetro da ferramenta. . G17 - Seleciona o plano XY . G18 - Seleciona o plano XZ . G19 - Seleciona o plano YZ O controle assume G17 (por default) assim que for ligado e no final do programa (após um M02 ou M30, no programa principal). Essas funções são modais. Uma vez selecionada ela permanece ativa até que o Controle execute outra função desse grupo ou execute M02 ou M30 no programa principal. No bloco em que for programada uma dessas funções não deve ser programada nenhuma outra função, com exceção da função N. Se isto não acontecer, quando da execução, o Controle produzirá a mensagem de erro - “COD NÃO CONHECIDO” - e a execução será interrompida. Se antes de um bloco que especifica uma interpolação circular não houver um bloco especificando o plano no qual se dará a operação, o Controle interromperá a execução e exibirá a mensagem “CHECAR EIXO E PLANO”. Isto somente não acontecerá se a interpolação for no plano XY (G17), já que o Controle assume essa função “por default”. Com relação a compensação de raio da ferramenta, ao ativar essa função, através dos códigos G41 ou G42, simultaneamente o movimento de interpolação linear compensado fica limitado ao plano selecionado. Por exemplo, se a função G17 está ativa e se for programado algum movimento em XZ ou YZ, o Controle, quando da execução interromperá a mesma e exibirá uma mensagem de erro. R73224 75 4.2 - COMPENSAÇÃO DE RAIO DA FERRAMENTA G41, G42, G40 A compensação de raio da ferramenta permite corrigir dimensões da peça através de valores do raio da ferramenta. O valor do raio da ferramenta a ser compensado é obtido através do diâmetro da ferramenta, programando-se as dimensões da peça e deixando que o Controle compense automaticamente o valor do raio da ferramenta. O valor do raio pode ser incrementado para mais ou para menos especificando um diâmetro maior ou menor. O usuário introduz os valores de diâmetro e comprimento da ferramenta num endereço (existe 1 grupo de 96 disponíveis) da página [CORREÇÃO FER]. Para chamar a compensação no programa, usa-se a função O e um valor numérico que corresponde ao endereço alocado na página [CORREÇÃO FER]. Quando a compensação é chamada durante a execução do programa, o Controle acessa o valor do diâmetro e o divide por dois para obter o valor compensado. Se o valor do diâmetro inserido na página [CORREÇÃO FER] for negativo (-), o Controle compensará “para dentro” da trajetória programada para a ferramenta. Se for positivo, o controle compensará “para fora” da trajetória programada. Assim, ao se programar uma determinada trajetória esta pode ser ajustada prá mais (através de uma entrada positiva) ou prá menos (através de uma entrada negativa). A compensação será ativada somente em movimentos especificados pelas funções G01, G02, G03 e G73.A compensação é automaticamente cancelada em movimentos rápidos (G00), desde que as próximas informações de movimento não sejam movimentos de trabalho (G01, G02, G03, G73). A compensação será automaticamente restabelecida quando um G01, G02, G03, G73 for programado depois do mov. rápido. Exemplo: Corretor D.5. G99 G90 G17 G71 GX10.Y20 T01 M06 O01 S600 M03 Z-5 F800 G41 G01 X15.Y15 X50. G00 X55.5 G1 X76 G40 X80 Y20 GZ0 M05 M02 R7322476 4.2.1 - CANCELAMENTO DA COMPENSAÇÃO DE RAIO - G40 A função G40 cancela as funções G41 e G42 (compensação de raio da ferramenta à esquerda e à direita respectivamente). G40 é modal e assumido pelo Controle, quando este é ligado e no fim de um programa. Um bloco G40 cancela a compensação, entretanto ela somente será removida no próximo movimento dos eixos (ou num movimento simulado) programado depois do bloco G40. Esse movimento (que remove a compensação) deve ocorrer antes de qualquer bloco de dado que contenha uma função G que não especifica uma movimentação nos eixos, ou antes de um bloco de dados com a função O. 4.2.2 - FERRAMENTA À ESQUERDA - G41 A função G41 seleciona compensação de raio quando a ferramenta se posicionar à esquerda da peça usinada tendo como referência a direção do percurso. Figura 4.1 - G41 - Ferramenta à esquerda Programando um bloco somente com G41, a compensação somente será interpolada no próximo movimento programado para os eixos. G41 é modal e cancela G40. R73224 77 4.2.3 - FERRAMENTA À DIREITA - G42 A função G42 seleciona compensação de raio quando a ferramenta se posicionar à direita da peça usinada, tendo como referência a direção do percurso. Figura 4.2 - G42 - Ferramenta à direita Programando um bloco somente com G41, a compensação somente será interpolada no próximo movimento programado dos eixos. G42 é modal e cancela G40. 4.2.4 - SELEÇÃO DO PLANO PARA COMPENSAÇÃO O controle permite a programação da compensação do raio da ferramenta para movimento em qualquer um dos três planos de trabalho. Para isso basta programar o plano no qual a compensação ocorrerá (usando G17, G18 ou G19), antes de a compensação ser ativada. . G17 - compensação no plano XY O controle assume esta função assim que é ligado, portanto, só necessita ser programada se estiver ativo um outro plano. G17 cancela G18 e G19. . G18 - compensação no plano XZ . G19 - compensação no plano YZ R7322478 Quando G41 ou G42 está ativo, pode-se programar movimento em todos os eixos, entretanto os movimentos serão compensados somente nos eixos do plano selecionado. Assim, não é possível programar movimentos combinados de eixos que não pertençam ao mesmo plano selecionado. Por exemplo: Se G17 (plano XY) está ativo e for programado um bloco tal como: G01 X1. Z1. # Não será possível a sua execução enquanto a compensação da ferramenta estiver ativa. O controle, assim que ler este bloco, gerará a mensagem “EIXO/PLANO CRF ILEGAL”. 4.2.5 - RESTRIÇÕES NA COMPENSAÇÃO Uma vez que estejam ativas as funções G41 ou G42, certas funções G não são permitidas. . G17, G18 ou G19 - seleção de plano . G22 ou G23 - interpolação helicoidal (ver manual avançado) . G30 ou G31 - imagem espelho (ver manual avançado) . G92 - define zero programa . G99 - cancela G92 Se o Controle encontrar alguma dessas funções G a execução será interrompida e a mensagem de erro “...EM COMPENS RAIO” será exibida. Deve-se programar G40 para cancelar a compensação, antes de programar essas funções. Deve-se também programar G40 (cancelando a compensação) antes de passar de G41 para G42 (ou vice-versa) ou antes de chamar uma nova compensação (através da função O). Portanto se você precisar programar alguma das funções acima, primeiro cancele a compensação com G40, então restabeleça a compensação de ferramenta desejada com G41 ou G42. Uma consideração final sobre compensação de raio da ferramenta é o “Look Ahead” requerido pelo Controle. Através dele, o Controle examina o próximo bloco de dados a ser executado e checa se a ferramenta tangenciará a trajetória programada, levando em conta o diâmetro da ferramenta e as coordenadas programadas. O controle não compensará um movimento “externo” menor que o raio da ferramenta se o movimento seguinte for um movimento “interno” maior que o raio da ferramenta. (Será exibida a mensagem - “DIÂM FERR EXCESSIVO” - , após o movimento “externo” ter sido executado). R73224 79 Figura 4.3 ; Diâm. Ferr. 5 nome G99 cancela G92 G90 Coorden. absolutas G17 plano XY G71 prog. em mm G00 X30. Y20. T01 M06 posição -1 p/ troca de ferramenta 001 S600 M03 Corretor 001, rpm liga eixo horário Z-5. posicionar em Z G41 ativa corretor G01 X35. Y15. movimento 2 X70. movimento 3 Y12.5 (igual ao raio da ferram.) movimento 4 X100. movimento 5 G40 cancela X105. Y18. movimento 6 GZ0 M05 afasta em z e cancela corretor M02 fim de programa Importante: Um movimento “interno” é aquele no qual a ferramenta ao mudar a direção de sua trajetória gira em torno de seu centro instantâneo de rotação (CI), o qual nesse caso está sobre o próprio eixo de rotação da ferramenta, sem alterar sua posição em relação à peça. Por exemplo, se a ferramenta esta se deslocando à esquerda da peça (G41) e “vira” para esquerda, ela executa um movimento “interno”. Figura 4.4. - movimento “interno” MOVIMENTO “INTERNO” OBSERVE QUE COMO O C.I. ESTÁ SOBRE O EIXO DE ROTAÇÃO DA FERRAMENTA, O RAIO DE GIRO É NULO. R7322480 Um movimento “externo” é aquele no qual a ferramenta ao mudar a direção de sua trajetória gira em torno de seu centro instantâneo de rotação (CI), o qual nesse caso esta sobre o ponto de interseção das duas trajetórias, mudando sua posição relativa se posicionando para iniciar o movimento na outra direção. Por exemplo, se a ferramenta está se deslocando à esquerda da peça (G41) e “vira” para direita, ela faz um movimento “externo”. Figura 4.5 - movimento externo MOVIMENTO “EXTERNO” OBSERVE QUE COMO O C.I. NÃO ESTÁ SOBRE O EIXO DE ROTAÇÃO DA FERRAMENTA O RAIO DE GIRO NÃO É NULO, É IGUAL AO RAIO DA FERRAMENTA. O controle compensará um movimento “interno” que é seguido por um movimento “externo”. Figura 4.6. - Restrições ao “Look Ahead” MOVIMENTO EXTERNO MOVIMENTO INTERNO MOVIMENTO EXTERNO MOVIMENTO INTERNO ERRADO CORRETO R73224 81 4.2.6.- EXEMPLOS DE COMPENSAÇÃO Para inserir ou remover uma compensação de ferramentas pode-se fazer uso de 2 técnicas: . Através de um movimento de entrada - programando-se um movimento de um ou ambos os eixos do plano de trabalho que seja igual ou maior que o raio da ferramenta (metade do valor do diâmetro introduzido na página “CORREÇÃO FER”) e que posicione a ferramenta no ponto desejado. . Através de um movimento simulado - programando-se um posicionamento de um ou ambos os eixos do plano de trabalho, com o objetivo apenas de acionar a compensação. O movimento simulado somente produz movimento porque ele aciona ou remove compensação. Quando a compensação é acionada o movimento simulado instrui o Controle onde a ferramenta está descompensada. Pela capacidade que o Controle tem de ler o próximo movimento, ele calcula como aplicar a compensação corretamente. Quando a compensação é removida, o movimento simulado fornece ao Controle um movimento “Look Ahead” (para evitar que haja choque com a peça). Os exemplos seguintes ilustram como usar cada uma dessas técnicas. O exemplo que se segue ilustra como usar um movimento de entrada para chamar a compensação. Figura 4.7 - Exemplo de compensação com movimento de entrada. R7322482 BLOCO DE DADOS COMENTÁRIOS ; MOV ENTRADA Nome do programa. G99 Cancela G92. G90 Sistema coordenadas absolutas. G71 Programa em mm. G17 Seleciona-se plano XY. G00 X50. Y50. T01 M06 Posiciona e troca de ferramenta. O01 S500 M08 Corretor O01 - rpm 500 liga refrigerante. M03 Liga eixo sentido horário. X5. Y5. Posição entrada. Z5. Aproxim. rápida. G01 Z-10 F100 Entrada na profundidade Z-10 avanço 100 mm/min. G41 Estabelece que a compensação se dará com a ferramenta se posicionando à esquerdada trajetória a percorrer. X0 Y0 F200 Através deste movimento de entrada que é maior que o raio da ferramenta a compensação é ativada com avanço de 200mm/min. X-40. Movimento 1. Y15. Movimento 2. G02 X-25.Y30.I-25.J15. Movimento 3. X0 Movimento 4. Y0 Movimento 5. G40 Cancela compensação com o valor sendo removido no próximo movimento em XY. X5. Y-5. Retorno da ferramenta até o ponto de partida com a remoção da compensação. G0 Z0 O0 Movimento rápido para posição. M02 Inicial cancela corretor. R73224 83 MOVIMENTO SIMULADO Nota: Uma situação especial existe para movimentos rápidos dentro da compensação. A posição da ferramenta no fim do posicionamento rápido é a posição programada descompensada a menos que o próximo movimento seja um avanço de trabalho. Se o próximo movimento é um avanço de trabalho, a ferramenta vai em rápido, para a posição compensada para início do movimento em avanço de trabalho BLOCO DE DADOS COMENTÁRIOS ; MOV. SIMULADO Nome do programa. G99 Cancela G92. G90 Sistema coordenadas absolutas. G71 Programa em mm. G17 Seleciona-se plano XY. G00 X50. Y50. T01 M06 Posiciona e troca de ferramenta. O01 S500 M08 Chama a compensação que está no endereço 1 da página correção ferramenta (5mm dia) rpm 500 - liga refrigerante de corte. M03 Liga eixo árvore sentido horário R7322484 X5. Y5. Posição entrada Z5. Aproxim. rápida G01 Z-10 F100 Entrada na profundidade Z-10 avanço 100 mm/min. G41 Estabelece que a compensação se dará com a ferramenta se posicionando à esquerda da trajetória. Y0 Através deste movimento simulado a compensação é ativada com a ferram. se posicionando no lado de fora do contorno da peça na coordenada Y-2.5 e em condições de executar o próximo movimento em X. X-40 Movimento 1 Y15 Movimento 2 G02 X-25.Y30.I-25.J15. Movimento 3 X0 Movimento 4 Y0 Movimento 5 G00 Z10. Afastamento rápido Z10. G40 Cancela compensação com o valor sendo removido no próximo movimento em XY. X-7.5 Y-7.5 Movimento em rápido até o ponto de partida do contorno interno (já com 2,5 do corretor). G42 Estabelece que a compensação se dará com a ferramenta se posicionando à direita da trajetória programada. G1 Z-1 F200 Desce a ferramenta com avanço de 200 mm/min. Y5. Movimento simulado Y5 não há movimento. X-15. Movimento 6 R73224 85 Y10. Movimento 7 X-35. Movimento 8 Y15. Movimento 9 G02 X-25.Y25.I.25 J15. Movimento 10 X-5. Movimento 11 Y5. Movimento 12 X-7.5 Movimento simulado que impede que a ferramenta chanfre a peça o movimento de valor igual ao raio da ferramenta, é um “Look Ahead”, ou seja, impede que a ferramenta execute toda trajetória do movimento 12. G00 Z10. Afastamento da ferramenta até o nível 10m. G40 Cancela a compensação que será removida com o próximo movimento em X ou Y. X0 Y0 Movimento em rápido até o ponto de partida. GZ0 Movimento rápido para posição inicial cancela corretor. M02 Fim de programa R7322486 4.3 - CORRETOR DE FIXAÇÃO G45 A função G45 permite selecionar um corretor de fixação que se encontra na página [CORRETORES FIX] do Controle. Corretores de fixação são compensações do Zero Máquina ao Zero Programa ou do Zero Programa até uma nova posição desejada, nos eixos X, Y, Z ou W. Portanto eles podem ser usados para alterar o Zero Programa por uma quantia pré-determinada. Existem até 96 corretores de fixação que podem ser usados (numerados de 1 a 12 em cada página [CORRETORES FIX]. O programa pode especificar um número para o corretor, ou pode sequenciá-los através de uma seleção de corretores, colocados em sequência, permitindo ao operador determinar quantos corretores de fixação serão usados. Com uma programação conveniente, é fácil colocar todos os corretores em sequência, para que sejam executados pela máquina com uma determinada ferramenta, antes de prosseguir para a próxima ferramenta. Isso elimina a realização das trocas de ferramenta a cada correção de fixação. Um programa escrito dessa maneira pode além disso, ser executado com nenhuma, uma, ou várias correções de fixação sem modificação no programa. Para invocar explicitamente um corretor de fixação, programa-se a função G45 seguida pela função O e o número do endereço do corretor na página [CORRETORES FIX]. Por exemplo, se for programado: G45 001# Será selecionado o corretor de posição que está no endereço 1 da página [CORRETORES FIX]. Após terem sido invocadas, as correções de fixação são interpoladas durante o próximo movimento programado dos eixos. Elas estarão completamente ativadas quando todos os eixos especificados pelo corretor de fixação tiverem sido movidos. Se o campo último O , da página [CORRETORES FIX], é zerado pelo operador, os corretores de fixação ficam desabilitados e o comando G45 é ignorado pelo Controle. Para cancelar correções de posição, programa-se: G45 O00# As correções serão removidas durante o próximo movimento programado dos eixos afetados pelas correções de fixação. G45# incrementa para o próximo número de corretor. Se o número de corretor estava igual ou maior que o campo último O (fixado pelo operador), o número de corretor voltará para o número 1. Se o número de corretor era zero, ele permanecerá zero. Um comando G45 junto com uma chamada de subrotina especificada por H, E, e/ou P, exceto E sozinho, (E sozinho não é uma chamada de subrotina) fará com que seja executado primeiro a subrotina. Então será executado o comando G45# (incrementando o número do corretor se ele não for zero) . Se o Controle incrementou fazendo o número do corretor igual a 1 ou se o número do corretor é 0, ele processará o próximo bloco, caso contrário, a subrotina é chamada novamente e a sequência se repete. R73224 87 A programação de um bloco de dados com a função G45 e a função E, sem a função H ou P, é um comando sem validade para o Controle. Se a função O é incluída num bloco G45 com chamada de subrotina, ela especificará o primeiro número de corretor. Isso não tem efeito se o campo PROX.FIXAÇÃO está zerado. Um comando com G45 e H, sem E ou P, fará com que seja executado primeiro a correção de fixação e a seguir o desvio especificado por H, a não ser que o Controle tenha incrementado o número do corretor de volta para 1 ou o número do corretor está zerado, neste caso o desvio não ocorre, sendo executado o próximo bloco. Neste formato não é permitido usar a função O. Por exemplo: G99 G90 G17 G71 GX50. Y-50. T01 M6 O01 S500 M08 M03 G45 O01 N100 GXY Z5. G1 Z-5. F200 X30. Y20. X0 Y0 GZ5. G45 H100 G45 O0 X50. Y150 GZO M05 M02 O01 X100. O02 X150. O03. X200. O04. X250. R7322488 Se o operador deseja rodar o programa sem nenhuma correção de fixação, basta selecionar último O igual a 0 na página [CORRETORES FIX]. Se ele deseja rodar o programa apenas uma vez usando o corretor número um, basta selecionar último O igual a 1 na página [CORRETORES FIX]. Para rodar o programa cinco vezes usando os corretores de 1 a 5, basta selecionar último O igual a 5. Nesse caso será executado o “loop” do G45 ao N100 até terem sido feitas todas as cinco correções e então será ignorado o desvio, indo para o próximo bloco G45 O 0. No exemplo acima, o programa não requer troca de ferramentas. Isso possibilita minimizar a troca de ferramentas no caso de peças que requerem vários corretores de fixação. G99 G90 G17 G71 G0 X50. Y-50 T01 M06; PRIMEIRA FERRAM. O01 S600 M08 M03 G45 O01 N100 GXY Z5. G1 Z-5. F600 X30. Y20. X0. Y0 G Z5. G45 H100. G45 O0 GZO M05 G X50. Y50. T02 M06; 2a. FERRAM. O2 S600. M8 M3 G45 O01 N200 GX15. Y10. GZ5. G1 Z-1. F600. G1 X30. G2 I15. J10. G1 X15. GZ5. G45. H200. G45 O0. GZO MO5 X50. Y150 M02 R73224 89 P6 ; PROGRAMA PRINCIPAL G99 G90 G17 G71 GX50. Y-50. G45 O01 P8 H80 E100 G45 O01 P8 H150 E350 G45 O0 GZO M05 M02 P8 ; SUB PROGRAMA N80 T01 M06 N90 O1 S500 M08 M03 GXY Z5. G1 Z-5. F800. X30. Y20. X0. Y0. GZ5. G45 H-90. G45 O0 GZO N100 M05 N150 GX50. Y50. T02 S600 M03 G45 O01 N300 GX15. Y10 O2 G Z-5 G1 Z-1 F800. G1. X30 G2 I15. J10. G1 X15. GZ5. G45. H300 G45 O0 GZO M05 X50. Y150. N350. M02 Nos dois exemplos acima o Controleselecionará o ferramental 1, executará a parte do programa que se refere à ferramenta 1 com todas as correções até o último O selecionada pelo operador, então ocorrerá a troca pela ferramenta 2 e executará a parte do programa que se refere à ferramenta 2 com todas as correções, etc. Note que também o programa não requer troca de ferramenta para que o operador rode o programa sem nenhuma, com uma, ou várias correções. R7322490 CAPÍTULO 5 - CICLOS FIXOS 5.0 -Descrição do Capítulo Este capítulo abrange as funções G do grupo de ciclos fixos, as quais estabelecem operações de usinagem repetitivas. Acrescentam-se informações numéricas e parâmetros para especificar a ação do ciclo. O controle é provido dos seguintes ciclos fixos e da função de cancelamento: . G80 - Cancelamento de ciclo fixo. Remove o último ciclo fixo definido do estado ativo. . G81 - Ciclo fixo de furação. Define operações de furação simples, com tempo de permanência opcional no fundo do furo. . G82 - Ciclo fixo de furação com permanência. Define uma operação de furação com um tempo de permanência opcional no fundo do furo. . G83 - Ciclo fixo de furação com descarga. Define no ciclo de furação a profundidade do furo na qual ocorrerá a descarga do cavaco através de uma permanência ou da retração da ferramenta. . G84 - Ciclo fixo de roscar. Define um ciclo de rosca direita. Neste ciclo deve-se utilizar um passador de macho flutuante. . G85 - Ciclo fixo de mandrilamento. Define um ciclo de furação com retração da ferramenta na velocidade de avanço especificada. . G86 - Ciclo fixo de mandrilamento com retração do eixo parado. Define um ciclo de furação com retração da ferramenta com eixo parado, isto é, sem girar. 5.1 - INTRODUÇÃO Os ciclos fixos da série G81 a G86 definem movimentos específicos para o eixo Z, segundo programação que satisfaça as exigências e opções desta série. Uma vez definido um ciclo fixo num programa, este atuará automaticamente após um movimento em rápido (G00) no plano XY. Os ciclos fixos são modais e permanecem ativos até que sejam cancelados com um G80. Se for programado um novo ciclo fixo sem cancelar o anterior, o comando sempre assume a execução do último ciclo programado, até que haja o cancelamento. R73224 91 5.2 - CANCELAMENTO DE CICLO FIXO G80 Um bloco G80 cancela um ciclo fixo ativo. Programa-se esta função quando não mais deseja-se que um ciclo fixo atue no final de um movimento rápido. 5.3 - CICLO FIXO DE FURAÇÃO - G81 Esta função pode ser usada para operações simples de furação o ciclo será executado tantas vezes quanto movimentos em rápido no plano XY houverem até o seu cancelamento. Estando a ferramenta na posição “Z” inicial e feito o posicionamento em rápido nos eixos X e Y, a ferramenta movimenta-se em rápido até o plano R, fura em velocidade de avanço até a profundidade final, executando um tempo de permanência opcional, e retorna em rápido ou em avanço de retração até o plano-R ou a posição “Z” inicial da ferramenta. G81 e G82 possuem as mesmas funções disponíveis para programação de seus blocos. Estes são providos como códigos separados a fim de obedecer mais reservadamente às especificações da EIA RS-274, mas sua ações específicas podem ser idênticas. Como todo ciclo fixo, G81 é modal. Ele permanece em efeito até ser cancelado pela função. 5.3.1 - TELA PARA ENTRADA DE DADOS A tabela a sequir descreve as funções que o Controle possui (os “prompts”) para a função G81, indicadas no mesmo bloco de informações. PROMPT DESCRIÇÃO FURAR G81 PROFUND. Z “Z” é obrigatório para o ciclo fixo G81. Ele programa a coordenada Z de máxima profundidade (movimento negativo de Z), quando Z é absoluto (G90). Ele programa a distância abaixo do plano-R quando Z é incremental (G91). O movimento é executado com avanço F programado. PERM-SEGUNDOS D “D” é opcional. Ele especifica o tempo de permanência em segundos (0,01 a 99,99) no fundo do furo. R7322492 PLANO RAPIDO R “R” é opcional. Ele especifica a posição Z do Plano-R. R é sempre uma posição absoluta do eixo Z. A operação de usinagem em avanço de trabalho do ciclo fixo ocorre da posição do plano-R para a profundidade especificada em Z. Todos ciclos fixos movimentam-se em rápido, para baixo, da posição “Z” inicial da ferramenta até a posição do plano-R, quando o ciclo fixo é atuado. Se não for especificado R no ciclo fixo, o Controle assumirá a posição atual de Z para iniciar movimento com avanço de trabalho. AV. TRABALHO F “F” programa a velocidade de avanço para usinagem desde o plano-R até a profundidade Z. Se F não for programado, o comando executará um valor “default” (geralmente 2500 mm/min), conforme página Controle de parâmetros. AVANÇO SAIDA V “V” programa o avanço usado para retrair da profundidade total. Se V não for programado, o Controle assumirá que a retração deva ocorrer em avanço rápido. COD RETRAÇAO P “P” programa a posição de retração da ferramenta entre as execuções dos ciclos fixos. Se P não for programado, ou é programado como zero, a ferramenta retrairá até o plano-R durante o movimento em XY que aciona o ciclo. Se P é programado com um valor diferente de zero (1 a 250), a ferramenta retrairá a posição que se encontrava antes do ciclo fixo ser definido. X PRE MOV X “X” programa o movimento em X que será executado antes da execução do ciclo fixo. Este movimento pode ser absoluto/ incremental ou rápido/velocidade de avanço. Se o modo é rápido o ciclo fixo atuará imediatamente após o movimento, caso contrário o ciclo não atuará. Y PRE MOV Y “Y” programa o movimento em Y que será executado antes da execução do ciclo fixo. Este movimento pode ser absoluto/ incremental ou rápido/velocidade de avanço. Se o modo é rápido o ciclo fixo atuará imediatamente após o movimento, caso contrário o ciclo não atuará. R73224 93 Exemplo de G81 . . . GZ30. # G81 R2.Z-25.F150 # X20.Y30. # X50.Y15. # G80 # . . . Avanço de Trabalho Avanço Rápido R7322494 5.4 - CICLO FIXO DE FURAÇÃO COM PERMANÊNCIA - G82 O ciclo fixo G82 é indicado para alargamento ou operações de furação onde a peça necessita de uma permanência. Sua operação e programação são idênticas a do ciclo fixo G81 descrito anteriormente a ferramenta move-se em rápido até o plano-R, fura em velocidade de avanço até a profundidade final, fornecendo um tempo de permanência opcional, e retorna ao plano-R ou à posição inicial da ferramenta em rápido ou em avanço de retração. G82 e G81 possuem as mesmas funções disponíveis para programação de seus blocos. Estes são providos como códigos separados a fim de obedecer mais reservadamente as especificações do EIA RS-274, mas suas ações específicas podem ser idênticas. Como todo ciclo fixo, G82 é modal. Ele permanece em efeito até ser cancelado como um bloco de dados G80, ou sobreposto por outro ciclo fixo, que atuará automaticamente após um subsequente movimento rápido (G00). 5.4.1 - TELA PARA ENTRADA DE DADOS Os mesmos “prompts” descritos para G81 se aplicam com as mesmas considerações para G82. Exemplo de G82 . . . GZ30. # G82 R2.Z-25.D5.F150 # X20.Y30. # X50. # G80 # . . Avanço de Trabalho Avanço Rápido R73224 95 . 5.5 - CICLO FIXO DE FURAÇÃO COM DESCARGA - G83 Um bloco G83 executa uma operação que inclui um movimento de retração ou uma permanência para a quebra ou remoção do cavaco. Pode-se especificar uma permanência e/ou um movimento incremental positivo de Z como ação de quebra cavaco depois de cada incremento. Quando a retração total é programada para quebra do cavaco, a ferramenta retrairá dependendo da programação: . após cada incremento de profundidade . para sucessivas profundidades programadas . ou apenas ao final do ciclo Quando uma permanência é programada para quebra do cavaco, o ciclo fixo pode ser programado para efetuar uma retração opcional até o plano-R após cada permanência. O movimento em rápido, do ciclo fixo, para o plano-R ocorre após cada incremento ou após cada ação de quebra cavaco, até que a profundidade total seja atingida. A ferramenta tambémretrairá em rápido ao plano-R ou à posição inicial da ferramenta após a execução completa do ciclo. Como todo ciclo fixo, G83 é modal. Ele permanece em efeito até ser cancelado pela função G80, ou sobreposto por outro ciclo fixo, que atuará automaticamente após um subsequente movimento rápido (G00). 5.5.1 - TELA PARA ENTRADA DE DADOS A tabela a seguir descreve as funções que o Controle possui (os “prompts”) para a função G83. PROMPT DESCRIÇÃO FURAR/DESC. G83 PROFUND. Z Idem a G81 PLANO RAPIDO R Idem a G81 AV. TRABALHO F Idem a G81 R7322496 INCR. INICIAL I “I” é obrigatório no ciclo fixo G83. Ele programa a magnitude do primeiro incremento de profundidade que ocorre abaixo do plano R. Este valor é sempre tratado como um movimento incremental negativo de Z indiferente do modo (G90 ou G91) em efeito ou do sinal de entrada. Se J e K não são programados, I é o valor do incremento constante usado no ciclo. DELTA INCR Z J “J” especifica a distância incremental a subtrair-se do último incremento de profundidade para se obter o próximo incremento de profundidade. Por exemplo, começando-se com o valor inicial I do incremento de profundidade, os incrementos seguintes serão: I - J = 2o. incremento de profundidade 2o. incremento - J = 3o. incremento de profundidade e assim por diante até que o valor mínimo de incremento K seja obtido. Se J e K não forem programados, o incremento de profundidade terá um valor constante igual a I. MIN INCR Z K “K” especifica o mínimo incremento de profundidade. O valor de K é usado quando: último incremento - J# Y20. # G80 # . . . Avanço de Trabalho F Avanço Rápido Avanço de retorno V 5.8 - CICLO FIXO DE MANDRILAMENTO COM SAÍDA DE EIXO PARADO - G86 O ciclo fixo G86 possibilita a execução da operação de mandrilamento com a saída do eixo parado. Move-se em rápido ao plano-R, em velocidade de avanço até a profundidade especificada, atua um tempo de permanência opcional, o eixo pára de girar e então retorna a ferramenta ao plano R ou ao “Z” inicial em avanço de retração ou rápido. Como todo ciclo fixo, G86 é modal. Ele permanece em efeito até ser cancelado pela função G80, ou sobreposto por outro ciclo fixo, que atuará automaticamente após um subsequente movimento rápido (G00). 5.8.1 - TELA PARA ENTRADA DE DADOS A tabela a seguir descreve as funções que o controle possui “Prompts” para a função G86. PROMPT DESCRIÇÃO MAND PRD EIXO G86 PROFUND. Z Idem a G81. PERM-SEGUNDOS D Idem a G81. R73224 103 PLANO RAPIDO R Idem a G81. AV. TRABALHO F Idem a G81. AVANÇO SAIDA V “V” programa o avanço usado para retrair da profundidade total. Se V não for programado, o Controle assumirá que a retração deva ocorrer em movimento rápido COD RETRAÇAO P Idem a G81. X PRE MOV X Idem a G81. Y PRE MOV Y Idem a G81. Exemplo de G86. . . . GZ25. # G86 R2.Z-20.F40 V150 # X30.Y15. # Y35. # G80 # . . . Avanço de Trabalho F Avanço Rápido Avanço de retorno V com eixo parado parada do eixo árvore R73224104 CAPÍTULO 6 - AUTO ROTINAS 6.0 -DESCRIÇÃO DO CAPÍTULO Este capítulo cobre o grupo de funções denominadas auto-rotinas. Auto rotinas são funções G que programam movimentos complexos da máquina através de um único bloco. Depois de ler este capítulo, o usuário saberá como programar: . G22 e G23 - Movimentos helicoidais nos sentidos horário e anti-horário, em planos selecionáveis. 6.1 - INTERPOLAÇÃO HELICOIDAL G22 E G23 Para formar uma hélice, o Controle movimenta dois eixos em um arco, e o terceiro eixo em linha reta. Pode-se programar um movimento helicoidal com: . G22Para um movimento helicoidal no sentido horário. . G23Para um movimento helicoidal no sentido anti-horário. Compensação de raio não é permitida durante um movimento helicoidal. O programador deverá se certificar que a compensação de raio foi cancelada com G40 antes de executar as funções G22 e G23. Dessa forma, as posições programadas deverão se referir ao centro da ferramenta. 6.1.1 - TELA PARA ENTRADA DE DADOS A tabela a seguir mostra as funções que o Controle fornece automaticamente na página EDIÇÃO PROGRAMA (o “prompt” da função) as quais poderão ser programadas no bloco da função G22 ou G23. PROMPT DESCRIÇÃO HELICE HOR G22 X CTR OU/REV I “I” informa a coordenada X do centro do arco para os planos XY e XZ ou “I” informa o deslocamento longitudinal por revolução (passo) quando o plano é YZ (G19). X CTR OU/REV J “J” informa a coordenada Y do centro do arco para os planos XY e YZ ou “J” informa o deslocamento longitudinal por revolução (passo) quando o plano é XZ (G18). X CTR OU/REV K “K” informa a coordenada Z do centro do arco para os planos XZ e YZ ou “K” informa o deslocamento longitudinal por revolução (passo) quando o plano é XY (G17). R73224 105 X PTO FINAL X “X” informa a coordenada X final do movimento linear no plano YZ (G19). X PTO FINAL Y “Y” informa a coordenada Y final do movimento linear no plano XZ (G18). Z PTO FINAL Z “Z” informa a coordenada Z final do movimento linear no plano XY (G17). 6.1.2 - PROGRAMAÇÃO DA HÉLICE Para produzir uma hélice, o Controle precisa saber: . O plano do arco Antes de programar o bloco da hélice, deve-se programar um bloco que chame o plano em que ocorrerá o movimento circular. Usam-se: - G17 para o movimento circular no plano XY. - G18 para o movimento circular no plano XZ. - G19 para o movimento circular no plano YZ. De acordo com o plano em que ocorre o movimento circular da hélice, serão diferentes os significados das funções “prompts”. O bloco de hélice programado tem que ter um formato que seja correto para o plano escolhido, caso contrário, ocorrerá um erro - “CHECAR EIXOS E PLANO” - quando for rodado o programa. . A direção do arco No bloco da hélice, programa-se: - G22 para movimento circular no sentido horário, no plano selecionado. - G23 para movimento circular no sentido anti-horário, no plano selecionado. Nota: Sentido horário ou anti-horário tem por defição a vista da direção negativa do eixo que não faz parte do plano que geram o arco. R73224106 . Centro do movimento circular No bloco da hélice, programa-se o centro do arco com: - I e J para plano XY (G17) - I e K para plano XZ (G18) - J e K para plano YZ (G19) É bom lembrar que as coordenadas do centro do arco são referenciadas no Zero Programa no modo absoluto (G90), ou na posição atual dos eixos no modo incremental (G91). . O deslocamento linear longitudinal por revolução do arco (passo) No bloco da hélice programa-se o passo através das funções: - K para o plano XY (G17) - J para o plano XZ (G18) - I para o plano YZ (G19) O valor programado do passo é sempre um incremento, ou seja, ele não possui sinal, percorrido pelo eixo perpendicular ao plano selecionado que corresponde ao espaço percorrido durante uma revolução completa do arco (360 graus). Mesmo que uma revolução completa não é desejada, o passo deve ser equivalente ao círculo de 360 graus). . A coordenada da profundidade final desejada para o movimento linear No bloco da hélice, programa-se o movimento do eixo linear através de: - Z para o plano XY (G17) - Y para o plano XZ (G18) - X para o plano YZ (G19) Pode-se programar o coordenada da profundidade final no modo absoluto (G90) ou incremental (G91). O movimento do arco pára quando a profundidade final for encontrada isto significa que os eixos do arco podem parar em qualquer ponto de sua revolução. As revoluções do arco são determinadas pela fórmula: Comp. total linear passo No. de Revoluções = R73224 107 6.1.3 - Exemplos Exemplo 01: plano XY Este programa executa, utilizando uma fresa de perfil especial, uma rosca direita em uma peça vazada. Programa-se o Se o plano Centro com Passo com movimento linear circular é total com XY (G17) I e J K Z XZ (G18) I e K J Y YZ (G19) J e K I X A tabela a seguir resume as informações necessárias para programar uma hélice: R73224108 ; - Hélice - X Y - # nome do programa N0010 G90 # coordenadas absolutas N0020 G17 # selecionar o plano X Y N0030 G40 # cancela qualquer anterior compensação de raio N0035 O01 corretor 1 N0040 G0 X Y100. Z10. # desloca em rápido para as coordenadas indicadas N0050 F 1200. # define a velocidade de avanço igual a 1200 mm/min N0060 G22I50.J100.Z-75.K20.# executa uma hélice a partir da posição atual da ferramenta com centro em X = 50. e Y = 100., passo = 20. e profundidade final Z = -75 N0070 G01 X50. Y100. # desloca com avanço de trabalho para as coordenadas indicadas. N0080 G0 Z0.O # desloca em rápido para a posição Z = 0. N0090 M02 # fim de programa R73224 109 Exemplo 02: Plano XZ Este programa executa, utilizando uma fresa de perfil especial, uma rosca esquerda em um canal circular côncavo. ; - Hélice - X Z - # nome do programa N0010 G90 # coordenadas absolutas N0020 G18 # selecão do plano XZ N0030 G40 # cancela possível compensação de raio anterior N0040 G0 X-20. Y-10. Z0. # desloca em rápido para as coordenadas indicadas N0050 F1200. # estabelece velocidade de avanço igual a 1200 mm/min N0060 G23 I0.K0.Y150.J20. # executa uma hélice interpolando em XZ ao longo de Y, com centro em X = 0 e Z = 0, “profundidade” final = 150 e passo = 20. N0070 G0 X0. Z5. # desloca em rápido para X = 0 e Z = 5 N0080 M02 # fim de programa ; Hélice plano YZ N0010 G90 coordenada absoluta N0020 G19 plano YZ N0030 O01 corretor 1 N0040 G0 X-10 Y20. Z aproximação N0050 G23 J0 K0 I20. X150. Executa hélice interpolando no plano YZ ao longo do eixo X. Passo = 20 N0060 GZO N0070 M02 Fim de programa R73224110 CAPÍTULO 7 - FUNÇÕES: 7.0-IMAGEM DE ESPELHO As funções G30 e G31 são usadas para cancelar e estabelecer espelhamento de movimentos dos eixos. Por espelhamento entende-se como sendo a inversão do sinal da coordenada programada. Espelhamento de eixos não podem ser aplicados para eixos rotacionais. Se você programa a função G31 para o eixo X e executa um movimento X positivo, no espelhamento, o resultado obtido será um movimento em X negativo. G30 CANCELA ESPELHAMENTO - O comando assume G30 ao ser ligado. - Restaura a direção normal de operação e cancela G31. - Uma função G30 sem endereçamento de eixos no mesmo bloco cancela o espelhamento para todos os eixos. - Uma função G30 com endereço cancela o espelhamento somente para o eixo especificado. Ex.: G30 X - cancela espelhamento somente para o eixo X. G30 - cancela espelhamento para todos os eixos. G31 - ESPELHAMENTO DE EIXO Um bloco com G31 inverte o sentido de direção dos eixos nele especificado. Por exemplo: G31 XY - referencia o espelhamento somente para os eixos X e Y. Enquanto o espelhamento estiver ativo o comando exibirá na página “STATUS” a letra “M” em “REVERSE VÍDEO” À direita do eixo. G31 é modal e permanece em efeito até ser cancelado com um G30, M02 ou M30. R73224 111 Programa Principal Sub Programa P2 . . N10 G91 . N20 GX10.Y10. N10 GX50.Y50.Z5. N30 G1Z-10.F100. N20 P2 N40 Y30. N30 G31X N50 X30. N40 P2 N60 Y-10. N50 G31XY N70 X-10. N60 P2 N80 Y-20. N70 G30 N90 X-20. N80 G31Y N100 GZ10. N90 P2 N110 X-10.Y-10. N100 G30 N120 M2 . . . R73224112 Altura do grampo sobre a peça : 20mm 7.1 FUNÇÃO G89 Restaura e executa o último ciclo fixo cancelado com um código G80. Em alguns casos é necessário cancelar um ciclo fixo para movimentar rapidamente os eixos em XY evitando um obstáculo como grampos. Depois de executado o desvio pode-se restaurar o ciclo fixo programando se um G89 somente no bloco. Se um G89 somente no bloco. Exemplo: G99 G90 “ “ X-100. Y-100. T01 M06 O35 S1000 M03 Z30. G81 Z-3. R5. F150 G00 X-10. Y-15. X-60. G80 G00 Z25. G89 Y-55. X-10. G80 GZO M05 Y150.M02 R73224 113 7.2 FUNÇÃO G29 Executa o último ciclo fixo, que estava ativo no programa. Quando G29 for programado, o ciclo fixo é executado mesmo que tenha sido cancelado com um código G80. Devemos posicionar primeiro para a coordenada e depois executar o ciclo com G29. A função G29 pode conter a função L que especifica o número de execuções a ser feita no ponto. Exemplo: G99 G90 “ “ X-100. Y-100. T01 M06 O35 S1000 M03 Z30. G81 Z-3. R5. F150 G00 X-10. Y-15. X-60. G80 G Z25. Y-55. G29 X-10. G29 (L) GZO M05 M02 Altura do aperto : 20mm R73224114 7.3 FUNÇÃO G24 Auto-rotina de círculo de furos. Esta função é aplicada para ser executado automaticamente um auto-ciclo (G79 G86), sub-programa ou sub-rotina, num máximo de 128 vezes em um padrão circular de pontos igualmente espaçados. O comando executa o auto-ciclo, auto-rotina ou sub-programa no primeiro ponto do padrão circular, executando-os novamente após cada deslocamento que é feito em movimento rápido entre os pontos, o qual a própria função G24 se encarrega de fazer. A seguir estão descritas as funções utilizadas com o código G24: I - Coordenada do centro do círculo no eixo X, em absoluto ou incremental. Se não programado, a atual posição em X é assumida para ser a coordenada do centro do círculo. J - Idem para o eixo Y. X - Coordenada do ponto inicial do círculo no eixo X, em absoluto ou incremental. Se não programada a posição atual em X é assumida para ser a coordenada inicial. Y - Idem para o eixo Y. R - Define o raio do círculo. R tem formato +/- 3.3. C - Define o ângulo da posição inicial no círculo. Ele é medido a partir do positivo do eixo X no modo absoluto ou da posição inicial da ferramenta no modo incremental. C tem formato 3.3. W - Especifica o número total de pontos em um círculo completo. A direção dos pontos pode ser no sentido horário (W-) ou anti-horário (W). O número máximo de pontos é: Sentido horário - 128 Sentido anti-horário - 127 Deve-se programar W ou B para L maior do que 1. O espaçamento entre os pontos pode ser o valor B programado diretamente ou pode ser informado indiretamente programando-se W e o espaçamento ficará sendo 360 graus/W. W tem formato 3. R73224 115 L - Especifica o número total de pontos em que os auto-ciclos, sub-programas ou sub- rotinas serão executados. O valor máximo de L é 128 e pode ser menor do que o número total de pontos definido por W ou B. L tem formato 3. B - Define o espaçamento angular igual para os pontos no círculo. A direção dos pontos poderá ser no sentido horário (B-) ou no sentido anti-horário (B). Se B não for programado, W definirá indiretamente o espaçamento entre os pontos. B tem formato +/- 3.3. P - Especifica o número de um sub-programa a ser executado nos pontos em torno de um círculo. Se P não for programado, o auto-ciclo atual ou a sub-rotina (H,E) é assumida. Se um auto-ciclo está ativo e a função G24 especifica um sub-programa ou sub- rotina, o auto ciclo será executado após cada movimento em avanço rápido ou movimento com a função D houver dentro do sub-programa ou sub-rotina. H - Especifica o número do bloco inicial da sub-rotina. E - Especifica o número do bloco final da sub-rotina. Para especificar o centro do círculo e a posição inicial pode-se utilizar as combinações no bloco de dados com a função G24: IJ - A posição atual (antes do bloco G24) será a posição inicial no círculo e o centro é definido pelas funções I e J (no bloco G24). XY - A posição atual será o centro do círculo e a posição inicial do círculo será um movimento feito a um ponto definido pelas funções X e Y. IJ, XY - O centro é definido por IJ e a posição inicial por XY. IJ, RC - O centro é definido por IJ e a posição inicial por RC. R73224116 I J I J X Y . . . . . . G X50.Y100.Z30. G Z30. G81 Z-12.R2.F100 G81 Z-12.R2. F100 G24 I50.J60.L5 W5 G24 X50. Y100. I50. J60. L5 W5 G80 G80 . . . . . . X Y I J C R . . . . . . GX50.Y60.Z20. G Z30. G81 Z-12.R2.F100. G81 Z-12. R2. F100 G24 X50.Y100.W5 L5 G24 R40. C90. I50. J60.L5 W5 G80 G80 R73224 117 7.4 FUNÇÃO G25 Auto-rotina quadrado ou retângulo de furos. Permite executar um retângulo ou um quadrado de pontos igualmente espaçados, executando todos os furos programando-se apenas o furo inicial. Podemos definir o número de pontos ao longo dos eixos X Y e o espaçamento entre eles. X - Especifica a distância incremental em X e a direção entre os pontos, a serem executados. Y - Especifica a distância incremental em Y e a direção entre os pontos, a serem executados. I - Define o número de pontos ao longo do eixo X. O sinal (-) colocado neste valor é ignorado pelo comando. J - Define o número de pontos ao longo do eixo Y. O sinal (-) colocado neste valor é ignorado pelo comando. F - Especifica o avanço dos movimentos entre os pontos. Se F não for programado, o avanço entre os pontos será o rápido. Se for programado F0 o avanço considerado será o último avanço programado com G1. P - Especifica o número de um sub-programa previamente armazenado no comando, a ser executado em cada ponto. H - Especifica o número do bloco inicial da sub-rotina. . . . GX100.Y100.Z10. G81 Z-10.R2.F200. G25 X30.Y-20.I5 J3 G80 . . . R73224118 7.5 FUNÇÃO G26 Auto-rotina para fresamento de alojamentos retangulares, quadrados ou circulares. Esta função permite automaticamente desbastar e dar acabamento em alojamentos. Para alojamento retangular. É possível especificar um raio nos cantos usando a função R. Que deve ser maior que o raio da ferramenta utilizada para usinagem do alojamento. O último movimento da auto-rotina é um movimento de saída tangencial. Uma função Q limita a dimensão deste movimento. À 90 graus ao final da usinagem a ferramenta retorna em rápido para coordenada em Z da posição inicial e em seguida para a posição inicial em XY. X - Coordenada do canto oposto do alojamento no eixo X se X e Y não for programado um alojamento circular será executadoforma, G00 e G são iguais. . Zero à direita é necessário. Os zeros à direita são exigidos em quantidade necessária e suficiente para completar o número de dígitos à direita do ponto decimal de acordo com o formato da função. Por exemplo: possuindo a função X o formato 3.4, o valor X 15.209 deverá ser programado com X 152090, de forma que o dígito mais à direita (no caso, o 0) corresponde à quarta casa depois do ponto, fazendo com que o ponto seja assumido entre o 5 e o 2. Se equivocadamente for programado X15209, o Controle entenderá que o 9 está na quarta casa e colocará o ponto entre o 1 e o 5, gerando, assim, o valor X1.5209. 1.1.3 - CARACTERES ESPECIAIS Fim de Bloco ( # ) Todo bloco deve possuir um caracter que indique o seu fim de bloco como “#” é universalmente conhecido como “EOB” (END 0F BROCK). Para gerar o caracter de fim de bloco tecla-se (EOB). COMENTÁRIO (;) O caracter ponto e vírgula permite a inserção de comentários no programa. O código de comentário pode aparecer em qualquer posição dentro do bloco. Os caracteres que vierem a seguir até o fim do bloco são considerados comentário e ignorados pelo Controle. Se o primeiro bloco de um programa começa por um código de comentário, o comentário subsequente é considerado como sendo o nome do programa. O nome do programa aparece em muitas das páginas do controle quando um programa está ativo. O tamanho desse nome é limitado a 12 caracteres. Por exemplo: BLOCO DESCRIÇÃO (; CÍRCULO-CW #) - Bloco de comentário que aparece como o nome do programa. G91 # - Define modo incremental. G2 XYIJ-15.; CÍRCULO # - Executa um círculo de raio 15. O comentário CÍRCULO é ignorado pelo Controle, mas é parte desse bloco. R73224 7 DELEÇÃO DE BLOCO (/) O caracter de deleção de bloco (/) é usado para permitir ao controle ignorar todos os caracteres que aparecem depois dele num bloco de dados. Esse bloco será ignorado ou não, de acordo com a determinação do operador da máquina. Para ignorar o bloco, o operador seleciona (IGNORA BLOCO) na página REFERÊNCIA. Se isso não ocorrer, o bloco será executado normalmente. Por exemplo: 1.1.4 - CHECAGEM DE ERROS É recomendável que todos os programas sejam testados através de um dos modos da página TESTAR PROGRAMA antes de serem executados em OPER AUTOMÁTICA ou durante a edição do mesmo. Porém, se o controle detectar um erro durante a execução de um programa, ele será suspenso mantendo bloco ativo. Diversas páginas do controle principalmente as páginas STATUS e GRÁFICO, mostrarão o bloco ativo. Deve-se então examinar esse bloco e corrigí-lo usando EDIÇÃO PROGRAMA. CARACTERES, ENDEREÇOS E FUNÇÕES ILEGAIS Caracteres, Endereços e Funções que não são reconhecidas pelo controle causam a parada da execução do programa. O controle mostra a mensagem”....COD NÃO CONHECIDO” na tela. O código mostrado no espaço “....” é aquele que está ilegal. BLOCOS ILEGAIS Blocos de dados não podem conter mais que uma função utilizando o mesmo endereço. Se programados dois endereços G no mesmo bloco - mesmo que sejam funções diferentes (G90 e G01, por exemplo) a checagem ou execução será suspensa nesse ponto e o controle exibirá a mensagem “mais que 1 G COD”. BLOCO - DESCRIÇÃO G91 - Define modo incremental. G1 X30. Y30. F300. # - Move 30.mm em X positivo e 30.mm em Y positivo com Va de 300 mm/min. /G X-30. Y30. # - Move em rápido 30.mm em X negativo e 30.mm em Y positivo. Se (IGNORA BLOCO) estiver ativo, o controle ignora este bloco. M2 # - Fim de programa R732248 1.2 - FORMATOS E UNIDADES DAS FUNÇÕES A tabela seguinte mostra, em ordem alfabética, os endereços de funções que são reconhecidas pelo controle, seus formatos, unidades, e seu significado. Importante: Seções e capítulos posteriores deste manual discutirão as funções básicas com maiores detalhes nos seus significados particulares quando associadas com certas funções G. Aquelas que não forem discutidas neste manual (assinaladas com um asterisco) pertencem ao Manual de Programação Avançada. UNIDADE InglêsMétricoInglêsMétrico FORMATO DESCRIÇÃOFUNÇÃO Ângulo do próximo movimento com vértice na posição atual, medido a partir da origem do sistema de coordenada em absoluto (G90), ou da posição atual em incremental. Abertura angular entre pontos na auto-rotina de círculo de furos (G24). Ângulo do próximo movimento com vértice num ponto definido como centro, medido a partir da origem (G90) ou da posição atual (G91) Tempo de permanência em ciclos fixos. Divide um movimento "N" segmentos. Máximo = 255 segmentos Número de passes de desbaste em X e Y para auto-rotinas de alojamento (G26) e Ressalto (G27). Executa um perfil no 1o ponto do caminho no auto ciclo de cavidade (G75). Identifica o último bloco da sequência quando programado desvio.E 4 4 - - D 3 3.2 3.2 s s C B 3.3 3.3 graus graus 3.3 3.3 graus graus 3.3 4.3 graus grausA Tabela 1.A Formatos, unidades e descrição das funções R73224 9 FORMATO DESCRIÇÃOFUNÇÃO Tempo de permanência em blocos G04. Definição da velocidade de avanço em blocos de movimento. Definição de velocidade de avanço do plano R até a profundidade final nos ciclos fixos (G81 a G86). Definição de avanço em auto-rotinas Incrementa-Repete (G25). Alojamento (G26) e Bolacha (G27). F Inglês Métrico InglêsMétrico UNIDADE Funções preparatórias que definem modos de operação para o controle.G 2 3.2 3.2 s s 4 3.1 mm/mim mm/min Identifica o primeiro bloco da sequência a ser repetida quando programado desvio. Velocidade de avanço final para auto-rotinas de alojamento (G26) e Bolacha (G27). 4 4 - - 5 3.1 mm/min pol/min H Distância em X do centro do círculo medida a partir da origem (G90) ou da posição atual (G91). Incremento para mergulho inicial em Ciclo Fixo de Quebra Cavaco (G83). Passo de interpolação Helicoidais (G22 e G23) realizadas ao longo do eixo X. Sobremetal para acabamento ao longo de "X" nas Auto-rotinas de alojamento (G26) e Bolacha (G27). Número de pontos ao longo do eixo X em Auto-rotina Incrementa-Repete (G25). I 3.3 3.4 mm pol 3 3 - - J Distância em Y do centro do círculo medida a partir da origem(G90) ou da posição atual (G91). Decremento aplicado ao mergulho inicial e sucessivos em Ciclo Fixo de Quebra Cavaco (G83). Passo de interpolação Helicoidais (G22 e G23) realizadas ao longo do eixo Y. Sobremetal para acabamento ao longo de "Y" nas Auto-rotinas de (G26) Ressalto (G27) Número de pontos ao longo do eixo Y na Auto- rotina Incrementa-Repete (G25). 3 3 - - 3.3 3.4 mm pol R7322410 FORMATO DESCRIÇÃOFUNÇÃO Distância em Z do centro do círculo medida a partir da origem (G90) ou da posição atual (G91). Valor mínimo dos mergulhos em Ciclo Fixo de Quebra Cavaco (G83). Passo de interpolação Helicoidais (G22 e G23) realizadas ao longo do eixo Z. Sobremetal ao longo do eixo Z nas Auto- rotinas de alojamento (G26) e Ressalto (G27). K 3.3 3.4 mm pol Contador para repetição Máx. de repetições 255. Número de passes de desbaste em Z para alojamento (G26) e Bolachas (G27). 3 3 - - L Funções Miscelâneas 2 2 - -M Número sequencial dos blocos 4 4 - -N O Seletor de corretores 2 2 - - Chamada de sub-programa em instrução de desvio. Código de retração para auto ciclos (G81, G86). P 3 3 - - Raio de corcordância entre 2 movimentos. Raio para programação com centro do arco (G05). Raio para saída do alojamento ou bolacha nas auto-rotinas G26/G27. 3.3 3.4 mm pol Definição do plano rápido em Ciclos Fixos. Raio em blocos de posicionamento com coordenadas polares. Medida a partir do centro (G90), ou da posição atual (G91). Controle do RÁPIDO em exibição de Gráfico (G66). 3.3 3.4 mm pol - - - - Definição de velocidade de rotação do eixo- árvore. (O número de digitos permitido é definido no PAL). S 4 4 rpm rpm InglêsMétrico Métrico Inglês UNIDADE Q R R73224 11 FORMATO DESCRIÇÃOFUNÇÃO InglêsMétrico Métrico Inglês UNIDADE T Eixo secundário paralelo a X. Eixo secundário rotacional em torno de X. Seleção de ferramenta 2 2 - - U V W X Eixo secundário paralelo a Z. Eixo secundáriocom raio R. A coordenada X absoluta do canto oposto é em relação ao zero programa. Y - Coordenada do canto oposto do alojamento no eixo Y. A coordenada absoluta do canto oposto é em relação ao zero programa. Z - Nível Z do fundo do alojamento (profundidade final). I - Sobremetal para acabamento ao longo do eixo X. J - Sobremetal para acabamento ao longo do eixo Y. K - Sobremetal para acabamento no fundo do alojamento. Q - Especifica o raio de saída à 90 graus. U - Profundidade de corte (desbaste) para o eixo Z. Se U não for programado o comando usa a função L para determinar a profundidade de corte. L - Determina o número de passes para o eixo Z. L é sempre um número inteiro, se L não for programado U será usado para determinar a profundidade de corte. W - Determina a largura de corte ao longo dos eixos X Y se W não for programado a largura de corte é determinada pela função D. R73224 119 Se somente W for programado ou somente D, a auto-rotina inicia no centro do alojamento. Se W e D for programado junto a auto-rotina abrirá um alojamento já existente. Se nenhum W ou D for programado então a largura de corte será o próprio raio da ferramenta. Se W for maior que o diâmetro da ferramenta o comando bloqueará a execução. D - Especifica o número de passes para os eixos X Y. D será sempre um valor inteiro. F - Define o avanço de desbaste. F - positivo para corte discordante. F - negativo para corte concordante. H - Avanço de acabamento. H - positivo para corte discordante. H - negativo para corte concordante. V - Define avanço de penetração para o eixo Z. Se V não for programado o avanço F será usado. R - Raio do canto do alojamento se X e Y não for programado R será o raio do alojamento circular. O - Número do corretor da ferramenta para compensação de raio. RESTRIÇÕES - Corretor com valor do diâmetro da ferramenta negativo não pode ser usado. - Se o valor de escala G72 for usado com a função G26 e o raio do canto tiver sido programado na auto-rotina, os fatores de escala X e Y deverão ter os mesmos valores. - O diâmetro da ferramenta não pode exceder o menor lado do alojamento. - G18 e G19 não pode ser ativado se R for programado. - A largura de corte em X Y definido por W ou calculado através de D não pode exceder o diâmetro da ferramenta. A função G26 não requer que se programe todas funções descritas acima. A seguir está descrito o que ocorre quando alguma dessas funções são omitidas. R73224120 X - Se omitido esta função um rasgo é fresado com um comprimento especificado por Y. E com largura especificada por X2 x R. Se R também não for programado, a largura do rasgo será igual ao diâmetro da ferramenta. Y - Se omitirmos esta função um rasgo é fresado com o comprimento definido por X e com uma largura especificada por 2 x R . Se R não for definido A largura será igual ao diâmetro da ferramenta. XY - Um alojamento circular será fresado com o raio especificado por R. O centro do alojamento deverá ser a posição da ferramenta quando G26 for definido. Importante: Se você definir um alojamento circular programando R e não X Y, o sobremetal I e J deverão ter os mesmos valores pois caso contrário será feito um percurso ovalizado. I - O sobremetal especificado por J será usado ao longo do eixo X. J - O sobremetal especificado por I será usado ao longo do eixo Y. I e J - Todos os passes em X Y/ serão de desbaste . O último passe será executado com avanço de acabamento. K - Todos passes em Z serão de desbaste. W - A largura de corte em X Y será determinado pela função D. D - A largura de corte em X Y será determinado pela função W. W e D - A largura de corte em X Y será o raio da ferramenta. U - Se omitido, os passes na profundidade (Z) serão calculados pelo comando baseado na função L. L - O número de cortes para o eixo Z será calculado pelo comando baseado na função U. U - L - Apenas um passe em Z será executado na profundidade final. R73224 121 . . . GX20. YZ5. G26X100.Y45.Z-3.I.5J.5K.5U1.25L2.W5. F150.H100.V50. . . . . . . GX20.Y30.Z5. G26 X100.Y90.Z-5.I.5 J.5 K.5 U2.25 L2. W8. R15.F150.H100.V50. . . . . . . GX60.Y70.Z5 G26 R40.Z-3.I.5 J.5 K.5 U1.25 L2 W5.F150.H100.V50 . . . R73224122 7.5.1 - FUNÇÃO G27 Auto-rotina para fresamento de alojamento ao redor de uma área especificada. Todas as considerações feitas para a função G26 são aplicadas para a função G27. A área especificada será definida pelos parâmetros X e Y, se não for programada a função R, o alojamento será retangular e os cantos da área especificadas serão retos. Caso R seja programado, os cantos terão um raio igual a R. O comando deverá conhecer a distância até a área de usinagem, portanto, a função D deverá ser programada. Para se determinar os valores de W e D usados no programa, devemos usar as seguintes fórmulas : EIXO X : D = [(AX - I - 2.RF)/W] + 1 I = AX - 2.RF - [(D-1).W] W = AX - I - 2.RF / (D-1) EIXO Y D = [(AY - J - 2.RF) / W] + 1 J = AY - 2.RF - [(D-1).W] W = AY - J - 2.RF / (D-1) N10 GX70.Y60.Z5 N20 G27 X130.Y100.Z-4.5 I2.J2.K5.L2 D5 W6.5 F150.H100.V50 R73224 123 N10 G XY Z5 N20 G27 R13.Z-4.I.5.J.5 K.5 L2 W8.75 D3 F150.H100 V150 N10GX28.Y28.Z5 N20 G27 X116.Y70.Z-4.I1.5 K.5 L2 D3.W3 F150.H100 V50.R8 FERRAMENTA φ 12mm R73224124 7.6 FUNÇÃO G72 - ESCALA Esta função através do fator de multiplicação que poderá ser de .05 a 20, reduz ou aumenta os movimentos programados. Os valores dos corretores de ferramenta, movimentos manuais e corretores de fixação não são afetados pelo fator de escala. Abaixo estão descritas as funções utilizadas com o código G72. X - Fator de escala para o eixo X, o valor programado afeta a função I pelo mesmo valor. Y - Fator de escala para o eixo Y, o valor programado afeta a função J pelo mesmo valor. Z - Fator de escala para o eixo Z, o valor programado afeta a função K pelo mesmo valor. EXEMPLO: ; ESCALA - nome programa G99 - cancela G92 G X Y - mov. rápido para zero peça G91 - Coordenada incremental G72 X.5 Y.5 - determina fator de escala de 0,5 para o eixo X e 0,5 para o eixo Y G1 X20. F20. - Estes movimentos e os próximos três produzirão um quadrado que terá 10mm em cada lado. Y-20. X-20. Y20. G72 - cancela fator de escala M2 - Fim de programa Para remover o efeito da escala programa-se um bloco de dados somente com a função G72. Quando aplicado o fator de escala em movimento de interpolação circular (G2, G3) ou interpolação helicoidal (G22, G23) ambos os eixos do plano de interpolação deverão ter seus fatores de escala com o mesmo valor. R73224 125 Se você tentar aplicar fator de escala numa interpolação circular no plano XY com valores diferentes em X e Y uma mensagem de erro - “CHECAR BLOCO G02/G03”, será exibido pelo comando. Pode-se também aplicar um fator de escala sobre um fator já definido, resultando um novo fator múltiplo do outro. EXEMPLO: G99 - cancela G92 G00 X40. Y50 - movimento rápido G01 X80. F80. - movimento trabalho com avanço de 80. G72 X.5 - define fator de escala de 0,5 para os movimentos do eixo X. G1 X100. F100 - movimentos de trabalho com escala de 0,5. G72 X.5 - define o fator de escala de 0,5 para movimentos do eixo X, porém o fator resultante será 0,5 x 0,5 = 0,25. G1 X200. - Movimento trabalho no eixo X sendo afetado pela escala de 0,25. O fator de escala usado em um programa principal pode ser alterado em sub-programas ou sub-rotinas. Se você usar escala em um sub-programa ou sub-rotina, é bom programar um fator para restaurar o fator de escala original (1) antes de retornar para o programa principal. Você faz isto, programando um valor no bloco G72 que multiplica a escala no sub- programa ou sub-rotina para o valor original = 1 antes de retornar para o programa principal. Você não deve cancelar a escala no sub-programa ou sub-rotina com um G72, somente. Se no programa principal estiver usando escala. ; PROGRAMA PRINCIPAL - nome do programa . . . G72 Y2. - define fator de escala para 2 no eixo Y. . . . P2; SUB-PROGRAMA- Chama sub-programa no. 2. Executa movimentos do programa 2 que está préviamente na memória do comando. R73224126 ; SUB-PROGRAMA - nome do sub-programa . . . G72 Y.25 - Fator de escala neste sub-programa é 0,25 para o eixo Y. O resultado da escala agora é 2 x 0,25 = 0,5 . . . G72 Y4. - Define um multiplo de escala no sub-programa para 1 - 0,25 x 4 = 1. Note que a escala que está ativa antes de retornar para o programa principal é 0,5 x 4 = 2 para o eixo Y. M2 - Fim do programa. G Y10. - o programa principal reassume neste ponto com o fator de escala 2 para o eixo Y. . . . G72 - cancela toda escala retornando para fator de escala 1 para todos eixos. Programa Principal P2 . . N1 G1Z-5.F200. . N5 G91 N20 GX70.Y50.Z5. N10 G1 X30. N30 P2 N20 Y30. N40 GX20.Y20. N30 X-30. N50 G72 X.5 Y.5 N40 Y-30 N60 P2 N45 GZ0 M05 N70 G72 N50 M2 . . . R73224 127 7.7 FUNÇÃO G79 - AUTO CICLO PROGRAMÁVEL A função G79 especifica um sub-programa ou uma sub-rotina para funcionar como um auto ciclo. O ciclo será executado em resposta a um movimento rápido G00 ou um bloco com parâmetro D. Abaixo estão descritas os parâmetros utilizados com a função G79. P - Define o número do programa que contém os movimentos do ciclo. H - Define o número do bloco inicial da sub-rotina que contém os movimentos do ciclo. E - Define o número do bloco final da sub-rotina que contém os movimentos do ciclo. 7.8 FUNÇÃO G75 - AUTO CICLO DE FRESAMENTO DE CAVIDADE A Função G75 permite você fresar uma cavidade convexa ou côncava produzida pela execução de um perfil programado no plano XZ ao longo de um percurso em XY. O perfil definido em XZ poderá ser escalado. Para mais ou menos, linearmente, ao longo da peça para variar a profundidade e espessura da cavidade. A cavidade é produzida na execução do perfil programado, movendo ao longo do percurso (X,Y) repetindo o perfil. O comando executa esta sequência até o final do percurso (X,Y) ser encontrado. Através do perfil programado a execução é feita ortogonalmente no percurso XY. A seguir o PROMPT do comando sobre a Função G75. X - Informa o fator de escala aplicado para o eixo X no perfil. Este fator de escala é aplicado linearmente ao longo do percurso de acordo com o incremento D programado. Quando o percurso final for encontrado, esta escala terá sido completada. Z - Informa o fator de escala aplicado para o eixo Z no perfil. Este fator de escala é aplicado linearmente ao longo do percurso de acordo com o incremento D programado. Quando o percurso final for encontrado, esta escala em Z terá sido completada. D - Informa ao comando para executar o perfil no primeiro ponto do percurso. Se D não for programado o primeiro ponto do percurso é omitido. Em ambos os casos o perfil é executado no fim de cada segmento D programado. R73224128 P - Número do sub-programa que contém o perfil. Se um sub-programa não for usado. Então uma sub-rotina deve ser especificada com H e ou E. H - Número do bloco inicial da sub-rotina que contém o perfil. E - Número do bloco final da sub-rotina que contém o perfil. PLANO DO PERFIL: Você deve programar os blocos que executarão o perfil em um sub-programa ou sub-rotina. A Função G75 chamará o sub-programa ou sub-rotina e executará o perfil. Movimentos de corte do perfil devem ser programados no plano XZ. O perfil pode incluir algum avanço e informações sobre escala. O perfil deve incluir: - Avanço para movimentos no perfil - Movimentos do Perfil Estes movimentos devem estar definidos no plano XZ. - Compensação do raio da ferramenta Você deve programar a compensação do raio da ferramenta (corretor) a ser usada no perfil se for diferente do corretor usado no programa principal. - Escala O perfil pode incluir algum valor de Escala, programado com um bloco G72, no início do perfil. Esta escala é para o eixo X e Z. Lembre-se que, se o perfil incluir movimetos de arco o valor da escala para ambos os eixos deve ser o mesmo. Note que a escala programada no G75 será multiplicado pelo valor de escala no perfil. R73224 129 - Fim do Perfil A Função G75 executa a seguinte sequência cada vez que o perfil é executado: . O eixo Z retorna para a posição inicial indicada no perfil. . O eixo X retorna para a posição inicial do perfil no avanço indicado no programa principal. - O percurso ao longo do qual o perfil é executado é definido por algum movimento programado. Se você programa uma função D neste movimento programado (percurso) D resulta do número de segmentos. O perfil é executado ortogonalmente no percurso destes pontos definido por estes segmentos. Se D não for programado no bloco de movimento que define o percurso, o perfil é executado na coordenada final definida por este bloco. A função G75 é cancelada por um bloco G80. A função G75 pode usar as funçoes P, H e E contendo o perfil. Exemplo : - G75 P3 - Estabelece programa 3 que contém os movimentos do perfil. - G75 H100 E200 Estabelece uma sub-rotina que começa com o bloco N100 e termina com o bloco imediatamente anterior ao bloco N200. Esta sub-rotina contém os movimentos do perfil. . Escala aplicada ao perfil ao longo do percurso : As funções X e Z programadas no bloco que contém G75 É aplicada linearmente ao longo do percurso. A escala ativa faz com que o perfil inicie num valor e termine com um valor final programado com X e Z na função G75. R73224130 R73224 131 ; G75 - conv - alumínio G99 G90 G17 G71 G00 X10.Y-50.T01 M06 ; Fresa D.6,5 corretor 6,5 O56 S1500 M08 M03 G72 X.38 Y.38 Z.38 X0 Y-55. Z5. G75 H90 E100 D Y20. D10 G02 X90. Y110. I90. J20. D10 G01 X140. D10 G02 X230. Y20. I140. J20. D10 G01 Y-55. D10 G80 H100 N90 G91 G18 G X-100. G1 Z-28. F120 G42 X10. Z-5. X10. Q5. X10. Z-10. Q5. X10. G2 X15. Z15. I0. K15. G3 X15. Z15. I15. K0. Q5. G3 X60. Z0. I30. K-51.961 Q5. G3 X15. Z-15. I0. K-15. G2 X15. Z-15. I15. K0. G1 X10. Q5. X10. Z10. Q5. X10. G40 X10. Z5. G Z28. X-100. G17 G90 N100 GZO M05 G72 G99 M2rotacional em torno de Z. Incremento de retração para Ciclo Fixo Quebra Cavaco (G83). Incremento radial (X Y) de desbaste para fresagem de alojamento (G26) e Ressalto(G27). Número de pontos para Auto-rotina de Círculo de Furos (G24). Inibição da tecla APAGAR em Controle Gráfico (G66). Eixo secundário paralelo a Y. Eixo secundário rotacional em torno de Y. Velocidade de avanço de retração em Ciclos Fixos do Mandrilhamento (G85, G86). Velocidade de avanço de mergulho para Auto- rotinas de Cavidade (G26) e Ressalto (G27). 3.3 3.4 mm pol 3.3 2.4 graus graus 3.3 3.4 mm pol 3.3 4.3 mm pol 3.3 2.4 graus graus 4 4.1 mm/min pol/min 4 3.3 3.4 mm pol 3.3 3.3 graus graus - - - - 3.3 3.4 mm pol 3.3 2.4 - - - - - - Movimento ao longo do eixo X. Medido a partir da origem (G90) ou da posição Atual (G91). Coordenada X de início para Auto-rotina de Círculo de Furos (G24). Incremento X entre pontos para Auto-rotinas Incrementa-Repete (G25). Coordenada X do canto oposto para fresamento de alojamento (G26) e Ressalto (G27). Fator de escala para o eixo X. O valor programado afeta a função de programação de centro I na mesma proporção. Imagem Espelho (G30, G31). R7322412 FORMATO DESCRIÇÃOFUNÇÃO InglêsMétrico Métrico Inglês UNIDADE Movimento ao longo do eixo Y. Medido a partir da origem (G90) ou da posição atual (G91). Coordenada Y do início para Auto-rotina de Círculo de Furos (G24). Incremento Y entre pontos para Auto-rotinas Incrementa-Repete (G25). Coordenada Y do canto oposto para fresamento de Alojamento (G26) e Ressalto (G27). Fator de escala para o eixo Y. O valor programado afeta a função de programação de centro J na mesma proporção. Imagem Espelho (G30, G31) Z Y 3.3 3.4 mm pol 3.3 2.4 - - - - - - Movimento ao longo do eixo Z. Medido a partir da origem (G90) ou a partir da posição atual (G91). Fator de Escala para o eixo Z. O valor programado afeta a função de programação de centro K na mesma proporção. Imagem Espelho (G30, G31). 3.3 3.4 mm pol 3.3 2.4 - - - - - - 1.3 - DESCRIÇÃO DAS FUNÇÕES Esta seção descreve características gerais das funções usadas na programação. Capítulos Capítulos posteriores desse manual descreverão, em detalhes, como usar essas funções. 1.3.1- FUNÇÕES G As funções G são funções preparatórias. Elas definem para o controle os modos de operação do programa. As funções G permitem valores numéricos de dois dígitos. As funções G são modais ou não modais: . Uma função G modal estabelece um modo de operação que permanece em efeito para os blocos subsequentes. Esse efeito permanece até que uma outra função G que a cancele seja executada. . Uma função G não modal estabelece um modo de operação que permanece ativo apenas no bloco no qual foi programada. R73224 13 Se mais que uma função G estiver presente em um bloco, a mensagem de erro “MAIS QUE 1 G - COD.” será mostrada na tela quando o bloco for encontrado. A execução será interrompida, e o problema deverá ser corrigido através de EDIÇÃO PROGRAMA. Grupos de Funções G Para facilidade de programação, as funções G são divididas em grupos de acordo com sua aplicação. Esses grupos são dados nas páginas [CÓDIGO G] do comando: Funções G da 1a. Página de Códigos G. Funções G da 2a. página de Códigos G. CONTROLE COORDENADAS MODOS DOS EIXOS CONTROLE DO CNC G70 POLEGADA G17 PLANO XY G60 ZONASEGURANÇA G71 MÉTRICO G18 PLANO XZ G62 CONTR. INIB. G72 ESCALA G19 PLANO YZ G66 CONTR. GRÁFICO G74 ROTAÇÃO G30 DESL ESPELHO G90 ABSOLUTO G31 LIGA ESPELHO G91 INCREMENTAL G40 CANCELA COMPENS G92 REFEREN TEMP G41 FERRAM. ESQ. G94 AVANÇO P/ TEMPO G42 FERRAM. DIR. G97 INIBE AC/DES. G45 CORRETOR FIXAÇÃO G99 CANCELA G92 PÁGINA 2 DE 2 > G O PRÓXIMA PÁG. AUTO CICLOS AUTO ROTINAS MOVIMENTO/PERMAN G75 CAVIDADE G22 HÉLICE HOR G00 MOV. RÁPIDO G79 PROGRAMA A.C. G23 HÉLICE AHOR G01 LINEAR G80 DESATIVA G24 CIRC. FUROS G02 ARCO HOR G81 FURAR G25 POS. REPETE G03 ARCO AHOR G82 REBAIXAR G26 ALOJAMENTO G04 PERMANÊNCIA G83 FURAR / DESC. G27 RESSALTO G05 ARCO TANGENTE G84 ROSCAMENTO G29 EXECUTAR A.C. G73 PTO. LINHA G85 MANDRILAR G39 SUBPROG. PARAM G86 MAND. PRD. EIXO VARIÁVEIS G89 REATIVA A.C. G39 LOCAL G59 PAL G79 GLOBAL PÁGINA I DE 2 > G O PRÓXIMA PÁG. R7322414 . Controle de Coordenadas O grupo de Controle de Coordenadas referencia condições que afetam o sistema de coordenadas da máquina, e assim, o tipo de programação a ser usada para o posicionamento. Funções G desse grupo geralmente estarão entre as primeiras funções programadas. . Modos dos Eixos Esse grupo referencia as condições sob as quais o Controle interpreta o sistema de eixos da máquina. Estarão também entre as primeiras funções do programa. . Controle do CNC Essas funções afetam operações específicas do controle, tais como apagar o gráfico do programa ou privar o operador de certos controles do painel frontal e podem ser usadas em qualquer posição dentro do programa. . Ciclos Fixos Nesse grupo, as funções G programam operações que ocorrem automaticamente após movimentos de posicionamento. Uma vez programadas permanecem em efeito até que sejam canceladas. . Auto-Rotinas As funções desse grupo programam sequências especiais de posicionamento ou operações tais como fresamento de alojamentos ou círculo de furos. . Posicionamento/Permanência São as mais básicas e largamente usadas na programação. Definem como o controle executa os posicionamento, e quando ocorrerão pausas (tempo de permanência) no programa. Endereços Permitidos em blocos com funções G Certos endereços não podem ser programados em blocos que contenham certas funções G. A tabela a seguir fornece os endereços permitidos para cada função G. R73224 15 Endereços Legais em Blocos com Funções G G00 A B C D E F H I J K L M N O P Q R S T U V W X Y Z G01 A B C D E F H I J K L M N O P Q R S T U V W X Y Z G02 A B C D E F H I J K L M N O P Q R S T U V W X Y Z G03 A B C D E F H I J K L M N O P Q R S T U V W X Y Z G04 A B C D E F H I J K L M N O P Q R S T U V W X Y Z G05 A B C D E F H I J K L M N O P Q R S T U V W X Y Z G17 N G18 N G19 N G22 I J K N X Y Z G23 I J K N X Y Z G24 A B C E H I J L P R W X Y G25 E F H I J N P X Y G26 D F H I J K L N O P Q R U V W X Y Z G27 D F H I J K L N O P Q R U V W X Y Z G29 L N G30 N U V W X Y Z G31 N U V W X Y Z G39 A B C D E F H I J K L M N O P Q R S T U V W X Y Z G40 N X Y Z G41 N X Y Z G42 N X Y Z G45 E H N O P G59 A B C D E F H I J K L M N O P Q R S T U V W X Y Z G60 A B C I J K N R U V W X Y Z G62 F N Q S G66 N Q R W R7322416 G70 N G71 N G72 E H L N P U V W X Y Z G73 A B C D E F H I J K L M N O P Q R S T U V W X Y Z G74 A C E H I J N P R X Y Z G75 D E H N P X Z G79 A B C D E F H I J K L M N O P Q R S T U V W X Y Z G80 N G81 D F N P R V X Y Z G82 D F N P R V X Y Z G83 D F I J K N P R U W X Y Z G84 D F N P R X Y Z G85 D F N P R X Y Z G86 D F N P R X Y Z G89 N G90 A B C I J K N R U V W X Y Z G91 A B C I J K N R U V W X Y Z G92 N G94 C F N G97 N U V W X Y Z G99 A B C D E F H I J K L M N O P Q R S T U V W X Y Z 1.3.2 - FUNÇÕES NOS BLOCOS DE POSICIONAMENTO As funções a seguir podem aparecer num bloco de posicionamento e programam o movimento dos eixos, em cada direção ou em combinação com os demais. . X Y Z U V W I J K Cada uma destas funções podem estar em modo absoluto ou incremental. Basicamente, dimensões absolutas são distâncias do zero do programa ou ângulos a partir do eixo positivo de X. Dimensões incrementais são distâncias da localização atual ou ângulos a partir da linha do ponto de centro co-direcional a X na localização atual. R73224 17 O modo de cada função pode ser absoluto com o uso de G90 ou incremental com G91 (ver seções 2.3 e 2.4). Alternativamente, o modo de alguma função que esteja referenciada como absoluto pode ser forçado à incremental para o corrente bloco pelo uso de letras minúsculas. Veja capítulo 3 sobre especificações de como usar essas funções em cada bloco de posicionamento. Funções dos Eixos Lineares X, Y, Z, U, V, W Em geral, as funções X, Y, Z submetem oseixos da máquina a movimentos ao longo de um caminho linear. Estes serão os eixos comumente encontrados na maioria das aplicações e serão chamados eixos lineares. O movimento dos eixos lineares são programados em unidades de milímetros ou polegadas. No modo absoluto (especificado por G90 e referenciado com letras MAÍUSCULAS) os movimentos dos eixos lineares são programados a partir do “zero programa”. Movimentos lineares em absoluto são movimentos para coordenadas específicas em um sistema de coordenada estabelecido. No modo incremental (especificado por G91 ou referenciado por letras minúsculas) os movimentos dos eixos lineares são programados a partir de posição atual dos eixos. Eles determinam a direção e a distância do movimento ao longo de cada eixo. Funções de Posicionamento dos Eixos Rotacionais U, V e W Um eixo rotacional é aquele que descreve uma trajetória circular em torno de um eixo. Eixos rotacionais são frequentemente especificados por movimentos sobre os eixos lineares X, Y ou Z. Este manual assume que quando os eixos U, V e W são rotacionais: . o eixo U é rotacional sobre X . o eixo V é rotacional sobre Y . o eixo W é rotacional sobre Z Se for programado uma direção positiva para um eixo rotacional, este será no sentido anti- horário. Uma direção negativa será no sentido horário. Isto é assumido olhando-se na direção negativa do eixo linear associado com o eixo rotacional. Movimentos rotacionais são programados em unidades de grau (formato 3.3). Eixos rotacionais giram 360 graus, isto é, posição 0 e a posição 360 são as mesmas. Então a faixa normal de programação dos eixos rotacionais é de 0 a 359.999 graus. R7322418 Quando o movimento rotacional é feito no modo absoluto (G90), define-se a posição angular a partir de grau 0. Movimentos rotacionais em absoluto irão na direção do sinal do ângulo programado até 360 graus. Um movimento para - 90.0 graus é um movimento para 90 graus na direção negativa e um movimento para + 645.0 graus é um movimento para 285 graus na direção positiva, se nenhum sinal (+ ou -) preceder o número do ângulo, este é assumido como positivo. Importante: Para mover-se a 0 grau na direção negativadeve-se programar -360.000 uma vez que -0.000 será interpretado da mesma forma que + 0.000. Quando são feitos movimentos rotacionais no modo incremental (G91) define-se a direção e soma de movimentos em grau a partir da posição atual. No modo incremental, os eixos rotacionais podem mover-se mais que 360 graus em qualquer direção. O movimento dos eixos em avanço por rotação é definido através do bloco de dados G94. A função C neste bloco de dados informa ao controle a velocidade de avanço para os eixos rotacionais em acordo com a página Parâmetros de Controle (AMP). Se múltiplos eixos rotacionais são programados num mesmo bloco a velocidade de avanço aplica-se ao eixo que circulará a maior distância, aos outros eixos será aplicada uma velocidade de avanço tal que todos se posicionem ao mesmo tempo. Eixos Rotacionais e Lineares num mesmo Bloco de Dados Se for programado o movimento do eixo linear e do eixo rotacional num mesmo bloco, os movimentos iniciam e terminam ao mesmo tempo. A velocidade de avanço para blocos que possuem tanto movimentos rotacionais como Lineares será determinada pela mais lenta entre a velocidade de avanço Linear (F) aplicada aos movimentos Lineares contidos no bloco e a velocidade de avanço rotacional atual (especificada por G94); aplicada aos movimentos rotacionais contidos no bloco. Funções de Posição do Centro - I, J e K As funções I, J e K num bloco de posicionamento definem a localização de um centro. Esta posição central pode ser o centro de um arco, ou o centro de um posicionamento polar. Veja Capítulo 3 para maiores detalhes de como estas funções são utilizadas. 1.3.3 - FUNÇÃO F - VELOCIDADE DE AVANÇO Uma função F num bloco de dados especifica a velocidade de avanço para um eixo linear. A função F pode ter unidades de: . milímetros por minuto (mmpm, formato F4) . polegadas por minuto (ipm, formato F4.1) dependendo do modo de programação em efeito (métrico ou polegada). R73224 19 A função F é modal e como tal permanecerá em efeito até um outro F ser programado. A velocidade de avanço de movimentos lineares é a velocidade ao longo da distância ortogonal entre todos os eixos programados, isto é, o tempo para execução do bloco é a distância correspondente a raiz quadrada da somatória dos quadrados das distâncias dos eixos programados dividida pela velocidade de avanço programada. Programe a função F assumindo que a chave de Porcentagem de Avanço está em 100%. É possível variar a velocidade de avanço programada de modo a ajustá-la às condições de corte girando a chave de Porcentagem de avanço, quando o programa estiver sendo executado. O instalador do sistema atribuirá uma velocidade de avanço que o controle usará caso esta não seja programada. Pode-se ver esta velocidade de avanço na página STATUS do controle antes da execução do programa. BLOCO DIVIDIDO - FUNÇÃO D A função D (formato D3) é aquela que divide a distância programada em “n” segmentos. A função D admite um valor máximo de 255. IMPORTANTE: O ciclo fixo ativo não será executado na posição D0. (posição inicial). A função D pode ser usada para dividir movimentos lineares e circulares porém não movimentos rotacionais. Se o movimento é circular, o comando move em linha retas para os pontos divididos assim, não segue o contorno do círculo. Os pontos que separam os segmentos do movimento dividido pela função D podem ser posições onde deseja-se executar operações específicas do grupo dos auto ciclos. Acompanhe o exemplo: G81 Z-24. R-13. F120 - Ativa um ciclo de furar cuja profundidade é de 42mm com Va de 120mm/min. G00 X120. D6 - Movimento rápido em 120mm divididos em 6 segmentos equivalentes distantes. O ciclo de furar será executado a cada posicionamento. G80 - Cancela ciclo G81 G00 Z0 O0 - Move para Z0 em rápido cancelando o corretor “O”. M2 - Fim de programa. R7322420 O exemplo dado abaixo usa algumas funções que não foram tratados ainda, porém, veja nos próximos capítulos explicações sobre elas. Análise o resultado do programa: Se fosse desejado a execução do auto ciclo na posição inicial neste exemplo, seria possível usando uma das 3 técnicas: . programar X0 no bloco do auto ciclo G81. . programar G0 X0 # imediatamente após o bloco G81. . programar uma G29 # imediatamente após o bloco G81. 1.3.4 - FUNÇÕES MISCELÂNEAS - M As funções M (formato M2) definem as funções Miscelâneas. Elas são utilizadas para definir as ações tomadas pelo PAL (Aplicações Lógicas Programáveis). PAL é um programa que o controle executa, o qual controla algumas funções como troca de ferramenta, refrigerante ligado ou desligado, eixo árvore, etc. O instalador do controle programa o PAL para executar ações específicas quando encontrar um bloco de dados com um código M. Devido a muitas dessas funções M serem exclusivas de uma máquina particular, é impossível definir as atribuições específicas das funções M neste manual. Algumas funções M pré definidas para o controle, executam algumas ações específicas internamente e estas são descritas abaixo. Entretanto, a ação específica que estas funções M produzem, são determinadas de acordo com a máquina. M00 - Parada de Programa A função M00 causa a parada de execução do programa. Quando um bloco do programa contendo a função M00 é encontrado, a execução do programa é interrompida e a mensagem “PARADO” e “AGUARDANDO INICIO” será mostrada na tela. Pressione a tecla verde [CYCLE START], ou a tecla amarela [BLK/BLK], para continuar a execução do programa. Dependendo da programação do PAL, pode ser necessário executar certas funções antes que o controle permita a continuação da operação. A função M00 é ignorada pelo controle durante a execução em CHEGA RÁPIDO. R73224 21 M01 - Parada de Programa Opcional A função M01 e a função M00 produzem o mesmo efeito, subentendendo-se que já foi referenciado afunção [PARADA OPC.] na página REFER. TRABALHO. Se [PARADA OPC.] não foi referenciada, M01 é ignorada pelo controle. Em qualquer caso, M01 é ignorada pelo controle durante “TESTA RÁPIDO”. M02 - Fim de Programa A função M02 é usada para finalizar programa ou sub-programa. A função M02 deverá ser programada sozinha e no último bloco de dados do programa. Se o controle detecta a ausência da função M02 no programa, a execução interrompida e a mensagem “PROGRAMA — SEM M02” será mostrada no CRT. Qualquer outra função relatada no PAL associada com M02 são de responsabilidade do instalador. Ambas as funções M02 e M30 encerram o carregamento de programa, se forem imediatamente seguidas pelo caracter # (E.O.B.). M06 - Parada do Programa, Troca Manual de Ferramenta A função M06 produz o mesmo efeito que a função M00, porém ela é usada para gerar uma troca de ferramenta. Quando a função M06 é programada num bloco com movimento de eixos, a função M06 desliga o eixo árvore antes que o movimento seja executado (isto requer uma programação própria para o PAL - sob responsabilidade do instalador). A seguir é executado um movimento dos eixos para uma posição que seja conveniente para se efetuar a troca de ferramenta, após a troca de ferramenta, o próximo bloco no programa deverá retornar os eixos na posição de início de usinagem da peça e ligar o eixo árvore. No PAL padrão, se o eixo estava ligado, então o botão [CYCLE START] acionará o eixo. M30 - Fim de Programa A função M30 opera da mesma forma que a função M02. R7322422 Outras Funções M - PAL Padrão A página com as funções M (página CÓDIGOS M) do controle, traz o nome e o número das funções M programadas no PAL. Se o controle utilizado em sua máquina tem um dos programas padrões do PAL oferecidos pela ROMI, a página CÓDIGOS M será como a figura 1.4. CONTROLE EIXO ÁRVORE CONTROLE DO PROGRAMA TROCA GRUPO/MAGAZ M03 ROTAÇÃO DIREITA M00 PARADA DO PROG. M71 MAGAZINE 1 M04 ROTAÇÃO ESQUERDA M01 PARADA OPC. M72 MAGAZINE 2 M05 PARADA ÁRVORE M02 FIM DO PROG. M73 MAGAZINE 3 M30 FIM PROG./REBOB. M74 MAGAZINE 4 M06 TROCA DE FERR. PÁGINA 1 DE 1 > G 0 PRÓXIMA PÁG. 1.3.5 - RAMIFICAÇÕES EM PROGRAMA - FUNÇÕES N, H, E, L e P Esta seção descreve as 5 funções que podem ser usadas para especificar desvios dentro de um programa. Esses desvios podem ser usados para alterar e controlar a sequência de execução de seus programas. Um desvio transfere a execução de determinada etapa do programa para uma outra (por exemplo - uma sub-rotina) ou transfere a execução para outro programa (por exemplo, um sob- programa). Quando o controle termina a execução da etapa especifica pelo desvio, ele retorna para o bloco de dados que instruiu o desvio (exceto para uma função H que especifica um desvio incondicional) Função N Número de Sequência A função N (formato N4) programa um número de sequência. Ela identifica o bloco de dados no qual aparece. Não é necessário programar o número de sequência em todos os blocos de dados. Os números de sequência são usados para facilitar a análise do programa eles se tornam imprescindíveis, quando usados nas instruções de desvio especificadas pelas funções H e E. Os números de sequência podem ser colocados em qualquer ordem, porém recomenda-se usá- los em ordem ascendente em seu programa. É conveniente que a numeração seja em intervalos de 5 ou 10, permitindo assim inserir um bloco posteriormente, sem ter que renumerar os blocos novamente. R73224 23 Função P - Desvio Para Sub-Programa Todo programa ou sub-programa armazenado no controle deve ser identificado com um número “P” dentro de uma faixa de P1 à P250. A especificação do número do programa é feito usando a página EDIÇÃO PROGRAMA. Não existe diferença estrutural entre um programa e um sub-programa. A única, é que uma instrução de desvio chama um sub-programa para ser executado através de um programa. Uma função P (formato P3) num bloco de dados, especifica um desvio para um sub- programa armazenado no controle, exceto funções de auto ciclos (G81 - G86). Assim sendo, um sub-programa deve existir e ter um número correspondente ao especificado junto ao código P. O desvio ocorre após qualquer movimento programado num bloco de dados. Se for programado uma função P que não está armazenado na memória será exibida a mensagem “P*** NÃO CARREG (***)” na tela e a execução será interrompida. O número mostrado com P é o número do sub-programa programado e o número entre parênteses é o número do programa que chamou o sub-programa. A execução do sub-programa começa no seu primeiro bloco, a menos que seja programada uma função H com P (veja a função H a seguir e os exemplos). A execução do sub-programa termina com o bloco M02 do sub-programa, a menos que seja programada uma função E com P (veja função E a seguir e os exemplos). Os desvios para sub-programas podem ser feitos até 5 níveis. Por exemplo: Nível 0 P1 chama Nível 1 P2 chama Nível 2 P3 chama Nível 3 P4 chama Nível 4 P5 chama Nível 5 P6 chama No final da execução do sub-programa P6, a execução eventualmente retorna para o programa principal, P1. Se tentar-se programar mais de 5 níveis, a mensagem de erro “EXCES PROG ANINHADOS” aparecerá na tela. O controle checa prováveis erros em desvios para sub-programas. Quando o controle detecta um erro, a mensagem “EXCES PROG ANINHADOS” também é exibida na tela e a execução do programa é interrompida. Assim deve-se checar todos os programas usando TESTA RÁPIDO para então colocá-los para rodar em OPER AUTOMÁTICA. Isso permitirá a detecção de erros. R7322424 Os seguintes parâmetros se alterados pelo sub-programa, são restaurados e seu “status” original após terminar execução do sub-programa: . Coordenada absoluta (G90)/Incremental (G91) . Plano para interpolação circular (G17, G18, G19) . Imagem espelho (G30, G31) . Ciclos fixos (G75 - G85) . Auto rotinas (G22 - G29) . Velocidade de avanço (F) . O que resta do atual bloco para ser executado . Tempo de permanência (G04 com F) . Tipo de interpolação (rápida ou de trabalho) Importante: É impossível renumerar programas armazenados no controle, usando EDIÇÃO PROGRAMA. Ao renumerar um sub-programa, o controle não atualiza automaticamente o valor do número que o programa principal chama. Nesse caso, deve-se usar EDIÇÃO PROGRAMA para corrigir a instrução que desvia para o sub-programa. Função H Desvio/Chama Sub-Rotina A função H (formato H4) instrui o controle à desviar para o bloco que tem o número de sequência (função N) igual ao do função H. Na maioria dos casos o desvio é para o primeiro bloco de uma sub-rotina. O controle executa os blocos começando pelo número do bloco especificado juntamente com a função H e continua até encontrar um M02 ou o último bloco da sub-rotina especificado pela função E. Exemplo de desvio usando apenas a função H: Desvio para o bloco N50 e continua N10 H50 # N20 ....... N30 ....... N40 ....... N50 ....... R73224 25 Função E - Fim de Uma Sequência A função E (formato E4) especifica o bloco final da sub-rotina. O último bloco da sub- rotina a ser executado será o anterior ao especificado pela função E. Exemplos de Desvios e Ramificações Os exemplos seguintes ilustram como usar os desvios e ramificações em seus programas. Exemplo usando H e E para chamar uma sub-rotina: Desvia para o bloco N30 e executa até o bloco anterior ao N60, retornando entÃo para o bloco posterior ao que chamou a sub-rotina. N10 H30 E60 # N20 N30 N40 N50 # N60 Exemplo de desvio usando H e E para chamar sub-rotina Desvia para o bloco com N40 e executa até o bloco anterior ao fim do programa, retornando então até o bloco posterior ao que chamou a sub-rotina. N10 H40 E # N20 N30 N40 N50 N60 N70 M02# R7322426 Exemplo de desvio usando P para chamar um sub-programa Desvia para o programa armazenado sob o número 5 e executa até seu final, retornando então ao bloco seguinte ao bloco que chamou o sub-programa. P5 N10 P5 # N1 N20 N2 N3 N30 N4 N5 N40 N6 M02# N50 Exemplo usando o sub-programa5 e executa do N2 até o fim do sub-programa, retornando ao bloco seguinte ao que chamou a sub-rotina. P5 N10 P5 H2 # N1 N20 N2 N3 N30 N4 N40 N5 M02# N50 Exemplo usando P e E para chamar uma sub-rotina Desvia para o sub-programa 5 e executa do início até o bloco anterior ao N4, retornando então ao bloco seguinte ao que chamou a sub-rotina. P5 N10 P5 E4 # N1 N2 N20 N3# N30 N4 N40 N5 N50 . . . R73224 27 Exemplo para o sub-programa 5 e executa do N2 até o bloco anterior ao N5, retornando ao bloco seguinte ao que chamou a sub-rotina. P5 N10 P5 H2 E5 # N1 N20 N2 N3 N30 N4 N40 N5 N50 . . . Função L - Repetição de Bloco Uma função L (formato L3) num bloco de dados faz com que o bloco de dados seja executado L vezes. A função L pode ter um valor de 0 a 255, e pode ser usada para 5 níveis. . Para repetir um movimento de eixo: G01 X-25. L4 # : assume modo incremental (G91) e executa um movimento de 25mm na direção negativa do eixo X um total de quatro vezes. . Para repetir um sub-programa: P5 L4 # : executa o programa 5 um total de quatro vezes. . Para repetir uma sub-rotina: H100 E200 L4 #: executa a sub-rotina do bloco N100 até o bloco N200 um total de quatro vezes. Se movimento dos eixos são incluídos no bloco que programa uma repetição de sub-rotina ou sub-programa, eles são executados primeiro e a seguir é executada a sub-rotina ou o sub-programa. R7322428 1.3.6 - VELOCIDADE DE ROTAÇÃO DO EIXO ÁRVORE - FUNÇÃO S A função S (formato S2 ou S4 dependendo do PAL) define a velocidade de rotação do eixo- árvore, geralmente em RPM, ou como uma porcentagem da máxima velocidade do eixo- árvore. Uma função do PAL é que está controlando o eixo-árvore da máquina. Para maiores detalhes de operação e programação verificar com o instalador do sistema. Esta seção assume que está sendo usado um dos PALs padrões disponíveis da ROMI. O valor da função S é modal. Uma vez que um valor é programado ele permanece até que seja mudado. Quando o sentido de rotação do eixo-árvore é trocado em um programa (usando M03 - sentido horário, ou M04 - sentido anti-horário) o valor atual da função S é assumido para a velocidade de rotação da árvore. Se o eixo-árvore está parado (eixo sem rotação) e programa-se a função M03 (ou M04), o eixo permanecerá parado. Para que o eixo girasse seria necessário que se tivesse programado uma função S antes da função M03 (ou M04). Pode-se modificar o valor da rotação programada usando-se a chave variadora de rotação do painel de comando. Esta chave normalmente varia de 50% até 125% a velocidade programada. Pode-se ver a velocidade de rotação atual do eixo na página STATUS do controle. 1.3.7 - SELEÇÃO DO CORRETOR DE FERRAMENTA E DE DISTÂNCIA FUNÇÃO O A função O (formato 02), quando programada em um bloco que não contenha a função G45, seleciona o corretor da ferramenta. Para selecionar o corretor da ferramenta, deve-se programar o número (1 a 96) do corretor no qual foi armazenada o valor do corretor da ferramenta na página REFER. FERRAMENTA do controle. Por exemplo: O3# Este corretor seleciona os valores do comprimento e diâmetro armazenados no corretor 3 da página REFER. FERRAMENTA. O valor do comprimento é usado para compensar o movimento do eixo Z com relação ao zero do programa. O valor do diâmetro é automaticamente dividido para fornecer o valor do raio que é usado na compensação do raio da ferramenta. Nenhum movimento é feito quando a função O é executada, porém, o valor da compensação é combinado com o próximo movimento dos eixos e torna-se ativo naquele ponto. Por exemplo, para ativar o corretor do comprimento programa-se um movimento no eixo Z após o bloco que contém a função O. Para que o valor do diâmetro (raio) seja totalmente empregado, um movimento deve ser programado para o eixo que irá usar a compensação. R73224 29 O número do corretor de ferramenta que está ativa no programa é mostrado na página STATUS do controle no espaço próximo a “O”. Para cancelar o corretor de ferramenta programa-se O 0#. A compensação é removida com o próximo movimento do eixo. Quando a função O é usada junto com uma função G45, ela seleciona um corretor de posicionamento (1 a 96) da página CORRETOR FIX. Por exemplo, um bloco G45 01 # chama o endereço de corretor número 1. Corretores de posicionamento são usados para deslocar a origem para um determinado ponto desejado. Eles movem o ponto de referência do zero programa pela quantia especificada na página CORRETOR FIX., no entanto, nenhum movimento ocorre quando o bloco com a função O de corretor de posicionamento é executada. A compensação é combinada com o próximo movimento dos eixos afetados pela compensação e torna-se ativa neste ponto programado pelo programa. Para cancelar o corretor de distância programe um bloco contendo G45 O0#. O número do corretor ativo é mostrado na página STATUS do controle em frente a “FIX”. 1.3.8 - SELEÇÃO DE FERRAMENTA - FUNÇÃO T A função T (formato T2) permite a seleção de ferramenta. Os dois dígitos numéricos junto a letra T, identificam a posição da ferramenta no magazine. O limite superior da função T é determinado pela capacidade do magazine ou do sistema de seleção. O controle necessita de um PAL próprio para o controle do magazine. Deve-se checar junto ao instalador os detalhes de programação e operação. É importante frisar que a função T não executa a operação de troca de ferramenta mas, apenas seleciona a ferramenta desejada. Para executar a troca de ferramenta deve-se programar a função M06 após a função T. Outras funções podem ser necessárias para usar o magazine. Por exemplo, uma função que leve a ferramenta em uso para uma posição longe da região de trabalho. Por isso deve conhecer bem os requisitos operacionais da máquina para uma programação correta. Quando a função T é programada seu valor é mostrado na página “STATUS” junto ao endereço “T”. R7322430 CAPÍTULO 2 - CONTROLE DE COORDENADAS 2.0- DESCRIÇÃO DO CAPÍTULO Este capítulo cobre o grupo das funções G, chamando controle de coordenadas. Essas funções estarão normalmente no início do programa porque definem como o controle interpreta o sistema de coordenadas da máquina. Após ler este capítulo o usuário saberá como: . Definir sistema de unidade (polegada ou milímetro). . Definir sistema de coordenada (absoluta ou incremental). . Referenciar origem temporário. . Escalar um sistema de coordenadas. . Rotacionar um sistema de coordenadas. . Cancelamento de referência temporário. 2.1 - FUNÇÃO G70 - SISTEMA DE UNIDADE POLEGADA Um bloco G70 no início do programa instruir controle para usar valores em polegadas para movimentos dos eixos, avanços, planos de rápido e correções. 2.2 - FUNÇÃO G71 - SISTEMA DE UNIDADE MILÍMETRO Um bloco G71 no início do programa referencia unidades métricas para todos os movimentos dos eixos, avanços, plano de rápidos e correções. Importante: O controle não converte dimensões métricas para polegadas ou vice-versa. Não se pode misturar operação em métrico com polegadas num mesmo programa assim, o programador deve certificar-se de que todas as dimensões programadas correspondem ao modo dimensional que foi referenciado. O controle assume modo em polegadas (G70) ou em métrico (G71) ao ser ligado, de acordo como foi determinado em AMP pelo instalador do sistema. R73224 31 As funções G70 e G71 devem ser programadas em um bloco exclusivo e antes de qualquer movimento do programa, são modais e cancelam-se mutuamente. Uma função G70 irá testar o modo “POLEG/MÉTRICO” que foi selecionado pelo operador. Se o mesmo não foi apropriadamente selecionado, o programa será suspenso com a mensagem de erro: TROCA POLEG/MÉTRICO. 2.3 - MODO DE PROGRAMACÃO EM ABSOLUTO G90 No modo de programacão em absoluto as posicões dos eixos são medidas da posição Zero programa estabelecido. Outra alternativa para o modo absoluto é o modo incremental (G91) O comando assume o modo absoluto para todos os eixos e funções de posicionamento quando for ligado e no início de qualquer programa principal. Asfunções que usam o modo absoluto são: X Y Z U V W I J K A B C R Pode-se selecionar quais funções estarão em absoluto e quais estarão e incremental. Programando-se G90 sozinho num bloco define-se modo absoluto para todas as funções de posicionamento I J K A B C R não são eixos mas são afetados por G90 Programando G90 em apenas algumas funções selecionadas define-se modo absoluto apenas para aquelas funções. Exemplo : G90 define modo absoluto para todas as funções de posicionamento " " " G91 define modo incremental para todas funções de posicionamento " " G90 X Y define modo absoluto apenas para as funções X e Y mantendo as demais em incremental devido ao bloco anterior. R7322432 Pode-se visualizar quais as funções que estão em absoluto ou incremental observando a página ( Status ) do comando. Funções que aparecem em letras maiúsculas , num dado instante, estão em absoluto, e funções emletras minúsculas estão em incremental . Ainda funções em absolutos podem ser transformados para incrementalno bloco corrente digitando-se em letras minúsculas. Por exemplo: G90 Define modo absoluto para todas as funções de posicionamento G0 X1. y.5 Move X para coordenada 1.0, move Y ( incremental ) de .5 da sua posição atual. 2.4- MODO DE PROGRAMAÇÃO INCREMENTAL Ver seção 2.3 2.5 REFERÊNCIA ORIGEM TEMPORÁRIA G92 A funçào G92 permite definir ( ou redefinir ) no meio do programa a posiçào da origem das coordenadas absolutas ( zero programa ). Pode-se através dela , estabelecer o zero programa numa posiçào diferente do zero programa préviamente referenciado pelo operador. Para definir um zero programa, coloca-se um bloco G92 juntamente com as posiç•es atuais dos eixos dados em relaçào ao zero programa desejados. Por exemplo: G71 sistema métrico " " " " G92 X 10. Y 20. Z-5. define a posição atual dos eixos nas coordenadas indicadas com relação ao zero programa. Dessa forma o zero programa fica definido num ponto localizado a 10 mm no sentido negativo de x , 20 mm no sentido negativo de Y e 5 mm no sentido positivo de Z em relação à posição atual. R73224 33 De outra maneira, pode-se mover para a posição onde se deseja a origem e então definir essa posição como sendo o Zero Programa. Por exemplo: G99 Cancela função G92 G00 X -50. Y-30. Desloca em rápido para essas coordenadas a partir do zero programa G92 X Y Define o Zero programa na posição atual para os movimento absolutos subsequentes Pode-se também definir o zero programa para os eixos U V W,apenas incluindo-os no bloco G92. O Zero programa definido com G92 é modal e é cancelado por G99 ou por outro G92. A função G99 retorna a origem de coordenadas para a posição do Zero Programa préviamente definido. 2.6 - REFERÊNCIA VA P/ EIXO ROTACIONAL G94 A função G94 permite que se definam avanços em unidades de deslocamento por unidade de tempo para movimentos rotacionais . 2.6.1 - TELA PARA ENTRADA DE DADOS A tabela a seguir descreve as funções que podem ser programadas em conjunto com a função G94. prompt descrição avanço p/ temp G94 avanço rot (f) especifica o avanço para os movimentos rotacionais que virão depois dela no programa. Esse valor permanece em efeito até que um novo valor de F seja programado em outro bloco com G94 . Deve-se notar que o instalador do sistema define o avanço rotacional programado em AMP ( Parâmetros Ajustáveis de Máquina) como revoluções por minuto (RPM), Graus por minuto (GPM) ou Graus por segundo (GPS). 2.7 - CANCELAMENTO DA REFERÊNCIA TEMPORÁRIA G99 A função G99 remove o efeito de todos os G92 anteriores.G99 define a origem do sistema de coordenadas absolutas na posiçào Zero Programa referenciada pelo operador antes do início da execução do programa . R7322434 2.8 - ROTAÇÃO G74 Um bloco G74 permite-lhe rotacionar um sistema de coordenadas no plano XY de subsequentes movimentos programados. A rotação se dá num centro e ângulo especificado junto com a função. Esta função é usada para rotacionar um sistema de coordenada e pode ser usada para reproduzir partes ou peças que tem simetria radial. 2.8.1 - ENDEREÇAMENTO PARA G74 A tabela abaixo descreve o endereçamento que o comando sugere para o G74. Endereçamento Função Rotação G74 Centro de rotação em X (I) “I” especifica a posição de rotação em X. No modo absoluto (G90) o valor de “I” é a distância X do centro medido da origem. No modo incremental (G91) “I” será a distância X medida da posição atual até o centro de rotação. Se “I” não é programado o último é assumido e, se não havia nenhum “I” programado o comando assume I = 0. Centro de rotação em Y (J) “J” especifica a posição de rotação em Y. No modo absoluto (G90) o valor de “J” é a distância Y do centro medido da origem. No modo incremental (G91) “J” será a distância Y medida da posição atual até o centro de rotação. Se “J” não é programado o último é assumido e, se não havia nenhum “J” programado o comando assume J = 0. Ângulo Rotação (C) “C” específica o ângulo de rotação em graus. A direção anti-horária é positivo, horária é negativo. O ângulo “C” tem seu vértice no centro de rotação especificado por I e J. Quando “C” é absoluto, o mesmo é medido da linha que passa pelo centro de rotação na direção positiva de X. R73224 35 Quando “C” é incremental, o mesmo é medido de uma linha imaginária que extende-se do centro I e J passando pela posição corrente. Se “C” não é programado neste bloco, o último “C” programado é assumido pelo comando. Se não há nenhum, o valor de 0 (zero) é assumido para “C”. Importante: O comando não exibe na tabela os endereços abaixo, mas eles podem ser programados no bloco G74. . X — programa um movimento X que é executado após sistema de coordenada ter sido rotacionado de acordo com I, J e C. . Y — idem ao anterior (eixo Y). . P — programa o número do subprograma que será executado após a rotação e movimento de um dos eixos (X ou Y) ter ocorrido. . H — programa o número da sequência inicial de uma sub-rotina que será executada após rotação e movimento de eixos ter ocorrido. . E — programa o número da sequência final da sub-rotina. . L — programa um número de repetições para o bloco G74. 2.8.2 - CANCELAMENTO ROTAÇÃO Para cancelar o efeito da rotação, programa-se um bloco somente com G74. 2.8.3 - ROTAÇÃO SOBRE COORDENADA ZERO E NÃO ZERO A figura abaixo mostra o efeito da rotação sobre o zero programa (I0, J0) e sobre um ponto diferente de zero (I70, J50). 2.8.4 - MOVIMENTO XY NO BLOCO G74 ROTAÇÃO SOBRE UM PONTO DIFERENTE DE ZERO ROTAÇÃO SOBRE O ZERO PROGRAMA R7322436 Quando movimentos X e Y são incluídos no bloco G74, especifica movimentos que deverão ser rotacionados, considerando I, J e C. Usar este recurso para pre-posicionar no ponto inicial de alguma operação. 2.8.5 - REPETINDO UM BLOCO G74- EFEITO DE I,J E C EM ABSOLUTO/ INCREMENTAL Quando o ângulo “C” é absoluto no bloco G74, o sistema de coordenada rotacionará somente para a posição angular indicada. Se programar a função “L” para repetir o bloco G74, a rotação ocorrerá somente uma vez. Entretanto, se “C” é incremental no bloco G74 e a função “L” estiver presente, a rotação ocorrerá cada vez que o bloco é executado. Quando I e J são absolutos no bloco G74, especifica rotação somente sobre um ponto. Se o bloco é repetido, o centro de rotação não é mudado. Quando um bloco G74 tem um I e J incremental e é repetido, o centro de rotação é mudado cada vez que o bloco é executado. 2.8.6 - BLOCO G74 COM SUB-PROGRAMAS E SUB-ROTINAS Quando sub-programa ou sub-rotina é programado através de P, H ou E no bloco G74, e a rotação é sobre uma posição diferente de zero, os movimentos no sub-programa ou sub- rotina devem ser: . Todos movimentos absolutos ou . Um perfil fechado de movimentos incrementais. Nota: Perfil fechado é aquele que inicia e termina no mesmo ponto. Se escolhido programação de movimentos incrementais e não se tem um perfil fechado, deve-se-á programar movimentos X e Y absoluto nobloco G74 para localizar apropriadamente o ponto inicial do sub-programa ou sub-rotina. Este é o caso específico de desejar-se repetir um bloco G74 que chama sub-programa ou sub-rotina. R73224 37 2.8.7 - FUNÇÃO G74 EXEMPLOS O exemplo a seguir mostra a programação da função G74 usada num sub-programa. INÍCIO PROGRAMA PRINCIPAL Bloco de dados Comentário ; Rot. Furos Nome do programa principal. G99 # Sequência de blocos da etapa de inicialização. ; G17 # ; Troca de ferramenta Sequência de blocos da etapa de troca de ferramenta. G81 Z-15.R-5.F100# Referencia o ciclo de furar. G00 X25.Y0.P2 Rápido para X25.Y0. do programa zero, ; SUB PROG # executa o ciclo ativo e desvia para o sub-programa P2. SUB-PROGRAMA P2 Bloco de dados Comentário ; SUB-PROG Nome do programa 2 armazenado na memória. G91 X # Referencia coordenada incremental para o eixo X. X15. L3 # Executa 3 movimentos de X15. em rápido. M2 # Fim do sub-programa. R7322438 CONTINUAÇÃO DO PROGRAMA PRINCIPAL Bloco de dados Comentário G91 C # Referencia “C” para incremental lembre-se que “X” está ainda absoluto no programa principal. G74 I0 J0 C45. X25.Y P2 L7 # Centro de rotação é absoluto I0, J0, ângulo de rotação é incremental C45., posição de referência é absoluta X25. Y0 no sistema rotacionado, a execução será desviada para o sub-programa P2 e o bloco repetido 7 vezes. G74 Cancela a rotação. G80 Cancela o auto-ciclo G81. G0 Z0 O0 M02 Posiciona rápido para Z0, cancela o corretor e finda o programa. O exemplo a seguir mostra a programação da função G74 num sub-programa rotacionando um perfil fechado. R73224 39 PROGRAMA PRINCIPAL Bloco de dados Comentário ; Rot. Perfil # Nome do programa principal. G99 # Sequência de blocos da etapa de inicialização. G17# ; Troca de ferram. Sequência de blocos da etapa de troca de ferramenta. G91 C# Referência “C” para incremental. G74 I0 J0 C60. Rotação sobre I0 J0, abertura angular de C60, incremental,posição X6.163 Y13.675 de referência é absoluta em X6.163 Y13.675 no sistema rotacionado, P2 L6 # a execução é desviada para o sub-programa P2 e o bloco repetido 6 vezes. SUB PROGRAMA P2 Bloco de dados Comentário ; SUB-PROG # Nome do programa 2. G91 # Referencia sistema incremental para todos os eixos. G3 I-6.163 J-13.675 X-12.326 Y0 # Move em arco de A para B. X-12.524 Y21.691 # Move de B para C. G2 X37.374 Y0 I18.687 J-35.366# Move em arco de C para D. X-12.524 Y-21.691# Move de D para A. G0 Z0 # Move rápido para Z0. M2 # Fim de sub-programa. PONTO A = X6.163 Y13.675 R7322440 CONTINUAÇÃO DO PROGRAMA PRINCIPAL Bloco de dados Comentário G74 # Cancela a rotação. G0 Z0 O0 M2 # Posiciona rápido para Z0, cancela o corretor e finda o programa. CAPÍTULO 3 - POSICIONAMENTO E TEMPO DE ESPERA 3.0 -DESCRIÇÃO DO CAPÍTULO Neste capítulo será visto o grupo das funções G que definem o posicionamento e o tempo de espera (“dwell time”). Após a leitura deste capítulo, o usuário saberá: . o que são interpolações linear e circular; . quais funções podem ser usadas nos blocos de posicionamento; . como programar o tempo de espera. 3.1 - FUNÇÕES G DE POSICIONAMENTO Há cinco funções G que podem ser usadas para definir o bloco de dados que posicionam os eixos das máquinas. Outras funções G podem definir bloco de dados que produzem os tipos básicos de posicionamento que são mais frequentemente utilizados. 3.1.1 - FUNÇÕES G DE INTERPOLAÇÃO LINEAR As funções G seguintes definem blocos que movem os eixos da máquina ao longo de trajetórias lineares. Isto é chamado interpolação linear visto que o Controle coordena o movimento dos eixos em separado para produzirem movimentos ponto a ponto. As funções G para movimentação ao longo da trajetória linear são (ver seção 3.4): R73224 41 . G00 Modo de posicionamento em rápido, faz os eixos se moverem com um avanço rápido definido e fixado pelo instalador. . G01 Modo de posicionamento linear com avanço de trabalho, faz os eixos moverem-se a um avanço programado ao longo de uma trajetória contínua. . G73 Posicionamento ponto a ponto faz com que os eixos movam-se a uma velocidade de avanço programada, ao longo de uma linha reta, ponto a ponto. O controle esperará por um sinal “em posição”, antes de continuar com o próximo movimento programado. Importante: A função G73 normalmente é listada no grupo de Controle de Coordenadas, mas o conceito de programação desta função está contido neste capítulo. 3.1.2 - FUNÇÕES G DE INTERPOLAÇÃO CIRCULAR O controle usa duas funções G para produzir trajetórias circulares, arcos, com movimento de dois eixos simultaneamente. Isto é chamado interpolação circular porque o Controle coordena movimentos separados dos eixos para produzir uma arco. O arco é produzido fazendo-se uma série de segmentos retos muito pequenos entre pontos ao longo do arco. As funções G que definem a interpolação circular são (ver seção 3.5): . G02 Interpolação circular no sentido horário, faz dois eixos moverem-se ao longo de um arco na direção horária. . G03 Interpolação circular no sentido anti-horário, faz dois eixos moverem-se ao longo de um arco na direção anti-horária. R7322442 3.1.3 - FUNÇÕES DE EIXOS EM BLOCOS DE POSICIONAMENTO As seguintes funções podem aparecer em blocos de posicionamento para definirem movimento. Outras funções podem também ser usadas para determinar outras condições e funções. Elas programam o movimento dos eixos, podendo ser individual ou em conjunto uma com as outras. Estas funções de eixos são: X Y Z U V W I J K A C R Nota: As funções A, C e R referem-se a coordenadas polares e serão tratadas no Manual de Programação Avançada. . Funções de Eixos Lineares As funções X, Y e Z representam os eixos lineares padrões, as quais programam posições ao longo de trajetórias lineares. O Controle pode coordenar o movimento de dois destes eixos para produzir trajetória em forma de arco de círculo. As unidades de programação destas funções podem ser em polegadas (G70) ou milímetros (G71). . Funções de Eixos Secundários - Linear ou Rotacional O instalador do sistema deve ter dado condições de serem usados até 3 eixos adicionais: U, V e W. Estes eixos podem ser lineares, caso em que são usualmente paralelos em alguma combinação com os eixos X, Y e Z, respectivamente. Estes eixos não podem ser usados para produzir trajetórias programadas ao longo de um arco, e portanto, não podem ser programados em blocos com G02 e G03. . Funções I, J e K As funções I, J e K em blocos de posicionamento programam o centro do movimento. São usados para localizar o centro do arco para os eixos X, Y e Z, respectivamente. Estas funções são também utilizadas para posicionamento polar. 3.2 - VELOCIDADE DE AVANÇO Há dois modos de se estabelecer os avanços em blocos de posicionamento: um por avanço aplicados em eixos lineares e um para avanços aplicados em eixos rotacionais. R73224 43 3.2.1 - AVANÇOS LINEARES - FUNÇÃO F Uma função F num bloco de posicionamento programa um avanço para os movimentos dos eixos lineares. As unidades em que a função F é programada são: . Polegadas por minuto (pol/min, formato F4.1) no modo G70. . Milímetro por minuto (mm/nin, formato F5) no modo G71. Avanços para interpolação linear e circular são vetores avanço, isto é, todos eixos movem- se simultaneamente à velocidades individuais de modo que a velocidade ao longo da trajetória efetiva é igual à velocidade F programada. Um avanço, uma vez programado, é modal. Ele aplica-se a todos os blocos de posicionamento que venham depois dele no programa, a menos que seja programado um novo valor de F. 3.3 - INTERPOLAÇÃO LINEAR - G00, G01 E G73 As funções G que definem blocos de dados para interpolação linear movimentam um ou mais eixos ponto a ponto ao longo de trajetórias lineares. O movimento programado se inicia na posição atual dos eixos e termina na posição programada no bloco. Os eixos iniciam e terminam o movimento ao mesmo tempo. . G00 Informa aos eixos para se movimentarem aolongo de uma linha reta até o ponto programado com a velocidade rápido implantada no sistema. Quando os eixos alcançam seus destinos o erro de posicionamento do servo, deverá estar dentro dos limites pré- determinados (“em posição”) antes de ser iniciado o próximo movimento. A função G00 é modal e cancela G01 e G73. . G01 Informa aos eixos para se movimentarem ao longo de uma linha reta a uma velocidade específica programada com uma função F. Pode-se modificar a velocidade de avanço atual usando-se a chave variadora de avanço. Quando um movimento de um eixo rotacional é programado em um bloco de dados, este iniciará e terminará simultaneamente com quaisquer movimento linear programado no mesmo bloco de dados. A função G01 é modal e cancela G00 e G73. Ao acionar-se a máquina, o Controle assume o modo G01. . G73 Informa aos eixos para se movimentarem ao longo de uma linha reta com uma velocidade específica programada com uma função F. Ela é similar ao modo G01, exceto que o Controle espera um sinal “em posição” antes de continuar com o próximo movimento. Isto elimina o arrendondamento de contorno quando se deseja ter cantos vivos em movimentos consecutivos em torno de uma peça. A função G73 é modal e cancela G00 e G01. R7322444 3.3.1 - TELA PARA ENTRADA DE DADOS A tabela a seguir descreve as funções que o Controle possui (os “prompts”) para G00, G01 e G73. Somente G00 é mostrado, mas os “prompts” são idênticos para as funções G01 e G73. Note que somente os eixos permitidos pelo Controle é que são mostrados na tela PROMPT DESCRIÇÃO MOV RAPIDO G00 X PTO FINAL X “X” informa o ponto final do movimento para o eixo linear X. A função X pode ser absoluta (G90) ou incremental (G91). Quando X é absoluto, ele informa a coordenada do ponto final no eixo X medida da origem referenciada. Quando X é incremental, ele informa a distância e a direção ao longo do eixo X, da posição atual até o ponto final. Y PTO FINAL Y “Y” informa o ponto final do movimento para o eixo linear Y. A função Y pode ser absoluta (G90) ou incremental (G91). Quando Y é absoluto, ele informa a coordenada do ponto final no eixo Y medida da origem referenciada. Quando Y é incremental, ele informa a distância e a direção ao longo do eixo Y, da posição atual até o ponto final. Z PTO FINAL Z “Z” informa o ponto final do movimento para o eixo Z. A função Z pode ser absoluta (G90) ou incremental (G91). Quando Z é absoluto, ele informa a coordenada do ponto final no eixo Z medida da origem referenciada. Quando Z é incremental, ele informa a distância e a direção ao longo do eixo Z, da posição atual até o ponto final. U PTO FINAL U “U” informa o ponto final do movimento para o eixo U, que pode ser linear ou rotativo. a função U pode ser (G90) ou incremental (G91). Quando U é absoluto, ele informa a coordenada do ponto final no eixo U, medida da origem referenciada. Quando U é incremental, ele informa a distância e a direção ao longo do eixo U, da posição atual até ao ponto final. “COMP” POLAR R Comprimento medido do centro do movimento polar ao ponto final desejado. Usado somente para blocos com posicionamento polar. ÂNGULO INICIAL A Ângulo do próximo movimento polar medido da direção positiva de X até a linha compreendida entre o ponto final e o vértice (posição XY atual) o vértice do ângulo está situado na posição atual dos eixos. R73224 45 ÂNGULO POLAR C Ângulo cujo vértice está num ponto de centro em posicionamento polar. Medido da direção positiva de “X” até a linha compreendida entre o ponto final e o vértice (ponto de centro com posição diferente do “XY” atual). X POLAR CENTR I Coordenada “X” do zero programa ao centro do posicionamento polar. Y POLAR CENTR J Coordenada “Y” do zero programa ao centro do posicionamento polar. 3.3.2 - INTERPOLAÇÃO LINEAR PADRÃO A interpolação linear padrão combina o movimento de até 6 eixos. Todos os eixos especificados no bloco de dados movimentam e param ao mesmo tempo, e se movimentam a uma velocidade de avanço especificado com a função F (a menos que G00 seja programada, onde o avanço é em rápido). Avanços para eixos rotativos são especificados com G94 e uma função C. A seguir é dado um exemplo para ajudar no entendimento de interpolação linear. Bloco de dados Comentário ; Posição # . Bloco de comentário que tem o nome do programa. G99 # . Cancela qualquer definição anterior do Zero Programa e o estabelece no Zero Máquina. G90 # . Estabelece o sistema absoluto de coordenada. G00 X0 Y0 Z0 W0 # . Estabelece posicionamento rápido com função G00, e move- se até a posição zero da máquina (será assumido, para o nosso exemplo, que o zero máquina é algum lugar no meio do curso da máquina). X-1. Y-2. # . Movimento em rápido (pois G00 é modal) para a posição X- 1.Y-2. do zero da máquina. R7322446 G92 X0 Y0 Z0 W0 # . Determina a posição atual como zero do programa, W (rotacional neste exemplo) é definido como zero neste bloco. C94 C10. # . Define velocidade de avanço para eixos rotacionais (neste exemplo, 10 dps, graus por segundo. G01 X2.F760. # . Define modo de interpolação linear (G01) e move até a coordenada X2. do zero do programa, com velocidade de avanço de 760 mm/ min. Velocidade de avanço linear é modal. W20. # . Move o eixo W em 20 no sentido positivo de giro (sentido anti- horário) do zero do programa a 10 dps. O modo de interpretação é G01 como definido anteriormente. Y-2.Z-1. # . Move até as coordenadas Y-2. Z-1. do zero do programa, no modo G01 e a 760 mm/min. G73 X-2.Y2.F1270 # . Altera o modo para G73, o avanço é agora 1270 mm/min e movimenta para X-2.Y2.Z-1. do zero do programa e espera por “inposition”. G91 # . Define o sistema de coordenadas incremental para todos os eixos. Y-2.W20. # . Movimento incremental simultâneo para Y e W, ou seja, ambos os eixos iniciam e param o movimento ao mesmo tempo. O avanço para o eixo Y é 1270 mm/min e o avanço para o eixo rotacional W será calculado pelo controle em função do avanço linear (F1270). Se o valor calculado for maior que o avanço em rápido para o eixo W, o avanço linear será reduzido de tal maneira que o eixo W possa ser movimentado com o seu máximo avanço e o modo ativo ainda é o G73. G00 # . Define o modo de posicionamento em rápido. G90 # . Define o modo de programação absoluto. G99 X0 Y0 Z0 W0 # . Retorna o Zero Programa para o Zero Máquina e desloca em rápido para esta posição. M02 # . Fim de programa. R73224 47 3.3.3 - POSICIONAMENTO POLAR LINEAR Você pode programar movimentos lineares (G00, G01 e G73) usando posicionamento polar. Em movimento linear polar use as funções R, A ou C com várias combinações. R - Especifica um comprimento polar. Quando R for absoluto, ele informa um comprimento medido do centro inicial polar do movimento ao ponto final desejado. Quando R for incremental, ele informa um comprimento polar medido da posição atual dos eixos até o ponto final desejado. A - Especifica o ângulo do próximo movimento polar. O vértice do ângulo A está situado na posição atual da ferramenta e um ângulo positivo indica o sentido anti-horário. Quando A for absoluto, este ângulo é medido da linha positiva de X partindo da posição atual da ferramenta. Quando A for incremental, este ângulo é medido de uma linha imaginária que se prolonga do movimento prévio. C - Indica o ângulo cujo vértice está num ponto de centro em posicionamento polar. Um ângulo positivo indica o sentido anti-horário. Quando for absoluto o ângulo C é medido a partir da linha positiva do eixo X até o ponto final e o vértice é o ponto de centro polar diferente da posição atual da ferramenta. Quando o ângulo C for incremental ele é medido a partir de uma linha imaginária que sai do centro polar e vai até a posição atual da ferramenta. Existem 7 combinações possíveis que podemos usar para programação linear polar: . R . C . RA . RC . RIJ . CIJ . RCIJ A seguir, veremos cada situação detalhadamente. R7322448 3.3.4- POSICIONAMENTO POLAR SOMENTE COM R Quando for programado somente a função “R” para