Mengatur Kecepatan Motor DC Menggunakan ARDUINO
Kali ini saya belajar tentang cara mengatur kecepatan Motor DC menggunakan arduino.
sebelumnya kita harus tau tentang ARDUINO. Didalam arduino ada 2 pin analog dan digital . pin analog bisa membaca tegangan 0 sampai 5v dengan step kenaikan 10 bit atau (0-1023), nilai 0 sampai 1023 tersebut sama dengan 0 sampai 5V karena di konversi menjadi sinyal digital. pin analog pada arduino memiliki 6 Buah pin yaitu A0 sampai A5. dan memiliki 13 pin digital.
RUMUS untuk mengetahui Data ADC(Analog Digital Converter)
ADC=(Vin/Vref )* maksimal Data Digital(1023)
Konsep PWM (Pulse Width Modulation)
Ada 2 cara untuk mengatur kecepatan motor
1.yang pertama adalah kita dapat mengubah frekuensi. cara tersebut sangat sfektif digunakan
2. selanjutnya dengan cara mengurangi tegangannya. tetapi jika kita mengurangi teganganya maka torsi atau kekuatan motor akan berkurang juga menurut saya ini juga sebuah kerugian.
Pada arduino pin yang dapat digunakan untuk PWM memiliki symbol (~) . biasanya pada pin 3,5,9. Frekuensi yang dapat digunakan yaitu sebanyak 500 siklus atau 500Hz.
dibawah ini adalah contoh program mengatur tingkat kecerahan pada lampu
dibawah ini adalah contoh program mengatur tingkat kecerahan pada lampu
- PROGRAM
const int potensio=A0;
const int led=9;
int sensor=0;
int kecerahan=0;
void setup()
{
pinMode(led,
OUTPUT);
pinMode(potensio, INPUT);
}
void loop()
{
sensor=
analogRead(potensio);
kecerahan=map(sensor,0,1023,0,255);
analogWrite(led,kecerahan);
}
- PENJELASAN PROGRAM
PROGRAM
|
PENJELASAN PROGRAM
|
const
int potensio=A0;
const
int led=9;
int
sensor=0;
int
kecerahan=0;
|
Mendeklarasikan
pin A0 untuk Potensio
Mendeklarasikan
pin 9 untuk led
Nilai
awal sensor adalah 0
Nilai
awal kecerahan adalah 0
|
void
setup()
{
pinMode(led, OUTPUT);
pinMode(potensio, INPUT);
}
|
Mensetting
led sebagai OUTPUUT Dan
Mensetting
potensio sebagai INPUT
|
void
loop()
{
sensor= analogRead(potensio);
|
Program
yang akan di eksekusi terus menerus
Sensor
sama dengan membaca nilai analog dari potensio
|
kecerahan=map(sensor,0,1023,0,255);
|
Menghitung
nilai kecerahan dengan rumus( Nilai ADC*255)/1023
|
analogWrite(led,kecerahan);
}
|
Membaca
Kecerahan pada led
|
Komentar
Posting Komentar