Vai al contenuto
PLC Forum


Comunicazione Profibus-dp - Modalità per...


roberto.zeni

Messaggi consigliati

Buongiorno, il mio problema è il seguente: dobbiamo realizzare il software in una rete di PLC S7 300 così strutturata:

N.1 CPU 318 DP (Master profibus)

N. 14 CPU 313 DP (Slave profibus)

Oltre alla normale gestione di I/O locali la CPU principale dovrà scrivere alcune informazioni (stati digitali e valori in Real) verso le varie unità Slave e leggerne altre dalle stesse (altri stati digitali e valori in Real).

Quali sono le funzioni utilizzabili dal Master per effettuare queste letture e scritture.

Noi pensavamo di destinare una DB su ogni Slave per memorizzare le informazioni che il Master leggerà e una DB per memorizzare le informazioni scritte dal Master. E' possibile una configurazione di questo tipo?

E' possibile che il master veda direttamente le DB degli Slave (in maniera trasparente)?

C'è qualche altro metodo meno complicato o pesante per il master?

Grazie

Link al commento
Condividi su altri siti


stefano.gallo

Vado un pò a memoria, un paio d'anni fa ho realizzato un collegamento simile al tuo, anche se in realtà non erano molti i dati da trasferire tra cpu.

Quando nel progetto ai definito il master e gli slave, esiste una cartella (nelle proprietà della cpu della conf. hardware) che si chiama configurazione. Qui devi definire i dati da trasmettere. Devi innanzi tutto dire chi è il partner (numero nodo, ID?) e se i dati sono d'ingresso alla cpu in oggetto od in uscita. Infatti se non ricordo male uno dei limiti era che i dati erano trattati come E(I) ed A(Q) e dovevi occupare l'area non usata degli ingressi ed uscite.

In pratica se per il master devi trasmettere allo slave 5 word saranno A90 sul master e E90 sullo slave per 5 word. Viceversa per i dati che dallo slave vanno al master, saranno A100 sullo slave e E100 sul master. Non obbligatoriamente l'indirizzo deve essere identico tra master e slave (90), però mi pare che sia limitato il pacchetto di dati trasmettibile per ogni singolo collegamento, quindi è possibile che tu debba creare più pacchetti verso lo stesso partner. Ovviamente nel master e nello slave devi appoggiare su questi ingressi-uscite i tuoi dati.

Non devi realizzare software particolari o richiami di SFC.

Se poi in realtà c'è un sistema più semplice, io non ho mai avuto occasione di provarlo, ripeto quella volta che mi capitò avevo si e no 2 word da trasmettere e questo sistema era il più rapido.

Ciao

Stefano B)

Link al commento
Condividi su altri siti

Sto appunto realizzando una situazione simile

come ti hanno gia' illustrato

se fai un profibus DP

usi la periferia decentrata

cioe' se devi passare una word da master a slave :

master = trasferisci la word su pa300

slave = leggi la pi300 e trasferisci dove vuoi

( indirizzi per P liberi da 256 in su )

pero' se i dati sono tanti

ti conviene andare a leggere e scrivere la periferia con SFC14 e SFC15

cosi' sei sicuro anche della consistenza dei dati

ovviamente

a inizio programma leggi tutta la periferia con vari richiami SFC14

e a fine programma scrivo la periferia con vari richiami all'SFC15

( sia master che slave)

Saluti

Luca

PS hai bisogno di velocita' per questo scambio dati ?

hai mai pensato a MPI e global data ??

Link al commento
Condividi su altri siti

Lo scambio dati con le DP integrato avviene tramite I/O che tu in seguito puoi copiare o leggere dai DB.

Nella configurazione hardware del master inserisci la Cpu 318 e crea una rete profibus DP.

Nella configurazione hardware dello slave inserisci la Cpu e collegala alla reset del master. Sul connettore del DP configura che sia uno slave profibus.

Nella configurazione hardware del master inseriserisci agganciato alla rete profibus delle CPU prendendole da

PROFIBUS-DP/Stazioni già prograttate/CPU 31x. Dopo questo inserimento potrai mappare su quale indirizzo di I/O andare a leggere e scrivere sulla CPU slave.

In linea di massima le operazione da fare sono queste. Se hai problemi fatti sentire.

Credo che il principale problema sia il numero di CPU slave. Infatti, come detto sopre, lo scambio dei dati avviene tramite I/O, quindi sulla CPU 318 dovrai mappare degli ingressi e delle uscite per comunicare con il profibus DP. Non so bene quanti I/O è possibile utilizzare sulla 318 ma occorre prima fare due calcoli.

Saluti, Luca Nazari

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