Magazzino del Sole. A.S Istituto Istruzione Superiore "Benedetto Castelli" Classe 5 M Informatica ABACUS

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Magazzino del Sole. A.S. 2012-2013 Istituto Istruzione Superiore "Benedetto Castelli" Classe 5 M Informatica ABACUS"

Transcript

1 A.S Istituto Istruzione Superiore "Benedetto Castelli" Magazzino del Sole Classe 5 M Informatica ABACUS Studenti: Boldori Enrico Muhametaj Levi Viola Daniele 1

2 Indice 1. Introduzione Scopo del Progetto Impianto Termico 3.1 Descrizione L'interfaccia Web Applet Java Struttura dell'applet Grafica in un'applet: la classe Graphics2D Acquisizione dei dati QBASIC: semplice ed efficace Implementazione del database MySQL Impianto Fotovoltaico 4.1. Introduzione Obiettivi Parte Web Struttura del database Rappresentazione grafica Tipi di grafici scelti Parte Web - Codice Connessione al database Grafica Web Parte software Introduzione al protocollo FTP Pacchetti Java Connessione al database Connessione FTP e modalità di lavoro

3 4.4.4 Download di un file Inserimento nel database Trasferimento Seriale 5.1 Obiettivi Introduzione Parte Hardware Tipologie di trasmissioni Piedinatura RS Introduzione all'uart Trasmissione e ricezione Parte software Trasmissione Ricezione Bibliografia

4 Introduzione Questa tesina, realizzata durante l'anno scolastico , tratta del progetto denominato "Magazzino del Sole"; esso è suddiviso in una parte riguardante la gestione termica di un serbatoio per l'acqua calda ed una che riguarda la gestione dei dati provenienti da tre diversi campi di pannelli fotovoltaici. La gestione termica del serbatoio riprende un progetto di maturità già iniziato nel 2006, che prevedeva la realizzazione di un impianto di riscaldamento di media scala da applicare ad una parte dell'edificio scolastico, utilizzando l'energia proveniente dal sole tramite l'impiego di pannelli solari termici. Il sistema proposto prevedeva l'accumulo del calore in un serbatoio di grande capacità termica durante la stagione favorevole e il successivo prelievo nei tempi e nelle misure dettate dalle condizioni ambientali. Il serbatoio rappresenta quindi il nucleo dell'intero sistema, in quanto costituisce l'elemento critico per valutare la fattibilità e la razionalità dell'intero progetto. L'impianto funziona grazie al principio di stratificazione dell'acqua: in un serbatoio esteso in altezza l'acqua riscaldata, se immessa con opportune modalità, si stratifica in base alla temperatura; gli strati che si vengono a formare tendono a non mescolarsi spontaneamente, e possono essere mantenuti separati per lunghi periodi. Pertanto, sia in fase di accumulo che di utilizzo, è stata prevista la possibilità di immettere e prelevare acqua a diverse altezze, in corrispondenza delle diverse temperature dei singoli strati. Ciò permette di sfruttare la risorsa termica in maniera ottimale, ottenendo la massima efficienza durante il suo utilizzo. Il nuovo progetto prevedeva la collaborazione di studenti appartenenti a due indirizzi di studio differenti, Elettrotecnica ed Informatica. In particolare, gli studenti di Elettrotecnica si sono occupati della realizzazione pratica dell'impianto, mentre noi studenti di Informatica ci siamo fatti carico dell'acquisizione dei dati e della loro successiva informatizzazione, in modo che fossero visibili su internet in maniera chiara e immediata. Essendo il progetto ancora in fase sperimentale, ci siamo limitati a lavorare sulla rete interna dell'istituto, senza quindi fornire un accesso remoto via internet. Per quanto riguarda la gestione dei dati provenienti dai pannelli fotovoltaici ci siamo occupati di selezionare i parametri di funzionamento per noi più significativi (potenza, corrente e voltaggio) e di rappresentarli graficamente in una forma comprensibile a tutti mediante l'utilizzo di grafici e tabelle. Ciò consente di confrontare i tre diversi tipi di moduli fotovoltaici, così da capire quale tipo di modulo presenta il rendimento migliore ed in quali condizioni. Scopo del Progetto Questo progetto punta alla realizzazione di un sistema informatico che permetta la consultazione in maniera semplice ed immediata dei dati provenienti dall'impianto denominato "Magazzino del Sole". Essi comprendono le misure di temperatura relative al serbatoio e i valori relativi al funzionamento dei tre diversi campi di pannelli fotovoltaici. La soluzione da noi proposta prevede quindi la realizzazione di un'interfaccia web che permetta all'utente di scegliere quali dati visualizzare, se quelli relativi al serbatoio o quelli provenienti dai pannelli fotovoltaici. Quest'interfaccia deve essere accessibile dalla rete interna dell'istituto, e deve essere il più possibile semplice da utilizzare. 4

5 Impianto Termico Descrizione L'impianto è costituito da un serbatoio cilindrico in lamiera di acciaio inox non in pressione; esso presenta un diametro di 1.5m, un'altezza di 2.5m e un volume di circa 4400 litri. Per impedire l'evaporazione dell'acqua in esso contenuta e per consentirne l'ispezione, il serbatoio è dotato di un coperchio removibile a tenuta stagna. La rete idraulica esterna è costituita da 6 tubi ai quali capi sono presenti delle valvole a tre vie, che possono essere comandate liberamente per decidere l'altezza da cui prelevare acqua o in cui immetterla. L'attacco di ciascuno di questi tubi corrisponde a uno dei 6 punti di misura (ve ne sono inoltre altri 5 intermedi, per un totale di 11 misurazioni). Le misurazioni sono effettuate tramite un'asta in plastica sulla quale sono montate, a intervalli regolari, 11 sonde di temperatura. Per ottenere una misurazione affidabile, l'asta è inserita in una canalina insieme ad un tubo ricavato da un idrante; questo tubo viene successivamente riempito d'acqua, in modo che la pressione spinga l'asta e le sonde contro il serbatoio. All'interno dell'acqua utilizzata dai pannelli termici per il riscaldamento è presente anche un liquido antigelo; è perciò indispensabile che la massa d'acqua presente nel serbatoio non ne venga mai a contatto. Ciò è reso possibile dalla presenza di uno scambiatore di calore, che permette alle due masse d'acqua di scambiarsi energia termica senza però mescolarsi. Per quanto riguarda l'isolamento termico, sono stati utilizzati tre diversi tipi di materiale isolante a seconda delle esigenze: il fondo del serbatoio, dovendone sostenere parte del peso, è stato isolato tramite l'utilizzo di polistirolo espanso, per uno spessore di circa 20 cm; la superficie esterna del serbatoio sarà rivestita da uno strato spesso circa 50cm di lana di vetro; infine, il coperchio presenta un minimo rivestimento di polistirolo. 5

6 L'interfaccia web L'interfaccia web si presenta in maniera molto semplice ed intuitiva; essa presenta due pulsanti che permettono di decidere a quale parte del progetto accedere. Scegliendo il tasto "Visualizza l'animazione", accediamo all'applet java che ci consente di visualizzare i dati relativi ad un specifico giorno scelto dall'utente tramite un'animazione che riporta lo schema di funzionamento del serbatoio. Applet Java Le applet sono classi Java che vengono avviate a partire da una pagina HTML; quando nel codice di una pagine HTML il browser incontra un tag che richiede la visualizzazione di un'applet ne scarica il codice e lo esegue visualizzando l'output nella finestra del documento. Per poter eseguire le applet il browser deve essere dotato di una JVM (Java Virtual Machine). Il browser può contenere già una propria JVM o può utilizzare un plug-in. Questa seconda modalità permette di utilizzare la versione più recente di Java, installando il plug-in corrispondente. Per poter eseguire l'applet la JVM del browser deve essere compatibile con la versione del JDK usata per sviluppare l'applet. Le applet di solito vengono utilizzare per realizzare grafica, per gestire l'interazione con l'utente e per creare animazioni; dato che sono eseguite nella finestra del browser, sono più semplici da realizzare delle applicazioni grafiche, perchè sono già dotate di una finestra. Le applet però normalmente hanno alcune limitazioni, per motivi di sicurezza: non possono leggere e scrivere file sul disco del computer dell'utente (e nemmeno usare metodi nativi che facciano queste operazioni) in modo da non poter inserire virus o leggere informazioni riservate; possono salvare delle informazioni solo sul disco del computer da cui proviene la pagina web; non possono aprire nuove connessioni di rete per stabilire collegamenti con altri computer in modo da non poter inviare informazioni ad altri computer o messaggi di posta; non possono eseguire programmi già esistenti sul file system locale; non possono caricare programmi nativi della piattaforma locale, comprese le librerie DLL. 6

7 Per inserire un'applet in una pagina HTML si utilizza il tag <applet> : <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/tr/html4/loose.dtd"> <html> <head> <title>magazzino del Sole</title> </head> <body> <center> <p> <applet width="100%" height="650" code="magazzinodelsole.magazzinodelsole" archive="magazzinodelsole.jar"> Sorry, your browser doesn't support Java. </applet> </p> </center> </body> </html> Il tag <applet> presenta i seguenti attributi: width e height: sono le dimensioni dell'area di visualizzazione dell'applet; code: è il codice.class dell'applet; archive: indica il file jar se l'applet è contenuta in un file jar. Le applet differiscono dalle normali applicazioni in quanto non presentano un metodo main(), ma ne implementano 4 specificamente pensati per l'esecuzione via browser: il metodo init(): è il metodo che viene eseguito per primo quando si avvia l'applet, ed è utilizzato per eseguire, se necessario, l'inizializzazione dell'applet stessa; il metodo start(): questo metodo viene chiamato sia dopo il metodo init() sia quando l'utente, dopo aver cambiato pagina del browser, ritorna su quella contenente l'applet; il metodo stop(): viene chiamato ogni volta in cui l'utente decide di abbandonare la pagina contenente l'applet; il metodo destroy(): questo metodo viene chiamato solamente se il browser viene chiuso in maniera corretta, per liberare le risorse precedentemente occupate dall'applet; il metodo paint(): viene eseguito ogni volta che l'applet ha la necessità di aggiornale le parte di schermo alla quale ha accesso. 7

8 Struttura dell'applet La nostra applet vuole rappresentare in maniera molto schematica l'intero circuito di funzionamento dell'impianto termico. Essa è divisa in due aree principali: la prima, a sinistra, permette all'utente di scegliere una data tramite un calendario e di avviare/interrompere l'animazione; la seconda, a destra, è un'area disegnabile tramite la grafica 2D che rappresenta l'animazione vera e propria. Quest'ultima, benchè schematica, cerca di rappresentare i collegamenti effettuati nella realtà in maniera il più possibile fedele. Troviamo quindi le 11 sonde di temperatura, i 6 attacchi per la presa/immissione dell'acqua, le due pompe, lo scambiatore di calore come elemento centrale, la sonda per la misurazione della temperatura dell'aria esterna, il gruppo dei pannelli termici, il pannello pilota e l'orario in cui è stata effettuata la misurazione. Data la mole di dati che dovevamo mostrare, abbiamo ritenuto opportuno mostrare solamente le ore e i minuti, tralasciando i secondi. Calendario che permette di scegliere la data da visualizzare Tutte le temperature mostrate sono in gradi Celsius ( C), e sia gli strati del serbatoio sia le prese assumono un colore diverso in base alla loro temperatura; le pompe invece assumono un colore verde quando sono attivate. 8

9 L'applet è formata da varie classi: la classe MagazzinoDelSole: è l'applet vera e propria. Si occupa della creazione dei controlli principali e della gestione degli eventi del mouse (come, ad esempio, il click sul tasto Start/Stop per avviare/interrompere l'animazione); la classe Animazione: tramite una connessione al database recupera i dati della data selezionata dall'utente, e gestisce l'aggiornamento dei dati della figura tramite un thread; la classe Pompa: rappresenta ciascuna delle pompe presenti nel progetto. Possiede una variabile che indica se la pompa è attiva o meno; la classe Presa: rappresenta ciascuna delle 6 prese di immissione dell'acqua. Grazie ad una variabile, può assumere 3 diversi stati: o Chiuso: è detta anche posizione di bypass. L'acqua passa attraverso la valvola; o Input: indica che la valvola sta immettendo acqua nel serbatoio; o Output: indica che la valvola sta prelevando acqua dal serbatoio. la classe Livello: ogni livello rappresenta un punto di misurazione, e presenta un colore diverso in base alla temperatura; la classe Pannelli: rappresenta sia i pannelli termici che il pannello pilota; la classe Scambiatore: rappresenta lo scambiatore di calore. Le classi Pompa, Presa, Livello, Pannelli e Scambiatore sono strutturate in maniera molto simile: ogni classe contiene un costruttore che inizializza una figura (che può essere una forma geometrica qualunque), dei metodi per leggerne/impostarne il colore e dei metodi per leggere/impostare la temperatura dell'oggetto. Le classi Pompa e Presa contengono inoltre dei metodi per leggerne/impostarne lo stato. Grafica in un'applet: la classe Graphics2D In Java, per effettuare operazioni di disegno, ci si avvale della classe Graphics, una classe che supporta le capacità grafiche dell'applet, quali disegnare linee, forme, caratteri e presentare immagini sullo schermo, mediante una serie di metodi. La classe Graphics non può essere istanziata, ma il metodo paint() ne fornisce un oggetto attraverso il quale è possibile disegnare sullo schermo. Il sistema di coordinate bidimensionali presenta l'origine nel punto (0, 0) in alto a sinistra; da ciò ne consegue che i valori positivi della coordinata x si ottengono spostandosi verso desta, mentre i valori positivi della coordinata y si ottengono muovendosi verso il basso. La classe Graphics2D estende la classe Graphics e ne aggiunge nuove funzionalità, permettendo quindi operazioni di disegno più complesse. I metodi appartenenti alla classe Graphics2D utilizzati all'interno dell'applet sono i seguenti: il metodo setcolor(color c): permette di impostare il colore che verrà utilizzato nelle successive operazioni di disegno; il metodo fill(shape s): esso prende come parametro un oggetto della classe Shape e lo disegna riempito con il colore precedentemente impostato. La classe Shape comprende gli oggetti di tipo Rectangle2D, Ellipse2D e Polygon utilizzati per disegnare i vari componenti dell'impianto; 9

10 il metodo clearrect(int x, int y, int width, int height): permette di cancellare la parte di piano delimitata dalle coordinate passate come parametri. Viene usato per operazioni di disegno che rischiano di sovrapporsi con oggetti disegnati in precedenza; il metodo setfont(font f): premette di impostare il tipo di carattere che verrà utilizzato nelle operazioni di disegno del testo; il metodo drawstring(string s, int x, int y): consente di disegnare il testo contenuto nella stringa passata come parametro e di posizionarlo alle coordinate (x, y). Esso utilizza l'ultimo font impostato dal metodo setfont(font f). Acquisizione dei dati La realizzazione del sistema di acquisizione dei dati ha richiesto la collaborazione di entrambe le classi; esso comprende: 11 sonde di temperatura di tipo NTC collegate al serbatoio; 6 sonde di temperatura di tipo PT1000, che permettono la misurazione delle temperature dello scambiatore (4), dell'aria esterna e del pannello pilota; un multimetro digitale ad alta precisione FLUKE con possibilità di collegamento via porta seriale; il sistema di indirizzamento delle sonde, realizzato grazie a dei relè, che permette di controllare fino a 32 sonde; un computer che monta il sistema operativo DOS, in grado di interfacciarsi in maniera semplice con le altre tecnologie tramite l'utilizzo del collegamento seriale e di quello parallelo; un applicazione realizzata in QBASIC, che gestisce l'indirizzamento delle sonde e l'acquisizione dei dati, oltre al loro salvataggio in un formato da noi specificato; un secondo computer, che monta il sistema operativo Windows XP, in grado di gestire il trasferimento dei dati via collegamento seriale ed il loro successivo inserimento in un database MySQL. 10

11 QBASIC: semplice ed efficace Il programma in QBASIC, parte fondamentale dell'acquisizione dei dati, viene eseguito in maniera continua sulla macchina DOS. Per ciascuna delle sonde di temperatura il programma presenta in uscita sulla porta parallela un output diverso (una somma di potenze di 2); ciò serve a eccitare soltanto i relè che conducono a quella sonda. La misura viene effettuata da un multimetro digitale FLUKE ad alta precisione; le sonde sono infatti delle termoresistenze, ed il multimetro ne misura il valore in quel momento. Questo dato viene trasferito sul computer tramite collegamento seriale; il programma procede poi alla conversione di tale dato in un valore di temperatura. Di seguito viene riportato un estratto di codice che illustra il protocollo di comunicazione col multimetro: PRINT #1, "ohms; format 1" 'Comunico al multimetro di voler misurare la resistenza (Ohm) LINE INPUT #1, p$ 'Ricevo due stringhe (p e q) non necessarie LINE INPUT #1, q$ PRINT #1, "meas?" 'Richiedo il dato al multimetro LINE INPUT #1, p$ 'Delle tre linee che ricevo, solo la seconda mi interessa, LINE INPUT #1, r$ ' in quanto contiene il dato vero e proprio LINE INPUT #1, q$ b$ = RIGHT$(r$, 11) 'Elimino i caratteri di cui non ho bisogno r = VAL(b$) 'Estraggo il valore numerico dalla stringa Le sonde collegate al serbatoio sono di tipo NTC, mentre le altre sono di tipo PT1000. Questo determina due tipi di conversione diversi: per le sonde di tipo NTC, il valore di resistenza viene convertito in gradi tramite l'utilizzo di una tabella (riportata a fine paragrafo) che contiene i valori della resistenza ogni 5 gradi. Per trovare i valori intermedi è necessario quindi eseguire l'interpolazione tra i due valori in cui cade la misura; per le sonde di tipo PT1000, la conversione viene effettuata sottraendo 1000 al valore misurato e dividendo successivamente per una costante (3.85). Una volta misurati i dati di tutte le sonde, essi vengono salvati in un file riportante la data corrente, in un formato che sia facilmente acquisibile da applicazioni di terze parti (noi abbiamo quindi deciso di utilizzare delle virgole come separatori tra le varie misure). 'Costruzione della data nel formato AA-MM-GG mese$ = LEFT$(DATE$, 2) giorno$ = RIGHT$(LEFT$(DATE$, 5), 2) anno$ = RIGHT$(DATE$, 2) data$ = anno$ + "-" + mese$ + "-" + giorno$ OPEN data$ FOR APPEND AS #2 'Apertura del file in modalità APPEND: se dovessi ' interrompere l'esecuzione del programma, una volta ' ripartito non elimina i dati già acquisiti 'La parte delle misurazioni è stata omessa, in quanto molto lunga 'Scrittura sul file aperto in precedenza. L'istruzione WRITE consente di salvare ' i valori che le vengono passati utilizzando la virgola come separatore WRITE #2, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, inh2o, outh2o, insole, outsole, insole, outsole, pil1, pil2, v1, v2, v3, v4, v5, v6, p1, p2, TIME$ 'Una volta terminato il salvataggio dei dati, il file viene chiuso: CLOSE #2 11

12 A fine giornata (alle ore 21.00) il file viene salvato localmente, e le misure vengono interrotte. Inizia quindi la parte che riguarda il trasferimento dei dati tramite porta seriale sul computer che monta XP, e sul quale è presente un'applicazione Java (da noi realizzata) che aspetta di ricevere dati sulla porta seriale. Ciò avviene tramite un protocollo di comunicazione da noi definito, e che riportiamo di seguito: 1. il primo carattere che viene inviato è la lettera d minuscola, che avvisa il programma in ricezione che il trasferimento sta per cominciare; 2. viene quindi inviata la data corrente, nel formato AA-MM-GG, che corrisponde al nome del file contenente i dati; 3. viene quindi inviata una i, simbolo dell'inizio del trasferimento dei dati vero e proprio; 4. il file contenente i dati, aperto in sola lettura, viene letto una riga alla volta; 5. tale linea viene scritta sulla porta seriale, insieme alla lettera n, indicante la fine di ciascuna riga di dati; 6. terminato il trasferimento viene inviato un carattere f, che comunica alla macchina XP di salvare tutto ciò che è stato ricevuto fino ad ora nel database. Il codice in QBASIC che implementa quanto appena detto è il seguente: 'Impostazione dei parametri di funzionamento della porta seriale OPEN "com2:9600,n,8,,cs,ds,cd" FOR OUTPUT AS #3 'Apertura del file corrispondente alla data per input OPEN data$ FOR INPUT AS #4 PRINT #3, "d" PRINT #3, data$ PRINT #3, "i" 'Data nel formato AA-MM-GG 'Trasferimento dei dati vero e proprio DO WHILE NOT EOF(4) 'Per ciascuna linea del file LINE INPUT #4, linea$ 'Leggo la linea PRINT #3, linea$ 'Stampo la linea via seriale PRINT #3, "n" 'Dopo ogni linea vado a capo LOOP PRINT #3, "f" 'Chiusura degli handle aperti CLOSE #3 CLOSE #4 'Chiusura del trasferimento 'Handle della porta seriale 'Handle del file di input 12

13 La tabella di conversione per le sonde di tipo NTC è riportata di seguito: 13

14 Implementazione del database MySQL Dovendo gestire una mole abbastanza consistente di dati, ci siamo chiesti quale fosse la struttura dati che meglio si adattava alle nostre esigenze. I dati dovevano restare organizzati, e doveva esserne garantito l'accesso in maniera rapida e sicura. Le nostre conoscenze di Informatica ci hanno permesso di individuare la soluzione: utilizzare un database MySQL che risiedesse sulla stessa macchina del server web. Ciò avrebbe permesso all'applet di accedere ai dati in maniera sicura e rapida, e a noi studenti di mantenere controllati i dati alla ricerca di eventuali errori. Ci siamo quindi chiesti: come rappresentare tutte queste misurazioni in maniera semplice ma efficiente all'interno del database? La nostra prima soluzione prevedeva l'impiego di una tabella unica che utilizzava la data (non compresa nei dati) e l'ora della misurazione come chiavi primarie, in modo da poter identificare in maniera univoca ciascuna misurazione. Nel tempo ciò avrebbe però portato all'ottenimento di una singola tabella contenente circa 1500 righe per ciascun giorno di misurazione, rendendo molto più difficile intervenire sui dati. Di conseguenza abbiamo deciso di cambiare approccio, sfruttando il fatto che durante il trasferimento dei dati via porta seriale potevamo ottenere in maniera molto semplice anche la data alla quale appartenevano le misurazioni; ciò ha portato alla soluzione definitiva: abbiamo creato una tabella per ogni giornata di misurazione, al cui interno l'ora di misurazione viene usata come chiave unica per evitare duplicati. La connessione al database in Java è possibile grazie all'ausilio del driver JDBC (Java DataBase Connector), che viene implementato come segue: try { Class.forName("com.mysql.jdbc.Driver"); catch (ClassNotFoundException ex) { Logger.getLogger(MagazzinoDelSole.class.getName()).log(Level.SEVERE, null, ex); try { conn = DriverManager.getConnection("jdbc:mysql://HOST/DB","USER","PASSWORD"); catch (SQLException ex) { Logger.getLogger(MagazzinoDelSole.class.getName()).log(Level.SEVERE, null, ex); 14

15 Una volta effettuata la connessione il driver JDBC mette a disposizione dei metodi che consentono l'esecuzione di query in linguaggio SQL per prelevare i dati dal database. Se, ad esempio, volessimo prelevare i dati del 18 Giugno 2013 (si ricorda che nel database è presente una tabella per ciascun giorno di misurazione), procederemmo nel seguente modo: // Definisco la query String query = "SELECT * FROM 13_06_18"; try { // Preparo la query per l'invio PreparedStatementpst = conn.preparestatement(query); //Ottengo i risultati ResultSet rs = pst.executequery(); catch (SQLException ex) { // Gestione degli errori // In questo caso nel database non sono presenti dati // appartenenti alla data selezionata Logger.getLogger(Animazione.class.getName()).log(Level.SEVERE, null, ex); JOptionPane.showMessageDialog(null, "Non ci sono dati per la data selezionata."); Come risultato della query appena eseguita si ottiene un oggetto appartenente alla classe ResultSet. Esso può essere visto come una tabella, all'interno della quale si può navigare tramite i seguenti metodi: il metodo next(): la classe ResultSet è strutturata in modo da utilizzare un puntatore per memorizzare a quale riga dei dati si è arrivati durante la lettura. Questa istruzione serve ad incrementare di uno il puntatore, passando di fatto alla riga successiva del risultato; il metodo getstring(string s): permette di ottenere, sotto forma di stringa, il dato che nella tabella dei risultati si trova alla riga definita dal puntatore visto in precedenza e alla colonna il cui nome corrisponde al parametro passato a questa funzione. 15

16 Impianto Fotovoltaico Introduzione Un modulo fotovoltaico è un dispositivo in grado di convertire l'energia solare direttamente in energia elettrica attraverso un effetto fotovoltaico ed è usato per generare elettricità a partire dalla luce del sole. I pannelli fotovoltaici utilizzati sono in silicio e in particolare: Fisso monocristallino: il materiale è costituito da un reticolo cristallino continuo e di conseguenza la superficie del pannello non è modellabile. Stagionale monocristallino: a differenza del fisso monocristallino, il modulo fotovoltaico si muove in base all'inclinazione dei raggi solari. Fisso amorfo: la superficie del modulo può essere modellato in quanto il silicio è allo stato amorfo. Viene utilizzato un inverter che è dispositivo strategico in grado di trasformare la corrente continua prodotta dalle celle fotovoltaiche in corrente alternata conforme alla rete del distributore ed offre molti vantaggi tra cui quello economico. Obiettivi Il nostro obiettivo principale è quello di rappresentare i dati riguardanti il fotovoltaico in una forma comprensibile a tutti mediante grafici e tabelle. Ciò permette anche di confrontare i diversi tipi di moduli fotovoltaici osservando tre parametri (potenza, corrente e voltaggio) in modo tale da capire quale presenta il rendimento migliore e in quali condizioni. I dati vengono scaricati dal sito della sunny box mediante il protocollo FTP e inseriti nel nostro database. Il sito appartiene alla azienda SMA SolarTechnology che ha sede a Niestetal in Germania e ha 21 filiali estere ( la SMA Italia si trova a Milano). 16

17 Parte web Struttura del database Schema logico del database: fotovoltaico ( Ora: timestamp, IrradiazioneSolare: float, TemperaturaAmbiente: float, TemperaturaModulo: float, FissoMonocristallino_Pac: float, FissoMonocristallino_Ipv: float, FissoMonocristallino_Upv_Soll: float, FissoMonocristallino_E_Tot: float, StagionaleMonocristallino_Pac: float, StagionaleMonocristallino_Ipv: float, StagionaleMonocristallino_Upv_Soll: float, StagionaleMonocristallino_E_Tot: float, FissoAmorfo_Pac: float, FissoAmorfo_Ipv: float, FissoAmorfo_Upv_Soll: float, FissoAmorfo_E_Tot: float ) L'attributo Ora, inteso come unione di data e ora, è una chiave unica; ciò significa che non possono esserci due righe relative alla stessa misurazione. Ad ogni inserimento la colonna assume infatti il valore relativo al momento della misurazione corrente. Alcuni attributi presentano NULL come valore di default; questa scelta è stata effettuata in quanto i file dai quali vengono prelevati i dati possono presentare dei campi vuoti. Spiegazione degli attributi: Attributo Ora IrradiazioneSolare TemperaturaAmbiente TemperaturaModulo Descrizione Contiene la data e l'orario delle misurazioni effettuate dai sensori dei pannelli fotovoltaici. Indica l'energia radiante emessa dal sole. Indica la temperatura dell'aria in gradi Celsius. Rappresenta la temperatura del panello pilota. E' chiamato anche punto di equilibrio termo radiativo. FissoMonocristallino_Pac Rappresenta la potenza del modulo fisso monocristallino in milliwatt (mw). FissoMonocristallino_Ipv Rappresenta la corrente del modulo fisso monocristallino in milliampère (ma). FissoMonocristallino_Upv_Soll FissoMonocristallino_E_Tot StagionaleMonocristallino_Pac Indica il voltaggio del modulo fisso monocristallino in Volt (V). Energia totale prodotta in un giorno dal modulo fisso monocristallino. Rappresenta la potenza del modulo stagionale monocristallino in milliwatt (mw). 17

18 StagionaleMonocristallino_Ipv Rappresenta la corrente del modulo stagionale monocristallino in milliampère (ma). StagionaleMonocristallino_Upv_Soll Indica il voltaggio del modulo stagionale monocristallino in Volt (V). StagionaleMonocristallino_E_Tot Energia totale prodotta in un giorno dal modulo stagionale monocristallino. FissoAmorfo_Pac Rappresenta la potenza del modulo fisso amorfo in milliwatt (mw). FissoAmorfo_Ipv Rappresenta la corrente del modulo fisso amorfo in milliampère (ma). FissoAmorfo_Upv_Soll Indica il voltaggio del modulo fisso amorfo in Volt (V). FissoAmorfo_E_Tot Energia totale prodotta in un giorno dal modulo fisso amorfo. 18

19 Rappresentazione grafica Abbiamo deciso di utilizzare un calendario al posto di un campo di testo per motivi di sicurezza e di estetica. In questo modo rendiamo semplice la scelta della data all'utente, ma allo stesso modo evitiamo errori dovuti ad un inserimento non corretto. Per la costruzione del calendario abbiamo usato un pacchetto Javascript. Potrebbe capitare che la data selezionata non sia contenuta all'interno del database, così abbiamo aggiunto un controllo sul numero di righe restituite dalla query: if(mysql_num_rows($query) == 0) { echo '<script type="text/javascript"> alert("attenzione, nessun dato presente nella data selezionata!\nverrai rediretto alla pagina di selezione della data."); document.location = "/MdS/Fotovoltaico.php"; </script>'; exit(); document è un oggetto contenuto all'interno di window. Quest'ultimo corrisponde alla finestra del browser e si trova al livello più alto nella gerarchia del DOM (Document Object Model). location è una proprietà dell'oggetto document che ci permette di reindirizzare l'utente alla pagina stabilita. Ciò avviene soltanto nel caso in cui il numero di righe ritornato dalla query sia uguale a zero. L'utente viene quindi avvertito che la data scelta non contiene nessun dato e ha la possibilità di cambiarla. Se la scelta della data ha avuto esito positivo verranno mostrate le informazioni in una tabella che permette una facile lettura anche grazie all'utilizzo di due colori in modo alternato. Per la costruzione della tabella bisogna: - Prelevare i dati dal database mediante una query: per spedire fisicamente la richiesta di dati al database si utilizza il comando mysql_query(string s) passandogli come parametro il testo della query. Il risultato verrà inserito in una variabile nel caso non si siano verificati errori. - Costruire l'header della tabella; - Costruire il table body: per fare in modo che le colonne contenenti i dati mantengano la larghezza stabilita, viene costruita un' intestazione uguale all'header, che verrà successivamente nascosta; - Popolare la tabella. 19

20 HEADER BODY Bisogna tenere presente che il risultato di una query è sempre rappresentato da una tabella, anche se fosse di una sola riga e di una sola colonna. Uno dei metodi per leggere i dati dalla tabella consiste nell'utilizzare un ciclo while che scorre finché vengono visitate tutte le righe; per ogni ciclo il contenuto della riga corrente viene memorizzato in un array ($riga) mediante il comando $riga = mysql_fetch_array("nome_variabile") e poi inserito nella tabella mediante l'istruzione echo. Per inserire il contenuto di ogni colonna usiamo un ciclo for con l'indice i che parte dalla prima colonna (i=0) e arriva all'ultima (i < mysql_num_fields($query)). L'array $riga contiene tanti elementi quante sono le colonne che compongono il risultato e ogni cella può venire indirizzata utilizzando sia un indice numerico che il nome della colonna (normalmente è preferibile utilizzare quest'ultima possibilità in quanto l'ordine delle colonne potrebbe variare a seconda di come viene formulata la query). $j = 0 while($riga = mysql_fetch_array($query)) { echo '<tr '; if($j%2 == 0) echo 'class="pari">'; else echo 'class="dispari">'; // Inserimento dei dati nella tabella for($i = 0; $i < mysql_num_fields($query); $i++) { echo '<td>'. $riga[$i]. '</td>'; echo "</tr>\n"; $j++; 20

21 Tipi di grafici scelti Se all'utente non dovesse bastare la rappresentazione dei dati tramite tabella, è possibile ottenere un risultato visivo dell'andamento dei dati mediante alcuni grafici. In fondo alla tabella sono infatti presenti tre bottoni, che permettono di scegliere il parametro da confrontare. Di seguito verrà mostrato un esempio per ciascuno di esso: Potenza PAC Corrente IPV 21

22 Voltaggio UPV SOLL All'interno di ciascun grafico sono rappresentati i dati relativi ai tre tipi di pannelli fotovoltaici, alla temperatura ambientale e alla temperatura del modulo. L'immagine può essere scaricata direttamente se il browser in uso supporta completamente lo standard HTML5, altrimenti bisogna prima convertirla nel formato PNG tramite l'apposito pulsante. Il percorso seguito per costruire e rappresentare i grafici sono : Impostare le dimensioni del grafico (altezza e larghezza); Controllare quale tipo di grafico da mostrare; Richiedere i dati al database; Definire i punti nel grafico per ogni dato; Disegnare il percorso che passa per tali punti; Costruire gli assi; Tracciare le linee orizzontali e verticali; Inserire i valori verticali (a sinistra quelli relativi al parametro misurato, a destra le temperature); Inserire i valori orizzontali che indicano il tempo espresso in ore; Creazione della legenda. 22

23 Parte Web - Codice Connessione al database Prima di eseguire la connessione vengono fatti due controlli: Tramite la funzione isset() si controlla se l'utente ha selezionato la data; Con il controllo $_POST["dataDaVisualizzare"]!= "" si verifica la correttezza del valore passato tramite POST, perchè potrebbe essere intercettato e modificato con un valore vuoto, oppure perchè si è verificato un errore nel passaggio della data. La connessione viene eseguita mediante l'utilizzo della funzione mysql_connect(), che riceve tre parametri: l'indirizzo del server sul quale è in esecuzione il servizio MySQL (che può essere un nome di dominio o un indirizzo IP), il nome utente con cui connettersi al database e la relativa password. Con la funzione mysql_select_db() viene selezionato il database sul quale operare. Dopodichè bisogna controllare se la connessione è andata a buon fine, cosa che potrebbe non avvenire per svariati motivi (il server potrebbe non essere disponibile, le credenziali fornite potrebbero essere invalide, potrebbero esserci dei problemi di rete, ecc.), e se il database indicato esiste. Il controllo if(!$connect) ritorna un numero positivo che identifica la connessione nel caso che tutto sia andato bene, altrimenti 0 (che viene interpretato come falso). Lo stesso ragionamento vale per il controllo del database selezionato. if(isset($_post["datadavisualizzare"]) && $_POST["dataDaVisualizzare"]!= "") { // Connessione al database $connect = mysql_connect(server, USERNAME, PASSWORD); // Controllo di connessione if(!$connect) die("error while connecting to database!"); // Selezione del database $select_db = mysql_select_db(database); // Controllo if(!$select_db) die("database not found!"); 23

24 Grafica Web Per poter rappresentare i grafici in php ci basiamo sull'utilizzo dell'elemento HTML5 canvas che viene rappresentato dal tag <canvas>. Esso rappresenta uno spazio all'interno della pagina web sul quale è possibile disegnare forme geometriche tramite Javascript usando specifiche API. I passaggi principali da seguire sono: Inserire nella pagina il tag <canvas> specificando i seguenti attributi: o id, rappresenta il nome dell'elemento; o width, indica la larghezza dell'elemento <canvas> ; o height, indica l'altezza dell'elemento <canvas>. Se non vengono specificati, per default si ottiene un rettangolo 300x150. Tra i tag si può inserire un commento che verrà visualizzato nel caso in cui si utilizzi un browser che non supporta l'elemento <canvas>. Usare i metodi getelementbyid("id_canvas") e getcontext("2d") : Il primo metodo memorizza in una variabile l'oggetto canvas attraverso il valore id_canvas, mentre il secondo permette di prelevarne il contesto grafico 2D, un oggetto che offre al programmatore una serie di metodi per disegnare. Nel nostro caso specifico si è deciso di lavorare con le funzioni grafiche bidimensionali. Usare il metodo beginpath(): Questo metodo indica al browser il punto di inizio del percorso; ogni volta che viene richiamato resetta il percorso corrente. Per indicare la fine del percorso si utilizza closepath(); in questo caso viene omesso perchè non si vuole che l'ultimo punto del grafico sia collegato al primo. All'interno del percorso si possono utilizzare i seguenti metodi: moveto(x,y) e lineto(x,y): Servono rispettivamente a impostare il punto di inizio e di fine della linea che deve essere tracciata. Metodi stroke() e fill(): Permettono di definire le caratteristiche dell'immagine come il colore, la forma, il testo, il font ecc Il primo disegna soltanto il contorno della figura, mentre il secondo la riempie. I browser che supportano correttamente l'elemento canvas sono: Browser Versione Firefox 1.5 Internet Explorer 9.0 Google Chrome 2.0 Opera 9.0 Safari

25 Parte software Introduzione al protocollo FTP Il protocollo FTP si basa sul protocollo TCP e si occupa del trasferimento di file tra due computer, a patto che vi siano installati rispettivamente un server FTP e un client FTP. Un client FTP può scaricare file dal server, (operazione di download), o se ha il permesso, caricarli (operazione di upload). Il trasferimento dei file può avvenire in modalità ASCII, la modalità di default usata per i file di testo, o in modalità binaria, usata per i file non di testo come i file grafici ed eseguibili. Viene impiegato soprattutto per eseguire il caricamento delle pagine Web sul server, dove le directory di upload sono usate dal server Web per la pubblicazione delle pagine stesse. Il servizio FTP può essere usato in due modalità: FTP anonimo e FTP con account. Con l'ftp anonimo l'utente non comunica la sua identità, il server FTP viene configurato in modo che gli utenti anonimi possano solo scaricare i file che vengono messi a disposizione. Con l'ftp account l'utente deve disporre di un account sul server; quando si collega al server deve fornire nome e password. Se le credenziali vengono accettate l'utente ha la possibilità di scaricare ed inviare file, creare cartelle o muoversi all'interno del server, eccetera. Ciò che può fare dipende dai diritti e dalle autorizzazioni che gli sono stati accordati. Il protocollo FTP utilizza due canali separati, uno per lo scambio di comandi e l'altro per lo scambio dei file. Il canale comandi permette al client e al server di scambiarsi comandi e codici di risposta, esso rimane aperto per l'intera durata della sessione utente. Il canale dati viene creato ogni volta che viene trasferito un file all'interno della sessione utente e può essere di due tipi: Canale dati attivo: il client apre una porta casuale, rendendone noto il numero al server tramite il canale comandi e attende la connessione, che viene avviata dal server; Canale di dati passivo: il server apre una porta solitamente casuale (superiore a 1023) e tramite il canale comandi ne rende noto il numero al client e rimane in attesa della connessione, che viene avviata dal client. Il protocollo FTP presenta però uno svantaggio dal punto di vista della sicurezza; il traffico generato non viene criptato, e rimane in chiaro sulla rete. La specifica originale del protocollo FTP non prevede infatti la cifratura delle informazioni scambiate tra il server e il client, di conseguenza i file scambiati potrebbero essere visualizzati da malintenzionati. Se si utilizza una connessione attiva, potrebbe esserci un software malevolo pronto ad intercettare la comunicazione e ad agganciarsi ad essa al posto del client FTP. Una delle possibili soluzioni a questo problema è l'utilizzo del firewall, un dispositivo in grado di capire il contenuto di una sequenza di pacchetti e di agire di conseguenza. Nel caso dell'ftp questo si traduce in un'apertura al volo della porta necessaria per eseguire la connessione passiva richiesta dal client o per bloccare una connessione passiva proveniente da un indirizzo ip diverso da quello originario della connessione principale. Un'alternativa è quella di aggiungere al protocollo FTP un layer di cifratura (in questo caso prende il nome di FTPS). Per garantire un servizio migliore e alleggerire l'accesso ai server FTP si utilizzano tecniche di mirroring: un mirror è un server che duplica il contenuto del server originale. E' quindi conveniente scaricare file dal server mirror più vicino geograficamente per ridurre il tempo di scaricamento. 25

26 Pacchetti JAVA Per la realizzazione dell'applicazione mi sono appoggiato su diverse librerie: Java.sql : Contiene le funzionalità della tecnologia JDBC necessarie per connettersi e interagire con il database. Le principali sono DriverManager, Connection, Statement, ResultSet, DatabaseMetaData, ResultSetMetaData, SQLException. Un applicazione software per collegarsi al database deve usare il driver specifico, l'interfaccia Connection per comunicare e conoscere le credenziali di accesso al DB. Il driver accetta richieste da applicazioni esterne traducendole in comandi per il DBMS usato. APPLICAZIONE SOFTWARE Interfaccia di comunicazione DRIVER DATABASE Commons.ftp : La libreria Commons.Net implementa la parte client di molti protocolli Internet di base. Lo scopo principale è quello di fornire allo sviluppatore l'accesso ai protocolli fondamentali. Per la connessione e l'utilizzo del protocollo FTP offre classi come FTPClient e metodi come connect(), login(), enterlocalpassivemode(), eccetera. OpenCSV: E' una libreria che permette di leggere e scrive su file CSV. Le caratteristiche che offre sono: - Possibilità di avere un numero arbitrario di valori per ciascuna linea; - Possibilità di gestire celle contenenti testo su più linee; - Possibilità di leggere il file una riga per volta o tutto insieme; - Possibilità di creare un file CSV partendo da una stringa. 26

27 Connessione al DataBase Come visto in precedenza, la prima operazione da fare per effettuare una connessione è quella di caricare esplicitamente il driver specifico del database che si intende utilizzare. Il metodo utilizzato è Class.forName("driver_del_database"). Nel nostro caso il driver JDBC è identificato con la stringa com.mysql.jdbc.driver. La connessione al database è effettuate tramite il metodo DriverManager.getConnection(), associato all'utilizzo di un oggetto di tipo java.sql.connection. DriverManager è la classe usata per ottenere una connessione al database, mentre Connection è l'interfaccia che ci permette di autenticarci e di indicare il punto di lavoro specificato attraverso l'url del database. Conn è il nome dell'oggetto utilizzato per gestire la connessione. try { //Carico il driver Class.forName("com.mysql.jdbc.Driver"); catch (ClassNotFoundException ex) { Logger.getLogger(Fotovoltaico.class.getName()).log(Level.SEVERE, null, ex); try { // Connessione tramite username e password conn=drivermanager.getconnection("jdbc:mysql://localhost/mds","mds","password"); catch (SQLException ex) { Logger.getLogger(Fotovoltaico.class.getName()).log(Level.SEVERE, null, ex); 27

28 Connessione via FTP e modalità di lavoro L'ordine seguito per effettuare una connessione FTP è la seguente: Creazione dell'oggetto FTPClient che useremo per connetterci; Connessione al server FTP; Autenticazione. La classe FTPClient è la classe che permette di creare un'istanza del client FTP; richiamando il metodo connect("indirizzo/nome",porta) si effettua la connessione al server remoto. Il metodo riceve come parametri l'indirizzo o il nome del server e la porta (di default si utilizza la porta 21). A questo punto il server FTP richiede le credenziali di accesso in quanto si utilizza un servizio FTP con autenticazione. Per fare ciò viene utilizzato il metodo login("nome_utente","password"). Siccome è il client che si connette al server, dobbiamo entrare nella cosiddetta modalità passiva, che deve essere impostata ogni volta che viene aperta una nuova connessione. Si utilizza quindi il metodo enterlocalpassivemode(). Una volta completate le operazioni sul server remoto, bisogna ricordarsi di disconnettersi tramite l'utilizzo delle funzioni logout() e disconnect(). Download di un file Una volta effettuata la connessione al server remoto bisogna stabilire la modalità di trasferimento. Quando si crea l'oggetto FTPClient, per default viene impostata la modalità di trasferimento ASCII. Se si desidera utilizzare la modalità di trasferimento binaria bisogna quindi richiamare il metodo setfiletype(ftp.binary_file_type). Nel server remoto si accede alla cartella DATA e si procede a leggere il contenuto delle directory fino a quando non si incontra un file che sia più recente dell'ultima data presente nel database. I passi da seguire sono i seguenti: Controllo dell'ultima data inserita nel database: Si ricerca il valore massimo contenuto nel campo Ora mediante I metodi preparestatement($query) e executequery()offerti dalla classe Connection. Se il database è vuoto, il risultato ottenuto con getstring("ora") è nullo. Viene quindi scelta come data " :00:00". Lettura del contenuto delle directory: Dal risultato precedente si estrae l'anno per sapere da quale directory cominciare. Le cartelle vengono inerite in una lista di tipo FTPFile[] e per ognuna di essa si controlla se l'anno indicato dal nome della cartella è maggiore o uguale all'anno ricavato dalla query. Se la condizione è soddisfatta, si cambia il percorso nel sito FTP specificando la directory e si passa al punto successivo. Lettura della data di creazione dei files: Per ciascuna directory si ottiene la lista dei files, che viene quindi memorizzata in un array di tipo FTPFile[]. Il contenuto del vettore viene filtrato mantenendo quei file che presentano una data di 28

29 creazione successiva alla data di partenza. Per ciascun file viene creata la struttura delle directory sul disco locale; per fare ciò si utilizza la classe File() che riceve come parametro la stringa pathname. Download dei file: Con la classe File() creiamo nel disco fisso un file vuoto, ed utilizziamo un buffer per conservare temporaneamente i dati. Il metodo retrievefile() ci permette di scaricare il file remoto e di salvarlo nel percorso indicato da pathname. System.out.println("Found newer file: " + file.getname()); remotefile = "/DATA/" + yeardirectory.getname() + "/" + file.getname(); localfile = new File("." + remotefile); new File("./DATA/" + yeardirectory.getname()).mkdirs(); os = new BufferedOutputStream(new FileOutputStream(localFile.getCanonicalPath())); System.out.println("Starting download"); success = ftpclient.retrievefile(remotefile, os); os.flush(); os.close(); // non intene più indirizzato il buffer, chiude il buffer if(success) { System.out.println("Download SUCCESS"); else { System.out.println("Download ERROR"); L'interfaccia si presenta in maniera molto semplice. Essa ha infatti il solo scopo di mostrare le informazioni rilevanti sul trasferimento dei file e l'esito del loro inserimento nel database all'amministratore o al tecnico. 29

30 Inserimento nel database Una volta completata la fase di download si procede alla lettura del file per poter inserire le informazioni nel database MySQL. Il file è di tipo CSV (Excel) e per analizzarlo utilizziamo i metodi che ci offre la classe CSVReader: csvfilename = localfile.getabsolutepath(); csvreader = new CSVReader(new FileReader(csvFilename), ';', '\'', 6); I parametri che vengono definiti sono: il flusso di dati passati dalla classe FileReader, il carattere separatore, il tipo di quota e la linea da cui partire. Si inizia la lettura dalla sesta riga perchè le prime cinque contengono informazioni non rilevanti; i dati sono separati tramite punto e virgola e si utilizzano le singole virgolette come carattere di quotatura. csvfilename contiene l'indirizzo fisico completo del file che si trova sul disco fisso del computer. Il contenuto di ciascuna riga va quindi a comporre una query, che gestisce l'inserimento dei dati all'interno del database. I controlli che vengono fatti in questa fase sono due: Verifica dei valori riguardanti la data e l'ora: Ci sono alcuni file (i più vecchi) che, all'interno del campo "Ora", contengono solo l'ora nel formato ora:minuti, senza riportare la data. La lunghezza del campo in questo caso è pari a 5 caratteri, e il controllo può essere eseguito in maniera molto semplice. La data è quindi ottenuta dal nome del file stesso, mentre i secondi vengono impostati a zero. Verifica del contenuto per ogni dato: Può capitare che nel file Excel contenente i dati vi siano delle celle vuote; per far fronte a questo problema abbiamo creato la funzione Check(String value), che restituisce '0' in caso di campo vuoto o il valore in caso contrario. //Ottengo il timestamp nel formato corretto if(timestamp.length() == 5) { giorno = localfile.getname().substring(0, 2); mese = localfile.getname().substring(3, 5); anno = localfile.getname().substring(6, 10); Timestamp = anno + "-" + mese + "-" + giorno + " " + row[0]; else { giorno = Timestamp.substring(0, 2); mese = Timestamp.substring(3, 5); anno = Timestamp.substring(6, 10); Timestamp = anno + "-" + mese + "-" + giorno + Timestamp.substring(10, Timestamp.length()); //Funzione di controllo static public String Check(String value){ if("".equals(value)) return "'0'"; return "'" + value + "'"; 30

31 Trasmissione Seriale Obiettivi L'ultima importante parte di questo progetto consiste nel riuscire a trasferire i dati acquisiti in una giornata da una macchina con sistema operativo DOS ad una con sistema operativo Windows XP, per poi inserirli in un database. Il lavoro può essere suddiviso in due parti principali: 1. Creare un programma sulla macchina DOS che sia in grado di: a. Aprire la porta seriale e comunicare con un multimetro digitale; b. Inviare il file contenente i dati acquisiti nell'arco della giornata tramite la porta seriale. 2. Creare un programma sulla macchina Windows che sia in grado di: a. Rimanere in ascolto sulla porta seriale per salvare i dati nel momento in cui vengono trasferiti; b. Una volta terminata l'acquisizione dei dati, procedere al loro inserimento in un database. Introduzione Il computer può essere interfacciato con alcune periferiche per mezzo di porte standard. Generalmente, nei nuovi sistemi le interfacce relative alle varie porte di comunicazione sono integrate in un apposito chip presente sulla scheda madre o direttamente all'interno dei chipset. Normalmente sono presenti in un PC almeno una porta parallela per la stampante, una o due porte per le comunicazioni seriali e, sui sistemi più recenti, almeno una porta USB. 31

32 Parte Hardware Tipologie di Trasmissioni La trasmissione seriale è un tipo di comunicazione tra dispositivi digitali nella quale le informazioni giungono al ricevente in maniera sequenziale, ossia nello stesso ordine in cui sono state trasmesse dal mittente. Questo tipo di comunicazione ha una maggiore complessità strutturale e gestionale rispetto alla trasmissione parallela; nonostante ciò è una delle più diffuse in ambito informatico, perchè richiede un minor numero di fili con conseguente riduzione di costi. RS-232 è uno standard che definisce un'interfaccia di livello fisico del modello ISO/OSI per la realizzazione di una trasmissione seriale, sia in modalità sincrona che asincrona. Nella trasmissione sincrona il ricevente riceve i dati in maniera continua (anche se non è trasmesso nessun bit) con il ritmo stabilito dal mittente; per questo è necessario che entrambi utilizzino la stessa velocità di trasmissione (clock). Vengono inoltre inserite delle informazioni supplementari per garantire l'assenza di errori durante la trasmissione. La trasmissione seriale asincrona risulta molto più utilizzata della precedente, soprattutto nelle interfacce RS-232; essa presenta però una velocità di trasferimento molto più limitata. In questo tipo di trasmissione ogni carattere è preceduto da un'informazione che va ad indicare l'inizio della trasmissione del carattere (detta bit START), e termina con un'informazione di fine trasmissione (detta bit STOP). L'immagine sottostante schematizza quanto detto finora: 32

33 Piedinatura RS-232 Pin Nome Descrizione Tipologia 1 DCD Data Carrier Detect: verifica la presenza della portante sul Input modem 2 RXD Recieve Data Input 3 TXD Trasmission Data Output 4 DTR Data Terminal Ready: indica la possibilità di ricevere o Output trasmettere dati 5 GND Massa dati - 6 DSR Data Set Ready: verifica la presenza del segnale DTR Input 7 RTS Request to Send: abilita il trasferimento dei dati Output 8 CTS Clear to Send: riceve l abilitazione al trasferimento Input 9 RI Ring Indicator Input Per un collegamento elementare tra due PC è sufficiente utilizzare un cavetto a 4 poli, collegando tra loro le masse ed invertendo il collegamento tra Tx e Rx. 33

34 E' possibile costruire un protocollo più complesso, come quello richiesto dal collegamento con il modem, incrociando tra loro i segnali RTS-CTS e DSR-DTR. RTS/CTS: quando il PC inizia la trasmissione pone RTS alto; quando la periferica è pronta risponde impostando CTS alto. Per interrompere la trasmissione la periferica pone CTS basso. DTR/DSR: quando il PC è collegato per la prima volta, pone DTR alto; la periferica risponde ponendo DSR alto. I pin RTS e DTR vengono spesso utilizzati come fonte di alimentazione del dispositivo collegato alla porta seriale stessa. L'esempio classico è il mouse seriale; nulla impedisce però di collegarci un microcontrollore generico o qualche altro circuito. 34

http://ennius.interfree.it/vba/vba89.htm Stampa questa pagina

http://ennius.interfree.it/vba/vba89.htm Stampa questa pagina 1 of 7 26/02/2007 18.09 Stampa questa pagina Controllo comunicazioni MSCOMM32.OCX per comunicare col Modem e/o chiamare numeri telefonici. Premetto che non ho nè provato, nè intendo farlo, ad usare le

Dettagli

Controllo comunicazioni

Controllo comunicazioni Controllo comunicazioni Il controllo comunicazioni consente di aggiungere nell'applicazione funzioni semplici per comunicazioni attraverso porte seriali nonché funzioni avanzate per la creazione di uno

Dettagli

Laboratorio di reti II: Gestione di database lato server

Laboratorio di reti II: Gestione di database lato server Laboratorio di reti II: Gestione di database lato server Stefano Brocchi brocchi@dsi.unifi.it 23 marzo, 2009 Stefano Brocchi Laboratorio di reti II: Database 23 marzo, 2009 1 / 32 Uso di database lato

Dettagli

Guida installazione Winasped 4 Data ultima revisione della guida: 12-05-2014

Guida installazione Winasped 4 Data ultima revisione della guida: 12-05-2014 Guida installazione Winasped 4 Data ultima revisione della guida: 12-05-2014 Winasped è un'applicazione di tipo client - server pertando è composta da due parti: un programma client e uno server. Di seguito

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

I BUS DI COMUNICAZIONE SERIALI

I BUS DI COMUNICAZIONE SERIALI 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

Dettagli

ServerSync Google Calendar:guida alla migrazione

ServerSync Google Calendar:guida alla migrazione ServerSync Google Calendar:guida alla migrazione Vediamo passo a passo la procedura da seguire per migrare dalla vecchia sincronizzazione ServerSync con Google Calendar alla nuova versione (quella che

Dettagli

Simonotti Graziano DATABASE

Simonotti Graziano DATABASE DATABASE 1 - Che cos'è un database? Il database è un archivio di dati, che può essere gestito con sistemi informatici oppure in modo manuale. 2 - Come si chiamano i programmi che gestiscono gli archivi?

Dettagli

ACCESSO A DRIVE REMOTO TRAMITE MODEM

ACCESSO A DRIVE REMOTO TRAMITE MODEM ACCESSO A DRIVE REMOTO TRAMITE MODEM Autore: Giulio Sassetti Indice revisione Data Descrizione modifica V01.0000 14/6/2006 Emissione V01.1000 29/6/2006 Aggiunti link sommario e ingrandite immagini V01.2000

Dettagli

I BUS DI COMUNICAZIONE SERIALI

I BUS DI COMUNICAZIONE SERIALI Corso di Strumentazione e Misure per l Automazione (Studenti Ingegneria Meccanica II anno Laurea Magistrale curr. Automazione e Produzione) I BUS DI COMUNICAZIONE SERIALI Andrea Bernieri bernieri@unicas.it

Dettagli

Sviluppo Applicazioni Mobile Lezione 12 JDBC. Dr. Paolo Casoto, Ph.D - 2012

Sviluppo Applicazioni Mobile Lezione 12 JDBC. Dr. Paolo Casoto, Ph.D - 2012 + Sviluppo Applicazioni Mobile Lezione 12 JDBC + Cosa vediamo nella lezione di oggi Oggi analizzeremo insieme una specifica tecnologia Java per l accesso e la manipolazione di basi di dati relazionali

Dettagli

Introduzione JDBC interfaccia java.sql driver caricare i driver

Introduzione JDBC interfaccia java.sql driver caricare i driver J D B C DISPENSE Introduzione JDBC (Java Database Connectivity) è un interfaccia completamente Java utilizzata per eseguire istruzioni SQL sui database. L'API JDBC si trova nel pacchetto java.sql; contiene

Dettagli

R.T.S. Engineering s.n.c. MANUALE D USO. Valido per:

R.T.S. Engineering s.n.c. MANUALE D USO. Valido per: MANUALE D USO Valido per: Stampante fiscale 3I FTP-FAST e per tutti i modelli 3I dotati di protocollo XonXoff, tramite RS-232, USB o Rete Ethernet COMPATIBILE WINDOWS VISTA / 7 / 8 (1): Protocollo XonXoff

Dettagli

WebFax- manuale utente

WebFax- manuale utente WebFax- manuale utente Release 1.3 1 INTRODUZIONE... 2 1.1 Funzionamento del WebFax... 2 1.2 Caratteristiche del WebFax... 2 2 INSTALLAZIONE DEL WEBFAX... 3 2.1 Configurazione parametri di rete... 3 2.2

Dettagli

Manuale Utente Archivierete Novembre 2008 Pagina 2 di 17

Manuale Utente Archivierete Novembre 2008 Pagina 2 di 17 Manuale utente 1. Introduzione ad Archivierete... 3 1.1. Il salvataggio dei dati... 3 1.2. Come funziona Archivierete... 3 1.3. Primo salvataggio e salvataggi successivi... 5 1.4. Versioni dei salvataggi...

Dettagli

Manuale Operativo per la firma digitale

Manuale Operativo per la firma digitale Manuale Operativo per la firma digitale Indice 1. Introduzione... 1 2. Installazione del lettore di smart card... 1 3. Installazione del Dike e Dike Util... 7 1. Premessa... 8 2. Installazione DikeUtil...

Dettagli

SMS-GPS MANAGER. Software per la gestione remota ed automatizzata dei telecontrolli gsm con e senza gps

SMS-GPS MANAGER. Software per la gestione remota ed automatizzata dei telecontrolli gsm con e senza gps SOFTWARE PER LA GESTIONE DEI TELECONTROLLI SMS-GPS MANAGER Software per la gestione remota ed automatizzata dei telecontrolli gsm con e senza gps Rev.1009 Pag.1 di 10 www.carrideo.it INDICE 1. DESCRIZIONE

Dettagli

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment Obiettivi d esame PHP Developer Fundamentals on MySQL Environment 1.0 Ambiente di sviluppo 1.1 Web server e database MySQL Comprendere la definizione dei processi che si occupano di fornire i servizi web

Dettagli

> Gestione Invalidi Civili <

> Gestione Invalidi Civili < > Gestione Invalidi Civili < GUIDA RAPIDA ALL'UTILIZZO DEL PRODOTTO (rev. 1.3) INSTALLAZIONE, ATTIVAZIONE E CONFIGURAZIONE INIZIALE ESECUZIONE DEL SOFTWARE INSERIMENTO ANAGRAFICA RICERCA ANAGRAFICA INSERIMENTO

Dettagli

SYNERGY. Software di supervisione ed energy management MANUALE OPERATIVO

SYNERGY. Software di supervisione ed energy management MANUALE OPERATIVO SYNERGY Software di supervisione ed energy management MANUALE OPERATIVO INDICE 1 INTRODUZIONE... 4 2 REQUISITI HARDWARE E SOFTWARE... 4 3 SETUP... 4 4 ACCESSO A SYNERGY E UTENTI... 5 4.1 Utenti... 5 4.2

Dettagli

GUIDA ALLA PRIMA INSTALLAZIONE DI LIDRASHOP v 1.6.X

GUIDA ALLA PRIMA INSTALLAZIONE DI LIDRASHOP v 1.6.X GUIDA ALLA PRIMA INSTALLAZIONE DI LIDRASHOP v 1.6.X In questa guida saranno analizzati i semplici passaggi per la messa in opera del motore di e-commerce LIDRASHOP. Prima però ecco alcuni accorgimenti

Dettagli

Guida di installazione ed uso per IntellyGate PASSI DA SEGUIRE PER L'INSTALLAZIONE. IntellyGate Guida di installazione ed uso

Guida di installazione ed uso per IntellyGate PASSI DA SEGUIRE PER L'INSTALLAZIONE. IntellyGate Guida di installazione ed uso Guida di installazione ed uso per IntellyGate PASSI DA SEGUIRE PER L'INSTALLAZIONE Di seguito vengono riassunti i passi da seguire per installare l'intellygate. 1. Accedere alle pagine web di configurazione

Dettagli

SMS-GPS MANAGER. Software per la gestione remota ed automatizzata dei telecontrolli gsm con e senza gps

SMS-GPS MANAGER. Software per la gestione remota ed automatizzata dei telecontrolli gsm con e senza gps SOFTWARE PER LA GESTIONE DEI TELECONTROLLI SMS-GPS MANAGER Software per la gestione remota ed automatizzata dei telecontrolli gsm con e senza gps Rev.0911 Pag.1 di 8 www.carrideo.it INDICE 1. DESCRIZIONE

Dettagli

Gestione del database Gidas

Gestione del database Gidas Gestione del database Gidas Manuale utente Aggiornamento 20/06/2013 Cod. SWUM_00535_it Sommario 1. Introduzione... 3 2. Requisiti e creazione del Database Gidas... 3 2.1.1. SQL Server... 3 2.1.2. Requisiti

Dettagli

Java: la libreria delle classi

Java: la libreria delle classi Java: la libreria delle classi Applet anatomia di un applet cenni di html La libreria JDBC per l accesso ai database il package java.sql 213 Applet Un applet è una applicazione Java che ha una forma particolare

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica CL3 - Biotecnologie Orientarsi nel Web Prof. Mauro Giacomini Dott. Josiane Tcheuko Informatica - 2006-2007 1 Obiettivi Internet e WWW Usare ed impostare il browser Navigare in internet

Dettagli

BIMPublisher Manuale Tecnico

BIMPublisher Manuale Tecnico Manuale Tecnico Sommario 1 Cos è BIMPublisher...3 2 BIM Services Console...4 3 Installazione e prima configurazione...5 3.1 Configurazione...5 3.2 File di amministrazione...7 3.3 Database...7 3.4 Altre

Dettagli

Uso del computer e gestione dei file

Uso del computer e gestione dei file Uso del computer e gestione dei file Sommario Uso del computer e gestione dei file... 3 Sistema Operativo Windows... 3 Avvio di Windows... 3 Desktop... 3 Il mouse... 4 Spostare le icone... 4 Barra delle

Dettagli

Manuale per gli utenti di Bluetooth

Manuale per gli utenti di Bluetooth Manuale per gli utenti di Bluetooth (RIF-BT10) Indice 1. Che cosa è Bluetooth?... 3 2. Funzioni dell adattatore Bluetooth (RIF-BT10)... 4 3. Descrizione del prodotto... 5 4. Configurazione del sistema...

Dettagli

Xpress MANUALE OPERATIVO. Software di configurazione e controllo remoto I440I04_15

Xpress MANUALE OPERATIVO. Software di configurazione e controllo remoto I440I04_15 Xpress I440I04_15 Software di configurazione e controllo remoto MANUALE OPERATIVO INDICE 1 INTRODUZIONE... 3 2 REQUISITI HARDWARE E SOFTWARE... 3 3 SETUP... 3 4 PASSWORD... 4 5 HOME PAGE... 4 6 CANALE...

Dettagli

www.informarsi.net MODULO 6 ECDL - EIPASS STRUMENTI DI PRESENTAZIONE - PRESENTATIONS Microsoft PowerPoint http://www.informarsi.net/ecdl/powerpoint/

www.informarsi.net MODULO 6 ECDL - EIPASS STRUMENTI DI PRESENTAZIONE - PRESENTATIONS Microsoft PowerPoint http://www.informarsi.net/ecdl/powerpoint/ MODULO 6 ECDL - EIPASS STRUMENTI DI PRESENTAZIONE - PRESENTATIONS Microsoft PowerPoint http:///ecdl/powerpoint/ INTERFACCIA UTENTE TIPICA DI UN SOFTWARE DI PRESENTAZIONE APERTURA E SALVATAGGIO DI UNA PRESENTAZIONE

Dettagli

SYNERGY. Software di supervisione ed energy management MANUALE OPERATIVO

SYNERGY. Software di supervisione ed energy management MANUALE OPERATIVO SYNERGY Software di supervisione ed energy management MANUALE OPERATIVO INDICE 1 INTRODUZIONE... 4 2 REQUISITI HARDWARE E SOFTWARE... 4 3 SETUP... 4 4 ACCESSO A SYNERGY E UTENTI... 5 4.1 Utenti... 5 4.2

Dettagli

hottimo procedura di installazione

hottimo procedura di installazione hottimo procedura di installazione LATO SERVER Per un corretto funzionamento di hottimo è necessario in primis installare all interno del server, Microsoft Sql Server 2008 (Versione minima Express Edition)

Dettagli

Manuale Utente QueryGenerator

Manuale Utente QueryGenerator SOFTWARE DI GESTIONE DEL CORPUS API Manuale Utente QueryGenerator Cirass Sommario Introduzione 1 1. Presentazione 1 2. Requisiti di Sistema 2 3. Installazione 2 4. Utilizzo 3 5. Logica d interrogazione

Dettagli

HARDWARE. Relazione di Informatica

HARDWARE. Relazione di Informatica Michele Venditti 2 D 05/12/11 Relazione di Informatica HARDWARE Con Hardware s intende l insieme delle parti solide o ( materiali ) del computer, per esempio : monitor, tastiera, mouse, scheda madre. -

Dettagli

21/02/2013 MANUALE DI ISTRUZIONI DELL APPLICAZIONE SID GENERAZIONE CERTIFICATI VERSIONE 1.0

21/02/2013 MANUALE DI ISTRUZIONI DELL APPLICAZIONE SID GENERAZIONE CERTIFICATI VERSIONE 1.0 MANUALE DI ISTRUZIONI DELL APPLICAZIONE SID GENERAZIONE VERSIONE 1.0 PAG. 2 DI 39 INDICE 1. PREMESSA 4 2. INSTALLAZIONE 5 3. ESECUZIONE 6 4. STRUTTURA DELLE CARTELLE 7 5. CARATTERISTICHE GENERALI DELL

Dettagli

SISSI IN RETE. Quick Reference guide guida di riferimento rapido

SISSI IN RETE. Quick Reference guide guida di riferimento rapido SISSI IN RETE Quick Reference guide guida di riferimento rapido Indice generale Sissi in rete...3 Introduzione...3 Architettura Software...3 Installazione di SISSI in rete...3 Utilizzo di SISSI in Rete...4

Dettagli

Serial To Ethernet Converter STE02 Manuale Utente. Ver. 1.1

Serial To Ethernet Converter STE02 Manuale Utente. Ver. 1.1 Serial To Ethernet Converter STE02 Manuale Utente Ver. 1.1 1 Indice 1 Introduzione 4 1.1 Dichiarazione di Conformità.............................. 4 1.2 Contenuto della Confezione..............................

Dettagli

Funzioni di base. Manualino OE6. Outlook Express 6

Funzioni di base. Manualino OE6. Outlook Express 6 Manualino OE6 Microsoft Outlook Express 6 Outlook Express 6 è un programma, incluso nel browser di Microsoft Internet Explorer, che ci permette di inviare e ricevere messaggi di posta elettronica. È gratuito,

Dettagli

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo Creazione di moduli Creazione di moduli Che cos'è un modulo? Un elenco di domande accompagnato da aree in cui è possibile scrivere le risposte, selezionare opzioni. Il modulo di un sito Web viene utilizzato

Dettagli

Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica.

Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica. Tecnologie informatiche ACCESSO REMOTO CON WINDOWS Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica. Un esempio di tale servizio

Dettagli

Gestione dei contenuti web Ultimi eventi

Gestione dei contenuti web Ultimi eventi Gestione dei contenuti web Ultimi eventi Questo manuale illustra le operazioni più comuni per la manutenzione e aggiornamento del sito web http://terremoti.ingv.it/ultimi eventi/ tramite l interfaccia

Dettagli

XFACILE / XTOTEM Pagina 1. Presentazione

XFACILE / XTOTEM Pagina 1. Presentazione XFACILE / XTOTEM Pagina 1 Presentazione XFACILE / XTOTEM Pagina 2 Presentazione XFACILE XTOTEM è un sistema studiato per gestire Siti Internet e Pannelli Informativi. Con XTOTEM si possono disegnare e

Dettagli

Supporto On Line Allegato FAQ

Supporto On Line Allegato FAQ Supporto On Line Allegato FAQ FAQ n.ro MAN-8JZGL450591 Data ultima modifica 22/07/2011 Prodotto Tuttotel Modulo Tuttotel Oggetto: Installazione e altre note tecniche L'utilizzo della procedura è subordinato

Dettagli

ISTRUZIONI PER L UTILIZZO DEL SOFTWARE Moda.ROA. Raccolta Ordini Agenti

ISTRUZIONI PER L UTILIZZO DEL SOFTWARE Moda.ROA. Raccolta Ordini Agenti ISTRUZIONI PER L UTILIZZO DEL SOFTWARE Raccolta Ordini Agenti AVVIO PROGRAMMA Per avviare il programma fare click su Start>Tutti i programmi>modasystem>nomeazienda. Se il collegamento ad internet è attivo

Dettagli

PC Crash Course: OBIETTIVI

PC Crash Course: OBIETTIVI PC Crash Course: OBIETTIVI 1. PC: uno strumento 2. Microsoft Windows XP: alcuni concetti chiave della interfaccia grafica 3. File System: file, direttori, link, 4. Il prompt dei comandi 5. Un occhiata

Dettagli

Sistema Informativo ClicPrevenzione

Sistema Informativo ClicPrevenzione Sistema Informativo ClicPrevenzione Controllo del documento Codice e titolo ClicVaccinazione Manuale Utente Versione 1.00 Data 04/11/2015 Autore Breve descrizione Stato Approvato da Lista di distribuzione

Dettagli

Software EasyKool. Istruzioni per l'uso

Software EasyKool. Istruzioni per l'uso Software EasyKool Istruzioni per l'uso 2 1 Indice 1 Indice 1 Indice... 3 1.1. In questo manuale... 5 2 Descrizione delle prestazioni... 5 2.1. Utilizzo... 5 2.2. Requisiti di sistema... 6 3 Prima di utilizzare

Dettagli

MOBS Flussi informativi sanitari regionali

MOBS Flussi informativi sanitari regionali Indicazioni per una corretta configurazione del browser Versione ottobre 2014 MOBS--MUT-01-V03_ConfigurazioneBrowser.docx pag. 1 di 25 Uso: ESTERNO INDICE 1 CRONOLOGIA VARIAZIONI...2 2 SCOPO E CAMPO DI

Dettagli

Si precisa in ogni caso che questa guida rapida non esime dalla lettura del Manuale utente presente nell ambiente del Servizio Telematico Doganale.

Si precisa in ogni caso che questa guida rapida non esime dalla lettura del Manuale utente presente nell ambiente del Servizio Telematico Doganale. GUIDA RAPIDA versione 25 febbraio 2010 SERVIIZIIO TELEMATIICO DOGANALE Avvertenze: Questa guida vuole costituire un piccolo aiuto per gli operatori che hanno già presentato richiesta di adesione al servizio

Dettagli

TS-CNS. Tessera Sanitaria Carta Nazionale dei Servizi. Manuale di installazione e configurazione. Versione 04.00 del 05.09.2014

TS-CNS. Tessera Sanitaria Carta Nazionale dei Servizi. Manuale di installazione e configurazione. Versione 04.00 del 05.09.2014 TS-CNS Tessera Sanitaria Carta Nazionale dei Servizi Versione 04.00 del 05.09.2014 - Sistema operativo Windows 32bit e 64bit - Carte Siemens Per conoscere tutti i servizi della TS CNS visita il sito: www.regione.sardegna.it/tscns

Dettagli

SCP: SCHEDULER LAYER. a cura di. Alberto Boccato

SCP: SCHEDULER LAYER. a cura di. Alberto Boccato SCP: SCHEDULER LAYER a cura di Alberto Boccato PREMESSA: Negli ultimi tre anni la nostra scuola ha portato avanti un progetto al quale ho partecipato chiamato SCP (Scuola di Calcolo Parallelo). Di fatto

Dettagli

Questa versione permette di stampare la configurazione dell impianto e risolve alcuni problemi riscontrati nelle versioni precedenti.

Questa versione permette di stampare la configurazione dell impianto e risolve alcuni problemi riscontrati nelle versioni precedenti. SOFTWARE PER CENTRALI FENICE Software_Fenice_1.2.0 12/09/2012 Questo Software permette all'installatore di programmare le centrali della serie Fenice, di aggiornare i firmware dei vari componenti del sistema

Dettagli

PROVA DI CONOSCENZA CORSO DI ALFABETIZZAZIONE INFORMATICA 21 dicembre 2001 tema A

PROVA DI CONOSCENZA CORSO DI ALFABETIZZAZIONE INFORMATICA 21 dicembre 2001 tema A PROVA DI CONOSCENZA CORSO DI ALFABETIZZAZIONE INFORMATICA 21 dicembre 2001 tema A 1) Le funzioni dell'unità di controllo di un processore sono: A) Verificare che le periferiche funzionino correttamente.

Dettagli

Guida Connessione Rete WiFi HotSpot Internavigare

Guida Connessione Rete WiFi HotSpot Internavigare Guida Connessione Rete WiFi HotSpot Internavigare Indice: - 1.1 Configurazione Windows Xp 2.1 Configurazione Windows Vista 3.1 Configurazione Windows Seven 1.1 - WINDOWS XP Seguire i seguenti passi per

Dettagli

v. 1.0-7-11-2007 Mistral ArchiWeb 2.0 Manuale utente

v. 1.0-7-11-2007 Mistral ArchiWeb 2.0 Manuale utente v. 1.0-7-11-2007 Mistral ArchiWeb 2.0 Manuale utente Sommario 1. INTRODUZIONE...3 2. DESCRIZIONE FUNZIONALITÀ...3 2.1. LOGIN...3 2.2. SCHEDA ARCHIVIO...3 2.3. GESTIONE ARCHIVI...4 2.3.1 Creazione nuovo

Dettagli

Ogni browser (Internet Explorer, Google Chrome, Mozilla Firefox o Safari) permette di impostare le preferenze per i cookie.

Ogni browser (Internet Explorer, Google Chrome, Mozilla Firefox o Safari) permette di impostare le preferenze per i cookie. COSA SONO? Un cookie è rappresentato da un file di testo memorizzato sul vostro computer, tramite il browser di navigazione, creato durante la navigazione sui siti web. Servono nella maggioranza dei casi

Dettagli

Come installare e configurare il software FileZilla

Come installare e configurare il software FileZilla Come utilizzare FileZilla per accedere ad un server FTP Con questo tutorial verrà mostrato come installare, configurare il software e accedere ad un server FTP, come ad esempio quello dedicato ai siti

Dettagli

Manuale per l utente di Ethernet

Manuale per l utente di Ethernet Manuale per l utente di Ethernet Indice 1. Nome della scheda dell interfaccia & stampante disponibile... 2 2. Specifiche... 3 3. Modalità d installazione... 4 4. Configurazione della scheda dell interfaccia

Dettagli

Tecnologie e Programmazione Web

Tecnologie e Programmazione Web Presentazione 1 Tecnologie e Programmazione Web Html, JavaScript e PHP RgLUG Ragusa Linux Users Group SOftware LIbero RAgusa http://www.solira.org - Nunzio Brugaletta (ennebi) - Reti 2 Scopi di una rete

Dettagli

Internet Architettura del www

Internet Architettura del www Internet Architettura del www Internet è una rete di computer. Il World Wide Web è l insieme di servizi che si basa sull architettura di internet. In una rete, ogni nodo (detto host) è connesso a tutti

Dettagli

UltraSMS. Introduzione. 1. Primo Avvio 1.1 Installazione 1.2 Impostazioni

UltraSMS. Introduzione. 1. Primo Avvio 1.1 Installazione 1.2 Impostazioni UltraSMS Introduzione 1. Primo Avvio 1.1 Installazione 1.2 Impostazioni 2. Gestire Contatti 2.1 Inserire/modificare/cancellare un contatto 2.2 Importare i contatti da Outlook 2.3 Creare una lista di numeri

Dettagli

UltraSMS. Introduzione. 1. Primo Avvio 1.1 Installazione 1.2 Impostazioni

UltraSMS. Introduzione. 1. Primo Avvio 1.1 Installazione 1.2 Impostazioni UltraSMS Introduzione 1. Primo Avvio 1.1 Installazione 1.2 Impostazioni 2. Gestire Contatti 2.1 Inserire/modificare/cancellare un contatto 2.2 Importare i contatti da Outlook 2.3 Creare una lista di numeri

Dettagli

Manuale di Attivazione. Edizione Ottobre 2008

Manuale di Attivazione. Edizione Ottobre 2008 Manuale di Attivazione Edizione Ottobre 2008 Manuale attivazione BT Internet Banking - 2008 INDICE 1. REQUISITI PRELIMINARI 3 2. DATI PER L ACCESSO AL SERVIZIO 4 2.1 UTENTI CHE UTILIZZANO IL CERTIFICATO

Dettagli

Mon Ami 3000 Touch Interfaccia di vendita semplificata per monitor touchscreen

Mon Ami 3000 Touch Interfaccia di vendita semplificata per monitor touchscreen Prerequisiti Mon Ami 3000 Touch Interfaccia di vendita semplificata per monitor touchscreen L opzione Touch è disponibile per le versioni Vendite, Azienda Light e Azienda Pro; per sfruttarne al meglio

Dettagli

RELAZIONE TECNICA DEL PROGETTO SERBATOIO PROTOTIPO

RELAZIONE TECNICA DEL PROGETTO SERBATOIO PROTOTIPO RELAZIONE TECNICA DEL PROGETTO SERBATOIO PROTOTIPO A cura di Nicolò Venturelli Anno Scolastico 2012/2013-1 - LA NECESSITA DI IMMAGAZZINARE L ENERGIA TERMICA OLTRE CHE ELETTRICA Le imprese che producono

Dettagli

Corso di Web programming Modulo T3 A2 - Web server

Corso di Web programming Modulo T3 A2 - Web server Corso di Web programming Modulo T3 A2 - Web server 1 Prerequisiti Pagine statiche e dinamiche Pagine HTML Server e client Cenni ai database e all SQL 2 1 Introduzione In questa Unità si illustra il concetto

Dettagli

Basi di dati. Introduzione. Una breve introduzione sulla suite di OpenOffice.org e la gestione dei database

Basi di dati. Introduzione. Una breve introduzione sulla suite di OpenOffice.org e la gestione dei database Basi di dati Introduzione Una breve introduzione sulla suite di OpenOffice.org e la gestione dei database OpenOffice.org (www.openoffice.org) è un potente software opensource che ha, quale scopo primario,

Dettagli

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity CORSO DI ALGORITMI E PROGRAMMAZIONE JDBC Java DataBase Connectivity Anno Accademico 2002-2003 Accesso remoto al DB Istruzioni SQL Rete DataBase Utente Host client Server di DataBase Host server Accesso

Dettagli

Istruzioni operative

Istruzioni operative Manuale d'uso dello strumento di compilazione Bilanci con foglio di calcolo Istruzioni operative Manuale d uso - versione 4 - febbraio 2014 pag. 1 di 25 Indice Indice... 2 Introduzione... 3 Redazione del

Dettagli

JDBC versione base. Le classi/interfacce principali di JDBC

JDBC versione base. Le classi/interfacce principali di JDBC JDBC versione base Java Database Connectivity è il package Java per l accesso a database relazionali il package contiene interfacce e classi astratte uno dei pregi è la completa indipendenza del codice

Dettagli

Client - Server. Client Web: il BROWSER

Client - Server. Client Web: il BROWSER Client - Server Client Web: il BROWSER Il client Web è un applicazione software che svolge il ruolo di interfaccia fra l utente ed il WWW, mascherando la complessità di Internet. Funzioni principali Inviare

Dettagli

INDICE. 1 Scopo del documento... 2. 2 Passi da seguire... 3. 3 Materiale consegnato al momento dell abilitazione... 6

INDICE. 1 Scopo del documento... 2. 2 Passi da seguire... 3. 3 Materiale consegnato al momento dell abilitazione... 6 11 gennaio 2007 INDICE 1 Scopo del documento... 2 2 Passi da seguire... 3 3 Materiale consegnato al momento dell abilitazione... 6 4 Caratteristiche minime della postazione... 7 5 Virtual Machine Java...

Dettagli

Istituto Tecnico Industriale Statale Dionigi Scano Cagliari. Candidato: Medda Daniele Classe 5ª C Informatica Anno scolastico 2013/2014.

Istituto Tecnico Industriale Statale Dionigi Scano Cagliari. Candidato: Medda Daniele Classe 5ª C Informatica Anno scolastico 2013/2014. Istituto Tecnico Industriale Statale Dionigi Scano Cagliari Candidato: Medda Daniele Classe 5ª C Informatica Anno scolastico 2013/2014 relate Un esperimento di social networking open source 1 Introduzione

Dettagli

maildocpro Manuale Installazione

maildocpro Manuale Installazione maildocpro Manuale Installazione versione 3.4 maildocpro Manuale Installazione - Versione 3.4 1 Indice Indice... 2 Creazione database... 3 Database: MAILDOCPRO... 3 Database: SILOGONWEB... 5 Configurazione

Dettagli

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database Corso di Informatica Modulo T3 B3 Programmazione lato server 1 Prerequisiti Architettura client/server Conoscenze generali sui database 2 1 Introduzione Lo scopo di questa Unità è descrivere gli strumenti

Dettagli

Uso di un browser (con riferimento a Microsoft Internet Explorer 6.0)

Uso di un browser (con riferimento a Microsoft Internet Explorer 6.0) Uso di un browser (con riferimento a Microsoft Internet Explorer 6.0) Nota Bene: Si raccomanda di leggere queste dispense di fronte al computer, provando passo dopo passo le funzionalità descritte. Per

Dettagli

Siti interattivi e dinamici. in poche pagine

Siti interattivi e dinamici. in poche pagine Siti interattivi e dinamici in poche pagine 1 Siti Web interattivi Pagine Web codificate esclusivamente per mezzo dell HTML non permettono alcun tipo di interazione con l utente, se non quella rappresentata

Dettagli

REALIZZAZIONE DI REPORT MEDIANTE MICROSOFT EXCEL 2007

REALIZZAZIONE DI REPORT MEDIANTE MICROSOFT EXCEL 2007 SISTEMA A SUPPORTO DEI PROCESSI DI PROGRAMMAZIONE E CONTROLLO DI GESTIONE NELLE ORGANIZZAZIONI PUBBLICHE REALIZZAZIONE DI REPORT MEDIANTE MICROSOFT EXCEL 2007 Copyright 2010 CSIO Società di Informatica

Dettagli

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Accesso ai Dati Ing. Giuseppe D'Aquì Testi Consigliati Eclipse In Action Core J2EE Patterns - DAO [http://java.sun.com/blueprints/corej2eepatterns/patterns/dataaccessobject.html]

Dettagli

ASSOCIAZIONE ITALIANA EDITORI APPLICAZIONE WEB GESTIONE CATALOGO EDITORI MANUALE UTENTE

ASSOCIAZIONE ITALIANA EDITORI APPLICAZIONE WEB GESTIONE CATALOGO EDITORI MANUALE UTENTE ASSOCIAZIONE ITALIANA EDITORI APPLICAZIONE WEB GESTIONE CATALOGO EDITORI MANUALE UTENTE v. 1.0-31/01/2014 INDICE 1 INTRODUZIONE...3 2 ACCESSO ALL APPLICAZIONE...3 3 CONSULTAZIONE E AGGIORNAMENTO CATALOGO...4

Dettagli

uomo Software (sistema operativo) hardware

uomo Software (sistema operativo) hardware uomo Software (sistema operativo) hardware 1 Sistema operativo Insieme di programmi che svolgono funzioni essenziali per l uso del sistema di elaborazione Questi programmi sono i primi ad essere eseguiti

Dettagli

Manuale di Attivazione. Edizione Novembre 2008

Manuale di Attivazione. Edizione Novembre 2008 Manuale di Attivazione Edizione Novembre 2008 Manuale attivazione Internet Banking - 2008 INDICE 1. REQUISITI PRELIMINARI...3 2. DATI PER L ACCESSO AL SERVIZIO...4 2.1 UTENTI CHE UTILIZZANO IL CERTIFICATO

Dettagli

Università di Firenze Gestione Presenze Interfaccia grafica

Università di Firenze Gestione Presenze Interfaccia grafica Università di Firenze Gestione Presenze Interfaccia grafica Pagina 1 di 29 Versione Emissione Approvazione Modifiche Apportate Autore Data Autore Data 1 Maggini 01/03/06 - - Prima emissione. Pagina 2 di

Dettagli

ASP: DOMANDE E RISPOSTE (Q&A)

ASP: DOMANDE E RISPOSTE (Q&A) Autore: Classe: Nicola Ceccon QUINTA INFORMATICA (5IA) Anno scolastico: 2003/2004 Scuola: Itis Euganeo ASP: DOMANDE E RISPOSTE (Q&A) Dispensa La dispensa presenta i contenuti fondamentali di ASP nella

Dettagli

EUROPLUS - SOFT Art.: 4096

EUROPLUS - SOFT Art.: 4096 LINCE ITALIA S.p.A. REG.N.4796 UNI EN ISO 9001:2008 EUROPLUS - SOFT Art.: 4096 MANUALE DI INSTALLAZIONE, PROGRAMMAZIONE ED USO MADE IN ITALY SOMMARIO 1 Informazioni generali... 3 1.1 Requisiti di sistema...

Dettagli

Installazione di GFI FAXmaker

Installazione di GFI FAXmaker Installazione di GFI FAXmaker Requisiti di sistema Prima di installare GFI FAXmaker, assicurarsi di soddisfare tutti i requisiti che seguono. Server FAX GFI FAXmaker: Una macchina server Windows 2000 o

Dettagli

51) Linux è: A) un sistema operativo B) una periferica C) un applicazione

51) Linux è: A) un sistema operativo B) una periferica C) un applicazione Conoscenze Informatiche 51) Linux è: A) un sistema operativo B) una periferica C) un applicazione 52) Un provider è: A) un ente che fornisce a terzi l accesso a Internet B) un protocollo di connessione

Dettagli

Servizi web in LabVIEW

Servizi web in LabVIEW Servizi web in LabVIEW Soluzioni possibili, come si utilizzano. 1 Soluzioni possibili WEB SERVER Dalla versione 5.1 di LabVIEW è possibile implementare un Web server che consente di operare da remoto sul

Dettagli

1.1 La rete wireless. INDICE 1. Premessa

1.1 La rete wireless. INDICE 1. Premessa INDICE 1. Premessa 1.1 La rete wireless 1.2 Quick start 1.3 Associazione alla rete wi-fi 1.4 Configurazione Indirizzo IP 2. Autenticazione 2.1 Autenticazione al portale 2.2 Politiche di utilizzo e violazioni

Dettagli

Navigare in Internet

Navigare in Internet Navigare in Internet Navigare in Internet Scopo del modulo Gli scopi del modulo consistono nel mettere in grado di : Usare particolari tipi di file e protocolli e di meccanismi di accesso remoto Usare

Dettagli

> P o w e r D R E A M < Catalogazione Sogni

> P o w e r D R E A M < Catalogazione Sogni > P o w e r D R E A M < Catalogazione Sogni Guida rapida all utilizzo del software (rev. 1.4 - lunedì 29 ottobre 2012) INSTALLAZIONE, ATTIVAZIONE E CONFIGURAZIONE INIZIALE ESECUZIONE DEL SOFTWARE DATI

Dettagli

Breve introduzione per coloro che vanno di fretta

Breve introduzione per coloro che vanno di fretta Marco Lazzeri Sommario Verifica della versione del Java plug-in... 1 Esegui l'autenticazione (login)... 2 Individua il raggruppamento di stazioni su cui operare... 3 Seleziona il periodo di richiesta dei

Dettagli

Software di configurazione String Box

Software di configurazione String Box Software di configurazione String Box E vietata la riproduzione di qualsiasi parte del presente documento anche se parziale salvo autorizzazione della ditta costruttrice. Sommario Avvertenze... 3 Installazione

Dettagli

FileMaker Pro 12. Guida di FileMaker Server

FileMaker Pro 12. Guida di FileMaker Server FileMaker Pro 12 Guida di FileMaker Server 2007 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker è un marchio di FileMaker,

Dettagli

Laboratorio di Tecnologie Web HTML: Immagini Dott. Stefano Burigat

Laboratorio di Tecnologie Web HTML: Immagini Dott. Stefano Burigat Laboratorio di Tecnologie Web HTML: Immagini Dott. Stefano Burigat www.dimi.uniud.it/burigat Aggiungere immagini E' possibile inserire immagini all'interno delle pagine web in due modi: come contenuto

Dettagli

Software Requirements Specification

Software Requirements Specification SJS Sicilian Java Solutions Software Requirements Specification Data di inizio redazione: 16/11/2008 Data di fine redazione: 19/11/2008 Versione: 1.0 Redattore: Pennisi Carmelo Approvatori: Di Giorgio

Dettagli

roberto.albiero@cnr.it

roberto.albiero@cnr.it 2.2 Gestione dei file 2.2.1 Concetti fondamentali Un file (termine inglese che significa archivio) è un insieme di informazioni codificate ed organizzate come una sequenza di byte; queste informazioni

Dettagli

Manuale d uso. Applicazione client Postecert Firma Digitale per Postemailbox

Manuale d uso. Applicazione client Postecert Firma Digitale per Postemailbox per Postemailbox Documento pubblico Pagina 1 di 22 Indice INTRODUZIONE... 3 REQUISITI... 3 SOFTWARE... 3 HARDWARE... 3 INSTALLAZIONE... 3 AGGIORNAMENTI... 4 AVVIO DELL APPLICAZIONE... 4 UTILIZZO DELL APPLICAZIONE...

Dettagli