MODUL 4 - PRAK UP&UC



Teknologi Penyedotan Nira Cerdas Untuk Meningkatkan Efisiensi Petani Gula Aren


1. Pendahuluan[Kembali]

Pemanfaatan teknologi otomatisasi dalam sektor pertanian dan perkebunan kini menjadi perhatian penting dalam menjawab tantangan efisiensi dan produktivitas. Salah satu komoditas yang memiliki nilai ekonomi tinggi di Indonesia adalah nira, yaitu cairan manis yang diambil dari batang tanaman seperti aren atau kelapa. Proses pemanenan nira secara konvensional masih banyak dilakukan secara manual, yang tidak hanya membutuhkan tenaga kerja terus-menerus, tetapi juga rentan terhadap kehilangan volume nira akibat keterlambatan pengambilan atau limpahan dari wadah penampungan.

Seiring dengan perkembangan teknologi mikrokontroler, proses pemanenan ini dapat ditingkatkan melalui sistem otomatis berbasis sensor. Praktikum Mikroprosesor dan Mikrokontroler pada Modul 4 ini mengangkat permasalahan tersebut ke dalam bentuk proyek sederhana yang mengintegrasikan beberapa sensor dengan sistem kontrol otomatis. Dalam proyek ini, dirancang dan direalisasikan sistem pemanenan nira otomatis yang memanfaatkan tiga sensor, yaitu sensor level air, sensor suhu, dan sensor ultrasonik yang dikendalikan melalui pemrograman mikrokontroler.

Tujuan dari pembuatan sistem ini tidak hanya untuk menyelesaikan tugas praktikum, tetapi juga sebagai bentuk penerapan nyata dari pemrograman mikrokontroler dalam dunia pertanian modern. Proyek ini juga memberikan pemahaman lebih dalam kepada mahasiswa tentang bagaimana sistem tertanam (embedded system) dapat diimplementasikan secara langsung dalam menyelesaikan persoalan kehidupan sehari-hari, khususnya pada proses pemanenan nira yang lebih efisien, presisi, dan berkelanjutan.


2. Tujuan[Kembali]

1.     Memenuhi Tugas Besar Praktikum.

2.     Mengimplementasikan Mikrokontroler dalam Sistem Otomatisasi

3.     Meningkatkan Pemahaman Mahasiswa Terhadap Sensor dan Aktuator.

4.     Meningkatkan Efisiensi dan Akurasi Pemanenan Nira

5.     Melatih Keterampilan Desain Sistem dan Pemrograman

6.     Menumbuhkan Inovasi Teknologi Tepat Guna


3. Alat dan Komponen[Kembali]

  • Komponen

1. STM32F103C8T6


Gambar 1 STM32F103C8T6



2. Sensor Ultrasonik (HCSR04)

Gambar 2 . sensor ultrasonik


3. Sensor Water Level
\
Gambar 3 Water level sensor



4. LCD 16x2 
Gambar 4 LCD 16X 2




5. Buzzer

Gambar 5. buzzer

6.Solenoid Valve 12 Volt

Gambar 6. Soleniod Valve


7. Sensor DS18B20
Gambar 7. DS18B20





  • Alat

1. Breadboard

Gambar 8. Breadboard



2. Kabel Jumper 
Gambar 9. kabel Jumper

3. Selang Air

Gambar 10. Selang Air


4. Landasan Teori[Kembali]

4.1 General Input Output 
      Input adalah semua data dan perintah yang dimasukkan ke dalam memori untuk diproses lebih lanjut oleh mikroprosesor. Sebuah perangkat input adalah komponen piranti keras yang memungkinkan user atau pengguna memasukkan data ke dalam mikroprosesor. Output adalah data hasil yang telah diproses. Perangkat output adalah semua komponen piranti keras yang menyampaikan informasi kepada orang-orang yang menggunakannya. 
      Pada STM32 dan Raspberry Pi Pico pin input/output terdiri dari digital dan analog yang jumlah pin-nya tergantung jenis mikrokontroller yang digunakan. Input digital digunakan untuk mendeteksi perubahan logika biner pada pin tertentu. Adanya input digital memungkinkan mikrokontroler untuk dapat menerjemahkan 0V menjadi logika LOW dan 5V menjadi logika HIGH. Membaca sinyal digital pada mikrokontroller dapat menggunakan sintaks digitalRead(pin):
    Output digital terdiri dari dua buah logika, yaitu kondisi logika HIGH dan kondisi logika LOW. Untuk menghasilkan output kita dapat menggunakan sintaks digitalWrite(pin,nilai); yang sebelumnya pin sudah diset ke mode OUTPUT, lalu parameter kedua adalah set nilai HIGH atau LOW. Apabila pin diset dengan nilai HIGH, maka voltase pin tersebut akan diset ke 5V atau 3.3V dan bila pin diset ke LOW, maka voltase pin tersebut akan diset ke 0V.


4.2 PWM 
    PWM (Pulse Width Modulation) adalah salah satu teknik modulasi dengan mengubah lebar pulsa (duty cylce) dengan nilai amplitudo dan frekuensi yang tetap. Satu siklus pulsa merupakan kondisi high kemudian berada di zona transisi ke kondisi low. Lebar pulsa PWM berbanding lurus dengan amplitudo sinyal asli yang belum termodulasi. 
    Duty Cycle adalah perbandingan antara waktu ON (lebar pulsa High) dengan perioda. Duty Cycle biasanya dinyatakan dalam bentuk persen (%). 
Gambar 11. Duty Cycle

Duty Cycle = tON / ttotal
Ton             =  Waktu ON atau Waktu dimana tegangan keluaran berada pada posisi tinggi (high atau 1) 
Toff            = Waktu OFF atau Waktu dimana tegangan keluaran berada pada posisi rendah (low atau 0) 
Ttotal      = Waktu satu siklus atau penjumlahan antara Ton dengan Toff atau disebut juga dengan “periode satu gelombang” 

        Pada Raspberry Pi Pico, terdapat blok PWM yang terdiri dari 8 unit (slice), dan masing-masing slice dapat mengendalikan dua sinyal PWM atau mengukur frekuensi serta duty cycle dari sinyal input. Dengan total 16 output PWM yang dapat dikontrol, semua 30 pin GPIO bisa digunakan untuk PWM. Setiap slice memiliki fitur utama seperti penghitung 16-bit, pembagi clock presisi, dua output independen dengan duty cycle 0–100%, serta mode pengukuran frekuensi dan duty cycle. PWM pada Raspberry Pi Pico juga mendukung pengaturan fase secara presisi serta dapat diaktifkan atau dinonaktifkan secara bersamaan melalui satu register kontrol global, sehingga memungkinkan sinkronisasi beberapa output untuk aplikasi yang lebih kompleks.


4.3 ADC 
     Sistem mikrokontroler hanya dapat mengolah data dalam bentuk bine. Oleh sebab itu setiap data analog yang akan diproses oleh mikrokontroler harus diubah kedalam bentuk kode biner dimana Pengubahan data analog kedalam bentuk biner ditangani oleh piranti ADC. Tegangan masukan ADC didapatkan dari tranducer. Tranducer adalah pengubah besaran kontinu, dalam hal ini adalah tegangan DC 12 Volt. Tegangan listrik yang dihasilkan oleh tranducer yang berubah secara kontinu pada suatu kisaran tertentu disebut tegangan analog, dan tegangan analog ini diubah oleh ADC menjadi bentuk digital yang sebanding dengan tegangan analognya.

Ada 4 karakteristik yang perlu diperhatikan dalam pemilihan komponen ADC, antara lain :

1)     Resolusi

Merupakan spesifikasi terpenting untuk ADC, yaitu jumlah langkah dari sinyal skala penuh yang dapat dibagi dan juga ukuran dari langkah_langkah, dinyatakan dalam jumlah bit yang ada dalam satu kata (digital words), ukuran langkah terkecil sebagai persen dari skala penuh atau dapat juga langkah terkecil dalam miliVolt (untuk skala penuh yang dihasilkan).

2)     Akurasi

Adalah jumlah dari semua kesalahan, misalnya kesalahan non linieritas, skala penuh, skala nol, dan lain-lain. Dapat juga menyatakan perbedaan antara tegangan masukan analog secara teoritis yang dibutuhkan untuk menghasilkan suatu kode biner tertentu terhadap tegangan masukan nyata yang menghasilkan tegangan kode biner tersebut.

3)     Waktu Konversi

Adalah waktu yang dibutuhkan untuk mengubah setiap sampel ke bentuk digital, atau yang diperlukan untuk menyelesaikan suatu konversi.

4)     Fungsi Transfer Ideal ADC

 

Fungsi transfer ideal untuk konverter analog-ke-digital (ADC, analog-to-digital converter) berbentuk garis lurus. Bentuk ideal garis lurus hanya dapat dicapai dengan konverter data beresolusi tak-hingga. Karena tidak mungkin mendapatkan resolusi tak hingga, maka secara praktis fungsi tranfer ideal tersebut berbentuk gelombang tangga seragam seperti terlihat pada Gambar 1.5 Semakin tinggi resolusi ADC, semakin halus gelombang tangga tersebut. ADC ideal secara unik dapat merepresentasikan seluruh rentang masukan analog tertentu dengan sejumlah kode keluaran digital. Pada gambar 1 ditunjukkan bahwa setiap kode digital merepresentasikan sebagian dari rentang masukan analog total. Oleh karena skala analog bersifat kontinyu sedangkan kode digital bersifat diskrit, maka ada proses kuantisasi yang menimbulkan kekeliruan (galat). Apabila jumlah kode diskritnya (yang mewakili rentang masukan analog) ditambah, maka lebar undak (step width) akan semakin kecil dan fungsi transfer akan mendekati garis lurus ideal. Lebar satu undak (step) didefinisikan sebagai 1 LSB (least significant bit) dan unit ini digunakan sebagai unit rujukan untuk besaran-besaran lain dalam spesifikasi peranti konversi data. Unit 1 LSB itu juga digunakan untuk mengukur resolusi konverter karena ia juga menggambarkan jumlah bagian atau unit dalam rentang analog penuh.

Resolusi ADC selalu dinyatakan sebagai jumlah bit-bit dalam kode keluaran digitalnya. Misalnya, ADC dengan resolusi n-bit memiliki 2n kode digital yang mungkin dan berarti juga memiliki 2n tingkat undak (step level). Meskipun demikian, karena undak pertama dan undak terakhir hanya setengah dari lebar penuh, maka rentang skala-penuh (FSR, full-scale range) dibagi dalam (2n -1) lebar undak. Karenanya


4.4 Interrupt
    Interrupt adalah mekanisme yang memungkinkan suatu instruksi atau perangkat I/O untuk menghentikan sementara eksekusi normal prosesor agar dapat diproses lebih dulu seperti memiliki prioritas tertinggi. Misalnya, saat prosesor menjalankan tugas utama, ia juga dapat terus memantau apakah ada kejadian atau sinyal dari sensor yang memicu interrupt. Ketika terjadi interrupt eksternal, prosesor akan menghentikan sementara tugas utamanya untuk menangani interrupt terlebih dahulu, kemudian melanjutkan eksekusi normal setelah selesai menangani interrupt tersebut. Fungsi yang menangani interrupt disebut Interrupt Service Routine (ISR), yang dieksekusi secara otomatis setiap kali interrupt terjadi.
        Pada RP2040, setiap inti prosesor dilengkapi dengan ARM Nested Vectored Interrupt Controller (NVIC) yang memiliki 32 jalur interrupt. Namun, hanya 26 jalur pertama yang digunakan, sedangkan jalur IRQ 26 hingga 31 tidak aktif. Setiap NVIC menerima interrupt yang sama, kecuali untuk GPIO, di mana setiap bank GPIO memiliki satu interrupt per inti. Ini berarti, misalnya, core 0 dapat menerima interrupt dari GPIO 0 di bank 0, sementara core 1 menerima interrupt dari GPIO 1 di bank yang sama secara independen. Jika diperlukan, inti prosesor masih bisa dipaksa masuk ke interrupt handler dengan menulis bit 26 hingga 31 pada register NVIC ISPR.      


4.5 MILLIS
    Berbeda dengan delay(), yang menghentikan eksekusi program selama waktu tertentu, millis() memungkinkan sistem untuk menjalankan beberapa tugas secara bersamaan tanpa menghentikan proses lainnya. Hal ini berguna dalam aplikasi yang memerlukan multitasking berbasis waktu, seperti pengendalian sensor, komunikasi serial, atau implementasi sistem real-time. 
    Pada platform seperti Raspberry Pi Pico yang sering diprogram menggunakan MicroPython, fungsi utime.ticks_ms() menyediakan fungsionalitas yang sepadan. Fungsi ini mengembalikan nilai penghitung milidetik yang bersifat monotonik (terus bertambah) sejak sistem dimulai atau modul utime dimuat. Sama seperti millis() dan HAL_GetTick(), nilai ticks_ms() juga akan mengalami wrap-around (kembali ke nol) setelah mencapai batasnya, sehingga penggunaan fungsi utime.ticks_diff() menjadi penting untuk perhitungan selisih waktu yang akurat dan aman terhadap overflow. Dengan demikian, utime.ticks_ms() memungkinkan implementasi pola penjadwalan dan delay non-blocking yang serupa untuk menciptakan aplikasi yang responsif di lingkungan MicroPython.


4.6 COMMUNICATION
4.6.1 UART (Universal Asynchronous Receiver Transmitter)
     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.

Gambar 12. 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, kemudia di transfer secara parallel ke data bus penerima.

4.6.2 I2C (Inter-Integrated Circuit) 
         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.
Gambar 13. 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.6.3 SPI (Series Peripheral Interface) 
         Serial Peripheral Interface (SPI) merupakan salah satu mode komunikasi serial synchronous berkecepatan tinggi yang dimiliki oleh STM32F407VGT6 dan Raspberry Pi Pico. Komunikasi SPI membutuhkan 3 jalur utama yaitu MOSI, MISO, dan SCK, serta jalur tambahan SS/CS. Melalui komunikasi ini, data dapat saling dikirimkan baik antara mikrokontroler maupun antara mikrokontroler dengan perangkat periferal lainnya. 

MOSI (Master Output Slave Input)
    Jika dikonfigurasi sebagai master, maka pin MOSI berfungsi sebagai output. Sebaliknya, jika dikonfigurasi sebagai slave, maka pin MOSI berfungsi sebagai input. 
• MISO (Master Input Slave Output) 
    Jika dikonfigurasi sebagai master, maka pin MISO berfungsi sebagai input. Sebaliknya, jika dikonfigurasi sebagai slave, maka pin MISO berfungsi sebagai output. 
• SCLK (Serial Clock) 
    Jika dikonfigurasi sebagai master, maka pin SCLK bertindak sebagai output untuk memberikan sinyal clock ke slave. Sebaliknya, jika dikonfigurasi sebagai slave, maka pin SCLK berfungsi sebagai input untuk menerima sinyal clock dari master. 
• SS/CS (Slave Select/Chip Select) 
    Jalur ini digunakan oleh master untuk memilih slave yang akan dikomunikasikan. Pin SS/CS harus dalam keadaan aktif (umumnya logika rendah) agar komunikasi dengan slave dapat berlangsung.

Gambar 14. 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. 


4.7 STM32F103C8T6
      STM32F103C8T6 adalah salah satu mikrokontroler dari keluarga STM32 yang dikembangkan oleh STMicroelectronics. Mikrokontroler ini berbasis arsitektur ARM Cortex-M3 32-bit yang dirancang untuk memenuhi kebutuhan sistem tertanam dengan performa tinggi dan konsumsi daya rendah (STMicroelectronics, 2022). Chip ini termasuk dalam seri STM32F1 dan memiliki spesifikasi teknis yang cukup andal, seperti kecepatan clock hingga 72 MHz, memori flash sebesar 64 KB, dan RAM sebesar 20 KB. Selain itu, mikrokontroler ini dilengkapi dengan fitur ADC 12-bit sebanyak 10 kanal, serta antarmuka komunikasi digital seperti USART, SPI, dan I2C yang banyak digunakan dalam sistem monitoring dan kontrol otomatis (Mazidi, Naimi, & Naimi, 2018).


Gambar 15.Konfigurasi Pin STM32

Keunggulan lainnya dari STM32F103C8T6 adalah fleksibilitas dalam pemrograman. Mikrokontroler ini dapat diprogram menggunakan berbagai platform pengembangan seperti STM32CubeIDE, Keil µVision, maupun Arduino IDE melalui STM32duino bootloader, sehingga mendukung kebutuhan pengguna pemula hingga profesional (Valvano, 2012). Board minimalis seperti “Blue Pill” yang menggunakan chip ini juga banyak dipilih karena harga yang terjangkau dan kemudahan dalam integrasi dengan sensor maupun aktuator. Mikrokontroler ini sangat cocok diterapkan dalam berbagai aplikasi, mulai dari otomasi rumah tangga, pengendali motor, sistem sensor lingkungan, hingga proyek berbasis Internet of Things (IoT) (Patterson, 2017).

STM32F103C8T6 adalah mikrokontroler 32-bit yang berbasis pada arsitektur ARM Cortex-M3 dan termasuk dalam keluarga STM32F1 series. Berikut adalah spesifikasi utamanya:

Fitur

Spesifikasi

Arsitektur CPU

ARM Cortex-M3 (32-bit RISC)

Frekuensi Clock Maksimum

72 MHz

Memori Flash

64 KB

SRAM (RAM)

20 KB

Jumlah GPIO (General I/O)

Hingga 37 pin I/O

Jumlah ADC (Analog to Digital)

2 ADC 12-bit, hingga 10 kanal input

DAC

Tidak tersedia (perlu eksternal jika diperlukan)

Timer

3 timer 16-bit + 1 timer 16-bit advanced (PWM, dll)

Komunikasi Serial

USART (x3), SPI (x2), I2C (x2)

USB

Full Speed USB 2.0 (Device only)

Watchdog Timer

Independent dan window watchdog

Operating Voltage

2.0 V – 3.6 V

Tegangan I/O

3.3 V (toleran hingga 5V input pada beberapa pin)

Tegangan Referensi ADC (Vref)

3.3 V

Operating Temperature

-40°C hingga +85°C

Packaging

LQFP-48 (48 pin)

Bootloader Interface

UART, USB (melalui DFU), atau SWD

Ukuran Fisik Board Blue Pill

Sekitar 5.3 cm x 2.2 cm


Bagian-bagian pendukung
1. Regulator Tegangan (Voltage Regulator 3.3V)
  • Berfungsi menurunkan dan menstabilkan tegangan input (biasanya dari USB atau sumber 5V) menjadi 3.3V yang dibutuhkan oleh inti STM32F103C8T6.

  • Komponen ini umumnya bertipe AMS1117-3.3.

  • Sangat penting karena STM32F103 hanya toleran terhadap tegangan 3.3V, meskipun beberapa pin bersifat 5V-tolerant.

2. USB Mini Port / Micro USB Port

  • Digunakan sebagai antarmuka pemrograman (melalui USB to Serial/DFU bootloader).

  • Juga dapat digunakan untuk memberi catu daya ke board saat development/testing.

3. Crystal Oscillator (8 MHz dan 32.768 kHz)

  • Crystal 8 MHz: Digunakan sebagai sumber clock utama (HSE – High-Speed External).

  • Crystal 32.768 kHz: Digunakan untuk fungsi Real Time Clock (RTC).

  • Kristal ini meningkatkan akurasi waktu dan kestabilan frekuensi sistem.

4. LED Onboard (PC13)

  • Merupakan LED indikator bawaan pada pin PC13.

  • Digunakan untuk debugging sederhana, misalnya untuk menguji apakah program berhasil dijalankan.

5. Push Button Reset

  • Tombol ini digunakan untuk me-reset sistem.

  • Terhubung ke pin NRST, tombol ini mengembalikan sistem ke kondisi awal tanpa mematikan daya.

6. Push Button BOOT0

  • Digunakan untuk memilih mode boot:

    • BOOT0 = LOW → boot dari Flash (normal mode).

    • BOOT0 = HIGH → boot dari System Memory (mode pemrograman via USB/serial).

  • Sangat berguna saat ingin mem-flash program pertama kali ke chip.

7. Pin Header (Male/Female Pin)

  • Tersedia dalam 2 baris di sisi kiri dan kanan board.

  • Terdiri dari pin digital, analog (ADC), komunikasi (UART, I2C, SPI), serta pin VCC dan GND.

  • Ini adalah antarmuka utama untuk menghubungkan sensor, aktuator, dan modul eksternal lainnya.

8. IC USB to Serial (pada beberapa board, opsional)

  • Pada beberapa versi Blue Pill yang dimodifikasi, terdapat chip seperti CH340 atau CP2102 yang memungkinkan pemrograman langsung via USB.

  • Namun pada board standar, konversi USB ke serial dilakukan secara eksternal menggunakan USB-to-Serial converter.

9. Konektor SWD (Serial Wire Debug)

  • Digunakan untuk melakukan debugging atau pemrograman langsung melalui debugger eksternal (seperti ST-Link V2).

  • Pin penting di sini: SWCLK, SWDIO, GND, dan 3.3V.

4.8 Sensor Water Level


Gambar 16. Sensor water level

        Sensor water level atau sensor ketinggian air adalah perangkat elektronik yang digunakan untuk mendeteksi keberadaan, ketinggian, atau volume air dalam suatu wadah atau penampungan. Sensor ini banyak digunakan dalam sistem otomatisasi, seperti pengisian tangki, pemantauan banjir, sistem irigasi pintar, dan pengolahan air. Terdapat berbagai jenis sensor water level yang umum digunakan, antara lain sensor pelampung (float switch), sensor ultrasonik, dan sensor berbasis konduktivitas atau resistansi. Pada sistem berbasis mikrokontroler, sensor water level sering kali digunakan untuk memberikan masukan logika (digital) atau nilai tegangan (analog) yang mencerminkan ketinggian air dalam suatu media (Patterson, 2017).

Dalam proyek ini digunakan sensor water level berbasis tegangan analog yang menghasilkan sinyal output proporsional terhadap tinggi air. Sensor ini bekerja dengan prinsip perubahan konduktivitas atau resistansi antara dua atau lebih titik yang bersentuhan dengan air. Semakin tinggi permukaan air, maka semakin besar tegangan yang dihasilkan oleh sensor. Tegangan ini kemudian dibaca oleh mikrokontroler melalui pin ADC (Analog to Digital Converter), seperti pada pin PA4 pada STM32F103C8T6. Nilai ADC ini dapat dikonversi ke satuan ketinggian (cm) dengan melakukan kalibrasi berdasarkan jangkauan maksimum sensor.

Sensor water level yang digunakan dalam proyek ini berperan penting dalam pengambilan keputusan logika sistem. Misalnya, ketika tinggi air di penampungan akhir telah mencapai ambang batas tertentu, mikrokontroler akan mengirimkan sinyal untuk mematikan relay, yang artinya menghentikan aliran air nira dari penampungan sementara. Penggunaan sensor ini meningkatkan efisiensi dan keamanan sistem pemanenan otomatis karena mengurangi risiko tumpahnya air atau kekurangan pasokan (Mazidi, Naimi, & Naimi, 2018). Dengan demikian, sensor water level menjadi elemen penting dalam membangun sistem kontrol cairan yang cerdas dan terintegrasi.

Grafik Respon

Gambar 17.Grafik Respon water level



Spesifikasi Teknis Sensor Water Level Analog

Parameter

Spesifikasi

Jenis Sensor

Sensor Water Level Analog (Linear Output)

Prinsip Kerja

Resistansi/Konduktivitas berbasis elektrolit

Tegangan Operasi

3.3 V – 5 V DC

Tegangan Output

0 V – 3.3 V (proposional terhadap tinggi air)

Jarak Pengukuran Efektif

0 – 100 cm (tergantung panjang probe/sensor yang digunakan)

Tipe Output

Analog Voltage

Interface ke Mikrokontroler

ADC (Analog to Digital Converter) input

Akurasi Pengukuran

±5% (tergantung kalibrasi dan kondisi air)

Bahan Sensor

PCB anti korosi, konduktor logam, atau kawat stainless (tergantung tipe)

Tahan Air

Tidak sepenuhnya waterproof (perlu pelindung tambahan jika terendam penuh)

Kondisi Kerja

0–60 °C, kelembapan 20%–95% RH

Kelebihan

Sederhana, murah, mudah diintegrasikan dengan mikrokontroler

Kekurangan

Akurasi terbatas, sensitif terhadap korosi dan kualitas air


Digunakan untuk membaca sensor analog seperti suhu atau level air.

Pin

Fungsi ADC

PA0

ADC Channel 0

PA1

ADC Channel 1

PA2

ADC Channel 2

PA3

ADC Channel 3

PA4

ADC Channel 4

PA5

ADC Channel 5

PA6

ADC Channel 6

PA7

ADC Channel 7

PB0

ADC Channel 8

PB1

ADC Channel 9





4.9 Sensor Ultrasonik (HCSR04)

Gambar 18. Sensor Ultrasonik

        Sensor ultrasonik merupakan sensor yang menggunakan gelombang ultrasonik. Gelombang ultrasonik yaitu gelombang yang umum digunakan untuk mendeteksi keberadaan suatu benda dengan memperkirakan jarak antara sensor dan benda tersebut. Sensor ini berfungsi untuk mengubah besaran fisis (bunyi) menjadi besaran listrik begitu pula sebaliknya. Gelombang ultrasonik memiliki frekuensi sebesar 20.000 Hz. Bunyi tersebut tidak dapat didengar oleh telinga manusia. Bunyi tersebut dapat didengar oleh hewan tertentu seperti anjing, kelelawar dan kucing. Bunyi gelombang ultrasonik dapat merambat melalui zat cair, padat dan gas. Sensor ini bekerja dengan memancarkan pulsa ultrasonik dari pemancar dan kemudian menerima gema yang dipantulkan kembali oleh objek di depannya melalui penerima.

Ultrasonic Sensor Pinout Configuration

Pin Number

Pin Name

Description

1

Vcc

The Vcc pin powers the sensor, typically with +5V

2

Trigger

Trigger pin is an Input pin. This pin has to be kept high for 10us to initialize measurement by sending US wave.

3

Echo

Echo pin is an Output pin. This pin goes high for a period of time which will be equal to the time taken for the US wave to return back to the sensor.

4

Ground

This pin is connected to the Ground of the system.

HC-SR04 Sensor Features

  • Operating voltage: +5V
  • Theoretical  Measuring Distance: 2cm to 450cm
  • Practical Measuring Distance: 2cm to 80cm
  • Accuracy: 3mm
  • Measuring angle covered: <15°
  • Operating Current: <15mA
  • Operating Frequency: 40Hz




Gambar 19. Grafik jarak banding waktu sensor ultrasonic


        Berdasarkan grafik di atas dapat disimpulkan bahwa bahwa sensor ultrasonik memiliki kinerja rendah dalam pengukuran pada jarak yang rendah. Kinerja sensor memiliki hasil yang akurat untuk pengukuran jarak jauh. Secara detail, cara kerja sensor ultrasonik adalah Sinyal dipancarkan oleh pemancar ultrasonik dengan frekuensi tertentu dan dengan durasi waktu tertentu. Sinyal tersebut berfrekuensi diatas 20kHz. Untuk mengukur jarak benda (sensor jarak), frekuensi yang umum digunakan adalah 40kHz. Sinyal yang dipancarkan akan merambat sebagai gelombang bunyi dengan kecepatan sekitar 340 m/s. Ketika menumbuk suatu benda, maka sinyal tersebut akan dipantulkan oleh benda tersebut. Setelah gelombang pantulan sampai di alat penerima, maka sinyal tersebut akan diproses untuk menghitung jarak benda tersebut. Jarak benda dihitung berdasarkan rumus: 
S = 340.t/2 
Keterangan: 
• S = jarak antara sensor ultrasonik dengan benda (bidang pantul) 
• t = selisih antara waktu pemancaran gelombang oleh transmitter dan waktu ketika gelombang pantul diterima receiver



Gambar 20. Visualisasi sinyal dari sensor ultrasonic



4.10 Sensor DS18B20





Gambar 21. Piezzoelektrik

    Sensor DS18B20 merupakan sensor suhu digital berbasis protokol 1-Wire yang dikembangkan oleh Dallas Semiconductor (sekarang Maxim Integrated). Sensor ini dirancang untuk mengukur suhu dalam rentang -55°C hingga +125°C dengan akurasi tinggi, yaitu sekitar ±0.5°C pada rentang suhu -10°C hingga +85°C (Maxim Integrated, 2020). DS18B20 mengeluarkan data suhu secara digital, sehingga tidak memerlukan ADC eksternal, dan mampu dihubungkan ke mikrokontroler hanya dengan satu pin data bersama resistor pull-up.

Salah satu keunggulan utama dari DS18B20 adalah kemampuannya untuk bekerja dalam mode parasitic power, yaitu mengambil daya dari pin data tanpa memerlukan catu daya terpisah. Sensor ini juga mendukung multiple devices dalam satu jalur komunikasi (multi-drop), karena tiap sensor memiliki alamat 64-bit unik, sehingga sangat fleksibel dalam sistem monitoring suhu berskala besar atau berbasis IoT.

Dalam implementasi proyek otomasi seperti sistem pemanenan air nira, sensor DS18B20 digunakan untuk memantau suhu lingkungan secara real-time. Jika suhu melebihi ambang batas (misalnya 30°C), sistem dapat mengaktifkan buzzer atau aktuator lainnya untuk menjaga kualitas dan keamanan nira yang dipanen. Dengan respon yang stabil dan akurat, DS18B20 menjadi pilihan populer dalam berbagai aplikasi industri, rumah pintar, dan pertanian berbasis sensor.


Grafik Respon :
Gambar 22. Grafik Respon DS18B20

DS18B20 tersedia dalam berbagai bentuk (TO-92, waterproof probe), namun konfigurasi pin dasarnya tetap sama, yaitu memiliki 3 pin utama:

Nomor PinNama PinFungsi
1GNDGround, dihubungkan ke GND mikrokontroler
2DQData, jalur komunikasi 1-Wire (di-pull-up dengan resistor 4.7kΩ)
3VDDCatu daya (3.0V – 5.5V), atau di-ground-kan untuk mode parasit


Spesifikasi Teknis Sensor DS18B20

ParameterSpesifikasi
Jenis SensorSensor suhu digital berbasis protokol 1-Wire
Rentang Pengukuran Suhu-55°C hingga +125°C
Akurasi Pengukuran±0.5°C (dalam rentang -10°C hingga +85°C)
Resolusi Pengukuran9-bit hingga 12-bit (default: 12-bit = 0.0625°C per LSB)
Tegangan Operasi (VDD)3.0V hingga 5.5V
Tipe OutputDigital (komunikasi data satu jalur – 1-Wire)
Waktu Konversi SuhuMaksimal 750 ms (pada resolusi 12-bit)
Mode DayaNormal dan parasitic power mode (tanpa VDD eksternal)
Alamat Unik64-bit ROM code unik untuk identifikasi di jaringan multi-sensor
Konsumsi Arus<1 mA selama konversi suhu; <1 µA saat standby
Bentuk FisikTO-92 (mirip transistor), atau bentuk probe tahan air (waterproof)
Kompatibilitas MikrokontrolerKompatibel dengan Arduino, STM32, ESP32, Raspberry Pi, dan lainnya
Komunikasi Maksimal KabelHingga 100 meter (tergantung kualitas kabel dan topologi jaringan)



4.11 Soleniod Valve



Gambar 23. Motor servo
        
        Solenoid valve atau katup solenoida adalah komponen elektromekanis yang digunakan untuk mengontrol aliran cairan atau gas dengan prinsip kerja berbasis medan magnet. Katup ini bekerja secara otomatis dengan menggunakan lilitan kawat (koil) yang menghasilkan medan magnet saat dialiri arus listrik. Medan magnet ini kemudian menggerakkan plunger (batang logam ferromagnetik) untuk membuka atau menutup jalur aliran fluida. Saat tidak dialiri listrik, pegas akan mengembalikan plunger ke posisi semula, sehingga katup kembali ke posisi default (normal tertutup atau normal terbuka) (Patterson, 2017).

Terdapat dua jenis utama solenoid valve berdasarkan kondisi default-nya:

  1. Normally Closed (NC): jalur tertutup saat tidak dialiri listrik, dan terbuka saat koil aktif.

  2. Normally Open (NO): jalur terbuka saat tidak dialiri listrik, dan tertutup saat koil aktif.

Dalam sistem otomatis seperti pemanenan air nira, solenoid valve biasanya digunakan untuk membuka dan menutup aliran cairan secara otomatis berdasarkan input dari sensor. Ketika sensor level air mendeteksi bahwa penampungan akhir belum penuh, mikrokontroler akan mengaktifkan solenoid valve sehingga cairan nira dapat mengalir dari tangki atas ke tangki bawah. Ketika sensor mendeteksi bahwa volume sudah mencukupi, mikrokontroler akan memutus aliran listrik ke solenoid valve, sehingga katup menutup secara otomatis.

Keunggulan utama dari solenoid valve adalah waktu respon yang cepat, desain kompak, dan kemudahan integrasi dengan sistem kontrol otomatis berbasis mikrokontroler seperti STM32. Solenoid valve yang digunakan dalam proyek ini biasanya beroperasi pada tegangan 12V DC atau 24V DC dan dikendalikan melalui relay yang diaktifkan oleh sinyal digital dari mikrokontroler (Mazidi, Naimi, & Naimi, 2018).

Spesifikasi Teknis Solenoid Valve 12V DC

ParameterSpesifikasi Umum
TipeNormally Closed (NC)
Tegangan Operasi12 Volt DC
Daya Konsumsi3 – 5 Watt (tergantung model)
Arus Kerja±250 – 420 mA
Tekanan Kerja0.02 – 0.8 MPa (2 – 8 bar)
Material Tubuh ValvePlastik ABS, Nylon, atau kuningan (brass)
Ukuran Inlet/Outlet1/2 inci (standard), tersedia juga ukuran 1/4", 3/4", dan 1"
Cocok untukAir bersih, air minum, cairan tidak korosif
Suhu Operasional0°C – 80°C
Tipe PengendalianElektromagnetik (via coil)
Waktu Respon< 1 detik
Umur Pemakaian±100.000 siklus hidup (tergantung kondisi kerja)
Berat±120–200 gram (tergantung bahan dan ukuran)
PerlindunganBeberapa model memiliki rating IP (misalnya IP54 untuk tahan percikan air ringan)


4.12 LCD 16x2 
Gambar 24. LCD 16X2


        Pengertian LCD (Liquid Crystal Display), LCD (Liquid Crystal Display) adalah jenis tampilan layar yang menggunakan senyawa cair yang memiliki struktur molekul polar, ditempatkan di antara dua elektroda transparan. Ketika medan listrik diberikan, molekul-molekul tersebut akan menyesuaikan posisinya pada medan dan membentuk susunan kristalin yang mempolarisasi cahaya yang melaluinya. Citra dihasilkan dengan menggabungkan kondisi nyala dan mati dari piksel-piksel yang membentuk layar LCD. Umumnya, LCD yang dijual di pasaran telah dilengkapi dengan sirkuit terintegrasi sehingga pengguna dapat dengan mudah mengontrol tampilan LCD menggunakan mikrokontroler dan mengirimkan data melalui pin input yang telah tersedia. 

Gambar 25. Stuktur penyusun LCD 



Spesifikasi LCD I2C:
Format tampilan : 16 x 2 karakter
Pengontrol bawaan : ST 7066 (atau setara)
Siklus kerja : 1/16
5 x 8 titik termasuk kursor
Supply + 5 V (juga tersedia untuk + 3 V)
LED dapat digerakkan oleh pin 1, pin 2, pin 15, pin 16 atau A dan K
N.V. opsional untuk supply + 3 V
Kontrol pin : SDA dan SCL
Built-in potensio untuk adjust brightness
Built-in jumper untuk menon-aktifkan backlight
Dimensi : 40mm x 18mm
Berat : 20 gram


Pinout LCD I2C

Pin name

Pin type

Pin description

GND

Power

Ground

VCC

Power

Voltage Input

SDA

I2C Data

Serial Data

SCL

I2C Clock

Serial Clock

A0

Jumper

I2C Address Selection 1

A1

Jumper

I2C Address Selection 2

A2

Jumper

I2C Address Selection 3

Backlight

Jumper

Control Backlight of panel



4.13 Buzzer




Gambar 26. Buzzer


        Buzzer merupakan komponen elektronik yang mampu menghasilkan getaran suara dalam bentuk gelombang bunyi. Getaran suara diproduksi saat buzzer menerima tegangan listrik yang sesuai dengan spesifikasi dan karakteristiknya. Buzzer sering digunakan sebagai alarm karena cara penggunaannya yang sederhana: cukup berikan tegangan input untuk menghasilkan getaran suara yang dapat didengar.

Spesifikasi Buzzer:
Tegangan pengoperasian : 5V 
Arus  : ≤30mA 
Keluaran suara pada 10cm : ≥85dB 
Frekuensi resonansi : 2300 ±300Hz 
Nada : Berkelanjutan 
Suhu operasional : -25°C hingga +80°C 
Suhu penyimpanan : -30°C hingga +85°C 
Berat : 2g

Pinout Buzzer:
Pin VCC : Positif
Pin GND : Negatif



4.14 Kabel Jumper


Gambar 27. Jumper

    Kabel jumper adalah kabel elektrik yang memiliki pin konektor di setiap ujungnya dan memungkinkan untuk menghubungkan dua komponen tanpa memerlukan solder. Biasanya kabel jamper digunakan pada breadboard atau alat prototyping lainnya agar lebih mudah untuk mengutak-atik rangkaian. Konektor yang ada pada ujung kabel terdiri atas dua jenis yaitu konektor jantan (male connector) dan konektor betina (female connector).
Jenis-jenis kabel jumper meliputi:
a. Kabel Jumper Male-to-Male (M-M): Kabel ini memiliki konektor male di kedua ujungnya. Digunakan untuk menghubungkan dua titik pada breadboard atau menghubungkan titik pada breadboard dengan pin header pada mikrokontroler atau modul.
b. Kabel Jumper Male-to-Female (M-F): Kabel ini memiliki konektor male di satu ujung dan konektor female di ujung lainnya. Biasanya digunakan untuk menghubungkan pin header pada mikrokontroler atau modul dengan perangkat yang memiliki konektor male.
c. Kabel Jumper Female-to-Female (F-F): Kabel ini memiliki konektor female di kedua ujungnya. Umumnya digunakan untuk menghubungkan dua perangkat yang memiliki konektor male, seperti menghubungkan modul sensor dengan mikrokontroler


4.15 Beardbord

Gambar 28. Beardboard

        Breadboard terdiri dari lubang yang digunakan untuk menempatkan terminal komponen dan kemudian lubang ini dihubungkan satu sama lain menggunakan berbagai kabel/kawat.  Dua baris pertama (atas) dan dua baris terakhir (bawah) papan breadboard digunakan untuk positif (satu baris pertama dan terakhir dua) dan untuk negatif (baris lain dari dua pertama dan terakhir). Pada gambar breadboar di atas, dua baris pertama (atas) dan terakhir (bawah) papan breadboard terdiri dari 5 lubang di setiap kolom (total 10 kolom) saling terhubung secara horizontal satu sama lain secara internal. Jika terminal sumber daya terhubung dalam satu lubang satu kolom di baris atas atau bawah (salah satu dari dua baris), maka daya listrik yang sama dapat diambil dari lima lubang berturut-turut di kolom yang sama.




5. Flowchart dan Listing Program[Kembali]

  • Flowchart






  • Listing Program
#include <Arduino.h> #include <OneWire.h> #include <DallasTemperature.h> #include <Wire.h> #include <LiquidCrystal_I2C.h> // === Pin definisi === #define TRIGGER_PIN PA0 // Trigger Ultrasonik #define ECHO_PIN PA1 // Echo Ultrasonik #define LED_PIN PA7 // Output LED #define TEST_PIN PA2 // Output Test pin #define POT_PIN PA8 // Potensiometer analog input #define BUZZER_PIN PA5 // Buzzer #define LEVEL_PIN PA4 // Sensor Water Level (analog input) #define RELAY_PIN PA6 // Relay #define ONE_WIRE_BUS PA3 // DS18B20 // === Konstanta === const float TINGGI_PENAMPUNG = 50.0; // cm const float BATAS_DEKAT_SENSOR = 10.0; // cm const float JARAK_MAKS_VALID = 50.0; // cm const float BATAS_SUHU = 30.0; // derajat Celsius // === Objek sensor suhu === OneWire oneWire(ONE_WIRE_BUS); DallasTemperature sensors(&oneWire); // === Objek LCD I2C === LiquidCrystal_I2C lcd(0x27, 16, 2); // Ganti alamat jika perlu void setup() { // === Setup pin === pinMode(TRIGGER_PIN, OUTPUT); pinMode(ECHO_PIN, INPUT); pinMode(LED_PIN, OUTPUT); pinMode(TEST_PIN, OUTPUT); pinMode(POT_PIN, INPUT_ANALOG); pinMode(BUZZER_PIN, OUTPUT); pinMode(RELAY_PIN, OUTPUT); pinMode(LEVEL_PIN, INPUT_ANALOG); digitalWrite(TRIGGER_PIN, LOW); // === Serial dan Sensor === Serial.begin(9600); sensors.begin(); // === LCD === Wire.begin(); // Default STM32F103C8T6: PA7=SDA, PA6=SCL lcd.begin(16, 2); lcd.backlight(); lcd.setCursor(0, 0); lcd.print("Sistem Aktif"); delay(2000); lcd.clear(); } void loop() { float jarakKeAir = bacaJarakUltrasonik(); float tinggiAir = -1; // === Potensiometer kontrol TEST_PIN === int potValue = analogRead(POT_PIN); digitalWrite(TEST_PIN, (potValue > 2048) ? HIGH : LOW); // === Validasi ultrasonik === if (jarakKeAir >= 0 && jarakKeAir <= JARAK_MAKS_VALID) { tinggiAir = TINGGI_PENAMPUNG - jarakKeAir; digitalWrite(LED_PIN, (jarakKeAir <= BATAS_DEKAT_SENSOR) ? HIGH : LOW); } else { digitalWrite(LED_PIN, LOW); jarakKeAir = -1; tinggiAir = -1; } // === Sensor suhu DS18B20 === sensors.requestTemperatures(); float suhu = sensors.getTempCByIndex(0); if (suhu > BATAS_SUHU) { digitalWrite(BUZZER_PIN, HIGH); delay(200); digitalWrite(BUZZER_PIN, LOW); delay(200); } else { digitalWrite(BUZZER_PIN, LOW); } // === Sensor Water Level (analog PA4) === int sensorLevel = analogRead(LEVEL_PIN); float teganganLevel = sensorLevel * (3.3 / 4095.0); float ketinggianAirSensor = (teganganLevel / 3.3) * 200.0; // Skala 0–200 cm // === Relay aktif jika air ≥ 10 cm (PA4) === digitalWrite(RELAY_PIN, (ketinggianAirSensor >= 10.0) ? HIGH : LOW); // === Tampilkan di LCD === lcd.setCursor(0, 0); lcd.print("Suhu: "); lcd.print(suhu, 1); lcd.print((char)223); // Derajat lcd.print("C "); // Bersihkan sisa karakter lcd.setCursor(0, 1); lcd.print("T.Air: "); if (tinggiAir >= 0) { lcd.print(tinggiAir, 1); lcd.print("cm "); } else { lcd.print("Err "); } // === Debug ke Serial Monitor === Serial.print("Jarak ke permukaan air: "); Serial.print(jarakKeAir); Serial.print(" cm | Tinggi air: "); Serial.print(tinggiAir); Serial.print(" cm | Potensio: "); Serial.println(potValue); Serial.print("Suhu: "); Serial.print(suhu); Serial.print(" C | Sensor Level: "); Serial.print(ketinggianAirSensor); Serial.print(" cm | Relay: "); Serial.println((ketinggianAirSensor >= 10.0) ? "ON (Buka)" : "OFF (Tutup)"); delay(500); } // === Fungsi pembacaan sensor ultrasonik === float bacaJarakUltrasonik() { digitalWrite(TRIGGER_PIN, LOW); delayMicroseconds(2); digitalWrite(TRIGGER_PIN, HIGH); delayMicroseconds(10); digitalWrite(TRIGGER_PIN, LOW); long duration = pulseIn(ECHO_PIN, HIGH, 3000); // timeout 3ms if (duration > 0) { return (duration * 0.0343) / 2.0; // cm } else { return -1.0; } }






6. Rangkaian Simulasi dan Prinsip Kerja[Kembali]

  • Rangkaian Demo
  • Tampak Depan
  • Tampak Samping





  • Rangkaian Simulasi



  • Prinsip Kerja

      Rangkaian sistem ini dirancang untuk mengotomatisasi proses pengumpulan air nira dengan memanfaatkan sensor suhu (DS18B20), sensor ketinggian air (ultrasonik dan water level analog), serta aktuator berupa relay yang mengendalikan solenoid valve. Sistem dikendalikan oleh mikrokontroler STM32F103C8T6, dengan tampilan data ditampilkan di LCD I2C 16x2.

Berikut adalah alur kerja dari sistem berdasarkan kodingan:

  1. Inisialisasi Komponen
    Saat sistem dinyalakan, semua pin dikonfigurasi sesuai fungsinya (input/output), komunikasi serial dibuka, sensor suhu DS18B20 diinisialisasi, dan LCD menampilkan tulisan “Sistem Aktif”. Setelah 2 detik, layar dibersihkan untuk menampilkan pembacaan selanjutnya.

  2. Pembacaan Jarak dan Tinggi Air dari Sensor Ultrasonik
    Sensor ultrasonik membaca jarak dari sensor ke permukaan air dengan memancarkan gelombang ultrasonik dan menghitung waktu pantulnya. Hasil ini digunakan untuk menentukan tinggi air dalam tangki penampungan sementara.

    • Jika air berada dekat dengan sensor (≤ 10 cm), LED indikator akan menyala.

    • Jika jarak tidak valid (>50 cm atau tidak terdeteksi), sistem akan menganggap pembacaan error.

  3. Kontrol Manual via Potensiometer
    Potensiometer analog yang terhubung ke pin PA8 digunakan sebagai kontrol manual. Jika nilai ADC dari potensio lebih dari setengah skala (2048 dari 4095), maka pin TEST_PIN akan menyala (HIGH), yang bisa digunakan untuk menguji fungsi output.

  4. Pemantauan Suhu via Sensor DS18B20
    Sensor suhu digital DS18B20 mengukur suhu lingkungan. Jika suhu melebihi 30°C, buzzer akan berbunyi berkedip (on-off delay 200 ms), menandakan kondisi suhu terlalu tinggi yang bisa memengaruhi kualitas air nira.

  5. Pengukuran Level Air via Sensor Water Level Analog
    Sensor ini membaca tinggi air di penampungan akhir berdasarkan tegangan analog (dari 0–3.3V). Data ini dikonversi ke ketinggian (dalam persen atau cm). Jika ketinggian air sudah ≥ 30 cm, maka pin relay diaktifkan, membuka solenoid valve untuk menghentikan aliran nira dari tangki atas ke bawah.

  6. Tampilan LCD dan Debugging Serial
    Semua data penting seperti suhu dan tinggi air ditampilkan secara real-time di LCD 16x2 menggunakan protokol I2C. Selain itu, data lengkap dikirim juga ke port Serial untuk proses debugging atau logging.

  7. Fungsi Tambahan:

    • Fungsi bacaJarakUltrasonik() mengabstraksi proses pembacaan sensor ultrasonik agar kode utama tetap rapi.

    • Delay 500 ms digunakan sebagai waktu sampling antar pembacaan.


7. Video Simulasi[Kembali]




HTML download

Rangkaian Skematik download

Listing Program download

Video Simulasi Link

Library Sensor Ultrasonik download

Library I2C download

Datasheet Sensor Ultrasonik download

Datasheet Buzzer download

Datasheet Jumper download

Datasheet Sensor Water Level download

Datasheet Sensor Suhu ds18b20 download

Datasheet Relay 1 modul 12v download

Datasheet Selenoid Valve Nc12v download

Datasheet STM32F103C8T download

Datasheet LCD 16x2 download









Tidak ada komentar:

Posting Komentar

ELEKTRONIKA

 BAHAN PRESENTASI UNTUK MATA KULIAH  ELEKTRONIKA C Disusun Oleh : Abdul Hadi Aldoreza 2210952008 Dosen Pengampu : Dr. Darwison, M.T JURUSAN ...