Autor Tópico: Programação paramétrica:exemplos(5)  (Lida 4588 vezes)

Description:

0 Membros e 1 Visitante estão vendo este tópico.

Offline badade

  • Novato
  • *
  • Posts: 65
  • Sexo: Masculino
  • GUIA CNC
  • Cidade - UF: Varese
  • Nome:: Pietro
  • Profissão: Programador cnc
Programação paramétrica:exemplos(5)
« Online: 04 de Novembro de 2012, 21:03 »
A programação paramétrica torna possível a realização de programas de qualquer nível, do mais simples aos mais complexos. Às vezes, estamos tentados a escrever programas complexos nos esquecendo que a base da paramétrica aprende-se melhor com programas simples. E' bom partir enfrentando problemas comuns, você deve se familiarizar com a lógica, e experimentando, você vai aprendendo o uso adequado e, portanto, a capacidade de escrever qualquer tipo de programa. Então eu proponho exercícios e reflexões com o simples objetivo de apresentar esses conceitos partindo de problemas comuns. Uma vez compreendidos os conceitos, os usaremos para criar funções especificas e mais complexas. Uma maneira fácil de aprender a programação paramétrica consiste em transformar as operações comuns em programas paramétricos ou macros. Pense no trabalho diário, quero dizer aquele repetitivo, e o transforme em programa paramétrico! Um programador executa diferentes usinagens repetitivas: perfuração, corte interno e externo de um círculo, chanfros, perfis ... são ótimos exercícios para aprender. Afinal, um programa complexo nada mais é do que a aplicação dessas simples ideias. Então, hoje vamos analisar outro exemplo de programação paramétrica simples: chanfros (ou plano inclinado). Vou tentar dar as informações básicas para solução deste problema, que é mais difícil de dizer do que realizá-lo, misturando teoria e prática, tentando dar um sentido prático.... mas a teoria é preciso conhecê-la pois devemos compreender a razão de certas escolhas.

Offline badade

  • Novato
  • *
  • Posts: 65
  • Sexo: Masculino
  • GUIA CNC
  • Cidade - UF: Varese
  • Nome:: Pietro
  • Profissão: Programador cnc
Re:Programação paramétrica:exemplos(5)
« Resposta #1 Online: 15 de Janeiro de 2013, 18:46 »
".....em um dos seus textos onde vc fala de fazer chanfro/plano inclinado vc ensina o passo a passo de como calcular para fazer o plano inclinado com uma ferramenta tórica ou esférica, com aqueles dados, depois da para deixar como cabeçalho de programa e quando quiser só alterar dados? e mais uma pergunta, vc poderia fazer o exemplo se fosse ao invés de plano inclinado fosse fazer raio num perfil...."

Eu respondo a questão de Odair, recebida por e-mail alguns dias atrás, aqui no fórum (desculpe, mas eu prefiro compartilhar com todos estas reflexões).

Um programa paramétrico, por sua natureza, é um programa que tem sentido real quando está funcionando. Com isto quero dizer que assume valores reais somente durante a execução, para o resto deve ser considerado um programa normal que executa uma ação. O poder desses programas é que são adaptáveis à diferentes necessidades. Se realizarmos um programa capaz de executar um chanfro, este será capaz de executar qualquer tipo de chanfro, de qualquer tamanho e ângulo. Assim, escrito o programa, é só variar os dados de entrada e o jogo é feito. Sim, portanto, é a resposta à sua pergunta. Nós não devemos esquecer que o exemplo dado, como qualquer outro programa paramétrico, é dividido em duas partes: dados e cálculos. A última corresponde a um perfil preciso e é possível aplicar o programa apenas para os perfis do mesmo tipo. Agora, se o perfil mudar, você deve mudar o programa paramétrico ...
Em conclusão, podemos dizer que um programa paramétrico executa a ação pela qual foi criado. No exemplo do chanfro, não analisamos um perfil, mas simples  orientações relativas à construção do mesmo.

Mas, se quisermos realizar um raio? Como devemos nos comportar?
As reflexões feitas pelo chanfro também são válidas para o raio ...  você não acha?

Um chanfro é determinado pelo ângulo (que é constante); escolhendo um valor de remoção em Z, por exemplo, se determina o valor de remoção em X (ou Y), utilizando o conhecimento matemático (trigonometria em nosso caso). Podemos, então, repetir isso quantas vezes forem necessárias para executar chanfros. No caso de uma junção circular (raio), isto não é possível porque a equação que descreve um arco (ou uma circunferência), não é linear (isto é, não-repetitivo) ...  mas isso não deve nos desencorajar.
Se é verdade que não há repetição, no entanto, se aplica o mesmo princípio, só precisamos fazer cálculos para cada nível de remoção.
Primeiro vamos nos perguntar se estamos capazes de determinar qualquer ponto pertencente a um círculo, isso nos dá a confiança para escrever um programa paramétrico.

A Fig 1), representa um arco de circunferência (nosso raio), podemos determinar qualquer ponto simplesmente com a trigonometria

P (x, z)     X=R*COS(a)    Z=R*SIN(a)

definido o ângulo o valor de X ou Z é determinada usando as funções trigonométricas de seno e cosseno.
Se somos capazes de calcular qualquer ponto no arco, podemos escrever um loop que calcula cada ponto.

Agora vamos nos perguntar qual ferramenta usar e como ela se comporta.

Na Fig 2), usamos uma fresa plana para realizar o raio. Note-se que o caminho da ponta da ferramenta coincide com o raio da peça, enquanto o caminho do ponto central da ferramenta (normalmente este é o ponto de referência da ferramenta) sendo da mesma forma e valor do raio, é deslocada por um valor igual ao raio da ferramenta. Estamos, portanto, confrontados com a possibilidade de escolher a ponta ou o centro da ferramenta como referência.

Na fig 3) usamos uma ferramenta esférica para realizar a mesma ação. Mesmo aqui temos movimentos diferentes, dependendo do ponto de referência que preferimos utilizar: a ponta ou o centro da ferramenta. Em ambos os casos, o movimento da ferramenta não vai corresponder ao raio, mas será mais elevado. Note-se que o segundo exemplo diz-nos que o movimento da ferramenta irá ser um arco de raio com valor igual à suma dos dois raios: raio peça + raio ferramenta.

Na Fig 4) usamos uma ferramenta tórica. Não vou me alongar sobre este exemplo, pois podemos considerar uma ferramenta tórica como uma ferramenta esférica, de modo que as reflexões continuam a serem válidas para uma ferramenta deste tipo.

(Lembre-se que uma ferramenta plana não está adequada para este tipo de trabalho, mostrei exclusivamente para fins didáticos, pois é simples de entender e ainda expressa muito bem o conceito).

Qualquer que seja o caminho que você tomar, a filosofia é sempre a mesma: definição dos dados, cálculo dos pontos com deslocamento relativo.

Os dados representam as variáveis que você decide utilizar, e seu número depende de você.
Nós nos concentramos no cálculo!
Como feito no exemplo de um chanfro devemos realizar um loop que permite calcular cada ponto (movimento) para efetuar o raio.

Um simples exemplo explicativo (fig 5) que usa uma fresa esférica.

Posicionar a ferramenta para o ponto de partida ao longo dos eixos

O1000(RAIO)
T1M6(FRESA ESFERICA D=4, zero fresa no centro raio)
G90G0G54X0Y10S1000M 3
G43H1Z50M8
Z25
G01F1000Z22

Agora vamos definir todas as variáveis que consideramos útil para o nosso propósito

#100=89 (contator ângulo)
#101=22(raio real, 20+2)

#100 representa o ângulo de partida para nosso cálculo, de modo que corresponde ao primeiro movimento.
#101 representa o raio efetivo, isto é, o raio do arco que a ferramenta terá de fazer. Como disse antes, isso depende do ponto escolhido, o que obviamente não vai mudar a estrutura do programa.
Agora escreva um loop WHILE para realizar os cálculos necessários para o movimento da ferramenta

WHILE[#100NE0]DO1 (LOOP)
#110=#101*COS[#100] (X, calculo deslocamento em X)
#111=#101*SIN[#100] (Z, calculo deslocamento em Z)
X#110Z#111 (posicionamento)

aqui o movimento do eixo Y, (exemplo Y-100)

#100=#100-1 (diminuir o contator, 1° no exemplo)
END1 (LOOP END)

Como você pode ver as reflexões feitas pelo chanfro também são válidas pelo raio. Este exemplo é o mínimo necessário para executar um raio, pode adaptá-lo às suas necessidades. Você pode mudar tudo: o número de iterações (variação angular), correndo em uma direção ou em ambas as direções, escolha valores constantes de remoções, origem de usinagem....
Odair, e quem for interessado, escreva um programa paramétrico que execute um raio... exercício é a primeira forma para aprender, juntos veremos se for possível melhorá-lo!
Até.

 

/** * */