NIM : 2110951004

.

Kamis, 28 Maret 2024

M2_LA 2_Prak UpUc




1. Prosedur
[Kembali]
  1. Rangkai seluruh komponen alat dan bahan yang diperlukan sesuai dengan kondisi percobaan yang dipilih.
  2. Buat program arduino pada aplikasi Arduino IDE sesuai dengan kondisi percobaan. Pastikan aplikasi Arduino IDE sudah mendownload library yang dibutuhkan dan sudah memilih board arduino yang sesuai.
  3. Verifikasi atau upload program pada arduino. 
  4. Jalankan atau uji coba rangkaian yang telah dibuat sesuai dengan kondisi.
  5. Perhatikan rangkaian dan output apakah sesuai dengan kondisi.
  6. Rangkaian telah selesai dibuat.
2. Hardware dan Diagram Blok [Kembali]
    A. Hardware

    B. Diagram Blok

3. Rangkaian Simulasi dan Prinsip kerja [Kembali]
    A. Rangkaian Simulasi 
    
    B. Prinsip Kerja
Prinsip kerja program ini menggabungkan input dari keypad untuk mengontrol output servo motor. Setiap tombol keypad dipetakan ke posisi sudut tertentu untuk mengontrol pergerakan servo motor.

Secara umum, switch-case digunakan dalam program ini untuk menentukan aksi yang akan diambil berdasarkan nilai tombol yang ditekan pada keypad. Setiap case memetakan satu tombol pada keypad ke posisi tertentu untuk menggerakkan servo motor ke sudut yang sesuai. Dengan demikian, switch-case ini berperan sebagai mekanisme kontrol yang memungkinkan pengguna untuk mengontrol pergerakan servo motor dengan keypad.
  • case '1': - Jika tombol 1 ditekan, servo motor akan diputar ke posisi 0 derajat.
  • case '2': - Jika tombol 2 ditekan, servo motor akan diputar ke posisi 45 derajat.
  • case '3': - Jika tombol 3 ditekan, servo motor akan diputar ke posisi 90 derajat.
  • case '4': - Jika tombol 4 ditekan, servo motor akan diputar ke posisi 135 derajat.
  • case '5': - Jika tombol 5 ditekan, servo motor akan diputar ke posisi 180 derajat.
  • case '6': - Jika tombol 6 ditekan, servo motor akan diputar ke posisi 135 derajat.
  • case '7': - Jika tombol 7 ditekan, servo motor akan diputar ke posisi 90 derajat.
  • case '8': - Jika tombol 8 ditekan, servo motor akan diputar ke posisi 45 derajat.
  • case '9': - Jika tombol 9 ditekan, servo motor akan diputar ke posisi 0 derajat.
Dalam switch-case tersebut, setiap tombol keypad dipetakan ke posisi sudut tertentu untuk menggerakkan servo motor ke posisi yang diinginkan.

4. Flowchart dan Listing Program [Kembali]
    A. Flowchart

    B. 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. Video Demo [Kembali]

6. Kondisi [Kembali]
    Percobaan 4 Kontrol Motor Servo dengan PWM

7. Download File [Kembali]
File Rangkaian  File HTML
Share:

0 komentar:

Posting Komentar

Blogger news

Blogger templates