Kit arduino cnc shield
Como muitas pessoas que usam a internet para estudar, aprender’ e buscar informação sobre algum assunto de interesse, eu que sou fã do “faça você mesmo” pesquisando sobre máquinas cnc e impressoras 3d, descobri que haviam placas de expansão que facilitavam muito a fabricação caseira dessas máquinas, são as arduino cnc shield que são basicamente placas eletrônicas que acopladas ao arduino fornecem suporte aos drivers de motor de passo simplificando todo trabalho e deixando o projetista livre para se dedicar à mecânica da máquina e configurações.
Conforme a lei natural da economia, “oferta e demanda” é sempre presente, as empresas que não dormem no ponto e estão constantemente de olho em algun nicho crescente, hoje temos diversas opões de eletrônicos assim. O kit cnc v4 com suporte para arduino nano e 3 drivers polulu A4988 DRV 8825, tem pinagem pronta para configurar “microsteping” e para chaves fim de curso
Temos assim em um pacote simples toda eletrônica necessária para se construir em casa uma máquina cnc.
Kit cnc shield para arduino nano com drivers
Comprei um desses kits em um marketplace chinês, e depois de muita espera chegou às minhas mãos.
Mas e agora, como fazer isso funcionar? Bem vamos a internet novamente, pequisa aqui e ali, muda o nome, a forma de escrever, em português em inglês e nada nem um post nem um datasheet.
Fiquei surpreso com a falta de informação mais detalhada sobre o produto aparentemente nem mesmo o fabricante ou pelo menos através da referência a ele na placa se chega a um datasheet, ou uma melhor descrição do produto.
Pois bem, com muito custo acabei fazendo a instalação básica comparando com outra placa similar. E sabendo que outros podem estar enfrentando o mesmo desafio, decidi escrever aqui meus resultados.
Composição do kit
Inclui a placa Shield cnc V4 (suporte para arduino nano), 1 arduino nano, 3 drivers A4988 , um cabo USB para mini USB e alguns jumpers.
Características
- Movimentação de 3 eixos, compatível com máquinas de gravação, corte ou laser
- Funciona com arduino nano
- Suporte a até 3 motores de passo bipolares através dos drivers A4988
- Entrada para alimentação dos motores de até 35V
- GRBL como firmware no arduino (consegui usar só com a versao 0,8)
- Suporte para fins de curso para todos os eixos
- Conexão I2C, para LCD por exemplo
O Driver A4988
Simples e barato drive fabricado pela Polulu para controle de motores de passo bipolares de 4 fios com até 2A de corrente por bobina e tensão de até 35V. Com uma interessante característica para dar mais precisão ao movimento da maquina, o microstteping ou “micropasso” que usando jumpers na shield pode dividir os passos do motor em 1/2 passo, 1/4 de passo, 1/8 ou 1/16. Obs: quanto maior a divisão de passo menor o torque do motor.
A corrente de saída para os motores pode ser ajustada pelo potenciômetro na placa.
Para configurar e usar precisamos de dois softs, o GRBL e um Controlador, (testamos a máquina sem o envio de arquivo de código G) mas para criar o gcode precisamos de outro aplicativo).
O GRBL, é basicamente o “firmware” que deve ser carregado para o nano através da IDE do arduino e faz a comunicação entre o controlador e a máquina.
No arduino é uma biblioteca e pode ser incluída normalmente como tal.
Tentei 2 versões mas apesar de mais antiga a versão 0,8 funcionou melhor e sem bugs.
Controlador
É a interface do usuário através dele configuramos o grbl, testamos e movemos dos eixos da máquina e enviamos os arquivos em código G.
Encontramos gratuitamente diversas opções, pretendo fazer um post detalhando as características sobre os mais populares.
Comecei usando Universal Gcode Sender baseado em java, muito prático e com uma boa resposta aos comandos comparado a um outro que testei.
A versão 1.0.9 trava quando se tenta visualizar o gcode, e pesquisando na rede vi que muita gente tem o mesmo problema, por isso recomento o uso da versão anterior, 1.0.8 (faça download no final da página).
E temos ainda os programas usados para gerar o código G.
Apesar de ser um campo muito grande para se detalhar aqui, para quem esta começando como eu que ainda não tem uma máquina para fresamento ou gravação, corte etc e vai inicialmente criar códigos simples com desenhos, textos com intensão de aprender a usar a tecnologia, novamente temos de graça na net diversas opções, o INKSCAPE esta desempenhando bem a função, simples de usar nada complexo nem requer grandes habilidades.
Veja: Como fazer Gcode para GRBL no Inkscape em passos simples!
Para instalação segue-se os passos abaixo:
- Através da IDE do arduino
Incluir a Biblioteca (grbl) e Carregar o grbl para o arduino
Ajustar a corrente dos motores
A corrente elétrica liberada pelos drivers deve ser compatível com o motor, isso evita que ele seja sobrecarregado.
Com o kit alimentado pela usb.
Sabendo a corrente do seu motor e usando um voltímetro com o negativo em qualquer GND da Shield e positivo no potenciômetro (é bom usar com uma chave philips assim enquanto se ajusta já se vê o valor no voltímetro seguindo o cálculo abaixo:
Vref = I/2,5
Válido só para o A4988, onde I, é a corrente do motor, para um motor de 1,5A a Vref seria: 0,6.
* Fazendo isso para cada drive, e colocando um jumper em Mot-Volt-Sel, e instalando os motores, o Hardware esta pronto para funcionar.
Cuidado! Para evitar problemas, antes de fazer qualquer conexão é bom retirar o cabo USB e alimentação.
Instalação do Universal Gcode Sender.
O UGS é baseado em java, então é bom ter uma versão atualizada no seu computador.
Ao abrir o programa, ajustar a porta de comunicação e a velocidade para essa versão do grbl, 9600 bauds.
Feito isso, clicando em open já se tem uma resposta do grbl confirmando sucesso na comunicação..
Grbl 0.8c [‘$’ for help]
E já é possível mover os eixos usando as setas, mas para evitar problemas (movimento sem controle que pode danificar a máquina é bom configurar o grbl), pelo menos 3 linhas e para isso você deve saber qual é o deslocamento do eixo da sua máquina para cada passo do motor.
$0=250.000 (x, step/mm)
$1=250.000 (y, step/mm)
$2=250.000 (z, step/mm)
Ex: $1=50
Digitando a linha acima no campo de comandos do seu controlador, você esta dizendo para a máquina que para mover o eixo y em 1mm o motor correspondente deve executar 50 passos)
Marque um ponto zero da sua máquina zerando ali a posição inicial dos eixos (uso a minha no canto inferior esquerdo), assim o desenho ou trabalho vai ser feito a partir dessa referência.
Para gerar um gcode pode se usar o inkscape tomando o cuidado de configurar o tamanho da folha compatível com a área útil da sua máquina, e fazer o desenho menor para que a máquina não extrapole os limites, ( nas configurações é possível impor limites de softwares e/ou hardwares instalando chaves fim de curso na placa).
GRBL_Arduino_Library (GRBL versão 0,8)
Produto a venda no Mercado Livre
O resultado final vai depender da precisão da máquina e das configurações.
Leave a Reply