BAB II
TINJAUAN PUSTAKA
2.1 Gelombang Ultrasonic
Ultrasonik adalah suara atau getaran dengan frekuensi yang terlalu tinggi untuk bisa didengar oleh telinga manusia, yaitu kira-kira di atas 20 kiloHertz. Hanya beberapa hewan, seperti lumba-lumba menggunakannya untuk komunikasi, sedangkan kelelawar menggunakan gelombang ultrasonik untuk navigasi. Dalam hal ini, gelombang ultrasonik merupakan gelombang ultra (di atas) frekuensi gelombang suara (sonik).
Gelombang ultrasonik dapat merambat pada medium padat, cair dan gas. Reflektivitas dari gelombang ultrasonik ini di permukaan cairan hampir sama dengan permukaan padat, tetapi pada tekstil dan busa, maka jenis gelombang ini akan diserap.
Frekuensi yang diasosiasikan dengan gelombang ultrasonik pada aplikasi elektronik dihasilkan oleh getaran elastis dari sebuah kristal kuarsa yang diinduksikan oleh resonans dengan suatu medan listrik bolak-balik yang dipakaikan (efek piezo elektrik). Kadang gelombang ultrasonik menjadi tidak periodik yang disebut derau (noise), di mana dapat dinyatakan sebagai superposisi gelombang-gelombang periodik, tetapi banyaknya komponen adalah sangat besar. Kelebihan gelombang ultrasonik yang tidak dapat didengar, bersifat langsung dan mudah difokuskan. Jarak suatu benda yang memanfaatkan delay gelombang pantul dan gelombang datang seperti pada sistem radar dan deteksi gerakan oleh sensor pada robot atau hewan. Contoh hewan yang dapat mendengar gelombang ultrasonik yaitu lumba-lumba, kelelawar, paus dll. (WIKIPEDIA, 2017)
Sensor Ultrasonik
Sensor ultrasonic adalah sebuah sensor yang berfungsi untuk mengubah besaran fisis (bunyi) menjadi besaran listrik dan sebaliknya. Cara kerja sensor ini didasarkan pada prinsip dari pantulan suatu gelombang suara sehingga dapat dipakai untuk menafsirkan eksistensi (jarak) suatu benda dengan frekuensi tertentu. Disebut sebagai sensor ultrasonic karena sensor ini menggunakan gelombang ultrasonic (bunyi ultrasonic).
Gelombang ultrasonic adalah gelombang bunyi yang mempunyai frekuensi sangat tinggi yaitu 20.000 Hz. Bunyi ultrasonik tidak dapat didengar oleh telinga manusia. Bunyi ultrasonic hanya dapat didengar oleh anjing, kucing, kelelawar, dan lumbalumba. Bunyi ultrasonic bisa merambat melalui zat padat, cair dan gas. Reflektivitas bunyi ultrasonic di permukaan zat padat hampir sama dengan reflektivitas bunyi ultrasonic di permukaan zat cair. Akan tetapi, gelombang bunyi ultrasonic akan diserap oleh tekstil dan busa.(Santoso, 2014)
Gambar 2.1 Sensor Ultrasonic. (Santoso, 2014)
Pada sensor ultrasonic, gelombang ultrasonic dibangkitkan melalui sebuah alat yang disebut dengan piezoelektrik dengan frekuensi tertentu. Piezoelektrik ini akan menghasilkan gelombang ultrasonic (umumnya berfrekuensi 40kHz) ketika sebuah osilator diterapkan pada benda tersebut. Secara umum, alat ini akan menembakkan gelombang ultrasonic menuju suatu area atau suatu target. Setelah gelombang menyentuh permukaan target, maka target akan memantulkan kembali gelombang tersebut. Gelombang pantulan dari target akan ditangkap oleh sensor, kemudian sensor menghitung selisih antara waktu pengiriman gelombang dan waktu gelombang pantul yang diterima.
Gambar 2.2 Cara kerja gelombang ultrasonic.(Santoso, 2014)
Sinyal yang dipancarkan akan merambat sebagai gelombang bunyi dengan kecepatan sekitar 340 m/s. Ketika menumbuk suatu benda, maka sinyal tersebut akan dipantulkan oleh benda maka sinyal tersebut akan dipantulkan oleh benda tersebut. Setelah gelombang pantulan sampai dialat penerima, maka sinyal tersebut akan diproses untuk menghitung jarak benda tersebut. Jarak benda dihitung berdasarkan rumus : S = (340/t)/2.............................................................................................(2.1)
S merupakan jarak antara sensor ultrasonic dengan benda (bidang pantul), dan t adalah lama waktu pantul, kemudian dibagi 2 karena terjadi 2 proses yang membagi interval waktu antara waktu pemancaran gelombang oleh transmitter dan waktu ketika gelombang pantul diterima receiver.(Santoso, 2014)
Mikrokontroller
Mikrokontroller adalah sebuah chip yang berfungsi sebagai pengontrol rangkaian elektronic dan umunya dapat menyimpan program di dalamnya. Sebuah chip yang berfungsi sebagai pengontrol rangkaian elektronic dan umunya dapat menyimpan program, umumnya terdiri dari CPU (Central Processing Unit), memory, I/O tertentu dan unit pendukung seperti Analog-to-Digital Converter (ADC) yang sudah terintegrasi di dalamnya. Kelebihan microcontroller ialah tersedianya RAM dan peralatan I/O pendukung sehingga ukuran board microcontroller menjadi sangat ringkas. MCS51 ialah microcomputer CMOS 8 bit dengan 4 KB Flash PEROM (Programmable and Erasable Only Memory) yang dapat dihapus dan ditulisi sebanyak 1000 kali[7].
Mikrokontroller AT89S51
Mikrokontroller AT89S51 merupakan keluarga mikrokontroler Atmega. Microcontroller AT89S51 memiliki beberapa pin yang berfungsi sebagai jalur input-output, jalur kontrol, addres bus dan data bus. Konfigurasi pin AT89S51 dapat dilihat pada gambar 2.3 Susunan pin AT89S51 dibawah ini.
Gambar 2.3 Susunan pin AT89S51.
Microcontroller AT89S51 memiliki 40 pin pada umumnya dikemas dalam DIP(Dual inline package), masing- masing pin microcontroller AT89S51 mempunyai kegunaan sebagai berikut dibawah ini.
-Pin 1- 8
Merupakan port 1 yang menjadikan bus saluran dua arah input atau output 8 bit.
-Pin 9
Merupakan masukan reset (aktif tinggi) untuk dua siklus mesin.
-Pin 10 - 17
Merupakan port 3 yang menjadikan saluran (bus) I/O 8 bit dua arah dengan pull-up yang mempunyai fungsi alternatif.
Ketika logika 1 diberikan ke port 3, maka pull-up internal akan meriset port pada kondisi high dan port 3 dapat digunakan sebagai port pararel 8 bit serbaguna. Selain itu sebagian dari port 3 dapat berfungsi sebagai sinyal kontrol pada saat pemograman. Fungsi alternatif ini sebagai berikut:
Tabel 2.1 Pin Map Port 3
Pin/Port
Alternatif
Keterangan
P3.0
RXD
Untuk menrima data port serial
P3.1
TXD
Untuk mengirim data serial
P3.2
INT0
Interupsi external 0
P3.3
INT1
Interupsi external 1
P3.4
T0
Input pewaktu external/pencacah 0
P3.5
T1
Input pewaktu external/pencacah 1
P3.6
WR
Jalur menulis memori data external strobe
P3.7
RD
Jalur membaca memori data external strobe
-Pin 18 - 19
Merupakan masukan ke penguat osilator berpenguat tinggi. Microcontroler ini memiliki seluruh rangkaian osilator yang diperlukan pada chip kecuali rangkaian kristal. Selain itu XTAL 1 juga dapat dipakai sebagai input untuk inverting osilator amplifier dan input ke rangkaian internal clock sedangkan XTAL 2 merupakan ouput dari inverting osilator amplifier.
-Pin 20
Merupakan ground sumber tegangan yang diberi simbol GND.
-Pin 21-28
Merupakan port 2 yang menjadi saluran (bus) I/O dua arah 8 bit dengan inetrnal pull-up.
-Pin 29
Merupakan sinyal pengontrol untuk mengakses program memori external yang masuk ke dalam saluran (bus) selama proses pemberian atau pengambilan instruksi.
-Pin 30
Merupakan panahan alamat memori external pada port 1 selama mengakses ke memori external.
-Pin 31
Merupakan External access (EA) sinyal kontrol untuk pembacaan memori program. Apabila diset rendah (L), maka mikrokontroler akan melaksanakan seluruh intruksi dari memori program external sedangkan apabila di set tinggi (H) maka mikrokontroler akan melaksanakan intruksi dari memori program internal.
-Pin 32-39
Merupakan port 0. Port 0 ini salah satu port yang berfungsi sebagai general pupose I/O dengan lebar 8 bit. Port 0 terdiri dari P0.0 - P0.7.
Selain sebagai jalur I/O port 0 juga berfungsi sebagai multiplexed address data bus.
-Port 40
Merupakan sumber tegangan positif yang diberi simbol VCC[1].
Prinsip kerja mikrokontroler adalah sebagai berikut :
Berdasarkan nilai yang berada pada register Program Counter, mikrokontroler mengambil data pada ROM dengan alamat sebagaimana yang tertera pada register Program Counter. Selanjutnya isi dari register Program Counter ditambah dengan satu (Increment) secara otomatis.
Data yang diambil pada ROM merupakan urutan instruksi program yang telah dibuat dan diisikan sebelumnya oleh pengguna.
Instruksi yang diambil tersebut diolah dan dijalankan oleh mikrokontroler. Proses pengerjaan bergantung pada jenis instruksi, bisa membaca, mengubah nilai-nilai pada register, RAM, isi Port,atau melakukan pembacaan dan dilanjutkan dengan pengubahan data.
Program Counter telah berubah nilainya (baik karena penambahan otomatis pada langkah 1, atau karena pengubahan-pengubahan pada langkah 2). Selanjutnya yang dilakukan oleh mikrokontroler adalah mengulang kembali siklus ini pada langkah 1. Demikian seterusnya hingga power dimatikan.(Ruri, 2016)
2.3.2 Pemrograman Mikrokontroler Atmega dengan bahasa Assembly
Mikrokontroler Atmega merupakan mikrokontroler dengan pemrograman yang mudah serta mampu diprogram dengan berbagai bahasa pemrograman. Bahasa pemrograman Assembly adalah bahasa pemrograman tingkat rendah. Dalam pemrograman komputer dikenal dua jenis tingkatan bahasa, jenis yang pertama adalah bahasa pemrograman tingkat tinggi (high level language) dan jenis yang kedua adalah bahasa pemrograman tingkat rendah (low level language).
Bahasa pemrograman tingkat tinggi lebih berorientasi kepada manusia yaitu bagaimana agar pernyataan-pernyataan yang ada dalam program mudah ditulis dan dimengerti oleh manusia. Sedangkan bahasa tingkat rendah lebih berorientasi ke mesin, yaitu bagaimana agar komputer dapat langsung mengintepretasikan pernyataan-pernyataan program.
Kelebihan Bahasa Assembly:
1. Ketika di-compile lebih kecil ukuran
2. Lebih efisien/hemat memori
3. Lebih cepat dieksekusi
Kesulitan Bahasa Assembly:
1. Dalam melakukan suatu pekerjaan, baris program relatif lebih panjang dibanding bahasa tingkat tinggi
2. Relatif lebih sulit untuk dipahami terutama jika jumlah baris sudah terlalu banyak
3. Lebih sulit dalam melakukan pekerjaan rumit, misalnya operasi matematis.
Dalam program bahasa assembly terdapat 2 jenis yang kita tulis dalam program yaitu:
1. Assembly Directive (yaitu merupakan kode yang menjadi arahan bagi assembler/compiler untuk menata program).
2. Instruksi (yaitu kode yang harus dieksekusi oleh CPU mikrokontroler)
Tabel 2.2 Daftar Assembly Directive
Assembly Directive
Keterangan
EQU
Pendefinisian konstanta
DB
Pendefinisian data dengan ukuran satuan 1 byte
DW
Pendefinisian data dengan ukuran satuan 1 word
DBIT
Pendefinisian data dengan ukuran satuan 1 bit
DS
Pemesanan tempat penyimpanan data di RAM
ORG
Inisialisasi alamat mulai program
END
Penanda akhir program
CSEG
Penanda penempatan di code segment
XSEG
Penanda penempatan di external data segment
DSEG
Penanda penempatan di internal direct data segment
ISEG
Penanda penempatan di internal indirect data segment
BSEG
Penanda penempatan di bit data segment
CODE
Penanda mulai pendefinisian program
XDATA
Pendefinisian external data
DATA
Pendefinisian internal direct data
IDATA
Pendefinisian internal indirect data
BIT
Pendefinisian data bit
#INCLUDE
Mengikutsertakan file program lain
Tabel 2.3 Daftar Instruksi
Instruksi
Keterangan Singkatan
ACALL
Absolute Call
ADD
Add
ADDC
Add with Carry
AJMP
Absolute Jump
ANL
AND Logic
CJNE
Compare and Jump if Not Equal
CLR
Clear
CPL
Complement
DA
Decimal Adjust
DEC
Decrement
DIV
Divide
DJNZ
Decrement and Jump if Not Zero
INC
Increment
JB
Jump if Bit Set
JBC
Jump if Bit Set and Clear Bit
JC
Jump if Carry Set
JMP
Jump to Address
JNB
Jump if Not Bit Set
JNC
Jump if Carry Not Set
JNZ
Jump if Accumulator Not Zero
JZ
Jump if Accumulator Zero
LCALL
Long Call
LJMP
Long Jump
MOV
Move from Memory
MOVC
Move from Code Memory
MOVX
Move from Extended Memory
MUL
Multiply
NOP
No Operation
ORL
OR Logic
POP
Pop Value From Stack
PUSH
Push Value Onto Stack
RET
Return From Subroutine
RETI
Return From Interrupt
RL
Rotate Left
RLC
Rotate Left through Carry
RR
Rotate Right
RRC
Rotate Right through Carry
SETB
Set Bit
SJMP
Short Jump
SUBB
Subtract With Borrow
SWAP
Swap Nibbles
XCH
Exchange Bytes
XCHD
Exchange Digits
XRL
Exclusive OR Logic
Penulisan program kedalam mikrokontroler Atmega ini memerlukan bantuan software yang khusus untuk mikrokontroler jenis Atmega. Software untuk membantu memprogram mikrokontroler ATmega sudah banyak tersedia. Untuk mempermudah maka dapat dipilih software yang merupakan Integrated Development Environment (IDE) yaitu software yang merupakan editor sekaligus compiler. Bahkan juga ada yang sekaligus debugger dan simulator. Salah satunya yang digunakan adalah Read51.(Prasimax, 2017)
Berikut beberapa cara penggunaan software.
1. User dapat membuat program sistem single file maupun proyek (beberapa file). Klik menu File lalu pilih New File.
2. Ketik program di window editing. Software menyediakan syntax highlighting otomatis, sehingga tiap assembly directive akan diberi warna ungu dan tiap instuksi akan diberi warna biru.
Gambar 2.4 Syntac Highlighting Otomatis .(Prasimax, 2017)
3. User dapat langsung mengcompile program dengan sekali klik icon Build (F9). Ketika ada kesalahan maka user dapat langsung ditunjukkan letak dan jenis kesalahan.
Gambar 2.5 Compile Program .(Prasimax, 2017)
4. User dapat melakukan simulasi software untuk melihat hasil kerja program. Klik IDE mode (F2).
5. User dapat melakukan debugging, bahkan melihat hasil eksekusi per step (per baris) terhadap kondisi-kondisi register dan memori di mikrokontroler. Klik Step Into (F8).
Gambar 2.6 Simulasi Program .(Prasimax, 2017)
Selanjutnya user dapat melakukan download program ke IC mikrokontroler untuk menguji hasilnya secara real di hardware.
Solenoida
Solenoid adalah salah satu jenis kumparan terbuat dari kabel panjang yang dililitkan secara rapat dan dapat diasumsikan bahwa panjangnya jauh lebih besar daripada diameternya. Dalam kasus solenoid ideal, panjang kumparan adalah tak hingga dan dibangun dengan kabel yang saling berhimpit dalam lilitannya, dan medan magnet di dalamnya adalah seragam dan paralel terhadap sumbu solenoid. (wikipedia, 2017)
Gambar 2.7 Kumparan Solenoida (wikipedia, 2017)
Kuat medan magnet untuk solenoid ideal adalah:
..........................................................................(2.1)
di mana:
B adalah kuat medan magnet,
adalah permeabilitas ruang kosong,
i adalah kuat arus yang mengalir,
n adalah jumlah lilitan.
Jika terdapat batang besi dan ditempatkan sebagian panjangnya di dalam solenoid, batang tersebut akan bergerak masuk ke dalam solenoid saat arus dialirkan. Hal ini dapat dimanfaatkan untuk menggerakkan tuas, membuka pintu, kran, atau mengoperasikan relay.
Kran Elektrik
Kran elektrik atau Solenoid valve merupakan katup yang dikendalikan dengan arus listrik AC maupun DC melalui kumparan / selenoid. Solenoid valve ini merupakan elemen kontrol yang paling sering digunakan dalam system fluida. Seperti pada system pneumatik, system hidrolik ataupun pada sistem kontrol mesin yang membutuhkan elemen kontrol otomatis. Contohnya pada system pneumatik, solenoid valve bertugas untuk mengontrol saluran udara yang bertekanan menuju aktuator pneumatic (cylinder). Atau pada sebuah tandon air yang membutuhkan solenoid valve sebagai pengatur pengisian air, sehingga tandon tersebut tidak sampai kosong.
Gambar 2.8 Kran elektrik. .( Dermanto, 2013)
Kran elektrik mempunyai 2 (dua) jenis cara kerja yaitu NC dan NO yang fungsinya untuk menutup dan membuka saluran,karena memiliki 1 lubang inlet, 1 lubang outlet. Lubang inlet berfungsi sebagai masuknya fluida, lubang outlet berfungsi sebagai keluarnya fluida saluran ini biasanya digunakan atau diterapkan pada aktuator pneumatik (cylinder kerja tunggal).
Prinsip Kerja Kran Elektrik
Solenoid valve akan bekerja bila kumparan/coil mendapatkan tegangan arus listrik yang sesuai dengan tegangan kerja solenoid valve yaitu 220VAC. Tuas kran akan tertarik karena gaya magnet yang dihasilkan dari kumparan selenoid tersebut. Saat tuas tersebut ditarik naik maka fluida akan mengalir dari ruang C menuju ke bagian D dengan cepat. Sehingga tekanan di ruang C turun dan tekanan fluida yang masuk mengangkat diafragma. Sehingga katup utama terbuka dan fluida mengalir langsung dari A ke F.( Dermanto, 2013)
Gambar 2.9 Prinsip kerja kran elektrik. .( Dermanto, 2013)
Spesifikasi Kran Elektrik
Bekerja menengah : udara, air, minyak, gas
Gerak Patern : Direct Drive Type
Jenis : Normal Tutup Jenis / Normal Open Type
Lobang Flow Rate : 50mm
Nilai Cv : 48
Bersama Pipa Bore : 2 "
Operasi Fluid Viskositas : di bawah 20 CST
Bekerja Tekanan : Air / MINYAK: 0 ~ 5 kgf / cm2, Air / Gas: 0 ~ 7 kgf / cm2
Max.Pressure Resistance : 10.5 kgf / cm2
Operasi Rentang Suhu : -5 ~ 80 ℃
Tegangan : AC 220V
Tegangan Range : ± 10%
Bahan Badan : Kuningan
Bahan Minyak Seal : NBR, EPDM, Viton
Power Supply
Power supply atau catu daya atau adaptor merupakan sumber tegangan DC. Sumber tegangan DC ini dibutuhkan oleh berbagai macam rangkaian elektronika untuk dapat dioperasikan. Rangkaian inti dari catu daya atau Power Supply ini adalah suatu rangkaian penyearah yaitu rangkaian yang mengubah sinyal bolak-balik (AC) menjadi sinyal searah (DC).
Catu daya berfungsi untuk memberikan supply tegangan, khususnya ke IC mikrokontroler AT89S51, catu daya yang di gunakan adalah 5 Volt dc. Untuk menurunkan tegangan trafo dari 9V menjadi 5V maka di gunakan IC voltage regulator LM7805. Pada rangkaian catu daya, dioda 1N4001 berfungsi sebagai penyearah gelombang penuh dari AC ke DC dengan arus sebesar 1 Ampere, sedangkan kapasitor 1003F dan 100nF berfungsi sebagai filter tegangan DC atau
penghalus pulsa-pulsa tegangan yang dihasilkan oleh dioda penyearah. (Yunanda,2014)
Gambar 2.10 Rangkaian Catu Daya (Yunanda,2014)
Relay
Relay adalah Saklar (Switch) yang dioperasikan secara listrik dan merupakan komponen Electromechanical (Elektromekanikal) yang terdiri dari 2 bagian utama yakni Elektromagnet (Coil) dan Mekanikal (seperangkat Kontak Saklar/Switch). Relay menggunakan Prinsip Elektromagnetik untuk menggerakkan Kontak Saklar sehingga dengan arus listrik yang kecil (low power) dapat menghantarkan listrik yang bertegangan lebih tinggi. Sebagai contoh, dengan Relay yang menggunakan Elektromagnet 5V dan 50 mA mampu menggerakan Armature Relay (yang berfungsi sebagai saklarnya) untuk menghantarkan listrik 220V 2A.(Teknikelektronika,2015)
Kontak Poin (Contact Point) Relay terdiri dari 2 jenis yaitu : Normally Close (NC) yaitu kondisi awal sebelum diaktifkan akan selalu berada di posisi CLOSE (tertutup), Normally Open (NO) yaitu kondisi awal sebelum diaktifkan akan selalu berada di posisi OPEN (terbuka). Apabila Kumparan Coil diberikan arus listrik, maka akan timbul gaya Elektromagnet yang kemudian menarik Armature untuk berpindah dari Posisi sebelumnya (NC) ke posisi baru (NO) sehingga menjadi Saklar yang dapat menghantarkan arus listrik di posisi barunya (NO). Posisi dimana Armature tersebut berada sebelumnya (NC) akan menjadi OPEN atau tidak terhubung. Pada saat tidak dialiri arus listrik, Armature akan kembali lagi ke posisi Awal (NC). Coil yang digunakan oleh Relay untuk menarik Contact Poin ke Posisi Close pada umumnya hanya membutuhkan arus listrik yang relatif kecil. (Teknikelektronika,2015)
Simbol relay dapat dilihat pada gambar 2.7 di bawah ini.
Gambar 2.11 Simbol Relay. (Teknikelektronika,2015)
Seven Segment
Seven Segment adalah suatu segmensegmen yang digunakan menampilkan angka. Seven segment merupakan display visual yang umum digunakan dalam dunia digital. Seven segment sering dijumpai pada jam digital, penujuk antrian, display angka digital dan termometer digital. Penggunaan secara umum adalah untuk menampilkan informasi secara visual mengenai datadata yang sedang diolah oleh suatu rangkaian digital.
Seven segment ini tersusun atas 7 batang LED yang disusun membentuk angka 8 yang penyusunnya menggunakan label dari ‘a’ sampai ‘g’ dan satu lagi untuk dot point (DP). Setiap segmen ini terdiri dari 1 atau 2 Light Emitting Diode (LED). Salah satu terminal LED dihubungkan menjadi satu sebagai kaki common [5]. Seven segment yang digunakan pada rangkaian otomatisasi level air adalah seven segment common anoda seperti yang dapat dilihat pada gambar 2.8 di bawah ini. (Setiawan,2011)
Gambar 2.12 Seven Segment (Setiawan,2011)
19
18
1