• Tidak ada hasil yang ditemukan

BAB II LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB II LANDASAN TEORI"

Copied!
24
0
0

Teks penuh

(1)

5 2.1 Perkembangan Sistem Kontrol

Suatu sistem dapat di definisikan sebagai suatu kesatuan yang terdiri dari dua atau lebih komponen atau sub sistem yang saling berinteraksi untuk mencapai suatu tujuan

2.1.1 Sistem Kendali

Strategi didalam pengendalian sebuah mesin yang diarahkan oleh komputer sering dikenal sebagai teori pengendalian. Strategi ini sudah puluhan tahun dipelajari oleh ilmuwan dan telah diterapkan secara luas dalam mengatasi masalah-masalah perekayasaan. Pemahaman kerja dari system secara mekanik dan elektrit tercapai, perlu lebih dahulu diadakan identifikasi berbagai proses yang dilakukan, karenanya perlu diketahui peristilahan dan diagram konvensional yang dipergunakan.

Tujuan pengendalian adalah untuk menciptakan hasil kerja yang optimal, sesuai dengan output yang diterapkan dan memiliki kesalahan sekecil mungkin. Pada setiap karya manusia yang dapat dikategorikan sebagai mesin–mesin adalah mekanisme, terdiri atas bagian – bagian yang terpasang mati dan bagian – bagian yang dapat bergerak untuk melaksanakan pengubahan gaya, gerak atau listrik agar dapat menghasilkan suatu usaha. Tidak ada sifatnya yang terkendali, baik itu kendali langsung oleh manusia sebagai operator maupun yang terkendali secara otomatis berdasarkan rancangan kerja mesin tersebut. [(Warsito,1987)]

2.1.2 Loop terbuka

Sistem yang keluarannya tidak mempunyai pengaruh terhadap aksi kontrol disebut dengan sistem kendali loop terbuka. Berarti sistem kendali loop terbuka keluarannya tidak dapat dipergunakan sebagai perbandingan umpan balik dengan masukan.

Sistem kendali loop terbuka, keluaran tidak dapat dibandingkan dengan masukan acuan. Jadi, untuk tiap masukan acuan berhubungan dengan kondisi operasi

(2)

Pengendali Terkendali Sistem

Input Output tertentu, ketepatan dari sistem tergantung kepada kalibrasi. Diagram dari Sistem

Loop Terbuka dapat digambarkan sebagai berikut :

Gambar 2.1 : Diagram Sistem Kendali Loop Tertutup

2.1.3 Loop tertutup

Sistem yang mempertahankan hubungan yang ditentukan antara keluaran dan beberapa masukan acuan, dengan membandingkan mereka dan dengan menggunakan perbedaan sebagai alat kontrol dinamakan sistem kontrol umpan balik yang seringkali disebut sebagai sistem kendali loop tertutup.

Pada sistem loop tertutup, sinyal kesalahan yang bekerja, yaitu perbedaan antara sinyal masukan dan sinyal umpan balik (yang mungkin sinyal keluarannya sendiri atau fungsi dari sinyal keluaran dan turunannya), disajikan ke kontroller sedemikian rupa untuk mengurangi kesalahan dan membawa keluaran sistem kenilai yang dikehendaki. Istilah kendali loop tertutup selalu berarti penggunaan aksi kontrol umpan balik untuk mengurangi kesalahan sistem.

Perbandingan antara sistem kendali loop tertutup dan sistem kendali loop terbuka, suatu kelebihan dari sistem loop tertutup adalah penggunaan umpan balik yang membuat respon sistem relatif kurang peka terhadap gangguan eksternal dan perubahan internal pada parameter sistem. Jadi, mungkin dapat digunakan komponen-komponen yang relatif kurang teliti dan murah untuk mendapatkan pengontrollan sistem dengan teliti, hal ini tidak mungkin dapat diperoleh pada sistem loop terbuka. Diagram dari sistem loop tertutup dapat digambarkan sebagai berikut :

Gambar 2.2 : Diagram Sistem Kendali Loop Tertutup

Pengendali Sistem

Terkendali Umpan Balik

(3)

2.1.4 Komputer Sebagai Pengendali

Kemampuan komputer dalam pengolahan data secara aritmatis dan logis yang cukup tinggi memberikan kemampuan pada kontroller untuk dapat melaksanakan algoritma-algoritma pengambilan keputusan yang akurat dan canggih, disamping itu sistem penyimpanan data dan program dapat dikembangkan dengan lebih baik untuk berbagai variasi penugasan terhadap peralatan yang dibuat. Tugas-tugas akan dilakukan oleh mikroprosesor sebagai central processing unit (CPU), yang berkolaborasi dengan media penyimpanan (memori). Berdasarkan kemampuan yang dimilikinya, maka sistem mikroprosesor dapat menangani fungsi kontroller atau pengendalian.

Komputer dikenal mempunyai arsitektur yang terbuka yang ditandai dengan tersedianya slot-slot ekspand. Hal ini memungkinkan komputer untuk melakukan pengembangan yang lebih luas, salah satunya adalah menggunakan komputer sebagai pengendali device lain diluar system komputer tersebut. Akses yang dilakukan untuk mengendalikan device lain dapat dilakukan dengan menghubungkan komputer dengan device tersebut dengan menggunakan perantara slot ekspansi yang telah tersedia.

2.2 Komunikasi Perangkat

Jika kita hendak menghubungkan peranti peripheral seperti relay, motor, indikator, sensor, pembangkit frekuensi dan lain sebagainya, maka dibutuhkan rangkaian tambahan yang disebut interface atau antarmuka. Rangkaian ini bertugas untuk meyesuaikan peranti peripheral dengan komputer, karena besarnya tegangan, arus dan daya peranti peripheral kebanyakan tidak sesuai dengan yang ada dalam komputer, dan terutama karena kecepatan pengolahannya sangat berbeda dengan komputer, maka besaran-besaran ini harus disesuaikan dengan bantuan interface. Pengertian interface sendiri adalah rangkaian elektronik yang digunakan untuk menghubungkan antara dua sistem, agar sistem tersebut bisa berkomunikasi atau proses handshaking. [(Wolfgang Link : 45 : 1995)].

(4)

2.2.1 Interfacing Port Paralel

Paralel Port DB-25 yang sering kita jumpai pada CPU, sering kita gunakan sebagai interface antara Printer dengan CPU. Paralel Port interface yaitu rangkaian yang bertugas menyesuaikan kerja dari piranti peripheral yang sesuai dengan cara kerja komputer itu sendiri

2.2.1.1 Sejarah paralel port

Ketika IBM memperkenalkan PC tahun 1981, paralel printer port sudah di sediakan sebagai alternatif serial port untuk pengiriman data ke matrix printer yang teknologinya cepat berkembang. Paralel printer port mempunyai kemampuan mengirim 8 bit data sedangkan serial port hanya dapat mengirim 1 bit data, masing-masing dalam satu waktu pengiriman. Sehingga paralel port merupakan interface utama pada waktu itu untuk keperluan pencetakan. Dengan cepat berkembangnya teknologi komputer kebutuhan untuk hubungan external pun bertambah, paralel port kemudian menjadi alat yang dapat dihubungkan ke banyak peripheral, seperti ke portable disk drive, tape backup , local area network adapters dan CD ROM player.

Terdapat tiga katagori masalah yang dihadapi oleh developer dan user terhadap paralel printer port pada tahun-tahun setelah 1981. Pertama, walaupun teknologi PC berkembang sangat mengesankan akan tetapi tidak ada perubahan yang sesungguhnya pada arsitektur paralel printer port. Kecepatan maksimum data yang dapat dicapai adalah 150 kilo byte per detik. Kedua, tidak ada standarisasi elektronik terhadap interface paralel printer port sehingga para produsen printer dan peripheral lain sulit memberikan garansi terhadap compatibillity produk yang mereka produksi. Masalah terakhir adalah panjang kabel pengiriman data printer, maksimal hanya sekitar 183 cm.

Tahun 1991 diadakan pertemuan antara para produsen printer, para produsen tersebut diantaranya Lexmark, IBM, Texas Instruments menghendaki standarisasi terhadap printer port dan printer yang diproduksi. Para produsen tersebut membentuk Network Printing Alliance (NPA), NPA kemudian menentukan parameter-parameter untuk standarisasi tersebut, dari pertemuan tersebut juga

(5)

disepakati bahwa di perlukan koneksi bi-directional ke PC untuk meningkatkan kualitas paralel printer port maupun printer dalam menyelesaikan tugas-tugasnya.

NPA mengajukan proposal standarisasi kepada IEEE untuk pengembangan bi-directional paralel printer port yang berkecepatan tinggi namun tetap compatible dengan printer port software dan peripheral terdahulu, akan tetapi kecepatan transfer datanya dapat mencapai 1 Mega Byte atau lebih, baik input ataupun output. Jarak maksimum antara pengirim dan penerima adalah sekitar 8 meter karna umumnya kabel printer terpilin dengan kawat ground (twisted pair) maka produsen printer menganjurkan kabel tidak melebihi 3 m. Standarisasi tersebut kemudian menjadi

IEEE 1284 standard , "Standard Signaling Method for a Bi-directional Parallel

Peripheral Interface for Personal Computers", yang dikeluarkan oleh IEEE pada bulan maret 1994.

2.2.1.2 Port paralel sebagai antarmuka

Parallel Port merupakan salah satu port komunikasi pada komputer PC. Port tersebut mempunyai pin sebanyak 25 pin dengan tipe konektor female. Diagram skematik dari port tersebut adalah sebagai berikut :

Gambar 2.3 Diagram Skematik Parallel Port

Semua data, kontrol, dan status dari port paralel berhubungan dengan register yang ada didalam komputer. Dengan mengakses langsung

(6)

register-register tersebut, masukan dan keluaran dari port paralel dapat diatur. Register-register pada port paralel adalah:

a. 4 Jalur Kontrol.(Register control) (C0-C3) b. 5 Jalur Status.( Register status) (S3-S7) c. 8 Jalur Data (Register data) (Do-D7)

Masing-masing pin dari parallel port tersebut mempunyai fungsi seperti yang ditunjukkan pada tabel berikut :

Tabel 2.1. Daftar pin parallel port Pin No(D25) SPP Signal Direction

In/Out

Register

1 nStrobe In/Out Control

2 Data 0 In/Out Data

3 Data 1 In/Out Data

4 Data 2 In/Out Data

5 Data 3 In/Out Data

6 Data 4 In/Out Data

7 Data 5 In/Out Data

8 Data 6 In/Out Data

9 Data 7 In/Out Data

10 nAck In Status

11 Busy In Status

12 Paper-Out;PaperEnd In Status

13 Select In Status

14 nAuto Linefeed In/Out Control

15 nError/nFault In Status

16 nInitialize In/Out Control

17 nSelect-In In/Out Control

18 – 25 Ground Ground

Tabel di atas menggunakan ‘n’ di depan nama sinyal untuk menunjukkan bahwa sinyal tersebut aktif rendah (parallel port PC hanya mengenal level tegangan TTL).

Port parallel terbaru yang distandarisasi dengan IEEE.1284 mendifinisikan 5 macam mode operasi sebagai berikut :

1. Mode Kompatibilitas 2. Mode Nibble

(7)

4. Mode EPP 5. Mode ECP

Tujuan Standarisasi ini adalah untuk mendesain driver dan perlatan yang baru sehingga kompatibel dengan peralatan lainnya dan standard parallel port sebelumnya (SPP) yang diluncurkan pada tahun 1981.

Mode Kompatibilitas, Nibble, dan Byte digunakan sebagai standard perangkat keras yang tersedia di port parallel original.

Sedangkan untuk EPP dan ECP membutuhkan tambahan hardware sehingga mampu bekerja dengan kecepatan tinggi.

Mode Kompatibilitas atau sering disebut “Centronics” hanya dapat mengirimkan data pada arah maju (dari Host ke device external) dengan kecepatan 50 Kbyte sampai 150 Kbyte perdetik. Untuk menerima data harus diubah modenya menjadi mode Nibble atau Byte. Mode Nibble dapat menerima data 4 bit (Nibble) sedangkan mode Byte dapat menerima data 8 bit (1 byte).

Sistem operational dari port pararel yang di keluarkan IBM bersifat 2 arah atau Bi-directional. Sifat dari mode operasi ini yaitu terletak pada register data yang dapat berlaku dua arah in/out. Syarat untuk dapat menjalankan mode operasi ini yaitu mengaktifkan C5 pada register control dengan member sinyal “High” atau “1” pada pemrogaman port pararel.

2.2.1.3 Pengalamatan port parallel

Untuk dapat menggunakan port parallel, kita harus mengetahui alamatnya. Alamat LPT1 biasanya adalah 888 (378h) dan LPT2 biasanya 632 (278h) sedangkan untuk video card atau LPT0 biasanya adalah 956 (3BCh). Setelah kita mengetahui alamat dari port parallel, maka kita dapat menentukan alamat data port, control port, dan status port. Alamat data port adalah alamat dari port parallel tersebut, alamat status port adalah hasil penaikan 1 angka dari data port, dan alamat control port adalah hasil penaikan 2 angka dari data port. Lebih jelasnya lihat tabel di bawah ini:

(8)

Tabel 2.2. Alamat parallel port

Nama port Alamat register

LPT1 Data 378h / 888

LPT1 Status 379h / 889

LPT1 Control 37Ah / 890

2.2.2 TCP / IP

TCP/IP (singkatan dari Transmission Control Protocol/ Internet Protocol) adalah standar komunikasi data yang digunakan oleh komunitas internet dalam proses tukar-menukar data dari satu komputer ke komputer lain di dalam jaringan Internet. Protokol ini tidaklah dapat berdiri sendiri, karena memang protokol ini berupa kumpulan protokol (protocol suite). Protokol ini juga merupakan protokol yang paling banyak digunakan saat ini. Data tersebut diimplementasikan dalam bentuk perangkat lunak (software) di sistem operasi. Istilah yang diberikan kepada perangkat lunak ini adalah TCP/IP stack.

TCP/IP (Transmission Control Protocol/Internet Protocol) memiliki beberapa keunggulan, diantaranya :

1. Open Protocol Standard, yaitu tersedia secara bebas dan dikembangkan independen terhadap komputer hardware ataupun sistem operasi apapun. Karena didukung secara meluas, TCP/IP sangat ideal untuk menyatukan bermacam hardware dan software, walaupun tidak berkomunikasi lewat internet.

2. Independen dari physical network hardware. Ini menyebabkan TCP/IP dapat mengintegrasikan bermacam network, baik melalui ethernet, token ring, dial-up, X.25/AX.25 dan media transmisi fisik lainnya.

3. Skema pengalamatan yang umum menyebabkan device yang menggunakan TCP/IP dapat menghubungi alamat device-device lain di seluruh network, bahkan Internet sekalipun.

(9)

2.2.2.1 Sejarah TCP/IP

Sekitar tahun 70-an Department of Defence (DoD) di Amerika Serikat memelopori pengembangan protokol jaringan komputer yang sama sekali tidak terikat pada jenis komputer maupun media komunikasi yang digunakan. Protokol yang dikembangkan diberi nama InterNet Protocol (pada network layer) [1] dan Transmission Control Protocol (pada transport layer) [2] atau disingkat TCP/IP. Berbagai protokol tambahan kemudian dikembangkan untuk mengatasi berbagai masalah dalam jaringan TCP/IP. Jaringan komputer menggunakan TCP/IP kini lebih dikenal sebagai jaringan InterNet. Tampak bahwa jaringan InterNet berkembang dari kebutuhan dan implementasi di medan sehingga jaringan komputer ini terus disempurnakan. Saat ini TCP/IP merupakan standard pada sistem operasi UNIX dengan disertakan socket library untuk programmer di UNIX mengakes langsung ke TCP socket. Semua standard yang digunakan pada jaringan TCP/IP dapat diperoleh secara cuma-cuma dari berbagai komputer di InterNet. Untuk jangka panjang, kemungkinan TCP/IP akan menjadi standart dunia jaringan computer. (Onno W. Purbo).

2.2.2.2 Prinsip kerja InterNet Protokol (IP)

Fungsi dari InterNet Protokol secara sederhana dapat diterangkan seperti cara kerja kantor pos pada proses pengiriman surat. Surat kita masukan ke kotak pos akan diambil oleh petugas pos dan kemudian akan dikirim melalui route yang random, tanpa si pengirim maupun si penerima surat mengetahui jalur perjalanan surat tersebut. Juga jika kita mengirimkan dua surat yang ditujukan pada alamat yang sama pada hari yang sama, belum tentu akan sampai bersamaan karena mungkin surat yang satu akan mengambil route yang berbeda dengan surat yang lain. Di samping itu, tidak ada jaminan bahwa surat akan sampai ditangan tujuan, kecuali jika kita mengirimkannya menggunakan surat tercatat.

Prinsip di atas digunakan oleh InterNet Protokol, "surat" diatas dikenal dengan sebutan datagram. InterNet protokol (IP) berfungsi menyampaikan datagram dari satu komputer ke komputer lain tanpa tergantung pada media kompunikasi yang digunakan. Data transport layer dipotong menjadi datagram-datagram yang dapat

(10)

dibawa oleh IP. Tiap datagram dilepas dalam jaringan komputer dan akan mencari sendiri secara otomatis rute yang harus ditempuh ke komputer tujuan. Hal ini dikenal sebagai transmisi connectionless. Dengan kata lain, komputer pengirim datagram sama sekali tidak mengetahui apakah datagram akan sampai atau tidak.

Untuk membantu mencapai komputer tujuan, setiap komputer dalam jaringan TCP/IP harus diberikan IP address. IP address harus unik untuk setiap komputer, tetapi tidak menjadi halangan bila sebuah komputer mempunyai beberapa IP address. IP address terdiri atas 8 byte data yang mempunyai nilai dari 0-255 yang sering ditulis dalam bentuk [xx.xx.xx.xx] (xx mempunyai nilai dari 0-255).

2.2.2.3 Prinsip kerja Transmission Control Protocol (TCP)

TCP mempunyai prinsip kerja seperti "virtual circuit" pada jaringan telepon. TCP lebih mementingkan tata-cara dan keandalan dalam pengiriman data antara dua komputer dalam jaringan. TCP tidak perduli dengan apa-apa yang dikerjakan oleh IP, yang penting adalah hubungan komunikasi antara dua komputer berjalan dengan baik. Dalam hal ini, TCP mengatur bagaimana cara membuka hubungan komunikasi, jenis aplikasi apa yang akan dilakukan dalam komunikasi tersebut (misalnya mengirim e-mail, transfer file dsb.) Di samping itu, juga mendeteksi dan mengoreksi jika ada kesalahan data. TCP mengatur seluruh proses koneksi antara satu komputer dengan komputer yang lain dalam sebuah jaringan komputer.

Berbeda dengan IP yang mengandalkan mekanisme connectionless pada TCP mekanisme hubungan adalah connection oriented. Dalam hal ini, hubungan secara logik akan dibangun oleh TCP antara satu komputer dengan komputer yang lain. Dalam waktu yang ditentukan komputer yang sedang berhubungan harus mengirimkan data atau acknowledge agar hubungan tetap berlangsung. Jika hal ini tidak sanggup dilakukan maka dapat diasumsikan bahwa komputer yang sedang berhubungan dengan kita mengalami gangguan dan hubungan secara logik dapat diputus.

TCP mengatur multiplexing dari data yang dikirim/diterima oleh sebuah komputer. Adanya identifikasi pada TCP header memungkinkan multiplexing dilakukan. Hal ini memungkinkan sebuah komputer melakukan beberapa hubungan

(11)

TCP secara logik. Bentuk hubungan adalah full duplex, hal ini memungkinkan dua buah komputer saling berbicara dalam waktu bersamaan tanpa harus bergantian menggunakan kanal komunikasi. Untuk mengatasi saturasi (congestion) pada kanal komunikasi, pada header TCP dilengkapi informasi tentang flow control.

Hal yang cukup penting untuk dipahami pada TCP adalah port number. Port number menentukan servis yang dilakukan oleh program aplikasi diatas TCP. Nomor-nomor ini telah ditentukan oleh Network Information Center dalam Request For Comment (RFC) 1010 [10]. Sebagai contoh untuk aplikasi File Transfer Protokol (FTP) diatas transport layer TCP digunakan port number 20 dan masih banyak lagi.

Prinsip kerja dari TCP berdasarkan prinsip client-server. Server adalah program pada komputer yang secara pasif akan mendengarkan (listen) port number yang telah ditentukan pada TCP. Sedang client adalah program yang secara aktif akan membuka hubungan TCP ke komputer server untuk meminta servis yang dibutuhkan.

2.3 Komponen dan Rangkaian pendukung 2.3.1 Mikrokontroler AVR 8235

Mikrokontroler AVR merupakan mikrokontroler berbasis arsitektur RISC (Reduced Instruction Set Computing) 8 bit. Berbeda dengan mikrokontroler keluarga 8051 yang mempunyai arsitektur CISC (Complex Instruction Set Computing), AVR menjalankan sebuah instruksi tunggal dalam satu siklus dan memiliki struktur I/O yang cukup lengkap sehingga penggunaan komponen eksternal dapat dikurangi. Arsitektur RISC mengeksekusi perintah lebih cepat dari pada CISC karena tidak melalui proses konversi micro-code. Mikrokontroler AVR didesain menggunakan arsitektur Harvard, di mana ruang dan jalur bus bagi memori program dipisahkan dengan memori data. Memori program diakses dengan single-level pipelining, di mana ketika sebuah instruksi dijalankan, instruksi lain berikutnya akan di-prefetch dari memori program.

AVR ATMega 8535 memiliki bagian sebagai berikut:

1. Saluran I/O sebanyak 32 buah, yaitu port A, port B, port C, dan port D 2. CPU yang memiliki 32 buah register

(12)

3. SRAM sebesar 512 byte 4. Flash memory sebesar 8kb 5. EEPROM sebesar 512 byte

6. Tiga buah timer/counter dengan kemampuan pembanding 7. Two wire serial Interface

8. Port antarmuka SPI

9. Unit interupsi internal dan eksternal 10. Port USART untuk komunikasi serial

Gambar 2.4 : layout Pin Microcontroller AVR 8535

2.3.2 PPI 8255

PPI (Peripheral Programmable Interface) adalah interface yang bisa diprogram dan memiliki kelebihan yaitu dapat digunakan sebagai input maupun output ataupun dua-duanya. PPI memiliki 3 port 8 terminal yaitu port A, B dan C (port C dapat terbagi atas 2 yaitu port C upper 4 terminal dan port C lower 4 terminal). Masing-masing port ini dapat berfungsi sebagai Input atau Output, termasuk port C upper dan lower difungsikan sama atau beda. Fungsi ini terbentuk dari kondisi data bus yang deprogram/dirancang. Konfigurasi fungsi dari 8255 adalah

(13)

diprogram oleh sistem software sehingga tidak diperlukan komponen gerbang logika eksternal untuk perangkat peripheral interface.

Gambar 2.5 : Blok Diagram dan Layout Pin PPI 8255

Inisialisasi kata kontrol pada PPI 8255 masing-masing dapat dibuat menjadi port masukan, keluaran atau kombinasi masukan dan keluaran. PPI 8255 tidak dapat diprogram persaluran, tetapi perkelompok empat saluran. PPI 8255 dapat dibuat atau diprogram dalam 3 mode operasi kerja, yaitu :

a. Modus 0

Pada mode ini port A, port B dan port C bekerja sebagai port I/O yang sederhana, artinya tidak mempunyai fasilitas-fasilitas apakah penerimaan data telah berlangsung atau tidak (proses handshaking / jabat tangan). Sebagai I/O masing-masing port harus diprogram melalui kata kontrol.

Pendefinisian port sebagai input jika komputer menerima data dari suatu peralatan I/O, sebaliknya bila port didefenisikan sebagai output maka peralatan I/O menerima data dari komputer. Ini berlaku untuk port A dan port B saja, artinya port A dan port B masing-masing dapat digunakan sebagai 8 bit input saja atau 8 bit output saja. Sedangkan untuk port C dapat diprogram menjadi 2 bagian, dimana 8 bit dapat dibagi menjadi 4 bit pertama sebagai group upper (atas) dan 4 bit terakhir sebagai group lower (bawah). Dimana 4 bit masing-masingnya dapat diprogram sebagai input, ouput, atau bisa dikombinasikan menjadi 8 bit sebagai input saja atau sebagai output saja. Ada 16 kombinasi konfigurasi port yang berbeda dan dapat diprogram yaitu port A, port B, port C (lower), port C (upper). Pembagian untuk

(14)

masing-masing port ini hanya berlaku apabila PPI 8255 diprogram dalam mode 0. model masukan / keluaran dapat dipilih dengan cara mengisi kontrol register dengan kata kontrol (control word.

GROUP B PORT C (LOWER) 1=INPUT ; 0=OUTPUT PORT B 1=INPUT ; 0=OUTPUT MODE SELECTION 0=MODE 0 ; 1=MODE 1 GROUP A PORT C UPPER 1=INPUT ; 0=OUTPUT PORT A 1=INPUT ; 0=OUTPUT MODE SELECTION 0=MODE 0 ; 1=MODE 1

MODE SET FLAG 1=ACTIVE 0= NON ACTIVE D7 D6 D5 D4 D3 D2 D1 D0

Gambar 2.6 : Skema control PPI 8255

Dari gambar di atas terlihat bahwa D0, D1, D3, dan D4 digunakan untuk menentukan kombinasi port, sedangkan D2 menentukan modus operasi dari port B, D5 dan D6 menentukan modus operasi port A. D7 harus diset aktif tinggi (eberlogika “1”), bit set tersebut menentukan arah pemrograman PPI 8255 yang hendak dilakukan

Sebagai contoh, bila diinginkan agar PPI 8255 berfungsi sebagai : Port B dan Port C upper sebagai input, sedangkan Port A sebagai keluaran, maka susunan kata kontrolnya adalah :

(15)

D7 D6 D5 D4 D3 D2 D1 D0

1 0 0 0 1 0 1 0 = 8A Hex

b. Modus 1

Modus 1 memprogram 8 saluran sebagai masukan atau keluaran dalam satu kelompok dua belas saluran. Empat saluran yang tersisa disediakan untuk fungsi pengendali yang disebut single handshaking. Artinya port yang digunakan sebagai proses untuk mengetahui bahwa data telah diterima atau dikirim (proses jabat tangan/ handshaking), bisa diterapkan bahwa port A dan port B dapat diprogram sebagai input/output dan port C menyediakan proses handshaking.

c. Modus 2

Mode 2 menggunakan port A sebagai port input / output (bidirectional) dan port C upper (PC3..7) sebagai sinyal untuk handshaking. Port B dapat difungsikan sebagai port masukan saja atau sebagai keluaran saja dalam bentuk mode 1 atau mode 2. Jika port B dalam mode 1 berarti port C lower (PC2, PC1, PC0) difungsikan sebagai handshaking dijadikan sebagai pin keluaran saja atau masukan saja. Misalkan diberikan kata kotrol sebagai berikut :

1 1 0 0 0 1 1 0 = C6 Hexa

Terlihat port A dan port C sebagai output, port B sebagai input maka kata kotrolnya adalah C6 hexa.

Kata kotrol untuk menentukan bit set / reset adalah :

0 0 0 0 0 1 0 1 = 05 Hexa Maka kata kotrol untuk INTE B adalah 05 hexa. Semua kata kotrol ini harus ditulis ke register kontrol PPI 8255 dengan menggunakan alamat yang telah didefinisikan terlebih dahulu.

D7 D6 D5 D4 D3 D2 D1 D0

(16)

2.3.3 Led Display dan Indicator

LED digunakan sebagai display volume air didalam tangki dan juga sebagai indikator aktif tidaknya pompa unit dan valve unit. Led terhubung langsung dengan PPI 8255 yang dikendalikan dari mikrokontroler. Untuk menjaga arus yang melewati LED dipasang resistor 220 ohm. LED akan menyala ketika output PPI 8255 “0”. Sebaliknya LED akan padam saat output PPI 8255 “1”.

2.4 Pemrograman Perangkat 2.4.1 Visual Basic 6

Visual Basic 6.0 merupakan salah satu bahasa pemrograman yang dapat digunakan untuk menyusun dan membuat program aplikasi pada lingkungan sistem operasi Windows. Dengan menggunakan Visual Basic 6.0, kemampuan Windows dapat dimanfaatkan secara optimal. Kecanggihan yang dimiliki oleh Visual Basic 6.0 akan menjadikan betapa mudahnya menyusun program aplikasi dengan tampilan grafis yang menawan dalam waktu yang relatif singkat. Program aplikasi dapat berupa program database, program grafis, program kendali, dan lain sebagainya. Didalam Visual Basic 6.0 sudah terdapat komponen-komponen yang sangat membantu pembuatan program aplikasi.

Beberapa keuntungan menggunakan Visual Basic 6.0 daripada bahasa pemrograman yag lain diantaranya :

1. Tampilan grafis (under Windows) sehingga lebih “bersahabat”.

2. Cara pemrograman relatif lebih mudah sehingga cocok untuk segala tingkat programer.

3. Hubungan dengan perangkat luar (hardware) tidak begitu rumit sehingga cukup mudah untuk meng-implementasikan sebagai pengendali peralatan elektronik.

Langkah pertama dalam membuat program aplikasi dengan Visual Basic 6.0 adalah membuat sebuah project. Pembuatan sebuah project dapat dilakukan dengan beberapa cara, diantaranya dengan meng-klik Start | Program | Microsoft Visual Studio 6.0 | Microsoft Visual Basic 6.0.

(17)

Setelah itu akan terlihat tampilan pilihan jenis New Project, pilih Standart EXE maka akan terlihat tampilan IDE (Integrated Development Environment) Visual Basic 6.0.

Gambar 2.7 Tampilan IDE Visual Basic 6.0 1) Menu.

Visual Basic mempunyai tigabelas menu dan masing-masing menu mempunyai fungsi yang berbeda.

2) Toolbar

Toolbar mempunyai fungsi yang sama dengan menu, hanya saja berupa icon-icon gambar dan digunakan sebagai jalan pintas.

3) Toolbox

Toolbox merupakan tempat kontrol-kontrol yang akan digunakan untuk membantu pembuatan program aplikasi.

(18)

Project Explorer merupakan tempat yang digunakan untuk melihat daftar forms, modules, class modules, dan designers.

5) Properties Window

Properties Window berfungsi untuk mengatur properti dari setiap objek kontrol atau form. Pada Properties Window semua objek kontrol dapat diatur karakteristiknya.

6) Form Layout Window

Form layout window berfungsi untuk melihat atau mengetahui posisi tampilan form saat program dijalankan.

7) Form Objek

Form objek digunakan untuk menempatkan atau meletakkan objek dari kontrol-kontrol yang akan digunakan untuk merancang dan membuat program aplikasi.

8) Form Kode

Form kode digunakan sebagai tempat untuk menulis kode-kode program aplikasi.

Didalam Visual basic terdapat kontrol program, dimana alur eksekusi program dapat dikendalikan serta dapat menentukan keputusan apa yang harus dikerjakan oleh program pada kondisi tertentu. Kontrol program pada Visual Basic meliputi kontrol pertimbangan kondisi dan keputusan, kontrol pengulangan serta kontrol penyaluran alternatif. Beberapa kontrol program pada Visual Basic yang digunakan pada pemrograman ini :

1) If ... Then

Pernyataan ini mengetes suatu kondisi berdasarkan syarat kondisi kemudian menentukan suatu tindakan jika kondisi tersebut dipenuhi yang berupa pernyatan.

2) If ... Then ... Else

Pernyataan ini hampir sama dengan If ... Then ..., yaitu digunakan untuk mengetes suatu kondisi tertentu. Hanya saja, jika suatu kondisi tidak terpenuhi, maka alur program akan mengeksekusi pernyataan yang

(19)

lain kemudian menentukan suatu tindakan jika salah satu kondisi tersebut terpenuhi.

3) Select ... Case

Pada dasarnya perintah ini sama dengan perintah If ... Then ... Else, yaitu akan mengeksekusi satu blok pernyataan dari beberapa pilihan blok pernyataan. Hanya saja penulisannya lebih ringkas dan lebih mudah dimengerti.

4) Do ... Loop

Perintah Do ... Loop digunakan untuk perulangan suatu blok pernyataan sampai dipenuhinya syarat kondisi yang ditetapkannya

5) For ... Next

Perintah ini sama dengan melakukan perulangan seperti perintah Do ... Loop, tetapi dengan For ... Next bisa ditentukan nilai awal dan nilai akhir perulangan serta nilai kenaikannya.

2.4.2 Winsock

Winsock atau windows socket sebenarnya kepanjangan dari Windows Sockets API (aplication progaming interface) yang befungsi sebagai jembatan untuk software aplikasi yang berhubungan dengan network service terutama TCP/IP pada sistem operasi Windows.

Winsock.ocx adalah sebuah komponen yang disediakan oleh visual basic agar memudahkan aplikasi dapat mengirimkan data melalui jaringan. Pada program visual basic, winsock haruslah terintegrasi dengan aplikasi yang dibuat, untuk itu perlu mengintegrasikan kedalam program visual basic yang digunakan. Untuk mengaktifkan komponen winsock dengan meng-klik menu project | Components Pada program Microsoft Visual Basic 6.0. Setelah menu components terbuka, cari menu Microsoft winsock control 6.0, dan berikan tanda cek dari menu tersebut lalu klik OK. Maka komponen winsock yang merupakan komponen utama untuk pembuatan aplikasi berbasis jaringan akan terintegrasi dengan program visual basic yang kita gunakan.

(20)

Gambar 2.8 : Menu komponen pada VB6 dan integrasi komponen winsock pada VB6

2.4.3 Bahasa C

Bahasa C digunakan untuk pemrogaman mikrokontroler. Bahasa C sendiri ditemukan tahun 1970-an oleh ilmuwan dari AT&T Bell labs, tetapi perkembangan compiler bahasa tingkat menengah mulai ada tahun 1990-an. Penciptaan compiler merupakan suatu usaha untuk mengatasi kendala penggunaan bahasa assembly. Beberapa contoh compiler diantaranya adalah Raisonance Ride, win AVR, Code vision AVR, Bascom dan masih banyak lagi compiler yang di temukan. Pada perancangan ini digunakan compiler Code Vision AVR yang dapat dengan mudah ditemukan berupa freeware.

2.4.3.1 Struktur Penulisan Program C

Program C pada hakekatnya tersusun atas sejumlah blok fungsi. Sebuah program minimal mengandung sebuah fungsi. Fungsi pertama yang harus ada dalam program C dan sudah ditentukan namanya adalah main(). Setiap fungsi terdiri atas satu atau beberapa pernyataan, yang secara keseluruhan dimaksudkan untuk melaksanakan tugas khusus. Bagian pernyataan fungsi (sering disebut tubuh fungsi) diawali dengan tanda kurung kurawal buka ({) dan diakhiri dengan tanda kurung kurawal tutup (}). Di antara kurung kurawal itu dapat dituliskan statemen-statemen program C. Namun pada kenyataannya, suatu fungsi bisa saja tidak mengandung pernyataan sama sekali. Walaupun fungsi tidak memiliki pernyataan, kurung kurawal

(21)

haruslah tetap ada. Sebab kurung kurawal mengisyaratkan awal dan akhir definisi fungsi. Berikut ini adalah struktur dari program C

Bahasa C dikatakan sebagai bahasa pemrograman terstruktur karena strukturnya menggunakan fungsi-fungsi sebagai program-program bagiannya (subroutine). Fungsifungsi yang ada selain fungsi utama (main()) merupakan program-program bagian. Fungsi-fungsi ini dapat ditulis setelah fungsi utama atau diletakkan di file pustaka (library). Jika fungsi-fungsi diletakkan di file pustaka dan akan dipakai di suatu program, maka nama file judulnya (header file) harus dilibatkan dalam program yang menggunakannya dengan preprocessor directive berupa #include.

2.4.3.2 Pengenalan Fungsi-Fungsi Dasar a. Fungsi main()

Fungsi main() harus ada pada program, sebab fungsi inilah yang menjadi titik awal dan titik akhir eksekusi program. Tanda { di awal fungsi menyatakan awal tubuh fungsi dan sekaligus awal eksekusi program, sedangkan tanda } di akhir fungsi merupakan akhir tubuh fungsi dan sekaligus adalah akhir eksekusi program. Jika program terdiri atas lebih dari satu fungsi, fungsi main() biasa ditempatkan pada posisi yang paling atas dalam pendefinisian fungsi. Hal ini hanya merupakan kebiasaan. Tujuannya untuk memudahkan pencarian terhadap program utama bagi pemrogram. Jadi bukanlah merupakan suatu keharusan.

(22)

b. Fungsi printf().

Fungsi printf() merupakan fungsi yang umum dipakai untuk menampilkan suatu keluaran pada layar peraga. Untuk menampilkan tulisan

Selamat belajar bahasa C

misalnya, pernyataan yang diperlukan berupa: printf(“Selamat belajar bahasa C”);

Pernyataan di atas berupa pemanggilan fungsi printf() dengan argumen atau parameter berupa string. Dalam C suatu konstanta string ditulis dengan diawali dan diakhiri tanda petik-ganda (“). Perlu juga diketahui pernyataan dalam C selalu diakhiri dengan tanda titik koma (;). Tanda titik koma dipakai sebagai tanda pemberhentian sebuah pernyataan dan bukanlah sebagai pemisah antara dua pernyataan. Tanda \ pada string yang dilewatkan sebagai argumen printf() mempunyai makna yang khusus. Tanda ini bisa digunakan untuk menyatakan karakter khusus seperti karakter baris-baru ataupun karakter backslash (miring kiri). Jadi karakter seperti \n sebenarnya menyatakan sebuah karakter. Contoh karakter yang ditulis dengan diawali tanda \ adalah:

\” menyatakan karakter petik-ganda \\ menyatakan karakter backslash \t menyatakan karakter tab

Dalam bentuk yang lebih umum, format printf() printf(“string kontrol”, daftar argumen);

dengan string kontrol dapat berupa satu atau sejumlah karakter yang akan ditampilkan ataupun berupa penentu format yang akan mengatur penampilan dari argumen yang terletak pada daftar argumen. Mengenai penentu format di antaranya berupa:

%d untuk menampilkan bilangan bulat (integer)

%f untuk menampilkan bilangan titik-mengambang (pecahan) %c untuk menampilkan sebuah karakter

(23)

Contoh: #include <stdio.h> main( ) { printf(“No : %d\n”, 10); printf(“Nama : %s\n”, “Ali”); printf(“Nilai : %f\n”,80.5); printf(“Huruf : %c\n”,‘A’); }

2.4.3.3 Pengenalan Praprosesor #include

#include merupakan salah satu jenis pengarah praprosesor (preprocessor directive). Pengarah praprosesor ini dipakai untuk membaca file yang di antaranya berisi deklarasi fungsi dan definisi konstanta. Beberapa file judul disediakan dalam C. File-file ini mempunyai ciri yaitu namanya diakhiri dengan ekstensi .h. Misalnya pada program #include <stdio.h> menyatakan pada kompiler agar membaca file bernama stdio.h saat pelaksanaan kompilasi. Bentuk umum #include:

#include “namafile”

Bentuk pertama (#include <namafile>) mengisyaratkan bahwa pencarian file dilakukan pada direktori khusus, yaitu direktori file include. Sedangkan bentuk kedua (#include “namafile”) menyatakan bahwa pencarian file dilakukan pertama kali pada direktori aktif tempat program sumber dan seandainya tidak ditemukan pencarian akan dilanjutkan pada direktori lainnya yang sesuai dengan perintah pada sistem operasi.

Kebanyakan program melibatkan file stdio.h (file-judul I/O standard, yang disediakan dalam C). Program yang melibatkan file ini yaitu program yang menggunakan pustaka I/O (input-output) standar seperti printf().

(24)

2.4.3.4 Komentar dalam Program

Untuk keperluan dokumentasi dengan maksud agar program mudah dipahami di suatu saat lain, biasanya pada program disertakan komentar atau keterangan mengenai program. Dalam C, suatu komentar ditulis dengan diawali dengan tanda /* dan diakhiri dengan tanda */.

Contoh : /*

Tanda ini adalah komentar untuk multiple lines */

#include <stdio.h> main()

{

printf(“Coba\n”); //Ini komentar satu baris }

Gambar

Gambar 2.2 : Diagram Sistem Kendali Loop Tertutup
Gambar 2.3 Diagram Skematik Parallel Port
Tabel 2.1. Daftar pin parallel port  Pin No(D25)  SPP Signal  Direction
Tabel 2.2. Alamat parallel port  Nama port  Alamat register
+6

Referensi

Dokumen terkait

Program visual basic yang dibuat berfungsi sebagai ground segment , dimana ground segment ini berfungsi untuk menampung semua data yang dikirimkan dari payload ,

Visual Basic NET adalah Visual Basic yang direkayasa kembali untuk digunakan pada platform NET sehingga aplikasi yang dibuat menggunakan Visual Basic NET data berjalan

Microsoft Visual Basic 6.0 menyediakan berbagai perangkat kontrol yang dapat digunakan untuk membuat program aplikasi dalam sebuah form baik aplikasi kecil,

Untuk mengoprasikan atau menggabungkan Arduino pada PC ( Personal Computer ), kita dapat menggunakan program – program seperti Processing, Flash, MaxMSP, Visual Basic, dan lain

Visual Basic.Net adalah Visual Basic yang direkayasa kembali untuk digunakan pada platform .NET sehingga aplikasi yang dibuat menggunakan Visual Basic .NET dapat

Toolbox merupakan sebuah jendela dimana object atau kontrol ditempatkan yang dibutuhkan untuk membentuk suatu program, dengan cara dipasang pada form.. Gambar

Setelah instalasi selesai ,untuk menjalankanya, dari menu start arahkan pointer ke Microsoft Visual Basic 6.0 dan klik kiri mouse, pada saat anda akan membuat program dengan

Sejak dikembangkan pada tahun 80-an, visual basic kini telah mencapai versinya yang ke-6.Visual Basic merupakan turunan bahasa BASIC dan menawarkan pengembangan aplikasi