Vai al contenuto
PLC Forum


Telegramma 111 siemens


Giaco

Messaggi consigliati

Buongiorno , sto programmando una CU250-S  interfacciata ad un 1500 .

Sto usando il posizionatore standard della siemens ( non ho specifiche esigenze) ,

per comandarlo adopero il SINA_POS .

Il tuttoe abbastanza semplice l'unica cosa che non capisco è dove andare a scrivere sl telegramma l'abilitazione dei fine corsa

di limitazione al movimento e l'abilitazione alla camma di zero .

Non riesco a trovare un manuale che mi indichi la strada da percorrere avete qualche dritta .

Grazie

 

Link al commento
Condividi su altri siti


nella gestione del posizionatore il telegramma ti dovrebbe essere trasparente, cioè è il blocco che se ne occupa.

Se tu devi cambiare dinamicamente dei parametri tipo extracorsa o abilitazioni lo devi fare attraverso il richiamo di un altro blocco dove si vanno a modificare i parametri.

Non posso essere più preciso in quanto non ho esperienza con il 1500 e SINA_POS.

Se invece li definisci nella messa in servizio e non li cambi più dovresti farlo nello Starter/Scout.

Link al commento
Condividi su altri siti

Con la SINA POS viene istanziata una DB (SinaPos_DB). all'interno di questa hai a disposizione alcune informazioni aggiuntive che puoi leggere o scrivere, in base alla composizione del telegramma 111.

 

Per quanto riguarda reference cam, ad esempio, dovresti trovarla nella struct sxEPosSTW2 (SinaPos_DB.sxSendBuf.sxEPosSTW2.SetRefPt e SinaPos_DB.sxSendBuf.sxEPosSTW2.ActRefCam).

In alternativa puoi impostare gli extra corsa direttamente da Starter

Link al commento
Condividi su altri siti

Cesare Nicola

Sto lavorando ad un progetto con dei Sinamics con telegramma 111 e S7-1200. Mi è stato sconsigliato di usare il SINA_POS in quanto, come da tradizione Siemens, è molto pesante e fa tante cose che a me non servono e, mi sembra di capire, nemmeno a te. Mi hanno suggerito, e così sto facendo, di usare i blocchi DPRD_DAT e DPWR_DAT (gli equivalenti dei blocchi SFC14 ed SFC15 dell'S7-300).

Il concetto dovrebbe essere:

- crei una tua DB per ogni asse, con 12 + 12 word, che conterranno i segnali letti e da scrivere in ogni asse. Per creare la DB puoi usare gli UDT "UDT_RECV_POS" e "UDT_SEND_POS", presenti nella biblioteca "DriveLib_S71200_V4_V13. In pratica unisci in una sola DB i dati presenti nei due UDT.
- leggi le 12 word di uscita (ZSW1) dalla periferia con DPRD_DAT, dove per periferia si intende un singolo asse, quindi se hai due assi, sono due richiami di DPRD_DAT. Le word lette le metti nella parte "read" della tua DB, la parte creata a partire da "UDT_RECV_POS".
- Fai quel che vuoi nel tuo programma coi dati letti dalla periferia (quota attuale, stato del'asse, ecc.) e fai quel che vuoi coi dati che dovrai scrivere nella periferia (start asse, quota di destinazione, ecc.). I dati che dovrai scrivere li metterai nella parte "write" della tua DB, quella creata a partire da "UDT_SEND_POS".
- Scrivi le 12 word di ingresso (STW1) della periferia con DPWR_DAT, dove per periferia si intende un singolo asse, quindi se hai due assi, sono due richiami di DPWR_DAT.

Il tutto dovrebbe funzionare. La difficoltà che sto incontrando io è nel trovare documentazione su come funziona Epos, quali bit devo impostare per muovere l'asse, per fare l'homing, ecc. Sto andando a tentoni tra esempi simili che già avevo, esempi e documentazione trovata in rete che nemmeno una volta, per sbaglio, corrisponde a ciò che devi fare tu. Alla fine funzionerà, come non lo so ancora. :-)

Ciao

Link al commento
Condividi su altri siti

Quote

DPRD_DAT e DPWR_DAT (gli equivalenti dei blocchi SFC14 ed SFC15 dell'S7-300).

Ciao Cesare,

praticamente il buon vecchio sistema di una volta.

Le SFC14 e 15 servivano per leggere e scrivere dati coerenti, cioè evitare che un aggiornamento NON CONTEMPORANEO dell'area di interfaccia potesse creare delle erronee manovre (quali partenze a quote indesiderate).

Il sistema sempre utilizzato dal sottoscritto era questo:

  • Creare una bella FB con la sua istanza guardacaso mappata come il telegramma ....
  • richiamare la lettura coerente dell'area di memoria che punta i dati della DB di istanza della FB asse in ingresso
  • richiamare la FB principale dell'asse con la sua bella DB di istanza
  • richiamare la scrittura coerente dell'area di memoria che punta i dati della DB di istanza della FB asse in uscita

ripetere il giochino per quanti assi si hanno.

In questo modo ho fatto funzionare parecchie decine di assi con una 317 ..... e senza farla sudare.

 

Link al commento
Condividi su altri siti

Cesare Nicola

Esatto, il buon vecchio sistema di una volta. :-)
Utilizzando un 1200 ed avendo sei assi, ho subito pensato che non era il caso di richiamare sei "blocconi" standard; poi, probabilmente, avrebbe funzionato senza problemi, ma come sto facendo mi piace di più, ho più padronanza di cosa sto facendo.

Ciao

Link al commento
Condividi su altri siti

L'unico limite che vedo è che molto probabilmente utilizzando il posizionatore in pancia a Sinamics sei limitato a 4 assi per CU mentre se il motion è gestito dal PLC/Simotion il limite è 6 assi. Nel tuo caso farebbe la differenza.

Link al commento
Condividi su altri siti

Cesare Nicola

Onestamente non sono informato sui limiti del numero di assi. La nostra configurazione prevede una CU320 e sei assi (tre moduli biasse). Il posizionamento avviene sempre col posizionatore integrato di Sinamics, l'Epos; quello che cambia è che puoi usare Epos o col blocco standard Siemens SINA_POS, come diceva Giaco nel post inizialle o col metodo che ho descritto io. Eventuali limiti al numero di assi non penso che cambino da un sistema all'altro.

Link al commento
Condividi su altri siti

Con S7-300 i limiti erano 4 assi per ciascuna CU320, quindi se avevo 6 assi dovevo mettere 2 CU. Poi sai bene anche tu che con Simotion che utilizza gli azionamenti in modalità puro slave il limite è 6 (idem per la CPU tecnologica).

Vista la modesta fantasia dei tedeschi mi immagino che si tratti della stessa cosa pure sulle nuove piattaforme, per cui ti consiglio vivamente di controllare ...... poi vedi tu.

Link al commento
Condividi su altri siti

  • 4 months later...

Ciao! Sto facendo un programma anch'io con l'S120, SINA_POS e il Telegramma 111. Da Starter i finecorsa Hardware e Software vanno attivati, perché è così che lo stabilisce il Telegramma 111. Sto avendo difficoltà ad attivarli però...

 

I bit da attivare sono il 14° e il 15° della POS_STW2

Quindi ho provato ad attivare ad es. "SINA_POS_DB_Z1".EPosZSW2.%X14 ma non succede niente, in STARTER non vedo attivarsi qui BIT... mi sa che sbaglio qualcosa...

Link al commento
Condividi su altri siti

  • 1 month later...

Senza usare SINA_POS, come ho fatto io (vedi più sopra), i finecorsa si abilitano col bit del telegramma che si chiama "sxSendBuf.sxEPosSTW2.SftLimAct". Non so se può esserti d'aiuto, magari nel SINA_POS trovi un nome uguale o simile.

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