Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
INTRODUZIONE La metodologia che studia un fenomeno deve essere tesa a riconoscere le cause che lo provocano, gli effetti che produce e la relazione che lega le cause agli effetti. Si consideri per esempio la figura sottostante: che cosa succede alla resistenza R2 quando si chiude l'interruttore S? Occorre decidere se si vuole conoscere la corrente che circola in R2 oppure la tensione ai suoi capi. Il ragionamento che porta a decidere le cause e gli effetti si chiama orientazione.
Un fenomeno ben individuato quando sono fissati: le cause gli effetti le relazioni tra cause ed effetti l'orientazione dello studio del fenomeno Inoltre, gli effetti di un fenomeno sono dipendenti da molte cause concorrenti, ognuno con un contributo diverso, pertanto per non complicare inutilmente lo studio, occorre definire quali siano le cause importanti e quali trascurabili ai fini della conoscenza dell'evento. Nell'esempio sopra indicato si pu considerare come causa il generatore di tensione e come effetto la corrente che circola nella resistenza R2 e quindi nel circuito. Nello studio non si considerano gli effetti che la temperatura e il tempo esercitano sulle resistenze. Un primo passo consiste nel rappresentare il sistema in osservazione utilizzando uno schema del seguente tipo: E I
In questo schema si utilizza una scatola nera (black box), nella quale si deve inserire la relazione causa ed effetto che al momento non conosciuta. La causa E rappresentata con una freccia entrante nella scatola e l'effetto I (corrente che circola nel circuito), con una freccia in uscita. Applicando la legge di Ohm e la legge di Kirchhoff alle maglie, tra causa ed effetto esiste la seguente relazione: SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 1
I=
E R1 + R2
E 1 R1 + R2
Se si considera come effetto la tensione V ai capi della resistenza R2 anzich la corrente, utilizzando le leggi precedenti si ottiene il seguente schema: E R2 R1 + R2 V
Si supponga di voler calcolare la corrente che circola nel circuito alla chiusura dell'interruttore S. In base al principio di Kirchhoff, I = 11+12 e, poich le resistenze sono in parallelo tra loro e al generatore, segue che: I= E + E = E*( 1 + 1) R1 R2 R1 R2 considerando che 1 = 1 + 1 RT R1 R2 si pu scrivere I= E RT
dove RT rappresenta la resistenza equivalente alle due resistenze R1 e R2 in parallelo. In questo esempio il metodo funziona perch le reazioni tra fenomeno composto e i fenomeni elementari componenti sono dello stesso tipo. Consideriamo per esempio le squadre di calcio: se fosse sempre vero il metodo analitico non ci sarebbe bisogno di disputare un torneo dal momento che sarebbe vincente la squadra che ha i migliori giocatori. Per a volte squadre considerate minori riescono a battere squadre considerate sulla carta superiori. Occorre infatti considerare anche l'affiatamento, l'ambientamento, cio come si dice pi tecnicamente l'interazione tra i componenti. Una squadra rende al massimo quando tutti i suoi componenti collaborano per raggiungere l'obiettivo. Si pu affermare che, perch una collezione di oggetti possa essere considerata sistema, bisogna che SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 2
gli oggetti interagiscano per un fine comune prefissato. Tre persone vicino ad una macchina non fanno sistema, ma le stesse tre persone quando spingono la vettura per farla partire, formano un sistema perch interagiscono per raggiungere lo scopo prefissato. La definizione di sistema quindi la seguente: Il sistema un insieme di oggetti o sottosistemi, che interagiscono tra di loro e scambiano energia, informazione o materia con l'ambiente esterno allo scopo di raggiungere un obiettivo prefissato
Sistemi naturali: sono i sistemi gi presenti in natura come il sistema planetario, il sistema delle
maree, dei venti.
Sistemi artificiali: sono i sistemi opera delluomo, per esigenze organizzative o per bisogni personali: per esempio il sistema di distribuzione dell'energia elettrica, il sistema di elaborazione dei dati, il sistema scolastico, il sistema economico, il sistema televisivo, il sistema automobile, il sistema bancario, il sistema giudiziario. Sistemi misti: sono i sistemi risultanti dall'intervento dell'uomo su fenomeni naturali. Per
esempio il sistema di produzione del sale marino dove l'acqua del mare viene raccolta in vasche create dall'uomo, il sistema di trasformazione e produzione dellenergia elettrica (ad es. pensare alle centrali idro-elettriche, centrali eoliche e solari). In base alla loro struttura i sistemi possono essere:
Sistemi discreti: sono sistemi per quali il mancato funzionamento di una parte non pregiudica il
funzionamento dell'intero sistema. Per esempio in un supermercato, la momentanea mancanza di un prodotto non blocca il funzionamento dell'intero supermercato. In un appartamento, possibile abilitare/disabilitare le varie parti dellimpianto elettrico mediante interruttori (es. un interruttore dedicato alle prese di ciascun piano, un interruttore dedicato alle prese di potenza del locale cucina, un interruttore dedicato ai punti luce di ciascun piano..): il fuori servizio di una sezione non condiziona il resto dellimpianto. SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 3
Sistemi aperti: Indicando con ambiente esterno tutto ci che non appartiene al sistema, si
definiscono aperti sistemi che scambiano informazione, energia e materia con l'ambiente esterno. I sistemi meccanici, i sistemi e elettrici, i sistemi informatici sono tutti esempi di sistemi aperti. Un esempio di sistema aperto un qualsiasi elettrodomestico perch per funzionare ha bisogno di energia elettrica.
Sistemi chiusi: sono sistemi che non hanno un contesto, cio non interagiscono con l'ambiente
esterno. In realt non esistono sistemi chiusi in senso stretto, perch qualsiasi sistema agisce comunque in un contesto e ne viene in qualche modo influenzato. Per esempio un deposito bancario, anche se non sottoposto a versamenti o prelevamenti, subisce comunque una variazione dei tassi di interesse che ne modificano il comportamento costituto dall'ammontare del deposito. Quindi un sistema si pu considerare chiuso quando le interazioni con lambiente sono trascurabili rispetto al comportamento studiato. Es. lUniverso.
Sistemi combinatori o senza memoria: sono i sistemi che forniscono la stessa risposta in
conseguenza della stessa sollecitazione d'ingresso. Per esempio un circuito logico, costituito da sole porte logiche, fornisce la stessa uscita (stesso/i valore/i di uscita) quando sollecitato con gli stessi valori di ingresso. In un sistema combinatorio il comportamento del sistema dipende solo dallultimo stimolo ricevuto. I sistemi combinatori non sono in grado di immagazzinare energia, materia o informazione: sono cio sistemi senza memoria. Un esempio di sistema combinatorio il telefono, in cui lultimo numero telefonico immesso indipendente da tutti quelli fatti in precedenza.
Sistemi sequenziali o con memoria: sono sistemi in cui le uscite variano in funzione delle
sollecitazioni fornite dall'esterno e dallo stato in cui si trova il sistema (che a sua volta dipende dalla sequenza degli stimoli ricevuti). Nel sistema ascensore, premendo un pulsante relativo a un piano, esso pu salire, scendere o restare fermo in funzione del piano di partenza. Sono sistemi con memoria, cio in grado di immagazzinare energia, materia o informazione. Il distributore di lattine sequenziale e fornir o meno la lattina a seconda della somma inserita fino a quel momento.
Sistemi deterministici: sono sistemi dei quali si possono prevedere le uscite se sono noti gli ingressi. Ossia nelle stesse condizioni (partendo dalle stesse condizioni iniziali e subendo gli stessi stimoli) il sistema si comporta allo stesso modo. Pensare alle caratteristiche che ogni algoritmo deve possedere per essere tale: deve essere deterministico. Per esempio in un computer, posizionando l'interruttore generale su ON, si provoca lavvio del sistema; nel sistema auto un'azione sul volante produce l'effetto, prevedibile, di far cambiare verso alla direzione dell'auto. Sistemi probabilistici (o stocastici): sono sistemi. per i quali non possibile prevedere il
comportamento note le sollecitazioni, oppure che hanno comportamenti diversi se sottoposti alle stesse sollecitazioni. Ossia nelle stesse condizioni si comporta in modo casuale e non prevedibile. Appartengono a questa categoria i sistemi che forniscono uscite diverse quando sono sottoposti alle stesse sollecitazioni, per esempio il lancio di una moneta o di un dado.
Sistemi statici: sono i sistemi in cui le grandezze che descrivono il comportamento non evolvono (hanno sempre lo stesso valore) durante il periodo di osservazione dello studio. Per esempio nel sistema dei continenti lo spostamento praticamente nullo. Nella realt non esistono sistemi statici in
SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 4
senso stretto, perch tutte le grandezze fisiche di un sistema subiscono variazioni nel tempo anche se su periodi molto lunghi: la parola statico quindi riferita al tempo di osservazione. Quindi quando si parla di sistemi statici, ci si riferisce a sistemi che non cambiano con il tempo. In realt, il comportamento del sistema potrebbe degradarsi o deteriorarsi nel tempo, ossia non reagire pi allo stesso modo ai valori di ingresso: si parla di sistemi varianti. Ad es. pensando allimpianto idrico di un appartamento, supponendo che la portata dacqua in ingresso rimanga costante, negli anni si potr osservare un flusso di acqua ridotto in uscita dai rubinetti (a causa di rottura di tubi, incrostazioni di calcare nei filtri ecc..).
Sistemi dinamici: sono sistemi per le quali le grandezze che descrivono il comportamento
variano durante il periodo di osservazione. Le propriet di sistema statico o dinamico sono relative alla scala dei tempi adottata. Per esempio nel sistema costituito da una molla con un'estremit fissata in un punto, se nell'estremit libera si applica una forza, nel periodo compreso tra il momento di applicazione della forza e il momento in cui la molla raggiunge il nuovo punto di equilibrio, la lunghezza della molla varia: nel periodo dell'osservazione il sistema molla un sistema dinamico. Nel periodo successivo la lunghezza della molla non cambia e quindi il sistema diventa statico.
Sistemi invarianti o stazionari: sono i sistemi per i quali l'uscita si comporta sempre allo
stesso modo, indipendentemente dal momento in cui il sistema sottoposto a una certa sollecitazione. In pratica. applicando un ingresso all'istante t oppure all'istante t + t, l'uscita la stessa. Per esempio, girando la chiave di accensione dell'automobile a mezzogiorno o a mezzanotte, si ottiene sempre come risposta l'avvio del motore. Questo non esclude che il sistema non possa evolvere nel tempo: per evoluzione del sistema si intende il cambiamento delle uscite nel tempo in conseguenza degli ingressi, che la caratteristica dei sistemi dinamici.
Sistemi continui: sono i sistemi in cui tutte le grandezze fisiche variano in modo continuo nel
tempo. In ogni istante le grandezze sono diverse da ogni istante precedente per quanto per quanto piccolo possa essere l'intervallo di osservazione. Praticamente sono i sistemi in cu l'insieme di definizione delle variabili pu essere messo in corrispondenza biunivoca con i numeri reali. La rappresentazione di un sistema continuo sul piano cartesiano, con tempo sullasse x e risposta sullasse y, una funzione continua. Per esempio un'autovettura che viaggia cambia ad ogni momento la sua posizione; oppure il sistema idraulico, costituito da un serbatoio d'acqua che deve essere svuotato, rappresenta un sistema continuo, considerando come grandezza di uscita il livello dell'acqua nel serbatoio.
Sistemi discreti: sono i sistemi che hanno un numero finito di condizioni (o stati) e/o in cui almeno una grandezza fisica pu assumere valori discreti.. Per i sistemi discreti l'insieme di definizione delle variabili pu essere messo in corrispondenza biunivoca con l'insieme dei numeri interi. La rappresentazione di un sistema discreto sul piano cartesiano, con tempo sullasse x e risposta sullasse y, una sequenza di punti isolati. Per esempio nel sistema ascensore, quando la cabina raggiunge un piano vi resta, fino a quando non viene impostato un nuovo numero nella tastiera di selezione; oppure nel sistema orologio digitale l'indicazione dell'ora scatta ad ogni secondo.
NOTA: Come si pu intuire un sistema si classifica in base a natura, struttura e comportamento; per quanto attiene il comportamento un sistema pu appartenere a pi categorie. Ad es. il telefono un SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 5
sistema artificiale, discreto, deterministico; combinatorio (in quanto ogni numero telefonico completo immesso non dipende da quelli composti precedentemente) ma allo stesso tempo sequenziale se consideriamo una per una le cifre dello stesso numero telefonico (per cui le ultime cifre identificheranno un utente in base al prefisso).
Esempio 1 - Analogia tra un sistema elettrico e un sistema meccanico Si consideri il modello matematico del resistore:
V= R * I Il modello matematico che esprime la legge d Ohm vale anche quando le grandezze variano ne tempo. Considerando il valore della tensione a un certo istante t si pu scrivere (equazione 1) V(t) = R * I(t) dove: V [volt]: tensione ai capi di un resistore I [Amperel: corrente che attraversa il resistore R [V/A o Ohm]: resistenza caratteristica del resistore
Un comportamento analogo si pu trovare nel sistema meccanico di un ammortizzatore durante il moto traslatorio
Il modello matematico del sistema dato dalla seguente relazione (equazione 2):
Pagina 6
v= 1 *F
dove: v [m/s]: velocit di traslazione F [Newton] forza di reazione allo spostamento di velocit [Newton/(m/s)]: coefficiente viscoso
Confrontando i due sistemi, mediante il raffronto delle rispettive equazioni (equazione 1 ed equazione 2), si possono ricavare le seguenti analogie: alla velocit di traslazione v corrisponde la tensione V; al coefficiente di attrito viscoso corrisponde la conduttanza elettrica G = 1/R (inverso della resistenza); alla forza di reazione F corrisponde la corrente I. Il sistema meccanico ammortizzatore pu quindi essere studiato come sistema elettrico resistore sostituendo le variabili secondo la giusta analogia e utilizzando le unit di misura corrette.
Lequazione precedente formalmente analoga alla legge di Ohm: R * I = V Le grandezze che si corrispondono sono: la differenza di potenziale con la differenza di temperatura; l'intensit di corrente con la potenza termica, la resistenza elettrica con la resistenza termica Questa analogia pu essere descritta nel seguente modo: In un corpo materiale l'intensit di corrente fluisce dal punto a potenziale pi alto verso il punto a potenziale pi basso, proporzionale alla differenza di potenziale e dipende dalla struttura del corpo materiale. La costante di proporzionalit, corrispondente al rapporto tra differenza di potenziale e 1'intensit di corrente, si chiama resistenza elettrica. Sostituendo le parole intensit di corrente con potenza termica, potenziale con temperatura, ed elettrico con termico, si ottiene la seguente descrizione analoga per i sistema termici. In un corpo materiale la potenza termica fluisce dal punto a temperatura pi alta verso un punto a temperatura pi bassa, proporzionale alla differenza di temperatura e dipende dalla natura fisica del corpo. La costante di proporzionalit, corrispondente al rapporto tra differenza di temperatura e la potenza termica, si chiama resistenza termica.
volume occupato dal liquido in funzione della variazione delle portate Q e quindi dellaltezza.
Indicando con Q la differenza tra le due portate Q2 - Q1 si ha Q= V/ t cio la variazione delle portate implica una variazione lineare del volume del liquido. Sapendo che fa variazione di volume data dalla formula: V = S2 * * h /4 (essendo S il diametro della sezione del serbatoio), facendo le opportune sostituzoni nella formula, si ricava: Q * t = S2 * * h /4 Indicando con A la parte costante della formula (ossia A = S2 * /4) V = A * h Il modello del sistema descritto dallo schema seguente: h V
V= Q * t indica la variazione del volume nel serbatoio, quando immessa una quantit di liquido data dalla variazione della portata Q nell'intervallo t. h indica la variazione d livello del liquido nel serbatoio d diametro di sezione S, proporzionale alla variazione di volume V in modo che il rapporto V/h sia la costante A. Si consideri ora il sistema condensatore caratterizzato dalla capacit C. Sapendo che Q = C * V, si pu rappresentare il sistema con seguente modello: Q V
1/C
SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 8
Osservando i modelli relativi ai due sistemi, idraulico ed elettrico, si pu ricavarne lanalogia associando: la variazione di livello h, in conseguenza di una variazione di flusso Q, con la variazione di carica Q del condensatore; la variazione del volume V con la variazione di tensione ai capi del condensatore; la costante A = S2 * /4con l'inverso della capacit 1/C.
I MODELLI
Il modello una rappresentazione semplificata di un sistema fisico, allo scopo di rendere pi semplice lo studio e lanalisi delle sue caratteristiche pi significative, in relazione al contesto in cui opera. Per esempio, per indicare a una persona la casa dove abitiamo, possiamo usare una piantina del percorso (modello): nello schema si possono trascurare il numero e il tipo di edifici e si indicano solamente i nomi delle vie da attraversare. Il percorso indicato diverso seconda che la persona debba fare il tragitto a piedi, in autobus, in treno o in macchina. In questultimo caso occorre fare attenzione alle strade con sensi di circolazione vietata. Quindi, prima di costruire il modello della realt da rappresentare, occorre definire il contesto in modo da selezionare le caratteristiche utili allo studio in oggetto: questo significa che si possono definire diverse rappresentazioni per la stessa realt. In base alla loro utilit i modelli possono essere: Modelli descrittivi: sono modelli che descrivono il sistema, praticamente sono una fotografia de sistema Modelli predittivi: sono modelli che descrivono i servizi che il sistema eroga senza specificarne la modalit Modelli prescrittivi: sono modelli che descrivono la modalit di erogazione di un servizio Per esempio, quando acquistiamo un persona computer, troviamo nella confezione la documentazione che contiene: Modello descrittivo, cio lo schema che mostra i componenti fondamentali del computer Modello predittivo, cio le caratteristiche del processore, la capacit di memoria e cos via Modello prescrittivo, cio le indicazioni operative per attivare un certo servizio, per esempio come si accende il computer oppure come si espande la memoria. I modelli si dividono in modelli fisici e modelli simbolici. I modelli fisici danno una rappresentazione fedele del sistema e raggruppano modelli dei seguenti tipi: iconico e analogico. Modelli iconici: un modello iconico di sistema riproduce in modo proporzionale le caratteristiche del sistema. Un esempio di questo genere il plastico in scala. Modelli analogici: sono modelli che simulano il sistema reale (per esempio, simulatori di volo) o che SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 9
hanno un comportamento analogo a quello del sistema oggetto di studio. I modelli simbolici raggruppano modelli dei seguenti tipi: matematici, logici e trasduttori. I Modelli simbolici danno una rappresentazione astratta del sistema oggetto di studio tramite simboli grafici convenzionali. I modelli simbolici sono comuni perch adatti a molte esigenze, una volta definite le regole e le convenzioni. Un esempio di modello simbolico rappresentato dai simboli utilizzati nei flow-chart, o dagli schemi elettrici che corredano il nostro televisore, o i tabelloni che nelle stazioni ferroviarie indicano il tipo di treno e la sua composizione oltre allorario e alle fermate. Modelli matematici: un modello matematico unespressione matematica contenente equazioni o relazioni che rappresentano il sistema. Per esempio, il calcolo dell'IVA al 20% di un prodotto rappresentato dalla relazione IVA = Prezzo * 20 /100, oppure il calcolo dell'area di un triangolo si ottiene dalia relazione A = Base * Altezza / 2. Pensate alle leggi del moto dei corpi: per studiare il movimento di un carrello in pendenza su una superficie non necessario un tratto di ferrovia collinare dove sperimentare, ma sufficiente utilizzare le espressioni matematiche appropriate. Le relazioni precedenti possono essere rappresentate anche con un grafico, mettendo in ascissa la variabile indipendente (prezzo nel primo caso, base o altezza nel secondo caso) e in ordinata la variabile dipendente (IVA o Area). In alternativa si possono rappresentare le relazioni con una tabella a doppia entrata (come nel tavola pitagorica).
Modelli logici (o algoritmici): rappresentano il comportamento del sistema tramite un algoritmo di simulazione, senza fornire indicazioni sul suo aspetto fisico. Un esempio un programma sorgente in un qualsiasi linguaggio: si descrive cosa deve essere fatto dal processore definendo la logica di procedimento. Modelli trasduttori: un modello trasduttore rappresenta il sistema evidenziandone il suo comportamento (come nel modello logico) anche se tramite grandezze diverse da quelle del sistema reale. Pensate a tutti i sistemi analoghi analizzati negli esempi precedenti.
Un modello, gi usato in precedenza per rappresentare gli esempi di sistema, lo schema a blocchi, che risulta molto utile per evidenziare l'aspetto funzionale di un sistema (cosa
fa), piuttosto che la sua struttura (come fatto). Lo schema a blocchi formato da un blocco rettangolare che rappresenta il sistema, da un insieme di frecce entranti, che rappresentano le sollecitazioni a cui il sistema sottoposto (ingressi), e da un insieme di frecce uscenti, che rappresentano le uscite o risposte del sistema come effetto delle sollecitazioni.
i1 i2 i3 u1
Sistema
u2 u3
La metodologia da utilizzare per rappresentare il sistema secondo lo schema a blocchi deve prevedere SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 10
la distinzione tra le parti del sistema, che interessano lo studio, da tutto quello che non interessa. Il sistema pu trovarsi internamente in pi condizioni diverse tra loro, ossia al suo interno in ogni istante, in base agli ingressi ricevuti fino a quel momento, si trover in un preciso stato. (Pensate ad una macchina distributrice di lattine nella quale possibile inserire monete da 10, 20, 50 cent : il sistema pu essere a riposo, in attesa di ulteriori monete se limporto immesso con una moneta non sufficiente, in distribuzione quando ha ricevuto tutto limporto necessario). Successivamente occorre definire le grandezze che condizionano il sistema relativamente allo studio che si vuole fare. Tra queste grandezze devono distinguere quelle che si possono modificare direttamente o indirettamente (variabili), da quelle che non si possono modificare, nel senso che sono prefissate (parametri) e restano costanti per tutto il periodo di osservazione. Le variabili modificabili direttamente si chiamano ingressi (variabili indipendenti), quelle che cambiano in conseguenza degli ingressi si chiamano uscite (variabili dipendenti). DEFINIZIONI Le variabili dingresso di un sistema sono le grandezze che devono fornite al sistema come sollecitazione o comando. I valori degli ingressi di un sistema sono tutti i valori che pu assumere ciascuna delle variabili di ingresso. Le variabili duscita di un sistema sono le grandezze ottenute come risposta ai valori di ingresso. I valori delle uscite di un sistema sono tutti i valori che pu assumere ciascuna delle variabili di uscita. Lo stato del sistema linsieme delle informazioni sufficiente a fornire un quadro completo della situazione interna al sistema in ogni singolo istante t. FORMALIZZAZIONE Il primo passo nellanalisi di un sistema consiste nel definire completamente i seguenti insiemi: I insieme delle variabili di ingresso VI insieme dei valori che possono assumere le variabili di ingresso U insieme delle variabili di uscita VU insieme dei valori che possono assumere le variabili di uscita S insieme degli stati T insieme dei tempi in cui avviene losservazione del sistema. In un sistema dinamico, con il trascorrere del tempo si ha una evoluzione del sistema (processo). Levoluzione del sistema pu essere descritta da leggi o relazioni che permettono di determinare in ogni istante lo stato in cui si trover il sistema e il valore delle uscite in funzione dello stato attuale del sistema e delle variabili di ingresso. Per meglio comprendere il legame che intercorre tra le variabili di ingresso, le variabili duscita e gli stati, immaginiamo che linterno del sistema sia costituito da 2 scatole: la prima scatola riceve gli ingressi e agisce sullo stato del sistema la seconda scatola riceve in ingresso il nuovo stato del sistema e agisce di conseguenza producendo valori in uscita. Ci che verr prodotto globalmente dal sistema luscita della seconda scatola.
Pagina 11
Il sistema completamente individuato quando, oltre agli insiemi gi elencati, vengono definite le seguenti funzioni: funzione di transizione degli stati che determina il valore dello stato in cui deve passare il sistema in base allo stato attuale e agli ingressi (allistante t1). Formalmente:
Indicando con le lettere i gli ingressi, u le uscite, d i disturbi e p i parametri, il modello generale del sistema pu essere rappresentato con il seguente schema blocchi.
Pagina 12
L'attivit descritta si chiama fase di identificazione del sistema. Il passo successivo consiste nel trovare legami matematici tra ingressi, uscite, parametri e disturbi al fine di studiare il sistema nella sua evoluzione. Le cose da fare sono: definizione della scala dei tempi di osservazione del sistema, scegliendo come unit di misura quella pi funzionale allo scopo dello studio; definizione degli ingressi per calcolare le uscite: in pratica si tratta di costruire una tabella che in ogni istante, per un certo ingresso, fornisca l'uscita corrispondente; costruzione di un grafico
Esempio Rappresentare il sistema formato da una leva per studiare la relazione che esiste tra peso P che si pu sollevare applicando la forza F
I valori dei bracci della leva X1 e X2 possono essere fissati a un valore costante per il periodo osservazione. Si tratta di trovare la relazione esistente tra F e P F P
X1
X2
La condizione di equilibrio data da: F * X1 = P * X2 SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 13
e quindi la relazione ingresso/uscita risulta P= X1 * F X2 par cui il modello si trasforma nel seguente modo F X1 / X2 X1 X2 P
Con questa relazione, data una leva, si pu calcolare quale peso possiamo sollevare al variare della forza applicata nell'altra estremit della leva. Se invece si vuole calcolare la forza da applicare per sollevare un certo peso, si pu usare lo stesso principio della fisica utilizzato precedentemente, scambiando lingresso con l'uscita, per cui la relazione matematica diventa: F= X2 * P X1 Essa rappresentata da seguente schema a blocchi: P X2 / X1 X1 X2 F
E importante osservare che in qualunque sistema non ben definita la distinzione tra ingressi e uscite: il ruolo assegnato alle variabili dipende dall'orientamento dello studio. Si pu dire che nello schema a blocchi la caratteristica del blocco funzionale (rettangolo) rappresenta la reazione ingresso/uscita che permette di calcolare l'uscita in funzione delle variabili d'ingresso e delle propriet intrinseche del sistema (parametri) Nei sistemi lineari e invarianti si definisce funzione di trasferimento il rapporto tra le variabili di uscita e le variabili d'ingresso. Nell'esempio precedente fa funzione di trasferimento nel primo caso : FT = P / F = X1 / X2 Mentre nel secondo caso la funzione di trasferimento : FT = F / P = X2 / X1
Esempio Rappresentare l'andamento temporale della tensione V ai capi di un condensatore C attraversato da una corrente I variabile nel tempo.
Pagina 14
La capacit di un condensatore data dalla relazione: C=Q/V dove Q rappresenta la carica accumulata ai capi de condensatore V la tensione ai capi del condensatore Dalla formula si ricava C*V=Q per cui a una variazione di carica corrisponde una variazione di tensione ai capi del condensatore secondo la legge: Q = C * V Dividendo entrambi i termini per t, con t molto piccolo tendente a zero, si ottiene Q/t = C *V/t Poich la corrente , per definizione, la variazione della carica nel tempo, si pu scrivere: I = C *V/t Indicando con I la corrente che circola nel condensatore. Se si vuole osservare come varia la tensione in un intervallo finito in funzione della variazione di corrente nel medesimo intervallo, dalla formula precedente si ottiene: V = (1 / C) * t * I Il seguente schema a blocchi rappresenta il modello del sistema: I t 1/C V
C La funzione di trasferimento : FT= 1 /C Dal modello si pu dedurre che, affinch ai capi di un condensatore ci sia una variazione di tensione, necessaria una variazione di corrente. Una corrente elevata, ma costante, non produce alcuna variazione di tensione Se invece si vuole studiare come varia la corrente che circola in un condensatore in relazione alla tensione, si ha: I = (V / t) * C e lo schema diventa il seguente: V t C SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 15 C I
La funzione di trasferimento : FT = C Quando la tensione ai capi del condensatore costante, cio non ha variazione, la corrente risulta nulla.
Pagina 16
IL CONTROLLO AUTOMATICO
Si definisce rumore ogni segnale di disturbo che si sovrapponga al segnale utile. Il rumore costituito in genere dalla somma di segnali a frequenza diversa, distribuiti su ampio intervallo e tra loro non correlati
Il rumore pu avere origine naturale o artificiale. Il rumore di origine artificiale quello indotto da interferenze tra segnali utili su linee vicine, per esempio scariche elettriche dovute a commutazione di interruttori e motori. Pertanto il rumore definibile solo caso per caso prendendo in esame una specifica situazione. Il rumore di origine naturale intrinseco in alcuni processi naturali ed perci possibile un'indagine in termini generali. In particolare a questa categoria appartengono i disturbi che si originano internamente a conduttori e dispositivi elettronici (disturbi interni). Per operare unanalisi attenta del comportamento del sistema necessario tener conto del rumore. Si definisce controllo una sequenza di azioni svolte per il raggiungimento di un obiettivo specifico. Il problema del controllo si ha: quando esiste un sistema; quando si desidera prefissare il valore delle grandezze di uscita (uscite primarie) quando le uscite primarie, sotto l'azione di ingressi non manipolabili, assumono un andamento non desiderato, per esempio una barca in balia delle onde e delle correnti, in sostanza quando si fissa un obiettivo che non si riesce a raggiungere per cause non previste; quando esistono ingressi che consentono di portare luscita primaria al livello desiderato In un sistema, i disturbi tendono a far scostare l'uscita dal riferimento, mentre gli ingressi manipolabili tendono a portare l'uscita al valore di riferimento desiderato. Quando il controllo teso a mantenere costante una variabile di uscita (per esempio la temperatura di una stanza) si parla di regolazione. Quando le grandezze di riferimento variano nel tempo, il controllo ha lo scopo di far seguire alle uscite l'andamento delle grandezze di riferimento: in questi casi si parla di asservimento. Una particolare categoria di asservimenti rappresentata dai casi in cui le grandezze controllate sono di tipo meccanico, come velocit e spostamenti: si parla di servomeccanismi. La modalit di comando pu essere di due tipi: SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 17
Per esempio, la cottura di una pizza con forno a microonde pu essere fatta con diverse strategie: 1. impostare la temperatura e il timer e aspettare che trascorra il tempo. In questo caso se qualcosa non funziona, non abbiamo alcuna garanzia sulla realizzazione della cottura desiderata.
2. Se il sistema dotato di un dispositivo in grado di valutare il grado di cottura e di intervenire sul sistema modificando la temperatura, in modo da ottenere la giusta cottura nel tempo desiderato, i modello pu essere modificato nel seguente modo:
Nel primo caso si ha un sistema con controllo a catena aperta, nel secondo caso si ha un controllo a catena chiusa. In base alla definizione, solo nei sistemi a catena chiusa ha senso di parlare di controllo e regolazione. Quando il controllo effettuato da macchine si parla di regolazione automatica. I blocchi che utilizzano i valori dell'uscita per condizionare gli ingressi si chiamano blocchi di retroazione e la linea che va dall'uscita del sistema controllato verso l'ingresso si chiama linea di retroazione: il sistema si dice retroazionato. Il sistema di controllo deve avere un ingresso aggiuntivo, detto segnale di riferimento, con quale si possa confrontare l'uscita letta. Lo schema seguente mostra quanto detto: in esso e (errore) indica la differenza tra il valore di riferimento e il valore in uscita.
Esempio - Rappresentare un sistema a controllo automatico di un serbatoio di acqua destinato ad alimentare una serie di utenti e rifornito da un condotto collegato a una rete di distribuzione
SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 18
Qi portata di acqua entrante; Qu portata di acqua in uscita; C: cisterna, SC scala graduata per il livello Sa : valvola di immissione; G: galleggiante; I: condotto
Il condotto controllato da una valvola di immissione che regola la portata entrante in modo automatico tramite un galleggiante. La portata uscente regolata casualmente dalle esigenze degli utenti. Supponendo di poter controllare il livello dell'acqua della cisterna, si pu regolare il galleggiante in modo che la valvola sia chiusa quando il livello dell'acqua coincide con quello prefissato. Appena il livello della cisterna diventa inferiore a quello prefissato, il galleggiante, abbassandosi, apre la valvola in modo da annullare la differenza di livello. Il modello del sistema il seguente:
Nello schematizzare una catena di controllo si utilizzano modelli grafici come i seguenti, che sono esempi di rappresentazione canonica di un sistema retroazionato.
Pagina 19
Nel primo schema il segnale di retroazione arriva nel blocco di confronto con il segno - mentre nel secondo schema arriva con il segno +. Si dice retroazione negativa il caso in cui la grandezza controllata entra con il segno - e retroazione positiva quando entra con segno + (la grandezza controllata viene sommata a quella di riferimento). Di seguito viene illustrato il calcolo del modello matematico equivalente alla catena di controllo, noto modello matematico dei singoli blocchi. Lo schema a blocchi generale il seguente:
In esso i simboli indicano: r: segnale di riferimento, c: grandezza controllata, e: errore, u: uscita, G: guadagno del sistema H: guadagno del blocco di retroazione Si hanno le relazioni E=r-c u=G*e=G*(r- c) c=H*u Sostituendo, si ottiene u=G*r - G*H*u u+ G*H*u=G*r u * (1 + G * H) = G * r u/r=G/(1 +G * H) che rappresenta la relazione ingresso/uscita del sistema Ge = G / (1 + G * H) si chiamano guadagno equivalente del sistema controllato. SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 20
Analizzando la formula si vede che Ge < G, per cui si pu dire che la retroazione negativa riduce guadagno del sistema. Si deduce che questo tipo di retroazione migliora la stabilit del sistema, perch riducendo il guadagno, il rumore ha un effetto trascurabile e sull'uscita. In sostanza, il contributo non desiderato del segnale di rumore viene annullato da una minore amplificazione. Nel caso della retroazione positiva, con un procedimento analogo si pu ricavare guadagno equivalente Ge = G / (1- G * H) da cui si vede che Ge > G: questo tipo di retroazione aumenta l'instabilit. Poich un sistema deve essere pi possibile rapido, preciso e stabile chiaro che la retroazione pi conveniente risulta essere quella negativa. I sistemi a retroazione negativa tendono verso uno stato di stabilit che coincide con il valore di riferimento. Appena un disturbo tende a portare l'uscita verso un valore diverso da quello di riferimento, il sistema reagisce annullandone l'effetto. La retroazione positiva si utilizza quando serve potenziare l'instabilit, come nelle macchine turbo dove i gas di scarico non vengono espulsi direttamente, ma vanno ad azionare una turbina che muove un compressore per spingere aria fresa nei cilindri.
Pagina 21
u = G1 * G2 *.. * Gn * I per cui la catena dei sistemi in serie pu essere sostituita con un blocco che ha come guadagno equivalente Ge = G1 * G2 *.. * Gn
Pagina 22
u = u1 + u2 +.. * un = G1 * i + G2 * i .. + Gn * i = Ge = G1 + G2 +.. + Gn
Ovviamente il discorso si estende a qualsiasi numero di ingressi. In pratica si definiscono sistemi lineari i sistemi per i quali vale il principio di sovrapposizione degli effetti che si pu enunciare nel seguente modo:
Pagina 23
In un sistema lineare l'effetto dovuto a pi cause diverse pari alla somma degli effetti delle singole cause, considerando nulle tutte le altre. I sistemi non lineari sono quelli per i quali non vale il principio di sovrapposizione degli effetti. Per disturbo si intende tutto quanto interferisce con l'attivit (o Processo) che si sta svolgendo, alterandone l'evoluzione. Poich l'andamento del disturbo imprevedibile sia nella natura che nell'andamento, poco o nulla si pu fare per eliminarlo: si pu solo farne una valutazione al fine di ridurne gli effetti sul sistema. Per esempio, si prenda in considerazione lo schema seguente: esso rappresenta un sistema lineare (vale il principio di sovrapposizione degli effetti) costituito da una catena di blocchi (sistema a catena aperta).
Applicando il principio di sovrapposizione dogi effetti si ha: u = ui + ud cio l'uscita data dalla combinazione lineare delle singole sollecitazioni (ingresso e disturbo) considerate separatamente. Perci, trascurando disturbo, si ha ui = G1 * G2 * G3 * i mentre, trascurando l'ingresso, si ha: ud = G2 * G3 * d Considerando il rapporto ui = G1 * G2 * G3 * i = G1 * i d ud G2 * G3 * d si pu osservare che il tutto funziona come se l'ingresso fosse amplificato solo dal blocco G1, mentre d rimane inalterato. Si consideri ora lo stesso schema, ma con il disturbo entrante dopo il blocco G2: con analoghi passaggi si ottiene: ui = G1 * G2 * G3 * i = G1 * G2 * i ud G3 * d d In questo caso l'ingresso amplificato dai blocc G1 * G2 e d passa inalterato. In pratica il fatto che l'ingresso i risulti amplificato significa che il disturbo in termini relativi meno efficace. Si pu quindi SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 24
concludere che il disturbo tanto meno efficace quanto pi vicino il suo ingresso rispetto all'uscita del sistema e tanto pi efficace quanto pi vicino il suo ingresso rispetto all'ingresso del sistema.
LO STATO DI UN SISTEMA
Lo stato di un sistema esprime le condizioni in un certo istante attraverso i valori assunti dalle grandezze che lo condizionano e lo caratterizzano, e che chiamiamo variabili di stato. Noti i valori a cui sar sottoposto il sistema possibile prevedere lo stato successivo del sistema e le risposte del sistema. Lo stato dipende dalle variabili di stato che sono state scelte come significative per il comportamento del sistema che si vuole studiare. Ad es. volendo studiare il moto di unautovettura, non interessa lo stato della carrozzeria, cos nello studio di un impianto di illuminazione ha poca importanza il colore degli interruttori. Ponendo dellacqua in una pentola non si pu prevedere in quanto tempo essa bollir perch lo stato dellacqua dipende dallo stato di partenza, caratterizzato dalla temperatura di partenza dellacqua, dalla pressione, umidit, ventilazione, materiale della pentola ecc.. Basta per conoscere la temperatura iniziale dellacqua per prevedere il tempo di ebollizione. La temperatura dellacqua risente della storia del sistema, cio dellevoluzione subita fino a quel momento e la temperatura la sintesi della storia precedente. E chiaro che per conoscere levoluzione del sistema in un intervallo di tempo, occorre conoscere oltre alle sollecitazioni anche lo stato iniziale del sistema. Indicando con s(t) il valore di una variabile di stato allistante t s(t0) il valore della stessa variabile di stato allistante t0 di inizio del periodo di osservazione levoluzione pu essere sintetizzata da due formule :
1. s(t) = s(t0) + f ( i(t - t0) , s(t0) ) * ( t t0 ) 2. u(t) = g( i(t), s(t0) ) ossia 1. lo stato allistante t dato dalla somma del suo valore allistante t0 e dal prodotto dellintervallo (t - t0) per una quantit f che dipende dal valore dello stato iniziale e dalla sollecitazione di ingresso nellintervallo (t - t0). 2. Luscita funzione dello stato iniziale e della sollecitazione di ingresso.
Si definisce sistema dinamico un sistema descritto da equazioni del tipo:
u(t) = g ( s(t) )
u(t) = g (i(t) , s(t0) ) se luscita dipende dallo stato allistante t0 oltre che dallingresso i(t)
Con lintroduzione dello stato un sistema non pi descritto da relazioni ingresso/uscita (teoria classica) ma da relazioni ingresso/stato-uscita (teoria moderna) .
Dopo aver definito le variabili di stato, per disegnare il grafo sono necessari i seguenti elementi: I insieme degli ingressi VI insieme dei valori che possono assumere gli ingressi U insieme delle uscite VU insieme dei valori che possono assumere le uscite S insieme degli stati S0 stato iniziale Uno o pi stati finali o stati obiettivi Tabella di transizione degli stati che indica levoluzione degli stati in conseguenza degli ingressi SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 26
Tabella di trasformazione delle uscite che associa allo stato luscita corrispondente. Con questi elementi si disegnano tanti nodi quanti sono gli stati, collegandoli con archi orientati secondo quanto indicato nella tabella di transizione di stato e nella tabella di trasformazione delle uscite.
ESEMPIO RAPPRESENTARE IL SISTEMA DI UN CIRCUITO ELETTRICO FORMATO DA UNA LAMPADA E DA UN INTERRUTTORE insieme degli ingressi: insieme dei valori che possono assumere gli ingressi : insieme delle uscite insieme dei valori che possono assumere le uscite insieme degli stati stato iniziale Tabella di transizione degli stati: VI Aperto STATO Lampada accesa Lampada spenta Lampada spenta Lampada spenta {INTERRUTTORE} {APERTO, CHIUSO} {EFFETTO OSSERVABILE} {BUIO, LUCE} {LAMPADA ACCESA, LAMPADA SPENTA} {LAMPADA SPENTA}
Tabella di trasformazione delle uscite: VI Aperto chiuso STATO Lampada accesa Buio Luce Lampada spenta Buio Luce Chiuso, Luce Aperto, Buio Lampada accesa
Chiuso, Luce
Lampada spenta
Aperto, Buio Per generare una trasformazione bisogna definire uno stato di partenza e applicare una possibile sequenza di ingressi che porta il sistema in uno degli stati finali. Ad es. supponendo di partire dallo stato Lampada Spenta e applicare la seguente sequenza di ingressi: Chiuso, Aperto, Aperto, Chiuso, Chiuso si ottengono le seguenti transizioni di stato: Lampada Accesa, Lampada Spenta, Lampada Spenta, Lampada Accesa, Lampada Accesa le seguenti transizioni delle uscite: Luce, Buio, Buio, Luce, Luce SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 27
ESEMPIO RAPPRESENTARE UN SISTEMA DI DUE LAMPADINE COLLEGATE A UN PULSANTE T IN MODO CHE ALLA PRIMA PRESSIONE SI ACCENDE LA LAMPADINA L1, ALLA SECONDA PRESSIONE SI ACCENDA ANCHE LA LAMPADINA L2, ALLA TERZA PRESSIONE SI SPENGANO ENTRAMBE Poich alla terza pressione si spengono entrambe si torna alle condizioni iniziali di buio e ripremendo il pulsante si ricomincia il ciclo. insieme degli ingressi: insieme dei valori degli ingressi: insieme delle uscite insieme dei valori delle uscite insieme degli stati stato iniziale {TASTO} {PREMUTO, NON PREMUTO} {LAMPADA1, LAMPADA2} { (Spento,Spento), (Acceso,Spento), (Acceso,Acceso) } Notare che non possibile lo stato (Spento, Acceso) coincide con i valori delle uscite { (Spento,Spento) }
Tabella di transizione degli stati: VI Premuto STATO (Spento,Spento) (Acceso,Spento) (Acceso,Spento) (Acceso,Acceso) (Acceso,Acceso) (Spento,Spento)
Tabella di trasformazione delle uscite: VI Premuto Non Premuto STATO (Spento,Spento) (Acceso,Spento) (Spento,Spento), (Acceso,Spento) (Acceso,Acceso) (Acceso,Spento), (Acceso,Acceso) (Spento,Spento) (Acceso,Acceso) Diagramma degli stati: Non Premuto Premuto/ (Acceso,Spento) (Spento,Spento ) (Acceso,Spento ) Non Premuto
(Acceso,Acceso) Non Premuto SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 28
Definendo come stato di partenza (Spento,Spento) e proviamo a seguire levoluzione temporale del sistema simulando limmissione dei valori di ingresso mostrati nella 1 riga della tabella. La 2 riga mostra il nuovo stato interno del sistema, la 3 riga riporta la conseguente uscita. VI: S: VU: P (A,S) (A,S) NP (A,S) (A,S) P (A,A) (A,A) P (S,S) (S,S) NP (S,S) (S,S) P (A,S) (A,S) P (A,A) (A,A) NP (A,A) (A,A) P (S,S) (S,S)
ESEMPIO CONSIDERARE LOPERAZIONE DI SOMMA TRA DUE VALORI BINARI COMPOSTI DI UNA SOLA CIFRA E CONSIDERARE ANCHE IL RIPORTO. La nostra operazione richiede i due operandi (contenuti nelle variabili che chiamiamo A e B) e produce come uscite una somma (nella variabile S) ed un eventuale riporto ( nella variabile R ). La somma binaria di due bit (binary digit) deterministico e combinatorio (il risultato in corso non dipende dalle somme svolte precedentemente), oltre che discreto e invariante. Insiemi di definizione: insieme degli ingressi: insieme dei valori degli ingressi: insieme delle uscite insieme dei valori delle uscite {A,B} {(0,0), (0,1), (1,0), (1,1) } {S,R} { (0,0), (1,0), (0,1) } Notare che non possibile lo stato (1,1) perch non possibile avere somma 1 con riporto 1 {coincide con i valori delle uscite} { (0,0) }
insieme degli stati stato iniziale Tabella di transizione degli stati: VI (0,0) STATO (0,0) (0,0) (1,0) (0,0) (0,1) (0,0)
(1,1)
Tabella di trasformazione delle uscite: VI (0,0) (0,1) STATO (0,0) (0,0) (1,0) (1,0) (0,0) (1,0) (0,1) (0,0) (1,0)
(1,1)
Notare che le righe delle due tabelle sono identiche tra loro: questo accade perch il sistema combinatorio (senza memoria) e quindi non importa cosa successo allinterno del sistema fino a quel momento. Diagramma degli stati: SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 29
0,0 (0,0)
(0,1)/ (1,0)
(0,1) (1,0)
(0,0)/ (0,0)
(0,1) (1,1)
ESEMPIO CONSIDERARE LOPERAZIONE DI SOMMA TRA DUE VALORI BINARI CONSIDERANDO IL RIPORTO. Realizzare lautoma per realizzare la somma di due valori binari, considerando la presenza di un eventuale riporto (gi generato ed eventualmente da generare). La nostra operazione richiede due operandi (contenuti nelle variabili A e B) e produce come uscita la somma (nella variabile S) ed un eventuale riporto (nella variabile di stato R ). insieme degli ingressi: insieme dei valori degli ingressi: insieme delle uscite insieme dei valori di uscita {A,B} {(0,0), (0,1), (1,0), (1,1) } {S} { 0,1} Notare che non possibile lo stato (1,1) perch non possibile avere somma 1 con riporto 1 {R} { 0 (nessun riporto) , 1 (riporto) }
(0,1) 0 1
(1,0) 1 1
(1,1)
Tabella di trasformazione delle uscite (somma): VI (0,0) (0,1) STATO No riporto 0 0 1 Riporto 1 1 0
(1,0) 1 0 0 1
(1,1)
Pagina 30
Pagina 31
SISTEMA LINEARE Nei sistemi lineari leffetto dovuto a pi cause diverse pari alla somma degli effetti delle singole cause, considerando le altre nulle. Ossia leffetto su una uscita dovuta allazione contemporanea dei vari ingressi uguale alla somma degli effetti dei singoli ingressi presi separatamente.
Il caso di un sistema lineare a due ingressi e una uscita si pu rappresentare mediante lo schema a blocchi x1(t) y1(t) + y2(t) x2(t) oppure x1(t)+ x2(t) y1(t) + y2(t)
Pi in generale per un sistema con n ingressi e m uscite: Per ogni uscita, ad es. per la i-esima, si pu analizzare leffetto di ciascun ingresso j-esimo (con j da 1 a n) quando tutti gli altri ingressi sono nulli. La notazione yi,j (t) denota luscita i-esima provocata dallingresso j-esimo.
Pagina 32
i, 1 i, 2 i, j
Leffetto complessivo sulluscita iesima provocato dallazione contemporanea di tutti gli n ingressi si ottiene sommando i singoli contributi y i,j al variare di j da 1 a n.
xn(t)
i, n
yi,n(t)
x1 = 2
*5
y1(t) = 10
x2 = 3
*5
y2(t) = 15
Percentuale di una sommatoria di valori = Sommatoria delle percentuali dei valori x1 + x2 = 250 10% y1 + y2 = 25 = 10 + 15
x1 = 100
10%
y1(t) = 15
x2 = 150
10%
y2(t) = 25
Pagina 33
x2 = 3
x2 x2
y2 = 9
x1 + x2 = 5
y3 = 25 13
La radice n-esima non lineare. Nel caso specifico di radice quadrata, Radice di una sommatoria di quadrati Somma delle radici quadrate ossia _______ ___ ___ a2 + b2 a2 + b2 Questo anche in virt del precedente esempio, poich la radice n-esima equivale ad elevare a 1/n. x1 + x2 = 25 y3 = 5 7
x1 = 16
y1 = 4
x2 = 9
y2 = 3
Pagina 34
TEORIA degli AUTOMI Gli strumenti alla base della Teoria degli automi sono: i diagrammi di stato la funzione f (di transizione degli stati) la funzione g (di trasformazione delle uscite) le rispettive tabelle. Un automa costituito dagli insiemi I, VI, U, VU, S e T e dalle relative funzioni f e g che complessivamente descrivono formalmente una macchina (rappresentata come black box). Teoricamente gli insiemi indicati possono avere una quantit infinita di valori; in realt si limita lo studio agli automi identificati da insiemi finiti: ossia gli Automi a Stati Finiti. Il diagramma degli stati utile per rappresentare sistemi discreti e invarianti, che saranno le caratteristiche minime dei sistemi che considereremo. Considerando quanto introdotto a proposito della formalizzazione e al sistema pensato come due scatole, gli automi si suddividono in: Automi di Moore o automi propri, in cui:
funzione di transizione degli stati determina il valore dello stato in cui deve passare il sistema in base allo stato attuale e agli ingressi (allistante t1). Formalmente:
Ossia, facendo riferimento alla figura con i blocchi f e g: negli automi di Moore la 2 scatola ha come input solo lo stato negli automi di Mealy la 2 scatola ha come input sia lo stato attuale sia lultimo ingresso fornito; quindi nella definizione della funzione g bisogna aggiungere VI come variabile indipendente.
Per tutte le applicazioni analizzate tramite gli automi c una situazione comune che lesistenza di una condizione iniziale dalla quale partir la macchina. Lo stato iniziale di un automa quello in cui si trova allinizio del suo funzionamento, cio quando non pervenuta alcuna informazione. Lo stato finale di un automa quello da cui non pu muoversi per qualsiasi valore dingresso. Lo stato di equilibrio di un automa quello in cui la macchina pu rimanere a tempo indeterminato per un dato valore in ingresso (graficamente una freccia che rientra nello stesso stato). Lo stato sn raggiungibile dallo stato sm se esiste una sequenza di valori di ingresso che fa transitare lautoma dallo stato iniziale sm allo stato sn.
Pagina 36
AUTOMA RICONOSCITORE DI SEQUENZA 010 Ingresso: bit da esaminare Valori di ingresso: 0, 1 STATI: S1 stato iniziale in cui si analizza il 1 bit immesso S2 stato in cui si analizza il 2 bit immesso (se il 1 corretto) S3 stato in cui si analizza il 3 bit immesso (se i primi due corretti) SF stato che si raggiunge al termine dellanalisi, stato finale in cui non si effettua alcuna analisi USCITA: messaggio riconosciuta o non riconosciuta VU: 0 (non riconosciuta), 1 (riconosciuta)
Tabella di transizione degli stati : VI 0 STATO S1 S2 S2 SF S3 SF 1 SF S3 SF
Tabella di trasformazione delle uscite : VI 0 STATO S1 0 (non riconosciuta) S2 0 (non riconosciuta) S3 1 (riconosciuta)
CODICE SORGENTE
// Programma che acquisisce simboli 1 e 0 da tastiera e riconosce la sequenza 010. /* Se si inserisce 1 oppure 00 oppure 011 viene lasciata la flag a 0, va nello Stato Finale, stampa NOK e termina */ // Se i tre bit immessi sono 010 mostra un messaggio OK, transita nello stato finale e termina #include "stdafx.h" using namespace std; #define S1 #define S2 #define S3 0 1 2 /* stato iniziale dell'automa */
Pagina 37
#define SF
int _tmain(int argc, _TCHAR* argv[]) { int stato; // stato attuale bool flag_seq_ric = 0; // flag sequenza riconosciuta: 0 non riconosciuta ; riconosciuta unsigned int bit; // valore 0 o 1 immesso da tastiera stato = S1; do { // acquisisci un bit do { cout << "\n inserisci un bit"; cin >> bit; } while (bit!= 0 && bit != 1); switch (stato) { case S1: { if (bit == 0) { cout << "\n Transito in S2 "; // prossimo stato stato = S2; flag_seq_ric = 0; // questo reset non cambia il valore iniziale } if (bit == 1) { cout << "\n Transito in SF "; stato = SF; // prossimo stato flag_seq_ric = 0; // questo reset non cambia il valore iniziale } }; break; case S2: { if (bit == 0) { cout << "\n Transito in SF "; // prossimo stato stato = SF; flag_seq_ric = 0; // questo reset non cambia il valore iniziale } if (bit == 1) { cout << "\n Transito in S3 "; stato = S3; // prossimo stato flag_seq_ric = 0; // questo reset non cambia il valore iniziale } }; break; case S3: { if (bit == 0) {
Pagina 38
cout << "\n Transito in SF "; stato = SF; // prossimo stato flag_seq_ric = 1; // SOLO GIUNTI QUI SI RICONOSCE LA SEQUENZA!!! } if (bit == 1) { cout << "\n Transito in SF "; stato = SF; // prossimo stato flag_seq_ric = 0; // questo reset potrebbe essere commentato perche non cambia il valore iniziale } }; break; } // end switch } while (stato != SF); // a questo punto si giunti nello stato SF perci si controlla la flag if (flag_seq_ric == 0) { cout << "\n SEQUENZA NON VALIDA !!! "; } else { cout << "\n SEQUENZA VALIDA !!! "; } cout << "\n programma terminato !"; system("PAUSE"); return 0; }
Pagina 39
Pagina 40
Tabella o Matrice di transizione per automa riconoscitore di START e STOP bit: VI 0 1 STATO S0 S0, 0 S1,0 S1 S0, 0 S2,0 S2 S0, 0 S3,1 S3 S0, 0 S3,1 In questo automa ogni volta che viene letto sulla linea uno 0 si ritorna allo stato S0, mentre se si legge un 1 si passa progressivamente allo stato che segue.
Pagina 41
Flow-chart di un riconoscitore di Start e Stop bit in una sequenza di bit: riconosce lo start e lo stop per un messaggio solo. Non implementato secondo il modello ad automa
ESERCIZIO: implementare il relativo codice sorgente SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 42
/* la sequenza 1110111 considerata come START 0 STOP */ /* la sequenza 111111 considerata come START STOP */ int _tmain(int argc, _TCHAR* argv[]) { unsigned short int stato = STATO_0; unsigned short int bit; unsigned short int controllo = 0; // assume valore 0 se non sono stati ricevuti 3 uno consecutivi // assume valore 1 se sono stati ricevuti 3 uno bool inizio_msg = 0; bool fine_simulazione = 0; do { do // acquisisci un bit { cout << "\n inserisci un bit"; cin >> bit; } while (bit!= 0 && bit != 1); /* IN QUALUNQUE STATO, se si riceve 0, si va in STATO_0, perci si preferisce scrivere una volta sola, prima dello switch sullo stato attuale, le azioni da svolgere, invece di ripetere lo stesso codice in ogni case */ if (bit == 0) { stato = STATO_0; controllo = 0; } else { // se il bit ricevuto 1 switch (stato) { case STATO_0: { stato = STATO_1; controllo = 0; }; break;
Pagina 43
case STATO_1: { stato = STATO_2; controllo = 0; }; break; case STATO_2: { stato = STATO_3; controllo = 1; if (inizio_msg == 0) { cout << "DAL PROSSIMO BIT COMINCIA IL MSG"; inizio_msg = 1; } else { cout << "IL MESSAGGIO E' TERMINATO TRE BIT FA!"; inizio_msg = 0; //fine_simulazione = 1; // con questa istruzione commentata si possono esaminare pi messaggi consecutivi // con questa istruzione non commentata si esamina un solo messaggio } }; break; case STATO_3: { //cout << "\n sono in S3"; stato = STATO_1; // era STATO_3 controllo = 0; // stesso comportamento se = 0 }; break; } // end switch // chiusura else istruzioni commentate si possono esaminare pi messaggi istruzioni non commentate si esamina un solo messaggio == 1) dal ciclo
// con le due prossime consecutivi // con le due prossime // if (fine_simulazione // break; // esco } while (1);
Pagina 44
ESEMPIO Riconoscere la parola abb appartenente ad un linguaggio che utilizza un alfabeto di due simboli {a, b} e produce in uscita simboli appartenenti allalfabeto {OK, NOK} Stati = {S1, S2, S3} Tabella o Matrice di transizione per automa riconoscitore di abb: VI a b STATO S1 S2, NOK S1, NOK S2 S2, NOK S3,NOK S3 S2, NOK S1, OK a/NOK b/NOK S1 a/NOK S2
S3
Pagina 45
Allinizio lautoma si trova nello stato S1. Nello stato iniziale S1 se riceve a che pu essere linizio della sequenza, passa in S2; se riceve b come se nulla fosse arrivato e non cambia stato. In S2 (lultimo ingresso valeva a), se riceve ancora una a non cambia nulla, perch potrebbe essere il primo simbolo della sequenza che sta aspettando, mentre se riceve una b passa in S3 perch questo stato il secondo ingresso della sequenza. Nello stato S3 (gli ultimi due ingressi sono stati una b preceduta da una a) se riceve b la sequenza viene riconosciuta dando luscita OK e passa allo stato iniziale, mentre se riceve a torna alla condizione S2 perch la sequenza corretta potrebbe ricominciare.
Con questa implementazione, inserendo la sequenza aababababbabbbaaabbaa verranno riconosciute tre sequenze valide
// automa_ricon_abb.cpp : Defines the entry point for the console application. // #include "stdafx.h" using namespace std; #define S1 #define S2 #define S3 1 2 3 /* stato iniziale dell'automa */
int _tmain(int argc, _TCHAR* argv[]) { int stato; // stato attuale bool flag_seq_ric = 0; // flag sequenza riconosciuta: 0 non riconosciuta ; riconosciuta char car; // carattere minuscolo immesso da tastiera stato = S1; do { // acquisisci un carattere minuscolo do { cout << "\n inserisci un carattere"; cin >> car; } while (car != 'a' && car != 'b');
switch (stato) { case S1: { if (car == 'a') { cout << "\n Transito in S2 "; stato = S2; // prossimo stato flag_seq_ric = 0; // questo reset potrebbe essere commentato perche non cambia il valore iniziale } if (car == 'b') { cout << "\n resto in S1 "; stato = S1; // prossimo stato
Pagina 46
flag_seq_ric = 0; // questo reset potrebbe essere commentato perche non cambia il valore iniziale } }; break; case S2: { if (car == 'a') { cout << "\n resto in S2 "; stato = S2; // prossimo stato flag_seq_ric = 0; // questo reset potrebbe essere commentato perche non cambia il valore iniziale } if (car == 'b') { cout << "\n Transito in S3 "; stato = S3; // prossimo stato flag_seq_ric = 0; // questo reset potrebbe essere commentato perche non cambia il valore iniziale } }; break; case S3: { if (car == 'a') { cout << "\n Transito in S2 "; // prossimo stato stato = S2; flag_seq_ric = 0; // } if (car == 'b') { cout << "\n Transito in S1 "; stato = S1; // prossimo stato flag_seq_ric = 1; // sequenza riconosciuta cout << "\n SEQUENZA VALIDA !!! "; } }; break; } // end switch } while (1); system("PAUSE"); return 0; }
Lo stesso riconoscitore si pu implementare con un automa la cui matrice di transizione la seguente: Stati = {S1, S2, S3, SF} in cui la logica quella seguita per lautoma riconoscitore di 010. SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 47
Tabella o Matrice di transizione per automa riconoscitore di abb: VI a b STATO S1 S2, NOK SF, NOK S2 SF, NOK S3,NOK S3 SF, NOK SF, OK Nello stato finale SF viene visualizzato il messaggio OK o NOK
a/NOK S1 S2
b/NOK
S3
b/OK
e codifica:
#include "stdafx.h" using namespace std; #define #define #define #define S1 S2 S3 SF 1 2 3 4 /* stato iniziale dell'automa */
int _tmain(int argc, _TCHAR* argv[]) { int stato; // stato attuale char car; // carattere minuscolo immesso da tastiera do // questo do esterno serve a ripetere il programma, ossia il riconoscimento pi volte { // si inizializzano le variabili per ogni riconoscimento bool flag_seq_ric = 0; // flag sequenza riconosciuta: 0 non riconosciuta ; 1 riconosciuta stato = S1; do { // ciclo di riconoscimento di una singola sequenza // acquisisci un bit
Pagina 48
do { cout << "\n inserisci un carattere"; cin >> car; } while (car != 'a' && car != 'b'); switch (stato) { case S1: { if (car == 'a') { cout << "\n Transito in S2 "; stato = S2; // prossimo stato flag_seq_ric = 0; // questo reset potrebbe essere commentato perche non cambia il valore iniziale } if (car == 'b') { cout << "\n Transito in SF "; stato = SF; // prossimo stato flag_seq_ric = 0; // questo reset potrebbe essere commentato perche non cambia il valore iniziale } }; break; case S2: { if (car == 'a') { cout << "\n Transito in SF "; stato = SF; // prossimo stato flag_seq_ric = 0; // questo reset potrebbe essere commentato perche non cambia il valore iniziale } if (car == 'b') { cout << "\n Transito in S3 "; // prossimo stato stato = S3; flag_seq_ric = 0; // questo reset potrebbe essere commentato perche non cambia il valore iniziale } }; break; case S3: { if (car == 'a') { cout << "\n Transito in SF "; // prossimo stato stato = SF; flag_seq_ric = 0; // questo reset potrebbe essere commentato perche non cambia il valore iniziale } if (car == 'b') { cout << "\n Transito in SF "; stato = SF; // prossimo stato flag_seq_ric = 1; // SOLO GIUNTI QUI SI RICONOSCE LA SEQUENZA!!! } }; break; } // end switch
Pagina 49
} while (stato != SF); // a questo punto si giunti nello stato SF perci si controlla la flag if (flag_seq_ric == 0) { cout << "\n NOK !!! "; } else { cout << "\n OK !!! "; } } while (1); // end ciclo per ripetere la ricerca della sequenza cout << "\n programma terminato !"; system("PAUSE"); return 0; }
ESERCIZIO da SVOLGERE Provate a costruire un automa che, in una sequenza continua di lettere, deve riconoscere la parola CIAO. Partendo dallo Stato iniziale S0 si passer allo stato seguente quando si rilever una C e poi ancora si andr avanti se si ricever in ingresso subito dopo una I; qualsiasi lettere diversa dalla I, dopo la C, far tornare l'automa allo stato iniziale. Continuate cos per tutte le quattro lettere della parola. Luscita sar 0 se il conteggio sar nullo oppure se la parola ancora incompleta; al contrario otterremo 1 in uscita solo se la parola sar stata composta per intero.
Pagina 50
ESEMPIO RAPPRESENTARE LASCENSORE che collega i 3 PIANI DELLA SCUOLA Dal punto di vista dellutente si hanno a disposizione: la pulsantiera allinterno dellascensore il pulsante di chiamata ad ogni piano, affianco allingresso dellascensore Per semplicit: ad ogni piano installata una pulsantiera simile a quella interna allascensore. Gli ingressi al sistema sono la pressione su un pulsante. Le uscite (o risposte) osservabili sono le traslazioni tra piani diversi, ossia il movimento di salita o discesa che termina sempre in una nuova situazione di cabina ferma ad un piano; premendo il pulsante corrispondente allattuale piano di sosta ovviamente non si avr cambio di stato (lascensore resta fermo). insieme degli ingressi: insieme dei valori degli ingressi: insieme delle uscite insieme dei valori delle uscite insieme degli stati stato iniziale Tabella di transizione degli stati: VI 0 STATO P0 P0 P1 P0 P2 P0 {Pulsante} {0, 1, 2} { Movimento } { Discesa, Salita, Fermo} {Piano0, Piano1, Piano2} { Piano0 }
1 P1 P1 P1 P2 P2 P2
Tabella di trasformazione delle uscite: VI 0 1 STATO P0 Fermo Salita P1 Discesa Fermo P2 Discesa Discesa Diagramma degli stati: 0/Ferma P0 1/Salita 1/Ferma 2/Salita P1 2/Salita
P2
Pagina 51
Tabella o Matrice di transizione PER LASCENSORE: VI 0 1 2 STATO P0 P0, Ferma P1, Salita P2, Salita P1 P0, Discesa P1, Ferma P2, Salita P2 P0, Discesa P1, Discesa P2, Ferma Questo sistema combinatorio o sequenziale ? Osservando la tabella si nota che gli stati sono ripetuti nella stessa sequenza in ogni riga. Quando accade ci il sistema combinatorio. Qui dobbiamo stare attenti: siamo in presenza di un automa di Mealy perch pur ottenendo in corrispondenza di ingresso uguale una stessa transizione di stato, le uscite invece dipendono sia dallingresso sia dallo stato precedente ossia il sistema combinatorio.
Esercizio Scrivere un programma C che simuli il comportamento dellascensore, che allinizio pu trovarsi ad un piano qualsiasi (acquisirlo da tastiera). Utilizzare costrutti switch-case. Utilizzare direttive #define per i valori delle variabili di ingresso, di uscita, di stato. // valori dello stato #define PIANO0 0 #define PIANO1 1 #define PIANO2 2 // valori dellingresso #define PIANO_RICH0 0 #define PIANO_RICH1 1 #define PIANO_RICH2 2 // valori delluscita #define FERMO 0 #define DISCESA 1 #define SALITA 2
// variabili del problema unsigned short int stato; // variabile che inizialmente conterr lo stato iniziale (immesso dallutente) // e successivamente evolver unsigned short int input; // piano di destinazione, da immettere unsigned short int output; // uscita, determinate in base allo stato e allinput boolean flag_fine; // flag di fine simulazione, inizializzata a false e testata nel ciclo do-while // viene posta a true se si inserisce uno stato non ammesso. Flow-chart seguente mostra in dettaglio solo un case allinterno dello switch pi esterno. Completare!
Pagina 52
inizio
Switch (stato)
PIANO0 PIANO1 PIANO2 default
Flag_fine = true
Leggi input
break
break
break
break
fine
Pagina 53
ESEMPIO RAPPRESENTARE UN SEMPLICE SEMAFORO che commuta da un colore allaltro allo scadere di un tempo prefissato per ciascun colore (avremmo potuto semplificare ponendo tutti i tempi uguali ma non una situazione realistica perch in effetti il giallo dura pochi secondi, e il verde dura pi del rosso lungo una importante strada di comunicazione). Gli ingressi al sistema sono i tempi di permanenza di ciascun colore. Le uscite (o risposte) osservabili sono i cambiamenti di colore. insieme degli ingressi: insieme dei valori degli ingressi: {tempo_di_colore} {TEMPO_VERDE scaduto, TEMPO_GIALLO scaduto, TEMPO_ROSSO scaduto, TEMPO_VERDE non scaduto, TEMPO_GIALLO non scaduto, TEMPO_ROSSO non scaduto } { Colore } { GIALLO, ROSSO, VERDE} { GIALLO, ROSSO, VERDE} { GIALLO }
insieme delle uscite insieme dei valori delle uscite insieme degli stati stato iniziale
Tabella di transizione degli stati: VI TEMPO_GIALLO TEMPO_ROSSO scaduto scaduto STATO -GIALLO ROSSO -VERDE ROSSO --VERDE
Tabella di trasformazione delle uscite: TEMPO_GIALLO TEMPO_ROSSO TEMPO_VERDE TEMPO_G VI scaduto scaduto scaduto non scaduto STATO ROSSO --GIALLO GIALLO -VERDE -ROSSO --GIALLO -VERDE TEMPO_GIALLO non scaduto/GIALLO
GIALLO GIAL LO
TEMPO_ROSSO scaduto/VERDE
VERDE
Pagina 54
Inizio
Stato = GIALLO
tempo = TEMPO_GIALLO
GIALLO
VERDE
Il precedente flow-chart mostra un programma funzionante che, una volta in esecuzione, gira allinfinito (il ciclo do while sempre vero) e quindi, a rigore, non un algoritmo perch non ha un punto di fine. Come si pu modificare perch lo sia? think about !!! (ad esempio impostando un tempo di simulazione massimo per cui il programma giri; oppure chiedendo alloperatore, in ogni case, se vuol terminare la simulazione e testando la variabile associata nel do while). Per impostare i tempi di ogni colore, potete utilizzare la funzione sleep() come spiegatovi in laboratorio, invece che implementare il loop di attesa realizzato con time(NULL).
#include "stdafx.h" using namespace std; #define TEMPO_GIALLO 5 #define TEMPO_ROSSO 10
// in secondi
Pagina 55
#define TEMPO_VERDE 15 #define GIALLO 0 #define ROSSO 1 #define VERDE 2 int _tmain(int argc, _TCHAR* argv[]) { unsigned short int stato; // pu assumere i valori GIALLO, ROSSO, VERDE unsigned short int colore; // uscita visibile long int tempo_finale = time(NULL) + TEMPO_GIALLO; // tempo di sistema alla fine dell'attesa inizializzato con il tempo del giallo stato = GIALLO; cout << "\n stato iniziale!" << stato << endl; do { while ( time(NULL) < tempo_finale); // ciclo di attesa per il tempo impostato switch (stato) { case GIALLO: { stato = ROSSO; cout << "\n ROSSO!" << endl; tempo_finale = time(NULL)+ TEMPO_ROSSO; }break; case ROSSO: { stato = VERDE; cout << "\n VERDE!" << endl; tempo_finale = time(NULL)+ TEMPO_VERDE; }break; case VERDE: { stato = GIALLO; cout << "\n GIALLO!" << endl; tempo_finale = time(NULL)+ TEMPO_GIALLO; }break; } } while (1); system ("PAUSE"); return 0; }
Pagina 56
ESEMPIO LINSEGNA DI UN BAR, COMPOSTA DELLE TRE LETTERE B A R HA UN DISPOSITIVO DI ILLUMINAZIONE CHE FA ACCENDERE OGNI 5 SECONDI IN ORDINE LE TRE LETTERE. QUANDO LA SCRITTA BAR E COMPLETAMENTE ACCESA, DOPO 5 SECONDI SI SPEGNE DEL TUTTO, TORNANDO COSI ALLO STATO INIZIALE. ANALIZZARE IL SISTEMA E COSTRUIRE IL DIAGRAMMA DEGLI STATI E LE DUE TABELLE DI TRANSIZIONE DEGLI STATI E DI TRASFORMAZIONE DELLE USCITE. Lingresso al sistema il timer che ogni 5 secondi invia un segnale. Lassenza di segnale associata al valore 0; la presenza del segnale associata al valore 1. Le uscite (o risposte) sono le tre luci (una posta in ogni lettera). I valori delle uscite osservabili sono i cambiamenti nellinsegna. Per convenzione indichiamo con X la/e lettera/e spenta nellinsegna insieme degli ingressi: insieme dei valori degli ingressi: insieme delle uscite insieme dei valori delle uscite insieme degli stati stato iniziale {timer} {0 , 1 } // rispettivamente segnale assente, segnale presente { Luce1, Luce2, Luce3 } { XXX, BXX, BAX, BAR } { XXX, BXX, BAX, BAR } { XXX } // tutte le lettere spente
Tabella di transizione degli stati: Timer Timer VI 0 1 STATO XXX BXX XXX BXX BAX BXX BAX BAR BAX BAR XXX BAR Tabella di trasformazione delle uscite: (uguale alla precedente) Si lascia per esercizio il diagramma degli stati e la codifica del programma C che rappresenta il comportamento del sistema (riferirsi, per similitudine, allesempio del semaforo). File: automa_insegna_bar
ULTERIORE ESEMPIO (Simile al precedente, con uno stato in pi) LINSEGNA DI UN BAR, COMPOSTA DELLE TRE LETTERE B A R HA UN DISPOSITIVO DI ILLUMINAZIONE CHE FA ACCENDERE OGNI 5 SECONDI IN ORDINE LE TRE LETTERE. QUANDO LA SCRITTA BAR E COMPLETAMENTE ACCESA, DOPO 5 SECONDI LAMPEGGIA E POI, DOPO ALTRI 5 SECONDI SI SPEGNE DEL TUTTO, TORNANDO COSI ALLO STATO INIZIALE. ANALIZZARE IL SISTEMA E COSTRUIRE IL DIAGRAMMA DEGLI STATI E LE DUE TABELLE DI TRANSIZIONE DEGLI STATI E DI TRASFORMAZIONE DELLE USCITE. Sviluppare completamente lesercizio, compresa la codifica. File: automa_insegna_bar_lamp SISTEMI Classe III I.T.I.S. VOLTA A.Mastore Pagina 57
ESEMPIO LILLUMINAZIONE DI UNA STANZA E COSTITUITA DA DUE LAMPADE L1 E L2 E SU DI ESSE AGISCONO 3 INTERUTTORI I1, I2, I3. I1 AGISCE SU L1 I2 AGISCE SU L2 I3 AGISCE SU ENTRAMBE LE LAMPADE Assunzione: ogni volta si pu premere un solo tasto e le configurazioni permesse per gli ingressi prevedono un solo interruttore premuto su ON. insieme degli ingressi: {I1, I2, I3} insieme dei valori degli ingressi: {NNN, NNP, NPN, PNN} //P sta per premuto insieme delle uscite {L1, L2, L3} insieme dei valori delle uscite {(Spento,Spento),(Spento,Acceso),(Acceso,Spento),(Acceso,Acceso) } insieme degli stati coincide con i valori delle uscite stato iniziale { (Spento,Spento) }
Tabella di transizione degli stati: VI NNN NNP NPN STATO (Spento,Spento) (Spento,Spento) (Acceso,Acceso) (Spento,Acceso) (Spento,Acceso) (Spento,Acceso) (Acceso,Spento) (Spento,Spento) (Acceso,Spento) (Acceso,Spento) (Spento,Acceso) (Acceso,Acceso) (Acceso,Acceso) (Acceso,Acceso) (Spento,Spento) (Acceso,Spento) Tabella di trasformazione delle uscite: coincide con la precedente
Dire in quale stato si troveranno alla fine del processo le lampade, premendo gli interruttori secondo la sequenza di ingressi indicata di seguito: I1, I1, I2, I3, I3, I2, I2, I2, I3, I2, I1
Pagina 58
ESEMPIO LILLUMINAZIONE DI UNA STANZA E COSTITUITA DA TRE LAMPADE L1, L2 E L3 e SU DI ESSE AGISCONO 2 INTERUTTORI I1 e I2. I1 AGISCE SU L1 e L2 contemporaneamente. I2 AGISCE SU L3 solo se le prime 2 sono gi entrambe accese. insieme degli ingressi: insieme dei valori degli ingressi: insieme delle uscite insieme dei valori delle uscite insieme degli stati stato iniziale {I1, I2, } {NN, NP, PN, PP} //P sta per premuto; N non premuto {L1, L2, L3} {(S,S,S),(A,A,S),(A,A,A),(S,S,A) } coincide con i valori delle uscite { (Spento,Spento,Spento) }
Assunzione: ogni volta possibile premere i due tasti, nellordine I1 e poi I2 (leffetto provocato da I2 si basa sullo stato di ingresso di L1 e L2). Tabella di transizione degli stati: VI NN NP PN STATO (S,S,S) (S,S,S) (S,S,S) (A,A,S) (A,A,S) (A,A,S) (A,A,A) (S,S,S) (A,A,A) (A,A,A) (A,A,S) (S,S,A) (S,S,A) (S,S,A) (S,S,A) (A,A,A) Tabella di trasformazione delle uscite: coincide con la precedente
NN NP PN PP
(S,S,S)
PN PN
NN NP (S,S,A)
NN
(A,A,S) PP
PP
NP NP
PP PN (A,A,A)
Dire in quale stato si troveranno alla fine del processo le lampade, premendo gli interruttori secondo la sequenza di ingressi indicata di seguito: I2, I1, I1, I2, I2, I1, I1, I1, I2, I2, I2, I1, I2.
Pagina 60