BAB 2 LANDASAN TEORI 2.1. Pengukuran - Simulasi Sistem Otomasi Pompa untuk Pengukuran Volume Minyak pada Tanki Diesel dengan Menggunakan Sensor Ultrasonik Ping))) Parallax Berbasis Mikrokontroller At89S51

BAB 2 LANDASAN TEORI

2.1. Pengukuran

  Pengukuran volume dan tinggi permukaan minyak sangat berguna untuk diterapkan diberbagai bidang disiplin ilmu lainnya dalam kehidupan setiap hari. Dalam segi pengukuran dan pemantauan yang dilakukan secara manual oleh manusia memiliki keterbatasan. Maka perlu dilakukan perancangan dan realisasi sistem pengukuran volume permukaan minyak dikarenakan untuk mendapatkan perbandingan terhadap suatu keadaan. Salah satu contohnya yaitu mengukur volume dan tinggi permukaan minyak pada tanki diesel sehingga didapat suatu definisi tertentu dari keadaan yang diukur yaitu berapa banyak minyak terpakai dan yang tersisa pada tanki tersebut.

  Dilihat dari tinjauan tujuan pengukuran, setidaknya dapat memenuhi tiga aspek diantaranya yaitu :

  1. Ketelitian (presision) Ketelitian alat menyatakan derajat kepastian hasil pengukuran. Suatu alat ukur dikatakan memiliki tingkat ketelitian yang tinggi jika dilakukan pengukuran beberapa kali, dimana nilai yang didapat mendekati sama atau konstan terhadap besaran acuan.

  2. Ketepatan (Akurasi) Akurasi adalah kesesuaian antara hasil pengukuran dengan nilai yang sebenarnya (standar). Dengan kata lain suatu alat ukur harus memiliki kehandalan terhadap ketepatan nilai hasil pengukuran.

  3. Sensitivitas (kepekaan) Kepekaan suatu alat ukur adalah ukuran minimal yang masih terdeteksi oleh alat tersebut yang ditentukan berdasarkan respon terjadinya perbedaan suatu besaran yang terdeteksi atau terbaca persatuan besaran sebenarnya.

  2.2 Gelombang Ultrasonic

  Gelombang ultrasonik merupakan gelombang suara yang memiliki frekuensi mulai

  20KHz

  • –20MHz. Frekuensi kerja yang digunakan dalam gelombang ultrasonik bervariasi tergantung pada medium yang dilalui, mulai dari kerapatan rendah pada fasa gas, cair hingga padat.

  [11]

Gambar 2.1 Pembagian Rentang Frekuensi Gelombang Suara

  Gelombang ultrasonik merupakan gelombang mekanik dengan frekuensi diatas 20 kHz sehingga tidak terdengar oleh telinga manusia. Gelombang ini banyak dimanfaatkan dalam bidang dunia industri, maritim, dan kedokteran. Dalam dunia industri sering dijumpai pengukuran ketinggian atau sound test untuk melihat retakan pada material, sedangkan didunia kedokteran gelombang ultrasonik digunakan sebagai ultrasonografi pada alat USG.

  2.3 Perangkat Keras (Hardware)

Hardware merupakan perangkat fisik dari sebuah sistem sehingga dapat dilihat oleh

  mata. Hardware yang dibuat dapat dikelompokkan menjadi dua bagian yaitu: 1.

  Bagian Mekanis Bagian mekanis adalah hardware beroperasi sesuai dengan input yang diberikan dan memberikan hasil nilai berupa output terhadap objek yang dieksekusi melaui sensor ultrasonic yang di dapat dari hasil ukur jarak objek terhadap sensor menurut ukuran yang telah ditetapkan sebelumnya.

2. Bagian Elektronis

  Bagian elektronis terbuat dari komponen-komponen elektronika yang dirangkai sedemikian rupa sehingga bisa mendukung kinerja mekanis. Bagian elektronis terdiri dari dua bagian penting yaitu: a.

  Sensor b. Pengendali mikro atau mikrokontroler

2.3.1 Sensor

  Sensor adalah suatu variabel yang digunakan untuk mengubah besaran fisik menjadi tegangan dan arus listrik. Sensor sering digunakan untuk mendeteksi pada saat

  

[10]

melakukan pengukuran atau pengendalian.

  Adapun jenis-jenis dari sensor diantaranya: 1. Sensor Suhu

  Sensor suhu merupakan sebuah sensor yang digunakan untuk mengubah besaran panas menjadi besaran listrik yang dapat dianalisis besarnya. Komponen elektronika untuk keperluan pengukuran suhu yang paling mudah ditemukan adalah Negative Temperature Coefficient (NTC) dan Positive

  Temperature Coefficient (PTC). Keduanya adalah resistor yang hambatannya

  dapat berubah sesuai dengan suhu di sekitarnya. Hambatan NTC akan turun apabila suhu di sekitarnya naik, sedangkan hambatan PTC akan naik apabila suhu di sekitarnya naik.

2. Sensor Mekanik

  Sensor mekanis digunakan untuk mendeteksi posisi, pergerakan, kecepatan, atau tekanan pada suatu benda. Contohnya adalah strain gauge dan bourdon

  tube (untur mengukur tekanan) potensiometer (untuk mengukur sudut putaran), dan load cell (untuk mengukur gaya).

  Sensor ini memanfaatkan perubahan nilai hambatannya. Dengan demikian, bila hambatannya berubah, maka output sensor akan berubah.

  3. Sensor Cahaya atau Optik Sensor cahaya merupakan suatu sensor yang digunakan untuk mengubah besaran cahaya menjadi besaran listrik. Sensor cahaya yang paling mudah ditemukan dan digunakan adalah Light Dependent Resistor (LDR), yakni resistor khusus yang nilai hambatannya dapat berubah sesuai dengan intensitas cahaya. Jika cahaya makin terang (intensitas cahaya naik), nilai hambatan LDR mengecil. Sebaliknya, bila intensitas cahayanya berkurang, nilai hambatan LDR akan membesar.

  4. Sensor Jarak Sensor jarak adalah sebuah sensor yang mampu mendeteksi keberadaan benda di dekatnya tanpa kontak fisik. Sensor jarak sering memancarkan elektromagnetik atau berkas radiasi elektromagnetik (inframerah, misalnya), dan mencari perubahan dalam bidang atau sinyal kembali. Salah satunya adalah sensor Ultrasonic PING))) buatan PARALLAX.

2.3.1.1 Sensor ultrasonic PING))) parallax

  Sensor PING))) merupakan sensor ultrasonic yang dapat mendeteksi jarak obyek dengan cara memancarkan gelombang ultrasonic dengan frekuensi 40 KHz dan kemudian mendeteksi pantulannya. Tampilan sensor jarak PING))) ditunjukkan pada gambar 2.2.

  [10]

Gambar 2.2 Sensor Ultasonic PING)))

  [10]

  Spesifikasi sensor: 1.

  Kisaran pengukuran 3 cm – 3 m.

  2. Input trigger – positive TTL pulse, 2 uS min., 5 uS tipikal.

  3. Echo hold off 750 uS dari fall of trigger pulse.

  4. Delay before next measurement 200 uS.

  Burst indicator LED menampilkan aktifitas sensor. Sensor ini dapat mengukur

  jarak antara 3 cm sampai 300 cm. Keluaran dari sensor ini berupa pulsa yang lebarnya merepresentasikan jarak. Lebar pulsanya bervariasi dari 115 uS sampai 18,5 mS. Pada dasanya, PING))) terdiri dari sebuah chip pembangkit sinyal 40KHz, sebuah speaker

  

ultrasonic dan sebuah mikropon ultrasonic. Speaker ultrasonic mengubah sinyal

  40 KHz menjadi suara sementara mikropon ultrasonic berfungsi untuk mendeteksi pantulan suaranya. Sensor ultrasonic memiliki 3 kaki (pin) yang berfungsi sebagai

  [10]

  berikut: 1.

  Pin Ground 2. Pin Supply 3. Pin Input dan Output

  Pin signal dapat langsung dihubungkan dengan mikrokontroler tanpa tambahan komponen apapun. PING))) hanya akan mengirimkan suara ultrasonic ketika ada pulsa trigger dari mikrokontroler (Pulsa high selama 5 uS). Suara ultrasonic dengan frekuensi sebesar 40 KHz akan dipancarkan selama 200 uS. Suara ini akan merambat di udara dengan kecepatan 344 m/detik, mengenai objek untuk kemudian terpantul kembali ke PING))). Selama menunggu pantulan, PING))) akan menghasilkan sebuah pulsa. Pulsa ini akan berhenti (low) ketika suara pantulan terdeteksi oleh PING))). Oleh karena itu lebar pulsa tersebut dapat merepresentasikan jarak antara PING)))

  [10] dengan objek.

2.3.1.2 Prinsip kerja sensor ultrasonic PING)))

  Gelombang ultrasonic adalah gelombang dengan besar frekuensi diatas frekuensi gelombang suara yaitu lebih dari 20 KHz. Seperti telah disebutkan bahwa sensor

  ultrasonic terdiri dari rangkaian pemancar ultrasonic yang disebut transmitter dan

  rangkaian penerima ultrasonic yang disebut receiver. Sinyal ultrasonic yang dibangkitkan akan dipancarkan dari transmitter ultrasonic. Ketika sinyal mengenai benda penghalang, maka sinyal ini dipantulkan, dan diterima oleh receiver ultrasonic.

  Sinyal yang diterima oleh rangkaian receiver dikirimkan ke rangkaian mikrokontroler untuk selanjutnya diolah untuk menghitung jarak terhadap benda di depannya (bidang pantul). Prinsip kerja dari sensor ultrasonic dapat ditunjukkan dalam gambar 2.3 berikut.

  [11]

Gambar 2.3 Prinsip Kerja Sensor Ultrasonic

  [10]

  Prinsip kerja dari sensor ultrasonic adalah sebagai berikut : 1.

  Sinyal dipancarkan oleh pemancar ultrasonic. Sinyal tersebut berfrekuensi diatas 20 kHz, biasanya yang digunakan untuk mengukur jarak benda adalah 40 kHz.

  Sinyal tersebut di pancarkan oleh rangkaian pemancar ultrasonic.

  2. Sinyal yang dipancarkan tersebut kemudian akan merambat sebagai sinyal/gelombang bunyi dengan kecepatan bunyi yang berkisar 344 m/s. Sinyal tersebut kemudian akan dipantulkan dan akan diterima kembali oleh bagian penerima Ultrasonic.

  3. Setelah sinyal tersebut sampai di penerima ultrasonic, kemudian sinyal tersebut akan diproses untuk menghitung jaraknya. Jarak dihitung berdasarkan rumus: .......................................... (1)

  Dimana: S = Jarak pantulan (m)

   v = Kecepatan rambat gelombang ultrasonic pada udara (344 m/s) t = waktu (s) Dari rumus tersebut maka dapat dihitung berapa lama waktu yang dibutuhkan untuk jarak tiap 1 cm yaitu: Maka didapat setiap 1 cm gelombang ultrasonik akan membutuhkan waktu tempuh (t) yaitu sebesar . Sehingga untuk menentukan jarak objek dari sensor dapat dihitung dengan membandingkan waktu pantulan (t p ) dengan waktu per cm (t) lalu dikalikan dengan 1 cm.

  [11]

Gambar 2.4 Diagram waktu sensor PING)))

  Sensor Ping mendeteksi jarak obyek dengan cara memancarkan gelombang

  ultrasonic (40 kHz) selama tBURST (200 μs) kemudian mendeteksi pantulannya.

  Sensor Ping memancarkan gelombang ultrasonic sesuai dengan kontrol dari mikrokontroler pengendali (pulsa trigger dengan tOUT min. 2 μs). Gelombang ultrasonic ini merambat melalui udara dengan kecepatan 344 meter per detik, mengenai obyek dan memantul kembali ke sensor. Ping mengeluarkan pulsa output

  

hight pada pin SIG setelah memancarkan gelombang ultrasonik dan setelah

  gelombang pantulan terdeteksi Ping akan membuat output low pada pin SIG. Lebar pulsa Hight (tIN) akan sesuai dengan lama waktu tempuh gelombang ultrasonik untuk 2x jarak ukur dengan obyek. Maka jarak yang diukur adalah :

  ....................................................(2)

  [10]

Gambar 2.5 Jarak Ukur Sensor PING)))

2.3.2 Mikrokontroler

  Mikrokontroler adalah sebuah sistem komputer fungsional dalam sebuah chip. Di dalamnya terkandung sebuah inti prosesor, memori (sejumlah kecil RAM, memori program, atau keduanya), dan perlengkapan input output.

  Dalam merancang aplikasi elektronika digital dibutuhkan sebuah alat/komponen yang dapat menghitung, mengingat, dan mengambil pilihan serta digunakan sebagai pemrosesan data. Kemampuan ini dimiliki oleh sebuah komputer, namun tidaklah efisien jika harus menggunakan komputer hanya untuk keperluan tersebut. Untuk itu peran komputer dapat digantikan dengan sebuah minimun sistem mikrokontroler. Sistem kerja Mikrokontroler sama dengan mikroprosesor, namun mikrokontroller lebih efisien untuk keperluan aplikasi elektronika digital sederhana dikarenakan pada device ini sudah terdapat RAM, ROM, dan prosesor dalam satu chip. Mikrokontroler seri MCS-51 termasuk sederhana, murah dan mudah didapat dipasaran. Salah satu mikrokontroler seri MCS-51 adalah mikrokontroler AT89S51.

2.3.2.1 Arsitektur dan susunan pin mikrokontroler AT89S51 Mikrokontroler AT89S51 adalah mikrokontroler keluaran ATMEL.Inc.

  Mikrokontroler ini kompatibel dengan keluaran mikrokontroler 80C51. Mikrokontroler AT89S51 terdiri dari 40 pin dan sudah memiliki memori flash di dalamnya, sehingga sangat praktis untuk digunakan. Berikut diagram blok AT89S51 secara umum terdapat 4 port untuk I/O serta tersedianya akumulator, RAM, Stac

  [3] pointer , ALU, pengunci (latch) dan rangkaian osilasi .

  [3]

Gambar 2.6 Arsitektur dan Susunan Pin Mikrokontroler AT89S51

  Beberapa kemampuan (fitur) yang dimiliki mikrokontroler AT89S51 adalah

  [3]

  sebagai berikut : 1.

  Memiliki 4K Flash Erasable Programmable Read Only Memory (EPROM) yang digunakan untuk menyimpan program.

  Flash Erasable Programmable Read Only Memory (EPROM) dapat ditulis dan dihapus sebanyak 1000 kali (menurut manual).

2. Memiliki internal RAM 128 byte.

  Random Access Memory (RAM), suatu memori yang datanya akan hilang bila

  Pin 40 Vcc, Masukan catu daya +5 volt DC 2. Pin 20 Gnd, Masukan catu daya 0 volt DC 3. Pin 32-39 P0.0-P0.7, Port input/output delapan bit dua arah yang juga dapat berfungsi sebagai bus data dan bus alamat bila mikrokontroler menggunakan memori luar (eksternal).

  INT1 (pin 13) Saluran Interupsi eksternal 1 (aktif rendah) 10.

  INT0 (pin 12) Saluran Interupsi eksternal 0 (aktif rendah) 9.

  TXD (pin 11) Port komuikasi output serial 8.

  6. RXD (pin 10) Port komunikasi input serial 7.

  5. Pin 10-17 P3.0-P3.7Port input/output delapan bit dua arah, selain itu Port 3 juga memiliki alternativef fungsi sebagai :

  4. Pin 1-8 P1.0-P1.7, Port input/output dua arah delapan bit dengan internal pull up.

  7. Menangani 6 sumber interupsi. Keterangan fungsi dari masing-masing pin adalah sebagai berikut : 1.

  catu padam, diakses secara random, tidak sekuensial, artinya dialamat mana saja dapat dicapai secara langsung dengan cepat.

  Program bisa diproteksi, sehingga tidak dapat dibaca oleh orang lain.

  5. Operasi clock dari 0 hingga 24 MHz 6.

  4. Dua buah timer/counter 16 bit.

  Port ini berfungsi sebagai terminal input dan output. Selain itu, dapat digunakan sebagai terminal komunikasi paralel, serta komunikasi serial (pin10 dan 11).

  4 buah 8-bit I/O (Input/Output) port

  3.

  T0 (pin 14) Input Timer 0 11. T1 (pin 15) Input Timer 1

  12. WR(pin 16) Berfungsi sebagai sinyal kendali tulis, saat prosesor akan menulis data ke memori I/O luar.

  13. RD (pin 17) Berfungsi sebagai sinyal kendali baca, saat prosesor akan membaca data dari memori I/O luar.

  14. Pin 9 RESET, Pin yang berfungsi untuk mereset mikrokontroller AT89S51 ke keadaan awal.

  15. Pin 30 ALE (Address Latch Enable), berfungsi menahan sementara alamat byte rendah pada proses pengalamatan ke memori eksternal.

  16. Pin 29 PSEN (Program Store Enable), Sinyal pengontrol yang berfungsi untuk membaca program dari memori eksternal.

  17. Pin 31 EA, Pin untuk pilihan program, menggunakan program internal atau eksternal. Bila „0‟, maka digunakan program eksternal.

  18. Pin 19 X1, Masukan ke rangkaian osilator internal. Sumber osilator eksternal atau quartz crystal kristal dapat digunakan.

  19. Pin 18 X2, Masukan ke rangkaian osilator internal, koneksi quartz crystal atau tidak dikoneksikan apabila digunakan eksternal osilator.

2.3.2.1.1 Spesifikasi mikrokontroler AT89S51

  1. Tegangan kerja 4 – 5.0V.

  Untuk mendukung fungsi pengendalian, mikrokontroler AT89S51 memiliki spesifikasi yaitu:

  3.

  256x8 bit RAM internal.

  4.

  32 jalur I/0 dapat diprogram.

  5.

  3 buah 16 bit Timer/Counter.

  6.

  8 sumber interrupt.

  2. Bekerja dengan rentang 0 – 33MHz.

  7. Saluran full dupleks serial UART yang dapat digunakan sebagai media transfer data serial atau pun parallel ke PC.

  8. Dua data pointer.

2.3.2.2 Struktur pengoperasian port

  Struktur pengendalian port terdiri dari:

  2.3.2.2.1 Port input/output

One chip mikrokontroler ini memiliki 32 jalur port yang dibagi menjadi 4 buah port 8

  bit. Masing-masing port ini bersifat bidirectional sehingga dapat digunakan sebagai input port atau output port. Pada blok diagram AT89C51 dapat dilihat latch tiap bit pada keempat port : port 0, port 1, port 2, port 3. Masing-masing jalur port terdiri dari

  

latch, output driver dan input buffer. Port 0 dan port 2 dapat digunakan sebagai

  saluran data dan alamat. Port 0 sebagai saluran data, sedangkan port 2 sebagai saluran data dan alamat sekaligus yang dimultipleks. Untuk mengakses memory eksternal, port 0 akan mengeluarkan alamat bawah memori eksternal yang dimultipleks dengan data yang dibaca dan ditulis. Sedangkan port 2 mengeluarkan bagian atas memory eksternal sehingga total alamat semuanya 16 bit.

  Latch yang digunakan dapat dipresentasikan dengan D-FlipFlop. Data dari bus internal di-latch saat CPU memberi sinyal tulis ke latch dan output latch diberikan ke bus internal sebagai respon dari sinyal baca pin dari CPU. Beberapa instruksi yang berfungsi membaca port mengaktifkan sinyal baca latch dan yang lain mengaktifkan sinyal baca pin. Port 1, port 2, dan port 3 mempunyai pull-up internal, sedangkan port 0 dengan open drain. Masing-masing jalur I/O dapat digunakan sebagai input atau output. Bila digunakan sebagai input, port latch harus 1. Untuk port 1, 2 dan 3, pin-pin akan di pull-up tinggi oleh pull-up internal, dan bisa juga di pull-up rendah dengan sumber eksternal.

  2.3.2.2.2 Timer/Counter

One chip mikrokontroler ini memilik dua timer yang dapat dikonfigurasikan

  beroperasi sebagai timer atau counter. Saat berfungsi sebagai timer, isi register timer ditambah 1 untuk tiap siklus mesin, sedangkan untuk fungsi counter isi register akan bertambah 1 setiap ada transisi sinyal pada pin input eksternal.

  Pada pemanfaatan sebagai counter, sinyal input yang dimaksudkan dapat berupa low level atau falling edge trigger. Counter akan mencacah setiap masukan yang ada sesuai inisialisasi harga awal dari counter pada nilai hitungan untuk tiap sampling. Inisialisasi harga awal ini berupa nilai preset negatif counter yang diatur sebelum counter dijalankan.

  Demikian halnya dengan pemanfaatan timer yang memerlukan inisialisasi awal berupa konstanta waktu yang menentukan sampai berapa lama akan terjadi roll over. Penentuan harga preset ini berhubungan dengan penggunaan frekuensi clock dari sistem penentu waktu sampling dari counter untuk mencacah suatu pulsa masukan dari luar dengan memanfaatkan kontrol interupsi yang ada serta pengaturan program. Sebagai tambahan pada pemilihan countr/timer, timer 0 dan timer 1 mempunyai 4 buah modul yang dapat dipilih dengan menentukan pasangan bit M0 dan M1 pada register TMOD. Untuk pemilihan timer/counter dikontrol dengan bit C/T di TMOD. Mode 0 Pada mode ini timer register dikonfigurasikan sebagai register 13 bit.

  Ke-13 bit register tersebut terdiri dari 8 bit TH1 dan 5 bit TL1. Selama perhitungan roll over dari semua 1 ke semua 0, TF1 (Timer Interrupt Flag) di set. Pada dasarnya operasi mode 0 sama untuk timer 0 dan timer . Mode 1 Mode 1 adalah timer register 16 bit dan dapat generator boudrate.

  Operasi mode 1 sama dengan mode 0. Mode 2 Mode 2 adalah timer register dengan konfigurasi 8 bit counter (TL1) auto reload. Overflow dari TL1 tidak hanya menset TF1 tapi juga mereload TL1 dengan isi TH1. Setelah reload isi TH1 tidak akan berubah. Operasi mode ini juga sama dengan timer/counter 0.

  Mode 3 Pada mode ini timer 1 tidak akan bekerja. Sedangkan timer 0 menjadi 2 counter yang terpisah. TL0 digunakan sebagai bit kontrol untuk timer 0; C/T, GATE, TR0, INT0, dan TF0 seolah-olah mengontrol timer 1.

2.3.3 Komunikasi Serial RS232

  RS232 adalah standar komunikasi serial yang digunakan untuk koneksi periperal ke periperal. Biasa juga disebut dengan jalur I/O. Contohnya adalah koneksi antara komputer dengan modem, atau komputer dengan mouse bahkan bisa juga antara komputer dengan komputer, semua biasanya dihubungkan lewat jalur port serial RS232.

  Standar ini menggunakan beberapa piranti dalam implementasinya. Paling umum yang dipakai adalah plug/konektor DB9 atau DB25. Untuk RS232 dengan konektor DB9, biasanya dipakai untuk mouse, modem, kasir register dan lain sebagainya, sedang yang konektor DB25, biasanya dipakai untuk joystik game.

  Standar RS232 ditetapkan oleh Electronic Industry Association (EIA) dan

  

Telecomunication Industry Association (TIA) pada tahun 1962. Nama lengkapnya

  adalah EIA/TIA-232 Interface Between Data Terminal Equipment dan Data Circuit- Terminating Equipment Employing Serial Binary Data Interchange .

  Fungsi dari serial port RS232 adalah untuk menghubungkan/koneksi dari perangkat yang satu dengan perangkat yang lain, atau peralatan standar yang menyangkut komunikasi data antara komputer dengan alat-alat pelengkap komputer. Perangkat lainnya itu seperti modem, mouse, cash register dan lain sebagainya. Serial port RS232 pada konektor DB9 memiliki pin 9 buah dan pada konektor DB25 memiliki pin 25 buah. Adapun fungsi dari masing-masing pin seperti pada table 2.1.

Tabel 2.1 Funsi Pin DB9 dan Pin DB25

  Pin DB9 Pin DB25 Singkatan Keterangan Fungsi

  Pin 3 Pin 2 TD Transmiter Untuk pengiriman data serial (TxD)

  Data

  Pin 2 Pin 3 RD Receiver Data Untuk penerimaan data serial (RxD)

  Pin 7 Pin 4 RTS Request To Sinyal untuk

  Send menginformasikan perangkat

  bahwa UART siap melakukan pertukaran data Pin 8 Pin 5 CTS Clear To Send Digunakan untuk memberitahukan bahwa perangkat siap melakukan pertukaran data

  Pin 6 Pin 6 DSR Data Set Memberitahukan UART

  Ready bahwa perangkat siap

  melakukan pertukaran data Pin 5 Pin 7 SG Signal Ground Dihubungkan ke ground Pin 1 Pin 8 CD Carrier Detect Saat perangkat mendeteksi suatu carrier dari perangkat lain, maka sinyal ini akan aktif

  Pin 4 Pin 20 DTR Data Terminal Untuk memberitahukan

  Ready bahwa UART siap

  melakukan pertukaran data Pin 9 Pin 22 RI Ring Indikator Akan aktif jika ada sinyal masuk

2.3.3.1 Prinsip kerja RS232

  Ada dua hal pokok yang diatur pada standar RS232 diantaranya adalah: 1.

  Bentuk sinyal 2. Level tegangan yang dipakai

  RS232 dibuat pada tahun 1962, jauh sebelum IC TTL populer, oleh karena itu level tegangan yang ditentukan untuk RS232 tidak ada hubungannya dengan level tegangan

  Transistor Transistor Logic (TTL).

  Sebuah penggerak (driver) harus mampu menangani arus ini tanpa mengalami kerusakan. Selain mendeskripsikan level tegangan, standard RS232 juga menentukan jenis-jenis sinyal yang dipakai mengatur pertukaran informasi antara Data Terminal

  

Equiepment (DTE) dan Data Circuit Equiepment (DCE), semuanya terdapat 2 jenis

  sinyal tapi yang umum dipakai hanyalah 9 jenis sinyal. Sesuai dengan konektor yang sering dipakai dalam standard RS232, untuk sinyal yang lengkap dipakai konektor DB25, sedangkan konektor DB9 hanya bisa dipakai untuk 9 sinyal yang umum dipakai seperti gambar 2.7 berikut.

  [4].

Gambar 2.7 Susunan pin DB9

  Sinyal-sinyal tersebut ada yang menuju ke Data Circuit Equipment (DCE) ada juga yang berasal dari DCE. Bagi sinyal yang menuju ke DCE artinya Data Terminal

  

Equiepment (DTE) berfungsi sebagai output dan DCE berfungsi sebagai input,

  misalnya sinyal Transmitter Data (TD), pada sisi DTE kaki TD adalah output, dan kaki ini dihubungkan ke kaki TD pada DCE yang berfungsi sebagai input. Kebalikan sinyal TD adalah Receive Data (RD), sinyal ini berasal dari DCE dan dihubungkan ke kaki RD pada DTE yang berfungsi sebagai output.

2.3.4 IC-Max232

  Untuk dapat berkomunikasi antara mikrokontroller dengan komputer, maka diperlukan suatu penyetaraan level tegangan. Besarnya level tegangan komunikasi serial (Level Tegangan RS232) adalah -25 s.d -3 V untuk logika high (1) dan +3 s.d

  • 25 V untuk logika low (0). Hal ini sangat berbeda dengan level tegangan pada mikrokontroller (Level Tegangan TTL/CMOS) dimana untuk logika high (1) level tegangannya adalah 5 V dan untuk logika low (0) level tegangannya adalah 0 V. Oleh karena itu diperlukan sebuah antarmuka yang dapat menyamakan level tegangan dari komunikasi serial pada komputer dengan mikrokontroller, yaitu IC RS232 produksi MAXIM yang disebut MAX232.

  MAX232 adalah saluran driver/receiver ganda yang termasuk pembangkit tegangan kapasitip yang menyediakan level tegangan RS232 dari sebuah sumber tegangan 5V. Setiap receiver pada IC MAX232 ini mengkonversikan level tegangan RS232 ke level tegangan TTL/CMOS sebesar 5 V. Dan setiap receiver ini mempunyai ambang batas sebesar 1.3 V, dan histeresis sebesar 0.5 V, serta dapat menerima masukan level tegangan ±30 V. Sedangkan untuk setiap driver pada IC MAX232 ini mengkonversikan level tegangan masukan TTL/CMOS menjadi level tegangan

  [13] RS232 .

  [13]

Gambar 2.8 Skema Diagram dan Bentuk Fisik IC MAX232

2.3.5 Relay

  Dalam dunia elektronika, relay dikenal sebagai komponen yang dapat mengimplementasikan logika switching. Sebelum tahun 70an, relay merupakan “otak” dari rangkaian pengendali. Setelah itu muncul PLC yang mulai menggantikan posisi

  

relay . Relay yang paling sederhana ialah relay elektromekanis yang memberikan pergerakan mekanis saat mendapatkan energi listrik. Secara sederhana relay elektromekanis ini didefinisikan sebagai berikut:

  1. Alat yang menggunakan gaya elektromagnetik untuk menutup (atau membuka) kontak saklar.

  2. Saklar yang digerakkan (secara mekanis) oleh daya/energi listrik.

  2.3.5.1 Prinsip Kerja Relay dan Simbol

Relay terdiri dari coil dan contact. Coil adalah gulungan kawat yang mendapat arus

  listrik, sedang contact adalah sejenis saklar yang pergerakannya tergantung dari ada tidaknya arus listrik di coil. Contact ada 2 jenis: Normally Open (kondisi awal sebelum diaktifkan open), dan Normally Closed (kondisi awal sebelum diaktifkan

  

close ). Secara sederhana berikut ini prinsip kerja dari relay: ketika Coil mendapat

  energi listrik (energized), akan timbul gaya elektromagnet yang akan menarik

  

armature yang berpegas, dan contact akan menutup seperti yang terlihat pada gambar

2.8 berikut.

  [12]

  Gambar. 2.9 Skema relay elektromagnetik

2.3.6 Motor Pendorong (Pompa)

  Motor pendorong atau pompa air ialah motor yang membantu memindahkan minyak dari keluaran produksi di pindahkan ke tangki melalui pipa saluran, pompa ini memiliki daya listrik AC 220v dan tersabung dengan relay melalui terminal/ soket listrik, apabila sudah pada data minimal pompa akan hidup dan apabila pada data maksimal pompa mati. Bentuk fisik dari motor pendorong dapat di lihat pada gambar .

  2.10

  [8]

Gambar 2.10. Motor Pendorong (pompa)

2.4 Perangkat Lunak (Software) Sistem

2.4.1 Bahasa assembly

  Secara fisik, kerja dari sebuah mikrokontroller dapat dijelaskan sebagai siklus pembacaan intruksi bahasa mesin (Assembly) yang tersimpan di dalam memori. menentukan alamat dari memori program yanng akan dibaca, dan

  Mikrokontroller

  melakukan proses baca data di memori. Data yang dibaca diinterpretasikan sebagai intruksi. Alamat intruksi disimpan oleh mikrokontroler di register atau yang sering disebut sebagai program counter. Di sisi lain perbedaan bahasa assembly untuk mikrokontroller yaitu seperti intruksi MOV untuk Byte pada pengalamatan bit dikelompokkan sesuai dengan metode pengalamatan (addressing modes). Mode pengalamatan menjelaskan bagaimana operand dioprasikan. Berikut bentuk program bahasa assembly secara umum:

   Mnemonic Operan 1 operan 2 komentar (opcode) MOV

   A, #30H ; kirim 30Heksa ke akumulator A

  Bahasa yang digunakan untuk memprogram IC mikrokontroler AT89S51 adalah bahasa assembly untuk MCS-51. angka 51 merupakan jumlah instruksi pada bahasa ini hanya ada 51 instruksi. Dari 51 instruksi, yang sering digunakan hanya 10 instruksi. Instruksi

  • –instruksi tersebut antara lain: 1.

  Instruksi MOV Perintah ini merupakan perintah untuk mengisikan nilai ke alamat atau register tertentu. Pengisian nilai dapat secara langsung atau tidak langsung.

  Contoh : pengisian nilai secara langsung

  MOV R0,#20h

  Perintah di atas berarti : isikan nilai 20 Heksadesimal ke register 0 (R0). Tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah nilai. Contoh pengisian nilai secara tidak langsung

  MOV 20h,#80h ...........

  ............ MOV R0,20h

  Perintah di atas berarti : isikan nilai yang terdapat pada alamat 20 Heksadesimal ke register 0 (R0).Tanpa tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah alamat.

  2. Instruksi DJNZ Decreament Jump If Not Zero (DJNZ) ini merupakan perintah untuk mengurangi nilai register tertentu dengan 1 dan lompat jika hasil pengurangannya belum nol. Contoh,

  MOV R0,#80h Loop: ...........

  ............ DJNZ R0,Loop ............

  R0 - 1, jika belum 0 lompat ke loop, jika R0 = 0 maka program akan meneruskan ke perintah pada baris berikutnya.

  3. Instruksi ACALL Instruksi ini berfungsi untuk memanggil suatu rutin tertentu.

  Contoh: .............

  ACALL TUNDA .............

  TUNDA: .................

  4. Instruksi RET Instruksi RETURN (RET) ini merupakan perintah untuk kembali ke rutin pemanggil setelah instruksi ACALL dilaksanakan. Contoh,

  ACALL TUNDA .............

  TUNDA: .................

  RET

  5. Instruksi JMP (Jump) Instruksi ini merupakan perintah untuk lompat ke alamat tertentu. Contoh:

  Loop: .................

  .............. JMP Loop

  6. Instruksi JB (Jump if bit)

  Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang dimaksud berlogika high (1). Contoh:

  Loop: JB P1.0,Loop .................

  7. Instruksi JNB (Jump if Not bit) Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang dimaksud berlogika Low (0).

  Contoh:

  Loop: JNB P1.0,Loop ................

  8. Instruksi CJNZ (Compare Jump If Not Equal) Instruksi ini berfungsi untuk membandingkan nilai dalam suatu register dengan suatu nilai tertentu.

  Contoh:

  Loop: ................

  CJNE R0,#20h,Loop ................

  Jika nilai R0 tidak sama dengan 20h, maka program akan lompat ke rutin Loop. Jika nilai R0 sama dengan 20h,maka program akan melanjutkan instruksi selanjutnya.

  9. Instruksi DEC (Decreament) Instruksi ini merupakan perintah untuk mengurangi nilai register yang dimaksud dengan 1.

  Contoh:

  MOV R0,#20h R0 = 20h ................

  DEC R0 R0 = R0

  • – 1 .............

10. Instruksi INC (Increament)

  Instruksi ini merupakan perintah untuk menambahkan nilai register yang dimaksud dengan 1. Contoh:

  MOV R0,#20h R0 = 20h ................

  INC R0 R0 = R0 + 1 .............

2.4.2 Software 8051 editor, assembler, simulator (IDE)

  Instruksi-instruksi yang merupakan bahasa assembly tersebut dituliskan pada sebuah editor, yaitu 8051 Editor, Assembler, Simulator (IDE). Tampilannya seperti pada gambar 2.11.

  [3]

Gambar 2.11 Editor, Assembler, Simulator (IDE) Setelah program selesai ditulis, kemudian di-save dan selanjutnya di-compile. Pada saat di-compile akan tampil pesan peringatan dan kesalahan. Jika masih ada kesalahan atau peringatan, itu berarti ada kesalahan dalam penulisan perintah atau ada nama subrutin yang sama, sehingga harus diperbaiki terlebih dahulu sampai tidak ada pesan kesalahan lagi. Software 8051IDE ini berfungsi untuk merubah program yang dibuat di-converter ke dalam bilangan heksadesimal, proses perubahan ini terjadi pada saat meng-compile program. Bilangan heksadesimal inilah yang akan di-download ke mikrokontroller.

2.4.3 Software downloader

  Untuk men-download bilangan-bilangan heksadesimal ini ke mikrokontroller digunakan software ISP- Flash Programmer 3.0a berupa software open source dandapat didownload dari internet. Tampilannya seperti pada gambar 2.12.

  [3]

Gambar 2.12 Tampilan software downloader

  Cara menggunakannya adalah dengan meng-klik Open File untuk mengambil file heksadesimal dari hasil kompilasi 8051IDE, kemudian klik Write untuk mengisikan hasil kompilasi tersebut ke mikrokontroler.

2.4.4 Visual basic 6.0

  Pada projek sistem akuisisi data pada SCADA, Grapic User Interface (GUI) sangat diperlukan sebagai antar muka keluaran data output objek yang dikontrol. Rancang bangun dari interfacing dapat dibangun menggunakan Microsoft Visual Basic 6.0.

  Microsoft Visual Basic merupakan sebuah bahasa pemrograman yang

  menawarkan Integrated Development Environment (IDE) untuk membuat program perangkat lunak berbasis sistem operasi Microsoft Windows dengan menggunakan model pemrograman (COM). Visual Basic merupakan turunan bahasa pemrograman BASIC dan menawarkan pengembangan perangkat lunak komputer berbasis GUI.

  Visual Basic 6.0 adalah perkembangan dari versi sebelumnya dengan beberapa

  penambahan komponen yang sedang tren saat ini, seperti kemampuan pemrograman internet dengan DHTML (Dynamic HyperText Mark Language), dan beberapa penambahan fitur database dan multimedia yang semakin baik. Sampai saat buku ini ditulis bisa dikatakan bahwa Visual Basic 6.0 masih merupakan pilih pertama di dalam membuat program aplikasi yang ada di pasar perangkat lunak nasional. Hal ini disebabkan oleh kemudahan dalam melakukan proses development dari aplikasi yang dibuat. Interface antar muka Visual Basic 6.0, berisi menu, toolbar, toolbox, form, project explorer dan property seperti terlihat pada gambar 2.13.

  [2]

Gambar 2.13 Interface Antar Muka Visual Basic 6.0

2.4.4.1 Konsep Dasar Pemrograman Dalam Visual Basic 6.0

  Konsep dasar pemrograman Visual Basic 6.0, adalah pembuatan form dengan mengikuti aturan pemrograman Properti, Metode dan Event. Keterangan aturan tersebut yaitu: 1.

  Properti Setiap komponen di dalam pemrograman Visual Basic dapat diatur propertinya sesuai dengan kebutuhan aplikasi. Property yang tidak boleh dilupakan pada setiap kompone n adalah “Name”, yang berarti nama variabel (komponen) yang akan digunakan dalam scripting. Properti “Name” ini hanya bisa diatur melalui jendela Property, sedangkan nilai peroperti yang lain bisa diatur melalui script seperti berikut. Command1.Caption=”Play” Text1.Text=”Visual Basic” Label1.Visible=False Timer1.Enable=True 2.

  Metode Bahwa jalannya program dapat diatur sesuai aplikasi dengan menggunakan metode pemrograman yang diatur sebagai aksi dari setiap komponen. Metode inilah tempat untuk mengekpresikan logika pemrograman dari pembuatan suatu program aplikasi.

3. Event

  Setiap komponen dapat beraksi melalui event, seperti event click pada command button yang tertulis dalam layar script Command1_Click, atau event Mouse Down pada picture yang tertulis dengan Picture1_MouseDown. Pengaturan event dalam setiap komponen yang akan menjalankan semua metode yang dibuat.

  2.5 Bagan Alir Sistem (System Flowchart)

  Bagan alir sistem (system flowchart) merupakan bagan yang menunjukkan arus pekerjaan dari sistem secara keseluruhan, menjelaskan urutan dari prosedur-prosedur yang ada dalam sistem serta menunjukkan apa yang ada dalam sistem. Adapun sismbol-simbol dalam flowchart seperti pada table 2.2.

Tabel 2.2 Simbol-simbol flowchart program

  Simbol Nama Keterangan Fungsi

  TERMINAL Permulaan / akhir suatu proses GARIS ALIR Arah aliran program

  Proses inilisasi/pemberian nilai awal PERSIAPAN suatu besaran PROSES Proses pengolahan data

  INPUT / OUTPUT proses input/output data, prameter, DATA informasi PROSES Permulaan sub program/proses TERDEFENISI menjalankan sub program

  Perbandingan pernyataan, seleksi KEPUTUSAN kondisi di dalam program

  Menunjukkan penghubung kehalaman PENGHUBUNG yang sama atau halaman yang berbeda.

2.5.1 Data flow diagram (DFD)

  Data Flow Diagram (DFD) adalah alat pembuatan model network dengan menggunakan notasi-notasi untuk menggambarkan arus dari data sistem yang bertujuan untuk membantu memahami sistem secara logika, terstruktur dan jelas. Data Flow Diagram (DFD) menggambarkan arus data dari suatu sistem informasi, baik sistem lama maupun sistem baru secara logika tanpa mempertimbangkan lingkungan fisik di mana data tersebut berada. Adapun simbol-simbol Data Flow Diagram (DFD) dapat dilihat pada tabel 2.3.

Table 2.3 Simbol-simbol DFD

  Simbol Nama Fungsi External Entity dapat berupa orang,

  sekelompok orang, organisasi, dari sistem yang berada lingkungan External Entity luarnya yang akan memberikan inputan atau memberikan output dari sistem.

  Alur ini mengalir diantara proses, ALUR DATA data store, dan terminator.

  (DATA Berfungsi untuk menunjukkan arus

  FLOW) data yang dapat berupa masukkan untuk sistem Kegiatan atau kerja yang dilakukan

  Process oleh orang, organisasi, dimana hasil (Proses) suatu arus data yang masuk ke dalam keluar dari prioses. Digunakan untuk memodelkan kumpulan data atau paket data.

  Penyimpanan kadangkala Simpanan data didefinisikan sebagai suatu (data store) mekanisme diantara dua proses yang dibatasi oleh jangka waktu tertentu.

  Tahapan diagram arus data dibagi dalam beberapa bagian diantaranya:

  2.5.1.1 Diagram Konteks

  Diagram konteks (context diagram) adalah diagram tingkat atas, merupan diagram dari sebuah sistem yang menggambarkan aliran data yang masuk dan keluar dari sistem dan yang masuk dan keluar dari entitas luar.

  2.5.1.2 Diagram Nol

  Diagram nol memberikan pandangan menyeluruh mengenai sistem yang di tangani dengan menunjukan mengenai fungsi-fungsi utama atau proses yang ada, aliran data, dan eksternal entity. Tujuan dari diagram nol ad alah untuk “Memerinci” sebuah sistem . menjadi “Proses-proses” yang harus dilakukan pada sistem