Progetto 01

Termometro elettronico

1. Obiettivo del Circuito

Il circuito rappresenta un classico sistema di condizionamento del segnale per sensori di temperatura. Il suo scopo è prelevare la tensione lineare generata dal sensore, eliminare la componente di offset iniziale e amplificare la variazione restante. In questo modo si ottiene in uscita (Vout) un segnale lineare, ottimizzato e pronto per essere letto con la massima precisione da un microcontrollore o da un sistema di acquisizione dati.

2. Scelta e descrizione dei componenti utilizzati

Resistenze e componenti di taratura:

Le resistenze sono state scelte in base ai calcoli di dimensionamento e rispettando la serie commerciale E12. Tutte le resistenze presentano una tolleranza del ±5%.

3. Descrizione del criterio di progettazione e funzionamento del circuito.

Di seguito c'è lo schema del circuito , che per spiegarlo meglio ho deciso di dividerlo in tre parti:

Download file di progetto: Files di KiCad del progetto.zip

Funzionamento

Sensore (2.73V-3.73V): A fini didattici abbiamo riprodotto la tensione uscente da un ipotetico sensore di temperatura che varia da 2.73V a 3.73V, per arrivare a questo risultato utilizzo un partitore di tensione utilizzando la tensione di alimentazione da 6V.

di seguito i calcoli:

Parte 1 : Utilizzo una configurazione differenziale per produrre una tensione di 2.73V da un ingresso di 6 V , la tensione d’uscita poi andrà all'ingresso invertente della Parte 2 del circuito. LM336 viene usato come limitatore di tensione da 2.5V, l’operazionale che utilizzo è un TLV 2372 rail to rail particolarmente comodo perché in questo modo non sono costretto ad alimentarlo in duale con due tensioni di segno opposto ,per l’alimentazione V+ utilizzo 6V mentre per il V- invece 0V.

di seguito i calcoli:

Parte 2: Anche questa parte utilizza una configurazione differenziale , questa volta però è necessario che faccia una sottrazione tra la tensione proveniente dal sensore (2.73V - 3.73V) e la tensione uscente dalla Parte 1 . Però noi vogliamo avere in uscita una tensione da 0V a 5V da far leggere ad Arduino , per questo motivo dobbiamo dimensionare le resistenze per avere un differenziale con amplificazione di 5 , perché la sottrazione pura delle due tensioni darebbe un uscita da 0V a 1V , questo ci porta alla conclusione che per avere una tensione che arrivi fino a 5V abbiamo bisogno di un’amplificazione di 5.

di seguito i calcoli:

4. Interfacciamento con Arduino

L'uscita dell'operazionale (Vout) viene collegata direttamente al pin analogico A0 di Arduino. Il codice acquisisce il valore analogico, lo converte in tensione e mappa il segnale su una scala termometrica lineare dove 0V corrisponde a 0°C e 5V corrisponde a 100°C (1V = 20°C).

int sensore = A0;
float temperatura;

void setup() {
  Serial.begin(9600);
}

void loop() {
  int valore = analogRead(sensore);
  float tensione = valore * (5.0 / 1023.0);
  temperatura = tensione * 20; // scala 0-5V -> 0-100°C
  
  Serial.print("Temperatura: ");
  Serial.print(temperatura);
  Serial.println(" °C");
  delay(1000);
}

Note importanti per il cablaggio:

5. Procedimento di taratura e collaudo

  1. Verificare a circuito spento l'assenza di cortochemici e la corretta continuità di tutte le linee e delle masse comuni.
  2. Alimentare lo stadio hardware tramite un alimentatore da banco stabilizzato impostato a 6V.
  3. Utilizzando un multimetro digitale, misurare la tensione di riferimento generata in uscita dalla prima parte del circuito e verificare la stabilità del partitore che simula il sensore.
  4. Verificare l'escursione dell'uscita finale accertandosi che si attesti nel range dinamico calcolato (da 0V a 5V) al variare degli ingressi.
  5. Collegare il sistema ad Arduino e monitorare tramite il Serial Monitor la stabilità e la coerenza dei valori di temperatura stampati.
Prossimo progetto
Amplificatore audio ↗
Tutti i progetti
← Home