Índice:

Firmware do Arduino do soldador local 1-2-3: 7 etapas (com imagens)
Firmware do Arduino do soldador local 1-2-3: 7 etapas (com imagens)
Anonim
Image
Image

Por que outro projeto de soldador por pontos?

Construir um soldador por ponto é um dos (provavelmente poucos) casos em que você pode construir algo por uma fração do preço da versão comercial com qualidade comparável. E mesmo que construir antes de comprar não seja uma estratégia vencedora, é muito divertido!

Então, decidi embarcar no projeto e observei como outras pessoas fizeram isso. Há literalmente uma tonelada de informações e vídeos interessantes sobre isso na rede, com uma grande variação na qualidade de design e construção.

A qualidade da construção que se pode alcançar de forma realista depende das ferramentas, máquinas e instalações disponíveis, por isso não foi surpreendente ver uma grande variação nesta frente. Por outro lado, eu não esperava ver que a maioria dos projetos usa apenas um interruptor manual simples para iniciar e parar o processo de soldagem.

Na verdade, o controle preciso do tempo de soldagem é a chave para a qualidade de suas soldas, e você não pode conseguir isso girando um interruptor com a mão.

Eu senti que, embora construir para você mesmo um soldador por ponto seja um tópico que provavelmente já foi espancado até a morte, talvez alguém pudesse fazer uma máquina melhor usando o processo de soldagem de três etapas com tempos precisos, como fazem as máquinas profissionais. Então, eu me dei cinco objetivos de design principais para o meu projeto:

Suporte para processo de soldagem de três etapas

Cronometragens precisas e configuráveis

Capacidade de armazenar e recuperar persistentemente perfis de soldagem

Simplicidade de design e construção

Uso apenas de componentes comumente disponíveis

O resultado é meu soldador de ponto 1-2-3 e neste instrutível explicarei a parte de controle do processo de soldagem do projeto. O vídeo e este instrutível mostram fotos do soldador de teste de protótipo, antes que todos os componentes sejam montados em uma caixa apropriada. Uma placa para este projeto é descrita em um instrutor separado.

Se você precisa se familiarizar com o conceito de soldagem por resistência e como se pode fazer um soldador usando um transformador de micro-ondas, faça isso antes de continuar lendo. Vou me concentrar no controle do soldador, não em como um soldador funciona ou como construí-lo. Eu sinto que isso está bem coberto em outro lugar.

Etapa 1: receita

Soldagem 1-2-3
Soldagem 1-2-3

Vejamos os componentes do soldador por resistência:

Transformador de soldagem. Fornece a saída de baixa tensão / alta corrente necessária para soldagem por resistência por conversão da tensão da linha CA. Para um soldador feito pelo próprio, o transformador de soldagem é normalmente obtido pela conversão de um transformador de forno de micro-ondas para saída de baixa tensão e alta corrente. Isso é feito removendo o enrolamento secundário de alta tensão do MOT e enrolando um novo secundário consistindo de algumas voltas de um cabo de cobre muito espesso. Existem muitos vídeos no YouTube que mostram como fazer isso

Circuito elétrico. Liga e desliga o transformador de soldagem e seu funcionamento é controlado pelo Circuito de Controle. O circuito de alimentação opera na tensão da rede elétrica

Circuito de controle. Controla todas as operações do soldador:

    Permite ao usuário definir e alterar os tempos de soldagem

    • Permite ao usuário armazenar e recuperar sincronizações de soldagem.
    • E, por último, mas não menos importante, permite ao usuário iniciar um processo de soldagem enviando comandos ao Circuito de Potência, que liga e desliga o transformador.

UI. O usuário se comunica com o circuito de controle por meio de uma interface de usuário

Este instrutível descreve a IU e o circuito de controle. A interface do usuário e o design do circuito de controle que proponho são, na verdade, bastante independentes dos outros blocos e podem ser facilmente adaptados a um soldador local existente, desde que sua encarnação atual do circuito de energia possa lidar com o sinal de saída digital do circuito de controle. Portanto, se você já tem um soldador eletronicamente comutado, pode adicionar os componentes de controle e IU descritos aqui em cima disso, sem outras modificações.

Se você tem apenas um botão liga / desliga manual agora, também precisará construir um circuito de força.

Antes de descrever a operação do firmware para o circuito de controle, vamos ver um pouco mais detalhadamente como funciona o processo de soldagem.

Etapa 2: Soldagem 1-2-3

As máquinas de soldagem profissionais não soldam em uma etapa; eles usam uma sequência automatizada de três etapas. A soldagem por resistência de três etapas consiste em:

Etapa de aquecimento. O transformador de soldagem é ligado e a corrente flui através dos eletrodos através das peças de trabalho. Isso serve apenas para aquecer o metal

Etapa de pressão: o transformador de soldagem é desligado; as peças de trabalho são mantidas firmemente pressionadas umas contra as outras. As superfícies das peças de trabalho de metal quente amolecido fazem um contato mecânico e elétrico muito bom agora

Etapa de soldagem: o transformador de soldagem é ligado novamente. As superfícies de metal agora em contato íntimo são soldadas sob pressão

A duração das etapas individuais em geral não é uniforme e depende da corrente disponível do soldador, do tipo de material que você está tentando soldar (principalmente sua resistência e ponto de fusão) e da espessura das peças de trabalho.

Muitos dos soldadores autoconstruídos sobre os quais aprendi não têm controle de tempo automatizado, o que torna a operação confiável e repetível muito difícil.

Alguns têm a capacidade de definir um tempo de soldagem, geralmente por meio de um potenciômetro. Kerry Wong fez um muito bom nesta aula com um par extra de eletrodos especificamente para soldar baterias.

Muito poucos soldadores autoconstruídos são capazes de executar automaticamente as três etapas de soldagem descritas acima. Alguns têm apenas um conjunto de durações fixas, como esta e esta. Com outros, você pode alterar algumas das durações, como com este. Tem uma duração fixa para as etapas de aquecimento e pressão, enquanto a duração da etapa de soldagem pode ser alterada por meio de um potenciômetro.

Isso torna o processo parcialmente ajustável, mas pode ser difícil encontrar uma configuração novamente quando você quiser soldar novamente aquele material específico da aba da bateria após algum tempo. Depois de encontrar os tempos certos para um determinado material e combinação de espessura, você não quer ter que fazer tudo de novo. É uma perda de tempo (e material) e pode ser um pouco frustrante.

O que você (bem, eu) realmente deseja aqui é total flexibilidade (configurabilidade) para todos os tempos e a capacidade de armazenar e recuperar configurações, uma vez que as tenhamos acertado.

Felizmente, não é tão difícil. Vamos ver como controlar a soldagem por resistência de três etapas.

Etapa 3: Controle de soldagem 1-2-3

1-2-3 Controle de Soldagem
1-2-3 Controle de Soldagem

Implementamos o Circuito de Controle com um microcontrolador (MCU). O firmware MCU opera como uma máquina de estado com quatro estados, como vimos na etapa anterior:

o Estado 0: Sem soldagem

o Estado 1: Soldagem, etapa de aquecimento

o Estado 2: Soldagem, pressione etapa

o Estado 3: Soldagem, etapa de soldagem

Estou usando o pseudo código de estilo C para descrever o fluxo do programa aqui porque é fácil relacioná-lo ao código MCU real que está escrito em C / C ++.

Após a etapa de configuração, o loop principal MCU lida com a entrada do usuário e as transições de estado da seguinte maneira:

01: loop

02: switch (state) {03: case 0: 04: readUserInput 05: case 1, 2, 3: 06: if (temporizador de soldagem expirou) {07: // mover para o próximo estado 08: state = (state + 1)% 4; 09: alternar o controle de energia 10: se (o estado não for 0) {11: definir a nova duração da etapa e reiniciar o temporizador de soldagem 12:} 13:} 14: finalizar o loop

Se o estado atual for 0, então lemos o estado da IU para processar a entrada do usuário e seguir para a próxima iteração.

Usamos um cronômetro de soldagem para controlar a duração das etapas de soldagem. Suponha agora que a sequência de soldagem acabou de começar quando inserimos a instrução switch. O controle de energia está ligado, o transformador de soldagem está energizado e o estado atual é 1.

Se o temporizador de soldagem não tiver expirado, a condicional (linha 6) é avaliada como falsa, saímos da instrução switch e passamos para a próxima iteração do loop de evento.

Se o tempo de soldagem expirou, entramos na condicional (linha 6) e seguimos em frente:

1. Calcule e salve o próximo estado (linha 8). Usamos a aritmética do módulo 4 para seguir a sequência de estados correta 1-2-3-0. Se o estado atual era 1, passamos agora para o estado 2.

2. Em seguida, alternamos o controle de energia (linha 9). No estado 1 o controle de força estava ligado, agora está desligado (como deveria estar no estado 2, pressione passo, com o transformador de soldagem não energizado).

3. O estado agora é 2, então inserimos a condicional na linha 10.

4. Defina o cronômetro de soldagem para a nova duração da etapa (duração da etapa de injeção) e reinicie o cronômetro de soldagem (linha 11).

As seguintes iterações do loop principal serão bem monótonas até que o temporizador de soldagem expire novamente, ou seja, a etapa de injeção seja concluída.

Nesse momento, entramos no corpo da condicional na linha 6. O próximo estado (estado 3) é calculado na linha 8; a energia para o transformador é ligada novamente (linha 9); o temporizador de soldagem é definido para a duração da etapa de soldagem e reiniciado.

Quando o cronômetro expira novamente, o próximo estado (estado 0) é calculado na linha 8, mas agora a linha 11 não é executada, então o cronômetro não é reiniciado quando terminamos o ciclo de soldagem.

Na próxima iteração do loop, voltaremos a processar a entrada do usuário (linha 4). Feito.

Mas como começamos o processo de soldagem? Bem, começamos quando o usuário pressiona o botão de soldagem.

O botão de soldagem é conectado a um pino de entrada MCU, que é conectado a uma interrupção de hardware. Pressionar o botão causa uma interrupção. O manipulador de interrupção inicia o processo de soldagem definindo o estado para 1, definindo o temporizador de soldagem para a duração da etapa de aquecimento, iniciando o temporizador de soldagem e ligando o controle de energia:

19: startWelding

20: estado = 1 21: definir a duração da etapa de aquecimento e iniciar o temporizador de soldagem 22: ligar o controle de energia 23: finalizar o início da soldagem

Etapa 4: gerenciamento de IU, espera e outras complicações de firmware

Gerenciamento de IU, espera e outras complicações de firmware
Gerenciamento de IU, espera e outras complicações de firmware

A IU consiste em um display, um codificador com botão, um botão momentâneo e um led. Eles são usados da seguinte forma:

O display fornece feedback ao usuário para configuração e mostra o progresso durante a soldagem

O codificador com botão de pressão controla toda a interação com o firmware, exceto o início de uma sequência de soldagem

O botão momentâneo é pressionado para iniciar uma sequência de soldagem

O led acende durante uma sequência de soldagem e apaga e apaga repetidamente durante o modo de espera

Há uma série de coisas que o firmware deve fazer além de controlar o processo de soldagem, conforme explicado na etapa anterior:

Lendo a entrada do usuário. Isso envolve a leitura da posição do codificador e do status do botão. O usuário pode girar o codificador para a esquerda ou direita para mover de um item de menu para o próximo e para alterar os parâmetros no visor, ou pode pressionar o botão do codificador para confirmar um valor inserido ou para mover um nível acima na estrutura do menu

  • Atualizando a IU.

    A exibição é atualizada para refletir as ações do usuário

    O display é atualizado para refletir o progresso do processo de soldagem (mostramos um indicador próximo à duração da etapa atual na sequência de soldagem)

    O led acende quando iniciamos a soldagem e apaga quando terminamos

Espera. O código controla há quanto tempo o usuário está inativo e entra no modo de espera quando o período de inatividade excede um limite predefinido. No modo de espera, a tela é desligada e o led na IU é aceso e apagado repetidamente para sinalizar a condição de espera. O usuário pode sair do modo de espera girando o codificador em qualquer direção. Quando em espera, a IU não deve reagir a outras interações do usuário. Observe que o soldador só tem permissão para entrar em espera quando está no estado 0, por exemplo, não enquanto está soldando

Gerenciamento de padrões, armazenamento e recuperação de perfis. O firmware suporta 3 perfis de soldagem diferentes, ou seja, configurações para 3 materiais / espessuras diferentes. Os perfis são armazenados na memória flash, para que não sejam perdidos quando você desligar o soldador

Caso você esteja se perguntando, adicionei o recurso de espera para evitar queimar a tela. Quando o soldador está ligado e você não está usando a IU, os caracteres mostrados no visor não mudam e podem causar queimaduras. Sua milhagem pode variar dependendo da tecnologia do visor, no entanto, estou usando um visor OLED, e eles estão propensos a queimar muito rapidamente se não for cuidado, então desligar o display automático é uma boa ideia.

Todos os itens acima complicam, é claro, o código “real”. Você pode ver que há um pouco mais de trabalho a fazer do que o que vimos nas etapas anteriores para obter um software bem embalado.

Isso confirma a regra de que, com o software, a implementação do que você constrói em torno da funcionalidade principal é freqüentemente mais complexa do que a implementação da funcionalidade principal em si!

Você encontrará o código completo no link do repositório no final deste manual.

Etapa 5: Circuito de Controle

Circuito de controle
Circuito de controle

O firmware foi desenvolvido e testado usando estes componentes:

  • Circuito de controle:

    Arduino Pro Mini 5V 16 MHz

  • UI:

    • Codificador rotativo com botão de pressão
    • Tela OLED branca I2C de 0,91”128x32 I2C baseada em SSD1306
    • Botão de pressão momentâneo com led embutido

Claro que você não precisa usar exatamente esses componentes em sua construção, mas pode ter que fazer algumas modificações no código se não o fizer, especialmente se você alterar a interface de exibição, tipo ou tamanho.

Atribuição de Pin do Arduino:

  • Entrada:

    • Pinos A1 A2 A3 para codificador rotativo usado para selecionar / alterar perfis e parâmetros
    • Pino 2 conectado a um botão temporário que é pressionado para iniciar a soldagem. O botão de pressão é normalmente montado em um painel próximo ao codificador e pode ser conectado em paralelo a um pedal switch.
  • Saída:

    • Pinos A4 / A5 para I2C controlando o display.
    • Pino 11 para saída digital para o led, que é ligado durante um ciclo de soldagem e atenuado durante o modo de espera. Não há resistor limitador de corrente para o led no esquema porque usei um led embutido no botão de soldagem que veio com um resistor em série. Se você usar um led separado, precisará adicionar um resistor em série entre o pino 11 do Pro Mini e o pino 3 do conector J2, ou soldá-lo em série com o led no painel frontal.
    • Pino 12 para saída digital para o circuito de alimentação principal (entrada para circuito de alimentação). Este pino é normalmente BAIXO e ficará ALTO-BAIXO-ALTO durante um ciclo de soldagem.

Depois de fazer o protótipo em uma placa de ensaio, montei o circuito de controle em uma placa protetora independente, incluindo um módulo de fonte de alimentação (HiLink HLK-5M05), o capacitor e resistores para eliminar o botão de soldagem e conectores para display, codificador, led, botão e saída do circuito de alimentação. As conexões e os componentes são mostrados no esquema (exceto o módulo de alimentação da rede elétrica).

Existe também um conector (J3 no esquema) para um pedal conectado em paralelo ao botão de soldagem, de modo que se pode iniciar a soldagem a partir do painel ou usando um pedal, que considero muito mais conveniente.

O conector J4 é conectado à entrada do optoacoplador do circuito de força, que é montado em uma placa protetora separada no protótipo.

Para a conexão ao display (conector J6), eu realmente achei mais fácil usar um cabo plano de 4 fios com dois fios indo para um conector de dois pinos (correspondendo aos pinos 1, 2 de J6), e dois fios com Dupont fêmea conectores indo diretamente para os pinos A4 e A5. Em A4 e A5 eu soldei um conector macho de dois pinos diretamente em cima da placa Pro Mini.

Provavelmente irei adicionar debouncing para o botão do codificador também na compilação final. Um design de PCB aprimorado para este projeto é descrito em um instrutível separado.

Etapa 6: Circuito de energia

Circuito elétrico
Circuito elétrico

AVISO: O circuito de alimentação opera com tensão de rede com correntes amplamente suficientes para matá-lo. Se você não tiver experiência com circuitos de tensão de rede, não tente construir um. No mínimo, você deve usar um transformador de isolamento para fazer qualquer trabalho nos circuitos de tensão da rede elétrica.

O esquema do circuito de potência é muito padrão para o controle de uma carga indutiva com um TRIAC. O sinal do circuito de controle de controle aciona o lado emissor do optoacoplador MOC1, o lado do detector, por sua vez, aciona a porta do triac T1. O triac comuta a carga (o MOT) por meio de uma rede snubber R4 / CX1.

Optoacoplador. O MOC3052 é um optoacoplador de fase aleatória, não do tipo cruzamento zero. Usar comutação de fase aleatória é mais apropriado do que comutação de cruzamento zero para uma carga indutiva pesada como o MOT.

TRIAC. O T1 triac é um BTA40 classificado para 40A de corrente contínua no estado, o que pode parecer um exagero em termos da corrente consumida pelo MOT no estado estacionário. Considerando que a carga tem uma indutância bastante alta, a classificação com a qual devemos nos preocupar é a corrente de pico de pico não repetitiva no estado. Esta é a corrente de pico da carga. Ele será puxado todas as vezes durante o transiente de ativação pelo MOT e será várias vezes maior do que a corrente no estado ligado. O BTA40 tem uma corrente de estado de pico de pico não repetitivo de 400 A a 50 Hz e 420 A a 60 Hz.

Pacote TRIAC. Mais um motivo para escolher um BTA40 é que ele vem em um pacote RD91 com aba isolada e possui terminais tipo pá. Não sei sobre você, mas prefiro uma guia isolada para semicondutores de potência na tensão da rede elétrica. Além disso, os terminais macho oferecem uma conexão mecânica sólida que permite manter o caminho de alta corrente (fios marcados com A no esquema) completamente fora do proto ou placa PCB. O caminho da alta corrente passa pelos fios marrons (mais grossos) marcados com A na imagem. Os fios marrons são conectados aos terminais triac spade por meio de terminais piggyback que também são conectados à rede RC na placa por meio dos fios azuis (mais finos). Com este truque de montagem, o caminho de alta corrente está fora da placa proto ou PCB. Em princípio, você poderia fazer o mesmo com fios de solda nas pernas do pacote TOP3 mais comum, mas a montagem seria mecanicamente menos confiável.

Para o protótipo, montei o triac em um pequeno dissipador de calor com a ideia de fazer algumas medições de temperatura e possivelmente montá-lo em um dissipador de calor maior ou mesmo em contato direto com a caixa de metal para a construção final. Observei que o triac quase não aquece, em parte porque é apropriadamente superdimensionado, mas principalmente porque a maior parte da dissipação de energia na junção é devido à comutação do estado de condução e o triac claramente não muda com frequência nesta aplicação.

Rede snubber. R4 e CX1 são a rede de amortecimento para limitar a taxa de alteração vista pelo triac quando a carga é desligada. Não use nenhum capacitor que possa ter em sua caixa de peças sobressalentes: CX1 deve ser um capacitor tipo X (ou melhor, tipo Y) classificado para operação com tensão de rede.

Varistor. R3 é um varistor dimensionado de acordo com o valor de pico da tensão da rede elétrica. O esquema mostra um varistor classificado para 430 V, que é apropriado para a tensão de rede de 240 V (cuidado aqui, a classificação de tensão no código do varistor é um valor de pico, não um valor RMS). Use um varistor classificado para pico de 220 V para uma tensão de rede de 120 V.

Falha de componente. É uma boa prática perguntar a si mesmo quais seriam as consequências da falha de um componente e identificar os piores cenários. Uma coisa ruim que pode acontecer neste circuito é o triac falhando e causando curto nos terminais A1 / A2. Se isso acontecer, o MOT ficará permanentemente energizado enquanto o triac estiver em curto. Se você não notasse o zumbido do transformador e soldasse com o MOT permanentemente ligado, você superaqueceria / estragaria a peça de trabalho / eletrodos (não é bom) e, possivelmente, superaqueceria / derreteria o isolamento do cabo (muito ruim). Portanto, é uma boa ideia incluir um aviso para essa condição de falha. A coisa mais fácil é conectar uma lâmpada em paralelo ao MOT primário. A lâmpada acenderá quando o MOT estiver ligado e fornecerá uma indicação visual de que o soldador está funcionando conforme planejado. Se a luz acender e continuar acesa, você sabe que é hora de desligar o plugue. Se você assistiu ao vídeo no início, deve ter notado uma lâmpada vermelha acendendo e apagando no fundo durante a soldagem. Isso é o que é aquela luz vermelha.

Um MOT não é uma carga muito bem comportada, mas apesar de inicialmente estar um pouco preocupado com a confiabilidade da comutação através do circuito de força, não vi nenhum problema.

Etapa 7: Notas Finais

Notas Finais
Notas Finais

Bem, em primeiro lugar, muito obrigado às muitas pessoas que gastaram seu tempo explicando na rede como construir um soldador por pontos usando um transformador de forno de micro-ondas adaptado. Este foi um grande bootstrap para todo o projeto.

No que diz respeito ao firmware Spot Welder 1-2-3, teria sido um trabalho longo e tedioso escrever o código sem as abstrações fornecidas por uma série de bibliotecas além do IDE Arduino padrão. Acho essas bibliotecas de temporizador (RBD_Timer), codificador (ClickEncoder), menus (MenuSystem) e EEPROM (EEPROMex) muito úteis.

O código do firmware pode ser baixado do repositório de código do Spot Welder 1-2-3.

Se você planeja construir isso, sugiro fortemente usar o design de PCB descrito aqui, que incorpora uma série de refinamentos.

Recomendado: