Isi kandungan:

Pengukuran Suhu Menggunakan MCP9803 dan Raspberry Pi: 4 Langkah
Pengukuran Suhu Menggunakan MCP9803 dan Raspberry Pi: 4 Langkah

Video: Pengukuran Suhu Menggunakan MCP9803 dan Raspberry Pi: 4 Langkah

Video: Pengukuran Suhu Menggunakan MCP9803 dan Raspberry Pi: 4 Langkah
Video: Praktikum pengukuran suhu 2024, Julai
Anonim
Image
Image

MCP9803 adalah sensor suhu ketepatan tinggi 2 wayar. Mereka dilengkapi dengan daftar yang dapat diprogram pengguna yang memudahkan aplikasi penginderaan suhu. Sensor ini sesuai untuk sistem pemantauan suhu multi-zon yang sangat canggih.

Dalam tutorial ini ditunjukkan antara muka modul sensor MCP9803 dengan raspberry pi dan pengaturcaraannya menggunakan bahasa Java juga telah digambarkan. Untuk membaca nilai suhu, kami telah menggunakan raspberry pi dengan penyesuai I2C. Penyesuai I2C ini menjadikan sambungan ke modul sensor mudah dan lebih dipercayai.

Langkah 1: Perkakasan Diperlukan:

Perkakasan Diperlukan
Perkakasan Diperlukan
Perkakasan Diperlukan
Perkakasan Diperlukan
Perkakasan Diperlukan
Perkakasan Diperlukan

Bahan yang kami perlukan untuk mencapai tujuan kami merangkumi komponen perkakasan berikut:

1. MCP9803

2. Raspberry pi

3. Kabel I2C

4. I2C Shield untuk raspberry pi

5. Kabel Ethernet

Langkah 2: Penyambungan Perkakasan:

Penyambungan Perkakasan
Penyambungan Perkakasan
Penyambungan Perkakasan
Penyambungan Perkakasan

Bahagian penyambungan perkakasan pada dasarnya menerangkan sambungan pendawaian yang diperlukan antara sensor dan raspberry pi. Memastikan sambungan yang betul adalah keperluan asas semasa mengerjakan sistem apa pun untuk output yang diinginkan. Jadi, sambungan yang diperlukan adalah seperti berikut:

MCP9803 akan berfungsi menggunakan I2C. Berikut adalah contoh rajah pendawaian, yang menunjukkan cara memasang setiap antara muka sensor.

Di luar kotak, papan dikonfigurasikan untuk antara muka I2C, oleh itu kami mengesyorkan menggunakan penyambungan ini jika anda tidak agnostik.

Yang anda perlukan hanyalah empat wayar! Hanya diperlukan empat sambungan pin Vcc, Gnd, SCL dan SDA dan ini disambungkan dengan bantuan kabel I2C.

Sambungan ini ditunjukkan dalam gambar di atas.

Langkah 3: Kod untuk Pengukuran Suhu:

Kod untuk Pengukuran Suhu
Kod untuk Pengukuran Suhu

Kelebihan menggunakan raspberry pi adalah, yang memberi anda fleksibiliti bahasa pengaturcaraan di mana anda ingin memprogram papan untuk menghubungkan antara sensor dengannya. Dengan memanfaatkan kelebihan papan ini, kami menunjukkan di sini bahawa ia memprogram di Jawa. Kod java untuk MCP9803 boleh dimuat turun dari komuniti Github kami iaitu Dcube Store.

Serta untuk kemudahan pengguna, kami menerangkan kodnya di sini juga:

Sebagai langkah pertama pengekodan, anda perlu memuat turun pustaka pi4j sekiranya terdapat java kerana perpustakaan ini menyokong fungsi yang digunakan dalam kod. Oleh itu, untuk memuat turun perpustakaan anda boleh melayari pautan berikut:

pi4j.com/install.html

Anda boleh menyalin kod java yang berfungsi untuk sensor ini dari sini juga:

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice;

import com.pi4j.io.i2c. I2CFactory;

import java.io. IOException; kelas awam MCP9803

{

utama kekosongan statik awam (String args ) melontarkan Pengecualian

{

// Buat bas I2C

Bas I2CBus = I2CFactory.getInstance (I2CBus. BUS_1);

// Dapatkan peranti I2C, alamat MCP9803 I2C adalah 0x48 (72)

Peranti I2CDevice = Bus.getDevice (0x48);

// Pilih daftar konfigurasi

// Mod penukaran berterusan, Power-up, mod pembanding, resolusi 12-bit

device.write (0x01, (byte) 0x60);

Thread.sleep (500);

// Baca 2 bait data dari alamat 0x00 (0)

// temp msb, temp lsb

bait data = bait baru [2];

device.read (0x00, data, 0, 2);

// Tukarkan data menjadi 12-bit

int temp = ((data [0] & 0xFF) * 256 + (data [1] & 0xF0)) / 16;

jika (temp> 2047)

{

temp - = 4096;

}

double cTemp = temp * 0.0625;

double fTemp = cTemp * 1.8 + 32;

// Keluarkan data ke skrin

System.out.printf ("Suhu dalam Celsius ialah:%.2f C% n", cTemp);

System.out.printf ("Suhu dalam Fahrenheit adalah:%.2f F% n", fTemp);

}

}

Perpustakaan yang memudahkan komunikasi i2c antara sensor dan papan adalah pi4j, pelbagai paket I2CBus, I2CDevice dan I2CFactory membantu mewujudkan sambungan.

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice;

import com.pi4j.io.i2c. I2CFactory;

import java.io. IOException;

fungsi tulis () dan baca () digunakan untuk menulis beberapa perintah tertentu kepada sensor untuk membuatnya berfungsi dalam mod tertentu dan masing-masing membaca output sensor.

Keluaran sensor juga ditunjukkan dalam gambar di atas.

Langkah 4: Aplikasi:

Permohonan
Permohonan

MCP9803 dapat digunakan dalam arena perangkat yang luas yang merangkumi komputer peribadi dan periferal, pemacu cakera keras, pelbagai sistem hiburan, sistem pejabat dan sistem komunikasi data. Sensor ini dapat digabungkan dalam pelbagai sistem yang canggih.

Disyorkan: