Senin, 25 Maret 2024

TP Modul 2 Percobaan 4 Kondisi 4





PERCOBAAN 4 
Kontrol Motor Servo dengan PWM


1. Prosedur
[Kembali]

1. Rangkai semua komponen sesuai kondisi yang dipilih
2. Buat program di aplikasi arduino IDE
3. Setelah selesai masukkan program ke arduino di proteus
4. Jalankan program pada simulasi dan cobakan sesuai dengan modul dan kondisi
5. Selesai

2. Hardware dan diagram blok [Kembali]

A. Hardware
                                                   

1. Arduino Uno

2. Keypad 

3. Motor Servo



            B. Digram Blok




3. Rangkaian Simulasi dan Prinsip kerja [Kembali]

Gambar Rangkaian Sebelum Disimulasikan




Gambar Rangkaian Setelah Disimulasikan
                                        


Prinsip Kerja 

    Pada percobaan kali ini, kita akan menjalankan Kondisi 4, yang mana kita akan mengatur motor servo yang menjadi output dengan menggunakan keypad sebagai input. Keypad ini akan menghasilkan nilai PWM antara 255 hingga 0, dengan selisih 28 antara setiap nilai PWM. Motor servo, seperti yang diketahui, bergerak dengan presisi sesuai dengan sudut yang diberikan kepadanya melalui PWM. Dengan demikian, dalam percobaan ini, kami akan menggunakan keypad untuk mengontrol sudut motor servo secara tepat sesuai dengan nilai PWM yang ditentukan. Misalnya, jika kita memasukkan nilai PWM 255, maka motor servo akan bergerak ke posisi sudut yang sesuai dengan nilai tersebut, begitu juga dengan nilai-nilai PWM lainnya dari 255 hingga 0 dengan selisih 28 di antaranya.


4. FlowChart [Kembali]

A. 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}; 
byte colPins[numCols] = {5, 4, 3};     
 
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) { 
    Serial.println(key); 
     
    switch (key) { 
      case '1':  
        //nilai PWM 255
        servoMotor.write(180); 
        break; 
      case '2':
        //nilai PWM 227 
        servoMotor.write(160); 
        break; 
      case '3':
        //nilai PWM 199 
        servoMotor.write(140); 
        break; 
      case '4': 
        //nilai PWM 171
        servoMotor.write(120); 
        break; 
      case '5': 
        //nilai PWM 143
        servoMotor.write(100); 
        break; 
      case '6': 
        //nilai PWM 115
        servoMotor.write(80); 
        break; 
      case '7': 
        //nilai PWM 87
        servoMotor.write(60); 
        break; 
      case '8': 
        //nilai PWM 59
        servoMotor.write(40); 
        break; 
      case '9': 
      //nilai PWM 0
        servoMotor.write(0); 
        break; 
        default: 
        break; 
      } 
      } 
      }


B. Flowchart




5. Kondisi [Kembali]

Kondisi  →Percobaan 4 Kondisi 4

        Keypad 1 hingga 9 memberikan PWM 255-0 dengan jarak PWM antar Key 28.


6. Video Simulasi [Kembali]



7. Download File [Kembali]

Download HMTL Klik disini
Download Simulasi Rangkaian Klik disini
Download Video Simulasi Klik disini
Download Datasheet ARDUINO UNO klik disini
Download Datasheet TOUCH SENSOR  klik disini
Download Datasheet LCD 2X16 klik disini

Tidak ada komentar:

Posting Komentar

Entri yang Diunggulkan

LA MODUL 3 PERCOBAAN 2

  PERCOBAAN 2 [KEMBALI KE MENU SEBELUMNYA] DAFTAR ISI 1. Jurnal 2. Alat dan Bahan 3. Rangkaian Simulasi 4. Prinsip Kerja Rangka...