Tabla de contenido:

Spot Welder 1-2-3 Firmware de Arduino: 7 pasos (con imágenes)
Spot Welder 1-2-3 Firmware de Arduino: 7 pasos (con imágenes)

Video: Spot Welder 1-2-3 Firmware de Arduino: 7 pasos (con imágenes)

Video: Spot Welder 1-2-3 Firmware de Arduino: 7 pasos (con imágenes)
Video: Spot Welder 1-2-3 UI 2024, Noviembre
Anonim
Image
Image

¿Por qué otro proyecto de soldadura por puntos?

La construcción de una soldadora por puntos es uno de los (posiblemente pocos) casos en los que puede construir algo por una fracción del precio de la versión comercial con una calidad comparable. E incluso si compilar antes de comprar no fuera una estrategia ganadora, ¡es muy divertido!

Así que decidí embarcarme en el proyecto y miré cómo otras personas lo habían hecho. Hay literalmente un montón de información y videos interesantes sobre esto en la red, con una gran variación en la calidad del diseño y la construcción.

La calidad de la construcción que uno puede lograr de manera realista depende de las herramientas, las máquinas y las instalaciones disponibles, por lo que no fue sorprendente ver una variación bastante amplia en este frente. Por otro lado, no esperaba ver que la mayoría de los proyectos solo usan un simple interruptor manual para iniciar y detener el proceso de soldadura.

De hecho, el control preciso del tiempo de soldadura es clave para la calidad de sus soldaduras, y no puede lograrlo presionando un interruptor con la mano.

Sentí que, si bien construirse un soldador por puntos es un tema que probablemente ya ha sido golpeado hasta la muerte, tal vez se podría hacer una mejor máquina utilizando el proceso de soldadura de tres pasos con tiempos precisos, como lo hacen las máquinas profesionales. Así que me di cinco objetivos principales de diseño para mi proyecto:

Soporte para el proceso de soldadura de tres pasos

Tiempos precisos y configurables

Capacidad para almacenar y recuperar de forma persistente perfiles de soldadura

Sencillez de diseño y construcción

Uso de solo componentes comúnmente disponibles

El resultado es mi soldador por puntos 1-2-3, y en este instructivo explicaré la parte de control del proceso de soldadura del proyecto. El video y este instructivo muestran imágenes del prototipo de soldador de prueba, antes de que todos los componentes se monten en una caja adecuada. Una tabla para este proyecto se describe en un instructivo separado.

Si necesita familiarizarse con el concepto de soldadura por resistencia y cómo se puede hacer un soldador con un transformador de microondas, hágalo antes de seguir leyendo. Me concentraré en el control del soldador, no en cómo funciona un soldador o cómo construir uno. Siento que esto está bien cubierto en otra parte.

Paso 1: receta

Soldadura 1-2-3
Soldadura 1-2-3

Echemos un vistazo a los componentes del soldador por resistencia:

Transformador de soldadura. Proporciona la salida de bajo voltaje / alta corriente necesaria para la soldadura por resistencia mediante la conversión del voltaje de línea de CA. Para un soldador de fabricación propia, el transformador de soldadura normalmente se obtiene convirtiendo un transformador de horno microondas para salida de bajo voltaje y alta corriente. Esto se hace quitando el devanado secundario de alto voltaje del MOT y enrollando un nuevo secundario que consta de unas pocas vueltas de un cable de cobre muy grueso. Hay muchos videos en YouTube que le muestran cómo hacer esto

Circuito de potencia. Enciende y apaga el transformador de soldadura y su funcionamiento es controlado por el circuito de control. El circuito de potencia funciona con tensión de red

Circuito de control. Controla todas las operaciones del soldador:

    Permite al usuario configurar y cambiar los tiempos de soldadura

    • Permite al usuario almacenar y recuperar tiempos de soldadura.
    • Y, por último, pero no menos importante, permite al usuario iniciar un proceso de soldadura enviando comandos al circuito de potencia, que enciende y apaga el transformador.

UI. El usuario se comunica con el circuito de control a través de una interfaz de usuario

Este instructivo describe la interfaz de usuario y el circuito de control. La interfaz de usuario y el diseño del circuito de control que propongo son en realidad bastante independientes de los otros bloques y se pueden adaptar fácilmente a una soldadora por puntos existente, siempre que su encarnación actual del circuito de potencia pueda manejar la señal de salida digital del circuito de control. Entonces, si ya tiene un soldador conmutado electrónicamente, puede agregar los componentes de control y de interfaz de usuario que se describen aquí además de eso sin otras modificaciones.

Si solo tiene un interruptor de encendido manual en este momento, también necesitará construir un circuito de energía.

Antes de describir el funcionamiento del firmware para el circuito de control, veamos un poco más en detalle cómo funciona el proceso de soldadura.

Paso 2: Soldadura 1-2-3

Las máquinas de soldar profesionales no sueldan en un solo paso; utilizan una secuencia automatizada de tres pasos. La soldadura por resistencia en tres pasos consta de:

Paso de calentamiento. El transformador de soldadura está encendido y la corriente fluye a través de los electrodos a través de las piezas de trabajo. Esto está destinado a calentar el metal

Paso de presión: el transformador de soldadura está apagado; las piezas de trabajo se mantienen apretadas entre sí. Las superficies de las piezas de trabajo de metal caliente ablandado hacen ahora muy buen contacto mecánico y eléctrico

Paso de soldadura: el transformador de soldadura se vuelve a conectar. Las superficies metálicas que ahora están en contacto íntimo se sueldan a presión

La duración de los pasos individuales en general no es uniforme y depende de la corriente disponible del soldador, el tipo de material que está tratando de soldar (principalmente su resistencia y punto de fusión) y el espesor de las piezas de trabajo.

Muchos de los soldadores autoconstruidos de los que aprendí no tienen control de tiempo automatizado, lo que dificulta la operación repetible y confiable.

Algunos tienen la capacidad de establecer un tiempo de soldadura, a menudo mediante un potenciómetro. Kerry Wong ha hecho uno muy bueno en esta clase con un par adicional de electrodos específicamente para soldar baterías.

Muy pocos soldadores autoconstruidos pueden ejecutar automáticamente los tres pasos de soldadura descritos anteriormente. Algunos tienen solo un conjunto de duraciones fijas, como este y este. Con otros puedes cambiar algunas de las duraciones, como con este. Tiene una duración fija para los pasos de calentamiento y prensado, mientras que la duración del paso de soldadura se puede cambiar mediante un potenciómetro.

Esto hace que el proceso sea parcialmente ajustable, pero puede ser difícil volver a encontrar un ajuste cuando desee soldar de nuevo ese material de lengüeta de batería en particular después de que haya pasado un tiempo. Una vez que haya encontrado los tiempos correctos para una combinación particular de material y grosor, no querrá tener que hacerlo todo de nuevo. Es una pérdida de tiempo (y de material) y puede resultar un poco frustrante.

Lo que usted (bueno, yo) realmente quiere aquí es una completa flexibilidad (configurabilidad) para todos los tiempos y la capacidad de almacenar y recuperar configuraciones una vez que las hayamos acertado.

Afortunadamente, no es tan difícil. Veamos cómo controlar la soldadura por resistencia de tres pasos.

Paso 3: Control de soldadura 1-2-3

1-2-3 Control de soldadura
1-2-3 Control de soldadura

Implementamos el Circuito de Control con un microcontrolador (MCU). El firmware de la MCU funciona como una máquina de estado con cuatro estados como vimos en el paso anterior:

o Estado 0: Sin soldar

o Estado 1: Soldadura, paso de calentamiento

o Estado 2: Soldadura, presione paso

o Estado 3: Soldadura, paso de soldadura

Estoy usando un pseudocódigo de estilo C para describir el flujo del programa aquí porque es fácil relacionarlo con el código MCU real que está escrito en C / C ++.

Después del paso de configuración, el bucle principal de MCU maneja la entrada del usuario y las transiciones de estado de la siguiente manera:

01: bucle

02: interruptor (estado) {03: caso 0: 04: readUserInput 05: caso 1, 2, 3: 06: si (el temporizador de soldadura ha expirado) {07: // pasar al siguiente estado 08: estado = (estado + 1)% 4; 09: alternar el control de potencia 10: si (el estado no es 0) {11: establecer la nueva duración del paso y reiniciar el temporizador de soldadura 12:} 13:} 14: fin del ciclo

Si el estado actual es 0, leemos el estado de la interfaz de usuario para procesar la entrada del usuario y pasar a la siguiente iteración.

Usamos un temporizador de soldadura para controlar la duración de los pasos de soldadura. Supongamos ahora que la secuencia de soldadura acaba de comenzar cuando ingresamos la instrucción de cambio. El control de energía está encendido, el transformador de soldadura está energizado y el estado actual es 1.

Si el temporizador de soldadura no ha expirado, el condicional (línea 6) se evalúa como falso, salimos de la instrucción de cambio y pasamos a la siguiente iteración del ciclo de eventos.

Si el temporizador de soldadura ha expirado, ingresamos el condicional (línea 6) y avanzamos:

1. Calcule y guarde el siguiente estado (línea 8). Usamos aritmética de módulo 4 para seguir la secuencia de estado correcta 1-2-3-0. Si el estado actual era 1, pasamos ahora al estado 2.

2. Luego cambiamos el control de potencia (línea 9). En el estado 1, el control de potencia estaba encendido, por lo que ahora está apagado (como debería estar en el estado 2, presione el paso, con el transformador de soldadura no energizado).

3. El estado ahora es 2, por lo que ingresamos el condicional en la línea 10.

4. Configure el temporizador de soldadura para la nueva duración del paso (duración del paso de prensado) y reinicie el temporizador de soldadura (línea 11).

Las siguientes iteraciones del bucle principal transcurrirán sin incidentes hasta que el temporizador de soldadura expire nuevamente, es decir, se complete el paso de prensado.

En este momento ingresamos el cuerpo del condicional en la línea 6. El siguiente estado (estado 3) se calcula en la línea 8; la energía al transformador se enciende nuevamente (línea 9); el temporizador de soldadura se establece en la duración del paso de soldadura y se reinicia.

Cuando el temporizador expira nuevamente, el siguiente estado (estado 0) se calcula en la línea 8, pero ahora la línea 11 no se ejecuta, por lo que el temporizador no se reinicia cuando terminamos con el ciclo de soldadura.

En la siguiente iteración del ciclo, volvemos a procesar la entrada del usuario (línea 4). Hecho.

Pero, ¿cómo comenzamos el proceso de soldadura? Bueno, comenzamos cuando el usuario presiona el botón de soldadura.

El botón de soldadura está conectado a un pin de entrada MCU, que está conectado a una interrupción de hardware. Al presionar el botón se produce una interrupción. El manejador de interrupciones inicia el proceso de soldadura configurando el estado en 1, configurando el temporizador de soldadura a la duración del paso de calentamiento, iniciando el temporizador de soldadura y activando el control de potencia:

19: empezar a soldar

20: estado = 1 21: establezca la duración del paso de calentamiento y comience el temporizador de soldadura 22: encienda el control de potencia 23: finalice el inicio de la soldadura

Paso 4: administración de la interfaz de usuario, modo de espera y otras complicaciones del firmware

Administración de la interfaz de usuario, modo de espera y otras complicaciones del firmware
Administración de la interfaz de usuario, modo de espera y otras complicaciones del firmware

La interfaz de usuario consta de una pantalla, un codificador con pulsador, un pulsador momentáneo y un LED. Se utilizan de la siguiente manera:

La pantalla proporciona información al usuario para la configuración y muestra el progreso durante la soldadura

El codificador con pulsador controla toda la interacción con el firmware, excepto el inicio de una secuencia de soldadura

El botón pulsador momentáneo se presiona para iniciar una secuencia de soldadura

El LED se enciende durante una secuencia de soldadura y se apaga y enciende repetidamente durante el modo de espera

Hay varias cosas que el firmware tiene que hacer más allá de controlar el proceso de soldadura como se explicó en el paso anterior:

Leyendo la entrada del usuario. Esto implica leer la posición del codificador y el estado del botón. El usuario puede girar el codificador hacia la izquierda o hacia la derecha para pasar de un elemento del menú al siguiente y cambiar los parámetros en la pantalla, o puede presionar el botón del codificador para confirmar un valor ingresado o subir un nivel en la estructura del menú

  • Actualización de la interfaz de usuario.

    La pantalla se actualiza para reflejar las acciones del usuario

    La pantalla se actualiza para reflejar el progreso del proceso de soldadura (mostramos un indicador junto a la duración del paso actual en la secuencia de soldadura)

    El led se enciende cuando empezamos a soldar y se apaga cuando terminamos

Apoyar. El código realiza un seguimiento de cuánto tiempo ha estado inactivo el usuario y entra en modo de espera cuando el período de inactividad excede un límite preestablecido. En espera, la pantalla se apaga y el LED de la interfaz de usuario se apaga y enciende repetidamente para señalar la condición de espera. El usuario puede salir del modo de espera girando el codificador en cualquier dirección. Cuando está en espera, la interfaz de usuario no debería reaccionar a las interacciones de otros usuarios. Tenga en cuenta que el soldador solo puede entrar en modo de espera cuando está en el estado 0, p. Ej. no mientras está soldando

Gestión de valores predeterminados, almacenamiento y recuperación de perfiles. El firmware admite 3 perfiles de soldadura diferentes, es decir, configuraciones para 3 materiales / espesores diferentes. Los perfiles se almacenan en la memoria flash, por lo que no se perderán cuando apague la soldadora

En caso de que se lo pregunte, agregué la función de espera para evitar que la pantalla se queme. Cuando la soldadora está encendida y no está usando la interfaz de usuario, los caracteres que se muestran en la pantalla no cambian y pueden causar quemaduras. Su millaje puede variar según la tecnología de pantalla, sin embargo, estoy usando una pantalla OLED y son propensos a quemar con bastante rapidez si no se cuida, por lo que tener el apagado automático de la pantalla es una buena idea.

Todo lo anterior complica, por supuesto, el código "real". Puede ver que hay un poco más de trabajo por hacer de lo que hemos visto en los pasos anteriores para obtener un software bien envuelto.

Esto confirma la regla de que, con el software, la implementación de lo que se crea en torno a la funcionalidad principal es a menudo más compleja que la implementación de la funcionalidad principal en sí.

Encontrará el código completo en el enlace del repositorio al final de este instructivo.

Paso 5: circuito de control

Circuito de control
Circuito de control

El firmware se ha desarrollado y probado utilizando estos componentes:

  • Circuito de control:

    Arduino Pro Mini 5V 16MHz

  • Interfaz de usuario:

    • Codificador rotatorio con pulsador
    • Pantalla OLED blanca I2C de 0,91 "128x32 I2C DIY basada en SSD1306
    • Pulsador momentáneo con led incorporado

Por supuesto, no necesita usar exactamente estos componentes en su compilación, pero es posible que deba realizar algunas modificaciones en el código si no lo hace, especialmente si cambia la interfaz de pantalla, el tipo o el tamaño.

Asignación de pines de Arduino:

  • Aporte:

    • Pines A1 A2 A3 al codificador rotatorio utilizado para seleccionar / cambiar perfiles y parámetros
    • Pin 2 conectado a un pulsador temporal que se presiona para comenzar a soldar. El botón pulsador normalmente se monta en un panel al lado del codificador y se puede conectar en paralelo a un interruptor de pedal.
  • Producción:

    • Pines A4 / A5 para I2C controlando la pantalla.
    • Pin 11 para salida digital al led, que se enciende durante un ciclo de soldadura y se desvanece durante el modo de espera. No hay una resistencia limitadora de corriente para el led en el esquema porque utilicé un led integrado en el botón de soldadura que venía con una resistencia en serie. Si usa un LED separado, deberá agregar una resistencia en serie entre el pin 11 del Pro Mini y el pin 3 del conector J2, o soldarlo en serie con el LED en el panel frontal.
    • Pin 12 para salida digital al circuito de alimentación principal (entrada al circuito de alimentación). Este pasador es normalmente BAJO y se pondrá ALTO-BAJO-ALTO durante un ciclo de soldadura.

Después de crear un prototipo en una placa, he montado el circuito de control en una placa proto autónoma que incluye un módulo de alimentación de red (HiLink HLK-5M05), el condensador y las resistencias para eliminar el rebote del botón de soldadura y conectores para la pantalla, el codificador y el LED., botón y salida del circuito de alimentación. Las conexiones y los componentes se muestran en el esquema (excepto el módulo de alimentación de red).

También hay un conector (J3 en el esquema) para un interruptor de pie conectado en paralelo al botón de soldadura, por lo que uno puede comenzar a soldar desde el panel o usando un interruptor de pie, que encuentro mucho más conveniente.

El conector J4 está conectado a la entrada del optoacoplador del circuito de alimentación, que está montado en una placa proto separada en el prototipo.

Para la conexión a la pantalla (conector J6), en realidad me resultó más fácil usar un cable plano de 4 hilos con dos hilos que van a un conector de dos pines (correspondientes a los pines 1, 2 de J6) y dos cables con Dupont hembra conectores que van directamente a los pines A4 y A5. En A4 y A5, soldé un cabezal macho de dos pines directamente en la parte superior de la placa Pro Mini.

Probablemente agregaré eliminación de rebotes para el botón del codificador también en la compilación final. Un diseño mejorado de PCB para este proyecto se describe en un instructivo separado.

Paso 6: circuito de potencia

Circuito de potencia
Circuito de potencia

ADVERTENCIA: El circuito de alimentación funciona con voltaje de red con corrientes suficientemente abundantes para matarlo. Si no tiene experiencia con los circuitos de voltaje de la red, no intente construir uno. Como mínimo, debe utilizar un transformador de aislamiento para realizar cualquier trabajo en los circuitos de tensión de la red.

El esquema del circuito de potencia es muy estándar para el control de una carga inductiva con un TRIAC. La señal del circuito de control de control acciona el lado del emisor del optoacoplador MOC1, el lado del detector a su vez acciona la puerta del triac T1. El triac conmuta la carga (el MOT) a través de una red de amortiguadores R4 / CX1.

Optoacoplador. El MOC3052 es un optoacoplador de fase aleatoria, no del tipo de cruce por cero. El uso de conmutación de fase aleatoria es más apropiado que la conmutación de cruce por cero para una carga inductiva pesada como el MOT.

TRIAC. El triac T1 es un BTA40 clasificado para corriente continua en estado de 40A, lo que puede parecer una exageración en términos de la corriente consumida por el MOT en estado estable. Sin embargo, teniendo en cuenta que la carga tiene una inductancia bastante alta, la clasificación por la que debemos preocuparnos es el pico de sobretensión no repetitivo en la corriente en estado. Esta es la corriente de irrupción de la carga. Se extraerá cada vez durante el transitorio de encendido por el MOT, y será varias veces mayor que la corriente de estado encendido. El BTA40 tiene una corriente en estado de pico de sobretensión no repetitiva de 400 A a 50 Hz y 420 A a 60 Hz.

Paquete TRIAC. Una razón más para seleccionar un BTA40 es que viene en un paquete RD91 con lengüeta aislada y tiene terminales de horquilla macho. No sé ustedes, pero prefiero una lengüeta aislada para semiconductores de potencia a voltaje de red. Además, los terminales de pala macho ofrecen una conexión mecánica sólida que permite mantener la ruta de alta corriente (cables marcados con A en el esquema) completamente fuera de la placa proto o PCB. La ruta de alta corriente pasa por los cables marrones (más gruesos) marcados con A en la imagen. Los cables marrones están conectados a los terminales de horquilla del triac a través de terminales superpuestos que también están conectados a la red RC en la placa a través de los cables azules (más delgados). Con este truco de montaje, la ruta de alta corriente está fuera de la placa proto o PCB. En principio, podría hacer lo mismo con los cables de soldadura en las patas del paquete TOP3 más común, pero el ensamblaje sería mecánicamente menos confiable.

Para el prototipo, he montado el triac en un pequeño disipador de calor con la idea de tomar algunas medidas de temperatura y posiblemente montarlo en un disipador de calor más grande o incluso en contacto directo con la carcasa de metal para la construcción final. Observé que el triac apenas se calienta, en parte porque está apropiadamente sobredimensionado, pero principalmente porque la mayor parte de la disipación de energía en la unión se debe al cambio de estado de conducción y el triac claramente no cambia con frecuencia en esta aplicación.

Red de amortiguadores. R4 y CX1 son la red de amortiguadores para limitar la tasa de cambio que ve el triac cuando la carga está apagada. No use ningún capacitor que pueda tener en su contenedor de repuestos: CX1 debe ser un capacitor tipo X (o mejor tipo Y) clasificado para operación de voltaje de red.

Varistor. R3 es un varistor dimensionado de acuerdo con su valor pico de voltaje de red. El esquema muestra un varistor clasificado para 430 V, que es apropiado para voltaje de red de 240 V (cuidado aquí, el voltaje nominal en el código del varistor es un valor pico, no un valor RMS). Utilice un varistor clasificado para un pico de 220 V para un voltaje de red de 120 V.

Fallo de componente. Es una buena práctica preguntarse cuáles serían las consecuencias de la falla de un componente e identificar los peores escenarios. Algo malo que podría pasar en este circuito es que el triac falle y cortocircuite los terminales A1 / A2. Si esto sucede, el MOT se energizará permanentemente mientras el triac esté en cortocircuito. Si no notara el zumbido del transformador y soldara con el MOT permanentemente encendido, se sobrecalentaría / arruinaría la pieza de trabajo / los electrodos (no es agradable) y posiblemente se sobrecalentaría / derretiría el aislamiento del cable (muy malo). Por lo tanto, es una buena idea incluir una advertencia para esta condición de falla. Lo más fácil es conectar una lámpara en paralelo al primario MOT. La lámpara se encenderá cuando el MOT está encendido y proporcionará una señal visual de que el soldador está funcionando según lo previsto. Si la luz se enciende y permanece encendida, entonces sabrá que es hora de desconectarla. Si ha visto el video al principio, es posible que haya notado una bombilla de luz roja que se enciende y se apaga en el fondo durante la soldadura. Esto es lo que es esa luz roja.

Un MOT no es una carga que se comporte muy bien, pero a pesar de estar un poco preocupado inicialmente por la confiabilidad de la conmutación a través del circuito de potencia, no he visto ningún problema.

Paso 7: Notas finales

Notas finales
Notas finales

Bueno, primero muchas gracias a las muchas personas que se han tomado el tiempo de explicar en la red cómo construir una soldadora por puntos usando un transformador de horno microondas reutilizado. Este ha sido un gran arranque para todo el proyecto.

En lo que respecta al firmware Spot Welder 1-2-3, habría sido un trabajo largo y tedioso escribir el código sin las abstracciones proporcionadas por varias bibliotecas además del IDE estándar de Arduino. Encuentro estas bibliotecas de temporizador (RBD_Timer), codificador (ClickEncoder), menús (MenuSystem) y EEPROM (EEPROMex) muy útiles.

El código de firmware se puede descargar del repositorio de códigos Spot Welder 1-2-3.

Si planea construir esto, le sugiero que use el diseño de PCB descrito aquí, que incorpora una serie de mejoras.

Recomendado: