• Tidak ada hasil yang ditemukan

LAPORAN PRAKTIKUM MIKROPROFESOR Z80-PIO UNTUK GERAK MOTOR STEPPER

N/A
N/A
Protected

Academic year: 2021

Membagikan "LAPORAN PRAKTIKUM MIKROPROFESOR Z80-PIO UNTUK GERAK MOTOR STEPPER"

Copied!
19
0
0

Teks penuh

(1)

LAPORAN PRAKTIKUM MIKROPROFESOR

Z80-PIO UNTUK GERAK MOTOR STEPPER

Disusun oleh:

Nama : Yudi Irwanto NIM : 021500456

Jurusan : Teknofisika Nuklir Prodi : Elektronika Instrumentasi Dosen/Asisten : 1. Adib Afham

2. Rokhmat Arifianto

SEKOLAH TINGGI TEKNOLOGI NUKLIR BADAN TENAGA NUKLIR NASIONAL

YOGYAKARTA 2017

(2)

TUJUAN PERCOBAAN

1. Menggunakan Z80-PIO sebagai system keluaran. 2. Dapat mengatur gerak motor stepper dengan Z80-PIO.

3. Menggerakkan dua motor stepper dengan arah yang berbeda. 4. Mengenal Rangkaian penguat arus untuk motor stepper.

PERALATAN YANG DIGUNAKAN 1. Kit uPF-1

2. Z80-PI0

3. Rangkaian Penguat Arus dan Motor Stepper.

DASAR TEORI Pendahuluan

Pada disiplin ilmu kimia nuklir, sangat memerlukan suatu alat penggerak tetap yang kontinyu. Dalam suatu proses kimia diperlukan memindah-mindahkan tabung cuplikan untuk diganti dengan tabung yang lain, untuk menampung tetesan zat kimia sampai tabung berisi volume tertentu maka harus ditunggu sampai waktu tertentu pula biasanya 1 jam atau satu setengan jam tabung akan terisi tetesan zat kimia mencapai sekitar 20 cc. Proses penampungan tersebut berjalan secara kontinyu yang menjemukan dan kadang mencapai 2 bulan terus-menerus proses baru berhenti. Pekerjaan yang menjemukan yang berlangsung cukup lama tersebut dapat dengan mudah diatasi dengan membuat sistem pergantian tabung dirancang secara otomatis dengan memberikan bagi pemakai alat untuk dapat memasukkan sela waktu yang diperlukan dengan memberi lokasi untuk jam, menit dan detik.

Untuk itu perlu dibuat alat penggeser tabung cuplikan secara elektronis yang dikontrol oleh sistem mikroprosesor Z-80 dengan memanfaatkan motor stepper sebagai penggeser sudutnya

(3)

yang dapat ditentukan secara tepat dan dapat diandalkan. Dengan motor stepper ini dapat dihindarkan ketidak tepatan pergeseran tabung cuplikan yang akan menyebabkan tetesan zat kimia tidak tepat masuk pada lobang tabung yang tersedia. Gambar rancangbangun sistem penampung cuplikan seperti gambar 1 dan sistem secara keseluruhan seperti gambar 2.

Gambar 1. Rancangbangun sistem penampung cuplikan otomatis.

Rangkaian Penggerak Motor Stepper.

Rangkaian penggerak motor stepper disebut juga rangkaian penguat arus untuk gerakan motor stepper terlihat pada Gambar 1, dalam rangkaian tersebut terdapat dioda yang berfungsi untuk mencegah remanensi dari motor masuk ke transistor. Dengan adanya dioda ini maka transistor dapat terhindar dari kerusakan. Sedangkan tahanan 10 Kdalam rangkaian ini berfungsi meredam arus yang terlalu besar lewat pada transistor. Rangkaian penguat ini dirancang berdasarkan persyaratan teknis yang harus dipenuhi untuk menggerakkan motor stepper yang dipakai. Persyaratan teknis yang diperlukan adalah harus mampu memberikan arus minimal sebesar 0,8 Ampere pada tegangan minimal 4,7 Volt tiap phasenya. Untuk mewujudkan rangkaian penguat ini digunakan 3 transistor tipe BC141 dan 4 transistor tipe TIP 3055 untuk sebuah motor stepper.

Kedua macam transistor tsb. disusun secara Darlington guna mendapatkan penguatan yang cukup besar. Penguatan rangkaian dinyatakan dengan rumus : Ic = 12 Ib dengan 1 = penguatan transistor BC141 dan 2 penguatan transistor TIP 3055.

(4)

T

K

P Tangki eluen

Gambar 2. Sistem penampung fraksi kolom penukar ion.

SISTEM

MPF-1

Rangkaian Penguat Arus Pompa Dosis KPK1 PK2 PE1 T E2 Mt1 Mt2

(5)

Gambar 3. Rangkaian Penguat Arus.

Prinsip kerja dari rangkaian driver ini adalah sbb. :

Jika pada masukan tidak diberikan pulsa eksitasi, maka kedua transistor tidak bekerja, akibatnya Vce = Vcc sehingga tidak ada arus yang mengalir pada kumparan motor stepper. Tetapi bila pada masukan diberikan pulsa eksitasi maka kedua transistor akan bekerja (ON) dan tegangan Vce menjadi nol sehingga terjadi aliran arus melalui kumparan motor stepper. Sistem pergantian aliran didasarkan atas selesainya cacahan besaran waktu yang dimasukkan. Keluaran dari Z80- PIO memiliki arus yang masih kecil sehingga belum mampu menggerakkan stepper motor yang membutuhkan arus sebesar 1 ampere untuk setiap phasenya. Untuk itu diperlukan rangkaian driver yang dalam hal ini juga berfungsi sebagai penguat arus.

(6)

MOTOR STEPPER.

Motor stepper adalah sebuah alat yang bekerja dengan daya listrik untuk menghasilkan putaran mekanik, dimana tidak seperti motor-motor konvensional, yang menghasilkan sebuah kecepatan putar (dengan daya listrik tsb.) akan tetapi menghasilkan gerakan dari satu posisi sudut ke posisi sudut lainnya yang diakibatkan oleh pulsa-pulsa listrik yang diberikan pada motor. Motor stepper dapat diputar searah dengan jarum jam atau sebaliknya, oleh karena itu cocok untuk macam-macam kontrol dan pengaturan posisi dalam dunia industri. Ciri dasar motor stepper adalah saat diberi tenaga poros motor akan bergerak kemudian berhenti setelah sejumlah step, sesuai dengan perintah-perintah masukan digital yang diberikan.

PRINSIP KERJA MOTOR STEPPER.

Operasi dasar sebuah motor stepper didasarkan pada prinsip dasar magnit, seperti kutup magnit yang tarik menarik, bukan sebaliknya. Jika stator sebagaimana dalam gambar 4a diberi tenaga, maka stator A menjadi kutub utara, stator B kutub selatan dan magnit permanen diposisikan seperti yang ditunjukkan, maka sebuah torsi akan ditimbulkan dan mengakibatkan rotor berubah posisi 1800 dari posisi sebelumnya. Adalah tidak mungkin untuk menentukan arah putaran, karena dalam kenyataannya, rotor tidak boleh bergerak jika tenaga pada kedua stator seimbang. Jika 2 buah kutub stator C dan D ditambahkan, seperti pada gambar 4b, maka dapat diperkirakan arah putaran rotor. Dalam gambar 4c arah putaran rotor berlawanan arah jarum jam, dengan posisi rotor berada diantara 2 kutub utara dan 2 kutub selatan. Agar

(7)

posisi rotor dapat berada tepat lurus dengan salah satu kutub stator maka diperlukan pengendali pemberian tenaga pada masing-masing stator, dan hal itu biasanya sudah ada aturannya untuk masing-masing jenis dan tipe motor stepper. Gambar rangkaian Z80-PIO seperti percobaan 6 terdahulu (gambar 5) dan rangkaian penggerak motor stepper terlihat pada gambar 3. D0 19 15 PA0 D1 20 14 PA1 D2 1 13 PA2 D3 40 12 PA3 D4 39 10 PA4 D5 38 9 PA5 D6 3 8 PA6 D7 2 7 PA7 6 18 ARDY 5 PIO 16 ASTB CE 4 Z80 27 PB0 M1 37 28 PB1 IORQ 36 29 PB2 RD 35 30 PB3 +5V 26 31 PB4 GND 11 32 PB5 CLK 25 33 PB6 INT 23 34 PB7 IEI 24 21 BRDY IEO 22 17 BSTB

Gambar 5. Data keluar melalui port A.

Untuk menggerakkan 1 buah motor stepper diperlukan 4 bit data yaitu PA0, PA1, PA2 dan PA3 atau PA4, PA5, PA6 dan PA7 dan jika menggerakkan 2 buah motor stepper maka digunajan PA0 s/d PA7. Data untuk menggerakkan motor stepper kekanan adalah : 06, 0c, 09 dan 03 (half step 1,80) dan 02, 06, 04, 0c, 08, 09, 01 dan 03 (full step, 0,90).

(8)

PERCOBAAN-PERCOBAAN :

1. Untuk menggerakkan motor stepper berputar kekiri atau kekanan diatur oleh data-data yang disimpan pada alamat tertentu misalkan alamat memori 1850H s/d 1853H. Untuk

membuat agar motor stepper berputar setengah lingkaran dan berhenti.

Masukk an program berikut ini ke uPF-1, jalankan dan amati hasilnya.

Program Gerak setenganh lingkaran 1800 Program Gerak Utama Motor Stepper Alamat program Bahasa Mesin No. Baris

Label OPCODE Operand Keterangan

1800 1 ORG 1800H Awal program

1800 3E 0F 2 LD A, 0F Isi reg A dgn 0F 1802 D3 82 3 OUT (82), A Masukkan ke (82) 1804 1806 06 19 0E 08 4 Loop 2 LD LD B, 19 C, 08 Reg B pengali (25x) Isi reg C dgn 04 1808 DD 21 50 18 5 LD IX, 1850 Isi IX dgn 1850

180C DD 7E 00 6 Loop 1 LD A, (IX) Masukkan ke reg A

180F D3 80 7 OUT (80), A Keluarkan dari PIO

1811 CD 30 18 8 CALL PERIODE Panngil delay

1814 DD 23 9 INC IX Naikkan IX

1816 0D 10 DEC C Turunka isi reg C

1817 C2 0C 18 11 JP NZ, Loop1 Belum 0 ke Loop1

181A 181C 10 EA FF 12 DJNZ RST Loop2 38H Loncat ke Loop 2 Selesai

Data Putar ke kiri

1850 03 01 09 08 13 EQU 03 01 09 08 Data gerak ke kiri

1857 0C 04 06 02 14 EQU 0C 04 06 02

Data Putar ke

kanan

1850 02 06 04 0C 13 EQU 02 06 04 0C Data gerak ke kanan

(9)

Sub routine Periode gerak (delay)

Program Sub routine

GERAK (delay) Alamat program Bahasa Mesin No. Baris

Label OPCODE Operand Keterangan

1830 1 ORG 1830H Awal program

1830 C5 2 PUSH BC Pergikan BC

1831 D5 3 PUSH DE Pergikan DE

1832 E5 4 PUSH HL Pergikan HL

1833 F5 5 PUSH AF Pergikan AF

1834 0E 05 6 LD C, 05 Isi reg C dgn 05

1836 11 05 05 7 Loop A LD DE, 05 05 Isi DE dgn 05 05

1839 1D 8 Loop B DEC E Reg E - 1

183A C2 39 18 9 JP NZ Loop B Loncat ke Loop B

183D 15 10 DEC D Isi reg D-1

183E C2 39 18 11 JP NZ, Loop B Belm 0 ke Loop B

1841 0D 12 DEC C Turunkan isi reg C

1842 C2 36 18 13 JP NZ, Loop A Belm 0 ke Loop A

1845 F1 14 POP AF Tarik Reg AF

1846 E1 15 POP HL Tarik reg HL

1847 D1 16 POP DE Tarik Reg DE

1848 C1 17 POP BC Tarik reg BC

1849 C9 18 RET Kembali ke utama

2. Setelah melakukan dan mengamati percobaan 1, maka buatlah program untuk menggerakkan motor stepper berputar ke kiri 7,20 dengan delay 1 detik dan program akan berhenti jika tombol reset ditekan. Sebagai penunjang subroutine 1 detik adalah sebagai berikut :

3. Sub routine delay 1 detik.

PROGRAM Sub routine

Delay 1 detk Alamat program Bahasa Mesin No. Baris

Label OPCODE Operand Keterangan

1860 1 ORG 1860H Awal program

1860 01 7B 62 2 LD BC, 62 7B BC sbg counter

1863 E3 3 DLY EX (SP), HL Siklus tundaan

1864 E3 4 EX (SP), HL Siklus tundaan

1865 ED A1 5 CPI

1867 E0 6 RET PO Parity Odd ?

(10)

4. Setelah melakukan dan mengamati percobaan 2, maka buatlah program untuk menggerakkan motor stepper berputar ke kiri 7,20 sebanyak 15 kali dengan tiap-tiap gerakan di delay 1 detik dan setelah bergerak 15 kali motor berhenti. Putaran 15 kali dengan membuat loop 0FH langkah delay 1 detik seperti percobaan 2.

5. Buatlah program untuk menggerakkan motor stepper berputar ke kanan 7,20 dengan

masukan tundaan detik, jika tundaan detik sama dengan nol maka motor akan bergerak lagi.

(11)

PEMBAHASAN Percobaan 1.

Percobaan kali ini bertujuan agar praktikan dapat menggunakan Z80 sebagai system keluaran dan juga agar praktikan dapat mengatur gerak motor stepper dengan Z80-PIO. Pada percobaan ini, praktikan menggunakan motor stepper yang akan digerakkan menggunakan mikroprosesor serta menggunakan sebuah driver untuk motor stepper. Adapun rangkaiannnya adalah seperti gambar berikut:

Setelah praktikan merangkai seperti gambar diatas, praktikan memasukan program pada mikroprosesor. Adapun pembahasan untuk programnya akan dijabarkan sebagai berikut.

Pada alamat awal 1800H, diinstruksikan program LD A, 0F ; OUT (82), A. Instruksi ini merupakan inisialisasi bahwa port A digunakan sebagai port untuk keluaran. Selanjutnya, diinstruksikan LD B, 19. Instruksi ini bermaksud untuk mengisi register B dengan data 25 (bilangan Desimal) sebagai banyaknya loop yang akan dijalankan. Instruksi ini juga dijadikan pengali, karena setiap sekali gerak motor stepper menghasilkan sudut 0,72’. Sehingga apabila register B diisikan dengan 25 maka sudut yang terbentuk sebesar (25 x 0,72 = ). Selanjutnya

(12)

diinstruksikan LD C, 08 , yang bertujuan mengisi reg C dengan data 8. Yang selanjutnya akan dilakukan loop sebanyak 8 kali dari isi reg C ini.

Kemudian pada reg IX, diisikan alamat 1850H. Dimana, pada alamat 1850H adalah berisi program untuk pergerakan arah putaran motor stepper. Apakah berputar ke kanan, atau ke kiri. Berikut adalah uraiannya:

Putar kiri

Data diisikan 03 01 09 08 0C 04 06 02. Data tersebut dapat diubah menjadi data bilangan decimal sebagai berikut:

03H=0000 0011 01H=0000 0001 09H=0000 1001 08H=0000 1000 0CH=0000 1100 04H=0000 0100 06H=0000 0110 02H=0000 0010

Karena motor stepper terdiri dari 4 bagian, maka ke empat bilangan decimal dapat dijadikan masukan untuk motor stepper. Sehingga arah motor stepper bergerak mengikuti masukan yang bernilai 1. Hal inilah yang menyebabkan motor berputar ke kiri.

(13)

Putar kanan

Data diisikan 02 06 04 0C 08 09 01 03. Data tersebut dapat diubah menjadi data bilangan decimal sebagai berikut:

02H=0000 0010 06H=0000 0110 04H=0000 0100 0CH=0000 1100 08H=0000 1000 09H=0000 1001 01H=0000 0001 03H=0000 0011

Sama dengan bagian pada “putar kri”, dikarenakan motor stepper terdiri dari 4 bagian, maka ke empat bilangan decimal dapat dijadikan masukan untuk motor stepper. Sehingga arah motor stepper bergerak mengikuti masukan yang bernilai 1. Hal inilah yang menyebabkan motor berputar ke kanan.

Selanjutnya adalah menginstuksikan LD A, (IX) ; OUT (80), A. Instruksi menandakan bahwa Reg data A digunakan sebagai keluaran. Selanjutanya menggunakan instruksi CALL 1830. Instruksi ini untuk memanggil alamat 1830, sehingga sebelum program dijalankan, pada alamat 1830 harus di isikan program untuk mengatur delay dari putaran motor stepeer.Adapun pembahasan untuk subroutine nya adalah sebagai berikut:

Pada subroutine ini, diinstruksikan PUSH BC ; PUSH DE ; PUSH HL ; PUSH AF. Instruksi ini digunakan untuk menyimpan isi register pada B, C, D, E, H, dan L ke Stack Pointer (SP). Selanjutnya instruksi LD C, 05 mengisi reg C dengan data 05H yang akan digunakan untuk banyaknya penge-loop-an. Begitu juga untuk instruksi selanjutnya yakni LD DE, 05 05. Kemudian reg D dikurangi 1 dengan instruksi DEC E. Apabila belum bernilai 0 untuk reg E maka akan terus dikurangi hingga reg E bernilai 0. Setelah bernilai 0, barulah isi reg D dikurangi 1 juga dengan instruksi DEC D . Apabila reg D belum bernilai 0 maka akan dilakukan penge-loop-an ke instruksi DEC E. Setelah reg D bernilai

(14)

0 barulah program dilanjutkan dengan mengurangi reg C, apabila reg C belum bernilai 0 maka akan dilakukan penge-loop-an lagi dari instruksi LD DE, 05 05. Setelah reg C bernilai 0, barulah program dilanjutkan dengan memindahkan data dari SP ke reg A; F; H; L; D; E; B; dan C dengan instruksi POP. Dan ditutup dengan instruksi RET untuk kembali ke main program.

Setelah program CALL 1830 dijalankan, dilanjutkan dengan instruksi INC IX untuk menambah isi reg IX, dan instruksi DEC C untuk mengurangi isi reg C. Apabila reg C belum bernilai 0, maka akan dilakukan penge-loop-an lagi dari instruksi LD A, (IX). Setelah isi register C bernilai 0, maka akan dilakukan penge-loop-an lagi dari instruksi LD C, 08. Setelah isi reg B bernilai 0, berulah program berakhir.

Percobaan 2.

Pada percobaan 2 ini, memiliki program utama yang sama dengan percobaan 1, hanya berbeda pada subroutine program yang digunakan. Pada percobaan 2 ini, digunakan sub routine untuk delay setiap gerakan motor stepper sebesar 1 sekon. Pada percobaan ini, alamat CALL yang dipanggil adalah pada alamat 1860. Berikut adalah penjelasan dari subroutine-nya.

Pada alamat awalnya, yakni 1860 diinstruksikan LD BC, 62 7B untuk mengisi reg B dan reg C sebagai counternya. Selanjutnya diinstruksikan EX (SP), HL sebanyak 2 kali. Yang dilanjut dengan instruksi CPI. Selanjutnya diinstruksikan JR DLY untuk melakukan penge-loop-an berdasarkan isi reg B dan C.

Dari percobaan 2 ini, diperoleh bahwa motor bergerak sangat lambat. Setiap gerakan yang dihasilkan motor stepper memiliki delay 1 sekon. Hal ini menunjukkan praktikan telah berhasil melakukan percobaan 2.

(15)

Kesimpulan:

1. Port A pada Z80 digunakan sebagai Port untuk keluaran.

2. Pada percobaan 1, sudut yang dihasilkan tergantung pada banyaknya gerak yang dilakukan pada motor stepper. Banyaknya pergerakan setiap 0.72’ dapat diatur menggunakan Z80. Apabila reg B bernilai 0A, maka sudut yang dihasilkan sebesar 7.2’. 3. Pada percobaan 2, waktu tunda untuk bergerak setiap sudut 0.72’ adalah 1 detik.

(16)

Lampiran

(17)
(18)
(19)

Gambar

Gambar 1.  Rancangbangun sistem penampung cuplikan otomatis.
Gambar 2.  Sistem penampung fraksi kolom penukar ion.
Gambar 3.  Rangkaian Penguat Arus.
Gambar 5.  Data keluar melalui port A.

Referensi

Dokumen terkait

Pengujian gerakan mekanik lengan robot bertujuan untuk menguji apakah data masukan dari modul joystick pada arduino dapat menggerakan motor stepper , kemudian pengujian ini

Telah dirancang sebuah alat otomatis rotary sample collector tabung reaksi dengan menggunakan motor stepper berbasis mikrokontroler ATmega8535.. Rangkaian elektronik

Laporan Akhir yang berjudul “ Aplikasi motor stepper pada alat pencetak bangun ruang tiga dimensi untuk peleburan filament pada mesin extruder ” ini disusun untuk

Blok diagram rangkaian sistem pengendali motor stepper untuk deteksi jumlah obyek dengan menggunakan komputer pribadi terdiri dari sensor cahaya, rangkaian antar

Dari hasil penelitian yang telah dilakukan bahwasannya telah dapat dirancang sistem kontrol penggerak motor stepper pada alat orbital welding menggunakan mikrokontroller arduino dan

Sistem mekanik terdiri dari motor stepper, drum penggulung sling, belt roller dan seling sumber radiasi, dimana kecepatan putaran motor merupakan fungsi dari jumlah inputan

diperlukan untuk keamanan penyambungan motor Stepper dengan base motor. Baut dan mur merupakan alat pengikat yang penting. Untuk mencegah kerusakan pada mesin, baut dan

Gambar 3.4 Motor Bensin 3.3.4 Motor Listrik Motor listrik adalah alat untuk mengubah energi listrik menjadi energi mekanik, prinsip kerja motor listrik adalah induksi elektromagnetik