
Di sini kita akan menggunakan komponen yang disebut dengan motor servo . Dan tentu saja setiap produsen motor servo, dia memiliki spesifikasi tersendiri dan bentuk-bentuk yang memang berbeda-beda. Namun, setiap motor servo dia pasti memiliki sebuah motor , dan memiliki sebuah horn, Kemudian memiliki tiga buah kabel. Kabel ini berfungsi untuk mengontrol servo. Nanti kita akan mempelajari fungsi dari setiap kabel ini. Motor servo ini biasanya memiliki torsi yang besar.
Untuk menggerakannya, kita akan menggunakan ESP32 nantinya, ataupun microcontroller yang lain tentu saja, dan yang akan kita gerakan adalah bagian horn . Horn akan kita gerakan. Hornnya ini tidak harus empat seperti ini, bisa satu, bisa dua, bisa tiga, bisa enam, dan berapapun, sesuai dengan kebutuhan,bahkan ada yang bentuk bulat, tanpa ada horn lancip seperti itu. Dan setiap motor servo ini bisa bergerak 180 derajat. Dan untuk memprogram motor servo ini, kita menggunakan teknik PWM, karena dia perlu sinyal analog yang dikirimkan ke motor servonya. Tapi nanti kita akan menggunakan library, yaitu kode program yang telah dibuat oleh orang lain, sehingga kita tidak perlu membuat kode programnya dari nol. Karena untuk mengendalikan servo ini, menggunakan programan itu cukup rumit, jadi tidak bisa kita mengetahui dasar-dasar programan, kemudian kita mengontrol servo.
Banyak programmer di luar sana telah membuat kode program dan fungsi-fungsinya, sehingga kita hanya perlu memanggil fungsi-fungsi tersebut untuk menggerakkan servo. Kita tidak perlu membuat semua itu dari nol.
Servo ini memiliki 3 kabel: kabel berwarna gelap (biasanya hitam atau mungkin coklat) terhubung ke ground. Kabel berwarna terang (biasanya merah) terhubung ke sumber tegangan positif seperti 5V, 12V, atau 24V, tergantung pada spesifikasi servo. Kabel putih terhubung ke sinyal.
Jika kita menggunakan ESP32, kita akan menghubungkannya ke pin GPIO-nya. Warna kabelnya tidak harus putih, bisa kuning atau warna lainnya. Intinya, ada kabel berwarna gelap, kabel berwarna terang, dan kabel untuk sinyal. Kita akan menambahkan servo di sini. Tidak perlu menggunakan breadboard, teman-teman bisa langsung menghubungkannya ke ESP32. Namun, jika teman-teman ingin menggunakan breadboard, itu opsional.

Di sini, di walkway ada 3 buah kabel, kuning, merah, dan oranye. Kalau di walkway sudah ada label-nya seperti itu. Yang di warna oranye ini, terhubung dengan ground, warna merah ke tegangan positif, di sini kita akan gunakan 5V, dan sisanya, warna kuning ini, ke pin PWM, Full Suite Modulation, atau kita hubungkan ke pin GPIO yang ada di ISP32-nya. Seperti itu. Kemudian di walkway juga kita bisa klik di bagian tandatanya, nanti dia akan muncul referensinya. Kita bisa mengganti horn-nya seperti itu, sesuai jumlah horn yang mau seperti apa, dan warna horn-nya juga.

Di Wokwi kita akan menggunakan horn berjumlah 1 single dengan warna putih. Kita akan hubungkan dulu kabelnya. Untuk yang negatif kita hubungkan ke ground. Yang positif kita hubungkan ke tegangan 5V. Saya akan ganti warnanya menjadi warna merah. Dan sisanya yang kuning kita hubungkan ke PWM, Full Suite Modulation. Kita akan gunakan pin nomor 33 . Saya akan ubah warnanya ini menjadi kuning.

Bagi teman-teman yang menggunakan Wokwi, Silakan teman-teman klik library manager. Kemudian klik tombol tambah. Lalu ISP32Servo.
Kita akan melakukan include. Nama filenya adalah ISP32Servo.h. Di sini include ISP32Servo.h. Oke, jika sudah, Kita kembali lagi ke wokwi. Untuk memprogram servo, pertama kita perlu objek terlebih dahulu, yaitu objeknya berupa servo. Untuk servo yang di sini. Misalnya kita ganti servo saya. Seperti itu. Atau servo 1 .Jika teman-teman menggunakan lebih dari 1 servo.
Kemudian, jika kita sudah membuat objek, maka kita perlu melakukan inisialisasi servo-nya. Sama seperti pinMode untuk pin GPIO. Tetapi untuk servo kita gunakan servo1.attach. Kita gunakan attach. Panggil function attach.Atau di object-oriented programming kita sebut sebagai class.Kemudian pin servo-nya di sini kita menggunakan pin nomor 33. Jadi teman-teman isikan di sini 33. Kemudian parameter yang selanjutnya atau argumen selanjutnya perlu angka 500 dan 2400.Ini berkaitan dengan pulse width modulation-nya. Berkaitan dengan PWM-nya. Kemudian untuk mengendalikan posisi servo-nya kita gunakan servo1.right. Dan teman-teman isikan parameter-nya mengenai posisi servo-nya. Servo ini horn-nya bisa kita atur dari 0 sampai dengan 180 derajat. Misalkan kita ingin mengatur ke 90 derajat, maka seperti itu saya akan tambahkan di bagian loop-nya agar tidak terlalu lama atau tidak terlalu berat eksekusi kode programnya dia akan bergeser ke 90 derajat. Sesuai dengan nilai yang kita masukkan di dalam servo1.right.
Untuk mencapai 180, cukup gantikan nilainya dengan 180. Sehingga servo-nya bisa bergerak ke 180 derajat.
Bagaimana jika kita ingin mengontrol servo-nya bolak-balikdari 0 ke 180, 0 ke 180. Sama seperti LED, kita bisa letakkan di bagian void loop. Jadi servo1.right.Dari 0 derajat, kemudian kita berikan delay. Misalnya delay-nya 500. Kemudian servo1.right menjadi 180 derajat. Dan kita berikan delay lagi, 500.
Kita start simulation.
dan berikut kodenya
#include <ESP32Servo.h>
Servo servoSatu;
void setup() {
servoSatu.attach(33,500,2400);
}
void loop() {
servoSatu.write(0);
delay(500);
servoSatu.write(180);
delay(500);
}~ Kita akan lanjutkan lagi di materi selanjutnya.~

