Vai al contenuto
PLC Forum


Sequenza Bit con "Eleganza"


Messaggi consigliati

Inserito:

A volte per ignoranza o per virtuosismo mi trovo davanti a piccoli problemi insormontabili come quello questo:

ad ogni pressione di un solo pulsante le out devono scambiare in 0-1; 1-1; 1-0; 0-0

Io sono riuscito in questo modo che però non mi soddisfa, lo trovo brutto e dispendioso di risorse.

Vorrei sapere se ce n'è uno più semplice ed "elegante".

Sequenza.jpg.e9eb05b60cc0ebd76883dff9e5f9b512.jpg

grazie


Inserita:

se la sequenza può essere 00 01 10 11 è un semplice contatore.00=0 01=1 10=2 11=3

ti basterebbe sommare 1 sempre ad una variabile e prendere i due bit meno significativi. puoi poi azzerare quando il conteggio arriva a 4 o andare a vanti così. 4 sarà infatti 100, 5 101, 6 110, 7 111

Inserita:

Grazie Ken, purtroppo la sequenza dovrebbe essere proprio 00 01 11 10
questo perché così facendo entrambi i bit hanno un fronte di salita ogni 4 passi

con la soluzione del contatore invece, il bit meno significativo ha due fronti di salita ogni 4 passi
Considerando un carico/utilizzatore applicato all'uscita assegnata a tale bit, in questo modo ne dimezzerei la durata

 

Inserita:

Puoi sempre fare un ciclo di 4 passi.
Secondo il passo attivo, abiliti le uscite a piacere.

  • 2 months later...
Inserita:

Il metodo che risulterà più leggibile è quello di batta.

Mi sono divertito però a fare qualche "esperimento": 

Visto che in pratica tu vuoi fare un codice GRAY a 2 bit ho buttato giù questo listato AWL e funziona, non so però quanto risulti leggibile...

      U     "Pulsante"
      FP    "FP_Pulsante"
      SPBN  _001

// Contatore  8 bit
      L     MB   200
      INC   1
      T     MB   200

// Codice GRAY a 2 bit
_001: X     M    200.0
      X     M    200.1
      =     "Out_A"

      U     M    200.1
      =     "Out_B"

 

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