Kode/Nama Bidang Ilmu: 451/Teknik Elektro
LAPORAN AKHIR HIBAH PENELITIAN
DATA LOGGING SUHU, ARUS DAN TEGANGAN BERBASIS MIKROKONTROLER ARDUINO UNO R3 TIM PENGUSUL Ir. I Nyoman Budiastra, MKes., MT. (NIDN. 0031126728) Ir. Cokorde Gede Indra Partha, M.Erg., MT. (NIDN. 0025056513) Ir. I Wayan Arta Wijaya, M.Erg., MT. (NIDN. 0013036609) Dibiayai oleh DIPA PNBP Universitas Udayana Sesuai dengan Surat Perjanjian Penugasan Pelaksanaan Penelitian Nomor : 2389.2/UN14.1.31/PN./2015, Tanggal 22 Juni 2015
PROGRAM STUDI TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS UDAYANA OKTOBER 2015 1
HALAMAN PENGESAHAN PENELITIAN PROGRAM STUDI Judul Penelitian
: DATA LOGGING SUHU, ARUS DAN TEGANGAN BERBASIS MIKROKONTROLER ARDUINO UNO R3 Bidang Ilmu : 451 / Teknik Elektro Ketua Peneliti : a. Nama lengkap : Ir. I Nyoman Budiastra, MKes., MT. b. NIP/NIDN : 0031126728 c. Pangkat/Gol : IVa / Pembina d. Jabatan Fungsional/Stuktural : Lektor Kepala e. Pengalaman penelitian : (terlampir dalam CV) f. Program Studi/Jurusan : Teknik Elektro g. Fakultas : Teknik h. Alamat Rumah / HP : Jl.Tukad Pakerisan XIVA No. 8, Denpasar/081239802906 i. E-mail :
[email protected] Jumlah Tim Peneliti : 3 (tiga) Orang Lokasi Penelitian : Teknik Elektro Kerjasama (jika ada) a. Nama Instansi :b. Alamat :Jangka waktu penelitian : 106 hari kalender terhitung mulai tanggal 22 Juni 2015 s/d 5 Oktober 2015 Biaya Penelitian : Rp 7.500.000 (Tujuh Juta Lima Ratus Ribu Rupiah) Bukit Jimbaran, 5 Oktober 2015 Mengetahui, Ketua Jurusan Teknik Elektro
(Ir. I Nyoman Setiawan, MT) NIP. 196312291991031001
Ketua Peneliti,
(Ir. I Nyoman Budiastra, MKes., MT) NIP. 196712311993031015
Mengetahui Dekan Fakultas Teknik Universitas Udayana
(Prof. Ir.Ngakan Putu Gede Suardana, MT., PhD) NIP. 1964091719890310 2
RINGKASAN Perkembangan teknologi khususnya pada bidang elektronika sangat pesat, hal tersebut dapat dilihat dari banyaknya riset pengembangan teknologi yang dapat dioperasikan secara manual maupun otomatis. Pengembangan teknologi pada dasarnya bertujuan untuk memudahkan pekerjaan manusia, seperti pekerjaan yang membutuhkan ketelitian, pekerjaan yang mempunyai resiko tinggi, ataupun pekerjaan yang terus menerus. Salah satu contoh adalah pengambilan data pengukuran suhu, arus dan tegangan yang terus menerus untuk mendapatkan gambaran yang komprehensif atau karakteristik tentang kondisi alat yang diteliti. Dalam kenyataannya sering dijumpai pengambilan data yang kurang presisi, seperti kesalahan pada pengukuran serta waktu yang tidak tepat pada saat pengambilan data.Dari kesalahankesalahn tersebut maka data penelitian yang didapat hasilnya kurang akurat dan kurang menggambarkan secara koprehensip peralatan yang di teliti. Untuk itu dibuat suatu data logger untuk mencatat data dari waktu ke waktu secara continue. Data logger dalam penelitian ini menggunakan mikrokontroler Arduino Uno R3 dengan real time clock untuk menetapkan waktu, sensor suhu untuk mendapatkan suhu pengujian, sensor arus untuk mendapatkan arus berbeban dan arus hubung singkat serta sensor tegangan untuk mendapatkan tegangan rangkaian terbuka dan tegangan berbeban.. Perancangan dan pembuatan data logger ini dapat mengukur suhu, arus dan tegangan dengan pengaturan data waktu perekaman dapat disesuaikan melalui aplikasi arduino 1.0.6. Besar file dari hasil perekaman ini sangat kecil sekali (3KB) untuk perekaman selama 66 kali pengukuran (1hari). Kata Kunci: mikrokontroler, sensor suhu, sensor arus
3
PRAKATA
Laporan Akhir Penelitian Program Studi ini kami susun sebagai laporan akhir penelitian kami dengan judul ”Data Logging Suhu, Arus dan Tegangan Berbasis Mikrokontroler Arduino Uno R3” sebagai sebuah penelitian yang masih terdapat langkah langkah yang harus diselesaikan untuk mendapatkan hasil pengukuran, perhitungan dan analisa agar sesuai dengan tujuan yang diharapkan. Penelitian ini telah mendapatkan data-data pengujian alat merupakan data yang sifatnya lokal dan dapat dijadikan referensi awal pada hasil-hasil pengukuran, sehingga masih diperlukan pengujian-pengujian peralatan yang lebih detail serta rinci untuk mendapatkan hasil yang lebih akurat. Dalam penelitian ini diharapkan dapat dikembangkan lagi mengingat begitu banyaknya kegunaan dari mikrokontroler Arduino Uno R3 yang mempunyai 14 input-output digital. Dalam kesempatan ini pula kami mengucapkan banyak-banya terimasih kepada seluruh khalayak yang telah membantu sehingga penelitian ini dapat terwujud. Kami berharap sekecil apapun kontribusi yang dapat diberikan tetap dapat memberikan manfaat bagi penelitianpenelitian kami berikutnya. Bukit Jimbaran, Oktober 2015
Penulis
4
DAFTAR ISI hal Halaman Sampul...................................................................................................................... Lembar Pengesahan ................................................................................................................. Ringkasan................................................................................................................................. Prakata...................................................................................................................................... Daftar Isi .................................................................................................................................. Daftar Tabel ............................................................................................................................. Daftar Gambar ......................................................................................................................... Daftar Lampiran.......................................................................................................................
1 2 3 4 5 6 7 8
BAB I PENDAHULUAN........................................................................................................ 1.1 Latar Belakang.......................................................................................................... 1.2 Permasalahan yang diteliti........................................................................................ 1.3 Kontribusi terhadap Pengembangan Ilmu ................................................................ BAB II TINJAUAN PUSTAKA ............................................................................................. 2.1 Perekam data (Data Logger)..................................................................................... 2.2 Mikrokontroler ATmega328P ................................................................................. 2.3 LCD (Liquid Crystal Display).................................................................................. 2.4 Arduino Uno R3 ....................................................................................................... 2.5 Sensor SuhuLM35 .................................................................................................... 2.6 Sensor arus ACS712................................................................................................. 2.7 Real time clock (RTC DS 1307) .............................................................................. BAB III METODE PENELITIAN .......................................................................................... 3.1 Prosedur Penelitian................................................................................................... 3.2 Disain Penelitian....................................................................................................... 3.3 Data Pengukuran ...................................................................................................... 3.4. Tempat Penelitian.................................................................................................... BAB IV HASIL DAN PEMBAHASAN ................................................................................. 4.1 Pengujian Modul ...................................................................................................... 4.2. Pengujian LCD (Liquid crystal display).................................................................. 4.3 Pengujian Module SD Card...................................................................................... 4.4 Pengujian Real Time Clock (RTC DS 1307) ........................................................... 4.5 Pengujian Sensor Arus ACS712............................................................................... 4.6 Pengujian Data Logger Suhu, Arus Dan Tegangan Berbasis Mikrokontroler Arduino Uno R3 ..................................................................................................... BABV SIMPULAN ................................................................................................................. 5.1 Simpulan................................................................................................................... 5.2 Saran .........................................................................................................................
9 9 10 10 11 11 11 12 13 13 14 15 16 16 17 19 19 20 20 22 24 26 27 28 44 44 44
DAFTAR PUSTAKA .............................................................................................................. 45 LAMPIRAN............................................................................................................................. 47
5
DAFTAR TABEL hal. Tabel 3.1 Rencana pengukuran dengan data logger ................................................................ 19 Tabel 4.1 Pengujian tegangan input-output ............................................................................. 21 Tabel 4.2 Pengujian pada panel surya untuk suhu, arus dan tegangan .................................... 39
6
DAFTAR GAMBAR
Gambar 2.1 Struktur Pin ATmega328P. .................................................................................. Gambar 2.2 LCD 16x2 Display ............................................................................................... Gambar 2.3 Arduino Uno R3................................................................................................... Gambar 2.4 Sensor Suhu LM35............................................................................................... Gambar 2.5 Sensor Arus ACS 712 .......................................................................................... Gambar 2.6 RCT DS 1307....................................................................................................... Gambar 3.1 Alur Penelitian Data Logger ................................................................................ Gambar 3.2 Arduino Uno dengan LCD dan RTC ................................................................... Gambar 3.3 Arduino Uno Sensor Arus.................................................................................... Gambar 3.4 Arduino Uno Sensor Tegangan............................................................................ Gambar 3.5 Arduino Uno Sensor Suhu ................................................................................... Gambar 4.1 Hardware Blok Diagram Data Logger ................................................................. Gambar 4.2 Data Loging Suhu, Arus dan Tegangan Berbasis mikrokontroler Arduino Uno R3 ........................................................................ Gambar 4.3 Arduino Uno R3................................................................................................... Gambar 4.4 Rangkaian Arduino Uno R3 dengan LCD ........................................................... Gambar 4.5 Skematik rangkaian Arduino Uno dengan LCD .................................................. Gambar 4.6 Library LCD pada software arduino 1.0.6 ........................................................... Gambar 4.7 Rangkaian Arduino Uno dengan SD Card ........................................................... Gambar 4.8 Rangkaian Arduino dengan RTC ......................................................................... Gambar 4.9 Pengujian RTC dengan arduino 1.0.6 ................................................................. Gambar 4.10 Rangkaian arduino Uno dengan sensor arus ACS712 ....................................... Gambar 4.11 Pengujian sensor arus ACS712 dengan arduino 1.0.6 ....................................... Gambar 4.12 Pengujian pengukuran Suhu............................................................................... Gambar 4.13 Pengujian pengukuran Arus Hubung Singkat .................................................... Gambar 4.14 Pengujian pengukuran Tegangan Rangkaian Terbuka....................................... Gambar 4.15 Besar hasil rekam data logger ............................................................................
hal. 12 12 13 14 15 15 16 17 18 18 18 20 20 21 22 23 23 24 26 26 27 27 41 42 42 42
7
DAFTAR LAMPIRAN Lampiran 1. Instrument ........................................................................................................... 46 Lampiran 2. Personalia tenaga Peneliti.................................................................................... 47 Lampiran 3. Data Sheet............................................................................................................ 48
8
BAB I PENDAHULUAN 1.1 Latar Belakang Perkembangan teknologi khususnya pada bidang elektronika sangat pesat, hal tersebut dapat dilihat dari banyaknya riset pengembangan teknologi yang dapat dioperasikan secara manual maupun otomatis. Pengembangan teknologi pada dasarnya bertujuan untuk memudahkan pekerjaan manusia, seperti pekerjaan yang membutuhkan ketelitian, pekerjaan yang mempunyai resiko tinggi, ataupun pekerjaan yang terus menerus. Salah satu contoh adalah pengambilan data pengukuran suhu, arus dan tegangan yang terus menerus untuk mendapatkan mendapatkan gambaran yang komprehensif atau karakteristik tentang kondisi alat yang dipantau. Seiring dengan pesatnya kemajuan teknologi di segala bidang, maka meningkat pula daya pikir manusia akan teknologi tinggi sebagai kebutuhan. Dari perkembangan kompleks tersebut, tentu muncul teknologi-teknologi baru. Kemajuan teknologi sangat membantu dalam bidang informasi. Seperti halnya sensor, yang kini banyak digunakan untuk mendapatkan informasi yang diinginkan tanpa keterbatasan ruang dan waktu dengan mendayagunakan secara maksimal cara kerja sistem sensor tersebut, yang dalam aplikasinya dibantu dengan mikrokontroler. Perkembangan ilmu pengetahuan dan teknologi saat ini sangat pesat sekali, terutama hal-hal yang dapat membantu pekerjaan manusia sehingga menjadi lebih mudah dan efisien. Seperti melakukan pencatatan suhu, arus dan tegangan yang saat ini dilakukan secara manual membuat pekerjaan menjadi tidak efisien. Apalagi jika pencatatan tersebut dilakukan secara terus-menerus dengan pencatatan tiap jam, pasti akan lebih mudah tanpa harus mencatat secara manual dengan waktu tertentu. Dalam hal ini dibutuhkan suatu alat yang dapat membuat pekerjaan tersebut menjadi lebih efisien dan mudah. Hanya dengan memasang sensor maka dapat diketahui berapa nilainya secara terus menerus dan data pengukuran dari sensor tersebut dapat disimpan ke dalam sebuah media penyimpan / memory berbentuk file (data base) dengan jangka waktu yang lama tergantung kapasitas penyimpanan tersebut. Perekam Data / data logger adalah suatu alat elektronik yang berfungsi mencatat data dari waktu ke waktu secara continue. Beberapa data logger menggunakan personal komputer dan software sebagai tempat menyimpan data dan menganalisis data. Data yang disimpan di harddisk dapat diakses kapanpun kita ingginkan. Hal ini termasuk beberapa perangkat akuisisi data seperti plug-in board atau sistem komunikasi serial yang menggunakan komputer sebagai sistem penyimpanan data real time. Hampir semua pabrikan menganggap sebuah data logger adalah sebuah perangkat yang berdiri sendiri (stand alone device) yang dapat membaca berbagai macam tipe sinyal elektronika dan menyimpan data di dalam memory internal untuk kemudian didownload ke sebuah komputer. Secara singkat data logger adalah alat untuk melakukan data logging. Biasanya ukuran fisiknya kecil, bertenaga baterai, portabel, dan dilengkapi dengan mikroprosesor, memory internal untuk menyimpan data dan sensor. Beberapa data logger diantarmukakan dengan komputer dan menggunakan software untuk mengaktifkan data logger untuk melihat dan menganalisis data yang terkumpul, sementara yang lain memiliki peralatan antarmuka sendiri (keypad dan LCD) dan dapat digunakan sebagai perangkat yang berdiri sendiri (stand-alone device). Salah satu keuntungan menggunakan data logger adalah kemampuannya secara otomatis mengumpulkan data setiap 24 jam. Setelah diaktifkan data logger digunakan dan ditinggalkan untuk mengukur dan merekam informasi selama periode pemantauan. Hal ini memungkinkan untuk mendapatkan gambaran yang komprehensif tentang kondisi peralatan yang teliti atau dipantau. 9
Logging data (data logging) adalah proses otomatis pengumpulan dan perekaman data dari sensor untuk tujuan pengarsipan atau tujuan analisis. Sensor-sensor digunakan untuk mengkonversi besaran fisik menjadi sinyal listrik yang dapat diukur secara otomatis dan disimpan dalam memory, sampai akhirnya dikirimkan ke komputer atau mikroprosesor untuk pengolahan. Berbagai macam sensor sekarang tersedia, sebagai contoh, sensor suhu, tegangan, arus, intensitas cahaya, tingkat suara, sudut rotasi, posisi, kelembaban relatif, pH, oksigen terlarut, pulsa (detak jantung), napas, kecepatan angin, gerak dan lain-lain. Selain itu, banyak peralatan laboratorium dengan output listrik dapat digunakan bersama dengan konektor yang sesuai dan dapat dihubungkan dengan data logger. Dalam penelitian program studi ini penulis ingin membuat suatu rancang bangun data logging portable dengan menggunakan sensor arus, tegangan dan sensor suhu yang dapat di atur waktu pengambilan datanya serta tersimpan langsung dalam memory.. Data logger ini nantinya dapat digunakan oleh mahasiswa dalam praktikum dan khalayak umum untuk melakukan perekaman data suhu, tegangan dan arus, sehingga mendapatkan gambaran yang komprehensif tentang kondisi yang diteliti/dipantau tanpa terjadi kehilangan atau kesalahan-kesalahan pengukuran. 1.2 Permasalahan yang diteliti Dalam penelitian ini penulis ingin menghasilkan suatu perralatan portable yang dapat merekam hasil-hasil pengukuran dengan waktu pengukuran yang dapat di atur dengan menggunakan mikrokontroler Arduino Uno dengan sensor suhu, tegangan dan arus. Adapun permasalahan yang akan diteliti adalah: 1. Bagaimana menghubungkan sensor-sensor tersebut dalam mikrokontroler Arduino Uno sehingga hasilnya sesuai dengan fungsinya. 2. Bagaimana membuat agar data logging tersebut jam serta tanggalnya tidak berubah (real time clock). 3. Bagaimana membuat program di data logger agar perekaman data sesuai dengan waktu yang akan diberikan. 4. Bagaimana mengkalibrasi sensor-sensor tersebut sehingga hasil pengukuran sesuai dengan nilai standarnya. 1.3 Kontribusi terhadap Pengembangan Ilmu Pengetahuan Kontribusi penelitian ini adalah merancang sebuah alat portable data logging yang dapat merekam hasil pengukuran secara terus menerus dan mencatatnya dalam memory, sehingga mendapatkan gambaran yang kemprehensip tentang kondisi yang diteliti atau dipantau. Kontribusi dalam bidang ilmu pengetahuan dalam bidang Teknik Eletkro, Elektronika, Kendali dan Robotika, dimana semua bidang ilmu yang berada di elektro memerlukan pengukuran yang akurat dan presisi. Pada laboratorium Pengukuran Listrik dan penelitian-penelitian, data logging sangat diperlukan untuk pengukuran-pengukuran yang akurat dan secara terus menerus.
10
BAB II TINJAUAN PUSTAKA
2.1 Perekam Data (Data Logger) Perekam Data disebut juga data logger. Secara umum perekam data sederhana terdiri dari mikrokontroler, clock, sensor dan media penyimpanan. Mikrokontroler merupakan bagian dari perekam data yang mengatur komunikasi antar perangkat. Clock berfungsi untuk menyesuaikan atau menentukan waktu sesuai dengan waktu pada hari yang sama.Sensor berfungsi untuk mengubah sinyal analog manjadi sinyal digital. Media penyimpanan berfungsi untuk menyimpan data Dalam sistem telemetri ini terdapat fitur data logger, yaitu fitur yang berfungsi sebagai penyimpanan semua data-data kondisi dari suhu, teganan dan arus yang diukur.Kemudian Data ini nantinya akan tersimpan didalam media penyimpanan yaitu memory card. Pada perancangan ini jenis memory card yang akan digunakan adalah micro SD (Secure Digital) dengan kapasitas 4 GB. Penggunaan memory ini sangat kecil sekali karena file dalam bentuk txt sehingga dengan kapasitas 4GB sudah bisa digunakan berminggu minggu sampai berbulan bulan secara terus menerus tergantung dari banyaknya jumlah pengukuran yang diinginkan. Data logger untuk mengukur suhu, tegangan dan arus berbasis mikrokontroler ini diharapkan dapat mempermudah pekerjaan dalam mendapatkan data yang akurat sehingga mendapatkan gambaran yang komprehensif tentang kondisi yang dipantau tanpa terjadi kehilangan atau kesalahan-kesalahan pengukuran. Berikut ini beberapa referensi Jurnal yang bisa dijadikan acuan untuk menjelaskan mengenai penelitian tentang data logger: 1. H. Susanto mempublikasikan penelitiannya tentang Perancangan Sistem Telemetri Wireless Untuk Mengukur Suhu Dan Kelembaban Berbasis Arduino Uno R3 Atmega328p Dan Xbee Pro, tentang pengukuran suhu dan kelembaban dengan menggunakan sensor DHT11. Hasil penelitian alat ukur dapat bekerja dengan baik dengan pengujian outdoor tanpa halangan jarak maksimal 550 m, waktu penerimaan data tercepat 10.13 detik dan outdoor dengan halangan jarak maksimal 300 m. 2. A. Yurianto dalam tugas akhirnya tentang Perancangan Sistem Otomasi dan Data Logger Terintegrasi untuk BTS pada Remote Area. Dalam penelitiannya untuk mendapatkan data data tentang penghematan energi dalam BTS sehingga data data hasil dari logger dapat diteliti dan dianalisa. 3. Rudi H. dalam penelitiannya dengan judul Perancangan Sistem Data Logger Temperatur Baterai Berbasis Arduino Duemilanove. Hasil penelitiannya data logger yang dirancang berguna menyimpan data suhu dan dapat difungsikan untuk menyimpan data suhu baterai mobil listrik Sinosi, Kapasitas SD Card / memory dalam data logger ini dapat menyimpan data selama 738 hari yang menyimpan data perdetik melalui pembacaan data suhu 4 buah sensor LM 35, Mikrokontroler digunakan untuk pengendalian sistem kerja dari rangkaian data logger ini adalah Modul Arduino Duemilanove. 2.2 Mikrokontroler ATmega328P Mikrokontroler adalah sebuah sistem mikroprosesor dimana didalamnya sudah terdapat CPU, Read Only Memory (ROM), Random Accsess Memory (RAM), Input-Output, timer, interrupt, Clock dan peralatan internal lainnya yang sudah saling terhubung dan terorganisasi dengan baik dalam satu chip yang siap dipakai.
11
Gambar 2.1 Struktur Pin ATmega328P
ATmega328P memberikan beberapa fitur diantaranya 8 Kb system programmable flash dengan kemampuan read while write, 1 KB EEPROM, 2 KB SRAM, 8 Kb system programmable flash dengan kemampuan read while write, 23 general purpose I/O, 32 register serba guna, 3 buah timer/counter, Interrupt internal maupun eksternal, serial untuk pemograman dengan menggunakan USART, peripheral interface (SPI), two wire interface (I2C), 6 port PWM (Pulse Width Modulation), 6 port 10 bit ADC dan Watchdog Timer dengan osilator internal. 2.3 LCD (Liquid Crystal Display) LCD Display Module M1632 buatan Seiko Instrument Inc. yaitu terdiri dari dua bagian, yang pertama merupakan panel LCD sebagai media penampil informasi dalam bentuk huruf/angka, yang dapat menampung 16 huruf/angka disetiap baris. Bagian kedua merupakan sistem pengontrol panel LCD, yang berfungsi mengatur tampilan informasi serta berfungsi mengatur komunikasi M1632 dengan mikrokontroler yang memakai tampilan LCD. Dengan demikian pemakaian LCD modul M1632 menjadi lebih sederhana. Untuk gambar LCD modul dapat dilihat pada Gambar 2.4.
Gambar 2.2 LCD 16x2 Display
Agar LCD dapat berhubungan dengan mikrokontroler, M1632 sudah dilengkapi dengan 8 jalur data (DB0..DB7) yang dipakai untuk menyalurkan kode ASCII maupun perintah pengatur kerjanya M1632. Selain itu dilengkapi pula dengan E, R/W dan RS seperti layaknya komponen yang kompatibel dengan mikroprosesor. Kombinasi sinyal E dan R/W merupakan sinyal
12
standard pada komponen buatan Motorolla. Sebaliknya sinyal-sinyal dari mikrontroller merupakan sinyal khas Intel dengan kombinasi sinyal WR dan RD. RS singkatan dari Register Select, yang dipakai untuk membedakan jenis data yang dikirim ke M1632, jika RS=0 data yang dikirim adalah perintah untuk mengatur kerja M1632, sebaliknya jika RS=1 data yang dikirim adalah kode ASCII yang ditampilkan. Demikian pula saat pengambilan data, saat RS=0 data yang diambil dari M1632 merupakan data status yang mewakili aktivitas M1632, dan saat RS=1 maka data yang diambil merupakan kode ASCII dari data yang ditampilkan. 2.4 Arduino Uno R3 Arduino Uno R3 adalah board sistem minimum berbasis mikrokontroler ATmega328P jenis AVR. Arduino Uno R3 memiliki 14 digital input/output (6 diantaranya dapat digunakan untuk PWM output), 6 analog input, 16 MHz osilator kristal, USB connection, power jack, ICSP header dan tombol reset. Skema dari Arduino Uno R3 tampak dari atas dapat dilihat pada Gambar 2.2 dengan karekteristik sebagai berikut: 1. Operating voltage 5 VDC. 2. Rekomendasi input voltage 7-12 VDC 3. Batas input voltage 6-20 VDC. 4. Memiliki 14 buah input/output digital. 5. Memiliki 6 buah input analog. 6. DC Current setiap I/O Pin sebesar 40mA. 7. DC Current untuk 3.3V Pin sebesar 50mA. 8. Flash memory 32 KB. 9. SRAM sebesar 2 KB. 10 EEPROM sebesar 1 KB. 11 Clock Speed 16 MHz.
Gambar 2.3 Arduino Uno R3
2.5 Sensor suhu LM35 Merupakan komponen elektronika yang memiliki fungsi untuk mengubah besaran suhu menjadi besaran listrik dalam bentuk tegangan. Sensor Suhu LM35 yang dipakai dalam penelit ian ini berupa komponen elektronika elektronika yang diproduksi oleh National Semiconductor. LM35 memiliki keakuratan t inggi dan kemudahan perancangan jika dibandingkan dengan 13
sensor suhu yang lain, LM35 juga mempunyai keluaran impedansi yang rendah dan linieritas yang t inggi sehingga dapat dengan mudah dihubungkan dengan rangkaian kendali khusus serta tidak memerlukan penyetelan lanjutan. Meskipun tegangan sensor ini dapat mencapai 30 volt akan tetapi yang diberikan kesensor adalah sebesar 5 volt, sehingga dapat digunakan dengan catu daya tunggal dengan ketentuan bahwa LM35 hanya membutuhkan arus sebesar 60 µA hal ini berarti LM35 mempunyai kemampuan menghasilkan panas (self-heating) dari sensor yang dapat menyebabkan kesalahan pembacaan yang rendah yaitu kurang dari 0,5 ºC pada suhu 25 ºC.
Gambar 2.4 Sensor Suhu LM35
Gambar 2.4 menunjukan bentuk dari LM35 tampak depan dan tampak bawah. 3 pin LM35 menujukan fungsi masing-masing pin diantaranya, pin 1 berfungsi sebagai sumber tegangan kerja dari LM35, pin 2 atau tengah digunakan sebagai tegangan keluaran atau V dengan jangkauan kerja dari 0 Volt sampai dengan 1,5 Volt dengan tegangan operasi sensor LM35 yang dapat digunakan antar 4 Volt sampai 20 Volt. 2.6 Sensor arus ACS712 Pengukuran arus biasanya membutuhkan sebuah resistor shunt yaitu resistor yang dihubungkan secara seri pada beban dan mengubah aliran arus menjadi tegangan. Tegangan tersebut biasanya diumpankan ke current transformer terlebih dahulu sebelum masuk ke rangkaian pengkondisi signal. Teknologi Hall effect yang diterapkan oleh Allegro menggantikan fungsi resistor shunt dan current transformer menjadi sebuah sensor dengan ukuran yang relatif jauh lebih kecil. Aliran arus listrik yang mengakibatkan medan magnet yang menginduksi bagian dynamic offset cancellation dari ACS712. bagian ini akan dikuatkan oleh amplifier dan melalui filter sebelum dikeluarkan melalui kaki 6 dan 7, modul tersebut membantu penggunaan untuk mempermudah instalasi arus ini ke dalam sistem. ACS712 adalah Hall Effect current sensor. Hall effect allegro ACS712 merupakan sensor yang presisi sebagai sensor arus AC atau DC dalam pembacaan arus didalam dunia industri, otomotif, komersil dan sistem-sistem komunikasi. Pada umumnya aplikasi sensor ini biasanya digunakan untuk mengontrol motor, deteksi beban listrik, switched-mode power supplies dan proteksi beban berlebih. Sensor ini memiliki pembacaan dengan ketepatan yang tinggi, karena didalamnya terdapat rangkaian low-offset linear Hall dengan satu lintasan yang terbuat dari tembaga. cara kerja sensor ini adalah arus yang dibaca mengalir melalui kabel tembaga yang terdapat didalamnya yang menghasilkan medan magnet yang di tangkap oleh integrated Hall IC dan diubah menjadi tegangan proporsional. Ketelitian dalam pembacaan sensor dioptimalkan dengan cara pemasangan komponen yang ada didalamnya antara penghantar 14
yang menghasilkan medan magnet dengan hall transducer secara berdekatan. Persisnya, tegangan proporsional yang rendah akan menstabilkan Bi CMOS Hall IC yang didalamnya yang telah dibuat untuk ketelitian yang tinggi oleh pabrik.
Gambar 2.5 Sensor arus ACS 712
2.7 Real time clock (RTC DS 1307) Modul Real time clock DS1307 merupakan serial modul waktu yang menyediakan informasi detik, menit, jam, hari ,bulan, dan tahun. Akhir dari bulan otomatis disesuaikan untuk bulan yang kurang dari 31 hari, termasuk pembenaran untuk lompatan tahun saat diset ulang. Jam dapat beroperasi dengan format 24 jam maupun 12 jam am/pm. DS1307 juga memiliki rangkaian deteksi tegangan drop dan secara otomatis akan berganti ke baterai cadangan. Fungsi modul waktu nyata adalah untuk menghasilkan pulsa secara otomatis. Salah satu Chip modul waktu nyata adalah DS1307. Keistimewaan IC ini adalah mampu menghitung detik, menit, dan jam terus menerus; menghitung hari dalam satu minggu; menghitung tanggal, bulan, dan tahun; (d) menghitung seratus tahun kalender. Operasional pembacaan dan penulisan RAM internal modul waktu ini sama seperti proses baca/tulis pada komponen jenis RAM. Modul waktu ini mempunyai RAM internal sebesar 56 byte yang berisi data-data mengenai waktu yang sedang berjalan seperti : detik, menit, jam, hari, tanggal, bulan, tahun, serta beberapa register. Secara otomatis modul waktu nyata akan mengganti data RAM internal sesuai dengan penghitungnya. Jika diinginkan mengambil data waktu, maka dibaca pada RAM internal sesuai dengan alamat yang dimaksud.
Gambar 2.6 RTC DS 1307
15
BAB III METODE PENELITIAN 3.1 Prosedur Penelitian Dalam penelitian ini metodelogi yang digunakan disusun secara terstruktur dan berurutan dari beberapa proses tahapan penelitian yang dilakukan. Pada bagian bagian prosedur metode penelitian akan diuraikan prosedur serta cara untuk menyelesaikan penelitian data loggert ini dan dibagi menjadi beberapa bagian seperti diperlihatkan pada alur penelitian gambar 3.1. Tahapan penelitian dimulai dari studi literatur, pradisain data logger, analisa disain, disain model, pembuatan model, pengujian modeL, pengukuran dengan sesnsor, dan analisis akhir penelitian.
START
1. STUDI LITERATUR 2. PRA DISAIN 3. ANALISA DISAIN 4.
DISAIN MODEL
5. PEMBUATAN MODEL 6. PENGUJIAN MODEL 7. PENGUKURAN 2. ANALISIS
STOP
Gambar 3.1 Alur Penelitian Data logger
16
Dalam penelitian pembuatan data logger ini, yang terpenting adalah membuat pradisain dengan memperhatikan akurasi dari hasil penelitian. Pertimbangan adalah peralatan mikrokontroler dan sensor-sensor yang digunakan mempunyai kualitas dan kesalahan yang sangat kecil dan direkomendasikan oleh pabrik pembuatannya. Proses pembuatan data logger ini dimulai dari pradisain, pembuatan model, simulasi menggunakan program simulasi Proteus profesional. Langkah selanjutnya adalah menganalisis hasil simulasi dan mengimplementasikannya dalam prototipe data loger. Langkah akhir adalah dengan mengujikan alat data logger dengan mengukur suhu, arus dan tegangan dan membandingkan hasilnya dengan peralatan ukur yang berada di laboratorium pengukuran listrik di jurusan Teknik Elektro, fakultas Teknik, Universitas Udayana. 3.2 Disain Penelitian Model pembuatan data loger berbasis mikrokontroler Arduino Uno R3 dengan menggunakan real time clock, sensor suhu, sensor arus dan sensor tegangan seperti ditunjukkan pada gambar 3.2, gambar 3.3, gambar 3.4dan gambar 3.5. Sedangkan untuk sofware menggunakan software Arduino 1.0.6 untuk pemrograman mikrokontroler.
Gambar 3.2 Arduino Uno dengan LCD dan RTC
17
Gambar 3.3 Arduino Uno sensor arus
Gambar 3.4 Arduino Uno sensor tegangan
Gambar 3.5 Arduino Uno sensor suhu
18
3.3 Data Pengukuran Data logger yang dibuat dalam penelitian ini dilakukan uji coba untuk mengambil datadata Tanggal, Jam, suhu, Tegangan berbeban, Arus berbeban, Arus hubung singkat dan tegangan rangkaian terbuka. Rencana tabel yang dihasilkan atau tercatat dalam memory dapat langsung do download dan di buka menggunakan program aplikasi lainnya. Tabel data pengukuran tersebut ditunjukan pada tabel 3.1. Tabel 3.1 Tabel Rencana pengukuran dengan data logger Tangal
Jam
Suhu
Vload
ILoad
Isc
Voc
3.4 Tempat Penelitian Dalam penelitian ini disain dan pembuatan prototipe data logger dilakukan di laboratorium Workshop dan Pengukuran Listruk, Teknik Elektro, Universitas Udayana, Sedangkan untuk simulasi dan pembuatan sofware dilakukan di Laboratorium Komputer. Pengujian dilakukan di lab Elektronika daya, dimana pada lab ini terdapat peralatan Advance Solar energy.
19
BAB IV HASIL DAN PEMBAHASAN
Sistem data logger yang di desain dalam penelitian ini menggunakan mikrokontroller Arduino UNO R3, dengan sensor suhu, tegangan dan sensor arus arus. Arduino Uno R3 mempunyai spesifikasi Arduino Uno R3 ini memilki 14 pin digital input/output, 6 analog input, sebuah resonator keramik 16MHz, koneksi USB, colokan power input, ICSP header, dan sebuah tombol reset. Desain dari dataloger seperti ditunjukkan pada gambar 4.1.
Gambar 4.1 Hardware Blok Diagram Data logger
4.1 Pengujian modul Pada penelitian Data Logging Suhu, Arus Dan Tegangan Berbasis Mikrokontroler Arduino Uno R3 ini akan diuji modul-modul dari sistem data logger untuk mengetahui kinerja dari masing masing komponen, sehingga didapatkan hasil yang sesuai dengan desain rancangan yang telah dibuat. Pada gambar 4.2 ditunjukan sistem secara keseluruhan dari Data Logging Suhu, Arus Dan Tegangan Berbasis Mikrokontroler Arduino Uno R3.
Gambar 4.2 Data Logging Suhu, Arus dan Tegangan Berbasis Mikrokontroler Arduino Uno R3 20
Dalam pembuatan datalogger ini modul arduino dibeli dipasaran, Arduino Uno R3 dengan ATmega328P memunyai 14 digital input/output (6 di antaranya dapat digunakan untuk PWM outputs), 6 analog inputs, 16 MHz crystal oscillator, USB connection, power jack, ICSP header, dan reset button, Pengujian rangkaian modul arduino ini dilakukan dengan cara memasukkan program kedalam mikrokontroler melalui personal computer, pengujian dilakukan untuk mengetahui apakah modul arduino dapat bekerja dengan mengukur tegangan pada pin pin arduino yang dapat berfungsi sebagai input output yang berjumlah 13 pin digital
Gambar 4.3 Arduino Uno R3
Tabel 4.1 Pengujian tegangan input-output PIN PIN 1 PIN 2 PIN 3 PIN 4 PIN 5 PIN 6 PIN 7 PIN 8 PIN 9 PIN 10
logika "0" input (V) 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01
Logika "1" output (V) 4.93 4.96 4.95 4.95 4.96 4.94 4.95 4.94 4.94 4.96
21
PIN 11 PIN 12 PIN 13
0.01 0.01 0.01
4.96 4.95 4.96
Dari data tabel 4.1 diatas dapat dilihat bahwa Modul arduino uno R3 ini bekerja dengan baik pada masing-masing bagian (PIN in-out) yang diperlukan, dengan demikian rangkaian ini dapat dihubungkan pada rangkaian lainnya untuk mendapatkan kerja sistem yang sesuai dengan rancangan.
4.2 Pengujian LCD (liquid crystal display) Pengujian pada LCD berfungsi untuk melihat proses dalam pengujian waktu, sensor suhu, sensor arus dan tegangan. . Untuk mengetahui kinerja dari LCD tersebut maka dilakukan pengujian dilakukan dengan menghubungkan LCD RS pin ke digital pin 12, LCD enable pin ke digital pin 11, LCD D4 pin ke digital pin 5, LCD D5 pin ke digital pin 4, LCD D6 pin ke digital pin 3 dan LCD D7 pin ke digital pin2. Selain itu, hubungkan potensio 10k antara + 5V dan GND untuk intermiten (keluaran) ke lcd layar pin vo (pin3 ). Resistor 220 ohm digunakan untuk tampilan lampu latar belakang, biasanya dihubungkan ke pin 15 dan pin 16 dari lcd. LCD display 16x2 ini digunakan untuk menampilkan data yang berupa waktu, derajat suhu, arus dan tegangan. Pada gambar 4.4, ditunjukkan rangkaian antara modul arduino yang dikoneksikan dengan LCD.
Gambar 4.4 Rangkaian Arduino Uno R3 dengan LCD
22
Gambar 4.5 Skematik rangkaian arduino Uno dengan LCD Untuk menguji digunakan LCD library yang terdapat pada software arduino 1.0.6 program tersebut lalu di load ke modul yang sudah terkoneksi dengan LCD, Pada gambar 4.6 ditunjukkan library LCD yang merupakan contoh tampilan LCD yang terdapat pada software arduino 1.0.6.
Gambar 4.6 Library LCD pada software arduino 1.0.6 23
4.3 Pengujian Module SD Card Pada pengujian ini penyesuaian besarnya tegangan dari modul SD Card antara tegangan 5 Volt dengan tegangan 3,3 Volt. Pada mikrokontroler menggunakan level tegangan digital 5 Volt sedangkan pada modul MMC/SD card menggunakan level tegangan 3.3 Volt. Perbedaan level tegangan tersebut menyebabkan dibutuhkannya rangkaian perantara (antarmuka). Pada pembuatan datalogger ini modul sd card di beli di pasaran, modul SD Card terdapat 6 pin dari MMC/SD card yang dihubungkan dengan modul arduino yaitu (CS), (Data in /MOSI), (GND), (VCC), (CLK) dan pin 7 (Data Out / MISO). dihubungkan langsung ke pin 11.12.13 modul arduino untuk pin CS bebas peletakan pin nya, dengan menggunakan mode SPI, atau serial peripheral interface. Pada gambar 4.7 ditunjukkan rangkaian pemasangan Arduino Uno dengan module SDCard.
Gambar 4.7 Rangkaian Arduino Uno dengan SD Card Untuk menguji apakah modul sudah tepat dalam penempatan pin-pin nya maka dilakukan transfer program ke modul arduino dengan menggunakan arduino sd card test library yang sudah ada di software arduino 1.0.6 dan diload ke modul lalu dibuka serial monitor melalui COM 16, komunikasi serial akan akan menunjukkan hasil pengujian modul Micro SD sudah terkoneksi dengan benar berikut ini merupakan Library sd card test pada software arduino 1.0.6 . Pada gambar 4.7 ditunjukkan pengujian SD Card dengan menggunakan library SD Card tes yang sudah tersedia di software arduino 1.0.6. Dalam pengujian ini selain pengujian SD Card test, juga dilakaukan beberapa pengujian seperti read and write, pengujian datalogger, pengujian files, pengujian Card info dll sesuai dengan library yang terdapat pada software arduino 1.0.6.
24
Gambar 4.7 Pengujian SD Card dengan arduino 1.0.6
25
4.4 Pengujian Real time clock (RTC DS 1307) Data logger yang dibuat dalam penelitian ini mengharuskan pengambilan data yang realtime, jadi waktu pengambilan data harus sesuai dengan waktu sekarang dan berlangsung secara berulang-ulan. Pengujian rangkaian dengan RTC ini, tangkaiannya ditunjukan pada gambar 4.8, sengangkan pengujian dengan menggunakan software arduino 1.0.6 ditunjukan pada gambar 4.9.
Gambar 4.8 Rangkaian arduino Uno dengan RTC
Gambar 4.9 Pengujian RTC dengan arduino 1.0.6
26
4.5 Pengujian Sensor arus ACS712
Sensor arus yang digunakan merupakan modul ACS712 untuk mendeteksi besar arus yang mengalir lewat blok terminal. Sensor ini dapat mengukur arus positif dan negatif dengan kisaran -5A sampai 5A. Sensor ini memelukan suplai daya sebesar 5V. Untuk membaca nilai tengah (nol Ampere) tegangan sensor diset pada 2.5V yaitu [6] setengah kali tegangan sumber daya VCC = 5V. Pada polaritas negatif pembacaan arus -5A terjadi pada tegangan 0,5V. Tingkat perubahan tegangan berkorelasi linear terhadap besar arus sebesar 400 mV/Ampere. Pada gambar 4.10 ditunjukan rangkaian arduino unu dengan sensor arus ACS712 sedangkan gambar 4.11 menunjukan pengujian dengan menggunakan software arduino 1.0 6.
Gambar 4.10 Rangkaian arduino uni dengan sensor arus ACS712
Gambar 4.11 Pengujian sensor arus ACS712 dengan arduino 1.0.6
27
4.6 Pengujian Data Logger Suhu, Arus Dan Tegangan Berbasis Mikrokontroler Arduino Uno R3 Pengujian secara keseluruhan untuk Data Logger Suhu, Arus Dan Tegangan Berbasis Mikrokontroler Arduino Uno R3 dengan menggunakan software arduino 1.0.6 dan pengujian dengan pengukuran langsung dengan hardware. Pengujian dengan software arduino 1.0.6 ditunjukan pada listing program seperti pada di bawah ini, pada pengujian ini dilakukan dengan mengubah ubah waktu pengambilan data dan menyesuaikan atau melihat hasil perubahan pada pencatatan data ke SD Card serta perubahaan pergerakan dari relay-relay yang digunakan dalam sistem ini.
Listing program dataloger #include
#include <EEPROM.h> #include <SD.h> #include <Wire.h> #include "RTClib.h" //========CONFIGURASI RTC===================== RTC_DS1307 rtc; int time_sec; int time_min; int time_hour; int date_day; int date_month; int date_year; //========CONFIGURASI LCD===================== LiquidCrystal lcd(9, 10, 7, 6, 5, 3); //========CONFIGURASI TOMBOL================== const int buttonPin1 = 8; const int buttonPin2 = A0; const int buttonPin3 = 2; int tombol1 ; int tombol2 ; int tombol3 ; //========CONFIGURASI RELAY==================== int relay1 = 0; int relay2 = 1; //========CONFIGURASI SENSOR ARUS=============== int analogPin3 = A3; int mVperAmp = 185; int sens_arus= 0; int ACSoffset = 2500; double Voltage = 0; double Amps = 0; 28
//========CONFIGURASI SENSOR TEGANGAN=========== int analogPin1 = A2; float sens_tegangan = 0; //========CONFIGURASI SENSOR ARUS=============== int analogPin2 = A1; float sens_suhu=0; float sens_suhu_volt; float celcius; //========CONFIGURASI EEPROM==================== int address_min = 1; int address_hour = 2; int address_day = 3; int address_month = 4; int address_year = 5; int address_timelog=6; //========CONFIGURASI SAVE DATA================= int jumlah_data; int time_log; int delay_save; //==========FUNCTION SETUP======================= void setup(){ // Serial.begin(9600); //==========SETUP RTC============== rtc.begin(); Wire.begin(); time_log = EEPROM.read(address_timelog); time_sec=0; time_min=EEPROM.read(address_min); time_hour=EEPROM.read(address_hour); date_day=EEPROM.read(address_day); date_month=EEPROM.read(address_month); date_year=EEPROM.read(address_year); date_year=date_year+2000; //==========SETUP TOMBOL============== pinMode (buttonPin1, INPUT); pinMode (buttonPin2, INPUT); pinMode (buttonPin3, INPUT); //==========SETUP RELAY============== pinMode(relay1, OUTPUT); pinMode(relay2, OUTPUT); digitalWrite(relay1, LOW); digitalWrite(relay2, LOW); //==========SETUP LCD============== lcd.begin(16,2); //==========SETUP SD CARD============== pinMode(4, OUTPUT); 29
} //==========FUNCTION LOOP======================= void loop(){ //==========LABEL AWAL=============== awal: lcd.clear(); while(1){ tombol1 = digitalRead(buttonPin1); tombol2 = digitalRead(buttonPin2); tombol3 = digitalRead(buttonPin3); lcd.setCursor(0, 0); lcd.print(" DATA LOGGER"); lcd.setCursor(0, 1); lcd.print("SET-TIME SKIP"); if(tombol1==LOW){ delay(300); goto main; } if(tombol3==HIGH){ delay(300); menu(); } } //==========LABEL MAIN TO SET DATE=============== main: lcd.clear(); lcd.setCursor(0, 0); lcd.print(" DATA LOGGER"); lcd.setCursor(0, 1); lcd.print("SET TIME & DATE"); delay(1000); lcd.clear(); while(1){ tombol1 = digitalRead(buttonPin1); tombol2 = digitalRead(buttonPin2); tombol3 = digitalRead(buttonPin3); lcd.setCursor(0, 0); lcd.print(" SET DAY"); lcd.setCursor(0, 1); lcd.print("DAY = "); lcd.setCursor(7, 1); lcd.print(date_day); if(tombol1==LOW){ delay(200); lcd.clear(); date_day=date_day+1; 30
} if(tombol2==LOW){ delay(200); lcd.clear(); date_day=date_day-1; } if(tombol3==LOW){ delay(300); lcd.clear(); lcd.setCursor(0, 0); lcd.print("SAVING"); lcd.setCursor(0, 1); lcd.print(" DAY"); delay(500); EEPROM.write(address_day, date_day); delay(500); goto set_month; } if (date_day < 1){ date_day=31; } if (date_day > 31){ date_day=1; } } //==========LABEL SET MONTH=============== set_month: lcd.clear(); while(1){ tombol1 = digitalRead(buttonPin1); tombol2 = digitalRead(buttonPin2); tombol3 = digitalRead(buttonPin3); lcd.setCursor(0, 0); lcd.print(" SET MONTH"); lcd.setCursor(0, 1); lcd.print("MONTH = "); lcd.setCursor(9, 1); lcd.print(date_month); if(tombol1==LOW){ delay(200); lcd.clear(); date_month=date_month+1; } if(tombol2==LOW){ delay(200); lcd.clear(); 31
date_month=date_month-1; } if(tombol3==LOW){ delay(300); lcd.clear(); lcd.setCursor(0, 0); lcd.print("SAVING"); lcd.setCursor(0, 1); lcd.print(" MONTH"); delay(500); EEPROM.write(address_month, date_month); delay(500); goto set_year; } if (date_month < 1){ date_month=12; } if (date_month > 12){ date_month=1; } } //==========LABEL SET YEAR=============== set_year: lcd.clear(); while(1){ tombol1 = digitalRead(buttonPin1); tombol2 = digitalRead(buttonPin2); tombol3 = digitalRead(buttonPin3); lcd.setCursor(0, 0); lcd.print(" SET YEAR"); lcd.setCursor(0, 1); lcd.print("YEAR = "); lcd.setCursor(8, 1); lcd.print(date_year); if(tombol1==LOW){ delay(200); lcd.clear(); date_year=date_year+1; } if(tombol2==LOW){ delay(200); lcd.clear(); date_year=date_year-1; } if(tombol3==LOW){ delay(300); 32
lcd.clear(); lcd.setCursor(0, 0); lcd.print("SAVING"); lcd.setCursor(0, 1); lcd.print(" YEAR"); delay(500); date_year=date_year-2000; EEPROM.write(address_year, date_year); delay(500); date_year=date_year+2000; goto set_hour; } if (date_year < 2010){ date_year=2020; } if (date_year > 2020){ date_year=2010; } } //==========LABEL SET HOUR=============== set_hour: lcd.clear(); while(1){ tombol1 = digitalRead(buttonPin1); tombol2 = digitalRead(buttonPin2); tombol3 = digitalRead(buttonPin3); lcd.setCursor(0, 0); lcd.print(" SET HOUR"); lcd.setCursor(0, 1); lcd.print("HOUR = "); lcd.setCursor(8, 1); lcd.print(time_hour); if(tombol1==LOW){ delay(200); lcd.clear(); time_hour=time_hour+1; } if(tombol2==LOW){ delay(200); lcd.clear(); time_hour=time_hour-1; } if(tombol3==LOW){ delay(300); lcd.clear(); lcd.setCursor(0, 0); 33
lcd.print("SAVING"); lcd.setCursor(0, 1); lcd.print(" HOUR"); delay(500); EEPROM.write(address_hour, time_hour); delay(500); goto set_min; } if (time_hour < 0){ time_hour=23; } if (time_hour > 23){ time_hour=0; } } //==========LABEL SET MINUTE=============== set_min: lcd.clear(); while(1){ tombol1 = digitalRead(buttonPin1); tombol2 = digitalRead(buttonPin2); tombol3 = digitalRead(buttonPin3); lcd.setCursor(0, 0); lcd.print(" SET MINUTE"); lcd.setCursor(0, 1); lcd.print("MINUTE = "); lcd.setCursor(10, 1); lcd.print(time_min); if(tombol1==LOW){ delay(200); lcd.clear(); time_min=time_min+1; } if(tombol2==LOW){ delay(200); lcd.clear(); time_min=time_min-1; } if(tombol3==LOW){ delay(300); lcd.clear(); lcd.setCursor(0, 0); lcd.print("SAVING"); lcd.setCursor(0, 1); lcd.print(" MINUTE"); delay(500); 34
EEPROM.write(address_min, time_min); delay(500); goto reset_time; } if (time_min < 0){ time_min=60; } if (time_min > 60){ time_min=0; } } //==========LABEL RESET TIME=============== reset_time: time_min=EEPROM.read(address_min); time_hour=EEPROM.read(address_hour); date_day=EEPROM.read(address_day); date_month=EEPROM.read(address_month); date_year=EEPROM.read(address_year); rtc.adjust(DateTime(date_year,date_month,date_day,time_hour,time_min,time_sec)); menu(); } //==========FUNCTION MENU=============== void menu(){ lcd.clear(); while(1){ tombol1 = digitalRead(buttonPin1); tombol2 = digitalRead(buttonPin2); tombol3 = digitalRead(buttonPin3); lcd.setCursor(0, 0); lcd.print(" DATA LOGGER"); lcd.setCursor(0, 1); lcd.print("SETTING GO!"); if(tombol1==LOW){ delay(300); loop(); } if(tombol3==HIGH){ delay(300); go(); } } } //==========FUNCTION GO=============== void go() { if (SD.begin(4)) { 35
time_log = EEPROM.read(address_timelog); delay_save=time_log*60; File dataFile = SD.open("datalog1.csv", FILE_WRITE); if (dataFile) { dataFile.print("TGL"); dataFile.print(","); dataFile.print("JAM"); dataFile.print(","); dataFile.print("SUHU"); dataFile.print(","); dataFile.print("Vload"); dataFile.print(","); dataFile.print("Iload"); dataFile.print(","); dataFile.print("Isc"); dataFile.print(","); dataFile.println("Voc"); delay(2000); dataFile.close(); } while(1){ tombol1 = digitalRead(buttonPin1); tombol2 = digitalRead(buttonPin2); tombol3 = digitalRead(buttonPin3); lcd.clear(); sens_tegangan = analogRead(analogPin1); sens_suhu = analogRead(analogPin2); sens_arus = analogRead(analogPin3); sens_tegangan=sens_tegangan/39.9; sens_suhu_volt=sens_suhu/1023*5000; celcius=sens_suhu_volt/10; Voltage = (sens_arus / 1023.0) * 5000; // Gets you mV Amps = ((Voltage - ACSoffset) / mVperAmp); DateTime now = rtc.now(); date_day= now.day(); date_month= now.month(); date_year= now.year(); time_hour= now.hour(); time_min= now.minute(); time_sec= now.second(); delay_save=0; if(time_hour>23){ time_hour=0; } lcd.setCursor(0, 0); lcd.print(time_hour); 36
lcd.setCursor(2, 0); lcd.print(":"); lcd.setCursor(3, 0); lcd.print(time_min); lcd.setCursor(5, 0); lcd.print(":"); lcd.setCursor(6, 0); lcd.print(time_sec); EEPROM.write(address_day, date_day); EEPROM.write(address_month, date_month); EEPROM.write(address_year, date_year); EEPROM.write(address_hour, time_hour); EEPROM.write(address_min, time_min); lcd.setCursor(9, 0); lcd.print(sens_tegangan); lcd.print("V"); lcd.setCursor(0, 1); lcd.print(celcius); lcd.print("C"); lcd.setCursor(8, 1); lcd.print(Amps); lcd.print("A"); lcd.setCursor(14, 1); lcd.print(jumlah_data); delay(1000); if (tombol1==0){ delay(200); time_min=0; time_sec=0; } if(time_min==0 & time_sec==0 | time_min==10 & time_sec==0 | time_min==20 & time_sec==0 | time_min==30 & time_sec==0 | time_min==40 & time_sec==0 | time_min==50 & time_sec==0) { jumlah_data=jumlah_data+1; lcd.setCursor(14, 1); lcd.print(jumlah_data); //==========SAVE DATA DC VOLTAGE AND DC CURRENT WITH LOAD============== Vload & Iload digitalWrite(relay1, LOW); digitalWrite(relay2, HIGH); File dataFile = SD.open("datalog1.csv", FILE_WRITE); for(int x=0 ; x<5 ; x++){ sens_tegangan = analogRead(analogPin1); sens_suhu = analogRead(analogPin2); sens_arus = analogRead(analogPin3); 37
sens_tegangan=sens_tegangan/39.9; sens_suhu_volt=sens_suhu/1023*5000; celcius=sens_suhu_volt/10; Voltage = (sens_arus / 1023.0) * 5000; Amps = ((Voltage - ACSoffset) / mVperAmp); lcd.clear(); lcd.setCursor(8, 1); lcd.print(Amps); lcd.print("A"); lcd.setCursor(9, 0); lcd.print(sens_tegangan); lcd.print("V"); delay(200); // set delay rele 1 voltage & current LOAD Serial.println(x); } if (dataFile) { Serial.print("save"); dataFile.print(now.day(),DEC); dataFile.print("/"); dataFile.print(now.month(),DEC); dataFile.print("/"); dataFile.print(now.year(),DEC); dataFile.print(","); dataFile.print(now.hour(),DEC); dataFile.print(":"); dataFile.print(now.minute(),DEC); dataFile.print(","); dataFile.print(celcius); dataFile.print(","); dataFile.print(sens_tegangan); dataFile.print(","); dataFile.print(Amps); dataFile.print(","); delay(1000); digitalWrite(relay1, LOW); digitalWrite(relay2, LOW); delay(400); //==========SAVE DATA DC CURRENT WHEN SHORT CIRCUIT============== only Isc digitalWrite(relay1, HIGH); digitalWrite(relay2, LOW); for(int x=0 ; x<4 ; x++){ sens_arus = analogRead(analogPin3); Voltage = (sens_arus / 1023.0) * 5000; // Gets you mV Amps = ((Voltage - ACSoffset) / mVperAmp); lcd.clear(); 38
lcd.setCursor(8, 1); lcd.print(Amps); lcd.print("A"); delay(200); // set delay rele 2 arus SORT CIRCUIT only Current } dataFile.print(Amps); dataFile.print(","); delay(200); //==========SAVE DATA DC VOLTAGE WHEN SHORT CIRCUIT============== digitalWrite(relay1, LOW); digitalWrite(relay2, LOW); for(int x=0 ; x<5 ; x++){ sens_tegangan = analogRead(analogPin1); sens_tegangan=sens_tegangan/39.9; lcd.setCursor(9, 0); lcd.print(sens_tegangan); lcd.print("V"); delay(200); } dataFile.println(sens_tegangan); delay(1000); dataFile.close(); } } } } } Dalam listing program tersebut tersdapat seting waktu yang mana seting waktu yang digunakan untuk pengukuran ini adalah setiap 10 menit. Untuk hasil pengujian dari data logger dilakukan pada pengukuran tegangan pada panel surya. Hasil pengukuran yang didapat adalah pengukuran tanggal, jam, suhu permukaan panel surya, tegangan tanpa beban, Arus tanpa beban, arus hubung singkat dan tegangan hubungan terbuka. Hasil pengukuran ini ditunjukkan pada tabel 4.2. Dalam pengujian ini hanya dicari harga maksimum dan minimum, sehingga untuk nilai arus bbereban (Iload) adalah nol. Grafik perubahan suhu, Arus hubung singkat dan Tegangan rangkaian terbuka ditunjukkan pada gambar 4.12, 4.13 dan 4.14. Tabel 4.2 Pengukuran pada panel surya untuk suhu arus dan tegangan Tangal 17/8/2015 17/8/2015 17/8/2015 17/8/2015
Jam 7:30 7:40 7:50 8:00
Suhu
Vload
ILoad
50.78 56.15 60.06 64.94
19.67 19.6 19.65 19.7
0 0.03 0 -0.03
Isc
Voc
0.63 0.61 0.61 0.84
19.67 19.6 19.65 19.7
39
17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015
8:10 8:20 8:30 8:40 8:50 9:00 9:10 9:20 9:30 9:40 9:50 10:00 10:10 10:20 10:30 10:40 10:50 11:00 11:10 11:20 11:40 11:50 12:00 12:20 12:30 12:40 12:50 13:00 13:10 13:20 13:30 13:40 13:50 14:00 14:10 14:20 14:30 14:40 14:50 15:00 15:10 15:20 15:30
67.87 65.92 65.43 61.04 56.64 60.06 67.38 62.5 65.92 67.87 55.18 53.22 52.73 53.22 53.71 54.69 51.76 53.71 53.71 52.73 54.2 54.2 54.69 53.22 53.71 53.71 53.71 53.22 53.22 52.25 52.73 54.2 52.73 53.71 52.25 53.71 55.66 52.73 54.69 57.13 59.57 60.06 60.06
19.72 19.72 19.37 19.47 19.45 19.7 19.42 19.95 19.05 20.45 19.62 19.5 19.47 19.4 19.62 19.6 19 19.42 19.3 19.35 19.35 19.3 19.3 19.35 19.35 19.27 19.37 19.35 19.4 19.47 19.5 19.47 19.47 19.47 19.42 19.52 19.57 19.52 19.57 19.65 19.67 19.65 19.67
-0.03 0 -0.08 0 -0.08 0 -0.03 -0.08 0.05 -0.03 0 0.03 0.03 -0.05 -0.03 -0.03 0.03 0.05 0.03 -0.05 0.03 0 0.05 -0.05 0.03 -0.05 0.03 -0.03 -0.08 -0.08 0.03 -0.03 0 -0.03 0 0 0 0.03 -0.08 0.03 0.08 -0.05 -0.08
0.92 0.98 0.48 0.37 0.45 0.61 0.63 1.24 0.63 2.01 2.03 2.3 2.48 2.43 2.4 2.48 2.16 2.61 2.56 2.59 2.67 2.72 2.72 2.69 2.72 2.69 2.69 2.74 2.69 2.56 2.53 2.53 2.48 2.43 2.3 2.27 2.22 2.09 1.98 1.98 1.9 1.79 1.69
19.72 19.7 19.5 19.5 19.42 19.67 19.6 19.95 19.05 20.43 19.62 19.5 19.5 19.4 19.62 19.6 19.45 19.42 19.3 19.35 19.35 19.32 19.3 19.35 19.35 19.3 19.4 19.32 19.4 19.47 19.5 19.47 19.47 19.47 19.42 19.52 19.57 19.52 19.6 19.65 19.67 19.65 19.67
40
17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015 17/8/2015
15:40 15:50 16:00 16:10 16:20 16:30 16:40 16:50 17:00 17:10 17:20 17:30 17:40 17:50 18:00 18:10 18:20 18:30 18:40
62.01 63.48 64.94 65.43 66.41 66.89 64.94 62.99 61.52 58.11 54.69 50.29 44.92 46.39 46.88 26.37 23.93 22.95 22.95
19.7 19.62 19.6 19.65 19.6 19.62 19.6 19.47 19.32 19.15 18.85 18.55 17.87 16.52 14.34 11.1 6.82 1.15 0.08
-0.03 -0.05 0.03 0.03 0 0.05 -0.03 0.03 -0.08 0.03 0.11 0 0.03 0 0 0.03 -0.05 0.16 -0.08
1.58 1.43 1.35 1.24 1.06 0.98 0.79 0.69 0.53 0.45 0.26 0.29 0.16 0.08 -0.05 0 0.03 0.05 0
19.7 19.62 19.6 19.67 19.6 19.62 19.6 19.47 19.32 19.15 18.87 18.55 17.87 16.52 14.34 11.08 6.79 1.13 0.08
Suhu (oC) 80 60 40 20 7:30 7:50 8:10 8:30 8:50 9:10 9:30 9:50 10:10 10:30 10:50 11:10 11:40 12:00 12:30 12:50 13:10 13:30 13:50 14:10 14:30 14:50 15:10 15:30 15:50 16:10 16:30 16:50 17:10 17:30 17:50 18:10 18:30
0
Gambar 4.12 Pengujian pengukuran suhu
41
3 2.5 2 1.5 1 0.5 0 -0.5
7:30 7:50 8:10 8:30 8:50 9:10 9:30 9:50 10:10 10:30 10:50 11:10 11:40 12:00 12:30 12:50 13:10 13:30 13:50 14:10 14:30 14:50 15:10 15:30 15:50 16:10 16:30 16:50 17:10 17:30 17:50 18:10 18:30
Arus(A)
Gambar 4.13 Pengujian pengukuran Arus Hubung Singkat
Tegangan (Volt) 25 20 15 10 5 7:30 7:50 8:10 8:30 8:50 9:10 9:30 9:50 10:10 10:30 10:50 11:10 11:40 12:00 12:30 12:50 13:10 13:30 13:50 14:10 14:30 14:50 15:10 15:30 15:50 16:10 16:30 16:50 17:10 17:30 17:50 18:10 18:30
0
Gambar 4.14 Pengujian pengukuran Tegangan Rangkaian Terbuka
Dari hasil pengukuran tersebut terlihat bahwa hasil pengukuran dapat dilakukan secara realtime dengan seting waktu pengambilan data setiap 10 menit. Perekaman data yang dilakukan selama satu hari untuk durasi perekaman setiap 10 menit (66 kali dalam sehari, lihat hasil rekam pada tabel 4.2) membutuhkan kapasitas penyimpan data rata-rata 3 KB, hasil rekam data tersebut ditunjukan pada gambar 4.15.Dengan menggunakan SD card dengan kapasitas 1 GB memiliki nilai kapasitas yang bisa digunakan adalah 1024 MB, Secara keseluruhan lama perhitungan waktu penyimpanan adalah:
Gambar 4.15 Besar hasil rekam data logger 42
1024MB/3KB= 341000 hari = 935 tahun Jadi lama waktu SD card dengan kapasitas 1 GB ketika file penuh adalah 935 Tahun, artinya sangat panjang sekali, sehingga walaupun dibuat real time terus menerus sudah sangat kecil kapasitas file yang terekam.
43
BAB V SIMPULAN
5.1 Simpulan Dari hasil penelitian Data Logger Suhu, Arus dan Tegangan Berbasis Mikrokontroler Arduino Uno R3 dapat disimpullkan sebagai berikut: 1. Data Logger Suhu, Arus Dan Tegangan Berbasis Mikrokontroler Arduino Uno R3 dapat mengukur dan menyimpan data suhu, arus dan tegangan. 2. Penggunaan penyimpanan SD Card sangat kecil, sehingga tidak dibutuhkan kapasaitas yang besar, cukup dengan kapasitas 1GB 3. Mikrokontroller Arduino Uno R3 sangat cocok untuk diaplikasikan dalam penggunaan data loger dengan kapasitas 14 digital input/output. 5.2 Saran Seting waktu pengambilan data perlu dibuatkan aplikasi menu input waktu pengambilan data, sehingga durasi waktu pengambilan data bisa dilakukan dari menu seting tersebut.
44
DAFTAR PUSTAKA
Adrianto, H. 2008. Pemrograman AVR ATmega16 Menggunakan Bahasa C (CodeVision AVR). Bandung : Informatika. Anonim [a]. 2011. I2C Tutorial. http://www.robot-electronics.co.uk/acatalog/ I2C_Tutorial.html . Diakses tanggal 17 Mei 2015. Anonim [b]. 2011. Mikrokontroler ATmega 8. http://aachen.ccc.de/chaosschule-sommer-2011/ . Diakses tanggal 11 Juli 2015. Anonim
[c]. 2014. 16x2 White on Blue Character LCD with http://www.gravitech.us/16chbllcdwib.html . Diakses tanggal 11 Juli 2015.
Backlight
Anonim [d]. 2014. I2C (Inter-Integrated Circuit) http://en.wikipedia.org/wiki/ I%C2%B2C . Diakses tanggal 20 Maret 2015. Arduino, 2011. Datasheet Arduino NG. http://arduino.cc/en/main/boards . Diakses tanggal 17 Agustus 2015. Atmel.
2011. ATmega8/L datasheet. http://www.atmel.com/images/atmel-2486-8-bit-avrmicrocontroller-atmega8_l_datasheet.pdf. Diakses tanggal 15 Januari 2015.
Baaret
S.F., 2013, Arduino Microcontroller Processing for Everyone! Third Edition, A Publication in the Morgan & Claypool Publishers series.
Dinata,Y,M. 2014. Arduino Itu Mudah. Jakarta: PT Elex Media Komputindo. Prayogo.R. 2012. “Pengaturan PWM (Pulse Wide Modulation) Dengan PLC”. Malang: Universitas Brawijaya. Withaman, Acta.,(2009). Rancang Bangun Rekam Data Kelembaban Relatif dan Suhu Udara Berbasis Mikrokontroler. Institut Pertanian Bogor. Bogor
45
LAMPIRAN 1. Instrumen
Pengujian data logger
Perakitan data logger
Pengujiah suhu permukaan panel surya
Posisi connector data logger
46
LAMPIRAN 2. Personalia tenaga Peneliti
No.
Nama/NIDN
Instansi Asal
Bidang Ilmu
Alokasi Waktu (jam/minggu)
Uraian Tugas
FT Unud
Teknik Tenaga Listrik
8
Mengatur Rencana dan pelaksanaan penelitian
2 Ir. Cokorde Gede Indra Partha, M.Erg., MT ( 0025056513)
FT Unud
Teknik Tenaga Listrik
6
Disain perakitan dan pemrograman
Ir. I Wayan Arta Wijaya, M.Erg., MT (0013036609)
FT Unud
Teknik Tenaga Listrik
6
Pengolahan data serta menyusun laporan
1
3
Ir. I Nyoman Budiastra, MKes., MT. (0031126728)
47
LAMPIRAN 3. Data Sheet
48
49
50
51