Vai al contenuto
PLC Forum


Diagnostica Cpu S7-300 - + stato cpFc diagnostica u+ stato schede UNIVERSALE


Messaggi consigliati

Inserito:

Salve io dovrei fare un fc che vada bene per qualsiasi cpu s7-300 e che mi dica alcune informazioni sulla cpu.

Le info che vorrei sono:

- stato cpu (run/stop/alarm)

- id allarme cpu con elenco di 10

- rack e posizione scheda in errore

- tipo scheda in errore

- id errore scheda

- nodo mpi in errore

- id errore mpi

- nodo profibus in errore (tramite un flag abiliterei cpu con e senza profibus )

- id errore profibus

- nodo ethernet in errore (ip possibilmente) (tramite un flag abiliterei cpu con e senza ethernet )

- id errore ethernet

- agli id errore abbinerò un testo sul display

appoggerei tutto su un db che andrebbe bene per qualsiasi progetto s7 e risulterebbe comodo anche da visualizzare su display come pagina standard e che potrebbe aiutare a risolvere molti problemi. non voglio usare routine di wincc perchè voglio che questo vada bene per ogni display.

Credo che questo si possa fare tramite gli ob8x 10x 12x oppure sfc51 ma vorrei consigli su come impostarlo e se qualcuno ha già qualcosa di fatto mi piacerebbe vederlo. Renderlo universale non credo sia facile e vorrei anche scrivere il minor numero di istruzioni dentro gli ob e la maggior parte dentro l'fc. In più ci sarebbe anche da gestire il fatto dell'evento entrante uscente degli ob che potrebbe creare problemi. inoltre il fatto di segnalare la cpu in stop mi sembra molto arduo.

Sarei felice di discuterne con voi e scambiarci idee x riuscire a fare qualcosa di utile e funzionale.

Grazie e Buona giornata

Simone


Inserita: (modificato)

Ciao, una delucidazione sulla tua domanda è d'obbligo, quanto scrivi:

Renderlo universale non credo sia facile e vorrei anche scrivere il minor numero di istruzioni dentro gli ob e la maggior parte dentro l'fc.

Casa intendi??

Nel senso che vuoi fare un FC da richiamare all'interno dell'OB in questione? oppure vuoi fare una FC da richiamare sempre?

Nel secondo caso non mi sembra una soluzione "elegante", nel senso, che secondo me, vai a caricare la CPU di cose che nel 90% della sua vita non "servono" (segnalazioni di problemi realtivi al hardware).

inoltre il fatto di segnalare la cpu in stop mi sembra molto arduo

Si l'ho è, e poi perchè la cpu dovrebbe andare in stop??

Se le cose sono fatte "bene" lo stop della cpu è l'ultima possibilità, ovvero ciò che non ho previsto, se la cpu va in stop è da ricercare la cusa e non far "spegnere ed riaccendere" la macchina all'operatore per rimettere il plc in run.

Per quello che vuoi realizzare trovi molte discussioni all'interno del forum.

Modificato: da TravelMen
Inserita:

Mah, io fossi in te, scremerei un poco l'elenco di diagnstica che hai fatto, poi, con calma e pazienda, andrei ad aprire il FB150, (diagnostica Profibus) della Siemens, per la diagnostica profibus, e capirei come lavora la SFC51 e cugine.

Attenzione che: S7-300 gestisce solo gli eventi entranti/uscenti; quindi il tuo FC andrebbe poi inserito il OB82, OB86, etc., oltre che in OB1 per la gestione storica della DB, ecc.

NOTE:

1) che la CPU sia andata in RUN/STOP te ne fai poco. Se non ci si è avvicinato un manutentore, non va in STOP.

2) tutte le informazioni che citi, sono un enormità per il 99% dei lavori che si vedo in giro. Fai almeno un FC modulare in base ai tipi di rete e nodi che andrai ad adottare.

3) non credo che la CPU conosca l'indirizzo IP delle CP. Mi sembra di capire che la CPU riconosce la CP solo come risorsa di collegamento, tramite indirizzo I/O e ID di collegamento. L'IP dovresti ricavarlo, analizzando approfonditamente i dati di configurazione delle SDB. (buon lavoro).

Bella idea la tua. Visto che è complessa, potresti creare un progetto pubblico e far partecipare più persone per raggiungere prima e meglio l'obbiettivo.

Inserita: (modificato)

Il discorso secondo me non è il perchè debba andare in Stop, ma il fatto che se è in stop, il pannello o display chiamalo come vuoi non comunica con il PLC, quindi è un po difficile vederne lo stato

Comunque, delle tante cose che hai elencato è possibile secondo me gestirne alcune con SFC51: di sicuro la diagnostica Profibus (se fai una ricerca c'è già qualcuno che ha scritto il codice in qualche discussione), che pero con sfc51 mi sembra riesci a vedere solo lo stato del nodo, se c'è o non c'è e non riesci ad avere informazioni aggiuntive di diagnostica (tipo SFC13 o FB150 di Siemens); puoi inoltre vedere lo stato dei led della cpu oppure leggere il buffer di diagnostica. Guardando l'. di SFC51 comunque trovi tutto quello che puo fare

L'idea di creare un "blocco tuttofare" sinceramente non piace neanche a me, preferisco suddividere le varie parti nonostante siano comunque tutte funzioni di diagnostica; che tu le abiliti o meno, quando non servono è sempre codice in più di cui puoi fare a meno. Creando blocchi differenti invece inserisci solo quelli che ti servono realmente

Modificato: da suppaman
Inserita:

Per la cronaca, tempo fa avevo aperto la FB150 di Siemens, e, (mi aiuti la memoria), ho solo visto ricorrenti richiami alla SFC51, nulla di più. Per questo credo che in fin dei conti sia un lavoro fattibile.

Fattibile. Utile, invece, se scritto con un sorgente modulare, tipo SCL, che si compila di volta in volta solo nelle parti realmente utili. Portarsi dietro, come ormai detto, 10 - 20 k di codice inutile, non è bello per lo stato attuale delle capacità mnemoniche. Cosa direbbe una 313 od una 314 di un simile FC??

Inserita: (modificato)

Allora rispondo ad alcune delle vostre domande:

- la cpu in stop sarebbe solo per il display e si, avete ragione non è utile perchè non deve andarci in stop, però se è possibile farlo e lo spreco di risorse è minimo non vedo perchè non dovrei mettercelo.

- come strutturiamo i programmi noi mi serve un solo fc da lanciare in ob1 (solamente se sono in una determinata pagina del display e collegata al fatto che l'impianto sia in manuale) perchè avere un fc coordianto ad un db da poter copiare ed incollare in ogni progetto insieme alle righe di programma dentro i vari ob è molto più comodo.

- dentro gli ob non ci dovrebbe essere altro che il passaggio pari pari delle informazioni delle temp in un db. se entrante metto le info se uscente metto 0 (o un codice analogo che mi identifica che non c'è nessun problema)

- dentro a questo fc posso lanciare ogni fb di cui ho bisogno però il tutto deve essere fatto senza bisogno di meterci parametri del tipo: che schede ho, quanti nodi profibus e info del genere.

- la pesantezza dell'fc non mi preoccupa affatto visto che è lanciato solo in determite occasioni. Anche se lo lanciassi sempre, con le nuove cpu uscite da 6 mesi della siemens, non ci sono problemi visto che hanno più del doppio della memoria e della velocità. (programmi con 4 controlli assi e altre 25 macchine automatiche veloci girano in 2-3 ms su una 315)

Se qualcuno ha degli esempi di come sfruttare i vari sfc51 fb150 sarei felice di vederli... xchè i manuali siemsens sono "esplicativi" ma l'applicazione pratica di qualcuno mi risulterebbe molto utile.

Inoltre se qualcuno vuole darmi una mano e creare un gruppo di lavoro per progettare un fc del genere io sono disponibile

Grazie

Simone

Modificato: da djx84
Inserita:
- la cpu in stop sarebbe solo per il display e si, avete ragione non è utile perchè non deve andarci in stop, però se è possibile farlo e lo spreco di risorse è minimo non vedo perchè non dovrei mettercelo.

Come ho già detto prima, non è questione di spreco o del perchè vada in stop, è che se va in Stop il pannello operatore non comunica più e sopratutto il programma non cicla, quindi anche se tu scrivi del codice, questo non verrà eseguito se la cpu è in Stop

Per quanto riguarda l'SFC51, bastava fare una ricerca: questa è una delle tante ...

Per l'FB150 che come detto da mubeta sfrutta anch'essa SFC51 l'esempio lo puoi trovare direttamente nel sito Siemens insieme all'FB.

con le nuove cpu uscite da 6 mesi della siemens, non ci sono problemi visto che hanno più del doppio della memoria e della velocità.

Ok, ma perchè mettere dentro roba che non serve?

Ovviamente poi ognuno è libero di fare come meglio crede ci mancherebbe altro :)

Inserita:
"Come ho già detto prima, non è questione di spreco o del perchè vada in stop, è che se va in Stop il pannello operatore non comunica più"

Non ricordo con i display siemens ma con quelli della proface connessi in ethernet che uso io anche se la cpu è in stop il display comunica. :thumb_yello:

Per quanto riguarda l'SFC51, bastava fare una ricerca: questa è una delle tante ...

Grazie per il link avevo cercato sul sito ma si vede che questa discussione mi era sfuggita :lol:

Da quello che ho capito usando l'fb3 io vedo quali nodi sono progettati quali in errore e quali presenti. Proprio quello che volevo perfetto! Spero solo che i parametri di programmazione nodo profibus nel db siano in uscita e vengano lette dalla configurazione hardware e non debba segnare io i nodi che ho progettato. comunque in ogni caso gran bel fb!! adesso posto anche nell'altro post per fare i complimenti a matteo.

Qualche altro suggerimento per diagnosticare rete ethernet? oppure per gli stati di allarme del plc?

Grazie

Simone

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