Control rejillas motorizadas Aire acondicionado

O me explico mal o no se lee la gente el hilo..............

A ver, voy a poner una máquina de clima por conductos, las rejillas motorizadas las pongo yo, sé perfectamente como moverlas, acorde a la temperatura que quiera y a la que haya en ese momento.

El problema viene dado por el sensor de temperatura que lleva la máquina incorporado en el control principal. Ese es el sensor que hará que la máquina se mueva o no. Yo lo que quiero, como dice Surbyte es, o bien montar una pasarela o bien sustituir el control del AA por uno fabricado por mí.

Porque yo podré controlar las rejillas como quiera y desde donde quiera, pero, ejemplo:

5 salas

Sala 1 está la unidad de control principal con el sensor de temperatura que viene con el equipo, el de fábrica.
Sala 2, 3 4 y 5 tienen sensores de temperatura conectados a nodemcus, arduino, etc.. y desde estos controlo las rejillas de las salas
1, 2, 3, 4, 5.

Supón que quiero tener la sala 1 a 24 grados, empieza a salir aire caliente hasta que se pone a 24, la máquina se para.

Ahora supón que quiero poner la sala 2 a 24 grados, porque está a 15, porque la rejilla la tengo cerrada.

Pues el problema es que al estar la sala 1 a 24 grados, aunque quiera calentar la sala 2 me es imposible puesto que el sensor de temperatura que hay en la sala 1 es el que hace que el equipo se ponga en marcha o se pare, así que mientras la temperatura de la sala 1 no baje, no se empezará a calentar la sala 2, y en el momento que la sala 1 se haya calentado, el equipo se parará, haya alcanzado la sala 2 los 24 o no.

No sé si me explico.

La cuestión es poderse saltar el sistema, crear una pasarela o lo que sea. Para no depender del sensor de temperatura de la unidad central que viene de fábrica, y poder controlar el equipo con cada uno de los sensores de temperatura de las salas, independientemente de las temperaturas de todas y cada unas de ellas.

En ese caso yo me montaría un control propio de la máquina, al final te dará menos quebraderos de cabeza. Dependiendo de qué tipo de sensor de temperatura que tengas podrías hacer cosas, pero ¿es analógico, i2c, spi? Lo dicho, te puede dar muchos problemas controlarlo. También hay maquinas que van preparadas para que les pongas un sensor de temperatura externo, aunque esto queda descartado porque seguro que ya lo has mirado. Esto lo he visto en máquinas de aerotermia. Salu2

Pues lo de las máquinas a las que se les puede poner un sensor externo, pues no, ni lo sabía. Sí sé que daikin tiene unas máquinas que se puede controlar el on/off, pero no el sensor. La aerothermia se me escapa del presupuesto. ¿Puedes decirme por favor algún modelo de máquina de AA por conductos a la que se le pueda poner un sensor de temperatura externo?

Gracias por la info

Creo que ya sé cómo podría controlar una máquina "Daikin" por ejemplo. Mediante el protocolo Modbus y el cacharro de los españoles Intesis "Daikin VRV and Sky systems to Modbus RTU Interface"

Comunicar los sensores con el arduino, y éste que pase datos al módulo de intesis, por supuesto anulando el sensor de temperatura del equipo Daikin. El tema se ve factible, pero hay que echarle horas.

He encontrado esto VRV Reference Guide donde se explica como es la comuniación Daikin.
Dice que es

The VRV Controls Network shall be capable of supporting remote controllers, schedule timers, system controllers, centralized controllers, an integrated web based interface, graphical user workstation, and system integration to Building Management Systems via BACnet® and LonWorks®.

Luego afirma que BACnet dispone de un puerto RJ-45 Ethernet

The Interface for use in BACnet shall be equipped with one RJ-45 Ethernet port to support interconnection with a network PC via the Internet or Local Area Network (LAN). The Ethernet connection shall be capable of transmission on 10Base-T and/or 100Base-TX connection at 100 Mbps.

mientras que LONWorks es mas específica.

B. DMS504C71: Interface for use in Lonworks
The Interface for use in Lonworks shall provide control for all VRV, SkyAir indoor units, and Daikin RA and FTXS indoor units with the use of the KRP928BB2S RA Adapter. It shall be capable of handling a maximum of 64 indoor unit groups (128 indoor units) connected to a maximum of 10 outdoor units.

Ahora suponiendo que uses BACNet que parece no ser fácil tienes esto

BACNet Open Source

tal vez sea un punto de partida o tal vez tu cacharro como has dicho sea mejor opción.

Hola saludos de nuevo, voy a soltaros un rollazo, pero disculparme, ando perdido con el protocolo Modbus y estoy en fase de absorción, ahí voy:

Hay una empresa española que se llama Intesis que fabrica una serie de dispositivos/pasarelas para poder conectar una gran cantidad de Aires Acondicionados al exterior y poder gestionar todas las funciones del equipo en cuestión.

Yo creo que éste modelo Daikin AC Domestic units to Modbus RTU Interface se me acopla a mis necesidades, con él no hace falta que tengas la unidad de pared de control del equipo, ya que éste dispositivo puede gestionarlo de igual forma, claro, no tiene una pantalla ni una botonera, ahí entra arduino, ya que lo quiero controlar con esta plataforma.

Leo que Modbus RTU se comunica de forma binaria, pero aquí es donde tengo los problemas. De momento estoy en fase teórica, no tengo el dispositivo de Intesis de forma física.

La que yo quiero es colocar éste dispositivo entre el A/A y el arduino, poder encender el equipo, gestionarlo y ya de paso gestionar las rejillas motorizadas, o sea, un airzone totalmente casero.

Mi duda surge ante la ignorancia de cómo realizar la comunicación entre el arduino y el dispositivo de intesis. En las especificaciones técnicas del dispostivo, en el punto 4 se habla de la interfaz Modbus y de los registros, pero es ahí donde tengo la duda:

  • Si quiero, desde arduino enviar la serie binaria, por ejejmplo, para encender el Aire Acondicionado. Pues en las especificaciones habla de los registros y demás, pero no deja nada claro, dejo aquí un pantallazo sobre lo que dice de los registros.

  • He visto en internet como encender un led o como mover un motor usando modbus, no es complicado, pero claro, lo que no sé es cómo comunicarme con el dispositivo de intensis puesto que no entiendo el tema de los registros, o es que quizás falta información.

Espero haberme podido explicar con claridad. Gracias por vuestro tiempo, un saludo.

Guauuu.... acabo de ver este foro y vais todos muy encaminados. Se nota que sois todos profesionales del sector, e incluso programadores expertos. Yo creo que se un poco de sistemas de zonas y de su funcionamiento y os seguiré por este foro por si puedo aportar alguna idea. Gracias compañeros del clima

Hago un breve resumen de las pasarelas, sirven para controlar las maquinas 1º PARO/MARCHA 2º CAUDAL 3º TEMPERATURA.
Tambien existe la posibilidad de controlar la maquina, con un CONTACTOR quitando y poniendo corriente, es decir, cuando alguna rejilla esté abierta, me da igual frio o calor, Automaticamente cerramos el contactor y arrancamos la maquina. Si la maquina tiene autoarranque, que practicamente ya la tienen, todas, la maquina arrancara en el ultimo estado en el que la dejamos.... que será FRIO 18º

rpisystem:
Hago un breve resumen de las pasarelas, sirven para controlar las maquinas 1º PARO/MARCHA 2º CAUDAL 3º TEMPERATURA.
Tambien existe la posibilidad de controlar la maquina, con un CONTACTOR quitando y poniendo corriente, es decir, cuando alguna rejilla esté abierta, me da igual frio o calor, Automaticamente cerramos el contactor y arrancamos la maquina. Si la maquina tiene autoarranque, que practicamente ya la tienen, todas, la maquina arrancara en el ultimo estado en el que la dejamos.... que será FRIO 18º

Muchas gracias, eso está claro.....el tema es saber cómo controlar un equipo Daikin de conductos, por ejemplo, a través de la pasarela modbus que tiene el fabricante Intesis. Porque le voy a atacar por ahí, pero no tengo ni papa de modbus. Así que toca investigar a fondo. Por supuesto todo ello controlado desde Arduino.

Muy buenas, he estado maquinando hacer el misno proyecto que tu y casualmebte buscando como controlar rejillas motorizadas con arduino he dado con este foro.
Mi a/c tiene un mando cableado para controlarlo, en principio pense hacerle ingenieria inversa al bus de este mando de tan solo dos hilos, pero buscando informacion descubrí que mi a/c tambien usa modbus, asi que quiero empezar a trastear con el, y voy a empezar con algo sencillo usando las siguientes herramientas que tal vez sean de tu interes.
Un conversor usb a rs232
USB a RS232 TTL
Un conversor de rs232 o ttl a rs485(que en teoria es sobre el que funciona modbus)
TTL a RS485
Mini TTL a RS48
Y la aplicacion MODSCAN que es teroria es una interface para pc del protocolo modbus.
MODSCAN video
MODSCAN Video
Trasteare y veré si las direciones que cambian son las que has posteado unos mensajes atras.
Por cierto, tengo una lista mas completa de direcciones por si te interesa, pero no se a que a/c pertenece, creo que es algo generico

Hola y gracias, disculpa, ¿de qué zona de España eres?, si es que eres de España, claro..yo de Valencia ciudad.

Pues te comento, tras estar mirando y mirando páginas, foros y demás. La conclusión a la que he llegado es la siguiente:

  • La comunicación modbus es posible con casi todos los equipos de A/A por conductos actuales.

  • El problema es la comunicación con la máquina, o sea, su mapa de registros es imposible de averiguar, a no ser que trabajes para la NASA.

  • Hay una empresa que se llama INTESIS (Española), ojo, yo ni trabajo ahí, ni les hago publicidad. Esta empresa tiene una serie de productos y pasarelas que valen para un montón de marcas que hay en el mercado, Daikin, Mitsubishi, etc etc. Estas pasarelas se conectad mediante el par de cables modbus a las másquinas de A/A y mediante su mapa de registros podemos controlar las máquinas. Para un equipo Daikin la pasarela está por unos 150 euros. Así que es un precio muy interesante, teniendo en cuenta que se puede gestionar la temperatura de forma externa, que es el kit de la cuestión.

  • A día de hoy es la única forma de poder controlar los equipos de A/A por conductos, si queremos usar arduino. O saber los mapas de registros de los equipos, que vamos, ni de coña.

  • Yo al final no lo voy a intentar, mas que nada porque el piso que me he comprado es antiguo y tiene varias vigas que me hacen imposible meter conductos. Pero si estás interesado, podemos investigar los dos sobre el tema, si tienes posibilidad de hacerlo en tu casa.

  • Hay otras pasarelas de otros fabricantes, pero de INTESIS hay mucha info y son serios, al menos me han estado contestando a todas mis dudas sin problemas.

  • Si eres de Valencia ciudad o cerca podemos quedar, si no, pues podemos seguir en privado con el asunto y si vemos que la cosa la podemos poner en marcha y funciona, podemos postearlo en el foro para que la gente sepa como está el asunto.

Un saludo.

Sería estupendo trabajar juntos pero soy de sevilla.

El protocolo modbus está muy bien documentado y es gratuito, ya hay incluso librerias para usarlo en arduino.
Los mapas de memoria para las funciones que nos interesan me da la impresion que tambien estan estandarizados.

El protocolo para comunicarse con el modulo de intesis que comentas muy probablemente será propietario y puestos a implementar un protocolo nuevo intentaría descifrar el que ya usa el mando de mi a/c.

Tambien si tuviese que desenbolsar 150€ por el modulo de intesis preferiría comprar un mando que se comunique a traves de modbus con mi a/c, que tambien existen y probablemente sea mas barato y desde ahí me sería sencillo extraer el mapa de registros.

De momento voy a intentar comunicarme directamente a traves de modbus sin modulos adicionales, la idea es mantener el proyecto lo mas barato y sencillo posible.

Te mantendré informado.

Les recuerdo a ambos que el hilo no es de Uds y quien debe estar de acuerdo con la orientación que le estan dando es el autor del tópico.

Antes de nada quiero pedir disculpas si por mi manera de expresarme ha parecido que el hilo era mio.
Al ser un proyecto muy similar me ha parecido bien compartir mi manera de enfocarlo, y quizás a partir de ahi el dueño del topico u otros puedan extraer ideas para su proyecto personal.
Si el moderador o el dueño del topico considera que devería tratar el proyecto en un hilo nuevo así lo haré.

Cumpliendo mi promesa de mantener informados comento que he estado indagando un poco y viendo las entrañas de mi equipo de aire acondicionado, habiendo leído previamente los manuales de usuario y mantenimiento sabia que existian un par de puertos de comunicaciones en mi equipo nombrados como PQE y XYE, el primero conecta la unidad exterior con la interior, y el segundo sirve como puerto de comunicaciones, ya sea para un mando de control cableado, el modulo de intesis que comentaba el compañero, un modulo similar al de intesis que provee el fabricante de la maquina, o la pasarela del sistema Airzone.

He buscado estos puertos en la maquina para ver si habia algo que me ayudase a confirmar que las comunicaciones se efectuaban a traves del estandar RS485, y cual ha sido mi sorpresa, que junto a los conectores hay 3 integrados que según sus datasheets son los encargados de la comunicacion RS485, dos de ellos son el VP3082 y el restante el HVD888. Adjunto imagen.

Por el momento poco mas puedo avanzar, pero ya he hecho el pedido de la electrónica que voy a usar, entre ellos un conversor USB a RS485 y otro conversor TTL a RS485, en cuanto me llegen los conecto y sigo compartiendo novedades.

GENIAL¡¡¡¡¡

Pues bueno, como estoy muy ilusionado con el proyecto, he empezado a trastear con una librería para arduino que implementa el protocolo MODBUS, la librería se llama ModbusMaster.

Como ya comenté existe una herramienta llamada ModScan32 que hace las veces de dispositivo master en una red modbus, puedes escribir y leer registros. Pues bien, el mismo desarrollador de esta herramienta tiene una aplicación llamada ModSim32, que hace las veces de dispositivo esclavo en una red modbus.

Pues con todo esto, partiendo de un ejemplo de uso de la librería ModbusMaster, y usando ModSim32, tengo un pequeño sketch que copia datos de un registro y los escribe en otro. Os pego el sketch, en el también he incluido algunas definiciones de algunos registros que a priori podrían ser los de mi A/C.

#include <ModbusMaster.h>

//COILS OUTPUTS
#define FAN-MODE 0
#define DEHUMM-MODE 1
#define HEAT-MODE 2
#define COOL-MODE 3
#define AUTO-MODE 4
#define MODE-LOCK 5
#define ON/OFF 7
#define HIGH-FAN 8
#define MEDIUM-FAN 9
#define LOW-FAN 10
#define BREEZE-FAN 11
#define AUTO-FAN 15
//DISCRETE INPUTS
//HOLDING REGISTER
//INPUT REGISTERS
#define TS 3
#define T1 4
#define T2 5
#define T2B 6
#define T3 7
#define POWER 12

ModbusMaster node;


void setup() {

  Serial.begin(9600);
  node.begin(2, Serial);

}

void loop() {
  static uint32_t i;
  uint8_t j, result;
  uint16_t data[6];

  i++;

  // set word 0 of TX buffer to least-significant word of counter (bits 15..0)
  node.setTransmitBuffer(0, lowWord(i));

  // set word 1 of TX buffer to most-significant word of counter (bits 31..16)
  node.setTransmitBuffer(1, highWord(i));

  // slave: write TX buffer to (2) 16-bit registers starting at register 0
  result = node.writeMultipleRegisters(0, 2);

  // slave: read (6) 16-bit registers starting at register 2 to RX buffer
  result = node.readHoldingRegisters(2, 6);

  // do something with data if read is successful
  if (result == node.ku8MBSuccess)
  {
    for (j = 0; j < 6; j++)
    {
      data[j] = node.getResponseBuffer(j);
    }
  }
  node.setTransmitBuffer(0, data[0]);
  node.writeMultipleRegisters(9, 1);
  node.writeSingleRegister(10, data[1]);
}

Espero que a alguien le pueda servir de ayuda, estoy deseando que me llegue el conversor USB a RS485 para meterselo al A/C, y espero que mi A/C hable modbus :smiley:

Había pensado grabar un pequeño vídeo, pero solo se vería como cambian los registros del programa ModSim32, algo poco impresionante :smiley:

Bueno, al final he subido el vídeo, en el se puede ver como sube un contador que hay implementado en el código, y como al resetear vuelve a 0, y como al modificar las direcciones 40003 y 40004 el arduino las lee y las escribe en la 40010 y 40011.

Prueba Modbus con arduino

Pues bien, ya me han llegado los componentes para continuar con el proyecto, tenia que venir al trabajo y no he podido vichear mucho, pero aquí esta lo que en prncipio será la placa base del dispositivo, con sus componentes principales, no se ve el conversor ttl a rs485 por que creo que lo voy a tener que montar por detras por falta de espacio.

El cerebro iba a ser un ESP32, pero creo que lo voy a cambiar por un ESP12E que tenía por casa, es con el que he estado trasteando y de momento me va bien, concretamente este.

A ver si tengo un rato y subo un esquemilla que he realizado con la idea de lo que tengo en mente.

Ahora es cuando empiezan los ptoblemas y todo empieza a diverger de como lo habias pensado :D.

Sigo avanzando en el proyecto, os dejo el esquema que os comente con lo que tengo en mente, y avanzo un poco como voy.

Como comenté he cambiado el esp32 por un ESP12E.
Los arduino mini los compré de 5V y 16MHz, pero como se puede intuir en el esquema principio que adjunto, los termostatos van a ser inalambricos e irán a pilas, por lo que los voy a convertir en arduinos mini de 3.3V 8MHz así que toca cambiarle el cristal, que ya los he comprado, y eliminarle los reguladores.

La idea es que el sistema sea controlable a través de una interface web, tengo que desarrollarla, pero ya mas o menos tengo algo definido.

Lo que viene siendo la placa base ya la tengo montada, a falta de soldarle algunos pines mas para los servos de las rejillas.

El sistema es capaz de conectarse a través de MODBUS con el programa ModSim32 que esta emulando a mi aire acondicionado de conducto Kaysun, todo esta basado en documentación que he ido leyendo, quedan hacer pruebas en el equipo real.

El sistema modifica la temperatura de consigna del aire acondicionado (de su simulación mejor dicho) en función de las diferencias de temperaturas que haya entre la temperatura de consigna y temperatura ambiente de cada una de las habitaciones.

Las rutinas para abrir y cerrar la rejillas en función de la temperatura de la habitación ya la tengo creada, ahora os ajuntaré un vídeo con una pequeña prueba.

Ahora mismo la comunicación las estoy haciendo a través de RS232, pero en teoría haciéndolo con el modulo RS485 que tengo montado en la placa base debería funcionar también.

Os pongo el vídeo con una pequeña prueba de funcionamiento.

Test Zonificador

En el vídeo se ve un móvil, que tiene abierta una pagina web, que indica el estado del termostato de la habitación 1; en función de la temperatura ambiente se observa como se acciona el servo, que abriría o cerraría la rejilla.

Como el termostato físico aun no lo tengo montado, los valores de consigna y temperatura ambiente se están seteando desde el programa ModSim32, y el ESP12E los muestra a través de una pagina web.

El servo se ha programado para que abra las rejillas cuando la temperatura ambiente es medio grado mas baja que la temperatura de consigna, y se cierra cuando la temperatura ambiente es medio grado superior a la temperatura de consigna, aunque estoy pensando en bajar ambos casos a una diferencia de 0.25ºC.

Y poco mas, felices fiestas y seguiré informando.