Vai al contenuto
PLC Forum


S7200 ON LINE CON TD200 - connettore 3vie pc,cpu,td200 esiste?


SGL

Messaggi consigliati

kamikaze quello che mi dici e' vero , anche io ho caricato OB86 come altri altrimenti mi va in stop

PEro ho un paio di nodi scollegati e tra l'altro disalimentati , quindi il nodo non risponde e sulla cpu noto il bus fault

Pero all'interno del OB86 , pur essendo l'evento entrante , non vedo il flusso verde muoversi , di conseguenza non viene elaborato il codice dove prendo

dalle locali il numero di nodo in fault .... :unsure:

SI l'SFC14 , lettura dati coerenti la sto gia usando per un driver di scanner barcode

La usero anche per questa diagnostica , grazie peopeo non ci avevo pensato

ciao walter

Link al commento
Condividi su altri siti


  • Risposte 101
  • Created
  • Ultima risposta

Top Posters In This Topic

  • walterword

    24

  • SGL

    10

  • JumpMan

    10

  • pigroplc

    8

Top Posters In This Topic

kamikaze quello che mi dici e' vero , anche io ho caricato OB86 come altri altrimenti mi va in stop

PEro ho un paio di nodi scollegati e tra l'altro disalimentati , quindi il nodo non risponde e sulla cpu noto il bus fault

Pero all'interno del OB86 , pur essendo l'evento entrante , non vedo il flusso verde muoversi , di conseguenza non viene elaborato il codice dove prendo

dalle locali il numero di nodo in fault .... :unsure:

SI l'SFC14 , lettura dati coerenti la sto gia usando per un driver di scanner barcode

La usero anche per questa diagnostica , grazie peopeo non ci avevo pensato

ciao walter

Link al commento
Condividi su altri siti

Ciao non vorrei dirti una **** ma mi pare di ricordare che OB86 venga eseguito al momento dell'errore (fronte di salita per intenderci) e poi non venga più richiamato.

Ecco perché non vedi la "riga verde" muoversi quando sei on line

Link al commento
Condividi su altri siti

Ciao non vorrei dirti una **** ma mi pare di ricordare che OB86 venga eseguito al momento dell'errore (fronte di salita per intenderci) e poi non venga più richiamato.

Ecco perché non vedi la "riga verde" muoversi quando sei on line

Link al commento
Condividi su altri siti

si puo darsi ....

<_< pero ho provare a riavviare il plc e niente , e' strano perche come dicevo a kami lo uso spesso

ADesso pero sto sviluppando un fc con relativo db che mi permette di diagnosticare fino a 40 nodi con relativi 40 fault

Ad ogni fronte per esempio di clock 500 ms , faccio un check di un nodo

I nodi , da 1 a 40 contengono l'indirizzo dei nodi

Li riempio una volta sola e poi parto dal primo , estraggo il numero di nodo , lo passo alla SFC14 , appoggio il record su any e controllo

il retval , se' e' diverso da zero setto ill fault relativo , tutto indicizzato in scl .

Ad ogni fronte incremento il nodo al massimo da controllare per poi ripartire da 1

Cosi cioe nella libreria anche questo

ciao e grazie

walter

:)

Link al commento
Condividi su altri siti

si puo darsi ....

<_< pero ho provare a riavviare il plc e niente , e' strano perche come dicevo a kami lo uso spesso

ADesso pero sto sviluppando un fc con relativo db che mi permette di diagnosticare fino a 40 nodi con relativi 40 fault

Ad ogni fronte per esempio di clock 500 ms , faccio un check di un nodo

I nodi , da 1 a 40 contengono l'indirizzo dei nodi

Li riempio una volta sola e poi parto dal primo , estraggo il numero di nodo , lo passo alla SFC14 , appoggio il record su any e controllo

il retval , se' e' diverso da zero setto ill fault relativo , tutto indicizzato in scl .

Ad ogni fronte incremento il nodo al massimo da controllare per poi ripartire da 1

Cosi cioe nella libreria anche questo

ciao e grazie

walter

:)

Link al commento
Condividi su altri siti

l'SFC14 per la diagnostica non mi funziona proprio bene , passo l'indirizzo in hex dello slave ma mi ritorna sempre 4098 che tra l'altro non

c'e' come spiegazione

Ho visto che c'e' FB125 con un db dove vengono registrati i nodi , gli errori , il numero di nodi proprio come dice pescatori

Solo che pero questo FB125 non lo trovo da nessuna parte , innessuna libreria

Sapresti dirmi come poterlo trovare ?

grazie

walter

Link al commento
Condividi su altri siti

l'SFC14 per la diagnostica non mi funziona proprio bene , passo l'indirizzo in hex dello slave ma mi ritorna sempre 4098 che tra l'altro non

c'e' come spiegazione

Ho visto che c'e' FB125 con un db dove vengono registrati i nodi , gli errori , il numero di nodi proprio come dice pescatori

Solo che pero questo FB125 non lo trovo da nessuna parte , innessuna libreria

Sapresti dirmi come poterlo trovare ?

grazie

walter

Link al commento
Condividi su altri siti

Funziona anche per componenti non Siemens,

se hai intenzione di utilizzare anche le pagine video del supervisore allegate al progetto per fare un bel lavoro devi aggiungere alla lista di grafica della diagnostica in dettaglio anche le sigle dei componenti e i nomi dei costruttori in funzione dell'identificatore numerico dichiarato nel file GSD e visibile nella pagina video stessa.

pigroplc

Link al commento
Condividi su altri siti

Funziona anche per componenti non Siemens,

se hai intenzione di utilizzare anche le pagine video del supervisore allegate al progetto per fare un bel lavoro devi aggiungere alla lista di grafica della diagnostica in dettaglio anche le sigle dei componenti e i nomi dei costruttori in funzione dell'identificatore numerico dichiarato nel file GSD e visibile nella pagina video stessa.

pigroplc

Link al commento
Condividi su altri siti

ok per adesso uso l'fc 25 , mi da indicazioni sul quale rete dp c'e' l'errore senza entrare nei dettagli

Tra pochi giorni porto via i testicoli da qua , dopo un mese di india mi sembra piu che giusto

:)

Link al commento
Condividi su altri siti

ok per adesso uso l'fc 25 , mi da indicazioni sul quale rete dp c'e' l'errore senza entrare nei dettagli

Tra pochi giorni porto via i testicoli da qua , dopo un mese di india mi sembra piu che giusto

:)

Link al commento
Condividi su altri siti

non e' la prima volta che passo di qua e la musica e' sempre quella ....yes sir now i make oppure is coming

Le solite balle che ormai non fanno piu nemmeno ridere

<_<

sono un popolo a se stante

Link al commento
Condividi su altri siti

non e' la prima volta che passo di qua e la musica e' sempre quella ....yes sir now i make oppure is coming

Le solite balle che ormai non fanno piu nemmeno ridere

<_<

sono un popolo a se stante

Link al commento
Condividi su altri siti

Matteo Montanari

io utilizzo questo blocco funzionale, sfruttando SFC 51, non ha tutti i dati di diagnostica ma analizza solamente le stazioni progettate con quelle presenti:

TYPE UDT 998
AUTHOR :
VERSION : 0.1


  STRUCT     
   PROGRAMMAZIONE : ARRAY  [1 .. 128 ] OF //PROGRAMMAZIONE PROFIBUS NODO
   BOOL;    
   PRESENZA : ARRAY  [1 .. 128 ] OF //PRESENZA PROFIBUS NODO
   BOOL;    
   ERRORE : ARRAY  [1 .. 128 ] OF //ERRORE PROFIBUS NODO
   BOOL;    
  END_STRUCT;    
END_TYPE

FUNCTION_BLOCK FB 3
TITLE =DIAGNOSTICA RETI PROFIBUS
AUTHOR : 
VERSION : 0.1


VAR
  ProfibusDP_01 : STRUCT     
   ReqStazioniPronte : BOOL;    
   BusyStazioniPronte : BOOL;    
   ReqStazioniProgettate : BOOL;    
   BusyStazioniProgettate : BOOL;    
   FineAggiornamento : BOOL;    
   Nodo : UDT 998;    
  END_STRUCT;    
END_VAR
VAR_TEMP
  ERROR : INT;    
  header : STRUCT     
   lunghezza : WORD;    
   n_dr : WORD;    
  END_STRUCT;    
END_VAR
BEGIN
NETWORK
TITLE =SCANSIONE RETE PROFIBUS DP 01

// Lettura Stazioni Presenti Profibus DP 01
//;
      CALL SFC   51 (
           REQ                      := #ProfibusDP_01.ReqStazioniPronte,
           SZL_ID                   := W#16#292,
           INDEX                    := W#16#1,
           RET_VAL                  := #ERROR,
           BUSY                     := #ProfibusDP_01.BusyStazioniPronte,
           SZL_HEADER               := #header,
           DR                       := DB3.ProfibusDP_01.Nodo.PRESENZA);
//;
// Lettura Stazioni Progettate Profibus DP 01
//;
      CALL SFC   51 (
           REQ                      := #ProfibusDP_01.ReqStazioniProgettate,
           SZL_ID                   := W#16#92,
           INDEX                    := W#16#1,
           RET_VAL                  := #ERROR,
           BUSY                     := #ProfibusDP_01.BusyStazioniProgettate,
           SZL_HEADER               := #header,
           DR                       := DB3.ProfibusDP_01.Nodo.PROGRAMMAZIONE);
//;
// Bit Controllo Stazioni Progettate
//;
      U     #ProfibusDP_01.ReqStazioniProgettate; 
      UN    #ProfibusDP_01.BusyStazioniProgettate; 
      R     #ProfibusDP_01.ReqStazioniProgettate; 
      S     #ProfibusDP_01.FineAggiornamento; 
//;
// Bit Controllo Stazioni Presenti
//;
      U     #ProfibusDP_01.ReqStazioniPronte; 
      UN    #ProfibusDP_01.BusyStazioniPronte; 
      R     #ProfibusDP_01.ReqStazioniPronte; 
      S     #ProfibusDP_01.ReqStazioniProgettate; 
//;
// Confronto tra stazioni Presenti e Progettate (Genazione Allarmi)
//;
// Stazioni 0001 - 0032
//;
      L     DID   18; 
      L     DID    2; 
      XOD  ; 
      T     DID   34; 
//;
// Stazioni 0033 - 0064
//;
      L     DID   22; 
      L     DID    6; 
      XOD  ; 
      T     DID   38; 
//;
// Stazioni 0065 - 0096
//;
      L     DID   26; 
      L     DID   10; 
      XOD  ; 
      T     DID   42; 
//;
// Stazioni 0097 - 0128
//;
      L     DID   30; 
      L     DID   14; 
      XOD  ; 
      T     DID   46; 
END_FUNCTION_BLOCK

Link al commento
Condividi su altri siti

Matteo Montanari

io utilizzo questo blocco funzionale, sfruttando SFC 51, non ha tutti i dati di diagnostica ma analizza solamente le stazioni progettate con quelle presenti:

TYPE UDT 998
AUTHOR :
VERSION : 0.1


  STRUCT     
   PROGRAMMAZIONE : ARRAY  [1 .. 128 ] OF //PROGRAMMAZIONE PROFIBUS NODO
   BOOL;    
   PRESENZA : ARRAY  [1 .. 128 ] OF //PRESENZA PROFIBUS NODO
   BOOL;    
   ERRORE : ARRAY  [1 .. 128 ] OF //ERRORE PROFIBUS NODO
   BOOL;    
  END_STRUCT;    
END_TYPE

FUNCTION_BLOCK FB 3
TITLE =DIAGNOSTICA RETI PROFIBUS
AUTHOR : 
VERSION : 0.1


VAR
  ProfibusDP_01 : STRUCT     
   ReqStazioniPronte : BOOL;    
   BusyStazioniPronte : BOOL;    
   ReqStazioniProgettate : BOOL;    
   BusyStazioniProgettate : BOOL;    
   FineAggiornamento : BOOL;    
   Nodo : UDT 998;    
  END_STRUCT;    
END_VAR
VAR_TEMP
  ERROR : INT;    
  header : STRUCT     
   lunghezza : WORD;    
   n_dr : WORD;    
  END_STRUCT;    
END_VAR
BEGIN
NETWORK
TITLE =SCANSIONE RETE PROFIBUS DP 01

// Lettura Stazioni Presenti Profibus DP 01
//;
      CALL SFC   51 (
           REQ                      := #ProfibusDP_01.ReqStazioniPronte,
           SZL_ID                   := W#16#292,
           INDEX                    := W#16#1,
           RET_VAL                  := #ERROR,
           BUSY                     := #ProfibusDP_01.BusyStazioniPronte,
           SZL_HEADER               := #header,
           DR                       := DB3.ProfibusDP_01.Nodo.PRESENZA);
//;
// Lettura Stazioni Progettate Profibus DP 01
//;
      CALL SFC   51 (
           REQ                      := #ProfibusDP_01.ReqStazioniProgettate,
           SZL_ID                   := W#16#92,
           INDEX                    := W#16#1,
           RET_VAL                  := #ERROR,
           BUSY                     := #ProfibusDP_01.BusyStazioniProgettate,
           SZL_HEADER               := #header,
           DR                       := DB3.ProfibusDP_01.Nodo.PROGRAMMAZIONE);
//;
// Bit Controllo Stazioni Progettate
//;
      U     #ProfibusDP_01.ReqStazioniProgettate; 
      UN    #ProfibusDP_01.BusyStazioniProgettate; 
      R     #ProfibusDP_01.ReqStazioniProgettate; 
      S     #ProfibusDP_01.FineAggiornamento; 
//;
// Bit Controllo Stazioni Presenti
//;
      U     #ProfibusDP_01.ReqStazioniPronte; 
      UN    #ProfibusDP_01.BusyStazioniPronte; 
      R     #ProfibusDP_01.ReqStazioniPronte; 
      S     #ProfibusDP_01.ReqStazioniProgettate; 
//;
// Confronto tra stazioni Presenti e Progettate (Genazione Allarmi)
//;
// Stazioni 0001 - 0032
//;
      L     DID   18; 
      L     DID    2; 
      XOD  ; 
      T     DID   34; 
//;
// Stazioni 0033 - 0064
//;
      L     DID   22; 
      L     DID    6; 
      XOD  ; 
      T     DID   38; 
//;
// Stazioni 0065 - 0096
//;
      L     DID   26; 
      L     DID   10; 
      XOD  ; 
      T     DID   42; 
//;
// Stazioni 0097 - 0128
//;
      L     DID   30; 
      L     DID   14; 
      XOD  ; 
      T     DID   46; 
END_FUNCTION_BLOCK

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