Vai al contenuto
PLC Forum


contaimpulsi


Angelo Bonizzi

Messaggi consigliati

Angelo Bonizzi

salve a tutti;

ne sto uscendo matto,ho bisogno di un aiuto. Devo creare in s7/300 ,cpu 313c-2dp, una funzione :

premo il pulsante una volta e attivo un uscita

premo lo stesso pulsante la seconda volta e ne attivo un altra,lasciando attiva anche la prima 

e cosi via x 4 volte.

alla 5 pressione resetto tutto.

Ho provato usando il CU ,solo che non so come poter utilizzare i conteggi che ad ogni pressione incrementa di 1.

qualcuno puo darmi un aiuto?

PS: purtroppo non sono capace in awl e uso il kop.

grazie

Link al commento
Condividi su altri siti


Angelo Bonizzi
1 ora fa, Angelo Bonizzi ha scritto:

salve a tutti;

ne sto uscendo matto,ho bisogno di un aiuto. Devo creare in s7/300 ,cpu 313c-2dp, una funzione :

premo il pulsante una volta e attivo un uscita

premo lo stesso pulsante la seconda volta e ne attivo un altra,lasciando attiva anche la prima 

e cosi via x 4 volte.

alla 5 pressione resetto tutto.

Ho provato usando il CU ,solo che non so come poter utilizzare i conteggi che ad ogni pressione incrementa di 1.

qualcuno puo darmi un aiuto?

PS: purtroppo non sono capace in awl e uso il kop.

grazie

mi ero dimenticato di dire che non utilizzo il contatore come blocco,ma solo la bobina . Difatti ad ogni eccitazione della bobina CU ho in incremento del conteggio,ora vorrei usare questi numeri x fare dei confronti in modo che quando arrivo al parametro da me impostato mi si attiva l'uscita desiderata.

Link al commento
Condividi su altri siti

Devi fare un move del contatore in una word e poi con l'istruzione CMP>= confronti la word con il tuo valore 1 e imposti la prima uscita, 2 per la seconda ecc

In ultimo fai un confronto con il 5 e resetti il contatore

Modificato: da acquaman
Link al commento
Condividi su altri siti

Angelo Bonizzi

PEFETTO,Con s7-200 mi era piu facile fare i confronti. ho creato una db in modo che col move muovo i valori di Cu e mi si attivano le uscite che voglio io con relativo reset del contatore.

grazie mille

1 ora fa, Angelo Bonizzi ha scritto:

salve a tutti;

ne sto uscendo matto,ho bisogno di un aiuto. Devo creare in s7/300 ,cpu 313c-2dp, una funzione :

premo il pulsante una volta e attivo un uscita

premo lo stesso pulsante la seconda volta e ne attivo un altra,lasciando attiva anche la prima 

e cosi via x 4 volte.

alla 5 pressione resetto tutto.

Ho provato usando il CU ,solo che non so come poter utilizzare i conteggi che ad ogni pressione incrementa di 1.

qualcuno puo darmi un aiuto?

PS: purtroppo non sono capace in awl e uso il kop.

grazie

mi ero dimenticato di dire che non utilizzo il contatore come blocco,ma solo la bobina . Difatti ad ogni eccitazione della bobina CU ho in incremento del conteggio,ora vorrei usare questi numeri x fare dei confronti in modo che quando arrivo al parametro da me impostato mi si attiva l'uscita desiderata.

Link al commento
Condividi su altri siti

Angelo Bonizzi

scusa se ti scoccio ancora, ma come mai quando arrivo al 4 conteggio dovrebbe resettarmi il contatore ma non lo fa, dovè che sbaglio?

ho allegato l'immagine dei 3 segmenti e della db 

Ashampoo_Snap_giovedì 6 agosto 2020_16h47m27s_003_.png

Ashampoo_Snap_giovedì 6 agosto 2020_16h48m21s_004_.png

Link al commento
Condividi su altri siti

Io non vedo da nessuna parte confronti che comandano un reset.
Vedo solo un bit DB25.DBX6.0 che non so che senso abbia.

Link al commento
Condividi su altri siti

Con quello che hai scritto non si comporta cosi, tu trasferisci il contatore nella word 0 e controlli il bit 0 della word 6, non capisco che ragionamento hai fatto.

In questo momento, acquaman ha scritto:

Con quello che hai scritto non si comporta cosi, tu trasferisci il contatore nella word 0 e controlli il bit 0 della word 6, non capisco che ragionamento hai fatto.

Batta ci siamo sovrapposti.

Link al commento
Condividi su altri siti

Salve.

Io avrei optato per una cosa simile.

 

      A     #Button    // Pulsante
      FP    #BTN_PE    // Stato Pulsante
      JNB   YB01
      L     #COUNT     // byte
      +     1
      T     #COUNT

YB01: L     #COUNT
      JL    case
      JU    P0
      JU    P1
      JU    P2
      JU    P3
      JU    P4
      JU    P5
      JU    P6
case: JU    P0

P0:   JU    P6
P1:   SET   
      S     #Out01
      JU    POP
P2:   SET   
      S     #Out02
      JU    POP
P3:   SET   
      S     #Out03
      JU    POP
P4:   SET   
      S     #Out04
      JU    POP
P5:   SET   
      S     #Out05
      JU    POP
P6:   SET   
      R     #Out01
      R     #Out02
      R     #Out03
      R     #Out04
      R     #Out05
      L     B#16#0
      T     #COUNT
POP:  NOP   0

 

Link al commento
Condividi su altri siti

Sono sicuro che l l'incremento di una word e relativo confronto sia il.metodo più pulito e professionale  , ma se angelo si trova bene in kop, mettere 4 set reset , dove il successivo richiede il consenso del primo , ed il quinto resetta tutto ?  

Link al commento
Condividi su altri siti

20 minuti fa, luigi69 ha scritto:

ma se angelo si trova bene in kop, mettere 4 set reset , dove il successivo richiede il consenso del primo , ed il quinto resetta tutto ?  

Sì, certo. Oppure, anche in ladder, si può fare con il contatore e dei semplici confronti:
- Uscita 1 attiva se CNT > 0

- Uscita 2 attiva se CNT > 1

- Uscita 3 attiva se CNT > 2

- Uscita 4 attiva se CNT > 3

- Reset contatore se CNT > 4

 

Non è il metodo che preferisco (ho sempre odiato i contatori) ma, se ha iniziato su questa strada, può proseguire.
 

Come già detto, ci dovrebbe però spiegare cosa intende fare con quel DB25.DBX6.0, che i "cavoli a merenda" magari a qualcuno possono anche piacere, ma quel bit non c'entra assolutamente nulla.

Modificato: da batta
Link al commento
Condividi su altri siti

Angelo Bonizzi

Ho scoperto l'arcano,cannavo io alla grande a mettere gli indirizzi. dopo 13 anni che non usavo piu il 300 ,mi son ricordato e anche con vari tentativi ho sistemato tutto.

testato e funziona come volevo.

io preferisco appogiarmi ad una db e richiamarla dove mi serve,mi sembra piu logico come procedura,poi naturalmente dipende da uno come è abituato a lavorare.

Ashampoo_Snap_giovedì 6 agosto 2020_20h17m12s_002_.png

Ashampoo_Snap_giovedì 6 agosto 2020_20h17m58s_003_.png

Link al commento
Condividi su altri siti

Angelo Bonizzi
6 minuti fa, batta ha scritto:

Sì, certo. Oppure, anche in ladder, si può fare con il contatore e dei semplici confronti:
- Uscita 1 attiva se CNT > 0

- Uscita 2 attiva se CNT > 1

- Uscita 3 attiva se CNT > 2

- Uscita 4 attiva se CNT > 3

- Reset contatore se CNT > 4

 

Non è il metodo che preferisco (ho sempre odiato i contatori) ma, se ha iniziato su questa strada, può proseguire.
 

Come già detto, ci dovrebbe però spiegare cosa intende fare con quel DB25.DBX6.0, che i "cavoli a merenda" magari a qualcuno possono anche piacere, ma quel bit non c'entra assolutamente nulla.

HAI pienamente ragione,ero io che non capivo piu niente. Poi x capire come trasferiva tramite il MOVE i dati del Counter ,mi son fatto una tabella variabili con i singoli bit della DB e ho capito .Comunque se non era per voi ,non ci arrivavo. 

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