LOGICA IN JAVA PER SCU

Documenti analoghi
ISTITUTO OMNICOMPRENSIVO ROSSELLI-RASETTI CASTIGLIONE DEL LAGO Indirizzo Tecnico Tecnologico Settore Meccanica, Meccatronica e Energia

5 INSOLITI IMPIEGHI DEL 555

I Bistabili. Maurizio Palesi. Maurizio Palesi 1

Flip-Flop. Tipo Set/Reset. É il tipo più semplice di circuito sequenziale. Una realizzazione in logica NOR é rappresentata in figura:

LOGICA SEQUENZIALE. Un blocco di logica puramente combinatoria è un. blocco con N variabili di ingresso e M variabili di uscita

Programmazione dei PLC in linguaggio Ladder

G&G ESEMPIO1 PROGRAMMAZIONE Progetto FACILEPLC Pag. 1 di 6

Circuiti di commutazione, codifica e decodifica

SCHEDA PRODOTTO IO2-88C-DR0-C (centralizzato).

Elementi di memoria Ciascuno di questi circuiti è caratterizzato dalle seguenti proprietà:

Pluto Manager. Pluto Manager 4/2. Manuale della sicurezza ABB 2TLC172001C0202 4/1

Laboratorio di Architettura degli Elaboratori A.A. 2016/17 Circuiti Logici

Luigi Piroddi

Indice Introduzione Avviso importante per i lettori Capitolo 1 Apparecchi di manovra, di protezione e sensori

Circuiti sequenziali e latch

Elettronica Sistemi Digitali 09. Flip-Flop

Fred Myo 2 Plus. Ricevitore radio a 2 canali impostabili separatamente come monostabili, bistabili o temporizzati. MANUALE DI ISTRUZIONI

Circuiti sequenziali

rea 19 November possibilità di adattare l' impianto alle diverse esigenze produttive, semplicemente modificando o sostituendo il programma.

Le reti sequenziali sincrone memorizzano il proprio stato in dei FF-D

Tecnica basata su Relazioni I/O Circuito di Clock

Circuiti sequenziali. Circuiti sequenziali e applicazioni

Flip-flop e loro applicazioni

Macchine sequenziali

Ministero dell Istruzione, dell Università e della Ricerca Ufficio Scolastico Regionale per la Sardegna

SCHEDA PRODOTTO IN/OUT DIGITALI (distribuiti).

LATCH E FLIP-FLOP PREMESSA

Esercizi sulle Reti Sequenziali Sincronizzate

I CONTATORI. Definizioni

Calcolatori Elettronici

AB=AB. Porte logiche elementari. Livello fisico. Universalità delle porte NAND. Elementi di memoria: flip-flop e registri AA= A. Porta NAND.

AXO Architettura dei Calcolatori e Sistemi Operativi. reti sequenziali

SISTEMI PER L INDUSTRIA E PLC 28/03/18 Teoria, 30minuti, Minimo 4 punti su 12 di Programmazione

Giovanni Schgör (g.schgor)

Circuiti antirimbalzo

anno scolastico 2009 / 2010 ELETTRONICA per Elettrotecnica ed Automazione

Elementi di memoria. Ing. Ivan Blunno 21 aprile 2005

Reti Logiche T. Esercizi reti sequenziali sincrone

PROGRAMMAZIONE DIPARTIMENTO T.E.E.A. CLASSE IV. (opzione: Manutentore Meccanico)

Y = A + B e si legge A or B.

K-19. Funzioni della vasca idromassaggio

INFORMATICA INDUSTRIALE

SCHEDA PRODOTTO INGRESSI DIGITALI (distribuiti).

LATCH E FLIP-FLOP PREMESSA

GATE SR Centrale di automazione per Serrande Manuale di installazione

PORTE LOGICHE. Si effettua su due o più variabili, l uscita assume lo stato logico 1 se almeno una variabile di ingresso è allo stato logico 1.

Reti Logiche 1. Prof. B. Buttarazzi A.A. 2009/2010. Elementi di memoria

PROGRAMMA DEL CORSO DI LABORATORIO TECNOLOGICO ED ESERCITAZIONE CALASSE 4^N A.S 2014/2015 OBBIETTIVO CONOSCERE:

Competenze di ambito Prerequisiti Abilità / Capacità Conoscenze Livelli di competenza

CIRCUITI DIGITALI. La grandezza fisica utilizzata nella maggior parte dei circuiti digitali è la differenza di potenziale (tensione).

(competenze digitali) CIRCUITI SEQUENZIALI

OBBIETTIVO CONOSCERE:

Laboratorio di Sistemi e Segnali AA 2017/18 Esonero 2, Soluzioni A

SISTEMI PER L INDUSTRIA E PLC 10/01/18 Teoria, 30minuti, Minimo 4 punti su 12 di Programmazione

62/8=,21,'(*/,(6(5&,=,

SIMULATORE DI PARCHEGGIO A DUE ZONE DL 2120RM. Laboratorio di Automazione

CENTRALE DI RIVELAZIONE E SPEGNIMENTO INCENDI EUROPA CF4E-S MANUALE UTENTE. Dicembre 2003 REV 1

SIMBOLO ELETTRICO. K1 contatti. bobina RELÈ

SIMULATORE DI SEMAFORO INTELLIGENTE DL 2121RM. Laboratorio di Automazione

I Circuiti combinatori: LOGISIM

Un quadro della situazione. Lezione 9 Logica Digitale (3) Dove siamo nel corso. Organizzazione della lezione. Dove siamo. Dove stiamo andando..

CIRCUITI COMBINATORI

Modelli per le macchine digitali

Registri. Registri semplici

Progetto di Contatori sincroni. Mariagiovanna Sami Corso di reti Logiche 8 Anno

Corso di studi in Ingegneria Elettronica A.A. 2006/2007. Calcolatori Elettronici. Esercitazione n 2

LETTORE BLUETOOTH 57400

DISCIPLINA: TECNOLOGIE E PROGETTAZIONE DI SISTEMI ELETTRICI ED ELETTRONICI CLASSE DI CONCORSO: A035 - C270

Competenze di ambito Prerequisiti Abilità / Capacità Conoscenze Livelli di competenza

07/12-01 PC Lettore di Prossimità Sfera. Manuale installatore

Livello logico digitale

Esercizi Logica Digitale,Circuiti e Bus

Automazione e territorio

Lab. T.P.S.E.E. - ITT Cerulli

PLC Sistemi a Logica Programmabile Il linguaggio AWL istruzioni di base

ESAME DI ARCHITETTURA I COMPITO A

PSPICE Circuiti sequenziali principali

Logica binaria. Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna

VMB1RY. Modulo relé per sistema VELBUS. Velbus manual VMB1RY edition 1

Il Software programmabili programma algoritmo

APPUNTI DI ELETTRONICA DIGITALE

Programmable Logic Controller. Ing. Stefano MAGGI

Circuiti Sequenziali

Esercizio 1.A Aritmetica binaria (nel presentare le soluzione mostrare, almeno nei passaggi piú significativi, i calcoli eseguiti) (3 punti)

Reti logiche (2) Circuiti sequenziali

Corso di Calcolatori Elettronici I Flip-flop

I FLIP FLOP: COMANDARE DUE LUCI CON UN SOLO PULSANTE

Un contatore è un registro che evolve secondo una sequenza predefinita di stati ordinati all applicazione di un impulso di ingresso

MODULO 2 ELEMENTI DI PROGRAMMAZIONE DEL PLC S SIEMENS PARTE PRIMA IL LINGUAGGIO A CONTATTI

Reti logiche (2) Circuiti sequenziali

Algebra Booleana. 13. Rif:

INDICE 1 - CARATTERISTICHE DEL PRODOTTO

Riassumendo quello che già è stato descritto precedentemente, possiamo dire che:

1043/277. Sch 1043/277

Giovanni Schgör (g.schgor)

ANALISI E PROGETTO DI CIRCUITI SEQUENZIALI

Introduzione. Progetto di Contatori sincroni. Contatori definizioni caratteristiche. Contatori

Flip flop: tempificazione latch ed edge-triggered

Transcript:

Giovanni Schgör (g.schgor) LOGICA IN JAVA PER SCU 8 June 2011 Proseguendo nell'illustrazione di programmi tipici per le applicazioni dello SCU (vedi precedente), si vuole qui esaminare la possibilità di utilizzare la scheda di valutazione per funzioni tipiche di un PLC. Ovviamente la grande differenza sta nella forma di programmazione: non Ladder(KOP) né AWL, ma direttamente in linguaggio JAVA. Operazioni logiche Entriamo subito in argomento con un programma che mostra l'uso delle 3 funzioni logiche fondamentali (NOT, AND,OR) fra 2 variabili (booleane) A e B, fisicamente rappresentate dallo stato degli interruttori d'ingresso RC4 ed RC5: Come ormai dovrebbe essere noto dalla lettura del precedente articolo, è necessario dichiarare le variabili in gioco nell'apposito spazio del programma Base_SCU_EVB ed LOGICA IN JAVA PER SCU 1

incollare nello stesso il testo fra Loop e Fine Loop. Avviando il programma di base, si hanno le accensioni dei LED d'uscita della scheda (RB4, RB5, RB6) in corrispondenza degli stati degli ingressi A e B, in accordo con le rispettive operazioni logiche svolte. Sulla notazione delle funzioni logiche, non resta che prenderne atto ed imparare ad utilizzarle (se i concetti sono chiari, la simbologia non è certo un problema). Si sottolinea la struttura del programma che, come nei PLC, è costituita da una prima parte di "lettura degli ingressi", da una seconda di "logica" (il programma di controllo vero e proprio) e da una terza per "l'attivazione delle uscite". Si consiglia di mantenere questa struttura in tutte le applicazioni. Dopo aver avviato il programma, si raccomanda di eseguire tutte le combinazioni di stato della variabili d'ingresso e di verificare sui relativi LED gli stati delle singolo uscite: è così possibile costruire una tabella della verità, verificando ciascuna funzione. Per completare il quadro delle operazioni logiche possiamo aggiungere le cosiddette funzioni derivate (NAND,NOR,XOR). Per questo basta sostituire la parte centrale del programma con le istruzioni seguenti: Anche con queste funzioni si consiglia di "verificare con mano" le corrispondenti nuove tabelle della verità. Con ciò abbiamo la possibilità di "programmare" qualsiasi problema di logica combinatoria (e il risultato non è davvero da poco!). Esempio di applicazione Supponiamo un impianto con 2 pompe che devono mantenere pieno un serbatoio. La prima (P1) è la principale e la seconda (P2) è di emergenza, dovendo intervenire solo se la prima è in blocco. Ciascuna pompa è infatti dotata di un contatto di abilitazione che, se chiuso, ne permette la marcia: chiamiamo questi contatti AbP1 e AbP2. Se entrambi aperti (quindi impossibilità di marcia per entrambe le pompe) deve essere dato un allarme mediante LED lampeggiante. Il riempimento del serbatoio è inoltre segnalato da 2 contatti di livello (Liv1 e Liv2, uguali e ridondanti) e la chiusura di almeno uno dei due arresta la pompa che è in quel momento è in marcia. LOGICA IN JAVA PER SCU 2

Sia chiaro che non propongo di fare il controllo di due pompe con un PC (!), ma l'approccio con la scheda in questione è (coma già dichiarato) propedeutico all'uso di microcontrollori: l'attuale tecnologia spinge infatti ad utilizzare sempre meno hardware e sempre più software. E' dunque in quest'ottica che la scheda "didattica" può essere assunta come simulatore del controllo dell'impianto. Si può ed es. assegnare a due LED (RC4 ed RC5) la simulazione della marcia (LED acceso) di ciascuna pompa, e ad un terzo LED (RC7)la funzione di allarme, mentre gli ingressi possono essere rappresentati dagli interruttori (RB4 ed RB5 per le abilitazioni e RB6 ed RB7 per i contatti di livello). Abbiamo ora tutti gli elementi sufficienti a scrivere un programma di controllo che risponda alla "specifica" data, ma si lascia questo compito al lettore che potrà verificare direttamente sulla scheda il comportamento del programma stesso. Logica sequenziale La logica combinatoria non è quasi mai sufficiente per svolgere problemi di automazione: occorre introdurre il concetto di "memorizzazione dei segnali", quindi le configurazioni tipiche della logica sequenziale. Si ricorda che la differenza fra combinatoria e sequenziale è che nella prima gli stati delle uscite sono univocamente definite dagli stati degli ingressi, mentre nella seconda la configurazioni delle uscite può differire a parità di configurazione degli ingressi. Essenzialmente un circuito di memorizzazione è realizzato con FlipFlop che nella sua forma più semplice è comandato da due segnali (Set e Reset, quindi indicato come SR-FF). Già questo può coprire gran parte delle applicazioni (altri tipi più sofisticati di FF, saranno visti in seguito), aggiungendo però almeno un altro dispositivo: il temporizzatore (o monostabile). SR-FF Il circuito ad elementi NOR che realizza un Set/Reset-FlipFlop è ben noto (2 NOR con collegamenti incrociati, i rispettivi ingressi S ed R e le uscite NOT(Q) e Q). La versione in Java non è altro che l'espressione ricavata da questo circuito, a cui devono aggiungersi la letture degli ingressi (rispettivamente pulsante RC0 per il Set ed il pulsante RC1 per il Reset), nonché il comando dell'uscita (il LED RB4 per Q): LOGICA IN JAVA PER SCU 3

Con l'avviamento del programma si può infatti constatare che un breve impulso su S fa accendere Il LED RC4 e questo rimane acceso fino a che non si dà un impulso su R. E' questa la versione elettronica dei classici relè con contatto di ritenuta (tipici dei circuiti di Marcia/Arresto a pulsanti) e una sua applicazione può trovarsi nel completamento dell'esempio di automatismo visto prima: gli stessi pulsanti della scheda possono avviare od arrestare la marcia della pompa destinata al riempimento del serbatoio, secondo la logica specificata. Monostabile Altro fondamentale elemento per dispositivi di automazione è il circuito monostabile, che è l'equivalente del classico "relè temporizzato", oppure della particolare configurazione di un 555. Ne esistono diverse versioni, fra le quali qui è sviluppata quella che viene attivata dal fronte d'onda del segnale di ingresso, e l'uscita rimane attivata per il tempo stabilito, indipendentemente dalla durata del segnale d'ingresso. Il programma relativo è il seguente: LOGICA IN JAVA PER SCU 4

dove A è il segnale d'ingresso (supposto dato dall'ingresso a pulsante RC0)e Ar l'immagine che permette il rilevamento del fronte d'onda positivo. All'arrivo di questo si attiva un timer (lo [0]) impostandolo al tempo (in decimi di secondo) di ritardo voluto (qui 3s), e di conseguenza si mantiene attivato per questo tempo l'uscita (LED RB4) T-FlipFlop Benchè non altrertanto fondamentale come i precedenti, vale però la pena di considerare anche il dispositivo la cui uscita cambia ad ogni impulso ricevuto all'ingresso: in elettronica è noto come T-FlipFlop, ed è l'equivalente del relè passopasso, utile per quelle applicazioni che richiedono ad es. avviamento ed arresto comandatii da un solo pulsante. Il programma corrispondente è: dove si sono mantenute le sigle convenzionali di CK (per l'ingresso o clock) e di Q per l'uscita (Cp è una variabile ausiliaria che permette, come già visto nel paragrafo precedente, il rilevamento del fonte d'onda positivo). LOGICA IN JAVA PER SCU 5

Il funzionamento può essere verificato inviando impulsi sul pulsante RC0: con un impulso si accende il LED RB4, con il successivo si spegne. In elettronica il T-FF è alla base del conteggio (binario asincrono), ma con il software è più semplice ed immediato incrementare una variabile (intera) ed avere il conteggio direttamente in decimale. Non considereremo quindi l'utilizzo del T-FF come contatore. Conclusioni Si sono esaminati gli elementi fondamentali necessari (e sufficienti) alla realizzazione della maggior parte dei dispositivi di automazione: dovrebbe quindi risultare facile il loro utilizzo in applicazioni concrete (che ovviamente possono andare al di là del semplice uso della scheda didattica). In prossimi articoli verranno illustate funzioni particolari che ampliano l'applicazione dello SCU a problemi di controllo più complessi. Estratto da "http://www.electroyou.it/mediawiki/ index.php?title=userspages:g.schgor:logica-in-java-per-scu" LOGICA IN JAVA PER SCU 6