BAB II LANDASAN TEORI Bab ini membahas tentang teori-teori dasar yang menjadi landasan identifikasi sistem yang dibangun dalam proyek akhir. Hal-hal yang akan dibahas seperti sensor MQ2, PPI 8255, pascal, pewangi ruangan, kipas pembersih, buzzer, regulator catu daya, driver dan modul ADC 0808. 2.1 Sensor Sensor adalah peralatan yang digunakan untuk merubah suatu besaran fisik menjadi besaran listrik sehingga dapat dianalisa dengan rangkaian listrik tertentu. Sensor merupakan bagian dari transduser yang berfungsi untuk melakukan sensing atau merasakan dan menangkap adanya perubahan energi eksternal yang akan masuk ke bagian input dari transduser, sehingga perubahan kapasitas energi yang ditangkap segera dikirim kepada bagian konvertor dari transduser untuk dirubah menjadi energi listrik. Aplikasi yang akan diwujudkan pada perancangan ini adalah Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan Berbasis PC, maka penulis hanya akan membahas sensor asap rokok, mengingat aplikasi dan perancangan yang akan dibahas nanti berhubungan dengan sensor ini. Sensor yang digunakan pada perancangan ini adalah Sensor gas tipe MQ2. Sensor MQ2 adalah sensor gas yang berfungsi untuk mendeteksi gas-gas yang ada pada rumah tangga atau industri, seperti gas LPG, butane, propane, methane, alkohol, hidrogen dan asap rokok. Sensor MQ2 ini mendeteksi gas-gas yang dianggap mewakili asap rokok, seperti pada gambar 2.2 yaitu hidrogen, butane dan methanol. Jika sensor ini mendeteksi keberadaan gas-gas tersebut diudara dengan tingkat konsentrasi tertentu, maka sensor akan menganggap terdapat asap rokok diudara. Sensor MQ2 mempunyai tingkat sensitifitas yang tinggi terhadap jenis gas-gas tersebut. Ketika sensor mendeteksi keberadaan gas-gas tersebut, maka resistansi elektrik sensor akan Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 6 turun. Dengan memanfaatkan prinsip kerja dari sensor MQ2 ini, kandungan gas gas tersebut dapat diukur. Gambar 2.1 Bentuk fisik dan konfigurasi sensor MQ2 Gambar 2.2 Gas-gas dari asap rokok Pada sensor ini terdapat heater (VH) yang berfungsi sebagai pemicu sensor untuk dapat mendeteksi gas yang diharapkan setelah diberi tegangan 5 VDC. Sehingga element logam (H) akan bekerja. Apabila sensor mendeteksi gas, maka kerapatan ruang yang terdapat pada elemen logam akan membesar atau mengecil. Saat tahanan semakin kecil, maka arus akan mengalir dan output tegangan (VO) pada sensor akan besar. Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 7 2.2 Programmable Peripheral Interface (PPI 8255) Agar komputer dapat berkomunikasi dengan perangkat eksternal, perlu adanya perangkat yang berfungsi untuk mengatur jalannya transfer data dari komputer ke perangkat eksternal dan sebaliknya. PPI 8255 adalah sebuah chip LSI (Large Scale Intergrated) yang digunakan dalam sebuah mikrokomputer sebagai antarmuka diantara dua bus mikrokomputer dengan perangkat masukan atau keluaran. PPI digabungkan ke mikrokomputer lewat data bus dan menghubungkan mikrokomputer dengan dunia luar lewat 24 jalur I/O. Ke-24 jalur I/O tersebut dibagi ke dalam 3 bagian yaitu PA0-PA7, PB0-PB7 dan PC0-PC7 yang masingmasing bagian terdiri dari 8 bit yang bisa digunakan sebagai keluaran atau masukan dan bi-directional tergantung pada konfigurasi program yang diberikan ke PPI. karena itulah perangkat antarmuka ini diberi nama Programmable Peripheral Interface. PPI dapat dibagi dalam 3 unit utama yaitu unit antarmuka ke mikrokomputer, unit antarmuka ke peripheral (rangkaian luar) dan sebuah logika kontrol internal. Ada dua keuntungan utama menggunakan PPI dalam sistem mikrokomputer. Dua keuntungan tersebut adalah sebagai berikut: 1. PPI menyatukan operasi masukan atau keluaran paralel ke dalam satu IC. Dengan jumlah jalur masukan atau keluaran tidak lebih dari 24 buah, sehingga hubungan yang kompleks dan membutuhkan banyak IC bisa menggunakan satu IC. 2. Bisa diubah atau disesuaikan dengan kebutuhan antarmuka mikrokomputer. 2.2.1 Karakteristik PPI 8255 Jalur-jalur data merupakan jalur-jalur sebagai media jalannya data dari atau ke komputer dan port. Jalur-jalur port merupakan jalur-jalur untuk dihubungkan dengan perangkat eksternal. Jalur-jalur kontrol terdiri dari ̅̅̅ untuk mengaktifkan PPI 8255, ̅̅̅̅̅ aktif untuk mengambil data dari port ke jalur data (operasi input) dan ̅̅̅̅̅ aktif untuk mengirim data dari jalur data ke port (operasi output). ̅̅̅̅̅ Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 8 tidak boleh aktif bersamaan. Jalur-jalur alamat (A0 dan A1) merupakan jalur untuk memilih port dan register yang digunakan dangan posisi sebagai berikut: Tabel 2.1 Pengalamatan port A0 A1 Port yang digunakan 0 0 PA 0 1 PB 1 0 PC 1 1 CW CW (register control word) yaitu suatu register 8 bit yang ada pada IC 8255 berfungsi untuk memprogram fungsi dari port A, port B dan port C. 2.2.2 Deskripsi Fungsional 8255 Salah satu serpih perantara yang digunakan untuk pengantarmukaan paralel (paralel interfacing) adalah Programmable Peripheral Interface (PPI) 8255. Serpih ini diproduksi oleh Intel Corporation dan dikemas dalam bentuk 40 pin dual in line package dan dirancang untuk berbagai fungsi pengantarmukaan dalam mikroprosesor. Gambar 2.3 IC PPI 8255 Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 9 Tabel 2.2 Format pembacaan dan penulisan PPI 8255 A1 A0 RD WR CS 0 0 0 1 0 port A data bus 0 1 0 1 0 port B data bus 1 0 0 1 0 port C data bus 0 0 1 0 0 data bus port A 0 1 1 0 0 data bus port B 1 0 1 0 0 data bus port C 1 1 1 0 0 data bus control X X X X 1 data bus tri state 1 1 0 1 0 illegal condition X X 1 1 0 data bus Keterangan tri state Proses pembacaan dan penulisan data dari dan ke PPI 8255 dapat dilakukan dengan program. Tabel 2.2 menyatakan format operasi dasar pembacaan atau penulisan dan pengalamatan dari 3 port I/O dan register kendali PPI 8255. 2.2.3 Fungsi-Fungsi IC PPI 8255 a. Chip Select (̅̅̅) Chip Select adalah pin yang memungkinkan komunikasi antara IC 8255 dengan CPU jika diberikan sinyal aktif rendah (logika 0). b. Read (̅̅̅̅̅) Sebuah sinyal aktif rendah (logika 0) yang diberikan pada pin Read memungkinkan IC 8255 mengirim data atau informasi status ke CPU dalam bus data. Pada intinya sinyal ini mengijinkan CPU untuk membaca dari PPI 8255. Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 10 c. Write (̅̅̅̅̅) Jika sinyal aktif rendah (logika 0) diberikan pada pin Write maka akan memungkinkan CPU untuk menulis data atau kata kontrol ke dalam PPI 8255. d. A0 dan A1 Sinyal input, dalam sambungan dengan input ̅̅̅̅̅ dan ̅̅̅̅̅, mengendalikan pemilihan dari tiga register kata kontrol. Pin-pin ini tersambung secara normal untuk bit yang kurang penting (LSB) dari alamat bus (A0 dan A1). e. Reset Jika sinyal aktif rendah (logika 0) diberikan pada pin reset maka sinyal ini akan membersihkan register kontrol dan semua port (A, B dan C), yang diatur untuk mode input. f. VCC VCC adalah pin yang harus diberi catu daya 5 volt supaya IC PPI 8255 dapat berfungsi. Catu daya ini dapat dibuat sendiri, terpisah dari komputer, atau dapat juga diambilkan dari pin 1 port paralel. g. GND GND adalah pin yang harus disambungkan ke Ground (0 volt). Biasanya dapat juga dihubungkan dengan casing dari CPU komputer. h. PA0-PA7 PA0-PA7 adalah pin-pin dari port A yang terdiri dari 8 bit, yaitu bit 0 sampai bit 7. Bit-bit dari port A ini bisa dijadikan masukan, secara bersamaan menjadi satu kesatuan dan bisa juga dijadikan sebagai keluaran. Tetapi tidak dapat dipisahkan untuk masing-masing bit menjadi masukan dan keluaran secara bersamaan. i. PB0-PB7 Sama seperti port A, port PB0-PB7 adalah pin-pin dari port B yang terdiri dari 8 bit, yaitu bit 0 sampai bit 7. Bit-bit dari port B ini bisa dijadikan sebagai masukan secara bersamaan sehingga menjadi satu kesatuan dan bisa juga dijadikan sebagai keluaran. Dalam satu waktu secara bersamaan, bit-bit ini tidak dapat dipisahkan untuk menjadi masukan dan keluaran. Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 11 j. PC0-PC3 Untuk port C, terdapat perbedaan dengan port A dan port B karena port C dapat dipisahkan menjadi dua, yaitu port C bawah (PC0-PC3) dan port C atas (PC4-PC7). PC0-PC3 adalah 4 bit port C bagian bawah, yaitu bit 0 sampai bit 3 yang dapat diatur sebagai masukan dan dapat juga diatur sebagai keluaran. k. PC4-PC7 PC4-PC7 adalah 4 bit port C bagian atas, yaitu bit 4 sampai bit 7. Sifat dari PC4-PC7 ini sama dengan PC0-PC3, yaitu 4 bit port C yang dapat diatur sebagai masukan dan dapat juga diatur untuk difungsikan sebagai keluaran. Port C dapat dipisahkan menjadi dua nibel yang dapat difungsikan secara berbeda. Walaupun demikian dua nibel ini dapat juga difungsikan secara bersamaan, baik sebagai masukan semua dari bit 0 sampai bit 7 dan dapat juga dijadikan sebagai keluaran dari bit 0 sampai bit 7. 2.2.4 Logika Kontrol Internal a. Kontrol Group A dan Group B Fungsi konfigurasi dari masing-masing port ditentukan oleh program dari software. Software tersebut berisi tentang informasi control word, mode dan bit set atau reset yang kemudian dikirim oleh CPU ke 8255. Masingmasing blok kontrol menerima perintah dari sinyal read atau write dan control word dari data bus internal yang kemudian akan memfungsikan port sesuai dengan informasi yang dibawa, yaitu sebagai berikut: 1. Group A terdiri dari port A dan port C upper (C4-C7). 2. Group B terdiri dari port B dan port C lower (C0-C3). b. Port A, B dan C IC ini berisi 3 port 8 bit (A, B dan C). Semua port dapat dikonfigurasi sesuai dengan karakteristik fungsinya yang ditentukan dari programnya, yaitu sebagai berikut: 1. Port A: 8 bit data output latch/buffer dan 8 bit data input latch. 2. Port B: 8 bit data input/output latch /buffer dan 8 bit data input buffer. Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 12 3. Port C: 8 bit data output latch/buffer dan 8 bit data input buffer (input tidak latch). Port ini dapat dibagi menjadi 4 bit port tergantung kepada kontrol modenya. Masing-masing 4 bit latch dan dapat digunakan untuk output sinyal kontrol dan input sinyal status. Untuk mengoperasikan PPI maka pertama-tama harus memasukkan kontrol data kemudian memilih mode yang akan dipilih. Kontrol data atau control word ini dimasukkan dari data bus ke kontrol register, yaitu dengan alamat A0 = 1 dan A1 = 1. Kemudian logik kontrol internal akan mengatur terminal data dan kontrol informasi pada data bus internal. Mode kontrol data ditransfer ke dua buah kontrol port, yang akan mendesain kontrol kelompok A dan kelompok B. Kontrol kelompok A mengontrol mode (transfer data dari dan ke) port A dan 4 bit bawah dari port C. Kontrol data yang dituliskan dari kontrol register akan menentukan karakteristik pengoperasian PPI. Jika D7 diset ke logik 0, maka kontrol data akan digunakan oleh PPI untuk menentukan bit port C diset atau direset, jika D7 diset ke logik 1, maka kontrol data akan digunakan oleh logik kontrol internal untuk menentukan mode pengoperasian dari masing-masing port. 2.2.5 Antarmuka Peripheral Data transfer ke dan dari perangkat I/O luar melalui 3 buah port, masing-masing port terdiri dari 8 bit yaitu port A (PA0-PA7), port B (PB0-PB7), dan port C (PC0-PC7). Ada tiga mode utama yang dapat diprogramkan ke PPI, yaitu: 1. Mode 0 (Basic Input/Output) Dalam mode ini 24 jalur I/O dibagi 2 kelompok, kelompok A dan kelompok B. Kelompok A terdiri dari 8 jalur port A dan 4 jalur port C bagian atas. Kelompok B terdiri dari 8 port B dan 4 jalur port C bagian bawah. Masing-masing dapat diprogram sebagai jalur masukan atau jalur keluaran. Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 13 2. Mode 1 (Strobed Input/Output) untuk operasi satu arah masukan atau keluaran, masing-masing port mentransfer handshaking. Port A dan Port B menggunakan semua bit dari port C. data bersamaan dengan adanya strobe atau sinyal Untuk jalur-jalur port A, port B dan port C ini akan enable atau berhubungan dengan data bus mikrokomputer jika logik 0 diberikan ke Dalam mode ini PPI menggunakan 2 buah port, yaitu port A dan port B. chip select ( ̅̅̅ ) PPI sesuai dengan kondisi yang diinginkan sesuai dengan keterangan tabel 2.2. Logika pada ̅̅̅ akan menjadikan data bus pada PPI menuju impedansi yang tinggi atau dengan kata lain data bus PPI tidak berhubungan dengan data bus mikrokomputer. Pada saat PPI enable (̅̅̅̅ ), maka operasi baca dari port I/O ke data bus ( ̅̅̅̅ ) atau operasi tulis dari data bus ke port I/O ( ̅̅̅̅̅ ) bisa dilaksanakan. Operasi read dan write ini akan aktif dengan logika 0. Untuk masukan dari port ke data bus harus memenuhi ketentuan dimana ̅̅̅̅ = 0 dan ̅̅̅̅̅ atau sebaliknya yaitu untuk masukan dari data bus ke port dengan ketentuan ̅̅̅̅ = 1 dan ̅̅̅̅̅ = 0. Tabel dibawah menunjukkan bahwa pin A1 dan A0 menentukan alamat tujuan dari komunikasi data antara mikrokomputer dan PPI 8255. Tabel 2.3 Dasar Operasi PPI 8255 Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 14 3. Mode 2 (Bi-directional Bus) Dalam mode ini hanya port A yang bisa digunakan untuk jalur dua arah masukan dan keluaran dengan data yang berbeda pada operasi tulis ( ̅̅̅̅̅ ) dan operasi baca (̅̅̅̅̅ ). 2.2.6 PIN Antarmuka Komputer Ada 6 jalur kontrol pada bagian ini yang akan dihubungkan ke mikrokomputer selain 8 bit data. Selama eksekusi dari IN dan OUT dari instruksi masukan atau keluaran mikrokomputer, maka terjadi komunikasi antara PPI dengan mikrokomputer lewat data bus yang dihubungkan ke jalur data B0-B7. Semua data yang lewat diantara mikrokomputer dengan PPI 8255 diterima atau dikirimkan oleh bi-directional 8 bit buffer. Pin reset biasanya dihubungkan ke jalur reset, logika 1 pada pin ini akan menghapus semua register internal PPI, termasuk control word dan menyajikan semua I/O ke mode masukan. Salah satu contoh untuk mengaktifkan port A dan port C sebagai keluaran, port B sebagai masukan. Maka pada control word akan diberi data 82H (dalam heksadesimal). Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 15 Dalam waktu yang singkat, bahasa Pascal telah menjadi bahasa yang populer dikalangan akademis (universitas). Sedangkan di dunia industri, memang harus diakui bahasa C/C++ lebih unggul penggunaannya bila dibandingkan dengan bahasa Pascal. Standar Pascal adalah bahasa yang didefinisikan oleh K. Jensen dan Niklaus Wirth. Penerapan nyata dari standar Pascal banyak yang berbeda seperti apa yang telah didefinisikan oleh K. Jensen dan Niklaus Wirth. Standar Pascal di Eropa didefinisikan oleh ISO (International Standards Organization) sedangkan di Amerika hasil kerjasama antara ANSI (American National Standard Institute) dengan IEEE (Institute Of Electrical and Electronic Engineers). Sampai kini ada banyak versi Pascal diantaranya Turbo Pascal yang dikembangkan oleh Borland International, dengan sedikit perbedaan dari Pascal standar. Misalnya pengolahan string. Turbo pascal merupakan pengembangan dari fasilitas-fasilitas yang tidak ada pada Pascal standar, antara lain dalam hal pengaksesan file secara acak, fasilitas penyambung ke program yang terstruktur, kemampuan grafis khusus untuk komputer IBM, Relion dan masih banyak lagi fasilitas yang lainnya. 2.3.1 Elemen Dasar Pascal Sebelum memulai pembuatan program dengan menggunakan bahasa Pascal, terlebih dahulu kita perlu mengetahui elemen-elemen dasar yang terkandung di dalamnya. Beberapa elemen penting diantaranya: a. komentar program, variabel, konstanta dan tipe data. Komentar program merupakan bagian program yang tidak ikut dieksekusi sehingga kehadirannya tidak mempengaruhi jalannya program. b. Variabel adalah suatu pengenal yang didefinisikan oleh programer untuk menyimpan nilai atau data tertentu yang dibutuhkan dalam program pada saat program sedang berjalan (run-time). Konstanta adalah tetapan dimana nilainya tidak dapat diubah selama program sedang berjalan. Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 17 c. Tipe data berfungsi untuk memberitahukan kepada kompiler bahwa variabel tersebut akan digunakan untuk menyimpan nilai dengan tipe data yang bersangkutan. Adapaun tipe data dalam bahasa Pascal dibedakan menjadi dua bagian besar, yaitu tipe dasar dan tipe bentukan. Tipe dasar dibagi menjadi tipe bilangan bulat, tipe riil, tipe karakter, tipe string, dan tipe logika. 2.3.2 Operator Dalam Pascal Operator didefinisikan sebagai suatu yang digunakan untuk melakukan operasi- operasi tertentu, misalnya operasi aritmatika, penggabungan string dan lain sebagainya. Jenis oprator dalam bahasa Pascal dibedakan menjadi dua, yaitu operator uner (unary) dan operator biner (binary). Operator uner adalah operator yang hanya terdiri dari satu buah operand sedangkan operator biner adalah operator yang terdapat pada operasi-operasi yang melibatkan dua buah operand, yaitu: a. Operator assignment digunakan untuk melakukan pemberian nilai terhadap suatu variabel sehingga operator ini juga sering dikenal dengan operator penegasan. b. Operator aritmatika merupakan operasi yang operand-operandnya berupa bilangan bulat atau riil yang dapat digunakan dalam operasi aritmatika, seperti penjumlahan, pengurangan, perkalian, pembagian, dan penentuan hasil bagi. c. Operator logika digunakan untuk melakukan operasi-operasi yang menghasilkan nilai logika (true and false). Bahasa Pascal menyediakan empat buah operator logika, yaitu operator not, operator and, operator or dan operator xor. d. Operator bitwise merupakan operator yang digunakan untuk melakukan manipulasi bit pada operand yang bertipe bilangan bulat (integer). Adapun operator bitwise yang disediakan oleh bahasa Pascal adalah bitwise not, bitwise and, bitwise or, bitwise xor, bitwise shl, dan bitwise shr. e. Operasi relasional adalah operator yang digunakan untuk menentukan relasi atau hubungan dari dua buah nilai atau operand. Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 18 2.3.3 Statemen Dalam pemrograman, secara umum statemen dapat didefinisikan sebagai suatu bagian program yang dapat dieksekusi. Ini artinya, statemen akan menandakan atau berperan sebagai suatu aksi tertentu. Secara garis besar, statemen di dalam bahasa Pascal dapat dikategorikan ke dalam beberapa kelompok, yaitui sebagai berikut: a. Penugasan (assignment) b. Pemilihan c. Iterasi atau pengulangan d. Peloncatan e. Pendefinisian label f. Ekspresi atau ungkapan Pemilihan, iterasi, dan peloncatan merupakan statemen yang digunakan untuk melakukan kontrol program. Label berguna untuk membantu dalam statemen peloncatan, khususnya untuk menggunakan statemen goto, sedangkan ekspres digunakan untuk menyatakan nilai logika yang pada umumnya terdapat dalam pengkondisian. 2.3.4 Struktur Program Bahasa Pascal Untuk memulai penulisan program di dalam suatu bahasa pemograman terutama dalam hal ini adalah bahasa pascal harus memperhatikan struktur program dari bahasa tersebut. Berikut ini merupakan kerangka umum program yang terdapat dalam bahasa pascal, yaitu: a. Judul program Biasanya sama dengan nama program yang dibuat. b. Daftar unit Berisi daftar unit yang akan digunakan dalam program. Untuk membatasi unit satu dengan yang lainnya, menggunakan tanda koma (,). c. Bagian deklrasi Bagian ini bersi bermacam-macam deklarasi yang dibutuhkan oleh program yang meliputi: Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 19 Untuk mendeklarasikan suatu variable dibutuhkan tipe data, dimana fungsinya adalah untuk memberitahu kepada kompiler bahwa variabel tersebut akan digunakan untuk menyimpan nilai dengan tipe data yang bersangkutan. 2. Deklarasi konstanta Dalam pembuatan program biasanya diperlukan definisi konstanta atau 1. Deklarasi tipe data tatapan, dimana nilainya tidak dapat diubah selama program sedang berjalan. Hal ini berbeda dengan variabel yang nilainya dapat diubah kapan saja sesuai dengan kebutuhan program. Dalam bahasa pascal, pembuatan konstanta selalu menggunakan kata kunci const. 3. Deklarasi variable Variabel adalah suatu pengenal yang didefinisikan oleh programer Untuk menyimpan nilai atau data tertentu yang dibutuhkan dalam program pada saat program sedang (run-time). Dengan demikian nilai tersebut dapat diubah pada saat program sedang berjalan sesuai dengan kebutuhan program. Tipe data dari variabel yang dideklarasikan sama dengan tipe dari data atau nilai yang dimasukkan ke dalamnya. Untuk mendeklarasikan sebuah variabel didalam bahasa Pascal ditempatkan pada bagian deklarasi (yang diidentifikasi dengan kata kunci var). 4. Deklarasi prosedur Prosedur merupakan suatu rutin yang melakukan proses tertentu dengan tanpa adanya pengembalian nilai. Prosedur menyediakan suatu metode pengisolasian bagian program secara terpisah yang dapat dipanggil atau diaktivasi dari bagian manapun didalam program. Suatu prosedur biasanya memiliki satu atau beberapa parameter. 5. Deklarasi fungsi Definisi fungsi sama dengan sebuah prosedur. Perbedaannya pada fungsi terdapat pengembalian nilai sehingga pada saat pemanggilan fungsi dapat langsung digunakan untuk mengisikan sebuah ekspresi. Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 20 d. Statement-statement Merupakan perintah-perintah yang akan dituliskan. Statement-statement ini berada dalam blok begin-end. e. Prosedur Writeln dan Readln Dalam pembuatan program diperlukan banyak penulisan (output) dan pembacaan (input) data. Dalam bahasa pascal, prosedur yang digunakan untuk melakukan penulisan adalah Write dan Writeln. Perbedaan dari kedua buah prosedur ini terletak pada posisi kursornya. Pada prosedur Write, kursor akan berada dibelakang teks yang dituliskan. Sedangkan pada prosedur Writeln, setelah menuliskan teks maka posisi kursor akan dipindahkan ke baris berikutnya. Selanjutnya untuk proses pembacaan bahasa Pascal memiliki prosedur Read, Readln dan Readkey. Namun prosedur yang paling digunakan adalah Readln. f. Unit Unit merupakan suatu modul program yang terpisah dan digunakan untuk menyimpan proses-proses tertentu yang berkaitan. Biasanya unit dibuat untuk program yang cukup besar sehingga program dapat lebih bersifat modular dan mudah untuk dibaca. Pada program digunakan statement uses crt, ini artinya menggunakan sustu unit crt yaitu unit yang berisi kumpulan rutin (berupa prosedur maupun fungsi) yang berkaitan dengan pengontrolan PC, yang meliputi layer, keyboard, warna dan juga suara. Apabila unit tersebut telah didaftarkan dalam program yang ditulis maka semua rutin-rutin yang terdapat di dalam unit tersebut dapat digunakan. 2.4 Pewangi Ruangan, Kipas Pembersih dan Buzzer a. Pewangi Ruangan Pewangi ruangan yang digunakan pada perancangan alat ini yaitu pewangi ruangan otomatis (stella otomatis). Pewangi ruangan ini berfungsi sebagai pengharum ruangan. Prinsip kerjanya adalah ketika pada suatu ruangan bersih dari asap rokok, maka pewangi ruangan ini akan aktif dan pengaturan waktunya dapat diatur secara manual yang telah ditentukan oleh pabrik (10, 20 dan 40 menit). Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 21 Gambar 2.5 Pewangi Ruangan (Stella Otomatis) b. Kipas Pembersih Kipas pembersih yang digunakan pada simulasi ruangan ini adalah kipas komputer. Kipas pembersih ini berfungsi sebagai pembersih udara pada suatu ruangan, ketika pada ruangan tersebut terdeteksi oleh sensor adanya asap rokok. Prinsip kerja dari kipas pembersih ini yaitu, Jika sensor mendeteksi asap rokok yang masuk pada suatu ruangan, maka kipas pembersih akan aktif dan udara pada ruangan tersebut akan kembali bersih dari asap rokok. Gambar 2.6 Kipas Pembersih c. Buzzer Buzzer adalah sebuah alarm yang berfungsi sebagai peringatan atau pemberitahuan. Alarm adalah sebagai pesan berisi pemberitahuan Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 22 ketika terjadi penurunan atau kegagalan dalam penyampaian sinyal komunikasi data ataupun ada peralatan yang mengalami kerusakan (penurunan kinerja). Pesan ini digunakan untuk memperingatkan operator atau administrator mengenai adanya masalah pada jaringan. Alarm memberikan tanda bahaya berupa sinyal, bunyi, atau sinar. Prinsip kerja buzzer pada perancangan alat ini adalah untuk memberi suatu peringatan atau indikator berupa bunyi, jika terdapat asap rokok yang berlebih dalam suatu ruangan. Gambar 2.7 Buzzer 2.5 Regulator Catu Daya Prinsip kerja catu daya pada umumnya adalah perangkat elektronika yang dicatu oleh supply arus searah DC (direct current) yang stabil agar dapat bekerja dengan baik. Baterai atau accu adalah sumber catu daya DC yang paling baik. Namun untuk aplikasi yang membutuhkan catu daya lebih besar, sumber dari baterai tidak cukup. Sumber catu daya yang besar adalah sumber bolak-balik AC (alternating current) dari pembangkit tenaga listrik. Untuk itu diperlukan suatu perangkat catu daya yang dapat mengubah arus AC menjadi DC. Untuk memperoleh suatu catu daya dengan nilai keluaran yang tetap, maka dapat digunakan sebuah IC regulator 78xx untuk catu daya positif dan IC regulator 79xx untuk catu daya negatif (xx adalah nilai tegangan yang dikeluarkan dari regulator tersebut). Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 23 Gambar 2.8 IC Regulator Misalnya 7805 adalah regulator untuk mendapat tegangan +5 volt, 7812 regulator tegangan +12 volt dan seterusnya. Sedangkan seri 79XX misalnya adalah 7905 dan 7912 yang berturut-turut adalah regulator tegangan -5 dan -12 volt. Selain dari regulator tegangan tetap ada juga IC regulator yang tegangannya dapat diatur. Prinsipnya sama dengan regulator OP-amp yang dikemas dalam satu IC misalnya LM317 untuk regulator variable positif dan LM337 untuk regulator variable negatif. Bedanya resistor R1 dan R2 ada di luar IC, sehingga tegangan keluaran dapat diatur melalui resistor eksternal tersebut. Sinyal AC yang tidak diinginkan ini dinamakan ripple. Faktor ripple adalah besarnya prosentase perbandingan antara tegangan ripple dengan tegangan DC yang dihasilkan “r = ( Vr / VDC ) x 100%”. Untuk memperkecil nilai ripple dapat digunakan filter kapasitor. Semakin besar nilai kapasitor maka akan semakin kecil nilai tegangan ripple. 2.6 Driver Cara kerja dari driver ini adalah ketika off “0” maka tidak ada arus yang mengalir dari Vcc ke GND, sehingga relay tidak bekerja dan ketika keadaan on “1” maka ada arus yang mengalir dari Vcc ke GND, sehingga relay bekerja (kontak berpindah dari nc ke no) dan beban on. Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 24 Gambar 2.9 Rangkaian Driver a. Relay Relay pada rangkaian driver berfungsi sebagai saklar. 1. Keuntungan relay, yaitu: a. Relay dapat switch AC dan DC, transistor hanya switch DC. b. Relay dapat switch tegangan tinggi, transistor tidak dapat. c. Relay pilihan yang tepat untuk switching arus yang besar. 2. Kekurangan relay, yaitu: a. Relay ukurannya jauh lebih besar daripada transistor. b. Relay tidak dapat switch dengan cepat. c. Relay butuh daya lebih besar dibanding transistor. d. Relay membutuhkan arus input yang besar. b. Resistor Resistor adalah komponen elektronika yang berfungsi untuk memberikan hambatan terhadap aliran arus listrik. Dalam rangkaian listrik dibutuhkan resistor dengan spesifikasi tertentu, seperti besar hambatan, arus maksimum yang boleh dilewatkan dan karakteristik hambatan terhadap suhu dan panas. Pada perancangan rangkaian driver ini, resistor digunakan untuk memberikan hambatan agar komponen yang diberi tegangan tidak dialiri dengan arus yang besar. Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 25 Dioda adalah devais semikonduktor yang mengalirkan arus satu arah saja. Dioda terbuat dari germanium atau silikon yang lebih dikenal dengan dioda junction. Pada perancangan rangkaian driver ini, Dioda berfungsi sebagai pengaman arus supaya tidak ada arus balik ke kaki kolektor transistor. d. Transistor c. Dioda Transistor bipolar biasanya digunakan sebagai saklar elektronik dan penguat pada rangkaian elektronika digital. Transistor memiliki 3 terminal. Transistor biasanya dibuat dari bahan silikon atau germanium. Tiga kaki yang berlainan membentuk transistor bipolar adalah emitor, basis dan kolektor. Mereka dapat dikombinasikan menjadi jenis N-P-N atau P-N-P yang menjadi satu sebagai tiga kaki transistor. Pada rangkaian driver, transistor digunakan untuk mengaktifkan relay. Gambar 2.10 Transistor NPN dan PNP Pada rangkaian elektronik, sinyal inputnya adalah 1 atau 0 ini selalu dipakai pada basis transistor, yang mana kolektor dan emitor sebagai penghubung untuk pemutus (short) atau sebagai pembuka rangkaian. Aturan atau prosedur transistor sebagai berikut: 1. Pada transistor NPN, memberikan tegangan positif dari basis ke emitor, menyebabkan hubungan kolektor ke emitor terhubung singkat, yang menyebabkan transistor aktif (on). Memberikan Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 26 tegangan negatif atau 0 V dari basis ke emitor menyebabkan hubungan kolektor dan emitor terbuka, yang disebut transistor mati (off). 2. Pada transistor PNP, memberikan tegangan negatif dari basis ke emitor yang akan menyalakan transistor (on) atau memberikan tegangan positif dan 0 V dari basis ke emitor ini akan membuat transistor mati (off). Pada perancangan rangkaian driver ini, transistor berfungsi sebagai switching untuk mengaktifkan relay agar arus dari Vcc ke GND dapat mengalir. 2.7 ADC Agar komputer dapat membaca besaran analog yang datang dari perangkat eksternal, sinyal analog tersebut harus diubah dahulu menjadi sinyal digital, yaitu dengan menggunakan rangkaian ADC. Analog To Digital Converter (ADC) mengambil input sinyal analog dan akan menghasilkan keluaran sinyal digital yang mempresentasikan input analog tersebut. Parameter yang penting dari suatu ADC di samping waktu konversinya, yaitu resolusi. Resolusi adalah besaran analog terkecil yang masih dapat dikonversi menjadi sinyal digital. Besar resolusi ini tergantung dari jumlah bit dari ADC. Semakin banyak bit ADC, resolusi semakin kecil, dan proses konversi semakin teliti. 1. Resolusi Resolusi adalah perubahan output terkecil yang mungkin terjadi pada output analog sebagai hasil perubahan input digital. Besar resolusi r = Vref, dimana n = Jumlah bit dari ADC. Vref = Tegangan referensi ADC. 2. Akurasi Akurasi adalah perbandingan output sebenarnya dengan output yang diharapkan dan lain-lain. Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 27 3. Waktu konversi Waktu konversi adalah waktu yang dibutuhkan untuk mengubah besaran analog menjadi besaran digital setiap sampel atau yang diperlukan untuk menyelesaikan suatu konversi. 2.7.1 1. Flash ADC Macam-macam ADC Flash ADC ini merupakan jenis ADC yang paling tercepat dalam mengkonversi dari besaran analog menjadi besaran digital. Flash ADC ini sering disebut dengan parallel converter ADC karena terdiri dari beberapa seri komparator, yang tiap komparatornya akan membandingkan sinyal inputnya dengan tegangan referensi. Output dari komparator ini akan terhubung ke 8-line to 3-line priority encoder yang nantinya akan menghasilkan output berupa biner. Berikut gambar dari rangkaian falsh ADC. Gambar 2.11 Flash ADC Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 28 Selain memiliki kecepatan, flash ADC juga memiliki kekurangan yaitu banyaknya komponen yang dibutuhkan, misalnya flash ADC 3 bit membutuhkan 8 buah resistor dan 7 buah komparator, flash ADC 6 bit membutuhkan 64 buah resistor dan 63 buah komparator dan seterusnya. 2. SAR ADC Successive Approximation merupakan rangkaian ADC yang lebih komplek dibandingkan dengan jenis ADC yang lainya. Tetapi memiliki waktu konversi yang relatif cepat, karena setiap sample yang diubah pada selang waktu yang sama dengan waktu pengukuran yang tetap sama tidak bergantung pada sinyal masukan dan secara keseluruhan ditentukan oleh frekuensi yang mengendalikan resolusi dari pengubah. Gambar 2.12 SAR ADC Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 29 2.7.2 ADC 0808 ADC 0808 merupakan pengubah sinyal analog ke digital dengan jenis Successive Approximation (SAR) ADC. ADC 0808 memiliki keluaran 8 bit dengan nilai resolusinya sebagai berikut: R 1 x5V 20mV 28 ADC 0808 memiliki 8 buah masukan dengan sistem multiplekser. Setiap masukan ini memiliki alamat yang berbeda dalam mengubah sinyal analog menjadi digital yang dilakukan oleh proses baca (read) dan tulis (write). Gambar 2.13 Pemasangan Aplikasi ADC 0808 Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 30 Tabel 2.4 Pilihan Input ADC 0808 C B A Input yang digunakan 0 0 0 Vin 0 0 0 1 Vin 1 0 1 0 Vin 2 0 1 1 Vin 3 1 0 0 Vin 4 1 0 1 Vin 5 1 1 0 Vin 6 1 1 1 Vin 7 Adapun langkah konversi dari sinyal analog ke digital sebagai berikut: Tabel 2.5 Konversi dari Sinyal Analog ke Digital RD WR Hex 1 1 3 1 0 2 1 1 3 0 1 1 Tabel 2.6 Konversi ADC 0808 (8bit) Desimal Input Output (Step) ( mV) Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 (Heksa) 0 20 0 0 0 0 0 0 0 0 00 1 40 0 0 0 0 0 0 0 1 01 2 60 0 0 0 0 0 0 1 0 02 3 80 0 0 0 0 0 0 1 1 03 4 100 0 0 0 0 0 1 0 0 04 255 5000 1 1 1 1 1 1 1 1 FF Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC Output 31 Gambar 2.14 Modul ADC 0808 Sistem Kendali Pendeteksi Asap Rokok pada Simulasi Ruangan berbasis PC 32