Belajar mikrokontroller DC Voltage Controller sangat mudah yipppiiiii................


Judul    : : DC Voltage Controller.
Tujuan  :
-          Mampu menyusun user requirement untuk sebuah fungsi pengaturan tegangan luaran pada buck converter.
-          Mampu melakukan identifikasi unit input dan output dan Timer menggunakan
alamat PORT sesuai konfigurasi pada board praktikum
-          Mampu  menyusun,  menjalankan  dan melakukan  debugging program sesuai    dengan permasalahan berbasis Bahasa  pemrogramanC   dengan    menggunakan Keil uVison
Alat  : Personal Computer, modul MCU, Modul buck converter, kabel USB, ST Link
downloader.
A.Problem :
Akan dibuat sebuah system untuk mengatur tegangan luaran pada sebuah buck converter menggunakan PWM. Digunakan keypad untuk mengatur tegangan luaran converter dengan beban lampu DC, seperti ditunjukkan pada Gambar 1.



1. Plant Layout:
Plant Layout  Akan dibuat sebuah system Untuk mengatur tegangan luaran digunakan keypad 0-9 dan key “D” untuk enter, nilai yang dimasukkan adalah nilai duty cycle dengan satuan %.Nilai duty cycle hasil entry keypad ditampilkan pada LCD.

B. User Requirement
User Requirement  Pada plant ini, digunakan untuk pengaturan tegangan motor DC yang nantinya bisa dimasukkan nilai duty cyle dengan menggunakan keypad dan ditampilkannya ARR di lcd  .









D. I/O Table
    OUTPUT
No
Device
Address
note
1
LCD
PD0
PD1
PD2
PD3
PD4
PD5
PD6
PD7
Mengetahui kondisi Motor melalui layar 16x2
2
PWM
PD12

Timer 4 dengan menggunakan channel 3
3
Keypad
PE12
PE13
PE14
PE15
Memulai dan memberhentikan suatu system yang mana sudah di program di dalam mikrokontroler STM32F407VGTX

    INPUT
No
Device
Address
note
1
LCD
PE8
PE9
PE10
PE11
Memasukkan huruf dari keypad menuju mikrokontroller




















G. Source Code

#include "main.h"
#include "stdlib.h"
#include "lcd_character.h"
#include "keypad_4x4.h"

char key, num[3],buffer[16],buffer1[16];
int Duty,ARR_reg,n,j;

void SystemClock_Config(void);
static void MX_GPIO_Init(void);
static void MX_TIM4_Init(void);

int main(void)
{
HAL_Init();
SystemClock_Config();
MX_GPIO_Init();
lcd_init();
keypad_init();
HAL_TIM_Base_Start(&htim4);
HAL_TIM_PWM_Start(&htim4,TIM_CHANNEL_1);while (1)
  while (1)
  {
  if(keypad_get_key_value()=='0'||keypad_get_key_value()=='1'||keypad_get_key_value()=='2'||keypad_get_key_value()=='3'||keypad_get_key_value()=='4'||keypad_get_key_value()=='5'||keypad_get_key_value()=='6'|| keypad_get_key_value()=='7'|| keypad_get_key_value()=='8'|| keypad_get_key_value()=='9')
{key=keypad_get_key_value();
num[n]=key;
n++;
lcd_gotoxy(0,0);
lcd_puts("num :");
}
if(keypad_get_key_value()=='D')
{
Duty=atoi(num);
ARR_reg=(Duty*2099)/100;
n=0;
TIM4->CCR1 = ARR_reg;
}
if(keypad_get_key_value()=='C')
{for (int j=0;j<3;j++)
{num[j]=' ';
n=0;
lcd_gotoxy(0,0);
lcd_puts("Duty Cycle=     ");
lcd_gotoxy(1,0);
lcd_puts("ARR reg   =     ");}
}

H. running test procedure
1. Masukkan nilai num yang mana num tebaca di lcd Duty cycle dan lcd juga mencetak ARR_reg yang mana didapat dari perkalian yang sudah tercamtum di program
2. sambunglah buck conventer dengan mudul STM32F407VG
3. pasang input buck conventer dengan power supply 21 volt dan beri power supply pada moser (irf---) 12 volt 
4. pada saat keypad huruf ‘D’ ditekan maka LCD akan tercetak dan lampu akan menyala yang mana lampu terpasang di ouput modul buck conventer.
5. . pada saat keypad huruf ‘C’ ditekan maka data di program baik di duty cycle maupun ARR kondisi 0.







I.Integration Result
Link Video on you tube


 
J. Excellence of Design
          Kelebihan pada sistem ini yaitu sistem ini bisa menyalakan beban lampu dengan kecil atau besar tergantung duty cyle yang dikasih oleh user, dan duty cyle bisa di masukkan nilai semaunya user

K. Lack of Design
           Pada saat diekan keypad C ouput di lcd masih meninggalkan data yang sebelumnya.
L. Conclusion
- Pada system ini sangat berguna untuk seseorang engginer untuk menyalakan kecerahan pada beban lampu yang mana user bisa memberi nilai kecerahan semaunnya.
- pada praktikum ini bila dimasukkan nilai duty cyle besar maka keluaran tegangannya juga besar (berbanding lurus)




No comments:

Post a Comment

Pages