MODUL 2
MODUL 2
1. Pendahuluan [Kembali]
Praktikum ini mempelajari penggunaan fitur Analog-to-Digital Converter (ADC), Pulse Width Modulation (PWM), dan Interrupt pada mikrokontroler STM32 melalui beberapa percobaan. Kegiatan praktikum bertujuan untuk mengetahui cara mikrokontroler mengolah sinyal analog menjadi data digital, menangani interupsi dari perangkat eksternal, serta menghasilkan sinyal keluaran yang dapat digunakan untuk mengendalikan aktuator sesuai kondisi sensor yang terbaca.
Pada Percobaan 1 dengan judul Heart Rate Indicator, sistem memanfaatkan heartbeat sensor sebagai masukan analog yang dibaca menggunakan ADC dan push button sebagai pemicu interrupt. Output yang digunakan berupa LED tiga warna dan buzzer. Mikrokontroler melakukan pembacaan sinyal detak jantung secara terus-menerus untuk menghitung nilai Beats Per Minute (BPM). Ketika BPM berada pada kondisi normal, sistem hanya menyalakan LED indikator tertentu, seperti LED hijau atau kuning. Akan tetapi, jika nilai BPM melewati batas aman (BPM > 70), maka LED merah dan buzzer akan aktif sebagai tanda peringatan. Percobaan ini memperlihatkan kemampuan mikrokontroler dalam mengolah data analog secara real-time. Selain itu, fitur interrupt pada push button memungkinkan pengguna mematikan alarm secara langsung tanpa menghentikan proses utama pembacaan sensor.
Pada Percobaan 2 tentang Sistem Jemuran Otomatis, proses pengendalian dilakukan dengan membaca intensitas cahaya menggunakan sensor LDR yang terhubung ke ADC, sedangkan motor servo dikendalikan menggunakan sinyal PWM. Saat sensor mendeteksi kondisi lingkungan terang dan nilai pembacaan melewati batas tertentu, mikrokontroler akan mengatur duty cycle PWM sehingga servo bergerak keluar untuk menjemur pakaian. Sebaliknya, ketika kondisi sekitar mulai gelap, sistem akan mengubah sinyal PWM agar servo bergerak masuk untuk melindungi pakaian dari hujan. Push button yang digunakan pada percobaan ini juga berfungsi sebagai kontrol manual, sehingga pengguna tetap dapat mengatur posisi servo tanpa bergantung pada kondisi cahaya.
Dari kedua percobaan tersebut dapat diketahui bahwa mikrokontroler memiliki kemampuan yang baik dalam memproses berbagai kondisi lingkungan menjadi sebuah tindakan otomatis. Melalui fitur ADC, sistem dapat membaca perubahan nilai analog secara bertahap dan lebih akurat. Kemudian, dengan bantuan interrupt dan PWM, mikrokontroler mampu memberikan respons yang cepat, baik dalam bentuk indikator peringatan maupun pengendalian gerakan mekanis secara presisi.
2. Tujuan [Kembali]
- Memahami cara penggunaan PWM, ADC, dan Interrupt pada Development Board yang digunakan
- Memahami cara menggunakan komponen input dan output yang mengimplementasikan PWM, ADC, dan Interrupt pada Development Board yang digunakan
3. Alat dan Bahan [Kembali]
Alat
STM32F103C8
STM32 NUCLEO-G474RE
Bahan
Touch Sensor
PIR Sensor
Flame Sensor
Relay
LED
Buzzer
Resistor
4. Dasar Teori [Kembali]
1.3.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 STM32F103C8T6 dan STM32 NUCLEO G474RE 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.
1.3.2 STM 32 NUCLEO G474RE
STM32 NUCLEO-G474RE merupakan papan pengembangan (development board) berbasis mikrokontroler STM32G474RET6 yang dikembangkan oleh STMicroelectronics. Board ini dirancang untuk memudahkan proses pembelajaran, pengujian, dan pengembangan aplikasi sistem tertanam (embedded system), baik untuk pemula maupun tingkat lanjut. STM32 Nucleo-G474RE mengintegrasikan antarmuka ST-LINK debugger/programmer secara onboard sehingga pengguna dapat langsung melakukan pemrograman dan debugging tanpa perangkat tambahan.
1.3.3 STM32F103C8
STM32F103C8 adalah mikrokontroler berbasis ARM Cortex-M3 yang dikembangkan oleh STMicroelectronics. Mikrokontroler ini sering digunakan dalam pengembangan sistem tertanam karena kinerjanya yang baik, konsumsi daya yang rendah, dan kompatibilitas dengan berbagai protokol komunikasi. Pada praktikum ini, kita menggunakan STM32F103C8 yang dapat diprogram menggunakan berbagai metode, termasuk komunikasi serial (USART), SWD (Serial Wire Debug), atau JTAG untuk berhubungan dengan komputer maupun perangkat lain.
5. Percobaan [Kembali]
(Isi panduan atau detail percobaan dapat diletakkan di sini sesuai modul praktik)
Komentar
Posting Komentar