Vai al contenuto
PLC Forum


selettore multi stato e lampade


Alb000

Messaggi consigliati

Salve, 

sto facendo il mio primo progetto grafico di un pannello weintek, per ora in locale, non avendo ancora il programma PLC.

Vorrei creare un selettore a 3 stati e 3 lampade ON/OFF che si devono accendere in corrispondenza di ogni stato, come devo fare? Al selettore ho dato l'indirizzo LW-0, alla lampade cosa devo impostare?

Grazie

Link al commento
Condividi su altri siti


Simone.Salarsi

sulla lampada devi impostare l'indirizzo da leggere (LW-0 nel tuo caso) e poi associare una shape di 'n' stati , tanti quanti quelli che vuoi visualizzare

 

prova a guardare questo video che forse è più semplice da capire che spiegare a parole

 

 

Link al commento
Condividi su altri siti

No, purtroppo non è quello che ho chiesto.

Provo a rispiegarmi. Ho un selettore multi stato word a 3 stati (0,1,2). Ad ogni posizione devo associare una LAMPADA A BIT (non word) che si accende in corrispondenza dello stato.

A questa lampada assocerò gli indirizzi LW-0bit.

L'obiettivo è fat accendere la lampada 1 allo stato 0, la lampada 2 allo stato 1 e la lampada 3 allo stato 2. Quando cambio il selettore la lampada non interessata deve spegnersi.

Avevo visto un tutorial dove lo favevano ma che non trovo più.

Al selettore davano dei valori personalizzati (0,1,2,4,8,16,32,64) e associavano 8 lampade con gli indirizzi LW-000, LW-001, LW-002...fino a LW-007. 

Io con 3 posizioni non ci riesco, dove sbaglio?

Link al commento
Condividi su altri siti

Ti ringrazio,

potresti spiegarmi la logica che c'è dietro?

Sono un novello del settore.

Perché poi, prima di toccarlo per la prima volta, è tutto spento? Non sarebbe già di partenza allo stato 0 e quindi dovrebbe accendete la prima lampada?

Modificato: da Alb000
Link al commento
Condividi su altri siti

Simone.Salarsi

Questo in particolare l'ho fatto io al volo, però trovi molti altri esempi applicativi direttamente nella sezione download sul sito ufficiale Weintek

Link al commento
Condividi su altri siti

Simone.Salarsi

La logica è sviluppata sulla tua richiesta.

Ho legato la variabile LW0 al selettore multistato. Ad ogni stato del selettore ho associato un valore (1,2,4) in modo da "alzare" solo un bit alla volta.

Le singole lampada vanno poi a leggere i primi bit di LW0 tramite l'indirizzo LW_bit 00x

 

image.thumb.png.d7d634a50bff767a1b1e12d3c372cd21.png

 

image.png.c734a1b442e1f9b4422e38274f52f727.png

 

 

 

All'avvio della simulazione la prima lampada è spenta perchè LW0 non è valorizzato, o per meglio dire ha valore 0.

Chiaramente con valore 0 tutti i bit della word saranno anch'essi a zero.

 

Eventualmente si potrebbe valorizzare LW0 all'avvio, però devi vedere tu a cosa serve e come deve essere gestito questo selettore

 

 

 

Link al commento
Condividi su altri siti

Ti ringrazio,

non capisco la logica della sequenza 1-2-4...sono potenze di 2 ma perché? Non ho mai programmato, questo è il mio primo approccio a questo mondo, immagino c'entri il sistema binario, ma le mie primitive conoscenze risalgono a 15 anni fa...

Link al commento
Condividi su altri siti

Fai a mente una MB del S5, se il bit0 è a uno e trasformi in decimale ottieni 1, bit 1 sarebbe 2, bit 2 sarebbe 4..... ec  2^x, quindi la visualizzazione dello stato dipende dal bit..

Link al commento
Condividi su altri siti

Simone.Salarsi

è appunto il sistema binario, la base della programmazione che è il minimo da conoscere per approcciare questo mondo.

ti lascio il link da studiare che sicuramente sarà più esaustivo delle mie parole.

https://it.wikipedia.org/wiki/Sistema_numerico_binario

 

ma il concetto è quello espresso da @max.bocca

 

se scrivo 1 in decimale dentro ad un byte otterrò in binario 0000 0001 in questo modo puoi attivare lampada1

se scrivo 2 = 0000 0010, si attiva lampada 2

se scrivi 3 = 0000 0011 si attiverebbero sia lampada1 che lampada2

 

e così via

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