MACHIN BREWER Mi idea es que el usuario no tenga que hacer

Transcripción

MACHIN BREWER Mi idea es que el usuario no tenga que hacer
MACHIN BREWER
Mi idea es que el usuario no tenga que hacer nada, únicamente al principio elija el número de
escalones, el tiempo y la temperatura de los escalones y la máquina se encargue de todo los
demás: inicio y paro de la bomba de recirculado, control de la resistencia, control sobre el
agitador en caso de que decida ponerlo.
Componentes:
pantalla LCD de 16x2,conectada con 6 pines.
4 Botones. Botón 1,2,3 y 4.
Primera pantalla, Bienvenida:
Machin Brewer
Menu 1: bucle infinito (hasta que se pulsa un botón) que va cambiando la pantalla del menú.
1 Maceración automática
2 Maceración manual
2 Maceración manual
3 Recetas
Con el botón 1 elijo automático.
Con el botón 2 elijo manual.
Con el botón 3 elijo recetas.
Automático:
Numero de escalones
2
Con el botón 1 subo el número de escalones,
Con el botón 2 bajo el número de escalones
Con el 3 OK. Y con el 4 atrás
Una vez seleccionado el número de escalones paso a preguntar el tiempo y la temperatura de
cada uno de los escalones (para esto hago un bucle for, a la salida del bucle tengo guardado en
un vector los tiempos de cada uno de los escalones y otro vector con las temperaturas):
Escalón 1
Time 30’ Temp 40ºC
Con el botón 1 incremento el parámetro seleccionado (el tiempo de 5 en 5
min, y la temperatura de 2 en 2, para que no sea tan pesado),
Con el botón 2 decremento el parámetro seleccionado.
Con el 3 paso al otro parámetro (de Time a Temp) y al siguiente escalón. Y con
el 4 atrás
Explicación: al entrar a la pantalla de escalón, el tiempo parpadea (quiere decir que está
seleccionado) con los botones 1 y 2 subo y bajo el tiempo, con el 3 es como un OK y pasa a
Temp, y cuando acaba con el escalón 1 pasa al 2, con el 4 atrás. Mi primera idea era poner 2
botones más para desplazarme por el lcd a modo de cursor, pero decidí hacerlo así para
ahorrar 2 botones.
Escalón 2
Time 60’ Temp 40ºC
Luego hago un resumen para comprobar que este todo bien, bucle infinito mostrando las
pantallas hasta que le demos al OK:
Resumen
2 escalones
Esc 1 30’ 40ºC
Resumen
2 escalones
Esc 2 60’ 40ºC
Una vez mostrado el resumen comenzamos la maceración, en la pantalla se muestra el escalón
en el que estamos, la temperatura actual y la cuenta atrás (tiempo para que acabe ese
escalón). En este bucle de la cuenta atrás viene el control de la resistencia, de la bomba, etc. es
decir, lo chungo.
Esc 1
t 60º
00:30:00
Cuando acaba pasa directamente al siguiente escalón (hay un bucle for que recorre los
escalones), si no hay más escalones pantalla fin, con led parpadeando y buzzer.
Manual: No sé sí tiene sentido, ni si lo implementaré. Pero la idea es controlar todo desde
arduino
Bs
Pot 1
B (on/off) Bomba encendida o apagada
t 60º
00:30:00
Pot (1 : 255) Nivel de potencia suministrada a la resistencia. Miraré lo del SSR con salida PWM
que indica forester.
t temperatura actual
Cronómetro o cuenta atrás.
3 Recetas:
La idea que tengo es guardar recetas ya definidas, Escalones, tiempos y
temperaturas
Receta 1
Receta 2
Receta 3
Receta 4
Mi idea es guardarlas en el código (no en la EEPROM) creando una matriz con las recetas.
Escalones
Recetas = {
Tiempo
}
Temperatura
El único problema que veo, es que para introducir nuevas recetas hay que volver a subir el
sketch a arduino. Que se soluciona introduciendo las nuevas recetas a la EEPROM.

Documentos relacionados