LAPRAK 1 - M1




1. Alat dan Bahan[Back]
- Jumper
Kabel jumper adalah suatu istilah kabel yang ber-diameter kecil yang di dalam dunia elektronika digunakan untuk menghubungkan dua titik atau lebih dan dapat juga untuk menghubungkan 2 komponen elektronika. Kabel jumper jenis ini digunakan untuk koneksi male to male pada kedua ujung kabelnya.


- Arduino Uno

Microcontroller ATmega328P

Operating Voltage 5 V

Input Voltage (recommended) 7 – 12 V

Input Voltage (limit) 6 – 20 V

Digital I/O Pins 14 (of which 6 provide PWM output)

PWM Digital I/O Pins 6

Analog Input Pins 6

DC Current per I/O Pin 20 mA

DC Current for 3.3V Pin 50 mA

Flash Memory 32 KB of which 0.5 KB used by bootloader

SRAM 2 KB

EEPROM 1 KB

Clock Speed 16 MHz


- LED

LED merupakan kependekan dari Light Emitting Diode, yakni salah satu dari banyak jenis perangkat semikonduktor yang mengeluarkan cahaya ketika arus listrik melewatinya.

- Resistor
Resistor adalah komponen elektronika yang bersifat menghambat arus listrik. Resistor termasuk dalam komponen pasif karena komponen ini tidak membutuhkan arus listrik untuk bekerja. Resistor terbuat dari material atau bahan karbon dan keramik yang berbentuk tabung.


- Breadboard
breadboard adalah board yang digunakan untuk membuat rangkaian elektronik tanpa harus merepotkan pengguna untuk menyolder. Biasanya papan breadboard ini digunakan untuk membuat rangkaian elektronik sementara untuk tujuan uji coba atau prototype.


2. Rangkaian Simulasi[Back]

3. Prinsip Kerja Rangkaian[Back]
Awalnya terdapat variabel "led" untuk mendeklarasikan pin 2-9 yang akan digunakan pada arduino.
Lalu ada fungsi setup dimana fungsi ini hanya dibaca sekali dan di dalamnya terdapat perulangan for dengan variabel i = 0 dengan kondisi kurang dari 8, jika terpenuhi maka akan di post-increment. Di dalam perulangan for terdapat pinMode yang menyatakan pin yang akan dihubungkan ke LED sebagai output.
Selanjutnya ada fungsi loop dimana fungsi ini dibaca berulang kali dan di dalamnya terdapat perulangan for dengan variabel hidup = 0 dengan kondisi kurang dari 2, jika terpenuhi maka variabel hidup akan di post increment. Di dalam for hidup terdapat digitalWrite memberikan logika ke variabel led dengan logika HIGH. Lalu ada perulangan for dengan variabel mati = 3 dengan kondisi kurang dari 2, jika terpenuhi maka variabel mati akan di post increment dan di dalamnya ada digitalWrite untuk memberikan logika LOW ke led.
Lalu terdapat delay sebanyak 500 ms atau 0,5 detik. 

Ada perulangan for dengan variabel hidup = 2 dengan kondisi kurang dari 4, jika terpenuhi maka variabel hidup akan di post increment. Di dalam for hidup terdapat digitalWrite memberikan logika ke variabel led dengan logika HIGH. Lalu ada perulangan for dengan variabel mati = 0 dengan kondisi kurang dari 2, jika terpenuhi maka variabel mati akan di post increment dan di dalamnya ada digitalWrite untuk memberikan logika LOW ke led. kemudian ada perulangan for dengan variabel mati = 4 dengan kondisi kurang dari 8, jika terpenuhi maka variabel mati akan di post increment dan di dalamnya ada digitalWrite memberikan logika ke led dan disini diberikan logika LOW ke led.
Lalu terdapat delay sebanyak 500 ms atau 0,5 detik. 

Ada perulangan for dengan variabel hidup = 4 dengan kondisi kurang dari 6, jika terpenuhi maka variabel hidup akan di post increment. Di dalam for hidup terdapat digitalWrite memberikan logika ke variabel led dengan logika HIGH. Lalu ada perulangan for dengan variabel mati = 0 dengan kondisi kurang dari 4, jika terpenuhi maka variabel mati akan di post increment dan di dalamnya ada digitalWrite untuk memberikan logika LOW ke led. kemudian ada perulangan for dengan variabel mati = 6 dengan kondisi kurang dari 8, jika terpenuhi maka variabel mati akan di post increment dan di dalamnya ada digitalWrite memberikan logika ke led dan disini diberikan logika LOW ke led.
Lalu terdapat delay sebanyak 500 ms atau 0,5 detik. 

Ada perulangan for dengan variabel hidup = 6 dengan kondisi kurang dari 8, jika terpenuhi maka variabel hidup akan di post increment. Di dalam for hidup terdapat digitalWrite memberikan logika ke variabel led dengan logika HIGH. Lalu ada perulangan for dengan variabel mati = 0 dengan kondisi kurang dari 6, jika terpenuhi maka variabel mati akan di post increment dan di dalamnya ada digitalWrite untuk memberikan logika LOW ke led. kemudian ada perulangan for dengan variabel mati = 6 dengan kondisi kurang dari 8, jika terpenuhi maka variabel mati akan di post increment dan di dalamnya ada digitalWrite memberikan logika ke led dan disini diberikan logika LOW ke led.
Lalu terdapat delay sebanyak 500 ms atau 0,5 detik. 

3. Video Rangkaian[Back]

5. Analisa[Back]
  1. jika program yang digunakan pada void loop() dipindahkan ke bagian void setup(), analisa pengaruh nya
  2. Analisa bagaimana pengaruh menekan tombol reset (saat Program pada arduino sudah berjalan) a.)Terhadap urutan nyala LED yang sedang berpindah ; b.)Terhadap memori [SRAM, EEPROM, Flash Memori]

Jawab:
  1. Fungsi void loop() berguna untuk mengeksekusi perintah dari program yang dibuat secara berulang dan berjalan terus menerus selama board arduino aktif (program berjalan). Fungsi void setup() berguna untuk mengeksekusi perintah dari program yang dibuat dan hanya berjalan satu kali pada pertama kali program dijalankan. Jika program void loop() dipindahkan ke void setup(), maka program akan tetap dijalankan, tetapi hanya berjalan satu kali atau tidak terjadi pengulangan. Pada percobaan 1 ini, LED kondisinya 1&2 hidup - yang lain mati; 3&4 hidup - yang lain mati; 5&6 hidup - yang lain mati. Saat dijalankan program, maka LED akan hidup dan berjalan sesuai kondisi, tetapi tidak terjadi berulang-ulang dan akhir dari program dijalankan LED akan terus hidup di LED 5&6 hidup - yang lain mati.
  2. a.) Fungsi tombol reset pada arduino yaitu untuk menjalankan ulang program dari awal, tanpa harus mengubah maupun menghapus program sebelumnya. Jika menekan tombol reset saat program arduino sudah berjalan terhadap urutan nyala LED yang sedang berpindah, maka LED akan mati sebentar lalu hidup kembali dan LED berpindah sesuai kondisi yang ada di program. Itu menandakan bahwa program berjalan ulang dari awal dan tidak perlu membuka port USB jack dahulu lalu upload ulang untuk menjalankan ulang program dari awal.
2. b.) Dikarenakan Flash Memori untuk menyimpan program dan bersifat non-volatile (memori dalam ROM tidak akan hilang jika daya ke papan arduino dihilangkan), maka saat menekan tombol reset program akan tersimpan dan tidak akan hilang atau terhapus. Untuk SRAM yang berguna untuk menyimpan variabel data dan bersifat volatile, maka saat menekan tombol reset data akan hilang atau terhapus. Untuk EEPROM yang gunanya untuk menyimpan suatu data yang bersifat non-volatile, dimana data tersebut tidak akan terhapus melalui perintah atau program yang sudah ditentukan. EEPROM bisa dikatakan sebagai pengingat arduino saat dimatikan. 



6. Link Download[Back]
Electricity LightningElectricity Lightning