Vai al contenuto
PLC Forum

Partecipa anche tu alla Live su Youtube martedì 28/01/2025 per festeggiare i 24 anni di PLC Forum

Per ulteriori informazioni leggi questa discussione: https://www.plcforum.it/f/topic/326513-28012025




Master E 2 Slave Tutti Con Cp342-5


Messaggi consigliati

Inserito:

Salve, buongiorno a tutti.

Ho un problema con la comunicazione Profibus tra un master e 2 slave, tutti uguali.

Si tratta di 3 cpu 315 con a bordo,per ciascuna una cp 342-5.

Ho configurato la rete profibus ed assegnato gli indirizzi. Ho inidcato il master e i relativi DP Slave.

Ho seguito il seguente esempio siemens (master e slave con cp 342-5) della Siemens:

http://support.automation.siemens.com/WW/llisapi.dll?func=cslib.csinfo&objId=6518937&nodeid0=10805055&load=content&csSort=DOCBETREFF&subtype=133100&lang=it&siteid=cseus&aktprim=0&objaction=csview&extranet=standard&viewreg=WW

Il mio problema grosso è che domani devono assolutamente partire i 3 quadri elettrici e non ho ancora capito come il master seleziona i 2 differenti slave a cui scrivere o leggere.

Cioè se avessi un solo slave(come nell'esempio) forse funzionerebbe la comunicazione..ma con 2 slave dove vado a definire l'indirizzo della cp 342-5 con la quale voler dialogare.. Ho definito 5 byte (da 0 a 4) come Ingresso e uscita per il primo slave. Poi altri 5 IN/OUT (da 5 a 9) per il secondo slave..

Adesso ho fatto 4 db (db1, db2,db3,db4) nel master e chiamo le 2 funzioni Write e Read (FC01 e FC02) per comunicare con i 2 slave..ma come posso discrimarli? Dove vado ad indirizzarlo se, come anche nell'esempio Siemens, appoggio i dati su due DB,una di lettura e l'altra di scrittura..

Per piacere datemi una mano, ho pochissimo tempo..

Grazie mille a tutti

Saluti Mario


Inserita:

Nelle CALL delle FC nell'esempio trovi la corrispondenza degli indirizzi.

Se posso darti un consiglio tieniti le CPU e te le porti dietro quando devi installare I quadri......

pigroplc

Inserita:

Ciao Pigroplc,grazie per la risposta..ma non mi è chiaro..l'esempio credo di averlo capito, è molto semplice..

Ma nelle call delle fc trovo gli indirizzi delle relative cp collegate alla cpu..una per ogni slave..

Il problema è sul master.. Sul master indico alla fc l'inidiriizzo della sua CP342-5 e non quella degli slave, giusto?Come faccio a discriminare che voglio scrivere sullo slave 01?

Il master chiama la Fc di scrittura, passa la DB come puntatore e l'address, che è l'address della sua CP.. a questo punto come discrimino lo slave? E' strano che non ci sia un indirizzo profibus da passare alla FC o nella parametrizzazione..

Grazie Pigroplc...

Peccato che non posso tenermi le CPU, i quadri vanno via domani..e vi è una ulteriore rete profibus locale per gli inverter ( le cpu infatti sono DP)..

Inserita:

Ciao ragazzi, ho testato la comunicazione tra 1 master e 1 solo slave, usando 2 DB su entrambe le CPU..una per il Send e l'altra per il Receive..Funziona..

Adesso che aggiungo il secondo slave, come farà il master a selezionare il giusto slave?

Grazie a tutti per l'aiuto..

Saluti

Mario

Inserita:

Ciao a tutti,

ho testato la comunicazione con il secondo slave.

Sto cercando in tutti i modi ma comunico solo con il primo slave..Ho fatto altri 2 DB diverse , la 503 e la 504 che sul master sono lettura e scrittura e sullo slave esattamente il contrario..

Ma in nessun modo comunico con il secondo slave..la configurazione hardware è corretta, perchè l

il secondo slave è in ascolto.. ma non riesco a scrivere nella sua DB..come devo usare l'informazione che nella configurazione HW il byte del secondo slave inizia da 1(1 byte in ingresso e 1 byte in usicta) mentre il byte (sia in ingresso che in uscita) per il primo slave inizia da 0..ripeto con il quale riesco a comunicare,sia a leggere che a scrivere..

In TIA portal ho usato la mappatura bidirezionale degli ingressi, in modo che 1byte di ingresso allo slave sia 1 byte di uscita dal master..

Per piacere aiutatemi a capire come, usando 2 volte la FC send posso discriminare lo slave..io non vedo de nessuna parte il settaggio dell'address..Ero arrivato a pensare che scegliendo lo stesso nome della DB send-receive sul master e sullo slave, ma con funzione opposta, si riusciva a discriminare lo slave..

GRAZIE ragazzi..

Inserita:

Problema Risolto.. il mio era un errore di puntatore sul byte.. ho trovato un articolo della siemens che spiegava come evitare comuni errori di lettura e scrittura da periferiche slave usando le cp342-5. Scriverò presto due righe, spiegando il mio problema, l'errore che facevo e il modo corretto di programmare la lettura e la scrittura..sperando possa essere un utile aiuto per qualcuno che si troverà a fare il mio stesso errore.

Grazie comunque ragazzi.

Alla prossima

Saluti Mario

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