TapHome

EBM-Papst Ventilatore EC (Modbus RTU)

Modbus RTU
Submitted by
Last updated: 03. 2026
EBM-Papst Ventilatore EC (Modbus RTU)

Il template EBM-Papst Air Vent integra i ventilatori EC della serie ebm-papst 84/112/150/200 con TapHome tramite Modbus RTU su RS-485. Questi ventilatori hanno un’interfaccia Modbus integrata — non è necessario un adattatore esterno. Il template fornisce accensione/spegnimento, controllo continuo della velocità (PWM), monitoraggio del consumo energetico, lettura degli RPM, temperatura del modulo e rilevamento errori.

I parametri di comunicazione predefiniti sono 19200 baud, 8 bit dati, parità pari, 1 bit di stop. È possibile indirizzare fino a 247 ventilatori su un singolo bus RS-485.

Collegamento hardware

I ventilatori EC ebm-papst hanno un’interfaccia RS-485 integrata con terminali A/B/GND. Collegateli direttamente alla porta Modbus RTU del TapHome Core utilizzando un cavo a coppia intrecciata.

Cablaggio RS-485
  • A+ (pin A) sul ventilatore a A+ sul TapHome RS-485
  • B- (pin B) sul ventilatore a B- sul TapHome RS-485
  • GND sul ventilatore a GND sul TapHome

Il cavo GND deve essere collegato tra il ventilatore e TapHome. Senza un riferimento di massa comune, la comunicazione sarà inaffidabile.

Schema del sistema
Topologia bus RS-485 Modbus RTU con più ventilatori EC ebm-papst

Più ventilatori sono collegati in topologia daisy-chain sul bus RS-485. Ogni ventilatore richiede un indirizzo slave univoco configurato tramite il registro D100 (intervallo 1–247, impostazione di fabbrica 1).

TapHome Core ha un resistore di terminazione integrato da 120 ohm. Se il ventilatore è l’ultimo dispositivo sul bus, attivate anche il suo resistore di terminazione (consultate il manuale di installazione del ventilatore per l’impostazione della terminazione).

Configurazione

Attivazione della comunicazione Modbus

Per impostazione predefinita, i ventilatori EC ebm-papst utilizzano l’ingresso analogico 0–10 V per il controllo della velocità. Per passare al controllo Modbus RS-485, il dispositivo Source in TapHome deve essere impostato su Modbus (ON). Questo scrive il registro D101 = 1 e attiva l’adozione dei parametri (D000 = 2), quindi la modifica ha effetto immediato.

Procedura:

  1. Collegare il ventilatore a TapHome tramite RS-485 (A+, B-, GND)
  2. Importare il template in TapHome con lo Slave ID corretto
  3. Impostare il dispositivo Source su Modbus (ON) — passa dal controllo analogico a RS-485
  4. Il ventilatore ora accetta i comandi di velocità da TapHome tramite il registro D001

Limite di scrittura EEPROM — Il registro D001 (velocità/accensione-spegnimento) è memorizzato in EEPROM con un massimo di 100.000 scritture durante l’intera vita utile. Non scrivere questo registro ad alta frequenza. Intervalli tipici di polling di 500 ms per la lettura vanno bene, ma evitate regole di automazione che modificano continuamente la velocità ogni pochi secondi.

Parametri di comunicazione
ParametroValore
Baud rate19.200 bps (predefinito, configurabile tramite D149)
ParitàPari (predefinita, configurabile tramite D14A)
Bit dati8
Bit di stop1
Indirizzo slave1 (predefinito, configurabile tramite D100, intervallo 1–247)
Max registri per richiesta9
Max lunghezza telegramma23 byte

Il baud rate e la parità possono essere modificati tramite i holding register D149 e D14A. Dopo la modifica di questi parametri, è necessario un reset dei parametri (D000 bit 1). Assicuratevi che TapHome sia riconfigurato con le nuove impostazioni prima del reset.

Funzionalità del dispositivo

Controllo ventilatore
  • On/Off (H:0xD001) — accende il ventilatore a circa il 50% della velocità (scrive 32767 in D001) o lo spegne (scrive 0). Il valore letto viene interpretato come booleano — qualsiasi valore diverso da zero indica che il ventilatore è in funzione.
  • Velocità (H:0xD001) — controllo continuo della velocità come dimmer (0–100%). Il valore viene scalato nell’intervallo 0–65535, dove 65535 = 100% duty cycle PWM. Nella modalità PWM ad anello aperto predefinita, questo controlla direttamente il livello di modulazione del motore.

Sia il dispositivo On/Off che Velocità condividono lo stesso registro (D001). On/Off fornisce un semplice interruttore, mentre Velocità offre un controllo percentuale fine.

Selezione sorgente di ingresso
  • Source (H:0xD101) — commuta tra Sensor (ingresso analogico 0–10 V) e Modbus (controllo RS-485 tramite D001). Al momento della commutazione, il template scrive anche D000 = 2 per attivare l’adozione dei parametri. Questa impostazione è memorizzata in EEPROM e viene mantenuta anche dopo lo spegnimento.
Monitoraggio
  • RPM (I:0xD010 + H:0xD119) — velocità effettiva del ventilatore calcolata da due registri: il valore di velocità relativa (D010, intervallo 0–64000) moltiplicato per la velocità massima (D119, in RPM). Il risultato fornisce gli RPM effettivi.
  • Watt Power (I:0xD021) — consumo di potenza in watt, calcolato come valore grezzo del registro moltiplicato per un fattore specifico del modello (0.01705 nel template). Questo fattore equivale a Ref_Uz x Ref_Iz / 65536 per un modello specifico di ventilatore.
  • Module Temperature (I:0xD015) — temperatura del modulo di potenza in gradi Celsius, letta come valore intero con segno diretto. Nessuna conversione necessaria.
  • Error (I:0xD011) — flag di errore dello stato motore. Restituisce true se è attiva qualsiasi condizione di errore: motore bloccato (BLK), errore sensore Hall (HLL), motore surriscaldato (TFM), modulo di potenza surriscaldato (TFE), mancanza di fase (PHA), sottotensione DC-link (UzLow) o errore generico del ventilatore (FB).
Funzionalità aggiuntive

I ventilatori EC ebm-papst espongono anche registri per flag di avviso (condizioni pre-errore come riduzione attiva della potenza, tensione elevata, superamento della velocità massima), monitoraggio tensione e corrente DC-link, sensori di temperatura motore ed elettronica, feedback direzione di rotazione, livello di modulazione, contaore e buffer circolare cronologia errori. Sono disponibili anche registri di configurazione per la selezione della modalità di controllo (regolazione velocità ad anello chiuso vs. PWM ad anello aperto), tempi di rampa salita/discesa, funzionamento di emergenza, direzione di rotazione preferita e comportamento del valore impostato salvato. Questi possono essere aggiunti in un futuro aggiornamento del template.

Risoluzione dei problemi

La lettura di potenza mostra valori errati

Il fattore di conversione Watt Power (0.01705) nel template è calcolato per un modello specifico di ventilatore utilizzando la sua tensione di riferimento (Ref_Uz, registro D1A0) e corrente di riferimento (Ref_Iz, registro D1A1). Diversi modelli di ventilatore hanno valori di riferimento diversi.

Per verificare o ricalcolare:

  1. Leggere il registro D1A0 — Riferimento Uz [mV] = valore x 20 mV
  2. Leggere il registro D1A1 — Riferimento Iz [mA] = valore x 2 mA
  3. Calcolare il fattore corretto: (Ref_Uz x Ref_Iz) / 65536

Ad esempio, un ventilatore con Ref_Uz = 508 V e Ref_Iz = 2,2 A dà: (508 x 2,2) / 65536 = 0,01705. Se la lettura di potenza è costantemente sfalsata di un rapporto fisso, il modello di ventilatore ha probabilmente valori di riferimento diversi.

Il ventilatore non risponde ai comandi di velocità
  1. Verificate che il dispositivo Source sia impostato su Modbus (ON) — se impostato su Sensor, il ventilatore ignora D001 e utilizza l’ingresso analogico
  2. Controllate il cablaggio RS-485: A+ ad A+, B- a B-, GND collegato
  3. Confermate che l’indirizzo slave corrisponde tra TapHome e il ventilatore (registro D100)
  4. Verificate i parametri di comunicazione: 19200 baud, parità pari, 8N1
Flag di errore attivo ma il ventilatore funziona

Il dispositivo Error legge il campo di bit dello stato motore (D011) come booleano. Anche condizioni minori come “fan bad” (FB) o sottotensione transitoria (UzLow) attivano il flag di errore. Per cancellare gli errori, scrivere D000 bit 2 (reset errori). Se l’errore persiste, controllate i bit di errore specifici leggendo il valore completo del registro D011 nelle impostazioni di servizio di TapHome.

La velocità si legge correttamente ma gli RPM mostrano zero

Il calcolo degli RPM dipende dal registro D119 (velocità massima). Se D119 non è leggibile o restituisce 0, il risultato RPM sarà 0 indipendentemente dalla velocità effettiva. Verificate che D119 restituisca un valore valido per il modello di ventilatore installato (tipicamente 1000–5000 RPM).

Dispositivi disponibili

EBM-Papst Air Vent Modulo
On/Off Interruttore

Accende il ventilatore a ~50% della velocità o lo spegne — condivide il registro D001 con Velocità

Registro: H:0xD001 UInt16 numeric

On/Off

Lettura stato interruttore
MODBUSR(H, 0xD001, Bool)
Scrittura stato interruttore
MODBUSW(H, 0xD001, Uint16, St * 32767)
Velocità Dimmer

Controllo continuo della velocità 0–100% (PWM ad anello aperto) — condivide il registro D001 con On/Off

Registro: H:0xD001 UInt16 Unità: % numeric

Velocità

Lettura livello
MODBUSR(H, 0xD001, Uint16) / 65535
Scrittura livello
MODBUSW(H, 0xD001, Uint16, Le * 65535)
Watt Power Variabile Solo lettura

Consumo di potenza in watt — il fattore di conversione è specifico per il modello (Ref_Uz x Ref_Iz / 65536)

Registro: I:0xD021 Int16 Unità: W numeric

Watt Power

Lettura
MODBUSR(A, 0xD021, Int16)*0.01705
Temperatura modulo Sensore di temperatura Solo lettura
Registro: I:0xD015 Int16 Unità: °C numeric

Temperatura modulo

Lettura temperatura
MODBUSR(A, 0xD015, Int16)
Errore Contatto reed Solo lettura

Flag errore stato motore — motore bloccato, sensore Hall, surriscaldamento, mancanza fase, sottotensione

Registro: I:0xD011 Bool

Errore

Lettura
MODBUSR(A, 0xD011, Bool)
Sorgente Interruttore

Selettore sorgente di ingresso — Modbus (controllo RS-485) o Sensor (ingresso analogico 0–10 V)

Registro: H:0xD101 Bool
Valori / Stati: Modbus · Sensor

Sorgente

Lettura stato interruttore
MODBUSR(H, 0xD101, Bool)
Scrittura stato interruttore
MODBUSW(H, 0xD101, Bool, St); MODBUSW(H, 0xD000, Int16, 2);
RPM Variabile Solo lettura

Velocità effettiva del ventilatore in RPM — calcolata dalla velocità relativa e dalla velocità massima specifica del modello

Registro: I:0xD010 UInt16 Unità: RPM numeric

RPM

Lettura
(MODBUSR(A, 0xD010, UInt16)/64000)*MODBUSR(H, 0xD119, UInt16)
Connessione: Modbus RTU • 19200 baud• 8E1 • Slave ID: $[SlaveId]
Possibili miglioramenti (17)
  • I:0xD012 Warning Flags — Bitfield with pre-error warnings: LRF (shedding active), UeHigh (supply voltage high), nGrenz (limiting speed exceeded), cable break, n_Low (speed below monitor limit), TM_high, TE_high, P_Limit, I_Limit
  • I:0xD013 DC-link Voltage — Uz[V] = (D013 / 256) × Ref_Uz[V]. Requires D1A0 reference value. Useful for supply voltage monitoring
  • I:0xD014 DC-link Current — Iz[A] = (D014 / 256) × Ref_Iz[A]. Requires D1A1 reference value. Useful for current monitoring
  • I:0xD016 Motor Temperature — Direct value [°C] (Int16). Separate from module temperature (D015). Useful for motor overheating prevention
  • I:0xD017 Electronics Temperature — Direct value [°C] (Int16). Electronics interior temperature
  • I:0xD018 Current Direction of Rotation — 0=anti-clockwise, 1=clockwise
  • I:0xD019 Current Modulation Level — Modulation level[%] = (D019 / 65536) × 100%. Actual PWM duty cycle
  • I:0xD01A Current Set Value — Readback of active set value — same encoding as D001. Useful for verifying the fan received the commanded value
  • H:0xD102 Preferred Running Direction — 0=anti-clockwise, 1=clockwise. Requires Parameter reset (D000 bit 1) after change
  • H:0xD103 Save Set Value — 0=set value NOT stored (fan stationary after reset), 1=stored in EEPROM. Should be 0 for continuous Modbus control to avoid EEPROM wear
  • H:0xD106 Control Mode — 0=closed-loop speed control, 2=open-loop PWM. Template assumes PWM mode. Requires Parameter reset after change
  • H:0xD119 Maximum Speed (writable) — Already read by RPM device but not writable from template. Direct value [RPM], model-specific
  • H:0xD11F Ramp-up Time — Time for 256-step change × 10ms. Value 0 = immediate. Controls acceleration smoothness
  • H:0xD120 Ramp-down Time — Time for 256-step change × 10ms. Value 0 = immediate. Controls deceleration smoothness
  • H:0xD15C Fail-safe Function On/Off — Emergency operation if Modbus communication is lost. D15B=direction, D15C=on/off, D15D=set value, D15E=dropout delay
  • H:0xD009 Operating Hours Counter — Total fan operating hours. Read-only for end customer. D00A = operating minutes counter
  • H:0xD182 Error Indicator — Points to address of last error in error history ring buffer (D184–D19E). Each entry has error code + timing

Fonti