• Tidak ada hasil yang ditemukan

BAB 2 LANDASAN TEORI 2.1. Pengukuran - Rancang Bangun Sistem Pendeteksi Banjir Pada Daerah Aliran Sungai dengan Menggunakan SCADA (Supervisory Control And Acquisition) Berbasis Mikrokontroler AT89S51

N/A
N/A
Protected

Academic year: 2019

Membagikan "BAB 2 LANDASAN TEORI 2.1. Pengukuran - Rancang Bangun Sistem Pendeteksi Banjir Pada Daerah Aliran Sungai dengan Menggunakan SCADA (Supervisory Control And Acquisition) Berbasis Mikrokontroler AT89S51"

Copied!
27
0
0

Teks penuh

(1)

BAB 2

LANDASAN TEORI

2.1.Pengukuran

Pada kenyataanya pengukuran sering dilakukan oleh manusia, dikarenakan untuk mendapatkan perbandingan ataupun tolak ukur terhadap suatu keadaan. Secara harafiah pengukuran yaitu kegiatan atau proses membandingkan sesuatu besaran-besaran dasar (panjang, massa, waktu dan sebagainya) dan relevan yang dipakai untuk tujuan mendifinisikan atau memberikan gambaran yang jelas tentang suatu objek besaran yang diukur. Salah satu contohnya yaitu mengukur ketinggian muka air di sungai sehingga didapat suatu definisi tertentu dari keadaan yang diukur yaitu tinggi atau rendah pada permukaan air sungai 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)

(2)

3. Sensitivitas (kepekaan)

Kepekaan suatu alat ukur adalah ukuran minimal yang masih terseteksi oleh alat tersebut yang ditentukan berdasarkan respon terjadinya perbedaan suatu besaran yang terdeteksi atau terbaca persatuan besaran sebenarnya.

2.2. Sinar Inframerah

Spektrum sinar matahari terdiri dari cahaya tampak dan tidak tampak yang dibawa oleh materi gelombang elektromagnetik dari cahaya matahari. Sinar infra merah merupakan sianar tidak tampak (antara 700 nm dan 1 mm) dikarenakan panjang gelombang lebih besar dari cahaya tampak, sehingga tidak terlihat oleh mata. Namun demikian, radiasi panas yang ditimbulkan infra merah masih terasa atau masih dapat terdeteksi. Infra merah dapat dibedakan menjadi tiga,yaitu:NIR, MIR dan FIR.

Gambar 2.1 Spektrum sinar

Infra merah dapat dibedakan menjadi tiga daerah yakni: 1. Near Infra Merah (0.75 - 1.5 µm)

Near IR atau NIR, yaitu infra merah dengan panjang gelombang pendek (λ=0.75-

(3)

2. Mid Infra Merah (1.50 - 10 µm)

Mid IR atau MIR, yaitu infra merah dengan panjang gelombang menengah

(λ=1.50-10µm), banyak digunakan pada teropong bintang pada Observatorium.

3. Far Infra Merah (10 - 100 µm)

Far IR atau FIR, yaitu infra merah dengan gelombang panjang (λ=10-100µm) digunakan pada alat-alat kesehatan, yang kemudian dikembangkan lagi pada bidang-bidang lainnya, seperti keamanan di bandara berupa pengecekkan senjata biasa, senjata kimia, senjata biologi serta senjata lainnya serta dapat dimanfaatkan sebagai media pengirim dan penerima data dalam jalur komunikasi wireless.

2.3 Gelombang Ultrasonic

Gelombang Ultrasonik atau gelombang suara yaitu suatu gelombang yang dirambatkan sebagai gelombang mekanik yang menjalar dalam beberapa medium, diantaranya medium padat, cair atau pun gas. Gelombang suara ini merupakan getaran antar molekul zat yang saling beradu satu sama lain. Namun demikian zat tersebut terkoordinasi menjadi suatu gelombang dan mentransmisikan energi tampa adanya perpindahan partikel.

Gambar 2.2. Pembagian rentang Frekuensi gelombang Akustik

(4)

2.4 Prangkat Keras Sistem

2.4.1 Mikrokontroler

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.4.1.1 Arsitektur Mikrokontroler AT89S51

Mikrokontroler AT89S51 adalah mikrokontroler keluaran ATMEL.Inc. Mikrokontroler ini kompatibel dengan keluaran mikrokontroler 80C51. Mikrokontroller AT89S51 terdiri dari 40 pin dan sudah memiliki memory flash didalamnya, sehingga sangat praktis untuk digunakan. Berikut diagram blok AT89S51 secara umum terdapat 4 port untuk I/O serta tersedianya akumulator, RAM, Stac pointer, ALU, pengunci (latch) dan rangkaian osilasi.

(5)

Beberapa kemampuan (fitur) yang dimiliki adalah sebagai berikut :

1. Memiliki 4K Flash EPROM yang digunakan untuk menyimpan program.

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

2. Memiliki internal RAM 128 byte.

RAM (Random Access Memory), suatu memori yang datanya akan hilang bila catu padam, diakses secara random, tidak sekuensial, artinya dialamat mana saja dapat dicapai secara langsung dengan cepat.

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

Port ini berfungsi sebagai terminal input dan output. Selain itu, dapat digunakan sebagai terminal komunikasi paralel, serta komunikasi serial (pin10 dan 11). 4. Dua buah timer/counter 16 bit.

5. Operasi clock dari 0 hingga 24 MHz

6. Program bisa diproteksi, sehingga tidak dapat dibaca oleh orang lain. 7. Menangani 6 sumber interupsi.

2.4.1.2 Spesifikasi penting AT89S51 :

Untuk mendukung fungsi pengendalian, mikrokontroller AT89S51 memiliki spesipikasi yaitu:

1. Tegangan kerja 4-5.0V .

2. Bekerja dengan rentang 0 – 33MHz. 3. 256x8 bit RAM internal.

4. 32 jalur I/0 dapat deprogram. 5. 3 buah 16 bit Timer/Counter. 6. 8 sumber interrupt.

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

(6)

Berikut adalah gambar susunan pin pada Mikrokontroller AT89S51:

Gambar 2.4 Susunan Pin pada Mikrokontroller AT89S51

Keterangan fungsi-fungsi masing-masing pin adalah sebagai berikut : Pin 40 : Vcc, Masukan catu daya +5 volt DC

Pin 20 : Gnd, Masukan catu daya 0 volt DC

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).

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

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

(7)

INT0 (pin 12) : Saluran Interupsi eksternal 0 (aktif rendah) INT1 (pin 13) : Saluran Interupsi eksternal 1 (aktif rendah) T0 (pin 14) : Input Timer 0

T1 (pin 15) : Input Timer 1

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

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

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

Pin 30 : ALE (Address Latch Enable), berfungsi menahan sementara alamat byte rendah pada proses pengalamatan ke memori eksternal. Pin 29 : PSEN (Program Store Enable), Sinyal pengontrol yang berfungsi

untuk membaca program dari memori eksternal.

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

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

(8)

2.4.1.3 Struktur Pengoperasian Port

Struktur pengoperasian port terdiri atas : a. Port Input/Output

One chip mikrokontroller 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 bok diagram AT89S51 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.

b. Timer/Counter

One chip mikrokontroller 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.

(9)

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. 1. Mode 0 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.

4. Mode 3

(10)

2.4.2 Sensor

Definisi umum sensor adalah perangkat atau divais yang digunakan untuk merubah suatu besaran fisis atau kimia menjadi besaran listrik sehingga dapat dianalisa dengan rangkaian listrik tertentu [Jacob Fraden,2004]. Sensor dapat diklasifikasikan sesuai dengan jenis transfer energi yang dapat dideteksi yaitu:

a. sensor Thermal

Sensor thermal adalah sensor yang digunakan untuk mendeteksi gejala perubahan panas/temperatur/suhu pada suatu dimensi benda atau dimensi ruang tertentu. Contohnya thermocouple, Resistan Temprature Detektor (RTD). Kedua contoh tersebut menggunakan prisip termoelektris. Dua buah logam metal konduktor diatur suhunya pada salah satu logam sehingga jika terjadi perbedaan suhu akan menghasilkan tegangan listrik yang variabel.

b. Sensor Radiasi Optik

Sensor optik adalah sensor yang dapat mendeteksi perubahan cahaya dari sumber cahaya, pantulan cahaya ataupun bias cahaya yang mengenai benda atau ruangan. Prinsip kerja dari sensor cahaya yaitu mengubah energi foton menjadi elektron. Dimana 1 foton akan membangkitkan 1 elektron. Penggunaan sensor cahaya sangat luas, yang paling populer dan sering digunakan adalah kamrea digital. Pada saat ini juga sudah ada alat yang digunakan untuk mengukur cahaya yang mempunyai 1 buah foton saja, sebagai contohnya yaitu photo cell, phototransistor, photodioda, photo voltaik, photomultiplier, pyrometer optic.

c. Sensor Mekanik

(11)

2.4.2.1 Tranduser Ultra Sonic

Sensor ultra sonic merupakan sensor yang bekerja dengan memanfaatkan gelombang ultrasonic dengan cara memancarkan gelombang ultrasonik pada frekuensi 40 KHz dan kemudian pantulan dari objek akan ditangkap oleh receiver sensor, dengan demikian akan terjadi beda potensial pada kedua blok transmitter dan receiver. Beda potensial inilah yang akan membangkitkan pulsa, sehingga lamanya pancaran dari transmitter yang memantul pada objek dan tertangkap oleh receiver dapat mengindikasi jarak suatu objek dari pangkal sensor.

2.4.2.2 Sensor Ultra Sonic Ping Parallax

Sensor ultrasonic digunakan untuk mengetahui jarak suatu objek dengan cara memancarkan gelombang ultra sonic pendek, kemudian menunggu pantulan yang dipancarkan tesebut kembali ke sensor. Pada perinsipnya pengendalian sensor ultra sonic menggunakan mikrokontroller yaitu untuk mengeluarkan pulsa pemicu. Di bagian Transmitter (Tx) gelombang pendek yang di pancarkan sebesar 40Khz akan melalui udara kira – kira 1130 ft/S, membentur suatu objek dan kemudian kembali ke sensor dengan diterima pada bagian Reciver (Rx). Sensor ultra sonic memiliki 3 kaki (pin) yang berfungsi sebagai berikut:

a. Pin Ground b. Pin supply

c. Pin Input dan Output

Gambar 2.5 Sensor Ultrasonik ping parallax Spesifikasi sensor :

a. Kisaran pengukuran 3cm-3m.

(12)

c. Echo hold off 750uS dari fall of trigger pulse. d. Delay before next measurement 200uS.

e. Burst indicator LED menampilkan aktifitas sensor.

Keluaran sensor ini yaitu sebuah pulsa (Frekwensi) yang berhubungan langsung dengan waktu yang dibutuhkkan gelombang yang tepantul samapai kebagiain Rx. Dengan mengukur waktu dari gelombang pantulan yang sampai ke sensor ini maka jarak objek dapat dihitung. Sensor Ping mendeteksi jarak obyek dengan cara memancarkan gelombang ultrasonik (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 ultrasonik ini melalui udara dengan kecepatan 344 meter per

detik, mengenai obyek dan memantul kembali ke receiver sensor.

Untuk menghitung waktu yang dibutuhkan setiap 1cm pada gelombang pantulan dapat dihitung dengan menggunakan rumus :

𝐬

=

(𝒗𝐱𝒕)

𝟐

...

(1) Dimana:

s = Jarak pantulan (m)

(13)

dihitung dengan membandingkan waktu pantulan (tp) dengan waktu per cm (t) lalu

dikalikan dengan 1cm.

Gambar 2.6 Diagram Waktu Sensor Ping

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

𝑠

=

𝑡𝐼𝑁 𝑠∗344𝑚/𝑠

2 ...(2)

Gambar 2.7. Jarak Ukur Sensor Ping

2.4.3 Max232

(14)

+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 RS232.

(15)

2.4.4 Komunikasi Serial RS232

RS232 adalah standar komunikasi serial yang didefinisikan sebagai antarmuka antara perangkat terminal data dan perangkat komunikasi data menggunakan pertukaran data biner secara serial. Untuk melakukan komunikasi serial dengan standar RS232 digunakan IC Max 232 sebagai sebagai driver, yang akan mengkonversi tegangan atau kondisi logika TTL dari hardware agar sesuai dengan tegangan pada komputer/ mikrokontroller ataupun sebaliknya sehingga data dapat dibaca.

Komunikasi RS-232 dilakukan secara asinkron (asynchronous), yaitu komunikasi serial yang tidak memiliki clock bersama antara pengirim dan penerima, masing-masing dari pengirim maupun penerima memiliki clock sendiri. Yang dikirimkan dari pengirim ke penerima adalah data dengan baudrate tertentu yang ditetapkan sebelum komunikasi berlangsung. Setiap word atau byte disinkronkan dengan start bit, stop bit dan clock internal masing-masing pengirim atau penerima data.

Gambar 2.9 Gelombang informasi untuk komunukasi serial

Data yang dikirimkan dengan cara seperti pada gambar 2.7 ini disebut data yang terbingkai (to be framed) oleh start dan stop bit. Jika stop bit dalam keadaan LOW, berarti telah terjadi framing error. Biasanya hal ini terjadi karena perbedaan kecepatan komunikasi antara pengirim dengan penerima. Bentuk gelombang komunikasi serial dengan 8-bit data, tanpa parity, 1 stop bit. Pada keadaan idle atau menganggur, jalur RS-232 ditandai dengan mark state atau logika high. Pengiriman data diawali dengan start bit yang berlogika 0 atau LOW, berikutnya data dikirimkan bit per bit mulai dari LSB (Least Significant Bit) atau bit ke-0. Pengiriman setiap byte diakhiri dengan stop bit yang berlogika HIGH.

(16)

disebut „break signal‟, yaitu keadaan LOW yang lamanya cukup untuk mengirimkan 8-bit data. Jika pengirim menyebabkan jalur komunikasi dalam keadaan seperti ini,

penerima akan menganggap ini adalah „break signal‟ atau sinyal rusak. Secara

ringkas, pengiriman data cukup dilakukan dengan mengisi register SBUF dengan data yang akan dikirimkan, byte selanjutnya dikirim ketika bit TI berubah menjadi HIGH. Sedangkan penerimaan ada cukup dilakukan dengan mengambil data dari SBUF setelah bit RI menjadi HIGH.

Untuk menghubungkan RS232 dengan mikrokontroller dapat dilakukan dengan cara mensinkronkan tegangan TTL antar device. Standar sinyal serial RS232 memiliki ketentuan level tegangan sebagai berikut:

1. Logika „1‟ disebut „mark‟ terletak antara -3 volt hingga -25 volt.

2. Logika „0‟ disebut „space‟ terletak antara +3 volt hingga +25 volt.

3. Daerah tegangan antara -3 volt hingga +3 volt adalah invalid level, yaitu daerah tegangan yang tidak memiliki level logika pasti sehingga harus dihindari. Demikian juga level tegangan lebih negatif dari -25 volt atau lebih positif dari +25 volt juga harus dihindari karena dapat merusak line driver pada saluran RS232. Berikut konfigurasi dari RS232 (DB9-connector).

(17)

Keterangan mengenai fungsi saluran RS232 pada konektor DB9 adalah sebagai berikut:

1. Receive Line signal detect, dengan saluran ini DCE (Data Circuit-Terminating Equipment) memberitahukan ke DTE (Data Terminal Equipment) bahwa pada terminal input mendeteksi adanya data yang masuk.

2. Receive Data, digunakan DTE menerima data dari DCE. 3. Transmit Data, digunakan DTE mengirimkan data ke DCE.

4. Data Terminal Ready, pada saluran ini DTE memberitahukan kesiapan terminalnya.

5. Signal Ground, digunakan untuk saluran ground.

6. Ring Indicator, pada saluran ini DCE memberitahukan ke DTE bahwa sebuah device menghendaki untuk berhubungan dengan sistem.

7. Clear To Send, dengan saluran ini DCE memberitahukan bahwa DTE dapat mulai mengirimkan data.

8. Request To Send, dengan saluran ini DCE diminta untuk mengirim data oleh DTE.

9. DCE Ready, sinyal aktif pada saluran ini menunjukkan bahwa DCE sudah dapat digunakan.

2.5 Perangkat Lunak sistem

2.5.1 Bahasa Assembly

(18)

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 pwngalamatan menjelaskan bagaimana operan dioprasikan. Berikut bentuk program bahasa assembly sesara umum:

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 orang 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

Label Mnemonic Operan 1 operan 2 komentar

(isi memori) (opcode)

(19)

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,

(20)

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:

(21)

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:

(22)

INC R0 R0 = R0 + 1 ...

.

2.5.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 di bawah ini.

Gambar 2.11 8051 Editor, Assembler, Simulator (IDE)

(23)

2.5.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 gambar berikut ini.

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 mikrokontroller.

2.5.4 VISUAL BASIC 6.0

Pada projek system 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.

(24)

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 berikut:

Gambar 2.13 Interface antar muka Visual Basic 6.0

2.5.4.1 Konsep Dasar Pemrograman Dalam Visual Basic 6.0

(25)

a. Property

Setiap komponen di dalam pemrograman Visual Basic dapat diatur propertinya sesuai dengan kebutuhan aplikasi. Property yang tidak boleh dilupakan pada setiap

komponen 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 Command1.Caption=”Play”

Text1.Text=”Visual Basic” Label1.Visible=False Timer1.Enable=True

b. 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 prgram aplikasi.

c. 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.6 Flow Chart

(26)

Tabel 2.1 Simbol-simbol Flowchart program

Simbol Nama Keterangan Fungsi

TERMINATOR Permulaan / akhir program GARIS ALIR

(FLOW LINE) Arah aliran program

PREPARATION Proses inilisasi/pemberian harga awal

PROCESS Proses pengolahan data

INPUT / OUTPUT DATA

proses input/output data, prameter, informasi

Decision Perbandingan pernyataan, seleksi kondisi

(27)

Tabel 2.2 Simbol-simbol Data Flaw Diagram

alur ini mengalir diantara proses, data store, dan terminator. Berfungsi untuk menunjukkan arus data yang dapat berupa masukkan untuk sistem

Process (Proses)

kegiatan atau kerja yang dilakukan oleh orang, organisasi, dimana hasil suatu arus data yang masuk ke dalam keluar dari prioses.

Tahapan diagram arus data dibagi dalam beberapa bagian yaiu: 1. Diagram Koteks

Diagram ini berisi gambaran umum (secara garis besar) sistem yang akan dibuat. Secara kalimat, dapat dikatakan bahwa diagram konteks ini berisi “siapa saja yang memberi data (dan data apa saja) ke sistem, serta kepada siapa saja informasi (dan informasi apa saja) yang harus dihasilkan sistem.

2. Diagram nol

Diagram nol memberikan pandangan menyeluruh mengenai system yang di tangani dengan menunjukan mengenai fungsi-fungsi utama atau proses yang ada, aliran data, dan eksternal entity. Tujuan dari diagram nol adalah untuk “Memerinci” sebuah system

Gambar

Gambar 2.1  Spektrum sinar
Gambar 2.2. Pembagian rentang Frekuensi gelombang Akustik
Gambar 2.3 Bentuk fisik mikrokontroller AT89S51
Gambar 2.4  Susunan Pin pada Mikrokontroller AT89S51
+7

Referensi

Dokumen terkait

 Fuzzy inference is a computer paradigm based on fuzzy set theory, fuzzy if-then- rules and fuzzy reasoning..  Applications: data classification, decision analysis, expert

Sehubungan dengan Evaluasi Penawaran, Kami POKJA-IV Kantor Layanan Pengadaan Barang / Jasa mengundang Saudara untuk dapat menghadiri Ferifikasi dan Klarifikasi terhadap Perusahaan

Oh Yesus, kami berdiri dalam penderitaan di kaki salibMu: kami sendiri telah membantu menegakkannya dengan dosa-dosa kami! Kebaikanmu yang tidak menawarkan perlawanan, dan

Similarly as in the case of tobacco plants, trans- formation with appropriate vectors resulted in the viable transgenic BY-2 cell lines that overex- pressed the major variants of H1

Pendekatan kualitatif dalam penelitian ini dilakukan dalam bentuk r eview audit dengan menggunakan metode t r iangulat ion t est atas audit manajemen fungsi

ADLN - Perpustakaan Universitas Airlangga.. Tesis Sertifikat hak tanggungan

Kepastian Hukum Terhadap Pembeli Lelang Objek Jaminan Fidusia Dirampas Untuk Negara Berdasarkan Putusan Pengadilan Negeri Padang Nomor: 400/Pid.B/2011/Pn.Pdg yang Pada

Tingkat kelangsungan hidup ikan koi yang diberi perlakuan pada saat pemeliharaan menunjukkan hasil yang sama yaitu tidak ada yang mengalami kematian, sehingga perlakuan