Interface Motor Stepper Menggunakan PIC 16F877A




1. Tujuan [Kembali]

Mempelajari bagaimana cara merangkai suatu rangkaian yang menggunakan mikrokontroler dan dihubungkan dengan Motor Stepper dengan programnya.


2. Alat [Kembali]

2.1 Mikrokontroler PIC16F877A.


2.2 Motor Stepper

2.3 Baterai

2.4 Driver Motor Stepper ULN2003A



3. Teori [Kembali]


3.1. Pengertian Mikrokontroler PIC 16F877A

PIC yang merupakan produk dari Microchip Technology, merupakan kepanjangan dari Peripheral Interface Controller memiliki arsitektur Harvard dan merupakan jenis RISC (Reduced Instruction Set Computing). Salah satu jenis mikrokontroler ini adalah PIC16F877A.

3.1.1 Fitur-Fitur PIC16F877A.

a. Memiliki Instruksi sebanyak 35 buah.
b. Masing-masing instruksi dieksekusi dalam satu siklus mesin kecuali untuk instruksi percabangan yaitu dua siklus.
c. Kecepatan operasi masukan clock dari DC hingga 20MHz.
d. Kapasitas memori program berukuran 8k x 14 words.
e. Kapasitas RAM 268 byte.
f. Kapasitas memory EEPROM berukuran 256 byte.

3.1.2 Pin Out PIC16F877A.


-Memiliki 5 PORT I/O (PORTA 6 pin, PORTB 8 pin, PORTC 8 pin, PORTD 8 pin, PORTE 3 pin).
-Memiliki 3 buat timer
-Memiliki 2 buah keluaran PWM.
-Komunikasi serial singkron menggunakan SPI dan I2C.
-Komunikasi USART.

3.1.3 Pemograman PIC16F877A.

Pemograman PIC ini diprogram menggunakan bahasa C dan dapat menggunakan kompiler MikroC for PIC yang dapat didownload di situs resminya.




3.1.4 Rangkaian Dasar Sistem Mikrokontroler PIC16F877A.




Di gambar dapat dilihat bahwa rangkaian dasar dari sistim mikrokontroler biasanya menggunakan rangkaian crystal sebagai clock atau oscilator eksternal sebagai jantung untuk memberikan kecepatan eksekusi dari mikrokontroler tersebut. Pada gambar juga terdapat rangkaian reset yang digunakan untuk memulai dari awal kembali program yang kita jalankan pada mikrokontroler ini.


3.2. Pengertian Motor Stepper

Stepper motor bekerja pada prinsip yang sama motor dc. Ini adalah motor dc sinkron yang bergerak dalam langkah-langkah terpisah untuk menyelesaikan rotasinya. Biasanya, setiap langkah bergerak 1,8 derajat dan oleh karena itu total 200 langkah untuk rotor menyelesaikan rotasi tunggal. Tidak seperti motor dc biasa, ia mengandung beberapa magnet stator yang digunakan untuk memicu setiap langkah.

Prinsip dasar di balik kerja motor stepper adalah elektromagnetisme. Karena motor stepper bekerja dengan prinsip motor dc yang sama, motor stepper biasanya dianggap sebagai motor dc. Tapi tidak seperti motor dc, mereka memiliki beberapa koil stator yang disebut fase. Dengan memberi energi setiap fase dengan cara yang terkendali atau dengan urutan pulsa yang telah ditentukan, motor menyelesaikan revolusi penuhnya dengan satu langkah setiap kalinya. Kita bisa mencapai gerak dengan cara yang lebih tepat dan terkendali dengan bantuan sirkuit kontrol.



Mirip dengan motor lain, motor stepper memiliki bagian berputar yang secara tepat disebut rotor dan bagian statis disebut stator. Stator dan rotor memiliki kutub magnet. Dengan memberi energi pada batang stator, rotor bergerak agar bisa sejajar dengan stator. Sebuah rotor adalah gigi berbentuk gigi berbentuk pusat. Stator adalah seperangkat elektromagnet bergigi yang tersusun di sekitar roda gigi.

Bila lilitan fasa motor stepper dilengkapi dengan arus, fluks magnetik yang sesuai akan dikembangkan di stator dalam arah yang tegak lurus terhadap arah aliran arus. Elektromagnet diberi energi satu per satu. Ketika satu elektromagnet diberi energi dengan bantuan sirkuit pengemudi eksternal atau mikrokontroler, poros rotor berputar sedemikian rupa sehingga menyesuaikan dirinya dengan stator dalam posisi yang meminimalkan pertentangan fluks. Itu berarti elektromagnet menarik gigi gigi dimana elektromagnet diimbangi dari sisa elektromagnet. Karena ini, ketika elektromagnet berikutnya dinyalakan, elektromagnet pertama dimatikan yang menghasilkan gigi gigi yang tertarik pada elektromagnet kedua.

Menurut susunan koil elektromagnetik yang berkelok-kelok dalam motor stepper dua fasa, mereka diklasifikasikan sebagai motor stepper unipolar dan bipolar. Pada motor stepper unipolar yang bekerja dengan satu lilitan dengan keran tengah per fasa, setiap bagian lilitan fasa dihidupkan untuk setiap arah medan magnet. Karena motor stepper unipolar cukup mudah dioperasikan, ini sangat disukai di kalangan penggemar.

Pada motor stepper bipolar, ada belitan tunggal per fase. Hal ini membuat sirkuit pengemudi jauh lebih rumit saat membalikkan kutub magnet yang pada gilirannya membalikkan arus pada belitan. Biasanya pengaturan H-Bridge digunakan untuk melakukan tugas ini. Seseorang juga bisa membeli chip chips sederhana agar tugasnya tidak terlalu rumit.

Motor stepper unipolar hanya bekerja pada voltase positif. Itu berarti hanya ada satu polaritas. Tingkat tegangan atas dan bawah positif. Misalnya level tegangan atas 5V dan level tegangan rendah 0V. Motor stepper unipolar membutuhkan kawat di tengah setiap koil untuk memungkinkan arus mengalir.
Terutama ada 3 jenis mode stepping pada motor stepper Unipolar:
1. Langkah penuh
2. Setengah langkah
3. Langkah mikro

Karena kami mensimulasikan motor stepper unipolar yang langkah penuh dengan mode dual phase, maka hanya langkah penuh saja yang akan kami bahas disini.
Dalam mode dual phase, motor yang dioperasikan di kedua fase mendapat energi pada saat bersamaan. Mode ini memberikan torsi dan kecepatan tinggi. Tapi mode ini membutuhkan dua kali jumlah daya yang digunakan dalam satu mode langkah.



3.3. Pengertian Driver Motor ULN2003A

IC ULN2003A merupakan salah satu driver motor yang sering digunakan. Di dalam IC ULN2003A terdapat 7 buah rangkaian transistor darlington yang membentuk logika kerja seperti gerbang logika NOT (inverter/pembalik kondisi). Sehingga dalam penggunaannya akan lebih mudah mengingat bahwa IC ULN2003A itu berisi gerbang NOT dari pada mengingat bahwa IC ULN2003A itu berisi rangkaian transistor darlington. Untuk lebih memahaminya, mari melihat gambar konfigurasi pin IC ULN2003A pada gambar berikut.




Dengan melihat gambar, dapat diketahui bahwa dengan memberikan logika low (tegangan 0 volt) pada kaki In1 maka akan menghasilkan kondisi keluaran (output) pada kaki Out1 berlogika high (tegangan ±5 volt). Demikian juga sebaliknya, dengan memberikan logika high (tegangan ±5 volt) pada kaki In1 maka akan menghasilkan kondisi keluaran (output) pada kaki Out1 berlogika low (tegangan 0 volt).


4. Rangkaian [Kembali]





Rangkaian diatas merupakan rangkaian sederhana dari pengunaan PIC untuk menggerakkan motor stepper. Pada rangkaian jika dijalankan maka motor akan bergerak 90 derjat berlawanan arah jarum jam, dan berhenti sejenak sebelum bergerak lagi.


5. Program [Kembali]

void main()
{
  TRISD = 0b0000000;            // PORT D Output
  PORTD = 0b1111111;            // nilai awal PORTD high
  do
  {
    PORTD = 0b00000011;         // Menggerakkan motor stepper Full Wave mode dual phasa
    Delay_ms(200);              // delay
    PORTD = 0b00000110;
    Delay_ms(200);
    PORTD = 0b00001100;
    Delay_ms(200);
    PORTD = 0b00001001;
    Delay_ms(200);
 }while(1);                      // looping
}



6. Flowchart [Kembali]






7. Video Simulasi [Kembali]






           


          







Share
Tweet
Pin
Share