Daftar Isi:
2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-13 06:57
MCP9808 adalah modul mini sensor suhu digital ±0,5°C I2C yang sangat akurat. Mereka diwujudkan dengan register yang dapat diprogram pengguna yang memfasilitasi aplikasi penginderaan suhu. Sensor suhu akurasi tinggi MCP9808 telah menjadi standar industri dalam hal faktor bentuk dan kecerdasan, menyediakan sinyal sensor yang dikalibrasi dan dilinierkan dalam format digital I2C. Berikut adalah demonstrasi dengan kode python menggunakan Raspberry Pi.
Langkah 1: Yang Anda Butuhkan.
1. Raspberry Pi
2. MCP9808
3. Kabel I²C
4. Perisai I²C untuk Raspberry Pi
5. Kabel Ethernet
Langkah 2: Koneksi
Ambil pelindung I2C untuk raspberry pi dan dorong perlahan ke atas pin gpio dari raspberry pi.
Kemudian sambungkan salah satu ujung kabel I2C ke sensor MCP9808 dan ujung lainnya ke pelindung I2C.
Hubungkan juga kabel Ethernet ke pi atau Anda dapat menggunakan modul WiFi.
Koneksi ditunjukkan pada gambar di atas.
Langkah 3: Kode
Kode python untuk MCP9808 dapat diunduh dari repositori GitHub kami- Dcube Store
Berikut ini tautan untuk hal yang sama:
github.com/DcubeTechVentures/MCP9808
Datasheet MCP9808 dapat ditemukan di sini:
ww1.microchip.com/downloads/en/DeviceDoc/25…
Kami telah menggunakan perpustakaan SMBus untuk kode python, langkah-langkah untuk menginstal SMBus pada raspberry pi dijelaskan di sini:
pypi.python.org/pypi/smbus-cffi/0.5.1
Anda juga dapat menyalin kode dari sini, diberikan sebagai berikut:
# Didistribusikan dengan lisensi kehendak bebas.
# Gunakan dengan cara apa pun yang Anda inginkan, untung atau gratis, asalkan sesuai dengan lisensi karya terkaitnya.
#MCP9808
# Kode ini dirancang untuk bekerja dengan Modul Mini MCP9808_I2CS I2C yang tersedia di Dcube Store.
impor smbus
waktu impor
# Dapatkan bus I2C
bus = smbus. SMBus(1)
# alamat MCP9808, 0x18(24)
# Pilih register konfigurasi, 0x01(1)
# 0x0000(00) Mode konversi berkelanjutan, Default penyalaan
konfigurasi = [0x00, 0x00]
bus.write_i2c_block_data (0x18, 0x01, konfigurasi)
# alamat MCP9808, 0x18(24)
# Pilih daftar resolusi, 0x08(8)
# 0x03(03) Resolusi = +0,0625 / C
bus.write_byte_data(0x18, 0x08, 0x03)
time.sleep(0.5) # alamat MCP9808, 0x18(24)
# Baca data kembali dari 0x05(5), 2 byte
# Temp MSB, TEMP LSB
data = bus.read_i2c_block_data(0x18, 0x05, 2)
# Ubah data menjadi 13-bit
ctemp = ((data[0] & 0x1F) * 256) + data[1]
jika ctemp > 4095:
ctemp -= 8192
ctemp = ctemp * 0,0625
ftemp = ctemp * 1,8 + 32
# Keluarkan data ke layar
print "Suhu dalam Celcius adalah: %.2f C" %ctemp
print "Suhu dalam Fahrenheit adalah: %.2f F" %ftemp
Langkah 4: Aplikasi..:
Sensor Suhu Digital MCP9808 memiliki beberapa aplikasi tingkat industri yang menggabungkan freezer industri dan lemari es bersama dengan berbagai pengolah makanan. Sensor ini dapat digunakan untuk berbagai komputer pribadi, server serta periferal PC lainnya.