Guia CNC Brasil - Tudo sobre CNC, Router, Laser, Torno e 3D Print
MECÂNICA => Mecânica Geral => Tópico iniciado por: RuiBarbudo em 22 de Fevereiro de 2012, 20:20
-
Pessoal boa noite.
Recorro a vocês solicitando uma ajuda.
Se este assunto já tiver sido explorado no site, peço desculpa.
Procurei pela pesquisa e não encontrei referencias a ele, caso exista, por favor me indiquem o link.
Estou tentando confeccionar na minha CNC uma engrenagem de madeira.
Tenho pouca experiência em mecânica e nunca "fresei" uma engrenagem.
O desenho da engrenagem foi feito no ACAD12.
Ela é pequena, com a espessura de 5 mm, o raio 20 mm e 16 dentes.
A ferramenta que estou usando tem 1,0m de diâmetro.
Ao fresá-la, seguindo o trajeto, o dente da engrenagem fica mais fino do que o previsto,
pois a ferramenta "gasta" 0,5 mm além do previsto de cada lado do dente.
Como no desenho o dente tem 1,9 mm, fica no final com 0,9 mm.
Qual é o processo correto para que os dentes da engrenagem fiquem com o tamanho projetado.
Desenho em anexo.
Obrigado
Rui
-
Rui, há duas maneiras básicas de esfolar o bichano:
1. Desenhe a peça considerando o offset da ferramenta de corte
2. No prog CAM que usar deverá poder configurar a ferramenta.
-
Caro CNCNow, obrigado pela resposta.
Eu estou usando o EMC2.
Posso configurar o OffSet nele?
Se possivel, onde encontro informações de como faze-lo.
obrigado
Rui
-
...
Ao fresá-la, seguindo o trajeto, o dente da engrenagem fica mais fino do que o previsto,
.....
Acredito que (se for no artcam) vc está usando "usinar ao longo do vetor" experimente "perfilagem 2d" por fora.
abraço
-
exatamente oque o John falou. Se no Artcan você criar o percurso usinando ao longo do vetor, a fresa cometa metade do material de cada lado do vetor.
Mas se escolher usinar perfilagem 2D (Aquele do Tzão), e dentro das opções escolher por fora a fresa comerá rente ao vetor.
Outra opção é fazer um offSet do vetor com 0,5 mm. para fora do vetor e usinar ao longo do vetor.
Usando um velho chavão: Tanto faz dar da pedra, como na pedra dar.
Abs.
Edson
-
A maquina ja esta pronta e rodando.
Agora é tempo de estudar O QUE a maquina vai fazer... é onde me encontro neste momento.
Dê uma olhada no CamBam e no MeshCam. Ambos liberados por um período.
A versão 0.8 do CamBam é free e muito bom!
No site há vários tutoriais que ja da um bom começo.
Vá postando aqui seu progresso... é valido pra todos nós!
-
Pessoal, muito obrigado pela ajuda.
Vou instalar o Cambam e darei o feedback.
Abraços a todos
Rui
-
Pessoal, boa tarde.
instalei o Cambam e ainda estou aprendendo-o.
Mas enquanto isto, escrevi uma rotina genérica em Gcode para traçar uma engrenagem,
bastando fornecer o diâmetro e o numero de dente da mesma.
Podendo incluir o diâmetro da ferramenta no cálculo do traçado.
Esta rotina é bem básica e acredito que bem simplória.
Acredito que devem existir rotinas melhores.
Com certeza ela pode ser melhorada, pois os meus conhecimento de mecânica e de Gcode são muito básicos.
Estou disponibilizando a rotina no site, e se alguém pretender melhora-la, fique a vontade, e se possível
coloque também disponível.
Abraços
Rui
-
Pessoal, bom dia.
Agradeço a todos do site, do qual tenho recebido ajuda, seja por dicas de membros ou
baixando arquivos.
Seguem as minhas colaborações.
Seguem duas versões do "traçador de engrenagens:
A primeira, é uma evolução da versão anterior, pois naquela, o dente tinha as subidas e descidas lineares, e nesta versão o dente muda ligeiramente de direção ao atingir o diametro primitivo na subida e na descida
Engrenagens Por Diametro e Dente Curvo.cnc
Voce informa o diametro primitivo e o número de dentes, e ele desenha a engrenagem.
Engrenagens Por Módulo e Dente Curvo.cnc
Voce informa o módulo e o número de dentes, e ele desenha a engrenagem.
Abraços a todos
Rui
-
Rui,
Estou gostando muito das suas contribuições, mas gostaria de saber para que cnc estes arquivos foram escritos, pois estou tentando vê-los no Mach3 e parece que não funcionam por completo.
Se estiver interessado posso tentar escrever algum "wizard" para criação direta nas telas do Mach3.
Fabio
-
Oi Fabio, boa tarde,
Obrigado pela força.
A primeira versão que enviei foi escrita e testada no EMC2 rodando no Ubuntu.
Como estou viajando e o netbook é muito carroça, eu não tenho Ubuntu nele,
então as duas versões seguintes, eu escrevi e "testei" em USBCNC.
Digo "testei", pois só testei a Sintax e vi o desenho na tela, sem ter como fresar.
Se não for dar muito trabalho, agradeço e aceito sua oferta de um "wizard" para Mach3.
O Mach3 é um soft livre, ou tem limitações?
A minha idéia é desenvolver pequenos brinquedos de madeira, usando o conceito de engrenagens para estimular a criatividade de crianças.
Se a idéia vingar, com certeza disponibilizarei os projetos no site.
Abraços.
Rui
-
Rui,
O Mach3 é um programa comercial, mas sua licença tem preço muito acessível.
Me oferecí a escrever um wizard para o Mach3 porque sou um representante autorizado da Artsoft e estou mais familiarizado com ele.
Faz tempo que eu deixei de usar o EMC porque na verdade não consigo instalá-lo devidamente em nenhum computador aqui de casa, mas cheguei a fazer algumas alterações para o EMC - só não me ofereço para fazer para ele justamente porque não tenho como.
Vou tentar portar seus códigos para o Mach3 e quem sabe sai um wizard interessante.
Se eu puder contar com sua ajuda, agradeço.
Fabio Gilii
-
Oi Fabio, boa tarde.
Sou apenas um usuário amador, mas vou tentando aprender sempre um pouco mais.
Vou escrever um texto com as regras que usei para calcular as engrenagens e coloco aqui no site.
Voce pode me informar o preço do Mach3?
Abraços
Rui
-
Rui,
Obrigado pela ajuda - eu vou ver de fazer uns wizards assim que tiver um tempo.
Mandei o preço do Mach3 por MP.
Grato,
fabio
-
Oi Fabio, bom dia.
Estou anexando um pequeno texto com as bases que usei para criar as rotinas que desenham as engrenagens.
Abraços
Rui
-
Rui,
Obrigado - vai ser bom sim pois aí vejo como adaptar para o Mach3...
-
Olá Rui,
Muito legal suas rotinas.
Testei aqui no emc e estão todas funcionando sem problemas.
Baixei seu tuto dos comandos e vou dar uma olhada também.
Pensei em acrescentar duas coisinhas no código.
Uma seria a possibilidade de configurar mais que 1 passe em Z.
E a outra seria um furo central com diâmetro configuravel.
Só que vou precisar estudar bastante o doc antes de implementar isso.
Abraços
---
Fábio,
Só funcionou no emc mesmo.
Tentei no mach e no simulador CNCPlot e só aparece um dente. Fica banguela... ;D
-
Oi Pessoal,
depois de alguns feed backs informando que as rotinas da engrenagem não funcionava corretamente em
alguns software de CNC, fui pesquisar as razões.
Sem aprofundar em outras diferenças, usei dois softwares para testar a aplicação.
Usei o USBCNC, que utiliza a mesma implementação do EMC2, e uma versão Demo do Mach3.
Aprendi que o Mach3 não suporta loop condicional, e por isto a rotina não funciona corretamente,
mas o EMC2 suporta o loop condicional, e a rotina funciona bem.
Reprogramei a rotina, para ao invés de somar os ângulos e “condicioná-los” ao valor limite de 360 graus,
deveria chamar uma sub-rotina tantas vezes quantos os dentes da engrenagem.
Esta opção funcionou bem no Mach3, mas não funcionou corretamente no EMC2.
Pedi ajuda ao amigo Pietro, que foi muito prestativo ensinando-me no uso correto das variáveis.
Mas por mais que tentasse na pratica a teoria das variáveis não funcionou correta no EMC2.
Finalmente resolvi fazer uma rotina, em que com pequenas modificações, tais como tirar parentes de
algumas instruções e colocar parentes em outras e a rotina funciona ou em EMC2 ou em MACH3.
Corrigi também um problema que identifiquei, a largura superior do dente era maior que o vale do dente.
Demorei um pouco para responder pois fui aprender um pouco de Mach3 e também apanhei muito da rotina de
igualdade dos dentes.
Acredito que esta rotina nova (Gears 3.0), ainda possa ser melhorada.
Se por acaso, estou levando em consideração algum conceito de engrenagem da forma errada, fiquem à
vontade para corrigir e me ensinar um pouco mais sobre o assunto.
Escrevi uma rotina para ser usada nas em qualquer situação em que voce tenha 2 parametros.
(dois dos tres: Diametro Primitivo; Módulo; Número de dentes).
Para usar duas ou mais engrenagens acopladas, elas tem que ter o mesmo módulo.
Então para calcular duas engrenagens com quantidade de dentes diferentes, calcule a primeira utilizando
a rotina e definindo o diâmetro primitivo e o número de dentes. Se você dividir o diâmetro pelo número
de dentes obterá o módulo.
Para a próxima engrenagem você define quantos dentes ela terá, e multiplica este número pelo módulo que
obteve na primeira parte, e terá o diâmetro primitivo. Caso já tenha o diâmetro então divida-o pelo módulo
e terá o número de dentes.
A = Dp/Nd A= módulo Dp = Diâmetro primitivo Nd = número de dentes.
Como sugeriu o Alexandre, escrevi uma rotina para o furo central e para uma chaveta,
ambos configuráveis.
Sendo aprendiz de CNC, gostaria de saber o que o Alexandre quis dizer com
“Configurar mais que um passe em Z”
Abraços a todos
Rui
-
Rui,
Ainda não tive tempo nem para estudar o quase nada que sei sobre variaveis e vc ja implementou metade do que falei. 8)
Sobre o + um passe em z, seria poder configurar varias passadas em alturas diferentes do eixo z.
Repetição de tudo com nivel z em progressões negativas.
No seu código, seria as linhas
G0 Z0.0000 (Desce Ferramenta)
Se formos tentar criar uma engrenagem de aluminio com espessura de 5mm, dificilmente será possivel corta-la em um passe só.
É claro que se pode modificar manualmente altura de z para fazer vários passes.
Outro ponto importante, seria nessa mesma linha que comentei.
Não é muito recomendado a ferramenta ir de encontro ao material em G0 pois essa é a maior velocidade de deslocamento da máquina em vazio.
Pode-se perder muitas fresas assim.
O ideal é usar G1 seguido da velocidade normalmente em mm/min usando a letra F (feed rate)
G1 Z0.0000 F500 (Desce Ferramenta)
Abraços
Alebe
-
Outra coisa.
Acredito que não esta calculado nenhum offset de ferramenta nos códigos, certo?
-
Oi Alebe,
Obrigado pelas informações sobre o Passe e a Velocidade de descida
Vou corrigi-los na próxima versão.
Quanto ao offset, não sei se estou certo, mas imaginei que se a engrenagem precisa ter no final um diâmetro primitivo de 60mm, (raio 30mm) e a minha ferramenta tem um diâmetro de 1mm, basta aumentar 0.5mm no raio, (1mm no diâmetro primitivo).
Está correto o meu raciocínio?
Abraços
Rui
-
Quanto ao offset, não sei se estou certo, mas imaginei que se a engrenagem precisa ter no final um diâmetro primitivo de 60mm, (raio 30mm) e a minha ferramenta tem um diâmetro de 1mm, basta aumentar 0.5mm no raio, (1mm no diâmetro primitivo).
Está correto o meu raciocínio?
Perfeito.
hehehe... O burro aqui é que travou na curva.
Com o sorvete eu mirei a testa, e com o garfo perdi um olho... kkkkkk
-
Rui grande trabalho, eu gostei!
Ao escrever um programa paramétrico, precisa considerar o comando em uso. Você notou, depois de várias tentativas, as diferenças entre os vários CNC.
Eu gostaria de reiterar algumas coisas que podem ajudar os outros utilizando a paramétrica. Fanuc, mc2, Mach3, usbcnc são alguns controles que foram mencionados. Escrevendo uma rotina paramétrica a logica é a mesma para todos os comandos, o que muda é o interpretador básico: eu vou explicar. (Vou examinar o Fanuc e usbcnc)
- Funções. Estas dependem do comando, podemos utilizar, se não existe uma função não podemos fazer nada.
- Símbolos. Cada função é representada por uma palavra ou por um símbolo alfanumérico. Estes não são iguais em todos os comandos, em seguida, temos de ajustar ao tipo em uso. Escrever #1LT#2 em um controle usbcnc não garante que funcione pois o símbolo usado pelo usbcnc é o seguinte (<).
Portanto, embora a lógica seja igual, os símbolos pertencem a cada comando.
- A mais importante diferencia (eu acho) é a atribuição, que cria muitos problemas. (#1 = #2 + #3) Esta expressão está correta ou errada?
Querendo por o valor de [#2+#3] na #1 o interprete do comando age de forma diferente.
Para Fanuc não é um erro pois interpreta a escrita assim: tudo o que fica na direita do símbolo = vai ser atribuído à variável ou expressão que fica à esquerda.
Usb interpreta de maneira diferente: antes vai ser executada a expressão
#1=#2 a qual vai ser usada e depois vai ter a suma com #3.
Então você precisa usar parênteses para obter o mesmo resultado do Fanuc.
Em todas as expressões é bom usar parênteses (como na matemática) para obter o resultado que queremos.
Rui, o seu primeiro programa por isso não rodava por falta de conhecimento do interprete de cada comando.
Experimentando você o descobriu!
Análise do programa Gear3.0.cnc
Há alguns aspectos que gostaria de enfatizar, escrevo sem ordem de preferência.
X [#106 * -1]
quando você quer usar um valor negativo ou oposto, você pode prefixar a variável usando o simbolo (-), fica mais fácil de entender e escrever X [-#106]
G2 X [# 104 * -1] Y0 R [# 104] (meio círculo inferior dar furo central)
G2 X [# 104] Y0 R [# 104] (semi-círculo do furo central superior)
a expressão de um círculo pode ser feita com uma única linha de código
G2 X#104 I#104
Em geral, a fórmula é a seguinte G2/G3 X I ou G2/G3 Y J dependendo do ponto de partida do círculo (X ou Y). Todos os comandos deveriam aceitar esta forma, fazem parte do G-code.
#113 = [[#102/2] - #111] (Raio do do Pé) (Raio primitivo - "a")
#114 = [[#102/2] + #112] (Cabeça de Raio) (Raio primitivo + "d")
Eu acho que as expressões estão erradas: não deve ser d> a? então
#113 = [[#102/2] - #112] (Raio do do Pé) (Raio primitivo - "d")
#114 = [[#102/2] + #111] (Cabeça de Raio) (Raio primitivo + "a")
Penso assim porque a garantia que não há nenhuma fricção entre as engrenagens esta no fato de ser d>a.
A primeira parte do programa pode ser melhorada.
Posicionamentos diferentes não ajudam, a execução de um perfil deve exigir o mínimo de movimento, às vezes é melhor executar várias operações em
vez de usar apenas uma ferramenta por exemplo, uma perfuração e um perfil.
Um dos seus problemas é o uso da compensação de raio (que gerou o post, mas não encontrou uma solução adequada ).
Se você não a usa é obrigado a repetir o programa cada vez que mudar de ferramentas ou mudar o perfil.
Esta função é muito poderosa e importante, lamento que você não a usa.
Eu noto que no “hobby” geralmente está trascurada, talvez porque não se conhece ou talvez porque usa-se sistemas CAM. Trabalho todos os dias com compensação de raio, se não houvesse seria um grande problema. Compensação permite a substituição rápida de ferramentas sem recalcular o perfil.
Um aspecto importante é a introdução de uma rotina capaz de realizar passadas em z. Você não pode pensar em remover todo o material de uma só vez.
O procedimento mais simples é escrever um duplo loop: um loop para a descida em Z, outro para o perfil.
while[ condição loop ] (loop Z)
while[ condição loop] (loop perfil)
perfil
endwhile(fim loop perfil)
endwhile(fim loop Z)
#140=5
while[#140<>0]
------
while[#130<360]
perfil
endwhile(fim perfil)
----( condição de retorno )
endwhile
Você terá que mudar algumas linhas de código, mas vale a pena
Quando eu escrevo programas paramétricos sempre tento separar a parte de cálculo pelo movimento real, porque eu nunca sei qual será o comportamento do CNC, quer dizer, evitar desaceleração inesperada devido ao cálculo o que pode deixar a peça marcada. Eu diria uma coisa semelhante
while[#130<360]
#130=[#130+#125] (cálculo dos ângulos)
#131=[#130+#119-#125]
#132=[#131+#118]
#133=[#132+#123]
#134=[#133+#118]
#135=[#134+#119-#125]
#136=[#135+#125]
#137=[#136+#124]
G2X[#116*cos[#130]]Y[#116*sin[#130]]R[#121]
G3X[#117*cos[#131]]Y[#117*sin[#131]]R[#113]
G1X[#114*cos[#132]]Y[#114*sin[#132]]
G3X[#114*cos[#133]]Y[#114*sin[#133]]R[#114]
G1X[#117*cos[#134]]Y[#117*sin[#134]]
G3X[#116*cos[#135]]Y[#116*sin[#135]]R[#113]
G2X[#113*cos[#136]]Y[#113*sin[#136]]R[#121]
G3X[#113*cos[#137]]Y[#113*sin[#137]]R[#113]
#130=#137 (restaurar a condição primitiva)
endwhile
Um aspecto pouco considerado por aqueles que criam programas paramétricos é a análise de erros, esperados e inesperados.
É importante introduzir uma linhas para avaliar possíveis erros. Por exemplo, pode controlar o número de dentes mínimo que a rotina pode realizar.
Você pode verificar se a ferramenta em uso permite que você execute o perfil. Muitas vezes pensamos ter escrito um excelente programa, alguém tenta executá-lo obtendo falha, um fracasso, e não porque o programa não funciona, mas porque foi usado incorretamente (porque nós o permitimos).
Com uma análise de erro adequada seu programa será melhor: você pode controlar tudo!
A entrada da fresa para a execução do perfil não está correta. E' melhor entrar do lado do perfil, realizar uma abordagem de interpolação circular, o que garante uma usinagem sem problemas. Deste jeito você não terá nenhum problema de descida ou controle ferramenta .
Eu vou parar agora. Li com atenção o seu programa achei muito bom, e com algumas mudanças tornar-se grande. Minha análise (espero seja de ajuda) não quer diminuir o seu trabalho. Estas são apenas sugestões de quem gosta de escrever programas. Obrigado por compartilhar suas experiências com todos nós e mais uma vez: excelente trabalho.
Eu analisei o programa considerando apenas o aspecto da programação. E' natural que, na realidade, deve ser considerada uma série de fatores reais que podem levar a determinadas escolhas. Fazer engrenagens exige um estudo específico, consideram-se muitos outros fatores.
Claro, se queremos construir jogos para crianças podemos desconsiderar os aspectos técnicos que podem restringir o nosso trabalho.
Então eu só quis analisar um programa sem considerar a realidade.
Eu realmente gosto da ideia de estimular a criatividade de crianças usando engrenagens: você quer nos dizer mais?
-
Galera, só um pitaquinho pouco haver, decididamente eu duas ferramentas poderosissimas que na minha experiencia emina as demais
que são: COREL DRAW E ARTCAM com esses dois as coisas acontecem rapidinho sem canseira.
configuro a pagina do corel como a do artacam( mesmas dimensões) pois ela batem certinho uma a outra, Faço o vetor usando os recursos que o corel oferece, exporto p a pasta do art cam em EPS (eu soldo tudo primeiro, senão da bizil quando importar para o artcam) abro o artcam importo esse EPS que ja foi agrupado de acordo com as paginas e pronto é só aplicar os percussos salvar na pasta do mach3 e mandar ficha. Acho que esses 2 programas são como unha e carne. a unica coisa que tenho no pc da cnc é mach3, artcam pro br, e corel 13 que é mais levinho que seus sucessores.
Quanto aos arquivos que ficam menor depois de usinados ( as engrenagens do Rui) isso pode ser ferramenta mais grossa que a que foi aplicada ao percusso, tipo vc configura pra 2 mm, mas a freza tem, 2.5, isso as vzs acontece pra ficr tudo do tamanho certinho que fou vetorizado, não pode errar na escolha da ferramenta.
Abrçs.