Logiche e allarmi ================= .. figure:: logicsAndalarms.png :width: 600px :align: center .. raw:: html
Figura 363
Cliccando su Logiche e Allarmi dal menù laterale appare questa schermata che rappresenta le logiche e gli allarmi attivati in questo momento. Dettaglio colonne: .. raw:: html
indicano se la riga corrisponde ad una logica o ad un allarme;
L’ultima valutazione ha dato come esito Falso;
L’ultima valutazione ha rilevato un errore nella composizione della logica (ad esempio si sta facendo l’OR tra 2 stringhe) oppure qualche indirizzo della logica non è valorizzato.
Figura 364
Permette di confrontare o fare delle operazioni tra due variabili con la logica RPN. L’utente per dare un valore all’operando inserito può cliccando con il tasto destro sull’operando inserire dei valori attraverso il menù che compare. .. figure:: inputValueSection.png :width: 600px :align: center .. raw:: htmlFigura 365
In alternativa è possibile trascinare direttamente gli indirizzi dall’albero degli indirizzi sulla destra nella griglia interessata. Se l’indirizzo viene trascinato nell’area vuota della griglia viene aggiunta una nuova condizione, se invece si trascina nell’operando di una condizione esistente quell’operando viene sostituito. Nella barra in alto vi è la possibilità di configurare alcuni parametri, negare i valori di output delle condizioni AND e OR spuntando la casella desiderata, impostare un numero di secondi per verificare se le condizioni immesse sono vere o false e definire una variabile di output che contenga il risultato della logica. La colonna valutazione corrente è compilata come segue: .. raw:: html
la condizione ha attualmente valore Falso;
nella condizione è stato rilevato un errore (ad esempio si sta facendo l’or fra 2 stringhe) (Type mismatch)
uno degli indirizzi della condizione non è valorizzato; cliccando sull' icona viene avviata la lettura di quell’indirizzo.
Figura 366
Possiamo filtrare per **Allarme,Logica generica o Tutti.** Quindi allarme ci farà vedere soltanto gli allarmi, logica generica tutti i casi di logica oppure visualizzare tutto filtrando tutto. Dopo aver selezionato il tipo di filtro premere Filtra per visualizzare l’elenco desiderato. Notazione RPN ______________ La notazione polacca inversa (reverse polishnotation - RPN) è una sintassi utilizzata per le formule matematiche ed è dovuta a JanLukasiewicz, 1958. Con la notazione RPN è possibile effettuare qualsiasi tipo di operazione, con il vantaggio di eliminare le problematiche dovute alle parentesi e alla precedenza degli operatori (prima la divisione, poi l’addizione,ecc…) Alcune calcolatrici professionali utilizzano la RPN in quanto evita l’annotazione di risultati intermedi durante le operazioni. Nella notazione polacca inversa, detta anche notazione postfissa in contrasto con la normale notazione infissa, prima si inseriscono gli operandi e poi gli operatori: un esempio di RPN è 3 2 + che equivale al classico 3 + 2, oppure 10 2 / che fornisce 5. Quando si utilizza la notazione RPN si fa conto di possedere una pila (stack) su cui pian piano si accumulano gli operandi: prima si impila il 3,poi il 2. Un operatore invece preleva dalla cima della pila tutti gli operandi di cui ha bisogno, esegue l’operazione, e vi rideposita il risultato. L’elemento più in basso è da considerarsi sempre l’operando sinistro. Se l’espressione completa è corretta, alla fine di tutte le operazioni sulla pila si avrà un solo elemento, il risultato finale. .. figure:: whiteImage.png :width: 600px :align: center .. raw:: htmlFigura 367
Questa pila permette, come già detto, di evitare l’utilizzo di parentesi per prioritizzare le operazioni, basta inserire nella parte sinistra della formula tutti gli operandi delle operazioni a parentesizzazione più esterna, al centro le operazioni più elementari, alla destra tutti gli operatori di combinazioni dei risultati delle operazioni centrali con gli operandi già presenti. Esistono infatti algoritmi di conversione sia dalla notazione infissa a quella postfissa e viceversa. Come si può notare, la RPN è facilmente implementabile sui computer. Un esempio: (10 * 2) + 5 diventa 5 10 2 * + Prima della moltiplicazione sono presenti sulla pila 5, 10, 2. Il "*" recupera i primi due elementi (10, 2) li moltiplica e modifica la pila in modo che contenga 5, 20. L'operazione "+" addiziona 5 e 20, ora presenti nella pila, sostituendoli con il risultato: 25. Altri esempi più complessi: ((10 * 2) + (4 - 5)) / 2 in RPN sarà 10 2 * 4 5 - + 2 / (7 / 3) / ((1 - 4) * 2) + 1 diventa 1 7 3 / 1 4 - 2 * / + oppure 7 3 / 1 4 - 2 * / 1 + La notazione polacca inversa prende spunto dalla notazione polacca semplice, in cui gli operatori vengono posti prima degli operandi (quindi: + 1 2 invece di 1 2 +), ma solo la prima è facilmente implementabile in modo elettronico o via software, ed è quindi diventata ben più conosciuta. Notazione RPN in BIG Studio _____________________________ Gli elementi della sintassi utilizzata in BIG Studio, che permettono di scrivere una logica in notazione RPN sono i seguenti: .. raw:: htmlFigura 368
.. raw:: html