Programador de riego con Arduino Nano

La necesidad es muchas veces la que nos despierta el ingenio, esta vez necesitaba un programador de riego sencillo y barato para las macetas de casa de mis padres.

Decidí que lo más sencillo era un sistema que permitiese riego automático cada 1, 2, 5 o 7 días durante 10, 20, 30 o 45 minutos. No quería complicarme con la instalación de un LCD o display de 7 segmentos, así que opté por hacerlo con led (4 led para la frecuencia y otros 4 para el tiempo de riego). Tampoco quería meterme en el engorro de poner un reloj, quería algo funcional, barato y fácil de usar.

La controladora es un Arduino Nano V3, tiene dos pulsadores, uno para activar el modo programación y otro para seleccionar la frecuencia y el tiempo, un relé que salta en el momento programador y una electro válvula para controlar la salida del agua.

El funcionamiento del sistema es sencillo:

  • Pulsar el botón de programación 2 segundos para activar la programación. Muestra la frecuencia programada.
  • Pulsar el botón de seleccionar para cambiar la frecuencia, una vez que llega al final vuelve al primero (1, 2, 5 o 7 días)
  • Pulsar el botón programación para activar la selección de tiempo. Muestra el tiempo programado.
  • Pulsar el botón seleccionar para cambiar el tiempo (10, 20, 309 o 45 minutos), cuando llega al final vuelve al primero.
  • Pulsar el botón programación, se apagan todos los led y se guarda la programación seleccionada (frecuencia y tiempo) en la EEPROM.

Para activar el riego se pulsa el botón seleccionar y en ese momento se realiza el primer riego durante el tiempo programado, y lo repetirá cada frecuencia y tiempo indicado.

En caso de pulsar el botón de selección durante el riego, se detiene el proceso y solo comenzará de nuevo cuando se vuelva a pulsar el botón de selección.

 

Anuncios

Modo “arranque rápido” de Windows 10 y HDD no accesible vía USB

Al final me decidí y cambié el disco duro del portátil por otro de mayor capacidad para instalar Linux.

Todo fue bien hasta que necesité obtener información del disco que tenía antes con Windows 10, no había forma de montar las particiones  y cuando miré el administrador de discos de Linux me aparecían 6 o 7 particiones “fantasma”…. ¿Que será eso? Ummmm……

Me puse a investigar un poco por Internet y, claro, los de Microsoft se habían inventado un artilugio para hacer que Windows 10 cargase y apagase más rápido: crear particiones fantasmas donde volcar la memoria y el estado actual de las otras particiones, más o menos como hace el sistema cuando se suspende o entra en hibernación, pero el caso es que al hacer eso deja las particiones principales marcadas como “suspendidas” y no hay forma de montarlas en Linux.

Para evitar esto averigüé que se puede desactivar el sistema de arranque rápido de Windows 10, ya sea a través de configuración, o más fácil, desde una consola MS-DOS con permisos de administrador introducir:

powercfg -h off

Después apagar Windows 10, que, dependiendo de lo que tuvieses en memoria, lo hará más rápido o más lento (en mi caso tardó casi 15 minutos en apagarse del todo). Por supuesto, después de hacer eso, Windows puede tardar como día y medio en arrancar (ya se que exagero….), pero es la única forma segura que si se te estropea algo de la carga de Windows 10 puedas acceder y recuperar tus archivos.

Por cierto, el HDD de Windows 10 “suspendido” tampoco se podía ver desde otro Windows 10 mediante el adaptador USB.

Alternar dos leds usando una sola salida del microcontrolador

A quien no le ha pasado quedarse sin salidas del microcontrolador y necesitar alternar el encendido de dos led dependiendo del estado, es decir, cuando esté a HIGH la salida del microcontrolador se encienda, por ejemplo, un LED verde y cuando esté a LOW uno rojo.

Soluciones a este problema hay muchas y muy variadas, desde comunicar con otro microcontrolador (un desperdicio para tan poca cosa), usar transistores, o la que os propongo hoy:

Alternar dos leds usando una sola salida del microcontrolador con diodos 1N4007.

ledsalternos

Mediante este sencillo circuito podemos controlar 2 leds dependiendo del estado de salida de la patilla deseada del microcontrolador.

Os dejo código de prueba para Arduino:

int led = 3;

void setup() {

pinMode(led, OUTPUT);
}

void loop() {
digitalWrite(led, HIGH);
delay(500);
digitalWrite(led, LOW);
delay(500);
}

Video demostrativo alarma de bajo coste

Funcionamiento del sistema de alarma de bajo coste.

Disponible exclusivamente por encargo.

Alarma bajo coste con 2 zonas.

He estado trabajando estos días en un nuevo proyecto, fruto de la gran cantidad de robos que se están comentiendo en trasteros privados, un amigo cercano me comentó que le habían robado y que si tenía aguna alarma de bajo coste con aviso por SMS al teléfono del usuario; en ese momento no tenía ninguna pero me puse manos a la obra y ya tengo un prototipo:

 

Prototipo alarma bajo coste.

Prototipo alarma bajo coste.

Reunido con mi amigo, decidimos que la alarma debía contar con las siguientes especificaciones:

  • 2 Zonas de control para 2 contactos magnéticos.
  • 1 Lector iButton para poder activar/desctivar la alarma.
  • Zumbador para indicar el tiempo de entrada y salida.
  • 1 salida para sirena.
  • Alimentación 12 v.
  • Envío de SMS en caso de que se forzase cualquiera de las zonas.
  • Poder programar el tiempo de salida y el tiempo de entrada.
  • Poder programar el tiempo de disparo de la sirena.
  • Poder programar el número de teléfono al que se envía el SMS de alerta.
  • Poder indicar el texto de alerta.
  • Programa de configuración para PC fácil de usar para el instalador.
  • Opcionalmente se le podrá conectar una batería de respaldo y una sirena.

Ya tengo el prototipo listo, me queda pulir el programa del microcontrolador y hacer el programa de configuración.

 

IMPORTANTE: La alarma no incluye tarjeta telefónica SIM.

Curso de Xailer. Vídeo de presentación disponible.

He hecho este vídeo para presentar el curso de Xailer y describir como se estructura.

Curso de Xailer. Vídeo 9. Repasando POO.

Ya está subido el vídeo nº 9 del curso de Xailer donde damos un repaso a la POO con Harbour.