Taller de Arduino

  • Iniciador del tema Iniciador del tema jmcadsl
  • Fecha de inicio Fecha de inicio
Estado
Cerrado para nuevas respuestas.
Si ponéis un tubo de macarrón termo retráctil un poco más grueso que la sonda y unos centímetros más largo, lo rellenáis con silicona y lo calentáis para contraerlo todo arreglado y aislado y funcionando.
Salu2 Jose
 
Yo para aislar la sonda de temperatura (independiente del sensor que sea), emplearia resina epoxy, una vez montado con su cable y todo le daria unos baños de resina, para crear varias capas protectoras, recubriendo bien un tramo de los cables que es por donde puede penetrar la humedad. Por muy bueno que sea el acero, con el tiempo se resentira, creo yo.
 
¿es posible que se me haya gastado ya la pila del reloj?
es porque cada vez que lo desenenchufo se pone a cero. y me toca volver a poner la hora. lo hago y todo correcto, pero cuando lo desenchufo a cero de nuevo.
 
Si claro, preparas la sonda de temperatura como si fuera para estar al aire y prepara un poco de mezcla de resina epoxi, es importante mantener las proporciones entre resina y endurecedor que indica el fabricante y sumergir el sensor y parte de los cables, unos 3cm es suficiente. Esperas hasta que este un poco duro, no hace falta que este totalmente seco y preparas mas resina y le das otra capa, repites el proceso dos o tres veces mas, es importante que no queden burbujas y que las capas no sean espesas y uniformes. Si lo haces bien quedara totalmente estanco, las capas han de ser lo mas finas posibles para que no aislen el sensor y tarde mucho en sensar la temperatura. Algo que se me ha ocurrido es meter el sensor de temperatura en una ampolla de cristal y rellenarla con aceite (no conductor) y sellar la ampolla con resina pero no lo he probado y el aceite-cristal-resina no es una buena combinacion por que si el cristal tiene restos de acite no va a agarrar correctamente la resina por lo que poco a poco, debido a la diferencia de densidades, ira saliendose el acite y liandotela en el acuario, por lo que me parece mejor solo emplear la resina.
Bbq o tienes un corto o la pila no estaba en buenas condiciones por que una CR2032 alimenta un RTC varios meses, incluso años, revisa la polaridad, me parece extrano el DS1307 tiene un consumo muy bajo.
 
como todavia estoy esperando el lcd serial de los coj...es, cada vez que hago algo monto y desmonto todo, por lo que creo que al meterlo en la caja de los trastos, la pila debió quedar tocando algo que hizo contacto nosecomo y se descargó. lo he revisado todo y va bien.
si apago el arduino no se le va la memoria, simplemente deja de contar, por lo que al volver a enchufar el arduino el reloj sigue contando por donde se habia quedado.
pero si desconecto el reloj y lo separo del arduino se pone a 0:00.
y al principio hacia esto y seguia por donde habia quedado.

el lunes voy a por otra pila a ver si es eso.

os pongo una foto de lo poco que he avanzado yo sin tener el lcd.
he hecho una plaquita con los sensores de temperatura. de paso he puesto ahi el reloj.
en la placa hay uno de los dos sensores de temperatura, que dará la temperatura ambiental (o de la caja donde lo meta todo...) y he puesto la otra sonda al final de un cable, la he metido en un trozo de tubo de plastico y he sellado los lados con silicona. pero me ha quedado un burbujote dentro por lo que me temo que me va a flotar. tendre que ponerle una ventosita y pegarlo al cristal.
[TodoMarino.com] Taller de Arduino
 
lo he probado y la sonda va bien, pero tarda unos minutos en tomar la temperatura. pero me da igual, porque siempre va a estar condenada en el sump.
 
Haber ya he hablado con el vendedor de las sondas del ebay y esta a sido su respuesta:

Traducido:

Muchas gracias por su carta.
No se sugiere para el uso en el agua salada. Y puede ser utilizado con el Arduino.

No dude en contactar con nosotros si tiene alguna pregunta.
Mis mejores deseos

Así que tendremos que seguir con la primera opción ,saludos
 
GolumX. Explicación magistral. Muchas gracias.
Bbq solo lleva dos cables ese sensor de temperatura? O me lo parece a mi?
 
Última edición:
si solo lleva dos cables.
uno para la patilla central del sensor y el otro para las dos patillas laterales (que se juntan y al cable).
 
Buenas tardes.....
Bueno hoy vamos a tratar de ener el control de la temperatura en nuestro acuario.
La manera de funcionar va a ser igual que lo hace un termostato, es decir, vamos a leer la temperatura y dependiendo de esta encenderemos ventiladores, calentadores, etc etc. mediante unos reles.
Yo particularmente en mi acuario durante el invierno se encarga un calentador con termostato integrado de toda la vida (aunque sigo monitorizando la temperatura).
Lo interesante es en verano (yo no tengo un enfriador) asi que lo que hago es tomar 2 temperaturas, 1º-agua del acuario, 2º-pantalla de led's.
Cuando el agua sube de 28º, el ventilador se enciende hasta que baja a 27,5º
Cuando la pantalla de led's sube de 50º, el ventilador salta hasta que baja a 35º.

Componentes:

Arduino (22,5€)
Reloj (16€)
Pantalla LCD SERIAL (20€)
Sensores temperatura DS1820 (5,5€/unidad)

Conexion de sensores de temperatura:

[TodoMarino.com] Taller de Arduino


Código
Código:
#include <OneWire.h>//temperatura
#include <DallasTemperature.h>//temperatura
#define ONE_WIRE_BUS 7//temperatura, pin de entrada
OneWire oneWire(ONE_WIRE_BUS);//temperatura
DallasTemperature sensors(&oneWire);
#include <Wire.h>  
#define DS1307_I2C_ADDRESS 0x68
#include <SLCD.h> //LCD
#define numRows 2  //LCD
#define numCols 16  //LCD
SLCD lcd = SLCD(numRows, numCols);  //LCD

byte decToBcd(byte val)//RELOJ
{
  return ( (val/10*16) + (val%10) );
}
byte bcdToDec(byte val)
{
  return ( (val/16*10) + (val%16) );
}

byte second, minute, hour, dayOfWeek, dayOfMonth, month, year;//RELOJ


/////////
//SETUP//
/////////
void setup() 
{ 
  
  Wire.begin(); //RELOJ
  lcd.init();  //LCD  
  Serial.begin(9600); //LCD 
  sensors.begin();//Temperatura
}

/////////////////////////
//FUNCIONES SECUNDARIAS//
/////////////////////////

//Iniciar LCD
void Lcdini ()
{
  lcd.brightness(99);
  lcd.displayOn();
  lcd.clear();
}

//Apagar LCD
void lcdoff()
{
  lcd.displayOff();
  lcd.brightness(0);
}

// Pausa 3 segundos
void p ()
  { 
  delay (3000);
  }
  
///////////////////
//BUCLE PRINCIPAL//
///////////////////

void loop ()
{
  lcdoff();
  getDateDs1307(&second, &minute, &hour, &dayOfWeek, &dayOfMonth, &month, &year); // LEEMOS LA HORA
   InfoLcd(); 
}



//////////////////////////
// FUNCIONES PRINCIPALES//
//////////////////////////

// Establece la fecha y el tiempo del ds1307
void getDateDs1307(byte *second,
          byte *minute,
          byte *hour,
          byte *dayOfWeek,
          byte *dayOfMonth,
          byte *month,
          byte *year)
{
  // Resetea el registro puntero
  Wire.beginTransmission(DS1307_I2C_ADDRESS);
  Wire.send(0);
  Wire.endTransmission();
  Wire.requestFrom(DS1307_I2C_ADDRESS, 7);

  // Alguno de estos necesitan enmascarar porque ciertos bits son bits de control	

  *second     = bcdToDec(Wire.receive() & 0x7f);
  *minute     = bcdToDec(Wire.receive());
  *hour       = bcdToDec(Wire.receive() & 0x3f);  // Need to change this if 12 hour am/pm
  *dayOfWeek  = bcdToDec(Wire.receive());
  *dayOfMonth = bcdToDec(Wire.receive());
  *month      = bcdToDec(Wire.receive());
  *year       = bcdToDec(Wire.receive());
}


// INOFORMACION EN PANTALLA LCD
void InfoLcd () 
{
  
  //Nombre proyecto
  Lcdini();
  lcd.print("L&S NANO-REEF", 0, 2);
  lcd.print("VER. 2.0", 1, 4);

  p();
  //FadeLcd();  // borra pantalla con fade
  
  // ahora para mostrar fecha y hora
  p();
  Lcdini();
  lcd.print("Hora:",0,1);
  if (hour < 10) Serial.print("0");
  Serial.print(hour, DEC);
  Serial.print(":");  
    if (minute < 10) Serial.print("0");
  Serial.print(minute, DEC);
  Serial.print(":");
    if (second < 10) Serial.print("0");
  Serial.print(second, DEC);  
  
  switch (dayOfWeek) 
	{
    case 1:
      lcd.print("Lun , ",1,0); 
      break;
    case 2:
      lcd.print("Mar , ",1,0); 
      break;
    case 3:
      lcd.print("Mie , ",1,0); 
      break;
    case 4:
      lcd.print("Jue , ",1,0); 
      break;
    case 5:
      lcd.print("Vie , ",1,0); 
      break;
    case 6:
      lcd.print("Sab , ",1,0); 
      break;
    case 7:
      lcd.print("Dom , ",1,0); 
      break;
   }
   Serial.print(dayOfMonth, DEC); 
   Serial.print("/");  
   if (month < 10) Serial.print("0");
   Serial.print(month, DEC);
   Serial.print("/");
   Serial.print("20");
   if (year < 10) Serial.print("0");
   Serial.print(year, DEC); 
  
  p();  
  Lcdini();
  //FadeLcd();  // borra pantalla con fade
  sensors.requestTemperatures();
  lcd.print("Temp. Acuario:       ",0,1); 
  Serial.print(sensors.getTempCByIndex(0)); //Index 0 , es el primer sensor
  p();
  //FadeLcd(); 
  Lcdini();
  lcd.print("Temp.Iluminacion    ",0,0);//0,0 es el sensor 1
  Serial.print(sensors.getTempCByIndex(1)); // Index 1, es el 2º sensor del cable
  p();
  lcdoff();
}

Pues y tendríamos la información de la temperatura. Ahora os doy algunos detalles más....

Los sensores son unos pequeños integrados, no son sumergibles....para poder medir la temperatura del agua yo lo he solucionado de la siguiente manera, un tubito de plastico y silicona. Luego comprobamos si hubiera que hacer algún ajuste de temperatura (sumando o restando grados a nuestra lectura, aunque a mi no me hizo falta!!)

Esto es una foto de hace tiempo cuando estaba aprendiendo todo esto jejeje
[TodoMarino.com] Taller de Arduino


Y aquí un video maaaaaaaalo pero bueno se puede ver lo que ocurre...
[video]https://s543.photobucket.com/albums/gg456/jmcadsl/Xcube%20Marino/Arduino/?action=view&current=Vdeo0017.flv[/video]

Salu2!!

si te fijas en el esquema las patillas laterales a un cable y la central a otro.
 
Muchisimas grácias bbq, estaba cegado por lo de las tres patillas. jejeje
 
bueno ya lo tengo todo de momento,

me acaba de llegar la placa con los 4 relés,

tambien el lcd serial
y las sondas y reloj ya las tenia montadas y conectadas y marchando.
me falta conseguirme algún tipo de caja donde poner los 4 enchufes que controlaran los relés, y la cajita donde meteré el arduino y demás.
 
bueno ya lo tengo todo de momento,

me acaba de llegar la placa con los 4 relés,

tambien el lcd serial
y las sondas y reloj ya las tenia montadas y conectadas y marchando.
me falta conseguirme algún tipo de caja donde poner los 4 enchufes que controlaran los relés, y la cajita donde meteré el arduino y demás.

En las tiendas de electrónica venden cajas para montajes de todo tipo, yo tengo unas que compré para un proyecto y las pensaba utilizar ahora con el arduino y son de esas.
 
jeje he estado mirando por el trastero y he encontrado un cacharro electronico que una vez vacio se ha convertido en una caja perfecta. creo que era una radio despertador. incluso tiene una ventanita para el lcd...
para los enchufes si que me la tengo que currar.
 
una fotillo del arduino con el lcd, los reles, el reloj y las sondas de temperatura todo listo:
[TodoMarino.com] Taller de Arduino

y un pequeño video de la prueba de los reles:
[TodoMarino.com] Taller de Arduino
ale. hasta que no tenga preparado el modulo de enchufes no puedo hacer nada más.
 
Mirar yo el tema de los enchufes para los reles lo he solucionado de la siguiente manera...es una regleta tuneada jejeje, la abrimos y conectamos el cableado que necesitemos.

[TodoMarino.com] Taller de Arduino
 
Última edición:
pero como has metido y sacado tanto cable de la regleta? no tendrás por casualidad una foto de esa regleta abierta? jeje.
me tengo que pasar por el chino de la esquina a ver que regletas-enchufes tiene. a veces te sorprende...
 
Ayuda.... mi pantalla 16x2 ha muerto y la nueva 20x4 solo muestra en la pantalla IASI-2 ¿alguien sabe que puede pasar?

Edito para comentar:

Creo que el interface serial que he comprado no sirve puffff, al menos no para el arduino. Está pensado para rs232.
Supongo que me tocará comprar otro.

Edito:

Alguien me puede poner el enlace donde ha pedido el interface serial para no volverme a equivocar..
la pantalla es una 4X20.

Gracias
 
Última edición:
Me acaba de llegar el adaptador para el PH/ORP y ya tengo la sonda de PH tambien.
Esta noche tengo intención de hacer las pruebas con el arduino para ver que tal mide.
Que solución para calibrar me recomendais???
He visto que hay gente que calibra solo a 7 o solo a 10 y otros incluso a 4.
Mi intención era calibrar solo a uno pero no se cual será el mejor.
 
Estado
Cerrado para nuevas respuestas.
Atrás
Arriba