BAB I PENDAHULUAN

Dalam perkembangan teknologi yang semakin maju maka kita juga dituntut untuk berkreasi memberikan inofasi dalam dunia teknologi. Penulis berusaha mengikuti perkembangan teknologi elektronika yang saat ini sedang barkembang yaitu mikrokontroler. Mikrokontroler seperi layaknya CPU komputer hanya saja dalam kemasan yang lebih kecil dan fasilitas yang terdapat didalamnya juga terbatas. Sekarang banyak sekali perangkat elektronika yang memanfaatkan mikrokontroler seperti yang di aplikasikan pada permainan time zone, perangkat pengaman anti maling pada kendaraan. Selain aplikasi tersebut masih banyak aplikasi yang lain yang menggunakan mikrokontroler.

A. ALASAN PEMILIHAN JUDUL Motor stepper merupakan motor yang bekerja dengan pulsa – pulsa listrik. Pada saat melakukan Kerja Praktek penulis pernah membuat pengontrol untuk motor stepper tetapi masih dengan sistem manual. Pada sistem manual sulit mengatur kecepatan sesuai kecepatan yang didinginkan. Oleh karena itulah penulis ingin mengaplikasikan mikrokontroler sebagai kendali motor stepper agar kecepatan dan mode gerakan dari motor stepper lebih mudah ditentukan.

B. PERUMUSAN MASALAH Penulis mencoba mengimplementasikan ide untuk mengatur gerak sebuah motor stepper menggunakan mikrokontroler. Karena di dalam sebuah mikrokontroler terdapat fitur yang mungkin sekali digunakan untuk mengontrol motor stepper. Yang pertama kali harus dipelajari adalah bagaimana prinsip kerja dari motor stepper dan bagaimana cara

menggerakanya. Hasil yang didapat dari apa yang pernah penulis pelajari bahwa untuk menggerakan motor stepper diperlukan sebuah driver. Driver ini mengeluarkan pulsa dengan rentan waktu sesuai dengan clock yang diberikan. Dalam driver itu sendiri terdapat beberapa pin masukan diantaranya clock dan arah putar. dari hasil ini dapat disimpulkan untuk mengatur motor stepper diperlukan driver dan untuk mengatur driver diperlukan sinyal clock dan sinyal arah. Sinyal clock dan sinyal arah ini yang akan penulis keluarkan dari mikrokontroler. Dengan tujuan utama memprogram mikrokontrol untuk mengendalikan motor stepper. Dengan hasil akhir motor stepper bergerak sesuai dengan program yang ditanam di mikrokontroler. Dengan sinyal clock dan sinyal arah yang diterima oleh driver kemudian diterjemahkan menjadi dalam bentuk empat sinyal untuk menggerakan motor stepper.

C. TUJUAN PENULISAN 1. Sebagai syarat untuk menyelesaikan pendidikan program Diploma III (D3) pada Sekolah Tinggi Teknik Wiworotomo (STTW purwokerto).

2. Untuk mengaplikasikan teori – teori selama di bangku kuliah. 3. Sebagai sarana untuk menambah ilmu pengetahuan bidang teknik elektro serta peningkatan kemampuan dan ketrampilan di bidang tersebut. 4. Mengetahui secara pasti perinsip kerja motor stepper dan cara menggerakannya. 5. Dapat membuat program untuk mengatur gerak motor stepper dengan mikrokontroler AVR ATMega 8 menggunakan bahasa asembler.

D. RUANG LINGKUP PEMBAHASAN Pembahasan tugas akhir ini mencakup : 1. 2. Diagram sintem pengontrol motor stepper Komponen yang digunakan, gambar rangkaian dan

prinsip kerja rangkaian 3. 4. 5. 6. 7. Motor Stepper Rangkaian Driver Motor Stepper AVR ATMega 8 Pemrograman menggunakan AVR Studio 4 Baskom AVR

E. SISTEMATIKA PENULISAN BAB I PENDAHULUAN

Merupakan bagian yang memuat alasan pemilihan judul, perumusan masalah, tujuan penulisan, ruang lingkup

pembahasan, dan sistematika penulisan BAB II LADASAN TEORI Merupakan bagian yang memuat teori sistem yang dibuat dan teori dari sistem pengatur kecepatan dan mode gerak motor stepper.

BAB III METODE DAN TEKNIK PENGUMPULAN DATA Dalam bab ini memuat teknik yang digunakan dalam mengumpulkan data yang digunaan sebagai acuan dalam perencanaan dan pembuatan pengontrol motor stepper.

BAB IV PERANCANGAN DAN PEMBUATAN PIRANTI Bab ini merupakan bagian yang memuat perancangan sistem, gambar rangkaian, prinsip kerja rangkaian, pembuatan alat, pemrograman dan uji coba sistem.

BAB V PENUTUP Merupakan bagian yang memuat tentang kesimpulan dari hasil perancangan sampai pembuatan piranti dan saran-saran.

DAFTAR PUTAKA

Merupakan bagian yang memuat tentang data buku – buku dan referensi yang penulis jadikan bahan acuan dalam pembuatan Tugas Akhir.. DAFTAR LAMPIRAN Lampiran A Memuat data sheet komponen yang digunakan dalam peralatan. Lampiran B Memuat instruction set dari mikrokontroler AVR ATMega8. Lampiran C Memuat program yang digunakan dalam peralatan.

BAB II LANDASAN TEORI

Sistem dasar untuk mengendalikan motor stepper memiliki tiga bagian atau tiga element dasar. Yaitu indexer (kontroler / pengontrol), driver, dan motor stepper (gambar 1)

Gambar 1 sistem kendali motor stepper. Dari gambar 1 terdapat 4 element dimana indexer diatur oleh interface. Bagian user interface sebagai bagian tambahan jika menginginkan pengontrolan melalui komputer. Pada dasarnya hanya dengan indexer, driver dan motror stepper saja sudah cukup untuk mengontrol motor stepper. Indexer adalah bagian yang berfungsi sebagai pemberi perintah untuk mengatur kecepatan dan mode gerak motor stepper. Sinyal dari indexer akan dikirimkan ke driver. Dari indexer dapat langsung dikeluarkan empat sinyal atau hanya dua sinyal. Jika mengeluarkan empat sinyal maka driver hanya berfungsi untuk menguatkan sinyal tersebut. Jika hanya dua sinyal yang dikeluarkan maka

pada bagian driver diperlukan translator (penerjemah) untuk merubah dua sinyal perintah menjadi empat sinyal yang sesuai untuk menggerakan motor stepper.

A. MOTOR STEPPER Motor stepper merupakan motor yang mengubah pulsa listrik yang diberikan menjadi gerakan rotor yang diskrit disebut step. Misalnya jika satu derajat per langkah (step) maka motor tersebut memerlukan 360 pulsa untuk bergerak sebanyak satu putaran (pada intinya stepper motor mengubah pulsa listrik menjadi suatu perpindahan gerak yang tertentu secara rotasi) . Ukuran kerja dari stepper biasanya diberikan dalam jumlah langkah per putaran per detik.

Gambar 2. Konsep Dasar Motor Stepper

Dari gambar diatas terdapat istiah sbb: - stator stator core merupakan struktur bagian terluar dan memiliki enam poles/teeth. - rotor merupakan bagian dalam (inner device) yang terdiri dari empat poles. Baik stator maupun rotor dibuat dari soft steel. Pada gambar nampak bahwa stator memiliki tiga set windings (dict: “an electrical conductor that is wound around a magnetic material, esp. one encircling part of the stator or rotor of an electric motor or generator or forming part of a transformer”). Satu set dari windings dikatakan

sebagai satu phase, dengan demikian gambar diatas merupakan motor tiga fase. Arus disuplai darisumber tegangan DC melalui switch I, II, dan III. Motor stepper banyak digunakan dalam bidang industri terutama dipakai pada suatu mesin atau peralatan kontrol digital yang membutuhkan ketepatan posisi. Keunggulan motor stepper lainnya adalah frekuensi pulsa input-nya tidak tergantung pada beban. Perputaran motor stepper adalah perputaran yang diskrit dan arah perputarannya dapat searah ataupun berlawanan dengan arah jarum jam. Stuktur sederhana dari motor stepper tampak pada Gambar 3 dalam penampang melintang :

Gambar 3. Struktur Motor Stepper Sederhana Jika dilihat dari prinsipnya motor stepper terbagi menjadi tiga jenis motor, dimana 3 jenis motor stepper memiliki karakteristik yang berbedabeda. Sedangkan jika dilihat dari lilitan yang ada didalamnya motor stepper dapat dibagi menjadi 2 jenis.

1. Berdasarkan prisnsip kerjanya ketiga jenis motor stepper tersebut adalah : a. Permanent Magnet (PM) Motor stepper berjenis PM adalah motor stepper yang rotornya merupakan magnet yang permanen, stator memperoleh medan magnet dari lilitan yang melingkari stator tersebut sehingga stator

menghasilkan kutub – kutub magnet. Dengan adanya interaksi antara

fluks rotor dengan gaya magnet stator maka motor stepper ini akan

bergerak atau beroperasi. Terjadinya fluks dikarenakan pembiasan dari magnet rotor. Ciri – ciri dari motor stepper bejenis PM adalah pada saat keadaan tidak ada aliran arus (biasa disebut keadaan tanpa eksitasi) maka jika motor ini diputar terdapat torsi yang menahan atau melawan.

Gambar 4. Konstruksi Motor Stepper Magnet Permanent Gambar 4 tersebut merupakan magnet permanent sederhana 90 derajat motor magnet permanent dengan empat phase (A-D).

b. Variable Reluctance (VR) Motor stepper jenis ini memiliki bentuk rotor yang unik yaitu berbentuk silinder dan pada semua unitnya memiliki gerigi yang memiliki hubungan dengan kutub-kutub stator. Rotor pada magnet tipe ini tidak menggunakan magnet permanent. Stator terlilit oleh lilitan sehingga pada saat teraliri arus, stator akan menghasilkan kutub magnet. Jumlah gerigi pada rotor akan menentukan langkah atau step motor. Perbedaan motor stepper berjenis PM dengan VR yaitu motor berjenis VR memiliki torsi yang relatif lebih kecil dibanding dengan

motor stepper berjenis PM. Hal lain yang dapat dilihat adalah sisa kemagnetan sangat kecil sehingga pada saat motor stepper tidak dialiri arus maka ketika diputar tidak ada torsi yang melawan. Sudut langkah motor stepper berjenis VR ini bervariasi yaitu sekitar sampai dengan 30o. Motor stepper berjenis VR ini memiliki torsi yang kecil. Sering ditemukan pada printer dan instrumen-instrumen pabrik yang ringan yang tidak membutuhkan torsi yang besar.

Gambar 5. Konstruksi Motor Stepper Variable Reluctance Seperti pada gambar 5 motor mempunyai 3 pasang kutub stator (A, B, C) yang diset terpisah 15 derajat. Arus dialirkan ke kutub A melalui lilitan motor yang menyebabkan tarikan magnetic yang menyejajarkan gigi rotor kekutub A. jika kita memberi energi kekutub B maka akan menyebabkan rotor berputar 15 derajat sejajar kutub B. proses ini akan berlanjut kekutub C dan kembali kekutub A searah dengan jarum jam. c. Permanent Magnet – Hybrid (PM-H) Permanent magnet hybrid merupakan penyempurnaan motor

stepper di mana motor stepper ini memiliki kecepatan 1000step/detik

namun juga memiliki torsi yang cukup besar sehingga dapat dikatakan bahwa PM-H merupakan motor stepper kombinasi antara PM dan VR motor stepper. Motor hybrid mengkombinasikan karakteristik terbaik dari motor variable reluktansi dan motor magnet permanent. Motor ini dibangun dengan kutub stator yang banyak-gigi dan rotor magnet permanent. Motor hybrid standar mempunyai 200 gigi rotor dan berputar pada 1,8 derajat sudut step. Karena memperlihatkan torsi tinggi dan dinamis serta berputar dengan kecepatan yang tinggi maka motor ini digunkan pada aplikasi yang sangat luas.

Gambar 6. Konstruksi Motor Stepper Jenis PM-hybrid

2. Dilihat dari lilitannya motor stepper terbagi menjadi 2 jenis yaitu : a. Motor Stepper Unipolar

Motor stepper unipolar terdiri dari dua lilitan yang memiliki center tap. Center tap dari masing masing lilitan ada yang berupa kabel terpisah ada juga yang sudah terhubung didalamnya sehingga center tap yang keluar hanya satu kabel. Untuk motor stepper yang center tapnya ada pada masing – masing lilitan kabel inputnya ada 6 kabel. Namun jika center tapnya sudah terhubung di dalam kabel inputannya hanya 5 kabel. Center tap dari motor stepper dapat dihubungkan ke pentanahan atau ada juga yang menghubungkannya ke +VCC hal ini sangat dipengaruhi oleh driver yang digunakan. Sebagai gambaran dapat dilihat konstruksi motor stepper unipolar pada gambar 7.

Gambar 7. Kostruksi Motor Stepper Unipolar

b. Motor Stepper Bipolar Motor stepper bipolar memiliki dua lilitan perbedaaan dari tipe unipolar adalah bahwa pada tipe bipolar lilitannya tidak memiliki center tap. Keunggulan tipe bipolar yaitu memiliki torsi yang lebih besar jika dibandingkan dengan tipe unipolar untuk ukuran yang sama. Pada motor stepper tipe ini hanya memiliki empat kabel masukan. Namun untuk menggerakan motor stepper tipe ini lebih rumit jika

dibandingkan dengan menggerakan motor stepper tipe unipolar. Sebagai gambaran dapat dilihat konstruksi motor stepper bipolar pada gambar 8.

Gambar 8. Konstruksi Motor Stepper Bipolar

Bentuk asli dan susunan motor stepper dapat dilihat pada gambar 9.

Gambar 9. Bentuk Motor Stepper

Gambar 10. Bagian Motor Stepper. Dari gambar 10 dapat dilihat bagian-bagian dari motor stepper yaitu tersusun atas rotor, stator, bearing, casing dan sumbu. sumbu merupakan pegangan dari rotor dimana sumbu merupakan bagian tengah dari rotor, sehingga ketika rotor berputar sumbu ikut berputar. Stator memiliki dua bagian yaitu pelat inti dan lilitan. Plat inti dari motor stepper ini biasanya menyatu dengan casing. Casing motor stepper terbuat dari aluminium dan ini berfungsi sebagai dudukan bearing dan stator pemegangnya adalah baud sebanyak empat buah. Di dalam motor stapper memiliki dua buah bearing yaitu bearing bagian atas dab bearing bagian bawah.

Gambar 11. Bagian Stator Motor stepper

Gambar 12. Bagian Rotor Motor stepper

Gambar 13. Kabel Masukan Dari Motor Stepper

B. DRIVER Untuk menggerakan motor stepper berbeda dengan menggerakan motor dc, dimana untuk menggerakan motor stepper diperlukan rangkaian driver yang fungsinya untuk memberikan catu ke motor stepper. Driver tidak hanya mengeluarkan tegangan, namun tegangan yang dikeluarkan juga harus dalam bentuk pulsa. Karena motor stepper bergerak step by step sesuai

dengan pulsa. Bentuk pulsa yang dikeluarkan oleh driver dapat dilihat pada Gambar 14 dan gambar 15.

Gambar 14. Pulsa Driver Bipolar mode Full Step

Gambar 15. Pulsa Driver Unipolar mode Full Step

Bentuk pulsa seperti gambar 14 dan 15 harus dapat dikeluarkan oleh driver sebagai syarat untuk dapat menggerakan motor stepper. tinggi pulsa yang dikeluarkan juga harus sesuai dengan spesifikasi tegangan motor stepper yaitu kisaran 5 sampai 36 volt. Pada gambar 14 dan 15 sebenarnya memiliki bentuk yang sama hanya saja susunannya berbeda. pada gambar 14 adalah susunan pulsa untuk menggerakan motor stepper tipe bipolar, sedangkan pada

gambar 15 adalah susunan pulsa untuk menggerakan motor stepper tipe unipolar. Driver untuk motor stepper unipolar lebih sederhana dari driver tipe bipolar karena untuk motor stepper tipe unipolar driver cukup dengan dilalui arus satu arah saja sedangkan untuk tipe bipolar driver harus dapat dilalui oleh arus dengan dua arah. Dari alasan ini motor stepper tipe unipolar lebih banyak digunakan karena untuk menggerakannya lebih sederhana. Driver untuk motor stepper unipolar data menggunakan IC ULN2003, ULN2004 atau dapat juga dengan menggunakan transistor. Jika menggunakan transistor, maka transistor difungsikan sebagai saklar untuk menghubungkan motor stepper ke Vcc atau ke ground tergantung dari hubungan common motor stepper. Untuk menggerakan motor stepper tipe bipolar dapat menggunakan IC L293, L298 atau menggunakan transistor yang dibuat rangkaian push pull. Driver dapat menggunakan empat masukan langsung atau hanya dengan dua masukan saja. Jika menggunakan empat masukan secara langsung maka driver berfungsi untuk menguatkan sinyal tersebut. Namun jika menggunakan dua masukan saja maka masih diperlukan Translator (penerjemah) yang fungsinya

C. MIKROKONTROLER AT MEGA8 Mikrokontroler At Mega8 merupakan mikrokontroler keluaran dari Atmel Corporation. Mikrokontrol tipe ini termasuk dalam jenis AVR (Alf and

Vegard’s Risc processor). Mikrokontroler AVR memiliki arsitektur RISC 8 bit, dimana semua instruksi dikemas dalam kode 16-bit dan sebagian besar instruksi dieksekusi dalam satu siklus clock berbeda dengan instruksi MCS51 yang membutuhkan 12 siklus clock untuk mengeksekusi satu perintah. Perbedaan ini terjadi karena kedua jenis mikrokontroler tersebut memiliki arsitektur yang berbeda AVR sudah menggunakan teknologi RISC (Reduced Instruction Set Computing) sedangkan MCS51 menggunakan tipe CISC (Complex Instruction Set Computing) Mikrokontroler AVR keluaran dari atmel terbagi menjadi tiga kelompok yaitu: AT90S, ATTiny, dan ATMega. Yang penulis pakai disini adalah termasuk dalam kelompok ATMega, dengan seri ATMega8.

1. Arsitektur CPU AVR At Mega 8

Gambar 16. Arsitektur At Mega8

2. Fitur a. Saluran I/O sebanyak 23 buah terbagi menjadi 3 port. b. ADC sebanyak 6 saluran dengan 4 sluaran 10 bit dan 2 saluran 8 bit. c. Tiga buah timer counter, dua diantaranya memiliki fasilitas pembanding. d. CPU dengan 32 buah register. e. Watchdog timer dan oscilator internal. f. SRAM sebesar 1K byte g. Memori flash sebesar 8K Bytes system Self-programable Flash. h. Unit interupsi internal dan eksternal i. Port antarmuka SPI

j. EEPROM sebesr 512 byte. k. Port USART (Universal Syncronous and Asyncronous serial Receiver and Transmiter) untuk komunikasi serial.

3. Konfigurasi Pin

Gambar 17. Konfigurasi Pena At Mega8 a. Vcc merupakan pin yang berfungsi sebagai suply catu daya. b. GND merupakan pin ground. c. Port B (PB0 - PB7) merupakan I/O dua arah dan dapat difungsikan sebagai XTAL1/XTAL2/TOSC1/TOSC2. d. Port C (PC0 – PC5) merupakan I/O dua arah dapat juga difungsiksn sebagai ADC0 – ADC5 e. Port C 6 / RESET pin untuk mereset mikrokontroler. f. Port D (PD0 – PD7) merupakan pin I/O dua arah dan juga memiliki fungsi khusus yang dapat digunakan jika parameternya diset. g. AVCCmerupakan pin masukan tegangan untuk ADC h. AREF merupakan pin masukan tegangan referensi ADC.

BAB III METODE DAN TEKNIK PENGUMPULAN DATA

Dalam pembuatan piranti dan laporan untuk Tugas Akhir, penulis memerlukan banyak materi sebagai bahan acuan dalam pembuatan sistem yang akan dibuat. Sebagai landasan untuk perancangan dan untuk memperkuat hasil dari Tugas akhir maka sangat dibutuhkan materi pendukung. Dalam Tugas Akhir ini yang merupakan bagian objek adalah motor stepper dan piranti uama lainnya yaitu driver dan mikrokontroler. Untuk dapat membuat piranti ini maka penulis harus memiliki materi dari piranti – piranti yang akan digunakan. Adapun dalam pencarian materi yang diperlukan penulis menggunakan beberapa metode yaitu : A. METODE OBSERVASI ( pengamatan ) Metode observasi yaitu metode mencari data dengan melakukan pengamatan terhadap alat / piranti yang berkaitan dengan sistem guna membantu menentukan sistem yang akan dibuat. Materi dan pengetahuan dari hasil pengamatan, penulis kumpulkan kemudian penulis olah dan penulis gunakan sebagai salah satu acuan dalam pembuatan sistem yang penulis gunakan untuk Tugas Akhir. Dalam melakukan pengamatan tidak selalu harus mengamati sitem yang sama, namun dapat mengamati piranti yang lain namun memiliki salah

satu bagian yang sama dengan sitem yang akan dibuat. Meskipun hanya salah satu bagian saja namun sebagai bahan acuan sudat temasuk hal yang penting. Karena dari bagian sistem itu dapat kita

B. METODE INTERVIEW ( wawancara ) Metode interview merupakan metode pencarian data melalui wawancara / tanya jawab dengan orang yang lebih mengetahui tentang sistem dari piranti yang akan dibuat. Data yang didapat dari hasil wawancara yang behubungan dengan sistem penulis catat dan dijadikan sebuah acuan untuk pembuatan piranti

C. METODE KEPUSTAKAAN Metode kepustakaan merupakan pengumpulan data dari buku, artikel dan bacaan lain yang berhubungan dengan sistem yang akan di bangun. Tidak semua materi didapat dari buku, sehingga diperlukan materi bacaan yang banyak untuk melengkapi materi yang belum ada tentang sistem yang akan dibangun. Dapat dengan membeli buku yang dianggap mengandung materi yang diperlukan, membaca diperpustakkaan, majalah atau dapat juga melakukan pencarian di internet. Semakin banyak materi pendukung maka

akan semakin banyak juga pengetahuan yang didapat dan akan semakin menguasasi materi untuk pembuatan Tugas Akhir. BAB IV PERANCANGAN SISTEM

Perancangan sistem ialah tahap awal dalam proses pembuatan alat. Alat yang akan dibuat terpisah menjadi beberapa bagian yaitu indexer, driver dan motor stepper. Tahap awal ini menentukan komponen yang akan digunakan untuk membuat sistem tersebut. Indexer sebagai pengontrol akan menggunakan mikrokontroler ATMega8. Driver merupakan bagian

pemrosesan dimana menerima perintah dari indexer dan mengolahnya menjadi sinyal untuk menggerakan motor stepper. Motor stepper merupakan objek yang akan diatur kecepatan putar dan mode geraknya. Untuk dapat mengatur gerakan dari motor stepper diperlukan sebuah sistem pengontrol yang terdiri dari beberapa bagian. Bagian - bagian tersebut yaitu : indexer (pemberi perintah), driver (kendali) dan motor stepper. setiap bagian dari sistem memiliki fungsi yang saling terkait. Diagram blok dari sistem yang digunakan dapat dilihat pada gambar 1. Indexer (At Mega8) Driver Motor Stepper

Gambar 1. Diagram Blok Sistem

Indexer (pemberi perintah) bagian ini memberikan perintah untuk menentukan kecepatan dan mode gerak motor stepper. Perintah dari indexer diberikan ke driver untuk diterjemahkan menjadi bentuk empat sinyal yang sesuai untuk menggerakan motor stepper. Driver terbagi menjadi dua bagian, translator dan driver. Translator bagian yang fungsinya menerjamahkan dari sinyal clock dan arah menjadi empat sinyal dengan bentuk yang sesuai untuk menggerakan motor stepper. Driver sebagai penguat yang menguatkan sinyal yang diterima dari translator untuk kemudian menggerakan motor stepper. Jika menggunakan sistem indexer langsung mengeluarkan empat sinyal maka pengaturan kecepatan dan mode gerakan akan lebih rumit. Oleh karena itu Sistem yang akan penulis gunakan adalah indexer mengeluarkan dua buah sinyal (clock dan arah). Mikrokontroler ATMega8 sebagai indexer memberikan perintah ke driver berapa kecepatan putar motor stepper dan kapan saat ber balik arah. Mikrokontroler mengeluarkan dua buah sinyal yang diberikan kepada driver. Sinyal pertama yaitu clock untuk menentukan kecepatan gerak dari motor stepper dan sinyal kedua adalah sinyal untuk merubah arah putaran dari motor stepper. Mikrokontroler akan mengatur kecepatan motor stepper dari lambat, kemudian bertambah cepat (memberikan percepatan) setelah mencapai kecepatan yang paling tinggi sesuai program motor stepper akan berputar konstan sebanyak jumlah putaran yang ditentukan program setelah tercapai maka mikrokontroler akan memberikan perintah lagi ke motor stepper untuk mengurangi kecepatan (perlambatan) saat sampai pada kondisi paling lambat menurut program, motor

stepper memberikan perintah lagi yaitu merubah arah putaran dan seperti itu seterusnya.

A. PERANCANGAN PIRANTI Piranti pada aplikasi mikrokontroler avr atmega8 sebagai pengatur kecepatan dan mode gerak motor stepper menggunakan Mikrokontroler AVR ATMega8 sebagai indexer, IC L297 dan L298 sebagai driver, motor stepper sebagai objek yang diatur, dan rangkaian catu daya sebagai sumber tegangan dari sistem. 1. Mikrokontroler AVR ATMega8 Rangkaian untuk mikrokontroler AVR ATMega8 dapat dibuat sendiri rangkaiannya atau dengan menggunakan ATMega8 Development board. jika menggunakan ATMega8 development board maka hanya tinggal menambahkan kabel jumper untuk tegangan, ISP untuk melakukan programing dan jumper sinyal keluaran dari board.

Gambar 2. ATMega8 Development board.

Mikrokontroler ini sudah memilki oscilator internal sehingga mikrokontroler ini dapat bekerja tanpa tambahan oscilator eksternal. Board ATMega8 tersebut sudah terdapat konektor untuk port keluaran dan konektor lain yang dapat digunakan. Namun pada sistem pengontrol motor stepper ini tidak semua fasilitas yang ada di board ATMega8 digunakan.

2.

Driver Untuk meggerakan motor stepper diperlukan tegangan yang

berbentuk pulsa karena motor stepper bergerak bukan berdasarkan besar tegangan tapi lebih dipengaruhi oleh kecepatan pulsa. Besar teganggan dan arus memang sangat mempengaruhi namun bukan pada kecepatan melainkan pada torsi atau daya. Untuk menghasilkan torsi yang besar diperlukan arus dan tegangan yang besar, dengan catatan tidak melebihi kemempuan motor stepper. Untuk menggerakan motor stepper biasanya menggunakan tegangan mulai dari +5 – 24 volt. Untuk mengatur kecepatan motor stepper ini driver harus dapat mengeluarkan pulsa dengan tinggi pulsa sesuai tegangan yang digunakan untuk menggerakan motor stepper tersebut (+5 -24Volt). Untuk tipe bipolar driver juga harus dapat dilewati arus secara bolak-balik, tetapi untuk menggerakan motor stepper tipe

unipolar hanya searah. Bentuk pulsa yang harus dikeluarkan driver dapat dilihat pada gambar.

Gambar 3 Pulsa Driver Bipolar mode Full Step

Gambar 4 Pulsa Driver Unipolar mode Full Step Tugas Akhir ini akan menggunakan motor stepper tipe bipolar dan menggunakan ICL297 dan L298 sebagai driver dari motor stepper tersebut. Dari gabungan dua buah IC ini maka akan dihasilkan pulsa keluaran seperti gambar 3. Sinyal masukan dari mikrokontroler akan diproses oleh IC L297, dari IC L297 akan dikeluarkan 4 sinyal namun masih lemah dan diperlukan penguat yaitu IC L298. komponen yang digunakan sebagai driver yaitu : Tabel 1. Komponen Driver No. Nama Komponen Spesifikasi 1 IC L298 L297 5 Dioda 1N5402 6 Resistor 4k7 0.5ohm/2watt Jumlah 1 1 8 6 2

7 Capasitor 8 9 10 11 12 13 14 15 Jumper Kabel Pendingin Soket Terminal PCB Motor Stepper Spacer

22Kohm 100nF 33uF/16Volt 3n3 Kawat Isi 2 Isi 2 Titik pin IC Tipe Unipolar 10mm

1 1 1 1 1 2 5 1 1 4

Gambar 5. Driver Motor Stepper.

3.

Motor Stepper Motor stepper merupakan objek dari sistem yang dibuat. Motor

stepper akan bergerak sesuai dengan bentuk pulsa atau susunan pulsa dan kecepatan pulas yang dikeluarkan oleh driver. Dimana driver

mengeluarkan empat sinyal yang diberikan ke motor stepper ini.

Urutan sinyal, kecepatan sinyal yang dikeluarkan oleh driver bergantung sekali dengan sinyal yang diterima driver dari mikrokontroler. Motor steppr yang digunakan adalah motor stepper dengan type bipolar. Alasan mengapa menggunakan motor stepper bipolar aadalah tipe ini memiliki torsi yang lebih besar jika dibandingkan dengan tipe unipolar.

4.

Catu Daya Catu daya merupakan bagian yang penting dalam sebuah sistem

karena tanpa catu daya sistem tidak akan bekerja. Dalam sistem pengatur motor stepper ini catu daya yang digunakan memiliki dua buah tegangan keluaran yaitu : +5Volt dan +18Volt. +5Volt digunakan untuk mencatu board dari mikrokontroler dan IC driver, sedangkan +18Volt digunakan untuk mencatu motor stepper. No. 1 2 3 4 5 6 7 8 9 Tabel 3. Komponen Catu daya Nama Komponen Spesifikasi Transformator 3 Ampere Dioda Bridge 3 Ampere IC LM 7805 LM 317 Resistor 240 ohm Variable 5k ohm Kapasitor 100nf 10nf Eclo 3300uf / 50V 330uf / 50V 100uf / 16V PCB Titik pin IC Spacer 10mm Terminal Isi 3 Jumlah 1 1 1 1 1 1 1 1 1 1 1 1 4 1

10 Soket 11 Jumper + kabel 12 Saklar

Isi 2 On/off -

2 1

Gambar 6. Rangkaian Catu Daya

B. PERANCANGAN PROGRAM Sebelum membuat program untuk menggerakan motor stepper maka yang ditentukan terlebih dahulu adalah mode gerak yang akan digunakan. Pada program yang akan penulis buat adalah mode gerak trapesium. Diagram dari mode gerak yang akan dibuat dapat dilihat pada gambar 6. Putar kanan percepatan Putar kanan kecepatan tetap Putar kanan perlambatan

start

Putar kiri perlambatan

Putar kiri kecepatan tetap

Putar kiri percepatan

Gambar 7. Diagram Mode Gerak Motor Stepper

Dari gambar 6 dapat dilihat mode garak yang akan digunakan. Ini gunakan sebagai acuan untuk mermbuat program mikrokontroler. Fitur yang dimiliki mikrokontroler ini yang akan digunakan pada Tugas Akhir ini adalah : 1. 2. 3. 4. 5. 6. Timer counter dengan prescaler dan compare mode Unit interupsi Saluran keluaran pada PORTD. Oscilator internal. 32 x 8 register serbaguna. 1K Byte internal SRAM. Timer counter yang digunakan ialah timer counter 1 dimana memiliki 16-bit dengan fasilitas compare mode. Timer dan counter ini digunakan untuk menentukan kecepatan dari motor stepper dengan mengaktifkan intrupsi setiap match. Pada saat terjadi interupsi mikrokontroler akan mengeluarkan sinyal dari PORTD. Keluaran dari PORTD menggunakan PIND0 dan PIND1. PIND 0 akan mengeluarkan clock, sedangkan PIND1 mengeluarkan sinyal arah. Sinyal arah akan berubah setelah syarat yang ditentukan program terpenuhi yaitu satu proses percepatan, kecepatan tetap kemudian perlambatan. Mikrokontroler ini menggunakan internal oscilator 4MHz. Untuk merubah percepatan memanfaatkan SRAM untuk menyimpan nilai yang dijadikan acuan kecepatan. Nilai ini diambil kemudian dimasukan ke program timer counter.

C. METODE PENGERJAAN Metode pengerjaan tugas akhir ini tergambar seperti diagram :
Mulai

Perancangan Sistem Piranti & Program

Pembuatan Piranti

Uji Coba Piranti

Ok?

Pembuatan Program+simulasi

Download Program ke At Mega8

Uji Coba Sistem

Ok?

Selesai

Gambar 8 Diagram Proses Pembuatan Alat

BAB V PEMBUATAN SISTEM

Piranti yang akan dibuat tersusun atas beberapa bagian yaitu : mikrokontroler, driver dan catu daya. Bagian bagian tersebut merupakan bagian yang penting dalam piranti yang akan dibuat. Didalam pembuatan piranti yang pertama dibuat adalah catu daya karena bagian ini merupakan sumber tegangan dari bagian yang lain sehingga tanpa bagian ini tidak dapat mencoba bagian yang lain. Langkah kedua adalah pembutan driver dan langkah ketiga adalah pembuatan rangkaian mikrokontrol. Setelah semua bagian selesai dibuat langkah berikutnya adalah membuat progrram dan merakit bagian – bagian tersebut menjadi sistem yang diinginkan.

A. PEMBUATAN CATU DAYA Banyak Rangkaian catu daya yang dikenal dalam bidang elektronika. Untuk pembuatan catu daya diperlukan rangkaian yang disesuaikan dengan beban yang akan diterima oleh rangkaian catu daya. Dalam piranti yang penulis buat beban utama dari catu daya yaitu : motor stepper dengan tegangan 18Volt dan mikrokontroler + driver dengan tegangan 5volt. Untuk mensuplai tegangan yang sesuai maka digunakan dua buah regulator dengan gambar rangkaian seperti gambar 6. Dari hasil perancangan catu daya telah

ditentukan gambar rangkaian dan komponen yang akan digunakan dalam pembuatannya berarti mengimplementasikan dari gambar rangkaian yang telah ada menjadi catu daya dalam bentuk yang sebenarnya. Dalam pembuatan catu daya menggunakanak board PCB titik (pin IC) sebagai tempat peletakan komponennya. Penggunaan pcb titik ini karena untuk mempersingkat waktu. Board PCB titik yang digunakan (6.5cm x 14.5cm). Langkah awal dari pembuatan catu daya ini adalah : 1. 2. Membuat lubang untuk spacer pada empat sudut PCB. Menentukan letak komponen dan memasang komponen pada

Board PCB (pada pemasangan IC regulator diperlukan juga heat sink sewhingga diperlukan jarak yang panjang dari komponen yang lain). (diperlukan gambar.) 3. 4. Menyolder kaki komponen tarhadap PCB. Memotong kaki – kaki komponen yang telah disolder. Potongan

dari kaki komponen jangan langsung dibuang sebab diperlukan sebagai jumper apabila pada saat pembuatan jalur menenmukan kebuntuan. 5. Membuat jalur dengan menghubungkan antar kaki komponen

sesuai dengan gambar rangkaian. Dalam pembuatan jalur harus dengan sangat teliti untuk menghindari kesalahan. Jika terjadi kesalahan sedikit maka akan kesulitan memperbaikinya, ini merupakan kelemahan dari penggunaan PCB titik.

6.

Beri tanda atau kode pada soket atau terminal untuk masukan dan

keluaran untuk yang 5 volt dan yang 18 volt untuk memudahkan pada saat uji coba dan instalasi ke rangkaian yang lain nantinya. 7. Setelah semua jalur antar komponen terangkai dengan benar maka

tinggal melakukan ujicoba. Hubungkan input tegangan transformator ke jala-jala listrik, tekan saklar pada posisi ON, lalu ukur tegangan keluaran menggunakan multimeter. Ada dua buah keluaran yaitu 5volt dan 18 volt, pada keluaran 18volt kurang atau lebih dari 18 volt putar resistor variabel sehingga keluaran menjadi 18 volt. Jika masih terjadi kesalahan atau keluaran tidak sesuai berarti ada kesalahan pada ranmgkaian, cek kembali semua jalur dari rangkaian.

B. PEMBUATAN DRIVER Driver untuk motor stepper dapat menggunakan IC yang khusus untuk menggerakan motor stepper. Dalam kesempatan ini driver yang penulis gunakan yaitu menggunakan IC L297 dan L298. IC driver ini dapat untuk motor stepper bipolar. Pembuatan driver ini sesuai dengan hasil rancangan seperti pada gambar 7. Didalam pembuatan driver ini karena waktu yang terbatas dan singkat maka penulis membuat rangkaian drivernya

menggunakan PCB titik dengan ukuran board PCB (6.5 x 14.5cm). Pada IC L297 memiliki 20 pin (gambar sedangkan IC L298 memiliki 15 pin. Yang menyusahkan adalah pin pada IC L298 dikarenakan susunan pin dengan 13 pin di depan dan 12 pin dibelakang dan posisi yang tidak sejajar. Jika

menggunakan PCB titik pin IC ini perrlu dibuat sejajar, cukup dengan memaksa menggeser pin yang bagian depan digeser sehingga sejajat dengan pin yang dibelakang. Langkah – langkah dalam pembuatan driver ini yaitu: 1. 2. Membuat lubang untuk spacer pada empat sudut PCB. Menentukan letak komponen dan memasang komponen pada

Board PCB. Pada langkah ini yang perlu ditentukan dulu yang utama adalah terminal untuk masukan dan keluaran dari driver yang harus diposisikan di tepi untuk memudahkan merangkai dengan bagian lain. Yang kedua adalah IC L298 karena pada IC ini diperlukan pendingin sehingga diperlukan jarak dari komponen lain. Bagian berikutnya adalah IC L297 dan komponen pendukung ditentukan sekiranya tampak rapi. Pada IC L297 baiknya menggunakan soket untuk memudahkan pemasangan atau pelepasan pada saat terjadi kerusakan.(diperlukan gambar.) 3. Menyolder kaki komponen pada PCB. Pada saat menyolder IC

usahakan agar tidak terlalu lama agar panas solder tidak merusak IC. 4. Memotong kaki – kaki komponen yang telah disolder. Potongan

dari kaki komponen jangan langsung dibuang sebab diperlukan sebagai jumper apabila pada saat pembuatan jalur menenmukan kebuntuan. 5. Membuat jalur dengan menghubungkan antar kaki komponen

sesuai dengan gambar rangkaian. Dalam pembuatan jalur harus dengan sangat teliti untuk menghindari kesalahan. Jika terjadi kesalahan sedikit

maka akan kesulitan memperbaikinya, ini merupakan kelemahan dari penggunaan PCB titik. 6. Beri tanda atau kode pada tiap terminal atau soket untuk

memudahkan instalasi. 7. Sebelum uji coba driver diperlukan catu daya (telah dibuat

sebelumnya), motor stepper, dan pembangkit pulsa. Pembangkit pulsa dapat dibuat dengan timer 555 seperti gambar 9.

Gambar 9. Rangkaian Timer

8.

Jika semua bagian yang digunakan untuk menguji driver lengkap,

maka rankailah driver dengan bagian yang lain. Langkah pengujiannya dalah : a. Buatlah jumper untuk tegangan dua buah. Jikas sudah

hubungkan soket tegangan dari catu daya ke driver. Ada dua buah tegangan jangan sampai terbalik.

b.

Hubungkan keluaran driver ke motor stepper. ada urutan

dalam pemasangannya ada 4 kabel (2 pasang) pasang sesuai urutan. Satu pasang kabel motor stepper dengan satu pasang driver. c. Hubungkan jumper half/full driver ke positif, cw/ccw ke

netral, dan clock ke keluaran dari timer. d. Jika sudah terangkai dengan benar tinggal nyalakan

rangkaian. Jika rangkaian sudah benar maka motor stepper akan berputar. Jika motor stepper tidak bergerak maka kemungkinan ada kesalahan pada rangkaian, cek kembali.

C. MIKROKONTROLER ATMega8 Penggunaan rangkaian mikrokontroler ATMega8 ada dua pilihan, dengan menggunakan board ATMega8 develompment board yang sudah ada dipaaran atau dengan membuat sendiri rangklaian mikrokontroler tersebut. Jika menggunakan rangkaian mikrokonter yang sudah tersedia dipasaran maka akan memepersingkat waktu pembuatan sistem, karena hanya tinggal membeli rangkaian berupa kit dan hanya tinggal menggunakannya.

D. PEMBUATAN PROGRAM Sebelum membuat program tentukan dulu bahasa pemrograman yang akan digunakan. Pada Tugas Akhir ini penulis menggunakan bahasa asembler untuk membuat program mikrokontroler dengan menggunakan AVR Studo4 sebagai pemrogramnya.

1.

Pengenalan AVR Studio 4 Untuk membuat program mikrokontroler AVR ATMega8 dapat

menggunakan bahasa AVR Studio4. Software ini menggunakan bahasa asembler khusus untuk mikrokontroler AVR.

Gambar 10 Lambang AVR Studio 4. AVR Studio 4 sudah dilengkapi dengan simulator sehingga memudahkan dalam pembuatan program. Program yang telah dibuat dapat disimulasikan menggunakan AVR Studio 4 ini, sehingga pada saat terjadi kesalahan dapat diketahui sebelum di download ke mikrokontroler. Didalam membuat program yang pertama kali harus diketahui adalah struktur dari pemrograman, dan instruksi-instruksi yang digunakan kemudian pengoperasian piranti lunak yang digunakan. Untuk instruksi pemrograman dapat dilihat pada Data Sheet atau manual book dari mikrokontroler. Untuk mikrokontroler ATMega8 memiliki kurang lebih 130 instruksi dan memiliki 19 interupsi.

2.

Pengoperasian AVR Studio4 Untuk memulai pembuatan program menggunakan AVR Studio4

pertama kita buka program AVR Studio 4 dari start menu. Pada awal

sebelum masuk ke jendela pemrograman akan muncul jendela untuk memilih apakah kita akan membuat program baru atau akan membuka program yang telah tersimpan. Pilih “New Project” untuk membuat program baru dan “Open” untuk membuka program yang telah tersimpan lihat gambar 11.

Gambar 11. Tampilan Awal AVR Studio 4 Jika memilih “New Project” berarti membuat program baru maka dari AVR Studio akan muncul lagi jendela untuk memberi nama program lihat gambar 12. Pada jendela akan terlihat beberapa pilihan pertama

“Project type” pilihlah “Atmel AVR Asembler” kemudian “project name” tulislah nama program yang akan dibuat, pada initial file akan sama dengan project name. Setelah itu pilih lokasi untuk menyimpan program yang akan dibuat. Jika semua sudah diseting baru klik next.

Gambar 12. Pembuatan Nama Program Baru Langkah selanjutnya adalah menentukan mikrokontroler yang akan digunakan pada tampilan akan terlihat “Select debug platform and device” lihat gambar 13. Pada bagian debug platform pilih “AVR Simulator” kemudian pada bagian device terdapat nama – nama mikrokontroler yang dapat disimulasikan di AVR Studio4, pilihlah ATmega8 kemudian klik finish.

Gambar 13. Pemilihan Mikrokontroler Yang Digunakan

Gambar 14. Tampilan Penulisan Program Asembler (AVR) Untuk menuliskan program dapat langsung dituliskan pada jedela program sebelah kanan. Dalam menulis program pada AVR Studio harus

sesuai dengan ketentuan bahasa pemrograman AVR. Urutan penulisan program dapat dibaca pada Instruksi Dalam Asembler AVR.

3.

Instruksi Asembler AVR Dalam pembuatan program menggunakan AVR studio4 perlu

mengetahui terlebih dahulu perintah - perintah yang digunakan dalam AVR Studio4 dan tata cara penulisannya. Dalam penulisan program berbeda dengan saat menulis untuk catatan, dalam penulisan program terdapat prosedur yang harus dipenuhi. Dalam setiap penulisan perintah dalam program harus mengikuti empat buah ketentuan dibawah ini : a. b. c. d. [label:] directive [operand] [komentar] [label:] instruction [operand] [komentar] Komentar Baris kosong Penulisan komentar dalam program juga memiliki ketentuan, dimana komentar harus ditulis setelah tanda ‘;’. Tanda ‘;’ merupakan batas dimana karakter setrelah tanda tersebut tidak akan dianggap sebagai perintah.
Contoh : .DEF LDI TEMP=R16 R16,$60 ; R16 diberi nama TEMP (baris komentar) ; Memasukan nilai 60heksa ke register16

Instruksi untuk AVR Asembler terbagi menjadi beberapa kelompok antara lain : instruksi perpindahan data, instruksi percabangan, dan instruksi untuk bit.

a.

Instruksi Perpindahan Data Instruksi penyalinan data yaitu instruksi untuk memasukan data

atau memindah data antar register, dari register ke I/O atau memasukan konstanta nilai ke register. Instruksi yang termasuk dalam kelompok perpindahan data yang sering digunakan adalah : 1) LDI (Load Imidiete) untuk memasukan nilai konstanta ke

dalam register.
Contoh : ldi ldi r16,$FF r16,100 ; Memasukan FF heksa ke r16 ; Memasukan 100 desimal ke r16

2)

MOV

(Move

Between

Register)

perintah

untuk

memindahkan nilai satu register ke register yang lain.
Contoh : ldi mov r16,$FF r17,r16 ; Memasukan FF heksa ke r16 ; Memindahkan isi r16 ke r17

3)

LPM (Load Program Memori) perintah untuk mengambil

nilai yang tersimpan di lokasi memori ke register 0.
Contoh : lpm r0,Z+ ; Memasukan nilai pada alamat yang ditunjukan oleh pointerZ ke r0.

4)

IN perintah memasukan nilai dari port atau flag register

ke register.
Contoh : in r16,portd ; Memasukan portd ke r16

5) port.
Contoh :

OUT perintah untuk mengeluarkan nilai di register ke

ldi out

r16,$FF ; Memasukan FF heksa ke r16 portd,r16 ; Mengeluarkan isi r16 ke portd

6)
Contoh :

PUSH perintah untuk memasukan nilai register ke stack.
in push r16,SREG ; Nilai status register ke r16 r16,100 ; Menyimpan nilai r16 ke stack

7) stack.
Contoh :

POP perintah untuk mengembalikan nilai register dari

pop out

r16 ; Mengembalikan nilai Stack ke r16 SREG,r16 ; Memasukan 100 desimal ke r16

b.

Instruksi Percabangan Intruksi percabangan sebenarnya digunakan untuk mengatur

alur dari program agar urutan perintah yang dieksekusi sesuai dengan yang diinginkan. Dalam instruksi percabangan dikelompokan dalam menjadi dua yaitu : instruksi percabangan tak bersyarat dan instruksi percabangan bersyarat. 1) Instruksi Percabangan Tak Bersyarat

Didalam percabangan tak bersyarat tidak diperlukan syarat tertentu untuk melakukan percabangan. Yang termasuk instruksi

percabangan tak bersyarat antara lain : RJMP, JMP DAN IJMP. Berikut adalah contoh penggunaan instruksi percabangan :
contoh : ldi r19,$5A out portd,r19 rjmp contoh ; isi r19 dengan 5A heksa ; keluarkan r19 ke portd ; lompat ke contoh

2)

Instruksi Percabangan Bersyarat

Instruksi percabangan bersyarat merupakan instruksi dimana akan melompat ke rutin yang ditunjuk jika syarat terpenuhi. Instruksi ini memanfaatkan flag SREG sebagai syarat yang harus dipenuhi, ada dua pilihan percabangan yaitu : bercabang jika flag set atau bercabang jika flag clear. Instruksi percabangan banyak sekali digunakan dalam pembuatan program dengan bahasa asembler. Yang termasuk instruksi percabangan bersyarat misalnya : BRNE (Branch if not equal) dan BREQ (Branch if equal)
.................... ; instruksi sebelumnya cpi r22,$01 ; bandingkan r22 dengan 01 breq naik ; jika sama lompat ke naik brne turun ; jika tidak sama lompat ke turun naik: ; rutin naik ................. ; instruksi dalam rutin naik turun : ; rutin turun ................ ; instruksi dalam rutin turun

Pada penggalan program diatas dapat dilihat pemakain inststruksi breq. Pada penggalan program yaitu mambandingkan r22 dengan 01 jika r22 sama dengan 01 maka lompat ke naik. Sedangkan jika r22 tidak sama dengan 01 maka akan melompat ke turun.

c.

Instruksi Bit

Pada instruksi untuk AVR asembler terdapat juga instruksi untuk mengaktifkan dan menonaktifkan suatu bit pada register, port I/O atau pada flag register. Contoh pwenggunaan instruksi Bit misalnya :
Contoh :

Swap R0 bawah SBI Sei portd,4

; memindahkan nible atas ke nible ; set bit portd4 ; set bit I pada SREG

Contoh diatas merupakan salah satu dari instruksi bit yang ada pada Asembler untuk AVR.

4.

Pembuatan Program Setelah memahami benar penggunaan AVR Studio4 dan mengenal

instruksi yang digunakan maka dapat melanjutkan langkah berikutnya yaitu pembuatan program. Seperti yang telah digambarkan pada bab perancangan sistem, program akan mengatur kecepatan motor stepper dengan memberikan dua buah sinyal ke driver. Dua buah sinyal yang dikirim oleh ATMega8 akan mengisyaratkan agar motor stepper bergerak ke kanan dengan percepatan, kekanan dengan kecepatan konstan, kekanan dengan perlambatan, kemudian berbalik ke kiri dengan percepatan, putar kiri dengan kecepatan konstan, putar kiri dengan perlambatan dan kemudian berbalik arah lagi. Dalam praktek untuk mencapai akhir program sesuai yang diinginkan kita memerlukan algoritma untuk pembuatan program. Percobaan awal yang penulis lakukan sebelum mencapai program yang utama adalah menggerakan motor stepper dengan menggunakan 4 sinyal keluaran dari mikrokontroler yang diseting pada portd. Pada program tersebuat menggunakan delay untuk penundaan antar rentan sinyal yang dikeluarkan oleh mikrokontroler. Program tersebut adalah :

; Program Kendali Motor Stepper Dengan Empat Sinyal .include "m8def.inc" .def T = r16 .def R = r17 .def I = r18 .def D = r19 .def P = r20 .def U = r21 .def K = r22 .equ kanan = $10 .equ kiri = $10 .equ delay = $02 .org $0000 rjmp main main: ldi T,LOW(RAMEND) out SPL,T ldi T,HIGH(RAMEND) out SPH,T ldi T,$FF out DDRD,T ser T out PORTB,T step: ldi D,kanan ldi P,kiri arah_kanan: ldi T,(1<<PD3 | 0<<PD2 | 0<<PD1 | 1<<PD0) out PORTD,T rcall tunda1 ldi T,(1<<PD3 | 1<<PD2 | 0<<PD1 | 0<<PD0) out PORTD,T rcall tunda1 ldi T,(0<<PD3 | 1<<PD2 | 1<<PD1 | 0<<PD0) out PORTD,T rcall tunda1 ldi T,(0<<PD3 | 0<<PD2 | 1<<PD1 | 1<<PD0) out PORTD,T rcall tunda1 dec D brne arah_kanan stopr: ldi K,$00 out PORTD,K rcall tunda1

arah_kiri: ldi T,(0<<PD3 | 1<<PD2 | 1<<PD1 | 0<<PD0) out PORTD,T rcall tunda1 ldi T,(1<<PD3 | 1<<PD2 | 0<<PD1 | 0<<PD0) out PORTD,T rcall tunda1 ldi T,(1<<PD3 | 0<<PD2 | 0<<PD1 | 1<<PD0) out PORTD,T rcall tunda1 ldi T,(0<<PD3 | 0<<PD2 | 1<<PD1 | 1<<PD0) out PORTD,T rcall tunda1 dec P brne arah_kiri stopl: ldi K,$00 out PORTD,K rcall tunda1 rjmp step tunda1: ldi R,Delay time1: ldi I,$02 Time2: dec I brne Time2 dec R brne time1 ret ; Register B diisi dengan 05(00000101) ; Register C diisi dengan 04(00000100) ; ; Isi Register C dikurangi 1 ; Jika tidak sama melompat ke time2 ; Isi Register B dikurangi 1

Program empat sinyal tersebut merupakan program awal yang merupakan program untuk uji coba driver dan mikrokontroler. Dari hasil program tersebut didapat piranti mikrokontrol dapat bekerja dan driver motor stepper juga dapat bekerja. Kelemahan dari program pertama tersebuat adalah sulit untuk memperhitungkan kecepatan dari motor stepper karena masih menggunakan delay sebagai penundaan sinyalnya.

Pada tahap berikutnya delay yang digunakan akan dirubah menggunakan mode interupt timer dan counter. Pada perencanaan program ini terbagi menjadi dua bagian yaitu : program untuk aktifasi interupt dan program lanjutan. Dalam Tugas Akhir yang penulis lakukan dibawah bimbingan Dr. Estiko Rijanto, penulis bekerja sama dengan mahasiswa lain dari STT Telkom. Dalam pengerjaaan program kami bekerja sama untuk menghasilkan program yang sesuai dengan keinginan. Dari hasil kerjasama yang penulis lakukan dengan Muhamad Eko Utomo (Mahsiswa STT TELKOM) kami berhasil membuat program sesuai dengan keingginan. Penulis bertugas mengerjakan hardware dan program untuk motor stepper sedangkan Eko bekerja membuat komunikasi serial dengan PC guna mengatur kecepatan motor stepper dengan PC. Dari kerja sama tersebut penulis mengambi sebagian hasil dari penelitian untuk dijadikan laporan Tugas Akhir dengan judul “Aplikasi Mikrokontroler Atmega8 Sebagai Pengatur Kecepatan Dan Mode Gerak Motor Stepper”. Program untuk piranti yang penulis buat pada Tugas Akhir penulis lampirkan.

5. E. DOWNLOAD SOFTWARE KE AT MEGA8 Untuk mendownload program yang telah kita buat di AVR Studio 4, kita dapat menggunakan piranti lunak BASCOM. Untuk memulainya kita dapat membuka BASCOM melalui start menu. Setelah terbuka untuk

mengaktifkan menu download program, kita harus membuka terlebih dahulu salah satu program berekstensi bas (*.bas) yang terdapat dalam folder “example” di folder tempat BASCOM diinstal. Setelah itu kita pasang kabel downloader ke soket ISP Programming dan ke komputer. Setelah itu kita hidupkan catu daya untuk mengaktifkan rangkaian ATMega8. Kemudian kita klik menu “Program-Send to chip” atau tombol hotkey F4, akan muncul jendela “AVR Programmer” kemudian identify chip, jika teridentifikasi maka rangkaian benar dan program dapat di download ke mikrokontroler.

Gambar 10 Pengaktifan Menu Download

Kemudian buka folder program yang telah kita buat, saat membuka file kita pilih dahulu file type dengan memilih intelHEX. Setelah itu pilih progrtam yang akan dikirim ke ATMega8.

Gambar 11 Jendela Untuk Membuka Program

Kemudian untuk mendownloadnya, pertama kita hapus terlebih dahulu memori yang ada dalam ATMega8 dengan cara mengklik menu “Chip-Erase”. Kemudian klik menu “Chip-Write buffer into chip”. Untuk memeriksanya, pertama kita hapus dahulu buffer, dengan jalan mengklik menu “Buffer-Clear”. Setelah itu kita klik menu berikut, “ ChipRead chipcode into buffer” untuk membaca code yang ada dalam mikrokontroler

F. UJI COBA SYSTEM Ini adalah langkah terakhir dari pembuatan alat. Setelah program di tanam ke mikrokontroler maka kita dapat merangkai piranti dari sistem yaitu : mikrokontroler ATMega8, driver dan motor stepper. Gabungkan semua

rangkaian dengan benar sesuai sistem. Setelah semua dirangkai dengan benar maka tinggal menghidupkan catu daya untuk menjalankannya. Dari hasil itu dapat dilihat apakah sistem bekerja sesuai dengan perencanaan. Jika sesuai maka pembuatan peralatan sudah selesai

Sign up to vote on this title
UsefulNot useful