Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 

Repository files navigation

Laporan Proyek Sistem Kendali PID pada Motor Servo (Pintu Otomatis)

Mata Kuliah: Sistem Kendali dan Mekanika Dosen: HASBI ASH SHIDDIEQY A Nama Kelompok: 2 Tanggal: 08-01-2025

Nama Kelompok

  • Muhammad Fitran Ramadhan/1103220156
  • Muhammad Daulah Izzathurrahman/1103223197
  • Mochammad Pasha Suryatama/1103223191
  • Raihan Guntur Ramadhan/1103223185

Daftar Isi

[TOC]

1. Pendahuluan

1.1 Latar Belakang

Sistem kendali PID (Proportional-Integral-Derivative) merupakan salah satu metode kendali yang paling banyak digunakan untuk mengatur sistem dinamis. Pada sistem kendali pintu otomatis, PID dapat digunakan untuk mengatur gerakan pintu agar lebih halus dan responsif terhadap perubahan jarak objek. Dengan mengatur parameter proporsional, integral, dan derivatif, sistem dapat mencapai posisi target dengan cepat sekaligus meminimalkan osilasi.

1.2 Tujuan

  1. Menerapkan kendali PID pada pintu otomatis untuk meningkatkan akurasi dan stabilitas gerakan.
  2. Memastikan pintu bergerak responsif terhadap data sensor jarak.

2. Desain Sistem

2.1 Rancangan Sistem Kendali Loop Tertutup PID

Pada sistem kendali pintu otomatis, loop tertutup PID digunakan untuk mengontrol posisi aktuator (servo). Sensor jarak (ultrasonik) mendeteksi keberadaan objek, sensor jarak laser (VL53L0X V2), dan Arduino mengolah data untuk menghitung error (selisih antara posisi pintu target dan posisi saat ini).

  • Daftar komponen:
    1. Sensor jarak (VL53L0X V2)
    2. Microcontroller (Arduino Uno)
    3. Servo Motor (SG90)
    4. Sensor deteksi objek (HC-SR04)
  • Feedback: Posisi pintu dikontrol agar sesuai target.
  • Blok Diagram Loop: Untitled Diagram Deskripsi: Input: Setpoint (posisi yang diinginkan) Pengendali PID: Menyesuaikan posisi pintu berdasarkan error Plant: servo motor Output: posisi aktual

2.2 Persamaan PID dan metode tuning

$$ u(t)=K_pe(t)+K_i∫e(t)dt+K_d \frac{de(t)}{dt} $$

Kp: Gain Proportional
Ki: Gain Integral
Kd: Gain Derivatif

Metode tuning:

  1. Ziegler-Nichols: Menentukan $K_p$, $K_i$, dan $K_d$ secara eksperimental.
  2. Manual Tuning: Menyesuaikan parameter secara bertahap untuk mencapai respons optimal.

2.3 Mekanik Motor Servo

Penjelasan tentang bentuk tipe mekanik yang digunakan: Interaksi pergerakan servo dengan sliding door. Sliding door dihubungkan dengan servo motor menggunakan mekanisme engsel. mengonversi dari satuan sudut (derajat) ke satuan jarak (milimeter). WhatsApp Image 2025-01-10 at 16.42.35_c880b76d

Fungsi transfer: $$ TF = \frac{output}{input} = \frac{door_{distance}}{servo_{degree}} $$

perhitungan ketika menutup pintu

  • servo degree input = 142 degree
  • Mendapatkan output posisi pintu = 269 mm $$ TF = \frac{door_{distance}}{servo_{degree}} = \frac{269 mm}{142 degree} = 1,894 mm/degree $$

perhitungan ketika membuka pintu

  • servo degree input = 27 degree
  • Mendapatkan output posisi pintu = 52 mm $$ TF = \frac{door_{distance}}{servo_{degree}} = \frac{52 mm}{27 degree} = 1,926 mm/degree $$

3. Pengujian Sistem

Tuning parameter PID (P, I, D) menggunakan metode trial-and-error dan Ziegler-Nichols.

3.1 Analisis Transient Respon (PID)

serial plot memungkinkan melakukan plot realtime data hasil dari data serial

    // Debugging
    // Serial.print(" || Setpoint: ");
    // Serial.print(setpoint);

    currentPosition = doorPos();

    // Serial.print(" mm || Current: ");
    Serial.println(currentPosition);
    // Serial.print(" mm || Servo Input: ");
    // Serial.print(servoInput);
    // Serial.print(" || error sebelumnya: ");
    // Serial.print(*previousError);
    // Serial.print(" mm || integral: ");
    // Serial.println(*integral);

Gambar plot: Respon sistem terhadap perubahan setpoint dan konstanta PID

Transient response untuk setpoint 52mm dari 269mm.
Konstanta PID (sebelum tuning): Kp = 1.2, Ki = 0.02, Kd = 0.8
image
Transient response untuk setpoint 269mm dari 52mm.
Konstanta PID (sebelum tuning): Kp = 1.2, Ki = 0.02, Kd = 0.8
image
Transient response untuk setpoint 52mm dari 269mm.
Konstanta PID (setelah tuning): Kp = 0.8, Ki = 0.015, Kd = 0.6
image
Transient response untuk setpoint 269mm dari 52mm.
Konstanta PID (setelah tuning): Kp = 0.8, Ki = 0.015, Kd = 0.6
image

Kesimpulan Hasil Serial Plotter: steady-state error akan lebih besar jika PID belum di-tuning.

Tabel: Respon sistem terhadap perubahan setpoint dan konstanta PID. Perhitungan menggunakan kamera slow-motion.

Setpoint (millimeter) Kp Ki Kd Delay time (Td) Rise time (Tr) Peak time (Tp) Settling time (Ts)
52 1.2 0.02 0.8 140ms 300ms 340ms 4240ms
269 1.2 0.02 0.8 180ms 380ms 430ms 1960ms
52 0.8 0.015 0.6 160ms 290ms 710ms 1040ms
269 0.8 0.015 0.6 130ms 400ms 430ms 1030ms

Kesimpulan hasil analisis kamera slow-mo: waktu yang dibutuhkan untuk mencapai settling time akan lebih panjang jika PID belum di-tuning.

3.2 Analisis Mekanik Servo

Analisis motor servo

Duty Cycle (%) Nilai Output (Average voltage) Output Terukur (Degress) Time Respone (s)
5% 0,25V 0 Degree 20ms
6% 0,3V 36 Degree 20ms
7% 0,35V 72 Degree 20ms
8% 0,4V 108 Degree 20ms
9% 0,45V 144 Degree 20ms
10% 0,5V 180 Degree 20ms

Pengukuran Servo Grafik Average Voltage vs Output Degrees Screenshot 2025-01-09 114436

3.3 Analisis Hasil

Sistem menunjukkan kestabilan dengan nilai steady-state error yang rendah dan rise time cepat. Overshoot masih dalam batas wajar, dan performa tuning parameter mendekati optimal.

4. Evaluasi kinerja sistem

Apakah parameter PID yang dirancang telah optimal?

ya, parameter PID yang dimasukkan sudah optimal. hitungan waktu transient response sudah menunjukkan angka optimal.

Apakah sistem dapat mempertahankan performa optimal dalam jangka waktu lama?

Sistem kurang dapat mempertahankan performa optimal dalam jangka waktu lama. Hal ini dikarenakan koneksi antara sensor jarak VL53L0X V2 dengan Arduino Uno melalui jumper, terdapat kendala. kabel yang menghubungkan pin SDA dan SCL kurang kuat, sehingga terkadang mengalami hilang sinyal.

Berdasarkan hasil pengujian, parameter PID yang dirancang menunjukkan performa optimal/tidak dalam mengendalikan motor listrik. Hal ini ditunjukkan oleh:

  1. Nilai steady-state error yang kecil
  2. Respon waktu rise time yang cepat
  3. Overshoot rendah sehingga sistem cukup stabil

5 Hasil dan Saran

5.1 Kesimpulan

Kendali PID berhasil diimplementasikan untuk mencapai kestabilan posisi motor servo. Kinerja sistem memenuhi kriteria dengan overshoot kecil dan steady-state error yang minimal.

5.2 Rekomendasi

Menggunakan metode tuning adaptif untuk hasil yang lebih optimal. Implementasi lebih lanjut pada rangkaian sliding door yang lebih bagus. Sliding door dapat menggunakan roda agar pergerakan lebih lancar.

Dokumentasi Proyek

Foto Implementasi:

Rangkaian
image
Tampilan depan
image
PID membuka
image
Posisi tutup (setelah PID tutup)
image

Video Demonstrasi: https://www.youtube.com/watch?v=FKXibIXa-74

Watch the video

Link Kode Program: https://github.com/MFitran/Tugas-Besar-Sistem-Kendal-Mekanika_Automatic-Sliding-Door.git

Referensi

Rubrik Penilaian Proyek Kendali PID CLO3

CLO3 Mampu menentukan dan menerapkan penggunaan kendali proporsional, integral, datau derivatif pada motor listrik untuk mencapai kestabilan.

Aspek Penilaian Indikator Kinerja Level 4 (Sangat Baik) Level 3 (Baik) Level 2 (Cukup) Level 1 (Kurang) Skor Maksimum
1. Desain dan Implementasi Sistem (1,2) Ketepatan merancang parameter PID, pemodelan sistem, dan implementasi perangkat keras/lunak Desain parameter sangat tepat, implementasi lengkap dan sistem berjalan optimal. Desain parameter cukup tepat, implementasi hampir lengkap, sistem berjalan baik. Desain kurang akurat, implementasi tidak lengkap, sistem berjalan kurang optimal. Desain tidak tepat, implementasi buruk, sistem tidak berfungsi. 30
2. Pengujian Sistem (3) Kualitas pengujian performa sistem (respon terhadap setpoint, gangguan, dan perubahan beban) Pengujian menyeluruh, sistem stabil, respon cepat dan overshoot minimal. Pengujian cukup baik, sistem stabil dengan respon wajar. Pengujian terbatas, sistem kurang stabil, respon lambat. Pengujian buruk, sistem tidak stabil dan respon tidak memadai. 30
3. Analisis dan Evaluasi Kinerja Sistem (4,5) Kelengkapan analisis hasil pengujian serta evaluasi performa sistem (error, kestabilan, perbaikan tuning) Analisis mendalam, error minimal, rekomendasi perbaikan jelas dan akurat. Analisis memadai, error kecil, rekomendasi cukup baik. Analisis kurang mendalam, error signifikan, rekomendasi terbatas. Analisis tidak jelas, error besar, tidak ada rekomendasi perbaikan. 30
4. Presentasi dan Dokumentasi Proyek Kualitas dokumentasi laporan dan kemampuan menyampaikan serta memahami proyek Laporan lengkap, penyajian sangat jelas, pemahaman mendalam. Laporan cukup lengkap, penyajian jelas, pemahaman baik. Laporan kurang lengkap, penyajian tidak jelas, pemahaman terbatas. Laporan tidak lengkap, penyajian buruk, pemahaman lemah. 10

Skor Akhir dan Kriteria Penilaian

Rentang Skor Deskripsi Tingkat Pencapaian
85 - 100 Sangat Baik: Proyek memenuhi semua luaran dengan performa optimal dan analisis mendalam.
70 - 84 Baik: Proyek mencapai sebagian besar luaran dengan performa baik dan analisis memadai.
55 - 69 Cukup: Proyek hanya mencapai luaran dasar, performa dan analisis memerlukan peningkatan.
< 55 Kurang: Proyek tidak mencapai luaran yang diharapkan, memerlukan perbaikan signifikan.

About

An Arduino Uno-based automatic sliding door system using a tuned PID controller, an SG90 servo motor, a VL53L0X laser distance sensor, and an HC-SR04 ultrasonic sensor.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages