Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Estringente, o plotter de parede de $ 15

Componentes e suprimentos

Arduino UNO
× 1
Motor de passo 28BYJ-48 com driver
× 2
TSOP 4838 IR-Receiver
× 1
Leitor SPI Leitor de cartão de memória Micro SD
× 1
Micro servo motor SG90
× 1

Ferramentas e máquinas necessárias

Impressora 3D (genérica)
Ferro de soldar (genérico)

Aplicativos e serviços online

Arduino IDE

Sobre este projeto





Antecedentes


Não me lembro bem quando começou, mas acho que por volta de 1999 ou algo assim. Eu e um amigo que gostava de robótica e eletrônica estávamos discutindo a construção de um robô para desenhar em quadros brancos. Claro que nunca tivemos tempo para fazer nada sério naquela época, o ecossistema para microcontroladores amadores não era o que é hoje.

Em 2002, meu amigo me mostrou o trabalho incrível de Jürg Lehni e Uli Franke-Hektor. Fiquei muito satisfeito em ver algo semelhante ao que tínhamos sonhado construir, na verdade, ser construído e compartilhado com o mundo! Eu estava em paz.

Algum tempo depois, lembro-me de mostrar o site do projeto Hektor para alguém apresentando como eu o achava fantástico. Desta vez, porém, comecei a olhar mais para os detalhes, percebendo que faltava uma propriedade que eu havia inicialmente imaginado um plotter de parede para ter. Eu queria que fosse independente, tudo em uma unidade com apenas fios conectando-o à parede. Se bem me lembro, examinei os pesos dos motores de passo, percebendo que minha ideia não ia dar certo.

O tempo passou e as coisas aconteceram no espaço da robótica amadora. Era 2014 e eu estava usando Arduinos e servos RC para vários projetos de controle de câmera, tive acesso à impressão 3D e, na verdade, algum tempo livre (!?!). Depois de tropeçar no motor de passo barato 28BYJ-48, eu sabia exatamente o que iria construir:

O plotter de parede minimalista mais barato possível.






Primeira tentativa


Depois de esperar uma eternidade, cerca de cinco semanas, pelas peças encomendadas da China, comecei a construir o plotter. Tentei fazer um esqueleto o mais compacto possível para caber um Arduino Uno, steppers, servo e uma bateria. Não consigo me lembrar quantos designs estúpidos, quero dizer, menos inteligentes, fiz no OpenSCAD antes de meu centavo cair. Você deve cruzar as cordas!

Ter a geometria de cruzamento traz um grande benefício em manter a posição correta na parede. A desvantagem é que você obtém menos estabilidade com a rotação em torno do eixo vertical. Isso foi remediado adicionando-se alguns tirantes nos cantos da plotadora, ajustados para evitar a rotação.

O primeiro plotter o hardware ficou parecido com a imagem abaixo. Em minha busca por peças mais baratas, eu escolhi usar linha de costura para navegação e cancelamento de gravitação. Os fios se cruzaram na parte superior do chassi impresso em 3D por meio de pequenos orifícios na impressão. Como pode (quase) ser visto, é uma geometria desafiadora fazer os threads rodarem limpos da caneta e dos fios (o cabeamento do Arduino para o driver de passo direito está faltando na imagem, então parece menos ruim do que era). A caneta é levantada da superfície de desenho por um servo RC empurrando toda a plotadora para longe da parede.

Essa primeira plotadora tinha um design embutido em código escrito em seu programa no Arduino. A configuração do plotter foi feita com um metro de linha enrolada em cada lado e fixando-os a um metro de distância. Por meio dessa configuração, o plotter conhecia o sistema de coordenadas ao ser ligado e podia começar a desenhar os caminhos em sua memória. Funcionou, mas era uma bagunça de usar. Ter que atualizar o Arduino quando mudar o design não foi agradável. Também ficar restrito à configuração de disparidade de um metro foi frustrante.

No entanto, foi uma boa plataforma para entender melhor o espaço do problema. Algumas aprendizagens rápidas:
  • Os motores de passo não são tão fortes - As bobinas eram muito grandes .
  • Deslocamento da ponta da caneta devido ao cruzamento de cordas - Wicked Wobbliness

O bom desses problemas é que eles me forçaram a colocar algum esforço para implementar uma aceleração e frenagem razoáveis ​​...





Evolução


Plotter número dois (o branco na imagem da capa) teve algumas melhorias:
  • Carretéis menores.
  • Carretéis movidos acima da caneta para melhor direcionamento da linha e menos movimento do pêndulo.
  • Eletrônicos mais acessíveis.
  • Cartão SD para armazenar o que traçar.
  • Novo processo de configuração que permite distâncias variáveis ​​entre os pontos de ancoragem.
  • Receptor de infravermelho para ser capaz de controlar tudo de um controle remoto.

Adicionar um leitor de cartão SD e um receptor IR foi muito mais fácil do que eu esperava. Foi um desses momentos "por que não fiz isso desde o início". O novo processo de configuração funcionou muito bem e deu muito mais flexibilidade para desenhos grandes e pequenos. O maior terreno feito até então tinha cerca de 2,5 metros de largura.

A configuração é feita navegando na plotter com o controle remoto. Primeira posição de marcação A e, em seguida, movendo-se para a posição B e marcando isso. Coloquei marcadores de 20 cm na linha de costura esquerda e direita para evitar a necessidade de qualquer medição manual. A distância m é dado apenas contando os passos no passo esquerdo enquanto se move de A para B . Assim que o plotter souber d e que sua localização atual é B você pode mover-se e plotar onde quiser no espaço entre e abaixo dos pontos de ancoragem.

Plotter número três (o laranja no vídeo abaixo) é muito semelhante ao seu antecessor, apenas algumas mudanças:
  • Todos os eletrônicos construídos como um escudo para o Arduino.
  • Watchdog de nível de bateria, permitindo "pausar - trocar bateria - retomar".

Isso tudo era de boas intenções, mas. Colocar IC:s do driver de passo diretamente no escudo, ignorando os drivers enviados com os steppers, significava que os leds não piscavam mais. É triste assistir. Super chato. Além disso, o led on-board do Arduino está escondido atrás do escudo, escondendo as piscadas convenientes que você obtém quando o receptor IR está recebendo, tornando-o incerto se você pressionou o botão de calibração ou não. Medir o nível da bateria parecia uma boa ideia, mas, na realidade, sempre recorri a plotagens de longa duração com energia a cabo.

Plotter número quatro (O fabuloso!) Foi feito como um presente de aniversário para meu irmão. É de longe o mais bonito, construído com componentes eletrônicos tipo escudo, mas deixando os drivers piscantes visíveis em toda a sua glória. Observe que os cabos são deixados desnecessariamente longos apenas para a aparência!

Plotter número cinco (Edição MacGyver) foi construído apenas como uma prova de conceito para a descrição deste projeto. Eu queria mostrar que você pode construir uma plotadora como essa sem nenhuma ferramenta sofisticada. Sentei-me na minha garagem e olhei em volta para ver como poderia construí-la. O arame de amarração (arame de metal macio usado para conectar vergalhões) foi minha primeira escolha óbvia. Ao procurá-lo encontrei um rolo de fita para dutos e imaginei que isso me pouparia tempo e daria mais estabilidade. Gravatas e fita adesiva também estavam na minha lista, mas não eram necessárias. A única coisa que eu realmente não conseguia descobrir era como fazer alguns bons carretéis sem muito trabalho. Voltei em casa para tomar um café e lá estava ela, a tampa de uma vasilha de leite! Sinceramente, demorou menos tempo para construir o quadro da plotadora cinco do que para imprimir em 3D o design original. E funciona tão bem (quase pelo menos) quanto os outros que construí.



Plotter número seis

Espere o que? De alguma forma, eu construí outro. Não pude evitar. Algumas coisas que me incomodaram precisavam ser corrigidas. Também melhorias graças a alguns comentários aqui.
  • O tamanho da impressão 3D da plotadora era muito grande e lento.
  • Mover a caneta em vez de todo o plotter parecia, pelo menos, valer a pena tentar.
  • Mover o servo e o receptor de infravermelho para os pinos "analógicos" permitiria a depuração serial! (Obrigado jrcTexas por apontar que eu poderia!)

Então, aqui está o resultado:







Então, quão bem essa coisa nova funciona? Bom e mau. As mudanças parecem boas no geral, mas há um problema. Como a caneta não está fixada na moldura, ela balança um pouco durante a plotagem. Isso torna a precisão pior do que na geração anterior. O grande benefício é limpar os pinos IO digitais 0-1 para que possam ser usados ​​para depuração. Isso torna a vida muito mais fácil!

Também comecei a fazer alguns testes de estresse nos steppers para descobrir como não perder etapas:





O que descobri no teste de estresse foi que eu precisava desacelerar um pouco para ter torque suficiente. Eu também calculei a força real das cordas dependendo de onde o plotter está na parede:

Eu posso acompanhar o teste de estresse para descobrir como diferentes sequências de etapas e voltagem também atuam. Algum dia.





Usando o plotter


Eu faço um vídeo mostrando como a configuração e plotagem funcionam na vida real e em tempo real.

Como pode ser visto no vídeo, a configuração é bastante simples e leva pouco tempo. O desafio típico de configuração é encontrar bons pontos de ancoragem. Para quadros-brancos, usei principalmente pequenas ventosas nas quais colei um laço de linha de costura ou algo semelhante para pendurar a plotadora com um clipe de papel. Um aspecto importante do ponto de ancoragem é colocar o fio o mais próximo possível da parede, para obter melhor pressão da caneta na parede.

Outra advertência é traçar no alto em lotes amplos. Quando mais torque é necessário para puxar a rosca, os steppers começarão a perder etapas, fazendo com que a plotadora perca o controle de sua localização exata, pois não há codificadores para ajudar. Portanto, o conselho geral é:pendure alto, imprima baixo.





Hardware de plotadora


Construir o plotter é bastante simples e se parece muito com a maioria dos outros projetos do Arduino. Você tem um Arduino Uno, alguns componentes que deseja usar e um monte de cabos para conectar tudo.

Como pode ser visto nos esquemas, você usará praticamente todos os pinos digitais e, possivelmente, alguns analógicos, por exemplo. deseja monitorar os níveis da bateria. Uma ressalva com isso é que você acabará usando o pino 0-1, que funciona como TX / RX. Para evitar fritar coisas você precisará desconectar tudo o que conectou lá quando você programa o Arduino! Este é o motivo pelo qual construí minhas plotadoras mais recentes com todos os componentes eletrônicos em um escudo que eu poderia apenas destacar durante a programação.

O servo RC pode ser praticamente qualquer servo de qualquer dimensão. Você apenas terá que ser criativo e montá-lo de forma que possa empurrar a plotadora para longe (ou não) da parede.

Os motores de passo e drivers podem potencialmente ser trocados para algum outro tipo, mas os pequenos 28BYJ-48 são muito convenientes. Eles não são tão poderosos assim e eu adoraria construir um plotter que seja muito mais rápido algum dia. Os motores são classificados como 5 V, mas felizmente ignorei isso e forneci a eles tudo entre 5-9 V sem problemas. Eles esquentam, mas ainda não fritei nenhum.

O módulo do cartão micro SD é direto para se conectar ao Arduino, seja por meio dos pinos de interface SPI ou dos pinos digitais 10-13.

O receptor IR TSOP 4838 também funciona bem conectado diretamente ao Arduino.

Minha terceira e quarta plotadoras tinham um watchdog de nível de bateria por um divisor de tensão de resistor adicionado a uma entrada analógica. Eu também pensei que teria o monitoramento da temperatura dos steppers adicionado de uma maneira semelhante. Meu conselho, apenas ignore.

Eu recomendo fortemente que você construa e teste uma coisa de cada vez. Não monte tudo, coloque seus gráficos no SD e espere traçar imediatamente. Eu recomendo fazer o seguinte:
  • Comece testando o receptor IR. Use o exemplo IRRecvDump que vem com a biblioteca IRRemote. Você precisará disso para gravar os códigos das chaves remotas de qualquer maneira.
  • Teste seu servo. Por exemplo, use o exemplo de varredura da biblioteca Servo.
  • Teste seu cartão SD. Experimente os exemplos para a biblioteca SD.
  • Teste o controle dos escalonadores. Experimente os exemplos da biblioteca Stepper.
  • Quando você se sentir confortável com as partes acima, atualize o programa da plotadora no Arduino e conecte todos os componentes. (não monte e faça nada bonito ainda)
  • Ligue o Arduino e veja o que acontece. Se tudo funcionar, o servo deve fazer uma pequena varredura logo após ser ligado.
  • Tente controlar os steppers do controle remoto. certifique-se de descobrir qual stepper está à esquerda e qual está à direita. Certifique-se de tê-los conectado de forma que o botão "REEL_IN" realmente puxe o barbante e não o contrário. Eu lhe dou 50% de chance de que você precise inverter a ordem dos pinos no software ou no hardware. (não vale a pena se preocupar muito, é tão fácil apenas inverter os conectores. Confie, mas verifique!
  • Quando você se sentir confiante de que todos os itens acima funcionam, você estará pronto para montar tudo em forma de plotter e tentar pendurar na parede!

Não vou dar instruções superdetalhadas sobre a montagem das peças aqui. É melhor que você explore seu hardware e encontre soluções que funcionem para você. Inspire-se no plotter "MacGyver" acima, mantenha-o simples. Você sempre pode ir extravagante e perfeito mais tarde. Abaixo está um vídeo muito incoerente de mim falando sobre algumas coisas de hardware. Você também precisará se familiarizar com o software e fazer um arquivo para plotagem, veja mais abaixo.





Software de plotter


Todo o software está disponível aqui no GitHub. Peço desculpas pelo estado do código, é realmente um hack. Talvez eu demore meu tempo para limpá-lo, mas é muito provável que você dê uma olhada antes que isso aconteça. Desculpe.

O software da plotadora faz basicamente duas coisas:
  • Permita a navegação e configuração do controle remoto
  • Desenhe o conteúdo de um arquivo .svg armazenado no cartão SD.

Como a memória do programa no Arduino Uno é bastante limitada, muitos atalhos horríveis foram usados ​​para ajustar o código na memória. Isso foi particularmente verdadeiro para a primeira plotadora que não tinha o cartão SD e os gráficos também precisaram ser programados diretamente no Arduino. A análise de .svg é extremamente limitada e só pode lidar com caminhos com linhas (sem curvas) e exige que seja um dialeto específico de .svg que usei para gerar INKSCAPE.

Os arquivos.svg são armazenados na pasta de nível superior do cartão SD como 1.svg, 2.svg e assim por diante. O arquivo a ser desenhado é selecionado pressionando o botão correspondente no controle remoto. Isso me permite ter o plotter preparado com alguns favoritos com os quais posso enriquecer rapidamente os quadros brancos das pessoas.

O IDE Arduino foi usado para construir e programar o controlador. A única biblioteca adicional usada é IRRemote (por shirriff).





Criando um arquivo plotável


Provavelmente, existem centenas de maneiras de criar um arquivo.svg que será plotado, mas só vou descrever uma aqui:
  • Use INKSCAPE
  • Desenhe o que quiser e converta em caminhos "Caminho-> Objeto em caminho"
  • Escolha "Editar caminhos por nós (F2)"
  • Selecione todos os caminhos e nós individuais. Ctrl-A dois vezes
  • Converta em linhas por "Extensões-> Modificar Caminho-> Achatar Beziers"
  • Salvar como "Inkscape SVG"
  • Execute no simulador, veja abaixo





O Simulador


Mais uma coisa! Existe um simulador. É mais ou menos obrigatório executar qualquer plotagem que você queira fazer no simulador antes de tentar imprimi-lo. Isso é mais necessário, pois a análise.svg é tão ruim que as chances são altas de que algo não seja interpretado corretamente pelo plotter.

O simulador funciona compilando o código da plotadora para osx ou linux e substituindo as chamadas "digitalWrite" por impressões para stdout (timestamp, pin, state) que são então canalizadas para uma IU de visualização.

O simulador foi escrito depois que eu tive um bug que fazia com que uma impressão de 2 horas estragasse miseravelmente depois de 95% ou mais. Eu estava completamente perdido com o que tinha acontecido e percebi que precisava de alguma forma de depurar isso. Descobriu-se que era um bug de análise flutuante causado por um número no .svg com quantidades ridículas de decimais. (Eu fiz minha própria análise, pois as funções da biblioteca não caberiam na memória). Foi um grande bug porque me obrigou a fazer o simulador.

Usar o simulador durante o desenvolvimento pode ajudar muito. Pode ser executado muito, muito mais rápido do que em tempo real, o que é muito conveniente. Também mostra quanto tempo o gráfico realmente levará quando executado em tempo real. Há um leia-me ao lado do código do simulador sobre como usá-lo.





Melhorias futuras


Aqui está uma lista do início da minha mente sobre o que poderia ser melhorado:
  • Pare de analisar.svg na plotadora, tenha um analisador real no computador e crie um bom formato para a plotadora.
  • Melhor quebra, o software atual só lê um segmento de linha à frente, o que às vezes é muito pouco se uma ligeira curva se transforma em uma curva acentuada.
  • Codificadores ou algum tipo de feedback para evitar se perder ao perder etapas.
  • Escreva um software limpo adequado.
  • Use WiFi enabled controller and use phone instead of remote.





Some Final Words


As you probably understand by now I spent quite some time with this project, mostly a long time ago. I still think it is fun to play around with and I have tons of ideas of what to improve, new variations and new walls to decorate. However I simply don't have time, there are so many other projects and things like family and work.

What I really would love is if some of you fine people on the internet get something out of reading this and get inspiration for your own projects. I would also be happy if some of you build your own plotters and make them work!

Although I think I succeeded in building a minimalistic plotter, I did not manage to get the cost under $10 as I had set as a target for myself. But as parts keep getting cheaper it is probably there in a year or so...

Oh, one more thing. Please don't kill me over the spaghetti code. It was never written to be shared, I was busy drawing on the wall at the time and couldn't care less about code. I decided to share it anyway, so be happy over that instead.

Bon Voyage,

Fredrik

Código

Stringent
Code, documentation and cad drawings for the wall plotter Stringent.https://github.com/snebragd/stringent

Peças personalizadas e gabinetes

uploaded a new stl for the base, the old one was broken somehow.New base for the plotter. Smaller footprint -> less to print. Servo action is now to move pen rather than push plotter away from wall.

Esquemas

Simple electronics schematic

Processo de manufatura

  1. O esforço multi-habilidades para manutenção
  2. O controle de qualidade é a primeira etapa para a confiabilidade do motor
  3. A importância das tendências na confiabilidade do motor elétrico
  4. Monitoramento da saúde do maquinário da fábrica
  5. Enrolamentos do motor:quais são as diferenças?
  6. O guia completo para escolher um motor à prova de explosão
  7. O guia completo para o armazenamento adequado de motores elétricos
  8. Motor CC x CA:qual é a diferença?
  9. Motor CA x CC:qual é a diferença entre eles?
  10. Como escolher o redutor certo