BAB III PERANCANGAN ALAT Secara umum sistem pengendalian ketinggian cairan dalam bentuk level simulator berbasis avr 8535 yang dikendalikan melalui jaringan tcp/ip melalui antarmuka port paralel ini terdiri atas dua bagian utama, dimana masing-masing bagian tersusun atas komponen perangkat keras (hardware) dan komponen perangkat lunak (software).
3.1
Perancangan Perangkat Keras Perangkat keras yang digunakan merupakan perangkat simulator level tangki
air yang digunakan sebagai alat yang terkendali, dimana terdapat switch sebagai simulator 2 valve air dan 1 pompa air, dan led sebagai simulator level dan juga antarmuka yang menjembatani dengan komputer sebagai pengendalinya. Perancangan sistem ini berbasis Mikrokontroler AVR 8535 beserta komponen pendukungnya sebagai berikut
Gambar 3.1 : Perancangan Sistem Mikrokontroler Ada tiga bagian perangkat keras yang digunakan yaitu : 1. Unit Mikrokontroler 2. Unit interface 3. Display dan switch control
29
Bab III Perancangan Alat
3.1.1
30
Mikrokontroler Mikrokontroler digunakan sebagai komponen utama kendali simulator
dengan fungsinya untuk melakukan simulasi perhitungan perubahan level tangki berdasarkan input dari switch atau computer melalui parallel port, kemudian di tampilkan menggunakan led sebagai petunjuk level tangki. Perancangan sistem ini berbasis Mikrokontroler beserta komponen pendukungnya dibagi atas perancangan modul sebagai berikut :
Gambar 3.2 Schematic Mikrokontroler AVR 8535 Penggunaan port-port untuk input dan output pada mikrokontroler AVR 8535 adalah sebagai berikut: ¾ Port a0 – a7 digunakan sebagai parallel data bus, untuk mengirim data dari MCU ke PC. Data yang dikirim adalah data kalkulasi level air 0-100 dec dalam bentuk 8 bit data, dan bit ke 7 hanya untuk status mode pengoperasian “Remote/Local” ¾ Port b0 – b2 digunakan menyalakan / mematikan led kondisi pompa & valve ¾ Port b4 – b7 digunakan ppi control bus, untuk mengaktifkan pengiriman data dari MCU ke PPI
Bab III Perancangan Alat
31
¾ Port c0 – c4 digunakan untuk membaca input dari switch sebagai kendali lokal pompa & valve ¾ Port c5 – c7 digunakan sebagai paralel control bus, untuk membaca input dari PC sebagai kendali remote pompa & valve ¾ Port d0 – d7 digunakan sebagai PPI data bus, untuk mengirim data dari MCU ke PPI Penggunaan port paralel PC mempunyai aturan berikut Table 3.1 Penggunaan Pin Paralel Port Pin No(D25)
Direction In/Out 1 ή-Strobe In/Out 2 Data 0 In/Out 3 Data 1 In/Out 4 Data 2 In/Out 5 Data 3 In/Out 6 Data 4 In/Out 7 Data 5 In/Out 8 Data 6 In/Out 9 Data 7 In/Out 10 ή-Ack In 11 In Busy 12 In Paper-Out;PaperEnd 13 Select In 14 ή-Auto Linefeed In/Out 15 ή-Error/nFault In 16 ή-Initialize In/Out 17 ή-Select-In In/Out 18 – 25 Ground Ground Tanda ή menunjukkan logika terbalik pada pin parallel tersebut.
3.1.2
SPP Signal
Register Control Data Data Data Data Data Data Data Data Status Status Status Status Control Status Control Control
Unit Interface Komunikasi MCU ke PC digunakan untuk mengirim kendali pompa dan
valve dari PC ke simulator, dan mengirim data level tangki dari simulator ke PC. Perancangan unit antarmuka ini digunakan untuk menghubungkan MCU dengan port paralel pada computer, dengan gambar 3.3 sebagai berikut.
Bab III Perancangan Alat
32
Gambar 3.3 : Schematic paralel port dari MCU ke PC Penyambungan MCU ke parallel port PC menggunakan aturan sebagai berikut: ¾ MCU port a0 – a7 disambung ke parallel port d0 – d7, dimana 7 bit digunakan untuk mengirim data angka / persentase level tangki dari MCU ke PC, dan 1 bit terakhir digunakan sebagai pengirim kondisi local/remote. ¾ MCU port c5 disambung ke parallel control port c0 pin-1 untuk mengirim kendali valve 1 dari PC ke MCU ¾ MCU port c6 disambung ke parallel kontrol port c1 pin-14 untuk mengirim kendali valve 2 dari PC ke MCU ¾ MCU port c7 disambung ke parallel control port c2 pin-16 untuk mengirim kendali pompa dari PC ke MCU
Bab III Perancangan Alat
3.1.3
33
Display dan Switch Control Perancangan display digunakan untuk simulasi level pada tangki air, dengan
gambar 3.4 sebagai berikut
Gambar 3.4 : Schematik PPI ke LED level Penggunaan PPI sebagai port expander atau menambah jumlah I/O pada MCU yang dihubungkan ke 20 led. Led menyala sesuai data yang dilatch dalam PPI, dimana data dikirim dari MCU sesuai dengan tabel berikut Tabel 3.2 Data MCU ke PPI untuk menyalakan LED
Bab III Perancangan Alat
34
Perancangan switch digunakan sebagai simulator valve dan pompa, dengan gambar 3.5 sebagai berikut
Gambar 3.5 : Manual switch ke MCU Switch didesain menggunakan untuk mengubah input ke MCU port c0 – c3 dari logika 0 ke logika 1 dan sebaliknya. Pada saat switch diubah logikanya terutama pada jenis switch mekanis akan terjadi bouncing selama + 20ms. Selama bouncing terjadi data dibaca oleh microprosessor, maka akan terjadi kesalahan interprestasi yaitu terjadi masukan data yang berbeda untuk keypad yang sama. Bouncing dapat diatasi dengan hardware/software, khusus pada switch, bouncing diatasi dengan software yaitu dengan menggunakan delay. Dengan penambahan delay pada inputan dalam mili second maka akan meredam bouncing dan mikro akan membaca sinyal yang telah stabil dari switch.
Bab III Perancangan Alat
3.2
35
Perancangan Perangkat Lunak Perangkat keras yang digunakan merupakan perangkat simulator level tangki
air yang digunakan sebagai alat yang terkendali, dimana ada tiga bagian perangkat lunak yang digunakan yaitu : 1. Perangkat lunak Mikrokontroler 2. Perangkat lunak dengan VB 6 sisi server 3. Perangkat lunak dengan VB 6 sisi client
3.2.1
Perangkat Lunak Untuk pemrograman Mikrokontroler
Perangkat lunak pada mikrokontroler didesain dengan fungsi •
Menerima input logika dari switch sebagai dasar perhitungan level
•
Menerima & menterjemahkan input logika dari PC sebagai dasar perhitungan level
•
Melakukan perhitungan dan aplikasi database untuk membuat simulasi level
•
Mengirim output ke PPI sebagai driver untuk menyalakan led
•
Mengirim output ke PC melalui parallel data bus untuk memberi informasi angka / persentase level
Bab III Perancangan Alat
36
Gambar 3.6 : Flow chart pemrogaman mikrokontroler Perhitungan dan aplikasi database pada mikrokontroler membuat level berubah mirip dengan perubahan level pada tangki sesungguhnya dengan cara melakukan pembaruan display sesuai waktu yang diperhitungkan, dengan flowchart berikut
Bab III Perancangan Alat
37
Gambar 3.7 Flowchart perhitungan database mikrokontroler
3.2.2
Perangkat lunak dengan Visual Basic 6.0
3.2.2.1 Pembuatan aplikasi sisi server Perangkat lunak pada sisi server di desain dengan fungsi pembacaan dan pengiriman sinyal ke parallel port, perhitungan untuk auto system, dan pengiriman serta eksekusi data dari sisi client. Pembacaan dan pengiriman sinyal ke parallel port di desain untuk pemrogaman per bit dari tiap pin parallel tersebut. Hal tersebut dapat dilakukan dengan penambahan io.dll pada system32 windows. Berikut flow chart untuk pemrogaman sisi server dengan visual basic 6.0.
Bab III Perancangan Alat
Gambar 3.8 Flowchart pemrogaman sisi server
38
Bab III Perancangan Alat
39
Program diawali dengan pembacaan data parallel port, hal ini dilakukan untuk initialisasi awal dan pembacaan data dari data D0-D7 paralel port. Bila hal ini gagal maka program akan di tutup. Bila berhasil maka data dari parallel port akan langsung ditampilkan ke display. Berikutnya akan di connect ke client yang berujung pada pengiriman dan penerimaan perintah dari client. Seting manual di sini berarti peralatan valve-1, valve-2 dan pompa di jalankan secara manual sesuai perintah operator, sedangkan untuk setting auto maka valve dan pompa akan berjalan berdasarkan set point Low Low “LL” dan High High“HH” yang di tetapkan. Dimana untuk Low “L” adalah 10% lebih tinggi dari LL, dan untuk High “H” adalah 10% lebih rendah dari HH. Berikut timing diagram untuk kondisi sistem auto untuk menjalankan level simulator.
Gambar 3.9 Timing diagram sistem auto level simulator
3.2.2.2 Pembuatan aplikasi sisi client Perangkat lunak pada sisi client di desain untuk menerima informasi dari server dan mengontrol level simulator dengan cara mengirimkan perintah atau data ke server. Berikut flow chart untuk pemrogaman sisi client dengan Visual basic 6.0.
Bab III Perancangan Alat
Gambar 3.10 Flowchart pemrogaman sisi client
40
Bab III Perancangan Alat
41
Pemrogaman di mulai dengan permintaan koneksi ke sisi server, bila server merespon maka client akan menerima data dari server dan di tampilkan ke dalam display, level yang terbaca pada level simulator. Siklus ini terus berlangsung hingga client ingin mengontrol dengan sistem manual, maka valve-1, valve-2 dan pompa dapat dikontrol langsung dari sisi client, tingkat berikutnya yaitu mengirim perintah tersebut ke sisi server yang akan di teruskan ke valve-1, valve-2, dan pompa pada level simulator.