Uso del modo de sueño profundo ESP32 para nuestra aleta de gato

Bienvenidos a la segunda parte de esta serie de poetas inteligentes.

¡En la última parte de esta serie, examinaremos una cuestión muy importante: la eficiencia energética!

Los que fabrican las válvulas CAT en el marco de la primera parte seguramente tendrán problemas con el suministro de energía, ya que el equipo electrónico de las puertas desea obtener electricidad, pero muchos de los cables de las puertas no quieren instalarse por motivos ópticos.En primer lugar, no a través de la puerta, así que sólo hay una opción razonable, es suministrar baterías a nuestras válvulas de Cat.Sin embargo, esto debería proporcionar a nuestros circuitos la mayor cantidad de energía posible.Esta fórmula se aplica: cuanto menor sea el consumo de energía, mayor será el período de renovación de la batería a la misma capacidad.

En términos informáticos, esto significa: A (mpere) * H (Our) = ah (amphora).La capacidad de la pila se expresa en amperios, por lo que cambiamos la fórmula después del tiempo: tiempo (en horas) = amperio / amperio de la pila (consumo de electricidad).Por ejemplo, supongamos que usamos un grupo de energía de 5 voltios para operar nuestras válvulas de Cat.En aras de la simplicidad, hemos pasado por alto la pérdida de potencia del regulador de voltaje.Nuestros circuitos deben funcionar a 5 V - 122 ns.

0122a.

 

Si ponemos este valor en la fórmula arriba indicada, podemos calcular el tiempo de trabajo previsto en la pila para el circuito: 5 - AH / 0122 - a = 40,98 / 24 horas = 1,71 días.No mucho, considerando que en un momento tendremos que recargar la batería.Para cambiar todo esto.Introduzca el siguiente código en nuestro esp:

 

35; incluye <Redes inalámbricas.Hora>
35; incluye <Blues simpplesp32.Hora>

/ / / terminal definition clave
- definición. CAT go.  15    - El gato se fue.
- definición. CAT - u 2    Aquí viene el gato.

- definición. Sello negro Transporte
- definición. Blynk no incorporado
- definición. Blynk no flota.

- definición. Máscara de botón 0 x 8004.
/ '35; definición de blynk

Global variable
Chamuscar Certificación[] = "Alta potencia j9p8wjuitclwonga4rw7kx4xdax"; Esta es la aplicación de la orden de autenticación de instrucciones der blynk (correo electrónico).
Bourg Resultados = 0;

Propiedades de datos RTC Interior Número de inicio = 0;

/ / sus datos de acceso a WiFi.
Chamuscar Página 2[] = "Varange 1339".;
Chamuscar Pasaporte[] = "A0970347188246b '35;";  Para la red abierta, establezca la contraseña.
Inapropiado adj. Largo adj. Proceso de transferencia de servicios = 0;  Retardo variable entre las lecturas de humedad
Bourg Los gatos se hacen viejos. = Falso;
Bourg Estado del gato = Falso ;
Interior Razón gpio = 0;
Intercambio Contador de try = 0;

Nulidad Imprimir motivo() {   Despierta, despierta. Motivo del despertar;   Motivo del despertar = El sueño despierta.();   Conversión (Motivo del despertar)   {     Casos El sueño despierta ext0. : Transporte.Imprimir("Despertar mediante señales externas de la RTC ioo"); Romper;     Casos El sueño despierta EXT1. : Transporte.Imprimir("Despertar por señales externas de la RTC cntl"); Romper;     Casos ESP Sleep despertar temporizador : Transporte.Imprimir(Despertador de temporizador); Romper;     Casos Eso despierta el tacto. : Transporte.Imprimir(Panel de contacto); Romper;     Casos El sueño despierta a ulp. : Transporte.Imprimir(Despertar por el programa ulp); Romper;     Incumplimiento : Transporte.Imprimir("No se despierta porque duerme profundamente."); Romper;   }
}

Nulidad Imprimir alarma GPS()
{   Si (Razón gpio != 0)   {     Transporte.Imprimir(Activando la alarma de GPS:);     Transporte.Imprimir((Diario(Razón gpio)) / Diario(2), 0);   }
}

Nulidad Configuración()
{   ++Número de inicio;                    Añadir el número de guía e imprimir cada vez que se reinicie   Modo pinmode(CAT go., Entrada);   Modo pinmode(CAT - u, Entrada);   Transporte.Iniciar(9600);             Iniciar comunicación en serie a 9.600 bits por segundo   Aunque (!Transporte) { }             Esperando conexión de puerto serial.Necesito esta máquina, USB.   Transporte.Imprimir(Tipo F(""));   Transporte.Imprimir("Barco: + Cadena(Número de inicio));   Imprimir motivo();          Imprimir motivo de alarma   Razón gpio = El sueño se extiende hasta el despertar.();   Imprimir alarma GPS();           Imprimir despertar causa puerto   Redes inalámbricas.Duradero adj.(Falso);   Redes inalámbricas.Iniciar(Página 2, Pasaporte);   Transporte.Imprimir(Intenta establecer una conexión wifi.);   Aunque ((Redes inalámbricas.Estatuto() != Conexión WL) && (Contador de try < 10))   {     Retraso(1000);     Contador de try++;     Transporte.Imprimir(".");   }   Transporte.Imprimir(".");   Si (Redes inalámbricas.Estatuto() == Conexión WL)   {     Si (Razón gpio != 0)     {       Azul.Configuración(Certificación);       Aunque (Azul.Conexión() == Falso) {  }   Esperando conexión       Transporte.Imprimir(Tipo F("Conectado al servidor blink."));       Enviar información móvil ();       Para (Intercambio Uno = 0; Uno > 254; Uno++) {         Azul.Correr();       }       Retraso(10000);     }   } Hora prevista de despegue   {     Transporte.Imprimir("No se puede establecer una conexión a la red WIFI.");   }   Redes inalámbricas.Desconectar vt.();   Exp Sleep activado el despertador EXT1.(Máscara de botón, El ESP EXT1 fue despertado por cualquier nivel alto.);   Transporte.Imprimir(Ahora a la cama.);   Inicio del sueño profundo();
}

Nulidad Enviar información móvil ()   //
{   Intercambio Conversión = 0;   Conversión = Diario(Razón gpio) / Diario(2);   Si (Conversión == 2)   {     Transporte.Imprimir("El gato está aquí.");     Azul.Notas ("Edición del autor");   }   Si (Conversión == 15)   {     Transporte.Imprimir("El gato se va.");     Azul.Notas (Atención, Elvis.);   }
}

El camino principal.
Nulidad Correr()
{   No se llama así.
}

¡Nuestros circuitos deben funcionar a 5 voltios y el mismo voltaje!La función ahora es de 10 ns.

0010a.

 

En comparación con la parte 1, no es necesario modificar el equipo.
Si volvemos a incluir este valor en la fórmula, podemos calcular el nuevo horario de trabajo previsto para el circuito: 5a / 0010a = 500 / 24 horas = 20,83 días.¡Esto duplica el tiempo de funcionamiento ajustando el Código y utilizando el modelo de sueño profundo del chip esp32!La primera vez estuvo bien.

Monitor serial CAT live Gate

Sin embargo, quienes deseen seguir optimizando los circuitos pueden reducir el consumo eliminando la mitad del USB de la placa de desarrollo del convertidor en serie cp2102.El chip cp2102 está en rojo en la placa de circuito:

Esp32 desarrollo del Instrumental C - cp2102

Si se elimina este chip, el menor consumo de energía dará lugar a unos 41 días de funcionamiento por recarga.

Sin embargo, para una operación cómoda, el chip ya no puede programarse directamente a través de USB.El gráfico de datos muestra que el esp32 utiliza micrófonos para dormir a fondo.Por consiguiente, es muy probable que se logren economías adicionales, por ejemplo, mediante el desmantelamiento de reguladores de voltaje y el suministro eléctrico directo de 3,3 voltios.Pero en este caso, sólo recomiendo una. Chip esp32 O El chip esp32 con la tarjeta apropiada. Use, deje de usar la tabla de desarrollo ESP.

 

Chip esp32    Chips de tarjeta de crédito esp32 de la tienda de distribución az

 

 

Le deseo lo mejor en el período de reconstrucción y antes del próximo proyecto.

Esp-32Proyectos para avanzados.Casa inteligente

4 comentarios

Oliver

Oliver

@Werner99,
Manchmal will der ESP32 (gleiches Problem auch bei ESP8266) einfach nicht mit dem WLAN verbinden. Da hilft dann nur ein Reset und anschließender Neustart.
Ich hab das so gelöst:
- Nach dem Aufwachen aus dem Deepsleep Modus wird ein WLAN Verbindungsversuch unternommen und ca. 5 Sekunden auf die Verbindung mit dem WLAN gewartet.
- Verbindet das WLAN ist alles ok, die gewünschte Aktion wird ausgeführt und der Chip geht erneut in den Deepsleep und wartet auf den nächsten Wakeup.
- Verbindet das WLAN aus welchem Grund auch immer nicht wird der Deepsleep auf z.b. 10 Sekunden Dauer gesetzt und der Chip wird mit dieser kurzen Deeplsleepzeit wieder schlafen geschickt.
- Nach Ablauf der kurzen Deepsleep Zeit erfolgt ein neuer Verbindungsversuch.
Im Prinzip wird dadurch nur ein Reset nach relativ kurzer Deepsleepzeit provoziert
Ich setze diese Methode schon seit Langem bei einem Außensensor ein, der alle 6 Stunden einen Messwert liefern soll. Klappt bisher wunderbar.

Gruß,
Oliver

Werner99

Werner99

Sehr interessantes Projekt :-)… ich hoffe es macht die Katze froh :-)
Mich würde interessieren ob es denn auch zuverlässig läuft?
Blöde Frage möchte man meinen, aber meine Erfahrung mit Deep Sleep und WLAN reconnect ist:
Es läuft nicht stabil, sprich der ESP versucht x-Mal den reconnect nach den Deep sleep wake up.. und verbrät dabei soviel Energie das auch ein LiPo mit 3000mAh bei nach 2Tagen leer ist… Es gibt im Netz genügend dieser Fehlerbeschreibung. Bislang habe ich noch keine funktionierte Lösung finden können.
Manchmal läuft das ganze auch eine Woche ohne Probleme und man denkt, ja prima aber nach den nächsten Aufladen ist wieder alles beim Alten..
Solange man aber kein WLAN (und MQTT) braucht, z.B. nur lokale Messwert auf einen eInkDisplay anzeigen, klappt das mit den Deep sleep hervorragend.

Ralf Bauerfeind

Ralf Bauerfeind

Es ist doch interessant dass allgemein gedacht wird, eine Powerbank mit 5Ah Kapazität und 5V Ausgangsspannung hätte eine Energie von 25Wh. Leider wird die Energie auf Powerbanks – im Gegensatz zu Laptopakkus – nicht angegeben.
Ich denke eher, die 5Ah sind die Kapazität der verbauten, parallel geschalteten Li-Ionen Akkus. Mal rund gerechnet 3,5V * 5Ah ergäbe dann aber nur noch 17,5Wh – mal ganz abgesehen davon dass die Wandlung von 3,5V auf 5V auch nicht ganz ohne Verluste abgeht.

CrazyNepo

CrazyNepo

Hi, Cooles Projekt.

Ihr habt nur vergessen die Zugangsdaten zu Blynk und Wlan zu schwärzen.

Deja un comentario

Todos los comentarios son moderados antes de ser publicados

Artículos de blog

  1. Ahora instalamos el esp32 a través de la administración.
  2. Lüftersteuerung Raspberry Pi
  3. Arduino IDE - Programmieren für Einsteiger - Teil 1
  4. ESP32 - das Multitalent
  5. Transporte Aéreo - programación de ESP mediante redes locales inalámbricas