Vai al contenuto
PLC Forum


Contatore Veloce S7-200 - Come attivare e disttivare un contatore


Messaggi consigliati

Inserito:

Salve a tutti,

Ho un problema con un contatore veloce di una CPU S7-226 XM.

Avendo un encoder che genera 2 impulsi sfasati di 90°, abilito il contatore HC0 (con SM0.1) con la procedura guidata (assistente HSC) in modo 10 (contatore con fase A/B in quadratura) senza configurare nessun interrupt ed utilizzando l'ingresso di reset.

Adesso tramite gli ingressi I0. ed I0.1 (ingresi assegnati al contatore veloce HC0) il contatore dovrebbe contare in avanti o indietro, ma non fa niente.

Le uscite ad impulsi dell'encoder sono collegate direttamente agli ingressi del plc (i0.0 ed i0.1) ed all'ingresso i0.2 è collegato un pulsante di reset.

Essendo un principiante in materia i miei dubbi sono:

- Ho collegato tutto bene?

- Il modo di conteggio del contatore veloce è quello giusto?

- Ho abilitoato correttamente il contatore?

Se avete degli esempi pratici potete inviarli a paganoezio[at]libero.it

Grazie a tutti.


Gabriele Corrieri
Inserita:

Ciao

come inizio dovresti guardare se i due led di ingresso si accendono esi spengono al girare dell'albero dell'encoder ... se è un encoder a 5V non puoi direttamente interfacciarlo al plc.

Prova a postare il codice AWL che non va...

Ciao

Inserita:

Hai letto bene il capitolo del manuale relativo ai contatori veloci? Perchè o hai un problema di livello, come suggerisce Gabriele Corrieri, o non hai inizializzato correttamente il contatore. Non fidarti solo della procedura guidata: è una scorciatoia per chi conosce gia bene l'apaprechiatura.

Matteo Montanari
Inserita: (modificato)

io per gestire il contatore veloce su di una 226 ho utilizzato il seguente codice

(elaborando quello proposto dal manuale)

LD     SM0.1
LPS
MOVB   16#FA, SMB47
AENO
HDEF   1, 9
LRD
MOVD   +10, SMD48
AENO
MOVD   +100, SMD52
LPP
HSC    1
SM0.1    PRIMO CICLO DI SCANSIONE
SM47.0    HSC1 bit di controllo livello attivo per il reset: (0=attivo alto, 1=attivo basso)
SM47.1    HSC1 bit di controllo livello attivo per avvio: (0=attivo alto, 1=attivo basso)
SM47.2    HSC1 selezione velocità per contatori in quadratura: 0 = 4x velocità; 1 = 1x velocità
SM47.3    HSC1 bit di controllo della direzione: 1 = conteggio in avanti
SM47.4    HSC1 aggiornamento direzione: 1 = aggiornamento direzione
SM47.5    HSC1 aggiornamento valore preimpostato: 1 = scrive in HSC1 il nuovo valore preimpostato
SM47.6    HSC1 aggiornamento valore preimpostato: 1 = scrive il nuovo valore corrente in HSC1 corrente
SM47.7    HSC1 bit di abilitazione: 1=abilita
SMD48    HSC1 nuovo valore corrente SMB48 è il byte più significativo, SMB51 è il byte meno significativo
SMD52    HSC1 nuovo valore preimpostato SMB52 è il byte più significativo, SMB55 è il byte meno significativo.
una volta seguita questa inizializzazione leggo il valore dell'encoder come se fosse un normale valore numerico, ed eseguo i confronti con la quota di "ricetta" per sapere se devo andare "avanti" o "indietro".
LD     SM0.0
MOVD   HC1, VD60

Modificato: da keosmm
  • 1 month later...
matteobenatti
Inserita:

Prova ad invertire gli ingressi: una fase è in anticipo sull'altra e, se hai configurato il contatore con funzione solo avanti, riconosce il senso di rotazione.

La procedura guidata è una mezza fregatura: se costruisci il programma in manuale, ti riuscirà più semplice effettuare i controlli.

Una volta che hai individuato il tipo di contatore ed il modo di funzionamento (prova con HSC3 Modo 0: una sola fase una sola direzione) associa l'interrupt all'evento hsc=count, dopodichè scrivi nell'interrupt il settaggio di merker, di uscite o quant'altro prevede la tua applicazione. Questa subroutine dovrai richiamarla UNA volta con sm 0.1, per definire il contatore.

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