IL LABVIEW LEZ_3. Corso di

Documenti analoghi
LabVIEW parte II. Ing. Gianfranco Miele November 3, 2010

LabView IL LABVIEW LEZ_3. Parte 3. Corso di Strumentazione Virtuale. Corso di

Corso di. Misure per la Automazione e la Qualità (Studenti Ingegneria Elettrica III anno Nuovo Ordinamento ) IL LABVIEW LEZ_3

Evoluzione della Strumentazione. Software Architecture. Multiplatform Compatibility

Corso di Misure per l Automazione e la Produzione Industriale

IL LABVIEW LEZ_2. Corso di. Misure per la Automazione e la Qualità (Studenti Ingegneria Elettrica III anno Nuovo Ordinamento )

LabView Parte 1 IL LABVIEW LEZ_1. Corso di. Misure per la Automazione e la Qualità (Studenti Ingegneria Elettrica III anno Nuovo Ordinamento )

File binari e file di testo

LabVIEW (Laboratory Virtual Instrument Engineering Workbench)

LabVIEW - generalità

L ambiente di lavoro di LabVIEW

Introduzione al linguaggio di programmazione LabVIEW

Operazioni base di Input e Output

Introduzione a Visual Studio 2005

LabVIEW. Laboratory Virtual Instrument Engineering Workbench. Esempio. Misure Elettroniche 1. Introduzione. Differenze tra strumento stand-alone e VI

Laboratory Virtual Pannello frontale

Dipartimento di Ingegneria Industriale e dell Informazione. Programmazione di un convertitore digitale/analogico

Le operazioni di Input e Output

Corso di Access. Prerequisiti. Modulo L2A (Access) Struttura delle tabelle

Programma del corso Elettronica 2

Detail ELETTRONICA INDUSTRIALE

Gestione dei file di dati

Sistemi Operativi FILE SYSTEM : INTERFACCIA. D. Talia - UNICAL. Sistemi Operativi 8.1

Codifica informazione testuale

Interfaccia del file system

4.2 Copy User Data (ELIX_DISPLAY_ATTR - DisplayCopyUserData) Read Only Field (ELIX_DISPLAY_ATTR - DispalyReadOnly)... 10

Cosa serve per cominciare?

Gestione di files Motivazioni

Scrittura formattata - printf

Dati due punti sul piano calcolare la loro distanza

Corso di Laboratorio di Sistemi Operativi

Informatica/ Ing. Meccanica/ Ing. Edile/ Prof. Verdicchio/ 02/04/2014/ Appello straordinario/ Foglio delle domande / VERSIONE 1

Raccolta di tutorial Python #1: basi e Tkinter dal sito francescomilanese.com SOMMARIO

Corso di Informatica. Fogli di Calcolo. Fogli di Calcolo. Corso di Laurea in Conservazione e Restauro dei Beni Culturali

Rappresentazione di interi

Operazioni su file di caratteri

INTRODUZIONE A VISUAL STUDIO

Dipartimento di Ingegneria Industriale e dell Informazione. Realizzazione e programmazione di un convertitore digitale/analogico

Fogli di Calcolo. Corso di Informatica. Fogli di Calcolo. Fogli di Calcolo. Corso di Laurea in Conservazione e Restauro dei Beni Culturali

I CARATTERI E LE STRINGHE

Microsoft Access. Microsoft Access. Maurizio Rebaudengo, Paolo Garza 1. Microsoft Access. Creazione base di dati. Apertura di una base dati

LabView: Corso Base pag. 1

Università di Cagliari

PIEDINO NOME DESCRIZIONE

Via Oberdan, 42, Faenza (RA) Italy Tel.: Fax: WAVE MODE MOBILE GUIDA RAPIDA

Definire una chiave primaria. Microsoft Access. Definire una chiave primaria. Definire una chiave primaria. Definire una chiave primaria

4. I moduli in Access 2000/2003

Array. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 11. A. Miola Dicembre 2007

Insert > Object > Chart

Perchè i files? Realizzano la persistenza dei dati. Sono delle strutture di dati sequenziali. dati che sopravvivono all esecuzione del programma

Quando usare file di dati

ESERCITAZIONI ACCESS

Lab 01 Introduzione a Codelite

L INTERFACCIA GRAFICA DI EXCEL

Rappresentazione di dati: caratteri. Appunti a cura del prof. Ing. Mario Catalano

SPAC Automazione 2019

La Back Office Console consente di costruire lo scheletro degli schema.

Conversione Analogico/Digitale

14Ex-Cap11.qxd :20 Pagina Le macro

Breve guida al linguaggio FORTRAN 77

3.5.1 PREPARAZ1ONE I documenti che si possono creare con la stampa unione sono: lettere, messaggi di posta elettronica, o etichette.

Indirizzamento, lettura e scrittura della memoria

Corso di Informatica

Codifica dell informazione

Introduzione a LabVIEW

DISPENSA ACCESS (OFFICE 2010 BETA)

Gestione della configurazione Input/Output PLC Cosa c'è di nuovo?

Oggetti Javascript. Prof. Francesco Accarino IIS Atiero Spinelli Sesto San Giovanni via leopardi 132

Lezione PSPICE n.2. Università degli Studi di Napoli Federico II CdL Ing. Elettrica Corso di Laboratorio di Circuiti Elettrici

Rappresentazione digitale delle informazioni

Università degli Studi di Napoli Federico II CdL Ing. Elettrica Corso di Laboratorio di Circuiti Elettrici

A. Ferrari Java: Stream e File

Manuale di configurazione e utilizzo Barcode card

Laboratorio di Programmazione (Corso di Laurea in Informatica)

Il Manuale di KXSLDbg. Keith Isdale Traduzione del documento: Samuele Kaplun Traduzione del documento: Simone Solinas

Dispense dell insegnamento di Laboratorio di GIS per la pianificazione

Dipartimento di Ingegneria Industriale e dell Informazione. Sistema per la misura del guadagno di corrente beta in transistori bipolari

Guida rapida Flexem Studio

Calcolare con il computer: Excel. Saro Alioto 1

FUNZIONI. Ivan Lanese

Laboratorio di Calcolo Numerico Laboratorio 4: Grafici di convergenza e functions

Streams e disk files

M. Bartolo. Istituto di Istruzione Secondaria Superiore

Istituto Centrale per il Catalogo Unico delle Biblioteche Italiane e per le Informazioni bibliografiche. Manuali utente per SBN WEB

SPAC Start Impianti 18 Creazione di un Blocco (componente) e Blocco Cartiglio

Fondamenti di Informatica T-1 CdS Ingegneria Informatica. Introduzione agli ambienti di sviluppo MS Visual Studio 2005/2008/2010 CodeLite 6.1.

CODIFICA DI CARATTERI

Gestione dei File. Credits Prof. Campi

INPUT E OUTPUT DI VALORI NUMERICI

Files in C++ Fondamenti di Informatica. R. Basili. a.a

MODULO 5 - USO DELLE BASI DI DATI 2 FINALITÁ

Controllo Accessi Telnet

Inserire record. Microsoft Access. Inserire/modificare record. Inserire record. Cancellare record. Inserire/modificare record

File. Molto astratta: file ha un nome (ex. Pippo.c), ed altre caratteristiche (dimensione, tipo, etc). Operazioni: copiare, cancellare, eseguire..

GUIDA DOCENTE ALL USO DELLA PIATTAFORMA EXCHANGE E-LEARNING - Lotus Quickr

Concetto di stream. c i a o \0. c i a o \0. c i a o \0

La rappresentazione delle informazioni

Transcript:

Corso di Misure per la Automazione e la Produzione Industriale (Studenti Ingegneria Elettrica e Meccanica V anno Vecchio Ordinamento) Misure per la Automazione e la Qualità (Studenti Ingegneria Elettrica III anno Nuovo Ordinamento ) Strumenti e Misure per l Automazione (Studenti Ingengeria Meccanica III anno Nuovo Ordinamento) IL LABVIEW LEZ_3 Luigi Ferrigno ferrigno@unicas.it Gruppo Misure Elettriche ed Elettroniche Facoltà di Ingegneria, DAEIMI. Università degli Studi di Cassino

Corso di Strumentazione Virtuale LabView Parte 3 Stringhe I/O su file Variabili locali e globali Property nodes Applicazioni

Le Stringhe Una stringa è una sequenza di caratteri Ogni carattere ha una corrispondente codifica numerica in byte (8 bit) secondo lo standard ASCII I primi 32 dei 256 caratteri ASCII non sono visualizzabili (controllo) Gli ultimi 128 caratteri costituiscono il set esteso Impieghi: visualizzazione di messaggi, I/O su file, controllo di strumentazione Esistono controlli e indicatori di tipo stringa Stringa: V D C - 1 2. 4 5 6 # ASCII: 86 68 67 32 45 49 50 46 52 53 54

Display Modes per gli indicatori stringa Normal display Password display \ code display Hex display Backslash codes per alcuni caratteri di controllo: \b backspace \s spazio \r return (CR) \n new line (LF) \t tab

Funzioni per le stringhe (1) String Length String Length = 20 Concatenate Strings Strings The quick brown fox jumped over the lazy dog. Concatenated String

Funzioni per le stringhe (2) String Subset String Length Offset DC Substring Match Pattern quick brown fox

Funzioni per le stringhe (3) Format Into String ( è resizable ) Scan From String ( è resizable )

Le stringhe di formato " Indicano il formato, il tipo di dato, il numero di caratteri, l'allineamento ed il numero di cifre decimali (per i floating point) con cui visualizzare un dato " Si usano come nella funzione printf()del linguaggio C " Esempio: Risultato = %.1f Risultato = 12.5 %d intero con segno %u intero senza segno %s stringa %f floating point (15.012)...... " Dal menu di contesto, Edit Format String apre una finestra di dialogo che facilita la preparazione della stringa di formato

Funzioni per l' I/O su File Alto livello: Read/Write to spreadsheet file Read/Write characters to file Read lines from file Read/Write to binary file Livello intermedio: Open, Read, Write, Close Livello avanzato: Gestione directory Dipendenti dal S.O. File dialog

Funzioni per i file di livello intermedio Gestione diretta delle operazioni sui file: Apertura del file: Lettura o scrittura: Chiusura del file: Gestione errori Open/Create/Replace File Read File e Write File Close File

Scrittura su file Funzioni di livello intermedio File path: il formato dipende dal s.o. Refnum: identifica il file nel seguito error: cluster x gestione errori function: modalià di apertura E'un array di byte (8 bit)

La Read File per default restituisce stringhe Lettura da file Funzioni di livello intermedio Il contenuto di un file può avere diverse rappresentazioni

Lettura da file Funzioni di livello intermedio Costante byte Array di byte Il tipo di dato connesso al Byte stream type fissa il tipo degli elementi dell'array in uscita dalla Read File Analogamente, la Write File è una funzione polimorfica

Gestione errori Funzioni di livello intermedio Non appena chiamata, ogni funzione controlla il connettore error in; Se trova status = True, significa che a monte si è verificato un errore: non esegue alcuna operazione e termina; Se si verifica un errore durante la sua esecuzione, error out = True. Error Cluster: C è stato errore? Numero associato all'errore In quale VI si è verificato?

Lettura da file: condizione di fine file (EOF) Funzioni di livello intermedio E' possibile usare il campo Code del Cluster di errore per rilevare la condizione di raggiunta fine del file Current: Legge il prossimo byte a partire dalla posizione corrente Count: Numero di byte da leggere ad ogni chiamata

File di testo e file binari Un file di testo è una sequenza di stringhe di caratteri ASCII delimitate da sequenze di fine linea (CR+LF): a = 1.234e-5<CR><LF>b = 200<CR><LF>z=FALSE... Facilmente interpretabile a = 1.234e-5 b = 200 z=false Scambio dati con altre applicazioni (fogli elettronici o word processor) La rappresentazione dei valori numerici è a lunghezza variabile L'accesso ai dati deve essere sequenziale In un file binario la codifica dei dati dipende dalla particolare applicazione La rappresentazione dei valori numerici è a lunghezza fissa, e richiede un numero minore di byte L'accesso può essere casuale

File di tipo Foglio Elettronico (Spreadsheet) I dati sono organizzati in righe e colonne Le colonne sono separate da un delimitatore (TAB) Le righe sono separate da sequenze new line (CR+LF) File: Nel foglio elettronico: 0<TAB>0.4258<CR><LF> 1<TAB>0.3073<CR><LF> 2<TAB>0.9453<CR><LF> 3<TAB>0.964<CR><LF> 4<TAB>0.9517<CR><LF>

Scrittura su spreadsheet Con funzioni di livello intermedio Ora la Write File scrive stringhe (polimorfismo)

Funzioni di alto livello per i file Write to Spreadsheet File Read from Spreadsheet File Write Characters to File Read Characters from File Read Lines from File Effettuano direttamente le operazioni più frequenti di I/O su file di testo Aprono e chiudono il file (non deve farlo il chiamante) Nel loro diagramma a blocchi chiamano le funzioni di livello intermedio

Scrittura su spreadsheet Con funzioni di alto livello Autoindexing abilitato La funzione Write to Spreadsheet File accetta in ingresso array 1D e 2D Se non specifica un nome di file, si apre una finestra di dialogo Apri file.. Si può specificare il carattere delimitatore (TAB per default), trasporre l'array 2D, aggiungere i dati ad un file esistente (append)

Lettura da spreadsheet Con funzioni di alto livello 0,00\t0,35\r\n1,00\t0,19\r\n2,00\t0,28\r\n3,00\t0,29\r\n Stringa rimanente

Lettura da spreadsheet Con funzioni di alto livello Altre funzioni di alto livello: Write Characters to File: Scrive una stringa di caratteri in un file Read Lines from Files: Legge un numero specificato di linee da un file Binary File VIs: 4 funzioni per la lettura/scrittura di array di I16 o SGL su file

Variabili locali (locals) Sono strutture che consentono di Scrivere su un indicatore da più punti di un VI Leggere da un controllo da più punti di un VI Scrivere su controlli Leggere da indicatori

Esempio In un VI sono presenti due cicli while eseguiti parallelamente Si vogliono fermare entrambi alla pressione di un singolo bottone Soluzioni sbagliate:

Soluzione corretta: Terminale del controllo (tasto stop ) Variabile locale configurata come read local (sorgente dati) associata al controllo Come creare una variabile locale: Tasto destro del mouse sul terminale e Create >> Local Variable oppure Dalla palette funzioni Structures >> Local Variable ; selezionare poi (tasto destro sulla variabile) con Item Select il controllo/indicatore Infine, scegliere se si vuole leggere o scrivere da/verso la variabile

Note sulle variabili locali Un controllo/indicatore al quale si vuole associare una variabile locale deve avere una label, che diventerà il nome della variabile stessa La scrittura su una local aggiorna il corrispondente controllo/indicatore La lettura da una local legge il valore corrente del corrispondente controllo/indicatore

Inizializzazione di controlli Tramite le locals è possibile dare valori iniziali ai controlli Le inizializzazioni di tutti i controlli possono essere raccolte in una sezione apposita del codice (startup) Se necessario, i valori di inizializzazione si possono caricare da file. Una subpalette di funzioni ( Configuration file ) permette la gestione di file di configurazione

Variabili globali (globals) Le variabili globali hanno usi simili alle locals, ma sono accessibili da altri VI Impieghi: Controllo dell'esecuzione di uno o più VI da un altro VI Condivisione di dati tra più VI Sono un tipo particolare di VI: I dati sono memorizzati negli elementi del pannello Non hanno diagramma a blocchi Write Global Read Global

Creare ed usare variabili globali Palette Structures >> Global Variable Dal suo menu di contesto Open Front Panel Inserire nel pannello gli elementi necessari (label obbligatoria) Salvare il VI - variabile globale Nel diagramma del VI di partenza, dal menu di contesto della variabile globale: Select Item per scegliere l'elemento Da altri VI, la variabile globale è accessibile tramite la voce Select a VI... della palette delle funzioni

Note sull'uso di variabili locali e globali Inizializzare ogni variabile globale (scrivendovi) prima di leggerne il contenuto. In assenza di inizializzazione, sarà restituito un valore di default. Le variabili locali e globali sono un'eccezione al dataflow programming Rendono il diagramma più difficile da capire L'accesso ai dati in una variabile è più lento Attenzione ai casi di race condition! Risultato x = x * 5 x = x + 2 oppure x + 2 x = x * 5 Usare le variabili solo quando non esistono altre possibilità

Property nodes (o attibute nodes) Consentono di accedere in lettura e scrittura alle proprietà di un elemento del pannello (non al contenuto) Esempi: Il colore del testo di un indicatore numerico La condizione di abilitato/disabilitato di un bottone Le voci di un ring control Scale e cursori di un chart Posizione e dimensioni di un controllo/indicatore

Creazione di un property node Dal menu di contesto di un elemento del pannello o del suo terminale: Create >> Attribute Node Usare l'operating tool per scegliere l'attributo

Usare i property nodes Scegliere (tasto destro) se leggere o scrivere da/verso l'attributo Altre proprietà si possono aggiungere ridimensionando il property node Il colore aiuta ad individuare il tipo di dato Alcune proprieà sono clusters - usare Bundle e Unbundle Ordine di valutazione degli attributi: dall'alto verso il basso Usare la help window (Ctrl-H) per avere informazioni su un attributo

Attributi comuni di controlli/indicatori Visible è visibile Disabled se = 2 non è modificabile dall'utente (aspetto inalterato) se = 1 è non modificabile e grigio se = 0 è modificabile Key Focus possiede il cursore Position cluster posizione (left e top): pixel dall'angolo in alto a sx Blinking lampeggio intermittente Format tipo enumerato: decimale, scientifico,... Precision numero di cifre decimali... Inoltre, possono essere lette/modificate tutte le stringhe di un controllo/indicatore (label,caption,...) ed i colori delle sue varie parti L'elenco degli attributi cambia a seconda deltipo di controllo/indicatore

Gestione di un menu Inizializzazione Proc1 Menu Scelta? Sì Proc2 Proc3 No No Fine Fine? Sì