TapHome

INVT Goodrive 20 inverter di frequenza

Modbus TCP
Inviato da
Ultimo aggiornamento: 05. 2026

Richiede gateway esterno

INVT SID2 Modbus communication card — pagina prodotto

INVT Goodrive 20 inverter di frequenza

L’INVT Goodrive 20 (GD20) e Goodrive 20-EU (GD20EU) sono mini inverter di frequenza universali (VFD) per motori AC asincroni trifase utilizzati in pompe, ventilatori, nastri trasportatori e altri carichi industriali. Comunicano in Modbus RTU su un bus RS-485 a 2 fili tramite la scheda di comunicazione INVT opzionale SID2 o tramite i morsetti RS-485 integrati.

Il template TapHome utilizza Modbus TCP sulla porta 502 e richiede un gateway RS-485-Ethernet esterno (la descrizione XML raccomanda un convertitore Waveshare RS485-to-ETH B) per collegare la rete IP al bus RS-485 dell’inverter. Il template espone diagnostica — codice di guasto memorizzato, velocità motore, corrente di uscita e un registro di identificazione VFD — insieme a un pulsante Reset Guasto. Run/stop, setpoint di frequenza e stato live non sono implementati (vedi l’elenco dei possibili miglioramenti più sotto).

A proposito del nome slug „SID2". SID2 è il nome interno INVT per la scheda di comunicazione RS-485 opzionale del GD20 — non ha porta Ethernet. Il template TapHome parla comunque Modbus TCP, quindi un gateway esterno (Waveshare RS485-to-ETH B, Moxa MGate, USR-W630 o equivalente) è sempre necessario. Funziona qualsiasi convertitore Modbus TCP-to-RTU standard; SID2 vs. RS-485 integrato cambia solo la morsettiera fisica sul lato inverter.

Connessione hardware

La catena di comunicazione ha due stadi:

1
TapHome Core ── Modbus TCP (porta 502) ── gateway ── Modbus RTU 2 fili RS-485 ── INVT GD20

Il gateway deve trovarsi sulla stessa rete locale di TapHome Core e configurato con un IP statico (riserva DHCP o tramite la propria interfaccia web). La porta RS-485 del gateway è cablata in parallelo ai morsetti 485+ / 485- dell’inverter.

Cablaggio del circuito di controllo
Cablaggio del circuito di controllo INVT Goodrive 20 (Figure 3-9) con morsetti 485+/485-, doppino intrecciato, schermo e PE

I morsetti RS-485 fanno parte della morsettiera di controllo del GD20:

MorsettoFunzione
485+Linea RS-485 A (positivo)
485-Linea RS-485 B (negativo)
PESchermo del cavo / terra di protezione

Regole di cablaggio (manuale V1.9, sezione 3.2.4):

  • Utilizzare un doppino intrecciato schermato per il bus RS-485.
  • Collegare 485+ del gateway a 485+ sull’inverter, e 485- a 485-.
  • Collegare lo schermo del cavo a PE solo a un’estremità (tipicamente sul lato gateway).
  • La lunghezza massima del cavo dipende dalla velocità di trasmissione — a 19 200 bps con doppino intrecciato 24 AWG il limite pratico è di circa 600 m.
  • Posare i cavi di controllo separati dal cavo motore U/V/W per evitare disturbi.
Topologia bus RS-485
Cablaggio bus RS-485 di INVT Goodrive 20 per un singolo VFD tramite convertitore RS232/RS485 (Figure 7-1)

Per un singolo azionamento, collegare il gateway direttamente tra 485+ e 485- sull’inverter. Per più azionamenti, collegarli in cascata (daisy-chain) su un unico bus e posizionare un terminatore da 120 Ω a ciascuna estremità. La topologia a stella (chrysanthemum) è supportata, ma il daisy-chain è preferibile per l’immunità ai disturbi. Ogni inverter sul bus deve avere un indirizzo slave univoco (P14.00).

Resistenza di terminazione
Morsettiera di controllo INVT Goodrive 20 con DIP switch 485 di terminazione (Figures 3-10 e 3-11 — modelli sotto i 4 kW e da 4 kW in su)

Ogni GD20 ha un piccolo blocco di DIP switch sopra i morsetti di controllo (etichettati AO1, AO2, AI2, 485). L’interruttore 485 attiva la resistenza di terminazione da 120 Ω integrata per la linea RS-485. Impostarlo su ON solo sull’ultimo inverter all’estremità del bus; sugli azionamenti intermedi lasciarlo OFF. La posizione di fabbrica è indicata da un rettangolo nero sull’interruttore.

Verificare il ponticello posteriore. Una causa comune di errori di comunicazione è il piccolo ponticello (wire-cap) sul retro della morsettiera che collega la terminazione integrata al bus — se manca o non è inserito, il DIP switch 485 non ha alcun effetto.

Configurazione

All’importazione del template in TapHome, fornire:

  • IP Address — indirizzo del gateway sulla rete locale (placeholder predefinito: 192.168.1.0)
  • Slave ID — indirizzo Modbus slave dell’inverter (predefinito 1, intervallo 1–247)

Modbus TCP viene eseguito sulla porta 502 (fisso nel template).

Abilitare la comunicazione Modbus

L’inverter ignora le scritture da Modbus finché il canale di run e la sorgente di frequenza non sono commutati su comunicazione. I parametri rilevanti si trovano tutti nel gruppo P14 del menu della tastiera dell’inverter (manuale V1.9, sezione 5):

ParametroFunzioneValore consigliatoNote
P00.01Canale comando di run2 (Communication)Consente le scritture su H:0x2000 per il controllo run/stop. Senza questo funzionano solo le letture diagnostiche.
P00.06Sorgente di frequenza A8 (Modbus)Necessario solo se il setpoint di frequenza viene inviato via Modbus.
P14.00Indirizzo di comunicazione locale1 (predefinito), univoco per azionamentoSlave ID — deve corrispondere al valore inserito in TapHome. 0 è riservato al broadcast.
P14.01Velocità di trasmissione4 = 19 200 bps (predefinito)Deve corrispondere all’impostazione RS-485 del gateway.
P14.02Verifica bit dati1 = E,8,1 (Even, 8 bit dati, 1 bit stop)Deve corrispondere al gateway. Altre opzioni RTU: 0=N,8,1; 2=O,8,1; 3=N,8,2.
P14.04Timeout RS-4850.0 (disabilitato)Se abilitato e il bus è silenzioso più del tempo configurato, l’inverter solleva un guasto CE (485 communication fault).

Navigazione tastiera: PRG → gruppo P14 → selezionare il sotto-indice → premere DATA/ENT → regolare il valore → premere di nuovo DATA/ENT per salvare.

Il template TapHome legge solo registri diagnostici e attiva il Reset Guasto, quindi P00.01 e P00.06 non sono strettamente necessari. Se serve solo monitoraggio, lasciare il canale di run su tastiera/morsetti e impostare solo P14.00P14.02 affinché l’inverter risponda alle letture Modbus.

Configurazione del gateway

Il gateway necessita delle seguenti impostazioni:

  • Modalità operativa: server Modbus TCP sulla porta 502
  • Lato RS-485: velocità di trasmissione, parità, bit di dati e di stop corrispondenti a P14.01 e P14.02 (predefinito 19 200, E, 8, 1)
  • IP statico: assegnato tramite l’interfaccia web del gateway o riserva DHCP
  • Incapsulamento trasparente o RTU-in-TCP non è richiesto — TapHome parla puro Modbus TCP e il gateway deve convertire i frame internamente

Se il gateway è configurato in modalità „transparent UDP/TCP forwarding" anziché „Modbus TCP server", TapHome vedrà timeout. Utilizzare la modalità protocollo Modbus del gateway, non il passthrough grezzo.

Funzionalità del dispositivo

Il template espone sei dispositivi nel modulo dell’inverter — tutti diagnostici in sola lettura, tranne il pulsante Reset Guasto vuoto.

Diagnostica e monitoraggio
  • Operation Speed — velocità di rotazione del motore in RPM, calcolata internamente dall’inverter dalla frequenza in esecuzione e dai parametri motore configurati (gruppo parametri motore P02). Legge il registro H:0x3005, intervallo 0–65535 RPM.
  • Output Current — corrente di linea del motore da H:0x3004 in unità da 0,1 A (valore registro grezzo). Negli script TapHome dividere per 10 per ottenere ampere; intervallo fino a 3000,0 A.
  • VFD Identification Code — identificatore del modello da H:0x3016. Utile per confermare che il template sia legato a un’unità Goodrive 20 (vedi nota qui sotto sulla scelta del registro).
Gestione dei guasti
  • Fault Code (latched) — numero di guasto memorizzato dell’inverter da H:0x5000. Persiste oltre un guasto transitorio finché l’utente non emette un Reset Guasto, in modo che l’ultimo guasto resti visibile sulla dashboard. I codici seguono la tabella guasti GD20:

    CodiceMnemonicoSignificato
    1OUt1Protezione fase U inverter
    2OUt2Protezione fase V inverter
    3OUt3Protezione fase W inverter
    4OC1Sovracorrente in accelerazione
    5OC2Sovracorrente in decelerazione
    6OC3Sovracorrente a velocità costante
    7OV1Sovratensione in accelerazione
    8OV2Sovratensione in decelerazione
    9OV3Sovratensione a velocità costante
    10UVSottotensione del bus
    11OL1Sovraccarico motore
    12OL2Sovraccarico VFD
    13SPIMancanza fase in ingresso
    14SPOMancanza fase in uscita
    15OH1Surriscaldamento raddrizzatore
    16OH2Surriscaldamento modulo inverter
    17EFGuasto esterno
    18CEGuasto comunicazione 485
    19ItEGuasto rilevamento corrente
    20tEGuasto auto-tuning motore
    21EEPGuasto operazione EEPROM
    22PIDERetroazione PID offline
    23bCEGuasto unità di frenatura
    24ENDTempo di funzionamento raggiunto
    25OL3Pre-allarme sovraccarico elettronico
    26PCEErrore comunicazione tastiera
    27UPEErrore upload parametri
    28DNEErrore download parametri
    32ETH1Cortocircuito a terra 1
    33ETH2Cortocircuito a terra 2
    34dEuGuasto deviazione di velocità
    35SToDisallineamento motore sincrono
    36LLSottocarico elettronico
  • Fault Reset — dispositivo a pulsante destinato a scrivere 0x0007 nel registro di controllo H:0x2000. Gli script Read e Write sono vuoti nel template fornito — il pulsante è visibile in TapHome ma non invia alcun frame Modbus quando premuto. Per renderlo funzionale, aprire il dispositivo nel TapHome integration tool e aggiungere WriteButtonPressedState = MODBUSW(H, 0x2000, 0x0007), oppure attivare la stessa scrittura da una Smart Rule.

Wrapper contatore di energia (Output Current, etichettato in modo errato)
  • Output Current (wrapper contatore di energia) — un dispositivo ModbusElectricityMeter che mappa due attributi di servizio sullo stesso registro Output Current (H:0x3004, unità da 0,1 A):

    Attributo di servizioEtichetta UILeggeRealtà
    readtotalconsumptionTotal Consumption (kWh)H:0x3004 / 100Corrente di uscita scalata di 1/100 — non energia cumulativa
    readdemandDemand (W)H:0x3004Corrente di uscita grezza in 0,1 A — non potenza istantanea

    Il GD20 non espone un totalizzatore kWh né un registro di potenza istantanea via Modbus, quindi il template originale li simula leggendo la corrente di linea. Per letture accurate, utilizzare il sensore dedicato Output Current (sopra) e ignorare i valori mostrati sotto „Total Consumption" e „Demand". Per un tracking reale dei consumi, aggiungere un contatore kWh esterno sull’alimentazione dell’inverter.

Perché „Total Consumption" mostra ampere. L’XML riutilizza il registro H:0x3004 (Output Current) tre volte. Sia l’attributo di servizio dell’energia sia quello della potenza sul wrapper leggono lo stesso registro di corrente e lo etichettano in modo errato. Questa è una nota peculiarità del template fornito — vedi l’elenco dei possibili miglioramenti per il registro di potenza corretto (H:0x3006) e l’assenza di un totalizzatore kWh.

Risoluzione dei problemi

Nessuna comunicazione Modbus (timeout in TapHome)
  1. Eseguire il ping del gateway da TapHome Core — confermare che l’IP statico sia raggiungibile.
  2. Verificare che il gateway sia configurato come server Modbus TCP sulla porta 502 (non passthrough trasparente grezzo).
  3. Confermare che l’indirizzo slave dell’inverter (P14.00) corrisponda allo Slave ID inserito in TapHome.
  4. Allineare le impostazioni RS-485 del gateway a P14.01 (velocità di trasmissione) e P14.02 (parità / dati / bit di stop) — predefiniti 19 200, E, 8, 1.
  5. Verificare che il DIP switch 485 integrato all’estremità del bus sia su ON e che il ponticello posteriore della morsettiera sia inserito.
  6. Scambiare 485+ e 485- se i LED del gateway lampeggiano ma TapHome riporta errori CRC — la polarità A/B è l’errore di cablaggio più comune.
L’azionamento mostra il guasto CE (18)

L’inverter stesso ha rilevato un guasto di comunicazione RS-485. Verificare:

  • Polarità del cablaggio (485+ ↔ A, 485- ↔ B).
  • Resistenza di terminazione a entrambe le estremità del bus (120 Ω ciascuna).
  • Schermo del cavo collegato a terra solo a un’estremità.
  • Corrispondenza di velocità di trasmissione e parità tra gateway e P14.01 / P14.02.
  • P14.04 (timeout RS-485) — se è impostato un valore, l’inverter deve vedere traffico almeno con quella frequenza. Impostare a 0.0 per disabilitare il watchdog durante il debug.
Il pulsante Fault Reset non ha effetto

Il template fornito ha script Read/Write vuoti sul dispositivo Fault Reset. Aprire il dispositivo nel TapHome integration tool e aggiungere uno script di scrittura che invii 0x0007 al registro H:0x2000. Fino ad allora, resettare i guasti memorizzati dalla tastiera dell’inverter (pulsante STOP/RST) o spegnendo e riaccendendo l’azionamento.

Operation Speed legge 0 mentre il motore gira

Operation Speed (H:0x3005) viene calcolato dalla frequenza in esecuzione e dal gruppo parametri motore P02 (frequenza nominale, velocità nominale, numero di poli). Se questi parametri motore sono ai valori predefiniti che non corrispondono al vostro motore, l’azionamento può riportare 0 o i valori nominali della targhetta. Eseguire l’auto-tuning del motore o inserire manualmente i valori di targhetta del motore in P02 affinché l’azionamento possa derivare correttamente gli RPM.

Il VFD Identification Code restituisce un valore inatteso

Il template legge il registro non documentato H:0x3016. Il registro di identificazione documentato è H:0x2103, che restituisce 0x0106 sia per Goodrive 20 sia per Goodrive 20-EU. Se H:0x3016 restituisce qualcosa di sconosciuto, trattarlo come dato diagnostico opaco — l’inverter è altrimenti funzionante. Per commutare la lettura sul registro documentato, modificare lo script nel TapHome integration tool in MODBUSR(H, 0x2103, Int16).

Dispositivi disponibili

INVT Goodrive 20 VFD Modulo
Output Current (wrapper contatore di energia) Contatore elettrico Solo lettura

Wrapper ModbusElectricityMeter — entrambi gli attributi di servizio leggono il registro Output Current (H:0x3004), quindi i valori sono in ampere, non in kWh o watt. Vedi nota sotto.

Registro: H:0x3004 Int16 Unità: A direct (0.1 A per LSB)

Output Current (wrapper contatore di energia)

Lettura consumo totale
MODBUSR(H, 0x3004, Int16) / 100
Lettura domanda
MODBUSR(H, 0x3004, Int16)
Codice di guasto (memorizzato) Variabile Solo lettura

Numero di guasto VFD memorizzato da H:0x5000 — persiste fino al Reset Guasto. I codici seguono la tabella guasti GD20 (es. 1=OUt1 guasto fase U, 4=OC1 sovracorrente accelerazione, 18=CE guasto comunicazione)

Registro: H:0x5000 Int16 numeric (fault code lookup)

Codice di guasto (memorizzato)

Lettura
MODBUSR(H, 0x5000, Int16)
Reset Guasto Pulsante

Dispositivo a pulsante destinato a cancellare un guasto VFD memorizzato. Gli script Read/Write sono vuoti nel template — il pulsante deve essere configurato nel TapHome integration tool per scrivere 0x0007 su H:0x2000 affinché esegua effettivamente il reset

Registro: H:0x2000 (intended) Int16 command (write 0x0007 = Fault reset)
Velocità di rotazione Variabile Solo lettura

Velocità di rotazione del motore in RPM, calcolata internamente dal VFD dalla frequenza in esecuzione e dai parametri motore configurati (gruppo parametri motore P02). Letto da H:0x3005 — intervallo 0–65535 RPM

Registro: H:0x3005 Int16 Unità: RPM

Velocità di rotazione

Lettura
MODBUSR(H, 0x3005, Int16)
Corrente di uscita Variabile Solo lettura

Corrente di linea in uscita verso il motore in unità da 0,1 A (valore registro grezzo). Letto da H:0x3004 — negli script TapHome dividere per 10 per ottenere ampere

Registro: H:0x3004 Int16 Unità: A (raw value is 0.1 A) direct (0.1 A per LSB)

Corrente di uscita

Lettura
MODBUSR(H, 0x3004, Int16)
Codice di identificazione VFD Variabile Solo lettura

Identificatore del modello letto da H:0x3016. Nota: il registro di identificazione documentato è H:0x2103 (restituisce 0x0106 per la famiglia Goodrive 20). Il template legge un alias non documentato — trattare il valore come dato diagnostico opaco

Registro: H:0x3016 Int16 numeric (model code, undocumented decode)

Codice di identificazione VFD

Lettura
MODBUSR(H, 0x3016, Int16)
Connessione: Modbus TCP • Slave ID: $[SlaveId]
Possibili miglioramenti (16)
  • H:0x2000 Run / Stop / Direction control — Write 0x0001=Forward run, 0x0002=Reverse run, 0x0003=Forward jog, 0x0004=Reverse jog, 0x0005=Stop, 0x0006=Coast to stop, 0x0007=Fault reset, 0x0008=Jog stop. The template has FM_Fault_Reset device but its WriteButtonPressedState is empty so even the documented Fault Reset is not actually issued. There are no Run/Stop/Forward/Reverse buttons at all. Without these the VFD cannot be commanded from TapHome - this is the most significant gap.
  • H:0x2001 Frequency setpoint — 0-Fmax in 0.01 Hz units. Required to drive the motor speed via Modbus when P00.06=8 (frequency source = Modbus). Not exposed by template.
  • H:0x2100 Status word 1 (running state) — 1=Forward running, 2=Reverse running, 3=Stop, 4=Fault, 5=POFF, 6=Pre-exciting. The INVT manual prints '0001=Forward, 0002=Forward' which is a typo - the second value is Reverse. Without this register the user cannot tell from TapHome whether the drive is currently running, stopped, or in fault.
  • H:0x2102 Active (live) fault code — Same fault-table values as H:0x5000 but reflects the CURRENTLY active fault, not the latched one. The template uses the latched register (0x5000) instead. Both are valid; 0x2102 is more useful for live diagnostics, 0x5000 for keeping the last fault visible until reset.
  • H:0x2103 Documented VFD identification code — Returns 0x0106 = Goodrive series (Goodrive 20 vector VFD) for both GD20 and GD20-EU. The template reads 0x3016 instead, which is not documented. EU manual V1.6 has a typo stating 0x0110 in one paragraph - real-world devices return 0x0106.
  • H:0x3000 Running frequency (Hz) — 0-Fmax in 0.01 Hz units. The template reads RPM (0x3005) but not the underlying Hz value. Hz is more useful for VFD diagnostics and PID tuning.
  • H:0x3001 Set frequency (Hz) — Reflects the active frequency reference (0.01 Hz units). Useful to confirm the setpoint sent on 0x2001 is accepted.
  • H:0x3002 DC bus voltage — 0.0-2000.0 V in 0.1 V units. Not in template.
  • H:0x3003 Output voltage — 0-1200 V (1 V units). Combined with output current would allow approximate power computation.
  • H:0x3006 Output power — -300.0 to 300.0% of rated motor power (0.1% units). This is the correct register for 'Demand' / instantaneous power - the template's FM_Elektromer.Demand mislabels output current as power.
  • H:0x3007 Output torque — -250.0 to 250.0% (0.1% units).
  • H:0x3008 / 0x3009 PID setting / PID feedback — -100.0% to 100.0% (0.1% units). For PID control loops.
  • H:0x300C-0x300E Analog inputs AI1 / AI2 / AI3 — AI1/AI2 = 0.00-10.00 V, AI3 = -10.00 to +10.00 V. Useful when external sensors are wired to the VFD terminals.
  • H:0x300A / 0x300B Digital input / output state — Bit-encoded I/O state (0x000-0x1FF). Not in template.
  • — The GD20 does NOT expose a kWh totalizer over Modbus. The XML's FM_Elektromer.TotalConsumption fakes one by reading current and dividing by 100, which is meaningless as energy. For real consumption tracking add an external kWh meter (e.g. Eastron SDM630, Carlo Gavazzi EM24) on the VFD's input feed.
  • — The XML's FM_Elektromer.Demand reads output current and labels it as Demand (typically W). Real instantaneous power is at H:0x3006 (output power, % of rated) - not exposed by the template. To get watts the user must combine bus voltage (0x3002), output current (0x3004), and a power-factor estimate.

Fonti

Hai trovato un problema con questo template?

Dicci cosa non funziona, cosa manca o come dovrebbe comportarsi il template. Il tuo feedback ci aiuta a mantenere il catalogo accurato.

Verificato da TapHome

Vuoi usarlo nel tuo TapHome Core?

Apri questo template nel Customer Portal per applicarlo a una delle tue case, o crea una proposta di modifica e inviala al catalogo.

Apri nel portale