Tugas Akhir - Final

78
TUGAS AKHIR Perancangan Sistem Pengukur Suhu Menggunakan Arduino dan C#.Net Diajukan guna melengkapi sebagian syarat dalam mencapai gelar Sarjana Strata Satu (S1) Disusun Oleh : Nama : Lucky Yuditia Putra NIM : 41411110052 Program Studi : Teknik Elektro PROGRAM STUDI TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS MERCU BUANA JAKARTA 2013

description

JAIME LUIS DA COSTA

Transcript of Tugas Akhir - Final

Page 1: Tugas Akhir - Final

TUGAS AKHIR

Perancangan Sistem Pengukur Suhu Menggunakan Arduino dan C#.Net

Diajukan guna melengkapi sebagian syarat

dalam mencapai gelar Sarjana Strata Satu (S1)

Disusun Oleh :

Nama : Lucky Yuditia Putra

NIM : 41411110052

Program Studi : Teknik Elektro

PROGRAM STUDI TEKNIK ELEKTRO

FAKULTAS TEKNIK

UNIVERSITAS MERCU BUANA

JAKARTA

2013

Page 2: Tugas Akhir - Final

LEMBAR PERNYATAAN

Yang bertanda tangan di bawah ini,

Nama : Lucky Yuditia Putra

N.I.M : 41411110052

Jurusan : Teknik Elektro

Fakultas : Teknik

Judul Skripsi : Perancangan Sistem Pengukur Suhu Menggunakan

Arduino dan C#.Net

Dengan ini menyatakan bahwa hasil penulisan Skripsi yang telah saya buat

ini merupakan hasil karya sendiri dan benar keasliannya. Apabila ternyata di

kemudian hari penulisan Skripsi ini merupakan hasil plagiat atau penjiplakan

terhadap karya orang lain, maka saya bersedia mempertanggungjawabkan

sekaligus bersedia menerima sanksi berdasarkan aturan tata tertib di Universitas

Mercu Buana

Demikian, pernyataan ini saya buat dalam keadaan sadar dan tidak

dipaksakan

Penulis,

Lucky Yuditia Putra

Page 3: Tugas Akhir - Final

LEMBAR PENGESAHAN

Perancangan Sistem Pengukur Suhu Menggunakan Arduino dan C#.Net

Disusun Oleh :

Nama : Lucky Yuditia Putra

NIM : 41411110052

Jurusan : Teknik Elektro

Pembimbing,

[ Ir. Yudhi Gunardi, MT]

Mengetahui,

Koordinator Tugas Akhir / Ketua Program Studi

[ Ir. Yudhi Gunardi, MT ]

Page 4: Tugas Akhir - Final

iv

ABSTRAK

Perancangan Sistem Pengukur Suhu Menggunakan Arduino dan C#.Net

Sebagai makhluk hidup pada hakikatnya membutuhkan suhu udara yang tepat untuk memenuhi kebutuhan hidupnya. Agar lebih efisien maka perlu dilakukannya proses pengukuran. Salah satu proses pengukur suhu ruangan yang banyak digunakan baik untuk memenuhi kebutuhan di industri maupun di rumah tangga pada saat ini adalah sistem pengukur suhu dan pendingin ruangan secara otomatis. Sistem pengukur suhu dan otomatisasi pendingin ruangan merupakan salah satu sistem yang sangat bermanfaat bagi kehidupan manusia. Dengan sistem ini diharapkan dapat mempermudah mengetahui suhu ruangan. LM35 merupakan sensor yang digunakan dalam tugas akhir ini sebagai sensor yang sangat sensitif terhadap temperatur. Hasil sensor tersebut di olah Arduino Uno yang kemudian ditampilkan dalam aplikasi desktop dengan menggunakan C# .Net dan disimpan kedalam basis data. Setelah dilakukannya proses pengujian, sistem pengukur suhu ruangan khususnya yang dibuat pada tugas akhir ini dapat mengukur suhu ruangan dengan nilai toleransi data tak tersimpan ± 4 kali dalam satu menit. Ketika suhu melebihi suhu yang ditetapkan, maka kipas akan berputar secara otomatis sebagai pendingin ruangan. Sistem ini bekerja setiap detik serta menampilkan hasil pada aplikasi desktop dan menyimpan ke dalam basis data sebagai tempat penyimpanan terakhir yang dikemudian hari dapat dikembangkan atau di ambil sebuah keputusan.

Kata kunci : Pengukuran, Suhu, Ruangan, Arduino, Uno, LM35, Kipas, C# .Net, Pendingin, Otomatis, Otomatisasi

Page 5: Tugas Akhir - Final

v

KATA PENGANTAR

Puji Syukur Alhamdullilah, penulis panjatkan kehadirat Allah SWT, yang

telah melimpahkan rahmat dan karunia-Nya, sehingga pada akhirnya penulis

dapat menyelesaikan tugas akhir ini dengan baik. Dimana tugas akhir ini penulis

sajikan dalam bentuk paper sederhana. Adapun judul tugas akhir yang penulis

buat sebagai beikut “Perancangan Sistem Pengukur Suhu Menggunakan Arduino

dan C#.Net”.

Tujuan dari penulisan tugas akhir ini yaitu guna mendapatkan gelar sarjana

strata satu pada Universitas Mercu Buana. Sebagai bahan penulisan diambil

berdasarkan hasil penelitian atau eksperimen, observasi dan beberapa literatur

yang mendukung penulisan tugas akhir ini. Penulis menyadari bahwa tanpa

bimbingan dan dorongan dari semua pihak, maka penulisan tugas akhir ini tidak

akan berjalan dengan lancar. Oleh karena itu pada kali ini, penulis menyampaikan

ucapan terima kasih kepada:

1. Rektor Universitas Mercu Buana

2. Bapak Ketua Program Studi Teknik Elektro

3. Bapak Koordinator Tugas Akhir

4. Bapak Ir. Yudhi Gunardi, MT selaku pembimbing

5. Orang tua yang memberikan dukungan penuh

6. Istri tercinta Ratih Yulia Hayuningtyas

Dan semua pihak yang banyak membantu penulisan tugas akhir ini yang

tidak dapat disebutkan. Penulis menyadari bahwa penulisan tugas akhir ini masih

Page 6: Tugas Akhir - Final

vi

jauh sekali dari sempurna, untuk itu penulis mohon kritik dan saran demi

membangun kesempurnaan penulisan ini.

Akhir kata semoga penulisan tugas akhir ini dapat bermanfaat dan berguna

bagi para pembaca pada umumnya.

Jakarta, September 2013

Lucky Yuditia Putra

Page 7: Tugas Akhir - Final

vii

DAFTAR ISI

LEMBAR PERNYATAAN ................................................................................. ii

LEMBAR PENGESAHAN ................................................................................. iii

ABSTRAK .................................................................................................... iv

KATA PENGANTAR ......................................................................................... v

DAFTAR ISI ................................................................................................... vii

DAFTAR GAMBAR ........................................................................................... x

DAFTAR TABEL ............................................................................................. xii

BAB I PENDAHULUAN ................................................................................. 1

1.1 Latar Belakang Masalah......................................................................... 1

1.2 Rumusan Masalah .................................................................................. 2

1.3 Pembatasan Masalah .............................................................................. 2

1.4 Tujuan Penulisan ................................................................................... 3

1.5 Metodologi Penelitian ............................................................................ 3

1.6 Sistematika Penulisan ............................................................................ 4

BAB II LANDASAN TEORI ............................................................................ 5

2.1. Mikrokontroler ...................................................................................... 5

2.2. Arduino ................................................................................................. 7

2.2.1. Pengenalan ..................................................................................... 7

2.2.2. Sejarah Arduino .............................................................................. 8

2.2.3. Hardware ........................................................................................ 9

2.2.4. Software Arduino ......................................................................... 10

2.2.5. Melakukan Penginstalan Arduino Ke Komputer ........................... 13

2.2.6. Melakukan Penginstalan Driver Untuk Windows .......................... 13

Page 8: Tugas Akhir - Final

viii

2.2.7. Identifikasi Port Pada Windows .................................................... 14

2.2.8. Melakukan Pengujian Pada Papan Arduino ................................... 16

2.2.9. Melakukan Pengujian Rangkaian Pada Papan Percobaan .............. 17

2.2.10. Masalah Dengan IDE .................................................................... 18

2.2.11. Troubleshooting Arduino .............................................................. 19

2.3. Kipas/ Motor DC ................................................................................. 21

2.4. Sensor suhu IC LM 35 ......................................................................... 22

2.4.1. Karakteristik Sensor LM35 ........................................................... 23

2.4.2. Prinsip Kerja LM35 ...................................................................... 24

2.4.3. Kelebihan dan Kelemahan IC Temperature LM35 ........................ 25

2.5. Protoboard ........................................................................................... 25

2.5.1. Spesifikasi Protoboard .................................................................. 26

2.6. Transistor............................................................................................. 29

2.7. Microsoft Visual C# ( C Sharp) .Net .................................................... 31

2.7.1. Sejarah.......................................................................................... 32

2.7.2. Tujuan Desain............................................................................... 34

BAB III PERANCANGAN ALAT ................................................................. 36

3.1. Alat dan Bahan .................................................................................... 36

3.2. Rancangan Sistem Pengukur Suhu dan Pendingin Ruangan ................. 36

3.2.1. Perancangan Aplikasi ................................................................... 37

3.3. Perancangan Miniatur Ruangan ........................................................... 38

3.4. Rangkaian Arduino dengan Sensor LM 35 ........................................... 39

3.5. Rangkaian Arduino dengan Kipas DC 12V .......................................... 40

3.6. Diagram Alir Sistem Pengukur Suhu dan Pendingin ............................ 40

Page 9: Tugas Akhir - Final

ix

3.7. Perancangan Aplikasi Desktop menggunakan C# .Net.......................... 42

3.7.1. Perancangan Main Form ............................................................... 42

3.7.2. Perancangan form penampil data................................................... 43

BAB IV PENGUJIAN ALAT ......................................................................... 45

4.1. Pengujian Hardware. ............................................................................ 45

4.1.1. Pengujian Rangkaian Arduino dengan LM35 ................................ 45

4.1.2. Pengujian Rangkaian dengan Kipas .............................................. 46

4.2. Pengujian Software .............................................................................. 48

4.2.1. Menginstal Aplikasi Desktop ........................................................ 48

4.2.2. Menampilkan aplikasi desktop ...................................................... 50

4.3. Hasil Pengukuran Suhu dan Interaksi Aplikasi dengan Arduino ........... 51

4.3.1. Menampilkan Suhu yang dipanaskan ............................................ 52

4.3.2. Menampilkan suhu yang didinginkan ............................................ 52

4.3.3. Menampilkan hasil pengukuran suhu yang telah disimpan ............ 53

4.3.4. Toleransi Hasil Pengukuran .......................................................... 54

4.3.5. Perbandingan dengan alat Termometer lain ................................... 56

BAB V KESIMPULAN .................................................................................. 58

5.1. Kesimpulan.......................................................................................... 58

5.2. Saran ................................................................................................... 59

DAFTAR PUSTAKA

LAMPIRAN

Page 10: Tugas Akhir - Final

x

DAFTAR GAMBAR

Gambar 2.1. Bagian Mikrokontroler .................................................................. 5

Gambar 2.2. Hardware Arduino ........................................................................ 9

Gambar 2.3. Device Manager pada Windows menampilkan semua terminal

serial ................................................................................................... 15

Gambar 2.4. Kipas DC .................................................................................... 21

Gambar 2.5. IC LM35 ..................................................................................... 22

Gambar 2.6. Grafik akurasi LM35 terhadap Suhu ........................................... 23

Gambar 2.7. Mini Protoboard .......................................................................... 26

Gambar 2.8. Jalur Breadboard ......................................................................... 28

Gambar 2.9. Transistor.................................................................................... 29

Gambar 2.10. Diagram rangkaian dari transistor Darlington .............................. 30

Gambar 2.11. Microsoft Visual C# .Net ............................................................ 32

Gambar 3.1. Diagram Blok Sistem .................................................................. 37

Gambar 3.2. Miniatur ruangan ........................................................................ 39

Gambar 3.3. Rangkaian Arduino dan LM 35 ................................................... 39

Gambar 3.4. Rangkaian Arduino dengan Kipas / Motor .................................. 40

Gambar 3.5. Diagram alir sistem kontrol suhu................................................. 41

Gambar 3.6. Form utama aplikasi desktop ....................................................... 43

Gambar 3.7. Perancangan form penampil data ................................................ 44

Gambar 4.1. Kipas tidak berputar ketika suhu sebenarnya lebih kecil dari suhu

variable ................................................................................................... 47

Page 11: Tugas Akhir - Final

xi

Gambar 4.2. Kipas menyala ketika suhu variable lebih kecil dari suhu

sebenarnya ................................................................................................... 47

Gambar 4.3. Software aplikasi desktop ........................................................... 48

Gambar 4.4. Instalasi Aplikasi Pengukur Suhu ................................................ 48

Gambar 4.5. Lokasi penyimpanan file instalasi ............................................... 49

Gambar 4.6. Konfirmasi instalasi aplikasi ....................................................... 49

Gambar 4.7. Instalasi Aplikasi selesai ............................................................. 50

Gambar 4.8. Shortcut aplikasi desktop ............................................................ 50

Gambar 4.9. Tampilan awal aplikasi desktop................................................... 51

Gambar 4.10. Interaksi Arduino dengan aplikasi desktop .................................. 51

Gambar 4.11. Tampilan aplikasi desktop ketika sensor suhu dipanaskan ........... 52

Gambar 4.12. Tampilan aplikasi desktop ketika sensor suhu didinginkan .......... 53

Gambar 4.13. Informasi suhu yang disimpan di basis data................................. 53

Page 12: Tugas Akhir - Final

xii

DAFTAR TABEL

Tabel 3.1. Alat dan Bahan ........................................................................... 36

Tabel 4.1. Tabel hasil pengujian pengukuran suhu ....................................... 46

Tabel 4.2. Hasil pengukuran suhu waktu per detik ....................................... 54

Tabel 4.3. Hasil perbandingan dengan termometer ...................................... 56

Page 13: Tugas Akhir - Final

1

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Di jaman yang semakin maju ini, terlahir banyak solusi yang dapat

memecahkan permasalahan manusia. Permasalahan yang timbul akibat

keterbatasan manusia ataupun dari faktor lain, kini sedikit demi sedikit sudah

dapat diatasi. Salah satu solusi yang dapat memecahkan permasalan manusia yaitu

dengan menggunakan sistem kendali berbasis komputer. Dengan menggunakan

sistem kendali berbasis komputer, diharapkan dapat membantu dan meringankan

pekerjaan manusia serta menjadi solusi untuk setiap permasalahan manusia.

Mikrokontroler merupakan suatu pengendali berukuran mikro, yang dapat

digunakan bersamaan dengan alat elektronik lainnya. Keunggulan yang dimiliki

mikrokontroler yaitu sebagai suatu sistem kendali.

Pemakaian mikrokontroler umumnya digunakan dalam embedded systems

yaitu sub-sistem mikrokomputer khusus sebagai bagian dari suatu sistem yang

pengontrolnya yaitu mikrokontroler dihubungkan dalam suatu mesin. Ciri khas

dari embedded systems adalah tidak melakukan transformasi data tetapi langsung

berinteraksi dengan perangkat luar seperti sensor dan aktuator.

Page 14: Tugas Akhir - Final

2

Untuk membuktikan bahwa mikrokontroler dapat dirancang untuk suatu

sistem kendali berbasis komputer dan melakukan suatu pekerjaan manusia yang

khususnya pada tugas akhir ini adalah digunakan sebagai suatu sistem untuk

mengukur suhu ruangan. Maka penulis membuat laporan tugas akhir ini dengan

judul “Perancangan Sistem Pengukur Suhu Menggunakan Arduino dan

C#.Net”.

1.2 Rumusan Masalah

Berdasarkan dari latar belakang tersebut maka beberapa permasalahan

yang akan muncul dalam mengerjakan tugas akhir ini antara lain :

1. Prinsip kerja dari mikrokontroler khususnya pada mikrokontroler yang akan

digunakan yaitu Arduino Uno.

2. Pembuatan program mikrokontroler yang akan dibuat agar sesuai dengan

yang diinginkan.

3. Komunikasi mikrokontroler dengan komponen lainnya seperti Sensor Suhu,

Kipas DC serta aplikasi desktop menggunakan C# .Net.

1.3 Pembatasan Masalah

Dikarenakan luasnya permasalahan di dalam pembahasan dan agar tidak

terjadi kesalahpahaman maksud dari apa yang ada di dalam penulisan tugas akhir

ini maka dibutuhkannya pembatasan masalah tersebut antara lain :

1. Membahas mengenai perancangan program mikrokontroler khususnya

Arduino Uno yang diaplikasikan sebagai sistem pengukur suhu ruangan.

2. Membahas komponen yang digunakan dalam membuat tugas akhir ini.

Page 15: Tugas Akhir - Final

3

3. Membahas mengenai rangkaian yang digunakan dalam membuat tugas akhir

ini.

1.4 Tujuan Penulisan

Berikut ini merupakan beberapa tujuan dari penulisan tugas akhir ini

antara lain :

1. Mengetahui cara mengomunikasikan antara mikrokontroler khususnya

Arduino Uno dengan Sensor Suhu, Kipas DC dan aplikasi desktop

menggunakan C# .Net.

1.5 Metodologi Penelitian

Untuk menyelesaikan penulisan tugas akhir ini penulis melakukan

beberapa tahap metode penelitian sebagai berikut :

1. Studi Pustaka

Pada metode ini penulis mencari bahan penulisan tugas akhir ini yang

diperoleh dari buku atau jurnal yang khususnya mengenai pembuatan tugas

akhir ini.

2. Eksperimen

Dengan metodologi eksperimen penulis membuat alat pengukur suhu

ruangan, dimana semua data diambil berdasarkan hasil baik dari proses

perancangan, proses pemrogaman sampai proses pengujian alat.

Page 16: Tugas Akhir - Final

4

1.6 Sistematika Penulisan

Sistematika penulisan pada tugas akhir ini dibagi atas beberapa bab dan

masing-masing bab terbagi menjadi beberapa sub-bab. Setiap bab memberikan

gambaran secara keseluruhan mengenai isi dari tugas akhir ini.

BAB I PENDAHULUAN

Pada bab ini menguraikan tentang latar belakang, rumusan

masalah, batasan masalah, tujuan penelitian, metode penelitian,

dan sistematika penulisan.

BAB II LANDASAN TEORI

Dalam bab ini menjelaskan tentang teori yang berhubungan dengan

sistem atau alat yang dirancang diantaranya yaitu, teori pengertian

tentang mikrokontroler, arduino, sensor suhu LM35, kipas dc,

transistor, protoboard dan tentang software Microsoft Visual C#.

BAB III PERANCANGAN ALAT

Dalam bab ini dibahas tentang perancangan alat dari sistem

pengukur suhu dan otomatisasi pendingin ruangan.

BAB IV PENGUJIAN ALAT

Bagian bab ini menjelaskan tentang pengujian alat yang digunakan

dalam tugas akhir ini dan menjelaskan hasil pengukuran dari mulai

input dan output yang dihasilkan dari alat yang dirancang.

BAB V KESIMPULAN DAN SARAN

Dalam bab ini menjelaskan kesimpulan dari tugas akhir ini dan

memberikan saran dari alat yang dibuat.

Page 17: Tugas Akhir - Final

5

BAB II

LANDASAN TEORI

2.1. Mikrokontroler

Mikrokontroler merupakan suatu IC yang di dalamnya berisi CPU, ROM,

RAM, dan I/O. Dengan adanya CPU tersebut maka mikrokontroler dapat

melakukan proses berfikir berdasarkan program yang telah diberikan kepadanya.

Mikrokontroler banyak terdapat pada peralatan elektronik yang serba otomatis,

mesin fax, dan peralatan elektronik lainnya. Mikrokontroler dapat disebut

pula sebagai komputer yang berukuran kecil yang berdaya rendah sehingga

sebuah baterai dapat memberikan daya. Mikrokontroler terdiri dari beberapa

bagian seperti yang terlihat pada gambar di bawah ini :

Gambar 2.1. Bagian Mikrokontroler

Page 18: Tugas Akhir - Final

6

Pada Gambar 2.1. di atas tampak suatu mikrokontroler standar yang

tersusun atas komponen-komponen sebagai berikut :

A. Central Processing Unit (CPU)

CPU merupakan bagian utama dalam suatu mikrokontroler. CPU pada

mikrokontroler ada yang berukuran 8 bit ada pula yang berukuran 16 bit. CPU ini

akan membaca program yang tersimpan di dalam ROM dan melaksanakannya.

B. Read Only Memory (ROM)

ROM merupakan suatu memori (alat untuk mengingat) yang sifatnya

hanya dibaca saja. Dengan demikian ROM tidak dapat ditulisi. Dalam dunia

mikrokontroler ROM digunakan untuk menyimpan program bagi mikrokontroler

tersebut. Program tersimpan dalm format biner (‘0’ atau ‘1’). Susunan bilangan

biner tersebut bila telah terbaca oleh mikrokontroler akan memiliki arti tersendiri.

C. Random Acces Memory (RAM)

Berbeda dengan ROM, RAM adalah jenis memori selain dapat dibaca juga

dapat ditulis berulang kali. Tentunya dalam pemakaian mikrokontroler ada

semacam data yang bisa berubah pada saat mikrokontroler tersebut bekerja.

Perubahan data tersebut tentunya juga akan tersimpan ke dalam memori. Isi pada

RAM akan hilang jika catu daya listrik hilang.

D. Input / Output (I/O)

Untuk berkomunikasi dengan dunia luar, maka mikrokontroler

menggunakan terminal I/O (port I/O), yang digunakan untuk masukan atau

keluaran.

Page 19: Tugas Akhir - Final

7

E. Komponen lainnya

Beberapa mikrokontroler memiliki timer/counter, ADC (Analog to Digital

Converter), dan komponen lainnya. Pemilihan komponen tambahan yang

sesuai dengan tugas mikrokontr oler akan sangat membantu perancangan sehingga

dapat mempertahankan ukuran yang kecil. Apabila komponen komponen tersebut

belum ada pada suatu mikrokontroler, umumnya komponen tersebut masih dapat

ditambahkan pada sistem mikrokontroler melalui port-portnya.

2.2. Arduino

2.2.1. Pengenalan

Arduino didefinisikan sebagai sebuah platform elektronik yang open

source, berbasis pada software dan hardware yang fleksibel dan mudah

digunakan, yang ditujukan untuk seniman, desainer, hobbies dan setiap orang

yang tertarik dalam membuat objek atau lingkungan yang interaktif (Artanto,

2012:1).

Arduino sebagai sebuah platform komputasi fisik (Physical Computing)

yang open source pada board input ouput sederhana, yang dimaksud dengan

platform komputasi fisik disini adalah sebuah sistem fisik hyang interaktif dengan

penggunaan software dan hardware yang dapat mendeteksi dan merespons situasi

dan kondisi.

Menurut Artanto (2012:2), kelebihan arduino dari platform hardware

mikrokontroler lain adalah:

1. IDE Arduino merupakan multiplatform, yang dapat dijalankan di berbagai

sistem operasi, seperti Windows, Macintosh dan Linux.

Page 20: Tugas Akhir - Final

8

2. IDE Arduino dibuat berdasarkan pada IDE Processing, yang sederhana

sehingga mudah digunakan.

3. Pemrograman arduino menggunakan kabel yang terhubung dengan port

USB, bukan port serial. Fitur ini berguna karena banyak komputer yang

sekarang ini tidak memiliki port serial.

4. Arduino adalah hardware dan software open source pembaca bisa

mendownload software dan gambar rangkaian arduino tanpa harus

membayar ke pembuat arduino.

5. Biaya hardware cukup murah, sehingga tidak terlalu menakutkan untuk

membuat kesalahan.

6. Proyek arduino ini dikembangkan dalam lingkungan pendidikan sehingga

bagi pemula akan lebih cepat dan mudah mempelajarinya.

7. Memiliki begitu banyak pengguna dan komunitas di internet dapat

membantu setiap kesulitan yang dihadapi.

2.2.2. Sejarah Arduino

Proyek Arduino dimulai pertama kali di Ovre, Italy pada tahun 2005.

Tujuan proyek ini awalnya untuk membuat peralatan control interaktif dan modul

pembelajaran bagi siswa yang lebih murah dibandingkan dengan prototype yang

lain. Pada tahun 2010 telah terjual dari 120 unit Arduino. Arduino yang berbasis

open source melibatkan tim pengembang. Pendiri arduino itu Massimo Banzi dan

David Cuartielles, awalnya mereka memberi nama proyek itu dengan sebutan

arduino dari ivrea tetapi seturut perkembangan zaman nama proyek itu diubah

menjadi Arduino.

Page 21: Tugas Akhir - Final

9

Arduino dikembangkan dari thesis hernando Barragan di desain interaksi

institute Ivrea. Arduino dapat menerima masukan dari berbagai macam sensor dan

juga dapat mengontrol lampu, motor dan aktuator lainnya. Mikrokontroler pada

board arduino di program dengan menggunkan bahasa pemrograman arduino

(based on wiring) dan IDE arduino (based on processing). Proyek arduino dapat

berjalan sendiri atau juga bisa berkomunikasi dengan software yang berjalan pada

komputer.

2.2.3. Hardware

Papan Arduino merupakan papan mikrokontroler yang berukuran kecil

atau dapat diartikan juga dengan suatu rangkaian berukuran kecil yang

didalamnya terdapat komputer berbentuk suatu chip yang kecil.

Pada Gambar 2.2. dapat dilihat sebuah papan Arduino dengan beberapa

bagian komponen didalamnya.

Gambar 2.2. Hardware Arduino

Pada hardware arduino terdiri dari 20 pin yang meliputi:

a. 14 pin IO Digital (pin 0–13)

Sejumlah pin digital dengan nomor 0–13 yang dapat dijadikan input atau

output yang diatur dengan cara membuat program IDE.

Page 22: Tugas Akhir - Final

10

b. 6 pin Input Analog (pin 0–5)

Sejumlah pin analog bernomor 0–5 yang dapat digunakan untuk membaca

nilai input yang memiliki nilai analog dan mengubahnya ke dalam angka

antara 0 dan 1023.

c. 6 pin Output Analog (pin 3, 5, 6, 9, 10 dan 11)

Sejumlah pin yang sebenarnya merupakan pin digital tetapi sejumlah pin

tersebut dapat diprogram kembali menjadi pin output analog dengan cara

membuat programnya pada IDE.

Papan Arduino Uno dapat mengambil daya dari USB port pada komputer

dengan menggunakan USB charger atau dapat pula mengambil daya dengan

menggunakan suatu AC adapter dengan tegangan 9 volt. Jika tidak terdapat

power supply yang melalui AC adapter, maka papan Arduino akan mengambil

daya dari USB port. Tetapi apabila diberikan daya melalui AC adapter secara

bersamaan dengan USB port maka papan Arduino akan mengambil daya melalui

AC adapter secara otomatis.

2.2.4. Software Arduino

Software arduino yang digunakan adalah driver dan IDE, walaupun masih

ada beberapa software lain yang sangat berguna selama pengembangan arduino.

IDE atau Integrated Development Environment suatu program khusus untuk suatu

komputer agar dapat membuat suatu rancangan atau sketsa program untuk papan

Arduino. IDE arduino merupakan software yang sangat canggih ditulis dengan

menggunakan java. IDE arduino terdiri dari:

Page 23: Tugas Akhir - Final

11

1. Editor Program

Sebuah window yang memungkinkan pengguna menulis dan mengedit

program dalam bahasa processing

2. Compiler

Sebuah modul yang mengubah kode program menjadi kode biner

bagaimanapun sebuah mikrokontroler tidak akan bisa memahami bahasa

processing.

3. Uploader

Sebuah modul yang memuat kode biner dari komputer ke dalam memory di

dalam papan arduino

Dalam bahasa pemrograman arduino ada tiga bagian utama yaitu struktur,

variabel dan fungsi (Artanto, 2012:27):

1. Struktur Program Arduino

a. Kerangka Program

Kerangka program arduino sangat sederhana, yaitu terdiri atas dua blok.

Blok pertama adalah void setup() dan blok kedua adalah void loop.

1). Blok Void setup ()

Berisi kode program yang hanya dijalankan sekali sesaat setelah

arduino dihidupkan atau di-reset. Merupakan bagian persiapan atau

instalasi program.

2). Blok void loop()

Berisi kode program yang akan dijalankan terus menerus. Merupakan

tempat untuk program utama.

Page 24: Tugas Akhir - Final

12

b. Sintaks Program

Baik blok void setup loop () maupun blok function harus diberi tanda

kurung kurawal buka “{“ sebagai tanda awal program di blok itu dan

kurung kurawal tutup “}” sebagai tanda akhir program.

2. Variabel

Sebuah program secara garis besar dapat didefinisikan sebagai instruksi

untuk memindahkan angka dengan cara yang cerdas dengan menggunakan sebuah

varibel.

3. Fungsi

Pada bagian ini meliputi fungsi input output digital, input output analog,

advanced I/O, fungsi waktu, fungsi matematika serta fungsi komunikasi.

Pada proses Uploader dimana pada proses ini mengubah bahasa

pemrograman yang nantinya dicompile oleh avr-gcc (avr-gcc compiler) yang

hasilnya akan disimpan kedalam papan arduino.

Avr-gcc compiler merupakan suatu bagian penting untuk software bersifat

open source. Dengan adanya avr-gcc compiler, maka akan membuat bahasa

pemrogaman dapat dimengerti oleh mikrokontroler. Proses terakhir ini sangat

penting, karena dengan adanya proses ini maka akan membuat proses

pemrogaman mikrokontroler menjadi sangat mudah.

Berikut ini merupakan gambaran siklus yang terjadi dalam melakukan

pemrogaman Arduino:

1. Koneksikan papan Arduino dengan komputer melalui USB port.

2. Tuliskan sketsa rancangan suatu program yang akan dimasukkan ke dalam

papan Arduino.

Page 25: Tugas Akhir - Final

13

3. Upload sketsa program ke dalam papan Arduino melalui kabel USB dan

kemudian tunggu beberapa saat untuk melakukan restart pada papan

Arduino.

4. Papan Arduino akan mengeksekusi rancangan sketsa program yang telah

dibuat dan di-upload ke papan Arduino.

2.2.5. Melakukan Penginstalan Arduino Ke Komputer

Untuk melakukan pemrogaman pada papan Arduino, disarankan untuk

men-download IDE Arduino terlebih dahulu yang dapat diperoleh dari situs:

www.arduino.cc/en/Main/Software. Dan kemudian pilih versi yang tepat untuk

sistem operasi komputer yang digunakan.

Setelah melakukan download, lakukanlah proses uncompress dengan cara

melakukan double-click pada file tersebut. Proses ini secara otomatis akan

membuat suatu folder yang bernama arduino-[version], contohnya seperti

arduino-0012.

Setelah melakukan penginstalan IDE Arduino pada komputer, tahap

selanjutnya adalah harus melakukan penginstalan untuk driver. Fungsi utama

penginstalan driver ini adalah agar komputer dapat melakukan komunikasi

dengan papan Arduino melalui USB port.

2.2.6. Melakukan Penginstalan Driver Untuk Windows

Koneksikan papan Arduino dengan komputer dan ketika Found New

Hardware Wizard pada layar muncul, Windows secara otomatis akan mencoba

menemukan terlebih dahulu driver tersebut pada halaman Windows Update.

Page 26: Tugas Akhir - Final

14

Windows XP akan meminta untuk memeriksa Windows Update, dan jika

tidak ingin menggunakan Windows Update pilih menu “No,not at this time” dan

tekan tombol Next. Dan pada layar selanjutnya, pilih menu “Install from a list or

specific location” dan tekan tombol Next.

Periksa layar berjudul “Include this location in the search” dan tekan

tombol Browse. Kemudian pilih folder dimana Arduino sudah terinstal dan pilih

folder Drivers\FTDIUSB Drivers untuk menetukan lokasinya dan tekan tombol

OK dan Next pada layar tesebut.

Windows Vista akan berusaha menemukan driver tersebut pada Windows

Update, dan jika terjadi kegagalan dalam melakukan pencarian driver, maka

lakukan pencarian secara manual pada folder Drivers\FTDIUSB Drivers.

Proses pencarian driver secara manual memiliki dua prosedur yang harus

dilewati, yang pertama komputer harus menginstal driver low-level terlebih

dahulu dan yang kedua adalah menginstal bagian kode yang membuat papan

Arduino terlihat seperti suatu serial port untuk komputer.

Apabila driver telah terinstal, maka Arduino IDE dapat diaktifkan dan

papan Arduino dapat digunakan pada komputer. Untuk tahap selanjutnya adalah

harus selalu mengingat serial port komputer yang telah ditandai untuk papan

Arduino.

2.2.7. Identifikasi Port Pada Windows

Pada Windows, proses untuk melakukan identifikasi port sedikit lebih

rumit dibandingkan dengan Machintosh. Pertama, buka layar Device Manager

Page 27: Tugas Akhir - Final

15

dengan cara memilih menu Start, lakukan right-clicking pada Computer (Vista)

atau My Computer (XP), dan pilih Properties.

Pada Windows XP, pilih Hardware dan kemudian pilih Device Manager.

Sedangkan untuk Windows Vista, pilih Device Manager yang telah ada didalam

daftar pada sebelah kiri layar.

Cari Arduino device yang berada dibawah daftar “Port (COM & LPT)”.

Arduino akan muncul sebagai suatu USB serial port dan akan memiliki suatu

nama seperti COM3, hal ini dapat dilihat pada Gambar 2.3.

Gambar 2.3. Device Manager pada Windows menampilkan semua terminal serial.

Page 28: Tugas Akhir - Final

16

2.2.8. Melakukan Pengujian Pada Papan Arduino

Kita ambil contoh kasus yang sederhana yaitu mengalami kegagalan pada

saat melakukan percobaan “mengedipkan LED”. Mari cari tahu apa yang harus

dilakukan.

Sebelum menyalahkan percobaan yang dibuat, kita harus memastikan

beberapa komponen sudah berada di dalam urutan yang benar. Sama halnya

dengan seorang pilot suatu maskapai penerbangan yang menggunakan beberapa

daftar pemeriksaan sebelum melakukan penerbangan, untuk memastikan bahwa

pesawat dalam kondisi yang baik.

Koneksikan papan Arduino ke USB port yang ada pada komputer dengan

menggunakan kabel USB.

1. Pastikan komputer dalam kondisis menyala (mungkin kedengarannya konyol

tapi hal ini pernah terjadi). Jika lampu PWR yang berwarna hijau pada papan

Arduino menyala, berarti menandakan papan Arduino telah disuplai daya oleh

komputer. Jika LED terlihat sangat redup, berarti ada suatu kesalahan dengan

daya yang disuplai: coba ganti kabel USB dan lakukan pemeriksaan antara

USB port pada komputer dan konektor USB pada papan Arduino. Jika masih

mengalami kegagalan, ganti USB port yang lainnya pada komputer tersebut

atau gunakan komputer yang lain.

2. Jika Arduino yang digunakan merupakan produk baru, lampu LED yang

berwarna kuning akan mulai berkedip dengan pola menyala sedikit gugup.

Page 29: Tugas Akhir - Final

17

Pengujian ini merupakan pengujian yang dilakukan di pabrik untuk menguji

papan Arduino.

3. Jika menggunakan power supply eksternal dan menggunakan jenis Arduino

yang lama seperti Extreme, NG, atau Diecimila, pastikan bahwa power supply

tersambung dengan benar dan jumper yang ditandai dengan SV1

menghubungkan dua pin yang terdekat dengan konektor power supply

eksternal.

2.2.9. Melakukan Pengujian Rangkaian Pada Papan Percobaan

Sekarang koneksikan papan Arduino dengan papan percobaan breadboard

dengan memasang jumper dari 5 V. Kemudian untuk ground atau GND

dikoneksikan ke rel positif dan negative yang berada pada papan percobaan

breadboard. Jika LED PWR yang berwarna hijau tidak menyala, segera lepaskan

semua kabel. Hal tersebut menandakan bahwa terdapat kesalahan besar dan terjadi

hubung singkat (short circuit) pada rangkaian. Pada saat terjadinya hubung

singkat, papan Arduino menarik terlalu banyak arus dan daya akan terputus untuk

melindungi komputer.

Jika terjadi short circuit, maka kita harus memulainya kembali dari proses

penyederhanaan dan pembagian (simplification and segmentation). Setelah itu,

yang harus dilakukan adalah memeriksa setiap sensor yang digunakan pada

percobaan tersebut dan untuk memudahkan sebaiknya setiap pemeriksaan

menggunakan satu sensor saja.

Page 30: Tugas Akhir - Final

18

2.2.10. Masalah Dengan IDE

Pada beberapa kasus terutama pada Windows, mungkin memiliki masalah

yang berhubungan dengan penggunaan IDE Arduino.

Jika terdapat kesalahan saat membuka Arduino, gunakan metode alternatif

dengan cara membuka file run.bat.

Biasanya pemakai Windows juga sering mendapatkan masalah jika sistem

operasi memberikan nomor COM10 atau yang benomor lebih untuk papan

Arduino. Untuk mengatasi masalah ini, kita dapat menentukan nomor yang lebih

rendah untuk Arduino dengan cara sebagai berikut:

1. Buka layar Device Manager pada Windows dengan membuka menu Start.

Lakukan klik kanan (right-click) pada layar komputer untuk Vista atau My

Computer dan pilih menu Properties untuk XP. Kemudian pilih menu

Device Manager.

2. Cari serial device di dalam daftar “Ports (COM & LPT)”. Dan pilih serial

device bernomor COM9 atau bernomor lebih rendah yang tidak digunakan

dengan cara pilih menu Properties (right-click). Kemudian pada tab Port

Setting, pilih menu Advanced dan lakukan pengaturan nomor pada

COM10 atau yang bernomor lebih besar.

3. Lakukan hal yang sama pada serial terminal USB yang digunakan untuk

mengoperasikan Arduino.

Jika beberapa saran tersebut masih tidak dapat membantu, atau jika

mengalami permasalahan yang belum dijelaskan pada laporan ini, untuk

troubleshooting Arduino yang lebih lengkap dapat dilihat dari halaman situs:

www.arduino.cc/en/Guide/Troubleshooting.

Page 31: Tugas Akhir - Final

19

2.2.11. Troubleshooting Arduino

Dalam membuat suatu eksperimen atau percobaan dengan Arduino,

memungkinkan sekali terjadinya kegagalan dalam melakukan pengoperasiannya.

Sedangkan kita dituntut harus dapat memperbaiki kegagalan yang terjadi agar

Arduino dapat beroperasi dengan benar.

Troubleshooting dan debugging merupakan seni yang sudah ada dari dulu.

Dan agar didapatkan suatu hasil yang diinginkan oleh kita, maka kita harus

memenuhi peraturan yang dimiliknya terlebih dahulu.

Semakin sering kita menggunakan komponen elektronik dan Arduino

dalam membuat suatu percobaan, maka kita akan semakin banyak belajar dan

semakin banyak mendapatkan pengalaman. Oleh karena itu, jangan putus asa

dengan permasalahan yang akan muncul dalam melakukan suatu percobaan

karena semuanya akan menjadi lebih mudah apabila sudah dihadapi.

Seperti semua percobaan Arduino yang telah dibuat, jika terdapat

kesalahan baik yang berasal dari hardware maupun software maka disana

kemungkinan akan ada lebih dari satu hal yang perlu dicari penyebab dari

kesalahan tersebut.

Ketika mencari suatu bug atau akar dari suatu masalah yang muncul

seharusnya kita mengoperasikan Arduino meliputi tiga langkah berikut:

1. Pemahaman (understanding)

Mencoba untuk memahami sebanyak mungkin bagaimana cara kerja dari

setiap bagian komponen yang digunakan dan bagaimana bagian dari

komponen tersebut telah memberikan pengaruh terhadap percobaan yang

dibuat.

Page 32: Tugas Akhir - Final

20

2. Penyederhanaan dan pembagian (simplification and segmentation)

Orang Romawi kuno mengatakan devide et impera: divide and rule, atau

dalam bahasa Indonesia berarti pembagi dan peraturan. Oleh karena itu, untuk

membuat percobaan Arduino cobalah lakukan perincian (break down)

terhadap percobaan ke dalam setiap komponennya dengan pemahaman yang

kita miliki dan memperhitungkan dimana tanggung jawab dari setiap

komponen tersebut.

3. Pemisahan dan kepastian (exclusion and certainty)

Ketika melakukan investigasi, melakukan pengujian secara terpisah pada

setiap komponen sangat dibutuhkan untuk memastikan bahwa setiap

komponen bekerja dengan benar. Dengan melakukan tahap ini akan

membangun rasa keyakinan pada diri kita sendiri terhadap bagian percobaan

mana yang bekerja dengan benar maupun yang tidak.

Debugging adalah istilah yang telah digunakan software komputer untuk

menggambarkan suatu proses tidak bekerja dengan benar. Konon dikatakan

bahwa istilah tersebut dipakai untuk pertama kalinya oleh Garce Hopper pada

sekitar tahun 1940-an. Dimana pada waktu itu, komputer yang sebagian besarnya

merupakan peralatan elektromekanis, ada yang berhenti beroperasi karena ada

serangga yang terjebak di dalam sistem mekaniknya.

Tetapi pada saat ini, bug bukan berbentuk fisik lagi, melainkan suatu

virtual yang tidak dapat dilihat. Oleh karena itu, terkadang dibutuhkannya suatu

proses indentifikasi yang panjang dan membosankan dalam menemukan bug.

Page 33: Tugas Akhir - Final

21

2.3. Kipas/ Motor DC

Motor listrik merupakan perangkat elektromagnetis yang mengubah energi

listrik menjadi energi mekanik. Energi mekanik digunakan untuk memutar

impeller pompa, fan atau blower, menggerakkan kompresor dan lain-lain. Motor

DC memerlukan suplai tegangan yang searah pada kumparan medan untuk diubah

menjadi energi mekanik.

Motor DC merupakan sebuah aktuator yang mengubah besaran listrik

menjadi sistem yang gerak mekanis. Polaritas arus yang mengalir melalui kawat

lilitan yang akan menentukan arah putaran motor. Nilai arus yang mengalir

melalui lilitan.

Prinsip kerja dari arus searah adalah membalik phase tegangan dari

gelombang yang mempunyai nilai positif dengan menggunakan komutator,

dengan demikian arus yang berbalik arah dengan kumparan jangkar yang berputar

dalam medan magnet.

Gambar 2.4. Kipas DC

Page 34: Tugas Akhir - Final

22

2.4. Sensor suhu IC LM 35

Sensor suhu LM35 merupakan sensor solid state yang dapat mengubah

besaran suhu menjadi besaran listrik berupa tegangan. IC LM35 mempunyai

kelebihan dibandingkan dengan sensor - sensor suhu linear yang dinyatakan

dalam K, karena pemakaiannya tidak dituntut untuk mengurangi sejumlah besaran

tegangan konstan pada outputnya yang membutuhkan penyesuaian atau

pengurangan eksternal apa pun untuk memberikan akurasi - akurasi khusus

sebesar ± 1/4 ℃, dalam sebuah cakupan suhu penuh antara -55 sampai 150 ℃,

(Afrie Setiawan, 2011:28).

IC LM35 merupakan sensor suhu dimana tegangan keluaran proporsional

linear untuk suhu dalam ℃, mempunyai perubahan keluaran secara linear dan juga

dapat dikalibrasi dalam K. Di dalam udara sensor ini mempunyai pemanasan diri

(self heating) kurang dari 0,1 ℃, dapat dipakai dengan menggunakan power

supply tunggal. Dapat juga dihubungkan antara suhu ke rangkaian kontrol dengan

sangant mudah, Gambar 2.5. menunjukkan bentuk fisik IC LM35.

Gambar 2.5. IC LM35

Koefisian dari IC LM35 tidaklah seperti sebuah resistor NTC (Negative

Temperature Coefficeint), karena tidaklah mungkin untuk mendapatkan suatu

Page 35: Tugas Akhir - Final

23

jangkauan suhu yang lebar, apabila menggunakan sebuah resistor NTC. Kelebihan

pengunaan IC LM35 ini adalah diperolehnya jangkauan pengukuran yang luas dan

kemudahan dalam kalibrasinya.

2.4.1. Karakteristik Sensor LM35

Memiliki sensitivitas suhu, dengan faktor skala linier antara tegangan dan

suhu 10 mVolt/ºC, sehingga dapat dikalibrasi langsung dalam celcius.

1. Memiliki ketepatan atau akurasi kalibrasi yaitu 0,5ºC pada suhu 25 ºC

2. Memiliki jangkauan maksimal operasi suhu antara -55 ºC sampai +150 ºC.

3. Bekerja pada tegangan 4 sampai 30 volt.

4. Memiliki arus rendah yaitu kurang dari 60 µA.

5. Memiliki pemanasan sendiri yang rendah (low-heating) yaitu kurang dari 0,1

ºC pada udara diam.

6. Memiliki impedansi keluaran yang rendah yaitu 0,1 W untuk beban 1 mA.

7. Memiliki ketidaklinieran hanya sekitar ± ¼ ºC.

Gambar 2.6. Grafik akurasi LM35 terhadap Suhu

Page 36: Tugas Akhir - Final

24

2.4.2. Prinsip Kerja LM35

Secara prinsip sensor akan melakukan penginderaan pada saat perubahan

suhu setiap suhu 1 ºC akan menunjukan tegangan sebesar 10 mV. Pada

penempatannya LM35 dapat ditempelkan dengan perekat atau dapat pula disemen

pada permukaan akan tetapi suhunya akan sedikit berkurang sekitar 0,01 ºC

karena terserap pada suhu permukaan tersebut. Dengan cara seperti ini diharapkan

selisih antara suhu udara dan suhu permukaan dapat dideteksi oleh sensor LM35

sama dengan suhu disekitarnya, jika suhu udara disekitarnya jauh lebih tinggi atau

jauh lebih rendah dari suhu permukaan, maka LM35 berada pada suhu permukaan

dan suhu udara disekitarnya .

Jarak yang jauh diperlukan penghubung yang tidak terpengaruh oleh

interferensi dari luar, dengan demikian digunakan kabel selubung yang ditanahkan

sehingga dapat bertindak sebagai suatu antenna penerima dan simpangan

didalamnya, juga dapat bertindak sebagai perata arus yang mengkoreksi pada

kasus yang sedemikian, dengan mengunakan metode bypass kapasitor dari Vin

untuk ditanahkan. Maka dapat disimpulkan prinsip kerja sensor LM35 sebagai

berikut:

1. Suhu lingkungan di deteksi menggunakan bagian IC yang peka terhadap suhu

2. Suhu lingkungan ini diubah menjadi tegangan listrik oleh rangkaian di dalam

IC, dimana perubahan suhu berbanding lurus dengan perubahan tegangan

output.

3. Pada seri LM35

Vout=10 mV/oC

4. Tiap perubahan 1oC akan menghasilkan perubahan tegangan output sebesar

10mV

Page 37: Tugas Akhir - Final

25

2.4.3. Kelebihan dan Kelemahan IC Temperature LM35

IC Temperatur LM35 memiliki kelebihan dan kekurangan, kelebihan dari

IC temperatur LM35 yaitu:

1. Rentang suhu yang jauh, antara -55 sampai 150 oC

2. Low self-heating, sebesar 0.08 oC

3. Beroperasi pada tengangan sampai 4 sampai 30V

4. Rangkaian tidak rumit

5. Tidak memerlukan pengondisian sinyal

IC Temperatur LM35 memiliki kekurangan yaitu:

1. Membutuhkan sumber tegangan untuk beroperasi

2. Aliran arus (darin) kurang dari 60 휇퐴

3. Pemanasan diri (self heating) rendah 0.08 oC

Sensor suhu tipe LM35 ini merupakan IC sensor temperatur yang akurat

yang memiliki tegangan keluarannya linear dalam satuan celcius. Jadi sensor suhu

LM35 ini memiliki kelebihan dibandingkan sensor temperatur linier dalam satuan

kelvin, karena tidak memerlukan pembagian dengan konstanta tegangan yang

besar dan keluarannya untuk mendapatkan nilai dalam satuan celcius yang tepat.

2.5. Protoboard

Protoboard adalah board yang digunakan untuk membuat rangkaian

elektronik sementara dengan tujuan uji coba atau prototipe tanpa harus

menyolder. Dengan memanfaatkan protoboard, komponen-komponen elektronik

yang dipakai tidak akan rusak dan dapat digunakan kembali untuk membuat

rangkaian yang lain.

Page 38: Tugas Akhir - Final

26

Protoboard umumnya terbuat dari plastik dengan banyak lubang-lubang

diatasnya. Lubang-lubang pada protoboard diatur sedemikian rupa membentuk

pola sesuai dengan pola jaringan koneksi di dalamnya.

Protoboard yang tersedia di pasaran umumnya terbagi atas 3 ukuran: mini

protoboard, medium protoboard dan large protoboard. Mini protoboard memiliki

170 titik koneksi (bisa juga lebih). Kemudian medium breaboard memiliki 400

titik koneksi. Dan large protoboard memiliki 830 titik koneksi.

Gambar 2.7. Mini Protoboard

2.5.1. Spesifikasi Protoboard

Protoboard solderless modern yang terdiri dari blok berlubang dari plastik

dengan berbagai timah berlapis perunggu fosfor atau nikel silver klip paduan semi

bawah perforasi. Klip sering disebut dasi poin atau titik kontak. Jumlah poin dasi

sering diberikan dalam spesifikasi protoboard.

1. Jarak

Protoboard kebanyakan menyediakan kontak di mana jarak antara titik kontak

adalah persegi. Jarak ini sesuai dengan jarak poin sirkuit terpadu dari semua

paket transistor. Jarak ini memfasilitasi untuk menghubungkan semua

Page 39: Tugas Akhir - Final

27

komponen elektronik dalam pembatasan tegangan, arus, dan frekuensi

protoboard.

2. Jumlah Kontak

Protoboard menyediakan berbagai jumlah kontak.Namun, tergantung pada

ukuran protoboard , Protoboard diperkirakan mengandung sesedikitnya 75

atau sebanyak 900 poin koneksi yang terpisah. Produsen biasanya mengatur

titik koneksi dalam kolom 10 dipisahkan oleh median pusat. Pengaturan ini

menyediakan 56 sambungan untuk rangkaian 14-pin standar terpadu, empat

koneksi untuk setiap pin pada perangkat.

3. Voltase

Protoboard banyak dinilai lima volt pada satu amp. Pilihan umum kedua

menyediakan 15-volt, sepertiga peringkat amp. Kedua spesifikasi

menghasilkan disipasi daya lima watt. Tetapi hal ini bervariasi per vendor dan

perangkat.

4. Arus

Protoboards Kebanyakan memiliki batas saat ini dari satu amp atau kurang,

karena sifat dari kontak mereka. Seringkali protoboards dapat menahan hanya

1/3 amp.

5. Frekuensi Rentang

Protoboard paling tidak bisa menahan frekuensi di atas 10 MHz. Sifat dari

kontak dalam protoboard menciptakan kapasitansi pada urutan 2 sampai 20

pF untuk setiap koneksi. Kapasitansi ini adalah acak, tak terduga dan sulit

untuk mereproduksi. Menghapus dan memasukkan kembali memimpin

Page 40: Tugas Akhir - Final

28

komponen terkadang lumayan mengubah kapasitansi kontak pada saat itu.

Efek ini menjadi bagian besar dari perilaku rangkaian di atas 10 MHz.

6. Kapasitansi

Kapasitansi didefinisikan sebagai perlawanan terhadap arus perubahan.

Kapasitansi hasil dari aksi dua konduktor yang dipisahkan oleh isolator.

Ketika Anda menyisipkan memimpin komponen ke protoboard, koneksi tidak

pernah sempurna. Hasil ketidaksempurnaan kecil di sebuah kapasitansi kecil

di sambungan. Ini setara dengan kapasitor F 2 sampai 20 secara seri dengan

setiap koneksi, di mana saat ini tidak memiliki pilihan tetapi untuk pergi ke

arah yang benar.

Karena papan ini solderless alias tidak memerlukan solder sehingga dapat

digunakan kembali, dan dengan demikian dapat digunakan untuk prototipe

sementara serta membantu dalam bereksperimen desain sirkuit elektronika.

Berbagai sistem elektronik dapat di prototipekan dengan menggunakan

breadboard, mulai dari sirkuit analog dan digital kecil sampai membuat unit

pengolahan terpusat (CPU). Secara umum breadbord memiliki jalur seperti

berikut ini :

Gambar 2.8. Jalur Breadboard

Penjelasan :

a. Dua Pasang jalur Atas dan bawah terhubung secara horisontal sampai ke

bagian tengah dari breadboard. Biasanya jalur ini digunakan sebagai jalur

a

b

c

Page 41: Tugas Akhir - Final

29

power atau jalur sinyal yg umum digunakan seperti clock atau jalur

komunikasi.

b. Lima lobang komponen di tengah merupakan tempat merangkai komponen.

Jalur ke 5 lobang ini terhubung vertikal sampai bagian tengah dari

breadboard.

c. Pembatas tengah breadboard biasanya digunakan sebagai tempat

menancapkan komponen IC.

2.6. Transistor

Transistor adalah alat semikonduktor yang dipakai sebagai penguat,

sebagai sirkuit pemutus dan penyambung (switching), stabilisasi tegangan,

modulasi sinyal atau sebagai fungsi lainnya. Transistor dapat berfungsi semacam

kran listrik, dimana berdasarkan arus inputnya (BJT) atau tegangan inputnya

(FET), memungkinkan pengaliran listrik yang sangat akurat dari sirkuit sumber

listriknya.

Gambar 2.9. Transistor

Pada umumnya, transistor memiliki 3 terminal, yaitu Basis (B), Emitor (E)

dan Kolektor (C). Tegangan yang di satu terminalnya misalnya Emitor dapat

dipakai untuk mengatur arus dan tegangan yang lebih besar daripada arus input

Basis, yaitu pada keluaran tegangan dan arus output Kolektor.

Page 42: Tugas Akhir - Final

30

Transistor merupakan komponen yang sangat penting dalam dunia

elektronik modern. Dalam rangkaian analog, transistor digunakan dalam amplifier

(penguat). Rangkaian analog melingkupi pengeras suara, sumber listrik stabil

(stabilisator) dan penguat sinyal radio. Dalam rangkaian-rangkaian digital,

transistor digunakan sebagai saklar berkecepatan tinggi. Beberapa transistor juga

dapat dirangkai sedemikian rupa sehingga berfungsi sebagai logic gate, memori

dan fungsi rangkaian-rangkaian lainnya.

Salah satu transistor yang digunakan dalam tugas akhir ini adalah

transistor Darlington. Transistor Darlington adalah rangkaian elektronika yang

terdiri dari sepasang transistor bipolar (dwi kutub) yang tersambung secara

tandem (seri). Sambungan seri seperti ini dipakai untuk mendapatkan penguatan

(gain) yang tinggi, karena hasil penguatan pada transistor yang pertama akan

dikuatkan lebih lanjut oleh transistor kedua. Keuntungan dari rangkaian

Darlington adalah penggunaan ruang yang lebih kecil dari pada rangkaian dua

buah transistor biasa dengan bentuk konfigurasi yang sama. Penguatan arus listrik

atau gain dari rangkaian transistor Darlington ini sering dituliskan dengan notasi β

atau hFE.

Gambar 2.10. Diagram rangkaian dari transistor Darlington

Page 43: Tugas Akhir - Final

31

Transistor Darlington bersifat seolah-olah sebagai satu transistor tunggal

yang mempunyai penguatan arus yang tinggi. Penguatan total dari rangkaian ini

merupakan hasil kali dari penguatan masing-masing transistor yang dipakai:

dan

Jika rangkaian dipakai dalam moda tunggal emitor maka RE adalah nol dan Nilai

dan

penguatan total dari transistor Darlington bisa mencapai 1000 kali atau lebih. Dari

luar transistor Darlington nampak seperti transistor biasa dengan 3 buah kutub: B

(basis), C (Kolektor), dan E (Emitter). Dari segi tegangan listriknya, voltase base-

emitter rangkaian ini juga lebih besar, dan secara umum merupakan jumlah dari

kedua tegangan masing-masing transistornya, seperti nampak dalam rumus

berikut:

2.7. Microsoft Visual C# ( C Sharp) .Net

C# (dibaca: C sharp) merupakan sebuah bahasa pemrograman yang

berorientasi objek yang dikembangkan oleh Microsoft sebagai bagian dari inisiatif

kerangka .NET Framework. Bahasa pemrograman ini dibuat berbasiskan bahasa

C++ yang telah dipengaruhi oleh aspek-aspek ataupun fitur bahasa yang terdapat

pada bahasa-bahasa pemrograman lainnya seperti Java, Delphi, Visual Basic, dan

Page 44: Tugas Akhir - Final

32

lain-lain) dengan beberapa penyederhanaan. Menurut standar ECMA-334 C#

Language Specification, nama C# terdiri atas sebuah huruf Latin C (U+0043)

yang diikuti oleh tanda pagar yang menandakan angka # (U+0023). Tanda pagar #

yang digunakan memang bukan tanda kres dalam seni musik (U+266F), dan tanda

pagar # (U+0023) tersebut digunakan karena karakter kres dalam seni musik tidak

terdapat di dalam keyboard standar.

Gambar 2.11. Microsoft Visual C# .Net

2.7.1. Sejarah

Pada akhir dekade 1990-an, Microsoft membuat program Microsoft Visual

J++ sebagai sebuah langkah percobaan untuk menggunakan Java di dalam sistem

operasi Windows untuk meningkatkan antarmuka dari Microsoft Component

Object Model (COM). Akan tetapi, akibat masalah dengan pemegang hak cipta

bahasa pemrograman Java, Sun Microsystems, Microsoft pun menghentikan

pengembangan J++, dan beralih untuk membuat pengganti J++, kompilernya dan

mesin virtualnya sendiri dengan menggunakan sebuah bahasa pemrograman yang

Page 45: Tugas Akhir - Final

33

bersifat general-purpose. Untuk menangani proyek ini, Microsoft merekrut

Anders Helsberg, yang merupakan mantan karyawan Borland yang membuat

bahasa Turbo Pascal, dan Borland Delphi, yang juga mendesain Windows

Foundation Classes (WFC) yang digunakan di dalam J++. Sebagai hasil dari

usaha tersebut, C# pun pertama kali diperkenalkan pada bulan Juli 2000 sebagai

sebuah bahasa pemrograman modern berorientasi objek yang menjadi sebuah

bahasa pemrograman utama di dalam pengembangan di dalam platform Microsoft

.NET Framework.

Pengalaman Helsberg sebelumnya dalam pendesain bahasa pemrograman

seperti Visual J++, Delphi, Turbo Pascal) dengan mudah dilihat dalam sintaksis

bahasa C#, begitu pula halnya pada inti Common Language Runtime (CLR). Dari

kutipan atas interview dan makalah-makalah teknisnya ia menyebutkan

kelemahan-kelemahan yang terdapat pada bahasa pemrograman yang umum

digunakan saat ini, misalnya C++, Java, Delphi, ataupun Smalltalk. Kelemahan-

kelemahan yang dikemukakannya itu yang menjadi basis CLR sebagai bentukan

baru yang menutupi kelemahan-kelemahan tersebut, dan pada akhirnya

memengaruhi desain pada bahasa C# itu sendiri. Ada kritik yang menyatakan C#

sebagai bahasa yang berbagi akar dari bahasa-bahasa pemrograman lain. [1] Fitur-

fitur yang diambilnya dari bahasa C++ dan Java adalah desain berorientasi objek,

seperti garbage collection, reflection, akar kelas (root class), dan juga

penyederhanaan terhadap pewarisan jamak (multiple inheritance). Fitur-fitur

tersebut di dalam C# kini telah diaplikasikan terhadap iterasi, properti, kejadian

(event), metadata, dan konversi antara tipe-tipe sederhana dan juga objek.

Page 46: Tugas Akhir - Final

34

C# didisain untuk memenuhi kebutuhan akan sintaksis C++ yang lebih

ringkas dan Rapid Application Development yang 'tanpa batas' (dibandingkan

dengan RAD yang 'terbatas' seperti yang terdapat pada Delphi dan Visual Basic).

Agar mampu mempromosikan penggunaan besar-besaran dari bahasa C#,

Microsoft, dengan dukungan dari Intel Corporation dan Hewlett-Packard,

mencoba mengajukan standardisasi terhadap bahasa C#. Akhirnya, pada bulan

Desember 2001, standar pertama pun diterima oleh European Computer

Manufacturers Association atau Ecma International (ECMA), dengan nomor

standar ECMA-334. Pada Desember 2002, standar kedua pun diadopsi oleh

ECMA, dan tiga bulan kemudian diterima oleh International Organization for

Standardization (ISO), dengan nomor standar ISO/IEC 23270:2006.

2.7.2. Tujuan Desain

Standar European Computer Manufacturer Association (ECMA)

mendaftarkan beberapa tujuan desain dari bahasa pemrograman C#, sebagai

berikut:

1. Bahasa pemrograman C# dibuat sebagai bahasa pemrograman yang bersifat

bahasa pemrograman general-purpose (untuk tujuan jamak), berorientasi

objek, modern, dan sederhana.

2. Bahasa pemrograman C# ditujukan untuk digunakan dalam mengembangkan

komponen perangkat lunak yang mampu mengambil keuntungan dari

lingkungan terdistribusi.

3. Portabilitas programmer sangatlah penting, khususnya bagi programmer yang

telah lama menggunakan bahasa pemrograman C dan C++.

Page 47: Tugas Akhir - Final

35

4. Dukungan untuk internasionalisasi (multi-language) juga sangat penting.

5. C# ditujukan agar cocok digunakan untuk menulis program aplikasi baik

dalam sistem klien-server (hosted system) maupun sistem embedded

(embedded system), mulai dari perangkat lunak yang sangat besar yang

menggunakan sistem operasi yang canggih hingga kepada perangkat lunak

yang sangat kecil yang memiliki fungsi-fungsi terdedikasi.

6. Meskipun aplikasi C# ditujukan agar bersifat 'ekonomis' dalam hal kebutuhan

pemrosesan dan memori komputer, bahasa C# tidak ditujukan untuk bersaing

secara langsung dengan kinerja dan ukuran perangkat lunak yang dibuat

dengan menggunakan bahasa pemrograman C dan bahasa rakitan.

Bahasa C# harus mencakup pengecekan jenis (type checking) yang kuat,

pengecekan larik (array), pendeteksian terhadap percobaan terhadap penggunaan

Variabel-variabel yang belum diinisialisasikan, portabilitas kode sumber, dan

pengumpulan sampah (garbage collection) secara otomatis.

Page 48: Tugas Akhir - Final

36

BAB III

PERANCANGAN ALAT

3.1. Alat dan Bahan

Alat dan bahan yang digunakan pada tugas akhir ini yaitu berupa

hardware dan software. Table 3.1. merupakan alat dan bahan yang digunakan.

Tabel 3.1. Alat dan Bahan

Hardware Software

Arduino UNO R3

Baterai 9 Volt

Kipas/Motor Dc 12 Volt

Transistor TIP 120

Sensor Suhu LM35

Resistor 1 kilo ohm

Kapasitor

Protoboard

Microsoft Visual C#

Software Arduino 1.0.5

Software fritzing

Microsoft Access

3.2. Rancangan Sistem Pengukur Suhu dan Pendingin Ruangan

Sistem pengukur suhu dan otomatisasi pendingin ruangan pada tugas akhir

ini memiliki cara kerja yang sama pada umumnya. Yaitu pada saat

Page 49: Tugas Akhir - Final

37

suhu melebihi suhu yang ditetapkan maka kipas akan menyala sebagai pendingin,

kemudian sistem akan mengirim data ke aplikasi desktop sebagai informasi yang

di display kemudian disimpan ke dalam database. Media sensor suhu yang

digunakan pada tugas akhir ini bertipe IC yaitu LM35 sebagai pengukur

temperature yang dapat memberikan output -55 sampai dengan 150 ℃,. Media

pendingin otomatis menggunakan kipas dc 12V yang mendapat sumber tegangan

dari baterai.

3.2.1. Perancangan Aplikasi

Pada sistem yang dibuat untuk mengukur temperatur diruangan ini dibuat

range suhunya antara 20 ℃ sampai dengan 50 ℃ dimana suhu normal ruangan

ditetapkan yaitu 28 ℃ sampai dengan 30 ℃, sehingga dibutuhkan sensor

temperatur yang mampu mendeteksi range suhu di ruangan. Dalam rancangan

sistem ini digunakan sensor LM35 yang mampu mendeteksi temperatur dari 20 ℃

sampai dengan 50 ℃. Selain itu dibutuhkan juga sebuah kondisi sinyal serta

sarana untuk menampilkan hasil olahan suhu ruangan yang akurat dan dapat

dengan mudah dipantau secara terus menerus.

Gambar 3.1. Diagram Blok Sistem

Page 50: Tugas Akhir - Final

38

Dari diagram blok pengaturan suhu ruangan terdiri dari beberapa blok

rangkaian yang terdiri dari Sensor Suhu (LM35), Arduino UNO R3, Kipas DC

12V dan Aplikasi desktop C# .Net. Sensor yang digunakan adalah LM35 untuk

menginput perubahan tegangan ke sistem ADC. Perubahan yang diterima dalam

bentuk data analog dan mengubah data analog menjadi data digital agar dapat

diterima oleh mikrokontroler yang hanya menerima data digital. Mikrokontroler

yang digunakan yaitu Arduino UNO R3 dengan Atmega328. Mikrokontroler yang

digunakan ini diisikan dengan program yang nantinya akan ditampilkan pada

layar komputer dengan C# .Net dan disimpan ke dalam basis data.

Sebagai sensor temperatur digunakan LM35 yang telah dikalibrasikan

langsung dalam Celcius(℃). Tegangan keluarannya (Vout) akan mengalami

perubahan 10mV untuk setiap perubahan temperatur 1 ℃.

Kipas yang digunakan merupakan jenis DC 12 volt sebagai petanda

apabila suhu dalam ruangan melebihi suhu yang telah ditetapkan (32 ℃) maka

kipas akan menyala. Sumber tegangan eksternal kipas menggunakan battery 9

volt.

3.3. Perancangan Miniatur Ruangan

Ruangan ini terdiri dari satu ruangan yang terbuat dari kardus. Ruang

tempat rangkaian elektronika terletak pada ruang kardus yang dapat dibuka, untuk

memudahkan pengecekan rangkaian elektronika atau memperbaiki pada saat

terjadi kerusakan pada rangkaian elektronika serta untuk mengontrol suhu dalam

ruangan tersebut.

Page 51: Tugas Akhir - Final

39

Gambar 3.2. Miniatur ruangan

3.4. Rangkaian Arduino dengan Sensor LM 35

Komponen sensor suhu LM35 memiliki 3 pin, yaitu pin 1 sebagai

menerima input 1 sampai dengan 5 volt, pin 2 sebagai output (Vout) analog dan

pin 3 dihubungkan dengan ground.

Pada tahap ini pin arduino yang digunakan adalah pin Analog yaitu A0

sebagai output dari Sensor LM35. Gambar di bawah ini adalah gambar rangkaian

Arduino dengan sensor suhu LM35.

Gambar 3.3. Rangkaian Arduino dan LM 35

Page 52: Tugas Akhir - Final

40

3.5. Rangkaian Arduino dengan Kipas DC 12V

Setelah merangkai rangkaian arduino dengan Sensor Suhu, pada sub bab

ini akan menambahkan kipas ke dalam rangkaian. Pin output dari arduino yang

digunakan adalah pin 9 yang mana merupakan analog pin. Pin 9 ini terhubung ke

base Transistor Darlington yaitu TIP120 dengan hambatan 1K ohm. Pin emitter

dari transistor terhubung ke ground dan pin collector terhubung dengan kapasitor

dan pin collector dari transistor ini terhubung ke kipas DC 12V yang

mendapatkan tegangan 9V dari eksternal voltase dengan menggunakan baterai

9V.

Gambar 3.4. Rangkaian Arduino dengan Kipas / Motor

3.6. Diagram Alir Sistem Pengukur Suhu dan Pendingin

Deskripsi kerja secara keseluruhan dari sistem pengukur suhu dan

otomatisasi pendingin ruangan pada tugas akhir ini, sistem ini akan mulai

beroperasi ketika diberikan sumber tegangan melalui port usb komputer ke

Arduino. Port Usb ini juga sebagai jembatan pengiriman data dari Arduino ke

komputer yang ditampilkan pada Aplikasi Desktop dan menyimpan history

tegangan ke dalam basis data tiap detik menggunakan C#. Net.

Page 53: Tugas Akhir - Final

41

Gambar 3.5. Diagram alir sistem kontrol suhu

Kipas DC 12V yang dipasang pada sistem hanya akan ON untuk

memberikan pendingin apabila suhu dalam sudah mencapai batas yang telah

ditentukan atau lebih, dan akan dalam keadaan OFF kembali apabila suhu ruangan

di bawah batas minimum yang telah ditetapkan.

Page 54: Tugas Akhir - Final

42

Karena sistem pengukuran suhu dan otomatisasi pendingin ruangan ini

merupakan sistem tertutup (loop system), maka proses pembacaan temperature ini

akan terus berulang. Sistem ini hanya akan berhenti beroperasi apabila dalam

keadaan OFF atau tidak diberikan sumber tegangan.

Untuk lebih jelas tentang deskripsi kerja secara keseluruhan dari sistem

pengukuran suhu dan otomatisasi pendingin ruangan pada tugas akhir ini dapat

melihat gambar pada Gambar 3.5., dimana gambar tersebut merupakan flowchart

atau diagram alir secara keseluruhan pada sistem pengukuran suhu dan

otomatisasi pendingin ruangan dan ditampilkan pada Aplikasi Desktop

menggunakan C# .Net sebagai tampilan hasil pengukurannya.

3.7. Perancangan Aplikasi Desktop menggunakan C# .Net

Pembuatan form aplikasi desktop di disain semudah mungkin agar mudah

dipahami dan mudah digunakan.

3.7.1. Perancangan Main Form

Form utama dari aplikasi desktop merupakan form yang berfungsi sebagai

display output yang dikirim dari Arduino. Informasi yang ditampilkan berupa

suhu dalam Celcius dan Fahrenheit dalam bentuk gambar, dan bentuk asli di

dalam sebuah text block.

Pada main form terdapat trigger untuk mengirimkan data ke dalam basis

data dan di simpan sebagai historical yang nantinya dapat diketahui berapa suhu

terendah dan suhu tertinggi.

Page 55: Tugas Akhir - Final

43

Gambar 3.6. Form utama aplikasi desktop

Pada form Gambar 3.6. di atas, dapat dijelaskan Port yaitu port Arduino

yang ter-installed di komputer, Baut Rate yaitu jumlah kali per detik sinyal dalam

perubahan data komunikasi analog, dan yang biasa digunakan adalah 9600 baud,

Suhu yaitu variable temperatur yang berfungsi sebagai default suhu yang

ditetapkan, grafik temperatur yang berwarna coklat merupakan temperatur dalam

Celcius dan yang berwarna abu - abu merupakan temperatur Fahrenheit, text block

merupakan output informasi dari Arduino ketika tombol start di klik, dan tombol

stop untuk mengakhiri komunikasi Arduino dengan Aplikasi Desktop.

3.7.2. Perancangan form penampil data

Perancangan form untuk penampil data ini dapat dimunculkan melalui

main form dari menu Main > Data, pada form ini data dapat diurutkan berdasarkan

kolom. Gambar 3.7. merupakan gambar perancangan form untuk menampilkan

data yang telah disimpan ketika aplikasi berjalan.

Page 56: Tugas Akhir - Final

44

Gambar 3.7. Perancangan form penampil data

Page 57: Tugas Akhir - Final

45

BAB IV

PENGUJIAN ALAT

Pengujian alat dilakukan untuk mengetahui apakah fungsi–fungsi yang

telah direncanakan bekerja dengan baik atau tidak. Pengujian alat juga berguna

untuk mengetahui tingkat kinerja dari fungsi tersebut. Setelah dilakukan

pengujian, maka hendaknya melakukan ujian ukuran/analisa dan terhadap apa

yang diuji untuk mengetahui keberhasilan dari alat yang di buat dalam tugas akhir

ini. Didalam pengujian ini berisikan pengujian hardware dan software.

4.1. Pengujian Hardware.

Pengujian hardware dilakukan untuk mengetahui bagaimana kinerja

hardware yang telah di rancang, pengujian ini meliputi :

1. Pengujian Rangkaian Arduino dengan LM35

2. Pengujian Rangkaian dengan Kipas

4.1.1. Pengujian Rangkaian Arduino dengan LM35

Sensor LM35 merupakan sensor yang dapat mengukur suhu dari 0 sampai

dengan 100 C. Sensor ini menerima inputan mulai dari 1V sampai dengan 5V dan

memiliki output 10mV per 1 C. Output sensor ini sebagai masukan bagi Arduino

Page 58: Tugas Akhir - Final

46

pada pin analog yang nantinya akan dikalkulasikan agar menampilkan suhu

sebenarnya.

T = (Va x Vb x 100.0 ) / 1024.0

dimana:

T = Temperature sebenarnya

Va = Vin dari output LM35

Vb = Vin Arduino

Pada tugas akhir ini, rangkaian diuji dengan suhu normal dan dipanaskan

dengan korek api. Hasil pengujian ini terdapat pada Tabel 4.1.

Tabel 4.1. Tabel hasil pengujian pengukuran suhu

Kondisi Suhu

Celcius Fahrenheit

Normal 28-31 82-84

Dipanaskan dengan Korek api 40-42 107-109

4.1.2. Pengujian Rangkaian dengan Kipas

Pengujian rangkaian kipas dimaksudkan untuk mengecek apakah kipas

bekerja dengan baik ketika suhu melebihi suhu sebenarnya. Setelah melakukan

pengujian suhu yang dipanaskan, maka kipas seharusnya akan berputar sebagai

pendingin otomatis.

Page 59: Tugas Akhir - Final

47

Gambar 4.1. Kipas tidak berputar ketika suhu sebenarnya lebih kecil dari suhu variable

Pada gambar 4.1. kipas tidak berputar karena suhu sebenarnya yaitu 31 C

tidak lebih besar dari suhu variable yaitu 35 C, dari gambar diatas informasi yang

di dapat yaitu "Motor:Off" yang menandakan kipas tidak berputar. Ketika

variable suhu sebagai parameter diberikan input yang lebih kecil yaitu 30 C maka

kipas akan berputar dengan tanda "Motor:On" seperti pada Gambar 4.2.

Gambar 4.2. Kipas menyala ketika suhu variable lebih kecil dari suhu sebenarnya

Page 60: Tugas Akhir - Final

48

4.2. Pengujian Software

Setelah menguji hardware / rangkaian Arduino beserta sensor suhu dan

Kipas DC, maka dilakukan pengujian dengan mengintegrasikan dengan aplikasi

desktop yang di buat dengan bahasa pemrogramman C# .Net dan disimpan ke

dalam basis data / database Microsoft Access. Interfacing / penghubung Arduino

dengan aplikasi menggunakan port serial usb dari Arduino ke port usb komputer

dengan menggunakan kabel USB.

4.2.1. Menginstal Aplikasi Desktop

Aplikasi desktop dikompilasi dalam satu paket menjadi file installer agar

lebih mudah saat instalasi.

Gambar 4.3. Software aplikasi desktop

Double klik file installer maka akan menampilkan form seperti Gambar

4.4. kemudian klik tombol Next > untuk melanjutkan ke tahap berikut nya.

Gambar 4.4. Instalasi Aplikasi Pengukur Suhu

Page 61: Tugas Akhir - Final

49

Pada form seperti pada Gambar 4.5. menampilkan lokasi yang mana file

nanti akan ditempatkan didalam operating system. Setelah menentukan lokasi file

klik tombol Next > untuk melanjutkan.

Gambar 4.5. Lokasi penyimpanan file instalasi

Pada form seperti pada Gambar 4.6. mengkonfirmasikan untuk melakukan

ketahap penginstalasi selanjutnya.

Gambar 4.6. Konfirmasi instalasi aplikasi

Page 62: Tugas Akhir - Final

50

Pada form seperti pada Gambar 4.7. menandakan instalasi telah selesai,

dan menandakan Aplikasi Pengukur Suhu sudah dapat digunakan dan dapat

berinteraksi dengan Arduino.

Gambar 4.7. Instalasi Aplikasi selesai

4.2.2. Menampilkan aplikasi desktop

Setelah selesai instalasi aplikasi desktop, maka aplikasi yang telah di instal

di coba untuk membuktikan bahwa aplikasi ini dapat berjalan dengan normal dan

siap digunakan untuk berinteraksi dengan Arduino.

Gambar 4.8. Shortcut aplikasi desktop

Aplikasi dapat dibuka melalui Start Windows > All Programs > Pengukur

Suhu [Lucky] > Pengukur Suhu - Lucky. Maka akan tampil seperti pada Gambar

4.9. yang merupakan tampilan awal aplikasi desktop.

Page 63: Tugas Akhir - Final

51

Gambar 4.9. Tampilan awal aplikasi desktop

4.3. Hasil Pengukuran Suhu dan Interaksi Aplikasi dengan Arduino

Setelah pengujian hardware dan instalasi aplikasi desktop selesai. Maka

untuk menghubungkan antara aplikasi dan Arduino menggunakan Port Serial

USB dengan kabel USB. Ketika aplikasi desktop dijalankan dan memilih port

Arduino yang terbaca di dalam komputer, lalu memilih Baud Rate yaitu 9600,

secara langsung berinteraksi dengan aplikasi desktop dan aplikasi desktop segera

merespon untuk mengeluarkan output dari Arduino secara visual seperti Gambar

4.10.

Gambar 4.10. Interaksi Arduino dengan aplikasi desktop

Page 64: Tugas Akhir - Final

52

Pada Gambar 4.10. terlihat suhu berada pada ± 31 ºC yang di ambil pada

tanggal 8 September 2013 pukul 12.42 siang.

4.3.1. Menampilkan Suhu yang dipanaskan

Saat sensor suhu dipanaskan dengan menggunakan korek api dalam waktu

± 3 detik menghasilkan suhu ± 57 ºC, dan kipas DC akan berputar seperti pada

Gambar 4.11.

Gambar 4.11. Tampilan aplikasi desktop ketika sensor suhu dipanaskan

4.3.2. Menampilkan suhu yang didinginkan

Saat sensor suhu didinginkan dengan dengan batu es maka akan

mendapatkan suhu terendah ± 19 ºC dalam waktu 1 menit., dan Kipas DC tidak

berputar. Hal ini disebabkan karena lebih kecil dari suhu yang telah didefinisikan

yaitu 32 ºC.

Page 65: Tugas Akhir - Final

53

Gambar 4.12. Tampilan aplikasi desktop ketika sensor suhu didinginkan

4.3.3. Menampilkan hasil pengukuran suhu yang telah disimpan

Untuk menampilkan hasil pengukuran suhu yang telah disimpan ke dalam

basis data, dari aplikasi desktop ini pilih menu Main > Data. Maka akan tampil

seperti Gambar 4.11. Di dalam form terdapat seluruh history suhu yang disimpan

di setiap detik dengan sedikit frekuensi missing data record.

Gambar 4.13. Informasi suhu yang disimpan di basis data

Page 66: Tugas Akhir - Final

54

4.3.4. Toleransi Hasil Pengukuran

Hasil pengukuran suhu ruangan dapat berubah dengan sangat mudah. Oleh

karena itu, hasil pengukuran suhu dan pendingin ruangan ditampilkan pada

aplikasi desktop khususnya pada project tugas akhir ini sering kali didapatkan

hasil pengukuran yang tidak stabil dan terjadi kesalahan pengukuran (error). Hal

ini dapat disebabkan karena beberapa faktor, antara lain:

1. Nilai tegangan input yang tidak stabil. Sehingga, mengubah nilai konstanta

waktu yang didapat dan menghasilkan kesalahan pengukuran karena nilai

konversi menjadi tidak sesuai.

2. Delay pada pengiriman data dari Arduino ke Aplikasi Desktop.

Tabel 4.2. Hasil pengukuran suhu waktu per detik

9/7/2013 7:29 9/7/2013 7:30 9/7/2013 9:06 0 29.54 29.43 30.5 1 29.54 29.43 30.4 2 29.54 29.43 30.4 3 29.43 30.4 4 29.43 29.43 5 29.43 29.54 30.5 6 29.43 29.54 30.61 7 29.54 29.54 30.4 8 29.43 29.54 30.4 9 29.54 30.5

10 29.43 29.54 30.4 11 29.65 29.43 30.4 12 29.54 29.54 30.4 13 29.54 29.54 30.5 14 29.43 29.54 30.4 15 29.43 29.54 30.4 16 29.54 29.65 30.4 17 29.43 29.54 30.4 18 29.43 29.65 30.29 19 29.43 29.54 30.4 20 29.43 29.54 30.4

Page 67: Tugas Akhir - Final

55

21 29.43 30.4 22 29.43 29.54 23 29.43 29.65 30.4 24 29.32 29.65 30.29 25 29.43 29.65 30.29 26 29.43 29.65 30.29 27 29.65 30.29 28 29.43 29.43 30.29 29 29.32 29.54 30.4 30 29.32 29.54 30.4 31 29.32 29.54 30.29 32 29.32 29.54 30.4 33 29.43 29.54 30.4 34 29.43 29.54 30.29 35 29.32 29.65 30.29 36 29.32 29.54 30.29 37 29.32 29.54 30.29 38 29.32 30.29 39 29.32 29.54 40 29.22 29.54 30.29 41 29.32 29.54 30.29 42 29.32 29.43 30.4 43 29.32 29.54 30.29 44 29.43 29.54 30.4 45 29.43 30.4 46 29.43 29.54 30.29 47 29.43 29.54 30.4 48 29.43 29.54 30.4 49 29.43 29.43 30.4 50 29.43 29.54 30.4 51 29.32 29.43 30.5 52 29.43 29.54 30.4 53 29.43 29.43 30.4 54 29.22 29.43 30.4 55 29.43 29.43 30.4 56 29.43 30.5 57 29.43 29.54 58 29.43 29.54 30.29 59 29.43 29.54 30.4

.

Page 68: Tugas Akhir - Final

56

Tabel 4.2. merupakan hasil dari pengukuran suhu ruangan yang disimpan

didalam basis data. Dan karena hasil pengukuran sering berubah seiring

berputarnya waktu, selagi hasil pengukuran tidak melebihi suhu default yaitu 32

C, maka kipas akan tetap Off, dan jika sebaliknya suhu lebih besar dari suhu

default, maka kipas akan On.

Dari Tabel 4.2. khususnya pada kolom yang tidak memiliki isi / blank,

dapat dilihat bahwa sistem pengukuran suhu ruangan pada tugas ini memiliki

error pada tiap kolom sebanyak ± 4 kali data tidak tersimpan. Hal ini disebabkan

karena delay dan konversi arduino maupun faktor lain yang membutuhkan waktu

konversi agak lebih lama.

4.3.5. Perbandingan dengan alat Termometer lain

Dari hasil pengukuran dengan alat termometer, didapat nilai yang tidak

sama, ada selisih sekitar ± 1º C. Pengukuran ini diambil dengan mengukur suhu

tubuh dalam waktu 12 detik. Terlihat hasil pada tabel perbandingan seperti tabel

dibawah.

Tabel 4.3. Hasil perbandingan dengan termometer

Detik Sistem Pengukur Suhu Termometer

1 32.3 32.2

2 33.3 33.7

3 33.8 34.5

4 34.1 35.0

5 34.5 35.1

6 34.4 35.2

Page 69: Tugas Akhir - Final

57

7 34.6 35.3

8 34.7 35.4

9 34.8 35.4

10 34.8 35.4

11 34.9 35.4

12 34.9 35.5

Page 70: Tugas Akhir - Final

58

BAB V

KESIMPULAN DAN SARAN

5.1. Kesimpulan

Dari penulisan tugas akhir ini tentang alat pengukur suhu ruangan dan

hasil percobaan yang telah dilakukan maka penulis dapat mengambil kesimpulan

sebagai berikut:

1. Dengan adanya alat pengukur suhu ruangan dapat memantau suhu dan

sebagai pemutar kipas DC secara otomatis jika suhu telah melewati suhu

yang telah didefinisikan.

2. Semua data suhu ruangan disimpian kedalam basis data setiap detik dan

dapat dilihat hasil data dengan Aplikasi yang di buat menggunakan C# .Net /

Microsoft Access.

3. Hasil pengukuran suhu dan pendingin ruangan yang digunakan pada laporan

tugas akhir ini sangat bergantung pada nilai / input dari sensor suhu, nilai

tegangan input, dan hubungan antara hardware dan sorfware.

4. Dari data hasil pengukuran suhu ruangan, didapatkan nilai toleransi

pengukuran sebanyak ± 4 kali data tidak tersimpan terhadap pengukuran

yang dilakukan oleh Arduino dan aplikasi desktop.

Page 71: Tugas Akhir - Final

59

5.2. Saran

Setelah melakukan penulisan tugas akhir ini tentang alat pengukur suhu

ruangan maka penulis dapat memberikan saran agar alat ini dapat lebih

dikembangkan lagi menjadi lebih baik, yaitu:

1. Alat ini dapat dikembangkan lagi agar dapat digunakan via internet maupun

melalui alat komunikasi lain.

2. Agar suhu ruangan menjadi cepat stabil seharusnya dibuatkan kontrol untuk

motor DC sehingga pendingin suhu ruangan dapat diukur dengan waktu.

3. Untuk mendapatkan nilai pengukuran yang lebih akurat dan lebih stabil

dapat dilakukan dengan berbagai cara seperti: mengurangi respon sensor

dengan meningkatkan waktu delay pengukuran, menggunakan sistem

grounding yang lebih baik.

4. Untuk mendapatkan suatu sistem pengukuran suhu dan otomatisasi

pendingin ruangan yang lebih handal sebaiknya setiap pin IO pada papan

Arduino yang digunakan untuk pin pengirim dan pin penerima sensor tidak

di-jumper atau di-parallel dengan beban lainnya.

Page 72: Tugas Akhir - Final

DAFTAR PUSTAKA

Afrie, Setiawan. 2011. 20 APLIKASI MIKROKONTROLER ATMega8535 dan

ATMega16. Yogyakarta: ANDI Banzi, Massimo. 2008. Getting Started with Arduino, First Edition. Sebastopol:

O’Reilly Dasar, Elektronika. 2012. Sensor Suhu IC LM35. From http://elektronika-

dasar.web.id/komponen/sensor-tranducer/sensor-suhu-ic-lm35 ,25 Agustus 2013

Hamdani, Mohammad. 2010. Pengendali Kecepatan Putaran Motor DC

Terhadap Perubahan Temperatur Dengan Sistem Modulasi Lebar Pulsa. Depok: Universitas Indonesia

McRoberts, Mike. 2009. Ardunio Starter Kit Manual – A Complete Beginner

Guide to the Arduino. UK: Earthshine Design. Rasheed, Faraz. 2006. Programmer Heaven: C# School. Spain: Synchron Data

S.L Robertson, Christopher R. 2008. Fundamental Electrical and Electronic

Principles, Third Edition. Oxford: Newnes Sains, Insan. 2011. Sensor Suhu dengan Arduino. From

http://www.geraicerdas.com/viewtag/25, 20 Februari 2013 Wikipedia. 2013. Darlington transistor. From

http://en.wikipedia.org/wiki/Darlington_transistor, 10 Juli 2013

Page 73: Tugas Akhir - Final

LAMPIRAN

Sketch Program Perancangan Sistem Pengukur Suhu Menggunakan

Arduino dan C#.Net:

Arduino Code: int tempPin = 0; int motorpin = 10; char buffer[25]; String derajat="32"; bool IsMotorOn = false; void setup() { analogReference(INTERNAL); pinMode(motorpin,OUTPUT); pinMode(tempPin, INPUT); Serial.begin(9600); // buka serial port, set baud rate 9600 bps } float read_lm35(int pin) { float temp = analogRead(pin) / 9.31; return (temp); } int bluePin = 9; int blueTemp= 0; void loop() { float tempC=read_lm35(tempPin); delay(1000); float tempf = (tempC * 9)/ 5 + 32; // Show to .Net ShowToDotNet(tempC, tempf); if (Serial.available() > 0) { derajat = Serial.readString(); } int speed=iSpeedMotor(tempC, derajat); analogWrite(motorpin,speed); Serial.println(); Serial.flush(); } float StrToFloat(String str){ char carray[str.length() + 1]; //determine size of the array str.toCharArray(carray, sizeof(carray)); //put str into an array return atof(carray); } int iSpeedMotor(float ftemperature, String derajat) { int ipwm = 0; if(Serial) { String str=derajat;//Serial.readString(); float suhuDefine = StrToFloat(str); float toleransi = suhuDefine - ftemperature; String message = ""; Serial.println(toleransi); if(toleransi >= -0.5 && toleransi <= 0.5)

Page 74: Tugas Akhir - Final

{ message = "Motor:Off|"; } else { if(ftemperature>=suhuDefine) //jika temperatur >= suhuDefine { int selisih = ftemperature-suhuDefine; if(selisih > 55) selisih = 55; ipwm = 200+(selisih); message = "Motor:On|"; } else { message = "Motor:Off|"; } } Serial.print(message); } else { if(ftemperature > 40) { IsMotorOn=true; ipwm=255; } if(IsMotorOn) { Serial.print("Motor:On|"); } else { Serial.print("Motor:Off|"); } } return ipwm; } void ShowToDotNet(float suhuC, float suhuF) { char tmpC[10]; dtostrf(suhuC,1,2,tmpC) ;char tmpF[10]; dtostrf(suhuF,1,2,tmpF) ; String sC = tmpC; String sF = tmpF; String s = "SuhuCelcius:" + sC + "|SuhuFahrenheit:" + sF + "|"; Serial.println(s); }

C# Code:

// ............ using DevExpress.XtraGauges.Win;

Page 75: Tugas Akhir - Final

using DevExpress.XtraGauges.Win.Gauges.Linear; using DevExpress.XtraGauges.Core.Model; using DevExpress.XtraGauges.Core.Base; namespace SkripsiV1CSharp { public partial class Form1 : Form { GaugeControl gc = null; GaugeControl gc4 = null; double val =0; public Form1() { InitializeComponent(); #region GaugeControl2 gc = gaugeControl2; LinearGauge linearGauge = gc.AddLinearGauge(); linearGauge.AddDefaultElements(); LinearScaleBackgroundLayer background = linearGauge.BackgroundLayers[0]; background.ShapeType = BackgroundLayerShapeType.Linear_Style7; LinearScaleComponent scale = linearGauge.Scales[0]; scale.MinValue = 0; scale.MaxValue = 100; scale.Value = 0; scale.MajorTickCount = 11; scale.MajorTickmark.FormatString = "{0:F0}"; scale.MajorTickmark.ShapeType = TickmarkShapeType.Linear_Style6_3; scale.MinorTickmark.ShapeType = TickmarkShapeType.Linear_Style5_2; LinearScaleLevelComponent levelBar = linearGauge.Levels[0]; levelBar.ShapeType = LevelShapeSetType.Style3; background.ScaleStartPos = new PointF2D(background.ScaleStartPos.X - 0.005f, background.ScaleStartPos.Y - 0.015f); background.ScaleEndPos = new PointF2D(background.ScaleEndPos.X - 0.005f, background.ScaleEndPos.Y); gc.Parent = this; #endregion GaugeControl2 #region GaugeControl4 gc4 = gaugeControl4; LinearGauge linearGauge4 = gc4.AddLinearGauge(); linearGauge4.AddDefaultElements(); LinearScaleBackgroundLayer background4 = linearGauge4.BackgroundLayers[0]; background4.ShapeType = BackgroundLayerShapeType.Linear_Style5; LinearScaleComponent scale4 = linearGauge4.Scales[0]; scale4.MinValue = 0; scale4.MaxValue = 212; scale4.Value = 20; scale4.MajorTickCount = 6;

Page 76: Tugas Akhir - Final

scale4.MajorTickmark.FormatString = "{0:F0}"; scale4.MajorTickmark.ShapeType = TickmarkShapeType.Linear_Style6_3; scale4.MinorTickCount = 3; scale4.MinorTickmark.ShapeType = TickmarkShapeType.Linear_Style5_2; LinearScaleLevelComponent levelBar4 = linearGauge4.Levels[0]; levelBar4.ShapeType = LevelShapeSetType.Style3; background4.ScaleStartPos = new PointF2D(background4.ScaleStartPos.X - 0.005f, background4.ScaleStartPos.Y - 0.015f); background4.ScaleEndPos = new PointF2D(background4.ScaleEndPos.X - 0.005f, background4.ScaleEndPos.Y); gc4.Parent = this; #endregion GaugeControl4 string[] serialPorts = System.IO.Ports.SerialPort.GetPortNames(); cboPorts.Items.AddRange(serialPorts); cboBaud.Items.Add(2400); cboBaud.Items.Add(4800); cboBaud.Items.Add(9600); cboBaud.Items.Add(14400); cboBaud.Items.Add(19200); cboBaud.Items.Add(28800); cboBaud.Items.Add(38400); cboBaud.Items.Add(57600); cboBaud.Items.Add(115200); } private void Form1_Load(object sender, EventArgs e) { serialPort1.DataReceived += new System.IO.Ports.SerialDataReceivedEventHandler(serialPort1_DataReceived); } // ........... Some Code delegate void SetTextCallback(string text); private void SetText(string text) { if (this.txtOutput.InvokeRequired) { SetTextCallback d = new SetTextCallback(SetText); this.BeginInvoke(d, new object[] { text }); } else { txtOutput.AppendText(text); } } private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e) { try {

Page 77: Tugas Akhir - Final

SerialPort sp = sender as SerialPort; string strExisting = sp.IsOpen ? sp.ReadLine() : ""; SetText(strExisting); this.StoreToDB(strExisting); } catch (Exception ex) { } } private void StoreToDB(string strExisting) { DataSet1.THistoryDataTable dt = new DataSet1.THistoryDataTable(); DataSet1.THistoryRow row = dt.NewTHistoryRow(); string[] arrStr = strExisting.Trim().Remove(strExisting.LastIndexOf("|")).Split('|'); foreach (string item in arrStr) { string[] keyValue = item.Split(':'); switch (keyValue[0]) { case "SuhuCelcius": row.SuhuCelcius = Convert.ToDouble(keyValue[1]); this.ShowGaugeControlCelciusTemperature(keyValue[1], gc); break; case "SuhuFahrenheit": row.SuhuFahrenheit = Convert.ToDouble(keyValue[1]); this.ShowGaugeControlFahrenheitTemperature(keyValue[1], gc4); break; } } row.Date = DateTime.Now; row.RPM = 0; row.Time = DateTime.Now; try { ta.Insert(row.SuhuFahrenheit, row.SuhuCelcius, row.RPM, DateTime.Now, DateTime.Now); } catch (Exception ex) { } } private void ShowGaugeControlFahrenheitTemperature(string tempF, GaugeControl gc4) { LinearGauge lg = gc4.Gauges[0] as LinearGauge; LinearScale ls = lg.Scales[0]; ls.Value = (float)Convert.ToDouble(tempF);

Page 78: Tugas Akhir - Final

digitalGauge2.Text = tempF + "'F"; } private void ShowGaugeControlCelciusTemperature(string tempC, GaugeControl gc) { LinearGauge lg = gc.Gauges[0] as LinearGauge; LinearScale ls = lg.Scales[0]; ls.Value = (float)Convert.ToDouble(tempC); digitalGauge1.Text = tempC + "'C"; val = ls.Value; } private void timer1_Tick(object sender, EventArgs e) { chart1.ChartAreas[0].AxisX.Maximum = 60; chart1.ChartAreas[0].AxisX.Minimum = 1; chart1.ChartAreas[0].AxisX.LabelStyle.Interval = 1; chart1.ChartAreas[0].AxisX.MajorGrid.Interval = Math.PI; chart1.ChartAreas[0].AxisX.MinorGrid.Interval = Math.PI / 4; chart1.ChartAreas[0].AxisX.MinorTickMark.Interval = Math.PI / 4; chart1.ChartAreas[0].AxisX.MajorTickMark.Interval = Math.PI; chart1.ChartAreas[0].AxisY.Maximum = 100; chart1.ChartAreas[0].AxisY.Minimum = 0; chart1.ChartAreas[0].AxisY.LabelStyle.Interval = 10; chart1.Series[0].Points.AddXY(DateTime.Now.Second+1, val); if (DateTime.Now.Second+1 ==60 ) { chart1.Series[0].Points.Clear(); } label4.Text = DateTime.Now.ToString("HH:mm"); }