Kamis, 02 April 2026

LA 2 Modul 1

 




MODUL 1

LAPORAN AKHIR 2


1. Prosedur [kembali]

  1. Persiapan Komponen:

    Siapkan mikrokontroler STM32 Nucleo, sensor (Flame & Float), serta aktuator (Relay, Buzzer, LED) sesuai daftar alat dan bahan.

  2. Perakitan Rangkaian:

    Hubungkan komponen pada breadboard mengikuti diagram gambar:

    • Input: Hubungkan Flame Sensor dan Float Switch ke pin input analog/digital STM32 (A0 dan A1) dengan resistor pull-down ke Ground.

    • Output: Hubungkan Relay, Buzzer, dan LED (melalui resistor) ke pin output digital STM32 (D2, D3, dan D4).

    • Daya: Hubungkan seluruh jalur VCC ke sumber tegangan dan jalur GND ke Ground bersama (common ground).

  3. Pemrograman:

    Unggah kode program ke STM32 untuk membaca data dari kedua sensor. Program harus memiliki logika:

    • Jika Float Switch mendeteksi tangki penuh/kosong, aktifkan Relay untuk mematikan/menyalakan pompa.

    • Jika Flame Sensor mendeteksi api, aktifkan Buzzer dan LED sebagai alarm bahaya.

  4. Pengujian Sensor:

    • Berikan simulasi api di depan Flame Sensor dan pastikan alarm (Buzzer/LED) aktif.

    • Tekan/gerakkan Float Switch untuk mensimulasikan level cairan dan pastikan Relay merespons (terdengar bunyi klik).

2. Hardware dan Diagram Blok [kembali]


LED

 Buzzer

Relay

Resistor

Breadboard

Flame Sensor

Float Sensor

Sumber tegangan

Ground


3. Rangkaian Simulasi dan Prinsip Kerja [kembali]


Prinsip Kerja:

Sistem kontrol otomatis tangki minyak ini bekerja dengan mengandalkan mikrokontroler STM32 Nucleo sebagai unit pemroses pusat yang mengintegrasikan data dari dua jenis sensor untuk mengendalikan output secara real-time. Prinsip kerja utamanya terbagi menjadi dua fungsi: kontrol level cairan dan sistem keselamatan. Pertama, Float Switch berfungsi sebagai sensor level yang mendeteksi ketinggian minyak; ketika minyak mencapai batas tertentu, sensor mengirimkan sinyal ke STM32 untuk mengaktifkan atau mematikan Relay, yang bertindak sebagai saklar otomatis bagi pompa pengisi.

Kedua, untuk aspek keselamatan, Flame Sensor secara kontinu memantau keberadaan radiasi infra merah dari api di sekitar tangki. Jika terdeteksi adanya api, mikrokontroler akan segera memicu Buzzer untuk mengeluarkan suara peringatan dan menyalakan LED sebagai indikator visual bahaya. Seluruh proses ini berjalan dalam sistem closed-loop (lingkar tertutup) untuk pengaturan level minyak, di mana kondisi aktual di dalam tangki terus diumpanbalikkan ke kontroler agar volume minyak tetap terjaga pada rentang aman tanpa intervensi manual.

4. Flowchart dan Listing Program[kembali]



Potongan kode tersebut merupakan bagian inisialisasi utama pada pemrograman mikrokontroler STM32 menggunakan HAL (Hardware Abstraction Layer) Library. Fungsi HAL_Init() mengawali proses dengan mengatur ulang semua periferal, menginisialisasi instruksi Flash interface, dan sistem SysTick. Selanjutnya, SystemClock_Config() mengonfigurasi sumber detak (clock) sistem agar mikrokontroler bekerja pada frekuensi yang diinginkan, sementara MX_GPIO_Init() berfungsi untuk mengatur konfigurasi pin-pin GPIO (seperti sensor dan aktuator pada proyek tangki Anda) baik sebagai input maupun output. Secara keseluruhan, bagian ini memastikan perangkat keras siap dan stabil sebelum menjalankan logika program utama di dalam loop.



Kode program ini merupakan loop utama (infinite loop) yang berfungsi sebagai otak kendali otomatis untuk memantau kondisi tangki secara terus-menerus. Program dimulai dengan membaca status input dari sensor api (Flame Sensor) dan sensor tingkat cairan (Float Switch) menggunakan fungsi HAL_GPIO_ReadPin.

Jika sensor api mendeteksi adanya api (GPIO_PIN_SET), sistem secara otomatis menyalakan LED dan Buzzer sebagai alarm peringatan, serta mematikan Relay (pompa) demi keamanan. Logika kontrol pompa juga diatur sedemikian rupa sehingga pompa akan mati jika api terdeteksi atau jika tangki sudah penuh. Sebaliknya, jika kondisi aman dan tangki belum penuh, pompa akan tetap menyala (GPIO_PIN_SET). Seluruh proses pemantauan ini diulang setiap 100 milidetik sesuai dengan jeda yang diatur pada fungsi HAL_Delay(100), memastikan respons sistem tetap cepat dan stabil.



Fungsi MX_GPIO_Init ini bertanggung jawab untuk melakukan konfigurasi perangkat keras pada pin-pin mikrokontroler agar sesuai dengan kebutuhan sistem kontrol tangki. Pertama, program mengaktifkan sinyal detak (clock) untuk GPIOA agar periferal tersebut dapat berfungsi. Selanjutnya, pin untuk sensor api dan pelampung dikonfigurasi sebagai Input dengan fitur pull-down untuk menjaga stabilitas sinyal saat sensor tidak aktif. Sementara itu, pin untuk LED, Buzzer, dan Relay diatur sebagai Output Push-Pull dengan kecepatan frekuensi rendah. Di akhir fungsi, terdapat instruksi HAL_GPIO_WritePin yang mengatur status awal Relay ke posisi SET (aktif), sehingga secara default pompa berada dalam kondisi menyala saat sistem pertama kali dijalankan.


Fungsi-fungsi ini merupakan komponen standar dalam proyek berbasis STM32CubeIDE untuk menangani infrastruktur dasar sistem. Fungsi SystemClock_Config bertugas mengatur sumber detak internal atau eksternal yang menentukan kecepatan kerja prosesor; dalam potongan kode ini, ia menggunakan konfigurasi default bawaan lingkungan pengembangan. Sementara itu, fungsi Error_Handler berperan sebagai mekanisme pengamanan terakhir jika terjadi kegagalan sistem atau kesalahan inisialisasi yang fatal. Dengan instruksi while(1) {}, program akan terjebak dalam lingkaran tak terbatas (mengunci sistem) untuk mencegah kerusakan lebih lanjut atau perilaku yang tidak terprediksi, sekaligus memberikan titik bagi pengembang untuk melakukan proses debugging saat terjadi galat.

5. Video Demo[kembali]

6. Kondisi [kembali]

Kondisi 4: Sistem Kontrol Otomatis Tangki Minyak

7. Video Simulasi [kembali]

...

8. Download File [kembali]


LA 2 Modul 1

  [KEMBALI KE MENU SEBELUMNYA] DAFTAR ISI 1. Prosedur 2. Hardware dan Diagram Blok 3. Rangkaian Simulasi dan Prinsip Kerja ...