• Tidak ada hasil yang ditemukan

BAB 2 TINJAUAN PUSTAKA

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 2 TINJAUAN PUSTAKA"

Copied!
25
0
0

Teks penuh

(1)

BAB 2

TINJAUAN PUSTAKA

2.1Sensor Ultrasonik

Gelombang ultrasonik merupakan gelombang akustik yang memiliki frekuensi mulai 20 kHz hingga sekitar 20 MHz. Frekuensi kerja yang digunakan dalam gelombang ultrasonik bervariasi tergantung pada medium yang dilalui, mulai dari kerapatan rendah pada fasa gas, cair hingga padat. Jika gelombang ultrasonik berjalan melaui sebuah medium, Secara matematis besarnya jarak dapat dihitung sebagai berikut:

s = v.t/2……….. (1)

s adalah jarak dalam satuan meter, v adalah kecepatan suara yaitu 344 m/detik dan t adalah waktu tempuh dalam satuan detik. Ketika gelombang ultrasonik menumbuk suatu penghalang maka sebagian gelombang tersebut akan dipantulkan sebagian diserap dan sebagian yang lain akan diteruskan.

Sensor ultrasonik adalah sebuah sensor yang mengubah besaran fisis (bunyi) menjadi besaran listrik. Pada sensor ini gelombang ultrasonik dibangkitkan melalui sebuah benda yang disebut piezoelektrik. Piezoelektrik ini akan menghasilkan gelombang ultrasonik dengan frekuensi 40 kHz ketika sebuah osilator diterapkan pada benda tersebut. Rangkaian penyusun sensor ultrasonik ini terdiri dari transmitter, reiceiver, dan komparator. Selain itu, gelombang ultrasonik dibangkitkan oleh sebuah kristal tipis bersifat piezoelektrik.

Modul sensor Ultrasonik ini dapat mengukur jarak antara 3 cm sampai 3 m. Keluaran dari modul sensor ultrasonik ini berupa pulsa yang lebarnya merepresentasikan jarak. Lebar pulsanya yang dihasilkan modul sensor ultrasonik ini bervariasi dari 115 uS sampai 18,5 mS. Secara prinsip modul sensor ultrasonik ini terdiri dari sebuah chip pembangkit sinyal 40KHz, sebuah speaker ultrasonik dan sebuah mikropon ultrasonik. Speaker ultrasonik mengubah sinyal 40 KHz menjadi suara sementara mikropon ultrasonik berfungsi untuk mendeteksi pantulan suaranya.

(2)

Sensor ultrasonik bekerja berdasarkan sistem kerja gelombang, dimana gelombang yang digunakan adalah gelombang suara. Waktu untuk pada saat gelombang suara itu dibangkitkan dan dipantulkan kembali oleh receiver akan membutuhkan waktu.Waktu itulah yang akan menjadi data untuk menghitung jarak yang akan kita ukur karena besaran kecepatan telah ada yaitu kecepatan suara. Dengan kata lain sensor ultrasonik bekerja berdasarkan prinsip pantulan gelombang suara. Berikut adalah spesifikasi sensor ultrasonik :

a. Power Suply : 5 Volt

b. Frekuensi Ultrasonik : 40 KHz c. Jarak maksimal : 400 cm d. Jarak minimal : 2 cm

e. Trigger Pulse Width : 10 µs f. Dimensi : 43 x 20 x 15

Sensor ultrasonik bekerja dengan mengirimkan gelombang suara menuju target dan mengukur waktu yang diperlukan untuk pulsa melenting kembali. Waktu yang diperlukan gaung untuk kembali ke sensor berbanding lurus dengan jarak atau tinggi dari objek, sebab suara mempunyai kecepatan konstan. Sinyal gaung yang kembali secara elektronis diubah menjadi output 4mA sampai dengan 20mA, yang mensuplai kecepatan aliran yang dimonitor ke alat kontrol eksternal. Objek padat, cair, butiran dan tekstil dapat dideteksi dengan sensor ultrasonik. Reflektifitas suara dari permukaan cairan sama dengan objek padat. Tekstil dan buih menyerap gelombang suara dan mengurangi rentang pensensoran.

2.1.1 Prinsip kerja sensor ultrasonik

Ketika gelombang ultrasonik melewati suatu objek, sebagian dipantulkan, sebagian diteruskan dan sebagian lagi diserap. Sensor itu menghasilkan gelombang suara dan memancarkannya sehingga mengenai objek yang berada didepannya kemudian pantulan gelombang suara dari objek yang berada didepannya ditangkap dengan perbedaan waktu yang digunakan sebagai dasar perhitungan jarak objek. Perbedaan waktu pancaran dan waktu pantulan berbanding lurus dengan jarak objek yang memantulkannya. Jenis objek yang di indranya dapat berupa zat padat, cair dan butiran.

(3)

2.1.2 Timing Diagram sensor Ultrasonik

Timing diagram sensor ultrasonik ditunjukkan pada gambar 2.2 dibawah ini. Kita hanya perlu menyediakan pulsa 10 μs untuk memicu masukan atau masukan trigger untuk memulai dan kemudian modul akan mengirim 8 siklus gelombang ultrasonik 40 KHz dan meningkatkan gaungnya (echo). Echo adalah jarak objek yang merupakan lebar pulsa dan jarak pada setiap bagiannya. Rentang melalui interval waktu antara pengiriman sinyal pemicu dan penerima sinyal echo dapat dihitung. Persamaannya adalah level waktu paling tinggi dikalikan dengan kecepatan (340m/s) dibagi dua.

Gambar 2.1 Timing diagram pengoperasian sensor ultrasonik Us-016

Jenis sensor yang digunakan pada penelitian ini adalah sensor Ultrasonik tipe Us-016. Jarak tangkap modul Sensor ultrasonik Us-016 dapat mencapai 2 cm ~ 3m non-kontak pengukuran fungsi jarak, tegangan listrik 5V, beroperasi pada 3.8mA, mendukung tegangan output analog, stabil dan dapat diandalkan. Modul ini dapat diatur untuk rentang yang berbeda tergantung pada aplikasi (pengukuran jarak maksimum untuk setiap 1m dan 3m); ketika pin rentang mengambang jarak tempuhnya adalah 3m. jarak US-016 dapat dikonversi ke tegangan output analog, tegangan output sebanding dengan jarak yang diuku

(4)

(a)

(b)

Gambar 2.2 Sensor Ultrasonik Us-016 (a) tampak depan (b) tampak belakang

Sensor ultrasonik us-016 memiliki 4 PIN, dari gambar dapat dijelaskan dari kiri ke kanan ke-empat PIN sebagai berikut:

 PIN 1 : VCC menyambungkan ke VCC 5 volt

 PIN 2 : Range ketika pin dalam keadaan High, jaaraknya 3 m. ketika pin dalam keadaan low, jaraknya 1 m.

(5)

 PIN 3 : Out Analog tegangan output pin (out) , tegangan analog sebanding dengan jarak pengukuran, rentang output adalah 0 ~ Vcc  PIN 4 : Ground Terhubung ke sirkuit eksternal.

2.2 ATMega8535

ATMega8535 adalah mikrokontroler CMOS 8 bit daya rendah berbasis arsitektur RISC. Instruksi dikerjakan pada satu siklus clock, ATMega8535 mempunyai throughput mendekati 1 MIPS per MHz, hal ini membuat ATMega8535 dapat bekerja dengan kecepatan tinggi walaupun dengan penggunaan daya rendah. Mikrokontroler ATmega8535 memiliki beberapa fitur atau spesifikasi yang menjadikannya sebuah solusi pengendali yang efektif untuk berbagai keperluan. Fitur-fitur tersebut antara lain:

1. Saluran I/O sebanyak 32 buah, yang terdiri atas Port A, B, C dan D 2. ADC (Analog to Digital Converter)

3. Tiga buah Timer/Counter dengan kemampuan perbandingan 4. CPU yang terdiri atas 32 register

5. Watchdog Timer dengan osilator internal 6. SRAM sebesar 512 byte

7. Memori Flash sebesar 8kb dengan kemampuan read while write 8. Unit Interupsi Internal dan External

9. Port antarmuka SPI untuk men-download program ke flash 10. EEPROM sebesar 512 byte yang dapat diprogram saat operasi 11. Antarmuka komparator analog

12. Port USART untuk komunikasi serial.

Mikrokontroler merupakan sebuah single chip yang didalamya telah dilengkapi

dengan CPU (Central Prosessing Unit); RAM ( RandomAcces Memory); ROM ( Read only Memory), Input, dan Output, Timer\ Counter, Serial com port secara spesifik digunakan untuk aplikasi –aplikasi control dan buka aplikasi serbaguna. Mikrokontroler umumnya bekerja pada frekuensi 4MHZ-40MHZ. Perangkat ini

(6)

motor. Read only Memory (ROM) yang isinya tidak berubah meskipun IC kehilangan catu daya. Sesuai dengan keperluannya, sesuai dengan susunan MCS-51. Memory penyimpanan program dinamakan sebagai memory program.Random Acces Memory (RAM) isinya akan begitu sirna IC kehilangan catudaya dipakai untuk menyimpan data pada saat program bekerja. RAM yang dipakai untuk menyimpan data ini disebut sebagai memori data.

Mikrokontroler biasanya dilengkapi dengan UART (Universal Asychoronous Receiver Transmitter) yaitu port serial komunikasi serial asinkron, USART (Universal Asychoronous\Asy choronous Receiver Transmitter) yaitu port yang digunakan untuk komunikasi serial asinkron dan asinkron yang kecepatannya 16 kali lebih cepat dari Uart, SPI ( Serial Port Interface), SCI ( Serial Communication Interface ), Bus RC ( Intergrated circuit Bus ) merupakan 2 jalur yang terdapat 8 bit, CAN ( Control Area Network ) merupakan standard pengkabelan SAE (Society of Automatic Enggineers).

Pada sistem komputer perbandingan RAM dan ROM-nya besar, artinya program program pengguna disimpan dalam ruang RAM yang relatif besar,sedangkan rutin-rutin antar muka pernagkat keras disimpan dalm ruang ROM yang kecil. Sedangkan pada mikrokontroler, perbandingan ROM dan RAM-nya yang besar artiRAM-nya program control disimpan dalam ROM yang ukuranRAM-nya relative lebih besar, sedangkan RAM digunakan sebagai tempat penyimpanan sedrhana sementara, termasuk register-register yang digunakan pada Microctroller yang bersangkutan. Mikrokontroler saat ini sudah dikenal dan digunakan secar luas pada dunia industri. Banyak sekali penelitian atau proyek mahasiswa yang menggunakan berbagai versi mikrokontroler yang dapat dibeli dengan harga yang relative murah. Hal ini dikarenakan produksi misal yang dilakukan oleh para produse chip seperti Atmel, Maxim, dan Microchip. Mikrokontroler saat ini merupakan chip utama pada hampir setiap peralatan elektronika canggih. Alat-alat canggih pun sekarang ini sangat bergantung pada kemampuan mikrokontroler tersebut.

(7)

2.2.1 Arsitektur ATMega8535

(8)

2.2.2 Fitur ATMega 8535

Kapabilitas detail dari ATMega8535 adalah sebagai berikut :

1. Sistem mikroprosesor 8 bit berbasis RISC dengan kecepatan maksimal 16MHz. 2. Kapabilitas memori flash 8 KB, SRAM sebesar 512 byte , dan EEPROM (Electrically Erasable Programmable Read Only Memory) sebesar 512 byte. 3. ADC internal dengan fidelitas 10 bit sebanyak 8 channel.

4. Portal komunikasi serial (USART) dengan kecepatan maksimal 2,5 Mbps. 5. Enam pilihan mode sleep menghemat penggunaan daya listrik.

2.2.3 Konfigurasi ATMega 8535

Konfigurasi pin ATMega 8535 bisa dilihat pada gambar 2.2. di bawah ini. Dari gambar tersebut dapat dijelaskan secara fungsional konfigurasi pin ATMega 8535 sebagai berikut:

1. VCC merupakan pin yang berfungsi sebagai pin masukan catu daya. 2. GND merupakan pin ground.

3. Port A (PA0..PA7) merupakan pin I/O dua arah dan pin masukan ADC. 4. Port B (PB0..PB7) merupakan pin I/O dua arah dan pin fungsi khusus , yaitu Timer/Counter, komparator analog, dan SPI.

5. Port C (PC0..PC7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu TWI, komparator analog, dan Timer Oscilat.

6. Port D (PD0.. PD7 merupakan pin I/O dua arah dan fungsi khusus, yaitu komparator analog, interupsi eksternal, komunikasi serial.

7. RESET merupakan pin yang digunakan untuk me-reset mikrokontroler. 8. XTAL1 dan XTAL2 merupakan pin masukan clock eksternal.

9. AVCC merupakan pin masukan tegangan untuk ADC. 10. AREF merupakan pin masukan tegangan referensi ADC.

(9)

Gambar 2.4 Pin ATMega8535 Berikut adalah penjelasan fungsi tiap kaki.

1. PORT A

Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor ( dapat diatur per bit). Output buffer Port A dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port A (DDRA) harus disetting terlebih dahulu sebelum port A digunakan. Bit-bit DDRA diisi 0 jika ingin memfungsikan pin-pin port A yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, kedelapan pin port A juga digunakan untuk masukan sinyal analog bagi A/D coverter.

2. PORT B

Merupakan 8 bit directional port I/O. setiap pinnya dapat menyediakan internal pull-up resistor ( dapat diatur per bit). Output buffer Port B dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port B (DDRB) harus disetting terlebih dahulu sebelum port B digunakan. Bit-bit DDRB diisi 0 jika ingin memfungsikan pin-pin port B yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Pin-pin port B

(10)

juga memiliki untuk fungsi\fungsi alternatif khusus seperti yang terlihat pada tabel berikut.

Tabel 2.1. Konfigurasi Pin Port B ATMega 8535

PORT PIN FUNGSI KHUSUS

PB 0 T0 = timer/ counter 0 external counterinput PB 1 T1 = timer/counter 0 external counter input PB 2 AINO = analog comparator positive input PB 3 AINI =analog comparator negative input

PB 4 SS = SPI slave select input

PB 5 MOSI = SPI bus master output/slave input PB 6 MISO = SPI bus master input/slave output

PB 7 SCK = SPI bus serial clock

3. PORT C

Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor ( dapat diatur per bit). Output buffer Port C dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port C (DDRC) harus disetting terlebih dahulu sebelum port C digunakan. Bit-bit DDRC diisi 0 jika ingin memfungsikan pin-pin port C yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, DUA pin port C (PC6 dan PC7) juga memiliki fungsi alternatif sebagai oscilator untuk timer/counter 2.

4. PORT D

Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor ( dapat diatur per bit). Output buffer Port D dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port D (DDRD) harus disetting terlebih dahulu sebelum port D digunakan. Bit-bit DDRD diisi 0 jika ingin memfungsikan pin-pin port D

(11)

yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, pin-pin port D juga memiliki untuk fungsi\fungsi alternatif khusus.

Tabel 2.2.Konfigurasi Pin Port D ATmega8535

PORT PIN FUNGSI KHUSUS

PD 0 RDX (UART input line)

PD 1 TDX (UART output line)

PD 2 INT0 ( external interrupt 0 input ) PD 3 INT1 ( external interrupt 1 input )

PD 4 OC1B (Timer/Counter1 output compareB match output) PD 5 OC1A (Timer/Counter1 output compareA match

output)

PD 6 ICP (Timer/Counter1 input capture pin)

PD 7 OC2 (Timer/Counter2 output compare match output)

5. RESET

RST pada pin 9 merupakan reset dari AVR. Jika pada pin ini diberi masukan low

selama minimal 2 machine cycle maka system akan di-reset. 6. XTAL1

XTAL1 adalah masukan ke inverting oscilator amplifier dan input ke internal clock operating circuit.

7. XTAL2

XTAL2 adalah output dari inverting oscilator amplifier. 8. Avcc

Avcc adalah kaki masukan tegangan bagi A/D Converter. Kaki ini harus secara eksternal terhubung ke Vcc melalui lowpass filter.

9. AREF

AREF adalah kaki masukan referensi bagi A/D Converter. Untuk operasional ADC, suatu level tegangan antara AGND dan Avcc harus diberikan ka kaki ini.

(12)

AGND adalah kaki untuk analog ground. Hubungkan kaki ini ke GND, kecuali jika board memiliki analog ground yang terpisah.

2.2.4. Peta Memori

AVR ATMega8535 memiliki ruang pengalamatan memori data dan memori program yang terpisah. Memori data terbagi menjadi 3 bagian, yaitu 32 buah register umum, 64 buah register I/O, dan 512 byte SRAM Internal. Register keperluan umum menempati space data pada alamat terbawah, yaitu $00 sampai $1F. Sementara itu, register khusus untuk menangani I/O dan control terhadap mikrokontroler menempati 64 alamat berikutnya, yaitu mulai dari $20 hingga $5F. Register tersebut merupakan register yang khusus digunakan mengatur fungsi terhadap berbagai peripheral mikrokontroler, seperti contoh register, timer/counter, fungsi-fungsi I/O, dan sebagainya. Register khusus alamat memori secara lengkap dapat dilihat tabel ini. Alamat memori berikutnya digunakan untuk SRAM 512 byte, yaitu pada lokasi $60 sampai dengan $25F. Konfigurasi memori dapat kita ketahui dimana, memori program yang terletak dalam flash PEROM tersususn dalam word atau 2 byte karena setiap instruksi memiliki lebar 16-bit atau 32-bit, AVR ATMega8535 memiliki KByte 12-bit program Counter (PC) sehingga mampu mengalamati isi flash. Selain itu AVR ATMega8535 juga memiliki memori data berupa EEPROM 8-bit sebanyak 512 byte. Alamat EEPROM dimulai dari $000sampai $1FF. Dibawah ini adalah gambar memori program AVR ATMega8535.

2.2.5. Status register (SREG)

Status register adalah register berisi status yang dihasilkan pada setiap operasi yang dilakukan, ketika suatu instruksi dieksekusi. SREG merupakan bagian dari inti CPU mikrokontroler.

(13)

Gambar 2.5 Status Register ATMega 8535

Port I/O pada mikrokontroller ATmega8535 dapat difungsikan sebagai input dan juga sebagai output dengan keluaran high atau low.Untuk mengatur fungsi portI/O sebagai input ataupun output, perlu dilakukan setting pada DDR dan port. Logika port I/O dapat diubah-ubah dalam program secara byte atau hanya bit tertentu. Mengubah sebuah keluaran bit I/O dapat dilakukan menggunakan perintah cbi (clear bit I/O)untuk menghasilkan output low atau perintah sbi (set bit I/O) untuk menghasilkan output high. Pengubahan secara byte dilakukan dengan perintah in atau out yang menggunakan register bantu. I/O merupakan bagian yang paling menarik dan penting untuk diamati karena I/O merupakan bagian yang bersangkutan dengan komunikasi mikrokontroller dengan dunia luar. Selain port I/O, bagian ini juga menyediakan informasi mengenai berbagai peripheral mikrokontroller yang lain, seperti ADC, EEPROM, UART, dan Timer. Komponen-komponen yang tercakup dalam workspace I/O meliputi berbagai register berikut :

1. AD_CONVERTER; register: ADMUX, ADCSR, ADCH, ADCL 2. ANALOG_COMPARATOR; register: ACSR

3. CPU; register: SREG, SPH, SPL, MCUCR, MCUCSR, OSCCAL, SFIOR, SPMCR.

4. EEPROM; register: EEARH, EEARL, EEDR, EECR

5. External_Interrupt; register: GICR, GIFR, MCUCR, MCUCSR 6. PORTA; register: PORTA, DDRA, dan PINA

7. PORTB; register: PORTB, DDRB, dan PINB 8. PORTC; register: PORTC, DDRC, dan PINC 9. PORTD; register: PORTD,DDRD, dan PIND 10. SPI; register: SPDR, SPSR, SPCR

(14)

12. TIMER _COUNTER_1; register: TIMSK, TIFR, TCCR1A, TCCR1B, TCNT1H, TCNT1L, OCR1AH, OCR1AL, OCR1BL, ICR1H, 1CR1L 13. TIMER_COUNTER_2; register: TIMSK, TIFR, TCRR2, TCNT2, OCR2, ASSR, SFIOR

14. TWI; register: TWBR, TWCR, TWSR, TWDR, TWAR

15. USART; register: UDR, UCSRA, UCSRB, UCSRC, UBRRH, UBRRL 16. WATCDOG; register: WDTCR

Adapun komponen-komponen yang dapat diamati melalui I/O pada workspace sebagai berikut : 1. Isi register - R0 sampai dengan R15 - R16 sampai dengan R13 2. Processor - Stack pointer - Program counter - Cycle pointer - X_register - Y_register - Z_register - Frequency - Stop Watch 3. I/O AVR

Adapun Instruksi I/O adalah sebagai berikut :

1. in; membaca data I/O Port atau internal peripheral register {Timers, UART, ke dalam register}

2. Out; menulis data sebuah register ke I/O Port atau internal peripheral register. 3. Idi (load immediate); untuk menulis konstanta ke register sebelum konstanta itu dituliskan ke I/O port.

4. Sbi (set bit in I/O); untuk membuat logika high satu bit I/O register. 5. Cbi ( clear bit in I/O); untuk membuat logika low satu bit I/O register.

(15)

6. Sbic (skip if bit in I/O is cleared); untuk mengecek apakah bit I/O register clear.Jika ya, skip satu perintah dibawahnya.

7. Sbis (skip if bit in I/O is set); untuk mengecek apakah bit I/O register set. Jika ya, skip satu perintah dibawahnya. Data yang dipakai dalam mikrokontroller ATmega8535 dipresentasikan dalam sistem bilangan biner, desimal, dan bilangan heksadesimal. Data yang terdapat di mikrokontroller dapat diolah dengan berbagai operasi aritmatik (penjumlahan, pengurangan, dan perkalian) maupun operasi nalar (AND, OR, dan EOR).

AVR ATmega8535 memiliki tiga buah timer, yaitu: 1. Timer/counter 0 (8 bit)

2. Timer/ counter 1 (16 bit) 3. Timer/counter 2 (8 bit)

Karena ATmega8535 memiliki 8 saluran ADC maka untuk keperluan konversi sinyal analog menjadi data digital yang berasal dari sensor dapat langsung dilakukan prosesor utama. Beberapa karakteristik ADC internal ATmega8535 adalah

1. Mudah dalam pengoperasian. 2. Resolusi 10 bit.

3. Memiliki 8 masukan analog. 4. Konversi pada saat CPU sleep. 5. Interrupt waktu konversi selesai.

2.3 Bahasa BASIC Menggunakan BASCOM-AVR

BASCOM-AVR adalah program BASIC Compiler berbasis Windows untuk mikrokontroler keluarga AVR seperti ATmega, dan yang lainnya. BASCOM-AVR merupakan program dengan bahasa tingkat tinggi BASIC yang dikembangkan dan dikeluarkan oleh MCS Elektronika. Penggunaan BASCOM-AVR sudah sangat luas di kalangan instrumentasi khususnya pada bahasa pemrograman yang memepermudah para pengguna.

(16)

2.3.1 Karakteristik Dalam BASCOM

Dalam progrm BASCOM, karakter dasarnya terdiri atas karakter alphabel (A-Z dan a-z), karakter numeric (0-9), dan karakter spesial (lihat tabel dibawah ini).

Tabel 2.3 Karakter Spesial

karakter Nama

Blank „ Apostrophe

* Asterisk (symbol perkalian) + Plus sign

, Comma

- Minus sign

. Period (decimal po int)

/

Slash (division symbol) will be handled as\

: Colon

“ Double quotation mark ; Semicolon

< Less than

= Equal sign (assignment symbol or relational operator) > Greater than

\ Backspace (integer or word division symbol)

2.3.2 Tipe Data

Setiap variabel dalam BASCOM memiliki tipe data yang menunjukkan daya tampungannya. Hal ini berhubungan denga penggunaan memori

(17)

Tabel 2.4 Tipe data BASCOM

2.3.3 Variabel

Variabel dalam sebuah pemrograman berfungsi sebagai tempat penyimpanan atau penampungan data sementara, misalnya menampung hasil perhitungan, menampung data hasil pembacaan register, dan lainnya. Variabel merupakan pointer yang menunjukkan pada alamat memori fisik dan mikrokontroler. Dalam BASCOM, ada beberapa aturan dalam penamaan sebuah variabel:

a. Nama variabel maksimum terdiri atas 32 karakter. b. Karakter bisa berupa angka atau huruf.

c. Nama variabel harus dimula dengan huruf. d. Variabel tidak boleh menggunkan kata

e. kata yang digunakan oleh BASCOM sebagai perintah, pernyataan, internal register, dan nama operator (AND, OR, DIM, dan lain-lain)

Sebelum digunakan maka variabel harus dideklarasikan terlebih dahu. Dalam BASCOM, ada beberapa cara untuk mendeklarasikan sebuah variabel. Cara pertama adalah menggunakan pernyataan „DIM‟ diikuti nama tipe datanya. Contohnya pendeklarasian menggunkan DIM sebagai berikut:

Dim nama as byte

Tipe Data Ukuran (byte) Range

Bit 1/8 - Byte 1 0 – 255 Integer 2 -32,768 - +32,767 Word 2 0 – 65535 Long 4 -214783648 - +2147483647 Single 4 -

(18)

Dim tombol2 as word

Dim tombol3 as word

Dim tombol4 as word

2.3.4 Alias

Dengan menggunkan alias, variabel yang sama dapat diberikan nama yang lain. Tujuannya adalah mempermudah proses pemrograman. Umumnya, alias digunakan untuk mengganti nama variabel yang baku, seperti port mikrokontroler.

Dim LedBar as byte

Led1 as LedBar.0

Led2 as LedBar.1

Led3 as LedBar.2

Dalam deklarasi diatas, variabel yang sama dapat diberikan nama yang lain. Tujuannya adalah mempermudah proses pemrograman. Umumnya, alias digunakan untuk mengganti nama variabel yang baku, seperti port mikrokontroler.

Dim LedBar as byte

Led1 as LedBar.0

Led2 as LedBar.1

Led3 as LedBar.2

2.3.5 Konstanta

Dalam BASCOM, selain variabel kita mengenal pula konstanta. Konstansa merupakan variabel pula, perbedaannya dengan variabel adalah nilai yang terkandung tetap. Dengan konstanta, kode program yang kita buat akan lebih mudah dibaca dan dapat mencegah kesalahan penulisan pada program kita. Misalnya, kita akan lbih mudah menulis phi dari pada menulis 3,14159867. Sama seperti variabel, agar konstanta bisa dikenal oleh program, maka harus dideklarasikan terlebih dahulu. Berikut adalah pendeklarasikan sebuah konstanta.

Dim A As Const 5

Dim B1 As Const &B1001

Cara lain yang paling mudah:

(19)

Const Csingle = 1.1

Const Cstring = “test”

2.3.6 Array

Dengan array, kita bisa menggunakan sekumpulan variabel dengan nama dan tipe yang sama. Untuk mengakses variabel tertentu dalam array, kita harus menggunakan indeks. Indeks harus berupa angka dengan tipe data byte, integer, atau word. Artinya nilai maksimal sebuah indeks sebesar 65535. Proses pendeklarasikan sebuah array hampir sama dengan variabel, namun perbedaannya kita mengikuti jumlah elemennya. Berikut adalah contoh pemakaian array:

Dim kelas(10) as byte

Dim c as Integer

For C = 1 To 10

a(c) = c

p1 = a(c)

Next

Program diatas membuat sebuah array dengan nama „kelas‟ yang berisi 10 elelmen (1-10) dan kemudian seluruh elemennya diisikan dengan nilai c yang berurutan. Untuk pembacanya kita menggunakan indeks dimana elemen disimpan. Pada program diatas, elemen-elemen arraynya dikeluarkan ke Port 1 dari mikrokontroler.

2.3.7 Operasi-Operasi Dalam BASCOM

Pada bagian ini akan dibahas tentang cara menggabungkan, memodifikasi, membandingkan, atau mendapatkan informasi tentang sebuah pernyataan dengan menggunkan operator-operator yang tersedia di BASCOM dan bagaimana sebuah pernyataan terbentuk dan dihasilkan dari operator-operator berikut:

a. Operator Aritmatika

Operator digunakan dalam perhitungan aritmatika meliuti + (tambah), - (kurang), / (bagi), dan * (kali).

(20)

Operator berfungsi membandingkan nilai sebuah angka. Hasilnya dapat digunakan untuk membuat keputusan sesuai dengan program yang kita buat. Operator relasi meliput i:

Tabel 2.5 Tabel Operator Relas

Operator Relasi Pernyataan

= Sama dengan X = Y

<> Tidak sama dengan X <> Y

< Lebih kecil dari X < Y

> Lebih besar dari X > Y

<= Lebih kecil atau sama dengan X <= Y >= Lebih besar atau sama dengan X >= Y

c. Operator Logika

Operator logika digunakan untuk menguji sebuah kondisi atau memanipulasi bit dan operasi bolean. Dalam BASCOM, ada empat buah operator logika, yaitu AND, OR , NOT, dan XOR.

Operator logika bisa pula digunakan untuk menguji sebuah byte dengan pola bit tertentu, sebagai contoh:

Dim A As Byte A = 63 And 19 PPRINT A A = 10 or 9 PRTINT A Output 16 11 d. Operator Fungsi

(21)

2.4 Optocoupler

2.4.1 Pengertian Optocoupler

Optocoupler adalah suatu piranti yang terdiri dari 2 bagian yaitu transmitter dan receiver, yaitu antara bagian cahaya dengan bagian deteksi sumber cahaya terpisah. Biasanya optocoupler digunakan sebagai saklar elektrik, yang bekerja secara otomatis. Optocoupler atau optoisolator merupakan komponen penggandeng (coupling) antara rangkaian input dengan rangkaian output yang menggunakan media cahaya (opto) sebagai penghubung. Dengan kata lain, tidak ada bagian yang konduktif antara kedua rangkaian tersebut. Optocoupler sendiri terdiri dari 2 bagian, yaitu transmitter (pengirim) dan receiver (penerima).

1. Transmiter

Merupakan bagian yang terhubung dengan rangkaian input atau rangkaian kontrol. Pada bagian ini terdapat sebuah LED infra merah (IR LED) yang berfungsi untuk mengirimkan sinyal kepada receiver. Pada transmitter dibangun dari sebuah LED infra merah. Jika dibandingkan dengan menggunakan LED biasa, LED infra merah memiliki ketahanan yang lebih baik terhadap sinyal tampak. Cahaya yang dipancarkan oleh LED infra merah tidak terlihat oleh mata telanjang.

2. Receiver

Merupakan bagian yang terhubung dengan rangkaian output atau rangkaian beban, dan berisi komponen penerima cahaya yang dipancarkan oleh transmitter. Komponen penerima cahaya ini dapat berupa photodioda atapun phototransistor. Pada bagian receiver dibangun dengan dasar komponen phototransistor. Phototransistor merupakan suatu transistor yang peka terhadap tenaga cahaya. Suatu sumber cahaya menghasilkan energi panas, begitu pula dengan spektrum infra merah. Karena spekrum infra mempunyai efek panas yang lebih besar dari cahaya tampak, maka phototransistor lebih peka untuk menangkap radiasi dari sinar infra merah. Jika dilihat dari penggunaannya, optocoupler biasa digunakan untuk mengisolasi common rangkaian input dengan common rangkaian output. Sehingga supply tegangan untuk masing-masing rangkaian tidak saling terbebani dan juga untuk mencegah kerusakan pada rangkaian kontrol (rangkaian input).

(22)

Gambar 2.6 Bentuk fisik Sensor Optocoupler

Optocoupler merupakan gabungan dari LED infra merah dengan fototransistor yang terbungkus menjadi satu chips. Cahaya infra merah termasuk dalam gelombang elektromagnetik yang tidak tampak oleh mata telanjang. Sinar ini tidak tampak oleh mata karena mempunyai panjang gelombang berkas cahaya yang terlalu panjang bagi tanggapan mata manusia. Sinar infra merah mempunyai daerah frekuensi 1 x 1012 Hz sampai dengan 1 x 1014 GHz atau daerah frekuensi dengan panjang gelombang 1μm – 1mm. LED infra merah ini merupakan komponen elektronika yang memancarkan cahaya infra merah dengan konsumsi daya sangat kecil. Jika diberi prasikap maju, LED infra merah yang terdapat pada optocoupler akan mengeluarkan panjang gelombang sekitar 0,9 mikrometer.

Proses terjadinya pancaran cahaya pada LED infra merah dalam optocoupler adalah sebagai berikut. Saat dioda menghantarkan arus, elektron lepas dari ikatannya karena memerlukan tenaga dari catu daya listrik. Setelah elektron lepas, banyak elektron yang bergabung dengan lubang yang ada di sekitarnya (memasuki lubang lain yang kosong). Pada saat masuk lubang yang lain, elektron melepaskan tenaga yang akan diradiasikan dalam bentuk cahaya, sehingga dioda akan menyala atau memancarkan cahaya pada saat dilewati arus. Cahaya infra merah yang terdapat pada optocoupler tidak perlu lensa untuk memfokuskan cahaya karena dalam satu chip mempunyai jarak yang dekat dengan penerimanya. Pada optocoupler yang bertugas sebagai penerima cahaya infra merah adalah

(23)

sebagai detektor cahaya infra merah. Detektor cahaya ini mengubah efek cahaya menjadi sinyal listrik, oleh sebab itu fototransistor termasuk dalam golongan detektor optik.

Fototransistor memiliki sambungan kolektor–basis yang besar dengan cahaya infra merah, karena cahaya ini dapat membangkitkan pasangan lubang elektron. Dengan diberi prasikap maju, cahaya yang masuk akan menimbulkan arus pada kolektor. Fototransistor memiliki bahan utama yaitu germanium atau silikon yang sama dengan bahan pembuat transistor. Tipe fototransistor juga sama dengan transistor pada umumnya yaitu PNP dan NPN. Perbedaan transistor dengan fototransistor hanya terletak pada rumahnya yang memungkinkan cahaya infra merah mengaktifkan daerah basis, sedangkan transistor biasa ditempatkan pada rumah logam yang tertutup. Cahaya infra merah termasuk dalam gelombang elektromagnetik yang tidak tampak oleh mata telanjang. Sinar ini tidak tampak oleh mata karena mempunyai panjang gelombang berkas cahaya yang terlalu panjang bagi tanggapan mata manusia. Simbol optocoupler seperti terlihat pada Gambar 2.6.

Gambar 2.7 Simbol Optocoupler

2.4.2 Prinsip Kerja dari Rangkaian Optocoupler

Prinsip kerja dari rangkaian Optocoupler adalah sebagai berikut :

1. Jika antara phototransistor dan LED terhalang maka phototransistor tersebut akan off sehingga output dari kolektor akan berlogika high.

(24)

2. Sebaliknya jika antara phototransistor dan LED tidak terhalang maka phototransistor dan LED tidak terhalang maka phototransistor tersebut akan on sehingga output-nya akan berlogika low.

2.5 Relay

Dalam dunia elektronika, relay dikenal sebagai komponen yang dapat mengimplementasikan logika switching. Sebelum tahun 70an, relay merupakan “otak” dari rangkaian pengendali. Baru 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 elektro-mekanis ini didefinisikan sebagai berikut : • Alat yang menggunakan gaya elektromagnetik untuk menutup (atau membuka) kontak saklar.

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

Secara umum, relay digunakan untuk memenuhi fungsi – fungsi berikut : - Remote control : dapat menyalakan atau mematikan alat dari jarak jauh - Penguatan daya : menguatkan arus atau tegangan

- Pengatur logika kontrol suatu sistem

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 : Kontak Normally Open akan membuka ketika tidak ada arus mengalir pada kumparan, tetapi tertutup secepatnya setelah kumparan menghantarkan arus atau diberi tenaga. Kontak normally Close akan tertutup apabila kumparan tidak diberi tenaga dan membuka ketika kumparan diberi daya. Masing-masing kontak biasanya digambarkan sebagai kontak yang tampak dengan kumparan tidak diberi tanaga atau daya.

(25)

Gambar

Gambar 2.1 Timing diagram pengoperasian sensor ultrasonik Us-016  Jenis  sensor  yang  digunakan  pada  penelitian  ini  adalah  sensor  Ultrasonik  tipe Us-016
Gambar 2.2 Sensor Ultrasonik Us-016 (a) tampak depan (b) tampak  belakang
Gambar 2.3 Diagram Blok Fungsional ATmega8535
Tabel 2.1. Konfigurasi Pin Port B ATMega 8535
+7

Referensi

Dokumen terkait

Tujuan penelitian ini adalah untuk mengembangkan sistem pakar identifikasi awal penyakit kedelai dengan mengadopsi metode Expert System Development Life Cycle (ESDLC) untuk

Tujuan penelitian untuk melihat bagaimana indikator komposit lndeks pembangunan Manusia dapat berpengaruh terhadap penurunan jumlah penduduk miskin, dengan variabel independen

- Apakah Anda masih tidak percaya dan yakin dengan kebenaran Allah, Rasul- Nya dan Islam, yang telah mampu melahirkan seorang entrepreneur muslim sejati ini? Apakah mungkin akan

Kemudian apabila sudah cocok maka barang rampasan atau barang sitaan tersebut akan masuk ke unit peneliti guna untuk diteliti barangnya dan petugas yang bertugas

Lembaga Bursa Kerja Khusus (BKK) di SMK negeri 2 Purworejo ini dipimpin oleh seorang Ketua yang ditunjuk dan ditetapkan oleh Kepala Sekolah. Langkah-langkah

Dalam suatu portofolio terdapat paling sedikit tujuh elemen pokok, yaitu (1) adanya tujuan yang jelas, dan dapat mencakup lebih dari satu ranah, (2) kualitas hasil (outcome),

Berdasarkan hasil perhitungan analisis tipologi klassen perkabupaten/kota di Propinsi Jawa Tengah pada tahun 2013-2015, menyatakan kabupaten/kota yang medominasi pada