Motor stepper adalah salah satu jenis motor dc yang dikendalikan dengan
pulsa-pulsa digital.Prinsip kerja motor stepper adalah bekerja
dengan mengubah pulsa elektronis menjadi gerakan mekanis diskrit dimana motor stepper bergerak
berdasarkan urutan pulsa yang diberikan kepada motor stepper tersebut,untuk
lebih jelasnya bisa kalian baca disini,untuk mempermudah menggunakan motor
stepper kita gunakan module easy driver A3967S dan di control dengan
menggunakan arduino 
TOLONG BACA DENGAN DETAIL !
Siapkan alat dan bahan :
- Arduino
     Uno/Nano/Mega (sama saja) (jumlah disesuaikan) 
 
- Module Easy Driver A3967S
 
- Motor
     stepper 
 
- Kabel usb
     arduino 
 
- Breadboard
 
- Suppy
     external 12volt (untuk daya motor)
 
- Kabel
     jumper disesuaikan dengan kebutuhan
 
1. Yang pertama kalian wiring motor stepper dan semua module seperti gambar
dibawah ini
Catatan !
·        
Pastikan coil motor stepper A dan B sudah
benar,cara memastikannya test menggunakan multimeter pada scala
ohm/buzzer,hubungkan 1 kabel motor pada - mutimeter,dan satu kabel motor
(kabel random) pada + multimeter,jika buzzer berbunyi itu artinya 2
kabel itu satu coil (A) dan kabel sisanya coil (B)
·        
Pastikan wiring sudah benar 
·        
Jika IC driver dirasa panas gunakan 
heatsink 
·        
Setelah kalian berhasil membuatnya,budayakan
untuk mempelajarinya,jangan hanya copy paste saja,hasil dari usaha sendiri
lebih puas meskipun itu sederhana
2. Copy paste sketch/program di bawah ini  ke dalam software arduino
 
  
  01 
   | 
  
  // Akses Motor Stepper 
   | 
 
  
  02 
   | 
  
  // By Fickry Muhammad 
   | 
 
 
  
  03 
   | 
  
  // aruselektronika.blogspot.com 
   | 
 
  
  04 
   | 
  
  int smDirectionPin
  = 2; //Direction pin 
   | 
 
 
  
  05 
   | 
  
  int smStepPin
  = 3; //Stepper pin 
   | 
 
  
  06 
   | 
  
    
   | 
 
 
  
  09 
   | 
  
    pinMode(smStepPin,
  OUTPUT); 
   | 
 
  
  10 
   | 
  
  } 
   | 
 
 
  
  13 
   | 
  
    for (int
  i = 0; i < 3000; i++) 
   | 
 
  
  14 
   | 
  
    { 
   | 
 
 
  
  15 
   | 
  
      digitalWrite(smDirectionPin,
  LOW); 
   | 
 
  
  16 
   | 
  
      digitalWrite(smStepPin,
  HIGH); 
   | 
 
 
  
  17 
   | 
  
      delayMicroseconds(300); 
   | 
 
  
  18 
   | 
  
      digitalWrite(smStepPin,
  LOW); 
   | 
 
 
  
  19 
   | 
  
      delayMicroseconds(300); 
   | 
 
  
  20 
   | 
  
    } 
   | 
 
 
  
  23 
   | 
  
    
   | 
 
  
  24 
   | 
  
    for (int
  i = 3000; i > 0; i--) 
   | 
 
 
  
  25 
   | 
  
    { 
   | 
 
  
  26 
   | 
  
      pinMode(smDirectionPin,
  OUTPUT); 
   | 
 
 
  
  27 
   | 
  
      digitalWrite(smDirectionPin,
  HIGH); 
   | 
 
  
  28 
   | 
  
      digitalWrite(smStepPin,
  LOW); 
   | 
 
 
  
  29 
   | 
  
      delayMicroseconds(300); 
   | 
 
  
  30 
   | 
  
      digitalWrite(smStepPin,
  HIGH); 
   | 
 
 
  
  31 
   | 
  
      delayMicroseconds(300); 
   | 
 
  
  32 
   | 
  
    } 
   | 
 
3. Verify program arduino,apabila tidak terjadi error lanjut dengan proses
upload
4. Upload program,apabila succes akan muncul tulisan 
done
uploading,apabila ada yang belum tahu bagaimana cara upload code/sketch
ke board arduino bisa baca 
disini
5. Sekarang kalian coba hubungkan power external pada board easy driver,
lihat perubahan apa yang terjadi pada motor stepper
Prinsip Kerja 
Pada program ini saya hanya mencoba menggerakan motor stepper dengan 3000
step pulse (300 microsecond) dan membalikan arah putar motor secara otomatis
CW/CCW dengan delayms(300)
Teori 
Karena motor stepper ini dapat dikendalikan dengan memberikan pulsa,maka
pada program saya membuat gelombang pulsa dengan cara memberi program 
delaymicroseconds(300)
pada looping for (kalian bisa mengatur lebar pulsa yang diinginkan dengan
cara mengubah nilai delaymicrosecond, nah untuk bagian step step motor bergerak
program 
for(inti = 3000;i>0;i--){} yang berperan,jika kalian
membutuhkan step yang lebih lama kalian tinggal rubah saja nilai 3000nya, untuk
membalikan arah putar CW/CCW kalian tinggal memberikan logika HIGH/LOW pada 
digitalWrite(smDirection,HIGH);,
ini adalah program dasar,jika kalian ingin lebih mudah lagi menggunakannya
kalian bisa menggunakan library 
stepper.h pada arduino dan tentunya
menggunakan module driver yang berbeda,banyak sekali driver yang digunakan
untuk motor stepper,tinggal kalian baca baca saja.
Sumber :