A OctoPrint é uma interface web para controlar e monitorar uma impressora 3D através de uma Raspberry Pi conectada a rede. Utilizando a OctoPrint podemos enviar arquivos para a impressão remotamente, monitorar o andamento de nossa impressão em tempo real e, caso necessário, também interrompê-la. Desenvolvido por Gina Häußge, a OctoPrint é uma plataforma open source e de distribuição gratuita. Neste artigo iremos aprender a instalar e configurar a OctoPrint em uma Raspberry Pi 3, além de conhecer as suas funcionalidades básicas.
Material necessário
Neste artigo iremos utilizar os seguintes materiais:
Além dos itens citados acima iremos utilizar os seguintes softwares:
Instalando o software OctoPrint na Raspberry Pi
Baixe a imagem do sistema no site oficial da OctoPrint.
Grave a imagem do sistema em um cartão SD. No meu caso utilizei o balenaEtcher para realizar a gravação.
Abra a pasta /boot que está no cartão SD e altere o arquivo octopi-wpa-supplicant.txt com o programa Notepad++.
É neste arquivo que precisamos configurar as credenciais da rede Wi-Fi. Para isto, basta descomentar da linha 27 a linha 30 e inserir o nome da sua rede Wi-Fi na linha 28 e a senha da rede Wi-Fi na linha 29.
Insira o cartão SD na Raspberry Pi. Conecte a câmera na Raspberry Pi.
Por fim, alimente a Raspberry Pi.
Acessando a Raspberry Pi remotamente
Acesse sua Raspberry Pi via SSH através do Putty. O Putty é um software de emulação de terminal grátis, que realiza acessos remotos a servidores via Shell (para mais informações, acesse o post Raspberry Pi Zero W: configuração rápida para rede e SSH). Abra o Putty e no campo Host Name insira octopi.local.
Caso não funcione, é preciso descobrir qual IP o roteador entregou para a Raspberry Pi. Existem diversas formas de fazer isso, mas a que eu acho mais simples é utilizando o aplicativo Fing, disponível gratuitamente para Android e IOS.
Feita a conexão via SSH, será necessário fazer login. O usuário padrão é pi e a senha é raspberry.
Passo 6: Para facilitar o acesso a Raspberry Pi, configure um IP fixo alterando o arquivo /etc/dhcpcd.conf. Digite o seguinte comando:
nano /etc/dhcpcd.conf
Teremos a seguinte tela:
Faça as seguintes alterações:
- Apague as cerquilhas descomentando o bloco Exemple static IP configuration.
- Altere a interface de eth0 para wlan0 (esta alteração é necessária apenas se você está utilizando o Wi-Fi).
- Na linha static ip_address, faça a modificação colocando o seu número de IP.
- Na linha static ip6_address será nosso ipv6.
- Na linha static router será o ip do nosso roteador
- Na linha static domain_name_servers será o ip do nosso domínio.
Veja abaixo como ficaram as alterações:
Após realizar todas as alterações, salve e saia do nano.
Configurando a câmera na Raspberry Pi
Agora é necessário ativar a câmera serial da Raspberry Pi. Digite no terminal:
sudo raspi-config
A seguinte tela irá se abrir:
Vá até a opção “5 Interfacing Options” e pressione enter. A seguinte tela irá se abrir:
Selecione a opção “P1 Camera” pressionando enter. Saia e volte para o terminal.
Para aplicar as configurações, a Raspberry Pi deve ser reiniciada. Para isso, digite o seguinte comando:
sudo shutdown -r now
Após alguns segundos, já podemos acessar o IP da Raspberry Pi através de nosso navegador.
Configurando o software OctoPrint
Em nosso primeiro acesso, será necessário realizar algumas configurações. A página inicial será essa abaixo:
Em “Acess Control”, insira um usuário e uma senha para acesso e clique em “Keep Acess Control Enabled”.
Aqui podemos marcar a opção “Enable Aanonymous Usage Tracking” para que o OctoPrint envie informações anônimas sobre o uso do software para correção de possíveis bugs.
Aqui, o OctoPrint nos pergunta se queremos configurar um teste de conectividade com a internet. No meu caso eu não configurei, clicando na opção “Disable Conectivity Check”.
Nesta etapa configuramos a ativação do bloqueio para plugins de terceiros que possam afetar o nosso sistema. Eu ativei a opção, clicando em “Enable Plugin Blacklist Processing”.
Para quem utiliza o fatiador Cura, o OctoPrint oferece a opção de importar o perfil e poder realizar o fatiamento das peças no próprio OctoPrint. A vantagem é que podemos fazer o upload do arquivo .stl e o OctoPrint irá também gerar o gcode. Como não utilizo o Cura, apenas pulei essa opção clicando em Next.
Aqui é onde devemos indicar as configurações da nossa impressora. No meu caso, eu apenas chequei a área de impressão e o diâmetro do bico da impressora:
Conclua as configurações clicando em “Finish”.
Utilizando o OctoPrint
Agora que terminamos as configurações iniciais, podemos atualizar a página em nosso navegador. A primeira página que irá se abrir é a tela de login:
Após realizarmos o login, seremos apresentados à home page do OctoPrint:
Agora, devemos conectar a Raspberry Pi com a impressora 3D através de um cabo USB. Após a conexão, podemos clicar no botão “Connect”. A OctoPrint fará a conexão automaticamente com a nossa impressora.
Tela após a conexão realizada:
Já estamos com a nossa impressora conectada ao OctopPrint, podemos começar a utilizá-la para controlar e monitorar a nossa impressora.
Agora vamos aprender o funcionamento básico de cada ferramenta dentro da interface do OctoPrint.
No campo “State”, podemos acompanhar o andamento da impressão, o nome do arquivo que está sendo impresso, o tempo que configuramos o timelapse, o tempo de impressão e quanto tempo falta para o fim. Também podemos cancelar e pausar a impressão.
No campo “Files”, podemos visualizar todos os arquivos que estão no cartão SD, podemos fazer download e upload de arquivos, criar uma pasta e mandar para a impressão um arquivo.
Na aba “Temperature”, podemos acompanhar a temperatura do hotend e da mesa através do gráfico e dos campos abaixo do gráfico.
Na segunda aba “Control”, podemos acompanhar em tempo real o que a câmera está gravando, controlar os eixos X,Y e Z da impressora, extrusar material, fazer o retract, ou ainda ligar e desligar os motores ou o fan que resfria a peça.
Na terceira aba, “GCode Viewer”, podemos ver a simulação dos movimentos em X, Y e Z que a impressora irá realizar no momento em que estiver imprimindo a peça. Também podemos acompanhar a impressão em tempo real.
Na quarta aba, “Terminal”, podemos acompanhar em tempo real todos os comandos que estão sendo executados pelos motores da impressora e enviar um comando em tempo real:
Na quinta aba, “Timelapse”, podemos configurar a câmera conectada à Raspberry para que tire fotos e ao final da impressão monte um timelapse:
Demonstração do timelapse feito com o OctoPrint:
Conclusão
Podemos notar que o OctoPrint é uma ferramenta poderosa para nos auxiliar no gerenciamento de impressora 3D. Quem costuma fazer impressões sabe como é frustrante sair de casa, deixar as impressões em andamento e, ao voltar, perceber que deu tudo errado. Com o monitoramento através de uma interface web com a Raspberry Pi, podemos ter muito mais garantia do sucesso e da qualidade das nossas impressões, e o melhor de tudo, de forma remota! Além do mais, por ser uma ferramenta open source, a cada dia surgem novos plugins que podemos instalar e aumentar ainda mais a quantidade de funcionalidades do OctoPrint.
Então, o que achou do post OctoPrint: Controle sua impressora 3D remotamente com uma Raspberry Pi? Conta pra gente aqui nos comentários!
Parabéns pelo artigo. No meu caso, no Octoprint, nada aparece no Gcode Viewer. Alguém tem alguma sugestão ou poderia ajudar?
Olá!
Você tentou clicar em “Center Viewport On Model”?
Abraços!
Vinícius – Equipe MakerHero
parabéns! Muito obrigado por compartilhar esse tipo de informação!
Olá, meu caro Viktor!
Gostaria de saber se o OctoPrint não roda diretamente do pendrive como outros softwares e se controla a impressora 3D localmente?
Desde já, agradeço e um grande abraço!
Quantas impressoras podem ser instalada em um só Raspberry?
Alexsandro,
Não consegui encontrar o número exato, mas pelas pesquisas é possível adicionar mais de três 😉
Abraços, e cuide-se com o COVID-19!
Diogo – Equipe MakerHero
Excelente artigo. Bem detalhado e intuitivo!
Parabéns!
O Raspberry pi tem 4 portas USB, logo posso afirmar que o OctoPrint pode controlar 4 impressoras ao mesmo tempo ? ou eu tenho que comprar 4 Raspberry, um para cada impressora ?
Valeuuuuu
Excelente artigo, Viktor.
Parabéns