Project



MODUL 4

SmartFarm: Sistem Cerdas untuk Pemantauan Lingkungan dan Pakan Otomatis pada Kandang Ayam


    


2. Tujuan [Kembali]

Tujuan dari rancangan yang dilakukan yaitu:

a. Memenuhi syarat untuk modul 4 Praktikum Mikroprosesor & Mikrokontroler

b. Merancang sistem cerdas untuk pemantauan lingkungan dan pakan otomatis kandang ayam  berbasis STM32F103C836 secara otomatis dan real-time.

c. Meningkatkan efisiensi dan efektivitas kandang ayam dengan memanfaatkan teknologi mikrokontroler dan sensor.

d. Menjaga kualitas lingkungan ( suhu,kelembapan ) serta pakan yang teratur agar tetap ideal untuk pertumbuhan dan kesehatan ayam.

e. Mengurangi ketergantungan terhadap pemantauan manual yang tidak efisien dan rawan keterlambatan respons.

f. Meningkatkan umur, pertumbuhan, dan daya tahan ayam melalui pengendalian kondisi lingkungan yang baik serta pakan yang teratur.

 


a. Alat

1.     Solder

 SIOPEN BALANGAN - AR ELEKTRONIK & KOMPUTER - NEPTO CX-30 SOLDER TANGAN  - SOLDER LISTRIK - SOLDERING IRON 30W 220V

2.     STM32F103C836




 

3.     Breadboard

 BB830 Solderless Plug-in BreadBoard - 830 tie Points, 4 Power Rails

4.     Sensor Load cell


 

5.     Sensor DHT22


 

6.     Sensor LDR


 

7.     Motor DC


 

8.     Motor Servo MG90


 

9.     LED 5V

  


 

10.  Jumper

 




11.  Resistor

 Resistor: Pengertian, Rumus dan Jenis-jenis Resistor


b. Bahan

1.     Double Tip

2.    kipas kreasi

3.     wadah pakan

4. Dasar Teori  [Kembali]

1. ADC (Analog to Digital Converter)

 ADC atau Analog to Digital Converter merupakan salah satu perangkat elektronika yang digunakan sebagai penghubung dalam pemrosesan sinyal analog oleh sistem digital. Fungsi utama dari fitur ini adalah mengubah sinyal masukan yang masih dalam bentuk sinyal analog menjadi sinyal digital dengan bentuk kode-kode digital. Ada 2 faktor yang perlu diperhatikan pada proses kerja ADC yaitu kecepatan sampling dan resolusi. 

 Kecepatan sampling menyatakan seberapa sering perangkat mampu mengkonversi sinyal analog ke dalam bentuk sinyal digital dalam selang waktu yang tertentu. Biasa dinyatakan dalam sample per second (SPS). Sementara Resolusi menyatakan tingkat ketelitian yang dimilliki. Pada Arduino, resolusi yang dimiliki adalah 10 bit atau rentang nilai digital antara 0 - 1023. Dan pada Arduino tegangan referensi yang digunakan adalah 5 volt, hal ini berarti ADC pada Arduino mampu menangani sinyal analog dengan tegangan 0 - 5 volt. Pada Arduino, menggunakan pin analog input yang diawali dengan kode A (A0- A5 pada Arduino Uno). Fungsi untuk mengambil data sinyal input analog menggunakan analogRead(pin);.  

2. Mikrokontroler 

 STM32F103C8T6 adalah mikrokontroler 32-bit berbasis ARM Cortex-M3 yang bekerja dengan prinsip pengambilan, pemrosesan, dan pengeluaran data. Saat diberi tegangan (3.3V), STM32 mulai aktif, STM32 menjalankan program dari memori flash. Prosesor membaca dan mengeksekusi instruksi, mengontrol input/output (seperti sensor dan aktuator), serta merespons interupsi secara otomatis. Program berjalan terus-menerus dalam loop utama.

Adapun spesifikasi dari STM32F103C836 adalah sebagai berikut:




Gambar 1. STM32F103C8T6


 

3. Komunikasi

3.1. Universal Asynchronous Receiver Transmitter (UART)

 UART (Universal Asynchronous Receiver-Transmitter) adalah bagian perangkat keras komputer yang menerjemahkan antara bit-bit paralel data dan bit-bit serial. UART biasanya berupa sirkuit terintegrasi yang digunakan untuk komunikasi serial pada komputer atau port serial perangkat periperal.

Cara Kerja Komunikasi UART :

 Data dikirimkan secara paralel dari data bus ke UART1. Pada UART1 ditambahkan start bit, parity bit, dan stop bit kemudian dimuat dalam satu paket data. Paket data ditransmisikan secara serial dari Tx UART1 ke Rx UART2. UART2 mengkonversikan data dan menghapus bit tambahan, kemudian ditransfer secara parallel ke data bus penerima.

3.2. Serial Peripheral Interface (SPI)

 Serial Peripheral Interface (SPI) merupakan salah satu mode komunikasi serial synchrounous kecepatan tinggi yang dimiliki oleh ATmega 328. Komunikasi SPI membutuhkan 3 jalur yaitu MOSI, MISO, dan SCK. Melalui komunikasi ini data dapat saling dikirimkan baik antara mikrokontroler maupun antara mikrokontroler dengan peripheral lain di luar mikrokontroler.

        MOSI : Master Output Slave Input artinya jika dikonfigurasi sebagai master maka pin MOSI sebagai output tetapi jika dikonfigurasi sebagai slave maka pin MOSI sebagai input.

        MISO : Master Input Slave Output artinya jika dikonfigurasi sebagai master maka pin MISO sebagai input tetapi jika dikonfigurasi sebagai slave maka pin MISO sebagai output.

        SCLK : Clock jika dikonfigurasi sebagai master maka pin CLK berlaku sebagai output tetapi jika dikonfigurasi sebagai slave maka pin CLK berlaku sebagai input.

        SS/CS : Slave Select / Chip Select adalah jalur master memilih slave mana yang akan dikirimkan data.


Cara Kerja Komunikasi SPI :

 Sinyal clock dialirkan dari master ke slave yang berfungsi untuk sinkronisasi. Master dapat memilih slave mana yang akan dikirimkan data melalui slave select, kemudian data dikirimkan dari master ke slave melalui MOSI. Jika master butuh respon data maka slave akan mentransfer data ke master melalui MISO.

3.3. Inter-Integrated Circuit (I2C)

 Inter Integrated Circuit atau sering disebut I2C adalah standar komunikasi serial dua arah menggunakan dua saluran yang didisain khusus untuk mengirim maupun menerima data. Sistem I2C terdiri dari saluran SCL (Serial Clock) dan SDA (Serial Data) yang membawa informasi data antara I2C dengan pengontrolnya.

Cara Kerja Komunikasi I2C :

 Pada I2C, data ditransfer dalam bentuk message yang terdiri dari kondisi start, Address Frame, R/W bit, ACK/NACK bit, Data Frame 1, Data Frame 2,  dan kondisi Stop.

        Kondisi start dimana saat pada SDA beralih dari logika high ke low sebelum SCL.

        Kondisi stop dimana saat pada SDA beralih dari logika low ke high sebelum SCL.

        R/W bit berfungsi untuk menentukan apakah master mengirim data ke slave atau meminta data dari slave. (logika 0 = mengirim data ke slave, logika 1 = meminta data dari slave)

        ACK/NACK bit berfungsi sebagai pemberi kabar jika data frame ataupun address frame telah diterima receiver.

 

4. Sensor LOAD CELL

Load cell mengubah tekanan atau berat menjadi sinyal listrik. Saat beban diberikan, elemen strain gauge di dalamnya mengalami perubahan resistansi, yang menghasilkan perubahan tegangan. Tegangan ini kemudian dibaca (biasanya dengan bantuan modul seperti HX711) untuk mengetahui berat secara akurat. 

Spesifikasinya meliputi


a.  Deteksi Berat Menggunakan Gaya Mekanis

·        Ketika pakan diletakkan di atas wadah, gaya berat menekan load cell.

·        Load cell mengalami regangan atau tekanan kecil saat beban berubah.

·        Perubahan ini menghasilkan perubahan tahanan listrik pada komponen strain gauge di dalam load cell.

b.  Konversi ke Tegangan Listrik

·        Perubahan resistansi diubah menjadi sinyal tegangan analog yang sangat kecil (biasanya dalam milivolt).

·        Sinyal ini terlalu kecil untuk langsung dibaca STM32, sehingga perlu penguat.

c.  Penguatan dan Konversi oleh HX711

·        Load Cell dihubungkan ke modul HX711 (ADC + amplifier).

·        HX711:

o   Menguatkan sinyal dari load cell.

o   Mengubah tegangan analog ke data digital.

o   Mengirim data digital ke STM32 melalui komunikasi 2-wire (CLK dan DATA).

d.  Pembacaan dan Pemrosesan oleh STM32

·        STM32 membaca nilai berat dari HX711.

·        Data dibandingkan dengan ambang batas berat minimum.

·        Jika berat pakan < ambang batas → STM32 mengaktifkan motor untuk mengisi ulang pakan.

 

 

4.2. Sensor DHT22 



DHT22 mengukur suhu dan kelembaban, lalu mengirimkannya dalam bentuk sinyal digital. Sensor ini menggunakan thermistor untuk suhu dan kapasitor kelembaban, kemudian mengirim data ke mikrokontroler melalui satu jalur data.

Prinsip kerja pada system :

a.     Pengukuran Suhu dan Kelembaban

o   DHT22 mengukur suhu menggunakan thermistor, dan kelembaban menggunakan kapasitor kelembaban internal.

o   Sensor mengonversi data analog ke sinyal digital, yang kemudian dikirim ke mikrokontroler STM32 melalui satu jalur data (1-wire).

b.    Komunikasi ke STM32

o   STM32 mengirimkan permintaan data ke DHT22.

o   DHT22 merespons dengan mengirimkan 40-bit data digital:

§  16-bit untuk kelembaban

§  16-bit untuk suhu

§  8-bit checksum (untuk validasi data)

c.     Pemrosesan oleh STM32

o   STM32 membaca data suhu.

o   Dibandingkan dengan ambang batas suhu yang ditentukan dalam program.

d.    Tindakan Otomatis

o   Jika suhu terlalu tinggi → STM32 mengaktifkan kipas.

o   Jika suhu terlalu rendah → STM32 mengaktifkan pemanas.

o   Semua proses ini berlangsung otomatis dan berulang. 

4.3. Sensor LDR

LDR mengubah intensitas cahaya menjadi perubahan resistansi. Semakin terang cahaya yang diterima, semakin kecil resistansinya; semakin gelap, resistansinya membesar. Perubahan ini kemudian dikonversi menjadi tegangan yang bisa dibaca oleh mikrokontroler.

 


Prinsip kerja pada system :

a.  Karakteristik LDR:

·        LDR adalah resistor yang nilai resistansinya berubah tergantung intensitas cahaya:

o   Cahaya terang → resistansi kecil.

o   Cahaya gelap → resistansi besar.

b.  Pembacaan oleh STM32:

·        LDR disusun dalam rangkaian pembagi tegangan bersama resistor tetap.

·        Tegangan hasil pembagi ini dihubungkan ke pin ADC (Analog to Digital Converter) STM32.

·        STM32 mengubah tegangan analog dari LDR menjadi nilai digital.

c.  Pemrosesan oleh STM32:

·        STM32 membaca nilai cahaya (dalam bentuk digital).

·        Dibandingkan dengan nilai ambang batas pencahayaan.

d.  Tindakan Otomatis:

·        Jika pencahayaan terlalu rendah (gelap) → STM32 mengaktifkan lampu kandang.

·        Jika pencahayaan cukup → lampu dimatikan otomatis.




  • Rangkaian Simulasi

 
 
- rangkaian:
Tampak depan

Tampak samping

Tampak atas

Tampak belakang


  • Prinsip Kerja 

sensor dht 22 mendeteksi suhu diatas 35 maka kipas pendingin hidup, jika dibawah 35 kipas akan mati

sensor ldr mendeteksi cahaya , jika cahaya gelap maka lampu led akan hidup. sebaliknya,jika cahaya terang maka led akan mati

sensor loadcell mendeteksi berat pakan, jika berat pakan >50gr maka servo pembuka katup penambah pakan akan terbuka, jika sudah 50gr berat pakan, maka servo akan tertutup kembali

 

  • Flowchart
         

 

  • Listing Program



Link Download Rangkaian 1
Link Download Rangkaian 2 
Link Download Video Percobaan 
Link Download Datasheet 

Komentar

Postingan populer dari blog ini

Tugas Besar

Modul 1 Prak. Sistem Digital