Hackear un horno tostador para soldadura de reflujo (10 / 19 paso)

Paso 10: Firmware

Todo el código fuente están incluido en los archivos de descarga de este proyecto. Completamente, se comentaron.
El código se compone de varios componentes:

  • Un puerto serie virtual se implementa utilizando el código proporcionado por PJRC . Si usted necesita los drivers, vaya a su sitio.
  • Escribí tres funciones para comunicarse con el LCD via I2C, entonces varias funciones más para inicializar el LCD y dibujar cosas en la pantalla LCD. También es una fuente de píxel de 8 x 5 que se almacena en memoria flash, así que puedo escribir fácilmente texto a la pantalla LCD. (La fuente es generada por una herramienta personalizada que escribí, pero también se puede encontrar una fuente similar en el sitio web de Newhaven Display)
  • Un archivo encarga del comportamiento de los menús, otro archivo mangos recolección lectura muestra la temperatura, el otro archivo es responsable de guardar/cargar datos de memoria EEPROM.
  • El archivo principal encarga de los cálculos para el control de la temperatura y automáticamente pasando por la fases de soldadura por reflujo. También maneja la inicialización de lo varios hardware interno del AVR como temporizadores.

Hay algunos detalles importantes que deba señalar aquí:

  • Cuando utilice "%d", con "printf", el argumento es tomado como un entero de 16 bits firmado incluso si la variable no es, así que escribí "str_from_int" para superar esta limitación. También escribí "str_from_double" para mayor comodidad, como usar "%f" no ofrece mucho control y "dtostrf" formato hace que el código desordenado.
  • El LCD, NHD-C160100DiZ, tiene una hoja que dice que la frecuencia máxima de reloj I2C puede utilizar es de 400 KHz. Esto es falso, no responde a esa frecuencia y se congela totalmente el bus I2C. También he probado 280 KHz y que no podría funcionar. Finalmente utilicé 100 KHz, y comenzó a trabajar.
  • Velocidad de fotogramas de la pantalla LCD es ridiculamente lenta debido a mi microcontrolador relativamente lento (corriendo a 8 MHz), la baja frecuencia del bus I2C (100 KHz) y el hecho de que muchos datos de la fuente se almacenen en la memoria flash en lugar de RAM.
  • Estoy usando PWM para controlar el relé de estado sólido. Mi razonamiento es que puedo controlar el elemento de calefacción como si estaba controlando el brillo de un LED. La frecuencia PWM debe ser baja, para el razonamiento detrás de esto, véase el apéndice.
  • El valor PWM utilizado varió de 0 a 65535. Para que OCR valor 0 significa que el ciclo de trabajo 0%, valor de OCR 5000: 7,6% ciclo de trabajo OCR valor 40000 significa 61% ciclo de trabajo y OCR valor 65535: 100% ciclo de trabajo.
  • El chip AD595AQ salidas una onda cuadrada en lugar de una tensión constante, la parte superior de la onda cuadrada es el voltaje que debe leerse como la temperatura. No estoy seguro si esto es intencional y una parte del diseño de AD595AQ (no puedo averiguar esto de la hoja de datos), o si es mi culpa de alguna manera. Independientemente del razonamiento, el sensor de lectura rutinas escribí cuentas para esto y se muestra sólo la parte superior de las ondas cuadradas, que también hace un promedio de.
  • El valor del crudo sensor es osciló entre 0 y 1023 porque el ADC en el AVR tiene 10 bits de resolución. 1023 significa que la lectura es 3.3V porque el voltaje de referencia analógica es de 3.3V. Según la ficha técnica del AD595AQ, la tensión de salida de 320 grados centígrados es 3.227V (0 grados es de 0,027 voltios, por cierto, muy cerca de 0, el AD595AQ va a salida de 10 mV por cada grado Celcius). De estos números, sé que 1 grado celcius es 3,125 unidades de lectura de ADC crudas, y 1 unidad de lectura de ADC cruda es aproximadamente 0,32 grados centígrados. Estos cálculos de conversión son difíciles de cifrar en mi código fuente. Usted debe recordar la constante del 0,32 al ocuparse de los archivos de registro.
  • Un controlador PID se utiliza para calcular la cantidad adecuada de energía para ofrecer a la resistencia. El usuario es capaz de editar las constantes del PID mediante la interfaz de usuario.
  • Este controlador PID no es un típico controlador PID, es asistida mediante el uso de información que ya se conoce sobre las características del horno de la tostadora. Se permite entrada de temperatura constante más alta que puede alcanzar el horno, y cuánto tarda en alcanzar esa temperatura. De esta información, el controlador sabe cómo calcular la cantidad correcta de energía para ofrecer. El controlador PID se utiliza para ajustar esta estimación, que corrige para el non-linearity de la estimación.
  • Nota: Utilice el modo de "manual PWM control" para medir la temperatura más alta que puede alcanzar y cuanto tarda para lograrlo. Para ello, entrar en ese modo desde el menú y suba el PWM a max y luego guardar la información de registro (o usar un cronómetro).
  • Hay error en la configuración de dispositivo y Perfil de temperatura. El programa no permite realizar modificaciones que no tienen sentido, y si algo está mal, lo preguntaré para corregirlo antes de continuar.

Consulte el "paso Instructable" anterior sobre el gestor de arranque para ver cómo compilar y bootload código de la aplicación, incluso hay un video ahí.

Artículos Relacionados

Cómo para soldadura de reflujo un LED emisor en un PCB o MCPCB

Cómo para soldadura de reflujo un LED emisor en un PCB o MCPCB

3 maneras fáciles de refleow de la soldadura de un emisor LED Cree un MCPCB o PCB. Horno de reflujo ni herramientas especiales.Este tutorial muestra en unos sencillos pasos cómo reflujo soldadura popular LED emisores como Cree XML, Cree XM-L2, Cree X
Fácil bajo costo forma de soldadura de reflujo

Fácil bajo costo forma de soldadura de reflujo

En este Instructable que vemos lo fácil que es soldar componentes de montaje superficial en un PCB con soldadura pasta y un horno tostador.
Solución $1 para un temporizador del horno tostador roto!

Solución $1 para un temporizador del horno tostador roto!

odio tirar una cosas de lo contrario perfectamente funcional, sólo porque una parte falla.Cuando el temporizador de mi horno Oster murió, es momento perfecto para hacer un hacking.Si tu reloj cuerda no DING cualquiera, esto es para ti!Paso 1: Retire
¿Enchufe: Cómo hackear su Sifteo Base para el más grande del Audio

¿Enchufe: Cómo hackear su Sifteo Base para el más grande del Audio

jamas imagine lo que podría hacer con algo que alguien lo creó pero poner una vuelta en él? ¿Alguna vez ha sentido esas ganas de hackearlo y quite algo y luego poner detrás junto?Bueno, si usted contestó sí a alguna de las preguntas anteriores, como
Horno reflector para fogatas

Horno reflector para fogatas

El horno del reflector, también conocido como un horno de lata era una vez una herramienta popular para cocinar junto a un fuego durante el siglo 17 y 19. Su popularidad ha descendido desde el desarrollo de la electricidad, pero estos hornos todavía
Montaje de tubos en el hogar para soldadura

Montaje de tubos en el hogar para soldadura

tienes un proyecto que requiere que soldar tubos juntos en ángulo recto, pero no tienes ningún equipo comercialmente hecho para cortar un buen cóncavo en el extremo de un tubo donde se une con otro tubo. Este Instructable le mostrará cómo hacer un bu
Perfectamente afilar tungsteno para soldadura TIG.

Perfectamente afilar tungsteno para soldadura TIG.

Alguien con TIG soldado con autógena ha experimentado contaminar el tungsteno.  Había sumergido el tungsteno caliente en el charco de soldadura fundido, o toca la varilla para el tungsteno, está garantizado un viaje a la amoladora para limpiar ese el
Horno complementos para mejorar el inicio la calidad del aire

Horno complementos para mejorar el inicio la calidad del aire

al pensar en la calidad del aire interior, hornos y acondicionadores de aire central debe venir a la mente. Después de todo, cada pie cúbico de aire en una casa se dibuja finalmente a través de estos sistemas - y se altera por el proceso. El aire es
Hackear un hub USB para añadir puertos internos a un Toshiba Satelite (u otra laptop)

Hackear un hub USB para añadir puertos internos a un Toshiba Satelite (u otra laptop)

Muy bien, así algunos de nosotros están cansados de todos nuestros discos y dongles inalámbricos colgándose de nuestro portátil todo el tiempo!en la mayoría de ordenadores portátiles que esto puede ser fácilmente atendido por modding las tripas de su
Guía para soldadura de campo

Guía para soldadura de campo

este es un kit que permitirá hacer soldar muchas tareas en el campo, cuesta alrededor de $8,00, y cabe en una lata Altoids! He usado este mismo conjunto de cosas hace años y fue inspirado para compartir basado en un reciente instructable sobre soldad
Hackear una navaja suiza para tener una hoja de acero al carbono

Hackear una navaja suiza para tener una hoja de acero al carbono

¡ OH cómo amo mi Victorinox Forester SAK. Es todo un caballero hábil y civilizado que necesitas en un cuchillo cada día llevar, como un sacacorchos. Una cosa que no es muy grande sin embargo es la calidad del acero utilizado para la hoja. Acero inoxi
Horno solar para un perro caliente

Horno solar para un perro caliente

Este horno solar es sencillo y fácil de hacer. Ha logrado temperaturas por encima de 75 º c at días despejados de 25 º c, y hoy aunque está nublado todavía ha permíte unos 45 º.Paso 1: MaterialesMaterialesLata de Pringles, u otro recipiente cilíndric
Hackear un Cable ELM327 para hacer un Arduino OBD2 escáner

Hackear un Cable ELM327 para hacer un Arduino OBD2 escáner

En mi anterior instructable he creado un simulador de OBD2 por lo que tuve que probar mi OBD2 lector de Arduino en el coche todo el tiempo sino en la comodidad de mi propia casa.Cosas que usted necesita.Arduino UNOProtector de pantalla LCDCable ELM32
Hackear tu nido termostato para funcionar una estufa de gas o chimenea

Hackear tu nido termostato para funcionar una estufa de gas o chimenea

Si usted, como yo, calienta su casa exclusivamente con una chimenea de gas o un gas libre de pie le da la estufa y controlar el sistema mediante un termostato de nido, entonces éste es el Instructable para usted!La única razón por la que el termostat