LAPORAN AKHIR MODUL 2 PERCOBAAN 1 : Heart Rate Indikator
LAPORAN AKHIR MODUL 2 PERCOBAAN 1
1. Prosedur (kembali)
2. Hardware (kembali)
1. STM32F103C8
TM32F103C8 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.
|
Microcontroller |
ARM Cortex-M3 |
|
Operating Voltage |
3.3 V |
|
Input Voltage (recommended) |
5 V |
|
Input Voltage (limit) |
2 – 3.6 V |
|
Digital I/O Pins |
32 |
|
PWM Digital I/O Pins |
15 |
|
Analog Input Pins |
10 (dengan resolusi 12-bit ADC) |
|
DC Current per I/O Pin |
25 mA |
|
DC Current for 3.3V Pin |
150 mA |
|
Flash Memory |
64 KB |
|
SRAM |
20 KB |
|
EEPROM |
Emulasi dalam Flash |
|
Clock Speed |
72 MHz |
2. Sensor Heartbeat
HeartBeat sensor atau sensor detak jantung merupakan perangkat input analog yang berfungsi untuk mendeteksi denyut nadi manusia dengan prinsip fotopletismografi (PPG). Sensor ini biasanya bekerja menggunakan infra merah dan fototransistor untuk mengukur perubahan volume darah di dalam pembuluh darah kecil di ujung jari atau telinga. Sinyal yang dihasilkan bersifat analog, sehingga memerlukan fitur ADC (Analog to Digital Converter) pada mikrokontroler agar data detak jantung dapat diproses dan dikonversi menjadi nilai Beats Per Minute (BPM).
3. Push Button
Push button adalah komponen sakelar sederhana yang berfungsi untuk menghubungkan atau memutuskan aliran arus listrik dalam suatu rangkaian dengan cara menekan tombolnya. Pada penggunaan mikrokontroler, komponen ini berperan sebagai perangkat input digital yang bekerja berdasarkan prinsip logika high atau low, di mana status penekanannya dapat dibaca oleh pin GPIO atau digunakan untuk memicu mekanisme interrupt eksternal. Agar pembacaan sinyal tetap stabil dan terhindar dari kondisi floating, push button biasanya dikonfigurasi menggunakan resistor pull-up atau pull-down yang memastikan level tegangan input tetap berada pada kondisi logika yang jelas saat tombol tidak sedang ditekan.
4. LED
LED adalah komponen semikonduktor yang berfungsi sebagai indikator visual dengan cara memancarkan cahaya ketika dialiri arus listrik searah. Dalam sistem yang menggunakan PWM (Pulse Width Modulation), LED tidak hanya berfungsi sebagai indikator aktif atau tidaknya suatu sistem, tetapi juga dapat diatur tingkat kecerahannya melalui pengaturan duty cycle. LED sangat efektif digunakan sebagai penanda status sensor atau sebagai simulasi output yang merepresentasikan kondisi tertentu dari hasil pemrosesan data.
LED adalah dioda semikonduktor yang dapat memancarkan cahaya ketika dialiri arus listrik. LED digunakan dalam berbagai aplikasi seperti indikator elektronik, pencahayaan, dan display. LED hanya bekerja pada arah bias maju dan memiliki berbagai warna yang ditentukan oleh material semikonduktornya.
5. Buzzer
Buzzer adalah suatu komponen elektronika yang berfungsi untuk mengubah energi listrik menjadi energi suara (bunyi) melalui mekanisme getaran. Komponen ini termasuk dalam kategori output device karena digunakan untuk memberikan respon berupa suara terhadap suatu kondisi atau perintah dalam rangkaian elektronik.
6. Resistor
Resistor adalah komponen elektronik pasif yang berfungsi untuk membatasi arus listrik dalam suatu rangkaian. Resistor bekerja berdasarkan hukum Ohm, yang menyatakan bahwa tegangan (V) = arus (I) × resistansi (R). Resistor memiliki satuan Ohm (Ω) dan digunakan dalam berbagai aplikasi seperti pembagian tegangan, kontrol arus, dan proteksi rangkaian elektronik.
7. Breadboard
Breadboard adalah papan sirkuit tanpa solder yang digunakan sebagai media untuk merakit dan menguji purwarupa rangkaian elektronik secara sementara. Papan ini memiliki lubang- lubang koneksi yang terhubung secara internal (horizontal di bagian tengah dan vertikal di jalur daya samping) sehingga memudahkan pengguna untuk menghubungkan sensor, mikrokontroler, dan komponen lainnya dengan kabel jumper. Penggunaan breadboard sangat efisien dalam tahap pengembangan karena memungkinkan komponen untuk dilepas dan dipasang kembali dengan mudah tanpa merusak jalur sirkuit.
8. Diagram Blok
3. Rangkaian Simulasi dan Prinsip Kerja (kembali)
Sistem ini beroperasi dengan mengonversi fluktuasi aliran darah yang ditangkap oleh sensor menjadi sinyal analog, yang kemudian diproses oleh mikrokontroler melalui modul ADC. Untuk meningkatkan akurasi, metode moving average diterapkan guna meminimalisir noise sehingga sinyal menjadi lebih stabil saat dianalisis menggunakan ambang batas (threshold) dinamis. Setiap lonjakan sinyal yang melampaui threshold akan dihitung sebagai detak jantung, di mana interval antar detak tersebut dikonversi menjadi nilai BPM (Beats Per Minute) sebagai parameter kendali output. Berdasarkan nilai tersebut, sistem akan memberikan indikasi visual melalui LED RGB dan peringatan audio via buzzer: LED kuning untuk kondisi lambat (30–60 BPM), LED hijau untuk kondisi normal (60–80 BPM), serta LED merah dan buzzer aktif jika detak jantung berada di luar rentang aman. Selain itu, sistem mengintegrasikan push button sebagai interrupt yang memungkinkan pengguna mengendalikan aktifasi buzzer secara manual dan responsif.
4. Flowchart dan Listing Program (kembali)
/* USER CODE BEGIN Header */
/**
******************************************************************************
* @file : main.h
* @brief : Header for main.c file.
* This file contains the common defines of the application.
******************************************************************************
* @attention
*
* Copyright (c) 2026 STMicroelectronics.
* All rights reserved.
*
* This software is licensed under terms that can be found in the LICENSE file
* in the root directory of this software component.
* If no LICENSE file comes with this software, it is provided AS-IS.
*
******************************************************************************
*/
/* USER CODE END Header */
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __MAIN_H
#define __MAIN_H
#ifdef __cplusplus
extern "C" {
#endif
/* Includes ------------------------------------------------------------------*/
#include "stm32f1xx_hal.h"
/* Private includes ----------------------------------------------------------*/
/* USER CODE BEGIN Includes */
/* USER CODE END Includes */
/* Exported types ------------------------------------------------------------*/
/* USER CODE BEGIN ET */
/* USER CODE END ET */
/* Exported constants --------------------------------------------------------*/
/* USER CODE BEGIN EC */
/* USER CODE END EC */
/* Exported macro ------------------------------------------------------------*/
/* USER CODE BEGIN EM */
/* USER CODE END EM */
/* Exported functions prototypes ---------------------------------------------*/
void Error_Handler(void);
/* USER CODE BEGIN EFP */
/* USER CODE END EFP */
/* Private defines -----------------------------------------------------------*/
#define LED_G_Pin GPIO_PIN_0
#define LED_G_GPIO_Port GPIOB
#define LED_B_Pin GPIO_PIN_1
#define LED_B_GPIO_Port GPIOB
#define LED_R_Pin GPIO_PIN_10
#define LED_R_GPIO_Port GPIOB
#define Buzzer_Pin GPIO_PIN_11
#define Buzzer_GPIO_Port GPIOB
/* USER CODE BEGIN Private defines */
/* USER CODE END Private defines */
#ifdef __cplusplus
}
#endif
#endif /* __MAIN_H */
5. Video Demo (kembali)
6. Kondisi (kembali)
7. Video Simulasi (kembali)
8. Download File (kembali)

Komentar
Posting Komentar