## Perancangan dan Implementasi Sistem Pemantauan Suhu dan Ketinggian Air pada Akuarium Ikan Hias berbasis IoT
Piter Wijaya, Theophilus Wellem *
Fakultas Teknologi Informasi, Program Studi Teknik Informatika, Universitas Kristen Satya Wacana, Salatiga, Indonesia Email: 1 672018109@student.uksw.edu, 2,* theophilus.wellem@uksw.edu Email Penulis Korespondensi: theophilus.wellem@uksw.edu Submitted: 24/07/2022 ; Accepted: 30/09/2022 ; Published: 30/09/2022
Abstrak –Sistem  pemantauan  dan  kontrol  terhadap  lingkungan  dan  berbagai  peralatan  elektronik  seperti  sensor,  aktuator, televisi, lampu, dan kamera pengawas merupakan salah satu aplikasi penting dari Internet - of - Things (IoT).  Pemanfaatan IoT juga telah melahirkan konsep smart home , yang diwujudkan dalam bentuk home automation , di mana berbagai peralatan di rumah dilengkapi dengan mikrokontroler dan modul WiFi, sehingga dapat terhubung ke Internet dan berinteraksi satu sama lain. Salah satu peralatan di rumah yang dapat dipantau dan dikontrol menggunakan teknologi IoT adalah akuarium ikan hias yang umum dimiliki oleh pembudidaya ikan hias maupun orang yang memiliki hobi memelihara ikan hias. Pemeliharaan ikan hias membutuhkan perhatian khusus terhadap parameter suhu dan kualitas air agar ikan yang dipelihara dapat tumbuh dengan baik. Penelitian ini bertujuan untuk merancang dan mengimplementasikan sistem pemantauan suhu dan ketinggian air pada suatu akuarium berbasis IoT. Perangkat keras pada sistem ini diimplementasikan menggunakan NodeMCU ESP8266 sebagai pengendali utama dan modul WiFi  yang menghubungkan sistem ke Internet, sensor suhu DS18B20, sensor ultrasonik HC- SR04, dan relay untuk mengaktifkan dan mematikan peralatan yang dikontrol oleh sistem. Selain itu, digunakan bot Telegram untuk memberikan perintah untuk mengontrol peralatan dan menerima notifikasi dari sistem. Hasil pengujian menunjukkan bahwa sistem yang dirancang dapat bekerja sesuai dengan spesifikasi yang ditetapkan. Jika suhu air pada akuarium berada di luar rentang yang ditetapkan (24°C hingga 32°C), sistem akan mengaktifkan kipas atau heater untuk menyesuaikan suhu air.
Kata Kunci: Sistem pemantauan; Akuarium; NodeMCU ESP8266; IoT; Bot Telegram
Abstract – Environmental  monitoring  and  control  systems  of  various  electronic  equipment  such  as  sensors,  actuators, televisions, lights, and surveillance cameras are one of the essential applications of Internet-of-Things (IoT). The utilization of IoT has also given birth to the smart home concept, which is realized in the form of home automation, where various equipment at home is equipped with a microcontroller and WiFi module such that they can connect to the Internet and interact with each other. One of the equipment at home that can be monitored and controlled using IoT technology is a fish aquarium which is commonly owned by ornamental fish cultivators or people who have a hobby of taking care of ornamental fish. Taking care of ornamental fish requires special attention to the parameters of temperature and water quality such that the fish can grow well. This study aims to design and implement an IoT-based temperature and water level monitoring system in an aquarium. The hardware in this system is implemented using NodeMCU ESP8266 as the central controller and the WiFi module that connects the system to the Internet, temperature sensor DS18B20, ultrasonic sensor HC-SR04, and relays to turn on and off equipment controlled by the system. In addition, Telegram bots are used to give commands to control equipment and receive notifications from the system. The testing results show that the designed system can work according to predetermined specifications. If the water temperature in the aquarium is outside of a specified range (24°C to 32°C), the system will activate a fan or a heater to adjust the water temperature.
Keywords : Monitoring System ; Aquarium ; NodeMCU ESP8266; IoT; Bot Telegram

## 1. PENDAHULUAN
Internet-of-Things (IoT)  saat  ini  telah digunakan secara luas dalam kehidupan sehari-hari  terutama pada sistem atau  aplikasi  untuk  melakukan  pemantauan  kondisi  lingkungan  dan  pengontrolan  peralatan  elektronik  [1]–[4]. Berbagai peralatan, misalnya sensor, aktuator, peralatan rumah ( home appliances ), dan kamera pengawas (CCTV) dilengkapi  dengan  mikrokontroller  dan  koneksi  Internet  sehingga  dapat  berinteraksi  satu  sama  lain  atau berinteraksi  dengan user ,  dan  dikontrol  dari  mana  saja  selama  terdapat  koneksi  Internet.  Berkembangnya pemanfaatan IoT juga memunculkan ide dan konsep baru seperti smart city [5], smart transportation [6], smart healthcare [7], smart home [8] dan sebagainya. Hal ini didukung oleh tersedianya platform seperti Arduino dan Raspberry  Pi  serta  standard  komunikasi  misalnya, Radio  Frequency  Identification (RFID), Near  Field Communication (NFC), Zigbee, Bluetooth, dan NB-IoT. Aplikasi IoT pada home automation untuk mewujudkan ide smart home merupakan penerapan yang paling sering dijumpai, di mana peralatan rumah seperti televisi, kulkas, lampu, air conditioner (AC), kunci pintar ( smart lock ), dan CCTV dapat dipantau dan dikontrol dari jarak jauh melalui Internet. Salah satu peralatan di rumah yang dapat dipantau dari jarak jauh melalui Internet adalah akuarium ikan hias. Selain merupakan hobi untuk mengisi waktu luang, memelihara ikan hias dalam akuarium dapat menjadi sebuah peluang bisnis yang menjanjikan. Ikan hias seperti ikan arwana ( arowana ), ikan koi, atau ikan bidadari ( angelfish ) mempunyai nilai ekonomis yang tinggi dan  dalam pemeliharaan  ikan tersebut  dibutuhkan perhatian terhadap parameter air yang harus dijaga  agar ikan tersebut  dapat  tumbuh  dengan  baik.  Salah  satu  parameter  yang  harus  dipantau  adalah  suhu  air  pada  akuarium. Selain itu, terdapat juga parameter-parameter lain seperti pH air, tingkat kekeruhan air, atau kandungan zat kimia yang dapat dipantau. Kesalahan dalam pemeliharaan dapat menyebabkan kematian pada ikan dan menimbulkan kerugian secara finansial. Untuk membantu mengatasi masalah ini, beberapa penelitian [9]–[12] mengembangkan
aplikasi berbasis IoT untuk memantau kondisi akuarium dari jarak jauh melalui Internet. Hal ini sangat bermanfaat jika  pemilik  ikan  tersebut  sedang  tidak  berada  di  rumah.  Penelitian  ini  bertujuan  untuk  merancang  dan mengimplementasikan sistem pemantauan suhu dan ketinggian air pada suatu akuarium berbasis IoT. Sistem ini diimplementasikan menggunakan board NodeMCU ESP8266 sebagai pengendali utama ( main controller ), sensor suhu DS18B20 untuk mengukur suhu air, sensor ultrasonik HC-SR04 untuk mengukur ketinggian air, dan empat buah relay untuk  mengaktifkan  dan  mematikan  peralatan  lainnya  yang  dibutuhkan  dalam  pengontrolan  dan pemantauan  akuarium, seperti kipas angin, lampu, pemanas ( heater ), dan pompa  air. Perintah dari user kepada sistem dan notifikasi dari sistem kepada user mengenai kondisi akuarium diimplementasikan menggunakan bot Telegram, sehingga user dapat memanfaatkan aplikasi Telegram untuk memantau kondisi suhu dan ketinggian air pada akuarium, serta menyalakan atau mematikan peralatan.
Pada  perancangan  dan  implementasi  sistem  pemantauan  akuarium  yang  dilakukan  dalam  penelitian  ini terdapat  beberapa  penelitian  terdahulu  yang  menjadi  acuan.  Selain  penelitian  [9]–[12],  penelitian  [13] mengembangkan  sistem  untuk  memantau  dan  mengontrol  suhu  air  pada  akuarium  ikan  Arwana.  Arduino  Uno, NodeMCU ESP8266 WiFi module , sensor DS18B20, dan aplikasi Blynk digunakan pada sistem tersebut. Sistem monitoring dan kontrol suhu dan pH pada akuarium ikan cupang ( betta fish ) dikembangkan pada penelitian [14]. Sistem tersebut menggunakan ESP32, sensor pH, dan sensor DS18B20. Alat yang dikontrol oleh sistem adalah kipas  dan heater .  Penelitian    [15]    mengembangkan  sistem  monitoring  akuarium  ikan  mas  ( goldfish ).  Sistem monitoring tersebut menggunakan board WeMOS D1 sebagai pengendali utama, sensor pH, sensor berat, sensor suhu, dan sensor ultrasonik. Peralatan yang dikontrol adalah kipas, pompa, dan motor untuk membuka/menutup tempat  pakan  ikan.  Selain  sistem  untuk  memantau  kondisi  akuarium  dan  mengontrol  peralatan  pendukungnya, sistem berbasis IoT yang umum dikembangkan untuk budidaya ikan pada akuarium maupun pada kolam adalah sistem pemberi  pakan ikan otomatis [15]–[17].  Pada sistem pemantauan dan kontrol  akuarium yang dilengkapi pemberian pakan umumnya digunakan sebuah motor servo yang membuka dan menutup tempat pakan ikan.
Secara umum, sistem yang dirancang dan diimplementasikan pada penelitian ini mempunyai tujuan utama yang  mirip  dengan  penelitian-penelitian  sebelumnya,  yaitu  untuk  memantau  kondisi  akuarium  dan  melakukan pengontrolan terhadap berbagai peralatan pendukungnya guna memastikan bahwa kondisi pada akuarium tersebut tetap terjaga sesuai dengan kebutuhan ikan yang dipelihara. Kondisi atau parameter yang sering dipantau misalnya, suhu  air,  ketinggian  air,  pH  air,  tingkat  kekeruhan  air,  dan  sebagainya.  Perbedaan  pada  berbagai  penelitian terdahulu  mengenai  sistem pemantauan akuarium umumnya terletak pada jumlah parameter yang dipantau dan peralatan  pendukung  yang  dibutuhkan.  Sistem  yang  dirancang  dan  diimplementasikan  pada  penelitian  ini memantau dua parameter yaitu, suhu air dan ketinggian air, serta mengontrol empat peralatan pendukung: kipas, heater , lampu, dan pompa air.

## 2. METODOLOGI PENELITIAN

## 2.1 Tahapan Penelitian
Tahapan  dalam melaksanakan  penelitian  untuk  merancang  dan  mengimplementasikan  sistem  pemantauan  suhu dan ketinggian air pada akuarium ikan hias berbasis IoT ditunjukkan pada Gambar 1 dan dapat dijelaskan sebagai berikut:
1. Tahap  analisis  kebutuhan  sistem:  Pada  tahap  ini  dilakukan  analisis  terhadap  berbagai  hal  yang  diperlukan dalam  perancangan  dan  implementasi  sistem,  misalnya  kebutuhan  perangkat  keras  dan  perangkat  lunak. Perangkat  lunak  yang  dibutuhkan  misalnya,  perangkat  lunak  untuk  menggambar  diagram  alir  ( flowchart ) sistem, menggambar rangkaian perangkat keras, dan menuliskan kode program. Selanjutnya, untuk perangkat keras  dibutuhkan board mikrokontroller  NodeMCU  ESP8266  dan  beberapa  sensor  serta  perangkat  keras pendukung lainnya. Pada tahap ini juga dilakukan studi pustaka atau review dari beberapa penelitian terdahulu yang berkaitan dengan sistem pemantauan suhu maupun parameter-parameter lain pada akuarium ikan hias.
2. Tahap perancangan sistem: Pada tahap ini dilakukan perancangan perangkat keras dan perangkat lunak untuk merealisasikan sistem pemantauan suhu dan ketinggian air pada akuarium berbasis IoT. Perancangan perangkat lunak dilakukan dengan membuat diagram alir yang menunjukkan hal-hal yang harus dilakukan oleh sistem saat  sistem  tersebut  dijalankan.  Diagram  alir  ini  menjadi  dasar  untuk  tahap  implementasi  perangkat  lunak. Perangkat  lunak  untuk  membuat  skema  rangkaian  (CAD software )  digunakan  untuk  menggambarkan hubungan  antara  NodeMCU  dengan  komponen-komponen  perangkat  keras  lainnya  pada  sistem  yang  akan diimplementasikan.
3. Tahap implementasi sistem: Pada tahap ini dilakukan realisasi dari rancangan perangkat keras yang telah dibuat pada tahap perancangan sistem. Komponen-komponen perangkat keras dirangkai dan dihubungkan sehingga menjadi suatu sistem yang dapat diuji fungsionalitasnya pada tahap berikutnya sesuai dengan spesifikasi yang telah  ditetapkan.  Selain  itu,  pada  tahap  ini  juga  dilakukan  implementasi  kode  program  untuk  NodeMCU ESP8266 (menggunakan software Arduino IDE).
4. Tahap pengujian sistem: Pada tahap ini dilakukan pengujian sistem dengan menjalankan sistem tersebut dan melakukan pemeriksaan apakah sistem yang telah diimplementasikan berjalan sesuai dengan spesifikasi dan layak untuk  digunakan.  Jika belum berjalan sesuai  dengan spesifikasi, dilakukan perbaikan  yang perlu  agar
sistem dapat berjalan sesuai dengan tujuannya. Tahap pengujian dilakukan dengan menguji fungsi dari sensor- sensor yang digunakan terlebih dahulu dan kemudian diikuti oleh pengujian sistem secara keseluruhan.
5. Tahap  penyimpulan  hasil  penelitian  dan  penulisan  laporan  penelitian:  Pada  tahap  ini  dilakukan  penulisan laporan penelitian berdasarkan hasil yang diperoleh dari pelaksanaan penelitian.

## Gambar 1. Tahapan Penelitian
Diagram  blok  dari  sistem  yang  dirancang  dan  diimplementasikan  pada  penelitian  ini  ditunjukkan  pada Gambar  2.  Sistem  ini  menggunakan  NodeMCU  ESP8266  sebagai  pengendali  utamanya  beserta  beberapa komponen perangkat keras lainnya yang dijelaskan fungsinya pada subbagian 2.2.

## Gambar 2. Diagram blok Sistem

## 2.2 Kebutuhan Perangkat Keras dan Perangkat Lunak
Pada  penelitian  ini  dibutuhkan  beberapa  komponen  untuk  mengimplementasikan  perangkat  keras  dari  sistem pemantauan suhu dan ketinggian air pada akuarium, yaitu NodeMCU ESP8266,  sensor suhu DS18B20, sensor ultrasonik HS-SR04, LCD ( Liquid Crystal Display ) I2C, dan relay . Deskripsi secara singkat dari perangkat keras yang digunakan adalah sebagai berikut:
1. NodeMCU ESP8266
NodeMCU merupakan suatu board mikrokontroler yang digunakan untuk pengembangan aplikasi IoT. Board ini  menggunakan  ESP8266  SoC  ( System-on-Chip )  yang  terdiri  dari  mikrokontroller,  modul  WiFi,  dan komponen  pendukung  lainnya  (misalnya analog-to-digital  converter (ADC))  secara  terintegrasi. Board NodeMCU ESP8266 menggunakan prosesor 32-bit dengan clock 80 MHz, serta mempunyai 11 digital I/O pin, satu analog I/O pin, flash memory dengan kapasitas sebesar 4 MB, dan SRAM dengan kapasitas sebesar 4 KB. Jumlah  total  pin  GPIO  adalah  sebanyak  17  pin.  Selain  itu, board NodeMCU  ESP8266  juga  mendukung komunikasi serial UART, SPI, dan I2C. Pada sistem yang dirancang dalam penelitian ini, NodeMCU ESP8266 berfungsi sebagai pengendali utama untuk memberikan perintah kepada komponen-komponen perangkat keras lainnya dan melakukan pemrosesan data.
2. Sensor DS18B20
Sensor ini merupakan sensor suhu yang dapat mengukur suhu dengan rentang dari -55°C hingga 125°C. Selain itu,  DS18B20  memiliki  ADC  internal  dan  menyediakan  pengukuran  temperatur  dengan  nilai  resolusi  yang dapat  dipilih  dari    9-bit  hingga  12-bit  sehingga  mempunyai  akurasi  yang  cukup  tinggi,  yaitu  ±0.5°C  pada rentang suhu antara -10°C sampai +85°C. Sensor DS18B20 mempunyai tiga pin yaitu GND, VDD, dan DQ (data),  serta  menggunakan  protokol  komunikasi  serial  1-Wire  untuk  berkomunikasi  dengan  prosesor  atau mikrokontroler. Pada sistem yang dirancang dalam penelitian ini, DS18B20 digunakan untuk mengukur suhu air pada akuarium.
3. Sensor HC-SR04
Sensor ini merupakan sensor ultrasonik yang menggunakan sonar untuk mengukur jarak ( distance ). Pada HC- SR04  terdapat  dua  transduser  ultrasonik  yang  masing-masing  bekerja  sebagai  pengirim  ( transmitter )  dan penerima  ( receiver ).  Cara  kerja  dari  sensor  ini  didasarkan  pada  prinsip  pemantulan  gelombang  suara
berfrekuensi tinggi (ultrasonik) sehingga dapat digunakan untuk mengukur eksistensi (jarak) suatu benda dari posisi  sensor. Gelombang ultrasonik  merupakan suatu  gelombang bunyi  yang memiliki frekuensi  di  atas  20 kHz.  Sensor  HS-SR04  memiliki  empat  pin  yaitu  Vcc  ( supply ),  Trig  ( transmit ),  Echo  ( receive ),  dan  Gnd ( ground ). Transmitter ultrasonik  akan  mengeluarkan  gelombang  suara  berfrekuensi  40  kHz  dan  jika gelombang suara ini mengenai suatu obyek, gelombang tersebut akan dipantulkan dan diterima oleh receiver ultrasonik.  Waktu  yang  dibutuhkan  untuk  menerima  pantulan  dari  gelombang  suara  yang  ditransmisikan digunakan sebagai dasar pengukuran jarak dari sensor terhadap suatu benda. Pada sistem yang dirancang dalam penelitian ini, HS-SR04 digunakan untuk mengukur ketinggian air pada akuarium.
4. LCD I2C
I2C  (Inter-Integrated  Circuit)  merupakan bus komunikasi  serial  yang  umumnya  digunakan  untuk menghubungkan komponen-komponen dan chip berkecepatan rendah ke prosesor. Modul I2C digunakan pada LCD untuk mengurangi jumlah pin interkoneksi pada LCD sehingga memudahkan koneksi antara LCD dan board mikrokontroller. Modul I2C memiliki empat pin (VCC, GND, SDA, SCL) yang dihubungkan ke board NodeMCU ESP8266 untuk mengontrol 16 x 2 karakter LCD.  Pin yang digunakan untuk komunikasi I2C pada NodeMCU ESP8266 adalah pin SDA dan pin SCL. Pada sistem yang dirancang dalam penelitian ini, LCD I2C berfungsi untuk menampilkan hasil pengukuran dari suhu dan ketinggian air pada akuarium.
5. Relay
Relay merupakan  saklar  dioperasikan  secara  elektrik  dan  menggunakan  prinsip  elektromagnetik  dalam operasinya.  Sebuah relay terdiri  dari  kumparan  kawat  penghantar  ( coil )  yang  dililitkan  pada  inti  besi  ( iron core ), pegas ( spring ), lengan penggerak ( armature ), dan saklar ( switch ). Saat kumparan dialiri arus listrik, gaya elektromagnetik yang dihasilkan akan menarik lengan penggerak untuk memindahkan saklar. Pada sistem yang dirancang dalam penelitian ini, relay digunakan sebagai saklar untuk menyalakan dan mematikan pompa air, lampu, pemanas ( heater ), serta kipas angin DC 12V.
Fungsi  dari  peralatan-peralatan  lain  yang  digunakan  seperti  kipas  angin, heater ,  lampu,  dan  pompa  air adalah sebagai berikut: kipas angin digunakan untuk menurunkan suhu air jika air terlalu panas (melebihi 32°C), sedangkan  heater  digunakan  untuk  menaikkan  suhu  air  jika  air  terlalu  dingin  (kurang  dari  24°C).  Pompa  air digunakan untuk menjaga sirkulasi air pada akuarium melalui suatu penyaring ( filter ) agar air dalam akurium tetap bersih. Selain itu, pompa air juga berguna untuk menjaga suhu air agar merata dan kadar oksigen dalam air. Lampu digunakan untuk  memberikan pencahayaan pada akuarium untuk tujuan dekoratif. Tabel  1 menunjukkan  daftar perangkat keras yang digunakan untuk mengimplementasikan sistem pada penelitian ini.
Tabel 1. Peralatan yang digunakan No  Nama Jumlah 1 2 3 4 5 6 7
8 9 10 11 12 NodeMCU ESP8266 Breadboard Box casing LCD I2C 16 x 2 Sensor HC-SR04 Sensor DS18B20 Relay 4 channel
Kabel jumper
Kipas angin DC 12V Heater akuarium Lampu akuarium Mesin pompa akuarium 1 1 1 1 1 1 1 25 1 1 1
1
Perangkat lunak yang dibutuhkan adalah Arduino IDE untuk menuliskan kode program dan Fritzing untuk menggambar skema rangkaian perangkat keras. Selain itu, digunakan juga Telegram dan bot Telegram. Deskripsi secara singkat dari perangkat lunak yang digunakan adalah sebagai berikut:
1. Arduino IDE
Arduino IDE merupakan perangkat yang digunakan sebagai editor dan compiler kode program serta uploader untuk pengembangan program pada board Arduino, termasuk NodeMCU ESP8266.
2. Fritzing
Fritizing  merupakan  perangkat  lunak open-source yang  digunakan  untuk  merancang  skematik  rangkaian elektronik,  termasuk  mendesain printed  circuit  board (PCB).  Skematik  rangkaian  perangkat  keras  pada penelitian ini dirancang menggunakan perangkat lunak ini.
3. Telegram dan Bot Telegram
Telegram  merupakan  aplikasi instant  messaging berbasis cloud .  Telegram  memungkinkan  pengembang perangkat lunak untuk membuat bot. Bot di sini sebenarnya merupakan aplikasi dari pihak ketiga ( third-party application )  yang  berjalan  dalam  aplikasi  Telegram.  Telegram  menyediakan  Telegram  Bot Application Programming Interface (API) yang memungkinkan pengguna untuk berkomunikasi dengan bot dengan cara mengirimkan  pesan  kepada  bot  tersebut.  Kontrol  terhadap  bot  dilakukan  menggunakan  HTTPS request ke
Telegram Bot API. Pada sistem yang dirancang dalam penelitian ini, bot Telegram digunakan sebagai aplikasi untuk memantau dan mengontrol sistem (mengirim perintah ke sistem dan menerima notifikasi dari sistem).

## 3. HASIL DAN PEMBAHASAN

## 3.1 Perancangan dan Implementasi Sistem
Skematik  rangkaian perangkat  keras yang dihasilkan pada tahap perancangan masing-masing  ditunjukkan pada Gambar 3. Komponen perangkat keras yang dihubungkan ke NodeMCU ESP8266 adalah LCD I2C 16x2, sensor ultrasonik  HC-SR04,  sensor  suhu  DS18B20,  dan relay 4 channel ,  sedangkan  pompa  air,  lampu,  pemanas,  dan kipas angin masing-masing dihubungkan ke setiap channel pada relay .
Gambar 3. Skematik rangkaian perangkat keras pada sistem
Pada rangkaian di atas, koneksi pin antara sensor HC-SR04, sensor DS18B20, LCD I2C, dan relay dengan board NodeMCU ESP8266 ditunjukkan pada Tabel 2. Untuk koneksi output pada relay, channel 1 sampai channel 4 masing-masing dihubungkan dengan kipas, heater, lampu, dan pompa air.
Tabel 2. Pin yang digunakan untuk koneksi
Komponen  Pin Pin pada NodeMCU HC-SR04 Vcc Trig Echo Gnd 3V3 D3 (GPIO0) D0 (GPIO16) GND DS18B20 GND VDD DQ GND 3V3 D4 (GPIO2) LCD I2C VCC GND SCA SCL 3V3 GND D2 (GPIO4/SCA) D1 (GPIO5/SCL) Relay IN1 IN2 IN3 IN4 GND VCC D5 (GPIO14) D6 (GPIO12) D7 (GPIO13) D8 (GPIO15) GND 3V3
Gambar  4  menunjukkan  diagram  alir  yang  menggambarkan  cara  kerja  dari  sistem  yang  dirancang.  Saat sistem dihidupkan ( power on ),  Node MCU menginisialisasi  semua pin  yang digunakan  dan memeriksa  apakah sistem  dapat  terkoneksi  atau  mempunyai  koneksi dengan  Internet  atau  tidak.  Jika  dapat  terkoneksi  ke  Internet, NodeMCU  mengirimkan  pesan  ke  bot  telegram  untuk  memberikan  informasi  bahwa  sistem  telah  terkoneksi dengan Internet. Selanjutnya, NodeMCU melakukan pembacaan atau mengambil data suhu dari sensor DS18B20 dan data ketinggian air dari sensor HC-SR04. Data ini kemudian diproses dan ditampilkan pada LCD. Pembacaan data suhu dari sensor DS18B20 menggunakan fungsi requestTemperatures() dan getTempCByIndex() dari library untuk  sensor  tersebut.    Untuk  pengukuran  ketinggian  air  menggunakan  sensor  HC-SR04,  suatu  pulsa diberikan ke pin trigger dengan cara membuat pin tersebut dalam kondisi LOW, lalu HIGH, dan kemudian LOW lagi. Waktu yang dibutuhkan untuk menerima kembali gelombang suara melalui pin echo kemudian disimpan pada
suatu  variabel  (dalam  kode  program)  dan  digunakan  untuk  menghitung  jarak  dari  sensor  ke  permukaan  air  di akuarium.  Setelah  membaca  data  dari  sensor  dan  menampilkannya  pada  LCD,  sistem  akan  melakukan  aksi (misalnya, menyalakan/mematikan lampu atau pompa air) tergantung dari pembacaan nilai sensor atau perintah dari user .  Jika pembacaan suhu air lebih besar dari 32°C, maka kipas akan diaktifkan, atau jika suhu air lebih kecil dari 24°C, maka heater akan diaktifkan. Jika suhu air pada akuarium telah sesuai dengan kondisi yang ditetapkan (24°C hingga 32°C), maka kipas dan heater akan dimatikan. Pada setiap aksi ini, bot telegram akan mengirimkan pesan pemberitahuan kepada user mengenai aksi yang dilakukan. Selain itu, user juga dapat mengirimkan perintah kepada bot telegram untuk menyalakan/mematikan lampu atau pompa. Pada sistem ini terdapat lima perintah yang dapat  diberikan  oleh user yaitu  perintah  untuk  menyalakan/mematikan  pompa  (“nyalakan  pompa”,  “matikan pompa”), perintah untuk menyalakan/mematikan lampu (“nyalakan lampu”, “matikan lampu”), dan perintah untuk memeriksa  kondisi  suhu  akuarium  (“cek  info”).  Untuk  setiap  perintah  yang  diberikan  ke  sistem,  sistem  akan mengirimkan pesan konfirmasi kepada user mengenai aksi yang dilakukan.
Gambar 4. Diagram alir cara kerja sistem
Hasil  implementasi  perangkat  keras  sistem  pemantauan  suhu  dan  ketinggian  air  pada  akuarium  yang dirancang pada penelitian ini ditunjukkan pada Gambar 5.

## 3.2 Pengujian Sistem
Pengujian  sistem  diawali  dengan  menguji  sensor  yang  digunakan.  Pengujian  ini  dilakukan  dengan  cara menjalankan sistem dan memantau apakah sensor ultrasonik HC-SR04, dan sensor suhu DS18B20 bekerja sesuai fungsinya. Setelah memastikan bahwa kedua sensor tersebut  bekerja  dengan baik dan dapat menampilkan hasil pengukuran suhu dan ketinggian air pada akuarium, kemudian dilakukan pengujian bagian pemantauan dan kontrol melalui bot telegram dengan mengirimkan perintah yang telah ditentukan. Gambar 6 dan Gambar 7 masing-masing menunjukkan  sensor  HC-SR04,  akuarium  berisi  air,  penempatan  sensor  HC-SR04  pada  akuarium,  dan  hasil pengujian pengukuran ketinggian air. Pengujian dilakukan pada sebuah akuarium dengan ukuran panjang 30 cm, lebar 20 cm, dan tinggi 25 cm. Sensor HC-SR04 diletakkan pada ketinggian 25 cm sesuai dengan tinggi akuarium. Berdasarkan  hasil  yang  ditunjukkan  pada  Gambar  7  dapat  dilihat  bahwa  sensor  tersebut  berhasil  mengukur ketinggian air dengan menampilkan angka 10 cm pada LCD.
Gambar 6. Sensor HC-SR04 dan akuarium berisi air setinggi 10 cm untuk pengujian
Gambar 7. Penempatan sensor HC-SR04 dan hasil pengukuran ketinggian air
Pengujian  sensor  DS18B220  untuk  mengukur  suhu  air  ditunjukkan  pada  Gambar  8.  Pengujian  awal dilakukan  dengan  menempatkan  sensor  ke  dalam  dua  gelas  (untuk  mensimulasikan  akuarium  sebelum  sensor tersebut  dicoba pada akuarium yang sebenarnya)  masing-masing  berisi  air dingin dan air panas, dan kemudian mengamati  respon  dari  sistem.  Gambar  9  menunjukkan  tampilan  suhu  pada  LCD  dan  pesan  (notifikasi)  yang dikirimkan dari sistem ke bot Telegram jika suhu terlalu dingin atau suhu terlalu panas. Pengujian dengan beberapa nilai suhu yang berbeda ditunjukkan pada Tabel 2. Berdasarkan hasil pengujian ini, jika suhu air lebih kecil dari 24°C, bot akan memberikan  pesan  bahwa air terlalu dingin dan selanjutnya sistem  akan  mengontrol relay pada channel 2 untuk menyalakan heater . Sebaliknya, jika suhu air lebih besar dari 32°C, bot akan memberikan pesan bahwa air terlalu panas dan sistem relay pada channel 4 untuk menyalakan kipas angin.
Gambar 8. Sensor DS18B20 dan pengujian menggunakan air panas dan air dingin
Gambar 9. Tampilan pada LCD dan notifikasi pada bot Telegram untuk suhu dingin dan suhu panas
Tabel 2. Hasil pengujian sensor DS18B20 Suhu Akuarium (°C) Notifikasi (Bot Telegram) Relay 1 (Kipas) Relay 2 (Heater) Kesimpulan 23.69 °C Suhu Akuarium Terlalu Dingin 23.69 °C OFF ON Valid 37.13 °C Suhu Akuarium Terlalu Panas 37.13 °C ON OFF Valid 23.56 °C Suhu Akuarium Terlalu Dingin 23.56 °C OFF ON Valid 39.25 °C Suhu Akuarium Terlalu Panas 39.25 °C ON OFF Valid 21.43 °C Suhu Akuarium Terlalu Dingin 21.43 °C OFF ON Valid 33.68 °C Suhu Akuarium Terlalu Panas 33.68 °C ON OFF Valid 26.74 °C Suhu Akuarium Normal 26.74 °C OFF OFF Valid
Setelah pengujian sensor HC-SR04, sensor DS18B20, relay channel 1 (kipas), relay channel 2 ( heater ), dan bot yang menerima pesan dari sistem mengenai suhu air pada akuarium, pengujian berikutnya bertujuan untuk menguji pengiriman perintah untuk menyalakan atau mematikan lampu yang terhubung dengan relay channel 3. Pada  pengujian  ini  diberikan  perintah  “Nyalakan  lampu”  dan  “Matikan  lampu”  seperti  yang  ditunjukkan  pada Gambar  10.  Masing-masing  perintah  ini  akan  direspon  oleh  sistem  dengan  mengontrol relay  channel 3  untuk menyalakan  dan  mematikan  lampu,  serta  mengirimkan  pesan  untuk  memberikan  notifikasi  bahwa  lampu  telah menyala atau lampu telah dimatikan. Tabel 3 menunjukkan hasil pengujian pengontrolan lampu. Berdasarkan hasil pengujian ini dapat disimpulkan bahwa fungsi untuk menyalakan dan mematikan lampu berfungsi sebagaimana mestinya. Pengujian terakhir yang dilakukan adalah pengujian perintah untuk menyalakan dan mematikan pompa yang terhubung dengan relay channel 4. Pada pengujian ini diberikan perintah “Nyalakan pompa” dan “Matikan pompa” seperti yang ditunjukkan pada Gambar 11. Masing-masing perintah ini akan direspon oleh sistem dengan mengontrol relay  channel 4  untuk  menyalakan  dan  mematikan  pompa,  serta  mengirimkan  pesan  untuk memberikan  notifikasi  bahwa  pompa  telah  menyala  atau  pompa  telah  dimatikan.  Tabel  4  menunjukkan  hasil pengujian  pengontrolan  pompa.  Berdasarkan  hasil  pengujian  ini  dapat  disimpulkan  bahwa  fungsi  untuk menyalakan dan mematikan pompa juga telah berfungsi sebagaimana mestinya.
Gambar 10. Perintah untuk menyalakan dan mematikan lampu
Tabel 3. Hasil pengujian untuk mengontrol lampu
Perintah (Bot Telegram) Notifikasi (Bot Telegram) Relay 3 (Lampu) Kesimpulan Nyalakan lampu  Lampu Menyala !! ON Valid Matikan lampu Lampu Mati !! OFF Valid
Tabel 4. Hasil pengujian mengontrol pompa
Masukan Perintah (Bot Telegram) Notifikasi (Bot Telegram) Relay 4 (Pompa) Kesimpulan Nyalakan pompa Pompa Menyala !! ON Valid Matikan pompa Pompa Mati !! OFF Valid

## 4. KESIMPULAN
Penelitian  ini  membahas  perancangan  dan  implementasi  sistem  untuk  memantau  suhu  dan  ketinggian  air  pada suatu akuarium berbasis IoT. Bot Telegram digunakan sebagai alat untuk memberikan perintah kepada sistem dan memperoleh  informasi  mengenai  kondisi  akuarium.  Berdasarkan  hasil  implementasi  dan  pengujian  yang dilakukan, sistem dapat bekerja sesuai dengan spesifikasi yang telah ditetapkan. Suhu air dan ketinggian air pada akuarium dapat terpantau karena sistem memberikan notifikasi jika nilainya telah melebihi batas atas atau kurang dari batas bawah yang telah ditetapkan. Selain itu, kipas dan heater berhasil diaktifkan untuk menyesuaikan suhu air. Lampu  dan pompa air pada akuarium juga dapat  diaktifkan dan dimatikan melalui perintah yang diberikan melalui bot Telegram. Untuk pengembangan sistem lebih lanjut, dapat ditambahkan fitur kontrol untuk pemberian pakan ikan  dan  pengukuran  kualitas air misalnya,  kekeruhan air,  pH air  dan  kandungan  zat  kimia seperti nitrit, ammonia,  dan  nitrat.  Selain  itu,  dapat  juga  dikembangkan  aplikasi  berbasis  Android  sebagai  alternatif  atau pengganti  dari  bot  Telegram  yang  digunakan  untuk  memberikan  perintah  pada  sistem  dalam  penelitian  ini. Penggunaan  aplikasi  Android  dapat  membuat  sistem  menjadi  lebih  interaktif  dibandingkan  dengan  hanya menggunakan teks  melalui bot  Telegram  sebagai  perintah untuk  memantau dan mengontrol  sistem, serta dapat mengakomodasi lebih banyak fitur untuk memantau akuarium.

## REFERENCES
[1] M.  Bagus  and  A.  Rahman,  “Sistem  Kendali  Peralatan  Elektronik  Rumah  Tangga  berbasis  Internet  of  Things  (IoT) menggunakan  NodeMCU,” Ubiquitous  Comput.  its  Appl.  J. ,  vol.  2,  no.  2,  pp.  99–104,  Dec.  2019,  doi: 10.51804/UCAIAJ.V2I2.99-104.
[2] A.  Budiman  and  Y.  Ramdhani,  “Pengontrolan  Alat  Elektronik  menggunakan  Modul  NodeMCU  ESP8266  dengan Aplikasi Blynk berbasis IoT,” eProsiding Tek. Inform. , vol. 2, no. 1, pp. 68–74, 2021.
[3] I. Santoso, M. F. Adiwisastra, B. K. Simpony, D. Supriadi, and D. S. Purnia, “Implementasi NodeMCU dalam Home Automation  dengan  Sistem  Kontrol  Aplikasi  Blynk,” Swabumi  (Suara  Wawasan  Sukabumi)    Ilmu  Komputer, Manajemen, dan Sos. , vol. 9, no. 1, pp. 32–40, Apr. 2021, doi: 10.31294/SWABUMI.V9I1.10459.
[4] M. Y. Efendi and J. E. Chandra, “Implementasi Internet of Things pada Sistem Kendali Lampu Rumah menggunakan Telegram Messenger Bot dan Nodemcu Esp 8266,” Glob. J. Comput. Sci. Technol. , vol. 19, no. 1, pp. 1–11, 2019.
[5] N. Kaushik and T. Bagga, “Smart Cities Using IoT,” 2021, doi: 10.1109/ICRITO51393.2021.9596386.
[6] M. Derawi, Y. Dalveren, and F. A. Cheikh, “Internet-of-Things-Based Smart Transportation Systems for Safer Roads,” IEEE World Forum Internet Things, WF-IoT 2020 - Symp. Proc. , Jun. 2020, doi: 10.1109/WF-IOT48130.2020.9221208.
[7] S.  Goyal  and  N.  Batra,  “SHMS:  Smart  Healthcare  Monitoring  System  using  Internet  of  Things,”  in 2021  2nd International Conference on Computational Methods in Science & Technology (ICCMST) , Jun. 2021, pp. 41–44, doi: 10.1109/ICCMST54943.2021.00020.
[8] C.-Y. Liu, T. Wellem, C.-C. Peng, M.-Y. Chen, and Y.-K. Lai, “IoT-based Control Application for Smart Home,” in 2015 International Conference on Electrical, Telecommunication and Computer Engineering (ELTICOM) , 2015, pp. 42– 45.
[9] P. V. Ertyan, P. Pangaribuan, and A. S. Wibowo, “Sistem Monitoring dan Mengontrol Aquarium Dalam Pemeliharaan Ikan Hias Dari Jarak Jauh,” in eProceedings of Engineering , 2019, pp. 3102–3108.
[10]  I.  B.  Prasetiyo,  A.  A.  Riadi,  and  A.  A.  Chamid,  “Perancangan  Smart  Aquarium  menggunakan  Sensor Turbidity dan Sensor Ultrasonik pada Akuarium Ikan Air Tawar berbasis Arduino Uno,” J. Teknol. , vol. 13, no. 2, pp. 193–200, Jul. 2021, doi: 10.24853/jurtek.13.2.193-200.
[11]  H. E. Putra, M. Jamil, and S. Lutfi, “Smart Akuarium berbasis IoT menggunakan Raspberry Pi 3,” J. Inform. dan Komput. , vol. 2, no. 2, pp. 60–66, Oct. 2019, doi: 10.33387/JIKO.V2I2.1179.
[12]  Nurofik, S. Faisal, and S. A. P. Lestari, “Sistem Kendali Akuarium Pada Pemeliharaan Ikan Hias Berbasis Internet of Things (IoT) dengan Algoritma Fuzzy Logic,” Sci. Student J. Information, Technol. Sci. , vol. 2, no. 1, pp. 121–132, 2021.
[13]  F. Tubliyansah and I. P. Sari, “Memantau dan mengontrol Suhu Akuarium Ikan Arwana berbasis IoT (Internet of Things) - Proyek Akhir Program D3,” Politeknik Manufaktur Negeri Bangka Belitung, 2021.
[14]  A. Adrian, P. W. Ciptadi, and R. H. Hardyanto, “Sistem Monitoring Serta Kontrol Suhu dan pH pada Smart Aquarium menggunakan Teknologi Internet of Things,” Pros. Semin. Nas. Din. Inform. , vol. 5, no. 1, pp. 132–137, 2021.
[15]  K.  Kurniawati,  A.  Noertjahyana,  and  H.  Khoswanto,  “Aplikasi  Monitoring  Aquarium  untuk  Mengurangi  Tingkat Kematian dengan menggunakan Arduino,” J. Infra , vol. 8, no. 1, pp. 318–321, 2020.
[16]  H. Z. Muttaqin, A. Faisol, and A. Wahid, “Penerapan Internet of Things (IoT) untuk Monitoring dan Controlling PH Air Suhu Air dan Pemberian Pakan Ikan Guppy pada Aquarium menggunakan Aplikasi WhatsApp,” JATI (Jurnal Mhs. Tek. Inform. , vol. 6, no. 1, pp. 276–284, Mar. 2022, doi: 10.36040/JATI.V6I1.4519.
[17]  R. Fernanda and T. Wellem, “Perancangan dan Implementasi Sistem Pemberi Pakan Ikan Otomatis berbasis IoT,” JATISI (Jurnal Tek. Inform. dan Sist. Informasi) , vol. 9, no. 2, pp. 1261–1274, Jun. 2022, doi: 10.35957/JATISI.V9I2.2030.