Rancangan Alat Pengontrol Kecepatan Putar Motor Listrik Berbasis Mikrokontroler AT89S52

(1)

RANCANGAN ALAT PENGONTROL KECEPATAN PUTAR MOTOR LISTRIK BERBASIS MIKROKONTROLER AT89S52

SKRIPSI

Diajukan untuk melengkapi dan memenuhi syarat mencapai gelar Sarjana Sains

GILANG PERKASA RIZKI 060801015

DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

MEDAN 2010


(2)

PERSETUJUAN

Judul : RANCANGAN ALAT PENGONTROL

KECEPATAN PUTAR MOTOR LISTRIK BERBASIS MIKROKONTROLER AT89S52

Kategori : SKRIPSI

Nama : GILANG PERKASA RIZKI

Nomor Induk Mahasiswa : 060801015

Program Studi : SARJANA (S1) FISIKA

Departemen : FISIKA

Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN

ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA

Diluluskan di Medan,

Diketahui/ Disetujui oleh Pembimbing Departemen Fisika FMIPA USU

Ketua

DR. Marhaposan Situmorang

NIP : 195510301980031003 NIP : 195510301980031003 DR. Marhaposan Situmorang


(3)

PERNYATAAN

RANCANGAN ALAT PENGONTROL KECEPATAN PUTAR MOTOR LISTRIK BERBASIS MIKROKONTROLER AT89S52

SKRIPSI

Saya mengaku bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan,

GILANG PERKASA RIZKI 060801015


(4)

PENGHARGAAN

Segala puji dan sukur saya ucapkan kepada Allah SWT Yang Maha Pemurah dan Maha Penyayang, dengan karunia-Nya sehingga skripsi ini berhasil diselesaikan dalam waktu yang telah ditetapkan.

Ucapan terimakasih saya sampaikan kepada Bpk DR. Marhaposan Situmorang, selaku ketua Departeman Fisika USU sekaligus sebagai pembimbing yang telah banyak membimbing dan memberi masukan serta koreksi kepada saya dalam menyelesaikan skripsi ini. Ucapan terimakasih juga saya ajukan kepada Bpk Drs. Takdir Tamba M.Eng,Sc, Bpk Dr. Nasruddin M.Eng,Sc dan Bpk Dr. Kerista Tarigan M.Eng,Sc, selaku dosen pembanding yang banyak memberikan masukan untuk kesempurnaan skripsi ini. Ucapan terimakasih juga saya ajukan kepada Bpk Drs. Kurnia Sembiring MS selaku dosen wali saya selama mengikuti perkuliahan, dan terimakasih banyak kepada Ibu Dra. Yustinon MS, Dekan dan Pembantu Dekan FMIPA Universitas Sumatera Utara, serta semua dosen dan Staf pada Departemen Fisika FMIPA USU. Temanku di Lab digital Abdullah, Oki, bang Reza dan kak Nadra serta semua rekan-rekan Fisika seperjuangan Khususnya Angkatan 2006 yang saya banggakan.

Akhirnya, yang tidak terlupakan dan yang teristimewa kepada Ayah Bunda Tercinta, Hendri Zas dan Eki Trikoryati, Abang dan Kakak saya Fajar dan Bunga. Terimakasih atas doa, dukungan serta semangat yang telah diberikan. Semoga Allah SWT juga yang akan membalasnya. Amin Ya Rabbal Alamin


(5)

DESIGN ISTRUMENT OF CONTROL SPEED ROTARY ELECTRIC MOTOR BASEC MICROCONTROLLER AT89S52

ABSTRACT

Had design a instrument who can measure and controlled of electric motor who active otomaticly. The Instrument controlled electric motor before with control voltage gived at motor. This instrument design for defend stability speed rotary motor although motor have interference by different load. All the part from this research instrument are stand of from optocoupler sensor, microcontroller and stepper motor. The instrument also have good carefulness in measuring with 0,83%. The weakness of the instrument is Instrument just can measure and control speed rotary adjust with input data, and have time response 1 second.


(6)

RANCANGAN ALAT PENGONTROL KECEPATAN PUTAR MOTOR LISTRIK BERBASIS MIKROKONTROLER AT89S52

ABSTRAK

Telah dirancang alat yang dapat mengukur dan pengendali kecepatan motor listrik yang dapat bekerja secara otomatis. Alat ini mengendalikan kecepatan motor listrik berdasarkan pengaturan pasokan tegangan yang diberikan pada motor. Alat ini dirancang untuk mempertahankan kestabilan kecepatan putar motor walaupun motor mengalami gangguan berupa perubahan pembebanan. Secara garis besar alat ini terdiri dari, sensor optocoupler, mikrokontroler dan motor stepper. Alat ini memiliki ketelitian cukup baik dalam mengukur kecepatan putar dengan kesalahan 0,83%. Kelemahan dlri alat ini adalah hanya mengukur dan mengontrol kecepatan putar sesuia dengan data yang diinginkan serta memiliki waktu respon sebesar 1 detik.


(7)

DAFTAR ISI

Halaman

Persetujuan ii

Pernyataan iii

Penghargaan iv

Abstract v

Abstrak vi

Daftar isi vii

Daftar tabel viii

Daftar Gambar ix

Daftar Grafik x

Bab 1 Pendahuluan

1.1. Latar Belakang 1

1.2. Batasan Masalah 2

1.3. Tujuan Penelitian 2

1.4. Manfaat Penelitian 3

1.5. Tempat Penelitian 3

1.6. Sistematika Penulisan 3

Bab 2 Landasan Teori

2.1. Motor 5

2.2. Motor DC 5

2.2.1. Prinsip kerja motor dc 7

2.2.2. Karakteristik motor dc 10

2.3. Motor stepper 11

2.4. Sensor Optocoupler 13

2.5. Mikrokontroler 16

2.5.1. Mikrokkontroler AT89S52 16

2.5.2. Instruksi Transfer data 21

2.5.3. Instruksi Aritmatik 22

2.5.4. Instruksi Logika 22

2.5.5. Instruksi Percabangan 23

2.6. Liquid Crystal Display (LCD) 24

2.7. Transistor 25

2.7.1. Prinsip Kerja Transistor 26

2.7.2. Common Emiter (CE) 27

2.7.3. Kurva Base 28

2.7.4. Kurva Kolektor 29

2.7.5. Daerah Aktif 29

2.7.6. Daerah Saturasi dan daerah cut-off 30 Bab 3 Perancangan Alat


(8)

3.3. Rangkaian Mikrokontroler AT89S52 36

3.4. Display LCD Character 2 x 16 37

3.5. Keypad 39

3.6. Motor Stepper 40

Bab 4 Hasil dan Pembahasan

4.1. Rangkaian Penguji Mikrokontroler 43

4.2. Interfacing LCD 2 x 16 46

4.3. Pengujian Motor Stepper 48

4.4. Pengujian Keypad 49

4.5. Hasil Pengukuran Alat 51

4.5.1 Pengukuran Kecepatan Putar (rpm) 51

4.6. Analisa Ketelitian Alat 53

4.7. Hasil pengaturan kecepatan putar alat 56 Bab 5 Kesimpulan dan Saran

5.1. Kesimpulan 70

5.2. Saran 71

Bab 6 Daftar Pustaka 72


(9)

DAFTAR TABEL

Halama n

Tabel 2.1 Motor Stepper Dengan Gerakan Full Step 12

Tabel 2.2 Fungsi Khusus port 3 19

Tabel 3.1 fungsi pin LCD carakcter 2 x 16 38 Tabel 3.2 data untuk menggerakkan motor stepper 41 Table 4.1 Waktu pengeksekusian routin delay 45 Tabel 4.2 Hasil pengamatan pada pengujian keypad 50 Tabel 4.3 Perbandingan Kec motor dc pada alat dan pada multimeter 51 Tabel 4.4 Penyimpangan dan % kesalahan pada pengukuran kec. Putar 54 Tabel 4.5 Pengontrolan Motor tanpa beban dengan kec referensi tetap 57 Tabel 4.6 Pengontrolan Motor tanpa beban dengan kec referensi berubah 59 Tabel 4.7 Hubungan Beban dengan Kec motor. Tanpa pengontrolan 65 Tabel 4.8 Pengamatan terhadap pengontrolan kecepatan putar motor 67


(10)

DAFTAR GAMBAR

Halama n

Gambar 2.1 Struktur motor dc sederhana 6

Gambar 2.2 motor dc 7

Gambar 2.3 medan magnet yang membawa arus mengelilingi motor dc 7 Gambar 2.4 medan magnet mengelilingi konduktor diantara dua kutub 8

Gambar 2.5 Reaksi garis fluks 8

Gambar 2.6 Prinsip kerja motor dc 9

Gambar 2.7 Kurva torsi vs kecepatan motor dc 10

Gambar 2.8 Motor stepper 12

Gambar 2.9 Optocoupler 15

Gambar 2.10 Blok diagram fungsional AT89S52 17

Gambar 2.11 Konfigurasi pin AT89S52 18

Gambar 2.12 Blok tampilan Kristal cair (LCD) 24 Gambar 2.13 Ilustrasi Transistor sebagai kran listrik 25

Gambar 2.14 Arus Emitor 26

Gambar 2.15 Rangkaian CE 27

Gambar 2.16 Kurva IB-Vbe 28

Gambar 2.17 Kurva Kolektor 29

Gambar 2.18 Rangkaian Diver LED 31

Gambar 3.1 Diagram blok alat pengontrol kecepatan putar motor 32 Gambar 3.2 Diagram alir program Alat pengontrol kecepatan putar 34 Gambar 3.3 Rancangan sensor optocoupler pada motor dc 35 Gambar 3.4 Rangkaian pengkondisi sinyal optocoupler 36 Gambar 3.5 Rangkaian Skematik system minimum Mikrokontroler AT89S52 36

Gambar 3.6 LCD 2 x 16 38

Gambar 3.7 Peta memory LCD character 2 x 16 39

Gambar 3.8 Konstruksi keypad 4 x 3 40

Gambar 3.9 Pulsa untuk menggerakkan motor stepper 40

Gambar 3.10 Motor stepper Unipolar 41

Gambar 3.11 Rangkaian IC ULN2803 untuk motor stepper 41 Gambar 3.12 Rancangan hubungan Motor stepper dengan PSA variabel 42 Gambar 4.1 Rangkaian Pengujian Mikrokontroler 43

Gambar 4.2 Rangkaian Pengujian LCD 47

Gambar 4.3 Pulsa yang diberikan untuk menggerakkan motor stepper 48 Gambar 4.4 Rangkaian Pengujian Motor stepper 49


(11)

DAFTAR GRAFIK

Halama n

Grafik 4.1 Hubungan Kec. Putar motor pada LCD dan Kec. pada multimeter 53

Grafik 4.2 Kec. Putar motor vs waktu 58

Grafik 4.3 Tegangan motor vs waktu 58

Grafik 4.4 Kecepatan aktual motor vs waktu, pada putaran stepper = 1 step 60 Grafik 4.5 Tegangan vs waktu pada putaran stepper = 1 step 61 Grafik 4.6 Kec. Aktual vs waktu pada putaran stepper = 3 step 61 Grafik 4.7 Kec. Aktual vs waktu pada putaran stepper = 5 step 62 Grafik 4.8 Kec. Aktual vs waktu

dengan putaran stepper (step) = abs[kec. Actual – kec. Referensi]/5 63 Grafik 4.9 Kec. Aktual vs waktu

dengan putaran stepper (step) = abs[kec. Actual – kec. Referensi]/2 63 Grafik 4.10 Kec. Aktual vs waktu

dengan putaran stepper (step) = abs[kec. Actual – kec. Referensi] 64 Grafik 4.11 Kec. Motor vs beban, tanpa pengontrolan 65 Grafik 4.12 Kec. Putar motor vs waktu pada beban 1 kg

dengan putaran stepper (step) = abs[kec. Actual – kec. Referensi]/2 68 Grafik 4.13 Kec. Putar motor vs waktu pada beban 0,7 kg

dengan putaran stepper (step) = abs[kec. Actual – kec. Referensi]/2 69 Grafik 4.14 Kec. Putar motor vs waktu pada beban 0,3 kg


(12)

DESIGN ISTRUMENT OF CONTROL SPEED ROTARY ELECTRIC MOTOR BASEC MICROCONTROLLER AT89S52

ABSTRACT

Had design a instrument who can measure and controlled of electric motor who active otomaticly. The Instrument controlled electric motor before with control voltage gived at motor. This instrument design for defend stability speed rotary motor although motor have interference by different load. All the part from this research instrument are stand of from optocoupler sensor, microcontroller and stepper motor. The instrument also have good carefulness in measuring with 0,83%. The weakness of the instrument is Instrument just can measure and control speed rotary adjust with input data, and have time response 1 second.


(13)

RANCANGAN ALAT PENGONTROL KECEPATAN PUTAR MOTOR LISTRIK BERBASIS MIKROKONTROLER AT89S52

ABSTRAK

Telah dirancang alat yang dapat mengukur dan pengendali kecepatan motor listrik yang dapat bekerja secara otomatis. Alat ini mengendalikan kecepatan motor listrik berdasarkan pengaturan pasokan tegangan yang diberikan pada motor. Alat ini dirancang untuk mempertahankan kestabilan kecepatan putar motor walaupun motor mengalami gangguan berupa perubahan pembebanan. Secara garis besar alat ini terdiri dari, sensor optocoupler, mikrokontroler dan motor stepper. Alat ini memiliki ketelitian cukup baik dalam mengukur kecepatan putar dengan kesalahan 0,83%. Kelemahan dlri alat ini adalah hanya mengukur dan mengontrol kecepatan putar sesuia dengan data yang diinginkan serta memiliki waktu respon sebesar 1 detik.


(14)

BAB 1 PENDAHULUAN 1.1. LATAR BELAKANG

Motor merupakan sebuah perangkat elektromagnetis yang mengubah energi listrik menjadi energi mekanik. Energi inilah yang digunakan untuk berbagai keperluan, misalnya menggerakkan pompa, menggerakkan kompressor, mengangkat bahan dan lain-lain. Motor juga banyak digunakan untuk keperluan rumah seperti menggerakkan mixer, bor listrik, kipas angin dan sebagainya. Dalam industri motor merupakan suatu hal yang penting, bahkan motor disebut “kuda kerja” nya industri sebab diperkirakan bahwa motor-motor menggunakan sekitar 70% beban listrik total industri. Dengan kata lain motor listrik memiliki peranan yang penting dalam kehidupan sehari-hari.

Namun pada kenyataannya kecepatan motor akan menjadi menurun apabila motor mendapat perubahan pembebanan. Untuk beberapa penggunaan tertentu kecepatan motor diharapkan memiliki suatu kecepatan yang konstan, supaya semua hasil yang diinginkan tercapai. Oleh sebab itu diperlukan suatu cara yang dapat mengontrol kecepatan putar motor dengan baik agar motor tersebut dapat bekerja dengan efektif tanpa harus takut kecepatan motor tersebut menjadi menurun apabila diberikan perubahan pembebanan.

Berdasarkan pertimbangan itu, maka dibuatlah suatu perancangan alat pengatur kecepatan putar motor berbasis Mikrokontroler AT89S52. Alat ini akan mengukur dan mengontrol kecepatan putar supaya tetap stabil dan sesuai dengan kecepatan yang diinginkan walaupun motor tersebut mendapatkan pembebanan yang berubah. Kecepatan motor yang dikehendaki dapat di inputkan melalui keypad yang disediakan pada alat tersebut, dan hasil pengukuran ditampilkan pada display, sehingga alat mudah digunakan serta mudah untuk dipindahkan.


(15)

Dengan demikian diharapkan penelitian ini dapat bermanfaat, karena akhir dari penelitian ini nantinya akan menghasilkan suatu alat pengukuran dan pengontrolan motor listrik agar penggunaannya dapat dikontrol dengan baik yang bekerja secara otomatis dan bermanfaat bagi kehidupan manusia.

1.2. BATASAN MASALAH

Adapun batasan masalah yang akan dibahas dalam penelitian ini adalah: 1. Motor yang digunakan adalah motor dc

2. Sumber arus motor dc yang digunakan berasal dari PSA variabel

3. Besar beban dan kecepatan referensi motor disesuaikan dengan kemampuan motor dc yang digunakan

4. Mikrokontroler yang digunakan adalah jenis AT89S52

5. Untuk Mengendalikan PSA pariabel Digunakan Motor Stepper 6. Sensor kecepatan putar yang digunakan adalah optocoupler

7. Untuk menampilkan kecepatan putar motor digunakan LCD 2 x 16 8. Kecepatan referensi di inputkan melalui keypad

1.3. TUJUAN PENULISAN

Adapun tujuan penulis melakukan penelitian ini adalah:

1. Merancang suatu alat yang dapat mengontrol kecepatan putar motor dc pada piringan celah

2. Mengetahui hubungan kecepatan putar motor dengan beban yang diberikan 3. Mengetahui hubungan antara kecepatan motor dengan tegangan yang digunakan

motor

4. Mengetahui pengaruh respon dari alat terhadap perubahan kecepatan motor akibat pembebanan


(16)

I.4. MANFAAT PENELITIAN

Manfaat yang diharapkan dari penelitian ini adalah:

1. Meningkatkan pengetahuan mengenai karakteristik motor dc, sensor kecepatan putar dan memperluas aplikasi mikrokontroler

2. Sebagai informasi dasar membangun sebuah insrumentasi yang mampu mengukur dan mengendalikan kecepatan putar motor listrik.

3. Membuat suatu sistem yang diharapkan berguna untuk keperluan industri yang menggunakan motor

1.5. TEMPAT PENELITIAN

LABORATORIUM INSTRUMENTASI DIGITAL FMIPA USU, MEDAN 1.6. SISTEMATIKA PENULISAN

Untuk mempermudah pembahasan dan pemahaman maka penulis membuat sistematika pembahasan bagaimana sebenarnya prinsip kerja dari alat pengontrol kecepatan putar motor listrik berbasis mikrokontroler AT89S52, maka penulis menulis laporan ini dengan sistematika penulisan sebagai berikut:

BAB I. PENDAHULUAN

Dalam bab ini berisikan mengenai latar belakang, rumusan masalah, tujuan penulisan, batasan masalah, manfaat penelitian serta sistematika

BAB II. LANDASAN TEORI

Dalam bab ini dijelaskan tentang teori pendukung yang digunakan utuk pembahasan. Teori pendukung antara lain tentang motor, motor dc, motor stepper, sensor optocoupler, mikrokontroler AT89S52 (Hardware dan software), LCD serta kerja dari sensor yang digunakan


(17)

BAB III. PERANCANGAN ALAT DAN PROGRAM

Dalam bagian ini akan dibahas perancangan dari alat, yaitu diagram blok dari rangkaian, skematik dan sistem kerja dari masing-masing rangkaian, bahasa program yang digunakan, dan program yang akan diisikan ke mikrokontroler AT89S52.

BAB IV ANALISA RANGKAIAN DAN SISTEM KERJA ALAT

Pada bab ini akan dibahas hasil analisa dari rangkaian dan sistem kerja alat, penjelasan mengenai program-program yang digunakan untuk mengaktifkan rangkaian, dan penjelasan mengenai program yang diisikan ke mikrokontroler AT89S52.

BAB V KESIMPULAN DAN SARAN

Banini merupakan penutup yang meliputi tetntang kesimpulan dari pembahasan yang dilakukan dari tugas akhir ini serta saran apakah rangkaian ini dapat dibuat lebih efisien dan dikembangkan perakitannya pada metode lain yang mempunyai sitem kerja yang sama


(18)

BAB 2

LANDASAN TEORI 2.1Motor.

Motor merupakan perangkat elektromagnetik yang dapat mengubah energi listrik menjadi energi mekanik. Perubahan ini dilakukan dengan merubah tenaga listrik menjadi bahwa : kutub-kutub dari magnet yang senama akan tolak-menolak dan kutub-kutub tidak senama, tarik-menarik. Maka kita dapat memperoleh gerakan jika kita menempatkan sebuah magnet pada sebuah poros yang dapat berputar, dan magnet yang lain pada suatu kedudukan yang tetap. Dengan cara inilah energi listrik dapat diubah menjadi energi mekanik.

Energi mekanik ini diguanakan untuk, misalnya memutar impeler pompa, fan atau blower, menggerakkan kompresor, mengangkat bahan, dll. Motor listrik digunakan juga dirumah (mixer, bor listrik, afan angin) dan industri. Motor listrik kadangkala disebut “kuda kerja” nya industri sebab diperkirakan bahwa motor-motor menggunakan sekitar 70% beban total industri.

Secara umum motor listrik dapat dibagi menjadi motor ac dan motor dc, bembagian ini berdasarkan pada arus listrik yang digunakan untuk menggerakkannya. Namun penulis pada bagian ini kita hanya membahas mengenai motor dc

2.2Motor DC

Motor arus searah (motor dc) merupakan salah satu jenis motor listrik yang bergerak dengan menggunakan arus searah. Kumparan medan pada motor dc disebut stator (bagian yang tidak berputar) dan kumparan jangkar disebut rotor (bagian yang berputar). Jika terjadi putaran pada kumparan jangkar dalam pada medan magnet,


(19)

maka akan timbul tegangan (GGL) yang berubah-ubah arahnya pada setiap setengah putaran, sehingga merupakan tegangan bolak-balik. Prinsip kerja arus searah adalah membalik phasa tegangan dari gelombang yang mempunyai nilai positif dengan menggunakan komutator, dengan demikian arus yang berbalik arah dengan kumparan jangkar yang berputar dalam medan magnet. Bentuk motor yang paling sederhana memiliki kumparan satu lilitan yang bisa berputar bebas diantara kutub-kutub magnet permanen

Gambar 2.1. Struktur motor dc sederhana

Catu tegangan dc dari baterai menuju lilitan melalui sikat menyentuh komutator dua segmen yang terhubung dengan dua ujung lilitan. Kumparan satu lilitan pada gambar diatas disebut angker dinamo. Angker dinamo adalah sebutan untuk komponen yang berputar diantara medan magnet.

Motor ini memiliki keunggulan dari motor ac yaitu mudah dalam mengatur dan mengontrol kecepatan putarnya. Ada bebarapa cara untuk dapat mengendalikan kecepatan motor dc, antara lain dengan mengatur lebar pulsa tegangan setiap detiknya yang diberikan pada motor dc (teknik PWM) atau secara manual yaitu mengataur jumlah arus dan tegangan yang diberikan pada motor dc. Pada penelitian ini penulis akan mengendalikan kecepatan putar motor dc dengan mengatur tegangan yang diberikan pada motor dc


(20)

Gambar 2.2 Motor dc

Motor dc tersedia dalam banyak ukuran, namun penggunaannya dibatasi untuk beberapa penggunaan berkecepatan rendah, penggunaan daya rendah hingga sedang seperti peralatan mesin dan rolling mills, sebab sering terjadi masalah dalam perubahan arah arus listrik mekanis pada ukuran yang lebih basar. Juga, motor tersebut dibatasi hanya untuk penggunaan diarea yang bersih dan tidak berbahaya sebab resiko percikan api pada sikatnya.

2.2.1. Prinsip kerja motor dc

Jika arus lewat pada suatu konduktor, timbul medan magnet disekitar konduktor. Arah medan magnet ditentukan oleh arah aliran arus pada konduktor.

Gambar 2.3 medan magnet yang membawa arus mengelilingi konduktor

Aturan Genggaman Tangan kanan dapat dipakai untuk menentukan arah garis fluks disekitar konduktor. Genggam konduktor dengan tangan kanan dengan jempol mengarah ada aliran arus, maka jari-jari anda akan menunjukkan arah garis fluks. Medan magnet hanya terjadi disekitar sebuah konduktor jika ada arus yang mengalir


(21)

pada konduktir tersebut. Pada motor listrik, konduktor berbentuuk U disebut angker dinamo.

Gambar 2.4 medan megnet mengelilingi konduktor diantara dua kutub

Jika konduktor berbentuk U (angker dinamo) diletakkan diantara kutub utara dan selatan yang kuat dalam medan magnet konduktor akan berinteraksi dengan magnet kutub

Gambar 2.5. Reaksi garis fluks

Lingkaran A dan B merupakan ujung konduktor yang dilengkungkan (looped conductor). Arus mengalir masuk melalui ujung A dan keluar melalui ujung B.

Medan konduktor A yang searah jarum jam akan menambah medan pada kutub dan menimbulkan medan yang kuat dibawah konduktor. Konduktor akan berusaha bergerak kearah atas untuk keluar dari medan kuat ini. Medan konduktor B yang berlawanan arah jarum jam akan menambah medan pada kutub dan menimbulkan medan yang kuat diatas konduktor. Konduktor akan berusaha bergerak turun agar keluar dari yang kuar tersebut. Gaya-gaya tersebut akan membuat angker dinamo berputar searah jarum jam.

Mekanisme kerja untuk seluruh jenis motor secara umum: * Arus listrik dalam medan magnet akan memberikan gaya


(22)

* jika kawat yang membawa arus dibengkokkan menjadi sebuah lingkaran/ loop, maka kedua sisi loop, yaitu yaitu sudut kanan medan magnet, akan mendapatkan gaya pada arah yang berlawanan.

* Pasangan gaya menghasilkan tenaga putar/ torque untuk memutar kumparan.

* Motor-motor memiliki beberapa loop pada dinamonya untuk memberikan tenaga putar yang lebih seragam dan medan magnet yang dihasilkan oleh susunan elektromagnetik yang disebut kumparan medan

Pada motor dc, daerah kumparan medan yang dialiri arus listrik akan menghasilkan medan magnet yang melingkupi kumparan jangkar dengan arah tertentu. Konversi dari energi listrik menjadi energi mekanik (motor) maupun sebaliknya berlangsung melalui medan magnet, dengan demikian medan magnet disini selain berfungsi sebagai tempat untuk menyimpan energi sekaligus sebagai tempat berlangsungnya proses perubahan energi, daerah tersebut dapat dilihat pada gambar 2.6 berikut.

Gambar 2.6. Prinsip kerja motor dc

Agar proses perubahan energi mekanik dapat berlangsung secara sempurna, maka tegangan sumber harus dari pada tegangan gerak yang disebabkan reaksi lawan. Dengan memberi arus pada kumparan jangkar yang dilindungi oleh medan maka menimbulkan perputaran motor.


(23)

Dalam memahami sebuah motor, penting dimengerti apa yang dimaksud dengan beban motor. Beban dalam hal ini mengacu kepada keluaran tegangan putar/ torque sesuai dengan kecepatan yang diperlukan. Beban umumnya dapat dikatagorikan dalam tiga kelompok:

 Beban torque konstan

Adalah beban dimana keluaran energinya bervariasi dengan kecepatan operasinya namun torquenya tidak bervariasi. Contoh beban dengan torque konstan adalah corveyors, rotary kilns, dan pompa displacement konstan

 Beban dengan variabel torque

Adalah beban dengan torque bervariasi dengan kecepatan operasinya. Contoh beban dengan variabel torque adalah pompa sentrifugal dan fan (torque bervariasi sebagai kuadrat kecepatan)

 Beban dengan energi konstan

Adalah beban dengan permintaan torque yang berubah dan berbanding terbalik dengan kecepatan. Contoh untuk beban dengan daya konstan adalah peralatan-pralatan mesin industri

Karakteristik yang dimiliki suatu motor DC dapat digambarkan melalui kurva daya dan kurva torsi/kecepatannya, dari kurva tersebut dapat dianalisa batasan-batasan kerja dari motor serta daerah kerja optimum dari motor tersebut.


(24)

Dari grafik terlihat hubungan antara torsi dan kecepatan untuk suatu motor dc tertentu. dari grafik terlihat bahwa torsi berbanding terbalik dengan kecepatan putaran, dengan kata lain terdapat tradeoff

a. Stall torque, menunjukkan titik pada grafik dimana torsi maksimum, tetapi tidak ada putaran pada motor.

antara besar torsi yang dihasilkan motor dengan kecepatan putaran motor. Dua karakteristik penting terlihat dari grafik yaitu:

b. No load speed,,menunjukkan titik pada grafik dimana terjadi kecepatan putaran maksimum, tetapi tidak ada beban pada motor

2.3 Motor Stepper

Motor Stepper adalah motor DC yang gerakannya bertahap (step per step) dan memiliki akurasi yang tinggi tergantung pada spesifikasinya. Setiap motor stepper mampu berputar untuk setiap stepnya dalam satuan sudut (0.75, 0.9, 1.8), makin kecil sudut per step-nya maka gerakan per step-nya motor stepper tersebut makin presisi. Motor stepper banyak digunakan untuk aplikasi-aplikasi yang biasanya cukup menggunakan torsi yang kecil, seperti untuk penggerak piringan disket atau piringan CD. Dalam hal kecepatan, kecepatan motor stepper cukup cepat jika dibandingkan dengan motor DC. Motor stepper merupakan motor DC yang tidak memiliki komutator. Pada umumnya motor stepper hanya mempunyai kumparan pada statornya sedangkan pada bagian rotornya merupakan magnet permanent. Dengan model motor seperti ini maka motor stepper dapat diatur posisinya pada posisi tertentu dan/atau berputar ke arah yang diinginkan, searah jarum jam atau sebaliknya.

Kecepatan motor stepper pada dasarnya ditentukan oleh kecepatan pemberian data pada komutatornya. Semakin cepat data yang diberikan maka motor stepper akan semakin cepat pula berputarnya. Pada kebanyakan motor stepper kecepatannya dapat diatur dalam daerah frekuensi audio dan akan menghasilkan putaran yang cukup cepat.

Untuk mengatur gerakan motor per step-nya dapat dilakukan dengan 2 cara berdasarkan simpangan sudut gerakannya yaitu full step dan half step.


(25)

Tabel 2.1 . Motor Stepper dengan Gerakan Full Step Step S3 S2 S1 S0

1 0 0 0 1 2 0 0 1 0 3 0 1 0 0 4 1 0 0 0

Motor stepper yang umum digunakan mempunyai jangkauan langkah berputar antara 0,9 derajat sampai 30 derajat. Motor-motor tersebut adalah motor stepper dua atau empat fase. Secara teoritis, sebuah motor stepper berukuran kecil dapat digerakkan langsung oleh mikroprosesor atau mikrokontroler. Dalam kenyataannya, arus dan tegangan yang dapat dikeluarkan oleh alat pemroses tadi masih terlalu kecil. Sebagai perbandingan, gerbang-gerbang logika tipe TTL hanya mampu mengeluarkan arus dalam orde mili-ampere dan tegangan antara 2 sampai 5 V. Sementara itu untuk menggerakkan motor langkah dibutuhkan arus yang cukup besar (dalam orde ampere) dengan tegangan berkisar 5-24 V.

Gambar 2.8 Motor stepper

Untuk mengatasi masalah tersebut, diperlukan sebuah piranti tambahan yang dapat memenuhi kebutuhan arus dan tegangan tadi yaitu dengan menambahkan rangkaian penggerak seperti transistor yang dipasang secara Darlington, rangkaian penggerak gabungan atau menggunakan IC-IC yang kompatibel.


(26)

2.4 Sensor optocoupler

Optocoupler adalah suatu piranti yang terdiri dari 2 bagian yaitu transmitter dan receiver, yaitu antara bagian cahaya dengan bagian deteksi sumber cahaya terpisah. Biasanya optocoupler digunakan sebagai saklar elektrik, yang bekerja secara otomatis.

Pada dasarnya Optocoupler adalah suatu komponen penghubung (coupling) yang bekerja berdasarkan picu cahaya optic. Optocoupler terdiri dari dua bagian yaitu: 1. Pada transmitter dibangun dari sebuah LED infra merah. Jika dibandingkan

dengan menggunakan LED biasa, LED infra merah memiliki ketahanan yang lebih baik terhadap sinyal tampak. Cahaya yang dipancarkan oleh LED infra merah tidak terlihat oleh mata telanjang.

2. Pada bagian receiver dibangun dengan dasar komponen Photodiode. Photodiode merupakan suatu transistor yang peka terhadap tenaga cahaya. Suatu sumber cahaya menghasilkan energi panas, begitu pula dengan spektrum infra merah. Karena spekrum inframerah mempunyai efek panas yang lebih besar dari cahaya tampak, maka Photodiode lebih peka untuk menangkap radiasi dari sinar infra merah.

Oleh karena itu Optocoupler dapat dikatakan sebagai gabungan dari LED infra merah dengan fototransistor yang terbungkus menjadi satu chips. Cahaya infra merah termasuk dalam gelombang elektromagnetik yang tidak tampak oleh mata telanjang. Sinar ini tidak tampak oleh mata karena mempunyai panjang gelombang berkas cahaya yang terlalu panjang bagi tanggapan mata manusia. Sinar infra merah mempunyai daerah frekuensi 1 x 1012 Hz sampai dengan 1 x 1014 GHz atau daerah frekuensi dengan panjang gelombang 1µm – 1mm.

LED infra merah ini merupakan komponen elektronika yang memancarkan cahaya infra merah dengan konsumsi daya sangat kecil. Jika diberi bias maju, LED infra merah yang terdapat pada optocoupler akan mengeluarkan panjang gelombang sekitar 0,9 mikrometer.


(27)

Proses terjadinya pancaran cahaya pada LED infra merah dalam optocoupler adalah sebagai berikut. Saat dioda menghantarkan arus, elektron lepas dari ikatannya karena memerlukan tenaga dari catu daya listrik. Setelah elektron lepas, banyak elektron yang bergabung dengan lubang yang ada di sekitarnya (memasuki lubang lain yang kosong). Pada saat masuk lubang yang lain, elektron melepaskan tenaga yang akan diradiasikan dalam bentuk cahaya, sehingga dioda akan menyala atau memancarkan cahaya pada saat dilewati arus. Cahaya infra merah yang terdapat pada optocoupler tidak perlu lensa untuk memfokuskan cahaya karena dalam satu chip mempunyai jarak yang dekat dengan penerimanya. Pada optocoupler yang bertugas sebagai penerima cahaya infra merah adalah fototransistor. Fototransistor merupakan komponen elektronika yang berfungsi sebagai detektor cahaya infra merah. Detektor cahaya ini mengubah efek cahaya menjadi sinyal listrik, oleh sebab itu fototransistor termasuk dalam golongan detektor optik.

Fototransistor memiliki sambungan kolektor–basis yang besar dengan cahaya infra merah, karena cahaya ini dapat membangkitkan pasangan lubang elektron. Dengan diberi bias maju, cahaya yang masuk akan menimbulkan arus pada kolektor.

Fototransistor memiliki bahan utama yaitu germanium atau silikon yang sama dengan bahan pembuat transistor. Tipe fototransistor juga sama dengan transistor pada umumnya yaitu PNP dan NPN. Perbedaan transistor dengan fototransistor hanya terletak pada dindingnya yang memungkinkan cahaya infra merah mengaktifkan daerah basis, sedangkan transistor biasa ditempatkan pada dinding logam yang tertutup.

Ditinjau dari penggunaanya, fisik optocoupler dapat berbentuk bermacam-macam. Bila hanya digunakan untuk mengisolasi level tegangan atau data pada sisi transmitter dan sisi receiver, maka optocoupler ini biasanya dibuat dalam bentuk solid (tidak ada ruang antara LED dan Photodiode). Sehingga sinyal listrik yang ada pada input dan output akan terisolasi. Dengan kata lain optocoupler ini digunakan sebagai optoisolator jenis IC.


(28)

Prinsip kerja dari optocoupler adalah :

* Jika antara Photodiode dan LED terhalang maka Photodiode tersebut akan off sehingga output dari kolektor akan berlogika high.

* Sebaliknya jika antara Photodiode dan LED tidak terhalang maka Photodiode dan LED tidak terhalang maka Photodiode tersebut akan on sehingga output-nya akan berlogika low.

Sebagai piranti elektronika yang berfungsi sebagai pemisah antara rangkaian power dengan rangkaian control. Komponen ini merupakan salah satu jenis komponen yang memanfaatkan sinar sebagai pemicu on/off-nya. Opto berarti optic dan coupler berarti pemicu. Sehingga bisa diartikan bahwa optocoupler merupakan suatu komponen yang bekerja berdasarkan picu cahaya optic opto-coupler termasuk dalam sensor, dimana terdiri dari dua bagian yaitu transmitter dan receiver. Dasar rangkaian dapat ditunjukkan seperti pada gambar dibawah ini:

Gambar 2.9 Optocoupler

Sebagai pemancar atau transmitter dibangun dari sebuah led infra merah untuk mendapatkan ketahanan yang lebih baik daripada menggunakan led biasa. Sensor ini bisa digunakan sebagai isolator dari rangkaian tegangan rendah kerangkaian tegangan tinggi. Selain itu juga bisa dipakai sebagai pendeteksi adanya penghalang antara transmitter dan receiver dengan memberi ruang uji dibagian tengah antara led dengan photo transistor. Penggunaan ini bisa diterapkan untuk mendeteksi putaran motor atau mendeteksi lubang penanda disket pada disk drive computer. Tapi pada alat yang penulis buat optocoupler untuk mendeteksi putaran. Penggunaan dari optocoupler tergantung dari kebutuhannya. Ada berbagai macam bentuk, jenis, dan type. Seperti MOC 3040 atau 3020, 4N25 atau 4N33dan sebagainya.


(29)

Pada umumnya semua jenis optocoupler pada lembar datanya mampu dibebani tegangan sampai 7500 Volt tanpa terjadi kerusakan atau kebocoran. Biasanya dipasaran optocoupler tersedianya dengan type 4NXX atau MOC XXXX dengan X adalah angka part valuenya. Untuk type 4N25 ini mempunyai tegangan isolasi sebesar 2500 Volt dengan kemampuan maksimal led dialiri arus fordward sebesar 80 mA. Namun besarnya arus led yang digunakan berkisar antara 15mA - 30 mA dan untuk menghubungkan-nya dengan tegangan +5 Volt diperlukan tahanan pembatas.

2.5 Mikrokontroler

Mikrokontroler adalah singel chip yang memiliki kemampuan untuk diprogram dan dirancang khusus untuk aplikasi kontrol serta dilengkapi dengan ROM, RAM dan fasilitas I/O pada satu chip. Mikrokontroler merupakan satu hasil dari kemampuan komputasi yang sangat cepat dengan bentuk yang sangat kecil dan harga yang yang murah. Mukrokontroler terus berkembang dengan tujuan untuk memenuhi kebutuhan pasar terhadap alat-alat elektronik dengan perangkat cerdas, cepat sebagai pengontrol dan pemroses data.

2.5.1 Mikrokontroler AT89S52

Mikrokontroler AT89S52 adalah satu anggota dari keluarga MCS-51seri 8052 merupakan pengembangan dari seri 8051, dirancang oleh atmel yang paling banyak digunakan karena dilengkapai dengan internal 8 Kbyte Flash PEROM (Prigrammable and Erasable Read Only Memory), yang memungkinkan memori program untuk dapat diprogram berkali-kali (1000 siklus baca/tulis).


(30)

Gambar 2.10 Blok diagram fungsional AT89S52

Mikrokontroler AT89S52 memiliki spesifikasi sebagai berikut: 1. Read Only Memory (ROM) sejumlah 8 Kbyte

ROM atau Read Only memory merupakan memori penyimpan data yang isinya tidak dapat diubah atau dihapus (hanya dapat dibaca). ROM biasanya diisi dengan program untuk menjalankan mikrokontroler setelah power dinyalakan dan berisi data-data konstanta/ kode yang diperlukan oleh program. Kapasitas memori yang disediakan oleh AT89S52 ini sejumlah 8 Kbyte

2. Random Access Memory (RAM) sejumlah 256 byte

RAM atau Random Access Memory merupakan memori penyimpanan data yang isinya daoat diubah dan dihapus. RAM biasanya berisi data-data variabel dan register. Data yang tersimpan pada RAM bersifat votile (hilang jika catu daya yang terhubung dimatikan/diputuskan).


(31)

3. Empat buah port I/O, yang masing-masing terdiri dari 8 bit

I/O (Input/Output) port merupakan sarana yang dipergunakan oleh mikrokontroler untuk mengakses peralatan-peralatan lain, berupa pin-pin yang dapat berfungsi untuk mengeluarkan data-data digital atau berfungsi untuk mengimput data. Selain itu, dapat digunakan sebagai terminal komunikasi paralel, serta komunikasi serial (pin 10 dan pin 11)

4. Tiga buah 16 bit timer/couter/time

16 bit (2 byte) timer/couter merupakan salah satu register khusus yang berfungsi sebagai pencacah/ penghitung eksekusi program mikrokontroler.

5. Interface Komunikasi Serial

Interface kmunikasi serial merupakan suatu fungsi port yang terdapat dalam mikrokontroler dalam melakukan antarmuka (interface) serial yaitu pada p3.0 dan p3.1

6. Memiliki kemampuan Arithmatic and Logic Unit (ALU)

Arithmatic and Logic Unit (ALU) memiliki kemampuan mengerjakan proses-proses aritmatika (penyumlahan, pengurangan, pengalian, pembagian) dan operasi logika (AND, OR, XOR, NOT) terhadap bilangan bulat 8 atau 16 bit.

Arsitektur hardware mikrokontroler AT89S52 dari perspektif luar atau biasa disebut pin out digambarkan pada gambar dibawah ini:


(32)

Berukut ini penjelasan mengenai fungsi dari tiap-tiap pin (kaki) yang ada pada mikrokontroler AT89S52:

a. Port 0 (Pin 39 – Pin 32)

Merupakan dual-purpose port (port yang memiliki dua kegunaan), pada disain yang minimum (sederhana), port 0 digunakan sebagai port Input/output (I/0). Sedangkan pada desain lebih lanjut pada perancangan dengan memori eksternal digunakan sebagai data dan address (alamat) yang di-multiplex.

b. Port 1 (Pin 1 – Pin 8)

Port 1 berfungsi sebagai I/O biasa, pada kaki ke 6, ke 7 dan ke 8 terdapat Mosi, Miso dan Sck sebagai masukan dari ISP Programmer yang terhubung ke komputer. Tanpa adanya port ini maka mikrokontroler tidak dapat diprogram oleh ISP programer.

c. Port 2 (Pin 21 – Pin 28)

Merupakan dual-purpose port. Pada desain minimum digunakan sebagai port I/O (Input/Output). Sedangkan pada desain lebih lanjut digunakan sebagai high byte dari address (alamat)

d. Port 3 (Pin 10 – Pin 17)

Merupakan dual-porpuse port. Selain sebagai port I/O (Input/Ouput), port 3 juga mempunyai fungsi khusus. Fungsi khusus tersebut diperlihatkan pada tabel 2.1

Tabel 2.2 fungsi khusus port 3 No. Pin Port

pin

Nama Port

Fungsi

10 P3.0 RXD Menerima data untuk port serial 11 P3.1 TXD Mengirim data untuk port paralel 12 P3.2 INT 0 Interrupt 0 eksternal

13 P3.3 INT 1 Interrupt 1 eksternal 14 P3.4 T0 Timer 0 input eksternal


(33)

e. PSEN (Pin 29)

PSEN (Program Store Enable) madalah sinyal kontrol yang mengizinkan untuk mengakses program (code) memori eksternal. Pin ini dihubungkan ke pin OE (output Enable) dari EPROM. Sinyal PSEN akan ‘0’ (low) pada tahap fetch (penjemputan) instrusi. PSEN akan sellau bernilai ‘1’ (high) pada pembacaan program memori internal.

f. ALE (Pin 30)

ALE (Addres Latch Enable) digunakan untuk men-demultiplex address (alamat) data bus. Ketika menggunakan program memori eksternal, port 0 akan berfungsi sebagai address (alamat) dan data bus. Pada setengah paruh pertama memori cycle ALE akan bernilai ‘1’ (high) sehingga akan mengizinkan penulisan address (alamat) pada register eksternal. Pada setenah paruh berikutnya akan bernilai ‘1’ (high) sehingga port 0 dapat digunakan sebagai data bus.

g. EA (Pin 31)

EA (xternal Access) pada kondisi low, pin ini akan berfungsi sebagai EA yaitu mikrokontroler akan menjalankan program ayang ada pada memori eksternal setelah sistem di-reset. Jika kondisi high, pin ini akan berfungsi untuk menjalankan program yang ada pada memori internal.

h. RST (Pin 9)

Jika pin ini diberi input ‘1’ (high) selama minimal 2 cycle, maka sistem akan di-reset (kembali keawal)

i. On-Chip oscillator

15 P3.5 T1 Timer 1 input eksertal

16 P3.6 WR Memori data eksternal write strobe 17 P3.6 RD Memori data eksternal read strobe


(34)

Nilai kristal yang biasa digunakan pada AT89S52 ini aalah 12 MHz. On-chip oscillator pada AT89S52 terdiri dari XTAL1 (pin 19) input untuk clock internal dan XTAL2 (pin 18) output dari osilator.

k. Koneksi Power

AT89S52 beroperasi pada tegangan 5 volt. Pin Vcc terdapat pada pin 40, sedangkan ground (gnd) terdapat pada pin 20.

Instruksi-instruksi mikrokontroler

Instruksi-instruksi yang dimaksud merupakan seperangkat instruksi yang disusun menjadi sebuah program untuk memerintahkan mikrokontroler melakukan sesuatu pekerjaan. Sebuah instruksi selalu berisi kode operasi (op-code), kode pengoperasian inilah yang disebut dengan bahasa mesin yang dapat dimengerti oleh mikrokontroler. Inastruksi-instruksi yang digunakan dalam memogram suatu program yang diisikan AT98S52 adalah instruksi bahasa pemograman assembler.

2.5.2 Instruksi Transfer Data

Instruksi tranfer data terbagi menjadi dua kelas operasi sebagai berikut:

• Tranfer data umum (General Purpose Transfer), yaitu : MOV, PUSH dan POP

• Transfer spesifik akumulator (Accumulator Specific Transfer), yaitu :XCH, XCHD, dan MOVC

Instruksi transfer data adalah instruksi pemindahan/ pertukaran data antara oprand sumber dengan opran tujuan. Operand-nya dapat berupa register, memori atau lokasi suatu memori. Penjelasan instruksi transfer data dapat dijelasan sebagai berikut. Mov : Transfer dari register satu ke register yang laian, antara register

dengan memory

Push : Transfer byte atau dari operan sumber ke suatu lokasi dalam strack yang alamatnya ditunjuk oleh register penunjuk


(35)

Xch : pertukaran data antara operand akumulator dengan operand sumber Xcdh : Pertukaran nibble orde rendah antara RAM internal (lokasinya

ditunjukkan oleh r0 dan r1)

Movc ; Pertukaran data dengan menjumlahkan isi data pointer dengan isi akumulator

2.5.3 Instruksi Aritmatik

Operasi dasar aritmatik seperti penjumlahan, pengurangan, perkalian dan pembagian dimiliki oleh AT89S52 dengan mnemonic : Inc, Add, subb, Dec, Mul dan Div. Penjelasan dari operasi mnemonic tersebut dijelaskan sebagai berikut :

Inc : Menambahkan satu isi sumber operand dan menyiman hasilnya ke operand tersebut

Add : Penjumlahan antara akumulator dengan sumber operand dan hasilnya disimpan di akumulator

Subb : Pengurangan akumulator dengan sumber operand, hasilnya disimpan dalam operand tersebut

Dec : Mengurangi sumber operand dengan 1, dan hasilnya dismpan pada operan tersebut

Mul : Perkalian antara Akumulator dengan Register B

Div : Pembagian antara Akumulator dengan Register B dan hasilnya disimpan dalam Akumulator, sisanya di Register B

2.5.4 Instruksi Logika

Mikrokontroler AT98S52 dapat melakukanoperasi logika bit maupun operasi logika byte. Operasi logika tersebut terbagi atas dua bagian yaitu:

• Operasi logika operan tunggal, yaitu terdiri dari clr, setb, cpl, rl dan rr

• Oprasi logika dua operand seperti : anl, orl dan xlr

Operasi yang dilakukan oleh AT89S52 dengan pembacaan instruksi logika tersebut dijelaskan dibawah ini:


(36)

Cpl : Mengkomplemenkan akumulator Rl : Rotasi akumulator 1 bit kekiri Rr : Rotasi akumulator 1 bit kekanan

Anl : Meng-and kan data bit secara langsung dengan isi akumulator Orl : Meng-or kan data bit secara langsung dengan isi akumulator Xrl : meng-xor kan data bit secara langsung dengan isi akumulator

2.5.5 Instruksi Percabangan

Instruksi percabangan terdiri dari (3) tiga kelas oprasi, yaitu:

• Lompatan tak bersyarat (unconditional Jump) seperti : sjmp, ajmp, ljmp

• Lompatan bersyarat (Conditional Jump) seperti : jb, jnb jz, jnz, jc, jnc, cjne, dan djnz

• Insterupsi seperti: ret dan reti

Penjelasan dari instruksi diatas sebagai berikut :

Sjmp : Lompatan untuk percabangan dengan jankauan masumum 1 Kbyte Ajmp : Lompatan untuk percabangan masimum 2 Kbyte

Lcall : Pemanggilan subroutine yang mempunyai alamat antara 2 Kbyte – 64 Kbyte.

Jb : Percabangan yang akan lompat ke label atau alamat yang dituju jika dalam keadaan bit

Jnb : Percabangan yang akan lompat ke label atau alamat yang dituju jika dalam keadaan tidak bit

Jz : Percabangan akan dilakukan jika akumulator adalah nol Jnz : Percabangan akan dilakukan jika akumulator adalah tidak nol Jc : Percabangan terjadi jika CF (Carry Flag) diset ‘1’

Jne : Percabangan terjadi jika CF (Carry Flag) diset ‘0’

Cjne : Operasi perbandingan Operand pertama dengan operand kedua, jika tidak sama akan dilakukan percabngan

Djnz : Mengurangi nilai operand sumber dengan satu dan percabangan akan dilakukan bila hasilnya tidak nol

Ret : Kembali ke subrutine.


(37)

2.6 Liquid Crystal Display (LCD)

LCD mwerupakan salam satu komponen yang banyak dipilih untuk dipergunakan sebagai tampilan karena kemudahannya dalam mengetur tampilan layar agar lebih menarik. Salah satu contoh LCD yang banyak digunakan yaitu LCD M1632 (LCD 2x16)

DB 0-7 Timing Signal

RS Serial Data

R/W

EN Comon Signal

Gambar 2.12 blok tampilan kristal cair (LCD)

LCD display module M1632 terdiri dari dua bagian, yang pertama merupakan panel LCD sebagai media penampil informasi dalam bentuk karakter dua baris, masing masing baris menampung 16 karakter.

Bagian kedua merupakan sebuah sistem yang dibentuk dengan mikrokontroler yang ditempel dibalik panel LCD, berfungsi mengatir tampilan LCD. Dengan demikian pemakaian LCD M1632 menjadi sederhana, sistem lainya cukup mengirim kode0kode ASCII dari informasi yang ditampilkan.

Spesifikasi LCD M1632, yaitu: a. Tampilan 16 karakter 2 baris

b. RAM data tampilan dan RAM pembangkit dapat dibaca dari unit mikroprosesor c. Beberapa fungsi perintah anatara lain adalah penghapusan tampilan (display

Controller

LCD (16 x 2) Segment


(38)

character blink), penggeseran kursor (cursor shift) dan penggeseran tampilan (display shift)

d. Rangkaian otomatis reset saat daya dinyalakan e. Catu daya tunggal +5 volt

2.8. Transistor

Transistor adalah alat semikonduktor yang dipakai sebagai penguat, sebagai sirkuit pemutus dan penyambung (switching), stabilisasi tegangan, modulasi sinyal atau sebagai fungsi lainnya. Transistor dapat berfungsi semacam kran listrik, dimana berdasarkan arus inputnya (BJT) atau tegangan inputnya (FET), memungkinkan pengaliran listrik yang sangat akurat dari sirkuit sumber listriknya.

Gambar 2.13. Ilustrasi transistor sebagai kran listrik

Pada umumnya, transistor memiliki 3 terminal. Tegangan atau arus yang dipasang di satu terminalnya mengatur arus yang lebih besar yang melalui 2 terminal lainnya. Transistor adalah komponen yang sangat penting dalam dunia elektronik modern. Dalam rangkaian analog, transistor digunakan dalam amplifier (penguat). Rangkaian analog melingkupi pengeras suara, sumber listrik stabil, dan penguat sinyal radio. Dalam rangkaian-rangkaian digital, transistor digunakan sebagai saklar berkecepatan tinggi. Beberapa transistor juga dapat dirangkai sedemikian rupa sehingga berfungsi sebagai logic gate, memori, dan komponen-komponen lainnya.


(39)

2.8.1 Prinsip Kerja Transistor

Dari hukum Kirchhoff diketahui bahwa jumlah arus yang masuk kesatu titik akan sama jumlahnya dengan arus yang keluar. Jika teorema tersebut diaplikasikan pada transistor, maka hukum itu menjelaskan hubungan :

IE = IC + IB

Gambar 2.14 : Arus emitor

Persamanaan tersebut mengatakan arus emiter IE adalah jumlah dari arus kolektor IC dengan arus base IB. Karena arus IB sangat kecil sekali atau disebutkan IB << IC, dapat di nyatakan IE = IC ;

Pada tabel data transistor sering dijumpai spesikikasi adc (alpha dc) yang tidak lain adalah : adc = IC/IE. Defenisinya adalah perbandingan arus kolektor terhadap arus emitor.

Karena besar arus kolektor umumnya hampir sama dengan besar arus emiter maka idealnya besaradc adalah = 1 (satu). Namun umumnya transistor yang ada memilikiadc kurang lebih antara 0.95 sampai 0.99. Sedangkan beta didefenisikan sebagai besar perbandingan antara arus kolektor dengan arus base. b = IC/IB. Dengan kata lain,b adalah parameter yang menunjukkan kemampuan penguatan arus (current


(40)

membantu para perancang rangkaian elektronika dalam merencanakan rangkaiannya.

Misalnya jika suatu transistor diketahui besar b=250 dan diinginkan arus kolektor sebesar 10 mA, maka berapakah arus bias base yang diperlukan. Tentu jawabannya sangat mudah yaitu :

IB = IC/b = 10mA/250 = 40 uA

Arus yang terjadi pada kolektor transistor yang memiliki b = 200 jika diberi arus bias base sebesar 0.1mA adalah :

IC = b IB = 200 x 0.1mA = 20 mA

Dari rumusan ini lebih terlihat defenisi penguatan arus transistor, yaitu sekali lagi, arus base yang kecil menjadi arus kolektor yang lebih besar.

2.8.2. Common Emitter (CE)

Rangkaian CE adalah rangkain yang paling sering digunakan untuk berbagai aplikasi yang mengunakan transistor. Dinamakan rangkaian CE, sebab titik ground atau titik tegangan 0 volt dihubungkan pada titik emiter.

Gambar 2.15 : Rangkaian CE

Ada beberapa notasi yang sering digunakan untuk mununjukkan besar tegangan pada suatu titik maupun antar titik. Notasi dengan 1 subscript adalah untuk menunjukkan


(41)

besar tegangan pada satu titik, misalnya VC = tegangan kolektor, VB = tegangan base dan VE = tegangan emiter.

Ada juga notasi dengan 2 subscript yang dipakai untuk menunjukkan besar tegangan antar 2 titik, yang disebut juga dengan tegangan jepit. Diantaranya adalah : VCE = tegangan jepit kolektor- emitor

VBE = tegangan jepit base - emitor VCB = tegangan jepit kolektor - base

Notasi seperti VBB, VCC, VEE berturut-turut adalah besar sumber tegangan yang masuk ke titik base, kolektor dan emitor.

2.8.3 Kurva Base

Hubungan antara IB dan VBE tentu saja akan berupa kurva dioda. Karena memang telah diketahui bahwa junction base-emitor tidak lain adalah sebuah dioda. Jika hukum Ohm diterapkan pada loop base diketahui adalah :

IB = (VBB - VBE) / RB

VBE adalah tegangan jepit dioda junction base-emitor. Arus hanya akan mengalir jika tegangan antara base-emitor lebih besar dari VBE. Sehingga arus IB mulai aktif mengalir pada saat nilai VBE tertentu.


(42)

Besar VBE umumnya tercantum di dalam databook. Tetapi untuk penyerdehanaan umumnya diketahui VBE = 0.7 volt untuk transistor silikon dan VBE = 0.3 volt untuk transistor germanium. Nilai ideal VBE = 0 volt.

2.8.4. Kurva Kolektor

Satu hal lain yang menarik adalah bagaimana hubungan antara arus base IB, arus kolektor IC dan tegangan kolektor-emiter VCE. Dengan mengunakan rangkaian-01, tegangan VBB dan VCC dapat diatur untuk memperoleh plot garis-garis kurva kolektor. Pada gambar berikut telah diplot beberapa kurva kolektor arus IC terhadap VCE dimana arus IB dibuat konstan.

Gambar 2.17. Kurva kolektor

Dari kurva ini terlihat ada beberapa region yang menunjukkan daerah kerja transistor. Pertama adalah daerah saturasi, lalu daerah cut-off, kemudian daerah aktif dan seterusnya daerah breakdown.

2.8.5 Daerah Aktif

Daerah kerja transistor yang normal adalah pada daerah aktif, dimana arus IC konstans terhadap berapapun nilai VCE. Dari kurva ini diperlihatkan bahwa arus IC


(43)

hanya tergantung dari besar arus IB. Daerah kerja ini biasa juga disebut daerah linear (linear region). Jika hukum Kirchhoff mengenai tegangan dan arus diterapkan pada loop kolektor (rangkaian CE), maka dapat diperoleh hubungan :

VCE = VCC - ICRC Dapat dihitung dissipasi daya transistor adalah :

PD = VCE.IC

Rumus ini mengatakan jumlah dissipasi daya transistor adalah tegangan kolektor-emitor dikali jumlah arus yang melewatinya. Dissipasi daya ini berupa panas yang menyebabkan naiknya temperatur transistor. Umumnya untuk transistor power sangat perlu untuk mengetahui spesifikasi PDmax. Spesifikasi ini menunjukkan temperatur kerja maksimum yang diperbolehkan agar transistor masih bekerja normal. Sebab jika transistor bekerja melebihi kapasitas daya PDmax, maka transistor dapat rusak atau terbakar.

2.8.6 Daerah Saturasi dan Daerah Cut-Off

Daerah saturasi adalah mulai dari VCE = 0 volt sampai kira-kira 0.7 volt (transistor silikon), yaitu akibat dari efek dioda kolektor-base yang mana tegangan VCE belum mencukupi untuk dapat menyebabkan aliran elektron.

Jika kemudian tegangan VCC dinaikkan perlahan-lahan, sampai tegangan VCE tertentu tiba-tiba arus IC mulai konstan. Pada saat perubahan ini, daerah kerja transistor berada pada daerah cut-off yaitu dari keadaan saturasi (OFF) lalu menjadi aktif (ON). Perubahan ini dipakai pada system digital yang hanya mengenal angka biner 1 dan 0 yang tidak lain dapat direpresentasikan oleh status transistor OFF dan


(44)

Gambar 2.18. Rangkaian driver LED

Misalkan pada rangkaian driver LED di atas, transistor yang digunakan adalah transistor dengan b = 50. Penyalaan LED diatur oleh sebuah gerbang logika (logic gate) dengan arus output high = 400 uA dan diketahui tegangan forward LED, VLED = 2.4 volt. Dan seharusnya resistansi RL yang dipakai.

IC = bIB = 50 x 400 uA = 20 mA

Arus sebesar ini cukup untuk menyalakan LED pada saat transistor cut-off. Tegangan VCE pada saat cut-off idealnya = 0, dan aproksimasi ini sudah cukup untuk rangkaian ini.

RL = (VCC - VLED - VCE) / IC = (5 - 2.4 - 0)V / 20 mA = 2.6V / 20 mA


(45)

BAB 3

PERANCANGAN DAN KERJA ALAT 3.1Diagram Blok

Alat pengontrol kecepatan putar motor yang dirancang pada penelitian ini, berfungsi untuk mempertahankan kecepatan putar motor sesuai dengan kecepatan yang diinginkan, walaupun motor tersebut mendapatkan gangguan dari luar berupa pembebanan yang berubah. Secara garis besar alat pengontrol kecepatan putar ini terdiri dari sembilan blok utama. Diagram blok keseluruhan dapat dilihat dari gambar berikut:

MIKROKONTROLER AT89S52

KEYPAD SENSOR

OPTOCOUPLER MOTOR DC

DRIVER MOTOR STEPPER

MOTOR STEPPER HAMBATAN VARIABEL

LCD PENGKONDISI SINYAL

Gambar 3.1. Diagram blok alat pengontrol kecepatan putar motor

Untuk menghitung kecepatan putar motor dc digunakan sensor optocoupler, yaitu dengan menggunakan metode piringan celah. Output sensor dirancang supaya


(46)

Rangkaian pengkondisi sinyal berguna supaya sinyal tersebut dapat dibaca dan diproses dengan baik oleh mikrokontroler.

Disisi lain, disini juga digunakan keypad sebagai inputan data kecepatan putar yang diinginkan. Mikrokontroler akan menyimpan data dari inputan keypad sebagai kecepatan referensi dan dibandingkan dengan kecepatan dari sensor, selanjutnya kecepatan dari sensor ini kita sebut sebagai kecepatan aktual. Setelah itu mikrokontroler mengambil tindakan berupa menggerakkan motor stepper. Yang mana motor stepper ini sendiri berhubungan langsung dengan hambatan variabel yang terdapat pada PSA. Apabila nilai kecepatan putar referensi lebih besar dari pada nilai kecepatan putar yang didapat dari sensor, atau dengan kata lain perlu diadakan penambahan kecepatan motor dc, maka motor stepper akan diputar searah jarum jam, artinya dilakukan penambahan tegangan pada motor dc. Kemudian sensor akan membaca kecepatan putar motor dc lagi. Apabila kecepatannya masih kurang, maka motor stepper diputar searah jarum jam. Begitu seterusnya sampai didapatkan kecepatan motor dc yang sesuai dengan kecepatan referensi.

Namun apabila didapatkan kecepatan motor dc yang dibaca sensor lebih besar dari pada kecepatan referensi, maka mikrokontroler akan memutar motor stepper berlawanan arah jarum jam, artinya sekarang dilakukan pengurangan tegangan untuk motor dc. Dengan begitu sistem ini tetap mengupayakan agar kecepatan putar motor dc yang sebenarnya (kecepatan aktual) sama atau mendekati kecepatan yang diinginkan (kecepatan referensi).

Driver motor stepper digunakan sebagai antara muka antara mikrokontroler dengan motor stepper. Karena tegangan mikrokontroler yaitu tegangan TTL 5 volt tidak sesuai dengan tegangan kerja motor stepper yang digunakan pada alat ini. Driver motor stepper ini menggunakan IC ULN2803. Apabila tidak ada data yang inputkan dari keypad, maka sistem tetap bisa berjalan dengan menggunakan kecepatan referensi yang terakhir kali diinputkan. Nilai dari kecepatan referensi dan kecepatan aktual akan ditampilkan LCD 2x16. Nilai ini akan diperbaharui setiap 1 detik. Dengan kata lain setiap perubahan kecepatan dalam satu detik dapat dipantau melalui display.


(47)

3.1.1 Flowchart

START

TOMBOL * DITEKAN ?

Treff = Treff SEBELUMNYA

Baca Kecepatan aktual dari sensor

Motor stepper diputar searah jarum jam PERBAHARUI TAMPILAN LCD Kec Aktual < Kec Refferensi Kec Aktual > Kec Refferensi YA YA YA TIDAK TIDAK TIDAK

Baca Key 1 TOMBOL #

DITEKAN ?

Kec reff = Key 1 Perbaharui

display

Baca Key 2 TOMBOL #

DITEKAN ?

Kec reff = Kec Ref*10 +

kay 2 Perbaharui

display

Baca Key 3 TOMBOL #

DITEKAN ?

Kec reff = Kec Ref*10 +

kay 3 Perbaharui display INISIALISASI PROGRAM Motor stepper diputar berlawanan arah jarum jam Terjadi penambahan Tegangan Motor Dc

Terjadi Pengurangan Tegangan Motor Dc

YA YA YA TIDAK TIDAK TIDAK


(48)

3.2 Sensor Optocoupler

Sensor yang digunakan untuk menghitung kecepatan putar motor dc pada penelitian ini adalah sensor optocoupler. Sensor ini merupakan paduan LED Inframerah (transmitter) dan fototransistor (receiver). Sensor ini bekerja dengan menggunakan metode piringan celah. Keluaran dari sensor sudah berupa sinyal digital.

Gambar 3.3 rancangan sensor optocoupler pada motor dc dengan menggunakan metode piringan celah

Saat sinar dari LED inframerah melawati celah pada piringan, maka sinar tersebut diterima olah fototransistor, foto transistror akan saturasi. Dan apabila sinar dari Led inframerah tidak mengenai celah, tidak ada sinar yang diterima oleh fototransistor dan selanjutnya fototransoistor tersebut cut-off. Ketika piringan celah diputar, maka fototransistor akan mengelurkan pulsa-pulsa high dan low dengan frekuensi yang sesuai dengan kecepatan putar piringan celah tersebut.


(49)

Vcc = 5 V

optocoupler

R1 R2

R4

R3

74LS14 Vout

2SC945

180 Ω 3K3 Ω

4K7 Ω

12 Ω

Vcc = 5 V

Gambar 3.4 Rangkaian pengkondisi sinyal optocoupler

Pulsa-pulsa yang berasal dari optocoupler selanjutnya akan dilewatkan pada rangkaian pengkondisi sinyal, supaya sinyal yang dihasilkan lebih presisi dan dapat diteruskan ke mikrokontroler. Rangkaian pengkondisi sinyal ini sendiri terdiri dari transistor dan IC7414. Rangkaian penguat ini lebih tepatnya digunakan untuk mempertegas sinyal digital yang diberikan oleh sensor optocoupler.

3.3. Rangkaian Mikrokontroler AT98S52

Rangkaian skematik sistem minimum mikrokontroler AT89S52 dapat dilihat pada gambar dibawah ini:


(50)

Pada rangkaian. pin 31 External Acces Enable (EA) diset high (H). Ini dilakukan karena mikrokontroler AT89S52 tidak menggunakan memori eksternal. Pin 18 dan 19 dihubungkan ke XTAL 12 MHz dan kapasitor 30 pF. XTAL ini akan mempengaruhi kecepatan mikrokontroler AT89S52 dalam mengeksekusi setiap program. Pin merupakan masukan reset (aktif high). Pulsa transmisi dari rendah ke tinggi akan mereset mikrokontroler ini. Pin 32 sampai 39 dalah port 0 yang merupakan saluran bus I/O 8 bit open kolektor juga dapat digunakan sebagai multipleks bus alamat rendah dan bus data selama adanya akses kememori program eksternal. Pada Port 0 ini masing-masing pin akan dihubungkan dengan resistor array 4k7 Ohm. Resistor ini berfungsi sebagai Volt-up (penaik tegangan) agar output dari mikrokontroler dapat mentrigger transistor. Pin 1 sampai 8 dalah port 1. Pin 21 sampai 28 adalah port 2. Pin 10 sampai 17 adalah Port 3. Pin 20 merupakan ground yang dihubungkan dengan ground pada power supplay. Pin 40 merupakan sumber tegangan positif dihubungkan dengan +5 volt dari power supplay.

Untuk mendownload file heksadesimal ke mikrokontroler, Mosi, Miso, Sck, Reset, Vcc dan Gnd dari kakai mikrokontroler dihubungkan ke RJ45, RJ45 sebagai konektor yang akan duhubungkan ke ISP Programer, dari ISP Programer inilah dihubungkan ke komputer melalui port paralel DB25

Kaki Miso, Mosi, Sck, Reset, Vcc dan Gnd pada mikrokontroler terletak pada kaki 6, 7, 8, 9, 40, dan 20. Apabila terjadi keterbalikan pemasangan jalur ke ISP Programer, maka pemograman mikrokontroler tidak dapat dilakukan dan mikrokontroler kikatakan tidak merespon.

3.4 Display LCD Character 2 x16

Display LCD 2x16 berfungsi sebagai penampil nilai kecepatan referensi dan kecepatan aktual yang dikirim dari mikrokontroler. LCD yang digunakan pada alat ini mempunyai lebar display 2 baris 16 kolom atau biasa disebut sebagai LCD Character 2x16, dengan 16 pin konektor, yang didefinisikan sebagai berikut:


(51)

Gambar 3.6. LCD 2 x 16

Tabel 3.1 Fungsi pinLCD character 2x16

PIN Nama fungsi

1 VSS Ground voltage 2 VCC +5V

3 VEE Contrast voltage 4 RS

Register Select

0 = Instruction Register 1 = Data Register 5 R/W

Read/ Write, to choose write or read mode

0 = write mode 1 = read mode

6 E

Enable

0 = start to lacht data to LCD character

1= disable 7 DB0 LSB 8 DB1 - 9 DB2 - 10 DB3 - 11 DB4 - 12 DB5 - 13 DB6 - 14 DB7 MSB

15 BPL Back Plane Light 16 GND Ground voltage


(52)

LCD secara berturutan membaca memory ini untuk menampilkan teks ke modul LCD itu sendiri.

Gambar 3.7 Peta memory LCD character 2x16

Pada peta memori diatas, daerah yang berwarna biru ( 00 s/d 0F dan 40 s/d 4F) adalah display yang tampak. jumlahnya sebanyak 16 karakter per baris dengan dua baris. Angka pada setiap kotak adalah alamat memori yang bersesuaian dengan posisi dari layar. Dengan demikian dapat dilihat karakter pertama yang berada pada posisi baris pertama menempati alamat 00h. dan karakter kedua yang berada pada posisi baris kedua menempati alamat 40h

Agar dapat menampilkan karakter pada display maka posisi kursor harus terlebih dahulu diset. Instruksi Set Posisi Kursor adalah 80h. dengan demikian untuk menampilkan karakter, nilai yang terdapat pada memory harus ditambahkan dengan 80h.

Sebagai contoh, jika kita ingin menampilkan huruf “B” pada baris kedua pada posisi kolom kesepuluh.maka sesuai dengan peta memory, posisi karakter pada kolom 10 dari baris kedua mempunyai alamat 4Ah, sehingga sebelum kita menampilkan huruf “B” pada LCD, kita harus mengirim instruksi set posisi kursor, dan perintah untuk instruksi ini adalah 80h ditambah dengan alamat 80h + 4Ah =0Cah. Sehingga dengan mengirim perintah 0Cah ke LCD, akan menempatkan kursor pada baris kedua dan kolom ke 11.

3.5. Keypad

Keypad yang digunakan disini adalah sebuah keypad matrix 4 x 3 dengan susunan empat baris dan tiga kolom. Seperti terlihat dalam gambar 3.8, apabila saklar ‘1’ ditekan, maka baris 1 dan kolom 1 langsung terhubung ke ground. Apabila saklar ‘2’ ditekan, maka baris 1 dan kolom 2 langsung terhubung ke ground dan seterusnya.


(53)

R1 R2 R3

K1 K2 K3

R4

1 2 3

4 5 6

7 8 9

* 0 #

Gambar 3.8 Konstruksi Keypad 4 x 3

3.6Motor Stepper

Motor stepper yang digunakan pada alat ini adalah motor stepper unipolar yang memiliki 4 kumparan, setiap step-nya dapat berputar sebesar 1,8 derajad. Motor stepper ini dihubungkan langsung dengan hambatan variabel (potensio) yang terdapat pada PSA yang digunakan sebagai supplay tegangan untuk motor dc, jadi setiap perputaran motor stepper berpengaruh pada besarnya tegangan yang diberikan oleh PSA kepada motor dc.

Motor steper pada alat yang dirancang ini akan berputar secara otomatis apabila nilai kecepatan referensi tidak sesuai dengan nilai kecepatan aktual yang didapat melaui sensor. Besarnya sudut perputaran motor stepper bergantung ada selisih kecepatan aktual dan referensi yang terdeteksi pada alat yang dirancang. Karena motor stepper berhubungan langsung secara fisik dengan PSA variabel, maka perputaran motor stepper menyebabkan tegangan yang diberikan oleh PSA kepada motor dc berubah. Dengan cara inilah kecepatan motor dc dapat dikendalikan.

D

B

C

A


(54)

Table 3.2. data untuk menggerakkan motor stepper biner heksadesimal

00010001 11 00100010 22 01000100 44 10001000 88

Dari driver motor stepper

Gambar 3.10. motor stepper unipolar

Pergerakan motor stepper dikendalikan oleh mikrokontroler, logika-logika yang diberikan oleh mikrokontroler memiliki tegangan sebesar 5 volt dan arus yang cukup kecil, sedangkan motor stepper yang digunakan untuk alat ini memerlukan arus 500mA dan tegangan 12 volt. Karena itu diperlukan suatu rangkaian penyangga antara motor stepper dan mikronkontroler

D C

B

A Dari Mikrokontroler


(55)

Output dari Driver motor stepper adalah 12 volt. Berfungsinya sebagai perantara antara mikrokontroler dan motor stepper . Dengan kata lain mikrokontroler hanya memberikan logika untuk menggerakkan motor sepper, sedangkan arus dan tegangan yang digunakan untuk menggerakkan motor stepper diambil dari rangkaian penyangga ini. Pada pada penelitian ini motor stepper dihubungkan dengan hambatan geser pada PSA melalui gir. Gir ini dirancang motor steper adalah 1 : 3, yaitu diamater gir pada motor tiga kali lebih kecil daripada diameter gir pada hambatan pariabel.

potensio

stepper Gir potensio

Gir stepper


(56)

BAB 4

HASIL DAN PEMBAHASAN 4.1 Pengujian Rangkaian Mikrokontroler

Pengujian rangkaian Mikrokontroler dapat dilakukan dengan cara menghubungkan rangkaian sistem minimum dengan sumber tegangan 5 V. Dimana pin 40 mikrokontroler dihubungkan dengan tegangan 5 volt dan pin 20 dihubungkan dengan ground. Setelah itu dilakukan pengukuran tegangan antara pin 40 dan pin 20, didapat tegangan sebesar 4,98 Volt, artinya sumber tegangan telah sampai pada mikrokonroler.

74245

Gambar 4.1 Rangkaian pengujian mikrokontroler

Langkah selanjutnya adalah menghubungkan pin 17 (P3.7) dengan IC buffer 74LS24 dan keluarannya dihubungkan dengan sebuah LED yang dipasang aktif High sebagai indikator. IC 74LS24 berfungsi sebagai Buffer (penyangga) dimana logika


(57)

yang diberikan mikrokontroler akan dikuatkan oleh IC tersebut. Dengan demikian apabila Mikrokontroler memberikan logika 1 maka LED akan Aktif dan apabila diberi logika 0 maka LED akan padam. Dengan adanya IC 74LS24 ini maka arus yang digunakan untuk menghidupkan LED tidak diambil dari mikrokontroler melainkan, mikrokontroler hanya memberikan logika saja.

Berikut ini adalah program yang diisikan kedalam mikrokontroler AT89S52:

Mov r1,#0 Kedip:

Setb p3.7 Acall delay Clr p3.7 Acall delay Sjmp Kedip delay:

mov r0,#255 djnz r0,$ djnz r1,delay ret

end

Program diatas dibuat untuk menghidupkan LED pada port 3.7 dan kemudian mematikannya. Perintah Setb akan menjadikan p3.7 berlogika high yang menyebabkan LED menyala. Perintah clr p3.7 membuat p3.1 kembali berlogika low dan menyebabkan LED padam. Adapun perintah acall delay digunakan untuk memanggil routin delay yang berfungsi untuk menunda waktu selama beberapa saat supaya pergantian menyala dan pedamnya LED dapat terlihat oleh mata.

Untuk melakukan penundaan waktu, maka dibuatlah perintah acall delay. Dengan adanya perintah acall maka program untuk sementara akan beralih ke label yang dialamatkan yaitu delay sampai ditemukannya perintah ret. Lamanya penundaaan waktu yang dikerjaakan oleh delay dapat dihitung dengan cara berikut: Mikrokontroler yang digunakan dalam penelitian ini memakai kistal 12 MHz, dalam mengeksekusi satu siklus perintah mikrontroler membutuhkan 12 clock, berarti dalam suatu siklus perintah mikrokontroler membutuhkan waktu sebesar:

12 MHz / 12 clock = 1 µs


(58)

dibaris ini). Dari awal r0 bernilai 255, maka program djnz r0,$ dijalankan sebanyak 255 kali. Berikutnya “djnz r1, delay” (kurangi isi r1 dengan satu dan lompat ke label delay bila hasilnya tidak nol). Dari awal r1 sudah diisikan nilai 0, maka ketika pertama kali dikurang 1 hasilnya akan 256, itu berarti untuk melewati baris program ini, program akan memutar lagi dari label delay sebanyak 256 kali hingga akhirnya r1 kembali bernilai 0. Routin delay akan dianggap selesai setelah ditemukan perintah ret, maka total waktu untuk mengeksekusi routrin delay adalah:

Tabel 4.1 waktu pengeksekuian routin delay

perintah siklus pengulangan Waktu (µs)

Mov r0,#255 2 256 510

Djnz r0,$ 2 255 x 256 130. 560

Djnz r1,delay 2 256 510

ret 1 1 1

total 131.581

Jadi untuk mengerjakan satu routin delay membutuhkan waktu selama 131.581 µs. Dengan demikian ditambah dengan perintah acall delay selama 2 µs maka LED akan hidup dan mati selama 131.583 µs atau sekitar 0,13 detik secara bergantian.Perintah sjmp kedip akan membuat program kembali mengulang dari label kedip, sehingga program ini berjalas secara terus-menerus.

Saat program ini dieksekusi maka terlihat pada port3.7 LED berkedip terus-menerus. Dengan berjalannya program ini pada mikrokontroler, maka mikrokontroler telah dianggap bagus dan dapat digunakan pada penelitian selanjutnya


(59)

4.2 Interfacing LCD 2 x16

LCD dot matriks 2 x 16 karekater dapat dihubungkan langsung dengan mikrokontroler AT89S52, disini fungsi LCD adalah sebagai tampilah hasil pengukuran dan diberi beberapa keterangan. Pada penelitian ini LCD dihubungkan ke mikrokontroler melalui Port 0 yang berfungsi bus data. Adapaun data yang dikirimkan oleh mikrokontroler merupakan kode ASCII data dalam bentuk bilangan biner, dimana data tersebut dapat diterjemahkan oleh LCD ke bentuk karakter.

Pengiriman data yang dari mikrokontroler diatur oleh pin EN, RS dan RW, Jalur EN dinamakan Enable. Jalur ini digunakan untuk memberi tahu LCD bahwa ada data yang sedang dikirimkan. Untuk mengirim data ke LCD, maka melalui program EN harus dibuat berlogika “low” dan set (high) pada dua jalur kontrol yang lain (RS dan RW). Jalur RW adalah jalur kontrol Read/write. Ketika RW berlogika low (0), maka informasi pada bus akan dituliskan pada LCD. Ketika RW berlogika high (1), maka program melakukan pembacaan memori dari LCD. Dalam penelitian ini umumnya pin RW selalu diberikan logika low(0)

Dengan mengikuti keterangan diatas kita dapat membuat program untuk menampilkan karakter pada LCD. Program yang diisikan ke mikrokontroler untuk menampilkan karakter pada LCD adalah sebagai berikut :

Rs equ p2.7

Rw equ p2.6

En equ p2.5

LCD: mov A,#038H Acall scan Acall penampil Acall scan Mov a,#’F’ Acall kirim Mov a,#’I’ Acall kirim Mov a,#’S’ Acall kirim Mov a,#’I’ Acall kirim Mov a,#’K’ Acall kirim Mov a,#’A’ Acall kirim Sjmp LCD penampil: mov A,#00CH


(60)

mov A,#080H acall scan

ret

scan: mov P0,A clr rs

clr rw setb en clr en acall delay ret

kirim: mov P0,A setb rs clr rw setb en clr en acall delay ret

end

Program diatas akan menampilkan kata “FISIKA” di baris pertama dimulai dari kolom pertama pada LCD 2 x 16

Gambar 4.2. Rangkaian pengujian LCD

Pada penelitian ini, saat seluruh rangkaian diaktifkan, maka pada LCD akan tampil “Kec.Act:” spasi nilai kecepatan yang dibaca oleh sensor dalam tiga digit, spasi “rpm” pada baris pertama. Sedangkan pada baris kedua akan tampil “Kec.Reff:” spasi nilai kecepatan referensi yang diinputkan melalui keypad dalam tiga digit, spasi “rpm”. Tulisan pada baris pertama dan kedua tampil secara bersamaan dan diperbaharui setiap satu detik.


(61)

4.3 Pengujian Motor Stepper

Motor stepper yang digunakan dalam penelitian ini dalan motor stepper unipolar dengan 4 jalur data dan satu jalur common. Stepper ini bekerja dengan baik pada arus 500 mA dan tegangan 12 V. ULN2803 digunakan sebagai perantara antara mikrokontroler dengan motor stepper. Motor sepper dapat digerakkan dengan cara memberikan pulsa-pulsa pada datanya sebagai berikut:

D

B

C

A

Gambar 4.3 pulsa yang diberikan untuk menggerakkan motor stepper

Dengan mengikuti keterangan diatas kita depat membuat program dari mikrokontroler untuk menggerakkan motor stepper:

Mov a,#11h Mov r1,#0 Mov r3,#50 Putar:

Mov P2,a Rl a

Acall delay Djnz r3,putar delay:

mov r0,#255 djnz r0,$ djnz r1,delay ret

End

Program ini akan menggerakkan stepper sebesar 90 derajat searah jarum jam. Dimana motor stepper dihubungkan melalui port2, dan program port2 diisikan dengan akumulator yang secara bertahap nilainya di geser kearah kiri. Perintah “Djnz r3, putar“ digunakan untuk membatasi jumlah step pergeseran motor stepper. Dalam hal ini dibatasi sebanyak 50 kali. Artinya pada program ini motor stepper diputar sebanyak 50 step. Dalam satu step motor stepper ini dapat berputar sebesar 1,8 derajat.


(62)

MOTOR STEPPER

Gambar 4.4. Rangkaian pengujian Motor Stepper

Kecepatan putaran motor stepper pada program ditentukan oleh delay, semakin cepat delay maka perputarannya semakin cepat pula. Karena pada program delay yang dipakai adalah 0,13 detik, maka lamanya waktu yang dibutuhkan untuk memutar stepper sebesar 90 derajat adalah 50 x 0,13 detik = 6,5 detik.

Pada penelitian ini motor stepper digunakan untuk memutar potensio PSA, potensio dan motor stepper dihubungkan melalui gir. Perbandingan keliling gir motor stepper dan gir potensio dibuat 1 : 3, kedua tepi gir ini dibuat bersinggungan, maka perbandingan perputaran sudut untuk motor stpper dengan potensio adalah 3 : 1. Artinya untuk 3 derajad perputaran stepper mampu memutar 1 derajat potensio PSA.

4.4 Pengujian Keypad

Keypad yang digunakan pada penelitian ini merupakan keypad matriks 4 x 3, keypad ini dapat dihubungkan langsung pada port mikrokontroler. Dimana port yang dipakai untuk pengujian keypad pada penelitian ini adalah port1.


(63)

R 1 R 2 R 3 K 1 K 2 K 3 R 4

1 2 3

4 5 6

7 8 9

* 0 #

P1.7 P1.6 P1.5 P1.3 P1.2 P1.1 P1.4

Gambar 4.5 Keypad matriks 4 x 3

Selain dihubungkan dengan keypad, setiap pin pada port1 juga dihubungkan dengan LED untuk mengetahui keadaan port1 saat dilakukan pengujian keypad.

Keypad matriks ini bekerja berdasarkan sistem scaning di setiap kolomnya. Setiap penekanan pada salah satu keypad akan membuat sepasang pin pada port1 terhubung, karena setiap tombol memiliki lokasi yang unik, maka mikrokontroler akan mendeteksi tombol yang ditekan. Adapun program yang diisikan pada mikrokontroler untuk pengujian keypad adalah:

Keypad:

Mov p1,#11011111b Sjmp keypad

End

Program ini digunakan untuk pengujian keypad pada kolom pertama, apabila program ini telah diisikan pada mikrokontroler, maka setiap adanya penekanan keypad pada kolom pertama akan memberikan respon pada port1. Respon dari keypad yang terhadap port1 satu dapat dilihat dari tabel 4.2

Tabel 4.2 Hasil pengamatan pada pengujian keypad No Tombol yang ditekan Data pada port1

1 Tidak ada 11011111

2 Tombol 1 11011101

3 Tombol 4 11011011

4 Tombol 7 11010111


(64)

Untuk pengujian keypad pada kolom kedua maka data yang diberikan pada port1 adalah 10111111b dan untuk pengujian keypad pada kolom ketiga data yang diberikan pada port1 adalah 01111111b. Dengan adanya respon yang terlihat pada port1 melalui LED disetiap penekanan keypad, maka keypad tersebut dianggap berfungsi dapat digunakan dalam penelitian ini

4.5. Hasil Pengukuran Alat

4.5.1. Pengukuran Kecepatan Putar (rpm)

Untuk menguji ketelitian alat ini dalam pengukuran kecepatan putar motor, maka dilakukanlah pengujian hasil pengukuran kecepatan putar motor pada alat. Nilai dari kecepatan putar motor yang terukur oleh alat dibandingkan dengan nilai kecepatan putar yang terukur oleh multimater, dapat dilihat dari tabel 4.3

Adapun nilai kecepatan putar dari multimeter dapat diperoleh dengan cara yaitu: Tegangan keluaran (Vout) dari sensor optocoupler yang merupakan sensor kecepatan putar motor dihubungkan langsung dengan multimeter digital, sementara multimeter digital diatur fungsinya sebagai Hertz meter, sehingga pada saat motor berputar sensor optocoupler akna menghasilkan pulsa-pulsa yang frekuensinya langsung terbaca oleh multimeter. Nilai frekuensi dlam satuan Hz inilah yang merupakan nilai kecepatan putar motor dalam satuan rpm. Adapun penjelasannya adalah sebagai berikut:

Tabel 4.3 Perbandingan antara kec. motor yang terukur alat dengan kec. Motor yang terukur multimeter

no kec motor

pada multimeter(rpm)

Kec motor Pada LCD (rpm)

1 0 0

2 5 5

3 10 10

4 15 15

5 20 20

6 25 24

7 30 30

8 35 35


(65)

10 45 45

11 50 50

12 55 54

13 60 61

14 65 66

15 70 69

16 75 74

17 80 77

18 85 85

19 90 88

20 95 94

21 100 100

22 105 104

23 110 109

24 115 114

25 120 119

26 125 124

27 130 128

28 135 134

29 140 140

30 145 144

31 150 148

32 155 154

33 160 160

34 165 165

35 170 169

36 175 173

37 180 179

38 185 184

39 190 188

40 195 194

41 200 197

Pulsa yang dihasilkan oleh sensor optocoupler disebabkan karena celah pada piringan mengenai sensor tersebut. Dalam penelitian ini piringan celah yang digunakan memiliki 60 celah. Jika piringan mengalami satu putaran penuh, maka terdapat 60 celah yang telah melewati sensor optocoupler, dengan demikian sensor akan mengirimkan pulsa sebanyak 60 pulsa. Karena sensor optocopler telah dihubungkan pada multimeter, maka frekuensi pulsa tersebut akan terbaca oleh multimeter. Jadi kecepatan motor dalam satuan rps adalah:


(66)

Karena 1 rps = 60 rpm, maka;

Kec.motor(rpm) = 60 x Frekuensi pulsa yang terbaca multimeter

Kec.motor

/ 60

(rpm) = Frekuensi pulsa yang terbaca multimeter

Dari tabel 4.3 dapat dibuat hubungan antara kecepatan putar motor pada LCD dengan kecepatan putar motor pada multimeter seperti pada grafik 4.1

Grafik 4.1. Hubungan Kec. Putar motor pada LCD dengan kecepatan putar motor pada multimeter

4.6. Analisa Ketelitian alat

Untuk mengetahui tingkat ketelitian dari alat yang dirancang, maka dilakukanlah perbandingan antara kecepatan putar motor pada LCD dengan kecepatan putar motor pada multimeter.

Besar penyimpangan (d) antara nilai yang terukur pada alat dengan nilai yang terukur pada multimeter dapat dicari dengan cara berikut:


(67)

misal pada saat kecepatan yang terukur multimeter = 200 rpm d = 197 – 200

d = -3

jadi dengan demikian, besarnya penyimpangan pada alat saat kecepatan 200 rpm adalah sebesar 3 rpm.

Selain penyimpangan, % kesalahan juga digunakan dalam analisa ketelitian alat yaitu antara kecepatan motor pada LCD dengan kecepatan pada multimeter. Untuk mendapatkan % kesalaha digunakan persamaan:

misal pada saat kecepatan yang terukur oleh alat = 200 rpm

= 1,5 %

Dengan cara yang sama , maka hasil penyimpangan dan % kesalahan dari pengukuran alat terhadap kecepatan putar motor dapat dilihat pada tabel 4.2.

Berdasrkan nilai penyimpaangan yang terdapat pada tabel 4.2, maka dapat ditentukan standar deviasi dari alat yang telah dirancang dengan menggunakan persamaan:

Tabel 4.4 penyimpangan dan % kesalahan pada pengukuran kec. putar motor no

kec motor pada multimeter

(rpm)

Kec motor Pada LCD

(rpm)

d % kesalahan

1 0 0 0 0,00%

2 5 5 0 0,00%


(68)

6 25 24 1 4,00%

7 30 30 0 0,00%

8 35 35 0 0,00%

9 40 40 0 0,00%

10 45 45 0 0,00%

11 50 50 0 0,00%

12 55 54 1 1,82%

13 60 61 1 1,67%

14 65 66 1 1,54%

15 70 69 1 1,43%

16 75 74 1 1,33%

17 80 77 3 3,75%

18 85 85 0 0,00%

19 90 88 2 2,22%

20 95 94 1 1,05%

21 100 100 0 0,00%

22 105 104 1 0,95%

23 110 109 1 0,91%

24 115 114 1 0,87%

25 120 119 1 0,83%

26 125 124 1 0,80%

27 130 128 2 1,54%

28 135 134 1 0,74%

29 140 140 0 0,00%

30 145 144 1 0,69%

31 150 148 2 1,33%

32 155 154 1 0,65%

33 160 160 0 0,00%

34 165 165 0 0,00%

35 170 169 1 0,59%

36 175 173 2 1,14%

37 180 179 1 0,56%

38 185 184 1 0,54%

39 190 188 2 1,05%

40 195 194 1 0,51%

41 200 197 3 1,50%

Dengan menggunakan persaan standar deviasi maka didapat dtandar deviasi dari pengukuran alat adalah:


(1)

Data Pengontrolan kecepatan putar motor dc dengan kecepatan referensi

berubah

Dengan putaran

stepper = abs[kec.reff- kec. Akct] /5

No waktu(s) Kec. Reff (rpm) kec. Aktual (rpm)

1 0 0 0

2 1 100 22

3 2 100 46

4 3 100 59

5 4 100 72

6 5 100 79

7 6 100 86

8 7 100 91

9 8 100 93

10 9 100 97

11 10 100 98

12 11 100 100

13 12 100 101

14 13 100 100

15 14 100 100

16 15 100 101

17 16 100 100

18 17 100 100

19 18 100 99

20 19 100 100

21 20 100 101

22 21 100 99

23 22 100 100

24 23 100 100

25 24 100 101


(2)

Data Pengontrolan kecepatan putar motor dc dengan kecepatan referensi

berubah

Dengan putaran stepper = abs[kec.reff- kec. Akct] / 2

No waktu(s) Kec. Reff (rpm) kec. Aktual (rpm)

1 0 100 0

2 1 100 60

3 2 100 82

4 3 100 98

5 4 100 99

6 5 100 101

7 6 100 102

8 7 100 100

9 8 100 99

10 9 100 100

11 10 100 100

12 11 100 100

13 12 100 100

14 13 100 101

15 14 100 100

16 15 100 100

17 16 100 99

18 17 100 100

19 18 100 101

20 19 100 100

21 20 100 100

22 21 100 99

23 22 100 100

24 23 100 101

25 24 100 100


(3)

Data Pengontrolan kecepatan putar motor dc dengan kecepatan referensi

berubah

Dengan putaran stepper = abs[kec.reff- kec. Akct]

No waktu(s) Kec. Reff (rpm) kec. Aktual (rpm)

1 0 100 0

2 1 100 89

3 2 100 107

4 3 100 105

5 4 100 95

6 5 100 98

7 6 100 101

8 7 100 100

9 8 100 100

10 9 100 100

11 10 100 101

12 11 100 100

13 12 100 99

14 13 100 100

15 14 100 100

16 15 100 101

17 16 100 100

18 17 100 99

19 18 100 101

20 19 100 100

21 20 100 100

22 21 100 101

23 22 100 99

24 23 100 100

25 24 100 101


(4)

Data pengontrolan kecepatan putar pada beban 0,7 kg

no waktu (detik)

kec.Ref

(rpm) kec.Aktual(rpm) beban (kg)

1 0 100 100 0

2 1 100 100 0

3 2 100 101 0

4 3 100 81 0.7

5 4 100 97 0.7

6 5 100 103 0.7

7 6 100 102 0.7

8 7 100 99 0.7

9 8 100 100 0.7

10 9 100 101 0.7

11 10 100 100 0.7

12 11 100 99 0.7

13 12 100 101 0.7

14 13 100 100 0.7

15 14 100 100 0.7

16 15 100 99 0.7

17 16 100 100 0.7

18 17 100 101 0.7

19 18 100 99 0.7

20 19 100 101 0.7

21 20 100 100 0.7

22 21 100 100 0.7

23 22 100 100 0.7

24 23 100 101 0.7

25 24 100 100 0.7

26 25 100 99 0.7

27 26 100 100 0.7

28 27 100 101 0.7

29 28 100 99 0.7

30 29 100 101 0.7

31 30 100 120 0

32 31 100 104 0

33 32 100 97 0

34 33 100 98 0

35 34 100 99 0

36 35 100 100 0

37 36 100 100 0

38 37 100 101 0


(5)

41 40 100 100 0

42 41 100 100 0

43 42 100 101 0

44 43 100 99 0

45 44 100 100 0

46 45 100 100 0

47 46 100 101 0

48 47 100 99 0

49 48 100 100 0

50 49 100 100 0

51 50 100 100 0

52 51 100 101 0

53 52 100 99 0

54 53 100 100 0

55 54 100 100 0

56 55 100 100 0

57 56 100 99 0

58 57 100 100 0

59 58 100 101 0

60 59 100 99 0

61 60 100 100 0

Data pengontrolan kecepatan putar pada beban 0,3 Kg

no waktu

(detik)

kec.Ref

(rpm) kec.Aktual(rpm) beban (kg)

1 0 100 100 0

2 1 100 99 0

3 2 100 100 0

4 3 100 94 0.3

5 4 100 97 0.3

6 5 100 102 0.3

7 6 100 101 0.3

8 7 100 99 0.3

9 8 100 100 0.3

10 9 100 101 0.3

11 10 100 100 0.3

12 11 100 101 0.3

13 12 100 100 0.3

14 13 100 101 0.3

15 14 100 100 0.3


(6)

18 17 100 100 0.3

19 18 100 101 0.3

20 19 100 100 0.3

21 20 100 99 0.3

22 21 100 100 0.3

23 22 100 100 0.3

24 23 100 99 0.3

25 24 100 100 0.3

26 25 100 101 0.3

27 26 100 99 0.3

28 27 100 100 0.3

29 28 100 101 0.3

30 29 100 100 0.3

31 30 100 108 0.3

32 31 100 104 0

33 32 100 98 0

34 33 100 99 0

35 34 100 100 0

36 35 100 100 0

37 36 100 100 0

38 37 100 99 0

39 38 100 100 0

40 39 100 101 0

41 40 100 100 0

42 41 100 100 0

43 42 100 101 0

44 43 100 100 0

45 44 100 101 0

46 45 100 100 0

47 46 100 99 0

48 47 100 101 0

49 48 100 100 0

50 49 100 99 0

51 50 100 100 0

52 51 100 100 0

53 52 100 99 0

54 53 100 100 0

55 54 100 101 0

56 55 100 99 0

57 56 100 100 0

58 57 100 101 0