Jumat, 22 Maret 2024

Laporan Akhir 2

 [KEMBALI KE MENU SEBELUMNYA]



Percobaan 4
Kontrol Motor Servo dengan PWM
 

1. Foto Hardware dan Diagram Blok [Kembali]

Foto Hardware:



Diagram Blok:



2. PROSEDUR PERCOBAAN [Kembali]
  1. Rangkai semua komponen 
  2. Buat program di aplikasi arduino IDE
  3. Setelah selesai masukkan program ke arduino 
  4. Jalankan program pada simulasi dan cobakan dengan modul

3. RANGKAIAN SIMULASI DAN PRINSIP KERJA[Kembali]

Rangkaian Simulasi:



Prinsip Kerja :

Input dari rangkaian ini adalah keypad, sementara outputnya adalah motor servo. Agar input dapat memengaruhi output, maka terdapat instruksi atau perintah berupa program yang berjalan pada mikrokontroler yang digunakan, yaitu arduino uno. 

Dalam program, motor servo ditempatkan pada posisi awal 90 derajat, pin data-nya dihubungkan pada pin PWM pada arduino uno sebagai pengatur posisi dan kecepatannya. Setiap tombol pada keypad memiliki nilai yang berbeda. Ketika tombol ditekan, maka program akan menggerakkan motor servo sesuai dengan nilai yang ditetapkan pada setiap kasus. Nilai yang diberikan pada keypad adalah sebagai berikut.
  1. Tombol "1" menyebabkan pergerakan motor servo ke posisi 0 derajat.
  2. Tombol "2" menyebabkan pergerakan motor servo ke posisi 45 derajat.
  3. Tombol "3" menyebabkan pergerakan motor servo ke posisi 90 derajat.
  4. Tombol "4" menyebabkan pergerakan motor servo ke posisi 135 derajat.
  5. Tombol "5" menyebabkan pergerakan motor servo ke posisi 180 derajat.
  6. Tombol "6" menyebabkan pergerakan motor servo ke posisi 135 derajat.
  7. Tombol "7" menyebabkan pergerakan motor servo ke posisi 90 derajat.
  8. Tombol "8" menyebabkan pergerakan motor servo ke posisi 45 derajat.
  9. Tombol "9" menyebabkan pergerakan motor servo ke posisi 0 derajat.      
Program tertera pada bagian 4 (FLOWCHART DAN LISTING PROGRAM).
 


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]
Input dari rangkaian adalah keypad dengan output motor servo. Motor servo ditempatkan pada posisi awal 90 derajat, pin data-nya dihubungkan pada pin PWM pada arduino uno sebagai pengatur posisi dan kecepatannya. Setiap tombol pada keypad memiliki nilai yang berbeda. Ketika tombol ditekan, maka program akan menggerakkan motor servo sesuai dengan nilai yang ditetapkan pada setiap kasus.

6. VIDEO RANGKAIAN [Kembali]



7. ANALISA [Kembali]
 


8. LINK DOWNLOAD [Kembali]

HTML klik disini

Gambar Hardware  klik disini

Gambar Simulasi  klik disini

Video Demo  klik disini

Listring Program  klik disini

Entri yang Diunggulkan

Modul 4

[KEMBALI KE MENU SEBELUMNYA] DAFTAR ISI 1. Tujuan Perancangan 2. Komponen 3. Dasar Teori 4. Listing Program 5. Flowchart...