Como configurar CNC com
Raspberry Pi? Hoje nós vamos preparar um Raspberry Pi 3 com a imagem RPI CNC V4
usando o HAT, versão 2.58. Vamos montar esse HAT e configurar o GRBL. Tudo isso
dá continuidade ao assunto que abordamos na semana passada: Plotter e Laser com Raspberry Pi CNC HAT, quando montamos um plotter laser com uma mesa XY.
Hoje vamos falar do HAT
(Hardware anexado no topo), que é uma placa retangular que possui quatro furos
de montagem nos cantos que se alinham com os furos de montagem do Raspberry Pi,
possui um conector para o GPIO do Raspberry e suporta o sistema especial de autoconfiguração
que permite a configuração automática do GPIO e configuração do driver. O
recurso é bastante eficiente para a automatização de CNCs.
Lembro aqui que, quando falo
de CNC (do inglês Computer Numeric Control), além do plotter, do laser, eu
também estou falando de uma router, de uma fresadora, de um torno CNC, porque é
tudo a mesma coisa, pois a origem é a mesma. A automatização destas máquinas
exige comando CNC, então, compreendendo esse sistema você pode ir muito mais
longe.
Seguindo a imagem acima, minha
indicação, então, pessoal, é que vocês utilizem o Raspberry ao invés do PC com
Arduino Uno. Junte a isso o Protoneer e a montagem do Plotter Laser que fizemos
no primeiro vídeo sobre esse assunto.
Recursos usados
1 Raspberry Pi 3 (mas poderia
ser B+, 2 ou 3 com conexão 20x2)
1 Protoneer RPi CNC Hat versão
2.58
1 Cartão micro SD 16Gb
(recomendado 8Gb ou mais)
1 Fonte 12V x 10A.
3 drivers de motor de passo
DRV8825.
1 Monitor com HDMI ou com
adaptador.
Teclado e mouse USB
Fios, ferro de solda, solda.
Montando o RPi CNC Hat no Raspberry Pi
A montagem do RPi CNC Hat sobre o Raspberry é bastante simples.
|
- Após a fixação o Raspberry deve ficar assim.
- Note que dependendo da versão do Raspberry pode ser necessário usar 3 ou 4 destes espaçadores.
- Conecte agora o RPi CNC HAT, alinhando os conectores. Os furos dos espaçadores devem ficar alinhados também.
- Por fim, parafuse o RPi CNC HAT aos espaçadores, mas tomando o cuidado de não apertar demais os parafusos.
Exemplo de placa do Mach3
Tenho aqui parte de um
esquemático de placas que funcionam com o Mach3 na porta paralela. Lembro, no
entanto, que minha preferência é pelo uso do Raspberry, por considerar o Mach3
um tanto “antigo” ou até “ultrapassado” em relação às possibilidades que temos
hoje em dia. Tanto o Raspberry quanto o GRBL diretos são melhores que o Mach3,
pois com eles você pode ter um software que tem controle da situação da
máquina.
Comparando
Quero mostrar aqui 3
situações:
1ª – Mach3
Exemplo de uma router que eu tenho:
Exemplo de uma router que eu tenho:
Tenho um PC > porta
paralela > placa controladora > drivers > motores de passo.
Neste caso, por que foi
escolhida esta arquitetura? Se voltarmos no tempo, há 10, 15 anos atrás, havia
grande dificuldade de construir uma placa microcontrolada. Isso era caro tanto
para desenvolver quanto produzir, além de ser difícil de vender por conta do
custo final. Foi, então, que o Mach3 passou a controlar tudo.
2ª – GRBL
Com o surgimento do GRBL com o Arduino UNO, passamos a ter o seguinte esquema:
Com o surgimento do GRBL com o Arduino UNO, passamos a ter o seguinte esquema:
Tenho um PC > Arduino UNO
com GRBL > drivers > motores de passo.
Diferente da 1ª situação, na
qual o Mach3 faz tudo e a placa controladora não faz nada, aqui, o PC manda
para o GRBL o Gcode. Mas, temos aqui uma dificuldade diferente: as informações
do GRBL são demais para o Arduino UNO. Ou seja, esta situação funciona bem, mas
para os projetos mais simples.
3ª – Raspberry
Aqui, temos um esquema totalmente diferente, pois nem PC temos mais:
Aqui, temos um esquema totalmente diferente, pois nem PC temos mais:
Raspberry/GRBL > drivers
(HAT) > motores de passo.
Neste caso, o software roda no
Raspberry. Eu posso pegar um monitor, um teclado e um mouse e montar uma
máquina totalmente autocontida. E essa situação é a melhor que encontrei até
hoje. Lembrando, claro, que isso aqui também vai evoluir. Felizmente.
Gravando a imagem
Nesta etapa vamos falar sobre
a gravação da imagem do SO, ou seja, o sistema operacional configurado para
rodar o software de CNC, no Raspberry.
·
Para o Raspberry Pi funcionar ele precisa ter um
sistema operacional instalado em um cartão micro SD o qual ele possa acessar.
·
Neste caso usaremos uma imagem Standart Raspberry Pi Jesse fornecida e já
pré-configurada. Ela vem com vários aplicativos para interagirmos com o HAT.
· Para fazer o download da versão mais recente no
link: https://wiki.protoneer.co.nz/Raspberry_Pi_CNC_User_Interface_SD_Card_Image
·
Além do download, o site possui outras
informações importantes sobre o sistema operacional, configurações e sobre os
aplicativos disponíveis.
·
Depois de baixar e descompactar a imagem, será
necessário transferi-la para o cartão micro SD.
·
Para isso podemos utilizar o um gravador de imagens.
Nós escolhemos o Etcher que pode ser encontrado no link: https://etcher.io/
Executando a gravação da imagem
·
Insira o cartão SD no leitor de cartões.
·
Abra o programa Etcher.
·
Selecione o arquivo da imagem que deseja gravar.
·
Selecione o cartão e clique em continuar.
·
Clique em “Flash!” para gravar.
·
Após a gravação, o programa fará uma verificação
do resultado da transferência.
·
Aguarde até que seja concluído.
Configurações iniciais do RPi CNC Hat
·
Para iniciar o RPi com a imagem do SD, instale o
SD.
·
Conecte o monitor na saída HDMI e um teclado e
um mouse nas portas USB.
·
Conecte a fonte de alimentação do RPi.
·
Depois de iniciar o sistema, uma área de
trabalho como esta deverá aparecer.
Obs.: Se nunca usou antes o
RPi, aconselhamos uma leitura prévia. Há muitos artigos disponíveis para uma
introdução.
·
Usando RPi 3, devemos configurar a porta serial,
devido às alterações de hardware que ocorreram nesta versão do Raspberry e de software
com o Raspbian Jessie.
·
Para facilitar, existe um script na área de
trabalho que servirá para este proposito, o RPi3 Serial Config.
·
No caso de utilizar um RPi 3, devemos
executá-lo. Ele se encarregará de ajustar corretamente as configurações da
serial para funcionar com o RPi CNC Hat e reiniciará o sistema para que as
alterações tenham efeito.
·
Neste ponto, já podemos nos conectar ao GRBL e
configurá-lo. Para isso podemos utilizar o
Universal G-Code Sender ou bCNC.
·
Para mais detalhes sobre o significado detalhado
de cada uma das configurações do GRBL, consulte o site: https://github.com/gnea/grbl/wiki/Grbl-v1.1-Configuration
·
Um dos parâmetros que precisaremos alterar no
futuro será o $32, responsável pela mudança de comportamento do GRBL para o
modo laser.
·
Neste modo, o GRBL se moverá continuamente entre
comandos G1, G2 e G3 enquanto a potência do laser é atualizada instantaneamente
a cada movimento.
·
Mais detalhes no link abaixo: https://github.com/gnea/grbl/wiki/Grbl-v1.1-Configuration#32---laser-mode-boolean
·
Usando o Universal G-Code Sender podemos nos
conectar na serial /dev/ttyAMA0 usando
um baudrate de 115200bps. Basta clicar em Open.
·
A resposta do GRBL aparecerá na tela do terminal
logo abaixo:
**** Connected to /dev/ttyAMA0 @ 115200 baud
****
Grbl 1.1f [‘$’ for help]
Digitando $$ e pressionando
ENTER na barra de comandos, o comando será enviado e o GRBL responderá com suas
configurações atuais. Essas são as que utilizamos.
·
Para alterar qualquer uma das configurações
listadas, basta enviar o comando $, seguido do índice do parâmetro, seguido de
um sinal de igual e o novo valor.
·
Por exemplo: supondo que seja necessário alterar
a velocidade máxima do eixo X (X Max rate) para 1000 milímetros por minuto
(mm/min), enviaríamos o seguinte comando.
$110 = 1000
·
Onde o 110 é o índice do parâmetro (X Max rate)
e 1000 o novo valor (em mm/min)
·
Podemos configurar o GRBL também pelo bCNC.
Neste caso, após abrir o programa, clicamos em “FILE”. Observe se as
configurações de conexão estão corretas:
- Port: /dev/ttyAMA0
- Baud: 115200
- Controller: Grbl
·
Clicando em “Open” a conexão deve ser
estabelecida.
·
Clicando em “TOOLS” e em seguida na opção
“Controller”, o bCNC mostrará todas as configurações do GRBL.
·
Podemos alterá-las clicando nos valores.
· Após efetuarmos as alterações, basta clicar no
botão Controller logo acima das opções para que o bCNC inicie o upload das
informações.
10 Comentários
Boa tarde Fernando, gostaria portar essa interface para os ESP32 e fazer a conexão via tcp/ip. Meu nome é Geraldo.Ja´tenho a minha CNC funcionando, mas acho que devo evoluir para 5 eixos com sensor hall, etc.
ResponderExcluirBom dia.
ResponderExcluirEstou encontrando dificuldades de adquirir o Protoneer Hat para o Raspberry Pi3, encontrei apenas um link que cobrou um absurdo...Poderia NOS ajudar?
Boa tarde,
ResponderExcluirSeus vídeos são ótimos, obrigado!
Tenho uma dúvida:
Você fala que o arduino com GRBL está com os dias contados, que não cabe mais nada no uC.
Mas o protoneer hat usa basicamente o mesmo firmware, num AVR.
Pelo que deu para ver, só troca a conexão serial over USB pela TTL direta com o Raspberry...
É isso?
Sim é verdade,
ExcluirÉ o grbl dentro da protoneer. Que tem a vantagen de não usar um pc.
O mundo maker tem poucas opções de controladoras. Se vc quiser pode usar o arduino uno com grbl, vai funcionar também.
Se eu fizer uma placa com firmware provavelmente vou usar stm32 Arm ou mesmo o esp32 que é muito mais poderoso. O motivo que não fiz ainda porque me falta tempo. Tem que sentar e projetar a placa e fazer o software.
Para mim um trabalho de 6 meses.
Os seguidores me escrevem que querem mais recursos nos routers mas usando arduino é difícil é muito pequeno e o codigo não esta preparado para mais recursos.
A minha idéia é desenvolver a partir do Raspberry PI , no inicio agora com protoneer mas depois ou com minha placa ou com algo novo que pode aparecer.
muito bom! sera que nao daria pra usar um 2560? teria muito mais espaco! a pouco tempo andei lendo sobre, eu consegui instalar o grbl nele, praticamente apenas inserindo a definicao do processador assim o grbl ocupando algo em torno de 13% da capacidade da memoria de programa, porem a questao de ele rodar o BCNC no sistema operacional ajuda na performance e a questao da comunicacao usb por conta do converssor ja ajudaria kkk seria direto
ExcluirFernado,
ResponderExcluirEstou tentando fazer CNC com raspberry mas estou encontrando um problema.
A placa da protoneer no ebay não pode ser enviada ao brasil.
Gostaria de saber se vende 1 de suas placas protoneer ou uma que você vai fazer,
para usar raspberry. As que você vai fazer tenho uma ideia de 5 a 10 unidades da protoneer 1 unidade
Encontrei o Protoneer aqui www.zyltech.com/genuine-protoneer-raspberry-pi-cnc-hat-v2-58/
ResponderExcluirNo ebay não está enviando ao Brasil sai $56 total 36 +taxa+ envio
gostei das aulas sobre cnc com a rpi3 portanto comprei a minhina rpi3 para isntalar ainda sou meigo nesta area mas estamos aqui para mais un desafio abraço
ResponderExcluirESTOU COM UM PROBLEMA DE DALAY(atraso) NO RASPBARRY PI3 COM ARDUINO UNO QUANDO CLICO NO UN.GCODE PRA INICIAR O TRABALHO ELE ACIONA OS MOTORES E 15SEG DEPOIS ACIONA O GCODE OQUE FAZER...E O VISUALIZADOR 3D NAO APARECE..MEU email...marcoantoniocorreacorrea@gmail.com,,,,,,SE PUDER ME AJUDAR FICO GRATO OBRIGADO
ResponderExcluirNão estou achando para comprar o RPi CNC Hat, alguém tem uma sugestão?
ResponderExcluir