Arduino + Temperatura + Umidità: 4 Passi
Arduino + Temperatura + Umidità: 4 Passi
Anonim

Un semplice sensore di temperatura che utilizza un sensore di temperatura di precisione LM35, un sensore di umidità e Arduino, così puoi collegarti ai tuoi progetti futuri. Il circuito invierà informazioni seriali sulla temperatura e sull'umidità in modo da poterle utilizzare sul computer. Ho preso i dati dal mio compost. Il progetto è relativo a una discarica giornaliera di prodotto esistente con la quale chiunque può convertire i rifiuti di cucina in compost a casa. Per maggiori dettagli sul prodotto, visitare https://www.dailydump.org/content/. Digicompost visualizza i cambiamenti (cambiamento di temperatura, umidità) che si verificano all'interno della discarica

Passaggio 1: materiali

- Arduino (Puoi usare un altro microcontrollore, ma poi dovrai cambiare il codice). - Sensore di temperatura centigrado di precisione LM35, che puoi acquistare da qualsiasi negozio di elettronica. Ecco la SCHEDA TECNICA.- BreadBoard.- Sensore di umidità.- Fili.

Passaggio 2: configurazione di Arduino + temperatura

Arduino è una piattaforma di prototipazione elettronica open source basata su hardware e software flessibili e di facile utilizzo. È destinato ad artisti, designer, hobbisti e chiunque sia interessato a creare oggetti o ambienti interattivi. Per ulteriori informazioni accedere a (https://www.arduino.cc) Collegamento di un sensore di temperatura: L'LM35 ha tre gambe e sembra un transistor. Le due gambe esterne sono +5v e Ground, e la gamba centrale sviluppa la tensione del campione. Il convertitore analogico-digitale (ADC) converte i valori analogici in un'approssimazione digitale basata sulla formula Valore ADC = campione * 1024 / tensione di riferimento (+5v). Quindi con un riferimento di +5 volt, l'approssimazione digitale sarà = tensione di ingresso * 205. (Es. 2,5 V * 205 = 512,5) L'LM35 è un sensore di temperatura lineare di precisione che fornisce 10 mv per grado Celsius. Ciò significa che a 15 gradi Celsius, produrrebbe una lettura di.150v o 150 millivolt. Inserendo questo valore nella nostra conversione ADC (.15v * 205 = 30.75) possiamo ottenere un'approssimazione della temperatura Celsius dividendo il conteggio dell'ingresso digitale per 2. Se l'LM35 fosse fornito da una diversa tensione di riferimento (9v o 12v) dovremmo utilizzare un metodo di conversione diverso. Per questo circuito, dividere per 2 funziona bene.

Passaggio 3: collegamento del sensore di umidità

Ci sono due pin sul sensore di umidità uno è per la terra e l'altro per l'uscita che va sul pin 3 su arduino. Ho usato un sensore locale per testare l'umidità/umidità, ma si può optare per SHT15 che ha sia la temperatura che l'umidità.

Passaggio 4: impostazione del codice!

Collega il tuo arduino al computer, apri l'applicazione seleziona la porta corretta e il modello n. prima di iniziare qualsiasi codifica. Dopo aver fatto tutto, annota il codice come mostrato di seguito: int pin = 5; // pinint analogico putPin = 3; // umiditàint tempc = 0, tempf=0; // variabili di temperaturaint campioni[8]; // variabili per ottenere una migliore precisioneint maxi = -100, mini = 100; // per avviare la temperatura max/minint i;float humi = 0;float prehum = 0;float humconst = 0;float truehum = 0;float pretruehum = 0; long pretruehumconst = 0; long valb = 0; void setup(){ Serial.begin(9600); // avvia la comunicazione seriale}void loop(){for(i = 0;i<=7;i++){ campioni = (5.0 * analogRead(pin) * 100.0) / 1024.0; tempc = tempc + campioni; delay(1000);}tempc = tempc/8.0; tempf = (tempc * 9)/ 5 + 32; valb = analogRead(putPin); // calcolo dell'umiditàprehum = (valb/5);humconst = (0.16/0.0062);humi = prehum - humconst;pretruehumconst = 0.00216*tempc;pretruehum = 1.0546-pretruehumconst;truehum = humi/pretruehum;delay(1000);Serial. print(tempc, DEC);Serial.print(" Celsius, ");Serial.print ("Umidità: ");Serial.print ((long)truehum);Serial.println ("% ");tempc = 0; ritardo(1000); // ritardo prima del ciclo} Dopo aver fatto tutto, fai clic sul pulsante di caricamento che impiegherà un po' di tempo per caricare e quando il caricamento è terminato assicurati di fare clic su Comunicazione seriale per ottenere le letture dal sensore !!!