Vai al contenuto
PLC Forum


S7 400 E Modbus Slave


Reverendo bit

Messaggi consigliati

Salve a Tutti,

Vi spiego un po cosa dovrei fare e che tipo di problemi sto inocntrando:

Ho un progetto di un S7 400H che comunica in profibus con una supervisione, in questo progetto si devono inserire due CP 441-2 per implementare una comunicazione Modbus RTU slave verso il DCS.

Una delle tante cose che mi sono state richieste é:

La comunicazione con il DCS servirà per remotare i comandi della supervisione locale, è possibile impedire la scrittura da parte della supervisione locale verso il PLC semplicemente impostando a 1 un bit dicendomi che i comandi li ha il DCS?

Questo se fosse possibile mi eviterebbe di andare a modificare le pagine di supervisione.

Grazie da Reverendo bit

Link al commento
Condividi su altri siti


Potrebbe essere una funzionalità della supervisione locale?

Si potrebbe essere, ma dovrei inserire la condizione in molti face plate, ecco perchè avevo pensato se potevo inibire dal plc direttamente la scrittura

Che cos'è la supervisione locale?

Un INTOUCH

Link al commento
Condividi su altri siti

Pensavo a una funzionalità di master-enable... ma non mi viene in mente nemmeno nei sistemi siemens...

Una soluzione "rozza" potrebbe essere: nel PLC, quando vuoi disabilitare la supervisione locale, setti un bit che fa comparire una pagina senza comandi. In questo modo l'operatore locale non può fare nulla... ma d'altra parte non può neanche vedere nulla, e questo potrebbe essere un limite...

Non so se, con lo stesso metodo, sia possibile fare comparire un oggetto trasparente che fa vedere le pagine ma non fa accedere ai comandi...

E' solo un brain-storming...

Link al commento
Condividi su altri siti

Pensavo a una funzionalità di master-enable... ma non mi viene in mente nemmeno nei sistemi siemens...

Ho trovato la soluzione.........................

Allora Poniamo il caso che abbia due DB dove hai appogiato le variabili che scambi con la supervisione che possono essere ad esempio DB10 e DB11, dove in DB10 hai variabili che la supervisione leggerà solamente, e nel DB11 hai tuttele variabili che la supevisione leggerà e scriverà, ad esempio set point Costanti bit di strat pompa etc.etc.

Tutte queste informazioni le devi passare alla CP per la comunicazione Modbus, ed ho optato per la seguente soluzione ho dichiarato altri due DB, DB0 --> DB10 e DB1-->DB11, alla fine di OB1 con duo blockmove passo pari pari il contenuto di DB10 e DB11 rispettivamente a DB0 e DB1 (naturalmente DB0 eDB1 sono settati nella CP).

Cosi facendo il DCS legge solamente, ed anche se inviasse una stringa di scrittura non verrebe considerata perchè OB1 alla fine andrebbe sempre a sovrascrivere la richiesta del DCS.

Per rendere il DCS in grado di scrivere invece sono arrivato a questa soluzione, all'inizio di OB1 ho inserito un'altro Blockmove che copia i dati dal DB1 al DB11 che elaborerà solo se il DCS mi abilita un ingresso fisico, cosi facendo mi sono accorto che scrivendo dalla supervisione locale non accettava il setpoint aggiornandosi sempre con quello che all'inizio di OB1 gli passava il DCS

Forse per qualcuno più esperto potrebbe sembrare una soluzione "sporca" , spero che se cosi fosse si potrebbe migliorare con il vostro aiuto, come avete già fatto tante volte :thumb_yello:

Saluti Reverendo

Link al commento
Condividi su altri siti

  • 1 year later...

Ciao Reverendo

ho forse il problema che avevi tu e che hai risolto, ma non mi è chiaro come.

Ti anticipo che ci lavoro da poco sui plc siemens, quindi non sono un esperto.

Come fai a settare nelle CP i 2 DB?

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...