This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

  • 2 voto(s) - 3.5 Media
  • 1
  • 2
  • 3
  • 4
  • 5
presentacion y consulta sobre control split aire acondicionado
#1
Buenos días,
Estoy recién llegado al mundo arduino y quería  sacarle provecho a los conocimientos que vaya obteniendo sobre este sistema, por eso me había planteado como proyecto de inicio controlar los 5 splits de aire acondicionado de mi casa. Tengo conocimientos de programación, pero muy pocos de electrónica y de este tipo de hardware, de ahí que me surjan muuuuuchas dudas.

Dicho ésto, había pensado en un modulo ESP8266 ESP-01 para enviar los comandos IR al split desde una aplicación android, pero no tengo claro como puedo detectar si el split está encendido o apagado. Me imagino que a través de comandos IR no será posible. ¿De que otra forma se podría controlar ésto?

Muchas gracias
Un saludo
Paco.
  Responder
#2
Pues recién llegado al mundo arduino vas con un proyecto de la leche, ajjajaa.....

A ver, antes de meterte en berenjenales de esa índole, prueba primero a configurar los módulos ESP8266 y hacerlos funcionar desde una app a través de la web.

Yo por ejemplo enciendo/apago una caldera con un relé conectado a un ESP8266 ESP01 desde cualquier parte del mundo, controlo la temperatura, y además monitorizo en todo momento el estado del pin que activa/desactiva la caldera.

Pero llevo un largo tiempo con ello, puesto que yo de programación voy muy justo, aunque de electrónica y creación de PCB voy algo mejor.

Para todo ello lo que he hecho es lo siguiente:

1º Actualizar firmware de los ESP8266
2º Cargar IDE de arduino y programa en el ESP8266
3º Crear una app con appinventor 2
4º Abrir puertos de router y redireccionar la DDNS a través de la web www.noip.com
5º Subir datos de temperatura, humedad y estado del pin que deseas a thingspeak y de ahí extraer el Json para cargarlo en la app.
6º Poder enviar los comandos vía web desde la app al módulo ESP8266 al que le he puesto una IP fija.

Y todo esto para sólo temperatura, humedad, estado de la caldera. Así que si lo que quieres es encender una serie de splits a traves de la web mediante IR, pues, difícil no tiene que ser, pero habrá que ir paso por paso.

Yo primero lo que haría sería averiguar el código IR de los equipos y probar con un sensor IR a conectar y desconectar, así como selesccionar la temperatura, una vez eso claro ya es exportarlo a los módulos ESP8266, ten en cuenta que por cada split necesitarás un módulo.

Yo soy de Valencia ciudad, si eres de por aquí cerca (acabo de ver que eres de Murcia) podemos sentarnos y trastear el proyecto o bien ponernos de acuerdo por aquí y compartir conocimientos. Si quieres, por supuesto.
  Responder
#3
Jeje, hola jgarridc,
La verdad es que la información que hay sobre todo lo que rodea este "mundillo" es abrumadora, pero bueno, me lo tomo un poco como dices... "piano piano".
Tengo claro más o menos los pasos que me señalas, de hecho ya visto algún que otro programa para gestionar los A/A vía infrarrojos. Es cierto que parece complicado la gestión de los códigos IR en los A/A. 
Primeramente con el arduino he buscado un programa para decodificar las señales de los mandos a distancia de los A/A. Lo he probado y parece que funciona aunque sigo sin tener claro del todo la interpretación de estos códigos. A continuación he cargado otro programa para emitir estos códigos al A/A y también funciona.
Me da la impresión de que cuando capturo una pulsación de tecla del mando no se envía solamente esa pulsación sino toda la configuración que tiene el mando en ese momento por lo que no puedo discriminar para enviar comandos que suba o baje un grado la temperatura o que seleccione la velocidad del ventilador y demas funciones. He visto otros códigos que envían señales de encender, funcion del ventilador, temperatura y alguna cosa más, éstos no los he probado con éxito todavía.
El siguiente paso que tengo en mente es ver si puedo conseguir lo mismo que acabo de comentar en el modulo ESP8266 ESP-01.
Según he leído, en teoría tiene 4 GPIOs ya que a parte de las de los pines 2 y 3 (GPIO2 y GPIO0 respectivamente) también se pueden utilizar  el pin 4 y 5 (RXD y TXD) con el mismo propósito una vez que se ha cargado el programa en el ESP. por lo que también en teoría se podrían manejar 4 sensores (de esto no estoy muy seguro, si me equivoco que alguien me corrija) pero en el caso de que solo se puedan utilizar 2 GPIOs el modulo sería capaz de manejar un emisor IR y un sensor de temperatura y humedad.

Efectivamente tengo claro que necesitaré un ESP-01 para cada split y mi idea era ir  añadiendo estos módulos de manera que funcionaran independientemente, cada uno con un propósito distinto (una alarma, detector de humo, control de luces, etc) pero he empezado por lo más complicado según parece... jeje.

Como bien dices vivo en Murcia, así que está complicado compartir ratillos in situ pero no tengo inconveniente que nos comuniquemos a través de este foro o por correo... como quieras.

Muchas gracias por tus indicaciones :-)
Un saludo.
  Responder
#4
Una consideración sobre la actualización del firmware de los ESP8266.

El firmware original está basado en la interpretación de comandos AT, pero si le cargamos un sketch de Arduino, éste se supone que sobreescribe este firmware original. Por tanto si la intención es programar los ESP8266 con sketchs de arduino que hagan uso de librerias tales como ESP8266Wifi y por el estilo, no sería necesario la actualización del firmware original.

¿Esto es así o parto de una base errónea?

Un saludo.
  Responder
#5
Pues realmente no lo sé, siempre he actualizado firmware y luego he cargado el IDE de arduino, más que nada porque así fue la primera vez que lo hice, navegando por la web, y así lo sigo haciendo, total, son 20 segundos.....
  Responder
#6
Video 
Según he visto en éste vídeo (a partir del minuto 3:11) la memoria tiene un mapa con unas direcciones de inicio donde se cargan distintos tipos de código.
La primera dirección corresponde al boot y luego hay otras zonas entre las que se encuentra una zona de usuario que comenza en la dirección 01000h que entiendo que es donde se carga el sketch.

Pero no estoy seguro de esto... :-)

Un saludo.
  Responder
#7
Bueno, yo no es que sea muy bueno en todo esto, voy aprendiendo a base de leches, no sé, yo creo que el firmware es la base sobre la que corre tanto en comandos AT como con el IDE de arduino, pero no me hagas caso.Lo que sí estoy teniendo con los módulos ESP son problemas de estabilidad, por ejemplo, gestionando una caldera usando la patilla GPIO2 para activar/desactivar, todo va bien, hasta que de repente deja de enviar señal a la patilla GPIO2 y la caldera se desconecta, y no encuentro el motivo.....
  Responder
#8
No se que modelo ESP usas, el ESP-01, el ESP12, el NodeMCU.... pero segun he leido por ahí si no recibe el amperaje suficiente puede que no funcione correctamente el servicio web que corre. ¿Utilizas pilas, batería o corriente transformada de 220?.
Por otro lado utilizas www.noip.com para mantener un nombre fijo en internet, pero tu IP no es fija. Quizá si envias esos comandos desde internet pueda coincidir que no se haya actualizado el cambio de IP que te haga tu ISP en www.noip.com.
También creo que hay que tener en cuenta que si utilizas un ESP-01 quizá peque de poco estable si tenemos en cuenta su precio cuando se compara con otras placas como MKR1000... Son cosas que habrá que ir descubriendolas con el paso del tiempo y la experiencia.
  Responder
#9
Estoy usando el ESP-01 y sí, es una castaña, voy a pasar a uno superior a ver que tal anda de estabilidad. El circuito lo alimento con un cargador de nokia que me saca 2 amperios, es de 5 voltios, con os 5v alimento el sensor de temperatura y con un ld33v alimento el ESP. El problema creo que me viene más por la parte de programación, como la app del móvil la he hecho con appinventor, creo que no es estable del todo, lo tengo ahora conectado en el terminal serie a ver que me saca y te cuento....
  Responder
#10
Supongo que el sketch que tienes cargado envia datos al thingspeak como decias al principio; podría ser que fallase la comunicación con el servidor.
Una prueba que podías hacer es modificar el sketch para que funcione sin comunicación alguna con internet y trabajar solo con tu red local vía wifi durante un tiempo, bien desde una pagina web desde un ordenador o si quieres desde el móvil, me imagino que deberías modificar también la aplicación, de esta forma puedes cercar más el problema.
  Responder
#11
Buena idea, voy a ir probando cosas...
  Responder
#12
SOLUCIONADO mi problema, he sustituido el ESP01 por un NODEMCU V1.0 y va todo como la seda......
  Responder
#13
La mayoría de los problemas del ESP-01, maravilloso artilugio por cierto, tienen tan fácil solución como ésta: basta con no usar el puerto GPIO0.
Me explico, el GPIO0 se usa para entrar en modo programación conectándolo con GND. Si por cualquier motivo se reinicia el ESP-01, y al arrancar el GPIO0 está en nivel bajo, el módulo entrará en modo programación, y de ahí que se quede colgado.
La solución es asegurarse de que cuando se reinicie no esté en nivel bajo. 
Si se conecta, por ejemplo, un sensor hall al GPIO0 que cuenta las vueltas de un motor, y al reiniciar el ESP-01, el sensor hall da un valor LOW, el módulo entrará en modo programación y se quedará colgado.
Lo dicho, no conectar nada en este puerto, y si queremos asegurarnos aún más, además de no usarlo, colocarle una pull-up. En teoría, si no se pone una pull-up, al no conectar nada su valor estaría flotando y algún reinicio podría poner en modo programación al módulo. En la práctica, tengo varios instalados, con el GPIO0 libre y sin pull-up, en distintos emplazamientos durante meses y nunca he tenido problemas.
Un saludo
  Responder
#14
Hola s118,
Me alegro de que lo hayas solucionado.
Una consideración: ¿No sería suficiente con inicializar el GPIO0 mediante software en la función setup del sketch?, de esta forma tendrías disponible el GPIO0 para otros usos.
Un saludo.

(08-08-2017, 09:23 AM)s118 escribió: La mayoría de los problemas del ESP-01, maravilloso artilugio por cierto, tienen tan fácil solución como ésta: basta con no usar el puerto GPIO0.
Me explico, el GPIO0 se usa para entrar en modo programación conectándolo con GND. Si por cualquier motivo se reinicia el ESP-01, y al arrancar el GPIO0 está en nivel bajo, el módulo entrará en modo programación, y de ahí que se quede colgado.
La solución es asegurarse de que cuando se reinicie no esté en nivel bajo. 
Si se conecta, por ejemplo, un sensor hall al GPIO0 que cuenta las vueltas de un motor, y al reiniciar el ESP-01, el sensor hall da un valor LOW, el módulo entrará en modo programación y se quedará colgado.
Lo dicho, no conectar nada en este puerto, y si queremos asegurarnos aún más, además de no usarlo, colocarle una pull-up. En teoría, si no se pone una pull-up, al no conectar nada su valor estaría flotando y algún reinicio podría poner en modo programación al módulo. En la práctica, tengo varios instalados, con el GPIO0 libre y sin pull-up, en distintos emplazamientos durante meses y nunca he tenido problemas.
Un saludo
  Responder
#15
Vale, te entiendo, poner por defecto el GPIO0 en HIGH en setup(). Pero resulta que el ESP-01 carga primero un sector de arranque que elije si empieza en modo configuración o en modo trabajo. Si justo al arrancar, el GPIO0 está LOW, empieza en modo programación. Si está HIGH empieza en modo trabajo, y entonces es cuando ejecuta el setup() que indicas.
El problema está en que la elección de entrar o no en el modo programación está antes que el setup().
  Responder
#16
Entendido gracias por la aclaración.

(08-08-2017, 10:45 AM)s118 escribió: Vale, te entiendo, poner por defecto el GPIO0 en HIGH en setup(). Pero resulta que el ESP-01 carga primero un sector de arranque que elije si empieza en modo configuración o en modo trabajo. Si justo al arrancar, el GPIO0 está LOW, empieza en modo programación. Si está HIGH empieza en modo trabajo, y entonces es cuando ejecuta el setup() que indicas.
El problema está en que la elección de entrar o no en el modo programación está antes que el setup().

Si, así todo más fácil :-)
además el ESP01, por la experiencia que he tendio (en prototipo) es que se calienta mucho y .... "me da cosa" yo estoy empezando a interesarme por ESP-12E o 12F
Un saludo.

(08-08-2017, 08:39 AM)jgarridc escribió: SOLUCIONADO mi problema, he sustituido el ESP01 por un NODEMCU V1.0 y va todo como la seda......
  Responder
#17
Las ventajas principales de los ESP-01 son el pequeño tamaño, el bajo consumo, y el bajo precio. En esto ganan con mucha diferencia a los nodemcu (ESP-12). En todo caso, todas las variantes de ESP llevan el mismo chip, el ESP8266. Las diferencias están en el nº de puertos que sacan, si llevan o no convertidores de voltaje y conexion usb,... Repito, el chip es el mismo, pero en el ESP-01 no están todos los puertos conectados.
Hay situaciones en que un ESP-12 es mejor que un ESP-01, pero también hay muchas veces que ocurre todo lo contrario.
Tengo uno instalado para accionar la apertura a distancia de una puerta desde hace más de un año y nunca me ha dado problemas. También tengo varios sensores enviando datos desde hace tiempo y nunca han dado problemas, todos ellos instalados de forma independiente, sin ningún arduino por medio.
  Responder
#18
Utilizas baterías o tiras de la red eléctrica?
  Responder
#19
En el de la puerta utilizo cargador de un movil de 5V y 2A conectado a la red eléctrica + un conversor a 3V.
En los sensores que tengo a la intemperie utilizo una placaquita solar + módulo de carga TP4056 + pila 18650 3,7V + conversor a 3V
  Responder
#20
ok, yo estoy intentando hacer un módulo que me controle A/A, sensor temperatura y sensor humos con un único esp-12e y como no quiero tener que ocuparme de las pilas y ademas quiero que se quede todo el cableado oculto quiero incluir la alimentación con todo el paquete.
Un saludo.
  Responder


Posibles temas similares…
Tema Autor Respuestas Vistas Último mensaje
  ayuda y consulta CARLOSASSET 1 67 21-03-2023, 11:50 PM
Último mensaje: asesorplaza1
  Consulta error en manejo reles marin1967 1 143 27-02-2023, 02:15 PM
Último mensaje: asesorplaza1
  consulta baterias 18650 y arduino homer32 3 1,839 08-12-2019, 02:51 PM
Último mensaje: bertonic
  Control calefacción central arduino (colaboradores) jgarridc 0 1,011 27-11-2018, 08:33 PM
Último mensaje: jgarridc
  APORTE Control de Persiana por bluetooth kuadri 0 1,467 16-06-2018, 11:33 PM
Último mensaje: kuadri