Motor Stepper
-
Upload
wandy-sweetloveracy -
Category
Documents
-
view
957 -
download
55
Transcript of Motor Stepper
PERCOBAAN II MENJALANKAN MOTOR STEPPER A. TUJUAN 1. Mahasiswa memahami prinsip kerja motor stepper dan rangkaian driver motor stepper ULN2003. 2. Mahasiswa memahami program assembly pada mikrokontroller AT89s52 untuk mengatur arah putaran motor stepper. B. ALAT DAN BAHAN 1. Basic Mikrocontroller AT89s52 Trainer 2. Sumber tegangan DC 5V dan 12V 3. Kabel konektor C. DASAR TEORI Aktuator adalah bagian yang berfungsi sebagai penggerak dari perintah yang diberikan oleh input. Salah satu jenis dari aktuator listrik adalah Motor Stepper. Dimana motor stepper dapat meningkatkan kecenderungan terhadap kendali digital dari mesin-mesin dan berfungsi menghasilkan suatu permintaan untuk peranti-peranti mekanis, serta mampu mengirimkan gerakan-gerakan yang inkremental dengan ketelitian yang dapat diprediksi.
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
Motor Stepper adalah salah satu alat mesin listrik yang mengubah sinyalsinyal listrik ke dalam gerakan-gerakan mekanis diskrit. Batang atau spindle dari suatu motor stepper berputar disebabkan kenaikan-kenaikan langkah diskrit ketika sinyal listrik berada di dalam urutan yang tepat Urutan sinyal pulsa yang diterapkan secara langsung dihubungkan dengan arah rotasi spindle motor. Kecepatan dari rotasi spindel motor dihubungkan dengan frekuensi dari sinyal masukan dan panjang rotasi secara langsung berhubungan dengan nomor sinyal masukan. a. Definisi Motor Stepper Torsi motor stepper tidak sebesar motor DC, namun motor ini mempunyai tingkat presisi yang sangat tinggi dalam gerakannya. Kecepatan gerak motor ini dinyatakan dalam step per second atau jumlah step gerakan dalam setiap detiknya. Motor stepper adalah suatu mesin listrik yang mengubah sinyal listrik ke dalam gerakan mekanik diskrit. Motor stepper dibagi menjadi tiga jenis. Masing-masing pada konstruksi nyata yaitu karakteristik unjuk kerja: i. Variable-reluctance (VR) ii. Permanent magnet (PM) iii. PM-hybrid
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
Cara kerja motor stepper didasari dengan prinsip magnet dasar seperti kutub magnet. Jika lilitan stator pada gambar 2:a) Diberi energy maka lilitan stator A adalah kutub selatan, stator B adalah kutub
utara, dan rotor permanent magnet (PM) diposisikan seperti pada gambar, maka torsi motor akan bertambah seiring pergerakan rotor ke 180o. Maka hal tersebut akan menjadi tidak mungkin untuk menentukan arah dari putaran dan dalam rotor tidak akan bergerak seperti yang telah dikatakan tadi jika gayanya stabil. b) dua kutub stator tambahan C dan D dipasang dan diberi energi seperti terlihat dalam gambar, kita bisa memprediksi arah dari putaran rotor.
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
c) arah putaran rotor akan konstan searah jarum jam dengan rotor sejajar dengannya antara rata-rata pole selatan dan rata-rata pole utara. Seperti diperlihatkan dalam gambar 2.(c) Contoh program menggerakkan motor stepper menggunakan bahasa assemblyorg 0h start: call StepCW sjmp start ; StepCW: mov P0,#11101111b ; Turn on driver 1 call delay ; call delay time mov P0,#11011111b ; Turn on driver 2 call delay ; call delay time mov P0,#10111111b ; Turn on driver 3 call delay ; call delay time mov P0,#01111111b ; Turn on driver 4 call delay ; call delay time ret ; StepCCW: mov P0,#01111111b ; Turn on driver 1 call delay ; call delay time mov P0,#10111111b ; Turn on driver 2 call delay ; call delay time mov P0,#11011111b ; Turn on driver 3 call delay ; call delay time mov P0,#11101111b ; Turn on driver 4 call delay ; call delay time ret ; delay: mov R0,#255 delay1:mov R2,#255 djnz R2,$ djnz R0,delay1 ret end
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
D. PROSEDUR PERCOBAAN KONFIGURASI SISTEM1. Menghubungkan port 0 (pin4-7) dengan motor stepper menggunakan
kabel konektor. 2. Menghubungkan modul Basic Mikrocontroller AT89s52 Trainer dengan DU-ISP V3 downloader.3. Menghubungkan supplay tegangan sebesar 5VDC dengan Modul Basic
Mikrocontroller AT89s52 Trainer.. 4. Memberikan suplay tegangan sebesar 12VDC ke motor stepper dan IC ULN 2003.
5V
To Computer
DU-ISP V3
P O R t 1
5V
P O R t 0
IC ULN 2003 12 v
AT89s52
Power Supply 5V 12 V -+ -+
Gambar 2.1 konfigurasi system
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
LANGKAH PERCOBAAN Percobaan 2.1. arah putaran motor stepper searah jarum jam (CW) Setelah melakukan konfigurasi system lakukan langkah berikut: 1. Buka program M-IDE Studio for MCS 51, sebagai editor dan compiler program2. Ketik program berikut ini :org 0H stepper equ P1 main: mov stepper, acall delay mov stepper, acall delay mov stepper, acall delay mov stepper, acall delay sjmp main ; delay: Mov isi_r6: isi_r7: r5,#10 Mov Mov djnz djnz djnz Ret r6,#200 r7,#250 r7,$ r6,isi_r7 r5,isi_r6 ; 1s ; 0.1s ; 0.5ms #01H #02H #04H #08H
End
3. Simpanlah program yang telah anda buat dan berikan nama dengan tipe file *.asm4. Pada program M-IDE tersebut pilih Build /F9 untuk melakukan
kompilasi program dari *.asm ke *.hex5. Hidupkan DU-ISP V3 downloaderModul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
6. Hidupkan Modul Basic Mikrocontroller AT89s52 Trainer
7. Buka program AVR studio 4, sebagai software downloader program ke mikrokontroller8. Pada program AVR studio 4 tersebut pilih AVR/connect to the selected
AVR Programer.9. Pilih tab main seperti pada gambar, pilih device yang akan digunakan
10. Pilih tab program seperti pada gambar, pada frame flash cari file *.hex
program yang akan di download kemudian pilih program untuk mendownload program ke Mikrokontroller.
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
11. Lepaskan koneksi DU-ISP V3 downloader yang menuju Modul Basic
Mikrocontroller AT89s52 Trainer.12. Tekan tombol reset yang terdapat pada Modul Basic Mikrocontroller
AT89s52 Trainer. 13. Amati pergerakan motor stepper
Percobaan 2.1. arah putaran motor stepper berlawanan arah jarum jam (CCW) Setelah melakukan konfigurasi system lakukan langkah berikut:1. Lakukan langkah seperti Percobaan 2.1
2. Untuk skrip programnya sebagai berikut :org 0H stepper equ P1 main: mov stepper, acall delay mov stepper, acall delay mov stepper, acall delay mov stepper, acall delay sjmp main ; delay: Mov isi_r6: isi_r7: r5,#10 Mov Mov djnz djnz djnz Ret r6,#200 r7,#250 r7,$ r6,isi_r7 r5,isi_r6 ; 1s ; 0.1s ; 0.5ms #08H #04H #02H #01H
End
3. Amati pergerakan motor stepperModul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
E. DATA HASIL PERCOBAAN Script pertamaorg 0H stepper equ P1 main: mov stepper, #01H acall delay mov stepper, #02H acall delay mov stepper, #04H acall delay mov stepper, #08H acall delay sjmp main; delay: Mov r5,#10; isi_r6: Mov r6,#200; isi_r7: Mov r7,#250 djnz r7,$ djnz r6,isi_r7 djnz r5,isi_r6 Ret End
Data script diatas akan membuat motor stepper berputar searah jarum jam (berputar ke kanan) Script keduaorg 0H stepper equ P1 main: mov stepper, #08H acall delay mov stepper, #04H acall delay mov stepper, #02H acall delay mov stepper, #01H acall delay sjmp main; delay: Mov r5,#10; isi_r6: Mov r6,#200; isi_r7: Mov r7,#250 djnz r7,$ djnz r6,isi_r7 djnz r5,isi_r6Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
Ret End
Data script diatas akan membuat motor stepper berputar berlawanan arah dengan jarum jam (berputar ke kiri)
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
F. ANALISA DATA Dari listing program di atas dapat dijelaskan secara terpisah sebagai berikut:
Pada percobaan 2.1. arah putaran motor stepper searah jarum jam
(CW)org 0H
Perintah di atas berfungsi untuk memberitahukan program untuk mulai dari alamat 0000 (null).
stepper equ P1
Perintah di atas berfungsi untuk konfigurasi stepper yang akan dianggap sebagai P1.
main:
Perintah di atas merupakan sebuah label yang berfungsi sebagai penunjuk. Label ini dapat mempermudah pemanggilan program secara berulang.
mov stepper, #01H
Perintah di atas merupakan proses inisialisasi atau pemberian nilai stepper dengan nilai 01 hexadesimal.
acall delay
Perintah di atas berfungsi untuk memanggil subroutine delay
mov stepper, #02H
Perintah di atas merupakan proses inisialisasi atau pemberian nilai stepper dengan nilai 02 hexadesimal.
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
acall delay
Perintah di atas berfungsi untuk memanggil subroutine delay
mov stepper, #04H
Perintah di atas merupakan proses inisialisasi atau pemberian nilai stepper dengan nilai 04 hexadesimal.
acall delay
Perintah di atas berfungsi untuk memanggil subroutine delay
mov stepper, #08H
Perintah di atas merupakan proses inisialisasi atau pemberian nilai stepper dengan nilai 08 hexadesimal.
acall delay
Perintah di atas berfungsi untuk memanggil subroutine delay
sjmp main;
Perintah di atas berfungsi untuk memanggil kembali subroutine main agar motor stepper terus berputar. Dan tanda ; merupakan tanda akhir dari sebuah subroutine.
delay:
Perintah di atas merupakan sebuah label yang berfungsi sebagai penunjuk. Label ini dapat mempermudah pemanggilan program secara berulang.
Mov
r5,#10;
Perintah di atas merupakan proses inisialisasi r5 (register) dengan nilai 10 desimal.
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
isi_r6:
Perintah di atas merupakan sebuah label yang berfungsi sebagai penunjuk. Label ini dapat mempermudah pemanggilan program secara berulang.
Mov
r6,#200;
Perintah di atas merupakan proses inisialisasi r6 (register) dengan nilai 200 desimal.
isi_r7:
Perintah di atas merupakan sebuah label yang berfungsi sebagai penunjuk. Label ini dapat mempermudah pemanggilan program secara berulang.
Mov
r7,#250;
Perintah di atas merupakan proses inisialisasi r7 (register) dengan nilai 250 desimal.
djnz
r7,$
Perintah di atas merupakan proses decrement dari sebuah register r7 selama nilai dari r7 tidak sama dengan 0, maka akan lompat ke label $.
djnz
r6,isi_r7
Perintah di atas merupakan proses decrement dari sebuah register r6 selama nilai dari r6 tidak sama dengan 0, maka akan lompat ke label isi_r7.
djnz
r5,isi_r6
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
Perintah di atas merupakan proses decrement dari sebuah register r5 selama nilai dari r5 tidak sama dengan 0, maka akan lompat ke label isi_r6.
Ret
Perintah di atas berfungsi untuk keluar dari subroutine yang dipanggil, contohnya menggunakan perintah acall perintah pemanggil subroutine yang lain.
End
Perintah di atas berfungsi untuk mengakhiri seluruh proses yang dilakukan sebelumnya.
Pada percobaan 2.2. arah putaran motor stepper berlawanan arah jarum
jam (CCW)
org 0H
Perintah di atas berfungsi untuk memberitahukan program untuk mulai dari alamat 0000 (null).
stepper equ P1
Perintah di atas berfungsi untuk konfigurasi stepper yang akan dianggap sebagai P1.
main:
Perintah di atas merupakan sebuah label yang berfungsi sebagai penunjuk. Label ini dapat mempermudah pemanggilan program secara berulang.
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
mov stepper, #08H
Perintah di atas merupakan proses inisialisasi atau pemberian nilai stepper dengan nilai 08 hexadesimal.
acall delay
Perintah di atas berfungsi untuk memanggil subroutine delay
mov stepper, #04H
Perintah di atas merupakan proses inisialisasi atau pemberian nilai stepper dengan nilai 04 hexadesimal.
acall delay
Perintah di atas berfungsi untuk memanggil subroutine delay
mov stepper, #02H
Perintah di atas merupakan proses inisialisasi atau pemberian nilai stepper dengan nilai 02 hexadesimal.
acall delay
Perintah di atas berfungsi untuk memanggil subroutine delay
mov stepper, #01H
Perintah di atas merupakan proses inisialisasi atau pemberian nilai stepper dengan nilai 01 hexadesimal.
acall delay
Perintah di atas berfungsi untuk memanggil subroutine delay
sjmp main;
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
Perintah di atas berfungsi untuk memanggil kembali subroutine main agar motor stepper terus berputar. Dan tanda ; merupakan tanda akhir dari sebuah subroutine.
delay:
Perintah di atas merupakan sebuah label yang berfungsi sebagai penunjuk. Label ini dapat mempermudah pemanggilan program secara berulang.
Mov
r5,#10;
Perintah di atas merupakan proses inisialisasi r5 (register) dengan nilai 10 desimal.
isi_r6:
Perintah di atas merupakan sebuah label yang berfungsi sebagai penunjuk. Label ini dapat mempermudah pemanggilan program secara berulang.
Mov
r6,#200;
Perintah di atas merupakan proses inisialisasi r6 (register) dengan nilai 200 desimal.
isi_r7:
Perintah di atas merupakan sebuah label yang berfungsi sebagai penunjuk. Label ini dapat mempermudah pemanggilan program secara berulang.
Mov
r7,#250;
Perintah di atas merupakan proses inisialisasi r7 (register) dengan nilai 250 desimal.Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
djnz
r7,$
Perintah di atas merupakan proses decrement dari sebuah register r7 selama nilai dari r7 tidak sama dengan 0, maka akan lompat ke label $.
djnz
r6,isi_r7
Perintah di atas merupakan proses decrement dari sebuah register r6 selama nilai dari r6 tidak sama dengan 0, maka akan lompat ke label isi_r7.
djnz
r5,isi_r6
Perintah di atas merupakan proses decrement dari sebuah register r5 selama nilai dari r5 tidak sama dengan 0, maka akan lompat ke label isi_r6.
Ret
Perintah di atas berfungsi untuk keluar dari subroutine yang dipanggil, contohnya menggunakan perintah acall perintah pemanggil subroutine yang lain.
end
Perintah di atas berfungsi untuk mengakhiri seluruh proses yang dilakukan sebelumnya.
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
G. KESIMPULANa.
Motor stepper adalah motor yang berputar step demi step dengan arah perputaran dan kecepatan putarannya dapat diatur.
b. Untuk menjalankan motor stepper dapat dilakukan dengan cara membuat
bahasa rakitan dengan menggunakan kode hexadecimal pada mikroprosessor AT89s52.c.
Arah putaran motor stepper dapat diubah dengan mengubah/membalik urutan hexa pada nilai 1, 2, 4, 8
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
DAFTAR PUSTAKA
Anonim 2011. Petunjuk Praktikum Mikroprosessor Laboratorium Sistem Kendali, Jurusan Teknik Elektro, Fakultas Teknik Universitas Mataram. Ibrahim K.E. 1996. Teknik Digital. Andi Yogyakarta. Yogyakarta.
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
TUGAS PENDAHULUAN 1. Cari data sheet ULN 2003 2. Jelaskan secara jelas dan tepat dari prinsip kerja motor stepper dan jelaskan pula bagaimana teknis pergerakan dari motor stepper. Pada Motor DC biasa, akan berputar dan berputar terus selama power supply ada. Tidak ada rangkaian cerdas tertentu yang diperlukan untuk mengendalikan motor tersebut, kecuali hanya memperlambat putaran atau membalik putaran, dengan menerapkan polaritas balik. Motor stepper adalah sangat berbeda. Jika anda memberikan power pada motor ini, maka motor ini akan berada dalam keadaan diam, agar motor dapat berputar, anda harus merubah sinyal yang masuk ke motor. Sebagai ilustrasi, dapat dibayangkan sebuah kompas dengan elektromagnet disekitarnya. Sebagaimana digambarkan pada gambar 2.2., apabila power yang diberikan pada elektromagnet diganti, maka akan merubah posisi jarum dari kompas.
Gambar 4.2. Ilustrasi sebuah kompas dengan elektromagnet Dengan empat buah elektromagnet maka gerakan akan melompat secara kasar. Sekarang bayangkan susunan yang sama dengan 100 elektromagnet yang mengitari kompas. Dengan mangatur energi yang mengalir pada setiap elektromagnet dalam
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
berurutan, maka jarum akan memerlukan sebanyak 100 langkah untuk melakukan satu kali putaran. Tetapi dengan pengaturan 100 elektromagnet secara individu, akan memerlukan elektronika yang kompleks.
Gambar 4.3. Ilustrasi motor stepper dengan jarum kompas dengan elektromagnet Pada ilustrasi tersebut, huruf-huruf yang melingkar mewakili elektromagnet. Semua magnet dengan huruf yang sama berada dalam keadaan koneksi. Ketika anda memberi arus pada rangkaian tersebut, maka semua elektromagnet dengan huruf yang sama akan on pada saat itu, untuk menggerakkan kompas, maka elektromaget berikutnya harus dialiri arus, sehingga akan menimbulkan gerakan. Table 2.7.1. Full Step Mode A 1 0 0 0 0 0 B 0 1 0 0 0 0 C 0 0 1 0 0 1 D 0 0 0 1 1 0 KOMENTAR Take a step clock wise another step clock wise another step clock wise another step clock wise No step take Take a step back
Mode Half Steps Dengan menghidupkan dua koil pada waktu yang bersamaan maka motor akan berada dalam posisi diantaranya.Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011
Figure 2.7.4. Half step mode
Table 2.7.2. Half Step Mode A 1 1 0 0 0 0 0 1 1 B 0 1 1 1 0 0 0 0 0 C 0 0 0 1 1 1 0 0 0 D 0 0 0 0 0 1 1 1 0 KOMENTAR Take a step clock wise Half a step clock wise The complete full step clock wise another half step clock wise The complete full step clock wise Another half step clock wise The complete full step clock wise another half step clock wise Start position
Modul Praktikum Mikroprosessor | Laboratorium Sistem Kendali Jurusan Teknik Elektro UNRAM 2011