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 Raspberry Pi: 4 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
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 viene dimostrata l'interfacciamento del modulo sensore MCP9803 con raspberry pi ed è stata illustrata anche la sua programmazione in linguaggio Java. Per leggere i valori di temperatura, abbiamo utilizzato raspberry pi 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. Lampone pi
3. Cavo I2C
4. Scudo I2C per lampone pi
5. Cavo Ethernet
Passaggio 2: collegamento hardware:
La sezione relativa ai collegamenti hardware spiega sostanzialmente le connessioni di cablaggio necessarie tra il sensore e il Raspberry Pi. 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:
Il vantaggio di utilizzare raspberry pi è che ti offre la flessibilità del linguaggio di programmazione in cui desideri programmare la scheda per interfacciare il sensore con essa. Sfruttando questo vantaggio di questa scheda, stiamo dimostrando che qui sta programmando in Java. Il codice java per MCP9803 può essere scaricato dalla nostra comunità Github che è Dcube Store.
Oltre che per la facilità degli utenti, spieghiamo anche qui il codice:
Come primo passo della codifica, devi scaricare la libreria pi4j in caso di java perché questa libreria supporta le funzioni utilizzate nel codice. Quindi, per scaricare la libreria puoi visitare il seguente link:
pi4j.com/install.html
Puoi copiare il codice Java funzionante per questo sensore anche da qui:
import com.pi4j.io.i2c. I2CBus;
import com.pi4j.io.i2c. I2CDevice;
import com.pi4j.io.i2c. I2CFactory;
import java.io. IOException;classe pubblica MCP9803
{
public static void main(String args) genera un'eccezione
{
// Crea bus I2C
I2CBus Bus = I2CFactory.getInstance(I2CBus. BUS_1);
// Ottieni il dispositivo I2C, l'indirizzo I2C di MCP9803 è 0x48(72)
I2CDevice device = Bus.getDevice(0x48);
// Seleziona il registro di configurazione
// Modalità di conversione continua, accensione, modalità comparatore, risoluzione a 12 bit
device.write(0x01, (byte)0x60);
Thread.sleep(500);
// Legge 2 byte di dati dall'indirizzo 0x00(0)
//temp msb, temp lsb
byte dati = nuovo byte[2];
device.read(0x00, data, 0, 2);
// Converti i dati a 12 bit
int temp = ((data[0] & 0xFF) * 256 + (data[1] & 0xF0)) / 16;
if(temp > 2047)
{
temperatura -= 4096;
}
doppio cTemp = temperatura * 0,0625;
doppia fTemp = cTemp * 1,8 + 32;
// Invia i dati allo schermo
System.out.printf("La temperatura in gradi Celsius è: %.2f C %n", cTemp);
System.out.printf("La temperatura in Fahrenheit è: %.2f F %n", fTemp);
}
}
La libreria che facilita la comunicazione i2c tra il sensore e la scheda è pi4j, i suoi vari pacchetti I2CBus, I2CDevice e I2CFactory aiutano a stabilire la connessione.
import com.pi4j.io.i2c. I2CBus;
import com.pi4j.io.i2c. I2CDevice;
import com.pi4j.io.i2c. I2CFactory;
import java.io. IOException;
Le funzioni write() e read() vengono utilizzate per scrivere alcuni comandi particolari sul sensore per farlo funzionare in una modalità particolare e leggere rispettivamente l'output del sensore.
L'uscita del sensore è mostrata anche 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 AD7416ARZ e Raspberry Pi: 4 passaggi
Misurazione della temperatura utilizzando AD7416ARZ e Raspberry Pi: AD7416ARZ è un sensore di temperatura a 10 bit con quattro convertitori da analogico a digitale a canale singolo e un sensore di temperatura integrato incorporato. Il sensore di temperatura sulle parti è accessibile tramite canali multiplexer. Questa temperatura ad alta precisione
Misurazione della temperatura utilizzando MCP9803 e Arduino Nano: 4 passaggi
Misurazione della temperatura utilizzando MCP9803 e Arduino Nano: 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 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 STS21 e Raspberry Pi: 4 passaggi
Misurazione della temperatura utilizzando STS21 e Raspberry Pi: 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 dell'umidità e della temperatura utilizzando HTS221 e Raspberry Pi: 4 passaggi
Misurazione di umidità e temperatura utilizzando HTS221 e Raspberry Pi: HTS221 è un sensore digitale capacitivo ultra compatto per umidità relativa e temperatura. Include un elemento di rilevamento e un circuito integrato specifico per l'applicazione del segnale misto (ASIC) per fornire le informazioni di misurazione tramite seriale digitale