Tugas Pendahuluan 2

 Tp 2 : Kondisi 3



Tugas Pendahuluan 2 Modul 1
(Percobaan 2 Kondisi 4)

1. Prosedur 
[Kembali]

1. Rangkai rangkaian di proteus sesuai dengan kondisi percobaan.
2. Tulis program untuk arduino di software Arduino IDE.
3. Compile program tadi, lalu upload ke dalam arduino.
4. Setelah program selesai di upload, jalankan simulasi rangkaian pada proteus.

2. Hardware dan Diagram Blok [Kembali]

Hardware :

a) Arduino Uno



2. Push Button




3. Seven Segment 2 Digit




Diagram Blok  :


3. Rangkaian Simulasi dan Prinsip Kerja [Kembali]

Rangkaian Simulasi :




Prinsip Kerja : 

Pada rangkaian percobaan 2 ini menggunakan komponen keypad manual dengan menggunakan susunan button yang membentuk pola keypad 4x4, kemudian sebuah arduino dan seven segment. Dimana ketika dijalankan arduino akan memberikan output pada setiap baris di keypad agar nantinya ketika button keypad ditekan akan dilewati arus sehingga pada kolom akan menjadi input pada arduino dan dapat terbaca angka/huruf yang dimaksud pada program. Dengan kondisi ketika baris 1 kolom 3 ditekan maka nanti nya pada baris 1 akan dialiri arus dan button sesuai kondisi ditekan maka arus diteruskan menuju kolom 3 dan kembali ke arduino, pada program sudah dibuat bahwa ketika kondisi tersebut  angka yang dimaksud adalah 1. Kemudian ketika arduino sudah membaca bahwa angka 1 yang ditekan, arduino akan memberikan output pada seven segment, segment mana saja yang hidup agar dapat menampilkan angka 1 pada seven segment, pada kasus ini segment yang dimaksud adalah B dan C.

4. Flowchart dan Listing Program [Kembali]

Flowchart :





Listing Program :

#include <Keypad.h>

const byte ROWS = 4; // Empat baris
const byte COLS = 4; // Empat kolom

char keys[ROWS][COLS] = {
  {'3','2','1','A'},
  {'4','5','6','B'}, // Layout keypad 4x4
  {'7','8','9','C'},
  {'*','0','#', 'D'}
};

byte rowPins[ROWS] = {A4, A3, A2, A1}; // Hubungkan dengan pin baris keypad
byte colPins[COLS] = {10, 11, 12, 13}; // Hubungkan dengan pin kolom keypad

Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);

const int segmentPins[] = {2, 3, 4, 5, 6, 7, 8, 9}; // Hubungkan dengan pin-pins segment seven-segment display

void setup() {
  for (int i = 0; i < 8; i++) {
    pinMode(segmentPins[i], OUTPUT);
    digitalWrite(segmentPins[i], HIGH); // Atur semua segment off (common anode)
  }
}

void loop() {
  char key = keypad.getKey();
  if (key) {
    displayCharacter(key);
    delay(1000);
    clearDisplay();
  }
}

void displayCharacter(char ch) {
  // Definisikan pola segment untuk setiap digit (0-9)
  // Contoh: Menampilkan '1'
  //  A
  // F B
  //  G
  // E C
  //  D
  byte patterns[][8] = {
    {0, 0, 0, 0, 0, 0, 1}, // 0
    {1, 0, 0, 1, 1, 1, 1}, // 1
    {0, 0, 1, 0, 0, 1, 0}, // 2
    {0, 0, 0, 0, 1, 1, 0}, // 3
    {1, 0, 0, 1, 1, 0, 0}, // 4
    {0, 1, 0, 0, 1, 0, 0}, // 5
    {0, 1, 0, 0, 0, 0, 0}, // 6
    {0, 0, 0, 1, 1, 1, 1}, // 7
    {0, 0, 0, 0, 0, 0, 0}, // 8
    {0, 0, 0, 0, 1, 0, 0}, // 9
    {0, 0, 0, 0, 0, 1, 0}, // A
    {1, 1, 0, 0, 0, 0, 0}, // B
    {0, 1, 1, 0, 0, 0, 1}, // C
    {1, 0, 0, 0, 0, 1, 0}  // D
  };

  int index;
  if (ch >= '0' && ch <= '9') {
    index = ch - '0';
  } else if (ch >= 'A' && ch <= 'D') {
    index = ch - 'A' + 10;
  } else {
    return;
  }

  // Tulis pola ke pin-pin segment
  for (int i = 0; i < 7; i++) {
    digitalWrite(segmentPins[i], patterns[index][i]);
  }
}

void clearDisplay() {
  for (int i = 0; i < 8; i++) {
    digitalWrite(segmentPins[i], HIGH); // Matikan semua segment
  }
}


5. Kondisi [Kembali]

Percobaan 2 Kondisi 4
Kondisi 3 : Button baris 1 kolom 3 menampilkan angka 1


6. Video Simulasi [Kembali]








7. Download File [Kembali]

File Rangkaian klik disini
Video Percobaan klik disini
Listing Program klik disini
Datasheet Arduino klik disini
Datasheet Button klik disini

Tugas Pendahuluan 1

Tp 1 : Percobaan 1  Kondisi 4



Tugas Pendahuluan 1 Modul 1
(Percobaan 1 Kondisi 4)

1. Prosedur [Kembali]


1. Rangkai rangkaian di proteus sesuai dengan kondisi percobaan.
2. Tulis program untuk arduino di software Arduino IDE.
3. Compile program tadi, lalu upload ke dalam arduino.
4. Setelah program selesai di upload, jalankan simulasi rangkaian pada proteus.

2. Hardware dan Diagram Blok [Kembali]

Hardware :

1. Arduino



2. Switch





4. Resistor





Diagram Blok:



3. Rangkaian Simulasi dan Prinsip Kerja [Kembali]

Rangkaian Simulasi :





Prinsip Kerja :

Pada percobaan 5 ini menggunakan prinsip kerja saat switch sesuai dengan kondisi yang diatur 1,2,3,4 makan akan menggerakana motor sesuai kondisinya dan juga dihubungkan dengan dot matrix untuk memberi tampilan sesuai kondisi, pemrogramanya sendiri berawal dengan pengaturan pin input berupa switch dan IR obtical, dimana IR obtical sendiri berfungsi sebagai triger pin enable pada motor driver. kemudian dilanjutkan dengan output berupa motor driver dan dot matrix yang dimana pada programnya diatur dengan beberapa kondisi tergantung switch yang aktif.
 
4. Flowchart dan Listing Program [Kembali]

Flowchart :


Listing Program :

#include <LedControl.h>
// Inisialisasi modul MAX7219 
 LedControl lc = LedControl(5,6,7,1); 
// Pin DIN, CLK, LOAD (CS) dihubungkan ke Arduino 
 byte patterns[8] = {0, 0, 0, 0, 0, 0, 0, 0}; // Pola LED untuk ditampilkan 
 // Pengaturan pin untuk dipswitch dan motor 
 const int potensio = A0; 
 const int infrared = 8; 
 const int enable = 4; 
 const int motor1Pin1 = 2; 
 const int motor1Pin2 = 3; 
 void setup() 
 // Set up dot matrix module 
 lc.shutdown(0, false); // Mengaktifkan modul 
 lc.setIntensity(0, 8); // Mengatur kecerahan (0-15) 
 lc.clearDisplay(0); // Membersihkan tampilan 

 // Mengatur pin-pin sebagai output untuk motor 
 pinMode(enable, OUTPUT); 
 pinMode(infrared, INPUT); 
 pinMode(motor1Pin1, OUTPUT); 
 pinMode(motor1Pin2, OUTPUT); 
 Serial.begin(9600); 
 } 
 void loop() 
{
 // Membaca nilai dari lm35 
 float adc = analogRead(potensio); 
 Serial.println(adc); 
 // Membaca nilai dari infrared 
int infrarednya = digitalRead(infrared); 
 // Mengendalikan arah motor berdasarkan nilai dipswitch 
 if(infrarednya == HIGH)
 digitalWrite(enable, HIGH);
 if (adc <= 256) { 
 // Maju 
 digitalWrite(motor1Pin1, HIGH); 
 digitalWrite(motor1Pin2, LOW); 
 displayArrowRight(); 
 }
else if (adc >= 768) { 
 // Mundur 
 digitalWrite(motor1Pin1, LOW); 
 digitalWrite(motor1Pin2, HIGH); 
 displayArrowLeft(); 
 }
 else {
 // Berhenti 
 digitalWrite(motor1Pin1, LOW); 
 digitalWrite(motor1Pin2, LOW); 
 displayLetterX(); 
 } 
 } 
 else{ 
 digitalWrite(enable, LOW); 
 } 
 } 
 // Fungsi untuk menampilkan panah pada dot matrix 
 void 
displayArrow(byte pattern) 
 for (int row = 0; row < 8; row++) { 
 lc.setRow(0, row, pattern); 
 } 
delay(500); // Mengatur kecepatan animasi
lc.clearDisplay(0); 
 delay(500); // Jeda sebelum membaca input lagi 
 } 
 // Menampilkan panah ke kanan 
void displayArrowRight() { 
byte arrowRight[8] = { B00011000, B00001100, B00000110, B11111111, B00000110, B00001100, B00011000, B00000000 }; 
for (int row = 0; row < 8; row++) { 
 lc.setRow(0, row, arrowRight[row]); 
 } 
 } 
 // Menampilkan panah ke kiri 
 void 
displayArrowLeft() { 
 byte arrowLeft[8] = { B00011000, B00110000, B01100000, B11111111, B01100000, B00110000, B00011000, B00000000 }; 
for (int row = 0; row < 8; row++) { 
lc.setRow(0, row, arrowLeft[row]); 
}
 // Menampilkan huruf "X" 
void displayLetterX() { 
 byte letterX[8] = { B10000001, B01000010, B00100100, B00011000, B00011000, B00100100,B01000010, B10000001 }; 
for (int row = 0; row < 8; row++) { 
 lc.setRow(0, row, letterX[row]); 
 } 
 }  

5. Kondisi [Kembali]

Percobaan 5 Kondisi 4
Semua switch Pull-up, switch 1,2,3 motor ke kiri panah ke kanan, switch 1,2,4 motor ke kanan panah ke kiri


6. Video Simulasi [Kembali]







7. Download File [Kembali]

File Rangkaian klik disini
Video Percobaan klik disini
Listing Program klik disini
Datasheet Arduino klik disini
Datasheet Switch klik disini
Datasheet dotmatrix klik disini
Datasheet motor DC klik disini

Modul 1 : General input dan Output






1. Pendahuluan
[Kembali]

Konsep General Input Output (GPIO) pada mikrokontroler Arduino adalah fundamental dalam pengembangan berbagai proyek elektronik. Mikrokontroler Arduino, sebagai inti dari sebagian besar inisiatif Arduino, menyediakan pin-pin GPIO yang dapat diatur untuk mengendalikan berbagai perangkat, mulai dari keypad, dipswitch, hingga sensor-sensor seperti ultrasonik, suara, PIR, dan suhu LM35. Keypad berfungsi sebagai antarmuka input untuk memasukkan data atau instruksi ke dalam mikrokontroler, sedangkan dipswitch memberikan input digital melalui saklar yang dapat dikonfigurasi. Komponen tampilan seperti 7-Segment dan dot matriks digunakan untuk menampilkan informasi dalam bentuk karakter, angka, atau gambar dengan mengatur output pada pin yang sesuai. Sementara itu, LCD menggunakan teknologi kristal cair untuk menampilkan teks atau grafik, yang dapat dikendalikan oleh Arduino melalui pin GPIO. Sensor-sensor seperti ultrasonik, suara, PIR, dan suhu LM35, masing-masing memberikan informasi berdasarkan kondisi lingkungan sekitarnya, seperti jarak, keberadaan suara, gerakan, dan suhu. Arduino mampu membaca data dari sensor-sensor ini dan menanggapinya sesuai dengan logika program yang telah ditentukan, membuka berbagai kemungkinan aplikasi dalam bidang elektronika dan otomatisasi sistem.

2. Tujuan [Kembali]

a) Memahami cara penggunaan input dan output digital pada mikrokontroler
b) Menggunakan komponen input dan output sederhana dengan Arduino

3. Alat dan bahan [Kembali]

a) Modul Arduino



b) Keypad 





c) 7-Segment 

d) LED



e) Push Button


4. Dasar Teori [Kembali]

a) Modul Arduino
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 dalam praktikum ini adalah Arduino Uno yang menggunakan chip AVR ATmega 328P. Dalam memprogram Arduino, kita bisa menggunakan komunikasi serial agar Arduino dapat berhubungan dengan komputer ataupun perangkat lain. Adapun spesifikasi dari Arduino Uno ini adalah sebagai berikut :





BAGIAN-BAGIAN ARDUINO UNO 

1. POWER USB 
Digunakan untuk menghubungkan Papan Arduino dengan komputer lewat koneksi USB.


2. POWER JACK 
Supply atau sumber listrik untuk Arduino dengan tipe Jack. Input DC 5 - 12 V.


3. Crystal Oscillator
 Kristal ini digunakan sebagai layaknya detak jantung pada Arduino. Jumlah cetak menunjukkan 16000 atau 16000 kHz, atau 16 MHz.


4. Reset 
Digunakan untuk mengulang program Arduino dari awal atau Reset.


5. Digital Pins I / O 
Papan Arduino UNO memiliki 14 Digital Pin. Berfungsi untuk memberikan nilai logika ( 0atau 1 ). Pin berlabel " ~ " adalah pin-pin PWM ( Pulse Width Modulation ) yang dapat digunakan untuk menghasilkan PWM. 


6. Analog Pins 
Papan Arduino UNO memiliki 6 pin analog A0 sampai A5. Digunakan untuk membaca sinyalatau sensor analog seperti sensor jarak, suhu dsb, dan mengubahnya menjadi nilai digital. 


7. LED Power Indicator 
Lampu ini akan menyala dan menandakan Papan Arduino mendapatkan supply listrik dengan baik. 


BAGIAN-BAGIAN PENDUKUNG 

1. RAM 
RAM (Random Access Memory) adalah tempat penyimpanan sementara pada komputer yang isinya dapat diakses dalam waktu yang tetap, tidak memperdulikan letak data tersebut dalam memori atau acak. Secara umum ada 2 jenis RAM yaitu SRAM (Static Random Acces Memory) dan DRAM (Dynamic Random Acces Memory). 


2. ROM 
ROM (Read-only Memory) adalah perangkat keras pada computer yang dapat menyimpan data secara permanen tanpa harus memperhatikan adanya sumber listrik. ROM terdiri dari Mask ROM, PROM, EPROM, EEPROM

b) Keypad 





Keypad adalah bagian penting dari suatu perangkat elektronika yang membutuhkan interaksi manusia. Keypad berfungsi sebagai interface antara perangkat (mesin) elektronik dengan manusia atau dikenal dengan istilah HMI (Human Machine Interface). Matrix keypad 4×4 pada artikel ini merupakan salah satu contoh keypad yang dapat digunakan untuk berkomunikasi antara manusia dengan mikrokontroler. Matrix keypad 4×4 memiliki konstruksi atau susunan yang simple dan hemat dalam penggunaan port mikrokontroler. Konfigurasi keypad dengan susunan bentuk matrix ini bertujuan untuk penghematan port mikrokontroler karena jumlah key (tombol) yang dibutuhkan banyak pada suatu sistem dengan mikrokontroler. Konstruksi matrix keypad 4×4 untuk mikrokontroler dapat dibuat seperti pada gambar berikut. Konstruksi Matrix Keypad 4×4 Untuk Mikrokontroler Konstruksi matrix keypad 4×4 diatas cukup sederhana, yaitu terdiri dari 4 baris dan 4 kolom dengan keypad berupas saklar push buton yang diletakan disetiap persilangan kolom dan barisnya. Rangkaian matrix keypad diatas terdiri dari 16 saklar push buton dengan konfigurasi 4 baris dan 4 kolom. 8 line yang terdiri dari 4 baris dan 4 kolom tersebut dihubungkan dengan port mikrokontroler 8 bit. Sisi baris dari matrix keypad ditandai dengan nama Row1, Row2, Row3 dan Row4 kemudian sisi kolom ditandai dengan nama Col1, Col2, Col3 dan Col4. Sisi input atau output dari matrix keypad 4×4 ini tidak mengikat, dapat dikonfigurasikan kolom sebagi input dan baris sebagai output atau sebaliknya tergantung programernya. 

Proses Scaning Matrix Keypad 4×4 Untuk Mikrokontroler Proses scaning untuk membaca penekanan tombol pada matrix keypad 4×4 untuk mikrokontroler diatas dilakukan secara bertahap kolom demi kolom dari kolom pertama sampai kolom ke 4 dan baris pertama hingga baris ke 4. Program untuk scaning matrix keypad 4×4 dapat bermacam-macam, tapi pada intinya sama. Misal kita asumsikan keypad aktif LOW (semua line kolom dan baris dipasang resistor pull-up) dan dihubungkan ke port mikrokontrolr dengan jalur kolom adalah jalur input dan jalur baris adalah jalur output maka proses scaning matrix keypad 4×4 diatas dapat dituliskan sebagai berikut.


c) 7-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


d) LED 

Light Emitting Diode atau sering disingkat dengan LED adalah komponen elektronika yang dapat memancarkan  cahaya monokromatik ketika diberikan tegangan maju. LED merupakan keluarga Dioda yang terbuat dari bahan semikonduktor. Warna-warna Cahaya yang dipancarkan oleh LED tergantung pada jenis bahan semikonduktor yang dipergunakannya. LED juga dapat memancarkan sinar inframerah yang tidak tampak oleh mata seperti yang sering kita jumpai pada Remote Control TV ataupun Remote Control perangkat elektronik lainnya.

Bentuk LED mirip dengan sebuah bohlam (bola lampu) yang kecil dan dapat dipasangkan dengan mudah ke dalam berbagai perangkat elektronika. Berbeda dengan Lampu Pijar, LED tidak memerlukan pembakaran filamen sehingga tidak menimbulkan panas dalam menghasilkan cahaya.  Oleh karena itu, saat ini LED (Light Emitting Diode) yang bentuknya kecil telah banyak digunakan sebagai lampu penerang dalam LCD TV yang mengganti lampu tube.

Simbol dan Bentuk LED (Light Emitting Diode)

Bentuk dan Simbol LED (Light Emitting Diode)


Cara Kerja LED (Light Emitting Diode)

Seperti dikatakan sebelumnya, LED merupakan keluarga dari Dioda yang terbuat dari Semikonduktor. Cara kerjanya pun hampir sama dengan Dioda yang memiliki dua kutub yaitu kutub Positif (P) dan Kutub Negatif (N). LED hanya akan memancarkan cahaya apabila dialiri tegangan maju (bias forward) dari Anoda menuju ke Katoda.

LED terdiri dari sebuah chip semikonduktor yang di doping sehingga menciptakan junction P dan N. Yang dimaksud dengan proses doping dalam semikonduktor adalah proses untuk menambahkan ketidakmurnian (impurity) pada semikonduktor yang murni sehingga menghasilkan karakteristik kelistrikan yang diinginkan. Ketika LED dialiri tegangan maju atau bias forward yaitu dari Anoda (P) menuju ke Katoda (K), Kelebihan Elektron pada N-Type material akan berpindah ke wilayah yang kelebihan Hole (lubang) yaitu wilayah yang bermuatan positif (P-Type material). Saat Elektron berjumpa dengan Hole akan melepaskan photon dan memancarkan cahaya monokromatik (satu warna).

Cara kerja LED (Light Emitting Diode)

LED atau Light Emitting Diode yang memancarkan cahaya ketika dialiri tegangan maju ini juga dapat digolongkan sebagai Transduser yang dapat mengubah energi listrik menjadi energi cahaya.


e) Push Button


Push Button adalah perangkat / saklar sederhana yang berfungsi untuk menghubungkan atau memutuskan aliran arus listrik dengan sistem kerja tekan unlock (tidak mengunci). Sistem kerja unlock disini berarti saklar akan bekerja sebagai device penghubung atau pemutus aliran arus listrik saat tombol ditekan, dan saat tombol tidak ditekan (dilepas), maka saklar akan kembali pada kondisi normal. Sebagai device penghubung atau pemutus, push button switch hanya memiliki 2 kondisi, yaitu On dan Off (1 dan 0). Istilah On dan Off ini menjadi sangat penting karena semua perangkat listrik yang memerlukan sumber energi listrik pasti membutuhkan kondisi On dan Off.



Among Us - Crewmates

Modul 3 : Communication

[KEMBALI KE MENU SEBELUMNYA] DAFTAR ISI 1. Tujuan 2. Alat dan Bahan 3. Dasar Teori 4. Percobaan Percobaan A. Tugas Pendahuluan 1 B. Tugas...