Cristian S. participa en el concurso «Arduino in Love 2019» con este fantástico enfriador de bebidas con Peltier.
iProcooler trata de un sistema de mantenimiento térmico mediante una célula peltier capaz de bajar la temperatura a 2 grados centígrados. El sistema es totalmente automático, gracias a la ayuda de un Arduino uno que controla la conexión y desconexión de la célula dependiendo de las condiciones. Tiene 3 fases:
1- ENFRIAMIENTO El sensor “CNY70” detecta que se ha colocado una taza, vaso, bote, etc… en ese momento el sensor “lm35” nos detecta la temperatura que tenemos en la célula y de ello dependerá la iluminación del anillo led que ayudara al usuario visualmente a saber cuando la célula ha llegado a su temperatura de funcionamiento encendiéndose esta de color azul.
2-BEBEMOS Cuando levantemos la taza, vaso, bote, etc.. para beber el “CNY70” no detectará y empezará un temporizador de 30 segundos el anillo en este momento cambia de color a amarillo, si lo dejamos de nuevo el anillo volverá a pasar a verde.
3- RETIRAMOS Cuando terminamos y retiramos la taza, vaso, bote, etc… el “CNY70” deja de detectar y empezará un temporizador de 30 segundos, cuando pase ese tiempo el anillo cambiará a color rojo y la célula se desconectará.
A continuación, el código para Arduino:
/ CONCURSO ------> ARDUINO IN LOVE
//Nombre del proyecto--> iProCooler
//Proyecto I+D+i--> Christian Soriano
//Codigo--> Iván Sanchis
//Rev.1
//CONCURSO------> ARDUINO IN LOVE
#include "FastLED.h"
const char pausa = 100;
const char seg_off = 30;
const char tiempoLED = 50;
const boolean bote = HIGH;
const boolean encender = HIGH;
const boolean apagar = LOW;
const float tempBoteON = 30;
float serieGrados[50];
const char NUM_LEDS = 24;
#define LED_TYPE WS2812B
#define COLOR_ORDER GRB
const char BRIGHTNESS = 128;
CRGB leds[NUM_LEDS];
const char detectorBOTE = 8;
const char pinLM35 = A1;
const char celula = 0;
const char ventilador = 3;
const char DATA_PIN = 6;
float tempC;
float mediaGrados = 0;
int i,j,k;
void setup()
{
Serial.begin(9600);
analogReference(INTERNAL);
pinMode(detectorBOTE, INPUT);
pinMode(pinLM35, INPUT);
FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_LEDS);
FastLED.setBrightness( BRIGHTNESS );
for (i = 0; i < 50; i++)
{
mediaGrados = 0;
for (j = 0; j < 50; j++)
{
tempC = analogRead(pinLM35);
tempC = (1.1 * tempC * 100.0) / 1023.0;
mediaGrados = mediaGrados + tempC;
}
mediaGrados = mediaGrados / 50.0;
serieGrados[i] = mediaGrados;
}
}
int haybote = 0;
float temperatura = 0.0;
unsigned long inicio;
boolean temporizador = LOW;
char pos = 0;
void loop()
{
haybote = digitalRead(detectorBOTE ); //lectura digital de pin
mediaGrados = 0;
for (i = 0; i < 50; i++)
{
tempC = analogRead(pinLM35);
tempC = (1.1 * tempC * 100.0) / 1023.0;
mediaGrados = mediaGrados + tempC;
}
mediaGrados = mediaGrados / 50.0;
serieGrados[pos] = mediaGrados;
if (pos < 50)
{
pos++;
}
else
{
pos = 0;
}
temperatura = 0.0;
for (k = 0; k < 50; k++)
{
temperatura = temperatura + serieGrados[k];
}
temperatura = temperatura / 50.0;
if (haybote == bote)
{
temporizador = LOW;
if (temperatura < tempBoteON)
{
digitalWrite(celula, encender);
digitalWrite(ventilador, encender);
for (j = 0; j < NUM_LEDS; j++)
{
leds[j] = CRGB::Green;
FastLED.show();
delay(tiempoLED);
}
}
else
{
digitalWrite(celula, encender);
digitalWrite(ventilador, encender);
for (j = 0; j < NUM_LEDS; j++)
{
leds[j] = CRGB::Blue;
FastLED.show();
delay(tiempoLED);
}
}
}
else
{
if (temporizador == LOW)
{
inicio = millis();
temporizador = HIGH;
}
if ( millis() - inicio < seg_off * 1000)
{
digitalWrite(celula, encender);
digitalWrite(ventilador, encender);
for (j = 0; j < NUM_LEDS; j++)
{
leds[j] = CRGB::Yellow;
FastLED.show();
delay(tiempoLED);
}
}
else
{
digitalWrite(celula, apagar);
digitalWrite(ventilador, apagar);
for (j = 0; j < NUM_LEDS; j++)
{
leds[j] = CRGB::Red;
FastLED.show();
delay(tiempoLED);
}
}
}
delay(pausa);
}
¿Te lo quieres montar en casa? Estos son los componentes que necesitas:
buenos dias, estoy interesa en poder contactar con el fabricante, si no estoy mal seria con Christian Soriano, quiero proponerle un proyecto a posible gran escala.
Hola Johan,
con tu permiso, trasladamos el mensaje a Christian. Él se pondrá en contacto.
Gracias por el interés.
Un saludo
hola buenas tardes, estaria muy interesado en fabricar algo parecido ya que mi idea es hacer un uno parecido a ese para enfriar bebidas en el coche. Te importaria ayudarme pasandome algunas fotos e informacion para su construccion? muchas gracias y un saludo
Hola Sergio,
creo que casi toda la información que necesitas la tienes en el texto de arriba. ¿Lo has revisado? ¿Qué dudas te quedan?
Un saludo
Genial