Tuesday, November 22, 2016

Mikrokontroller Arduino 2560




a.    Mempelajari aplikasi output pada mikrokontroller Arduino
b.    Mempelajari aplikasi input pada mikrokontroller Arduino 
c.    Mempelajari aplikasi I/O pada mikrokontroller Arduino 


2.2 Alat dan Bahan [kembali]
a.  Module Arduino
b.  Jumper
c.  7 Segment
d. switch
 

2.3 Dasar Teori [kembali] 
Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel. Arduino yang kita gunakan pada prkatikum ini adalah arduino mega yang menggunakan chip AVR ATmega 2560 yang memiliki fasilitas PWM, komunikasi serial, ADC, timer, interupt, SPI dan I2C. Sehingga Arduino bisa digabungkan bersama modul atau alat lain dengan protocol yang berbeda-beda. Bahasa pemograman yang digunakan adalah bahasa C. Tetapi bahasa ini sudah dipermudah menggunakan fungsi-fungsi yang sederhana sehingga lebih mudah dalam memprogramnya. Dalam memprogram arduino, kita bisa menggunakan serial komunikasi agar arduino dapat berhubungan dengan komputer ataupun aplikasi lain.
Beberapa fitur dari Arduino Mega 2560 ini adalah :



1. Microcontroller                                  ATmega2560
2. Operating Voltage                             5V
3. Input Voltage (recommended)          7-12V
 4. Input Voltage (limits)                         6-20V
5. Digital I/O Pins                                  54 (of which 15 provide PWM output)
6. Analog Input Pins                             16
7. DC Current per I/O Pin                     20 mA
8. DC Current for 3.3V Pin                   50 mA
9. Flash Memory                                  256 KB of which 8 KB used by bootloader
10. SRAM                                             8 KB
11. EEPROM                                        4 KB
12. Clock Speed                                   16 MHz

BAGIAN-BAGIAN DARI ARDUINO MEGA 2560 :

Soket USB
     Soket USB adalah soket untuk kabel USB yang disambungkan ke komputer atau laptop. Berfungsi untuk mengirimkan program ke Arduino dan juga sebagai port komunikasi serial.

Input / Output Digital
    Input/Output Digital atau digital pin adalah pin-pin untuk menghubungkan Arduino dengan komponen atau rangkaian digital. Pada Arduino Mega terdapat 53 I/O Digital dimana 16 diantaranya dapat dijadikan sebagai output PWM

Input Analog
   Input Analog atau analog pin adalah pin-pin yang berfungsi untuk menerima sinyal dari komponen atau rangkaian analog. Misalnya dari potensiometer, sensor suhu, sensor cahaya, dsb. Terdapat 16 input analog pada arduino mega 2560. 

Pin POWER
   Pin-pin catu daya adalah pin yang memberikan tegangan untuk komponen atau rangkaian yang dihubungkan dengan Arduino. Pada bagian catu daya ini terdapat juga pin Vin dan Reset.Vin digunakan untuk memberikan tegangan langsung kepada Arduino tanpa melalui tegangan USB atau adaptor.

Tombol RESET
    Reset adalah pin untuk memberikan sinyal reset melaui tombol atau rangkaian eksternal.

Jack Baterai/Adaptor
     Soket baterai  atau adaptor digunakan untuk menyuplai Arduino dengan tegangan  dari  baterai/adaptor 9V pada saat Arduino sedang tidak disambungkan ke komputer. Kalau Arduino sedang disambungkan ke komputer melalui USB, Arduino mendapatkan suplai tegangan dari USB, jadi tidak perlu memasang baterai/adaptor saat memprogram Arduino.



PRINSIP KERJA :
Pada percobaan ini kami menggunakan arduino mega sebagai mikrokontroller, switch sebagai input dan 7 segment sebagai output. Switch terhubung ke pin 23, 25, 27, 29, 31, 33, 35, dan 37 sedangkan 7 segment terhubung ke pin 2, 3, 4, 5, 6, 7, 8, 9 dan PIN 10 sebagai output. Ketika switch 4 yang terhubung ke pin 29 aktif tinggi, maka pada 7 segment akan menampilkan huruf “d” dengan delay 200ms.




byte pin[] = {2, 3, 4, 5, 6, 7, 8, 9};                           // deklarasi pin yang digunakan untuk seven segment dengan type data byte
int sakelar[] = {23, 25, 27, 29, 31, 33, 35, 37};       // deklarasi pin yang digunakan untuk switch dengan type data integer
                                         
void setup()                                                              // fungsi yang dieksekusi pertama pada program          
{                                                                               //  batas pembuka fungsi void setup             
pinMode(10,OUTPUT);                                           // pin 10 pada arduino digunakan sebagai output
digitalWrite(10,LOW);                                             // pin 10 pada arduino dalam keadaan low
for(int i=0;i<9;i++)                                                   // fungsi untuk variabel idengan keadaan awal nol meningkat sampai kecil dari sembilan
    {                                                                            // batas pembuka fungsi for       
      pinMode(sakelar[i],INPUT);                              // pin i digunakan sebagai input
    }                                                                            // batas penutup fungsi for    
}                                                                                // batas penutup fungsi void setup         
void loop()                                                                // fungsi perulangan pada program      
{                                                                                // batas pembuka fungsi void loop           
if (digitalRead(29)==HIGH)                                    // fungsi jika kondisi pin 29 dalam keadaan high
  { digitalWrite(2,LOW);                                          // pin 2 seven segment mati
    digitalWrite(3,HIGH);                                          // pin 3 seven segment hidup
    digitalWrite(4,HIGH);                                          // pin 4 seven segment hidup
    digitalWrite(5,HIGH);                                          // pin 5 seven segment hidup
    digitalWrite(6,HIGH);                                          // pin 6 seven segment hidup
    digitalWrite(7,LOW);                                           // pin 7 seven segment mati
    digitalWrite(8,HIGH);                                          // pin 8 seven segment hidup
    digitalWrite(9,LOW);                                           // pin 9 seven segment mati
    delay(200);                                                           // delay selama 200ms
  }                                                                              // batas penutup fungsi if
else                                                                            // jika kondisi tidak terpenuhi
  { digitalWrite(2,LOW);                                          // pin 2 seven segment mati
    digitalWrite(3,LOW);                                           // pin 3 seven segment mati
    digitalWrite(4,LOW);                                           // pin 4 seven segment mati
    digitalWrite(5,LOW);                                           // pin 5 seven segment mati
    digitalWrite(6,LOW);                                           // pin 6 seven segment mati
    digitalWrite(7,LOW);                                           // pin 7 seven segment mati
    digitalWrite(8,LOW);                                           // pin 8 seven segment mati
    digitalWrite(9,LOW);                                           // pin 9 seven segment mati
  }                                                                              // batas penutup fungsi else
}                                                                                // batas penutup fungsi void loop
 


Ketika switch 4 ditekan, maka seven segment akan menapilkan huruf d on off dengan delay 200 ms.
 
File HTML           (Download)
File Proteus         (Download)
File Program        (Download)
Video Rangkaian (Download)

No comments:

Post a Comment