Sommario:
- Passaggio 1: hardware richiesto:
- Passaggio 2: collegamento hardware:
- Passaggio 3: codice per la misurazione della temperatura:
- Passaggio 4: applicazioni:
Video: Misurazione della temperatura utilizzando MCP9803 e Arduino Nano: 4 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:01
MCP9803 è un sensore di temperatura ad alta precisione a 2 fili. Sono dotati di registri programmabili dall'utente che facilitano le applicazioni di rilevamento della temperatura. Questo sensore è adatto per sistemi di monitoraggio della temperatura multizona altamente sofisticati.
In questo tutorial è stato illustrato l'interfacciamento del modulo sensore MCP9803 con arduino nano. Per leggere i valori di temperatura, abbiamo utilizzato arduino con un adattatore I2c. Questo adattatore I2C rende la connessione al modulo sensore facile e più affidabile.
Passaggio 1: hardware richiesto:
I materiali di cui abbiamo bisogno per raggiungere il nostro obiettivo includono i seguenti componenti hardware:
1. MCP9803
2. Arduino Nano
3. Cavo I2C
4. Scudo I2C per arduino nano
Passaggio 2: collegamento hardware:
La sezione di collegamento hardware spiega fondamentalmente le connessioni di cablaggio richieste tra il sensore e l'arduino nano. Garantire connessioni corrette è la necessità di base mentre si lavora su qualsiasi sistema per l'output desiderato. Quindi, i collegamenti necessari sono i seguenti:
L'MCP9803 funzionerà su I2C. Ecco lo schema elettrico di esempio, che mostra come cablare ciascuna interfaccia del sensore.
Di default, la scheda è configurata per un'interfaccia I2C, quindi consigliamo di utilizzare questo collegamento se sei altrimenti agnostico.
Tutto ciò di cui hai bisogno sono quattro fili! Sono necessarie solo quattro connessioni pin Vcc, Gnd, SCL e SDA e questi sono collegati con l'aiuto del cavo I2C.
Queste connessioni sono mostrate nelle immagini sopra.
Passaggio 3: codice per la misurazione della temperatura:
Iniziamo ora con il codice arduino.
Durante l'utilizzo del modulo sensore con arduino, includiamo la libreria Wire.h. La libreria "Wire" contiene le funzioni che facilitano la comunicazione i2c tra il sensore e la scheda arduino.
L'intero codice arduino è riportato di seguito per comodità dell'utente:
#includere
// L'indirizzo I2C di MCP9803 è 0x48(72)
#define Indirizzo 0x48
configurazione nulla()
{
// Inizializza la comunicazione I2C come MASTER
Wire.begin();
// Inizializza la comunicazione seriale, imposta la velocità di trasmissione = 9600
Serial.begin(9600);
// Avvia la trasmissione I2C
Wire.beginTransmission(Addr);
// Seleziona il registro di configurazione
Wire.write(0x01);
// Modalità di conversione continua, impostazione predefinita all'accensione
Wire.write(0x60);
// Interrompi trasmissione I2C
Wire.endTransmission();
ritardo(300);
}
ciclo vuoto()
{
dati int senza segno[2];
// Avvia la comunicazione I2C
Wire.beginTransmission(Addr);
// Seleziona registro dati
Wire.write(0x00);
// Interrompe la trasmissione I2C
Wire.endTransmission();
// Richiedi 2 byte di dati
Wire.requestFrom(Addr, 2);
// Legge 2 byte di dati
//temp msb, temp lsb
if(Filo.disponibile() == 2)
{
data[0] = Wire.read();
data[1] = Wire.read();
}
// Converti i dati a 12 bit
int temp = ((data[0] * 256) + data[1]) / 16,0;
if(temp > 2047)
{
temperatura -= 4096;
}
float cTemp = temperatura * 0,0625;
float fTemp = cTemp * 1,8 + 32;
// Invia i dati al monitor seriale
Serial.print("Temperatura in gradi Celsius: ");
Serial.print(cTemp);
Serial.println("C");
Serial.print("Temperatura in Fahrenheit: ");
Serial.print(fTemp);
Serial.println("F");
ritardo (500);
}
Nella libreria wire Wire.write() e Wire.read() viene utilizzato per scrivere i comandi e leggere l'output del sensore.
Serial.print() e Serial.println() vengono utilizzati per visualizzare l'output del sensore sul monitor seriale dell'IDE Arduino.
L'uscita del sensore è mostrata nell'immagine sopra.
Passaggio 4: applicazioni:
MCP9803 può essere impiegato in un'ampia gamma di dispositivi che includono personal computer e periferiche, unità disco rigido, vari sistemi di intrattenimento, sistemi per ufficio e sistemi di comunicazione dati. Questo sensore può essere incorporato in vari sistemi sofisticati.
Consigliato:
Misurazione della temperatura utilizzando STS21 e Arduino Nano: 4 passaggi
Misurazione della temperatura utilizzando STS21 e Arduino Nano: il sensore di temperatura digitale STS21 offre prestazioni superiori e un ingombro ridotto. Fornisce segnali calibrati e linearizzati in formato digitale I2C. La fabbricazione di questo sensore si basa sulla tecnologia CMOSens, che attribuisce al superiore
Misurazione della temperatura utilizzando ADT75 e Arduino Nano: 4 passaggi
Misurazione della temperatura utilizzando ADT75 e Arduino Nano: ADT75 è un sensore di temperatura digitale altamente accurato. Comprende un sensore di temperatura a banda proibita e un convertitore da analogico a digitale a 12 bit per il monitoraggio e la digitalizzazione della temperatura. Il suo sensore altamente sensibile lo rende abbastanza competente per me
Misurazione dell'umidità e della temperatura utilizzando HIH6130 e Arduino Nano: 4 passaggi
Misurazione di umidità e temperatura utilizzando HIH6130 e Arduino Nano: HIH6130 è un sensore di umidità e temperatura con uscita digitale. Questi sensori forniscono un livello di precisione di ±4% UR. Con stabilità a lungo termine leader del settore, I2C digitale con compensazione della temperatura reale, affidabilità leader del settore, efficienza energetica
Misurazione della temperatura utilizzando MCP9803 e fotone particellare: 4 passaggi
Misurazione della temperatura utilizzando MCP9803 e Particle Photon: MCP9803 è un sensore di temperatura ad alta precisione a 2 fili. Sono dotati di registri programmabili dall'utente che facilitano le applicazioni di rilevamento della temperatura. Questo sensore è adatto per sistemi di monitoraggio della temperatura multizona altamente sofisticati.N
Misurazione della temperatura utilizzando MCP9803 e Raspberry Pi: 4 passaggi
Misurazione della temperatura utilizzando MCP9803 e Raspberry Pi: MCP9803 è un sensore di temperatura ad alta precisione a 2 fili. Sono dotati di registri programmabili dall'utente che facilitano le applicazioni di rilevamento della temperatura. Questo sensore è adatto per sistemi di monitoraggio della temperatura multizona altamente sofisticati.N