mariodipiu Inserito: 28 aprile 2014 Segnala Share Inserito: 28 aprile 2014 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 Link al commento Condividi su altri siti More sharing options...
pigroplc Inserita: 28 aprile 2014 Segnala Share Inserita: 28 aprile 2014 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 Link al commento Condividi su altri siti More sharing options...
mariodipiu Inserita: 28 aprile 2014 Autore Segnala Share Inserita: 28 aprile 2014 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).. Link al commento Condividi su altri siti More sharing options...
mariodipiu Inserita: 28 aprile 2014 Autore Segnala Share Inserita: 28 aprile 2014 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 Link al commento Condividi su altri siti More sharing options...
mariodipiu Inserita: 28 aprile 2014 Autore Segnala Share Inserita: 28 aprile 2014 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.. Link al commento Condividi su altri siti More sharing options...
mariodipiu Inserita: 29 aprile 2014 Autore Segnala Share Inserita: 29 aprile 2014 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 Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora