Linearizzazione di un sensore

Slides:



Advertisements
Presentazioni simili
Lequazione delle onde Alberto Martini. X Y Questa è la forma dellonda allistante t = 0.
Advertisements

INFORMATICA Altre Istruzioni di I/O
Definitezza Vogliamo poter richiedere la “definitezza” delle funzioni
La distillazione È un processo di separazione chimico-fisico in cui due o più liquidi, miscibili o non miscibili vengono fatti passare tramite ebollizione.
LINGUAGGIO DI PROGRAMMAZIONE C
Funzioni e procedure Ogni linguaggio di programmazione ad alto livello mette a disposizione del programmatore questi strumenti, ed il C non è da meno!
Nel C non esiste un dato primario di tipo stringa; queste sono rappresentate con un array monodimensionale di caratteri (tipo char). Così per definire.
Introduzione al linguaggio C
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità F2 Selezione.
Iterazione A. Ferrari.
Sviluppo di programmi strutturati
1 Informatica Generale Susanna Pelagatti Ricevimento: Mercoledì ore presso Dipartimento di Informatica, Via Buonarroti,
Informatica Generale Susanna Pelagatti
Il secondo Principio della Termodinamica
Fusione e sue leggi.
Di Libero Sellaro Procedura di svolgimento dei problemi 2001/02 MOTI RETTILINEI UNIFORMEMENTE ACCELERATI Per lo schermo intero, clic su tasto destro e.
La ricorsione Simulazione. Il Main /* Programma che usa una funzione ricorsiva*/ #include #define MAX_N 8 main() int valore, dato; printf(Introduci n:
TERNE PITAGORICHE Obiettivi dell’esercitazione
ESERCITAZIONE N. 5 ESERCIZIO N. 1 Autore: Biagio Brattoli S I Corso.
INFORMATICA Strutture iterative
Introduzione ai circuiti sequenziali
Algoritmi Politecnico di Milano C Primi programmi Politecnico di Milano.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Funzioni e Procedure Marco D. Santambrogio – Ver. aggiornata al 18 Aprile 2012.
Il primo principio non basta a spiegare la spontaneità di un processo……………………… C costante, W numero di microstati.
FONDAMENTI DI INFORMATICA III A3A1-1 Realtà e Modello MODELLI E METODOLOGIE PER LA PROGETTAZIONE LOGICA DI SISTEMI INFORMATIVI PER LUFFICIO Argomento 3.
MATLAB.
MATLAB. …oggi… Programmare in Matlab Programmare in Matlab Funzioni Funzioni Cicli Cicli Operatori relazionali Operatori relazionali Indipendenza lineare,
INTRODUZIONE ALLA PROGRAMMAZIONE STRUTTURATA
I numeri figurati Numeri quadrati: Numeri triangolari:
BIOINGEGNERIA S. Salinari Lezione 5. Lalgoritmo di retropropagazione Premesse 1.Reti Duali Si definiscono reti duali reti per cui è verificata la seguente.
Pg 1. Pg 2 Agenda per oggi Agenda per oggi 1-D moto: Cinematica Velocità e accelerazione media ed istantanea Moto con accelerazione costante.
INFORMATICA Altre Istruzioni di I/O. © Piero Demichelis 2 Funzioni di I/O Per la lettura e la scrittura da videoterminale il C prevede numerose istruzioni.
Formule (linguaggi elementari). PRIMA Occorre sapere che cosè un termine.
Strutture di controllo nel C
Strutture di controllo in C -- Flow Chart --
Politecnico di Milano Esercizi Preparazione alla prima prova intermedia.
Esercizi C su array e matrici
Fondamenti di Informatica Algoritmi
Le funzioni.
Algoritmi e Programmazione (in C) Stefano Cagnoni e Monica Mordonini
Vettori e Funzioni 3 Maggio Esercizio 1 Si scriva un programma in linguaggio C che, dopo aver acquisito il contenuto di un vettore di interi da.
Gli algoritmi.
Elementi di programmazione ad oggetti a. a. 2009/2010 Corso di Laurea Magistrale in Ingegneria Elettronica Docente: Mauro Mazzieri, Dipartimento di Ingegneria.
ELEMENTI DI PROGRAMMAZIONE
OUTPUT FORMATTATO La funzione printf consente di effettuare la stampa a video formattata. Sintassi: printf ( stringa_formato, arg0, arg1, … ); La stringa.
Equazione di secondo grado.
Architettura degli Elaboratori II (canale P-Z) Linguaggi e moduli
In molti casi è utile assegnare a degli identificatori dei valori che restino costanti durante tutto il programma e che non possano essere cambiati nemmeno.
Il linguaggio C Le funzioni C Language Il passaggio dei parametri
Programmazione di Calcolatori
Il Telerilevamento: Utilizzo di dati da sensori remoti per l’informazione territoriale I dati Immagini digitali multispettrali: sensori che registrano.
Massimo Comun Divisore
Radice quadrata di un numero
14 marzo 2002 Avvisi:.
Università degli Studi di BresciaA.A. 2012/2013 Fondamenti di Programmazione Docente: Alessandro SaettiA.A. 2012/2013 Università degli Studi di Brescia.
Università degli Studi di BresciaA.A. 2012/2013 Fondamenti di Programmazione Docente: Alessandro SaettiA.A. 2012/2013 Università degli Studi di Brescia.
1Piero Scotto - C14. Finalità del corso Programma Materiale Requisiti Spendibilità 2Piero Scotto - C14.
Soluzioni e commenti esercizi 1 e 2
Vettori dello spazio bidimensionale (R 2)
ANALISI NUMERICA.
Ripetizione La vera potenza dei programmi per computer risiede nella capacità di ripetere lo stesso calcolo o sequenza di istruzioni più volte, ogni volta.
#include void main() { int a,b,c,; float s, x,x1,x2,delta,alfa,beta; int num[3]; int i; printf("La forma classica dell'equazione di 2° grado è: a*x^2+b*x+c=0\n.
LABORATORIO DI FISICA.
Informatica B Allievi Elettrici - AA Fondamenti della programmazione in linguaggio C (II) Istruzioni e strutture di controllo.
Linguaggio C: Le basi Stefano Cagnoni e Monica Mordonini
L’ELABORATORE ELETTRONICO uno strumento in grado di eseguire insiemi di azioni (“mosse”) elementari le azioni vengono eseguite su oggetti (dati) per produrre.
Esercizio n.5 a) Dimostrare che, dato un qualunque  > 0, se  m’ : | I m’ + 1  I m’ |   allora Ciò consente, prefissato un certo  > 0, errore massimo.
Algoritmi e Programmazione (in C) Stefano Cagnoni e Monica Mordonini
Linearizzazione di un sensore
Linearizzazione di un sensore
Transcript della presentazione:

Linearizzazione di un sensore Tiziano Serra matr. 182604

Il problema: Si vuole linearizzare un sensore di temperatura, che fornisce un'uscita tra 0 e 100 mV, mediante una spezzata. Sperimentalmente sono stati trovati i seguenti punti di ginocchio della spezzata: (20 mV, 15 gradi), (55 mV, 27 gradi). Inoltre a 0 mV si fa corrispondere 0 gradi e a 100 mv 35 gradi. Realizzare un programma che permetta di introdurre da tastiera un valore di tensione fornito dal sensore, calcoli e stampi il valore di temperatura espresso in gradi. L'elaborazione deve avvenire operando con gli interi con la massima precisione possibile.

Studio del problema nel suo dominio specifico T ( °C) 35 T3 27 T2 15 T1 0 T0 V ( mV) V0 V1 20 V2 55 V3 100

Individuo un passo importante Mi pongo in una situazione intermedia. Se si introduce una tensione V, ricado in uno dei triangoli: V1 20 V2 55 V3 100 V T 15 T1 27 T2 35 T3 V0 0T0 T V

Individuo un passo importante (2) Isolando il triangolo, e generalizzando: Ti T Ti-1 Vi-1 V Vi Per le proprietà dei triangoli rettangoli, vale la seguente proporzionalità:

Individuo un passo importante (3) da cui: Considerazione di programmazione: la formula richiama lo schema A / B * C. Poiché opero con gli interi, devo eseguire prima il prodotto e poi la divisione.

Schema di massima dell’algoritmo risolutivo Leggo la tensione Verifico se la tensione ricade tra gli estremi V0 e V3, altrimenti non posso operare Controllo in quale segmento ricado, e carico sulle opportune variabili i valori di ginocchio Eseguo l’elaborazione secondo la formula Stampo il risultato

Tensione ≥ V0 AND Tensione ≤ V3 Calcola “Temperatura” Temperatura = y1 + ( Tensione – x1 ) * ( y2 – y1 ) / ( x2 – x1 ) ; V0 = 0; T0 = 0; V1 = 20; T1 = 15; V2 = 55; T2 = 27; V3 = 100; T3 = 35; Start Leggo ”Tensione” V Tensione ≥ V0 AND Tensione ≤ V3 F Tensione ≤ V1 V F Tensione ≤ V2 F V x1= V0 x2 = V1 y1 = T0 y2 = T1 x1 = V1 x2 = V2 y1 = T1 y2 = T2 x1 = V2 x2 = V3 y1 = T2 y2 = T3 Calcola “Temperatura” Stampa “Temperatura” Stampa “Errore” Stop

Programma in linguaggio C: #include <stdio.h> #include <stdlib.h> #define V0 0 #define T0 0 #define V1 20 #define T1 15 #define V2 55 #define T2 27 #define V3 100 #define T3 35 int main() { int tensione; int temperatura; int x1; int x2; int y1; int y2; printf("Fornire un'uscita in tensione tra i 0 mV e i 100 mV: "); scanf("%d", &tensione);

if ( (tensione >= V0) && (tensione <= V3) ) { if (tensione <= V1) x1=V0; x2=V1; y1=T0; y2=T1; } else if (tensione <= V2) x1=V1; x2=V2; y1=T1; y2=T2; x1=V2; x2=V3; y1=T2; y2=T3; temperatura = y1 + (tensione-x1)*(y2-y1)/(x2-x1); printf("Il valore della temperatura corrispondente a questa tensione %d mV e' %d C\n", tensione, temperatura); printf("Errore. Inserire un'uscita in tensione compresa tra i 0 mV e i 100mV\n"); return 0;