Scheda di laboratorio di Sistemi – autore Prof. Aniello Celentano – anno scolastico 2016/2017 Controllo della soglia di temperatura con LM35 Si vuole realizzare un controllo di temperatura facendo uso dell’integrato-sensore LM35. In particolar modo si vuole che un LED si accenda quando la temperatura supera la soglia dei 50 °C. Analizziamo il circuito proposto di seguito. Il sensore di temperatura LM35, dotato del diodo di protezione, invia il segnale nell’ingresso analogico della piattaforma programmabile Arduino, ingresso A0. Supponendo che la massima tensione che vogliamo monitorare sia di 100°C, la massima tensione che può arrivare sull’ingresso A0 è di 1 Volt. Ciò comporta che dobbiamo impostare una tensione di 1 Volt sull’ingresso AREF della scheda Arduino. Ciò viene realizzato con il trimmer da 5 K il cui cursore controlla direttamente l’ingresso AREF. Il PIN 5, impostato come Output digitale, controlla la luminosità del LED. Vediamo il programma da realizzare con l’IDE di Arduino. /* Programma per il controllo della temperatura. Programma verificato nella classe 5B a.s. 2016/2017 */ intTempSoglia = 50 intNSoglia ; intTemp ; bytePinLED = 7 ; ; // // // // Soglia da monitorare, 50 °C Conversione dell'ADC della temp. di soglia Temperatura letta da Arduino Pin che controlla il LED void setup() { pinMode(PinLED , OUTPUT ) ; analogReference( EXTERNAL ) ; // Configurail PIN 5 come OUTPUT digitale // Imposta la max tensione analogica la // tensione impostata sull'ingresso AREF NSoglia = ((float)TempSoglia/100) * 1024 ; // Calcola la temperatura di soglia in // numero intero a 10 bit (valore dell'ADC) digitalWrite(PinLED,HIGH); delay(2000); digitalWrite(PinLED,LOW); } voidloop() { Temp = analogRead( A0 ) ; if( Temp>NSoglia ) digitalWrite(PinLED , HIGH ) ; else digitalWrite(PinLED , LOW ) ; delay(50) ; } // Legge la temperatura convertira dall'ADC // Esegue il controllo sulla soglia TempSoglia // Impostail LED in ON // // Impostail LED in OFF // Spreca un poco di tempo per l'ADC