Jumat, 22 Maret 2024

Laporan Akhir 1 Modul 2






1. Prosedur
[Kembali]
    1. Rangkai semua komponen sesuai percobaan.

    2. Buat program di aplikasi arduino IDE.

    3. Setelah selesai masukkan program ke arduino.

    4. Jalankan program pada rangkaian dan cobakan sesuai dengan modul.

    5. Selesai.


2. Hardware dan diagram blok [Kembali]

Hardware

1. Arduino Uno


2. Motor Servo

3. Keypad



Diagram Blok

3. Rangkaian simulasi dan prinsip kerja [Kembali]

    Rangkaian Simulasi

    Prinsip Kerja
    
   Pertama impor library servo dan keypad untuk mengendalikan motor servo dan keypad. Kemudian tentukan pin pwm untuk servo berikut dengan jumlah baris dan kolom pada keypadnya. Atur terlebih dahulu pada program posisi awal dari servo yaitu 90 derajat (posisi tengah) dan mulai komunikasi serial pada baud rate 9600. Pada kasus pertama, jika ditekan tombol 1 servo bergerak ke posisi 0 derajat. Pada kasus kedua, jika ditekan tombol 2 servo bergerak ke posisi 45 derajat. Kasus ketiga, jika ditekan tombol 3 servo akan bergerak ke posisi 90 derajat . Ia akan bertambah 45 derajat setiap pertambahan angka. Posisi motor servo akan berkurang 45 derajat saat kasus keenam dan kasus ke sembilan motor servo akan balik ke posisi awal yaitu 0 derajat

4. Flowchart dan listing program [Kembali]

Flowchart


Listing Program

#include <Servo.h> 
#include <Keypad.h> 
Servo servoMotor; 
const int servoPin = 11; // PWM pin for servo 
const int numRows = 4;  // Number of rows in keypad 
const int numCols = 3;  // Number of columns in keypad 
char keys[numRows][numCols] = { 
{'1', '2', '3'}, 
{'4', '5', '6'}, 
{'7', '8', '9'}, 
{'*', '0', '#'} 
}; 
byte rowPins[numRows] = {9, 8, 7, 6}; // Rows 0 to 3 
byte colPins[numCols] = {5, 4, 3};     
// Columns 0 to 2

Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, numRows, numCols); 
 
void setup() { 
  servoMotor.attach(servoPin); 
  servoMotor.write(90); // Initial position 
  Serial.begin(9600); 
 
void loop() { 
  char key = keypad.getKey(); 
   
  if (key != NO_KEY) { 
    Serial.println(key); 
     
    // Perform actions based on the key pressed 
    switch (key) { 
      case '1': 
        // Move servo to position 0 degrees 
        servoMotor.write(0); 
        break; 
      case '2': 
        // Move servo to position 45 degrees 
        servoMotor.write(45); 
        break; 
      case '3': 
        // Move servo to position 90 degrees 
        servoMotor.write(90); 
        break; 
      case '4': 
        // Move servo to position 135 degrees 
        servoMotor.write(135); 
        break; 
      case '5': 
        // Move servo to position 180 degrees 
        servoMotor.write(180); 
        break; 
      case '6': 
        // Move servo to position 135 degrees 
        servoMotor.write(135); 
        break; 
      case '7': 
        // Move servo to position 90 degrees 
        servoMotor.write(90); 

break; 
case '8': 
// Move servo to position 45 degrees 
servoMotor.write(45); 
break; 
case '9': 
// Move servo to position 0 degrees 
servoMotor.write(0); 
break; 
default: 
break; 
}

5. Kondisi [Kembali]

Modul 2 Percobaan 4 Kontrol Motor Servo dengan PWM

6. Video demo [Kembali]


7. Link Download [Kembali]
Download HTML klik disini
Download Simulasi Rangkaian klik disini
Download Video Demo klik disini
Download Listing Program klik disini
Download Library Arduino Uno klik disini
Download Datasheet Arduino Uno klik disini
Download Datasheet Keypad klik disini
Download Datasheet Motor Servo klik disini


0 komentar:

Posting Komentar