BAB II LANDASAN TEORI Pada bab II ini akan dijelaskan mengenai teori-teori yang mendukung dalam perancangan proyek akhir ini. Materi yang akan dibahas diantaranya adalah sistem kendali on-off, photodioda, LED infra merah, sensor level zat cair, mikrokontroler atmega8535, power supply, solenoid valve, pompa, relay, LCD, dan pemograman menggunakan BASCOM AVR. 2.1. Sistem Kendali ON-OFF Kontrol otomatik telah memainkan peranan penting dalam sains dan rekayasa modern. Disamping untuk kepentingan khusus seperti spacevehicle system, missile-guidance system,robotic system, kontrol otomatik telah menjadi bagian integral yang penting dalam manufakturmodern dan industri proses. Pada sistem kontrol ON-OFF, elemen pembangkit hanya memiliki dua posisi tertentu yaitu ON dan OFF. Kontrol ON-OFF memiliki karakteristik sinyal keluaran dari kontroler tetap pada salah satu nilai maksimum atau minimum tergantung pada sinyal pembangkit kesalahan positif atau negatif. Sistem kendali ON-OFF hanya cocok digunakan pada sistem yang mentolerir ketelitian. Sistem kendali ini banyak digunakan karena sistem yang digunkan tidak memerlukan analisa yang sulit. Selain itu realisasinya juga lebih mudah dan murah. Pada sistem kontrol dua posisi, elemen aktuasi hanya mempunyai dua posisi yang tetap. Kontrol on-off ini banyak digunakan di industri karena murah dan sederhana. Sinyal kontrol akan tetap pada satu keadaan dan akan berubah ke keadaan lainnya bergantung pada nilai error positif atau negatif. Kontroler dua posisi pada umumnya dijumpai pada komponen elektrik (relay) dan komponen pneumatik (katup dan silinder). 2.2. Rangkaian Sensor Photodioda dan Led Infra Merah Rangkaian sensor infra merah menggunakan komponen Photodioda dan LED infra merah yang dihubungkan secara optik. Photodioda akan aktif Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 5 apabila terkena cahaya dari led infra merah. Antara Led dan Photodioda dipisahkan oleh jarak. Jauh dekatnya jarak memengaruhi besar intensitas cahaya yang diterima oleh Photodioda. Apabila antara Led infra merah dan Photodioda tidak terhalang oleh benda, maka Photodioda akan aktif. 2.3. Photodioda Photodioda adalah dioda yang bekerja berdasarkan intensitas cahaya, jika photodioda terkena cahaya maka photodioda bekerja seperti dioda pada umumnya, tetapi jika tidak mendapat cahaya maka photodioda akan berperan seperti resistor dengan nilai tahanan yang besar sehingga arus listrik tidak dapat mengalir. Konstruksi dari photodioda dapat dilihat pada gambar 2.1. Gambar 2.1 Photodioda Photodioda merupakan sensor cahaya semikonduktor yang dapat mengubah besaran cahaya menjadi besaran listrik. Photodioda merupakan sebuah dioda dengan sambungan p-n yang dipengaruhi cahaya dalam kerjanya. Cahaya yang dapat dideteksi oleh photodioda ini mulai dari cahaya infra merah, cahaya tampak, ultra ungu sampai dengan sinar-X. Photodioda terbuat dari semikonduktor p-n junction, cahaya yang diserap oleh photodioda akan mengakibatkan terjadinya pergeseran foton yang akan menghasilkan pasangan electron-hole dikedua sisi dari sambungan. Ketika elektron-elektron yang dihasilkan itu masuk ke pita konduksi maka elektron-elektron itu akan mengalir ke arah positif sumber tegangan sedangkan hole yang dihasilkan mengalir ke arah negatif sumber Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 6 tegangan sehingga arus akan mengalir di dalam rangkaian. Besarnya pasangan elektron ataupun hole yang dihasilkan tergantung dari besarnya intensitas cahaya yang diserap oleh photodioda. Photodioda dibuat dari semikonduktor dengan bahan yang populer adalah silicon (Si) atau galium arsenida (GaAs), dan yang lain meliputi InSb, InAs, PbSe. Material ini menyerap cahaya dengan karakteristik panjang gelombang mencakup: 2500 Å - 11000 Å untuk silicon, 8000 Å – 20,000 Å untuk GaAs. Ketika sebuah photon (satu satuan energi dalam cahaya) dari sumber cahaya diserap, hal tersebut membangkitkan suatu elektron dan menghasilkan sepasang pembawa muatan tunggal, sebuah elektron dan sebuah hole, di mana suatu hole adalah bagian dari kisi-kisi semikonduktor yang kehilangan elektron. Arah arus yang melalui sebuah semikonduktor adalah kebalikan dengan gerak muatan pembawa. cara tersebut didalam sebuah photodioda digunakan untuk mengumpulkan photon dan menyebabkan pembawa muatan (seperti arus atau tegangan) mengalir/terbentuk di bagian-bagian elektroda. Photodioda digunakan sebagai penangkap gelombang cahaya yang dipancarkan oleh Infrared. Besarnya tegangan atau arus listrik yang dihasilkan oleh photodioda tergantung besar kecilnya radiasi yang dipancarkan oleh infrared. 2.4. LED infra merah 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 Phototransistor dan Photodioda. Prinsip kerja dari infra red yaitu pada saat LED infra merah dibias forward, elektron dari pita konduksi melewati junction dan jauh ke dalam hole pita valensi, sehingga elektron-elektron tersebut memancarkan energi. Pada dioda penyearah biasa, energi ini dikeluarkan sebagai energi panas. Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 7 Tetapi pada LED, energi ini dipancarkan sebagai cahaya. Sedangkan pada LED infra merah memancarkan cahaya yang tidak kelihatan, hal ini dapat digunakan dalam sistem tanda bahaya pencuri, penyampaian informasi secara rahasia dan ruang lingkup lain yang membutuhkan pancaran yang tidak kelihatan. Bentuk dari LED infra merah dapat dilihat pada gambar 2.2. Gambar 2.2 LED infra merah Adapun karakteristik dari LED Infra merah diantaranya yaitu: 1. Bisa dipakai dalam waktu yang sangat lama. 2. Membutuhkan daya yang kecil. 3. Pemancaran panjang gelombangnya menyempit. 4. Tidak mudah panas. 5. Bisa digunakan dalam jarak yang lebar. 6. Harga murah. 2.5. Sensor Level Zat Cair Sensor level zat cair merupakan jenis khusus dari sensor perpindahan. Dalam hal ini sensor yang dimaksud adalah pelampung. Pengukuran dengan sensor ini biasanya dilakukan pada sebuah tangki atau bak air. Teknik ini biasanya menggunakan sensor sebuah pelampung yang berubah mengikuti perubahan level zat cair seperti ditunjukkan pada Gambar 2.3. Perubahan ini dihubungkan dengan sistem sensor sekunder seperti potensiometer atau LVDT. Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 8 Gambar 2.3 Pengukuran Level Zat Cair Menggunakan Pelampung Metode potensiometer ini menggunakan potensiometer sebagai sensor perpindahan yang melakukan konversi dari perubahan tekanan dimana p > 1 atm ke perubahan perpindahan. 2.6. Mikrokontroler ATMega 8535 Mikrokontroler ATMega 8535 merupakan salah satu jenis mikrokontroler dari keluarga AVR. ATMega 8535 mempunyai fitur yang cukup lengkap, mulai dari kapasitas memori program dan memori data yang cukup besar, interupsi. timer/counter, PWM, USART, TWI, analog komparator, EEPROM internal dan jugaADC internal. Dengan fitur yang cukup lengkap ini memungkinkan kita untuk menggunakan ATMega 8535 karena lebih mudah dan efisien. Bahkan kita dapat merancang suatu system untuk kepentingan komersil mulai dari system yang sederhana sampai dengan sistem yang relative kompleks hanya dengan menggunkan sebuah IC saja. Diagram blok dari ATMega 8535 dapat dilihat pada gambar 2.4. Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 9 Gambar 2.4 Diagram Blok ATmega8535 Alasan penggunaan mikrokontroler jenis ini adalah karena Mikrokontroler tipe AVR ATmega8535 memiliki beberapa kelebihan bila dibandingkan dengan mikrokontroler lain, diantaranya : a) Mempunyai 8 channel ADC yang terintegrasi dengan resolusi 10 bit dengan metode pengonversian menggunakan Succesive Aproximation. b) Dilengkapi dengan programmable serial USART . c) Portal komunikasi serial (USART) dengan kecepatan maksimal 2,5 Mbps. d) Memiliki perangkat antarmuka serial Two-Wire dengan orientasi byte e) Memiliki timer internal yang dapat difungsikan sebagai Real-Time Timer. f) Memiliki fungsi watchdog timer yang dapat mencegah mikrokontroler dari kesalahan operasi. Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 10 g) Memiliki 6 fungsi untuk menghemat energi yang digunakan, yaitu : idle, ADC noise reduction, power save, power down, standby, dan extended standby mode. h) Memiliki timer yang dapat difungsikan sebagai PWM (Pulse Width Modulation). Pengoperasian memerlukan tegangan rendah, yaitu : 4,5 V s.d. 5,5 V j) Pemrograman dapat dilakukan dengan mudah. Pemrograman dapat dilakukan dengan cara in system programming, artinya mikrokontroler i) ini dapat diganti programnya pada saat run time. k) Memiliki 32 buah register untuk user dan 64 buah register yang digunakan sebagai pengontrol fitur-fitur yang terintegrasi dalam mikrokontroler ini. Atmega 8535 memiliki pin sebanyak 40 pin. Gambar 2.5 merupakan konfigurasi pin dari mikrokontroller ATMega 8535. Gambar 2.5 konfigurasi pin mikrokontroler ATmega8535 Konfigurasi Pin ATmega8535 : VCC merupakan Pin yang berfungsi sebagai pin masukan catu daya. GND merupakan Pin Ground. Port A (PA0...PA7) merupakan pin I/O dan pin masukan ADC. Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 11 fungsi khusus yaitu Timer/Counter, komparator Analog dan SPI. Port D (PD0...PD7) merupakan port I/O dan pin fungsi khusus yaitu komparator analog dan interrupt eksternal serta komunikasi serial. Port C (PC0...PC7) merupakan port I/O dan pin yang mempunyai fungsi khusus, yaitu komparator analog dan Timer Oscillator. Port B (PB0...PB7) merupakan pin I/O dan pin yang mempunyai RESET merupakan pin yang digunakan untuk mereset mikrokontroler. XTAL1 dan XTAL2 merupakan pin masukan clock eksternal. AVCC merupakan pin masukan untuk tegangan ADC. AREF merupakan pin masukan tegangan referensi untuk ADC. [4] Tabel 2.1 merupakan konfigurasi port yang digunakan dalam proyek akhir ini . Tabel 2.1 Konfigurasi Port No Port Fungsi 1 Port A 1 Sensor level air 2 Pin B 0 Sensor IR LED pendorong 3 Pin B 3 Sensor IR LED pengisi 4 Port B 7 Solenoid Valve 5 Port D 2 Motor pendorong 1 6 Port D 3 Motor pendorong 2 7 Port C 2 Pin RS pada LCD 8 Port C 3 Pin E pada LCD 9 Port C 4 Pin DB4 pada LCD 10 Port C 5 Pin DB5 pada LCD 11 Port C 6 Pin DB6 pada LCD 12 Port C 7 Pin DB7 pada LCD Untuk penjelasan lebih lengkap tentang mikrokontroler Atmega8535 ini dapat dilihat pada lampiran. Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 12 2.7. Solenoid Valve Dalam Proyek akhir ini, khusunya pada bagian modul pengisi kemasan mengunakan sebuah solenoid valve yang digunakan sebagai pengendali keluarnya air minuman dari modul pengisi kemasan kedalam gelas/kemasan. Model dari Solenoid Valve dapat dilihat pada gambar 2.6. Gambar 2.6 Solenoid Valve Katup Listrik / Solenoid valve atau sv adalah katup yang digerakan oleh energi listrik, mempunyai koil sebagai penggeraknya yang berfungsi untuk menggerakan piston yang dapat digerakan oleh arus AC maupun DC. Solenoid valve adalah salah satu alat atau komponen kontrol yang salah satu kegunaannya yaitu untuk menggerakan tabung cylinder, sv adalah katup listrik yang mempunyai koil sebagai penggeraknya yang mana ketika koil mendapat supply tegangan maka koil tersebut akan berubah menjadi medan magnet sehingga menggerakan piston pada bagian dalamnya ketika piston berpindah posisi maka pada lubang keluaran A atau B dari sv akan keluar udara yang berasal dari P atau supply, pada umumnya sv mempunyai tegangan kerja 100/200 VAC namun ada juga yang mempunyai tegangan kerja DC. Gambar 2.7 merupakan bagian-bagian dalam suatu solenoid valve. Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 13 Gambar 2.7 Bagian-Bagian Dalam Selenoid Valve 1. Valve Body 4. Coil / Solenoid 7. Plunger 2. Inlet Port 5. Coil Windings 8. Spring 3. Outlet Port 6. Lead Wires 9. Orifice Dilapangan penggunaan sv mempunyai banyak variasi dalam hal kegunaan atau kebutuhan dari mesin tersebut, penggunaan sv yaitu : Digunakan untuk menggerakan tabung cylinder Digunakan untuk menggerakan piston valve. Digunakan untuk menggerakan blow zet valve. Dan masih banyak lagi. 2.8. Pompa Pompa adalah suatu alat yang digunakan untuk memindahkan suatu cairan dari suatu tempat ke tempat lain dengan cara menaikkan tekanan cairan tersebut. Kenaikan tekanan cairan tersebut digunakan untuk mengatasi hambatan-hambatan pengaliran. Hambatan-hambatan pengaliran itu dapat berupa perbedaan tekanan, perbedaan ketinggian atau hambatan gesek. Pada proyek akhir ini, pompa digunakan agar tekanan air tetap sama ketika debit air berubah. Sehingga volume air yang dikeluarkan solenoid valve ke dalam kemasan volumenya sama, baik itu dalam keadaan tangki penuh ataupun tidak. pompa yang digunakan adalah pompa akuarium yang membutuhkan sumber tegangan 220 VAC. Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 14 2.9. Relay Relay adalah suatu peralatan elektronik yang berfungsi untuk memutushubungkan suatu rangkaian elektronik yang satu dengan yang lainnya. Pada dasarnya relay adalah saklar elektromagnetik yang akan bekerja apabila arus mengalir melalui kumparan, lalu inti besi akan menjadi magnet dan akan menarik kontak-kontak relay. Kontak-kontak dapat ditarik apabila garis magnet dapat mengalahkan gaya pegas yang melawannya. Gambar 2.8 merupakan konstruksi dari macam-macam relay. Gambar 2.8 Macam-macam Relay Besarnya gaya magnet bergantung dari medan di celah udara pada inti magnet, jumlah lilitan kumparan, dan kuat arus yang mengalir. Untuk memperbesar kuat medan magnet dibentuk sirkuit magnet. Kontak-kontak atau kutub-kutub dari relay umumnya memiliki tiga dasar pemakaian yaitu : 1. Bila kumparan dialiri arus listrik maka kontaknya akan menutup dan disebut sebagai kontak Normally Open (NO). 2. Bila kumparan dialiri arus listrik maka kontaknya akan membuka dan disebut dengan kontak Normally Close (NC). 3. Tukar-sambung (Change Over/CO), jenis relay ini mempunyai kontak tengah yang normalnya tertutup tetapi akan membuat kontak dengan yang lain bila relay dialiri listrik. Gambar 2.9 dan gambar 2.10 memperlihatkan beberapa bentuk kontak dari sebuah relay : Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 15 Gambar 2.9 Jenis Konstruksi Relay Gambar 2.10 Relay SPDT (a) Simbol relay SPDT (b) Konstruksi relay tanpa tegangan (c) Konstruksi relay dengan tegangan Adapun beberapa parameter-parameter relay yang harus diperhatikan, antara lain : a. Impedansi kumparan, jumlah impedansi ditentukan oleh tebal kawat dan jumlah lilitan. Pada umumnya nilai impedansi pada kumparan sebesar 1– 50 KΩ untuk memperoleh daya hantar yang baik. b. Besarnya kuat arus yang digunakan untuk menggerakkan relay, biasanya sudah disediakan oleh pabrik. Relay yang mempunyai tahanan kecil memerlukan arus besar, sedangkan relay yang mempunyai tahanan besar hanya memerlukan arus yang kecil. c. Tegangan yang diperlukan untuk menggerakkan relay tergantung jenisnya. d. Daya yang diperlukan untuk mengoperasikan relay besarnya sama dengan nilai tegangan dikalikan arus. Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 16 2.10. Motor DC Motor arus searah (motor DC) terdiri dari bagian tetap dan bagian yang berputar. Bagian tetap dapat dibentuk dari magnet tetap (Permanent Magnet DC Motor) atau dibentuk dari konstruksi electromagnet (Shunt Wound DC Motor). Bagian yang berputar disebut armature field yang akan berputar jika terjadi perubahan flux electromagnet. Konstruksi motor DC ditunjukkan pada gambar 2.11 . Gambar 2.11 Motor DC Kelebihan motor DC adalah mudah dikendalikan baik kecepatan maupun torsinya sehingga rancangan pengendalinya bisa lebih sederhana dan lebih murah. Sedangkan kelemahan motor DC adalah reliabilitasnya rendah, dan membutuhkan perawatan yang baik. 2.11. LCD Liquid Crystal Display (LCD) merupakan salah satu alat untuk penampil yang memiliki berbagai macam ukuran dari 1 hingga 4 baris, 16 hingga 40 karakter per baris dan 5 x 7 atau 5 x 10 dot display fonts. Meskipun LCD memiliki berbagai macam ukuran tetapi penggunaanya standar. LCD terdiri 16 pin yang berisikan jalur data, jalur kontrol, power dan Back Light. LCD ini memiliki 2 baris dimana masing-masing baris memuat 16 karakter. Selain itu, LCD ini dilengkapi dengan backlight sehingga walaupun dalam keadaan gelap, tampilan pada LCD akan tetap dapat terlihat. Dalam Proyek akhir ini LCD digunakan sebagai penampil keseluruhan proses yang sedang terjadi dalam sistem secara keseluruhan. Pada alat ini digunakan sarana penampil berupa LCD karena cenderung Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 17 lebih mudah dalam aplikasinya dan dapat menampilkan karakter baik berupa huruf maupun angka. LCD juga memiliki ukuran yang bermacammacam, seperti LCD dengan jumlah 1-4 baris, 16-40 karakter per baris, dan sebagainya. Konstruksi LCD dapat dilihat pada gambar 2.12. Gambar2.12 LCD 2x16 LCD yang akan digunakan adalah LCD 2x16. Pada umumnya LCD ini memiliki 16 pin yang terdiri dari delapan pin jalur data (D0-D7), tiga pin jalur kontrol (RS, E, dan RW), pin sumber tegangan dan ground, sebuah pin driver LCD dan dua pin backlight. Tabel 2.2 menunjukkan konfigurasi dari pin-pin LCD tersebut. Tabel 2.2 Konfigurasi Pin LCD Pin 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Simbol GND Vcc VO RS R/W E D0 D1 D2 D3 D4 D5 D6 D7 A+ A- Fungsi Data bus line 7 (MSB) Power supply (GND) Data bus line 6 Power supply (+5V) Pengaturan kontras LCD Register Select, H = Baca, L = instruksi Read/Write, H = Baca, L = tulis Enable Signal Data Bit 0 Data Bit 1 Data Bit 2 Data Bit 3 Data Bit 4 Data Bit 5 Data Bit 6 Data Bit 7 Led Backlight (+) Led Backlight (-) Untuk menampilkan satu karakter, posisi data pada tampilan dikirim ke register instruksi dan diikuti karakter ke register data. Modul LCD akan Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 18 menghubungkan karakter dengan pola karakter pada CG ROM dan mengirimkan pola karakter pada display sesuai posisinya. Posisi dari tampilan dapat dikurangi atau ditambah secara otomatis tergantung dari inisialisasi yang dilakukan sebelum mengisi karakter. Sehingga dapat mengirimkan karakter yang berurutan (string yang lebih dari satu karakter) dan akan ditampilkan satu string yang kontinyu. Langkah awal sebelum menampilkan karakter pada LCD adalah melakukan inisialisasi untuk LCD terlebih dahulu. Inisialisasi LCD adalah hal yang terpenting karena apabila inisialisasi gagal maka tampilan pada LCD atau yang akan ditampilkan pada LCD adalah karakter-karakter aneh. Tahap inisialisasi berisi konfigurasi-konfigurasi untuk LCD yang akan digunakan. Adapun konfigurasi yang harus diatur pada tahap inisialisasi ini adalah sebagai berikut : Banyaknya bit data interface dengan MPU yang digunakan (8-bit atau 4-bit) Jumlah baris pada LCD yang digunakan Pergeseran kursor Pergeseran tampilan Kursor atau tanpa kursor, berkedip atau tidak berkedip. 2.12. Bascom AVR Salah satu software aplikasi yang dapat digunakan untuk pemrograman mikrokontroller keluarga AVR adalah BASCOM (Basic Compiler) AVR. BASCOM AVR ini menggunakan high level language yang merupakan pengembangan dari bahasa Basic. Compiler ini berfungsi untuk mengubah format program kedalam format hexsadesimal agar program yang telah dibuat dapat dimengerti oleh mikrokontroler. BASCOM (Basic Compiler) AVR merupakan suatu perangkat lunak untuk memprogram hardware yang diimplementasikan pada mikrokontroler jenis AVR. Kumpulan karakter pada BASCOM terdiri dari karakter alphabet, karakter angka, dan karakter khusus. Karakter alphabet dalam BASCOM terdiri dari huruf kapital (A-Z) dan huruf kecil (a-z). Sedangkan Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 19 karakter angka pada BASCOM adalah 0-9. Huruf A-H dapat digunakan sebagai bagian angka heksadesimal. Gambar 2.13 merupakan main windows pada BASCOM AVR. Gambar 2.13 Main windows pada BASCOM AVR 1. Baris Program BASCOM BASCOM memiliki baris program dengan syntax sebagai berikut : [[line identifier]] [[statement]] [[:statement]] ... [[comment]] 2. Penggunaan Line Identifiers BASCOM mendukung satutipe line identifier atau pengenal baris yaitu label baris alfa numerik. Sebuah label baris alfabet dapat terdiri dari 1-32 huruf dan angka yang diawali dengan sebuah huruf kemudian diakhiri dengan sebuah titik dua (:). Kata kunci BASCOM tidak diperbolehkan untuk dijadikan sebagai label . Label dapat dimulai di kolom berapapun, selama karakter pertama bukan kosong atau spasi pada baris. Spasi tidak diperbolehkan diantara label titik dua (:) atau setelahnya. Sebuah baris hanya boleh memiliki sebuah label. Ketika ada label pada suatu baris maka tidak ada pengenal baris lainnya yang dapat digunakan pada baris yang sama. Penggunaan huruf kecil dengan huruf kapital pada BASCOM memberikan arti yang sama. Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 20 Sebuah pernyataan BASCOM bisa “dieksekusi” atau “tidak dieksekusi”. Sebuah pernyataan dieksekusi melanjutkan aliran sebuah logika program dengan memberitahu program apa yang akan dilakukan selanjutnya. Sedangkan program tidak dieksekusi melakukan tugas seperti mengalokasikan penyimpanan untuk variabel, deklarasi, dan menentukan tipe variabel. Contoh dari pernyataan ini adalah “DIM” dan “REM”. Sebuah komentar adalah pernyataan tidak dieksekusi yang digunakan untuk penjelasan program atau lainnya. Komentar dinyatakan dengan pernyataan REM atau tanda petik tunggal ('). Lebih dari satu pernyataan dapat ditempatkan pada satu baris, tetapi dengan menggunakan tanda pemisah (:). 3. Tipe Data Variabel dalam BASCOM memiliki sebuah tipe data yang menentukan apa yang dapat disimpan dalam variabel. Berikut ini adalah tipe data yang dapat digunakan dalam BASCOM. Bit (1/8 byte) Sebuah bit hanya dapat berisi nilai 1 atau 0. Byte (1 byte) Byte tersimpan sebagai angka biner 8-bit tidak bertanda (dari 0 255). Integer (dua byte) Integer tersimpan sebagai angka biner bertanda 16-bit dengan range nilai dari -32.768 samapi +32.768. Word (dua byte) Word tersimpan sebagai angka biner tidak bertanda dengan range nilai dari 0 sampai 65.535. Long (empat byte) Long tersimpan sebagai angka biner bertanda 32-bit dengan nilai 2.147.483.648 samapi +2.147.482.648. Single Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 21 Single tersimpan sebagai angka biner bertanda 32-bit dengan range nilai dari 1,5 x 10-324 sampai 3,4 x 10308. Double Double tersimpan sebagai angka biner bertanda 64-bit dengan range nilai dari 5,0 x 10-324 sampai 1,7 x 10308. String (sampai 254 byte) String tersimpan sebagai byte yang diakhiri dengan sebuah byte 0. sebuah string dengan panjang 10 byte akan menempati 11 byte. 4. Variabel Sebuah variabel adalah nama yang menunjuk ada sebuah objek tertentu. Nama dari sebuah variabel pada BASCOM dapat terdiri dari 32 karakter. Karakter yang diperbolehkan hanya huruf dan angka. Karakter pertama dari sebuah variabel harus sebuah huruf. Sebuah variabel tidak boleh menggunakan kata yang sudah dipakai BASCOM (Reserved Word). Yang termasuk Reserved Word adalah semua perintah, pernyataan, nama fungsi, register internal, dan nama operator. Sebuah variabel angka hanya dapat diisi dengan nilai angka (integer, byte, long, single, atau bit). Angka heksadesimal atau biner dapat dimasukkan dengan menggunakan awalan &H atau &B. Sebelum memasukan sebuah variabel, compiler harus diberitahu dahulu dengan menggunakan perintah DIM. Contoh : as DIM A as bit, DIM B as Integer, DIM C as Byte, DIM S string*10, String membutuhkan parameter tambahan untuk menentukan panjang karakternya. 5. Ekspresi dan Operator Sebuah ekspresi bisa sebuah konstanta, variabel atau sebuah nilai tunggal yang didapat dari penggabungan konstanta, variabel, dan ekspresi lainnya dengan operator. Operator melakukan operasi matematika atau logika pada nilai. BASCOM membagi ke dalam 4 kategori, yaitu : Aritmatika, Relasi, Logika, dan Fungsional. Otomatisasi Pengisian Minuman Pada Kemasan Berbasis Mikrokontroler Atmega 8535 22