Cara Merangkai Sensor Suhu DS18B20 ke mikrokontroler Arduino

Untuk menghubungkan sensor DS18B20 Waterproof Temperature Sensor ke Arduino, Anda memerlukan beberapa kabel jumper dan resistor 4.7k ohm (pull-up resistor). Berikut adalah langkah-langkahnya:

Rangkaian DS18B20 ke Arduino

Langkah 1: Siapkan Sensor DS18B20 dan Arduino

Pastikan Anda memiliki sensor DS18B20 dan Arduino Uno (atau model Arduino lainnya).

Langkah 2: Koneksi Sensor ke Arduino

Sensor DS18B20 memiliki tiga kaki (GND, Data, VCC). Anda harus menghubungkannya ke Arduino sebagai berikut:

  • Kaki GND sensor (biasanya berwarna hitam atau coklat) terhubung ke pin GND pada Arduino.
  • Kaki Data sensor (biasanya berwarna kuning atau putih) harus dihubungkan ke pin digital pada Arduino (misalnya, pin 2).
  • Kaki VCC sensor (biasanya berwarna merah) harus dihubungkan ke pin 5V pada Arduino.

Selain itu, Anda juga perlu menambahkan resistor pull-up 4.7k ohm antara pin Data dan pin VCC pada sensor. Ini membantu dalam komunikasi satu kawat (OneWire) dengan sensor.

Langkah 3: Hubungkan Arduino ke Komputer

Sambungkan Arduino ke komputer Anda menggunakan kabel USB.

Langkah 4: Unduh Library yang Diperlukan

Sebelum menggunakan kode yang disediakan sebelumnya, pastikan Anda telah mengunduh dan menginstal library OneWire dan DallasTemperature di Arduino IDE Anda.

Langkah 5: Upload Kode ke Arduino

Buat kode program dan upload ke board arduino melalui Arduino IDE  sebagai dasar untuk membaca suhu dari sensor DS18B20. 

Langkah 6: Buka Serial Monitor

Setelah mengunggah kode ke Arduino, buka Serial Monitor di Arduino IDE. Anda akan melihat pembacaan suhu dari sensor DS18B20 muncul di sana setiap detik.

Setelah Anda mengikuti langkah-langkah di atas, sensor DS18B20 Anda seharusnya berhasil terhubung ke Arduino dan memberikan pembacaan suhu yang akurat. Pastikan untuk memeriksa kembali koneksi fisik dan pastikan Anda telah menggunakan kode dengan benar.

Untuk diingat bahwa; pin data sensor harus dihubungkan ke pin digital arduino. Sensor DS18B20 menggunakan protokol komunikasi OneWire untuk berinteraksi dengan mikrokontroler. Protokol OneWire memungkinkan sensor untuk berkomunikasi dengan mikrokontroler menggunakan satu jalur data saja. Oleh karena itu, sensor DS18B20 tidak memerlukan pin analog untuk berkomunikasi, melainkan menggunakan pin digital.

Penggunaan pin digital untuk sensor DS18B20 memudahkan integrasi dengan mikrokontroler karena kebanyakan mikrokontroler memiliki pin digital yang cukup untuk berkomunikasi dengan berbagai sensor dan perangkat lainnya. Hal ini juga memungkinkan sensor DS18B20 untuk berbagi jalur data yang sama dengan sensor lain yang menggunakan protokol OneWire, memungkinkan penggunaan sensor yang lebih efisien dalam suatu sistem.

Dengan menggunakan pin digital, pengguna dapat mengakses data suhu dari sensor DS18B20 dengan mudah menggunakan perangkat lunak dan kode pemrograman yang tersedia untuk membaca data dari pin digital pada mikrokontroler, membuat integrasi dengan berbagai proyek dan aplikasi elektronik menjadi lebih mudah dan efisien.

Jika Anda menempatkan sensor DS18B20 ke pin analog pada mikrokontroler, seperti Arduino Uno, sensor tersebut tidak akan berfungsi seperti yang diharapkan. Ini karena DS18B20 menggunakan protokol komunikasi OneWire yang berbeda dengan protokol yang digunakan oleh pin analog pada mikrokontroler.

Berikut beberapa hal yang akan terjadi:

  1. Tidak Terbaca: Mikrokontroler tidak akan mampu membaca data yang benar dari sensor DS18B20 yang terhubung ke pin analog. Ini karena komunikasi OneWire memerlukan pin digital untuk mengirim dan menerima data secara serial.
  2. Kerusakan Potensial: Sensor DS18B20 dan mikrokontroler dapat mengalami kerusakan jika Anda mencoba untuk memaksa komunikasi menggunakan pin analog. Ini karena tegangan yang diberikan pada pin analog biasanya digunakan untuk membaca tegangan analog dari sensor, bukan untuk komunikasi digital.
  3. Tidak Efisien: Menggunakan pin analog untuk sensor DS18B20 tidak akan efisien karena pin analog biasanya digunakan untuk membaca sinyal analog yang berasal dari sensor fisik seperti sensor suhu analog atau sensor cahaya, bukan sensor digital seperti DS18B20.

Jadi, untuk memastikan sensor DS18B20 berfungsi dengan benar, pastikan untuk menempatkannya pada pin digital yang sesuai dengan protokol komunikasinya, yaitu pin yang mendukung komunikasi serial seperti protokol OneWire. Pada Arduino Uno, pin digital yang umum digunakan untuk sensor DS18B20 adalah pin digital 2.

Mengapa membutuhkan pull up resistor 4.7 K Ohm ?

Resistor pull-up 4.7k ohm diperlukan dalam koneksi sensor DS18B20 ke Arduino karena sensor ini menggunakan protokol komunikasi OneWire. Resistor pull-up berfungsi untuk menarik tingkat tegangan pada jalur data (Data Line) ke tegangan tinggi (VCC) ketika tidak ada transmisi data yang sedang terjadi. Tanpa resistor pull-up, jalur data akan rentan terhadap gangguan dan mungkin menghasilkan pembacaan suhu yang tidak stabil atau bahkan tidak akurat.

Ketika resistor pull-up tidak digunakan, jalur data sensor DS18B20 akan "mengapung" saat tidak ada transmisi data, yang dapat menyebabkan ambiguitas dalam pembacaan data atau kesalahan komunikasi. Ini bisa terjadi karena jalur data tidak memiliki referensi yang jelas, sehingga dapat terpengaruh oleh gangguan elektromagnetik atau sinyal noise lainnya.

Dengan menambahkan resistor pull-up 4.7k ohm antara jalur data (Data Line) dan tegangan suplai (VCC), tegangan pada jalur data akan dijaga pada level logika tinggi (HIGH) ketika tidak ada transmisi data. Hal ini memastikan bahwa sensor DS18B20 dapat berkomunikasi dengan stabil dan menghasilkan pembacaan suhu yang akurat.

Jadi, resistor pull-up 4.7k ohm sangat penting dalam rangkaian koneksi sensor DS18B20 ke Arduino untuk memastikan kestabilan dan akurasi komunikasi antara sensor dan mikrokontroler.

Keunggulan dan Fitur DS18B20

Koding untuk mengetahui alamat sensor DS18B20 bila sensor digunakan lebih dari satu.

Spesifikasi DS18B20 :

Berikut adalah spesifikasi utama dari sensor suhu digital DS18B20:

  1. Rentang Suhu: -55°C hingga +125°C (-67°F hingga +257°F)
  2. Resolusi: Hingga 12 bit, yang menghasilkan resolusi suhu sebesar 0.0625°C
  3. Akurasi: Biasanya ±0.5°C pada rentang suhu operasionalnya.
  4. Antarmuka Komunikasi: Menggunakan protokol komunikasi OneWire, yang memungkinkan sensor berkomunikasi dengan mikrokontroler melalui satu jalur data.
  5. Daya Operasional: Sensor DS18B20 dapat dioperasikan dengan tegangan antara 3.0V hingga 5.5V DC.
  6. Konsumsi Daya Rendah: Sensor ini diketahui memiliki konsumsi daya yang rendah, membuatnya cocok untuk aplikasi baterai.
  7. Paket: Sensor DS18B20 hadir dalam berbagai paket, termasuk paket TO-92 yang umum digunakan.
  8. Perlindungan Terhadap Air: Sebagian besar varian DS18B20 dilengkapi dengan perlindungan tahan air, membuatnya cocok untuk aplikasi di lingkungan yang keras atau outdoor.
  9. Identifikasi Otomatis: Setiap sensor DS18B20 memiliki alamat unik 64-bit yang digunakan untuk mengidentifikasi sensor secara individu dalam jaringan OneWire.
  10. Kompatibilitas: Sensor DS18B20 kompatibel dengan berbagai mikrokontroler dan platform pengembangan lainnya, termasuk Arduino, Raspberry Pi, dan platform mikrokontroler lainnya.

Sensor DS18B20 adalah pilihan populer untuk berbagai aplikasi yang memerlukan pemantauan suhu yang akurat dan andal, termasuk pengendalian suhu, pemantauan suhu lingkungan, pengukuran suhu pada perangkat elektronik, dan banyak lagi.


Tidak ada komentar:

Posting Komentar

Related Posts Plugin for WordPress, Blogger...