Tabla de contenido:
- Paso 1: Lista de piezas
- Paso 2: Programación de la placa Digispark
- Paso 3: Reducción de potencia
- Paso 4: Botón de reinicio
- Paso 5: altavoz
- Paso 6: funcionamiento
Video: Detector de ventana abierta Arduino - para invierno: 6 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:40
Afuera hace frío, pero a veces necesito un poco de aire fresco en mis habitaciones. Entonces, abro la ventana, salgo de la habitación, cierro la puerta y quiero volver en 5 a 10 minutos. Y al cabo de unas horas recuerdo que la ventana está abierta… Tal vez tú lo sepas o tengas hijos, que te den esta experiencia.
Mi solución es el detector de ventana abierta. La batería durará más de un año, así que colóquela en otoño y retírela en primavera.
Paso 1: Lista de piezas
- Tablero Digispark de eBay.
- Auriculares viejos.
- Botón minúsculo para reiniciar.
- Conectores para altavoz; de lo contrario, no es posible reprogramar la placa.
- Cable.
- Para la fuente de alimentación necesita:
Caja de batería AAA con interruptor de encendido / apagado. Incluso puede usar baterías gastadas, ya que el módulo funcionará hasta 2,4 voltios
O
Batería de lipo vieja (incluso el 30% de la capacidad es suficiente para este propósito) y si aún no la tienes, un cargador para baterías de lipo de eBay.
O
Un soporte para pila tipo botón CR2032
Y
Diodo 1A 1N4001 o equivalente -o lo que tenga en este tamaño- para protección de polaridad inversa
Paso 2: Programación de la placa Digispark
Instalación del controlador
Debe instalar el controlador Digispark antes de poder programar la placa. Descárguelo aquí, ábralo y ejecute "InstallDrivers.exe".
Instalación de Arduino IDE
Instale la placa Digispark para Arduino IDE como se describe en
Recomiendo usar como URL de la placa Digispark en Arduino File / Preferences el nuevo https://raw.githubusercontent.com/ArminJo/DigistumpArduino/master/package_digistump_index.json en lugar de https://digistump.com/package_digistump_index.json e instalar el Placas Digistump AVR versión 1.6.8.
Como queremos ahorrar energía, el reloj de la placa se cambia a 1 MHz en nuestra configuración (), puede elegir Digispark (1mhz - Sin USB) como placa en el menú Herramientas.
Compila y sube el programa al tablero
En el IDE de Arduino, cree un nuevo boceto con Archivo / Nuevo y asígnele el nombre, p. Ej. "OpenWindowAlarm". Copie el código de OpenWindowAlarm.ino
O
Descarga y extrae el repositorio. Abra el boceto con Archivo -> Abrir… y seleccione la carpeta "OpenWindowAlarm".
Compílelo y cárguelo. Tenga en cuenta que la carga no funcionará si el altavoz está conectado. Si todo funciona bien, el LED integrado del Digispark parpadeará 5 veces (durante el retraso de alarma de 5 minutos) y luego comenzará a parpadear después de 8 segundos con un intervalo de 24 segundos para señalar cada lectura de temperatura.
Paso 3: Reducción de potencia
Nuestra placa Digispark utiliza 5 mA a 3, 0 voltios. Con 2 pilas AAA (1000 mAh) funcionará durante 8 días. Pero es posible reducir el consumo de energía hasta 26 µA en 3 pasos.
- Deshabilitar el LED de encendido rompiendo el cable de cobre que conecta el LED de encendido al diodo con un cuchillo o quitando / deshabilitando la resistencia 102 ahorra 1.3 mA.
- Quitar el regulador de voltaje VIN ahorra 1.2 mA.
-
Desconectar la resistencia USB Pullup (marcada 152) de 5 Voltios (VCC) ahorra los 2.5 mA restantes. Desconéctelo rompiendo el cable de cobre en el lado de la resistencia que apunta al ATTiny. Esto desactiva la interfaz USB y, a su vez, la posibilidad de programar la placa Digispark a través de USB. Para habilitarlo nuevamente, pero aún así ahorrar energía, conecte la resistencia (marcada con 152) directamente al USB de 5 voltios que está fácilmente disponible en el lado exterior del diodo.
El lado correcto del diodo se puede encontrar usando un probador de continuidad. Un lado de este diodo está conectado al pin 8 del ATtiny (VCC). El otro lado está conectado a USB de 5 voltios.
Ahora, la resistencia pullup USB solo se activa si la placa Digispark está conectada a USB, p. Ej. durante la programación y la placa consume 26 µA durante el reposo.
Si reprograma los fusibles, puede obtener un consumo de energía de 6 µA.
Para reprogramar los fusibles, necesita un ISP (que se puede construir con un Arduino) y un adaptador de conexión. Para reprogramar, puede usar este script.
Paso 4: Botón de reinicio
Si no desea quitar la energía para restablecer la alarma, conecte un botón de restablecimiento entre PB5 y tierra. Hice esto conectando la superficie de cobre VIN desconectada a PB5 y soldando el botón de reinicio directamente al orificio del pin VIN y la gran superficie de tierra del regulador de voltaje VIN eliminado.
Si desea deshacerse de los 5 segundos de espera para la conexión USB después del reinicio, puede cambiar el núcleo de micronúcleos en el ATtiny85. Ejecute el script "0_Burn_upgrade-t85_recommended.cmd" y luego vuelva a cargar la aplicación OpenWindowAlarm con el IDE de Arduino.
Paso 5: altavoz
Desmonté unos auriculares viejos y conecté el conector macho al cable.
Paso 6: funcionamiento
Para usar el tablero, colóquelo en el alféizar de una ventana y conéctelo a una batería. Si la temperatura en el alféizar es más baja que la temperatura donde se encontraba originalmente el tablero, tomará 5 minutos adicionales para adoptar inteligentemente el nuevo valor de inicio.
Entonces se alarmará si deja la ventana abierta más de cinco minutos.
Operación interna
- Se detecta una ventana abierta después de TEMPERATURE_COMPARE_AMOUNT * TEMPERATURE_SAMPLE_SECONDS (48) segundos de leer una temperatura con un valor de TEMPERATURE_DELTA_THRESHOLD_DEGREE (2) menor que la temperatura TEMPERATURE_COMPARE_DISTANCE * TEMPERATURE_SAMPLE_SECONDS y 192 segundos antes de 3 segundos.
- El retraso se implementa durmiendo 3 veces en `SLEEP_MODE_PWR_DOWN` durante un período de 8 segundos para reducir el consumo de energía.
- La detección de una ventana abierta se indica mediante un parpadeo más largo de 20 ms y un clic corto cada 24 segundos. Por lo tanto, el sensor interno tiene un tiempo de 3 minutos para ajustarse a la temperatura exterior con el fin de capturar incluso los pequeños cambios de temperatura. Cuanto mayor sea el cambio de temperatura, antes cambiará el valor del sensor y detectará una ventana abierta.
-
`OPEN_WINDOW_ALARM_DELAY_MINUTES` (5) minutos después de la detección de ventana abierta, la alarma se activa.
La alarma no se iniciará o una alarma activada se detendrá si la temperatura actual es mayor que la temperatura mínima medida (+ 1), es decir, la ventana ya se ha cerrado.
- La alarma inicial dura 10 minutos. Después de esto, se activa durante un período de 10 segundos con una pausa creciente de 24 segundos a 5 minutos.
- Cada VCC_MONITORING_DELAY_MIN (60) minutos se mide el voltaje de la batería. Dependiendo del tipo de batería detectado al encender (ver VCC_VOLTAGE_LIPO_DETECTION (3.6 voltios)), un voltaje de batería por debajo de VCC_VOLTAGE_LOWER_LIMIT_MILLIVOLT_LIPO (3550) o VCC_VOLTAGE_LOWER_LIMIT_MILLIVOLT_STANDARD El LED de milivoltios parpadea cada 24 segundos. Solo el pitido (no el flash) es significativamente más largo que el pitido para la detección de una ventana abierta.
- Después del encendido, el tiempo de asentamiento inactivo es de 5 minutos. Si el tablero se enfría durante el tiempo de estabilización, se agregan 4:15 (o 8:30) minutos para evitar falsas alarmas después del encendido.
Recomendado:
Manténgase abrigado este invierno: Calentador de manos de CPU: 4 pasos (con imágenes)
Manténgase abrigado este invierno: Calentador de manos de CPU: En este pequeño proyecto, le mostraré cómo reutilicé una CPU AMD vieja para crear un calentador de manos eléctrico pequeño, liviano y fácil de usar. Con la ayuda de un pequeño banco de energía portátil, este dispositivo puede calentarlo durante aproximadamente 2 horas y media y puede facilitar
Dispositivo biomédico de fuente abierta microcentrífuga: 11 pasos
Dispositivo biomédico de fuente abierta microcentrífuga: este es un proyecto en curso que se actualizará con el apoyo de la comunidad y más investigación e instrucción. El objetivo de este proyecto es crear equipos de laboratorio modulares de código abierto que sean fáciles de transportar y se construyan a partir de piezas de origen económico para
Una versión inalámbrica de ¿La puerta de mi garaje está abierta o cerrada ?: 7 pasos
Una versión inalámbrica de … ¿Está la puerta de mi garaje abierta o cerrada? Queríamos un sistema de indicación simple, económico y confiable que nos mostrara si las puertas de nuestro garaje estaban abiertas o cerradas. Hay muchos mensajes de " ¿Está abierta la puerta de mi garaje? proyectos. La mayor parte de estos proyectos están cableados. En mi caso corrido
Sombrero LED de invierno: 5 pasos
Sombrero LED de invierno: ¡Hola! Soy Cameron. ¡Bienvenido a mi instructable en mi sombrero iluminado de bricolaje! Es muy simple de hacer y usar. ¡Espero que lo disfrutes
Fácil espectáculo de luces LED navideñas: magos en invierno - Tira de LED WS2812B con FastLED y un tutorial de Arduino: 6 pasos
Fácil espectáculo de luces LED navideñas: magos en invierno | Tira de LED WS2812B con FastLED y un tutorial de Arduino: diseñé y programé este espectáculo de luces navideñas para que se muestre en cualquier lugar. Usé una tira de led WS2812B con una densidad de píxeles de 30 píxeles / metro. Como usé 5 metros, tenía un total de 150 LED. Mantuve el código simple para que cualquiera que sea nuevo en el uso de WS2812