Rabu, 18 Desember 2013

TIMER SEBAGAI GENERATOR GELOMBANG



TUJUAN :

1.      Mampu membuat program untuk memanfaatkan timer sebagai gen rator gelombang.

2.     Mampu membuat program untuk memanfaatkan timer sebagai generator gelombang dengan adjustable duty cycle.

3.     Mampu membuat program untuk memanfaatkan timer sebagai generator gelombang dengan adjustable frekuensi.


PERALATAN :

1.
Komputer
: 1 set
2.
Arduino Uno
: 1 pcs
3.
Project board
: 1 pcs
4.
Kabel jumper
: 1 set
5.
LCD
: 1 pcs
6.
Potensiometer 10K
: 3 pcs
7.
LED
: 1 pcs
8.
Resistor 330 Ohm
: 1 pcs
9.
Transistor 2N2222
: 1 pcs
10.
Resistor 2K2
: 1 pcs


PERCOBAAN :

7.1 Generator Gelombang dengan Adjustable Duty cycle

Pada percobaan kali ini akan dibuat program untuk mengeluarkan gelombang kotak pada pada pin 9 (OC1A) . Gelombang yang akan dikeluarkan pada pin 9 adalah gelombang berbentuk kotak dengan duty cycle dapat diatur lebarnya. Lebar duty cycle akan diatur oleh potensiometer yang terhubung pada pin A0. Pada percobaan kali ini akan digunakan fungsi analogWrite yang berfungsi untuk mengeluarkan sinyal gelombang pada pin Pulse Width Modulation (PWM).


Prosedur :

1.  Buatlah rangkaian seperti Gambar 7.1.



2.   Tuliskan sintaks program berikut ini pada Arduino IDE, kemudian lakukan kompilasi dan upload program ke sistem minimum Arduino

int val = 0;

void setup() { Serial.begin(9600); pinMode(9, OUTPUT);
}

void loop() {

val = analogRead(A0); analogWrite(9, val/4); Serial.print("PWM Value = "); Serial.println(val,DEC); delay(500);

}





Tugas dan Pertanyaan :

1.      Putarlah potensiometer R3 dari minimum sampai maksimum, kemudian amati intensitas cahaya pada LED. Jika potensiometer diputar pada posisi minimum bagaimana kondisi intensitas cahaya LED ? semakin terang atau semakin redup ? Jelaskan kenapa !
Pada  posisi  minimum kondisi intensitas cahaya LED mati ,LED semakin redup ketika potensiometer diputar dari maksimum ke minimum, karena jika nilai pwm yang diberikan semakin besar maka cahaya LED semakin terang, begitu juga sebaliknya.
2.      Jika potensiometer diputar pada posisi maksimum bagaimana kondisi intensitas cahaya LED ? semakin terang atau semakin redup ? Jelaskan kenapa !
Pada  posisi  maksimum kondisi intensitas cahaya LED semakin terang. Karena pembacaan analog sekirar 1023, sehingga pwm yang di berikan mendekati nilai 255 yang merupakan pwm maksimal.

3.      Lakukan simulasi dengan aplikasi Proteus, kemudian amati bentuk gelombang pada Test Point. Tampilkan gambar sinyal pada laporan !

Duty cycle 0% (0)
 


Duty cycle 25% (63.75)
Duty cycle 50% (127.5)


Duty cycle 75% (191.25)





Duty cycle 100% (255)









a.       Jelaskan sintaks program pada Percobaan 7.1 !






7.2  Generator Gelombang dengan Adjustable Frekuensi

Pada percobaan kali ini gelombang yang akan dikeluarkan pada pin 9 adalah gelombang berbentuk kotak dengan duty cycle yang besarnya tetap yaitu 50%, namun besarnya frekuensi dapat berubah-ubah. Perubahan frekuensi akan diatur oleh potensiometer yang terhubung pada pin A0. Program pada percobaan kali ini akan menggunakan konfigurasi register untuk mengeluarkan sinyal gelombang pada pin PWM.

Prosedur :

1.  Buatlah rangkaians eperti pada Gambar 7.2.

2.  Tuliskan  sintaks  program  berikut  ini  pada  Arduino  IDE,  kemudian  lakukan

kompilasi dan upload program ke sistem minimum Arduino.

int setCycles;

void set(int cycles) {
char oldSREG;
int dutyCycle = cycles * 0.5;
if (dutyCycle < 6)
{
dutyCycle = 6;

}
if (dutyCycle > 1015)
{
dutyCycle = 1015;
}
if (cycles < 50)
{
cycles = 50;

}
oldSREG =SREG; cli();
ICR1 = cycles; OCR1A = dutyCycle; SREG = oldSREG;
}

void setup()
{
TCCR1A = 0;
TCCR1B = _BV(WGM13);
TCCR1B &= ~(_BV(CS10) | _BV(CS11) |_BV(CS12)); TCCR1B |= _BV(CS10);
DDRB |= _BV(PORTB1); TCCR1A |= _BV(COM1A1);
}

void loop() {
int temp_cycles = analogRead(A0); if (temp_cycles != setCycles )
{
setCycles = temp_cycles; set(setCycles);
}
}



Tugas dan Pertanyaan :

1.      Lakukan simulasi dengan aplikasi Proteus, kemudian amati bentuk gelombang dan besarnya frekuensi pada Test Point. Jika potensiometer R3 di putar sampai posisi minimum berapakah nilai frekuensi yang terukur ? Jika potensometer diputar sampai posisi maksimum berapakah nilai frekuensi yang terukur ?
Nilai ketika potensio minimum adalah 333333.33 Hz dan ketika maks adalah
15384.61 Hz.

2.      Bagaimana dengan lebar pulsa (duty cycle), lebarnya berubah-ubah atau tetap ?
Tetap


7.3 PWM dengan Adjustable Frekuensi dan Duty cycle (7 KHz sampai 300 KHz)

Pada percobaan kali ini gelombang yang akan dikeluarkan pada pin 9 adalah gelombang berbentuk kotak dengan duty cycle dan frekuensi yang dapat berubah-ubah. Perubahan frekuensi akan diatur oleh potensiometer yang terhubung pada pin A0. Perubahan duty cycle akan diatur oleh potensiometer yang terhubung pada pin A1. Program pada percobaan kali ini akan menggunakan konfigurasi register untuk mengeluarkan sinyal gelombang pada pin PWM.

Prosedur :

1.  Rangkailah rangkaian pada Gambar 7.3.

2.      Tuliskan sintaks program berikut ini, kemudian lakukan kompilasi dan upload program.
int setCycles; int setDuty;
                        
void set(int cycles, float duty) { char oldSREG;

int dutyCycle = cycles * duty; if (dutyCycle < 6) {

dutyCycle = 6;

}

if (dutyCycle > 1015) { dutyCycle = 1015;

}

if (cycles < 50) { cycles = 50;

}

oldSREG = SREG; cli();

ICR1 = cycles; OCR1A = dutyCycle; SREG = oldSREG;

}

void setup() { TCCR1A = 0;

TCCR1B = _BV(WGM13);

TCCR1B &= ~(_BV(CS10) | _BV(CS11) | _BV(CS12)); TCCR1B |= _BV(CS10);

DDRB |= _BV(PORTB1); TCCR1A |= _BV(COM1A1);

}

void loop() {

int temp_cycles = analogRead(A0); int temp_duty = analogRead(A1);

if (temp_cycles != setCycles || temp_duty != setDuty) { setCycles = temp_cycles;

setDuty = temp_duty; set(setCycles, setDuty / 1024.0);
}

}

Tugas dan Pertanyaan :

1.      Lakukan simulasi dengan aplikasi Proteus, kemudian amati bentuk gelombang, besarnya frekuensi, dan lebar pulsa pada Test Point. Jika potensiometer pada A0 diputar sampai posisi minimum berapakah nilai frekuensi yang terukur ? Jika potensometer diputar sampai posisi maksimum berapakah nilai frekuensi yang terukur ?
Jika A0 di posisi minimum nilai yang terukur yaitu 285714.28 Hz dan jika di posisi maks nilai yang terukur adalah 13333.33 Hz

2.      Jika potensiometer pada A1 diputar dari posisi minimum sampai posisi maksimum apakah yang akan berubah ?
Perubahan terjadi pada duty cicle.









Tidak ada komentar:

Posting Komentar