lunes, 24 de junio de 2019

Diseñando la Estación de soldadura cap 1

 Diseñando La Estación de soldadura




Con esta entrada del blog doy inicio a unos capítulos en los cuales se describirá narrativamente como se hizo el diseño de la estación de soldadura ,(presentada en la entrada anterior enlace Aquí) se describirán partes del diseño mas no se compartirán diagramas completos ni códigos completos , esta información es útil para otros diseños , se explicaran las partes teóricas y métodos de diseño , espero le sea útil a quienes desean tener ideas o investigan temas relacionados con los que se trataran , dentro de estos están:  control  digital ,electrónica, programación , PID , potencia ,diseño en PCB y ensamblaje.


En el ámbito tecnológico tanto para mantenimiento, desarrollo y aprendizaje se han utilizado herramientas acordes al desarrollo del mismo, es así que actualmente se requieren herramientas para soldar y desoldar diversos tipos de elementos tanto los clásicos DIP como también los de montaje superficial SMD y BGA, dando como resultado la necesidad de tener dispositivos que garanticen este trabajo con la calidad y seguridad requerida. El uso de soldadura baja en plomo y sin plomo, se refleja en el uso de temperaturas mayores haciendo más difícil el trabajo con herramientas clásicas o llegando a temperaturas en las que puede afectar los elementos a soldar.

Existen diversas herramientas a diferentes costos las cuales ofrecen diferentes funciones para cumplir con esta labor, las más económicas cumplen discretamente la función limitándose en precisión y control de las mismas, no obstante, las de mayor calidad y mejor desempeño son de costo elevado, haciendo que sean poco usadas en los centros de reparación, las más optimas y de mayor desempeño quedan solo para uso empresarial por su elevado costo.

Por esto que se optó por el diseño y elaboración de una estación de soldado que cumpla con las expectativas planteadas, se decidió por el control de temperatura tanto del cautín, aire caliente, flujo del aire. Todos esos inspeccionados por el sistema de control y potencia ,la eficacia de los mismos , variaciones de temperatura, flujo del aire y la relación con la temperatura del mismo, en lo que es importante la temperatura que logra el dispositivo a soldar .El usar una pantalla en la que se visualice el menú y las temperaturas tanto deseada como la real es útil para saber cómo se está comportando la herramienta , además porque en la realización del trabajo de soldado se debe tener en cuenta si la temperatura es muy baja se puede realizar un mal soldado en la placa y si es muy alta deteriora o daña los elementos de la misma.

Para el sistema de control se optó por el uso de microcontrolador del cual se aprovechan sus funciones , practicidad y economía , adicionalmente se asegura la protección contra copia en caso de quererse usar para fines comerciales, El desarrollo de esta estación está proyectada para uso a nivel de reparación y montaje de tarjetas electrónicas, las partes con que se fabrica son comunes en el mercado , tanto la punta calefactora de cautín como el cañón de aire caliente son suministros de estaciones que hay en el mercado, la etapa de
potencia , Control y censado están elaboradas con elementos comunes del mercado electrónico, la fuente de alimentación está basada en una fuente de computador la cual se puede remplazar comúnmente, previas modificaciones requeridas.

En un inicio lo que se hizo fue visualizar como quería que fuese en cuanto a sus funciones generales y apariencia deseada tanto la parte interna como externa , como se deseaba que se manejara y comportara , si bien uno puede imaginarse y hasta soñar hacer cosas muy grandes al sentar los pies en la tierra y determinar los puntos útiles realizables y necesarios se obtuvo una idea general y a partir de esta se hizo un bosquejo general de lo que se necesitaba para dar inicio a diseñar las etapas.

Ademas este proyecto se presentaba como proyecto de grado y debía cumplir con características especificas como no ser copia o igual a lo que hay en el mercado , si bien hay muchas que hacen lo mismo  en este caso se incorporaron funciones que no traen las estaciones pequeñas y económicas, así como se trato de incorporar funciones que traen las de alta gama ,  esto ya es algo que los que han tenido que escribir anteproyectos y proyectos ya saben que es cosa de "cuadrar " justificarlo como proyecto y eso ya es otro tema diferente y hay extensos libros muy útiles sobre esto.

Regresando al tema, se tomo como parte inicial  para el diseño diferentes etapas dentro de estas están la etapa de control que es el cerebro del equipo, es la que lleva todas las funciones lógicas y donde va todo el software que controlara las otras etapas , también esta la etapa de potencia , la cual es la que maneja como su nombre lo dice las partes o elementos que dan la energía a los transductores de calor en este caso el cautín y el cañón de aire caliente, la fuente de alimentación la cual dará energía a todo el equipo, con estas etapas preliminares se comenzó a diseñar cada etapa.

Control

Esta  etapa  la cual en sus funciones se dividió en la etapa de cpu y la de interfaz de usuario las cuales en este caso la etapa de CPU se encarga del control principal , procesado y almacenamiento de datos de entrada y salida; esta se  se determino a realizar con el microcontrolador pic 18f4550 ,  y el pic 16F128A de microchip los cuales tienen como característica general:




Pic 18f4550 : Este es un Microcontrolador de Microchip con 32K de memoria FLASH, 1K de memoria RAM, 2K de memoria SRAM, y 256 bytes de memoria EEPROM, es Compatible con USB v 2.0 SIE, velocidades 1,5 Mb/s y 12 Mb/s. Soporta hasta 32 endpoints (16 bidireccional). ADC de 10bits (13 canales), 4 Timers, 2 PWM,  EAUSART, SPI, I2C, SPP, Empaque DIP-40

Pic 16f628A: Manufacturado por MicroChip, Voltaje de Operación: 3 a 5.5 v, Memoria de programa tipo FLASH: 2048 locaciones de 14 bits Memoria de datos: Memoria RAM de 224 bytes (8 bits por registro) Memoria EEPROM: 128 bytes (8 bits por registro) Comunicación Digital: 1 Puerto UART 1 A/E/USART Temperatura de Operación: -40° a 85°C , Cantidad de terminales: 18 incluyendo alimentación.
Para los que no conocen los microcontroladores acá hay con algo sobre el tema: Aquí


El principal es el 18f4550 en el va el codigo principal y este sera el micro maestro el otro el 628 es el esclavo , el código para este microcontrolador se escribió en lenguaje C estándar cuyas características de este compilador están:
Migra fácilmente entre todos los dispositivos Microchip PIC ® MCU
Minimice el tiempo de desarrollo con: controladores periféricos y construcciones C estándar
Flujos de entrada / salida de estilo C ++ con formato completo de datos para cualquier dispositivo o para cadenas
Utiliza librerías CCS y código objeto libre de derechos
Funciones convenientes como #bit y #byte permiten colocar variables C en direcciones absolutas
El tipo integral de un bit (Short Int) permite al compilador generar código muy eficiente orientado a Bit
Defina, configure y gestione fácilmente las interrupciones

Se uso la versión 4.023 de CCS C compiler

De las características del pic 18f4550 se aprovechan su función de reloj interno a 8 MHz y mayor capacidad de memoria de programa a comparación de los seriales 16f xx por esto se optó por este microcontrolador.

En el encabezado del código, es donde se configura el tipo de microcontrolador, los fuses “reloj interno, sin perro guardián, sin reset, se determina la conversión análogo digital a 10 bits, se le define el reloj a 8 Mhz, se llaman las librerías para la GLCD se establecen diversas variables que se usaran a lo largo de todo el código.

 Encabezado del codigo para el 18f4550

#include <18f4550.h> //se determina el tipo de microcontrolador
#fuses nowdt,noprotect,intrc,NOMCLR,nolvp, // reloj interno ,sin perro guardian, sin reset
#device adc=10 //se define el conversor digital análogo a 10 bits
#use delay (clock = 8000000) //se establece el reloj a 8 Mhz
#include "HDM64GS12.c"   // se llama la librería de la GLCD 128 x 64
#include "graphics.c"    //Libreria para manejo de gráficos
#include <math.h>        //Libreria matemática
#use standard_io (A,B,C,D,E)//Define los registros TRIS automáticamente
#BYTE TRISE = 0X00   //asegura el puerto E como salida
#BYTE PORTE = 0X00   //pone las salidas del puerto E en estado bajo
#define LAST_VOLUME  0
#define CAUTIN pin_B3

Ya con el encabezado listo lo siguiente es en que lo vamos a simular para no estar montando y probando tantas veces cada vez quese necesite , para simular todo el proyecto se usaron proteus 7 y 8 y multisim 11 (tema sobre simuladores y descargas Aquí)

En el simulador podemos incorporar el microcontrolador , display  gráfico 64 * 128 , pulsadores y Encoder para incrementos y decrementos de datos, como parte preliminar se realizó el diseño de las conexiones físicas y programación del display para determinar tanto la pantalla de bienvenida  pantallas de menú principal y preparación de menús de trabajo , estas funciones de control ínteractúan constantemente con las funciones de trabajo en control de temperatura.






La programación escrita en C para desplegar una imagen pre diseñada con el logo de jasp electronica , el de la universidad en la cual se estaba haciendo el proyecto y una imagen de representación de la estación de soldadura. esta LCD tiene como características :
Rango de Voltaje de Operación: 4.5V o 5.5V 
Controlador ST7920
Dimensiones: 93.0 x 70.0 x 13.5 mm
Pantalla LCD: LCD monocromo, gráfico 128x64 pixeles.
Interfaz paralela de 8 bits o modos SPI en serie
Consumo 220mA con la luz de fondo al 100%
Entrada de datos 0-5v 115200bps (velocidad por defecto, ajustable por software)





Para la implementación se hará una conexión paralela de 8 bits conectado al microcontrolador por el puerto D y parte del B, En cuanto a la programación para desplegar texto se puede hacer  mediante el uso de la librería HDM64GS12.c  pre establecida en la inicialización de la programación del microcontrolador los gráficos a la librería graphics.c , con ella se pueden obtener figuras geométricas y líneas de diversos tamaños y rellenas o vacías , para la representación de un logo o imagen gráfica se requiere de un protocolo para escribir los datos requeridos bit a bit  mediante la instrucción de glcd pixel , para hacerlo se configuro captando una imagen y extrayendo su información como mapa de bits y luego almacenándola como una tabla de datos. 
Luego de configurar el microcontrolador y establecer las variables requeridas para el código, se establece otra variable de tipo integer de 8 bits por medio de una tabla de datos en la cual se guarda la imagen a mostrar en la pantalla de inicio “128 x 64”, es decir que consta de una tabla de datos para poder construir esta imagen de portada de 128 x 64 bits,

const INT8 imagen[64][16] =
{
   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x00, 0x0C, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x1F, 0x80, 0x60, 0x00, 0x0C, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x18, 0x00, 0x60, 0x00, 0x00, 0x00, 0x80, 0x00, 0xC0, 0x00, 0x00, 0x50, 0x01,
   0x80, 0x00, 0x00, 0x18, 0x3C, 0xF1, 0xE3, 0x8C, 0xF8, 0xF8, 0x0F, 0xCF, 0x80, 0x00, 0x38, 0x01,
   0x80, 0x00, 0x00, 0x1F, 0x32, 0x62, 0x67, 0x4D, 0xDC, 0xFC, 0x1D, 0xDC, 0xC0, 0x01, 0x7C, 0x01,
   0x80, 0x00, 0x00, 0x1F, 0x38, 0x60, 0x66, 0x0D, 0x8C, 0xCC, 0x18, 0xDF, 0xC0, 0x00, 0xFE, 0x01,
   0x80, 0x00, 0x00, 0x18, 0x1E, 0x63, 0xE6, 0x0D, 0x8C, 0xCC, 0x18, 0xDF, 0xC0, 0x05, 0xFF, 0x01,
   0x80, 0x00, 0x00, 0x18, 0x06, 0x66, 0x66, 0x0D, 0x8C, 0xCC, 0x19, 0xD8, 0x00, 0x03, 0xFF, 0x81,
   0x80, 0x00, 0x00, 0x1F, 0xA6, 0x76, 0x67, 0xCD, 0xFC, 0xCC, 0x1F, 0xDC, 0xC0, 0x17, 0xFF, 0x01,
   0x80, 0x00, 0x00, 0x1F, 0xBC, 0x73, 0xA3, 0xCC, 0xF8, 0xCC, 0x0F, 0x4F, 0x80, 0x0F, 0xFE, 0x81,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5F, 0xFC, 0xC1,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFA, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x7F, 0xF3, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xE8, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xCC, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xA0, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x30, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0x80, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x38, 0x00, 0xC0, 0xC0, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x3C, 0xC0, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x7C, 0x00, 0xC0, 0xC0, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x1A, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x00, 0xE4, 0x00, 0xC0, 0xC0, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x00, 0xE0, 0x78, 0xC7, 0xC3, 0xC7, 0xCC, 0xC9, 0x9E, 0x00, 0x00, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x00, 0xF0, 0xFC, 0xCF, 0xC4, 0xCF, 0xCC, 0xCF, 0xA6, 0x00, 0x00, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x7D, 0xCE, 0xCC, 0xC0, 0xCC, 0xCC, 0xCE, 0x06, 0x00, 0x00, 0x00, 0x01,
   0x80, 0x1C, 0x00, 0x00, 0x1D, 0xCE, 0xCC, 0xC7, 0xCC, 0xCC, 0xCC, 0x3E, 0x00, 0x00, 0x0E, 0x01,
   0x80, 0x7C, 0x00, 0x00, 0x0D, 0xCE, 0xCC, 0xCE, 0xCC, 0xCC, 0xCC, 0x76, 0x00, 0x00, 0x1F, 0x81,
   0x81, 0xFE, 0x00, 0x00, 0x8C, 0xCC, 0xCC, 0xCC, 0xCD, 0xCC, 0xCC, 0x66, 0x00, 0x00, 0x1F, 0xC1,
   0x83, 0xFF, 0x00, 0x00, 0xFC, 0xFC, 0xCF, 0xCF, 0xCF, 0xCF, 0xCC, 0x7E, 0x00, 0x00, 0x3F, 0xF1,
   0x8F, 0xFF, 0x00, 0x00, 0x78, 0x78, 0xC7, 0x87, 0x47, 0x47, 0x4C, 0x3A, 0x00, 0x00, 0x3F, 0xF9,
   0x9F, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFD,
   0x87, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xF9,
   0x83, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xF1,
   0x80, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xC1,
   0x80, 0x7F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x81,
   0x80, 0x1F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x01,
   0x80, 0x1F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFE, 0x01,
   0x80, 0x7F, 0xF0, 0x00, 0x06, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x81,
   0x80, 0x7F, 0xF8, 0x07, 0xE6, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x07, 0xFF, 0x01,
   0x80, 0x1F, 0xFC, 0x07, 0xE6, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFE, 0x01,
   0x80, 0x0F, 0xFC, 0x07, 0x06, 0x00, 0x01, 0xE0, 0x00, 0x20, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x01,
   0x80, 0x03, 0xFC, 0x07, 0x06, 0x7E, 0x79, 0xE9, 0x9F, 0x3E, 0x31, 0xC3, 0xC0, 0x0F, 0xF0, 0x01,
   0x80, 0x01, 0xF8, 0x07, 0xE6, 0xE6, 0xE4, 0xCF, 0xBB, 0xBF, 0x33, 0xA4, 0xC0, 0x07, 0xE0, 0x01,
   0x80, 0x00, 0xFC, 0x07, 0xE6, 0xFE, 0xC0, 0xCE, 0x31, 0xB3, 0x33, 0x00, 0xC0, 0x0F, 0xC0, 0x01,
   0x80, 0x01, 0xFC, 0x07, 0x06, 0xFE, 0xC0, 0xCC, 0x31, 0xB3, 0x33, 0x0F, 0xC0, 0x0F, 0xE0, 0x01,
   0x80, 0x01, 0xFE, 0x07, 0x06, 0xE0, 0xC0, 0xCC, 0x31, 0xB3, 0x33, 0x0C, 0xC0, 0x1F, 0xE0, 0x01,
   0x80, 0x00, 0x7F, 0x07, 0xE6, 0x7E, 0xFC, 0xEC, 0x3F, 0x33, 0x33, 0xEC, 0xC0, 0x3F, 0x80, 0x01,
   0x80, 0x00, 0x3F, 0x07, 0xE6, 0x3E, 0x78, 0x6C, 0x1E, 0x33, 0x31, 0xE7, 0x40, 0x3F, 0x00, 0x01,
   0x80, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x01,
   0x80, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x01,
   0x80, 0x00, 0x01, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x01,
   0x80, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
   0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
   0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
};

Esta informacion es de la imágen de el logo de JASP electronica, Para obtener el valor de los datos a incluir en esta tabla se genera la imagen deseada en un formato de 64 x 128 bits monocromática sin escala de grises y se extraen los datos por medio de un software, en el proximo capitulo , se explicará con un ejemplo como hacerlo y los nombres de los programas , asi como se continuara con botonera encoder y otros temas.

Si les parece útil esta información,compartanla,   siganme en facebook,  youtube y dejen mensaje acá .

No olviden suscribirse al canal de you tube y  darle a Me gusta y podrán seguirnos en Faceboock.

 Ir a Audio y Tv      

Escrito y creado por JASP Se reservan todos los derechos.

No hay comentarios:

Publicar un comentario