• Tidak ada hasil yang ditemukan

TUGAS AKHIR APLIKASI MIKROKONTROLER PIC16F877 SEBAGAI ALAT UKUR KECEPATAN PUTARAN MOTOR

N/A
N/A
Protected

Academic year: 2021

Membagikan "TUGAS AKHIR APLIKASI MIKROKONTROLER PIC16F877 SEBAGAI ALAT UKUR KECEPATAN PUTARAN MOTOR"

Copied!
349
0
0

Teks penuh

(1)

UKUR KECEPATAN PUTARAN MOTOR

Diajukan untuk memenuhi salah satu syarat memperoleh gelar sarjana Teknik

pada Program Studi Teknik Elektro Fakultas Teknik

Universitas Sanata Dharma

Disusun oleh

ANDREAS OKTAVIANTO

NIM : 005114068

PROGRAM STUDI TEKNIK ELEKTRO

FAKULTAS TEKNIK

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(2)

Final Project

Presented as a partial fulfillment of the requirements to obtain the TEKNIK Degree in

Electrical Engineering Study Program

By

ANDREAS OKTAVIANTO

Student Number : 005114068

ELECTRICAL ENGINEERING STUDY PROGRAM

ELECTRICAL ENGINEERING DEPARTMENT

ENGINEERING FACULTY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2007

(3)
(4)
(5)

Saya menyatakan dengan sesungguhnya bahwa tugas akhir yang saya tulis ini

tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam

kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah.

Yogyakarta,

_______________

Penulis

Andreas oktavianto

(6)

♠ Tuhanku Yesus kristus & Bunda Maria

♠ Kedua Orang tuaku tercinta …

♠ kakak-kakakku dan adikku terima kasih

Atas dukungannya

♠ Semua Teman-teman dan sahabatku …

♠ Almamaterku…

(7)

mengukur kecepatan putaran motor yaitu menggunakan tachometer. Kelemahan

menggunakan metode ini yaitu membutuhan waktu dan tidak segera tampak keadaan

stabil.

Pada penelitian ini, dirancang suatu alat ukur kecepatan putaran motor dengan

menggunakan metode dinamometer. Pengukuran dengan dinamometer adalah

pengukuran tegangan balik motor akibat adanya putaran pada motor. Unit pengolah

menggunakan mikrokontroler PIC16F877 yang di dalamnya terdapat ADC 10 bit

Alat ukur ini mampu mengukur kecepatan putar motor dengan jangkauan antara

0–10000 RPM, tampilan pengukuran menggunakan LCD.

Kata kunci : aplikasi mikokontroler, pengukuran kecepatan putaran

(8)

speed rotation of machine display. The methods of motor speed rotation measurement

usually use tachometer. The weaknesses of this methods was need time to complete

and steady state

In this research, an instrument to measure rotation speed of motor using

dynamometer has also been designed. Measurement using dynamometer method was

measurement of motor back tension as result of existence of rotation at motor. Processor

unit using PIC16F877 microcontroller which consist of 10 bit ADC .

This measuring instrument was able to measure the angular speed of the motor

with the range between 0 - 10000 rpm, the display measurement used LCD.

Keywords: microcontroller application, angular speed measurement

.

(9)

pimpinan dan penyertaan-Nya sehingga penulis dapat meyelesaikan Tugas Akhir yang

berjudul “

APLIKASI MIKROKONTROLER PIC16F877 SEBAGAI ALAT UKUR

KECEPATAN PUTARAN MOTOR

”. Tugas Akhir ini disusun sebagai salah satu syarat

untuk memperoleh gelar Sarjana Teknik. Dalam penyusunannya, banyak pihak yang telah

membantu dan memberikan dukungan pada penulis, oleh karena itu, penulis ingin

mengucapkan terima kasih kepada:

1. B. Djoko Untoro S., SSi, MT selaku Pembimbing I yang bersedia meluangkan

waktunya untuk membimbing dalam proses penyusunan tugas akhir ini.

2. Bapak Ir. Iswanjono, M.T selaku penguji.

3. Bapak Ir. Tjendro selaku penguji.

4. Bapak Damar Widjaja, ST , MT selaku penguji.

5. Mas Broto Mardi, mas Suryo, Hardi yang telah membantu dalam penyediaan alat di

Lab.

6. Bapak dan ibu dosen pada Jurusan Teknik Elektro yang telah membagi dan

mengajarkan banyak ilmu kepada penulis.

7. Bapak, Ibu, kakak_kakakku mas didik,mas dwi, mas wawan dan adiku ambar

trimakasih atas dukungannya selama ini.

8. Tim hibahku Koko dan franki, matur nuwun frend.

9. Tim hibah PHK andry cs, galuh, nandy, indra , hernomo, sulis dan tim phk yang lain.

(10)

Irwan ST, Purnomo ST, Aan ST, Agus Florent ST, Robert ST, Wayan ST, Arnold

ST, Wisnu ST , serta semua angkatan TE 2000.

12. Anak-anak kost putra “pondok lawu ” wawan, wiwit, panjol, indra, ki topek, tam, nur,

dedi, yudi, dilli, venus, nando, dwik, Mas welly mbak nia, ibuk.

13. Anak-anak kost putra Tangkadas, herri, simbah,sinung,pandi charles, terimakasih.

14. Teman-teman operator warnet GARDENet & JUPITERnet, Mas ardi & mbak tanti,

bambang, vero, teo, kang ari, bertus, haning dan teman2 OP yang lain thank's.

Penulis menyadari bahwa penulisan skripsi ini masih banyak terdapat kesalahan

dan kekurangannya, maka dari itu kritik dan saran sangat diharapkan dari berbagai pihak

agar penulis dapat lebih maju dan lebih baik.

Akhirnya penulis juga berharap semoga karya tulis ini bermanfaat bagi pembaca,

sekian dan terima kasih.

Yogyakarta…………

Penulis

Andreas Oktavianto

(11)

HALAMAN JUDUL………

i

HALAMAN JUDUL BAHASA INGGRIS ……….. ii

HALAMAN PERSETUJUAN………. ..

iii

HALAMAN PENGESAHAN ……….…………..…………

iv

PERNYATAAN KEASLIAN KARYA……….….…………

v

HALAMAN PERSEMBAHAN………..………

vi

INTISARI………... vii

ABSTRACT………... viii

KATA PENGANTAR……….

ix

DAFTAR ISI………

xi

DAFTAR TABEL………

xv

DAFTAR GAMBAR………...

xvi

DAFTAR LAMPIRAN………. ..

xxi

BAB I.

PENDAHULUAN……….………….

1

1.1

judul………

1

1.2 Latar Belakang Masalah………...

1

(12)

1.6 Metodologi penelitian………...

3

1.7 Sistematika Penulisan………...

4

BAB II.

DASAR TEORI……….

5

2.1. beberapa macam cara pengukuran putaran motor ……….. 5

2.2. Pengukuran kecepatan dengan metode generator ………. ……. 7

2.3. pengkondis sinyal ………. . 8

2.4. LCD……… 8

2.5. Rangkaian reset ……… 12

2.6. Mikrokontroller PIC16F877 ……… …… 15

2.6.1 Arsitektur PIC16F877……….…………. ... 18

2.6.2 Instruksi-intruksi untuk seri PIC16………... 20

2.6.3

Instruksi-instruksi

transfer data ……… 20

2.6.4

Instruksi-instruksi

aritmatika dan logika ………. …… 21

2.6.5 Instruksi-instruksi Operasi bit ……….. 22

2.6.6 Instruksi Pengarah aliran program……… 23

2.6.7 Instruksi-intruksi lain ……… …….. 24

(13)

3.1.1 Perancangan perangkat keras untuk metode tachogenerator… 29

3.2 Pengamatan sensor tachogenerator……….. 30

3.3 Perancangan pengkondisi sinyal ……… 36

3.4 Perancangan ADC……… 37

3.5 Perancangan antarmuka LCD dengan Mikrokontroler……… 37

3.6 Rangkaian reset……… 39

3.7 Perancangan perangkat lunak ……….

40

3.8 Penjelasan diagram alir utama ………

41

3.8.1 Diagram alir program utama ………..…………..

41

BAB IV. DATA DAN PEMBAHASAN………. 44

4.1 Hasil akhir perancangan ………... 44

4.2 Pengukuran kecepatan putaran motor dengan multimeter………... 45

4.3 Perbandingan data hasil pengukuran menggunakan multimeter

terhadap data pengukuran dengan alat ……… 46

4.4

Pembahasan……….

49

BAB V

KESIMPULAN DAN SARAN ……… 51

5.1

Kesimpulan

………...

51

(14)
(15)

Tabel 2.3

Kemampuan yang ada pada PIC16F877...

17

Tabel 2.4

Instruksi pada PIC16F877... ...

21

Tabel 3.1

Data hasil pengamatan pada tachogenerator...

32

Tabel 3.2

Selisih setiap kenaikan putaran motor dan kenaikan

tachogenerator...

34

Tabel 4.1

Perbandingan data hasil pengukuran menggunakan

multimeter terhadap data pengukuran dengan alat ...

42

Tabel 4.2

percobaan dengan memberikan input alat ukur berupa

tegangan………

48

(16)

Gambar 2.3

Pengukuran menggunakan photo interuptor...

6

Gambar 2.4

Bagian-bagian dari tachogenerator DC...

7

Gambar 2.5

Rangkaian pembagi tegangan...

8

Gambar 2.6

Display LCD 2 × 16 karakter...

10

Gambar 2.7

Reset active low... 14

Gambar 2.8

Mikrokontroler PIC16F877……….

15

Gambar 2.9

Arsitektur Mikrokontroler PIC16F877………

18

Gambar 2.10

Format register status………..

25

Gambar 3.1

Diagram blok alat pengukur kecepatan motor...

28

Gambar 3.2

Menangkap putaran mesin dengan cara mencapit ujung

motor yang akan diukur………

29

Gambar 3.3

menangkap putaran mesin dengan cara menempelkan

bagian motor yang akan diukur………..

29

Gambar 3.4

Motor tachogenerator...

31

Gambar 3.5

Percobaan untuk mengetahui karakteristik tachogenerator….

32

Gambar 3.6

Grafik perbandingan antara kecepatan puataran motor

dengan tegangan yang dihasilkan oleh tachogenerator …....

33

Gambar 3.7

Rangkaian pembagi tegangan...

36

Gambar 3.8

Antarmuka LCD dengan Mikrokontroler...

38

Gambar 3.9

Tampilan nama dan nama mahasiswa...

38

Gambar 3.10

Rangkaian reset...

38

Gambar 3.11

Diagram alir program utama...

40

Gambar 3.12

Diagaram alir proses pengolahan pada mikrokontroler agar

data dapat ditampilkan ke LCD ...

41

Gambar 4.1

Alat ukur kecepatan putaran motor...

44

Gambar 4.2

Pengukuran kecepatan putaran motor dengan multimeter...

45

Gambar 4.3

Pengukuran kecepatan putaran motor menggunakan alat

ukur dan multimeter……….

46

(17)

BAB I

PENDAHULUAN

1.1 Judul

Aplikasi Mikrokontroler PIC16F877 sebagai alat ukur kecepatan putaran

motor.

1.2 Latar Belakang Masalah

Pengukuran merupakan suatu kegiatan yang penting untuk mengetahui

ukuran sesuatu. Pengukuran yang dilakukan di laboratorium, terutama

laboratorium otomotif antara lain: pengukuran suhu (meliputi suhu radiator, suhu

oli pelumas dan suhu saluran gas buang), pengukuran kecepatan putaran motor

dan lain-lain.

Metode yang banyak digunakan untuk mengukur kecepatan putaran motor

yaitu menggunakan tachometer. Kelemahan menggunakan metode ini yaitu

diperlukan waktu pengukuran minimal 1 detik. Perubahan kecepatan tidak segera

tampak. Untuk putaran motor (mesin) perubahan kecepatan dapat terjadi kurang

dari 1 detik. Pada penelitian ini akan dirancang dan diimplementasikan suatu alat

ukur kecepatan motor menggunakan metode tachogenerator berbasis

mikrokontroler PIC16F877. Dengan metode ini diharapkan pengukuran kecepatan

bisa lebih cepat. Hasil yang akan dicapai adalah tersedianya suata alat ukur

kecepatan putaran motor yang dapat mengukur dan menampilkan hasil

pengukuran dengan tampilan berupa LCD.

(18)

1.3 Tujuan

Tujuan dari perancangan dan pembuatan alat ini adalah membuat peralatan

yang dapat dipakai untuk mengukur kecepatan putaran motor per menit (rpm),

dengan jangkauan pengukuran hingga 10000 RPM. Hasil pengukuran

ditampilkan menggunakan tampilan berupa LCD 2x16.

1.4 Batasan Masalah

Alat ukur kecepatan putaran motor yang dirancang mempunyai batasan

masalah sebagai berikut :

1. Jangkaun pengukuran kecepatan putaran hingga 10000 RPM.

2. Hasil pengukuran di tampilkan pada LCD.

3. Pengukuran dalam satuan RPM (Rotation per minute)

1.5 Manfaat

Manfaat yang dapat dicapai dari penelitian ini, antara lain :

1. Menambah literatur tentang aplikasi mikrokontroler menggunakan PIC.

2. Dapat dijadikan sebagai acuan dalam pengembangan terhadap aplikasi

mikrokontroler PIC16F877.

I.6. Metodologi Penelitian

Pada penelitian ini, penulis menggunakan langkah-langkah sebagai

berikut:

(19)

1. Perumusan masalah, yaitu bagaimana mengimplementasikan suatu alat

ukur kecepatan putaran motor.

2. Pengumpulan dokumen pendukung, berupa buku-buku dan data sheet

yang berhubungan dengan elektronika dan mikrokontroler.

3. Perancangan untuk menyelesaikan masalah, berupa perhitungan

matematis, penentuan komponen dan nilai-nilai yang digunakan,

menggambar rangkaian serta membentuk diagram alir.

4. Implementasi dari perancangan.

5. Pengambilan data dengan melakukan pengukuran di lab.

6. Pengolahan data dengan membandingkan hasil pengukuran dengan

hasil perhitungan matematis.

7. Penyajian data dengan grafik dari hasil percobaan dan perhitungan

matematis.

8. Penulisan laporan.

I.7 Sistematika Penulisan

Penulis melakukan penelitian dengan merancang alat dan mengambil data

dari alat yang telah dirancang tersebut. Laporan penelitian dibagi menjadi 5 bab

yang secara singkat dapat dijelaskan sebagai berikut:

BAB I

Memuat pendahuluan yang berisi latar belakang penelitian, batasan

masalah, tujuan dan manfaat penelitian, metodologi penelitian, serta

sistematika penulisan laporan.

(20)

BAB II Berisi dasar teori yang dipakai oleh penulis untuk melakukan

penelitian.

BAB III Berisi tentang perancangan alat yang terdiri dari diagram blok,

perhitungan nilai komponen, gambar tiap rangkaian beserta diagram alir

program.

BAB

IV Berisi data hasil percobaan alat yang telah dibuat beserta

pembahasannya.

BAB V Berisi kesimpulan dari penelitian yang telah dilakukan serta saran yang

dianggap perlu.

(21)

BAB II

DASAR TEORI

II.1 Beberapa Macam Cara Pengukuran Putaran Motor

Untuk pengukuran kecepatan putaran motor terdapat beberapa cara

diantaranya :

1. Pengukuran kecepatan dengan metode generator

Gambar 2.1 Pengukuran menggunakan metode generator

Pada gambar 2.1 jika motor berputar maka generator akan ikut

berputar,sehingga akan menimbulkan tegangan. Tegangan yang timbul

pada generator sebanding dengan kecepatan putar motor.

2. Pengukuran menggunakan photo reflector pada tachometer

Gambar 2.2 Pengukuran menggunakan photo reflector pada

tachometer

Tachometer pada gambar 2.2 menghasilkan sinar dan pada sumbu

motor dipasang suatu lapisan yang dapat memantulkan sinar.

(22)

Banyaknya pulsa yang masuk ke tachometer menunjukkan kecepatan

putaran motor.

3. Pengukuran menggunakan photo interuptor

Gambar 2.3 Pengukuran menggunakan photo interuptor

Motor pada gambar 2.3 di beri piringan yang bercelah, piringan berputar

sesuai dengan kecepatan motor. Piringan ditempatkan pada sensor photo

interuptor, dan menghasilkan pulsa yang sebanding dengan kecepatan dan

cacah celah piring.

4. Pengukuran menggunakan stroboscope

Stroboscope merupakan suatu alat yang berkedip dan dapat diatur

kedipannya, bila kedipannya sebanding dengan putaran maka akan

membentuk suatu pola tertentu.

Beberapa cara diatas hanya merupakan beberapa contoh pengukuran putaran

motor.

(23)

II.2 Pengukuran Kecepatan Motor Dengan Metode Tachogenerator

Pengukuran menggunakan metode putaran (photo interuptor) memerlukan

pengukuran sebesar satu detik. Untuk putaran motor (mesin) perubahan kecepatan

dapat terjadi dalam waktu kurang satu detik. Pada penelitian ini akan dicoba

pengukuran kecepatan motor menggunakan metode generator.

Gambar 2.4 Bagian-bagian dari tachogenerator DC

Sensor yang sering digunakan untuk sensor kecepatan angular adalah

tachogenerator. Tachogenerator adalah sebuah generator kecil yang

membangkitkan tegangan DC ataupun tegangan AC. Dari segi eksitasi

tachogenerator dapat dibangkitkan dengan eksitasi dari luar atau imbas

elektromagnit dari magnit permanen.

Tachogenerator DC dapat membangkitkan tegangan DC yang langsung

dapat menghasilkan informasi kecepatan, sensitivitas tachogenerator DC cukup

baik terutama pada daerah kecepatan tinggi. Tachogenerator DC yang bermutu

tinggi memiliki kutub-kutub magnit yang banyak sehingga dapat menghasilkan

tegangan DC dengan riak gelombang yang berfrekuensi tinggi sehingga mudah

(24)

diratakan. Tegangan yang timbul pada generator sebanding dengan kecepatan

putar motor. Pada saat terjadi putaran ,maka motor DC akan menghasilkan

tegangan induksi yang besarnya sebanding dengan kecepatan putar.

ω

emf

V

=

. Ω ………. (2.1)

emf

V

K

e

Dengan ω merupakan kecepatan sudut motor dan

merupakan konstanta

motor, semakin cepat motor berputar maka tegangan induksi yang terjadi juga

sangat besar. Dengan melakukan kalibrasi maka tegangan yang timbul dari

tachogenerator dapat di buat menjadi skala kecepatan .

e

K

II.3 Pengkondisi Sinyal

Output dari tachogenerator sangat besar, biasanya melebihi dari tegangan

input ADC dari mikrokontroler, oleh karena itu diperlukan suatu pengkondisi

sinyal. Rangakaian pembagi tegangan diperlukan agar output tachogenerator

bisa disesuiakan dengan input ADC dari mikrokontroler.

(25)

Dari gambar 2.5 Vout dapat dicari dengan :

Vin

R

R

R

Vo

1

2

1

+

=

………..(2.2)

II.4 LCD (Liquid Crystal Display )

LCD (

Liquid Crystal Display) adalah suatu tampilan (display) dari bahan

cairan kristal yang dioperasikan dengan menggunakan sistem dot matriks. Pada

perancangan alat ini digunakan Display LCD 2 × 16 karakter, yang artinya LCD

ini memiliki 2 baris dan 16 kolom karakter, sehingga jumlah total karakter yang

dapat ditampilkan sekaligus adalah sebanyak 32 karakter. Masing-masing karakter

tersebut terbentuk dari susunan dot yang berukuran 8 baris dan 5 kolom dot.

Jenis LCD yang digunakan dalam perancangan alat ini adalah LCD

HD44780U. Interface LCD HD44780U dengan mikrokontroler dapat dilakukan

dengan sistem 4-bit ataupun 8-bit.

LCD yang dipakai pada alat pencacah ini menggunakan sistem pengiriman

data 8-bit dan diperlukan 10 jalur data untuk berhubungan dengan sistem

mikrokontroler PIC16F877. Kesepuluh jalur data tersebut adalah :

1. Delapan jalur data untuk mengirimkan data instruksi dan data karakter yang

akan ditampilkan, kedelapan jalur tersebut secara berurutan yaitu kaki 7

(DB0), kaki 8 (DB1), kaki 9 (DB2), kaki 10 (DB3), kaki 11 (DB4), kaki 12

(DB5), kaki 13 (DB6), kaki 14 (DB7).

(26)

Gambar 2.6. Display LCD 2 × 16 karakter

HD44780U memiliki beberapa bagian, yaitu:

1. Register

HD44780U memiliki dua buah register 8-bit, yaitu IR (Instruction

Register) dan DR (Data Register). IR merupakan register yang hanya

dapat ditulis untuk menyimpan kode-kode instruksi seperti clear display,

cursor shift, dan juga untuk alamat dari DDRAM (display data RAM)

ataupun CGRAM (Character Generator RAM). Sedangkan DR (Data

Register) merupakan register yang dapat ditulis maupun dibaca untuk

penyimpanan sementara data yang akan ditulis atau dibaca dari atau

kedalam DDRAM ataupun CGRAM.

2. BF (Busy Flag)

Jika BF berlogika ‘1’ maka driver HD44780U akan menjalankan operasi

internal, sehingga instruksi selanjutnya tidak dapat dijalankan. Maka untuk

dapat menjalankan instruksi selanjutnya perlu diperiksa apakah BF

(27)

tersebut berlogika ‘0’, atau dapat juga dilakukan dimana pengiriman data

selanjutnya dilakukan dalam waktu yang lebih lama dari waktu yang

dibutuhkan untuk melakukan eksekusi instruksi data sebelumnya.

3. AC (Address Counter)

Fungsi AC adalah untuk mengalamati DDRAM dan juga CGRAM.

4. DDRAM (Display Data RAM)

DDRAM digunakan untuk menyimpan tampilan data yang

direpresentasikan dalam bentuk 8-bit kode karakter. DDRAM memiliki

kapasitas 80× 8 bit atau jenis 80 karakter.

5. CGROM (Character Generator ROM)

CGROM merupakan RAM (Read Only Memory) berukuran 64× 8 bit yang

memungkinkan pemakai untuk memprogram bentuk karakter yang

diinginkan. LCD yang digunakan adalah LCD buatan Hitachi dengan

driver HD44780U yang memiliki 16 pin seperti yang ditunjukkan pada

tabel berikut:

Tabel 2.1 Display LCD HD44780U

Nomor Pin

Simbol

Nomor

Simbol

1 VEE (0V)

9

DB2

2 VCC (5V)

10

DB3

3 GND

(0V)

11 DB4

4 RS 12

DB5

5 R/W 13

DB6

6 E 14

DB7

7 DB0 15 A

8 DB1 16 K

(28)

Deskripsi pin:

1. DB0 s/d DB7, merupakan jalur data yang dipakai untuk menyalurkan kode

ASCII maupun perintah pengatur kerja LCD tersebut.

2. RS (Register Select), merupakan pin yang dipakai untuk membedakan

jenis data yang dikirim ke LCD. Jika RS berlogika ‘0’ maka data yang

dikirim adalah perintah untuk mengatur kerja LCD tersebut, jika RS

berlogika ‘1’ maka data yang dikirim adalah kode ASCII yang

ditampilkan.

3. R/W (Read/Write), merupakan pin yang digunakan untuk mengaktifkan

pengiriman dan pengambilan data ke dan dari LCD. Jika R/W berlogika

‘0’ maka akan diadakan pengiriman data ke LCD, jika R/W berlogika ‘1’

maka akan diadakan pengambilan data dari LCD.

4. E (Enable), merupakan sinyal sinkronisasi. Saat E berubah dari logika ‘1’

ke ‘0’, maka data di DB0 s/d DB7 akan diterima atau diambil dari port

mikrokontroler.

5. A (Anoda) dan K (Katoda), merupakan pin yang digunakan untuk

menyalakan backlight dari layer LCD.

II.5 Rangkaian Reset

Reset digunakan untuk mengembalikan mikrokontroler pada kondisi

awal. Pada keadaan tertentu, mikrokontroler dapat memasuki kondisi tak tentu

akibat terjebak dalam suatu loop atau sebab lain. Hal ini semacam “hang up” pada

komputer.

(29)

Pada saat mikroprosesor mendapat reset, alamat dari Program Counter

(PC) pada mikroprosesor akan otomatis berisi nilai paling kecil ataupun paling

besar (tergantung arsitektur dari prosesor) dimana nilai pada Program Counter

tersebut menunjuk ke alamat program yang paling awal yang terdapat di dalam

ROM. Rangkaian reset harus bisa menjamin, bahwa ketika sistem mendapat daya,

reset harus otomatis terjadi atau yang lebih dikenal dengan Power on Reset, hal ini

fungsinya untuk menjamin bahwa mikroprosesor memulai mengambil instruksi

dari awal program. Secara umum rangkaian untuk melakukan reset terdiri dari 2

macam, yakni:

1. Reset active high : reset akan terjadi bila pada pin reset mendapat

logika 1 selama beberapa saat.

2. Reset active low : reset akan terjadi bila pada pin reset mendapat

logika 0 selama beberapa saat..

Pada kebanyakan mikroprosesor dibutuhkan waktu beberapa saat pin

reset mendapat logika 1 supaya terjadi reset, tetapi untuk PIC16F77 diberikan

logika 0 untuk reset, sehingga yang digunakan dalam perancangan ini adalah

rangkaian reset active low. gambarnya dapat dilihat pada gambar 2.7.

(30)

Gambar 2.7 Reset active low

Pada saat pertama rangkaian di atas mendapat power, tegangan pada titik

x (tegangan kapasitor) akan sama dengan 0, sehingga terjadi reset. pada saat

muatan di kapasitor terisi dan mendekati penuh, maka pada titik x akan mulai

muncul tegangan, yang dianggap oleh pin reset sebagai logika 1, sehingga reset

pun tidak terjadi. Pada saat tombol ditekan, seluruh muatan pada kapasitor

maupun tegangan yang mengalir pada R akan dialirkan semua ke ground (titik

yang lebih rendah), sehingga titik x akan berlogika 0 dan terjadilah reset. Waktu

reset tersebut dapat dihitung dengan rumus T = RC. Untuk keamanan dan untuk

mencegah bouncing dari tombol reset yang dapat menyebabkan reset terjadi

beberapa kali meskipun tombol cuma sekali ditekan, maka ada baiknya pin reset

diberi logika 0 selama lebih kurang 20 - 100 ms. Cara menanggulanginya adalah

dengan mengatur nilai pada resistor dan kapasitor yang mempengaruhi lama

(31)

pengisian dan pembuangan muatan dari kapasitor. Cara untuk menentukan nilai

ini ialah dengan mencari konstanta waktu ( τ ), dengan τ = R.C. Nilai τ

menunjukkan

waktu

yang

dibutuhkan

kapasitor

untuk

melakukan

charging / discharging sebesar 63,7 % dari tegangan catu, dan waktu yang

dibutuhkan untuk charging / discharging penuh ialah 5 kali konstanta waktu (5.τ).

Umumnya nilai R untuk rangkaian reset berkisar antara 1-10 kΩ dan untuk C

berkisar antara 0,1 - 10 µF.

II.6 Mikrokontroler PIC16F877

Berikut merupakan mikrokontroler yang akan digunakan pada

perancangan, yaitu PIC16F877.

(32)

Tabel 2.2 Nama setiap pin PIC16F877

Pin Number

Description

1

MCLR/Vpp - Master clear input (active low)

2

RA0/AN0 - Port A

3

RA1/AN1 - Port A

4

RA2/AN2/Vref/CVref - Port A

5

RA3/AN3/Vref - Port A

6

RA4/TOCK1/C1OUT - Port A

7

RA5/AN4/SS/C2OUT - Port A

8

RE0/RD/AN5 - Port E

9

RE1/WR/AN6 - Port E

10

RE2/CS/AN7 - Port E

11

Vdd - Positive Power Supply

12

Vss - Ground

13

OSC1/CLKIN - Oscillator

14

OSC2/CLKOUT - Osciallator

15

RC0/T1OSO/T1CKI - Port C

16

RC1/T1OSI/CCP2 - Port C

17

RC2/CCP1 - Port C

18

RC3/SCK/SCL - Port C

19

RD0/PSP0 - Port D

20

RD1/PSP1 - Port D

21

RD2/PSP2 - Port D

22

RD3/PSP3 - Port D

23

RC4/SDI/SDO - Port C

24

RC5/SDO - Port C

25

RC6/TX/CK - Port C

26

RC7/RX/DT - Port C

27

RD4/PSP4 - Port D

28

RD5/PSP5 - Port D

29

RD6/PSP6 - Port D

30

RD7/PSP7 - Port D

31

Vss - Ground

32

Vdd - Positive Power Supply

33

RB0/INT - Port B

(33)

Tabel 2.2 (Lanjutan) Nama setiap pin PIC16F877

Pin Number

Description

35

RB2 - Port B

36

RB3/PGM - Port B

37

RB4 - Port B

38

RB5 - Port B

39

RB6/PGC - Port B

40

RB7/PGD - Port

Mikrokontroler PIC16F877 merupakan mikrokontroler yang

dikembangkan dan diproduksi oleh perusahaan Microchip. Mikrokontroler

PIC16F877 termasuk dalam mikrokontroler 8 bit, yang berarti dapat melakukan

pengolahan data sebanyak 8 bit secara langsung.

Tabel 2.3 Kemampuan yang ada pada PIC16F877 yaitu sebagai berikut :

FITUR PIC16F877

Max operating freq

20Mhz

Flash Program Memory ( 14 bit word )

1K

Data Memory (byte)

368

EEPROM (byte)

256

I/O port

Port A,B,C,D,E

Interupsi 14

Timer 3

ADC

10 bit, 8 ch

(34)

II.6.1 Arsitektur PIC16F877

Gambar 2.9 Arsitektur mikrokontroler PIC16F877

Bagian-bagian utama dari mikrokontroler PIC16F877 (gambar 2.2), yaitu:

1. ALU

Merupakan bagian mikrokontroler yang bertanggungjawab terhadap

operasi aritmatika (penjumlahan dan pengurangan) dan logika, termasuk

pergeseran dalam register (shifting).

(35)

2. Memori Program

Memori program direalisasikan dalam teknologi FLASH, memori yang

memungkinkan pemrogram melakukan program hapus-tulis hingga

berulang kali.

3. Program counter

Merupakan suatu register 13 bit yang berisi alamat instruksi yang sedang

dieksekusi. Program Counter terbagi menjadi byte rendah (PCL) dan byte

tinggi (PCH). PCL bersifat dapat dibaca dan ditulis, sedangkan PCH hanya

dapat ditulis.

4. Register status

Register status berisi status aritmatika dan ALU (C,DC,Z), status reset

(TO,PD) dan bit-bit pemilih memori (IRP, RP1, RP0).

5. Pembangkit clock - osilator

Rangkaian osilator yang dibutuhkan oleh mikrokontroler untuk

menyediakan clock bagi mikrokontroler.

6. Unit I/O

Agar mikrokontroler dapat berkomunikasi dengan dunia luar, maka harus

ada terminal yang menghubungkan keduanya. Terminal tersebut

dinamakan port I/O yang dialamati sebagaimana layaknya lokasi memori.

Ada 33 I/O dalam PIC16F877.

7. Timer

Timer

digunakan untuk keperluan menghasilkan tunda, mencacah pulsa,

(36)

8. A/D converter

Digunakan untuk mengubah sinyal analog menjadi sinyal digital.

9. USART

Digunakan untuk berkomunikasi secara serial dengan PC.

II.6.2 Instruksi-instruksi Untuk Seri PIC16

Mikrokontroler seri PIC16 tergolong mikrokontroler jenis RISC sehingga

instruksi yang digunakan relatif sedikit, hanya 35 instruksi. Instruksi-instruksi

tersebut tersebut terdiri atas 6 instruksi untuk transfer data, 15 instruksi untuk

operasi aritmatika dan logika, 2 instruksi pengarah aliran program dan instruksi

umum.

II.6.3 Instruksi-instruksi Transfer Data

Transfer data dalam mikrokontroler dilakukan antara register kerja “w”

(working register) dan register file F (baik GPR maupun SFR). Instruksi transfer

data digunakan untuk memindahkan data antar register.

1. movlw = digunakan untuk memindahkan nilai literal ke register W.

Dengan instruksi ini kita dapat memuati register W dengan nilai tertentu.

2. movwf = digunakan untuk ,e,indah kan isi register W ke register f. Dengan

instruksi ini kita dapat menyalin isi register W ke register f. Dalam hal ini

isi register W tidak berubah.

3. movf = digunakan untuk memindahakan isi register f ke register W jika

d=0 atau ke register f jika d=1.

4. clrw = digunakan untuk membersihkan isi register W. Dengan instruksi ini

register W akan diisi dengan 00h.

(37)

5. clrf = digunakan untuk membersihkan register f. Register f akan diisi nilai

00h.

6. swapf = digunakan untuk saling menukarkan 4 bit (nibble) atas dengan 4

bit (nibble) bawah pada register f dan hasilnya dletakkan pada tujuan d.

II.6.4 Instruksi-instruksi Aritmatika Dan Logika

Mikrokontroler PIC seri 16 hanya mengenal operasi aritmatika berupa

penjumlahan dan pengurangan. Bendera C, DZ, dan Z akan ditetapkan menurut

hasil dari operasi ini, dengan satu pengecualian, pengurangan dilakukan sebagai

penjumlahan terhadap nilai negatif. Unit logika pada seri PIC16 dapat melakukan

operasi AND, OR (Inclusive OR), XOR, COMF, dan rotasi RLF/RRF.

1. addlw = digunakan untuk menjumlakan suatu literal dengan register W,

dan hasilnya disimpan di register W.

2. addwf = digunakan untuk menjumlahkan isi register W dengan register f,

kemudian hasilnya disimpan di tujuan d.

3. sublw = digunakan untuk mengurangkan isi register W dari suatu nilai

literal, hasilnya disimpan di register W.

4. subwf = digunakan untuk mengurangkan isi register W dari register f,

hasilnya disimpan di tujuan d.

5. andlw = digunakan untuk melakukan operasi logika AND antara nilai

literal dengan register W. Hasil operasi diletakkan kembali di register W.

6. andwf = digunakan untuk operasi logika AND antara register W dengan

(38)

7. iorlw = digunakan untuk melakukan operasi OR antara register W dengan

nilai literal k. Hasil operasi ini disimpan di register W.

8. iorwf = digunakan untuk operasi logika OR antara register W dengan

register f, hasilnya ditempatkan di tujuan d.

9. xorlw = digunakan untuk operasi logika Exclusive OR (XOR) antara

register W dengan nilai literal k. Hasilnya dikembalikan ke register W.

10. xorwf = digunakan untuk operasi XOR antara register W dengan register f,

hasilnya ditempatkan di tujuan d.

11. incf = digunakan untuk menaikkan 1 nilai register f, kemudian hasilnya

diletakkan di tujuan d.

12. decf = digunakan untuk mengurangi 1 nilai register f, kemudian hasilnya

diletakkan di tujuan d.

13. rlf = digunakan untuk menggeser kiri bit-bit dalam register f. Hasil

penggeseran disimpan di tujuan d.

14. rrf = digunakan untuk menggeser kanan bit-bit dalam register f. Hasil

pergeseran diletakkan di tujuan d.

15. comf = digunakan untuk mendapatkan nilai komplemen dari isi register f.

Nilai komplemen tersebut kemudian disimpan di tujuan d.

II.6.5 Instruksi-instruksi Operasi Bit

Operasi bit dilakukan dengan instruksi BCF atau BSF. Instruksi ini

digunakan untuk menetapkan atau menghapus suatu bit dalam sebuah register.

1. bcf = digunakan untuk membersihkan suatu bit pada register f. Bit yang

bersangkutan akan diberi logika 0.

(39)

2. bsf = digunakan untuk menetapkan suatu bit pada register f. Bit yang

bersangkutan akan diberi logika 1.

II.6.6 Instruksi Pengarah Aliran Program

Instruksi –instruksi akan dapat mengalihkan aliran program pada kondisi-kondisi

tertentu.

1. btfsc = digunakan untuk menguji logika suatu bit pada register f. Jika

hasilnya “0”, instruksi berikutnya dilompati (tidak dieksekusi), sedangkan

jika hasilnya “1”, instruksi berikutnya tetap dieksekusi.

2. btfss = digunakan untuk memeriksa bit pada register f. Jika nilainya”1”,

lompati instruksi berikutnya, jika “0” instruksi berikutnya tetap dieksekusi.

3. decfsz = digunakan untuk melakukan pengurangan register f dengan 1.Jika

bernilai “0” instruksi berikutnya dilompati. Hasil disimpan di tujuan d.

4. incfsz = digunakan untuk melakukan penambahan register f dengan 1. Jika

hasilnya “0” instruksi berikutnya dilompati. Hasil disimpan di tujuan d.

5. goto = digunakan untuk mengarahkan program ke suatu tempat dengan

nama atau alamat tertentu.

6. call = digunakan untuk memanggil suatu subrutin.

7. return = digunakan untuk kembali dari subrutin ke program utama yang

memanggilnya. Setelah kembali, program akan melanjutkan mengerjakan

instruksi berikutnya.

8. retlw = instruksi ini serupa dengan return, namun saat kembali dari

subrutin, register w akan diberi nilai literal k yang menyertainya.

(40)

9. retfie = digunakan untuk mengakhiri suatu rutin interupsi agar program

dapat kembali ke pekerjaan awal, melanjutkan pekerjaan yang

ditinggalkan akibat adanya interupsi.

II.6.7 Instruksi-instruksi Lain

1. nop = tidak ada yang dikerjakan

2. clrdwt = digunakan untuk mereset WDT. Saat WDT di enable, WDT

harus direset sebelum mencapai overflow karena apabila dibiarkan akan

menyebabkan mikrokontroler reset.

3. sleep = digunakan untuk membawa mikrokontroler ke keadaan stand-by.

Mode sleep sangat bermanfaat untuk menghemat daya pada aplikasi.

(41)

Tabel 2.4 Instruksi pada PIC16F877

II.6.8 Register Status

Register status berisi status aritmatika dari ALU (C,DZ,Z), status reset

(TO, PD) dan bit-bit pemilih bank memori (IRP, RP0, RP1).

bit 7

bit 6

bit 5

bit 4

bit 3

bit 2

bit 1

bit 0

IRP RP1 RP0 TO PD Z DC C

(42)

Bit 0 = C (Carry) Transfer

Bit C merupakan bit yang dipengaruhi oleh operasi penjumlahan,

pengurangan, dan pergeseran.

1 = transfer tejadi dari bit tertinggi (MSB) pada hasil operasi

0 = tidak terjadi transfer

Instruksi yang mempengaruhi ADDWF, ADDLW, SUBLW, SUBWF.

Bit 1 = DC (Digit Carry) DC transfer

Bit DC juga dipengaruhi oleh operasi penjumlahan, pengurangan, dan

pergeseran. Bit DC menyatakan terjadinya transfer dari bit 3 ke bit 4 pada operasi

penjumlahan, atau transfer dari bit 4 ke bit 3 pada operasi pengurangan, atau

operasi pergeseran antara bit 3 dan bit 4 dengan arah manapun.

1 = terjadi transfer antara bit 3 dan bit 4

0 = tidak terjadi transfer

Bit 2 = Z (Zero bit)

Bit Z akan mengindikasikan apabila hasil operasi adalah nol. Bit ini akan

diset jika hasil operasi aritmatika atau logika sama dengan nol.

1 = hasil operasi sama dengan nol

0 = hasil operasi tidak sama dengan nol

Bit 3 = PD (Power Down bit)

Bit PD akan diset ketika power supply mulai ON atau setelah eksekusi

instruksi CLRWDT. Instruksi SLEEP akan mereset bit ini ketika mikrokontroler

mulai memasuki mode SLEEP.

(43)

1 = sesudah power supply ON

0 = saat eksekusi instruksi SLEEP

Bit 4 = TO (Time Out, WDT overflow)

Bit ini diset setelah power supply ON, eksekusi CLRWDT dan instruksi

SLEEP. Reset pada bit ini akan terjadi saat WDT overflow.

1 = overflow tidak terjadi

0 = overflow terjadi

Bit 5, 6 = RP1, RP0 (Request Bank Select Bit)

Kedua bit ini merupakan bit-bit pemilih bank pada mode pengalamatan

langsung, Bit RP0 tidak difungsikan karena bit ini hanya disisakan untuk

keperluan ekspansi mendatang.

01 = bank 1

00 = bank 0

Bit 7 = IRP (Register Bank Select Bit)

Bit IRP digunakan untuk memilih bank pada pengalamatan tidak langsung.

1 = bank 2 dan bank 3

(44)

BAB III

PERANCANGAN ALAT

III.1 Perancangan Perangkat Keras

Pada perancangan perangkat keras ini meliputi sensor, rangkaian

pengkondisi sinyal, tombol (power dan reset), unit penampil LCD. Untuk

bagian-bagian dari perancangan alat ukur kecepatan putaran motor secara lengkap dapat

dilihat pada gambar 3.1

Penangkap putaran

motor

sensor

Tachogenerator

PIC16F877

ADC

Unit penampil

LCD

Pengkondisi sinyal

Tombol power

Tombol reset

(45)

III.1.1 Perancangana Perangkat Keras Untuk Metode Tachogenerator

Pada perancangan ini yang akan di ukur adalah kecepatan putaran motor.

Ada beberapa cara pengukuran, antara lain dengan menjepit ujung dari bagian

motor yang akan diukur ( gambar 3.2) dan menempelkan penangkap putaran pada

ujung bagian motor yang akan di ukur ( gambar 3.3 )

Gambar3.2 menangkap putaran mesin dengan cara mencapit ujung

motor yang akan diukur.

Gambar3.3 menangkap putaran mesin dengan cara menempelkan

bagian motor yang akan diukur.

Pada saat motor yang akan di ukur berputar tachogenerator juga ikut

berputar dan menghasilkan tegangan induksi yang besarnya sebanding dengan

kecepatan putar motor .

(46)

III.2 Pengamatan Sensor Tachogenerator

Pengamatan pada sensor tachogenerator sangat diperlukan mengetahui

karakteristik dari tachogenerator.

Pada pengamatan penulis menggunakan

tachogenerator yang ada di laboratorium tugas akhir (gambar 3.4).

Tachogenerator ini telah menjadi satu dengan motor dc, jika motor dc diputar

maka tachogenerator akan ikut berputar dan menghasilkan tegangan yang

besarnya tergantung dari kecepatan putar motor dc. Semakin cepat motor dc

berputar semakin besar pula tegangan yang dihasilkan oleh tachogenerator.

Untuk mengetahui berapa kecepatan putaran motor dan berapa tegangan

keluaran tachogenerator dilakukan suatu percobaan. Pada percobaan yang

dilakukan digunakan piringan yang bercelah (rotary encoder) yang ditempatkan

pada ujung motor, dan diantara piringan diberi sensor berupa optokopler (gambar

3.5) untuk mengetahui kecepatan putar motor DC. Dan untuk mencari kecepatan

putaran motor dc dapat dicari dengan rumus :

rpm =

h

JumlahCela

Fin

x 60s

Karena jumlah celah yang digunakan 60 buah, maka persamaannya dapat

disederhanakan menjadi:

rpm = Fin

Keterangan :

Fin = Frekuensi yang terukur pada sensor optokopler.

Pengukuran frekuensi dilakukan dengan dengan menggunakan multimeter digital.

(47)

Gambar 3.4 Motor tachogenerator

Keterangan gambar :

1. Motor DC dengan tachogenerator

2. Input power supply untuk motor DC

3. Output tachogenerator

(48)

Gambar 3.5 Percobaan untuk mengetahui karakteristik tachogenerator

Tabel 3.1 Data hasil pengamatan pada tachogenerator.

Pengamatan

Kecepatan putaran motor DC

Tegangan output tachogenerator

(RPM)

(Volt)

1 250

0.76

2 508

1.63

3 760

2.43

4 1069

3.42

5 1245

3.98

6 1526

4.9

7 1731

5.55

8 2001

6.36

9 2272

7.3

10 2500

8

11 2753

8.8

12 3003

9.61

13 3272

10.30

14 3512

11.25

15 3758

11.89

16 4005

12.78

17 4261

13.58

18 4510

14.37

19 4776

15.21

20 5004

15.91

21 5225

16.71

22 5519

17.55

23 5738

18.20

24 5965

18.89

(49)

Tabel 3.1 (Lanjutan) Data hasil pengamatan pada tachogenerator.

Pengamatan

Kecepatan putaran motor DC

Tegangan output tachogenerator

(RPM)

*

Huruf tebal pada data diatas menunjukkan pengambilan data dilakukan dengan menghitung selisih data setiap kenaikan putaran motor dan tegangan tachogenerator.

(Volt)

25 6229

19.76

26 6517

20.67

27 6762

21.39

28 7010

22.19

29 7247

22.92

30 7517

23.71

31

7787

24.5

32 8057

25.29

33 8327

26.08

34 8597

26.87

35 8867

27.66

36 9137

28.45

37 9407

29.24

38 9677

30.03

39 9947

30.82

40 10217

31.61

Grafik perbandingan antara kecepatan putaran motor dengan tegangan yang dihasilkan tachogenerator

0 5 10 15 20 25 30 35 40 0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 11000

Kecepatan putaran motor (RPM)

T e gangan t achogener a to r (V o lt)

Gambar 3.6 Grafik perbandingan antara kecepatan puataran motor dengan

tegangan yang dihasilkan oleh tachogenerator

(50)

Dari data tabel 3.1 dan grafik 3.1 dapat dilihat bahwa semakin cepat

putaran motor maka tegangan yang dihasilkan tahogenerator juga semakin besar.

Untuk pengukuran diatas 10000 RPM belum didapatkan data karena motor yang

di gunakan belum mampu berputar mencapai 10000 RPM. Oleh karena itu untuk

mendapatkan data kecepatan putaran motor agar mencapai 10000 RPM maka dari

data diatas dapat diambil rata-rata berapa kenaikan tegangan setiap kenaikan

putaran motor, dengan menghitung jumlah selisih kenaikan putaran motor dan

kenaikan tegangan, kita dapat mengambil berapa rata-rata kenaikannya.

Tabel 3.2 selisih setiap kenaikan putaran motor dan kenaikan tegangan

tachogenerator

No

Selisih data

pengamatan untuk

setiap kenaikan

Selisih setiap kenaikan

putaran

(RPM)

Selisih setiap kenaikan

tegangan

(Volt)

1

Data 2 - Data 1

258

0.87

2

Data 3 - Data 2

252

0.8

3

Data 4 - Data 3

309

0.99

4

Data 5 - Data 4

176

0.56

5

Data 6 - Data 5

291

0.92

6

Data 7 - Data 6

265

0.65

7

Data 8 - Data 7

270

0.81

8

Data 9 - Data 8

271

0.94

9

Data 10 - Data 9

278

0.7

10

Data 11 - Data 10

253

0.8

11 Data 12 - Data 11

250

0.81

12

Data 13 - Data 12

269

0.69

13

Data 14 - Data 13

285

0.95

14

Data 15 - Data 14

246

0.64

15

Data 16 - Data 15

247

0.89

16

Data 17 - Data 16

256

0.80

17

Data 18 - Data 17

349

0.79

18

Data 19 - Data 18

266

0.84

19

Data 20 - Data 19

288

0.70

20

Data 21 - Data 20

256

0.80

21

Data 22 - Data 21

294

0.84

(51)

Tabel 3.2 (Lanjutan) selisih setiap kenaikan putaran motor dan kenaikan tegangan

tachogenerator

No

Selisih data

pengamatan untuk

setiap kenaikan

Selisih setiap kenaikan

putaran

(RPM)

Selisih setiap kenaikan

tegangan

(Volt)

22

Data 23 - Data 22

269

0.65

23

Data 24 - Data 23

275

0.69

24

Data 25 - Data 24

264

0.87

25

Data 26 - Data 25

288

0.91

26

Data 27 - Data 26

345

0.72

27

Data 28 - Data 27

248

0.80

28

Data 29 - Data 28

237

0.73

Σ = 7562

Σ = 22.16

rata-rata kenaikan putaran =

data

jumlah

putaran

kenaikan

ap

selisih ti

jumlah

=

270

,

071

28

7562 =

RPM ≈ 270 RPM

rata-rata kenaikan tegangan =

data

jumlah

gangan

selisih te

Jumlah

volt

7914

.

0

28

16

.

22

=

=

≈ 0.79 volt

Sehingga didapatkan data pada tabel 3.1 (yang di tandai dengan huruf

tebal). Untuk putaran motor 10271 RPM output yang dihasilkan oleh

tachogenerator adalah 31.61 Volt. Karena tegangan yang di hasilkan terlalu besar

maka diperlukan pengkondisi sinyal agar bisa disesuaikan dengan ADC pada

mikrokontroler.

(52)

Dari tabel 3.1 ternyata sinyal keluaran dari tachogenerator ternyata lebih

besar dari tegangan pada ADC pada mikrokontroler. Agar sinyal keluaran dapat

diterima oleh ADC maka diperlukan rangkaian pembagi tegangan.

Gambar 3.7 Rangkaian pembagi tegangan

Untuk mencari nilai Vout maka digunakan rangkaian pembagi tegangan

dari data diketahui Vin = 31.61 volt. Untuk R1 ditetapkan terlebih dahulu yaitu

sebesar 10k Ω sehingga untuk mencari R2 agar Vout = 5 volt :

Vin

R

R

R

Vout

1

2

1

+

=

Vin

R

R

R

Vout

.(

2

+

1

)

=

1

.

61

.

31

.

10

)

10

2

.(

5

R

+

K

=

k

k

R

k

R

k

R

k

K

R

22

.

53

2

1

.

266

2

5

50

1

.

316

2

5

1

.

316

50

2

5

=

=

=

=

+

Karena nilai R2 = 53.22k Ω tidak ada dipasaran, maka digunakan potensiometer

100k Ω .

(53)

Kecepatan putaran motor yang akan diukur harus mampu mengukur hingga

10000 rpm, pada perancangan ADC ini penulis merancang kecepatan putaran

motor sebesar 10230 rpm, dengan resolusi 10 sehingga ADC yang diperlukan

untuk mendapat kan resolusi adalah:

Jumlah perubahan bit =

resolusi

T

Δ

sehingga:

Jumlah perubahan bit =

10

0

10230

=1023

Dari persamaan diatas didapat 1023 perubahan bit sehingga ADC yang

dibutuhkan minimal 2

10

= 1024 perubahan bit, PIC16F877 adalah mikrokontroler

yang mempunyai ADC internal 10 bit, sehingga untuk resolusi seperti diatas

ADC pada mikrokontroler tersebut masih dapat menangani.

III.5 Perancangan Antarmuka LCD Dengan Mikrokontroler

LCD yang digunakan pada perancangan ini adalah LCD 2 x 16 karakter

dengan driver HD47780U. LCD digunakan sebagai penampil yang memberikan

informasi tentang nilai hasil pengukuran motor. Hasil pengukuran motor diukur

dalam satuan RPM (rotation per minute). Gambar 3.6 dibawah ini merupakan

rangkaian antarmuka antara LCD dengan mikrokontroler..

(54)

PIC16F877 19 18 17 24 23 22 16 21 9 10 11 20 12 13 14 15 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 1 2 3 4 5 6 7 8 RD0/PSP0 RC3/SCK/SCL RC2/CPP1 RC5/SDO RC4/SDI/SDO RD3/PSP3 RC1/T1OSI RD2/PSP2 RE1/WR/AN6 RE2/CS/AN7 VDD RD1/PSP1 VSS OSC/CLKIN OSC2/CLKOUT RC0/T1OSO RB7/PGD RB6 RB5 RB4 RB3 RB2 RB1 RB0/INT VDD1 VSS1 RD7/PSP7 RD6/PSP6 RD5/PSP5 RD4/PSP4 RC7/RX/DT RC6/TX/CK MCLR/VPP RA0/AN0 RA1/AN1 RA2/AN2/Vref -RA3/AN3/Vref + RA4/TOCK1 RA5/AN4/SS RE0/RD/AN5 D KONTRAS 1 3 2 +5V C 5 C1 22p K H I H C J B 16 G I LC D 2X 16 F 1 10 4 6 7 9 E G E D B A 2 12 K J 8 3 C2 22p A 11 14 4MHz 15 F +5V

Gambar 3.8 Antarmuka LCD dengan Mikrokontroler

Dalam menampilkan besarnya nilai pengukuran serta karakter yang akan

dipakai maka akan dirancang tampilan berupa nama dan nomor mahasiswa, judul

skripsi, dan tampilan pengukuran dalam satuan RPM.

Urutan tampilan yang akan di tampilkan dalam LCD :

Gambar 3.9 Tampilan nama dan nama mahasiswa

(55)

Setelah power di on-kan pertama-tama yang tertampil adalah tampilan judul

nama dan nomor mahasiswa (gambar 3.9 ) kemudian tampilan untuk proses

pegukuran dengan satuan RPM (gambar 3.10).

III.6 Rangkaian Reset

Pada perancangan ini waktu reset 100 ms dengan menggunakan nilai

kapasitor C = 10 uF maka nilai resistansi dapat dihitung sebagai berikut :

FxR

ms

10

μ

100

=

ΚΩ

=

=

10

10

.

10

10

.

100

6 3

R

Sehingga rangkaiannya menjadi:

J E G H SW1 TOMBOL RESET A D PIC16F877 19 18 17 24 23 22 16 21 9 10 11 20 12 13 14 15 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 1 2 3 4 5 6 7 8 RD0/PSP0 RC3/SCK/SCL RC2/CPP1 RC5/SDO RC4/SDI/SDO RD3/PSP3 RC1/T1OSI RD2/PSP2 RE1/WR/AN6 RE2/CS/AN7 VDD RD1/PSP1 VSS OSC/CLKIN OSC2/CLKOUT RC0/T1OSO RB7/PGD RB6 RB5 RB4 RB3 RB2 RB1 RB0/INT VDD1 VSS1 RD7/PSP7 RD6/PSP6 RD5/PSP5 RD4/PSP4 RC7/RX/DT RC6/TX/CK MCLR/VPP RA0/AN0 RA1/AN1 RA2/AN2/Vref -RA3/AN3/Vref + RA4/TOCK1 RA5/AN4/SS RE0/RD/AN5 I R1 10K +5V B K F C C3 CAP

(56)

III.7 Perancangan Perangkat Lunak

Dalam perancangan perangkat lunak ini penulis meggunakan beberapa

subroutine yang masing-masing memiliki fungsi sendiri. Subroutine ini

mempermudah dalam pengecekan program saat program diekseskusi dan juga

mudah untuk dipanggil kembali saat diperlukan. Dibawah ini merupakan

diagaram alir utama dari alat ukur putaran motor:

(57)

III.8 Penjelasan Diagram Alir Utama

Setelah mendapat gambaran yang jelas tentang perangkat keras (berupa

rangkaian lengkap), maka perangkat lunaknya akan dibuat menyesuaikan

perangkat keras. Perangkat lunak berupa susunan program yang berbasiskan pada

bahasa pemrograman khusus mikrokontroler PIC16F877. Program yang dipakai

secara garis besar dibagi menjadi dua bagian yaitu program utama dan routine

penanganan interupsi, yang didukung oleh routine-routine. Subroutine ini

digunakan untuk mempermudah dalam pengecekan program saat program

diekseskusi dan juga mudah untuk dipanggil kembali saat diperlukan.

III.8.1. Diagram Alir Program Utama

Program utama merupakan bagian yang dikerjakan saat mikrokontroler

diberi catu daya atau saat mikrokontroler di reset. Program dimulai dengan proses

inisialisasi antara lain adalah inisialisasi alamat data dan dan inisialisasi PORT

I/O, inisialisasi LCD. Untuk langkah selanjutnya adalah menampilkan tampilan

tunggu berupa nama dan nomor mahasiswa kenudian tampilan proses pengukuran.

Jika sensor tachogenerator mulai berputar maka dilakukan proses pengukuran.

Setelah proses pengukuran selesai, kemudian hasilnya akan di tampilkan

sebagai kecepatan putaran motor dalam RPM. Langkah selanjutnya, jika tombol

reset ditekan maka program akan meng-nol-kan (reset) tampilan, dan melakukan

proses dari awal.

Untuk proses pengolahan data pada mikrokontroler agar data dapat di

tampilkan pada layar LCD2x16 digambarkan dengan diagram alir seperti pada

gambar 3.13. Program dimulai dengan inisialisasi LCD, kemudian ADC pada

(58)

mikrokontroler akan mulai membaca tegangan keluaran dari pembagi tegangan

dan mengubahnya menjadi data biner (sinyal digital).

Sebelum ditampilkan ke LCD, data-data biner ini terlebih dahulu harus

diubah menjadi nilai-nilai rpm dengan proses konversi. Nilai –nilai rpm tersebut

masih dalam bentuk hexa. Untuk beberapa proses tertentu seperti kalkulasi data,

bentuk hexa ini sudah dapat diproses. Namun agar dapat ditampilkan ke LCD

dengan bentuk bilangan yang dikenali umum, yaitu bentuk bilangan desimal,

maka terlebih dahulu dilakukan proses konversi dari hexa de desimal dan

dilanjutkan ke bentuk ASCII.

Agar nilai RPM yang tampil pada layar LCD dapat terlihat dengan jelas,

program akan menambahkan waktu tunda selama satu detik sebelum proses

pengambilan nilai rpm yang baru dilakukan. Oleh karena itu, perubahan rpm akan

dideteksi setelah waktu tunda selama satu detik tersebut terlewati.

(59)

Inisialisasi LCD

Ambil data ADC

Konversi nilai

tegangan ke RPM

Konversi ke

desimal

Konversi ke

ASCII

Tampilkan ke lcd

Tunda 1 detik

Gambar 3.13 Diagaram alir proses pengolahan pada mikrokontroler

agar data dapat ditampilkan ke LCD

(60)

BAB IV

DATA DAN PEMBAHASAN

IV.1. Hasil Akhir Perancangan

Bentuk perangkat keras dari alat ukur kecepatan putaran motor dapat

dilihat pada gambar 4.1 .

Gambar 4.1 Alat ukur kecepatan putaran motor

Cara kerja alat :

Berikut akan dijelaskan bagaimana alat ukur kecepatan putaran motor

akan di jalankan :

1. Pertama-tama sambungkan alat ke jala-jala listrik 220volt, alat di sini telah

terpasang catu daya. Kemudian tekan tombol power untuk menghidupkan

alat tersebut.

2. Setelah alat menyala akan muncul tulisan pada LCD berupa tampilan

nama dan nomor mahasisiwa gambar 3.9. Kemudian tampilan untuk

proses pengukuran gambar 3.10

(61)

3. Setelah muncul tampilan proses pengukuran maka alat sudah siap untuk

melakukan proses pengukuran. Jika sensor tachogenerator mulai

berputar, maka proses pengukuran dimulai.

4. Untuk kembali ketampilan awal kita tekan tombol reset.

IV. 2 Pengukuran Kecepatan Putaran Motor Dengan Multimeter

Untuk membandingkan hasil pengukuran dari perangkat ini menggunakan

multimeter sebagai acuannya. Multimeter yang digunakan sanwa PC510, dimana

multimeter ini dapat mengukur frekuensi. Pengukurannya menggunakan sensor

berupa optokopler dan piringan bercelah dengan jumlah celah sebanyak 60 celah.

Gambar 4.2 Pengukuran kecepatan putaran motor dengan multimeter

Cara mengamati dan mengambil data adalah : probe dari multimeter

dihubungkan dengan keluaran dari sensor optokopler. Saat motor yang akan

diukur mulai berputar maka pengukuran dapat terlihat langsung pada multimeter

berupa frekuensi. Dari persamaan (3.1), kita bisa mengetahui berapa kecepatan

motor yang akan diukur dalam RPM.

(62)

Untuk membandingkan hasil pengukuran, maka motor yang akan diukur

dihubungkan dengan sensor tachogenerator seperti gambar 4.3.

Gambar 4.3 Pengukuran kecepatan putaran motor menggunakan

alat ukur dan multimeter

IV.3 Perbandingan Data Hasil Pengukuran Menggunakan Multimeter

Terhadap Data Pengukuran Dengan Alat

Pada saat motor yang akan diukur berputar maka tachogenerator dan

piringan cacah ikut berputar (gambar 4.3) sehingga didapatkan data hasil

pengukuran :

Tabel 4.1 Perbandingan data pengukuran dengan alat ukur dan multimeter

Perhitungan Kesalahan

Percobaan

Pengukuran

dengan alat

(rpm)

Pengukuran dengan

multimeter

(rpm)

E (rpm)

ε

(%)

1 240

275 35

12,72

2 1080 1065 15

1.4

3 1410 1509 99

6.56

4 1910 2027 117

5.77

5 2450 2496 46

1.84

6 2870 3093 223

7.2

(63)

Tabel 4.1 (Lanjutan) Perbandingan data pengukuran dengan alat ukur dan

multimeter

Perhitungan Kesalahan

Percobaan

Pengukuran

dengan alat

(rpm)

Pengukuran dengan

multimeter

(rpm)

E (rpm)

ε

(%)

7 3330 3546 216

6.1

8 3780 4020 240

5.97

9 4200 4533 333

7.34

10 5350

5588 238

4.3

11 5510

5705 195

3.41

12 6100

6460 360

5.57

13 6300

6565 265

4.03

Pada percobaan 1 sampai 13, data diambil dari masukan tegangan output

tachogenerator pada saat motor yang diukur berputar. Dengan membandingkan

hasil pengukuran dengan multimeter kita dapat mengetahui berapa selisih

pengukurannya dan kesalahan (error) pada alat yang kita buat

Grafik perbandingan pengukuran kecepatan putaran motor menggunakan multimeter terhadap alat ukur

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 0 1000 2000 3000 4000 5000 6000 7000

Pengukuran dengan multimeter (RPM)

P e ngukur an deng an alat u k ur (RPM )

Pengukuran dengan multimeter Pengukuran dengan alat ukur

Gambar 4.4 Grafik perbandingan pengukuran kecepatan putaran motor

menggunakan multimeter terhadap alat ukur

(64)

Dari gambar (4.4), terlihat perbedaan data antara pengukuran dengan alat

ukur dan pengukuran dengan multimeter. Perbedaan terbesar pada saat motor

berputar pada kecepatan 4020 RPM (pengukuran dengan multimeter).

Dari tabel 4.1 pengukuran hanya mampu pada kecepatan putaran motor

sebesar 6300 RPM, Hal ini terjadi karena motor yang diukur tidak mampu untuk

mencapai kecepatan hingga 10000 RPM. Untuk membuktikan bahwa alat ukur

ini mampu mengukur hingga 10000 RPM, dilakukan percobaan 14 sampai 38.

Percobaan dilakukan dengan memberikan masukan kepada alat ukur berupa

tegangan. Data di perlihatkan pada tabel 4.2 .

Tabel 4.2 Percobaan dengan memberikan input alat ukur berupa tegangan

Percobaan

Tegangan input (Volt)

Pengukuran dengan alat ukur

(RPM)

14 20

6420

15 21

6800

16 22

7110

17 23

7450

18 24

7760

19 25

8100

20 26

8420

21 27

8740

22 28

9060

23 29

9380

24 30

9710

37 31

10020

38 31.5

10200

Dari tabel 4.2 di atas, dapat dilihat bahwa alat ukur yang dirancang

mampu mengukur hingga 10000 RPM. Hal ini dilakukan dengan memberikan

input tegangan kepada alat ukur sesbesar 31.5 Volt. Sehingga dapat disimpulkan

bahwa alat ukur yang dirancang bisa mengukur kecepatan putaran motor hingga

10000 RPM.

Gambar

Gambar 2.7 Reset active low
Tabel 2.3 Kemampuan yang ada pada PIC16F877 yaitu sebagai berikut :                                             FITUR PIC16F877
Gambar 2.9 Arsitektur mikrokontroler PIC16F877
Gambar 3.4  Motor tachogenerator   Keterangan gambar :
+7

Referensi

Dokumen terkait

Siapa saja dan berapa banyak partisipan yang terlibat dalam aksi kolektif tersebut.. Dan bagaimana hubungan dari individu yang

Pada Adobe Photoshop, seperti juga pada program lain, perintah undo berfungsi untuk membatalkan perintah yang telah Anda lakukan.. Pada umumnya, fasilitas ini hanya mampu

Menurut pasal 60 pada bagian ketiga UU mengenai tata cara penggunaan Lagu Kebangsaan, cara bersikap saat menyanyikan pun telah diatur dengan jelas: (1) lagu kebangsaan

Sekolah berperan penting dalam membentuk karakter wirausaha siswa karena setengah hari siswa dihabiskan dalam lingkungan sekolah dan apa yang telah ditanamkan di

bertujuan untuk mengatur tata kelola klinis ( clinical governance ) yang baik agar mutu pelayanan medis dan keselamatan pasien di rumah sakit lebih terjamin dan.. terlindungi

Penerapan prinsip syariah, ujrah, dan pelayanan secara simultan mempengaruhi minat nasabah pengguna jasa Rahn dan Ijarah pada Kantor Cabang Pegadaian Syariah

persepsi siswa tentang kepribadian guru terhadap sikap tawadhu pada siswa 3 Hubungan Perilaku Tawadlu‟ Siswa Terhadap Guru Dengan Perilaku Sosial Siswa Di Mts Sudirman

Berdasarkan tabel 5.6 di atas, dapat diketahui bahwa tingkat kepatuhan perawat dalam melakukan kebersihan tangan pada moment sebelum kontak dengan pasien berada