Vai al contenuto
PLC Forum


Ingressi digitali come numero binario


borisiano

Messaggi consigliati

Buongiorno a tutti, utilizzo da tanti anni un PLC S7 226 prima serie con il quale svolgo semplici funzioni di prova in ambito meccanico.

Avrei bisogno di utilizzare gli alcuni ingressi digitali facendoli diventare un numero intero per validare delle sequenze di un sensore.

Come posso risolvere rapidamente e al meglio questo problerma?

Io lavoro sempre con codice AWL.

 

Grazie per l'aiuto

Link al commento
Condividi su altri siti


Il segnali del sensore mi occupano 5 ingressi digitali (da I0.0 a I0.4).

 

Io pensavo di prendere questo numero binario trasformarlo in intero e confrontarlo con l'intero corretto in ogni situazione.

 

Far attivare un uscita quando il confronto è verificato.

 

Premetto che non sono un programmatore di PLC.

Modificato: da borisiano
dimenticanza
Link al commento
Condividi su altri siti

Potresti prendere tutto il byte IB0, e metterlo in AND con il valore binario 00011111 (31 in decimale, 1F in esadecimale).
Il risultato sarà un valore da 0 a 31.

Link al commento
Condividi su altri siti

2 ore fa, batta ha scritto:

Potresti prendere tutto il byte IB0, e metterlo in AND con il valore binario 00011111 (31 in decimale, 1F in esadecimale).
Il risultato sarà un valore da 0 a 31.

Ho capito il tuo concetto e mi sembra giusto ma non riesco a tradurlo correttamente in codice AWL.

Mi saltano sempre fuori degli errori.

Link al commento
Condividi su altri siti

LD     SM0.0
MOVB   IB0, VB1
ANDB   2#11111, VB1

immagine.png.65624b995d83f215cf42f606ea401708.png

 

SM0.0 è un merker di sistema sempre ON, quindi l'operazione viene eseguita ad ogni ciclo.

Link al commento
Condividi su altri siti

1 ora fa, batta ha scritto:

LD     SM0.0
MOVB   IB0, VB1
ANDB   2#11111, VB1

immagine.png.65624b995d83f215cf42f606ea401708.png

 

SM0.0 è un merker di sistema sempre ON, quindi l'operazione viene eseguita ad ogni ciclo.

Grazie. Ora provo ad usarla in questo modo.

Link al commento
Condividi su altri siti

1 ora fa, batta ha scritto:

LD     SM0.0
MOVB   IB0, VB1
ANDB   2#11111, VB1

immagine.png.65624b995d83f215cf42f606ea401708.png

 

SM0.0 è un merker di sistema sempre ON, quindi l'operazione viene eseguita ad ogni ciclo.

il vecchio caro 200

Link al commento
Condividi su altri siti

520394462_casisensoreposizione.gif.d433e3f164aed631e7081da6dd7f4c51.gif

 

Sto ancora lottando con questo problema, sicuramente stupido, ma ostico per chi non conosce bene le varie istruzioni e possibilità del linguaggio.

Ho capito il senso di quanto suggerito da "batta" ma non riesco a tradurlo correttamente in codice AWL.

Io ho i 4 possibili casi raffigurati in tabella che sono le 4 posizioni di un sensore. Il sensore ha 5 uscite digitali che io metto in ingresso al mio PLC S7-226

Quando queste 4 sequenze di bit si verificano (ognuna nel proprio caso) devo mettere in ON l'uscita Q0.5

 

Non sono ancora riuscito a metterlo in pratica.

 

Ogni vostro aiuto è gradito.

Link al commento
Condividi su altri siti

Batta ti ha fatto vedere creare il numero, adesso in un'altro segmento confronti i 4 numeri se sono uguali a quello quello di BATTA se vero alza l'uscita desiderata.

 

Perché proprio in AWL? Fai prima in Kop, 4 righe di comparatore ==B che VB1 con il numero il tutto in uscita su Q0.5

 

Il 200 io lo rimpiango, ottima macchina Texas!!! 

Link al commento
Condividi su altri siti

Beh confronto al 1200 era un giocattolino ma per il tempo in cui uscì il Texas non era affatto male e ha tirato avanti dignitosamente un bel po', i Texas non li ho mai avuto sottomano i 200 invece dai primi anni 2000

Link al commento
Condividi su altri siti

1 ora fa, max.bocca ha scritto:

Batta ti ha fatto vedere creare il numero, adesso in un'altro segmento confronti i 4 numeri se sono uguali a quello quello di BATTA se vero alza l'uscita desiderata.

 

Perché proprio in AWL? Fai prima in Kop, 4 righe di comparatore ==B che VB1 con il numero il tutto in uscita su Q0.5

 

Il 200 io lo rimpiango, ottima macchina Texas!!! 

Non sono abituato al KOP. Io vengo dai primi PLC degli anni 80 e quando venti anni fa o forse più mi hanno dato in mano questo S7 è stata la cosa più naturale.

Poi in AWL ci sono maggiori possibilità.

Link al commento
Condividi su altri siti

2 ore fa, borisiano ha scritto:

Poi in AWL ci sono maggiori possibilità.

Questo è vero se mi parli di S7-300, ma non per il 200.

E, comunque, anche ci fossero maggiori possibilità, non  servono se non si è in  grado di sfruttarle.

Il 200 comunque, è meglio programmarlo in ladder.

Link al commento
Condividi su altri siti

6 ore fa, batta ha scritto:

l 200 comunque, è meglio programmarlo in ladder.

 

Dipende da cosa fai e dal tuo retroterra culturale; io, ad esempio, l'ho sempre programmato solo in AWL e ho a suo tempo realizzato anche funzioni di automazione non banale.

Link al commento
Condividi su altri siti

10 hours ago, leleviola said:

Beh confronto al 1200 era un giocattolino ma per il tempo in cui uscì il Texas non era affatto male e ha tirato avanti dignitosamente un bel po', i Texas non li ho mai avuto sottomano i 200 invece dai primi anni 2000

Il progetto era Texas la quale è stata acquistata da Siemens.

Si vedeva lontano un miglio che non era un progetto da tedeschi, semplice snello essenziale.

Microwin non si piantava mai,  su qualsiasi PC funzionava.

Il suo erede,  specialmente il Tia, mi ha fatto dannare per anni!

Link al commento
Condividi su altri siti

43 minuti fa, max.bocca ha scritto:

Il progetto era Texas la quale è stata acquistata da Siemens.

Si vedeva lontano un miglio che non era un progetto da tedeschi, semplice snello essenziale.

Microwin non si piantava mai,  su qualsiasi PC funzionava.

Il suo erede,  specialmente il Tia, mi ha fatto dannare per anni!

 

Come non condividere ogni parola di quanto hai scritto!

Il 200 è stato il mio preferito per moltio anni, l'ho spremuto per fare cose .... assurde.

Poi pian piano è stato tedeschizzato.:toobad:

Link al commento
Condividi su altri siti

2 ore fa, Livio Orsini ha scritto:

 

Dipende da cosa fai e dal tuo retroterra culturale; io, ad esempio, l'ho sempre programmato solo in AWL e ho a suo tempo realizzato anche funzioni di automazione non banale.

Per me è così.

Io sono un programmatore principiante ed anche scarso, ma sono abituato al linguaggio scritto. Uso ad esempio anche ARDUINO sempre per piccoli progetti.

Per quanto riguarda i linguaggi grafici mi trovo bene solo con Labview, ma probabilmente è un mio limite.

Di sicuro sia in un caso che nell'altro non sono comunque in grado di sfruttare tutte le possibilità del software e dell'hardware.

 

Stamani riprovo a risolvere il mio problemino. Spero con un pò di freschezza di riuscire nel mio intento.

Al massimo vi chiederò nuovamente aiuto.

 

Grazie per ora dei vostri consigli.

Link al commento
Condividi su altri siti

2 ore fa, max.bocca ha scritto:

Il progetto era Texas la quale è stata acquistata da Siemens.

Si vedeva lontano un miglio che non era un progetto da tedeschi, semplice snello essenziale.

Microwin non si piantava mai,  su qualsiasi PC funzionava.

Il suo erede,  specialmente il Tia, mi ha fatto dannare per anni!

Io lavorando in ambito meccanico posso dire la stessa cosa dei prodotti sul mio lavoro.

I tedeschi sono sempre tremendamente complicati nelle loro soluzioni e in genere non funzionano meglio.

Gli americani sono sempre più semplici ed essenziali ma con soluzioni affidabili e perfettamente funzionali, a volte anche geniali.

Se doveste consigliarmi ora un sistema PLC simile al S7-226, quale scegliereste?

Link al commento
Condividi su altri siti

2 ore fa, max.bocca ha scritto:

Microwin non si piantava mai,  su qualsiasi PC funzionava.

Il suo erede,  specialmente il Tia, mi ha fatto dannare per anni!

No, non esageriamo. Il 200 era essenziale, questo sì, ma questo "essere essenziale" è contemporaneamente un pregio, ma anche un difetto.

In quanto a non piantarsi mai, non è vero nemmeno questo. Ogni tanto qualche crash c'era, e anche la comunicazione con il plc qualche volta dava problemi.
E paragonarlo col TIA, non è possibile, è come voler confrontare un'automobile degli anni '70 con una di oggi. Certo, l'auto anni '70 era molto più semplice, "essenziale", potremmo dire, ma chi preferirebbe, oggi, una vecchia auto ad una nuova? Anch'io, a volte, ricordo con un po' di nostalgia la mia vecchia 500, ma sono, appunto, ricordi nostalgici, che mi riportano indietro di quarant'anni. Mi piacerebbe anche tornare a guidarla, la mia 500, con tanto di doppiette con punta-tacco per le scalate, ma solo per divertimento, non nella vita di tutti i giorni, o per farmi "tutta una tirata da Omaha a Tucson".

 

In quanto a programmare il 200 in lista istruzioni, la lista istruzioni del 200 è solo la traduzione in testo delle istruzioni in ladder, con poche eccezioni. Non è come nel 300, che l'AWL permette di fare cose non possibili in ladder.

Io ho sempre programmato il 300 al 90% in awl, ma il 200 quasi esclusivamente in ladder.

 

Comunque, per risolvere il problema seguendo la strada già intrapresa, bastano 4 comparazioni in OR.

LDB=   VB1, 20
OB=    VB1, 12
OB=    VB1, 18
OB=    VB1, 10
=      Q5.0

 

Modificato: da batta
Link al commento
Condividi su altri siti

48 minuti fa, borisiano ha scritto:

Se doveste consigliarmi ora un sistema PLC simile al S7-226, quale scegliereste?

Se resti in casa Siemens, l'erede del 200 è il 1200. Per programmarlo però ti serve TIA Portal, la cui licenza ha un costo giustificabile solo per un utilizzo professionale e continuativo.
Poi, anche il 1200, come già il suo predecessore, non rientra tra i miei preferiti, se non per lavori molto piccoli. Appena si sale un po' con il numero di I/O, soprattutto se analogici, vale la pena orientarsi su CPU tipo S7-1510/1512.

Se, invece, il tuo obiettivo è il risparmio, potresti volgere la tua attenzione anche a prodotti italiani.
Un ottimo rapporto qualità/prezzo, a mio avviso lo trovi nei prodotti Elsist: l'hardware costa molto poco, ed il sistema di sviluppo è gratuito.
Con, mi pare, 128 euro, acquisti una CPU con porta Ethernet. Sul sito trovi tutti i prodotti con tanto di prezzi.
Ovviamente, è molto più essenziale del TIA Portal, ma non potrebbe essere diversamente.
Bisogna vedere se vuoi o devi stare su prodotti di larga diffusione e di marca blasonata, o se puoi scegliere prodotti meno noti.
 

Modificato: da batta
Link al commento
Condividi su altri siti

33 minuti fa, batta ha scritto:

Se resti in casa Siemens, l'erede del 200 è il 1200. Per programmarlo però ti serve TIA Portal, la cui licenza ha un costo giustificabile solo per un utilizzo professionale e continuativo.
Poi, anche il 1200, come già il suo predecessore, non rientra tra i miei preferiti, se non per lavori molto piccoli. Appena si sale un po' con il numero di I/O, soprattutto se analogici, vale la pena orientarsi su CPU tipo S7-1510/1512.

Se, invece, il tuo obiettivo è il risparmio, potresti volgere la tua attenzione anche a prodotti italiani.
Un ottimo rapporto qualità/prezzo, a mio avviso lo trovi nei prodotti Elsist: l'hardware costa molto poco, ed il sistema di sviluppo è gratuito.
Con, mi pare, 128 euro, acquisti una CPU con porta Ethernet. Sul sito trovi tutti i prodotti con tanto di prezzi.
Ovviamente, è molto più essenziale del TIA Portal, ma non potrebbe essere diversamente.
Bisogna vedere se vuoi o devi stare su prodotti di larga diffusione e di marca blasonata, o se puoi scegliere prodotti meno noti.
 

Ti ringrazio infinitamente per le risposte e per il tuo tempo.

Io non devo mettere in piedi progetti di grandi dimensioni. Il S7-226 lo feci acquistare tanti anni fa per gestire la prova/collaudo di prodotti in ambito trasmissioni industriali dove con 24DI e 16DO ed un mudulo con 4AI e 1AO riuscivo a fare quanto mi serviva.

Ho fatto circa 5-6 progetti abbastanza semplici, dove utilizzo questo PLC con un alimentatore DIN montato dentro una valigia e me ne servo per comandare delle vecchie trasmissioni con una scheda a relay sulle uscite che ho costruito io.

 

Mi piacerebbe invece acquistare un PLC da utilizzare a casa mia principalmente, per dare la possibilità a mio figlio (studente di meccatronica al secondo anno) di entrare nel mondo dei PLC ed imparare a conoscere e programmare questi attrezzi, sperando riesca a farlo meglio di come faccio io.

Quindi il prodotto ideale è qualcosa con poca spesa e tanta resa che possa consentirmi questo.

Magari il fatto che sia un prodotto di larga diffusione è utile per trovare esempi, tutorial e supporto su internet, ma non indispensabile.

Sto anche pensando al limite di acquistare una CPU S7-226 su e-bay dove se ne trovano anche a prezzi modici.

Link al commento
Condividi su altri siti

3 minuti fa, borisiano ha scritto:

Sto anche pensando al limite di acquistare una CPU S7-226 su e-bay dove se ne trovano anche a prezzi modici.

Personalmente ti sconsiglio questa strada, perché il 200 e MicroWin non si usano più.
Vero che le basi della programmazione sono sempre le stesse, ma imparare su un prodotto in disuso non credo sia la scelta migliore.
Da un punto di vista della diffusione, Siemens è sicuramente al primo posto ma, come detto, il costo della licenza del software è fuori dal budget per un uso personale.
Ci sono altri prodotti, sempre di grandi produttori, che costano sicuramente meno (soprattutto come licenza software), ma non li conosco e non saprei cosa consigliarti.
Resta l'opzione Elsist, che potrebbe essere valida, pur essendo un prodotto, per alcuni versi, con caratteristiche che si scostano un po' da quelle di prodotti di più larga diffusione.
Si tratta comunque di un prodotto che, a differenza di MicroWin e del S7-200, rispecchia gli standard attuali. Elemento importante, per esempio, supporta anche il linguaggio strutturato, che è sempre più usato. Il quale linguaggio strutturato poi, offre anche caratteristiche di portabilità superiori agli altri linguaggi usati abitualmente nella programmazione dei plc.

Il prodotto è anche ben curato, con tanto di manualetto nella confezione di ogni singolo modulo, e documentazione reperibile sul sito.

Per finire, se prodotti delle marche più diffuse sono fuori budget, piuttosto che un S7-200, farei un serio pensierino ai prodotti Elsist.
Dai un'occhiata sul sito ai prodotti serie SlimLine, li troverai sicuramente molto interessanti.
Sempre Elsist propone, come HMI, i pannelli operatore Weintek, altro prodotto con un rapporto prezzo/prestazioni ottimo. E, per fare esercizio, non c'è nemmeno bisogno di acquistare veramente il pannello operatore, perché puoi lanciarlo in simulazione sul PC. Ed anche il software di sviluppo di Weintek è gratuito.

Link al commento
Condividi su altri siti

16 minuti fa, batta ha scritto:

Personalmente ti sconsiglio questa strada, perché il 200 e MicroWin non si usano più.
Vero che le basi della programmazione sono sempre le stesse, ma imparare su un prodotto in disuso non credo sia la scelta migliore.
Da un punto di vista della diffusione, Siemens è sicuramente al primo posto ma, come detto, il costo della licenza del software è fuori dal budget per un uso personale.
Ci sono altri prodotti, sempre di grandi produttori, che costano sicuramente meno (soprattutto come licenza software), ma non li conosco e non saprei cosa consigliarti.
Resta l'opzione Elsist, che potrebbe essere valida, pur essendo un prodotto, per alcuni versi, con caratteristiche che si scostano un po' da quelle di prodotti di più larga diffusione.
Si tratta comunque di un prodotto che, a differenza di MicroWin e del S7-200, rispecchia gli standard attuali. Elemento importante, per esempio, supporta anche il linguaggio strutturato, che è sempre più usato. Il quale linguaggio strutturato poi, offre anche caratteristiche di portabilità superiori agli altri linguaggi usati abitualmente nella programmazione dei plc.

Il prodotto è anche ben curato, con tanto di manualetto nella confezione di ogni singolo modulo, e documentazione reperibile sul sito.

Per finire, se prodotti delle marche più diffuse sono fuori budget, piuttosto che un S7-200, farei un serio pensierino ai prodotti Elsist.
Dai un'occhiata sul sito ai prodotti serie SlimLine, li troverai sicuramente molto interessanti.
Sempre Elsist propone, come HMI, i pannelli operatore Weintek, altro prodotto con un rapporto prezzo/prestazioni ottimo. E, per fare esercizio, non c'è nemmeno bisogno di acquistare veramente il pannello operatore, perché puoi lanciarlo in simulazione sul PC. Ed anche il software di sviluppo di Weintek è gratuito.

Grazie ancora.

Ho dato un'occhiata ai prodotti ELSIST e li trovo davvero interessanti. Sembrano anche ben fatti.

Oltretutto il fatto che sia un marchio italiano, soprattutto in questo periodo, mi piace ed è un motivo in più per considerarlo.

Probabilmente prenderò questa strada partendo da un modello slim a basso costo. Accetto consigli.

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