Digital Pengukuran Kecepatan Literatur mantap gile

download Digital Pengukuran Kecepatan Literatur mantap gile

of 14

description

ini mi [aling mantap materinya

Transcript of Digital Pengukuran Kecepatan Literatur mantap gile

  • 4

    BAB II

    LANDASAN TEORI

    2.1 REAL TIME LINUX

    Sistem operasi merupakan hal yang sangat penting dalam menyediakan

    sarana hubungan antara perangkat lunak dengan perangkat keras. Sebuah sistem

    operasi menyediakan sebuah lapisan abstraction di antara platform perangkat

    keras dan perangkat lunak dengan menggunakan interface yang terdefinisi dengan

    baik di antara sebuah program user space, kernel space driver dan perangkat keras.

    Dalam domain komputasi, kernel adalah inti dari sistem operasi. Kernel ini

    dikelilingi oleh lapisan software, menyediakan hak akses pengguna dan

    memfasilitas interaksi seperti shell, window manager, dan program aplikasi.

    Untuk menjalankan program real time, maka diperlukan sistem operasi yang mana

    telah mengalami perubahan yang khusus pada kernel standarnya sehingga

    memiliki sifat yang real time. Oleh karena itu, diperkenalkan sistem operasi yang

    berbasis Linux dan bersifat real time. Sistem operasi real time Linux memiliki

    keuntungan lain seperti bebas untuk dimodifikasi bagian kernel sistem operasi

    tersebut tanpa perlu khawatir melanggar hak cipta dan juga memudahkan para

    developer dalam mencari informasi yang berhubungan dengan pengembangan

    kernel tersebut.

    Linux dikembangkan pertama kali oleh Linus Torvalds di University of

    Helsinki sebagai bagian dari tugas proyek mahasiswanya. Versi pertama dari

    kernel Linux pertama kali dirilis pada bulan September 1991. Saat ini kernel

    Linux telah banyak dikembangkan oleh para developer di seluruh dunia. Sistem

    operasi real time Linux adalah jawaban bagi para pengguna aplikasi yang

    membutuhkan kemampuan real time.

    2.1.1 Definisi Real Time

    Sebuah sistem real time adalah suatu sistem yang menjamin kebenaran

    dari suatu komputasi perhitungan dan ketepatan waktu pelaksanaan komputasi

    Pengukuran kecepatan putar...,Hermin Kosasih, FT UI, 2008

  • 5

    perhitungan tersebut. Jika kebutuhan akan ketepatan waktu tidak dapat terpenuhi,

    kesalahan pada sistem dapat terjadi. Dengan kata lain, sistem real time tidak

    hanya memperhatikan apakah hasil yang dihasilkan dari suatu proses benar, tetapi

    juga memperhatikan kapan hasil tersebut dihasilkan.

    Dilihat dari definisi real time tersebut, sebuah sistem real time tidak hanya

    harus cepat, sebagaimana dipercaya oleh sebagian besar orang. Sebagai contoh

    untuk penuntun sistem dari sebuah kapal dapat saja dikatakan sebagai suatu sistem

    yang non real time. Akan tetapi, karena kecepatan kapal yang rendah, maka

    memungkinkan memiliki waktu yang cukup bagi sistem untuk mengambil

    keputusan kontrol. Menurut definisi dari kata real time yang dijelaskan

    sebelumnya, sistem ini dapat secara efektif dikatakan sebagai suatu sistem real

    time. Jadi perlu diketahui bahwa sebuah sistem real time adalah bukan sebuah

    sistem dalam real time. Sistem dalam real time secara umum adalah sistem yang

    memiliki kemampuan cepat demi memberikan kesan realitas misalnya pada

    aplikasi game simulasi.

    Untuk mendefinisikan secara spesifik dari tingkatan yang berbeda-beda

    dari real time, hal ini sangat penting dalam mendefinisikan terlebih dahulu dua

    sifat sistem real time yaitu, preemptive dan deterministic.

    Preemptive berhubungan dengan kemampuan menentukan sebuah pekerjaan yang berprioritas tinggi untuk dilaksanakan terlebih dahulu

    dengan mencegah/menunda pelaksanaan pekerjaan yang berprioritas

    rendah, sehingga resource dapat tersedia.

    Deterministic berhubungan dengan kemampuan untuk memprediksi kapan sebuah kejadian yang spesifik akan muncul pada waktu yang tepat.

    2.1.2 Soft Real Time dan Hard Real Time

    Soft real time adalah sebuah respons yang tidak mementingkan seberapa

    tepat waktu responsnya terhadap suatu intstruksi yang diberikan kepadanya. Soft

    real time tidak memiliki sifat preemptive dan deterministic.

    Hard real time membutuhkan sebuah respons yang bersifat preemptive

    dan deterministic terhadap suatu instruksi. Dalam sebuah sistem hard real time,

    Pengukuran kecepatan putar...,Hermin Kosasih, FT UI, 2008

  • 6

    batas waktunya sudah tetap dan sistem harus menjamin responsnya dalam batasan

    waktu yang telah ditentukan.

    2.1.3 Gambaran Umum Kernel Linux

    Arsitektur sistem operasi Linux mempartisi memori fisik ke dalam dua

    bagian yaitu kernel space dan user space, di mana kernel space dialokasikan

    untuk kode kernel Linux. Kernel Linux mengatur alokasi memori untuk dipakai

    oleh program pengguna yang berjalan secara bersamaan di dalam user space.

    Komunikasi di antara program user space dengan kode kernel dapat dicapai

    dengan menggunakan system call ke kode kernel. Secara umum contoh dari

    penggunaan system call adalah ketika saat mengakses disk drive, keyboard, mice

    dan monitor. Jadi kode kernel berfungsi dalam menjembatani antara aplikasi

    program pengguna dengan perangkat keras.

    Sistem operasi Linux merupakan sistem operasi yang multi-threaded yaitu

    mendukung prioritas thread dan menyediakan mekanisme sinkronisasi thread

    yang dapat diprediksi. Kernel Linux memiliki sifat yang tidak preemptible. Hal ini

    yang menyebabkan kecepatan waktu respons operasi kernel pada linux yang

    standar lebih lambat bila dibandingkan dengan sistem operasi hard real time.

    Perlu diketahui bahwa Linux bukan merupakan sistem operasi yang real time

    karena ketidak-mampuannya dalam menjamin kinerja yang deterministic dan

    pewaktuannya yang bersifat pukul rata sehingga memiliki dampak yang buruk

    terhadap program real-time.

    Ada dua alasan yang menyatakan bahwa kernel Linux memiliki kinerja

    yang buruk pada sistem uniprosesor karena kernel menon-aktifkan interrupt dan

    juga kernel tidak cocok dalam melakukan aktivitas preemption. Bila interrupt

    dinon-aktifkan, sistem tidak berdaya dalam menjawab terhadap interrupt yang

    datang. Semakin lama penundaan interrupt, maka semakin lama penundaan waktu

    dari suatu program dalam menjawab interrupt yang diberikannya. Kurangnya

    kemampuan preemption pada kernel memiliki arti bahwa kernel tidak mampu

    memberikan fasilitas kepada tugas yang berprioritas tinggi untuk dijalankan

    terlebih dahulu dan menunda tugas yang berprioritas rendah. Hal ini dapat

    menyebabkan waktu penundaan yang cukup berarti.

    Pengukuran kecepatan putar...,Hermin Kosasih, FT UI, 2008

  • 7

    2.1.4 Sejarah Singkat Real Time Linux (RTLinux)

    RTLinux dikembangkan pertama kali oleh Victor Yodaiken di Department

    of Computer Science of the Institute for Mining and Technology of New Mexico

    dan diimplementasi pertama kali oleh Michael Barabanov pada tahun 1996.

    Dengan mengambil konsep untuk tidak memodifikasi kernel dari Linux secara

    ekstrim dalam membuat suatu sistem operasi yang real time, maka diajukan suatu

    solusi dengan membuat kernel-kernel kecil yang terpisah dari kernel linux dan

    sebuah scheduler. Kernel Linux yang dihasilkan dari strategi modifikasi ini

    disebut sebagai micro kernel.

    Implementasi dengan strategi ini menyediakan sebuah kernel kedua yang

    mana sebagai lapisan interface antara kernel standar dan lapisan perangkat keras

    sebagaimana ditampilkan dalam gambar 2.1.

    Gambar 2.1 Arsitektur Real Time Micro Kernel [4]

    2.1.5 Konsep Dasar Real Time Linux

    Dasar pemikiran dalam mendesain RTLinux adalah tidak ada

    kemungkinan untuk mengidentifikasi dan menghilangkan seluruh aspek dari

    operasi kernel yang memunculkan hal-hal yang tidak dapat diprediksi. Sumber-

    sumber dari hal-hal yang tidak dapat diprediksi terdiri dari algoritma Linux

    scheduling, device driver, uninterruptible system call, penggunaan dari interrupt

    disabling dan operasi virtual memory.

    Pengukuran kecepatan putar...,Hermin Kosasih, FT UI, 2008

  • 8

    Hal terbaik dalam menghindari permasalahan ini adalah membentuk

    kernel kecil (micro kernel) yang dapat diprediksi dan terpisah dari kernel linux.

    Dengan membuat micro kernel ini secara sederhana, maka operasinya dapat

    diukur dan dapat diprediksi. Micro kernel ini memiliki fungsi mengontrol

    eksekusi tugas-tugas real time dan menjalankan kernel Linux standar sebagai

    tugas yang berjalan dalam mode background.

    Gambar 2.2 Kernel Linux Standar [3]

    Gambar 2.2 menunjukkan kernel Linux standar tanpa dukungan hard real

    time. Dalam gambar 2.2 ditunjukkan bahwa kernel Linux memisah hardware dari

    user-level task. Kernel memiliki kemampuan dalam menunda user-level task

    apapun, bilamana task tersebut telah melebihi penggunaan waktu yang

    dialokasikan kepadanya oleh CPU. Asumsi, sebagai contoh, sebuah user task

    yang mengontrol sebuah tangan robot. Kernel linux yang standar akan berpotensi

    menunda tugas pengontrolan tangan robot dan memberikan alokasi CPU ke tugas-

    tugas lain yang kurang genting. Konsekuensinya, tangan robot tersebut tidak dapat

    memenuhi suatu kriteria waktu yang ketat yang telah ditentukan. Oleh karena itu,

    dalam mencoba berlaku adil terhadap semua task, kernel tersebut telah

    menghambat tugas (task) yang genting.

    Pengukuran kecepatan putar...,Hermin Kosasih, FT UI, 2008

  • 9

    Gambar 2.3 Kernel RTLinux [3]

    Gambar 2.3 menunjukkan sebuah kernel linux yang dimodifikasi untuk

    mendukung hard real time. RTLinux berbentuk sebagai sebuah lapisan tambahan

    berada di antara kernel Linux standar dan perangkat keras komputer. Dalam

    pandangan kernel Linux standar, lapisan baru ini muncul sebagai perangkat keras

    yang sebenarnya. RTLinux memperkenalkan fixed-priority pada scheduler-nya

    sendiri. Scheduler (penjadwalan) menentukan prioritas terendah untuk kernel

    Linux standar dan menjalankannya sebagai tugas yang terpisah dengan tugas-

    tugas real time. Hal ini menyebabkan micro kernel mampu menginterupsi

    perangkat keras dan menjamin kernel Linux standar tidak menunda interupsi

    apapun yang bekerja dalam micro kernel sehingga waktu penundaan yang dapat

    terjadi pada tugas-tugas real time dapat diminimalisir.

    2.2 COMEDI

    COMEDI, singkatan dari Control and Measurement Device Interface,

    adalah suatu proyek free software yang mengembangkan driver-driver, tool dan

    library untuk berbagai jenis DAQ (Data Acquisition) board. Dengan

    menggunakan COMEDI, maka DAQ board dapat digunakan dalam melakukan

    aktivitas seperti membaca dan menulis sinyal analog, membaca dan menulis

    masukan/keluaran digital, melakukan proses encoder dan sebagainya. COMEDI

    terdiri dari dua paket yaitu paket comedi (yang mengimplementasi fungsi kernel

    space) dan comedilib (yang mengimplementasi akses user space ke fungsi

    Pengukuran kecepatan putar...,Hermin Kosasih, FT UI, 2008

  • 10

    device driver). COMEDI dapat berjalan pada kernel Linux standar dan juga pada

    RTLinux. Berikut ini adalah macam-macam paket yang didistribusi oleh pihak

    COMEDI:

    a. Paket Comedi merupakan kumpulan driver-driver untuk berbagai macam

    kartu data akusisi.

    b. Paket Comedilib merupakan paket distribusi yang terdiri dari sebuah user-

    space library yang menyediakan antar muka bagi Comedi device. Hal-hal

    lain yang turut dicantumkan dalam paket Comedilib adalah dokumentasi,

    fasilitas kalibrasi dan program-program demo.

    c. Paket Kcomedilib adalah sebuah modul kernel Linux (didistribusi

    bersamaan dengan paket comedi) yang menyediakan antar muka yang

    sama dengan comedilib dalam kernel space, dan cocok diterapkan untuk

    program real time. Jadi kcomedilib adalah kernel library untuk

    penggunaan Comedi pada program real time.

    2.2.1 Definisi Device Driver

    Sebuah kartu DAQ dapat diakses oleh program tidak terlepas karena

    adanya driver atau device driver. Device driver adalah sekumpulan perangkat

    lunak yang menjembatani ke sekumpulan perangkat keras misalnya printer, sound

    card atau motor drive. Device driver berfungsi menerjemahkan perintah-perintah

    yang diberikan dari perangkat keras untuk dapat dikonfigurasi, dibaca dan diolah

    ke dalam fungsi-fungsi umum dan struktur data untuk program.

    2.2.2 Hirarki Device

    COMEDI mengorganisasi semua perangkat keras berdasarkan hirarki

    umum berikut ini:

    Channel: Komponen perangkat keras low level, yang mewakili suatu saluran data tunggal. Misalnya sebuah masukan analog atau sebuah

    masukan digital. Setiap channel memiliki beberapa parameter seperti

    voltage range, reference voltage, dan channel polarity (unipolar,bipolar).

    Sub-device: sekumpulan channel yang memiliki fungsi yang sama yang secara fisik diimplementasi pada kartu interface yang sama.

    Pengukuran kecepatan putar...,Hermin Kosasih, FT UI, 2008

  • 11

    Device: sekumpulan sub-device yang secara fisik diimplementasi pada kartu interface yang sama. Sebagai contoh, peralatan National

    Instruments PCI 6024E memiliki empat sub-device yang terdiri dari 16

    buah analog input channel, dua buah analog output channel, 8 buah digital

    input/output channel dan dua buah counter.

    2.3 DATA ACQUISITION BOARD

    Data acquisition board merupakan instrumen yang dipakai dalam

    melakukan suatu proses pengukuran terhadap suatu kejadian, misalnya mengukur

    tegangan pada sensor temperatur. Secara umum, DAQ board melakukan kegiatan

    mendigitalisasi signal masukan analog, melakukan konversi dari sinyal digital ke

    analog, mengukur dan mengontrol sinyal digital input atau output. Sebagai

    informasi tambahan, untuk kartu DAQ NI PCI 6024E menggunakan sistem timing

    controller dari National Instruments untuk fungsi yang berhubungan dengan

    waktu dan terdiri dari tiga kelompok timing yaitu mengontrol masukan analog,

    keluaran analog dan fungsi general-purpose counter/timer.

    2.3.1 Konsep Dasar General Purpose Counter/Timer

    General-purpose counter/timer (GPCT) adalah counter yang memiliki

    kemampuan untuk menghitung secara count up ataupun secara count down,

    memiliki load dan save register, memiliki sebuah struktur pengontrol untuk

    mengimplementasi beberapa perhitungan umum dan memiliki fungsi timing I/O.

    Fungsi timing ini terdiri pengukuran periode, dan pulse-train generation dengan

    frekuensi dan duty cycle yang dapat diprogram. Kebanyakan fungsi dapat

    dioperasi dengan menggunakan hanya satu buah general-purpose counter. Ada

    dua mode operasi pengukuran pada kartu NI PCI 6024E yaitu single mode dan

    buffered mode. Dalam single mode, counter hanya melakukan satu buah

    pengukuran. Dalam buffered mode, counter melakukan serangkaian pengukuran

    yang berurutan.

    Modul GPCT memiliki dua buah counter 24-bit binary up/down yang

    identik dengan general-purpose counters 0 and 1. Gambar 2.4 menunjukkan

    model sederhana dari sebuah counter.

    Pengukuran kecepatan putar...,Hermin Kosasih, FT UI, 2008

  • 12

    Gambar 2.4 Model Sederhana dari General-Purpose Counter/Timer [2]

    Setiap counter GPCT memiliki sebuah input source (G_SOURCE), sebuah

    input gate (G_GATE) dan sebuah input control up/down (G_UP_DOWN). Ketika

    counter diaktifkan untuk menghitung, rising edges pada input G_SOURCE dapat

    menyebabkan counter menambah atau mengurang isi save register-nya. Masukan

    G_GATE berlaku sebagai sebuah sinyal pengontrol general-purpose dan dapat

    dioperasi sebagai sebuah sinyal pen-trigger counter, sinyal pengaktif counter,

    sinyal save, sinyal reload, sinyal interrupt, sinyal kontrol output, sinyal pemilih

    register load, dan sinyal penghenti counter. Input G_UP_DOWN bertujuan

    menentukan metode perhitungan pada counter yaitu metode perhitungan count up

    (penambahan) atau metode perhitungan count down (pengurangan). Keluaran

    counter adalah sinyal G_OUT dan sinyal interrupt. Pin G_OUT berfungsi

    mengeluarkan sinyal dari modul counter ke port keluaran pada kartu NI PCI

    6024E.

    2.3.2 Event-Counting pada GPCT

    Dalam event-counting, counter menghitung kejadian pada input

    G_SOURCE setelah counter diaktifkan. Kondisi-kondisi yang dialami oleh

    counter pada saat event counting adalah:

    a. Pin G_SOURCE berfungsi menerima pulsa-pulsa informasi.

    Pengukuran kecepatan putar...,Hermin Kosasih, FT UI, 2008

  • 13

    b. Pin G_GATE untuk mengindikasi kapan untuk memulai dan

    menghentikan interval penghitungan dan kapan untuk menyimpan isi

    counter pada save register.

    c. Software dapat membaca nilai counter secara asinkron atau membaca nilai

    simpanan di save register setiap saat.

    d. Pin G_UP_DOWN mengontrol metode perhitungan pada counter yaitu

    penambahan atau pengurangan.

    Dalam mode simple event counting, counter menghitung jumlah pulsa

    yang diberikan pada G_SOURCE ketika counter diaktifkan. Software dapat

    membaca isi counter kapan saja tanpa mengganggu proses perhitungan. Gambar

    2.5 menunjukkan sebuah contoh dari simple event counting di mana counter

    menghitung lima kejadian pada G_SOURCE.

    Gambar 2.5 Simple Event Counting [2]

    Dalam mode buffered non-cumulative event counting, counter secara

    umum memiliki karakteristik yang mirip dengan mode simple event counting

    kecuali adanya interval perhitungan secara berkelipatan. Sinyal G_Gate

    mengindikasi adanya limit antara serangkaian interval perhitungan. Counter

    menghitung pulsa yang diberikan pada sinyal G_SOURCE sesudah software

    mengaktifkan counter tersebut. Setiap terjadi active edge pada sinyal G_GATE,

    maka isi counter akan diisi ke hardware save register dan counter akan mengisi

    kembali isi counter ke nilai inisialnya untuk memulai interval perhitungan

    berikutnya. Sebuah interrupt akan memberitahukan CPU sesudah setiap interval

    perhitungan sehingga interrupt software dapat membaca hasil yang disimpan

    dalam hardware save register. Gambar 2.6 menunjukkan sebuah contoh

    perhitungan counter pada mode buffered non-cumulative event counting.

    Pengukuran kecepatan putar...,Hermin Kosasih, FT UI, 2008

  • 14

    Gambar 2.6 Buffered Non-Cumulative Event Counting dengan dua interval [2]

    2.4 INSTRUMEN INCREMENTAL ROTARY ENCODER

    Instrumen incremental rotary encoder atau dikenal juga sebagai

    incremental shaft encoder adalah salah satu tipe dari peralatan encoder yang

    memberikan keluaran dalam format digital. Hal ini menyebabkan instrumen

    sejenis ini lebih nyaman digunakan pada aplikasi pengontrolan yang

    menggunakan komputer, sebagaimana pengukuran dibutuhkan dalam bentuk

    digital. Oleh karena itu, proses konversi dari sinyal analog ke digital tidak perlu

    lagi dilakukan.

    Dewasa ini, instrumen ini banyak digunakan dalam industri terutama pada

    mesin-mesin seperti mesin pengemasan, tangan robot, pengontrol gerakan motor

    derek, mesin penggiling. Biasanya instrumen ini digunakan dalam menghitung

    sudut, posisi, revolusi, kecepatan, akselerasi dan jarak. Ada beberapa macam jenis

    incremental rotary encoder yang telah dikembangkan seperti jenis magnetis,

    kontak, resistif dan optis. Akan tetapi, jenis incremental rotary encoder yang akan

    dibahas dalam sub bab ini adalah jenis optis saja.

    2.4.1 Konsep Dasar Instrumen Incremental Rotary Encoder

    Konsep dasar operasi instrumen incremental rotary encoder adalah

    instrumen ini mengukur nilai sesaat posisi angular dari sebuah shaft yang sedang

    berotasi dan menghasilkan pulsa-pulsa pada channel-channel-nya. Pulsa-pulsa

    yang dihasilkan ini berbentuk gelombang square.

    Instrumen incremental rotary encoder biasanya memiliki tiga buah sinyal

    keluaran, yaitu sinyal A, sinyal B, dan sinyal Z, ditunjukkan dalam gambar 2.7.

    Untuk sinyal A dan sinyal B, masing-masing sinyal keluaran tersebut saling

    quadrature yang berarti terjadi pergeseran fasa 90O satu sama lain. Kedua sinyal

    Pengukuran kecepatan putar...,Hermin Kosasih, FT UI, 2008

  • 15

    tersebut selain memberikan nilai posisi shaft dari encoder, juga mampu

    menyediakan informasi mengenai arah putaran dari shaft misalnya berputar searah

    jarum jam atau berputar berlawanan arah jarum jam. Hal penting yang perlu

    diperhatikan hubungan antara sinyal A dan sinyal B adalah bahwa pergeseran fasa

    satu sama lain antara kedua sinyal tersebut harus berada dalam batas toleransi

    yang dapat diterima biasanya tidak melebihi 90O sehingga proses perhitungan

    dapat berlangsung dengan akurat.

    Untuk kebanyakan peralatan mesin motor atau aplikasi positioning, sinyal

    Z dikenal sebagai index signal, yang memiliki peranan penting dalam menentukan

    zero position dengan cara memberikan sebuah pulsa keluaran tunggal per satu

    revolusi.

    Gambar 2.7 Tiga Buah Sinyal Keluran Encoder[6]

    2.4.2 Prinsip Kerja Instrumen Optical Incremental Position Encoder

    Sebuah contoh dari sebuah optical incremental rotary encoder ditunjukkan

    dalam gambar 2.8. Pada gambar tersebut, instrumen ini terdiri dari sebuah sumber

    cahaya yaitu biasanya adalah LED, sebuah disc encoder (rotating disc), sebuah

    fixed disc, dan photo-detector. Letak posisi antara LED dan photo-detector

    disusun dengan sejajar, sehingga cahaya dari LED dapat masuk ke detector

    tersebut secara tegak lurus.

    Pengukuran kecepatan putar...,Hermin Kosasih, FT UI, 2008

  • 16

    Gambar 2.8 Optical Incremental Shaft Encoder [6]

    Disc yang ditunjukkan dalam gambar 2.9 adalah elemen kunci dari

    encoder dan secara umum terbuat dari bahan kaca dan diberi cap yang terbuat dari

    bahan logam sehingga membentuk slot-slot jendela yang mengelilingi bagian tepi

    dari disc encoder tersebut. Slot-slot ini bersifat tembus cahaya. Jumlah slot

    tersebut adalah sama dengan jumlah dari pulsa per satu revolusi. Sebagai contoh,

    sebuah disc kaca yang dicap dengan 1000 slot, bila disc tersebut telah bergerak

    180O jika dan hanya jika encoder tersebut telah mengeluarkan 500 pulsa.

    Gambar 2.9 Susunan Jendela dalam Incremental Rotary Encoder [6]

    Selama disc berotasi, LED secara konstan diaktifkan dan cahaya dari LED

    tidak secara terus-menerus mencapai photo-detector, tetapi hanya saat cahaya

    tersebut melewati slot-slot yang berada pada disc encoder tersebut. Saat cahaya

    masuk ke photo-detector, detector tersebut menghasilkan pulsa-pulsa keluaran

    berupa gelombang square.

    Pengukuran kecepatan putar...,Hermin Kosasih, FT UI, 2008

  • 17

    Kebanyakan dari incremental rotary encoder menyediakan sebuah tanda

    tunggal pada disc, disebut channel Z atau marker. Pulsa dari channel ini

    menyediakan sebuah referensi yang menandakan per satu revolusi.

    2.5 GTK+ (GIMP Toolkit)

    GTK+ merupakan singkatan dari GIMP Toolkit, asal mulanya GTK+

    didesain untuk raster graphics editor yang dikenal dengan sebutan GNU Image

    Manipulation Program (GIMP). GTK+ dibuat pertama kali di tahun 1997 oleh

    Peter Mattis, Spencer Kimball, dan Josh MacDonald. Dengan berlisensi Lesser

    General Public License (LGPL), GTK+ telah memberikan keuntungan berupa

    tidak perlunya membayar lisensi atau royalti dalam menggunakan GTK+ untuk

    penggembangan software baik open software, free software maupun software

    komersial. Dewasa ini, GTK telah digunakan dalam sejumlah besar proyek

    software termasuk di dalamnya proyek GNU Network Object Model Environment

    (GNOME), yang saat ini merupakan lingkungan desktop linux yang amat populer.

    GTK+ adalah sebuah object-oriented application programming interface

    (API) yang ditulis dalam bahasa pemrograman C. GTK+ diimplementasi dengan

    konsep kelas-kelas dengan tujuan membuat suatu sistem yang luas yang dibangun

    atas dirinya. GTK selain menyediakan elemen-elemen yang biasa digunakan

    dalam membuat interface suatu program misalnya button, label, text box dan

    window, juga menyediakan komponen-komponen yang lebih abstrak yang

    digunakan untuk application layout.

    Pengukuran kecepatan putar...,Hermin Kosasih, FT UI, 2008