Halo Sahabat Indobot!
Sudah pernah memelihara ayam?
Pasti ketika anak ayam sudah menetas, induk akan berusaha untuk menghangatkan anak ayam di bawah bulu-bulunya ya. Namun itu hanya berlaku untuk ayam dalam jumlah kecil. Sedangkan untuk peternakan besar, anak ayam akan dipisahkan dari induknya. Bahkan ketika mereka masih menjadi telur. Sehingga anak ayam ini harus mendapatkan kehangatan yang cukup agar mereka tetap hidup. Oleh karena itu, kita membutuhkan penghangat ruangan anak ayam.
Penghangat ruang anak ayam merupakan tempat pertama pertumbuhan bibit ayam. Ruang ini diharuskan agar memiliki suhu yang seimbang (tidak berubah-ubah). Terlalu panas atau terlalu dingin sudah membuat anak ayam stress dan akhirnya mati. Sehingga ruang anak ayam ini, baiknya dipasang alat otomatis untuk terus menjaga suhu ruangan. Kita dapat membuatnya dengan sensor DHT11 sebagai pendeteksi suhu, NodeMCU ESP8266 sebagai kontroler, dan untuk menghangatkannya, kita dapat menggunakan lampu yang terhubung dengan 220V.
Nah kita juga perlu mengantisipasi adanya error dari sistem kendali ini, di mana tiba-tiba penghubungnya dengan 220v mati, sehingga meskipun kontrol masih berjalan, sumber kehangatan tetap tidak dijalankan. Hal ini mengakibatkan suhu menjadi dingin dan anak ayam menjadi mati. Ada hal lain juga bisa terjadi seperti kabel yang terputus, kerusakan device atau lainnya.
Dalam mengatasi hal ini, kita bisa menggunakan pemantauan dengan sistem IoT, agar kita dapat terus mengupdate kondisi suhu ruangan anak ayam. Kita dapat menggunakan NodeMCU ESP8266 untuk mengirimkan pesan melaluii telegram kita terkait kondisi suhu ruang anak ayam.
Bagaimana cara membuatnya? simak cara berikut ini.
Memantau Suhu Penghangat Ruangan Anak Ayam dengan IoT Telegram
Alat dan Bahan
Alat dan bahan untuk project ini adalah sebagai berikut.
- Software Arduino IDE
- NodeMCU ESP8266 1
- Sensor DHT11 1
- LCD 16×2 1
- I2C 1
- Relay 2 Channel 1
- Lampu LED 220V + staker 2
- Project Board 1
- Kabel Jumper Secukupnya
Belajar Elektronika, Arduino, dan IoT step by step dengan bantuan tangga belajar? Daftar sekarang dan dapatkan PROMO
Rangkaian
Susun device di atas menjadi rangkaian seperti berikut. Pastikan semua terhubung dengan baik.
Program
Tahap selanjutnya adalah penulisan program pada Arduino IDE. Buatlah program seperti berikut. Perhatikan keterangan (comment) untuk memahami program dengan baik.
Jangan lupa untuk memasukkan terlebih dahulu library CTBot, Arduino Json, Adafruit Sensor, dan DHT.
/* Program Penghangat Ruangan Anak Ayam dibuat oleh Indobot */ #include "DHT.h" //Library DHT #include <LiquidCrystal_I2C.h> //Library LCD I2C #include "CTBot.h" //Pendeklarasian Library CTBot myBot; #define DHTPIN D3 //DHT pada pin D3 #define DHTTYPE DHT11 //Type DHT 11 DHT dht(DHTPIN, DHTTYPE); //Masukkan pin dan type DHT11 LiquidCrystal_I2C lcd(0x27, 16, 2); //Alamat I2C #define lampu1 D4 //Lampu1 pada pin D4 #define lampu2 D5 //Lampu2 pada pin D5 TBMessage msg; String ssid = "*********"; //nama ssid wifi kalian String pass = "*********"; //password wifi kalian String token = "XXXX"; //token bot baru kalian const int id = XXXX; //id telegram kalian void setup() { dht.begin(); //Mulai DHT lcd.init(); //Mulai LCD lcd.backlight(); //Nyalakan backlight pinMode(lampu1, OUTPUT); //Setting I/O pinMode(lampu2, OUTPUT); digitalWrite(lampu1, HIGH); digitalWrite(lampu2, HIGH); Serial.begin(9600); myBot.wifiConnect(ssid, pass); myBot.setTelegramToken(token); if (myBot.testConnection()) { Serial.println("Koneksi Bagus"); } else { Serial.println("Koneksi Jelek"); } myBot.sendMessage(msg.sender.id, (String)"Informasi Kondisi Suhu Ruangan anak Ayam" + "kirimkan pesan >>> suhu" ); } void loop() { float t = dht.readTemperature(); //Baca suhu lcd.setCursor(0,0); //Koordinat text lcd.print("Suhu: "); lcd.print(t); //Tampilkan suhu lcd.print("*C"); Serial.print("Suhu: "); Serial.print(t); //Tampilkan suhu Serial.print("*C"); if(t > 38){ //Jika suhu > 38*C digitalWrite(lampu1, HIGH); digitalWrite(lampu2, HIGH); } else if(t > 35){ digitalWrite(lampu1, LOW); digitalWrite(lampu2, HIGH); } else{ digitalWrite(lampu1, LOW); digitalWrite(lampu2, LOW); } delay(1000); //Jeda pembacaan 1000ms lcd.clear(); //Hapus tampilan LCD if (myBot.getNewMessage(msg)) { if (msg.text.equalsIgnoreCase("suhu")) { //Perintah dari telegram ke perangkat myBot.sendMessage(msg.sender.id, (String)"Suhu Saat ini: " + t + " *C"); //Balasan dari perangkat ke Bot Telegram } else { myBot.sendMessage(msg.sender.id, (String)"Informasi Kondisi Suhu Ruangan anak Ayam" + "kirimkan pesan >>> suhu" ); } } |
baca juga: Monitoring Suhu dan Kelembaban Ruangan Budidaya Jamur Tiram dengan Sensor DHT22
Token Bot dan ID telegram
Untuk mendapatkan Token Bot dan ID telegram, kita dapat melakukan cara berikut.
- cari BotFather
- Buka BotFather > klik Start > ketik /newbot > beri nama bot > beri username bot > Simpan token yang diberikan untuk dimasukkan program nanti. Untuk masuk ke bot yang baru dibuat, bisa klik link yang diberikan pada bagian setelah “You will find it at …”, dan jika sudah masuk bisa ketik /start
Gambar pembuatan bot baru
Gambar token yang didapat
- Setelah itu diperlukan id telegram kita dengan cara : cari IDBot > klik Start > ketik /getid
- Maka token dan ID Telegram sudah kita dapatkan.
Masukkan nama hotspot, password hotspot, token, dan ID yang anda gunakan di
ssid = “**********”;
pass = “**********”;
token = “XXXXX”;
const int id = XXXXXX;
Upload program di atas, kemudian kita dapat mulai mencobanya dengan diawali ke telegram bot milik kita dan klik start.
baca juga: Penghangat Ruangan Anak Ayam
Hasil dari project ini adalah ketika kita ingin mengetahui suhu dari ruang ayam saat ini, kita dapat mengirimkan pesan “suhu” ke telegram bot kita, nanti akan dikirimkan nilai suhu di ruang anak ayam. Dengan begitu, ketika kita khawatir ada kerusakan sistem di ruang ini, kita dapat kirim pesan melalui telegram untuk memastikannya.
Bagaimana? Tertarik untuk membuatnya? Yuk bisa dicoba.
Semangat!
Mau belajar elektronika dasar? Arduino? atau Internet of Things? Ikuti kursus online Indobot Academy!