Pada bagian ini akan dibahas contoh proyek pembacaan suhu dengan menggunakan sensor DS18B20 yang mencakup antarmuka antara Arduino dengan sensor DS18B20, langkah pemrograman dan penjelasan dari program yang telah dibuat. Rangkaian dari contoh proyek ini ditunjukkan pada gambar 1.1.
Gambar 1.1. Arduino dan Sensor DS18B20 |
Hardware yang dibutuhkan :
1. Arduino UNO
2. Sensor DS18B20
3. Resistor 4K7
4. Kabel jumper
Keterangan Rangkaian dan Pemrograman :
1. Hubungkan pin VDD sensor DS18B20 dengan pin VCC 5V Arduino UNO.
2. Hubungkan pin GND sensor DS18B20 dengan pin GND Arduino UNO
3. Hubungkan pin DQ (data) ke pin digital 2 Arduino UNO
4. Hubungkan satu kaki resistor 4K7 dengan pin VDD dari sensor DS18B20
5. Hubungkan satu kaki resistor 4K7 dengan pin DQ (data) dari sensor DS18B20
6. Setelah selesai membuat rangkaian, langkah selanjutnya adalah membuat sketch program pada software Arduino IDE. Sketch untuk membuat rangkaian sensor DB18B20 ditunjukkan oleh contoh program Prog1.1.
7. Compile sketch yang telah dibuat.
8. Hubungkan Arduino UNO dengan komputer menggunakan kabel USB dan upload ke Arduino UNO yang digunakan.
9. Buka serial monitor pada Arduino IDE sehingga suhu yang dibaca dari sensor DS18B20 dapat terlihat.
Contoh Program : Prog1.1. Sensor DS18B20
Penjelasan :
1. Pada bagian awal program disertakan dua library yang dibutuhkan yaitu OneWire.h dan DallasTemperature.h.
2. Pada baris selanjutnya terdapat deklarasi #define ONE_WIRE_BUS 2 yang berarti pin digital 2 Arduino akan digunakan sebagai pin data 1-wire.
3. Selanjutnya dilakukan deklarasi pembuatan instance untuk komunikasi 1-wire dengan perintah OneWire oneWire (ONE_WIRE_BUS).
4. Pada baris selanjutnya dilakukan deklarasi pembuatan instance dengan nama sensorDS18B20 dengan perintah DallasTemperature sensorDS18B20 (&oneWire).
5. Di dalam void setup terdapat pengaturan baud rate untuk komunikasi serial sebesar 9600bps dan perintah untuk memulai library dengan perintah sensorDS18B20.begin ( ).
6. Proses pembacaan suhu ada di dalam void loop.
7. Permintaan pembacaan suhu dilakukan dengan perintah sensorDS18B20.requestTemperature( ).
8. Pada contoh program ini hasil pembacaan menggunakan satuan derajat celcius, sehingga perintah yang digunakan untuk mendapatkan hasil pembacaan menggunakan perintah sensorDS18B20.getTempCByIndex(0).
Hasil pembacaan suhu dengan menggunakan sensor DS18B20 yang ditampilkan pada serial monitor ditunjukkan pada gambar 1.2. berikut ini.
0 Komentar