Mikro 2018 Modul 3

Modul III
Mikrokontroller AT MEGA 128 



*klik teks untuk menuju 


1.1 Tujuan [kembali]
a. Merangkai dan menguji output pada mikrokontroller ATMEGA 128 
b. Merangkai dan menguji input pada mikrokontroller ATMEGA 128 
c. Merangkai dan menguji I/O pada mikrokontroller ATMEGA 128 

 1.2 Alat dan Bahan [kembali]
          a.    Module AT MEGA 128 
          b.    LED
          c.    Seven Segment
          d.    Buzzer
          e.    LCD
          f.    Jumper

          g.    Motor stepper 

          h.    Sensor LM35

           i.    Keypad

           j.    LDR

           k.   Dot matrix



1.3 Dasar Teori [kembali] 

A. Mikrokontroller ATMEGA 128

Mikrokontroller ATMEGA 128 merupakan mikrokontroller keluarga AVR yang mempunyai kapasitas flash memori 128KB. AVR (Alf and Vegard’s Risc Processor) merupakan seri mikrokontroler CMOS 8-bit buatan ATEMEL inc, berdasarkan arsitektur RISC (Reduced Instruction Set Computer). Secara umum, AVR dapat terbagi menjadi 4 kelas, yaitu keluarga ATtiny, keluarga AT90Sxx, keluarga AT-Mega, dan AT86RFxx. Pada dasarnya yang membedakan masing-masing kelas adalah memori, peripheral, dan fungsinya. Dari segi arsitektur dan instruksi yang digunakan, bisa dikatakan hampir sama. Semua jenis AVR dilengkapi dengan flash memori sebagai memori program. Kapasitas dari flash memori ini berbeda antara chip yang satu dengan chip yang lain. Tergantung dari jenis IC yang digunakan. Untuk flash memori yang paling kecil adalah 1 kbytes (ATtiny11, ATtiny12, dan ATtiny15) dan paling besar adalah 128 kbytes (AT-Mega128). Berikut ini adalah spesifikasi Mikrokontroler AVR ATMega-128 dan konfigurasi pin ATMEGA 128. 


1. Saluran I/O sebanyak 56 buah, yaitu Port A, Port B, Port C, Port D, Port E, Port F dan Port G.

2. ADC 10 bit sebanyak 8 saluran.

3. 2 buah Timer/Counter 8 bit dan 2 buah Timer/Counter 16 bit.

4. Dua buah PWM 8 bit.

5. Watchdog Timer dengan osilator internal.

6. Internal SRAM sebesar 4 kbyte.

7. Memori flash sebesar 128 kBytes.

8. Interupsi Eksternal.

9. Port antarmuka SPI.
10. EEPROM sebesar 4 kbyte.
11. Real time counter.
12. 2 buah Port USART untuk komunikasi serial.
13. Enam kanal PWM.
14. Tegangan operasi sekitar 4,5 V sampai dengan 5,5V



Konfigurasi pin ATMEGA-128

B. LED

LED adalah suaatu semikonduktor yang memancarkan cahaya,  LED mempunyai kecenderungan polarisasi. LED mempunyai kutub positif dan negatif (p-n) dan hanya akan menyala bila diberikan arus maju. Ini dikarenakan LED terbuat dari bahan semikonduktor yang hanya akan mengizinkan arus listrik mengalir ke satu arah dan tidak ke arah sebaliknya. Bila LED diberikan arus terbalik, hanya akan ada sedikit arus yang melewati  LED. Ini menyebabkan LED tidak akan mengeluarkan emisi cahaya.

C. SEVENT SEGMENT

Layar tujuh segmen ini seringkali digunakan pada jam digital, meteran elektronik, dan perangkat elektronik lainnya yang menampilkan informasi numerik. Layar tujuh segmen ini terdiri dari 7 buah LED yang membentuk angka 8 dan 1 LED untuk titik/DP. Angka yang ditampilkan di seven segmen ini dari 0-9. Cara kerja dari seven segmen disesuaikan dengan LED. LED merupakan komponen diode yang dapat memancarkan cahaya. kondisi dalam keadaan ON jika sisi anode mendapatkan sumber positif dari Vcc dan katode mendapatkan sumber negatif dari ground.
Berdasarkan cara kerjanya, tujuh segmen dibagi menja

D. BUZZER

Buzzer adalah sebuah komponen elektronika yang berfungsi untuk mengubah getaran listrik menjadi getaran suara. Pada dasarnya prinsip kerja buzzer hampir sama dengan loud speaker, jadi buzzer juga terdiri dari kumparan yang terpasang pada diafragma dan kemudian kumparan tersebut dialiri arus sehingga menjadi elektromagnet, kumparan tadi akan tertarik ke dalam atau keluar, tergantung dari arah arus dan polaritas magnetnya, karena kumparan dipasang pada diafragma maka setiap gerakan kumparan akan menggerakkan diafragma secara bolak-balik sehingga membuat udara bergetar yang akan menghasilkan suara. Buzzer biasa digunakan sebagai indikator bahwa proses telah selesai atau terjadi suatu kesalahan pada sebuah alat (alarm)

E. LCD


berikut penjelasan kakinya yaitu:

F. JUMPER



Sebagai konektor antar modul satu dengan modul lainnya

G. MOTOR STEPPER


(Motor stepper )mengubah pulsa-pulsa listrik yang diberikan menjadi gerakan-gerakan diskrit rotor yang disebut langkah (steps). Nilai rating dari suatu motor stepper diberikan dalam langkah per putaran (steps per revolution). Motor stepper umumnya mempunyai kecepatan dan [torsi] yang rendah.
Motor stepper bekerja berdasarkan pulsa-pulsa yang diberikan pada lilitan fasenya dalam urut-urutan yang tepat. Selain itu, pulsa-pulsa itu harus juga menyediakan arus yang cukup besar pada lilitan fase tersebut. Karena itu untuk pengoperasian motor stepper pertama-tama harus mendesain suatu sequencer logic untuk menentukan urutan pencatuan lilitan fase motor dan kemudian menggunkan suatu penggerak (driver) untuk menyediakan arus yang dibutuhkan oleh lilitan fase

H. SENSOR LM35

Sensor suhu IC LM 35 merupkan chip IC produksi Natioanal Semiconductor yang berfungsi untuk mengetahui temperature suatu objek atau ruangan dalam bentuk besaran elektrik, atau dapat juga di definisikan sebagai komponen elektronika yang berfungsi untuk mengubah perubahan temperature yang diterima dalam perubahan besaran elektrik

I. KEYPAD





Penyusun tombol pada keypad dapat dibuat dari bermacam-macam bahan/komponen, seperti switch metal, switch karbon, dan resistif/kapasitif (touch panel). Penggunaan bahan tersebut disesuaikan dengan kebutuhan akan sensifitas, aksi penekanan, dan kebutuhan akan suatu tombol khusus. Bahan switch metal pada keypad digunakan untuk kebutuhan keypad atau tombol-tombol dengan arus yang besar. Keypad dengan bahan carbon dipakai untuk kebutuhan tombol-tombol dengan arus kecil. Biasanya itu digunakan untuk alat-alat digital yang hanya memilikitegangan 0 dan 5v. Penerapan bahan banyak kita jumpai seperti pada keypad remot tv, remot ac, joy stick, serta masih banyak lainnya.


J. SENSOR ULTRASONIC


Sensor ultrasonik PING terdiri dari tiga bagian utama yaitu :

  • Transmitter Gelombang Ultrasonik
  • Receiver Gelombang Ultrasonik
  • Rangkaian kontrol

Transmitter berfungsi sebagai pemancar gelombang ultrasonik. Gelombang yang dipancarkan memiliki frekuensi 40KHz. Gelombang ini akan dipancarakan dengan kecepatan 344.424m/detik atau 29.034uS per centimeter. Jika didepan terdapat halangan atau objek maka gelombang tersebut akan memantul. Pantulan gelombang akan dideteksi oleh receiver. Rangkaian kontrol akan mendeteksi pantulan gelombang dan menghitung lama waktu saat gelombang dipancarkan dan gelombang terdeteksi pantulannya. Lama waktu pemantulan gelombang ini akan dikonversi menjadi sinyal digital dalam bentuk pulsa. Sinyal inilah yang nantinya diolah oleh mikrokontroler atau mikroprosesor sehingga didapat nilai jarak antara objek dan sensor. Nilai jarak dapat diperoleh melalui rumus berikut ini :

Jarak (cm) = Lama Waktu Pantul (uS) / 29.034 / 2

Rumus jarak didapat dari pembagian lama waktu pantul dengan kecepatan gelombang ultrasonik dan dibagi 2 karena pada saat pemantulan terjadi dua kali jarak tempuh antara sensor dengan objek. Yaitu pada saat gelombang dipancarkan dari transmitter ke objek dan pada saat gelombang memantul ke receiver ultrasonik.

K. DOTMATRIX

Dot matrix adalah susunan titik-titik dua dimensi yang digunakan untuk menampilkan karakter-karakter, simbol atau gambar. Dahulu dot matrix digunakan pada printer-printer tua dan banyak perangkat tampilan digital. Pada printer, titik-titik tersebut adalah daerah yang diredupkan. Sedangkan pada display, titik-titik tersebut adalah daerah yang bercahaya. Sebagaimana pada LED atau CRT display cara kerjanya titik-titik yang sebelumnya mati, bercahaya sesuai sesuai obyek yang diinginkan.
Dot matrix banyak digunakan untuk menampilkan informasi pada mesin-mesin, jam, indikator keberangkatan kereta api dan perangkat lainnya yang membutuhkan display sederhana untuk resolusi yang terbatas. Display ini terdiri dari LED yang tersusun secara matrix berbentuk segi empat (bentuk selain segi empat juga ada) sehingga dengan menyalakan/mematikan lampu yang diinginkan, teks atau grafik yang dapat ditampilkan. Pengendali dot matrix mengkonversi instruksi dari decoder ke dalam sinyal elektris yang dapat menyalakan atau mematikan lampu sehingga tampilan yang diinginkan dapat terjadi. 

Menampilkan LM35 ke LCD




  1.  Pastikan semua supply dalam keadaan off
  2.  Hubungkan jumper seperti gambar dibawah
  3.  Buatlah listing program yang telah ada pada modul.
  4.  Hidupkan supply pada modul
  5.  Upload program pada rangkaian
  6.  Tekan tombol Reset
  7.  Amati percobaan, jika tidak sesuai perbaiki rangkaian atau program
  8.  Jika sesuai, maka selesai dan demokan pada instruktur atau asisten yang            
       mengawas

  9.  Matikan supply pada modul


1. Hardware [kembali]

IC LM35

LCD

Arduino Uno



2. Rangkaian Simulasi [kembali]


3. Flowchart[kembali] 



4. Listing Program [kembali]
#include

#define LM35 A7
//                RS  E   D4  D5  D6  D7
LiquidCrystal lcd(23 , 25 , 27 , 29 , 31, 33);
int nilaiSuhu ;


void setup()
{
  pinMode (A7,INPUT);
  lcd.begin(16, 2);

}
void loop()
{
  nilaiSuhu = analogRead(LM35) * 5.00 * 100.00 / 1023.00;

  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print("LM35 Sensor Suhu");   lcd.setCursor(7, 1);
  lcd.print(nilaiSuhu); 
  delay (100); 
}

5. Video [kembali]


6. Prinsip Kerja [kembali]

Berdasarkan datasheet sensor suhu LM 35 terdapat penjelasan sebagai berikut
• Calibrated directly in Celsius (Centigrade)
• Linear + 10.0 mV/ C scale factor
• 0.5 C accuracy guaranteeable (at +25 C)
• Rated for full -55 to +150 C range
• Suitable for remote applications
• Low cost due to wafer-level trimming
• Operates from 4 to 30 volts
• Less than 60 A current drain
• Low self-heating, 0.08 C in still air
• Nonlinearity only 1/4 C typical
• Low impedance output, 0.1 W for 1 mA load]


Linear + 10.0 mV/ C scale factor
Ini menunjukkan bahwa sensor suhu LM35 menghasilkan output berupa tegangan yang nilai nya linear terhadap suhu. 
Dengan penjelasan berikut :
Setiap kenaikan suhu sebesar 1 derajat celcius , akan menghasilkan keluaran sebesar 10mVolt
Jika sensor suhu membaca suhu sebesar 100 derajat celcius, keluaran dari pin sensor tersebut adalah sebesar
100 x 10 mV = 1000mV = 1volt.
Berdasar penjelasan tersebut kita dapat ambil kesimpulan
Jika tegangan keluaran sensor adalah 1 volt, maka suhu sebesar 100 derajat celcius
Kesimpulannya, suhu = tegangan output sensor x 100

Arduino uno memiliki pin pin sebagai masukkan untuk membaca tegangan keluaran dari sensor LM35 terserbut, pin nya adalah pin analog to digital converter.

LCD akan menampilkan pembacaan suhu dari LM35.

7. Link Download [kembali]

Menampilkan Sensor Ultrasonic ke LCD




  1.  Pastikan semua supply dalam keadaan off
  2.  Hubungkan jumper seperti gambar dibawah
 3.  Buatlah listing program yang telah ada pada modul.
  4.  Hidupkan supply pada modul
  5.  Upload program pada rangkaian
  6.  Tekan tombol Reset
  7.  Amati percobaan, jika tidak sesuai perbaiki rangkaian atau program
   8.  Jika sesuai, maka selesai dan demokan pada instruktur atau asisten yang mengawas
   9.  Matikan supply pada modul


1. Hardware [kembali]



Sensor Ultrasonic


2. Rangkaian Simulasi [kembali]

3. Flowchart[kembali] 



4. Listing Program [kembali]
#include <LiquidCrystal.h>
LiquidCrystal lcd(23, 25, 27, 29, 31, 33);
int signal = 6;
int distance;
unsigned long pulseduration = 0;
void setup()
{
  pinMode(signal, OUTPUT);
  Serial.begin(9600);
  lcd.begin(16, 2);
}
void measureDistance()
{
  pinMode(signal, OUTPUT);
  digitalWrite(signal, LOW);
  delayMicroseconds(5);

  digitalWrite(signal, HIGH);
  delayMicroseconds(5);
  digitalWrite(signal, LOW);

  pinMode(signal, INPUT);

  pulseduration = pulseIn(signal, HIGH);
}
void loop()
{
  measureDistance();
  pulseduration = pulseduration / 2;
  distance = int(pulseduration / 29);
  // Display on LCD

  lcd.setCursor(0, 1);
  lcd.print(distance);
  delay(100);
  lcd.clear();
  lcd.setCursor(4, 1);
  lcd.print("cm");
  lcd.setCursor(0, 0);
  lcd.print("Distance :");

  // Display on serial monitor
  Serial.print("Distance - ");
  Serial.print(distance);
  Serial.println(" cm");
  delay(50);
}


5. Video [kembali]

6. Prinsip Kerja [kembali]

           Sensor Ultrasonik dapat berfungsi sebagai pemancar maupun penerima gelombang ultrasonik. Sensor yang ada di pasaran berbentuk silinder dengan warna silver. Satu paket sensor ultrasonik terdiri dari 2 sensor. Dikemas dalam satu board. Satu sensor sebagai pemancar dan satu sensor lagi sebagai penerima.

Ada 3 pin/kaki pada sensor ultrasonik yang digunakan :

1. Pin Signal terbagi 2 :

  • Trigger : Pemancar gelombang ultrasonik
  • Echo : Penerima gelombang ultrasonik
2. Pin VCC : sebagai pin koneksi ke power supply
3. Pin Ground : sebagai pin koneksi ke Ground

Prinsip kerja :
Selama belum ada penghalang pada sensor ultrasonik maka logika echo akan HIGH atau selama gelombang ultrasonik masih merambat, maka logika echo akan tetap HIGH. Begitu ada penghalang sebagian gelombang akan diteruskan ke media yang ditabrak, dan sebagian lagi akan memantul dan kembali ke arah sensor. Pada saat ultrasonik diterima kembali oleh sensor, maka otomatis pin echo akan berubah logikanya menjadi LOW.

LCD digunakan sebagai output akan menampilkan jarak yang terbaca antara sensor ultrasonik dan penghalang gelombang ultrasonik.


7. Link Download [kembali]