Vai al contenuto
PLC Forum


Interrupt Con S7-200 - conteggio veloce


gluca2

Messaggi consigliati

Ciao a tutti

ho un problema con gli interrupt e il conteggio veloce

Utilizzando una CPU S7-224 devo leggere i dati da un encoder incrementale e generare un interrupt quando la quota letta è uguale a quella impostata in modo da fermare per tempo un motore comandato attraverso un uscita analogica del PLC stesso.

Ho usato l'assistente istruzioni di microwin e impostato un contatore veloce HC0 in modo 9 e gli ho indicato di generare un interrupt quando il valore corrente è uguale al valore impostato "CV=PV". All'interno della routine di interrupt gli faccio settare un merker per verificare che la routine sia stata eseguita ma questo non accade.

Qualcuno sa dirmi se sbaglio qualcosa?

Spero di essere stato abbastanza chiaro e un grazie anticipato a tutti.

Link al commento
Condividi su altri siti


Ciao a tutti

ho un problema con gli interrupt e il conteggio veloce

Utilizzando una CPU S7-224 devo leggere i dati da un encoder incrementale e generare un interrupt quando la quota letta è uguale a quella impostata in modo da fermare per tempo un motore comandato attraverso un uscita analogica del PLC stesso.

Ho usato l'assistente istruzioni di microwin e impostato un contatore veloce HC0 in modo 9 e gli ho indicato di generare un interrupt quando il valore corrente è uguale al valore impostato "CV=PV". All'interno della routine di interrupt gli faccio settare un merker per verificare che la routine sia stata eseguita ma questo non accade.

Qualcuno sa dirmi se sbaglio qualcosa?

Spero di essere stato abbastanza chiaro e un grazie anticipato a tutti.

Link al commento
Condividi su altri siti

Ciao,

per prima cosa prova a settare il confronto come CV>=PV, perche può darsi che il PLC perda l'istante in cui i 2 valori sono uguali e non esegua l'interrupt.

Buon lavoro

Modificato: da Blico
Link al commento
Condividi su altri siti

Ciao,

per prima cosa prova a settare il confronto come CV>=PV, perche può darsi che il PLC perda l'istante in cui i 2 valori sono uguali e non esegua l'interrupt.

Buon lavoro

Modificato: da Blico
Link al commento
Condividi su altri siti

Dato che tutti di solito spendiamo tempo prezioso per aiutare chi è in difficoltà e quasi sempre per ringraziamento non sappiamo quasi mai come si è risolto il problema, chiediamo se fosse possibile sapere come si è risolto.

Non ci interessa sapere se ci sono stati degli errori banali e magari ci si vergogna ad esporli.

Vi ricordo che il tecnico che pensa di non sbagliare mai, poveretto è meglio che cambi lavoro.

Quindi anche chi ha fatto errori banali avendo l'umiltà di segnalarli evita anche agli altri di commetterli.

Link al commento
Condividi su altri siti

Dato che tutti di solito spendiamo tempo prezioso per aiutare chi è in difficoltà e quasi sempre per ringraziamento non sappiamo quasi mai come si è risolto il problema, chiediamo se fosse possibile sapere come si è risolto.

Non ci interessa sapere se ci sono stati degli errori banali e magari ci si vergogna ad esporli.

Vi ricordo che il tecnico che pensa di non sbagliare mai, poveretto è meglio che cambi lavoro.

Quindi anche chi ha fatto errori banali avendo l'umiltà di segnalarli evita anche agli altri di commetterli.

Link al commento
Condividi su altri siti

Dato che tutti di solito spendiamo tempo prezioso per aiutare chi è in difficoltà e quasi sempre per ringraziamento non sappiamo quasi mai come si è risolto il problema, chiediamo se fosse possibile sapere come si è risolto.

Non ci interessa sapere se ci sono stati degli errori banali e magari ci si vergogna ad esporli.

Vi ricordo che il tecnico che pensa di non sbagliare mai, poveretto è meglio che cambi lavoro.

Quindi anche chi ha fatto errori banali avendo l'umiltà di segnalarli evita anche agli altri di commetterli.

Io ho perso la speranza, nel cestino degli sfoghi, tempo addietro, qualc'uno ha aperto una discussione titolata:"Prendi i soldi e scappa" proprio per segnalare un comportamento diffuso ma discutibile.

Nel main hai richiamato (nella prima scansione) la routine che ti ha preparato l'assistente??

Andrea

Ragazzi perchè vi appoggiate sempre all'assistente e non vi decidete ad imparare come funziona il PLC? Leggendo il manuale è spiegato molto bene come vanno usati e inizializzati, HCO, Interrupt ed altre funzioni.

Spesso si pensa che usare i tools automatici sia una scorciatoia, ma la scorciatoia è valida se, e solo se, si conosce bene il funzionamento dl dispositivo che si sta usando.

Link al commento
Condividi su altri siti

Dato che tutti di solito spendiamo tempo prezioso per aiutare chi è in difficoltà e quasi sempre per ringraziamento non sappiamo quasi mai come si è risolto il problema, chiediamo se fosse possibile sapere come si è risolto.

Non ci interessa sapere se ci sono stati degli errori banali e magari ci si vergogna ad esporli.

Vi ricordo che il tecnico che pensa di non sbagliare mai, poveretto è meglio che cambi lavoro.

Quindi anche chi ha fatto errori banali avendo l'umiltà di segnalarli evita anche agli altri di commetterli.

Io ho perso la speranza, nel cestino degli sfoghi, tempo addietro, qualc'uno ha aperto una discussione titolata:"Prendi i soldi e scappa" proprio per segnalare un comportamento diffuso ma discutibile.

Nel main hai richiamato (nella prima scansione) la routine che ti ha preparato l'assistente??

Andrea

Ragazzi perchè vi appoggiate sempre all'assistente e non vi decidete ad imparare come funziona il PLC? Leggendo il manuale è spiegato molto bene come vanno usati e inizializzati, HCO, Interrupt ed altre funzioni.

Spesso si pensa che usare i tools automatici sia una scorciatoia, ma la scorciatoia è valida se, e solo se, si conosce bene il funzionamento dl dispositivo che si sta usando.

Link al commento
Condividi su altri siti

  • 4 years later...

Biongiorno a tutti.

Prima di tuto vi spiego la situazione in cui mi trovo: ho un sistema composto da 6 cpu in totale, in cui 5 di queste devono comunicare con un ultima cpu che fa una sorta di accentramento e raccolta di dati. Inoltre ogni sistema ha dei sensori collegati in DP ad eccezione dell'ultima cpu che raccoglie solo i dati.

Inizialmente avevo pensato a una semplice rete mpi, ma poi dal forum ho visto che con mpi non posso superare i 50mt e quindi ho subito bocciato la scelta perchè le stazioni sono distanti 200/300 metri l'una dall'altra.

Quindi ho pensato di andare sul Profibus DP. Ho visto che si è parlato ampiamente degli accopiatori DP e della loro configurazione ma sempre per collegare due sole cpu.

Quindi la mia domanda è, è possibile anche collegare piu di due cpu? se si fino a quante?

In tal caso, per il collegamento come dovrei procedere?

Se avete altre soluzioni diverse da questa proponete pure tanto sono ancora in fase di progettazione :)

Grazie a tutti per i suggerimenti.

Link al commento
Condividi su altri siti

Biongiorno a tutti.

Prima di tuto vi spiego la situazione in cui mi trovo: ho un sistema composto da 6 cpu in totale, in cui 5 di queste devono comunicare con un ultima cpu che fa una sorta di accentramento e raccolta di dati. Inoltre ogni sistema ha dei sensori collegati in DP ad eccezione dell'ultima cpu che raccoglie solo i dati.

Inizialmente avevo pensato a una semplice rete mpi, ma poi dal forum ho visto che con mpi non posso superare i 50mt e quindi ho subito bocciato la scelta perchè le stazioni sono distanti 200/300 metri l'una dall'altra.

Quindi ho pensato di andare sul Profibus DP. Ho visto che si è parlato ampiamente degli accopiatori DP e della loro configurazione ma sempre per collegare due sole cpu.

Quindi la mia domanda è, è possibile anche collegare piu di due cpu? se si fino a quante?

In tal caso, per il collegamento come dovrei procedere?

Se avete altre soluzioni diverse da questa proponete pure tanto sono ancora in fase di progettazione :)

Grazie a tutti per i suggerimenti.

Link al commento
Condividi su altri siti

Inizialmente avevo pensato a una semplice rete mpi, ma poi dal forum ho visto che con mpi non posso superare i 50mt e quindi ho subito bocciato la scelta perchè le stazioni sono distanti 200/300 metri l'una dall'altra.

Se il problema è questo, lo risolvi installando dei "Repeater".

L'accoppiatore DP/DP permette lo scambio di dati tra 2 reti Profibus.

Se il tuo problema è quindi far dialogare 5 cpu con la sesta cpu (ma non tra di loro) hai bisogno di 5 accoppiatori DP/DP.

Link al commento
Condividi su altri siti

Inizialmente avevo pensato a una semplice rete mpi, ma poi dal forum ho visto che con mpi non posso superare i 50mt e quindi ho subito bocciato la scelta perchè le stazioni sono distanti 200/300 metri l'una dall'altra.

Se il problema è questo, lo risolvi installando dei "Repeater".

L'accoppiatore DP/DP permette lo scambio di dati tra 2 reti Profibus.

Se il tuo problema è quindi far dialogare 5 cpu con la sesta cpu (ma non tra di loro) hai bisogno di 5 accoppiatori DP/DP.

Link al commento
Condividi su altri siti

Il problema è che l'impianto è all'aperto e i cunicoli per i cavi sono gia posati e cementati, e non ci sono nemmeno pozzetti intermedi nel percorso, vanno dritti da una stazione all'altra, ecco perche avevo escluso l'utilizzo di repeater, preferivo fare una tratta unica altrimenti avrei dovevo scavare in piu punti per inserirli. avevo dimenticato di scriverlo questo scusate.

Una cosa ancora non mi è chiara per quanto riguarda il collegamento hw. La rete della cpu centrale" consisterebbe di 5 accopiatori, dove poi da questi parto per andare le altre cpu; non devo entrare e uscire in cascata con l'accoppiatore da ogni cpu visto che devono comunicare soltanto con una, giusto ?

Nell'eventualità che volessi aggiungere delle cpu, che tu sappia c'è un limite per gli accoppiatori ? Sul sito siemens non mi pare che ne parlino..

Modificato: da suppaman
Link al commento
Condividi su altri siti

Il problema è che l'impianto è all'aperto e i cunicoli per i cavi sono gia posati e cementati, e non ci sono nemmeno pozzetti intermedi nel percorso, vanno dritti da una stazione all'altra, ecco perche avevo escluso l'utilizzo di repeater, preferivo fare una tratta unica altrimenti avrei dovevo scavare in piu punti per inserirli. avevo dimenticato di scriverlo questo scusate.

Una cosa ancora non mi è chiara per quanto riguarda il collegamento hw. La rete della cpu centrale" consisterebbe di 5 accopiatori, dove poi da questi parto per andare le altre cpu; non devo entrare e uscire in cascata con l'accoppiatore da ogni cpu visto che devono comunicare soltanto con una, giusto ?

Nell'eventualità che volessi aggiungere delle cpu, che tu sappia c'è un limite per gli accoppiatori ? Sul sito siemens non mi pare che ne parlino..

Modificato: da suppaman
Link al commento
Condividi su altri siti

Posso definirle come slave anche se a loro volta hanno dei sensori e degli i/o dp ?

Pensavo che potesse creare problemi.. Se si può fare cosi è tutto piu semplice.

Modificato: da suppaman
Link al commento
Condividi su altri siti

Posso definirle come slave anche se a loro volta hanno dei sensori e degli i/o dp ?

Pensavo che potesse creare problemi.. Se si può fare cosi è tutto piu semplice.

Modificato: da suppaman
Link al commento
Condividi su altri siti

Posso definirle come slave anche se a loro volta hanno dei sensori e degli i/o dp ?

No , non puoi

I dp coupler servono appunto per mettere in comunicazione 2 cpu che sono ambedue dichiarate master ( in una rete dp ci deve essere solo 1 master )

Per esperienze vissute , non mischio mai gli I/O di periferia con i dati , solitamente mi faccio una rete per la periferia ed una per i dati ( pannello compreso )

Se non puoi installare altre schede , usa MPI che ha come unico limite la velocita' ( se usi il 300 )

Ciao

Luca

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