Modul 4 DEMO PROJECT



1. Pendahuluan [Kembali]
    Memiliki hewan peliharaan seperti kucing dapat membawa kebahagiaan dan persahabatan bagi pemiliknya. Namun, kesibukan sehari-hari terkadang membuat pemilik kesulitan untuk memberikan perhatian penuh kepada hewan peliharaan mereka, terutama dalam hal pemberian makan dan minum. Hal ini dapat menyebabkan masalah kesehatan bagi hewan peliharaan, seperti malnutrisi, dehidrasi, dan obesitas, jika tidak ditangani dengan baik.

    Untuk mengatasi masalah ini, project "Smart Pet Feeder" hadir sebagai solusi inovatif untuk membantu pemilik kucing dalam merawat hewan peliharaan mereka dengan lebih baik. Project ini memanfaatkan teknologi Arduino, dan berbagai macam sensor, untuk mengontrol food dispenser dan water dispenser secara otomatis, memastikan kucing mendapatkan makanan dan air yang cukup sesuai dengan kebutuhannya.


2. Tujuan [Kembali]

Memastikan Jadwal Makan dan Minum yang Tepat: Smart Pet Feeder dapat diprogram untuk mengeluarkan makanan dan air pada waktu yang telah ditentukan, sesuai dengan kebutuhan kucing dan pola makannya. Hal ini membantu menjaga kesehatan dan berat badan ideal kucing, serta mencegah overfeeding dan dehidrasi.
Pemantauan Status Makanan dan Air: Projek ini dapat dilengkapi dengan sensor untuk memantau status makanan dan air pada dispenser. Sensor ini akan memberikan informasi kepada pemilik tentang ketersediaan makanan dan air, sehingga mereka dapat dengan mudah mengetahui kapan refill diperlukan.
Kemudahan Pengoperasian: Smart Pet Feeder dirancang dengan mudah digunakan dan diprogram. Pemilik dapat mengatur jadwal makan dan minum, serta memantau status makanan dan air.
Peningkatan Kualitas Hidup Hewan Peliharaan: Dengan memastikan akses yang konsisten terhadap makanan dan air yang segar, Smart Pet Feeder membantu meningkatkan kualitas hidup kucing dan memberikan ketenangan bagi pemiliknya saat mereka tidak berada di rumah.


3. Alat dan Bahan [Kembali]

3.1. Alat:

a)     Jumper




Spesifikasi:

·       Panjang : 40cm

·       Tipe : Male to Male/Male To Female/ Female To Female

·       Pitch : 2.54mm pin header

 

b)    Breadboard

 

A white electronic board with holes

Description automatically generated

Spesifikasi:

·       Solderless Breadboard 830 titik, terdiri dari 630 titik terminal dan 200 titik distribusi

·       Setiap titik diidentifikasi dengan huruf dan angka untuk memudahkan pemakaian

·       Re-usable, bisa dipakai berulang-ulang

·       Low static, body plastik

·       Bisa dimasuki kabel berukuran 20-29AWG

·       Size: 165mm (L) x 55mm (W)

c)     Adaptor 5V 2A

Spesifikasi:

Weight: approx 30 g

Size : 5.3cm x 2.4cm x 35cm

Class : Class II Industrial equipment

Input Voltage : AC 230V 50-60Hz

Output Voltage : DC 5V 2A Real Current

Jack : 5.5/2.1mm

Power :5W MAX

 

3.2. Komponen:

a)     Sensor Touch

Spesifikasi:

·       Konsumsi daya rendah

·       Catu daya untuk 2 ~ 5.5V DC

·       Dapat menggantikan sentuhan tombol tradisional

·       Empat lubang pemosisian sekrup M2 untuk pemasangan yang mudah

·       Output Pin Sink Current (@ VCC = 3V, VOL = 0.6V): 8 mA

·       Arus pull-up pin keluaran (@ VCC = 3V, VOH = 2.4V): 4 mA

 

b)    Sensor Loadcell

Spesifikasi:

·       Accuracy Class: C3

·       Rated Output: 2.00.2mv/v

·       Non-linearity: 0.02% F.S

·       Creep(30min): 0.0016% F.S

·       Input Impedance: 400 +/-10 ohm

·       Output Impedance: 350 +/-5 ohm

·       Operation Temperature: -10~+40C

·       Safe overload: 150%F.S

·       Destructive Load: 200%F.S

·       Excitation Recommended: 5-12V DC

·       Cable length 22 cm

·       4-wire

·       IP67 Rating

·       Construction: aluminum alloy

·       Dimensions: 88 x 22 x 20 mm

·       Application for bench/counting scales,check weighing etc

Wiring:

·       Red : Supply + (Exc +)

·       Black : Supply - (Exc - )

·       Green : Out + (Signal + )

·       White : Out - (Signal - )

 

c)     Sensor Ultrasonic

Spesifikasi:

·       Tegangan : 5V

·       Arus Statik: < 2mA.

·       Sinyal Output : high level 5V, low level 0V.

·       Sudut Sensor: < 15d

·       Jarak deteksi : 2cm-450cm.

·       Kepresisian : 0.3cm

·       Sinyal triger input: 10us TTL impulse

·       Sinyal Echo : sinyal output TTL PWL

·       Warna : Biru

·       Dimensi : 44 x 20 x 15mm

 

d)    Sensor Water Level

Spesifikasi:

·       Operating voltage: DC 3V - 5V

·       Operating current: less than 20mA

·       Sensor type: analog

·       Detection area: 40 x 16mm

·       Production process: FR4 double-sided HASL

·       Operating temperature: 10C - 30C

·       Humidity: non-condensing

·       Product dimensions: 62 x 20 x 8mm

 

e)     Sensor Turbidity

Spesifikasi:

·       Operating Voltage: 3.3-5V DC

·       Operating Current: 40mA (Max)

·       Response Time: <500ms

·       Insulation Resistance; 100M (Min)

·       Output Method: Analog

·       Analog Output: 0-4.5V

·       Digital Output: High/Low Level Signal (you can adjust the threshold value by adjusting the potentiometer)

·       Operating Temperature: 5C~90C

·       Storage Temperature: -10C~90C

 

f)      LCD I2C

Spesifikasi:

·       LCD Karakter 1602 dengan I2C modul untuk Arduino

·       Jenis LCM: Karakter

·       Menampilkan 2 baris X 16-karakter.

·       Tegangan: 5V DC.

·       Dimensi modul: 80mm x 35mm x 11mm.

·       luas area: 64.5mm x 16mm

·       Fitur IIC / I2C 4 kabel

 

g)     Motor Servo

Spesifikasi:

·       Weight: 9g

·       Dimension: 22mm x 11.5mm x 22.5mm

·       Stall torque: 1.8kg/cm(4.8v)

·       Gear type: POM gear set

·       Operating speed: 0.1sec/60degree(4.8v)

·       Operating voltage: 4.8v

·       Temperature range: 0_ 55

·       Dead band width: 1us

·       Power Supply: Through External Adapter

·       servo wire length: 25 cm

h)    L239D

Spesifikasi:

·       Tegangan kerja : 4.5-25V DC

·       Tegangan trigger : 1.8-5v DC

·       PMW drive : Up to 5KHz

·       Arus Output : Max 1.2A peak/channel

·       Continous 600mA/channel

 

i)      Motor DC

Spesifikasi:

·       Dinamo Tipe 130

·       Panjang Poros:7-8mm

·       Diameter Poros:2mm

·       Dimention:20*15*25mm

·       Rated voltage: 3V

·       Max voltage : 6V

·       No-load speed: 18,000 rev / min at 2,4V

·       Load current: 200mA

j)      RTC DS3231

Spesifikasi:

·       Accuracy 2ppm from 0C to +40C

·       Accuracy 3.5ppm from -40C to +85C

·       Battery Backup Input for Continuous Timekeeping

·       Operating Temperature Ranges : 0C to +70C

·       Low-Power Consumption

·       Real-Time Clock Counts Seconds, Minutes,Hours, Day, Date, Month, and Year with Leap Year Compensation Valid Up to 2100

·       Two Time-of-Day Alarms

·       Programmable Square-Wave Output

·       Fast (400kHz) I2C Interface

·       3.3V and 5V

 

k)    LED Red Super Bright

Spesifikasi:

·       Colour : Red

·       Size : 3mm

·       Lens Colour : Diffused Red

·       Forward Voltage : 2V

·       Forward Current : 20mA

·       Max Power Dissipation : 80mw Max Continuous

·       Operation Temperature : -40 ~ 85C

·       Storage Temperature : -40 ~ 100C

l)      Arduino UNO

Spesifikasi:

·       Operating Voltage : 5V

·       Input Voltage (recommended) : 7-12V

·       Input Voltage (limit) : 6-20V

·       Digital I/O Pins : 14 (of which 6 provide PWM output)

·       PWM Digital I/O Pins : 6

·       Analog Input Pins : 6

·       DC Current per I/O Pin : 20 mA

·       DC Current for 3.3V Pin 50 mA

·       Flash Memory : 32 KB (ATmega328P) of which 0.5 KB used by bootloader

·       SRAM : 2 KB (ATmega328P)

·       EEPROM : 1KB (ATmega328P)

·       Clock Speed : 16 MHz

·       Length : 68.6 mm

Width : 53.4 mm

4. Dasar Teori [Kembali]

a)     Sensor Touch

Sensor touch merupakan komponen elektronik yang mendeteksi sentuhan atau kontak fisik. Sensor ini bekerja dengan berbagai prinsip, seperti:

·       Resistif: Sensor ini memiliki dua lapisan konduktif yang dipisahkan oleh udara. Saat disentuh, resistensi antara kedua lapisan akan berubah, sehingga dapat dideteksi oleh mikrokontroler.

Sensor Sentuh Resistif

·       Kapasitif: Sensor ini menggunakan kapasitansi antara permukaan sensor dan jari manusia. Saat disentuh, kapasitansi akan berubah, sehingga dapat dideteksi oleh mikrokontroler.

Sensor Sentuh Kapasitif

A screenshot of a graph

Description automatically generated

Grafik respon touch sensor

Cara kerja touch sensor:

Pada umumnya, layar sensor memiliki sensor sentuh, pengontrol dan driver perangkat lunak sebagai tiga komponen utama. Layar sentuh dibutuhkan untuk dikombinasikan dengan tampilan dan komputer untuk membuat sistem layar sentuh.

1. Sensor Sentuh

Pada umumnya, sensor sentuh memiliki arus listrik atau sinyal yang melewatinya dan menyentuh layar sehingga menyebabkan perubahan sinyal. Perubahan ini digunakan untuk menentukan lokasi sentuhan layar.

2. Driver Perangkat Lunak

Adanya driver perangkat lunak ini memungkinkan layar sentuh dan komputer untuk bekerja bersama. Kemudian memberi tahu ke Operating System (OS) cara berinteraksi informasi acara sentuh yang dikirim dari pengontrol.

3. Pengendali (Controller)

Controller akan dihubungkan diantara sensor sentuh dan PC. Dibutuhkan informasi dari sensor dan menerjemahkannya untuk memahami PC. Pengendali ini menentukan jenis koneksi yang dibutuhkan.

b)    Sensor Loadcell

Sensor loadcell merupakan komponen elektronik yang mengukur berat atau gaya. Sensor ini bekerja dengan cara mengubah tekanan mekanis menjadi sinyal listrik. Sinyal listrik ini kemudian diproses oleh mikrokontroler untuk menentukan berat atau gaya yang diukur.

A graph of different types of curves

Description automatically generated with medium confidence

Grafik respon sensor loadcell

Strain Gauge pada sensor loadcell

A yellow rectangular sign with black text and black letters

Description automatically generated with medium confidence

Strain Gauge disusun dalam jembatan wheatstone

c)     Sensor Ultrasonic

Sensor ultrasonic merupakan komponen elektronik yang mendeteksi jarak atau keberadaan objek menggunakan gelombang ultrasonik. Sensor ini memancarkan gelombang ultrasonik dan mengukur waktu yang dibutuhkan gelombang untuk kembali setelah dipantulkan oleh objek. Jarak objek dapat dihitung berdasarkan waktu tersebut.

A graph with a line

Description automatically generated

Grafik respon sensor ultrasonic

Prinsip kerja sensor ultrasonic

A diagram of a device

Description automatically generated

Timing diagram sensor ultrasonic

·       Ketika gelombang ultrasonik memancar (pergi) maka logika pin Echo = 1.

·       Selama gelombang ultrasonik masih merambat (belum kembali) logika pin Echo =1.

·       Setelah gelombang ultrasonik memantul dan kembali trus terdeteksi oleh sensor penerima, maka pin ECHO = 0.

d)    Sensor Water Level

Sensor water level merupakan komponen elektronik yang mendeteksi ketinggian air. Sensor ini bekerja dengan berbagai prinsip, seperti:

·       Pelampung: Sensor ini menggunakan pelampung yang akan naik atau turun sesuai dengan ketinggian air. Posisi pelampung kemudian dideteksi oleh mikrokontroler.

·       Tekanan: Sensor ini menggunakan sensor tekanan untuk mengukur tekanan air. Tekanan air kemudian dikonversi menjadi ketinggian air oleh mikrokontroler.

·       Konduktivitas: Sensor ini menggunakan elektroda untuk mendeteksi konduktivitas air. Ketinggian air kemudian dihitung berdasarkan konduktivitas air.

A graph with red dots

Description automatically generated

Grafik respon sensor water level

Dimensi sensor water level

A diagram of a test tube

Description automatically generated

Pembacaan sensor water level

 

e)     Sensor Turbidity

Sensor turbidity merupakan komponen elektronik yang mengukur kekeruhan air. Sensor ini bekerja dengan cara memancarkan cahaya dan mengukur intensitas cahaya yang diteruskan atau dipantulkan oleh air. Kekeruhan air kemudian dihitung berdasarkan intensitas cahaya tersebut.

A graph of different colored lines

Description automatically generated

Grafik respon turbidity sensor

Prinsip intensitas Cahaya pada turbidity sensor

Prinsip kerja dari sensor Turbidity terletak pada Led photodiode sebagai transmitter dan photodiode sebagai receiver. Pada turbidity sensor ini memanfaatkan cahaya yang dipancarkan pada Led yang kemudian sensor akan membaca hasil dari pemantulan Cahaya tersebut. Semakin sedikit tingkat pemantulan cahaya yang diterima oleh sensor maka semakin tinggi tingkat kekeruhan air yang dibaca oleh sensor dan sebaliknya.

f)      LCD I2C

LCD I2C merupakan layar LCD yang dapat dihubungkan ke mikrokontroler menggunakan protokol I2C. Protokol I2C memungkinkan komunikasi antara mikrokontroler dan LCD dengan hanya menggunakan dua kabel data.

A diagram of a voltage and a current

Description automatically generated with medium confidence

g)     Motor Servo

Motor servo merupakan motor DC yang dapat dikontrol posisinya dengan presisi tinggi. Motor servo memiliki tiga kabel, yaitu kabel power, kabel ground, dan kabel sinyal. Posisi motor servo dapat dikontrol dengan mengirimkan sinyal PWM (Pulse Width Modulation) ke kabel sinyal.

h)    L239D

L239D merupakan driver motor H-bridge yang dapat digunakan untuk mengontrol dua motor DC secara independen. L239D memiliki empat input, yaitu dua input untuk masing-masing motor DC, dan empat input untuk mengaktifkan motor DC.

A diagram of a heat pump

Description automatically generated

i)      Motor DC

Motor DC merupakan motor listrik yang bekerja dengan menggunakan medan magnet dan arus listrik. Motor DC memiliki dua terminal, yaitu terminal positif dan terminal negatif. Arah putaran motor DC dapat dikontrol dengan mengubah polaritas tegangan yang diterapkan pada terminal.

.A diagram of a mechanical load

Description automatically generated

Gambar grafik respon motor dc

 

j)      RTC DS3231

RTC DS3231 merupakan real-time clock (RTC) yang dapat digunakan untuk menyimpan waktu dan tanggal. RTC DS3231 memiliki baterai internal yang memungkinkannya untuk terus berjalan bahkan ketika daya utama dimatikan.

A diagram of a supply voltage

Description automatically generated

k)    LED Super Bright

LED Super Bright merupakan LED yang memiliki intensitas cahaya yang lebih tinggi dari LED biasa. LED Super Bright sering digunakan untuk aplikasi yang membutuhkan pencahayaan yang terang, seperti lampu jalan dan lampu indikator.

l)      Arduino UNO

Arduino UNO merupakan papan mikrokontroler yang berbasis mikrokontroler Atmega328P. Arduino UNO mudah digunakan dan memiliki banyak komunitas online yang dapat membantu pengguna dalam belajar dan mengembangkan proyek mereka.

A circuit board with many different colored wires

Description automatically generated

Arduino UNO pinout

Arduino UNO analog pins

 

A table of data

Description automatically generated with medium confidence

Arduino UNO digital pins


5. Percobaan [Kembali]


a. Prosedur [Kembali]


  1. Persiapan Rangkaian:

    • Hubungkan semua komponen sesuai dengan skema rangkaian yang telah dibuat.
    • Unggah kode program Arduino yang telah ditulis ke papan mikrokontroler.
    • Pastikan semua sensor dan aktuator terhubung dengan benar dan berfungsi dengan baik.
  2. Pengujian Pemberian Makan Otomatis:

    • Atur waktu pemberian makan (sarapan, makan siang, dan makan malam) pada RTC.
    • Jalankan program Arduino dan amati kinerja sistem.
    • Pastikan motor servo dispenser makanan aktif pada waktu yang telah diatur.
    • Pantau berat makanan yang dikeluarkan dengan sensor load cell.
    • Pastikan motor servo dispenser makanan mati ketika berat makanan mencapai 100 gram.
  3. Pengujian Pengisian Makanan Manual:

    • Sentuh sensor touch pada dispenser makanan.
    • Amati apakah motor servo dispenser makanan terbuka untuk memungkinkan pengisian manual.
    • Lakukan pengisian makanan secara manual ke dalam dispenser.
  4. Pengujian Indikator Makanan Habis:

    • Kurangi jumlah makanan di dalam dispenser hingga batas minimum.
    • Amati apakah LED merah super terang menyala sebagai indikator makanan hampir habis.
  5. Pengujian Pengisian Air Otomatis:

    • Kosongkan tangki air hingga ketinggian air di bawah 2 cm.
    • Amati apakah motor servo dispenser air aktif untuk melakukan pengisian air.
    • Pantau ketinggian air di tangki dengan sensor level air.
    • Pastikan motor servo dispenser air mati ketika ketinggian air mencapai 5 cm.
  6. Pengujian Pembersihan Tangki Air Otomatis:

    • Tambahkan sedikit kotoran ke dalam tangki air.
    • Amati apakah solenoid valve terbuka untuk mengeluarkan air kotor dari tangki.
    • Pastikan air kotor di dalam tangki terbuang dengan baik.

b. Hardware [Kembali]



c. Rangkaian Simulasi dan Prinsip Kerja [Kembali]



1)     Pemberian Makan Otomatis berdasarkan RTC:

  • RTC diprogram untuk waktu-waktu pemberian makan yang diinginkan, yaitu sarapan, makan siang dan makan malam.
  • Ketika waktu pemberian makan tiba berdasarkan RTC:
    • Motor servo untuk mengeluarkan makanan diaktifkan.
    • Load cell sensor akan terus memonitor berat makanan yang dikeluarkan.
    • Jika berat makanan mencapai 100 gram (berat yang diinginkan):
      • Motor servo untuk mengeluarkan makanan dinonaktifkan.

2)     Pengisian Makanan Manual:

  • Ketika sensor touch disentuh:
    • Motor servo untuk membuka tutup atas dispenser makanan diaktifkan.
    • Ini memungkinkan pengisian makanan secara manual.

3)     Indikator Makanan Habis:

  • Sensor ultrasonik mengukur jarak antara makanan dan sensor di dalam dispenser.
  • Jika jarak antara makanan dan sensor ultrasonik 10 cm atau lebih (artinya makanan hampir habis):
    • LED red super bright diaktifkan sebagai indikator bahwa dispenser hampir kehabisan makanan.

4)     Pengisian Air Otomatis:

  • Sensor level air akan terus mengukur tinggi air di tangki air.
  • Jika sensor level air mendeteksi air kurang dari 2 cm di atas permukaan tangki air:
    • Motor servo untuk mengisi air dari dispenser air diaktifkan (asumsi terhubung ke dispenser air terpisah).
    • Pengisian air akan terus berlanjut hingga sensor level air mendeteksi ketinggian air mencapai 5 cm (kapasitas yang diinginkan).

5)     Pembersihan Tangki Air Otomatis:

  • Sensor kekeruhan akan mendeteksi adanya kotoran di dalam tangki air.
  • Jika sensor kekeruhan mendeteksi adanya kotoran:
    • Solenoid valve diaktifkan untuk membuka dan mengeluarkan air dari tangki air.
    • Ini memungkinkan pembersihan tangki air secara otomatis.

d. Flowchart [Kembali]


A.    Input Arduino
B.    Output Arduino


e. Video Demo [Kembali]