• Tidak ada hasil yang ditemukan

TA : Perancangan dan Pembuatan Alat Pengidentifikasi Karakteristik Motor DC.

N/A
N/A
Protected

Academic year: 2017

Membagikan "TA : Perancangan dan Pembuatan Alat Pengidentifikasi Karakteristik Motor DC."

Copied!
87
0
0

Teks penuh

(1)

PENGIDENTIFIKASI KARAKTERISTIK MOTOR DC

Oleh :

Nama : ARDIAN FITRIANTO NIM : 98.41020.9070

Program : S1 (Strata Satu) Jurusan : Sistem Komputer

SEKOLAH TINGGI

MANAJEMEN INFORMATIKA & TEKNIK KOMPUTER SURABAYA

(2)

vii

Halaman

ABSTRAKSI iv

KATA PENGANTAR v

DAFTAR ISI vii

DAFTAR TABEL ix

DAFTAR GAMBAR x

DAFTAR SINGKATAN xi

DAFTAR LAMPIRAN xii

BAB I PENDAHULUAN 1

1.1 Latar Belakang Masalah 1

1.2 Perumusan Masalah 2

1.3 Pembatasan Masalah 2

1.4 Tujuan 3

1.5 Kontribusi 3

1.6 Sistematika Penulisan 4

BAB II LANDASAN TEORI 6

2.1 Motor DC 6

2.1.1 Prinsip kerja Motor DC 8

2.1.2 Kecepatan Motor DC 10

2.1.3 Karakteristik Motor DC 11

2.2 Fungsi Alih 14

2.2.1 Step input (tanggapan tangga atau unit step) 15

2.2.2 PRBS input 16

2.3 PPI 8255 17

2.4 DAC 0808 21

2.5 ADC 0804 24

2.6 Tachogenerator 25

2.7 Rangkaian Penyearah dan Rangkaian Pelemah 27

2.8 Driver Motor DC 29

2.9 Borland Turbo C++ 30

2.10 MATLAB 31

BAB III METODE PENELITIAN 32

3.1 Perancangan Aplikasi Identifikasi Karakteristik Motor

DC 33

3.1.1 Perencanaan dan pembuatan program 34

3.1.2 Inisialisasi pada program 35

3.2 Perancangan Perangkat Lunak Untuk Identifikasi

Sistem Secara Statis 37

3.2.1 Prosedur ambil data 37

3.2.2 Prosedur rata – rata data 38

3.2.3 Prosedur mid untuk mencari suatu nilai dalam

file 40

(3)

viii

3.3 Perancangan Perangkat Lunak Untuk Identifikasi

Sistem Secara Dinamis 45

3.3.1 Prosedur pembangkitan deret PRBS 46 3.4 Perancangan Dan Pembuatan Perangkat Keras 47

3.4.1 PPI 49

3.4.2 DAC 51

3.4.3 ADC 52

3.4.4 Driver Motor DC 54

3.4.5 Rangkaian penyearah dan rangkaian pelemah 55

BAB IV PENGUJIAN DAN EVALUASI SISTEM 57

4.1 Prosedur Pengujian Perangkat Keras 57

4.1.1 PPI 57

4.1.2 DAC 59

4.1.3 ADC 61

4.1.4 Driver Motor DC 62

4.1.5 Rangkaian Penyearah 63

4.1.6 Rangkaian Pelemah 64

4.1.7 Tachogenerator 65

4.2 Pengujian perangkat lunak 66

4.2.1 Identifikasi secara statis 66

A Ambil data 67

B Rata – rata data 68

C Analisa data 69

4.2.2 Identifikasi secara dinamis 70 4.3 Hasil pengujian pada alat yang terintegrasi 71

BAB V PENUTUP 82

5.1 Kesimpulan 82

5.2 Saran 82

DAFTAR PUSTAKA 83

(4)

1

PENDAHULUAN

1.1 Latar Belakang Masalah

Untuk dapat meraih suatu tujuan yang dikehendaki, akhir – akhir ini dunia industri diperhadapkan pada suatu persaingan (kompetisi). Kompetisi dapat meliputi kemampuan menggunakan alat – alat yang lebih handal, efisien, akurat, murah dan pengaruhnya terhadap peningkatan produksi. Alat – alat industri yang dipakai sekarang ini masih banyak menggunakan Motor AC dan DC sebagai penggerak utama dalam aktivitasnya, Motor DC saat ini banyak digunakan terutama untuk sistem penggerak dengan daya yang tidak terlalu besar pada industri.

Motor DC merupakan perangkat analog yang komponen utamanya terdiri atas magnet dan kumparan dimana pada waktu arus listrik ini mengalir dapat menyebabkan terjadinya induksi dalam kumparan dengan magnet dalam Motor tersebut sehingga batang poros dapat berputar. Motor juga sebagai

transducer yang mengubah energi listrik menjadi energi mekanik. Tergantung pada konfigurasi antara beban dan poros Motor, beban akan bergerak secara rotasi maupun translasi, atau mungkin bentuk gerakan yang tak beraturan. Tanpa memadang tipe gerakan, torsi dan kecepatan yang terjadi pada beban dapat dikonversikan menjadi kerja dan daya mekanik (Bahan Pelatihan Nasional, 2002).

(5)

Untuk penggunaaan yang umum, Motor DC diklasifikasikan berdasarkan eksitasi medannya dan ada yang dieksitasi secara seri, shunt, dan terpisah.

Untuk menghindari kerusakan dan kemudahan dalam desain sistem kontrol pada plant, Motor DC, diusulkan dalam tugas akhir ini suatu metode identifikasi sistem atau plant. Persamaan model dari sistem atau plant merupakan hasil yang didapat dari proses identifikasi. Persamaan tersebut dapat dipakai selanjutnya untuk desain controller yang dikehendaki atau sebagai informasi awal yang terpercaya tentang sistem yang hendak di desain controller-nya.

Dalam Tugas akhir ini akan dibahas penggunaan pemrograman komputer yang menerapkan algoritma dan metode identifikasi dengan menggunakan bahasa pemrograman Turbo C++, sehingga didapatkan suatu persamaan yang menggambarkan perilaku dinamis (persamaan model) dari Motor DC yang dimaksud.

1.2

Perumusan Masalah

Permasalahan dalam tugas akhir ini adalah bagaimana merancang suatu peralatan yang dapat mengidentifikasi persamaan dinamika Motor DC tertentu, untuk dapat mengembangkan desain controller-nya. Permasalahan selanjutnya adalah menentukan kelebihan dan kekurangan dari peralatan hasil rancangan tersebut.

1.3

Pembatasan Masalah

Batasan masalah yang dibahas dalam tugas akhir ini adalah :

(6)

berasal dari satu pabrik dan 1 Motor yang berbeda dengan kedua Motor tersebut).

2. Sebuah program kontrol yang akan dibuat diharapkan menerapkan konsep yang sedekat mungkin dengan real time, dengan bahasa pemrograman Borland Turbo C++ V3.0.

3. Identifikasi sistem dilakukan secara statis dan dinamis, untuk yang statis hasil fungsi alihnya langsung didapat dari program dan divisualisasikan di layar monitor. Untuk yang dinamis software dirancang hanya untuk mengambil data, pengolahannya dilakukan dengan MATLAB untuk mendapatkan fungsi alihnya.

4. Sensor yang digunakan di sisi output Motor DC adalah Tachogenerator. 5. Identifikasi yang dilakukan tidak sampai menemukan error, untuk validasi

hanya sebatas membandingkan data rata – rata hasil ekperimen dengan data hasil simulasi dengan MATLAB.

1.4 Tujuan

Tujuan pembuatan Tugas Akhir ini adalah merancang dan membuat suatu alat yang dapat mengidentifikasi persamaan model dinamika dari sebuah Motor DC.

1.5 Kontribusi

(7)

Dalam tugas akhir ini obyek penelitiannya adalah kecepatan dari motor DC. Kecepatan disini direpresentasikan dengan persamaan dinamika Motor DC. Persamaan dinamika Motor DC biasanya dapat diperoleh dengan menggunakan sistem manual yakni dengan melakukan perhitungan – perhitungan yang memakan banyak waktu. Untuk menemukan persamaan Motor DC secara manual semua parameter yang diperlukan harus telah terukur.

Dalam tugas akhir ini ditawarkan suatu sistem yang dapat menghasilkan suatu persamaan karakteristik Motor DC yang sudah terkomputerisasi (bukan manual). Selain menghemat waktu proses, identifikasi sistem dengan bantuan program komputer tidak dapat diragukan lagi dalam ketepatan perhitungannya.

Selain hal diatas tugas akhir ini dibuat dengan harapan untuk mengembangkan penelitian bidang pemodelan sistem dinamis, berkontribusi demi mendorong pengembangan penerapan ilmu kontrol Motor DC

1.6 Sistematika Penulisan

Buku ini disusun secara sistematis dalam lima Bab yang masing-masing terdiri dari beberapa Sub Bab. Secara ringkas materi tersebut diuraikan sebagai berikut:

Bab I : Pendahuluan

Berisi latar belakang pembuatan tugas akhir, perumusan masalah, pembatasan masalah, tujuan tugas akhir, kontribusi, dan sistematika penulisan.

Bab 11 : Landasan Teori

(8)

fungsi alih, Tachogenerator serta bahasa pemrograman Borland Turbo C++.

Bab III : Metode Penelitian

Disini akan dibahas mengenai perancangan dan pembuatan proses sistem kendali Motor DC yang meliputi pembuatan algoritma, sistem kerja tiap rangkaian, alur kerja dari tiap komponen.

Bab IV : Pengujian Dan Evaluasi Sistem

Merupakan pengujian terhadap perangkat lunak dan perangkat keras serta pengujian yang hasilnya dapat dijelaskan dalam bentuk angka atau gambar. Kemudian analisa yang bisa diambil dari hasil penelitian.

Bab V : Penutup

(9)

6

LANDASAN TEORI

Dalam bab ini diuraikan teori yang meliputi hardware dan software pembentuk alat yang dirancang. Hardware yang dimaksud adalah Motor DC, PPI8255, DAC0808, ADC0804, Tachogenerator, Rangkaian Penyearah, Rangkaian Pelemah serta Driver Motor DC. Software yang akan dipakai dan dijelaskan disini adalah Borland Turbo C++ V3.0 dan MATLAB. Selain itu juga diuraikan teori - teori yang berkenaan dengan identifikasi sistem yang dirancang dan dibuat. Selanjutnya akan dijelaskan secara rinci dibawah ini.

2.1 Motor DC

Motor DC (Direct Current) adalah sebuah mesin yang mengubah energi listrik menjadi energi mekanis, dengan menggunakan sumber tegangan arus searah atau DC. Motor bekerja karena ada gaya yang bekerja pada konduktor yang dilewatkan medan arus dan medan magnet yang ditimbulkan oleh angker dinamo (Bahan Pelatihan Nasional, 2002). Angker dinamo adalah sebutan untuk komponen yang berputar di antara medan magnet.

(10)

Gambar 2.1 Motor DC sederhana

Komponen – komponen Motor DC sederhana antara lain adalah :

1. Angker dinamo terdiri dari beberapa lilitan kawat yang menghasilkan medan magnet jika dialiri arus. Angker dinamo dapat berputar dengan bebas pada porosnya yang disangga oleh bantalan poros pada kedua ujungnya.

2. Komutator terpasang pada ujung batang atau poros angker dinamo. Komutator terbuat dari dua semen tembaga yang dihubungkan dengan konduktor angker dinamo. Kedua segmen komutator diisolasi satu sama lain maupun terhadap poros. Komutator merubah arah aliran arus menuju angker agar angker dinamo dapat selalu berputar.

3. Sikat biasanya terbuat dari campuran tembaga karbon dan ditempelkan pada komutator dengan didorong oleh pegas. Sikat mengalirkan arus dari catu daya DC pada angker dinamo yang berputar.

(11)

2.1.1 Prinsip kerja Motor DC

Jika arus lewat pada suatu konduktor, timbul medan magnet di sekitar konduktor. Arah medan magnet ditentukan oleh arah aliran arus pada konduktor. Aturan Genggaman Tangan Kanan bisa dipakai untuk menentukan arah garis fluks di sekitar konduktor. Genggam konduktor dengan tangan kanan dengan jempol mengarah pada arah aliran arus, maka jari-jari anda akan menunjukkan arah garis fluks (Bahan Pelatihan Nasional, 2002).

Gambar 2.2. Medan magnet mengelilingi konduktor dan diantara kutub.

Medan magnet hanya terjadi di sekitar sebuah konduktor jika ada arus mengalir pada konduktor tersebut. Jika konduktor berbentuk U (angker dinamo) diletakkan di antara kutub Utara dan Selatan yang kuat medan magnet konduktor akan berinteraksi dengan medan magnet kutub. Lihat gambar di bawah ini :

(12)

Lingkaran bertanda 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 di bawah konduktor. Konduktor akan berusaha bergerak ke 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 di atas konduktor. Konduktor akan berusaha untuk bergerak turun agar keluar dari medan yang kuat tersebut. Gaya - gaya tersebut akan membuat angker dinamo berputar searah jarum jam.

Tegangan catu daya DC dihubungkan pada angker dinamo melalui sikat yang menempel pada komutator. Secara otomatis komutator membalik hubungan antara angker dinamo dan catu daya DC sehingga konduktor berputar pada arah yang tepat terhadap medan magnet, maka angker dinamo akan selalu berputar.

(13)

2.1.2 Kecepatan Motor DC

Kecepatan Motor dipengaruhi oleh kekuatan fluks medan magnet, arus angker dinamo dan jumlah konduktor, serta nilai EMF balik yang ditimbulkan. (Bahan Pelatihan Nasional, 2002). Gambar 2.4 menunjukkan magnet permanen Motor DC. Pengontrolan torsi atau kecepatan dilakukan dengan merubah tegangan catu daya angker dinamo.

Torsi tergantung pada jumlah dan ukuran konduktor pada kedua kumparan maupun pada angker dinamo. Konduktor berat dan besar memiliki resistansi listrik sangat rendah memungkinkan arus yang besar mengalir dalam Motor dan menghasilkan torsi awal yang besar (Motor starter).

Gambar 2.4. Motor magnet permanen.

(14)

juga bergantung pada susunan lilitan. Macam lilitan antara lain seri, melangsir dan komposit (gabungan), tiap lilitan mempunyai karakteristik berbeda.

2.1.3 Karakteristik Motor DC

Actuator yang umum di gunakan dalam sistem kontrol adalah Motor DC, karena secara langsung menyediakan gerak putar dan juga dapat menghasilkan gerak transisi (Control Tutorial For MATLAB, 1997), selain itu putaran yang dihasilkan juga halus. Rangkaian elektriknya dapat di gambarkan seperti di bawah ini :

Gambar 2.5. Rangkaian elektrik dari Motor DC

Untuk contoh, dapat diasumsikan nilai-nilai berikut untuk parameter fisik, nilai – nilai ini diperoleh dari percobaan yang diadakan di Carnegie Mellon's Undergraduate Controls Lab (Regents of the University of Michiganian , 1996).

1. Momen inertia dari Motor (J) = 0,01 Kg.m2/detik2

2. Dampingratio dari sistem mekanik = 0,1 Nm.detik

3. Konstanta elektromotoris ( K = Ke = Kt) = 0,01 Nm/Amp

(15)

5. Induktansi (L) = 0,5 H

6. Input (V) = sumber tegangan DC (Volt)

7. Output (Θ) = kecepatan putaran motor (rpm)

Torsi Motor T, di hubungkan dengan arus jangkar i, konstanta Kt, EMF balik e, di hubungkan dengan percepatan putaran, akan menghasilkan suatu persamaan :

i K

Tt (2.1)

.

  Ke

e (2.2)

Dalam satuan SI, Kt (konstanta armature) sama dengan Ke (konstanta Motor), dari gambar 2.5 didapat persamaan yang berdasarkan pada Hukum ke -3 Newton, yaitu setiap gaya yang diadakan pada suatu benda, menimbulkan gaya lain yang sama besarnya dengan gaya tadi, namun berlawanan arah (Darmawan, 1988 : 34) dan Hukum Kirchhoff untuk rangkaian, yaitu dalam lintasan (loop) yang tertutup, jumlah aljabar beda potensial adalah nol. Dengan catatan bila potensial naik, beda potensial dihitung positif dan bila potensial turun dihitung negatif (Darmawan, 1988 : 208) sebagai berikut :

JbKi

  

(2.3)

  

Ri V K

dt di

L (2.4)

Dari rumus diatas, dengan transformasi Laplace dalam domain s dapat ditulis sebagai berikut :

) ( ) ( )

(Js b s KI s

(16)

)

Karena dua persamaan tersebut sama – sama mempunyai nilai I(s), maka kedua persamaan tersebut dapat di gabung dan menghasilkan fungsi alih dari open

loop system, dimana putaran baling - baling Motor sebagai output dan tegangan sebagai input : grafik step response open loop system seperti Gambar 2.6 dibawah. Dari persamaan fungsi alihnya dapat diperoleh persamaan state space-nya dengan menggunakan kecepatan putaran dan arus listrik sebagai state variable dan tegangan sebagai input, output-nya nanti dalam bentuk kecepatan putaran :

(17)

Gambar 2.6. Step response untuk open loop system

Grafik diatas merupakan perwujudan dari fungsi alih yang didapat dari persamaan Motor DC umum.

2.2 Fungsi Alih

Dalam teori kontrol, fungsi yang disebut ¨Fungsi Alih¨ seringkali digunakan untuk mencirikan hubungan masukan – keluaran dari sistem linier parameter konstan. Konsep fungsi alih hanya digunakan pada sistem linier parameter konstan, walaupun dapat diperluas untuk suatu sistem kontrol nonlinier. “Fungsi alih didefinisikan secara jelas sebagai perbandingan dari Transformasi Laplace keluaran (fungsi tanggapan) dan Transformasi Laplace masukan (fungsi penggerak)” (Astrom dan Wittenmark, 1997), dengan anggapan bahwa semua

syarat awal adalah nol.

x b x b x

b x b y a y a y

a y

a m m

m m

n n

n n

 

 

  

 

 

 .

1 )

1 ( 1 ) ( 0 .

1 )

1 ( 1 ) (

0 ... ... (n ≥ m) (2.11)

(18)

Fungsi alih dari sistem ini diperoleh dengan mencari Transformasi Laplace dari kedua ruas persamaan , dengan menganggap bahwa semua syarat adalah nol

Fungsi alih =

Fungsi alih adalah suatu ekspresi yang merelasikan keluaran dan masukan suatu sistem linier parameter konstan dalam bentuk parameter sistem dan merupakan sifat dari sistem itu sendiri, tidak bergantung pada fungsi masukan atau penggerak. Fungsi alih mencakup satuan – satuan yang diperlukan untuk merelasikan masukan dengan keluaran.

Dengan menggunakan konsep ini, kita dapat menyatakan dinamika sistem dengan beberapa persamaan aljabar dalam domain s. Pangkat tertinggi dari s pada penyebut fungsi alih sama dengan orde suku turunan tertinggi dari keluaran. Jika pangkat tertinggi dari s tersebut adalah n, maka sistem tersebut disebut sistem orde ke n.

Hal lain yang berhubungan dengan fungsi alih adalah jenis masukan yang akan diberikan kepada suatu sistem yang menjadi objek. Ada 2 cara yang dapat digunakan, dengan memberikan masukan berupa Unit Step dan masukan PRBS (Pseudo Random Binary Sequence).

2.2.1 Step input (tanggapan tangga atau unit step)

Suatu aspek keluaran y(t) yang disebabkan oleh masukan x(t) disebut sebagai tanggapan dari sistem. Meskipun banyak sekali jenis masukan yang dapat diberikan kepada sistem, tetapi untuk keperluan evaluasi dan analisa sistem, masukan berikut adalah sangat penting, yakni :

(19)

B1 B2 B3 B4 B5

+ 2. Masukan impulse (impulseinput) 3. Masukan sinusoidal (sinosoidalinput)

Point 1 dan 2 sering dipakai untuk menyelidiki tanggapan peralihan dan karenanya menjadi sangat penting. Tanggapan sistem merupakan alat bantu untuk mendefinisi sifat dari sistem, sebagai pertimbangan penentu apakah sifat dari sistem tersebut diinginkan atau tidak diinginkan dalam konteks tertentu yang diketahui.

2.2.2 PRBS

PRBS dibangkitkan oleh shift register dengan feedback yang diimplementasikan pada hardware dan software. Panjang maksimum deret adalah 2N-1 dimana N adalah jumlah sel pada shift register.

Gambar 2.7 dibawah menggambarkan pembangkitan PRBS dengan panjang deret 31 = 25 -1, didapat dengan menggunakan sebuah shift register 5 bit.

(penjumlahan (XOR) modulo 2)

Gambar 2.7. Pembangkitan PRBS panjang 25-1

Perhatikan bahwa sekurang - kurangnya satu sel dari N sel shift register seharusnya mempunyai nilai logika tidak sama dengan nol (satu secara umum membuat semua nilai awal dari N sel sama dengan nilai logika 1/XOR).

(20)

8255 identifikasi sistem.

2.3 PPI 8255

PPI (Programmable Peripheral Interface) 8255 merupakan salah satu

interface yang umum digunakan dalam sistem kontrol, sebagai penghubung komputer dengan peripheral di luarnya. Keunggulan PPI 8255 antara lain adalah :

1. 24 Bit Programmable I/O

2. Kompatibel dengan semua TTL (Transistor - Transistor Logic) 3. Kompatibel dengan semua prosessor INTEL

4. Tersedia dalam 40 pin DIP

PPI 8255 didesain untuk peralatan I/O yang dapat diprogram dengan menggunakan mikroprosesor INTEL. IC (Integrated Circuit) ini mempunyai 24 pin I/O yang dapat diprogram secara terpisah dalam 2 kelompok yang masing-masing terdiri dari 12 bit dan digunakan dalam 3 mode operasi yang utama.

(21)

Diskripsi fungsional PPI 8255 dari INTEL adalah chip parallel yang sederhana. Keuntungan utamanya adalah interface yang sederhana dari 8 bit

bidirectional. PPI mengandung Register Control dan tiga port terpisah yang dapat dialamati, disebut Port A, Port B dan Port C.

Diakses tidaknya PPI ini ditentukan dari sinyal pada pin CS(chip select) dan arah akses sesuai dengan sinyal RD dan WR. Pin A0 dan A1 menentukan register mana yang dialamati.

Fungsi dan kegunaan dari masing - masing pin tersebut adalah sebagai berikut :

1. Pin 27 sampai 34 sebagai D0 sampai D7 adalah bus data yang dihubungkan dengan D0 sampai D7 pada slotISA.

2. Pin 35 sebagai Reset adalah pin kontrol untuk inisialisasi PPI 8255, dihubungkan dengan jalur Reset pada slotISA.

3. Pin 5 sebagai Read adalah pin kontrol untuk menandakan operasi baca oleh komputer ke PPI 8255.

4. Pin 36 sebagai Write adalah pin kontrol untuk menandakan operasi tulis dari komputer ke PPI 8255.

5. Pin 6 sebagai Chips Select adalah pin kontrol untuk menandakan bahwa PPI 8255 sedang ditunjuk untuk menerima atau mengirim data.

6. Pin 8 sampai 9 sebagi Port Select adalah pin alamat untuk memilih register yang akan digunakan pada saat pemrograman IC PPI 8255, dihubungkan pada sebagian jalur alamat dari slot ISA.

7. Pin 1 sampai 4 sebagaiPA3 sampai PA0 adalah 4 bit jalur data dari 8 bit jalur

(22)

8. Pin 37 sampai 40 sebagai PA7 sampai PA4 adalah 4 bit jalur data dari 8 bit jalur Port A sebagai I/O yang akan dihubungkan ke peralatan luar.

9. Pin 18 sampai 25 sebagai PB0 sampai PB7 adalah 8 bit jalur data I/O Port B. 10. Pin 10 sampai 17 sebagai PC0 sampai PC7 adalah 8 bit jalur data I/O Port C. 11. Pin 7 berfungsi sebagai GND (Ground)

12. Pin 26 berfungsi sebagai Vcc (+5V ).

Dari Keterangan diatas, maka sebuah IC PPI8255 mempunyai 3 X 8 bit jalur I/O yang dapat digunakan sebagai input, output, atau kontrol (misalnya untuk sinyal Strobe, Interrupt) ke atau dari peralatan luar

Komponen IC ini termasuk dalam golongan IC LSI (Large Scale

Integrated) atau IC yang mempunyai ukuran besar. IC ini dikemas dalam bentuk DIL (dual in line) dengan memiliki jumlah pin sebanyak 40 buah dan mempunyai jalur input output sebanyak 24 jalur, yang dirancang untuk fungsi I/O pada pemakaian mikrokomputer. Dimana masing-masing pin telah mempunyai fungsi sendiri-sendiri.

Dasar-dasar operasi yang ada pada PPI 8255 berguna untuk menentukan bentuk operasi dari PPI 8255 yang ada pada masing-masing port, baik Port A,

Port B, Port C ataupun Control Word yang dimiliki PPI 8255.

(23)

Tabel 2.1 Operasi dasar dari PPI 8255

A1 A2 RD WR CS Operasi Input (READ) 0 0 0 1 0 READ : Port A ke data bus 0 1 0 1 0 READ : Port B ke data bus 1 0 0 1 0 READ : Port C ke data bus A1 A0 RD WR CS Operasi output (WRITE)

0 0 1 0 0 WRITE: data bus ke Port A 0 1 1 0 0 WRITE: data bus ke Port B 1 0 1 0 0 WRITE: data bus ke Port C

1 1 1 0 0 WRITE : data bus ke Control Word Register (INISIALISASI)

X X X X 1 Data bus 8255 berada dalam kondisi tristate atau PPI tidak difungsikan. 1 1 0 1 0 Kondisi yang tidak mungkin karena CW

hanya bisa untuk WRITE.

X X 1 1 0 Data bus 8255 berada dalam kondisi tristate atau PPI tidak difungsikan.

Mode kerja dari PPI 8255 dioperasikan dalam tiga mode, yaitu:

1. Mode 0 : BasicInput/Output

Mode ini disebut juga mode simple I/O operation. Pada mode 0 port berfungsi sebagai input atau output tanpa strobe. Bila Port A dan B bekerja dalam mode 0, maka Port C dapat bekerja sebagai port 8 bit dan juga dapat bekerja sebagai port 4 bit secara terpisah. Bila digunakan sebagai output, Port C secara terpisah dapat di Set dan Reset dengan mengirim sinyal Control Word tertentu ke alamat Register Control.

2. Mode 1 : StrobedInput/Output

Jika diinginkan Port A dan Port B bekerja sebagai input dan output

(24)

PC6, PC7 berfungsi sebagai sinyal handshake. PC4, PC5 dapat digunakan sebagai jalur input atau output.

3. Mode 2 : Bidirectional Bus

Hanya Port A yang dapat diinisialisasi pada mode 2. Port A dapat digunakan sebagai pemindahan data 2 arah. PC3 sampai PC7 digunakan sebagai jalur strobe untuk Port A dan PC0 - PC2 dapat digunakan sebagai input atau output bila Port B digunakan dalam mode 0. Bila Port B dalam mode 1, maka PC0 - PC2 digunakan sebagai Strobe untuk Port B.

2.4 DAC 0808

DAC (Digital To Analog Converter) berfungsi sebagai media untuk mengkonversikan sinyal digital ke sinyal analog. Sinyal digital disini bisa dari PPI ataupun Mikrokontroler, sedang sinyal analog nantinya akan diproses lebih lanjut oleh Motor ataupun plant lainnnya. DAC 0808 merupakan jenis DAC yang sering digunakan oleh umum dikarenakan dari segi harga tidak terlalu mahal, dan juga memiliki tingkat ketelitian yang bagus.

(25)

DAC ini bersifat monotonik dan juga merupakan DAC tangga R-2R 8-bit yang dilengkapi dengan sumber arus acuan dan delapan buah Transistor saklar untuk mengarahkan arus biner. Suatu tegangan dan hambatan eksternal dipergunakan untuk mengatur arus acuan pada nilai yang biasanya bernilai 2mA. DAC ini memiliki waktu pemantapan (time settling) 150ns dan ketelitian relatif ±1/2 LSB.

DAC 0808 bersifat monotonik artinya DAC ini menghasilkan suatu

output arus yang meningkat untuk setiap masukan digital yang berturut – turut, dan hal inilah yg menjadikannya layak untuk dipakai. Dan ciri lain dari monotonik adalah kesalahan harus lebih kecil daripada ±1/2 LSB pada setiap output-nya, karena dalam keadaan terburuk, sebuah kesalahan +1/2 LSB yang disusul oleh sebuah kesalahan -1/2 LSB akan menghasilkan tingkat kritis yg hampir kehilangan monotonisitas.

Gambar 2.10 Setiap anak tangga sama dengan penambahan satu LSB

DAC memiliki 16 pin atau kaki, sebagai berikut :

1. NC : No Connect, Pin ini tidak memiliki fungsi. Jadi tidak dihubungkan. 2. GND : Ground, sebagai kutub negatif.

(26)

4. IOUT : Saluran balik dari tanah (ground return). Pin ini dihubungkan dengan Op-Amp.

5. D7-D0 : Input data dari sinyal digital 8 bit. 6. Vcc : Dihubungkan dengan catu daya +5V.

7. Vref(+) : dihubungkan dengan catu daya positif melalui R yang memungkinkan anda untuk menetapkan arus acuan (I ref) pada harga 2mA.

8. Vref(-) : dihubungkan ke ground melalui R.

9. Kompensasi frekwensi : sebuah Kapasitor yang di hubungkan dengan Pin 16 dan Pin 3 berfungsi untuk memberikan frekuensi yang cocok untuk DAC ini.

Gambar 2.11. DAC 0808

(27)

menentukan batas kecepatan dalam mengubah berbagai input-an digital, biasanya harganya sekitar nano detik sampai mikro detik.

2.5 ADC 0804

ADC (Analog To Digital Converter ) fungsinya sebagai media untuk mengkonversikan sinyal analog dari alat, plant, ataupun sensor untuk dirubah menjadi sinyal digital sehingga dapat dibaca oleh mikrokontroler ataupun langsung oleh PPI untuk diolah lebih lanjut oleh komputer.

Gambar 2.12. ADC 0804

Fungsi kaki – kaki pada ADC0804 :

1. CS : Sinyal untuk mengaktifkan komponen 2. RD : Sinyal kontrol untuk mengambil data 3. WR : Sinyal kontrol untuk memulai awal konversi 4. CLK – IN : Untuk mengatur besarnya clock internal.

(28)

7. Vin (+) : Input-an analog positif. 8. A – GND : Analog ground.

9. Vref/2 : Setengah tegangan referensi untuk skala penuh . 10. D-GND : Dihubungkan ke ground.

11. – 18. LSB - MSB : Data 8 bit.

19. CKL – R : Untuk mengatur besarnya clock internal. 20. VCC : Tegangan catu daya

Komponen ini menggunakan pendekatan (Succesive approximation) berturut – turut untuk mengkonversi input-an analog dalam jangka waktu tertentu menjadi data digital 8 bit. ADC 0804 mempunyai pembangkit pulsa internal dengan sedikit tambahan komponen eksternal, membutuhkan tegangan sebesar +5V, dan mempunyai waktu konversi optimum sekitar 100 mikro detik.

Tegangan input maksimum yang dapat dikonversikan bergantung pada seberapa besar tegangan pada pin Vref/2 dengan tegangan absolut maksimum sebesar 18V. Apabila pin Vref/2 diberi tegangan sebesar 5V yang berarti data digital FF pada output bersesuaian dengan data analog input sebesar 5V, maka resolusi dari ADC ini adalah 20 mV. Resolusi dalam hal ini adalah perubahan tegangan untuk kenaikan tiap bitnya adalah 20mV, didapat dari rumus :

255 Vref

resolusi (2.13)

2.6 Tachogenerator

(29)

menggunakan alat yang banyak untuk mengetahui output Motor DC tersebut, tetapi output dari Tachogenerator tersebut masih merupakan tegangan AC, sehingga diperlukan Rangkaian Penyearah untuk mendapatkan tegangan DC.

Gambar 2.13 Bagian – bagian dari Tachogenerator.

Gambar 2.14. Karakteristik dari (a) Motor DC dan (b) Tachogenerator

T a c hoge ne ra t or

1. End cap 2. Bearing 3. Housing 4. Magnet

5. Assembly housing 6. Coil

7. Commutator 8. Brush cover

DC M ic rom ot or

9.Brushes 10. Commutator 11.Coil

12.Shaft

(30)

Menurut Servo Fundamentals Trainer untuk Tachogenerator yang umum digunakan untuk menghasilkan sebuah tegangan sebesar 2.5V diperlukan kurang lebih 1000 putaran / menit.

2.7 Rangkaian Penyearah Dan Rangkaian Pelemah

Rangkaian penyearah berfungsi untuk merubah tegangan AC menjadi tegangan DC. Rangkaian ini memiliki 2 kelompok :

1. Penyearah Setengah Gelombang.

Pada bentuk yang paling sederhana, penyearah setengah gelombang dapat dibuat dengan menghubungkan sebuah Dioda secara seri dengan catu daya AC dan tahanan beban. Disini Dioda hanya mengalirkan arus selama setengah gelombang catu AC.

(31)

2. Penyearah Gelombang Penuh.

Untuk golongan ini sumber AC akan memanfaatkan kedua setengah gelombang, positif maupun negatif. Setengah gelombang negatif akan terbalik, sehingga di dapat gelombang satu arah. Disini di butuhkan 2 Dioda serta Kapasitor. Keuntungan yang didapat adalah lebih efisien, hanya sedikit menimbulkan magnetisasi DC, dan tegangan kerutnya mempunyai frekuensi dua kali frekuensi catu. Metode lainnya dengan menggunakan Rangkaian Jembatan (Diode Bridge), disini dibutuhkan 4 Dioda, Resistor dan Kapasitor. Gambar 2.15 dibawah menunjukkan proses perubahan tegangan AC ke tegangan DC dengan metode penyearah gelombang penuh sehingga setengah gelombang negatif akan terbalik, sehingga di dapat gelombang satu arah. Kapasitor sebagai media penyimpan tegangan sementara waktu gelombang positif naik, sedangkan waktu gelombang turun Kapasitor melepaskan tegangan yang disimpannya sehingga gelombang tidak turun sepenuhnya. Sehingga bentuk gelombang akan menyerupai garis lurus dengan riak kecil.

  

 

(32)

Rangkaian Pelemah berfungsi untuk melemahkan tegangan sesuai dengan yang kita kehendaki, rangkaiannya dapat menggunakan 2 buah Op-Amp (Operasional Amplifier) serta beberapa R. Untuk rangkaian ini digunakan Op-Amp tipe LF351 atau UA 741.

Gambar 2.16. Op-Amp LF351

Fungsi Pin – Pin Op-Amp LF351 : 1. Balance, tidak digunakan atau No Connect. 2. Input -, sebagai input-an negatif Op-Amp. 3. Input +, sebagai input-an positif Op-Amp. 4. Vee, dihubungkan dengan tegangan -12V DC. 5. Balance, tidak digunakan atau No Connect. 6. Output, sebagai hasil output dari Op-Amp. 7. Vcc, dihubungkan dengan tegangan +12 DC. 8. NC, tidak dihubungkan (No Connect).

2.8 Driver Motor DC

(33)

menggunakan Driver Motor DC, DAC yang digunakan bisa rusak dikarenakan beban arus yang diperlukan untuk Motor DC tidak dapat dipenuhi.

Disini digunakan TIP3055 yang dapat menguatkan arus menjadi mencapai 15 Ampere, sehingga dapat mencukupi beban arus yang dibutuhkan oleh Motor dan juga melindungi DAC dari kerusakan arus balik dari Motor.

Gambar 2.17 TIP 3055

2.9 Borland Turbo C++

C++ diciptakan satu dekade setelah C oleh Bjarne Stroustrup, Laboratorium Bell, AT&T, pada tahun 1983. Bahasa ini bersifat kompatibel dengan bahasa pendahulunya C. Pada mulanya C++ disebut sebagai “ a better C ” kemudian oleh Rick Mascitti pada musim panas 1983 diganti sebagai C++, adapaun tanda ++ berasal dari nama operator penaikan pada bahasa C.

Keistimewaan C++ adalah mendukung untuk pemrograman berorientasi obyek. Tujuan utama pembuatan C++ adalah untuk meningkatkan produktifitas pemrogram dalam membuat aplikasi. Kekompleksitasan bahasa pemrograman C++, terutama pada program yang besar yang terdiri dari 10.000 baris atau lebih.

(34)

menjadi dasar dari pemrograman tingkat tinggi yang banyak sekali bermunculan, seperti Java, Perl, Python, dan lain sebagainya. Bahasa C++ dari Borland ini mendukung untuk mode secara grafik, walaupun untuk mode grafik masih belum maksimal seperti pemrograman tingkat tinggi sekarang.

Borland C++ juga mendukung operasi I/O yang dapat digunakan dalam dunia kontrol, untuk penggunaannya juga sangatlah mudah. Alat I/O yang didukung C++ dan sering digunakan adalah PPI dan PCL. Untuk operasi database sederhana C++ sangatlah handal untuk digunakan, dan disinilah peran pemrograman berorientasi obyek berfungsi.

2.10 MATLAB

MATLAB (Matrix Laboratory) merupakan sebuah software yang canggih untuk komputasi teknik. Didalamnya terdapat kemampuan penghitungan, visualisasi, dan pemrograman dalam suatu lingkungan yang mudah untuk digunakan karena permasalahan dan pemecahannya dinyatakan dalam notasi matematika biasa. Secara umum kegunaan MATLAB untuk :

1. Matematika dan komputasi. 2. Pengembangan algoritma.

3. Pemodelan, simulasi dan pembuatan prototype. 4. Analisa data, eksplorasi dan visualisasi.

5. Pembuatan aplikasi, termasuk pembuatan antarmuka grafis.

(35)

32

METODE PENELITIAN

Metode penelitian yang digunakan untuk tugas akhir ini dimulai dengan

studi kepustakaan, kemudian dilanjutkan dengan perancangan perangkat lunak,

perancangan perangkat keras sampai akhirnya pembuatan alat.

Dengan studi kepustakaan akan didapat data dan informasi yang

memadai secara teori maupun praktek. Secara teori semua data yang dibutuhkan

dapat dilihat dari buku, datasheet, ataupun dari internet. Sedangkan secara praktek data yang dibutuhkan dapat dilihat dari buku laporan tugas akhir mahasiswa yang

sudah lulus, modul praktikum yang berkenaan dengan tugas akhir ini, ataupun

dari help program yang akan digunakan. Kedua hal ini diperlukan untuk diintegrasikan membentuk sistem yang diusulkan untuk dibangun, seperti pada

gambar 3.1 dibawah.

Perancangan perangkat lunak dilakukan setelah memperoleh informasi

yang dibutuhkan untuk membangun suatu program controller yang berkenaan dengan tugas akhir yang dibuat. Program yang dibuat untuk tugas akhir ini

dibangun dengan menggunakan bahasa pemrograman Borland Turbo C++ 3.0

yang akan membahas perencanaan dan pembuatan perangkat lunak untuk

identifikasi karakteristik pada Motor DC. Program lain yang digunakan adalah

MATLAB V6.5.

Perancangan perangkat keras dilakukan setelah memperoleh data-data

teoritis dan praktis diseputar komponen – komponen elektronika yang akan

(36)

0808, ADC 0804, TIP 3055, Resistor, Kapasitor, Dioda, Potensio multitune,

lampu LED, dan lain sebagainya.

Setelah perancangan perangkat keras, maka dilanjutkan dengan

pembuatan perangkat keras sehingga menjadi sebuah modul yang siap pakai, tapi

sebelumnya harus melewati pengujian dengan program sederhana, Multimeter,

Osiloskop, Rangkaian I/O ataupun RPMmeter pada bagian yang berkaitan dengan

sistem kerja perangkat keras yang dibuat.

Gambar 3.1 Blok diagram alat pengidentifikasi karakteristik Motor DC

3.1 Perancangan Aplikasi Identifikasi Karakteristik Motor DC

Didalam pembuatan program aplikasi, desain tampilan yang user

friendly adalah merupakan suatu hal yang sangat penting, selain dari tujuan utama pembuatan program tersebut. Tujuan utama program ini adalah mendapatkan

suatu fungsi alih dalam domain s yang mewakili karakteristik dari Motor DC. Program ini menggunakan 2 pilihan metode identifikasi sistem, yaitu secara statis

dan secara dinamis.

Identifikasi sistem secara statis bekerja sebagai berikut, langkah pertama

adalah memberikan tegangan unit step untuk Motor sesuai input-an dari user dengan nilai minimal 5V dan maksimal 12V, kemudian mengambil data dari

(37)

data sebanyak 30 kali, dari keempat data tersebut di rata – rata kemudian akan di

analisa sehingga didapatkan nilai fungsi alihnya dalam domain s.

Identifikasi sistem yang dinamis bekerja dengan memberikan masukan

tegangan input yang berubah – ubah sesuai dengan deret PRBS (Pseudo Random

Binary Sequence) yang dibangkitkan dari proses shift register dengan feedback. Disini digunakan deret PRBS dengan panjang deret 31 sel, dengan masukan 5 sel.

Kemudian keluaran dari Motor DC disimpan ke sebuah file, dari file ini nantinya akan diteruskan dengan menggunakan program MATLAB untuk bisa dianalisa

sehingga akan menghasilkan fungsi alih sistem atau plant.

3.1.1 Perencanaan dan pembuatan program

Karena Borland Turbo C++ 3.0 berbasis pada DOS, maka ukuran

program yang akan dihasilkan kecil dan komputer yg di butuhkan juga tidak

memerlukan spesifikasi yang tinggi. Pemrograman Turbo C++ ini mendukung

mode grafik yang akan menghasilkan suatu tampilan yang lebih bagus di

bandingkan dengan mode teks. Program yang dibuat menggunakan dua mode yg

ada. Mode teks digunakan untuk menampilkan nilai – nilai yg langsung di dapat

dari pengukuran maupun nilai – nilai hasil analisis, sedangkan mode grafik di

gunakan untuk tampilan program, menu, grafik, menuliskan fungsi alih, dan

sebagainya. Program ini menggunakan pengoperasian file sebagai media penyimpanan data. Sehingga data yg di dapat, dapat di analisa secara manual dan

dapat di ketahui ke absahan hasil akhirnya, yaitu fungsi alih dalam domain s. File yang dihasilkan dapat di akses langsung dengan Microsoft Excel sehingga dapat

(38)

Program lain yang digunakan adalah program MATLAB, program ini

umum digunakan di dalam analisis dan desain sistem kontrol, karena kemudahan

penggunaannya dan mempunyai banyak fungsi yang mendukung. Meski termasuk

program kompleks yang disederhanakan seperti pembuatan grafik dari suatu

model matematika, pembuatan fungsi dari data – data, dan lain sebagainya.

Program ini berjalan dibawah sistem operasi keluarga Windows, Unix, Linux, dll.

Untuk tugas akhir ini digunakan Windows 98, sehingga komputer yang digunakan

tidak memerlukan spesifikasi hardware yang tinggi.

Program Borland C++ 3.0 mendukung untuk pengoperasian hardware di luar komputer, tapi tentunya harus menggunakan suatu media penghubung, dalam

Tugas Akhir ini dipakai PPI sebagai media penghubung antara komputer dan

hardware di luar komputer atau plant.

3.1.2 Inisialisasi pada program

Komponen – komponen yang membangun program ini haruslah di

inisialisasi pada bagian awal program, inisialisasi yang diperlukan adalah

inisialisasi port PPI, inisialisai grafik untuk penggunaan mode grafik dari komputer serta inisialisasi file untuk output dari alat ini.

Untuk dapat digunakan, PPI tersebut terlebih dahulu di inisialisasi

dengan memberikan alamat I/O (Input / Output) yang tidak dipakai oleh komputer. Biasanya digunakan alamat 0300H – 0303H atau 03E0H – 03E3H.

Alamat ini juga di gunakan di PPI dengan mengatur DIP Switch yang disediakan sehingga sama dengan alamat yang kosong yang digunakan untuk program ini.

(39)

#define porta 0x3E0 : Port A menggunakan alamat 03E0h #define portb 0x3E1 : Port B menggunakan alamat 03E1h #define portc 0x3E2 : Port C menggunakan alamat 03E2h

#define Cw 0x3e3 : CW (control word) menggunakan alamat 03e3h

Outportb (Cw,0x89) : mengeset Port A sebagai output PPI, Port B

sebagai output PPI, port C sebagai input PPI, mode operasi 0.

Karena program ini beroperasi dalam mode grafik juga, maka harus

diadakan inisialisasi terhadap grafik dari komputer yang digunakan. Adapun

inisialisasinya sebagai berikut :

/* request auto detection */

int gdriver = DETECT, gmode, errorcode;

/* initialize graphics and local variables */ initgraph(&gdriver, &gmode, "c:\\tc\\bgi");

/* read result of initialization */ errorcode = graphresult();

/* an error occurred */ if (errorcode != grOk) {

printf("Graphics error: %s\n", grapherrormsg(errorcode)); printf("Press any key to halt:");

getch(); exit(1); }

Pertama pembuatan variabel gdriver, gmode, errorcode dengan tipe integer, kemudian pendeteksi otomatis ke grafik komputer apakah VGA, EGA,

CGA, atau yang lain, untuk komputer sekarang ini biasanya terdeteksi VGA

dengan kelas high yang mempunyai ruang resolusi 480 kolom x 640 baris.

Inisialisasi yang lain adalah inisialisasi terhadap fileoutput dari program. Disini berguna untuk memeriksa apakah file output tersebut sudah ada, kalau belum ada maka akan dibuat, jika sudah ada maka isi dari file tersebut akan dihapus semuanya. Inisialisasinya sebagai berikut :

/* Inisialisasi file */

if ((MotorDC=fopen("C:\\Tc\\Data\\Motor.csv","w")) == NULL) { printf("KESALAHAN : File Tidak Dapat di buka !!\7\n"); exit(1);

}

(40)

tersebut, untuk mengisi file tersebut dapat digunakan option a seperti pada prosedur untuk entry data ke file.

3.2 Perancangan Perangkat Lunak Untuk Identifikasi Sistem Secara Statis

Identifikasi sistem secara statis mempunyai alur kerja yang lebih rumit

daripada identifikasi sistem secara dinamis. Untuk identifikasi stastis dilakukan

4 kali pengambilan data, dalam 1 kali pengambilan data diambil 30 kali sampling data dengan periode sampling = 0.2 detik. Dari ke empat kali percobaan tadi diambil rata – rata untuk dijadikan data ke 5 sebagai data yang mewakili dari

identifikasi statis yang didasarkan pada ke empat data tersebut.

Flowchart untuk program identifikasi secara statis bisa dilihat pada gambar 3.2 dibawah. Beberapa prosedur penting untuk identifikasi statis adalah

prosedur ambil data, prosedur pengambilan rata – rata dari keempat hasil

pengambilan data, prosedur mid yang berguna untuk mencari suatu nilai dalam sebuat file dan yang terpenting adalah prosedur analisa data terhadap data yang diambil dan data hasil rata – rata.

3.2.1 Prosedur ambil data

Pengambilan data dilakukan sebanyak 30 kali dalam 1 kali eksperimen.

Pengambilan data diambil dari output Motor DC melalui Port C PPI yang beralamat 3E2H, di program ini hanya data yang mempunyai nomor urut genap

saja yang di tampilkan di layar, dikarenakan keterbatasan ruang layout program, tapi semua nilai yang diambil tadi ditampilkan dalam bentuk grafik kartesian ke

semuanya secara real time, sehingga dapat dilihat proses pengambilan datanya. Untuk prosedurnya sebagai berikut :

(41)

Vout = (inportb(PortC)/255.0)*12.0; q=(i%2);

if (p==q) {

gotoxy(7,(i*2)-(((i-2)*3)/2)); printf("%0.3f\n",Vout); }

if (i==1)

line(a-30 ,b+40 ,a-20 ,(b-Vout*16)+40); else

line(a+(-40+y) ,(b-z*16)+40 ,a+(-30+y) ,(b-Vout*16)+40);

untuk proses inportb(portC) hasil yang didapat masih berupa data desimal, jadi harus dikonversi ke tegangan dahulu supaya sesuai dengan apa yang di inginkan,

untuk itu harus dibagi dengan 255 lalu dikalikan dengan 12V, karena tegangan

maksimal dari Motor 12V.

3.2.2 Prosedur rata – rata data

Prosedur ini berguna untuk mencari nilai rata - rata dari ke empat data

yang diperoleh. Data ini yang nantinya dijadikan patokan sebagai hasil dari

identifikasi secara statis, adapun prosedurnya seperti berikut :

for (int i=0;i< 30;i++) {

mid(string1, string5, urut1, 5); urut1 = urut1 + 6;

tes01 = atof(string1);

mid(string2, string5, urut2, 5);

urut2 = urut2 + 6; tes02 = atof(string2);

mid(string3, string5, urut3, 5); urut3 = urut3 + 6;

tes03 = atof(string3);

mid(string4, string5, urut4, 5); urut4 = urut4 + 6;

tes04 = atof(string4);

tes05 = ((tes01+tes02+tes03+tes04)/4.0); fprintf(MotorKU,"%0.3f;",tes05);

fprintf(MotorDC,"%0.3f;",tes05); }

Disini proses yang terjadi adalah pengambilan data lewat prosedur mid dari data ke 1 sampai 4 untuk data nomor urut 1 sampai 30, dalam satu kali

proses dilakukan pengambilan data dari database yang ditulis di sebuah file menurut nomor urut data kemudian dijumlahkan lalu dibagi 4, kemudian hasilnya

(42)

Gambar 3.2 Flowchart untuk identifikasi statis START

INPUT VIN

AMBIL DATA

∑DATA = 4 & ∑ ITERASI = 40

CARI RATA - RATA

ANALISA DATA KE 1 DELAY

DATA KE = 1 DATA KE

Y

T

DATA KE = 2

DATA KE = 4

DATA KE = 5 DATA KE

= 3 T

T

T

T

ANALISA DATA KE 2

ANALISA DATA KE 3

ANALISA DATA KE 4

ANALISA DATA KE 5

TAMPIL DATA KE 1

TAMPIL DATA KE 2

TAMPIL DATA KE 3

TAMPIL DATA KE 4

TAMPIL DATA KE 5

END T

(43)

3.2.3 Prosedur mid untuk mencari suatu nilai dalam file

Prosedur ini sangat penting dikarenakan sangat dibutuhkan untuk

membaca teks dari suatu file yang terletak secara terstruktur seperti database sederhana, disini dibutuhkan nomor urut teks tersebut, kemudian panjang teksnya.

Prosedurnya tidak begitu panjang, tetapi inilah salah satu kunci yang sangat

penting dalam perangkat lunak di tugas akhir ini, prosedurnya seperti berikut ini :

void mid (char *s1, char *s2, int m, int p) {

int i,j,n;

for (n=0;s2[n];n++); if ((m>=0) && (m<=n-1)) {

for (i=m,j=0;(j<p&&s2[i]);i++,j++) s1[j] = s2[i];

s1[p] = '\0'; }

else

s1[0] = '\0'; }

Prosesnya adalah sebagai berikut, pertama kali dicari panjang isi file tersebut, kemudian ditentukan urutan teks yang mau di ambil serta panjang teks

tersebut. Demikian seterusnya proses pencarian dan pengambilan teks yang di

kehendaki dalam proses pengulangan sampai selesai.

3.2.4 Prosedur analisa data

Prosedur ini merupakan prosedur yang paling penting, dan mempunyai

proses yang sangat panjang, karena disinilah semua nilai – nilai yang membangun

suatu fungsi alih dicari. Urutan proses yang terjadi secara garis besar sebagai

berikut :

1. Temukan Time Delay System.

Disini dicari nilai L (time delay system), yaitu waktu yang dibutuhkan oleh

plant tersebut untuk bereaksi dari nol. Algoritmanya seperti berikut :

for (int i=0;i< 30;i++) {

(44)

z1 = z1 + 6;

Vout = atof(string1);

if ((Vout > 0) && (iL == 0))

iL = i;

)

L = iL * 0.20;

Pertama data sebanyak 30 tersebut dibaca melewati prosedur mid kemudian tiap data tersebut saling dibandingkan. Data yang memenuhi syarat adalah

bernilai lebih dari nol dan nilai iL masih nol. Data inilah yang merupakan data pertama yang lebih dari nol, kemudian iL diisi dengan nilai i yang merupakan urutan data tersebut kemudian dikalikan dengan ts (time sampling) dan itulah L yang dicari.

2. Temukan Time Konstan dari Sistem

T = waktu untuk mencapai tegangan sebesar [63,2 % * Respon Stabil]

Respon stabil disini berarti respon dari Motor DC untuk mencapai nilai output tegangan yang stabil. Pertama kali dicari nilai respon stabil tersebut, adapun

urutan program nya sebagai berikut :

for (int i=0;i< 30;i++) {

mid(string1, string2, z1, 5); z1 = z1 + 6;

Vout = atof(string1);

temp = Vout;

if ((Vout > 0) && (iL == 0))

iL = i;

/* Cari Jumlah Tiap Vout yg di hasilkan */ if (i == 1)

{ V01 = temp; i1 = 1; } else

if (temp == V01)

i1++;

else

if (i2 == 0) { V02 = temp;

i2++;

}

else

if (temp == V02)

i2++;

else if (i3 == 0)

{ V03 = temp;

i3++;

}

else

(45)

i3++; else ...

if (i1>i2) { Goodi = i1; VTemp= V01;} if (i2>Goodi) { Goodi = i2; VTemp= V02;} if (i3>Goodi) { Goodi = i3; VTemp= V03;} if (i4>Goodi) { Goodi = i4; VTemp= V04;} ...

Inti dari penggalan program diatas adalah membuat variabel – variabel yang di

isi dengan tiap nilai yang ada di data kemudian di cari nilai tegangan output atau data yang paling sering muncul, yang dapat di anggap sebagai nilai stabil

tegangan yang disebut respon stabil.

Kemudian langkah selanjutnya adalah mengalikan respon stabil dengan 63,2%

sehingga di peroleh tegangan untuk time konstan, langkah selanjutnya adalah mencari letak time konstan tersebut di detik ke berapa, adapun caranya seperti berikut :

temp = 0.632 * VTemp;

fgets(string2, sizeof(string2), MotorKU); for (int ii=1;ii<= 30;ii++)

{ mid(string1, string2, z2, 5); z2 = z2 + 6;

Vout = atof(string1);

if (temp >= Vout) { i4TLow = ii; V4TLow = Vout; }

else if (V4TUp == 0) { V4TUp = Vout;

i4TUp = i4TLow + 1; }

if ((VTemp == Vout)&&(i4RS == 0)) i4RS = ii; if (ii == 30) V4End = Vout;

}

UP = V4TUp - temp; LOW = temp - V4TUp; ALL = UP+LOW;

Nemo = LOW/ALL;

i4T = i4TLow + Nemo; float T4T = i4T*0.22; float T4Ts = i4RS*0.22;

3. Temukan Time Settling dari Sistem

Ts = waktu yang dibutuhkan untuk mencapai nilai respon stabil pertama kali

Disini dicari waktu dimana Vout (tegangan output) pertama kali mencapai nilai respon stabil, untuk caranya bisa dilihat program pada nomor 2

(46)

if ((VTemp == Vout)&&(i4RS == 0)) i4RS = ii; float T4Ts = i4RS*0.20;

4. Temukan Konstanta Penguatan (K)

Disini dipakai rumus : K = (Output akhir – Output awal) / Amplitudo dari

Input Unit Step. Untuk bagian ini tidaklah sulit dan bisa digabung di program no 2, caranya sebagi berikut :

if (ii == 30) V4End = Vout;

if (ii == 1) V4Start = Vout;

Gain = (VTemp-V4Start)/Vin;

5. Temukan Ratio antara Time Delay dengan Time Settling

Rumus yang digunakan sebgai berikut : L/Ts. Disini tidaklah sulit karena

nilai L dan Ts sudah didapat dan langsung dapat dipakai, penggalan

programnya seperti berikut :

LDivTs = L / T4Ts

6. Lihat Tabel STREJC untuk menentukan letak Ratio yang didapat dari Langkah 5: sebagai jawaban dari pertanyaan ’Lebih dekat ke nilai manakah nilai Ratio ?’ (dibandingkan dengan kolom Tu/Ta)

Tabel 3.1 Tabel STREJC(  0)

N Ta/T Tu/T Tu/Ta

1

2

3

4

5

1

2.718

3.695

4.463

5.119

0

0.282

0.805

1.425

2.100

0

0.104

0.218

0.319

(47)

Tabel diatas di dapat dari www.eudil.fr/eudil/belk/pra1.htm. Dari Langkah ini

didapat nilai-nilai: N = Orde Sistem, [Ta/T], [Tu/T], dan [Tu/Ta]. Langkah

untuk mencari nilai yang mendekati dengan yang ada di tabel ini

membutuhkan urutan program yang panjang, nilai ratio (langkah 5) di bandingkan dengan nilai pada kolom Tu/Ta yang mendekati dari Tabel

STREJC tersebut. Adapun programnya sebagai berikut :

Key = LDivTs;

LowGate = 0; UpGate = 0;

if (Key >= 0) LowGate = 0; else

{ if (UpGate < Key) UpGate = 0; else

if (UpGate > 0) UpGate = 0; }

...

Left = UpGate - Key; Right = Key - LowGate; if (Left < Right) NewKey = UpGate;

else

NewKey = LowGate;

if (NewKey == No1)

{ Ta4T = 2.718; Tu4T = 0.282; Tu4Ta = 0.104; Orde = 2; } if (NewKey == No2)

{ Ta4T = 3.695; Tu4T = 0.805; Tu4Ta = 0.218; Orde = 3; }; if (NewKey == No3)

{ Ta4T = 4.463; Tu4T = 1.425; Tu4Ta = 0.319; Orde = 4; }; if (NewKey == No4)

{ Ta4T = 5.119; Tu4T = 2.100; Tu4Ta = 0.410; Orde = 5; }; if (NewKey == No5)

{ Ta4T = 1; Tu4T = 0; Tu4Ta = 0; Orde = 1; };

7. Temukan nilai Time Konstan yang Baru

Disini mempunyai rumus sebagai berikut Tbaru = Time Settling / [Ta/T], nilai - nilai yang dibutuhkan untuk langkah ini sudah didapat tinggal

menghitungnya, potongan programnya adalah sebagai berikut :

NewT = T4Ts/Ta4T;

8. Temukan nilai Time Delay yang Baru

Disini mempunyai rumus sebagai berikut Lbaru = Time Settling x [Tu/T], nilai yang dibutuhkan sudah ada tinggal dimasukkan dalam perhitungan,

algoritmanya sebagai berikut :

(48)

9. Temukan nilai Lamda

Disini mempunyai rumus sebagai berikut Lamda = Time Delay Time Delay Baru. Potongan programnya sebagai berikut :

Lamda = L - NewL;

10.Pilih Struktur Model yang sesuai sesuai orde yang di dapat.

sL n e

Ts K s

G

 

) 1 ( )

( (3.1)

Disinilah langkah dari analisa data berakhir, semua komponen yang

membangun suatu persamaan fungsi alih sudah didapat tinggal menempelkan

pada bentuk persamaan yang ada, disini bentuk persamaan ditentukan oleh

orde hasil perhitungan dari tabel Strejc.

3.2.5 Prosedur untuk menampilkan data yang diinginkan

Disinilah akhir dari program untuk identifikasi sistem secara statis,

dimana user dapat melihat hasil dari keempat percobaan dan hasil dari rata – rata secara grafik dan beserta semua nilai dari hasil analisa dan juga hasil akhir berupa

persamaan fungsi alih dalam domain s. Hasil dari tiap percobaan serta hasil rata - rata juga dapat dilihat langsung melewati file bertipe csv yang langsung dapat diakses dengan Microsoft Excel, hal ini sebagai pembanding untuk hasil penyajian

secara grafik di program dengan yang ada di Microsoft Excel.

3.3 Perancangan Perangkat Lunak Untuk Identifikasi Secara Dinamis Identifikasi sistem secara dinamis disini bersifat sebagai pembanding

untuk hasil dari perhitungan identifikasi secara statis, dan juga proses yang di

(49)

START

INPUT BIT PEMBANGKIT

BIT PEMBANGKIT = 5

Y

PRBS

T

VIN PRBS 0

VIN PRBS 1

AMBIL DATA

END

fungsi alihnya. Disini hanya sebatas mengambil data sebanyak 105, sedangkan

deret minimal PRBS untuk nilai N = 5 adalah 31. Proses selanjutnya akan

dilanjutkan menggunakan program MATLAB yang berfungsi untuk menganalisa

sehingga mendapatkan persamaan fungsi alih yang dikehendaki..

Flowchart untuk identifikasi secara dinamis digambarkan dibawah ini :

Gambar 3.3 Flowchart untuk identifikasi secara dinamis

3.3.1 Prosedur pembangkitan PRBS

Disini pembangkitan deret PRBS menggunakan nilai N = 5, programnya

sebagai berikut :

// Menggeser & menambahkan Bit ke1 = bit3+bit5 for (int j=1;j<=iterasi;j++)

{ buffer = A[3] + A[5];

if ((buffer == 2)||(buffer == 0)) buffer = 0;

else

(50)

for (int k=1;k<i;k++)

{

A[1+(i-k)] = A [(i-k)];

}

i++;

A[1] = buffer; }

for (i=1;i<=5;i++) { A[i+26]=B[i]; }

Dari deret yang berhasil dibangkitkan diatas maka tinggal memakainya

untuk masukan Motor DC dengan memberi nilai tegangan input Robust bernilai 0 sebesar tegangan input untuk Motor DC dapat bergerak untuk bit yang bernilai 0 dan tegangan input Robust bernilai 1, sebesar tegangan input untuk Motor DC bergerak secara bagus untuk bit yang bernilai 1. kemudian di ambil data tegangan

output-nya untuk disimpan ke sebuah file.

File yang di dapat tersebut diolah dengan program MATLAB untuk dianalisa sampai diketemukan fungsi alihnya. Programnya dalam MATLAB

sebagai berikut :

IN=input('inputkan harga n :'); inp=dinamis(1:105,2);

outp=dinamis(1:105,3); nn=[IN 1 1];

z=[outp inp]; th=arx(z,nn);

[numd,dend]=th2tf(th); sys=tf(numd,dend,0.2);

[num,den]=d2cm(numd,dend,0.2,'zoh'); sys=tf(num,den)

3.4 Perancangan Dan Pembuatan Perangkat Keras

Perangkat keras yang dipakai untuk tugas akhir ini sudah umum

digunakan dalam praktikum dan perkuliahan. Peralatan yang dipakai meliputi PPI,

DAC, ADC, Driver Motor DC, Rangkaian penyearah dan Rangkaian pelemah. Disini akan diuraikan secara jelas tentang rangkaian perangkat keras, yang

digunakan untuk alat yang dibuat dalam tugas akhir ini. Disertakan juga gambar

(51)

48

Gambar 3.4 Rangkaian perangkat keras 10K DB25 To PPI

13

Input Motor DC

(52)

3.4.1 PPI

PPI di konfigurasikan dengan memberikan nilai CW sebesar 89H, yang

artinya Port C difungsikan untuk ambil data dari luar PPI, Port B dan Port A untuk kirim data keluar dari PPI, serta beroperasi pada mode 0. PPI bekerja pada

alamat 3E0H untuk Port A, 3E1H untuk Port B, 3E2H untuk Port C serta 3E3H untuk Control Word. IC PPI yang digunakan adalah produksi dari NEC JAPAN.

Tabel 3.2 Konfigurasi Control Word PPI 8255

D7 D6 D5 D4 D3 D2 D1 D0

1 0 0 0 1 0 0 1

8H 9H

Dari tabel diatas dapat dijelaskan sebagai berikut :

D7 : Untuk mengaktifkan PPI.

D6 – D5 : Untuk memilih mode yang digunakan 0 – 2.

D4 : Port A untuk mengirimkan data. D3 : Port C upper mengambil data.

D2 : Untuk memilih mode yang digunakan 0 - 1

D1 : Port B untuk mengirimkan data. D0 : Port C lower mengambil data.

Selain setting alamat pada perangkat lunak, setting alamat juga diberlakukan pada perangkat keras PPI yang tertanam pada slot ISA komputer,

(53)

U15 RESISTOR SIP 9

1 DB25 To PPI

13 Tabel 3.3 Konfigurasi address bus PPI

A01 A02 A03 A04 A05 A06 A07 A08 A09 A10 A11 A12

X X 0 0 0 1 1 1 1 1 X x

0 E 3

Gambar 3.5 Konfigurasi DIP Switch PPI untuk 3E0H

PPI disini berfungsi sebagai perantara untuk mengirimkan data dari

komputer untuk input Motor DC melalui Port B dan menerima data dari

Tachogenerator melewati Port C. Rangkaian PPI yang digunakan sudah terangkai dari pembuatnya dan diproduksi oleh EL-TECH.

(54)

3.4.2 DAC

Dalam tugas akhir ini DAC 0808 berfungsi sebagai media untuk

merubah sinyal digital dari PPI menjadi sinyal analog yang akan diteruskan oleh

Driver Motor DC, sinyal tersebut merupakan tegangan yang besarnya antara 5 V sampai 12V, yang akan digunakan sebagai tegangan input Motor DC.

DAC 0808 yang digunakan diproduksi oleh National Semiconductor,

yang mempunyai perubahan arus tiap ± 1 LSB. Untuk rangkaiannya dapat dilihat

pada Gambar 3.4.

Dari Gambar 3.4 dapat dijelaskan sebagai berikut, kaki nomor 1 no

connect tidak dihubungkan, kaki nomor 2 sebagai ground serta juga sebagai kaki output kutup negatif, antara kaki nomor 3 dan kaki nomor 16 diberikan Kapasitor kemudian dihubungkan dengan Vee -12V untuk mendapatkan clock yang dibutuhkan oleh DAC, kaki nomor 4 sebagai output dari DAC dihubungkan dengan Op-Amp untuk merubah arus menjadi tegangan, kaki nomor 5 sampai

nomor 12 berfungsi sebagai input data digital DAC yang dihubungkan ke PPI 8255 melewati connector DB25, kaki nomor 13 merupakan Vcc yang dihubungkan dengan tegangan 5V, kaki nomor 14 sebagai Vref dihubungkan

dengan tegangan +12V melewati sebuah R yang diperhitungkan untuk

mendapatkan Iref sebesar 2mA.

Untuk rangkaian DAC 0808 sangatlah peka terhadap Vcc dan Vee,

untuk itu diusahakan memberikan Vcc yang berimbang, seperti jika Vcc 11,98V

(55)

Gambar 3.7 Modul Rangkaian DAC

3.4.3 ADC

ADC yang digunakan adalah ADC 0804 dari National Semiconductor

yang memiliki pendekatan berturut – turut ( Succesive Aproximation ) untuk mengkonversi masukan analog dari 0V sampai 5V menjadi data digital 8 bit..

Pada rangkaian ini ADC di set free running, artinya pengoperasian tidak memerlukan sinyal kontrol seperti start converting (SC) ataupun end of

converting (EOC). Kaki Vref diberi tegangan 5V sama dengan sumber 5V

sehingga akan memiliki total error ± 1LSB, dengan resolusi sebesar

2551 x 5V =

19,53125 mV yang menyebabkan perubahan 1 bit pada keluaran ADC.

Dikarenakan keluaran dari ADC adalah biner 8 bit dengan desimal 0 – 255 maka

konversi dari keluaran ADC ke tegangan adalah :

Vout = desimal x 255 Vref

(3.1)

(56)

serta sebuah Kapasitor eksternal (C) antara CLK IN dan ground digital. Maka frekuensi clock yang digunakan adalah :

f =

xRxC 1 . 1

1 (3.2)

Untuk memperoleh clock sebesar 600KHz. ditentukan dulu C yang di pakai, disini digunakan C dengan nilai 150pF maka sesuai rumus diatas nilai R

yang dibutuhkan adalah 10KΩ:

R =

pF KHzx x600 150 1

. 1

1 (3.3)

Cara kerja ADC 0804 untuk satu kali proses konversi sebaga berikut, CS

(chip select) terlebih dahulu harus diaktifkan, CS selalu aktif dengan menghubungkannya pada ground. Start of Convertion dilakukan dengan memberi logika High – Low – High pada pin WR dan RD harus tetap High. INTR secara langsung menuju ke logika High jika sebelumnya berlogika Low. Begitu data telah siap pada output lacth, INTR menuju ke logika Low, ini menjadi pertanda bahwa data telah siap.

(57)

Pengambilan data dilakukan pertama kali dengan mengaktifkan CS yang

kemudian diikuti dengan memberi logika High – Low pada pin RD (Read). Tunggu sinyal INTR sampai High. Jika INTR sudah High, maka data telah siap pada pin – pin output digital dan data siap diambil. Setelah data diambil, sinyal RD diberi logika High, data kembali ke high impedance.

3.4.4 Driver Motor DC

Rangkaian Driver untuk Motor DC dalam tugas akhir ini sangatlah sederhana, karena hanya digunakan untuk memperkuat arus tegangan input untuk Motor DC, dengan mengabaikan arah putaran Motor, pengaturan kecepatan

Motor, ataupun posisi putaran Motor. Untuk itu digunakan rangkaian sederhana

dengan menggunakan sebuah TIP 3055 NPN Silicon Power Transistor, sebuah

Resistor serta sebuah Dioda.

Dari Gambar 3.4 diatas, dapat dijelaskan prinsip kerja dari driver motor

yang digunakan, pertama arus yang masuk ke basis akan diperoleh setelah

melewati tahanan 330Ω, kemudian arus tersebut akan dikuatkan sebanyak 70 kali

untuk maksimalnya, dan untuk minimalnya dikuatkan sebanyak 20 kali.

(58)

3.4.5 Rangkaian penyearah dan rangkaian pelemah

Rangkaian Penyearah dibutuhkan untuk merubah tegangan AC dari

output Tachogenerator ke tegangan DC untuk dapat di proses oleh ADC, sedangkan rangkaian pelemah digunakan untuk melemahkan tegangan DC

sebelum masuk ke ADC.

Rangkaian penyearah menggunakan rangkaian Dioda Jembatan yang

komponennya adalah 4 buah Dioda dan ditambah sebuah Resistor 20KΩ serta

sebuah Kapasitor 10μF.

Rangkaian Pelemah disini dibutuhkan karena Motor yang digunakan

adalah Motor DC 12 Volt yang memungkinkan output-nya sebesar 12 Volt, untuk itu digunakanlah Rangkaian Pelemah sehingga data yang masuk ke ADC nantinya

dapat dilemahkan hingga nilai maksimal datanya adalah 5 Volt.

Rangkaian pelemah menggunakan 2 buah Op-Amp LF351 atau UA741

yang terkonfigurasi sama, tapi berbeda dalam R yang digunakannya. Disini

digunakan rangkaian penguat inverting, penguatan disini nantinya dibalik menjadi

pelemahan, tapi pelemahan tersebut masih bernilai negatif, untuk itu digunakan 1

buah lagi Om-Amp dengan penguatan 1 kali sehingga nilai yang didapat bernilai

positif.

Untuk mendapatkan pelemahan dari 12 V menjadi 5V digunakan rumus

dari penguatan inverting ini yaitu:

Vin R R Vout

12 

 (3.4)

Dalam rangkaian pelemah ini R2 bernilai 10KΩ, untuk mendapatkan

pelemahan dari 12V menjadi 5V, sesuai rumus diatas maka R1 yang dibutuhkan

(59)

2

1 R

Vout Vin

R  (3.5)

Setelah selesai masuk rangkaian pertama yang nilai keluarannya masih

bernilai negatif kemudian haruslah dilemahkan lagi sebesar 1 kali sehingga nilai

keluaran dari rangkaian pelemah ini bernilai positif.

Gambar

Gambar 2.15 Proses perubahan tegangan AC ke tegangan DC
Gambar 2.16. Op-Amp LF351
Gambar 2.17 TIP 3055
Gambar 3.1  Blok diagram alat pengidentifikasi karakteristik Motor DC
+7

Referensi

Dokumen terkait

Karena putaran motor tergantung pada tegangan yang diberikan pada motor tersebut, maka dalam sistem kontrol motor DC memang yang paling mudah dikendalikan dibanding

judul “ ANALISA PEMBEBANAN MOTOR UNIVERSAL DENGAN MENGGUNAKAN DUA SUMBER TEGANGAN AC DAN DC” Laporan Akhir ini adalah salah satu syarat menyelesaikan program Diploma III

Langkah kedua pengujian alat adalah mengukur nilai tegangan output (Vout) pada alat yang terhubung ke mesin DC-400 berdasarkan nilai resistansi yang telah diatur

Oleh karena itu dipandang perlu sebuah alat yang dirancang untuk melihat dan mengamati karakteristik dari suatu motor DC servo, serta pemilihan sumber daya dan

Motor penggerak dibagi menjadi dua yaitu Motor AC dan Motor DC, dalam penelitian ini hanya membahas Motor DC karena magnet permanen pada Motor DC memberikan kontrol

Fungsi dari transformer pada blok diagram diatas adalah untuk menaikkan arus dan tegangan dari baterai sehingga dapat disuplai ke motor dc yang membutuhkan tegangan yang lebih

Oleh karena itu dipandang perlu sebuah alat yang dirancang untuk melihat dan mengamati karakteristik dari suatu motor DC servo, serta sumber daya dan regulator yang cocok

Pengukuran yang dilakukan meliputi pengukuran tegangan pada driver motor AC, driver motor AC, driver pemanas, suhu penggorengan yang terukur oleh sensor, lama waktu