TUGAS AKHIR – RE 0391
SISTEM DETEKSI ORANG DALAM RUANGAN UNTUK MENGATUR NYALA LAMPU RUANG KULIAH YANG DIPANTAU SECARA TERPUSAT DALAM RUANG KONTROL R. Prawiro Kusumo R. NRP 2205 030 047 Dimas Adityo NRP 2205 030 057 Dosen Pembimbing Harris Pirngadi. Ir. MT PROGRAM STUDI D3 TEKNIK ELEKTRO Fakultas Teknologi Industri Institut Teknologi Sepuluh Nopember Surabaya 2008
Halaman kosong!!!
SISTEM DETEKSI ORANG DALAM RUANGAN UNTUK MENGATUR NYALA LAMPU RUANG KULIAH YANG DIPANTAU SECARA TERPUSAT DALAM RUANG KONTROL
TUGAS AKHIR Diajukan Guna Memenuhi Sebagian Persyaratan Memperoleh Gelar Ahli Madya Teknik Pada Bidang Studi Komputer Kontrol Program Studi D3 Teknik Elektro Fakultas Teknologi Industri Institut Teknologi Sepuluh Nopember
Menyetujui : Dosen Pembimbing,
Ir. Harris Pirngadi, MT NIP. 131 843 903
SURABAYA JULI, 2008
iii
Halaman kosong!!!
iv
SISTEM DETEKSI ORANG DALAM RUANGAN UNTUK MENGATUR NYALA LAMPU RUANG KULIAH YANG DIPANTAU SECARA TERPUSAT DALAM RUANG KONTROL Nama Mahasiswa NRP Nama Mahasiswa NRP Dosen Pembimbing
: : : : :
R. Prawiro Kusumo R. 2205 030 047 Dimas Adityo 2205 030 057 Ir. Harris Pirngadi, MT
Abstrak Dewasa ini energi di dunia semakin terbatas dan mahal harganya, karena itu penghematan terhadap energi harus dilakukan. Salah satunya adalah penghematan dalam energi lisrik yaitu dengan cara mematikan peralatan listrik yang tidak digunakan, dan salah satunya adalah penggunaan lampu ruangan. Guna menghindari seseorang lupa mematikan lampu ruangan maka diperlukan sistem yang dapat mengatur nyala lampu ruangan berdasarkan ada dan tidaknya orang dalam ruangan. Dalam tugas akhir ini dirancang sistem kontrol lampu ruang kuliah yang dikendalikan berdasarkan ada dan tidaknya orang yang ada dalam ruangan dan dipantau secara terpusat dalam ruang kontrol. Pada pembuatan alat ini, dilakukan pemantauan terhadap ada dan tidaknya orang dalam ruangan. Untuk itu digunakan deretan sensor inframerah. Sensor ini merupakan masukan, yaitu pendeteksi keluar masuknya seseorang. Untuk menghubungkan mikrokontroler yang ada pada tiap ruangan dengan PC yang berada di ruang kontrol digunakan RS485. Komunikasi antara mikrokontroler dan PC, menggunakan RS232 yang kemudian di convert ke RS485. Data yang diterima PC diolah dengan menggunakan program Delphi untuk menghasilkan informasi visual secara langsung ditampilkan di dalam ruang kontrol. Setiap orang melintas antara kedua ruangan ini akan menyebabkan sensor penerima terhalang sehingga pada mikrokontroler akan mengaktifkan counter sehingga dapat menghitung jumlah naik ketika orang masuk dan menghitung turun ketika orang keluar. Dan hasil dari pendeteksian ini dapat dipantau dari ruang kontrol. Kata kunci : Lampu, Mikrokontroler, RS 485, Ruang Kontrol
v
DETECTION SYSTEM OF PEOPLE IN ROOM TO CONTROL LAMP OF CLASSROOM THAT MONITORING AS CENTRALLY IN CONTROL ROOM Name NRP Name NRP Consultative Lecturer
: : : : :
R. Prawiro Kusumo R. 2205 030 047 Dimas Adityo 2205 030 057 Ir. Harris Pirngadi, MT
Abstract Nowadays energy in world is progressively limited and the cost is expensive, cause that thrift about energy must be done. One of them is thrift in electrics energy by turning off electrics equipment which not be used, and one of them is usage of room lamp. To avoid someone forget to turn off the room lamp so needed system that able to control lamp pursuant to there is and not any people inside room. In this final project been designed room lamp control systems, pursuant to there is and not any people in room and monitored centrally in control room. Making this project, is conducted by monitoring to there is and not any people in room. For that used censor infra red. This censor is input, that is detector in and out someone. To connect every microcontroller in every room with PC in control room used RS485. Communication between PC and mikrokontroler, is use RS232 then convert to RS485. Data accepted by PC is processed by using Delphi program to make visual information that directly presented in control room. Everyone pass between both of this room will cause receiver sensor blocked so that at mikrokontroler will activate counter so can count up when people enter and count down when people go out. And the result of this detection can monitored in control room.
Keywords : Lamp, Microcontroller, RS 485, Control Room
vi
KATA PENGANTAR Segala puji kehadirat Allah SWT yang telah melimpahkan rahmat dan hidayah-Nya kepada kami dalam usaha dan kerja kami sehingga kami dapat menyelesaikan Tugas Akhir dengan judul : “ Sistem Deteksi Orang Dalam Ruangan Untuk Mengatur Nyala Lampu Ruang Kuliah Yang Dipantau Secara Terpusat Dalam Ruang Kontrol ” Tugas Akhir ini disusun guna memenuhi persyaratan untuk menyelesaikan studi di Bidang Studi Komputer Kontrol, Program Studi D3 Teknik Elektro, Jurusan Teknik Elektro, Fakultas Teknologi Industri, Institut Teknologi Sepuluh Nopember, Surabaya. Dalam penyusunan laporan Tugas Akhir ini, kami banyak mendapatkan bantuan dan dukungan dari berbagai pihak. Oleh karena itu, penulis dengan tulus ikhlas menyampaikan banyak terima kasih kepada: Bapak Ir. Harris Pirngadi, MT selaku dosen pembimbing Tugas Akhir kami, atas segala kesabaran dan kesediaannya meluangkan waktu untuk membimbing serta memberi dukungan sehingga Tugas Akhir ini dapat terselesaikan. Bapak Ir. Gatot Kusraharjo, MT, selaku Kaprodi D3 Teknik Elektro, Komputer Kontrol FTI - ITS. Dan semua pihak yang tidak dapat kami sebutkan satu persatu yang telah memberi dorongan dan bantuan dalam menyelesakan Tugas Akhir ini baik secara langsung maupun tidak langsung. Kesalahan juga merupakan bagian tak terpisahkan dari jalan kehidupan manusia. Sehingga hanya pintu maaflah yang kami harapkan atas kesalahan-kesalahan kami. Dengan segala kerendahan hati, kami berharap apa yang ada dalam buku Tugas Akhir ini dapat bermanfaat, dan berguna sebagai sumbangan pikiran bagi kita semua dalam berprestasi turut mengisi pembangunan Bangsa dan Negara. Surabaya, Juli 2008
Penyusun vii
Halaman kosong!!!
viii
DAFTAR ISI JUDUL ............................................................................................ i PENGESAHAN .............................................................................. iii ABSTRAK – ABSTRACT ............................................................. v KATA PENGANTAR ................................................................... vii DAFTAR ISI .................................................................................. ix DAFTAR GAMBAR ...................................................................... xi DAFTAR TABEL .......................................................................... xiii BAB I. PENDAHULUAN 1.1 Latar Belakang.................................................................... 1.2 Perumusan Masalah ............................................................ 1.3 Batasan Masalah ................................................................. 1.4 Maksud dan Tujuan ............................................................ 1.5 Sistematika Laporan ........................................................... 1.6 Relevansi ............................................................................
1 1 1 2 2 2
BAB II. TEORI PENUNJANG 2.1 Power Supply ...................................................................... 2.2 Photodioda ......................................................................... 2.3 Mikrokontroler.................................................................... 2.3.1 Gambaran Umum ATmega16 .................................. 2.3.2 Konfigurasi Pin-Pin ATmega16 .............................. 2.4 Relay ................................................................................... 2.5 Komunikasi Serial ............................................................. 2.5.1 RS 232 ..................................................................... 2.5.2 RS 485 .....................................................................
3 3 5 5 7 8 10 12 13
BAB III. PERANCANGAN DAN PEMBUATAN ALAT 3.1 Perancangan Perangkat Keras............................................. 3.1.1 Ruangan 1 ............................................................... 3.1.1.1 Perancangan Power Supply........................ 3.1.1.2 Perancangan Rangkaian Sensor ................. 3.1.1.3 Perancangan Relay..................................... 3.1.2 Ruangan 2 ............................................................... 3.1.3 Perancangan Sistem Rangkaian ............................... 3.1.3.1 Perancangan Sistem Minimum ATmega 16 3.1.3.2 Rangkaian Downloader .............................
15 15 16 16 18 19 19 19 20
ix
3.1.4 Perancangan Rangkaian Serial................................. 3.1.4.1 Perancangan RS232................................... 3.1.4.2 Perancangan RS232 to RS485................... 3.1.5 Ruang Kontrol ........................................................ 3.1.5.1 Perancangan RS485 to RS232................... 3.1.5.2 Personal Computer (PC) .......................... 3.2 Perencanaan dan Perancangan Perangkat Lunak ............... 3.2.1 CodeVision Untuk Mikrokontroler ATmega16 ..... 3.2.2 Delphi 7.0 ............................................................... 3.3 Pembuatan Alat .................................................................
21 21 21 22 22 23 23 26 26 26
BAB IV. PENGUJIAN DAN ANALISA DATA 4.1 Pengujian Rangkaian Power Supply .................................. 4.2 Pengujian Rangkaian Sensor ............................................. 4.3 Pengujian Rangkaian Relay................................................ 4.4 Pengujian Rangkaian Mikrokontroler ............................... 4.5 Pengujian Rangkaian RS 232ÅÆ RS485 ......................... 4.6 Pengujian Alat Secara Keseluruhan ..................................
29 30 31 32 34 35
BAB V. PENUTUP 5.1 Kesimpulan ........................................................................ 5.2 Saran .................................................................................
41 41
DAFTAR PUSTAKA......................................................................
43
LAMPIRAN LISTING PROGRAM ............................................................... A-1 DATASHEET ............................................................................ B-1 RIWAYAT HIDUP ........................................................................ C-1
x
DAFTAR GAMBAR Gambar 2.1 Gambar 2.2 Gambar 2.3 Gambar 2.4 Gambar 2.5 Gambar 2.6 Gambar 2.7 Gambar 3.1 Gambar 3.2 Gambar 3.3 Gambar 3.4 Gambar 3.5 Gambar 3.6 Gambar 3.7 Gambar 3.8 Gambar 3.9 Gambar 3.10 Gambar 3.11 Gambar 3.12 Gambar 3.13 Gambar 3.14 Gambar 3.15 Gambar 3.16 Gambar 3.17 Gambar 4.1 Gambar 4.2 Gambar 4.3 Gambar 4.4 Gambar 4.5 Gambar 4.6 Gambar 4.7 Gambar 4.8
Konstruksi Photodioda ........................................... 3 Karakteristik Volt-Ampere ...................................... 4 Sensitifitas Photodioda Terhadap Fungsi Jarak Cahaya dari Junction............................................................. 4 Blok Diagram ATmega16........................................ 6 IC ATmega16........................................................... 7 Rangkaian Darlington ............................................. 9 Komunikasi Data Master dan 32 Slave .................... 13 Fungsional Rangkaian Keseluruhan......................... 15 Rangkaian Power Supply ......................................... 16 Rangkaian Sensor..................................................... 17 Rangkaian Relay ...................................................... 18 Rangkaian Sistem Minimum ATmega16................. 19 Rangkaian ISP Downloader..................................... 20 Rangkaian RS232..................................................... 21 Rangkaian RS232 to RS485..................................... 22 Rangkaian RS485 to RS232..................................... 22 Listing Program Utama ............................................ 24 Flowchart Rangkaian............................................... 25 Bentuk Fisik Rangkaian Power Supply.................... 26 Bentuk Fisik Rangkaian Sensor ............................... 27 Bentuk Fisik Rangkaian Relay ................................. 27 Bentuk Fisik Rangkaian Mikrokontroler ATmega16 27 Bentuk Fisik Rangkaian RS232 ............................... 28 Bentuk Fisik Rangkaian Converter RS232ÅÆ RS485....................................................................... 28 Listing Program Tes Relay ....................................... 32 Listing Program LED Tester .................................... 33 Listing Program Tes Serial....................................... 34 Pada Hyperterminal 1 .............................................. 35 Pada Hyperterminal 2 .............................................. 35 Pada PC Sebelum Alat Dijalankan .......................... 36 Pada PC Saat Belum Mendeteksi Adanya Orang di dalam Ruangan ........................... 37 Pada PC Saat Mendeteksi Adanya Orang di dalam Ruangan 1.................................................. 37
xi
Gambar 4.9
Pada PC Saat Mendeteksi Adanya Orang di dalam Ruangan 2 ................................................. Gambar 4.10 Pada PC Saat Mendeteksi Adanya Orang di dalam Ruangan 1 dan 2 .......................................
xii
38 38
DAFTAR TABEL Tabel 3.1 Tabel 3.2 Tabel 3.3 Tabel 3.4 Tabel 4.1 Tabel 4.2 Tabel 4.3 Tabel 4.4 Tabel 4.5
Exitation Table Sensor 1 dan Sensor 2 .................... Exitation Table Sensor 3 dan Sensor 2 .................... Present State Next State Sensor ............................... Pembagian Port pada ATmega16 ............................ Data Pengukuran Rangkaian Power Supply............. Data Pengujian Sensor ............................................. Pengujian Sensor...................................................... Pengujian Rangkaian Relay..................................... Pengujian Rangkaian Mikrokontroler Atmega16 pada LED Tester ......................................................
xiii
17 17 18 20 29 30 31 32 33
Halaman kosong!!!
xiv
BAB I PENDAHULUAN 1.1 Latar Belakang Dewasa ini energi di dunia semakin terbatas dan mahal harganya, karena itu penghematan terhadap energi harus dilakukan. Salah satunya adalah penghematan dalam energi lisrik yaitu dengan cara mematikan peralatan listrik yang tidak digunakan, dan salah satunya adalah penggunaan lampu ruangan. Guna menghindari seseorang lupa mematikan lampu ruangan maka diperlukan sistem yang dapat mengatur nyala lampu ruangan berdasarkan ada dan tidaknya orang dalam ruangan. Dalam hal ini dapat direncanakan sistem sensor yang terintegrasi dengan pengontrol lampu. Sensor yang dapat digunakan meliputi sensor inframerah, laser, limit switch, dan magnetik switch. Dalam tugas akhir ini memilih sensor yang tidak ada kontak fisik dengan objek yang dideteksi dan mampu untuk jarak 1 meter. Dalam hal ini inframerah. 1.2 Perumusan Masalah Untuk menyalakan lampu, digunakan pendeteksi ada dan tidaknya orang dalam ruangan yang menggunakan sensor inframerah. Jika sensor mendeteksi ada satu orang dalam ruangan maka sistem dari mikrokontroler akan mengaktifkan relay untuk menyalakan lampu. Kemudian data yang ada pada mikrokontroler dikirim oleh RS485 ke PC yang berada di ruang kontrol. 1.3 Batasan Masalah Dari perumusan masalah di atas, maka batasan masalah dari Tugas Akhir ini adalah: 1. Subyek yang dikontrol adalah nyala lampu. 2. Instrumen pengatur berupa sistem minimum berbasis ATmega16. 3. Aplikasi alat yang dibuat hanya untuk menyalakan lampu yang di atur berdasarkan hasil pendeteksian sensor. 4. Penghitungan oleh sensor dilakukan dalam keadaan orang yang melewati pintu dalam keadaan tidak berdesakan atau dalam antrian.
1
1.4 Maksud dan Tujuan Tujuan dari pembuatan alat dalam tugas akhir ini adalah membuat prototipe untuk keperluan sistem deteksi orang dalam ruangan untuk mengatur nyala lampu ruang kuliah yang dipantau secara terpusat dalam ruang kontrol. 1.5 Sistematika Laporan Sistematika pembahasan Tugas Akhir ini terdiri dari lima bab, yaitu pendahuluan, teori penunjang, perencanaan dan pembuatan alat, pengujian dan analisa alat, serta penutup. BAB I : PENDAHULUAN Membahas tentang latar belakang, permasalahan, batasan masalah, maksud dan tujuan, sistematika laporan, serta relevansi. BAB II : TEORI PENUNJANG Berisi teori penunjang yang mendukung dalam perencanaan dan pembuatan alat. BAB III : PERENCANAAN DAN PEMBUATAN ALAT Membahas tentang perencanaan dan pembuatan perangkat keras yang meliputi rangkaian-rangkaian, desain ruang kelas, dan perangkat lunak yang meliputi program yang akan digunakan untuk mengaktifkan alat tersebut. BAB IV : PENGUJIAN DAN ANALISA ALAT Membahas tentang pengukuran, pengujian, dan penganalisaan terhadap alat beserta sensor yang terdapat pada ruangan. BAB V : PENUTUP Menjelaskan tentang kesimpulan dari tugas akhir ini dan saran-saran untuk pengembangan alat ini lebih lanjut. 1.6 Relevansi Manfaat dari pembuatan sistem deteksi orang dalam ruangan untuk mengatur nyala lampu ruang kuliah yang dipantau secara terpusat dalam ruang kontrol dalam tugas akhir ini antara lain : pemakaian energi listrik lampu lebih efisien penghematan energi listrik dapat mengetahui jadwal pemakaian energi listrik dalam ruangan 2
BAB II TEORI PENUNJANG 2.1 Power Supply Rangkaian power supply adalah suatu rangkaian yang digunakan untuk menyediakan supply dalam bentuk keluaran tegangan. Tegangan yang dihasilkan disalurkan ke berbagai rangkaian lain untuk mengaktifkan rangkaian-rangkaian tersebut. Di sini kami memakai rangkaian power supply +5 dan +12 Volt yang digunakan untuk menyediakan supply sebesar +5 dan +12 Volt. 2.2 Photodioda 1 Jika junction p-n dengan bias mundur disinari, terjadi perubahan arus yang hampir linier terhadap flux cahaya. Gejala ini dimanfaatkan pada photodioda semikonduktor. Komponen ini terdiri atas junction p-n yang dibuat dalam plastik transparan. Seperti yang dapat dilihat pada Gambar 2.1. Radiasi hanya bisa diberikan pada satu permukaan junction. Sisi yang lain biasanya dicat hitam atau ditutupi lempengan logam. Komponen ini sangat kecil dengan order ukuran sepersepuluh inci.
Gambar 2.1 Konstruksi Photodioda Karakteristik Volt-Amper seperti yang ditunjukkan pada Gambar 2.2. Jika photodioda mendapat tegangan balik dengan nilai sepersepuluhan volt, akan terjadi arus yang hampir konstan (tidak tergantung pada besarnya bias mundur). Arus "gelap" (dark current, lihat gambar) berhubungan dengan arus saturasi mundur, karena pembentukan carrier minoritas secara termal. Jika cahaya dijatuhkan pada permukaan, terbentuk pasangan carrier, yang kemudian akan berdifusi ke junction dan menyeberangi junction sehingga menimbulkan arus. Arus saturasi mundur I0 pada dioda p-n proporsional terhadap konsentrasi carrier minoritas pno dan nno. Jika junction disinari, muncul 1
Arifin, Irwan , Elektronika 1, Gunadarma, 2004, hal 36-37.
3
sejumlah pasangan hole-elektron baru, proporsional terhadap jumlah foton. Dengan demikian dengan bias mundur yang besar akan terbentuk arus I = Io + Is, dengan Is adalah arus short-circuit yang proporsional terhadap intensitas cahaya. Dengan demikian, karakteristik volt-amper photodioda semikonduktor adalah : I = I S + I O (1 − eV / ηV ) . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . (2-1) Nilai V positif untuk tegangan maju dan negatif untuk bias mundur. Parameter η bernilai satu untuk germanium dan 2 untuk silikon. VT adalah tegangan ekuivalen untuk suhu (lihat Persamaan 2.1) T
Gambar 2.2 Karakteristik Volt-Ampere Sensitivitas terhadap Posisi Iluminasi. Arus pada photodioda semikonduktor terbias mundur bergantung pada difusi carrier minoritas di junction. Jika radiasi difokuskan pada satu titik kecil yang jauh dari junction, carrier minoritas terinjeksi bisa melakukan rekombinasi sebelum berdifusi pada junction. Dengan demikian, arus yang mengalir menjadi lebih kecil dibandingkan kalau peristiwa ini terjadi pada posisi yang lebih dekat dengan junction. Arus pada photodioda merupakan fungsi jarak terhadap junction, seperti ditunjukkan oleh Gambar 2.3 di bawah ini. Kurva pada gambar bersifat asimetris, karena perbedaan panjang difusi carrier minoritas di sisi p dan n.
Gambar 2.3 Sensitifitas Photodioda Terhadap Fungsi Jarak Cahaya dari Junction 4
2.3 Mikrokontroler Mikrokontroler dewasa ini menjadi booming dikalangan bidang pendidikan terutama perguruan tinggi. Mikrokontroller dengan merk ATMEL dengan tipenya meliputi ATtiny, AT90, dan ATmega. Masingmasing tipe memiliki fitur yang berbeda-beda dengan tujuan aplikasi yang spesifik. 2.3.1 Gambaran Umum ATmega16 2 Mirokontroler sebagai sebuah “one chip solution” pada dasarnya adalah rangkaian terintregrasi (Integrated Circuit-IC) yang telah mengandung secara lengkap berbagai komponen pembentuk sebuah komputer. Berbeda dengan penggunaan microprocessor yang masih memerlukan komponen luar tambahan seperti RAM, ROM, Timer, dan sebagainya, untuk sistem microcontroller, tambahan komponen diatas secara praktis hampir tidak dibutuhkan lagi. Hal ini disebabkan semua komponen penting tersebut telah ditanam bersama dengan sistem prosesor ke dalam IC tunggal microcontroller bersangkutan. Dengan alasan itu sistem microcontroller dikenal juga dengan istilah populer the real Computer On a Chip (komputer utuh dalam keping tunggal), sedangkan sistem microprocessor dikenal dengan istilah yang lebih terbatas yaitu Computer On a Chip (komputer dalam keping tunggal). Berdasarkan fungsinya, microcontroller secara umum digunakan untuk menjalankan program yang bersifat permanen pada sebuah aplikasi yang spesifik (misal aplikasi yang berkaitan dengan pengontrolan dan monitoring). Sedangkan program aplikasi yang dijalankan pada sistem microprosesor biasanya bersifat sementara dan berorientasi pada pengolahan data. Perbedaan fungsi kedua sistem diatas secara praktis mengakibatkan kebutuhan minimal yang harus dipenuhi juga akan berbeda (misal ditinjau dari kecepatan detak operasi, jumlah RAM, panjang register, dan lain sebagainya). Hampir tidak dapat disangkal, dewasa ini akan sukar dijumpai seseorang yang masih menggunakan komputer dengan microprocessor berbasis 8 atau 16 bit (misal microprocessor 8088 dan 8086 produk perusahaan Intel). Mengapa demikian?, salah satu alasannya Perangkat lunak komputer yang beredar saat ini umumnya mensyaratkan kecepatan CPU yang 2
Darma, Putu Rio A., Pengembangan Konverter Dari Teks Ke Fonem Pada Mikrokontroler Untuk Aplikasi Alat Bantu Wicara, Proyek Akhir, Poltek Elektronika Negeri Surabaya - ITS, 2006, hal 23-26.
5
sangat tinggi (dalam orde Mega bahkan GigaHz) serta memori dengan kapasitas sangat besar (dalam orde MegaByte) yang mana hal tersebut tidak mungkin dapat dipenuhi oleh sistem microprocessor lama tersebut. Sedangkan untuk sistem microcontroller, program yang dijalankan biasanya tidak memerlukan sumber daya sebanyak dan sebesar itu. Untuk aplikasi kontrol sederhana dan tingkat menengah, microcontroller yang digunakan cukup berbasis 4 sampai 8 bit. Microcontroller dengan ukuran lebih besar (misal 16 dan 32 bit) umumnya hanya digunakan untuk aplikasi-aplikasi khusus pada bidang pengolahan citra atau bidang kontrol yang memerlukan kepresisian tinggi.
Gambar 2.4 Blok Diagram ATmega16 Mikrokontroler atau mikroprosesor adalah suatu piranti yang digunakan untuk mengolah data-data biner (digital) yang didalamnya merupakan gabungan dari rangkaian-rangkaian elektronik yng dikemas dalam bentuk suatu chip (IC). Pada umumnya mikrokontroler tediri dari bagian-bagian sebagai berikut: Alamat (address), Data, Pengendali, 6
Memori (RAM atau ROM), dan bagian input-output. Gambar 2.4 adalah blok diagram dari ATmega16. 2.3.2 Konfigurasi pin-pin ATmega16 3 Konfigurasi pin-pin pada ATmega16 seperti ditunjukkan pada Gambar 2.5 .
Gambar 2.5 IC ATmega16 o VCC Sebagai tegangan penyuplai. o Ground Sebagai ground. o Port A (PA7..PA0) Port A sebagai input analog ke A/D konverter. Port A juga sebagai 8-bit bi-directional port I/O, jika A/D konverter tidak digunakan. Pin-pin port dapat menyediakan resistor-resistor internal pull-up. Ketika port PA0…PA7 digunakan sebagai input dan pull eksternal yang rendah akan menjadi sumber arus jika resistor-resistor pull-up diaktifkan. Pin-pin port A adalah tri-state ketika kondisi reset menjadi aktif sekalipun clock tidak aktif.
3
…, 8-bit AVR Microcontroller with 16K Bytes In-System Programmable Flash, Atmel, 2003, hal 2-5. 7
o Port B (PB7..PB0) Port B adalah port I/O 8-bit bi-directional dengan resistor-resistor internal pull-up. Buffer output port B mempunyai karaketristik drive yang simetris dengan kemampuan keduanya sink dan source yang tinggi. Sebagai input, port B yang mempunyai pull eksternal yang rendah akan menjadi sumber arus jika resistor-resistor pull-up diaktifkan. Pin-pin port B adalah tri-state ketika kondisi reset menjadi aktif sekalipun clock tidak aktif. o Port C (PC7..PC0) Port C adalah port I/O 8-bit bi-directional dengan resistor-resistor internal pull-up. Buffer output port C mempunyai karaketristik drive yang simetris dengan kemampuan keduanya sink dan source yang tinggi. Sebagai input, port C yang mempunyai pull eksternal yang rendah akan menjadi sumber arus jika resistor-resistor pull-up diaktifkan. Pin-pin port C adalah tri-state ketika kondisi reset menjadi aktif sekalipun clock tidak aktif. Jika antarmuka JTAG enable, resistor-resistor pull up pada pin-pin PC5(TDI), PC3(TMS), PC2(TCK) akan diaktifkan sekalipun terjadi reset. o Port D (PD7..PD0) Port D adalah port I/O 8-bit bi-directional dengan resistor-resistor internal pull-up. Buffer output port D mempunyai karaketristik drive yang simetris dengan kemampuan keduanya sink dan source yang tinggi. Sebagai input, port D yang mempunyai pull eksternal yang rendah akan menjadi sumber arus jika resistor pull-up diaktifkan. 2.4 Relay 4 Relay merupakan salah satu komponen output yang paling sering digunakan baik pada industri, otomotif, ataupun peralatan elektronika lainnya. Relay berfungsi untuk menghubungkan atau memutus aliran arus listrik yang dikontrol dengan memberikan tegangan dan arus tertentu pada koilnya. Ada 2 macam relay berdasarkan tegangan untuk menggerakkan koilnya yaitu AC dan DC. Pada umumnya relay DC dengan tegangan koil 12V DC, memerlukan arus sekitar 20-30mA. Karena itu tidak dapat langsung menghubungkan output suatu IC logic (TTL/CMOS ) atau 4
…, DT-I/O Relay Board, Innovative Electronics, 2005, hal 1. 8
peripheral lain seperti μC 89C51 , PPI 82C55 dengan relay karena IOHmax (arus maximum yang dikeluarkan pada saat logic ’1’) atau IOLmax (arus maximum yang mampu dibenamkan pada saat logic ’0’) tidak cukup besar. Karena itu perlu digunakan driver untuk penguat arus yang biasanya berupa transistor dalam konfigurasi Darlington seperti Gambar 2.6 berikut ini.
Gambar 2.6 Rangkaian Darlington Rangkaian tersebut juga dilengkapi dengan supression diode. Dioda ini berfungsi untuk mencegah kickback yaitu transient yang terjadi pada koil relay (beban induktif) saat relay dimatikan. Bila terjadi perubahan arus yang cukup besar dalam satuan waktu yang sangat cepat maka tegangan balik ini menjadi sangat besar, dan dapat mengakibatkan kerusakan pada transistor. Problem lain yang sering terjadi pada kontak relay adalah loncatan bunga api listrik yang dapat memperpendek umur kontak. Bunga api ini terutama terjadi pada beban induktif seperti motor, solenoid, dll. Untuk mencegah hal ini dapat digunakan MOV ( Metallic Oxide Varistor ) yang dipasang secara paralel dengan kontak. Varistor bersifat seperti resistor dengan nilai resistansinya tergantung pada tegangan. Ketika kontak terbuka, beban induktif menghasilkan tegangan balik yang cukup besar akibat perubahan medan magnet. Pada saat ini ('protective state') nilai resistansi varistor menjadi sangat kecil dan arus akan mengalir melalui MOV, sehingga transient dapat diredam. Pada saat keadaan normal resistansi MOV sangat besar dan hanya menarik arus yang sangat kecil, bunga api juga menyebabkan sinyal Radio Frequency Interference (RFI) yang dapat mengganggu peralatan – peralatan sensitif. Karena itu komponen peredam transient seperti MOV sangat diperlukan terutama pada beban induktif. Parameter-parameter penting Varistor :
9
o
o
Tegangan Varistor (tegangan breakdown) : Tegangan pada varistor yang diukur pada arus tertentu (0,1 mA atau 1 mA) selama waktu tertentu Tegangan maksimum yang diperbolehkan : Tegangan maksimum pada varistor agar tetap pada keadaan normal ('rest state').
2.5 Komunikasi Serial 5 Komunikasi serial adalah pengiriman data satu persatu secara berurutan dalam satu waktu. Oleh karena itu, komunikasi serial lebih lambat dari pada komunikasi paralel. Komunikasi serial dibagi menjadi dua macam, yakni komunikasi serial sinkron dan komunikasi serial asinkron. Komunikasi serial sinkron merupakan pengiriman data dengan mengikutsertakan sinyal clock, sedangkan komunikasi serial asinkron adalah pengiriman data tanpa disertai dengan sinyal clock. Komunikasi serial lebih sulit ditangani, karena peralatan yang dihubungkan ke serial port harus berkomunikasi dengan transmisi serial, sedangkan data yang diterima komputer harus diproses secara paralel. Oleh karena itu data yang diproses dari dan ke serial port harus diubah terlebih dahulu ke dan dari paralel port agar bisa diolah oleh komputer. Dengan menggunakan hardware, hal ini bisa dilakukan dengan Universal Asyncronous Receiver Transmitter ( UART ). Serial port menggunakan logika ’1’ atau mark dengan kisaran tegangan -3 Volt hingga -25 Volt dan menggunakan logika ’0’ atau space dengan kisaran tegangan +3 Volt hingga +25 Volt. Sehingga, permasalahan turunnya tegangan karena panjangnya kabel atau disebut dengan cable loss bukan menjadi masalah. Sinyal komunikasi serial memiliki beberapa bagian penting yakni : 1.
Kecepatan mobilisasi data per bit (Baud rate)
Laju perpindahan data serial seringkali dinyatakan dalam satuan baud. Laju baud dalam kanal komunikasi merupakan laju tercepat dari perpindahan bit. Laju pemindahan bit kanal jaringan biasanya lebih rendah dari laju baud. Keterlambatan tersebut karena bit ekstra ditambahkan untuk keperluan pewaktuan. Dalam sistem kecepatan tinggi, pemindahan juga diperlambat oleh tundaan aktif proses pengolahan. Data serial dapat dimobilisasikan pada berbagai baud 5
Darma, Putu Rio A., Pengembangan Konverter Dari Teks Ke Fonem Pada Mikrokontroler Untuk Aplikasi Alat Bantu Wicara, Proyek Akhir, Poltek Elektronika Negeri Surabaya - ITS, 2006, hal 44.
10
rate. modem asynchronous adalah 300 bps sampai dengan 19200 bps. Kecepatan transmisi (Baud Rate) merupakan suatu hal yang amat penting dalam komunikasi data seri asinkron, mengingat dalam komunikasi data seri asinkron clock tidak ikut dikirimkan, sehingga harus diusahakan bahwa kecepatan transmisi mengikuti standard yang sudah ada. 2.
Jumlah bit data per karakter (data length)
Dalam komunikasi data serial mode asynchronous biasanya berlangsung transmisi data yang dikemas dalam bentuk karakter. Dalam satu karakter diperbolehkan terdiri dari beberapa variasi jumlah bit. Dari sekian variasi yang diperbolehkan diantaranya dalah terdiri dari 7 bit dan 8 bit (panjang data karakternya saja). Kedua variasi ini adalah yang paling sering digunakan dalam komunikasi data serial. Tetapi meskipun demikian tidak menutup kemungkinan jika diinginkan untuk menggunakan variasi jumlah bit yang lain asalkan masih diperkenankan dalam penulisan inisialisasi peralatan serial yang bersangkutan. 3.
Parity yang digunakan
Bit parity adalah bit yang digunakan sebagai alat pemeriksaan kesalahan sederhana dalam proses transmisi data digital. Pemakaian parity ini akan diikutsertakan dalam proses penulisan inisialisasi peralatan serial yang bersangkutan. Bit parity ini akan diletakkan setelah susunan bit data. Kemungkinan dari jenis parity ini ada tiga macam, yaitu : parity ganjil, parity genap dan tanpa parity (tidak diikutkan dalam pemeriksaan kesalahan). Level digital dari bit parity ini akan ditentukan oleh jenisnya. Jika seluruh bit data yang ada dijumlah dan hasilnya dibagi dua, maka sisanya akan dianggap sebagai level digital dari bit parity yang bersangkutan. Jika salah satu dari bit data tertanggu dalam proses transmisinya, maka bit parity yang dibangkitkan tidak benar, dan hal semacam ini dapat dideteksi oleh peralatan serial pada terminal yang sedang berfungsi sebagai terminal penerima. Pada jenis parity genap (even) akan dibangkitkan bit parity yang memiliki level digital berupa kebalikan dari sisa hasil bagi jumlah nilai seluruh bit data yang telah dijelaskan diatas, dengan kata lain bit parity akan bernilai 0 (null) jika sisa hasil baginya sama dengan 1 (satu). Demikian juga sebaliknya, apabila yang dipakai jenis parity ganjil, maka bit parity yang dibangkitkan akan bernilai 1 jika sisa hasil baginya sama dengan 1. Di dalam proses komunikasi data 11
serial mode null modem asynchronous, sering kali bit parity ini tidak dipakai. 4. Jumlah stop bit dan start bit Pada komunikasi data serial pada mode asynchronous, port serial yang menerima karakter serial harus tahu kapan karakter itu diawali dan kapan karakter itu diakhiri. Bertolak dari hal tersebut, maka dalam proses komunikasi data serial juga disertakan bit awal dan bit akhir. Jika tidak ada karakter yang dikirim, maka bit tanda yang selalu bernilai 1 akan dikirim terusmenerus. Bit awal (start bit) yang selalu bernilai 0 (null) akan menandai awal dari pengiriman suatu karakter. Setelah bit awal, maka selalu diikuti bit data dan bit parity jika ada. Dan akhirnya terdapat satu atau dua bit yang menandakan akhir dari karakter yang dikirimkan. Bit-bit inilah yang dinamakan stop bit, dan kombinasi jumlahnya adalah satu atau dua bit. 2.5.1 RS 232 6 RS 232 merupakan salah satu perangkat yang berfungsi sebagai antarmuka (interfacing) komputer ke peralatan luar dengan pengiriman data secara serial (per bit). Recomended Standard Number 232 digunakan dengan data biner serial yang ditransmisikan untuk berkomunikasi dengan peralatan lain. Standar komunikasi RS 232 adalah standard komunikasi serial paling umum digunakan terutama dalam komputer IBM PC dan peralatan lain yang kompatible. Komunikasi serial RS 232 dijalankan dengan menggunakan perangkat standart yang berhubungan dengan dua tipe peralatan yaitu data terminal equipment (DTE) dan data communication terminating (DCE). Proses transfer data secara serial memerlukan penunjang peralatan lain untuk pengiriman data berupa DTE untuk masing-masing terminal. Pada prinsipnya proses pengiriman data dengan menggunakan serial interface sangat sederhana. Data ditransfer dikirim dari satu ke terminal ke terminal yang lain begitu pula sebaliknya. Proses data dari satu komputer ke komputer yang lain memerlukan jalur komunikasi data agar data dapat di terima baik oleh penerima. Jalur ini dikenal dengan protokol. Protokol digunakan start bit, stop bit, parity bit dsb. Semua protokol komunikasi merupakan fungsi mikrokode dalam sistem yang harus di atur dahulu sebelum program dijalankan.
6
Darma, Putu Rio A., Pengembangan Konverter Dari Teks Ke Fonem Pada Mikrokontroler Untuk Aplikasi Alat Bantu Wicara, Proyek Akhir, Poltek Elektronika Negeri Surabaya - ITS, 2006, hal 45.
12
2.5.2 RS 485 7 RS 485 adalah teknik komunikasi data serial yang dikembangkan di tahun 1983 di mana dengan teknik ini, komunikasi data dapat dilakukan pada jarak yang cukup jauh yaitu 1,2 Km. Selain dapat digunakan untuk jarak yang jauh teknik ini juga dapat digunakan untuk menghubungkan 32 unit beban sekaligus hanya dengan menggunakan dua buah kabel saja tanpa memerlukan referensi ground yang sama antara unit yang satu dengan unit lainnya. SN75176 adalah IC yang menjadi komponen utama Modul SR485 yang didisain untuk komunikasi data secara bidirectional atau multipoint dengan Standard ANSI EIA/TIA-422-B dan ITU V11. Data yang ditransmisikan oleh IC ini dikirim dalam bentuk perbedaan tegangan yang ada pada kaki A dan B dari SN75176. SN75176 berfungsi sebagai pengirim data atau penerima data tergantung dari kondisi kaki-kaki kontrolnya yaitu DE dan RE. Apabila kaki DE berlogika 0 dan RE berlogika 0, maka SN75176 berfungsi sebagai penerima data sedangkan bila kaki DE berlogika 1 dan RE berlogika 1 maka SN75176 berfungsi sebagai pengirim.
Gambar 2.7 Komunikasi Data Master dan 32 Slave Sistem komunikasi dengan menggunakan RS485 ini dapat digunakan untuk komunikasi data antara 32 unit peralatan elektronik hanya dalam dua kabel saja. Selain itu, jarak komunikasi dapat mencapai 1,6 km dengan digunakannya kabel AWG-24 twisted pair. Seperti yang ditunjukkan pada Gambar 2.7. Agar komunikasi data pada sistem multipoint yang dapat digunakan untuk 32 unit peralatan elektronik tidak terjadi saling bentrok antar data, maka seperti layaknya pada forum diskusi yang benar, pada kondisi awal semua peserta menjadi pendengar terlebih dahulu. Kemudian pada saat salah seorang peserta diskusi berbicara, maka
7
…, Komunikasi Data Dengan Menggunakan Teknik RS485, Delta-electronic, 2003, hal
1-2.
13
peserta yang lain harus menunggu peserta yang berbicara tersebut menyelesaikan pembicaraan. Apabila peserta tersebut selesai berbicara, maka peserta tersebut kembali menjadi pendengar sedangkan yang lain baru boleh berbicara untuk memberikan tanggapan atau mengajukan usul yang lain. Hal ini diperlukan agar forum diskusi dapat berjalan dengan baik dan tertib. Demikian pula pada komunikasi RS485, semua peralatan elektronik berada pada posisi penerima hingga salah satu memerlukan untuk mengirimkan data, maka peralatan tersebut akan berpindah ke mode pengirim, mengirimkan data dan kembali ke mode penerima. Setiap kali peralatan elektronik tersebut hendak mengirimkan data, maka terlebih dahulu harus diperiksa, apakah jalur yang akan digunakan sebagai media pengiriman data tersebut tidak sibuk. Apabila jalur masih sibuk, maka peralatan tersebut harus menunggu hingga jalur sepi. Agar data yang dikirimkan hanya sampai ke peralatan elektronik yang dituju, misalkan ke salah satu Slave, maka terlebih dahulu pengiriman tersebut diawali dengan Slave ID dan dilanjutkan dengan data yang dikirimkan. Peralatan elektronik-peralatan elektronik yang lain akan menerima data tersebut, namun bila data yang diterima tidak mempunyai ID yang sama dengan Slave ID yang dikirimkan, maka peralatan tersebut harus menolak atau mengabaikan data tersebut. Namun bila Slave ID yang dikirimkan sesuai dengan ID dari peralatan elektronik yang menerima, maka data selanjutnya akan diambil untuk diproses lebih lanjut.
14
BAB III PERANCANGAN DAN PEMBUATAN ALAT Pembuatan sistem kontrol lampu ruang kuliah untuk mendeteksi ada dan tidaknya orang dalam ruangan yang dipantau secara terpusat dalam ruang kontrol ini memiliki 2 tahap utama, yaitu perancangan perangkat keras dan perangkat lunak. Perancangan perangkat keras meliputi perancangan rangkaian power supply, rangkaian mikrokontroler ATmega16, rangkaian sensor, rangkaian relay, rangkaian RS232 dan rangkaian RS232 to RS485. Untuk perancangan perangkat lunak meliputi program berbasis bahasa C yang disuntikkan ke mikrokontroler ATmega16 untuk mengatur nyala lampu, dan software Delphi untuk menampilkan pada PC. 3.1 Perancangan Perangkat Keras Diagram fungsional proses secara keseluruhan beserta perencanaan perangkat keras secara keseluruhan. Pada Gambar 3.1 ditunjukkan blok diagram keseluruhan rangkaian. RUANGAN 1 SENSOR
LAMPU
SISTEM MIKROKONTROLER
RUANGAN 2 LAMPU
RUANG KONTROL
RELAY
RELAY
RS232 RS485
RS485 RS232
PC MONITOR
SENSOR
Gambar 3.1 Fungsional Rangkaian Keseluruhan 3.1.1 Ruangan 1 Pada ruangan 1 ini terdapat beberapa komponen utama yaitu, sensor, lampu, dan relay. Dibawah ini akan dijelaskan tiap komponen yang diperlukan pada ruangan 1.
15
3.1.1.1 Perancangan Power Supply Power supply digunakan untuk memberikan input tegangan pada keseluruhan komponen yang terdapat pada sistem alat ini, yaitu pada rangkaian sistem minimum mikrokontroler, sensor , relay, dan rangkaian RS232 to RS485. Rangkaian relay membutuhkan tegangan sebesar 12V, sedangkan untuk rangkaian sistem minimum mikrokontroler, rangkaian sensor, dan rangkaian RS232 to RS485 hanya membutuhkan tegangan sebesar 5V. Karena kebutuhan tegangan tersebut maka dibuat power supply yang mengeluarkan tegangan sebesar 5V dan 12V. Power supply tersebut menggunakan komponen dioda 1N5403, resistor 0,47ohm/5W, elko 2200µF/25V dan 100µF/16V, IC regulator 7805 dan 7812, transistor PNP TIP2955, serta resistor 1kΩ dan LED. Seperti yang ditunjukkan pada Gambar 3.2.
Gambar 3.2 Rangkaian Power Supply 3.1.1.2 Perancangan Rangkaian Sensor Rangkaian sensor terdiri dari pemancar dan penerima cahaya inframerah (D1 dan D2) yang dirancang dengan menggunakan dioda inframerah dan photodioda seperti yang ditunjukkan pada Gambar 3.3. Tegangan yang diperlukan pada Vcc sebesar 5V. Dengan mengacu pada data sheet diperoleh informasi arus dioda inframerah mulai 5mA sampai dengan 2A dapat mengaktifkan D1. Dengan memperhatikan hal ini yang diintegrasikan dengan sensitifitas terhadap jarak 1 m maka dibutuhkan V 5V , maka arus 5mA. Dengan menggunakan rumus R = = I 5mA didapatkan tahanan seri R1 1KΩ. Dan untuk rangkaian penerima arus photodioda mulai 25µA sampai dengan 40µA dapat mengaktifkan D2. Dengan memperhatikan hal ini yang diintegrasikan dengan sensitifitas
16
terhadap jarak 1m maka dibutuhkan arus 25µA. Maka dengan rumus V 5V didapatkan tahanan seri R2 200KΩ. R= = I 25µA
Gambar 3.3 Rangkaian Sensor Berikut ini adalah tabel kebenaran dari sensor, yang ditunjukkan pada Tabel 3.1, Tabel 3.2, dan Tabel 3.3. Tabel 3.1 Exitation Table Sensor 1 dan Sensor 2 Sensor 1 0 0 1 1
Sensor 2 (t+1) 0 1 0 1
Counter Keadaan saat ini Keadaan saat ini Keadaan saat ini Tambah 1
Berdasarkan Tabel 3.1 dapat diketahui bahwa counter akan aktif saat sensor 1 dan kemudian sensor 2 bernilai ’1’. Tabel 3.2 Exitation Table Sensor 3 dan Sensor 2 Sensor 3 0 0 1 1
Sensor 2 (t+1) 0 1 0 1
Counter Keadaan saat ini Keadaan saat ini Keadaan saat ini Kurang 1
Berdasarkan Tabel 3.2 dapat diketahui bahwa counter akan aktif saat sensor 3 dan kemudian sensor 2 bernilai ’1’.
17
Tabel 3.3 Present State Next State Sensor Sensor 1 0 0 0 0 1 1 1 1
Sensor 2 0 0 1 1 0 0 1 1
Sensor 3 0 1 0 1 0 1 0 1
Sensor 2 (t+1) 0 1 0 1 0 1 0 1
Counter Keadaan saat ini Keadaan saat ini Keadaan saat ini Kurangi 1 Keadaan saat ini Keadaan saat ini Tambah 1 Keadaan saat ini
Berdasarkan Tabel 3.3 dapat diketahui bahwa counter akan aktif saat sensor 1 dan sensor 2 bernilai ’1’ dan juga saat sensor 3 dan sensor 2 bernilai ’1’. Saat sensor 1 dan sensor 2 bernilai ’1’ maka counter akan menghitung naik dan sebaliknya saat sensor 3 dan sensor 2 bernilai ’1’ maka counter akan menghitung turun. 3.1.1.3 Perancangan Relay Untuk dapat menyalakan lampu yang membutuhkan tegangan sebesar 220V, maka diperlukan sebuah rangkaian relay yang dapat memenuhi hal tersebut. Rangkaian yang digunakan ditunjukkan pada Gambar 3.4.
Gambar 3.4 Rangkaian Relay Rangkaian relay ini hanya membutuhkan komponen dioda, relay, kapasitor, dan transistor. Komponen relay ini membutuhkan tegangan sebesar 12V, dan akan switch jika transistor sudah short (men-trigger), dan kemudian lampu akan menyala karena sudah terhubung dengan tegangan 220V. 18
3.1.2 Ruangan 2 Pada ruangan 2 ini terdapat jumlah pintu dan lampu sama dengan jumlah pintu dan lampu pada ruangan 1. Sehingga dibutuhkan rangkaian sama dengan rangkaian ruangan 1 yang penjelasannya dapat dilihat pada Sub bab 3.1.1. 3.1.3 Perancangan Sistem Rangkaian Perancangan sistem rangkaian meliputi perancangan sistem minimum dan perancangan rangkaian downloder. 3.1.3.1 Perancangan Sistem Minimum ATmega 16
Gambar 3.5 Rangkaian Sistem Minimum ATmega16 Minimum sistem ini merupakan sistem kontrol dari keseluruhan sistem kerja pada alat ini. Pada proyek ini digunakan sistem minimum yang berbasis pada mikrokontroler ATmega16, digunakan ATmega16 19
karena bahasa pemrograman AVR tersebut adalah bahasa C yaitu bahasa pemrograman tingkat menengah (bahasa instruksi program mendekati bahasa manusia) sehingga lebih mudah untuk membuat atau menerapkan suatu algoritma program. Kelebihan lainnya adalah setiap pin dalam satu port dapat ditentukan sebagai input atau output secara mudah karena didalamnya sudah dilengkapi fasilitas tersendiri untuk inisialisasi. Rangkaian yang dipakai seperti ditunjukkan pada Gambar 3.5. Pada sistem alat ini untuk pembagian port-port sebagai I/O dapat ditunjukkan pada Tabel 3.4 berikut: Tabel 3.4 Pembagian Port pada ATmega16 PORT PORTA PORTB PORTC PORTD
KEPERLUAN Dihubungkan dengan sensor Tidak dipakai Dihubungkan dengan relay Dihubungkan dengan serial port
3.1.3.2 Rangkaian Downloader
Gambar 3.6 Rangkaian ISP Downloader 8 Gambar 3.6 adalah gambar ISP downloader (in-system programming), IC yang digunakan adalah IC 74LS244. Untuk interfacing dengan PC menggunakan kabel dan port paralel DB25. Pada 8
…, Atmel AVR ISP Dongle, Efy Lab, 2005, hal 1. 20
rangkaian diatas ISP port dihubungkan dengan port-port yang ada pada sistem minimum ATmega16. 3.1.4 Perancangan Rangkaian Serial Dalam pembuatan alat ini dibutuhkan komunikasi serial untuk menghubungkan sistem mikrokontroler ke PC yaitu, rangkaian RS232 dan RS232 to RS485. 3.1.4.1 Perancangan RS232
Gambar 3.7 Rangkaian RS232 9 Rangkaian RS232 ini hanya membutuhkan MAX232 dan kapasitor serta konektor yang dihubungkan ke DB9 yang kemudian disambungkan ke rangkaian RS232 to RS485. Rangkaian yang digunakan ditunjukkan pada Gambar 3.7. 3.1.4.2 Perancangan RS232 to RS485 Untuk perancangan RS232 to RS485 digunakan rangkaian seperti Gambar 3.8. Rangkaian RS232 to RS485 ini membutuhkan rangkaian RS232 yang dihubungkan ke IC 75176 (sebagai pengganti MAX485) yang kemudian akan dihubungkan ke rangkaian RS485 to RS232 yang lain.
9
…, The Printed Circuit Board (PCB) http://www.airborn.com.au/layout/232cnv10.gif, tanggal akses 21 Mei 2008. 21
Layout,
Gambar 3.8 Rangkaian RS232 to RS485 10 3.1.5 Ruang Kontrol Didalam ruang kontrol dibutuhkan converter RS485 to RS232, PC, Monitor untuk memantau tiap ruangan, dan program monitoring dengan menggunakan bahasa Delphi. 3.1.5.1 Perancangan RS485 to RS232
Gambar 3.9 Rangkaian RS485 to RS232 11
10 11
…, RS232/RS485 Converter User’s Guide, RMV Electronics, 2002, hal 5. …, RS232/RS485 Converter User’s Guide, RMV Electronics, 2002, hal 5. 22
Untuk perancangan RS485 to RS232 digunakan rangkaian seperti Gambar 3.9. Rangkaian RS485 to RS232 ini membutuhkan rangkaian RS232 yang dihubungkan ke IC 75176 (sebagai pengganti max485) yang kemudian akan dihubungkan ke rangkaian RS485 to RS232 yang lain. 3.1.5.2 Personal Computer (PC) PC dihubungkan ke RS485, kemudian PC menerima data dari mikrokontroler lalu diolah oleh program Delphi yang kemudian ditampilkan pada Monitor. 3.2 Perencanaan dan Perancangan Perangkat Lunak Perangkat lunak yang direncanakan adalah perangkat lunak untuk mendukung perangkat keras. Dalam perencanaannya dibagi menjadi dua bagian, pertama perencanaan perangkat lunak untuk mikrokontroler ATmega 16 dengan menggunakan program CodeVision C compiler, dan perencanaan perangkat lunak pada PC menggunakan software Delphi 7.0 untuk tampilan pada PC seperti yang dimaksud pada Sub bab 3.1.5.2. Pada Gambar 3.11 dapat dilihat flowchart dari keseluruhan sistem, dengan penjelasan yang dapat dikelompokkan menjadi algoritma sensor, algoritma mikrokontroler, dan algoritma relay. Algoritma Sensor Pada tiap ruangan terdapat tiga sensor penerima dan pemancar. Jika sensor penerima 1 terhalang dan kemudian sensor penerima 2 terhalang maka counter akan menambah hitungan sebanyak 1, dan jika sensor penerima 3 terhalang dan kemudian sensor penerima 2 terhalang maka counter akan mengurangi hitungan sebanyak 1. Algoritma Mikrokontroler Mikrokontroler menerima masukan data dari sensor penerima. Dan jika counter menghitung 1 maka mikrokontroler akan mengaktifkan relay yang kemudian menyalakan lampu. Sebaliknya jika counter mengitung 0 maka mikrokontroler akan mematikan relay yang kemudian mematikan lampu.
23
Algoritma Relay Relay saat menerima masukan logic ’1’ dari mikrokontroler maka relay akan menghubungkan listrik 220V dengan lampu yang ada pada ruangan sehingga lampu akan nyala. Saat relay menerima masukan logic ’0’ dari mikrokontroler maka relay akan memutus hubungan listrik 220V dengan lampu sehingga lampu akan mati. Listing program //--------------RUANGAN 1---------------if(sensor11==1) { delay_ms(400); if(sensor12==1) cr1=cr1+1; if(sensor12==0) screen=1; } if(sensor13==1) { delay_ms(400); if(sensor12==1) cr1=cr1-1; if(sensor12==0) screen=1; } if(cr1<=0)cr1=0; //-------------RELAY 1--------------if(cr1<=1) { PORTC.7=1; PORTC.6=1; PORTC.5=1; PORTC.4=1; } if(cr1==0) { PORTC.7=0; PORTC.6=0; PORTC.5=0; PORTC.4=0; } //--------------RUANGAN 2---------------if(sensor21==1) { delay_ms(400); if(sensor22==1) cr2=cr2+1; if(sensor22==0) screen=1; } if(sensor23==1) { delay_ms(400); if(sensor22==1) cr2=cr2-1; if(sensor22==0) screen=1; } if(cr2<=0)cr2=0; //-------------RELAY 2--------------if(cr2<=1) { PORTC.3=1; PORTC.2=1; PORTC.1=1; if(cr2==0) { PORTC.3=0; PORTC.2=0; PORTC.1=0;
PORTC.0=1; } PORTC.0=0; }
Gambar 3.10 Listing Program Utama
24
Flowchart rangkaian
Gambar 3.11 Flowchart Rangkaian 25
3.2.1 CodeVision Untuk Mikrokontroler ATmega16 Program ini digunakan untuk upload program dari PC ke mikrokontroler sesuai dengan program yang dibutuhkan untuk menjalankan sistem kontrol lampu ruang kuliah untuk mendeteksi ada dan tidaknya orang dalam ruangan yang dipantau secara terpusat dalam ruang kontrol. 3.2.2 Delphi 7.0 Bahasa pemrograman delphi digunakan untuk komunikasi serial antara mikrokontroler dan PC sehingga data pada mikrokontroler dapat dilihat pada PC. 3.3 Pembuatan Alat Berdasarkan perancangan alat terebut maka dibuatlah komponenkomponen pendukung yang dibutuhkan untuk keperluan sistem. Komponen-komponen tersebut antara lain adalah: 1. Rangkaian Power Supply 2. Rangkaian Sensor 3. Rangkaian Relay 4. Sistem Minimum Mikrokontroler ATmega16 5. Rangkaian RS232 dan Converter RS232ÅÆRS485 Dan berikut ini adalah bentuk fisik dari tiap-tiap komponen pendukung.
Gambar 3.12 Bentuk Fisik Rangkaian Power Supply
26
Gambar 3.13 Bentuk Fisik Rangkaian Sensor
Gambar 3.14 Bentuk Fisik Rangkaian Relay
Gambar 3.15 Bentuk Fisik Rangkaian Mikrokontroler ATmega16
27
Gambar 3.16 Bentuk Fisik Rangkaian RS232
Gambar 3.17 Bentuk Fisik Rangkaian Converter RS232ÅÆRS485
28
BAB IV PENGUJIAN DAN ANALISA DATA Untuk mengetahui apakah tujuan-tujuan dari pembuatan alat ini telah telaksana atau tidak, perlu dilakukan pengujian dan analisa terhadap alat yang dibuat. Dan sebagai bagian yang tak terpisahkan adalah adanya proses evaluasi sehingga akan dapat dilakukan langkahlangkah positif guna membawa alat ini ke arah yang lebih baik. 4.1 Pengujian Rangkaian Power supply Pengujian rangkaian power supply telah dilakukan dengan menggunakan rangkaian seperti pada Gambar 3.2. Rangkaian power supply digunakan untuk menyediakan supply sebesar +5 Volt dan +12 Volt. Pengujian dilakukan dengan menggunakan AVOmeter digital ALDA DT 830B, dan pengujian terhadap rangkaian ini menghasilkan data seperti tertuang dalam Tabel 4.1 berikut : Tabel 4.1 Data Pengukuran Rangkaian Power Supply
Pengukuran ke1 2 3 4 Σ Rata-rata
+5 V
+12 V
Vout_5V (V) 5,03 5,01 5,02 5,01 5,02
Vout_12V (V) 11,88 11,86 11,84 11,86 11,86
% Error untuk supply +5 Volt
= = % Error untuk supply +12 Volt = =
[(5-5,02)/5] x 100 % 0,4 % [(12-11.86)/12] x 100 % 1,16 %
% Error sebesar 0,4 % untuk supply +5 Volt dan 1,16 % untuk supply +12 Volt masih tergolong kecil dan berada dalam batas toleransi, sehingga tegangan sebesar 5,02 Volt dan 11,86 Volt dapat digunakan untuk menyuplai rangkaian lainnya. 29
4.2 Pengujian Rangkaian Sensor Pengujian pada rangkaian sensor inframerah dan photodioda telah dilakukan dengan menggunakan rangkaian seperti pada Gambar 3.3. Pada transmitter inframerah diberikan tegangan sebesar 5 Volt dan resistor 1 KΩ, sedangkan pada photodioda diberikan tegangan sebesar 5 Volt dan resistor 200 KΩ. Pengujian pertama dilakukan dengan menggunakan AVOmeter analog SANWA YX360TRF. Pengujian kedua dengan menggunakan AVOmeter digital ALDA DT 830B. Tabel 4.2 Data Pengujian Sensor Vin inframerah (V)
Jarak inframerah dan photodioda (cm)
5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5
10 20 30 40 50 60 70 80 90 100 101 102 103 104 105 110 sensor terhalang
Vout photodioda (V) AVO I AVO II 0,05 0,07 0,15 0,15 0,25 0,28 0,37 0,94 0,72 1,73 0,84 2,36 0,95 2,71 1,05 2,89 1,10 3,04 1,20 3,15 1,20 3,20 1,20 3,20 1,40 3,37 1,40 3,37 1,50 3,41 1,60 3,60 2,22 3,61
Jadi berdasarkan Tabel 4.2 diatas dapat diambil kesimpulan bahwa sensor pemancar dan penerima dapat dipakai sampai jarak 1 meter. Dan untuk pengukuran lebih dari 1 meter sensor penerima sudah tidak akurat lagi dikarenakan, Vout sensor penerima jika sudah melebihi batas 1 meter hampir mendekati dengan Vout ketika sensor terhalang. Dan kemudian dari Vout sensor penerima ini akan dihubungkan dengan port A mikrokontroler yang kemudian digunakan untuk mendeteksi orang yang melewati pintu ruangan. 30
Tabel 4.3 Pengujian Sensor Sensor 1 0 0 0 0 1 1 1 1
Sensor 2 0 0 1 1 0 0 1 1
Sensor 3 0 1 0 1 0 1 0 1
Counter Keadaan saat ini Keadaan saat ini Keadaan saat ini Kurangi 1 Keadaan saat ini Keadaan saat ini Tambah 1 Keadaan saat ini
Berdasarkan Tabel 4.3 dapat diketahui bahwa counter akan aktif saat sensor 1 dan sensor 2 bernilai ’1’ dan juga saat sensor 3 dan sensor 2 bernilai ’1’. Saat sensor 1 dan sensor 2 bernilai ’1’ maka counter akan menghitung naik dan sebaliknya saat sensor 3 dan sensor 2 bernilai ’1’ maka counter akan menghitung turun. Dan ketika semua sensor dalam keadaan terhalang maka counter tidak dapat melakukan penghitungan. 4.3 Pengujian Rangkaian Relay Pengujian dilakukan terhadap rangkaian pada Gambar 3.4. Pengujian rangkaian relay dilakukan dengan menerapkan program sederhana pada mikrokontroler, dimana relay disambungkan mikrokontroler pada port C, dimana aplikasinya adalah untuk menyalakan dan mematikan relay , dimana setiap tombol status ON relay diperoleh jika relay mendapat input logic ”1”. Sedangkan jika input adalah logic ”0” maka relay akan OFF. Listing program yang diberikan adalah seperti pada Gambar 4.1. Jika dijalankan program ini akan membuat relay aktif dan setelah selang waktu 1,5 detik maka relay akan mati dan selang 1,5 detik lagi relay akan aktif kembali dan begitu seterusnya. Ketika program sudah dijalankan maka hasil output relay akan menjadi seperti dalam Tabel 4.4. Data dari Tabel 4.4 mengindikasikan bahwa rangkaian relay berada dalam keadaan dapat digunakan (tidak rusak) dan dapat digunakan menjadi salah satu bagian alat untuk pengaturan nyala lampu.
31
Gambar 4.1 Listing Program Tes Relay Tabel 4.4 Pengujian Rangkaian Relay Relay 1 Aktif
Relay 2 Aktif delay
Mati
Mati delay
Aktif
Aktif delay
Mati
Mati delay Dan seterusnya
4.4 Pengujian Rangkaian Mikrokontroler Pengujian rangkaian mikrokontroler ATmega16 dengan menggunakan rangkaian pada Gambar 3.5 telah dilakukan dengan menerapkan program sederhana pada mikrokontroler tersebut, dimana aplikasinya adalah untuk menyalakan dan mematikan 8 indikator LED 32
secara terus menerus. Port output yang digunakan adalah PORTA. Listing program yang diberikan adalah seperti pada Gambar 4.2 Ketika sudah dihubungkan ke LED tester 8 bit, maka tampilan LED akan menjadi seperti dalam Tabel 4.5 berikut : Tabel 4.5 Pengujian Rangkaian Mikrokontroler ATmega16 pada LED Tester. D7 1
D6 1
D5 1
0
0
0
1
1
1
0
0
0
D4 D3 D2 1 1 1 Delay 0 0 0 Delay 1 1 1 Delay 0 0 0 Delay Dan seterusnya
D1 1
D0 1
0
0
1
1
0
0
Gambar 4.2 Listing Program LED Tester 33
Data dari Tabel 4.5 mengindikasikan bahwa mikrokontroler ATmega16 dapat menyalakan dan mematikan LED tester sesuai program yang diberikan. Dan ini menandakan bahwa mikrokontroler ATmega16 berada dalam keadaan dapat digunakan (tidak rusak) dan dapat diisi dengan program yang lebih kompleks yaitu program pengaturan nyala lampu. 4.5 Pengujian Rangkaian RS 232ÅÆ RS485 Rangkaian ini digunakan untuk komunikasi serial dari mikrokontroler ke PC. Pengujian berdasarkan rangkaian pada Gambar 3.8. Pengujian rangkaian dilakukan dengan menghubungkan mikrokontroler ATmega16 ke rangkaian RS232, rangkaian RS 232ÅÆ RS485, keypad dan kemudian dihubungkan ke PC. Selanjutnya membuat program pada AVR dan melihat pada hyperterminal. Program yang diberikan pada mikrokontroler adalah seperti pada Gambar 4.3.
Gambar 4.3 Listing Program Tes Serial
34
Berdasarkan program yang diberikan didapatkan hasil pengujian sebagai berikut : • Jika ditekan huruf ‘a’ pada keyboard maka akan keluar tampilan sebagai berikut :
Gambar 4.4 Pada Hyperterminal 1 •
Jika ditekan angka ‘1’ pada keypad maka akan keluar tampilan sebagai berikut :
Gambar 4.5 Pada Hyperterminal 2 Dari tampilan tersebut Gambar 4.4 dan Gambar 4.5 maka dapat dilihat bahwa komunikasi serial dapat dilakukan antara mikrokontroler dan PC. 4.6 Pengujian Alat Secara Keseluruhan Terdapat 5 komponen utama dari hardware alat ini, yaitu : 1. Rangkaian Power Supply 2. Rangkaian Sensor 3. Rangkaian Relay 35
4. 5.
Sistem Minimum Mikrokontroler ATmega16 Rangkaian RS232 dan Converter RS232ÅÆRS485
Keseluruhan kerja alat ini adalah ketika power supply dinyalakan, maka power supply menyuplai tegangan untuk setiap komponen hardware seperti yang telah disebutkan sebelumnya. Rangkaian mikrokontroler , rangkaian sensor, dan rangkaian converter membutuhkan tegangan sebesar 5 Volt. Dan untuk rangkaian relay membutuhkan tegangan 12 Volt. Mikrokontroler terhubung dengan rangkaian sensor, rangkaian converter dan rangkaian relay. Rangkaian sensor dihubungkan dengan port A mikrokontroler. Rangkaian RS232 dihubungkan dengan port D mikrokontroler yaitu pin 0 (Rx) dan pin 1 (Tx). Dan untuk relay dihubungkan dengan port C, listrik 220Volt, dan lampu. Mikrokontroler diprogram untuk menerima data masukan dari sensor. Saat data dari sensor berupa logic ’1’ maka berarti sensor mendeteksi adanya orang yang melewati pintu dan relay akan aktif dan lampu akan menyala dalam ruangan tersebut. Dan jika logic ’0’ maka sensor tidak mendeteksi adanya orang yang melewati pintu dan relay tidak bekerja atau jika sebelumnya dalam keadaan aktif maka relay akan mati yang kemudian akan mematikan lampu. Lalu kemudian mikrokontroler akan menerima data dan mengirimkannya ke PC melalui converter RS232ÅÆRS485.
Gambar 4.6 Tampilan Pada PC Sebelum Alat Dijalankan
36
Pada Gambar 4.6 dapat dilihat tampilan pada PC sewaktu alat belum dijalankan dan dapat dilihat bahwa pada layar tidak terdapat tulisan apapun karena alat belum dijalankan.
Gambar 4.7 Tampilan Pada PC Saat Belum Mendeteksi Adanya Orang di dalam Ruangan Gambar 4.7 menunjukkan tampilan pada PC saat sensor belum mendeteksi adanya orang yang melewati pintu, dan dapat dilihat pada layar terdapat tulisan ” Ruangan 1 = 0 orang ” dan ” Ruangan 2 = 0 orang ”. Karena sensor belum mendeteksi adanya orang yang melewati pintu maka counter belum menghitung, jadi saat itu counter = 0.
Gambar 4.8 Tampilan Pada PC Saat Mendeteksi Adanya Orang di dalam Ruangan 1 37
Gambar 4.9 Tampilan Pada PC Saat Mendeteksi Adanya Orang di dalam Ruangan 2 Dan Gambar 4.8 dan Gambar 4.9 menunjukkan tampilan pada PC saat sensor mendeteksi adanya orang yang melewati pintu, dan dapat dilihat pada Gambar 4.8 pada layar terdapat tulisan ” Ruangan 1 = 5 orang ” dan ” Ruangan 2 = 0 orang ”. Dan pada Gambar 4.9 terlihat pada layar terdapat tulisan ” Ruangan 1 = 0 orang ” dan ” Ruangan 2 = 2 orang ”. Saat sensor mendeteksi adanya orang yang melewati pintu maka counter akan menghitung naik saat sensor 1 dan sensor 2 yang terhalang.
Gambar 4.10 Tampilan Pada PC Saat Mendeteksi Adanya Orang di dalam Ruangan 1 dan 2 38
Dan Gambar 4.10 menunjukkan tampilan pada PC saat sensor mendeteksi adanya orang yang melewati pintu, dan dapat dilihat pada layar terdapat tulisan ” Ruangan 1 = 3 orang ” dan ” Ruangan 2 = 1 orang ”. Saat sensor mendeteksi adanya orang yang melewati pintu maka counter akan menghitung naik saat sensor 1 dan sensor 2 yang terhalang, dan counter akan menghitung turun saat sensor 3 dan sensor 2 yang terhalang. Saat sensor mendeteksi adanya orang yang melewati pintu maka counter akan menghitung naik saat sensor 1 dan sensor 2 yang terhalang, dan counter akan menghitung turun saat sensor 3 dan sensor 2 yang terhalang.
39
Halaman kosong!!!
40
BAB V PENUTUP Dari perancangan dan pengujian alat, dapat ditarik kesimpulan dan saran mengenai Tugas Akhir sebagai berikut : 5.1 Kesimpulan 1) Sistem dapat digunakan sampai jarak 1 meter karena menggunakan resistor 1KΩ pada inframerah dan 200KΩ pada photodioda, jika ingin jarak yang lebih dari 1 meter dapat mengganti resistor pada inframerah dengan yang lebih kecil. 2) Dari Tabel 4.3 didapat bahwa sensor tidak dapat mendeteksi saat orang yang melewati pintu dalam keadaan berdesakan atau dalam antrian, dan saat orang yang masuk dalam keadaan bersama-sama. 3) Jika sensor mendeteksi adanya orang yang melewati pintu maka sensor akan mengirim masukan ke mikrokontroler dan counter akan menghitung naik saat orang masuk dan menghitung turun saat orang keluar. 4) Data dari counter digunakan untuk mengatur relay, saat counter sama dengan 0 maka relay off dan saat counter lebih dari atau sama dengan 1 maka relay aktif. Saat relay aktif maka lampu akan menyala. 5) Tiap ruangan dapat dipantau dari ruang kontrol. 5.2 Saran 1) Sebaiknya digunakan 2 pintu yang berbeda untuk masuk dan keluar untuk menghindari kesalahan penghitungan oleh counter. 2) Ditambah sensor berat sehingga sistem akan lebih presisi.
41
Halaman kosong!!!
42
DAFTAR PUSTAKA ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾
…, 8-bit AVR Microcontroller with 16K Bytes In-System Programmable Flash, Atmel, 2003. …, +5V-Powered, Multichannel RS-232 Drivers/Receivers, MAXIM-IC, 2003. …, Atmel AVR ISP Dongle, Efy Lab, 2005. …, DT-I/O Relay Board, Innovative Electronics, 2005. …, Komunikasi Data Dengan Menggunakan Teknik RS485, Delta-electronic, 2003. …, Pemrograman Borland Delphi 7, Yogyakarta: Andi Offset, 2003. …, RS232/RS485 Converter User’s Guide, RMV Electronics, 2002. …, SN75176A Differential Bus Transceiver, Texas Instrument, 1995. …, The Printed Circuit Board (PCB) Layout, http://www.airborn.com.au/layout/232cnv10.gif, tanggal akses 21 Mei 2008. Arifin, Irwan , Elektronika 1, Gunadarma, 2004. Darma, Putu Rio A., Pengembangan Konverter Dari Teks Ke Fonem Pada Mikrokontroler Untuk Aplikasi Alat Bantu Wicara, Proyek Akhir, Poltek Elektronika Negeri Surabaya - ITS, 2006.
43
Halaman kosong!!!
44
LAMPIRAN LISTING PROGRAM MIKROKONTROLER /***************************************************** This program was produced by the CodeWizardAVR V1.25.6 Professional Automatic Program Generator © Copyright 1998-2007 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com Chip type : ATmega16 Program type : Application Clock frequency : 11.059200 MHz Memory model : Small External SRAM size : 0 Data Stack size : 256 *****************************************************/ #include <mega16.h> #asm .equ __lcd_port=0x18 ;PORTB #endasm #include
#define RXB8 1 #define TXB8 0 #define UPE 2 #define OVR 3 #define FE 4 #define UDRE 5 #define RXC 7 #define FRAMING_ERROR (1<
A-1
status=UCSRA; data=UDR; if ((status & (FRAMING_ERROR | PARITY_ERROR | DATA_OVERRUN))==0) { rx_buffer[rx_wr_index]=data; if (++rx_wr_index == RX_BUFFER_SIZE) rx_wr_index=0; if (++rx_counter == RX_BUFFER_SIZE) { rx_counter=0; rx_buffer_overflow=1; }; }; } #ifndef _DEBUG_TERMINAL_IO_ // Get a character from the USART Receiver buffer #define _ALTERNATE_GETCHAR_ #pragma used+ char getchar(void) { char data; while (rx_counter==0); data=rx_buffer[rx_rd_index]; if (++rx_rd_index == RX_BUFFER_SIZE) rx_rd_index=0; #asm("cli") --rx_counter; #asm("sei") return data; } #pragma used#endif #define TX_BUFFER_SIZE 8 char tx_buffer[TX_BUFFER_SIZE]; #if TX_BUFFER_SIZE<256 unsigned char tx_wr_index,tx_rd_index,tx_counter; #else unsigned int tx_wr_index,tx_rd_index,tx_counter; #endif interrupt [USART_TXC] void usart_tx_isr(void) { if (tx_counter) { --tx_counter; UDR=tx_buffer[tx_rd_index]; if (++tx_rd_index == TX_BUFFER_SIZE) tx_rd_index=0; }; } #ifndef _DEBUG_TERMINAL_IO_ // Write a character to the USART Transmitter buffer #define _ALTERNATE_PUTCHAR_ #pragma used+
A-2
void putchar(char c) { while (tx_counter == TX_BUFFER_SIZE); #asm("cli") if (tx_counter || ((UCSRA & DATA_REGISTER_EMPTY)==0)) { tx_buffer[tx_wr_index]=c; if (++tx_wr_index == TX_BUFFER_SIZE) tx_wr_index=0; ++tx_counter; } else UDR=c; #asm("sei") } #pragma used#endif #include <stdio.h> #include <stdlib.h> #include <delay.h> //-------ruangan 1------------#define sensor11 PINA.0 #define sensor12 PINA.1 #define sensor13 PINA.2 //-------ruangan 2------------#define sensor21 PINA.5 #define sensor22 PINA.6 #define sensor23 PINA.7 int cr1,cr2; char count[48]; unsigned char screen; unsigned char i; void main(void) { PORTA=0xFF; DDRA=0x00; PORTB=0x00; DDRB=0x00; PORTC=0x00; DDRC=0xFF; PORTD=0x00; DDRD=0x00; TCCR0=0x00; TCNT0=0x00; OCR0=0x00; TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00;
A-3
ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00; MCUCR=0x00; MCUCSR=0x00; TIMSK=0x00; UCSRA=0x00; UCSRB=0xD8; UCSRC=0x86; UBRRH=0x00; UBRRL=0x47; ACSR=0x80; SFIOR=0x00; lcd_init(16); #asm("sei") screen=1; while (1) { //------------------------------------------------// RUANGAN 1 //------------------------------------------------if(sensor11==1) { delay_ms(400); if(sensor12==1) cr1=cr1+1; if(sensor12==0) screen=1; } if(sensor13==1) { delay_ms(400); if(sensor12==1) cr1=cr1-1; if(sensor12==0) screen=1; } if(cr1<=0)cr1=0; //-------------RELAY 1--------------if(cr1>=1) { PORTC.7=1; PORTC.6=1; PORTC.5=1; PORTC.4=1; } if(cr1==0) { PORTC.7=0;
A-4
PORTC.6=0; PORTC.5=0; PORTC.4=0; } //------------------------------------------------// RUANGAN 2 //------------------------------------------------if(sensor21==1) { delay_ms(400); if(sensor22==1) cr2=cr2+1; if(sensor22==0) screen=1; } if(sensor23==1) { delay_ms(400); if(sensor22==1) cr2=cr2-1; if(sensor22==0) screen=1; } if(cr2<=0)cr2=0; //-------------RELAY 2--------------if(cr2>=1) { PORTC.3=1; PORTC.2=1; PORTC.1=1; PORTC.0=1; } if(cr2==0) { PORTC.3=0; PORTC.2=0; PORTC.1=0; PORTC.0=0; } //-------------SERIAL---------------sprintf(count,"Ruangan 1 = %3d Orang\rRuangan 2 = %3d Orang",cr1,cr2); for(i=0;i<=43;i++) {putchar(count[i]); } delay_ms(400); }; }
A-5
Halaman kosong!!!
A-6
LAMPIRAN LISTING PROGRAM DELPHI unit test2; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CPort, CPortCtl, ExtCtrls, Menus, ComCtrls; type TForm1 = class(TForm) ComPort1: TComPort; Button1: TButton; Button2: TButton; ComLed1: TComLed; Button3: TButton; ComTerminal1: TComTerminal; Label1: TLabel; Label2: TLabel; Timer1: TTimer; Timer2: TTimer; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Label7: TLabel; Button4: TButton; Button5: TButton; procedure Button2Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); procedure Timer2Timer(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button5Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; var i: integer;
A-7
aa,bb : string; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin comport1.Close; label1.Caption:=formatdatetime('dddd, dd - mmm - yyyy',date); label2.Caption:=formatdatetime('hh : mm : ss',time); timer2.Enabled:=false; end; procedure TForm1.Button1Click(Sender: TObject); begin comport1.open; button1.hide; end; procedure TForm1.Button2Click(Sender: TObject); begin comport1.Close; button1.Show; end; procedure TForm1.Button3Click(Sender: TObject); begin comterminal1.ClearScreen; end; procedure TForm1.Timer1Timer(Sender: TObject); begin label1.Caption:=formatdatetime('dddd, dd - mmm - yyyy',date); label2.Caption:=formatdatetime('hh : mm : ss',time); end; procedure TForm1.Timer2Timer(Sender: TObject); begin label3.Caption:=' R. Prawiro Kusumo R. 2205030047 ' ; if label3.Left=8 then label3.Left:=320 else label3.left:=label3.Left-2; label4.Caption:=' Dimas Adityo 2205030057 ' ; if label4.Left=320 then label4.Left:=8 else label4.left:=label4.Left+2; end;
A-8
procedure TForm1.Button4Click(Sender: TObject); begin ComPort1.ShowSetupDialog; end; procedure TForm1.Button5Click(Sender: TObject); begin ComPort1.Close; Close; end; end.
A-9
Halaman kosong!!!
A-10
B-1
B-2
B-3
B-4
B-5
B-6
B-7
B-8
B-9
Halaman kosong!!!
B-10
B-11
B-12
B-13
B-14
B-15
B-16
B-17
Halaman kosong!!!
B-18
B-19
B-20
B-21
B-22
B-23
B-24
B-25
B-26
B-27
B-28
B-29
B-30
B-31
B-32
B-33
B-34
B-35
B-36
B-37
B-38
B-39
B-40
B-41
B-42
B-43
B-44
B-45
B-46
B-47
B-48
B-49
B-50
B-51
B-52
B-53
B-54
B-55
B-56
B-57
B-58
B-59
B-60
B-61
B-62
B-63
B-64
B-65
B-66
B-67
B-68
B-69
B-70
B-71
B-72
B-73
B-74
B-75
B-76
B-77
B-78
B-79
B-80
B-81
B-82
B-83
B-84
RIWAYAT HIDUP PENULIS Data Pribadi
R. Prawiro Kusumo R.
Nama NRP Alamat Tempat, Tanggal Lahir No. HP E-mail Jenis Kelamin Agama Kewarganegaraan Motto
Riwayat Pendidikan
Institusi
Spesialisasi
Periode
Umum
1993 - 1999
Umum
1999 - 2002
IPA
2002 - 2005
Computer Control
2005 - 2008
SDN Jemurwonosari I/417 Surabaya SLTP Negeri 17 Surabaya SMU Negeri 9 Surabaya D3 Teknik Elektro ITS Surabaya Pengalaman Kepanitiaan
R. Prawiro Kusumo R. 2205 030 047 Jl. Mangga VII/189 P.C.I Waru-SDA Surabaya, 27 September 1987 081331379649 [email protected] Laki-laki Islam Indonesia hanya yang berani melawan rasa takut yang mampu merubah segalanya
Nama Kegiatan D3 Teknik Elektro on Training (DOT) D3 Teknik Elektro on TrainingCamp (DOT-C) Study Excursie D3 Teknik Elektro C-1
Jabatan Organizing Commitee (OC) Organizing Commitee (OC) Wakil Ketua II
Pengalaman Pelatihan
Nama Kegiatan Latihan Keterampilan Manajemen Mahasiswa Pra-Tingkat Dasar SeFTI Shell LiveWIRE Bright Ideas Workshop Workshop of Financial Intelligent Power Seminar Anti HIV/AIDS dan Narkoba The Light of Personality with Firewalk Experience National Career Seminar 2008
C-2
Tanggal 16 – 18 Desember 2005 9 Agustus 2007 16 September 2007 30 November 2007 1 Desember 2007 26 April 2008
RIWAYAT HIDUP PENULIS Data Pribadi
Dimas Adityo
Nama NRP Alamat Tempat, Tanggal Lahir No. HP E-mail Jenis Kelamin Agama Kewarganegaraan Motto Riwayat Pendidikan
Institusi SDN Pare I SLTP Negeri 2 Pare SMU Negeri 2 Pare D3 Teknik Elektro ITS Surabaya
C-3
Dimas Adityo 2205 030 057 Jl. Bogenvil no. 12 PareKediri Kediri, 30 Mei 1987 085648904871 [email protected] Laki-laki Islam Indonesia Hidup adalah perjuangan
Spesialisasi
Periode
Umum Umum IPA Computer Control
1993 - 1999 1999 - 2002 2002 - 2005 2005 - 2008