Abilitare JavaScript per vedere questo sito.

Introduzione

Da RTE 34.9.5 è possibile comunicare con i controlli Robox in modalità Profinet device.

Il controllo Robox appare come una periferica di tipo SLAVE all'interno della rete PROFINET.

La gestione viene attuata come emulazione profibus DPSlave se canale PROFINET attivato e PFB.CFG presente nell'alias di cartella SYS_DIR o FB_DIR.

Per maggiori dettagli, vedere documentazione profibus.

Nota: rispetto a Profibus i blocchi scambiabili sono 11 in TX e 11 in RX, anzichè 6.

Da RTE34.15.4 è stata aggiunta la possibilità di gestire delle informazioni SINCRONE (IRT).

Nella definizione di blocco è stato aggiunto l'attributo IRT BLOCK_TO_RBX n [IRT] dove:

n è il numero del blocco

IRT specifica che il blocco in arrivo contiene dati IRT

e la nuova keyword IRT_TO n [IRT] dove:

n è l'indice RR dove inserire il reference time TO

Esempio

in PFB.cfg

IRT_TO 211 ; definizione dell'indice RR dove memorizzare il Time Output

...

BLOCK_TO_ROBOX 1 IRT

O-0 R_32 1001 ; posizione del riferimento del master in [unit]

O-4 R_32 1002 ; velocità del master in millesimi di unit/sec [unit/1000/sec]

...

in RULE

LIT rr_Irt_TO_PN RR(211)

LIT r_PosMaster_PN R(1001)

LIT r_SpeedMaster_PN R(1002)

...

REAL irt_to ; tempo di applicazione dei dati irt [uSec]

REAL irt_to_prec ; valore precedente di irt_to [uSec]

REAL dtMaster ; delta tempo variazione master [sec]

REAL velMaster ; velocità del master [unit/sec]

REAL deltaPosMaster ; variazione della posizione del master [unit]

INT posMaster ; posizione del master arrivato da profinet [unit]

INT posMasterPrec ; posizione precedente del master arrivato da profinet [unit]

INT adjMaster ; posizione del master aggiustata al tempo di esecuzione delle rule

INT adjMasterPrec ; posizione precedente del master aggiustata su rule [unit]

REAL deltaAdjMaster ; variazione di posizione del master [unit]

REAL totMaster ; totalizzatore del master [unit]

INT mstFlag ; flag per specificare come gestire le informazioni del master

            ; 0 --> 0x01 Riferimento di velocità presente

            ; 1 --> 0x02 dimensione della posizione master 1 indica 32 bit, 0 indica 16 bit

REAL KconvSpeedPN2US = 0.001 ; costante per converite la velocità del master ricevuta via profinet in velocità in unità/sec

...

FUNCTION AdjMasterPosition ()

   ; aggiorna i dati in arrivo da Profinet.

   irt_to = rr_Irt_TO_PN ; tempo output configurato in pfb.cfg [microsecondi]

   posMaster = r_PosMaster_PN ; spazio master configurato in pfb.cfg [unità master]

   ...

   IF (mstFlag.(0))

      ; poszione e velocità master sono froniti direttamente da PN

      velMaster = r_SpeedMaster_PN * KconvSpeedPN2US ; conversione della velocità in [unità master/sec]

   ELSE

      ; gestione se viene fornita solo la posizione del master..

      IF ((irt_to <> irt_to_prec) AND (irt_to_prec<>0))

         dtMaster = (irt_to - irt_to_prec)/1e6 ; tempo tra ultime due letture (da rule) del Time Output PN in secondi

         irt_to_prec = irt_to ; calcolo dello spazio del master tra ultime due letture (da rule)

         IF (mstFlag.(1))

            deltaPosMaster = DELTA_ENC32(posMaster, posMasterPrec) ; con posizioni di 32 bit

         ELSE

            deltaPosMaster = DELTA_ENC16(posMaster, posMasterPrec) ; con posizioni di 16 bit

         ENDIF

         ; calcolo della velcita in [unita master/sec]

         velMaster = (deltaPosMaster) / dtMaster

      ENDIF

      ; aggiorna i dati precedenti

      posMasterPrec = posMaster

      irt_to_prec = irt_to

   ENDIF

   ; calcola la poszione del master aggiustata alla battuta delle rule

   adjMaster = posMaster + velMaster * (SYNCH_HW_TIME - irt_to)/1e6

   IF (mstFlag.(1))

      deltaAdjMaster = DELTA_ENC32 (adjMaster , adjMasterPrec) ; con posizioni di 32 bit

   ELSE

      deltaAdjMaster = DELTA_ENC16 (adjMaster , adjMasterPrec) ; con posizioni di 16 bit

   ENDIF

   ; aggiorna i dati precedenti

   adjMasterPrec = adjMaster

   ; calcolo del master che evolve verso l'infinito ed oltre

   totMaster = totMaster + deltaAdjMaster

END_FUN

 

  

Keyboard Navigation

F7 for caret browsing
Hold ALT and press letter

This Info: ALT+q
Page Header: ALT+h
Topic Header: ALT+t
Topic Body: ALT+b
Contents: ALT+c
Search: ALT+s
Exit Menu/Up: ESC