BAB II
TINJAUAN PUSTAKA
2.1 Anemometer Wind velocity adalah suatu besaran vector tiga dimensi dengan fluktuasi acak dalam skala kecil di atmosfer dan dalam waktu yang bersamaan mengikuti pergerakan udara dalam skala yang lebih besar. Pengamatan angin permukaan umumnya di jabarkan dalam vector dua dimensi melalui dua parameter, yaitu arah dan kecepatan. Umumnya pengamatan angin permukaaan (horizontal wind speed) adalah rata-rata pengamatan selama periode 10 s/d 60 menit sesuai dengan kebutuhan Forecast.
Statistik klimatologi biasanya memerlukan data rata-rata pengamatan untuk setiap jam, rata-rata periode siang hari dan periode malam hari. Untuk laporan synoptic pengamatan dilakukan dalam rata-rata 10 menit.
Kebutuhan Penerbangan
(Aeronautical applications) justru membutuhkan
rata-rata pengamatan yang lebih singkat , yaitu rata-rata setiap menit, untuk mengetahui fluktuaasi angin turbulensi dan gusty. Pengamatan wind speed di laporkan dalam 0.5 m/s atau dalam satuan lain seperti : Knots, km/jam, mil/jam, m/s atau satuan kecepatan lainnya yang relevan
Beberapa macam alat ukur angin: •
Cup counter dan wind vane anemometer
•
Ultrasonic anemometer
•
Pressure tube anemometer
•
Hot wire anemometer
•
Karman vortex devices
•
Lidar (Light detection and ranging)
•
Sodar (sonic detection and ranging)
•
Radar (radio detection and ranging)
Universitas Sumatera Utara
Cup counter anemometer adalah alat untuk mengukur kecepatan angin. Angin adalah pergerakan udara pada horizontal atau hamper horizontal. Angin mempunyai arah (direction) dan kecepatan (speed). Arah angina dinyatakan dari arah mana angina datangnya misalnya : Angin barat (angin yang dating dari barat) dan angina tenggara (angina yang dating dari tenggara. Arah angin (Derajat ukur) Utara = 0/360, Timur = 90, Selatan = 180, Barat = 270, Arah angin dinyatakan dalam satuan derajat dan kecepatan angin dinyatakan dalam m/s, km/jam, mil/jam, knots hubungan antara masing-masing satuan ini adalah : •
6.28 m/s = 22.08 km/jam = 2,25 mil/jam
•
1 m/s = 3.6 km/jam = 2 knots
•
1 km/jam = 10/36 m/s = 0.62 mil/jam
•
1 mil/jam = 0.447 m/s = 1.6 km/jam
•
1 knots = 0.5 m/s = 1.8 km/jam
Agar dapat membandingkan peramatan angin yang dilakukan di berbagai tempat, maka pemasangan anemometer dan vane tidak boleh sesukanya. Alat ini di pasang tinggi yang sama di atas tanah terbuka. Tanah terbuka adalah lapangan dengan benda (Pohon, rumah, dll) yang berjarak 10 kali lebih tinggi benda itu dari tiang anemometer. Tinggi yang telah di setujui adalah 10 meter. Arah angin diukur dengan wind vane. Kecepatan angin diukur dengan wind speed anemometer.
Gambar 2.1 Baling baling untuk menentukan arah angin
Universitas Sumatera Utara
Gambar 2.2 Macam-macam Anemometer
Universitas Sumatera Utara
2.1.1 Proses Pengukuran Anemometer Berikut contoh perhitungan sederhana kecepatan angin yang diukur dengan anemometer tiga mangkok. Panjang lingkaran susunan mangkok-mangkok adalah 3 m dan susunan itu berputar pada suatu waktu berputar 20 kali dalam waktu 10 detik, maka kecepatan angin dapat dihitung [(20x3) / 10] = 6 m/s , untuk memudahkan menghitung putaran dari pada piringan anemometer maka salah satu mangkok di beri warna lain.
Sehubungan dengan karena adanya perbedaaan kecepatan angin dari berbagai ketinggian yang berbeda, maka tinggi pemasangan disesuaikan dengan tujuan dan kegunaanya. Untuk
bidang agroklimatologi di pasang dengan ketinggian sensor
(mangkok) 2 meter di atas permukaan tanah. Di lapangan terbang pemasangan umumnya setinggi 10 meter, dipasang di derah terbuka pada pancang yang cukup kuat. Untuk keperluan navigasi alat harus di pasang pada jarak 10 x tinggi faktor penghalang seperti adanya bangunan atau pohon. Sebagian besar anemometer ini umumnya tidak dapat merekam kecepatan angin di bawah 1-2 mil/jam karena ada faktor gesekan awal putaran.
2.1.2 Tipe Anemometer Anemometer sendiri terdapat dua tipe secara umum.Tipe tersebut adalah: •
Anemometer dengan 3 atau 4 mangkok Sensornya terdiri dari 3 atau 4 buah mangkok yang dipasang pada jari-jari
yang berpusat pada suatu sumbu vertikal atau semua mangkok tersebut terpasang pada poros vertikal. Seluruh mangkok menghadap ke satu arah melingkar sehingga bila angin bertiup maka rotor berputar
pada arah tetap. Kecepatan putar dari rotor
tergantung pada kecepatan tiupan angin. Melalui suatu sistem mekanik roda gigi, perputaran rotor mengatur sistem akumulasi angka penunjuk jarak tiupan angin. Anemometer tipe cup counter hanya dapat mengukur rata-rata kecepatan angin selama suatu periode pengamatan. Dengan alat ini penambahan nilai yang dapat dibaca dari satu pengamatan ke pengamatan berikutnya, menyatakan akumulasi jarak tempuh angin selama waktu dari kedua pengamatan tersebut, sehingga kecepatan anginya
Universitas Sumatera Utara
adalah sama dengan akumulasi jarak tempuh tersebut di bagi lama selang waktu pengamatanya. •
Anemometer Termal Anemometer ini merupakan satu sensor yang digunakan untuk mengukur
kecepatan fluida (angin) sesaat. Cara kerja dari sensor ini berdasarkan pada jumlah panas yang hilang secara konvektif dari sensor ke lingkungan sekeliling sensor. Besarnya panas yang dipindahkan dari sensor secara langsung berhubungan dengan kecepatan fluida yang melewati sensor. Jika hanya kecepatan fluida yang berubah, maka panas yang hilang bisa di interpretasikan sebagai kecepatan fluida tersebut. Kerja anemometer ini mengikuti prinsip tabung pitot, yaitu dihitung dari tekanan statis dan tekanan kecepatan.
2.2 Transistor Transistor adalah alat semikonduktor yang dipakai sebagai penguat, sebagai sirkuit pemutus dan penyambung (switching), stabilisasi tegangan, modulasi sinyal atau sebagai fungsi lainnya. Transistor dapat berfungsi semacam kran listrik, dimana berdasarkan arus inputnya (BJT) atau tegangan inputnya (FET), memungkinkan pengaliran listrik yang sangat akurat dari sirkuit sumber listriknya.
Gambar 2.3 Macam-macam Transistor Pada umumnya, transistor memiliki 3 terminal. Tegangan atau arus yang dipasang di satu terminalnya mengatur arus yang lebih besar yang melalui 2 terminal lainnya. Transistor adalah komponen yang sangat penting dalam dunia elektronik modern. Dalam rangkaian analog, transistor digunakan dalam amplifier (penguat). Rangkaian analog melingkupi pengeras suara, sumber listrik stabil, dan penguat sinyal radio. Dalam rangkaian-rangkaian digital, transistor digunakan sebagai saklar berkecepatan
Universitas Sumatera Utara
tinggi. Beberapa transistor juga dapat dirangkai sedemikian rupa sehingga berfungsi sebagai logic gate, memori, dan komponen-komponen lainnya. Dari banyak tipe-tipe transistor modern, pada awalnya ada dua tipe dasar transistor, bipolar junction transistor (BJT atau transistor bipolar) dan field-effect transistor (FET), yang masing-masing bekerja secara berbeda. Transistor bipolar dinamakan demikian karena kanal konduksi utamanya menggunakan dua polaritas pembawa muatan: elektron dan lubang, untuk membawa arus listrik. Dalam BJT, arus listrik utama harus melewati satu daerah/lapisan pembatas dinamakan depletion zone, dan ketebalan lapisan ini dapat diatur dengan kecepatan tinggi dengan tujuan untuk mengatur aliran arus utama tersebut. FET (juga dinamakan transistor unipolar) hanya menggunakan satu jenis pembawa muatan (elektron atau hole, tergantung dari tipe FET). Dalam FET, arus listrik utama mengalir dalam satu kanal konduksi sempit dengan depletion zone di kedua sisinya (dibandingkan dengan transistor bipolar dimana daerah Basis memotong arah arus listrik utama). Dan ketebalan dari daerah perbatasan ini dapat dirubah dengan perubahan tegangan yang diberikan, untuk mengubah ketebalan kanal konduksi tersebut. Lihat artikel untuk masing-masing tipe untuk penjelasan yang lebih lanjut.
2.3 Fotodioda Dioda peka cahaya adalah jenis dioda yang berfungsi mendeteksi cahaya. Berbeda dengan dioda biasa, Komponen elektronika ini akan mengubah menjadi arus listrik. Cahaya yang dapat dideteksi oleh dioda peka cahaya ini mulai dari cahaya inframerah, cahaya tampak, ultra ungu sampai dengan sinar-x. Aplikasi dioda peka cahaya mulai dari penghitung kendaraan di jalan umum secara otomatis, pengukur cahaya pada kamera serta beberapa peralatan dibidang medis.
Universitas Sumatera Utara
LED infra merah adalah suatu jenis dioda yang apabila diberi tegangan maju maka arus majunya akan membangkitkan cahaya pada pertemuan PN-nya. Disini cahaya yang dibangkitkan adalah infra merah yang tidak dapat dilihat dengan mata. LED infra merah sesuai dengan rancangannya memancarkan cahaya pada spektrum infra merah dengan panjang gelombang λ ≈ 940 nm. Spektrum cahaya infra merah ini mempunyai level panas yang paling tinggi diantara sinar-sinar yang lain walaupun tidak tampak oleh mata dan mempinyai efek foto listrik yang terkuat.
2.4 Gambar Photodioda Fotodioda merupakan sebuah dioda dengan smbungan pn yang dipengaruhi cahaya di dalam kerjanya. Fotodioda digunakan sebagai penangkap gelombang cahaya yang dipancarkan oleh infrared. Besarnya tegangan atau arus listrik yang dihasilkan oleh fotodioda tergantung besar kecilnya radiasi yang dipancarkan oleh infrared.
2.4 Led Imframerah Sistem sensor infra merah pada dasarnya menggunakan infra merah sebagai media untuk komunikasi data antara receiver dan transmitter. Sistem akan bekerja jika sinar infra merah yang dipancarkan terhalang oleh suatu benda yang mengakibatkan sinar infra merah tersebut tidak dapat terdeteksi oleh penerima. Keuntungan atau manfaat dari sistem ini dalam penerapannya antara lain sebagai pengendali jarak jauh, alarm keamanan, otomatisasi pada sistem.Pemancar pada sistem ini tediri atas sebuah LED infra merah yang dilengkapi dengan rangkaian yang mampu membangkitkan data untuk dikirimkan melalui sinar infra merah, sedangkan pada bagian penerima
Universitas Sumatera Utara
biasanya terdapat foto transistor, fotodioda, atau inframerah module yang berfungsi untuk menerima sinar inframerah yang dikirimkan oleh pemancar. LED adalah singkatan dari Light Emitting Dioda, merupakan produk temuan lain setelah dioda yang dapat memancarkan cahaya bila dibias maju. Gejala ini termasuk bentuk electroluminescence. Seperti sebuah dioda normal, dia terdiri dari sebuah chip bahan semikonduktor yang di-dop dengan ketidakmurnian untuk menciptakan sebuah struktur yang disebut p-n junction. Pembawa muatan elektron dan lubang mengalir ke junction dari elektroda dengan voltase berbeda. Ketika elektron bertemu dengan lubang, dia jatuh ke tingkat energi yang lebih rendah, dan melepaskan energi dalam bentuk foton LED Infra merah adalah sebuah benda padat penghasil cahaya, yang mendekati/menghasilkan spectrum cahaya infra merah. LED (dioda cahaya)Infra merah menghasilkan panjang gelombang yang sama dengan yang biasa diterima oleh photodetektor silikon. Oleh karena itu LED infra merah bisa dipasangkan dengan foto transistor dan fotodioda. Karakteristik dari LED Infra merah: •
Bisa dipakai dalam waktu yang sangat lama.
•
Membutuhkan daya yang kecil.
•
Pemancaran panjang gelombangnya menyempit.
•
Tidak mudah panas.
•
Bisa digunakan dalam jarak yang lebar.
•
Harga murah.
Universitas Sumatera Utara
Gambar 2.5 LED Imframerah •
Intensitas cahaya yang dipancarkan tergantung pada banyaknya pembawa minoritas yang tersedia untuk rekombinasi atau arus yang mengalir. Frekuensi cahaya yang dipancarkan ditentukan oleh celah jalur energi dari bahan-bahan yang digunakan untuk membentuk pn junction. Sebuah dioda normal, biasanya terbuat dari silicon atau germanium tetapi bahan yang digunakan untuk sebuah LED memiliki energi band gap antara cahaya dekat-inframerah, tampak, dan dekat-ultraungu. Perkembangan dalam ilmu material telah memungkinkan produksi alat dengan panjang gelombang yang lebih pendek, menghasilkan cahaya dengan warna bervariasi.
Infra merah (IR) radiasi adalah radiasi elektromagnetik dengan panjang gelombang lebih panjang dibandingkan dengan cahaya tampak, tetapi lebih pendek dibandingkan dengan gelombang mikro. Cahaya inframerah mempunyai panjang gelombang sekitar 750 nm dan 1 mm. 2.5 Mikrokontroller Mikrokontoller adalah single chip yang memilki kemampuan untuk deprogram dan dirancang khusus untuk aplikasi control serta dilengkapi dengan ROM, RAM dan fasilitas I/O pada satu chip. Mikrokontroller merupakan suatu hasil dari perkembangan teknologi semikonduktor yang menghasilkan suatu chip dengan kemampuan komputasi yang sangat cepat dengan bentuk yang kecil dan harga yang murah. Mikrokontroller terus berkembang dengantujuan untuk memenuhi kebutuhan pasar terhadap alat alat elektronik dengan perangkat cerdas, cepat sebagai pengontrol dan pemprosesan data.
Universitas Sumatera Utara
2.5.1 Mikrokontroller AT89S52 Mikrokontroler adalah mikroprosessor yang dirancang khusus untuk aplikasi kontrol, dan dilengkapi dengan ROM, RAM dan fasilitas I/O pada satu chip. AT89S52 adalah salah satu anggota dari keluarga MCS-51/52 yang dilengkapi dengan internal 8 Kbyte Flash PEROM (Programmable and Erasable Read Only Memory), yang memungkinkan memori program untuk dapat deprogram kembali. AT89S52 dirancang oleh Atmel sesuai dengan instruksi standar dan susunan pin 80C5. Mikrokontroler AT89S52 memiliki : •
Sebuah CPU ( Central Processing Unit ) 8 Bit.
•
256 byte RAM ( Random Acces Memory ) internal
•
Empat buah port I/O, yang masing masing terdiri dari 8 bit
•
Osilator internal dan rangkaian pewaktu.
•
Dua buah timer/counter 16 bit
•
Lima buah jalur interupsi ( 2 buah interupsi eksternal dan 3 interupsi internal).
•
Sebuah port serial dengan full duplex UART (Universal Asynchronous Receiver Transmitter).
•
Mampu melaksanakan proses perkalian, pembagian, dan Boolean.
•
EPROM yang besarnya 8 KByte untuk memori program.
•
Kecepatan maksimum pelaksanaan instruksi per siklus adalah 0,5 µs pada frekuensi clock 24 MHz. Apabila frekuensi clock mikrokontroler yang digunakan adalah 12 MHz, maka kecepatan pelaksanaan instruksi adalah 1 µs
2.5.1.1 CPU ( Central Processing Unit ) Bagian ini berfungsi mengendalikan seluruh operasi pada mikrokontroler. Unit ini terbagi atas dua bagian, yaitu unit pengendali atau CU ( Control Unit ) dan unit aritmatika dan logika atau ALU ( Aritmetic logic Unit ) Fungsi utama unit pengendali adalah mengambil instruksi dari memori
kemudian menterjemahkan susunan
instruksi tersebut menjadi kumpulan proses kerja sederhana (decode), dan melaksanakan urutan instruksi sesuai dengan langkah-langkah yang telah ditentukan
Universitas Sumatera Utara
program (execute). Unit aritmatika dan logika merupakan bagian yang berurusan dengan operasi aritmatika seperti penjumlahan, pengurangan, serta manipulasi data secara logika seperti operasi AND, OR, dan perbandingan. 2.5.1.2 Organisasi Memori Semua serpih tunggal dalam keluarga MCS-51 memiliki pembagian ruang alamat untuk program dan data. Pemisahan memori program dan memori data memperbolehkan memori data untuk diakses oleh alamat 8 bit. Sekalipun demikian, alamat data memori 16 bit dapat dihasilkan melalui register DPTR (Data Point Register). Memori program hanya bisa dibaca tidak bisa ditulis karena disimpan dalam EPROM. Dalam hal ini EPROM yang tersedia di dalam serpih tunggal AT89S52 sebesar 8 Kbyte
Gambar 2.6 Diagram blok AT89S52
Universitas Sumatera Utara
2.5.1.3 Bagian Masukan/Keluaran (I/O) Bagian ini berfungsi sebagai alat komunikasi serpih tunggal dengan piranti di luar sistem. Sesuai dengan namanya, perangkat I/O dapat menerima maupun memberi data dari /ke serpih tunggal.Ada dua macam piranti I/O yang digunakan, yaitu piranti untuk hubungan serial UART (Universal Asynchronous Receiver Transmitter) dan piranti untuk hubungan pararel yang disebut dengan PIO (Pararel Input Output). Kedua jenis I/O tersebut telah tersedia di dalam serpih tunggal AT89S52. 2.5.1.4 Konfigurasi Pin Mikrokontroler AT89S52 mempunyai 40 pin dengan catu daya tunggal 5 Volt. Ke-40 pin tersebut digambarkan sebagai berikut :
Gambar 2.7 Konfigurasi pin AT89S52 Fungsi dari masing-masing pin AT89S52 adalah : 1. Pin 1 sampai 8 (Port 1) merupakan port pararel 8 bit dua arah (bidirectional) yang dapat digunakan untuk berbagai keperluan (general purpose). 2. Pin 9 merupakan pin reset, reset aktif jika mendapat catuan tinggi.
Universitas Sumatera Utara
3. Pin 10 sampai 17 (Port 3) adalah port pararel 8 bit dua arah yang memiliki fungsi pengganti sebagai berikut : a. P3.0 (10) : RXD (port serial penerima data) b. P3.1 (11) : TXD (port serial pengirim data) c. P3.2 (12) : INT0 (input interupsi eksternal 0, aktif low) d. P3.3 (13) : INT1 (input interupsi ekstrernal 1, aktif low) e. P3.4 (14) : T0 (eksternal input timer / counter 0) f. P3.5 (15) : T1 (eksternal input timer / counter 1) g. P3.6 (16) : WR (Write, aktif low) Sinyal kontrol penulisan data dari port 0 ke memori data dan input-output eksternal. h. P3.7 (17) : RD (Read, aktif low) Sinyal kontrol pembacaan memori data input-output eksternal ke port 0. 4. Pin 18 sebagai XTAL 2, keluaran osilator yang terhubung pada kristal. 5. Pin 19 sebagai XTAL 1, masukan ke osilator berpenguatan tinggi, terhubung pada kristal. 6. Pin 20 sebagai Vss, terhubung ke 0 atau ground pada rangkaian. 7. Pin 21 sampai 28 (Port 2) adalah port pararel 8 bit dua arah. Port ini mengirim byte alamat bila pengaksesan dilakukan pada memori eksternal. 8. Pin 29 sebagai PSEN (Program Store Enable) adalah sinyal yang digunakan untuk membaca, memindahkan program memori eksternal (ROM / EPROM) ke mikrokontroler (aktif low). 9. Pin 30 sebagai ALE (Address Latch Enable) untuk menahan alamat bawah selama mengakses memori eksternal. Pin ini juga berfungsi sebagai PROG (aktif low) yang diaktifkan saat memprogram internal flash memori pada mikrokontroler (on chip). 10. Pin 31 sebagai EA (External Accesss) untuk memilih memori yang akan digunakan, memori program internal (EA = Vcc) atau memori program eksternal (EA = Vss), juga berfungsi sebagai Vpp (programming supply voltage) pada saat memprogram internal flash memori pada mikrokontroler. 11. Pin 32 sampai 39 (Port 0) merupakan port pararel 8 bit dua arah. Berfungsi sebagai alamat bawah yang dimultipleks dengan data untuk mengakses program dan data memori eksternal. 12. Pin 40 sebagai Vcc, terhubung ke +5 V sebagai catuan untuk mikrokontroler.
Universitas Sumatera Utara
2.5.1.5Perangkat Lunak Serpih tunggal keluarga MCS-52 memiliki bahasa pemrograman khusus yang tidak dipahami oleh jenis serpih tunggal yang lain. Bahasa pemrograman ini dikenal dengan nama bahasa assembler yang memiliki 256 perangkat instruksi. Namun saat ini pemrograman mikrokontroler dapat dilakukan dengan menggunakan bahasa C. Dengan bahasa C, pemrograman mikrokontroler menjadi lebih mudah, hal ini karena dengan format bahasa C akan secara otomatis diubah menjadi bahasa assembler dengan format file hexa. Perangkat lunak pada mikrokontroler dapat dibagi menjadi lima kelompok sebagai berikut : •
Instruksi Transfer Data Instruksi ini berfungsi memindahkan data, yaitu antar register, dari memori ke memori, dari register ke memori dan lain lain.
•
Instruksi Aritmatika Instruksi ini melaksanakan operasi aritmatika yang meliputi
penjumlahan,
pengurangan,
penambahan
satu
(increment),
pengurangan satu (decrement), perkalian dan pembagian. •
Instruksi Logika dan Manipulasi Bit Berfungsi melaksanakan operasi logika AND, OR, XOR, perbandingan, penggeseran dan komplemen data.
•
Instruksi Percabangan Berfungsi untuk mengubah urutan normal pelaksanaan suatu program. Dengan instruksi ini, program yang sedang dilaksanakan akan meloncat ke suatu alamat tertentu.
•
Instruksi Stack, I/O, dan Kontrol Instruksi ini mengatur penggunaan stack, membaca/menulis port I/O, serta pengontrolan.
2.5.1.6 Register Mikrokontroller mempunyai register – register sebagai berikut: •
Accumulator (register A) Accumulator adalah sebuah register 8 bit yang merupakan pusat dari semua operasi accumulator termasuk didalam operasi aritmatika, operasi logika, membebani dan menyimpan serta operasi – operasi masukan.
•
Register B,Register ini memiliki fungsi yang sama dengan register A.
Universitas Sumatera Utara
•
Program Counter (PC) Pencacah program merupakan sebuah register 16 bit yang selalu menunjukkan lokasi memori dari instruksi yang akan diakses.
•
Stack Pointer (SP) Stack Pointer merupakan sebuah register 16 bit yang mempunyai fungsi khusus sebagai penunjuk alamat atau data yang berada paling atas pada operasi penumpukkan di RAM. Penunjukan penumpukkan selalu berkurang dua setiap kali data didorong masuk kedalam lokasi penumpukkan dan selalu bertambah dua setiap kali data ditarik ke luar dari lokasi penumpukkan.
2.5.2 Instruksi Trasfer Data Instruksi tranfer data terbagi menjadi dua kelas operasi sebagai berikut: •
Tranfer data umum (General Purpose Transfer), yaitu : MOV, PUSH dan POP
•
Transfer spesifik akumulator (Accumulator Specific Transfer), yaitu :XCH, XCHD, dan MOVC
Instruksi transfer data adalah instruksi pemindahan/ pertukaran data antara oprand sumber dengan opran tujuan. Operand-nya dapat berupa register, memori atau lokasi suatu memori. Penjelasan instruksi transfer data dapat dijelasan sebagai berikut. Mov
:
Transfer dari register satu ke register yang laian, antara register dengan memory
Push
:
Transfer byte atau dari operan sumber ke suatu lokasi dalam strack yang alamatnya ditunjuk oleh register penunjuk
Pop
:
Transfer byte atau dari dalam strack ke operan tujuan
Xch
:
pertukaran data antara operand akumulator dengan operand sumber
Xcdh
:
Pertukaran nibble orde rendah antara RAM internal (lokasinya ditunjukkan oleh r0 dan r1)
Movc
;
Pertukaran data dengan menjumlahkan isi data pointer dengan isi akumulator
Universitas Sumatera Utara
2.5.3 Instruksi Aritmatik Instruksi ini melaksanakan operasi aritmatika yang meliputi penjumlahan, pengurangan, penambahan satu (increment), pengurangan satu (decrement), perkalian dan pembagian. Intruksi aritmetika mencakup penambahan (ADD), pengurangan (SUBB), perkalian (MUL),dan pembagian (DIV).; •
Penambahan (ADD) Instruksi ini menjumlahkan suatu data dengan isi akumulator dan hasilnya disimpan dalam akumulator. Operasi ADD : A←A+data
•
Pengurangan (SUBB) instruksi ini mengurangkan isi akumulator dengan isi carry flag dan isi data. Operasi SUBB : A←A-C-data
•
Perkalian (MUL) Instruksi ini mengalikan isi akumulator dengan isi register B. Operasi MUL : AB←A*B
•
Pembagian (DIV) Instruksi ini akan membagi isi register akumulator dengan isi register B. Operasi DIV : AB←A/B
•
Penambahan satu (INC) Proses ini menambahkan satu pada isi suatu register atau memori. Operasi INC A : AB←A+B
•
Pengurangan Satu (DEC) Proses ini kebalikan dari proses pengurangan satu.
2.5.4 Instruksi Logika Instruksi ini berhubungan dengan operasi-operasi logika pada accumulator dan manipulasi bit. Macam dari instruksi ini adalah AND, OR, XOR, perbandingan, pergeseran, dan komplemen data. •
Logika AND (ANL) Instruksi ini melakukan proses logika AND antara suatu register dengan register, register dengan data, carry flag dengan suatu alamat, dan lain- lain.
Universitas Sumatera Utara
Tabel 2.1 Kebenaran operasi AND A
B
AB
0
0
0
0
1
0
1
0
0
1
1
1
Sebagai contoh, misalnya akumulator berisi 1011 1011B dan register R0 berisi 0100 1100B dengan instruksi ANL A, R0 menyebabkan isi akumulator menjadi sebagai berikut : A : 1011 1011 B : 0100 1100 0000 1000 → akumulator akan berisi 0000 1000B atau 08H Format instruksi AND : ANL A, @Rr ANL A, #data ANL alamat data, A ANL alamat, #data
•
Logika OR (ORL) Instruksi ini melakukan logika OR antara suatu register dengan register, register dengan data, carry flag dengan isi suatu alamat bit. Tabel 2.2 Kebenaran operasi OR A
B
AB
0
0
0
0
1
1
1
0
1
1
1
1
Format instruksi OR: ORL A, @Rr ORL A, #data
Universitas Sumatera Utara
ORL alamat data, A ORL A, alamat data
•
Logika NOT (CPL) Instruksi ini melakukan proses logika NOT pada suatu register, carry flag, atau isi suatu alamat bit. Tabel kebenarannya sebagai berikut.
Tabel 2.3 Kebenaran operasi NOT In
Out
0
1
1
0
Format instruksi NOT: CPL A CPL alamat bit
•
Logika EXOR (XRL)Instruksi ini melakukan proses logika exlusive-OR antara register dengan register, register dengan data, dan lain-lain. Tabel kebenarannya sebagai berikut.
Tabel 2.4 Kebenaran operasi EXOR
A
B
AB
0
0
0
0
1
1
1
0
1
1
1
0
Universitas Sumatera Utara
2.5.5 Instruksi Percabangan Instruksi percabangan terdiri dari (3) tiga kelas oprasi, yaitu: •
Lompatan tak bersyarat (unconditional Jump) seperti : sjmp, ajmp, ljmp
•
Lompatan bersyarat (Conditional Jump) seperti : jb, jnb jz, jnz, jc, jnc, cjne, dan djnz
•
Insterupsi seperti: ret dan reti
Penjelasan dari instruksi diatas sebagai berikut : Sjmp
: Lompatan untuk percabangan dengan jankauan masumum 1 Kbyte
Ajmp
: Lompatan untuk percabangan masimum 2 Kbyte
Lcall
: Pemanggilan subroutine yang mempunyai alamat antara 2 Kbyte – 64 Kbyte.
Jb
: Percabangan yang akan lompat ke label atau alamat yang dituju jika dalam keadaan bit
Jnb
: Percabangan yang akan lompat ke label atau alamat yang dituju jika dalam keadaan tidak bit
Jz
: Percabangan akan dilakukan jika akumulator adalah nol
Jnz
: Percabangan akan dilakukan jika akumulator adalah tidak nol
Jc
: Percabangan terjadi jika CF (Carry Flag) diset ‘1’
Jne
: Percabangan terjadi jika CF (Carry Flag) diset ‘0’
Cjne
: Operasi perbandingan Operand pertama dengan operand kedua, jika tidak sama akan dilakukan percabngan
Djnz
: Mengurangi nilai operand sumber dengan satu dan percabangan akan dilakukan bila hasilnya tidak nol
Ret
: Kembali ke subrutine.
Reti
: Kembali ke program interupsi utama
2.6 Pengenalan Visual Basic 6.0 Visual Basic merupakan salah satu bahasa pemrograman yang paling banyak digunakan pada saat ini, karena fasilitas yang dimiliki sangat handal untuk membangun berbagai bentuk aplikasi dan mudah dipelajari sendiri. Menurut Suryo
Universitas Sumatera Utara
(2000 : 1), Visual Basic merupakan event-driven programming (permrograman terkendali kejadian). Artinya program menunggu sampai respon dari pemakai berupa event atau kejadian.
Apabila dibandingkan dengan bahasa pemrograman yang lain, misalnya pascal yang mengharuskan penulisan kode program untuk segala sesuatu yang akan diinginkan dalam kejadian (event), maka Visual Basic memberikan berbagai macam kemudahan dan fasilitas yang disediakan menjadi sangat praktis meskipun untuk pemula, program ini mudah untuk dipelajari sendiri dengan berbagai macam jenis buku yang telah diterbitkan mengenai bahasa pemrograman dengan Visual Basic 6.0.
2.6.1 Aplikasi Visual Basic 6.0 Struktur yang ada di dalam Visual Basic terdiri dari : a. Form adalah windows atau jendela kerja (worksheet) yang digunakan untuk membuat tampilan yang diinginkan. b. Control Adapun secara garis besar fungsi dari masing-masing control tersebut adalah sebagai berikut : •
Pointer bukan merupakan suatu kontrol : icon ini digunakan ketika ingin memilih control yang sudah berada pada form
•
PictureBox adalah kontrol yang digunakan untuk menampilakan mage dengan format :BMP, DIB(bitmap), CUR(cursor),WMF(metafile), EMF(enhanced metafile), GIF, dan JPG.
•
Label adalah kontrol yang digunakan untuk menampilakan text yang tidak dapat diperbaiki oleh pemakai
•
Textbox adalah kontrol yang mengandung string yang dapat diperbaiki oleh pemakai, dapat berupa satu baris tunggal, atau banyak baris.
•
Frame adalah kontrol yang digunakan sebagai kontainer bagi kontrol lainnya.
•
CommandButton merupakan kontrol yang hampir sering ditemukan pada setiap form, dan digunakan untuk membangkitkan event proses tertentu ketika pemakai melakukan klik disana.
Universitas Sumatera Utara
•
checkBox digunakan untuk pilihan yang isinya bernilai yes/no,true/false.
•
OptionButton sering digunakan untuk pilihan yang hanya satu pilihan dari beberapa option.
•
listBox mengandun sejumlah item dan user dapat memilih lebih dari lebih dari satu (bergantung pada properti multiselect).
•
ComboBox merupakan kombinasi dari textBox dan suatu ListBox di mana pemasukan data dapat dilakukan dengan pengetikan maupun pemilihan.
•
HScrollbar dan VscrollBar digunakan untuk membentuk scrollbar berdiri sendiri.
•
Timer digunakan untuk proses background yang diaftifkan berdasarkan interval waktu tertentu yang merupakan kontrol nonvisual.
•
DriveListBox,
DirListBox,
dan
FileListBox
sering
digunakan
untuk
membentuk dialog box yang berkaitan dengan file. •
Shape dan Line digunakan untuk menampilakan bertuk seperti garis, persegi, lingkaran dan sebagainya.
•
Image berfungsi seperti ImageBox, tetapi tidak dapat digunakan sebagai kontainer bagi kontrol lainnya. Sesuatu yang perlu diketahui bahwa kontrol Image menggunakan resource lebih kecil dibandingkan dengan PictureBox.
•
Data digunakan untuk data binding.
•
OLE dapat digunakan sebagai tempat bagi program eksternal seperti Microsoft Exel, Word dan sebagainya.
c. Properti adalah nilai atau karakteristik yang dimiliki oleh visual basic. d. Metode adalah Serangkaian perintah yang sudah tersedia pada suatu objek yang dapat diminta untuk mengerjakan tugas khusus. e. Prosedur Kejadian merupakan kode yang berhubungan dengan suatu objek f. Prosedur Umum merupakan kode yang tak berhubungan dengan suatu objek g. Modul Dapat disejajarkan dengan form, tetapi tidak terdapat objek. Modul hanya bisa berisi kode kode program berupa prosedur dan deklarsi variabel yang sifatnyaglobal, artinya kode kode yang terdapat pada modul dapat digunakan oleh seluruh bagian program,sedangkan kode kode yang diletakan pada form
yang mengandung kode tersebut. OLeh karena hanya akan
menggunakan satu buah form.
Universitas Sumatera Utara
2.7 Komunikasi Serial Perangkat yang menggunakan kabel serial untuk komunikasi dibagi menjadi dua kategori. Yaitu DCE (Data Communications Equipment) dan DTE (Data Terminal Equipment.) Peralatan Komunikasi Data adalah perangkat seperti modem, adaptor TA, dll plotter sementara Data Terminal Peralatan Komputer atau Terminal Anda.
Komunikasi serial merupakan hal yang penting dalam sistem embedded, karena dengan komunikasi serial kita dapat dengan mudah menghubungkan mikrokontroler dengan devais lainnya. Port serial pada mikrokontrollr terdiri atas dua pin yaitu RXD dan TXD, RXD berfungsi untuk menerima data dari komputer/perangkat lainnya, TXD berfungsi untuk mengirim data ke komputer/perangkat lainnya, Standar komunikasi serial untuk komputer ialah RS-232, RS-232 mempunyai standar tegangan yang berbeda dengan serial port mikrokontroler, sehingga agar sesuai dengan RS-232 maka di butuhkan suatu rangkaian level converter, IC yang digunakan bermacammacam, tetapi yang paling mudah dan sering digunakan ialah IC MAX232/HIN232. Pada mikrokontroler AVR ATmega 16, pin PD0 dan PD1 digunakan untuk komunikasi serial USART (Universal Synchronous and Asynchronous Serial Receiver and Transmitter) yang mendukung komunikasi full duplex komunikasi 2 arah. Pada prinsipnya, komunikasi serial ialah komunikasi dimana pengiriman data dilakukan per bit, sehingga lebih lambat dibandingkan komunikasi parallel seperti pada port printer yang mampu mengirim 8 bit sekaligus dalam sekali detak. Beberapa contoh komunikasi serial ialah mouse, scanner dan system akuisisi data yang terhubung ke port COM1/COM2. Devais pada komunikasi serial port dibagi menjadi 2 (dua ) kelompok yaitu Data Communication Equipment (DCE) dan Data Terminal Equipment (DTE). Contoh dari DCE ialah modem, plotter, scanner dan lain lain sedangkan contoh dari DTE ialah terminal di komputer. Spesifikasi elektronik dari serial port merujuk pada Electronic Industry Association (EIA) : •
“Space” (logika 0) ialah tegangan antara + 3 hingga +25 V.
•
“Mark” (logika 1) ialah tegangan antara –3 hingga –25 V.
Universitas Sumatera Utara
•
Daerah antara + 3V hingga –3V tidak didefinisikan /tidak terpakai
•
Tegangan open circuit tidak boleh melebihi 25 V.
•
Arus hubungan singkat tidak boleh melebihi 500mA. Komunikasi serial membutuhkan port sebagai saluran data. Berikut tampilan
port serial DB9 yang umum digunakan sebagai port serial
Gambar 2.9 Port DB9 jantan
Gambar 2.10 Port DB9 Betina Port serial sering digunakan untuk interfacing komputer dan mikrokontroler, karena kemampuan jarak pengiriman data dibandingkan port paralel. Berikut contoh program assembly untuk komunikasi serial antara 2 PC. Untuk komunikasi ini, anda cukup menghubungkan : •
Pin TxD ke pin RxD computer lain
•
Pin RXD dihubungkan ke pin TxD komputer lain
•
RTS dan CTS dihubung singkat
•
DSR dan DTR dihubung singkat
•
GND dihubungkan ke GND komputer lain
Universitas Sumatera Utara
2.7.2 Komunikasi Serial RS 232 Komunikasi serial RS232 adalah suaatu protocol komunikasi serial yang mode pengoperasiannya single ended artinya Signal RS232 di representasikan dengan level tegangan +3V sampai +25V sebagai ON atau stat 0 atau disebut sebagai kondisi SPACE, sedangkan tegangan -3V sampai -25V direprensentasikan sebagai OFF atau stat 1 atau disebut sebagai kondisi MARK.
Komunikasi data pada RS232 dilakukan dengan satu transmitter dan satu reciever, Jadi system komunikasi nya yaitu antara 2 device saja.RS232 dirancang untuk data rate maximum 20 kb/s dan dengan jarak maksimum sekitar 20 Ft.
Signal RS232 di representasikan dengan level tegangan +3V sampai +12V sebagai ON atau stat 0 atau disebut sebagai kondisi SPACE, sedangkan tegangan -3V sampai 12V direprensentasikan sebagai OFF atau stat 1 atau disebut sebagai kondisi MARK Komunikasi serial dengan RS232 ini dipasaran sudah tersedia IC yang dapat digunakan dan sudah compatible mikrokontroller yaitu IC 232 seperti MAX232, dll. IC ini banyak di gunakan dalam aplikasi-aplikasi komunikasi data dengan RS232.
2.7.2.1 Konverter Logika RS-232 Jika peralatan yang kita gunakan menggunakan logika TTL maka sinyal serial port harus kita konversikan dahulu ke pulsa TTL sebelum kita gunakan, dan sebaliknya sinyal dari peralatan kita harus dikonversikan ke logika RS-232 sebelum di-inputkan ke serial port. Konverter yang paling mudah digunakan adalah MAX-232. Di dalam IC ini terdapat Charge Pump yang akan membangkitkan +10 Volt dan -10 Volt dari sumber +5 Volt tunggal. Dalam IC DIP (Dual In-line Package) 16 pin (8 pin x 2 baris) ini terdapat 2 buah transmiter dan 2 receiver. Sering juga sebagai buffer serial digunakan chip DS275. Untuk menghubungkan antara 2 buah PC, biasanya digunakan format null mode, dimana pin TxD dihubungkan dengan RxD pasangan, pin Sinyal ground (5) dihubungkandengan SG di pasangan, dan masing masing pin DTR, DSR dan CD dihubung singkat, dan pin RTS dan CTS dihubung singkat di setiap devais.
Universitas Sumatera Utara
Tabel 2.5 Jenis SInyal RS232 yang umum digunakan Nama Sinyal
Arah sinyal
Signal Common
-
Nomor kaki konektor DB9
DB25
5
7
Transmitted data (TD)
Ke DCE
3
2
Received data (RD)
Dari DCE
2
3
Request data (RTS)
Ke DCE
7
4
Clear to Send (CTS)
Dari DCE
8
5
DCE Ready (DSR)
Dari DCE
6
6
DTE Ready (DTR)
Ke DCE
4
2
Ring Indicator(RI)
Dari DCE
9
22
Data carrier Detect (DCD)
Dari DCE
1
8
2.7.2.2 Koneksi Ke RS232 Port
Koneksi TXD dan RXD MCU MCS-51 dengan port serial komputer selain level tegangannya harus disesuaikan, cara koneksikan juga perlu diperhatikan. Ada semacam protokol komunikasi, bila DTE hendak menghubungi DCE atau sebaliknya, untuk ’DCE’ yang berupa MCU MCS-51 ini, protokol perlu diakali, lebih sederhana prosesnya, sehingga tidak memrlukan software yang rumit, tetapi masih tetap handal, (Sujadi,2005). Selain sinyal data, terdapat sinyal – sinyal protokol komunikasi serial pada komputer dan dihubungkan keluar melalui konektor male DB9 (komputer baru) dan DB25 (Komputer lama), nama sinyal – sinyal tersebut adalah: •
RD, Receive Data (RXD).
•
TD, Transmit Data
•
SG, Signal Ground
•
DTR, Data Terminal Ready
•
DSR, Data Set Ready
Universitas Sumatera Utara
•
CD, Carrier Detect
•
RTS, Request To Send
•
CTS, Clear To Send. Tabel 2.6. Koneksi null mode RD
3
2
TD
2
3
SG
7
5
DTR
20
4
DSR
6
6
CD
8
1
RTS
4
7
CTS
5
8
Komunikasi asinkron yang sederhana yang disebut sebagai null modem, adalah dengan menghubungkan pin- pin DTR, DSR dan CD serta RTS dengan CTS. Sedangkan sinyal data input masuk RD dan sinyal transmit output adalah TD. Konvertor level untuk saat ini tersedia dalam bentuk ic, contoh adalah ICL232 dari Harris semikonduktor, MAX232 dari Maxim.
Gambar 2.11 IC MAX232
Universitas Sumatera Utara
2.7.3 Baud Rate Serial Baud rate clock berkaitan erat dengan frekuensi kristal yang digunakan dan pada mode 1,2, dan 3 juga ditentukan oleh bit SMOD pada PCON register.Baud rate clock tiap mode ditentukan sebagai berikut : •
Mode 0 adalah 1/12 frekuensi kristal
•
Mode 2, untuk SMOD = 0 adalah 1/64 frekuensi kristal
•
Mode 2, untuk SMOD = 1 adalah 1/32 frekuensi kristal
•
Mode 1 dan 3, untuk SMOD = 0 adalah 1/32 dari timer overflow
•
Mode 1 dan 3, untuk SMOD = 1 adalah 1/16 dari timer overflow
PCON tidak dapat diakses secara bit, sehingga pengaturan bit SMOD dapat dilakukan dengan perintah dibawah ini , dalam hal ini SMOD di clearkan. MOV A, PCON
; ambil nilai PCON
CLR Acc. 7
; clear bit 7
MOV PCON, A
; kembalikan ke PCON
Baud rate dari Port Serial 89C51 dapat diatur pada Mode 1 dan Mode 3, namun pada Mode 0 dan Mode 2, baud rate tersebut mempunyai kecepatan yang permanen yaitu untuk Mode 0 adalah 1/12 frekwensi osilator dan Mode 2 adalah 1/64 frekwensi osilator. Dengan mengubah bit SMOD yang terletak pada Register PCON menjadi set (kondisi awal pada saat sistem reset adalah clear) maka baud rate pada Mode 1, 2 dan 3 akan berubah menjadi dua kali lipat. Pada Mode 1 dan 3 baud rate dapat diatur dengan menggunakan Timer1. Cara yang biasa digunakan adalah Timer Mode 2 (8 bit auto reload) yang hanya menggunakan register TH1 saja. Pengiriman setiap bit data terjadi setiap Timer 1 overflow sebanyak 32 kali sehingga dapat disimpulkan bahwa: Lama pengiriman setiap bit data = Timer 1 Overflow X 32 ...........
Baud rate (jumlah bit data yang terkirim tiap detik) =
Apabila diinginkan baud rate 9600 bps maka timer 1 harus diatur agar overflow setiap
Universitas Sumatera Utara
Timer 1 overflow setiap kali TH1 mencapai nilai limpahan (overflow) dengan frekwensi sebesar fosc/12 atau periode 12/fosc. Dari sini akan ditemukan formula
Dengan frekwensi osilator sebesar 11,0592 MHz maka TH1 adalah 253 atau 0FDH. Selain variabel-variabel di atas, masih terdapat sebuah variabel lagi yang menjadi pengatur baud rate serial yaitu Bit SMOD pada Register PCON. Apabila bit ini set maka faktor pengali 32 pada formula 2.8 akan berubah menjadi 16. Oleh karena itu dapat disimpulkan formula untuk baud rate serial untuk Mode 1 dan Mode 3 adalah :
Tabel 2.7 Mode serial Vs Baud rate
Tabel 2.8. memberikan bermacam nilai pada TH1 pada pembangkitan baud rate komunikasi data serial melalui port serial pada mode 1 dan 3, penggunaan kristal 12 MHz hanya diperbolehkan hingga kecepatan 4800 bps saja. Penggunaan kecepatan 4800 untuk komunikasi dengan computer, baik untuk programming atau untuk emulator. Berikut ini adalah tabel Penentuan nilai TH1 pada pembangkitan baud rate :
Universitas Sumatera Utara
Tabel 2.8. Penentuan nilai pada pembangkitan baud rate BPS
Kristal
SMOD
TH1 reload
REAL BPS
ERROR
4800
12
1
-13 (F3h)
4807
0.16%
2400
12
0
-13 (F3h)
2404
0.16%
2400
12
1
-26(E6h)
2404
0.16%
1200
12
0
-26(E6h)
1202
0.16%
1200
12
1
-52(CCh)
1202
0.16%
19200
11.059
1
-3(FDh)
19200
0%
9600
11.059
0
-3(FDh)
9600
0%
BPS
Kristal
SMOD
TH1 reload
REAL BPS
ERROR
9600
11.059
1
-6(Fah)
9600
0%
4800
11.059
0
-6(Fah)
4800
0%
4800
11.059
1
-12(F4h)
4800
0%
2400
11.059
0
-12(F4h)
2400
0%
2400
11.059
1
-24(E8h)
2400
0%
1200
11.059
0
-24(E8h)
1200
0%
1200
11.059
1
-48(D0h)
1200
0%
2.8 Operasinal Amplifier (Op Amp) Operational Amplifier atau di singkat op-amp merupakan salah satu komponen analog yang sering digunakan dalam berbagai aplikasi rangkaian elektronika. Aplikasi op-amp yang paling sering dipakai antara lain adalah rangkaian inverter, non-inverter, integrator dan differensiator. Pada pokok bahasan kali ini akan dipaparkan beberapa aplikasi op-amp yang paling dasar, yaitu rangkaian penguat inverting, non-inverting differensiator dan integrator. Pada Op-Amp memiliki 2 rangkaian feedback (umpan balik) yaitu feedback negatif dan feedback positif dimana Feedback negatif pada op-amp memegang peranan penting. Secara umum, umpanbalik positif akan menghasilkan osilasi sedangkan umpanbalik negatif menghasilkan penguatan yang dapat terukur.
Universitas Sumatera Utara
2.8.1 Op-amp ideal Op-amp pada dasarnya adalah sebuah differential amplifier (penguat diferensial) yang memiliki dua masukan. Input (masukan) op-amp ada yang dinamakan input inverting dan non-inverting. Op-amp ideal memiliki open loop gain (penguatan loop terbuka) yang tak terhingga besarnya. Seperti misalnya op-amp LM741 yang sering digunakan oleh banyak praktisi elektronika, memiliki karakteristik tipikal open loop gain sebesar 104 ~ 105. Penguatan yang sebesar ini membuat op-amp menjadi tidak stabil, dan penguatannya menjadi tidak terukur (infinite). Disinilah peran rangkaian negative feedback (umpanbalik negatif) diperlukan, sehingga op-amp dapat dirangkai menjadi aplikasi dengan nilai penguatan yang terukur (finite). 2.8.2 Diagram Blok Op-amp Op-amp di dalamnya terdiri dari beberapa bagian, yang pertama adalah penguat diferensial, lalu ada tahap penguatan (gain), selanjutnya ada rangkaian penggeser level (level shifter) dan kemudian penguat akhir yang biasanya dibuat dengan penguat push-pull kelas B. Gambar-2.12 berikut menunjukkan diagram dari op-amp yang terdiri dari beberapa bagian tersebut.
(a)
Universitas Sumatera Utara
(b) Gambar 2.13 Diagram Blok Op-Amp Simbol op-amp adalah seperti pada gambar 12.2 (b) dengan 2 input, noninverting (+) dan input inverting (-). Umumnya op-amp bekerja dengan dual supply (+Vcc dan –Vee) namun banyak juga op-amp dibuat dengan single supply (Vcc – ground). Simbol rangkaian di dalam op-amp pada gambar 12.2 (b) adalah parameter umum dari sebuah op-amp. Rin adalah resitansi input yang nilai idealnya infinit (tak terhingga). Rout adalah resistansi output dan besar resistansi idealnya 0 (nol). Sedangkan AOL adalah nilai penguatan open loop dan nilai idealnya tak terhingga.
Universitas Sumatera Utara