Mahir Arduino Sketch dan Elektro secara praktek



Motor stepper adalah perangkat elektromekanis yang bekerja dengan mengubah pulsa elektronis menjadi gerakan mekanis diskrit. Motor stepper bergerak berdasarkan urutan pulsa yang diberikan kepada motor. Karena itu, untuk menggerakkannya diperlukan pengendali motor stepper yang membangkitkan pulsa-pulsa periodik. Penggunaan motor stepper memiliki beberapa keunggulan dibandingkan dengan penggunaan motor DC biasa. Keunggulannya antara lain adalah :
  • Sudut rotasi motor proporsional dengan pulsa masukan sehingga lebih mudah diatur.
  • Motor dapat langsung memberikan torsi penuh pada saat mulai bergerak
  • Posisi dan pergerakan repetisinya dapat ditentukan secara presisi
  • Memiliki respon yang sangat baik terhadap mulai, stop dan berbalik (perputaran)
  • Sangat realibel karena tidak adanya sikat yang bersentuhan dengan rotor seperti pada motor DC
  • Dapat menghasilkan perputaran yang lambat sehingga beban dapat dikopel langsung ke porosnya
  • Frekuensi perputaran dapat ditentukan secara bebas dan mudah pada range yang luas.

Prinsip kerja motor stepper

Motor stepper merupakan perangkat pengendali yang mengkonversikan bit-bit masukan menjadi posisi rotor. Bit-bit tersebut berasal dari terminal-terminal input yang ada pada motor stepper yang menjadi kutub-kutub magnet dalam motor. Bila salah satu terminal diberi sumber tegangan, terminal tersebut akan mengaktifkan kutub di dalam magnet sebagai kutub utara dan kutub yang tidak diberi tegangan sebagai kutub selatan. Dengan terdapatnya dua kutub di dalam motor ini, rotor di dalam motor yang memiliki kutub magnet permanen akan mengarah sesuai dengan kutub-kutub input. Kutub utara rotor akan mengarah ke kutub selatan stator sedangkan kutub selatan rotor akan mengarah ke kutub utara stator.

Prinsip kerja motor stepper mirip dengan motor DC, sama-sama dicatu dengan tegangan DC untuk memperoleh medan magnet. Bila motor DC memiliki magnet tetap pada stator, motor stepper mempunyai magnet tetap pada rotor. Adapun spesifikasi dari motor stepper adalah banyaknya fasa, besarnya nilai derajat per step, besarnya volt tegangan catu untuk setiap lilitan, dan besarnya arus yang dibutuhkan untuk setiap lilitan.

Motor stepper tidak dapat bergerak sendiri secara kontinyu, tetapi bergerak secara diskrit per-step sesuai dengan spesifikasinya. Untuk bergerak dari satu step ke step berikutnya diperlukan waktu dan menghasilkan torsi yang besar pada kecepatan rendah. Salah satu karakteristik motor stepper yang penting yaitu adanya torsi penahan, yang memungkinkan motor stepper menahan posisinya yang berguna untuk aplikasi motor stepper dalam yang memerlukan keadaan start dan stop.

Karakteristik motor stepper

Tegangan
Tiap motor stepper mempunyai tegangan rata-rata yang tertulis pada tiap unitnya atau tercantum pada datasheet masing-masing motor stepper. Tegangan rata-rata ini harus diperhatikan dengan seksama karena bila melebihi dari tegangan rata-rata ini akan menimbulkan panas yang menyebabkan kinerja putarannya tidak maksimal atau bahkan motor stepper akan rusak dengan sendirinya

Resistansi
Resistansi per lilitan adalah karakteristik yang lain dari motor stepper. Resistansi ini akan menentukan arus yang mengalir, selain itu juga akan mempengaruhi torsi dan kecepatan maksimum dan motor stepper.

Derajat per step
Besarnya derajat putaran per step adalah parameter terpenting dalam pemilihan motor stepper karena akan menentukan ukuran langkah gerakan yang paling kecil (resolusi). Tiap-tiap motor stepper mempunyai spesifikasi masing-masing, antara lain 0.72° per step, 1.8° per step, 3.6° per step, 7.5° per step, 15° per step, dan bahkan ada yang 90° per step. Dalam pengoperasiannya kita dapat menggunakan 2 prinsip yaitu full step atau half step. Dengan full step berarti motor stepper berputar sesuai dengan spesifikasi derajat per stepnya, sedangkan half step berarti motor stepper berputar setengah derajat per step dari spesifikasi motor stepper tersebut.


Jenis-jenis motor stepper

Berdasarkan struktur rotor dan stator pada motor stepper, maka motor stepper dapat dikategorikan dalam 3 jenis sebagai berikut :

Motor Stepper Variable Reluctance (VR)
Motor stepper jenis ini telah lama ada dan merupakan jenis motor yang secara struktural paling mudah untuk dipahami. Motor ini terdiri atas sebuah rotor besi lunak dengan beberapa gerigi dan sebuah lilitan stator. Ketika lilitan stator diberi energi dengan arus DC, kutub-kutubnya menjadi termagnetasi. Perputaran terjadi ketika gigi-gigi rotor tertarik oleh kutub-kutub stator. Berikut ini adalah penampang melintang dari motor stepper tipe variable reluctance (VR):


Motor Stepper Permanent Magnet (PM)
Motor stepper jenis ini memiliki rotor yang berbentuk seperti kaleng bundar (tin can) yang terdiri atas lapisan magnet permanen yang diselang-seling dengan kutub yang berlawanan. Dengan adanya magnet permanen, maka intensitas fluks magnet dalam motor ini akan meningkat sehingga dapat menghasilkan torsi yang lebih besar. Motor jenis ini biasanya memiliki resolusi langkah (step) yang rendah yaitu antara 7,50 hingga 150 per langkah atau 48 hingga 24 langkah setiap putarannya. Berikut ini adalah ilustrasi sederhana dari motor stepper tipe permanent magnet :

Motor Stepper Hybrid (HB)
Motor stepper tipe hibrid memiliki struktur yang merupakan kombinasi dari kedua tipe motor stepper sebelumnya. Motor stepper tipe hibrid memiliki gigi-gigi seperti pada motor tipe VR dan juga memiliki magnet permanen yang tersusun secara aksial pada batang porosnya seperti motor tipe PM. Motor tipe ini paling banyak digunkan dalam berbagai aplikasi karena kinerja lebih baik. Motor tipe hibrid dapat menghasilkan resolusi langkah yang tinggi yaitu antara 3,60 hingga 0,90 per langkah atau 100-400 langkah setiap putarannya. Berikut ini adalah penampang melintang dari motor stepper tipe hibrid :

Berdasarkan metode perancangan rangkain pengendalinya, motor stepper dapat dibagi menjadi 2 jenis yaitu motor stepper unipolar dan motor stepper bipolar.

Motor Stepper Unipolar
Rangkaian pengendali motor stepper unipolar lebih mudah dirancang karena hanya memerlukan satu switch / transistor setiap lilitannya. Untuk menjalankan dan menghentikan motor ini cukup dengan menerapkan pulsa digital yang hanya terdiri atas tegangan positif dan nol (ground) pada salah satu terminal lilitan (wound) motor sementara terminal lainnya dicatu dengan tegangan positif konstan (VM) pada bagian tengah (center tap) dari lilitan seperti pada gambar berikut.

Motor Stepper Bipolar
Untuk motor stepper dengan lilitan bipolar, diperlukan sinyal pulsa yang berubah-ubah dari positif ke negatif dan sebaliknya. Jadi pada setiap terminal lilitan (A & B) harus dihubungkan dengan sinyal yang mengayun dari positif ke negatif dan sebaliknya. Karena itu dibutuhkan rangkaian pengendali yang agak lebih kompleks daripada rangkaian pengendali untuk motor unipolar. Motor stepper bipolar memiliki keunggulan dibandingkan dengan motor stepper unipolar dalam hal torsi yang lebih besar untuk ukuran yang sama.

source: partner3d.com



Servo adalah sebuah kotak kecil dengan DC motor, 1 set roda gigi antara motor dan poros keluaran, dengan mekanisme position sensing dan rangkaian kontrol. Mekanisme position-sensing akan memberikan balikan berupa posisi servo pada rangkaian kontrol, yang digunakan oleh motor untuk mengatur lengan servo pada posisi yang diharapkan.

Servo tersedia dalam berbagai ukuran, kecepatan, kekuatan torsi dan presisi putaran. Beberapa ada yang cukup mahal harganya. Makin kuat torsi servo atau makin presisi, makin mahal harganya.

Servo umum digunakan pada pesawat radio-control, mobil atau kapal.

Posisi servo diatur dengan memberikan pulsa. Pulsa ini dalam  PWM. Lebar dari pulsa diukur dalam milliseconds. Kecepatan pengiriman pulsa tidak terlalu penting. Hanya lebar pulsa yang digunakan oleh rangkaian kontrol. Umumnya kecepatan pulsa berkisar antara 400Hz - 50Hz.

Umumnya untuk servo standar, posisi tengah dapat diraih dengan memberikan pulsa dengan lebar 1.5 millisecond. posisi -45 derajat dari tengah memerlukan pulsa dengan lebar 1 millisecond. Dan +45 derajat  memerlukan 2 millisecond pulsa.

Namun adalah praktik yang baik untuk membaca datasheet untuk mengetahui lebar pulsa yang diperlukan untuk mencapai sudut yang diinginkan.

Bila Anda menggunakan library servo, kita tidak perlu terlalu khawatir. Librari akan mengatur nilai PWM yang diperlukan untuk menggerakan servo. Kita hanya perlu memberikan sudut yang diinginkan, library akan mengkonversi menjadi lebar pulsa yang dibutuhkan untuk menggerakan servo ke sudut yang diinginkan.

Beberapa jenis servo dapat melakukan putaran kontinu. Bila Anda hanya memiliki standar servo, anda dapat memodifikasi servo tersebut untuk melakukan putaran kontinu.

Rotasi yang kontiune sama dengan memerintahkan servo untuk berputar antara 0 - 180 derajat.

Nilai 0 akan memberikan rotasi dengan kecepatan penuh dalam satu arah, nilai 90 akan stasioner, dan nilai 180 akan memberikan rotasi dengan kecepatan penuh ke arah yang berlawanan. Nilai di antara ini akan membuat servo berotasi disatu arah atau yang lain dan pada kecepatan yang berbeda.

Servo rotasi kontinyu sangat bagus untuk digunakan pada proyek robot kecil. Servo dapat dihubungkan ke roda untuk memberikan kontrol kecepatan dan arah yang akurat dari masing-masing roda.

Ada jenis lain dari servo yang dikenal sebagai aktuator linier yang memutar poros ke posisi yang diinginkan, memungkinkan Anda untuk mendorong dan menarik item yang terhubung ke ujung poros.

Servo jenis ini sering digunakan dalam progam TV MythBusters oleh Grant Imahara, ahli robotik pada acara tersebut.

Perhatikan jika servo "menggeram" di salah satu ujung rentang, arduino sedang mencoba menggerakan servo diluar jangkauannya, dapat menyebabkan arus yang tinggi.

Hal ini dapat dicegah dengan memberikan argumen ke-2 dan ke-3 saat menggunakan perintah servo.attach( ),  meningkatkan lebar pulsa minimum dari 544 microsecond default ata menurunkan lebar pulsa maksimum dari 2400 microsecond default hingga "geraman" tidak terjadi lagi saat servo mencapai ujung rentang.