TUGAS AKHIR PERANCANGAN TELEMETRI SUHU RUANG BERBASIS MIKROKONTROLER ATMEGA Diajukan untuk memenuhi salah satu persyaratan dalam menyelesaikan pendidikan sarjana (S-1) pada Departemen Teknik Elektro Oleh FACHRUROZI NASUTION NIM : 06 0402 031 DEPARTEMEN TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS SUMATERA UTARA MEDAN 2011
ABSTRAK Kebutuhan akan data mengenai kondisi lingkungan sekitar telah mendorong manusia untuk membuat alat yang bisa mengukur kondisi lingkungan. Salah satu hal yang bisa menjelaskan mengenai kondisi lingkungan adalah suhu. Pada tugas akhir ini, dirancang suatu perangkat yang dapat mengukur suhu pada suatu tempat dan mengirimkan data yang berupa suhu tersebut dengan telepon seluler melalui SMS (Short Message Service) ke telepon seluler penerima yang terhubung komputer, sehingga data yang diterima di komputer dapat disimpan. Perangkat ini dapat mengirimkan data dari jarak jauh dan pada waktu kapanpun data tersebut dibutuhkan, sehingga memudahkan seorang pengamat lingkungan dalam mengambil suhu pada daerah yang diamatinya. Mikrokontroller yang akan digunakan pada perangkat ini adalah ATMega16. ATMega16 memiliki kehandalan dan kelengkapan fitur. Fiturnya antara lain memiliki memori program dan memori data yang cukup besar, memiliki sarana komunikasi dengan dunia luar secara USART, I2C, maupun dapat dimanfaatkan dengan teknologi one-wire. Fungsi utama ATMega16 sebagai pengendali kerja sensor suhu, dan mengirimkan hasil pengukuran ke penerima. Pemrograman yang digunakan untuk menerima data dari telepon seluler penerima dengan komputer menggunakan Visual Basic. Program ini dapat menerima data dan menyimpan data tersebut berupa laporan data (data report). i
KATA PENGANTAR Puji syukur penulis panjatkan kehadirat ALLAH SWT atas rahmat dan karunia yang dilimpahkan sehingga dapat menyelesaikan Tugas Akhir ini. Adapun Tugas Akhir ini dibuat untuk memenuhi syarat kesarjanaan di Departemen Teknik Elektro, Fakultas Teknik, yang penulis beri judul Perancangan Telemetri Suhu Ruang berbasis Mikrokontroler ATMega. Tugas akhir ini penulis persembahkan kepada yang teristimewa yaitu ayah dan bunda tercinta, Fachruddin Nst dan Syarifah Andriani. Semoga do a dan perjuangan ayah dan bunda berbuah keberhasilan bagi ananda kelak. Selama masa perkuliahan sampai masa penyelesaian tugas akhir ini, penulis banyak memperoleh bimbingan dan dukungan dari berbagai pihak. Untuk itu, dengan setulus hati penulis menyampaikan ucapan terima kasih yang sebesarbesarnya kepada : 1. Bapak Ir. T. Ahri Bahriun, M.Sc., selaku dosen Pembimbing Tugas Akhir, atas segala bimbingan, saya banyak belajar dari beliau tentang bagaimana proses memaparkan tugas akhir agar jelas dan terarah. 2. Bapak Ir. Pernantin Tarigan, M.Sc, selaku dosen wali penulis, atas bimbingan dan arahannya dalam menyelesaikan perkuliahan. 3. Bapak Ir. Surya Tarmizi Kasim, M.Si. selaku Ketua Departemen Teknik Elektro FT-USU dan Bapak Rahmat Fauzi, ST MT, selaku Sekretaris Departemen Teknik Elektro FT-USU. Saya akan selalu mengingat motivasi yang telah Bapak berikan. ii
4. Seluruh Staf Pengajar di Departemen Teknik Elektro USU dan Seluruh Karyawan di Jurusan Teknik Elektro Fakultas Teknik Elektro USU. iii 5. Teman-teman seperjuangan, Teguh, Salman, BudChan, Gabe yang banyak membantu penulis serta dukungannya dan motivasinya. 6. Teman-teman angkatan '06 Agung C, Helmi, Mudhin, Rey C, Rudolf C, Iqbal C, Supenson C, Murli CM. 7. Abang-abang senior terbaik, Rizky Z, Luthfi A, Ricky H, Muhfi, Hans, Harry M, Aris yang selalu memberikan dukungan dan motivasi. 8. Recky dan Yuyanto yang selalu memberikan supportnya kepada penulis. 9. Dan pihak-pihak yang tidak dapat penulis sebutkan satu persatu. Akhir kata, tugas akhir ini masih jauh dari sempurna, masih banyak kesalahan dan kekurangan, namun penulis tetap berharap semoga tugas akhir ini bisa bermanfaat dan memberikan inspirasi bagi pengembangan selanjutnya Medan, 9 Februari 2011 Penulis Fachrurozi Nasution NIM 060402031
DAFTAR ISI ABSTRAK...i KATA PENGANTAR...ii DAFTAR ISI...iv DAFTAR TABEL...vi DAFTAR GAMBAR...vii BAB I PENDAHULUAN...1 1.1 Latar Belakang...1 1.2 Tujuan Penulisan...2 1.3 Rumusan Masalah...2 1.4 Batasan Masalah...2 1.5 Metodologi Penelitian...3 1.6 Sistematika Penulisan...3 BAB II DASAR TEORI...5 2.1 Mikrokontroler ATMega16...5 2.1.1. Arsitektur ATMega16...6 2.1.2. Konfiguras Pena (pin) ATMEGA16...7 2.1.3. Deskripsi Mikrokontroler ATMEGA16...8 2.1.4. Peta Memori ATMega16...10 2.1.4.1. Memori Program...10 2.1.4.2. Memori Data...11 2.1.4.3. Memori Data EEPROM...12 2.1.5. Analog to Digital Converter...12 2.2 Layanan Pesan Singkat (Short Message Service)...15 2.2.1. Pengenalan layanan Pesan Singkat...15 2.2.2. Mengirim dan Menerima SMS...17 2.2.3. Perintah AT (ATCommand)...18 2.2.4. Protokol Data Unit (PDU)...20 2.2.4.1. SMS Deliver PDU...20 2.2.4.2. SMS Submit PDU...25 2.3 Bahasa C...28 2.3.1. Kompilasi Program C...28 2.3.2. Tipe Data Bahasa C...29 2.3.3. Perangkat Lunak Mikrokontroler ATMega16...30 2.4 Komunikasi USART...33 2.5 Sensor Suhu LM35...40 BAB III PERANCANGAN PERANGKAT KERAS...43 3.1 Gambaran Umum Sistem...43 3.2 Spesifikasi Sistem yang dirancang...44 3.2.1. Sistem Minimum ATMega16...45 3.2.2. Regulator Tegangan...47 iv
3.2.3. Penampil Layar dengan LCD...49 3.2.4. Rangkaian Sensor Suhu...50 3.2.5. Komunikasi Serial RS232 (USART)...52 BAB IV PERANCANGAN PERANGKAT LUNAK...54 4.1 Perancangan Peralngkat Lunak Mikrokontroler...54 4.1.1. Program Utama...55 4.1.2. Pengecekan Pesan Baru...58 4.1.3. Analog to Digital Converter (ADC)...59 4.1.3.1. Register-register ADC...60 4.1.4. Komunikasi Serial (USART)...62 4.1.4.1. Inisialisasi USART...62 4.1.5. Mematikan Mode Echo...65 4.1.6. Kirim SMS...65 4.1.7. Hapus SMS...65 4.2 Perancangan Perangkat Lunak Penerima...66 BAB V PENGUJIAN SISTEM...68 5.1 Pengujian perangkat...68 5.1.1. Pengujian Bandar Mikrokontroler...68 5.1.2. Pengujian LCD...69 5.1.3. Pengujian Komunikasi Serial RS232...70 5.1.4. Pengujian Rangkaian ADC...71 5.1.5. Pengujian Secara Keseluruhan...73 BAB VI KESIMPULAN DAN SARAN...74 6.1 Kesimpulan...74 6.2 Saran...75 DAFTAR PUSTAKA...76 LAMPIRAN A GAMBAR RANGKAIAN...77 LAMPIRAN B LISTING SOURCE CODE...78 B.1 Listing Code Program Mikrokontroler...78 B.2 Listing Code Program Penerima dengan Visual Basic...83 B.2 Datasheet...89 v
DAFTAR TABEL Tabel 2.1 Konfigurasi Clock ADC...14 Tabel 2.2 Pemilihan Sumber Picu ADC...15 Tabel 2.3 Format SCA pada SMS Deliver PDU...20 Tabel 2.4 Contoh penulisan SMSC untuk operator di Indonesia...21 Tabel 2.5 Skema Format PDU untuk SMS-Deliver...21 Tabel 2.6 Format OA untuk SMS Deliver PDU...21 Tabel 2.7 Format penulisan OA...22 Tabel 2.8 Format penulisan DCS...22 Tabel 2.9 Perhitungan nilai VP...23 Tabel 2.10 Pendekodean 8 bit (Octet) menjadi 7 bit (Septet)...23 Tabel 2.11 Posisi b1. b 7 pada septet...24 Tabel 2.12 Susunan 1 Bit Oktet...24 Tabel 2.13 Susunan 2 Bit Oktet...24 Tabel 2.14 Tabel default alphabet 7 bit (septet)...25 Tabel 2.15 Format SCA pada SMS Deliver PDU...25 Tabel 2.16 Skema Format PDU untuk SMS-Submit...26 Tabel 2.17 Format DA untuk SMS Submit PDU...27 Tabel 2.18 Tipe data bahasa C...30 Tabel 2.19 Fungsi masing-masing pena RS232...34 Tabel 2.20 Pengaturan bit UMSEL...39 Tabel 2.21 Bit Pengatur Ukuran Karakter...40 Tabel 3.1 Konsumsi arus dari komponen yang dicatu...47 Tabel 5.1 Hasil Pengujian Komunikasi RS232...70 Tabel 5.2 Perhitungan Nilai ADC...72 Tabel 5.3 Hasil Pembacaan ADC...72 Tabel 5.3 Hasil Pengujian Keseluruhan...73 vi
DAFTAR GAMBAR Gambar 2.1 Blok Diagram ATMega16...7 Gambar 2.2 Pena-pena Atmega16...8 Gambar 2.3 Peta Memori ATMega16...10 Gambar 2.4 Peta Memori Data ATMega16...12 Gambar 2.5 ADC Control and Status Register A ADCSRA...13 Gambar 2.6 ADC Multiplexer...14 Gambar 2.7 Registor SFIOR...15 Gambar 2.8 Skema Format SMS Deliver PDU...20 Gambar 2.9 Skema Format SMS Submit PDU...25 Gambar 2.10 Kompilasi Linking dari program C...29 Gambar 2.11 Bit-bit Register UDR...35 Gambar 2.12 Bit-bit Register UCSRA...35 Gambar 2.13 Bit-bit Register UCSRB...37 Gambar 2.14 Bit-bit Register UCSRC...38 Gambar 2.15 Sensor Suhu LM35...41 Gambar 3.1 Blok Diagram Sistem...43 Gambar 3.2 Rangkaian skematik Sistem Minimum...46 Gambar 3.3 ISP Programmer K-125R...47 Gambar 3.4 Rangkaian Regulator Tegangan...49 Gambar 3.5 Hubungan LCD dengan Mikrokontroler...50 Gambar 3.6 Rangkaian Penguat Non-Inverting 10 kali...52 Gambar 3.7 Rangkaian Komunikasi Serial...53 Gambar 3.8 Hubungan pena MAX232 dan DB9...53 Gambar 4.1 Diagram Alir Secara Garis Besar...55 Gambar 4.2 Konfigurasi Fitur Menggunakan CodeWizardAVR...57 Gambar 4.3 ADC Multiplexer Selection Register ADMUX...60 Gambar 4.4 ADC Control and Status Register A ADCSRA...61 Gambar 4.5 The ADC Data Register ADCL dan ADCH...61 Gambar 4.6 Special Function Register IO Register...61 Gambar 4.7 UBRR (USART Baud Rate Register)...63 Gambar 4.8 UCSRA (USART Control and Status Register A)...64 Gambar 4.9 UCSRB ( USART Control and Status Register B)...64 Gambar 4.10 UCSRC ( USART Control and Status Register C)...64 Gambar 4.11 Tampilan Awal Program...66 Gambar 4.12 Tampilan Awal Data Report...67 Gambar 5.1 Tampilan Pengujian LCD...69 Gambar 5.2 Pengujian Pengiriman SMS dari Hyperterminal...71 vii