Vai al contenuto
PLC Forum


contaimpulsi


Messaggi consigliati

Angelo Bonizzi
Inserito:

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


Angelo Bonizzi
Inserita:
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.

Inserita: (modificato)

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
Angelo Bonizzi
Inserita:

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.

Angelo Bonizzi
Inserita:

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

Inserita:

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

Inserita:

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.

Inserita:

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

 

Inserita:

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 ?  

Inserita: (modificato)
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
Angelo Bonizzi
Inserita:

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

Angelo Bonizzi
Inserita:
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. 

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