TapHome

Atrea aMotion

Modbus TCP
Submitted by
Last updated: 03. 2026
Atrea aMotion

Atrea aMotion è il sistema di controllo di nuova generazione per le unità di ventilazione Atrea DUPLEX con recupero di calore (MVHR), che sostituisce il precedente controller RD5. Il sistema aMotion è disponibile con i pannelli utente aDot e aTouch. TapHome si collega direttamente al controller aMotion tramite Modbus TCP su Ethernet sulla porta 502 — non è necessario alcun gateway aggiuntivo.

Il template fornisce il controllo completo della modalità operativa (8 modalità), termostato con setpoint di temperatura, regolazione della potenza del ventilatore (0–100 %), controllo serranda bypass e zone, impostazione del rapporto di ricircolo, selezione del livello di pressione, due sensori di temperatura (esterna e interna) e diagnostica completa che monitora oltre 50 registri di allarme, avviso e informazione.

Connessione di rete

Il controller aMotion dispone di un’interfaccia Ethernet integrata. Collegarlo alla stessa rete locale di TapHome Core utilizzando un cavo Ethernet standard.

  • Protocollo: Modbus TCP
  • Porta: 502
  • Slave ID: 1–255 (configurabile tramite aTool)
  • Codifica dati: Int16, valori di temperatura divisi per 10, valori di portata moltiplicati per 10

Durante la lettura o scrittura di più registri in un singolo batch, mantenere un intervallo di almeno 5 secondi tra le richieste. Intervalli più brevi possono causare timeout di comunicazione.

Abilitazione della comunicazione Modbus

Il Modbus TCP deve essere esplicitamente abilitato nel software di servizio aTool prima che TapHome possa comunicare con l’unità.

  1. Aprire l’applicazione aTool e connettersi all’unità aMotion
  2. Navigare alla sezione Komunikace (Comunicazione)
  3. Abilitare Modbus
  4. Configurare il Slave Address desiderato (predefinito: 1)

Se il Modbus non è abilitato in aTool, il controller aMotion non risponderà a nessuna richiesta Modbus TCP sulla porta 502.

L’API HTTP/XML utilizzata dalle integrazioni Atrea RD5 precedenti (ad es. libreria pyatrea) non è compatibile con le unità aMotion. Il Modbus TCP diretto è il metodo di integrazione raccomandato e supportato.

Configurazione

Durante l’importazione del template in TapHome, specificare:

  • Indirizzo IP — indirizzo IP del controller aMotion nella rete locale
  • Slave ID — indirizzo Modbus slave (predefinito: 1, configurabile 1–255 tramite aTool)

Assegnare un indirizzo IP statico o una prenotazione DHCP al controller aMotion nelle impostazioni del router per evitare che l’indirizzo cambi dopo un riavvio.

Funzionalità del dispositivo

Il template espone i seguenti dispositivi:

Modalità operativa e controllo zone
  • Controllo modalità — selettore multivalore per la selezione della modalità operativa tramite registri H:1001 (scrittura) / I:1001 (lettura). Modalità disponibili: Off, Auto, Ventilazione, Ricircolo + Ventilazione, Ricircolo, Raffrescamento notturno, Sbilanciamento, Sovrapressione.
  • Controllo zone — selettore multivalore per la selezione della zona attiva tramite registri H:1003 (scrittura) / I:1003 (lettura). Opzioni: Zone 1+2 (entrambe), Solo zona 1, Solo zona 2.
  • Livello di pressione — selettore multivalore per l’impostazione del livello di pressione tramite registri H:1007 (scrittura) / I:1007 (lettura). Opzioni: Off, Basso, Normale.
Termostato e monitoraggio temperatura
  • Termostato — controllo della temperatura ambiente con lettura della temperatura interna attuale da I:1104 (T-IDA) e impostazione della temperatura desiderata tramite H:1002. Intervallo di temperatura da -30,0 a 90,0 °C con risoluzione di 0,1 °C.
  • Temperatura aria esterna (T-ODA) — legge la temperatura dell’aria esterna da I:1101 (valore / 10 = °C).
  • Temperatura aria interna (T-IDA) — legge la temperatura dell’aria interna da I:1104 (valore / 10 = °C).
Controllo ventilatori e portata d’aria
  • Potenza ventilatore — dimmer per il controllo della potenza del ventilatore da 0 % a 100 % tramite registro H:1004. Regola l’intensità della ventilazione per il ventilatore di mandata (M-SUP) e di estrazione (M-ETA) simultaneamente.
  • Rapporto di ricircolo — dimmer per il controllo della proporzione di miscelazione tra aria ricircolata e aria fresca da 0 % a 100 % tramite registro H:1008.
  • Serranda bypass — selettore multivalore per la posizione della serranda bypass tramite registri H:1008 (scrittura) / I:1009 (lettura). Opzioni: Auto, Aperta, Chiusa.
Monitoraggio a livello di modulo

Il template include 27 attributi di servizio che forniscono informazioni dettagliate sullo stato in tempo reale:

CategoriaValori monitorati
Comandi ventilatoriVentilatore di mandata M-SUP (%), ventilatore di estrazione M-ETA (%)
Portata d’ariaVentilatore di mandata (m³/h), ventilatore di estrazione (m³/h), aria fresca (m³/h), setpoint ventilazione (m³/h), setpoint ricircolo (m³/h)
TemperatureAria di mandata T-SUP (°C), aria di estrazione T-ETA (°C), aria espulsa T-EHA (°C), media esterna (°C)
Comandi attuatoriSerranda ricircolo (%), pre-riscaldatore (%), riscaldatore A (%), riscaldatore B (%), raffreddatore (%), tempo di transizione bypass (ms)
Stato apparecchiatureStato ventilatori, serrande aperte/chiuse, pre-riscaldamento, riscaldamento, riscaldatore A/B, raffreddatore A, pompe (riscaldatore A/B, raffreddatore A)
Diagnostica a livello di modulo

Il template aMotion monitora oltre 50 registri discreti (D:6003–D:6111) per errori, avvisi e messaggi informativi, tra cui:

  • Allarmi: Protezione antigelo (1°/2° livello), segnale di stop, surriscaldamento unità, portata d’aria sbilanciata, guasti manometri, guasti riscaldatore A/B, guasto raffreddatore A, guasti bus interno/esterno, guasto comunicazione Ethernet, guasti sensori temperatura (T-EHA/T-ETA/T-ODA/T-IDA/T-SUP), segnale di stop confermato, congelamento capillare, dispositivo non pronto, guasti sensori portata (SUP/ETA/ODA)
  • Avvisi: Portata d’aria/pre-riscaldamento insufficiente, sbrinamento pompa di calore, sovraccarico riscaldatore/raffreddatore, congelamento scambiatore, apprendimento portata, sostituzione lampade UVC, fine periodo di prova, filtri intasati, raffreddamento bloccato
  • Info: Sbrinamento scambiatore, HDO tariffa superiore, processo di apprendimento, filtro PF1/PF2/PF3 intasato, potenza max riscaldatore A/B, ingressi guasto IN1/IN2/IN3, antigelo DI1–DI4, aumento portata per riscaldamento, intervallo ispezione dispositivo, intervallo sostituzione filtri
Funzionalità aggiuntive

Le unità aMotion espongono anche registri Modbus per indicatore stagione corrente, modalità operativa dettagliata (17 stati interni da Off a Controllo manuale), metodo di controllo ventilatori, portata d’aria massima/minima configurabile, sorgente di misurazione portata, metodi di controllo serranda ricircolo e bypass, ingressi temperatura esterni da BMS (T-IDA e T-ODA), comandi di reset allarmi/filtri/lampada UVC e indirizzi trigger scene. Questi possono essere aggiunti al template TapHome in un futuro aggiornamento.

Risoluzione dei problemi

Nessuna comunicazione Modbus
  1. Verificare che il Modbus sia abilitato in aTool — sezione Komunikace (Comunicazione)
  2. Confermare l’indirizzo IP del controller aMotion — controllare la tabella dei lease DHCP nel router o il display dell’unità
  3. Assicurarsi che TapHome Core e il controller aMotion siano sulla stessa rete/sottorete
  4. Verificare che nessun firewall blocchi la porta 502
  5. Verificare che lo Slave ID corrisponda tra TapHome e la configurazione dell’unità
I valori di temperatura appaiono errati

I registri di temperatura utilizzano codifica Int16 con il valore diviso per 10. Ad esempio, un valore di registro 215 rappresenta 21,5 °C. Valori superiori a 32767 rappresentano temperature negative: (valore - 65536) / 10. Ad esempio, valore 65516 = (65516 - 65536) / 10 = -2,0 °C.

I valori di portata d’aria appaiono errati

I registri di portata utilizzano codifica Int16 con il valore moltiplicato per 10. Ad esempio, un valore di registro 35 rappresenta 350 m³/h.

Timeout di comunicazione

Il produttore raccomanda un intervallo minimo di 5 secondi tra le letture batch dei registri. Se TapHome segnala frequenti errori di comunicazione, assicurarsi che nessun altro client Modbus (ad es. Home Assistant, BMS) stia interrogando la stessa unità simultaneamente con intervalli brevi.

Dispositivi disponibili

Atrea aMotion Modulo
Attributi di servizio
Comando ventilatore di mandata M-SUP [%]
Comando ventilatore di estrazione M-ETA [%]
Portata ventilatore di mandata M-SUP [m³/h]
Portata ventilatore di estrazione M-ETA [m³/h]
Portata aria fresca [m³/h]
Tempo di transizione serranda bypass [ms]
Comando serranda ricircolo [%]
Comando pre-riscaldatore [%]
Comando riscaldatore A [%]
Comando riscaldatore B [%]
Comando raffreddatore [%]
Pompa raffreddatore A
Pompa riscaldatore A
Pompa riscaldatore B
Temperatura esterna media
Stato raffreddatore A
Stato riscaldamento
Stato riscaldatore A
Stato riscaldatore B
Stato pre-riscaldatore
Stato ventilatore (SUP o ETA o entrambi)
Temperatura aria espulsa (T-EHA)
Temperatura aria di estrazione (T-ETA)
Temperatura aria di mandata (T-SUP)
Serrande di ingresso e uscita
Portata ricircolo [m³/h]
Portata ventilazione [m³/h]

Atrea aMotion

Lettura (modulo)
if modbusr(D,6003,bool) = 1
    addwarning("1. mrazová ochrana ");
end
if modbusr(D,6004,bool) = 1
    addwarning("2. mrazová ochrana ");
end
if modbusr(D,6005,bool) = 1
    addwarning("Stop signál ");
end
if modbusr(D,6006,bool) = 1
    addinfo("Odmrazování rekuperátoru ");
end
if modbusr(D,6012,bool) = 1
    addwarning("Přehřátí jednotky ");
end
if modbusr(D,6013,bool) = 1
    addinfo("HDO - vyšší tarif ");
end
if modbusr(D,6014,bool) = 1
    addwarning("Nevyrovnaný průtok ");
end
if modbusr(D,6015,bool) = 1
    addwarning("Nedostatečný průtok ");
end
if modbusr(D,6017,bool) = 1
    addwarning("Nedostatečné předehřátí ");
end
if modbusr(D,6018,bool) = 1
    addwarning("Odmražování TČ ");
end
if modbusr(D,6021,bool) = 1
    addinfo("Učící proces ");
end
if modbusr(D,6044,bool) = 1
    addinfo("Aktivace PF1 - zanesení filtru ");
end
if modbusr(D,6045,bool) = 1
    addinfo("Aktivace PF2 - zanesení filtru ");
end
if modbusr(D,6046,bool) = 1
    addinfo("Aktivace PF3 - zanesení filtru ");
end
if modbusr(D,6051,bool) = 1
    addinfo("Maximální výkon ohřívače A ");
end
if modbusr(D,6052,bool) = 1
    addinfo("Maximální výkon ohřívače B ");
end
if modbusr(D,6055,bool) = 1
    addwarning("Porucha manometru v přívodním potrubí ");
end
if modbusr(D,6056,bool) = 1
    addwarning("Porucha manometru v odtahovém potrubí ");
end
if modbusr(D,6058,bool) = 1
    addinfo("Aktivace poruchového vstupu IN1 ");
end
if modbusr(D,6059,bool) = 1
    addinfo("Aktivace poruchového vstupu IN2 ");
end
if modbusr(D,6060,bool) = 1
    addinfo("Aktivace poruchového vstupu IN3 ");
end
if modbusr(D,6062,bool) = 1
    addinfo("Protimrazová ochrana - vstup DI1 ");
end
if modbusr(D,6063,bool) = 1
    addinfo("Protimrazová ochrana - vstup DI2 ");
end
if modbusr(D,6064,bool) = 1
    addinfo("Protimrazová ochrana - vstup DI3 ");
end
if modbusr(D,6065,bool) = 1
    addinfo("Protimrazová ochrana - vstup DI4 ");
end
if modbusr(D,6066,bool) = 1
    addwarning("Porucha ohřívače A ");
end
if modbusr(D,6067,bool) = 1
    addwarning("Porucha ohřívače B ");
end
if modbusr(D,6070,bool) = 1
    addwarning("Porucha chladiče A ");
end
if modbusr(D,6071,bool) = 1
    addwarning("Porucha interní sběrnice ");
end
if modbusr(D,6072,bool) = 1
    addwarning("Porucha externí sběrnice ");
end
if modbusr(D,6073,bool) = 1
    addwarning("Porucha komunikace na Ethernetu ");
end
if modbusr(D,6074,bool) = 1
    addwarning("Porucha snímání teploty T-EHA ");
end
if modbusr(D,6075,bool) = 1
    addwarning("Porucha snímání teploty T-ETA ");
end
if modbusr(D,6076,bool) = 1
    addwarning("Porucha snímání teploty T-ODA ");
end
if modbusr(D,6077,bool) = 1
    addwarning("Porucha snímání teploty T-IDA ");
end
if modbusr(D,6078,bool) = 1
    addwarning("Porucha snímání teploty T-SUP ");
end
if modbusr(D,6081,bool) = 1
    addwarning("Potvrzovaný stop signál ");
end
if modbusr(D,6082,bool) = 1
    addwarning("Protimrazová ochrana - kapilára ");
end
if modbusr(D,6084,bool) = 1
    addwarning("Zámraz rekuperátoru ");
end
if modbusr(D,6085,bool) = 1
    addwarning("Zařízení není připraveno ");
end
if modbusr(D,6086,bool) = 1
    addwarning("Přetížení ohřívačů ");
end
if modbusr(D,6087,bool) = 1
    addwarning("Učicí proces průtoků ");
end
if modbusr(D,6088,bool) = 1
    addinfo("Zvýšení průtoku pro topení ");
end
if modbusr(D,6089,bool) = 1
    addwarning("UVC lamps change interval ");
end
if modbusr(D,6090,bool) = 1
    addinfo("Interval kontroly zařízení ");
end
if modbusr(D,6091,bool) = 1
    addwarning("ukončení zkušebního provozu ");
end
if modbusr(D,6099,bool) = 1
    addwarning("Přetížení chladičů ");
end
if modbusr(D,6104,bool) = 1
    addwarning("Zanesené filtry ");
end
if modbusr(D,6105,bool) = 1
    addinfo("Interval výměny filtrů ");
end
if modbusr(D,6106,bool) = 1
    addwarning("Aktivní vstup přehřátí jednotky ");
end
if modbusr(D,6107,bool) = 1
    addwarning("Chod chlazení je blokován ");
end
if modbusr(D,6108,bool) = 1
    addinfo("Zvýšení průtoku po odmražení rekuperátoru ");
end
if modbusr(D,6109,bool) = 1
    addwarning("Porucha čidla průtoku přívodu(SUP) ");
end
if modbusr(D,6110,bool) = 1
    addwarning("Porucha čidla průtoku odtahu (ETA) ");
end
if modbusr(D,6111,bool) = 1
    addwarning("Porucha čidla průtoku čerstvého vzd. (ODA) ");
end
Attributi di servizio
Povel řízení přívodního ventilátoru M-SUP [%]
modbusr(H,1107,int16)
Povel řízení odtahového ventilátoru M-ETA [%]
modbusr(H,1108,int16)
Aktuální průtok na ventilátoru M-SUP [m3/h]
modbusr(H,1109,int16)*10
Aktuální průtok na ventilátoru M-ETA [m3/h]
modbusr(H,1110,int16) * 10
Aktuální průtok čerstvého vzduchu [m3/h]
modbusr(H, 1111, int16)*10
Doba přejezdu klapky bypassu [ms]
modbusr(H,1112,int16)
Povel řízení klapky cirkulace [%]
modbusr(H,1113,int16)
Povel řízení předehřívače [%]
modbusr(H,1114,int16)
Povel řízení ohřívače A [%]
modbusr(H,1115,int16)
Povel řízení ohřívače B [%]
modbusr(H,1116,int16)
Povel řízení chladiče [%]
modbusr(H,1118,int16)
Čerpadlo chladiče A
MODBUSR(D, 2341, Bool)
Čerpadlo ohřívače A
MODBUSR(D, 2321, Bool)
Čerpadlo ohřívaće B
MODBUSR(D, 2322, Bool)
Prúmněrná teplota venkovního vzduchu
MODBUSR(A, 1106, int16) / 10
Stav chladiče A
MODBUSR(D, 2330, Bool)
Stav ohřevu
MODBUSR(D, 2310, Bool)
Stav ohřívače A
MODBUSR(D, 2311, Bool)
Stav ohřívače B
MODBUSR(D, 2312, Bool)
Stav předhřívaće
MODBUSR(D, 2303, Bool)
Stav ventilaturu (SUP nebo ETA nebo oba)
MODBUSR(D, 2301, Bool)
Teplota odpadniho vzduchu
MODBUSR(A, 1105, int16) / 10
Teplota odvadeneho vzduchu
MODBUSR(A, 1103, int16) / 10
Teplota privodního vzduchu
MODBUSR(A, 1102, int16) / 10
Vstupni a vystupni klapky
MODBUSR(D, 2302, Bool)
Prutok cirkulace [m3/h]
MODBUSR(H, 1006, int16)
Prutok vetrani [m3/h]
MODBUSR(H, 1005, int16) * 10
Rapporto di ricircolo Dimmer

Proporzione di miscelazione tra aria ricircolata e aria fresca (0–100 %)

Registro: H:1008 (read/write) Int16 Unità: % numeric (0–100 = %)

Rapporto di ricircolo

Lettura livello
MODBUSR(A, 1008, Int16) / 100
Scrittura livello
MODBUSW(H, 1008, Int16, Le * 100)
Comando serranda bypass Interruttore multivalore

Posizione serranda bypass — Auto, Aperta o Chiusa

Registro: I:1009 (read), H:1008 (write) Int16 numeric
Valori / Stati: Auto · Otevřeno · Zavřeno

Comando serranda bypass

Lettura stato interruttore
MODBUSR(A, 1009, Int16)
Scrittura stato interruttore
MODBUSW(H, 1008, Int16, Mu)
Termostato Termostato

Controllo temperatura ambiente — setpoint e temperatura aria interna attuale (T-IDA)

Registro: I:1104 (read current), H:1002 (read/write desired) Int16 Unità: °C numeric (value / 10 = °C)

Termostato

Lettura temperatura
MODBUSR(A, 1104, Int16) / 10
Lettura temperatura desiderata
MODBUSR(A, 1002, Int16) / 10
Scrittura temperatura desiderata
MODBUSW(H, 1002, Int16, Se * 10)
Controllo zone Interruttore multivalore

Selezione zona attiva — Zone 1+2, Solo zona 1 o Solo zona 2

Registro: I:1003 (read), H:1003 (write) Int16 numeric
Valori / Stati: Zone 1+2 · Zona 1 · Zona 2

Controllo zone

Lettura stato interruttore
MODBUSR(A, 1003, Int16)
Scrittura stato interruttore
MODBUSW(H, 1003, Int16, Mu)
Controllo modalità Interruttore multivalore

Modalità operativa attiva — Off, Auto, Ventilazione, Ric.+Vent., Ricircolo, Raffrescamento notturno, Sbilanciamento o Sovrapressione

Registro: I:1001 (read), H:1001 (write) Int16 numeric
Valori / Stati: OFF · Auto · Ventilazione · Ricircolo + Ventilazione · Ricircolo · Raffrescamento notturno · Sbilanciamento · Sovrapressione

Controllo modalità

Lettura stato interruttore
MODBUSR(A, 1001, Int16)
Scrittura stato interruttore
MODBUSW(H, 1001, Int16, Mu)
Temperatura aria esterna (T-ODA) Sensore di temperatura Solo lettura
Registro: I:1101 Int16 Unità: °C numeric (value / 10 = °C)

Temperatura aria esterna (T-ODA)

Lettura temperatura
MODBUSR(A, 1101, Int16) / 10
Temperatura aria interna (T-IDA) Sensore di temperatura Solo lettura
Registro: I:1104 Int16 Unità: °C numeric (value / 10 = °C)

Temperatura aria interna (T-IDA)

Lettura temperatura
MODBUSR(A, 1104, Int16) / 10
Livello di pressione Interruttore multivalore

Impostazione livello di pressione — Off, Basso o Normale

Registro: I:1007 (read), H:1007 (write) Int16 numeric
Valori / Stati: OFF · Basso · Normale

Livello di pressione

Lettura stato interruttore
MODBUSR(A, 1007, Int16)
Scrittura stato interruttore
MODBUSW(H, 1007, Int16, Mu)
Potenza ventilatore Dimmer

Controllo potenza ventilatore — regola l'intensità della ventilazione per il ventilatore di mandata (M-SUP) e di estrazione (M-ETA)

Registro: H:1004 (read/write) Int16 Unità: % numeric (0–100 = %)

Potenza ventilatore

Lettura livello
MODBUSR(A, 1004, Int16) / 100
Scrittura livello
MODBUSW(H, 1004, Int16, Le * 100)
Connessione: Modbus TCP • Slave ID: $[SlaveId]
Possibili miglioramenti (17)
  • I:1010 Current Season — Int16, read-only — current season indicator
  • I:1119 Current Operation Mode — Int16, 0–16 (Off, Evaporation, Run-down, Normal, Filter test, ..., Manual control)
  • I:1201 Fan Control Method — Int16, 0=Power, 1=Const pressure, 2=Const flow, 3=External — read-only
  • I:1202 Maximum Configurable Airflow — Int16, ×10 m³/h, read-only
  • I:1203 Minimum Configurable Airflow — Int16, ×10 m³/h, read-only
  • I:1204 Airflow Measurement Source — Int16, 0=None, 1=Direct flow, 2=Diff pressure, 3=Voltage output — read-only
  • I:1205 Circulation Damper Control Method — Int16, 0=None, 1=ON/OFF, 2=Eco, 3=Comfort, 4=Adjustable position — read-only
  • I:1206 Bypass Damper Control Method — Int16, 0=None, 1=User-defined, 2=Automatic — read-only
  • H:1005 Ventilation Airflow Setpoint — Int16, ×10 m³/h, R/W, 0–65000 m³/h
  • H:1006 Circulation Airflow Setpoint — Int16, ×10 m³/h, R/W, 0–65000 m³/h
  • H:1500 External T-IDA (from BMS) — Int16, ×0.1 °C, write-only — provide indoor temperature from external source
  • H:1501 External T-ODA (from BMS) — Int16, ×0.1 °C, write-only — provide outdoor temperature from external source
  • C:8001 Alarm Reset — Write 1 to acknowledge (reset) all inactive alarms
  • C:8002 Filter Replacement Interval Reset — Write 1 to reset filter operation counter after filter change
  • C:8003 UVC Lamp Replacement Interval Reset — Write 1 to reset UVC lamp operation counter after lamp change
  • C:7000-7500 Scene Triggers — Reserved range for triggering pre-programmed scenes
  • D:6024 Evaporation Status — Bool, 0=inactive, 1=active — not included in readscript but documented

Fonti