Vai al contenuto
PLC Forum


Come Controllare Via Modbus 1 O Piu' Inverter Ac E Relativi Motori


claudio2012

Messaggi consigliati

buongiorno,

cerco consigli/ esperienze sulla logica da implementare.

devo gestire un inverter e relativo motore via modbus x mezzo di un microcontrollore (Non un PLC),

generalmente gestisco l'avanti/indietro e velocita' alta/bassa con dei segnali ON/OFF da inviare all'inverter opportunamente configurato.

Inviare i comandi equivalenti con il modbus non e' difficile basta scrivere il registro xy con il set del bit di comando relativo ma il problema che mi pongo e' cosa succede se dopo aver fatto partire il motore ho un problema di comunicazione x cui non riesco ad inviare lo stop nei tempi?

ci sono inverter che hanno dei tempi di "guardia" per cui se non vengono interrogati si fermano?

etc..

inoltre se ho due motori sullo stesso bus quale e' la teoria e la pratica + corretta?

azionarli in sequenza prima uno poi l'altro o e' possibile anche assieme con opportuni accorgimenti?

scusate mi rendo conto che sono domande generiche tuttavia sono all'inizio di questa cosa e posso ancora correggere il tiro :D

grazie

Claudio

Link al commento
Condividi su altri siti


Per prima cosa evita di usare abbreviazioni tipo "x" in luogo di "per", "+" in luogo di "più", etc.

Oltre ad essere espressamente vietati dal regolamento perchè sono irritanti per chi legge e rendono il messaggio meno comprensibile, non comportano alcun risparmio ne di fatica ne di occupazione di momoria.

Veniamo ora al problema tecnico.

In genere gli inverter non vanno in allarme se non vengono interrogati entro un certo intervallo di tempo.

E' buona norma quando si fanno automazioni che prevedano comandi seriali tramite bus di campo, portare al controllore il contatto di drive OK, che di regola è un contatto NC che si chiude solo se il drive è abilitato e non ha allarmi attivi.

Se non è espressamente previsto dal protocollo del bus di campo usato, è necessaario che il dispositivo che esercita la funzione master, nel tuo caso il micro embedded, esegua interrogazioni cicliche e, se non riceve rispsota adeguata prima dello scadere del time out, blocchi il dirve e dia l'allarme. Ovviamente il blocco deve essere effettuato secondo modalità di emrgenza, quindi imponendo l'arresto tramite sequenza elettromeccanica o tramite dispositivo certificato.

Se non ricordo male il protocollo modbus prevede più slavse indirizzabili sulla medesima linea, prevede anche comandi broadcasting, ovvero comandi letti ed eseguiti da tutti gli slaves.

Comunque queste sono notizie da verificarsi nelle specifiche degli inverters stessi.

Modificato: da Livio Orsini
Link al commento
Condividi su altri siti

scusate, non avevo prestato attenzione a questa giusta norma del forum,

1) non avevo compreso l'utilita' del segnale di "drive ok",

2) si il modbus prevede i comandi brodcast, cioe' verso tutti, ma temevo fosse un'eresia pensare di usarli.

3) non riesco piu' a trovare il doc ma mi sembra che qualche inverter abbia questa funzione di monitoraggio della comunicazione x cui se entro un certo tempo da settare non c'e' comunicazione l'inverter va in fault.

Grazie x l'aiuto

Claudio

Link al commento
Condividi su altri siti

prima scrivi:

scusate, non avevo prestato attenzione a questa giusta norma del forum,

Poi:

comunicazione x cui

Cos'è una p.p.c. ? :angry:

Se l'inverter prevede l'allarme per errore di comunicazione ti risparmi l'even tuale interrogazione ciciclica, però devi usare questo segnale per allarmare il sistema e, se la macchina lo richiede andare in energenza.

Comunque il test di comunicazione da parte dello slave non è mai esaustivo, solo da parte master si può avere la ragionevole certezza del funzionamento di tutta la linea di comunicazione.

Link al commento
Condividi su altri siti

acc. acc.

scusate ancora, non è assolutamente una presa in giro,

è stata una distrazione, si vede che è entrata nel mio modo di scrivere, ho perfino ricontrollato il messaggio e non me ne sono accorto :(

---------------

condivido pienamente il consiglio di prestare piu' attenzione al punto di vista del controllore,

nel mio caso inoltre la lettura ciclica di controllo non e' un grosso problema, quindi in caso di errore di comunicazione posso pensare ad una contromisura, generalmente nei protocolli seriali, semplicemente si "resetta" la comunicazione e si riparte.

in questo caso di azionamento dal suggerimento precedente ho capito che prima del reset e ripristino del protocollo potrei fare un' azione piu' drastica ma sicura come quella di staccare l'alimentazione all'inverter, rialimentarlo, ripristinare la comunicazione etc..

pero' prima di giungere a questo avevo pensato che sarebbe stato utile avere anche una strategia di gestione dell'errore lato inverter ed in effetti ho trovato un inverter che implementa questa gestione, ma soprattutto la descrive nel manuale di cui allego la pagina (se ci riesco :smile: ) [comunque Inverter hitachi SJ700, user manual pag. 4-57: Network Detection Signal]

in pratica si scrive in un registro un tempo in sec. e se l'inverter non riceve interrogazioni via bus entro questo intervallo fa scattare questa logica di errore, devo ancora capire poi come si esce da questa situazione :smile:

ringrazio tutti quelli che hanno dei suggerimenti da darmi

Claudio

--- qui dovrebbe esserci la pagina citata -----

Inverter hitachi SJ700, user manual pag. 4-57: Network Detection Signal

file:///C:\Users\Claudio\AppData\Local\Temp\msohtmlclip1\01\clip_image001.emz

Link al commento
Condividi su altri siti

Pensa al caso inverso. L'inverter è interrogato regolarmente ma non risponde o risponde in modo errato; in questo caso l'inverter non da segnalazione di guasto.

Modbus è un bus di campo più adatto alla strumentazione che all'automazione, quindi se si vuol realizzare automazione è necessario controllare di meglio e di più rispetto ad altri bus di campo come, ad esempio, profibus.

Poi molto dipende dall'analisi dei rischi della macchina.

Link al commento
Condividi su altri siti

giustissimo,

il caso dell'inverter che non risponde o risponde male verrebbe gestito con la logica dei "retry message" per cui se dopo un tot. di messaggi non si ha risposta positiva si dichiara "link down", il "link down" in inizializzazione comporta che il sistema non parte, in normale funzionamento (non avevo idea) ma a seguito della discussione mi sembra giusto spegnere l'inverter etc.

e questa strategia la posso attivare molto velocemente se imposto ad esempio di leggere l'inverter piu' volte al secondo.

dal punto di vista della sicurezza questo azionamento movimenta dei pannelli in direzione del sole quindi normalmente in modo lento ed in alcuni casi, tipo portarsi a riposo, si muove velocemente che in questo contesto e' un "veloce" relativo.

la necessita' e' quella di evitare di perdere il controllo dell'inverter per molti secondi, soprattutto quando e' in movimento "veloce" anche se a protezione del tutto vi sono i fine corsa, che generalmente determinano l'invio del segnale di stop all'inverter, ma in caso di bus ko, il telegramma di stop non puo' arrivare ed ecco che il motore spingerebbe sui finecorsa e con l'andare del tempo scassare qualcosa.

da questa preoccupazione e' nata quindi questa richiesta di consigli/esperienze etc.

Claudio

ecco la pagina del manuale che ho citato nel messaggio precedente

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...