dodik
-
Upload
muchamad-chaninul-fuad -
Category
Documents
-
view
217 -
download
0
Transcript of dodik
-
7/23/2019 dodik
1/16
2.1.1 MIKROKONTROLER
Pengertian AVR
AVR adalah sebuah mikrokontroler yang dibuat dengan menggunakan
arsitektur Harvard dimana data dan program disimpan secara terpisah sehingga
sangat baik untuk sebuah sistem terbenam di lapangan karena terlindungi dari
interferensi yang dapat merusak isi program. Salah satu mikrokontroler keluarga
AVR yang dipergunakan pada penelitian ini yaitu ATmega32.
AT!ega32 memiliki fitur cukup lengkap" mulai dari kapasitas memori
program dan memori data yang cukup besar" interupsi" timer#counter" $%!"
&SART" T%'" analog comparator" (($R)! internal dan *uga A+, internal.
+iba-ah ini merupakan pen*elasan melalui gambar mengenai konfigurasi pinpin
yang merupakan bagian dari mikrokontoller AT!ega32 yang digunakan didalam
modul board arduino yang digunakan dalam penelitian dan perancangan ini
adalah" sebagai berikut ini/
Gambar 2.1 0onfigurasi $in AT!ega32
Sumber/http/##---.*asonvolk.com#-pcontent#uploads#211#1#mega32p.*pg
2.1.2 Arduino Uno
Arduino adalah platform pembuatan prototipe elektronik yang bersifat
open-source hardware yang berdasarkan pada perangkat keras dan perangkat
lunak yang fleksibel dan mudah digunakan. Arduino ditu*ukan bagi para seniman"
desainer" dan siapapun yang tertarik dalam menciptakan ob*ek atau lingkungan
yang interaktif.
Arduino pada a-alnya dikembangkan di 'vrea" 'talia. 4ama Arduino adalah
sebuah nama maskulin yang berarti teman yang kuat. $latform arduino terdiri dari
arduino board" shield" bahasa pemrograman arduino" dan arduino development
5
5
http://www.jasonvolk.com/wp-content/uploads/2010/04/mega328p.jpghttp://www.jasonvolk.com/wp-content/uploads/2010/04/mega328p.jpg -
7/23/2019 dodik
2/16
environment. Arduino board biasanya memiliki sebuah chip dasar mikrokontroler
Atmel AVR ATmega berikut turunannya.
6lok diagram arduino board yang sudah disederhanakan dapat dilihat pada
7gambar 2.28 Shield adalah sebuah papan yang dapat dipasang diatas arduino
board untuk menambah kemampuan dari arduino board. 6ahasa pemrograman
arduino adalah bahasa pemrograman yang umum digunakan untuk membuat
perangkat lunak yang ditanamkan pada arduino board. 6ahasa pemrograman
arduino mirip dengan bahasa pemrograman ,99.
Gambar 2.2 0onfigurasi $in AT!ega32 pada board arduino
Sumber/ http/##---.arduino.cc
Arduino uno merupakan salah satu *enis rangkaian mikrokontroller yang
menggunakan system physical computing. Physical computing adalah membuat
sebuah sistem atau perangkat fisik dengan menggunakan soft-are dan hard-are
yang sifatnya interaktif yaitu dapat menerima rangsangan dari lingkungan dan
merespon balik. Physical computing adalah sebuah konsep untuk memahami
hubungan yang manusia-i antara lingkungan yang sifat alaminya adalah analog
dengan dunia digital7+*uandi"218.
$ada prakteknya konsep ini diaplikasikan dalam desaindesain alat atau
pro*ekpro*ek yang menggunakan sensor dan microcontroller untuk
mener*emahkan input analog ke dalam sistem soft-are untuk mengontrol gerakan
alatalat elektromekanik seperti lampu" motor dan sebagainya.
$embuatanprototype atauprototyping adalah kegiatan yang sangat penting
di dalam prose physical computing karena pada tahap inilah seorang perancang
:
http://www.arduino.cc/http://www.arduino.cc/ -
7/23/2019 dodik
3/16
melakukan eksperimen dan u*icoba dari berbagai *enis komponen" ukuran"
parameter" program komputer dan sebagainyaberulangulang kali sampai
diperoleh kombinasi yang paling tepat.
+alam hal ini perhitungan angkaangka dan rumus yang akurat bukanlah
satusatunya faktor yang men*adi kunci sukses di dalam mendesain sebuah alat
karena ada banyak faktor eksternal yang turut berperan" sehingga proses mencoba
dan menemukan#mengoreksi kesalahan perlu melibatkan halhal yang sifatnya
noneksakta.
$rototyping adalah gabungan antara akurasi perhitungan dan seni. $roses
prototyping bisa men*adi sebuah kegiatan yang menyenangkan atau menyebalkan"
itu tergantung bagaimana kita melakukannya. !isalnya *ika untuk mengganti
sebuah komponen" merubah ukurannya atau merombak ker*a sebuah prototype
dibutuhkan usaha yang besar dan -aktu yang lama" mungkin prototyping akan
sangat melelahkan karena peker*aan ini dapat dilakukan berulangulang sampai
puluhan kali ; bayangkan betapa frustasinya perancang yang harus melakukan itu.
'dealnya sebuah prototype adalah sebuah sistem yang fleksibel dimana
perancang bisa dengan mudah dan cepat melakukan perubahanperubahan dan
mencobanyalagi sehingga tenaga dan -aktu tidak men*adi kendala berarti.
+engan demikian harus ada sebuah alat pengembangan yang membuat proses
prototyping men*adi mudah. $ada masa lalu 7dan masih ter*adi hingga hari ini8
beker*a dengan hard-are berarti membuat rangkaian menggunakan berbagai
komponen elektronik seperti resistor" kapasitor" transistor dan sebagainya. Setiap
komponen disambungkan secara fisik dengan kabel atau *alur tembaga yang
disebut dengan istilah
-
7/23/2019 dodik
4/16
soft-are. 'ni adalah sebuah revolusi di dalam proses prototyping. +i antara sekian
banyak alat pengembangan prototype" Arduino adalah salah satunya yang paling
banyak digunakan. Arduino dikatakan sebagai sebuah platform dari physical
computing yang bersifat open source. $ertamatama perlu dipahami bah-a kata
-
7/23/2019 dodik
5/16
Arduino yang sangat derma-an membagibagikan keme-ahan hasil ker*a keras
mereka kepada semua orang.
Saya pribadi betulbetul kagum dengan desain hard-are" bahasa
pemrograman dan '+( Arduino yang berkualitas tinggi dan sangat
berkelas.Arduino dikembangkan oleh sebuah tim yang beranggotakan orang
orang dari berbagai belahan dunia.
Anggota inti dari tim ini adalah/
!assimo 6an?i !ilano" 'taly
+avid ,uartielles !almoe" S-eden
Tom 'goe 4e- @ork" &S
ianluca !artino Torino" 'taly
+avid A. !ellis 6oston" !A" &SA
Arduino &no adalah arduino board yang menggunakan mikrokontroler
ATmega32. Arduino &no memiliki pin digital 7: pin dapat digunakan sebagai
output $%!8" : input analog" sebuah : !H? osilator kristal" sebuah koneksi
&S6" sebuah konektor sumber tegangan" sebuah header ',S$" dan sebuah tombol
reset. Arduino &no memiliki area cakupan yang luas untuk segala hal yang
dibutuhkan untuk mendukung sebuah aplikasi yang berbasiskan mikrokontroler.
Hanya dengan menghubungkannya ke sebuah komputer melalui &S6 atau
memberikan tegangan +, dari baterai atau adaptor A, ke +, sudah dapat
membuat aplikasinya beker*a. Arduino &no menggunakan ATmega:&2 yang
diprogram sebagai USB-to-serial converter untuk komunikasi serial ke komputer
melalui port &S6.
Adapun data teknis yang terdapat board Arduino &4) R3 adalah sebagai
berikut/
B !ikrokontroler/ ATmega32
B Tegangan )perasi/ 5V
B Tegangan 'nput 7recommended8/ > 2 V
B Tegangan 'nput 7limit8/ :21 V
B $in digital '#)/ 7: diantaranya pin $%!8
C
-
7/23/2019 dodik
6/16
B $in Analog input/ : input pin
B Arus +, per pin '#)/ 1 mA
B Arus +, untuk pin 3.3 V/ 51 mA
B Dlash !emory/ 32 06 dengan 1.5 06 digunakan sebagai bootloader
B SRA!/ 2 06
B (($R)!/ 06B 0ecepatan besaran -aktu sebesar/ : !h? sebagai komponen untuk
(Crystall oscillator)
&ntuk memberikan gambaran mengenai apa sa*a yang terdapat di dalam
sebuah microcontroller" pada gambar berikut ini diperlihatkan 7gambar 2.38
contoh diagram blok sederhana dari microcontroller ATmega32 7dipakai pada
Arduino &no8 seperti gambar blok diagram sederhana diba-ah ini/
Gambar 2.% 0onfigurasi $in AT!ega32
Sumber/ http/##---.arduino.cc
6lokblok di atas di*elaskan sebagai berikut/
21
http://www.arduino.cc/http://www.arduino.cc/ -
7/23/2019 dodik
7/16
Universal synchronous !eceiver"#ransmitter (U!#) adalah antar muka
yang digunakan untuk komunikasi serial seperti pada RS232" RS22 dan
RS5.
206 RA! pada memory ker*a bersifat volatile 7hilang saat daya dimatikan8"
digunakan oleh variablevariabel di dalam program.
3206 RA! flash memory bersifat non-volatile" digunakan untuk
menyimpan program yang dimuat dari komputer. Selain program" flash
memory *uga menyimpan bootloader. Bootloader ini yang men*embatani
antara software compiler arduino dengan mikrokontroler. +an ketika
pengguna papan mikrokontroller arduino menulis program tidak perlu banyak
menuliskan sintak bahasa ," cukup melakukan pemanggilan fungsi program"
hemat -aktu dan pikiran.
06 (($R)! bersifat nonvolatile" digunakan untuk menyimpan data yang
tidak boleh hilang saat daya dimatikan. Tidak digunakan pada papan Arduino.
Central Processing Unit (CPU)" bagian dari microcontroller untuk
men*alankan setiap instruksi dari program. $ort input#output" pinpin untuk menerima data 7input8 digital atau analog"
danmengeluarkan data 7output8 digital atau analog.
Setelah mengenal bagianbagian utama dari microcontroller ATmega sebagai
komponen utama" selan*utnya kita akan mengenal bagianbagian dari papan
Arduino itu sendiri. +engan mengambil contoh sebuah papan Arduino tipe &S6"
bagianbagiannya dapat di*elaskan sebagai berikut seperti pada 7gambar 2.8
seperti gambar diba-ah ini/
2
-
7/23/2019 dodik
8/16
Gambar 2.& 0onfigurasi $in AT!ega32 arduino uno
Sumber/ http/##arduino.cc#en#main#hard-are
Tabe! 2.1 Tabel karakteristik rangkaian pada board arduino uno
1& "in in"ut'out"ut digita! #()1%$
6erfungsi sebagai input atau output" dapat diatur oleh program.
0husus untuk : buah pin 3" 5" :" C" 1 dan " dapat *uga berfungsi
sebagai pin analog output dimana tegangan outputnya dapat diatur.
4ilai sebuah pin output analog dapat diprogram antara 1 ; 255"
dimana hal itu me-akili nilai tegangan 1 ; 5V
U*+
6erfungsi untuk/
!emuat program dari komputer ke dalam papan
0omunikasi serial antara papan dan komputer
!emberi daya listrik kepada papan
*ambungan *V1
Sambungan atau$umper untuk memilih sumber daya papan" apakah
dari sumber eksternal atau menggunakan &S6. Sambungan ini tidak
diperlukan lagi pada papan Arduino versi terakhir karena pemilihan
sumber daya eksternal atau &S6 dilakukan secara otomatis
,1 - Krita! #quartz crystal oscillator$
Eika microcontroller dianggap sebagai sebuah otak" maka kristal
adalah *antungnya karena komponen ini menghasilkan detakdetak
22
http://arduino.cc/en/main/hardwarehttp://arduino.cc/en/main/hardware -
7/23/2019 dodik
9/16
yang dikirim kepada microcontroller agar melakukan sebuah operasi
untuk setiap detaknya. 0ristal ini dipilih yang berdetak : *uta kali
per detik 7:!H?8.
Tombol Reset S&ntuk mereset papan sehingga program akan mulai lagi dari a-al.
$erhatikan bah-a tombol reset ini bukan untuk menghapus program
atau mengosongkan microcontroller.
In-Circuit Serial Programming (ICSP)
$ort ',S$ memungkinkan pengguna untuk memprogram
microcontroller secara langsung" tanpa melalui bootloader.
&mumnya pengguna Arduino tidak melakukan ini sehingga ',S$
tidak terlalu dipakai -alaupun disediakan.
I/ 1 - Mi0ro0ontro!!er Atmega
0omponen utama dari papan Arduino" di dalamnya terdapat ,$&"
R)! dan RA!.
um 1 - umber daa e3tber daa e3terna!
Eika hendak disuplai dengan sumber daya eksternal" papan Arduino
dapat diberikan tegangan +, antara C2V.
4 "in in"ut ana!og #()5$
$in ini sangat berguna untuk membaca tegangan yang dihasilkan
oleh sensor analog" seperti sensor suhu. $rogram dapat membaca
nilai sebuah pin input antara 1 ; 123" dimana hal itu me-akili nilai
tegangan 1 ; 5V.
Tanpa melakukan konfigurasi apapun" begitu sebuah papan Arduino
dikeluarkan dari kotak pembungkusnya ia dapat langsung disambungkan ke
sebuah komputer melalui kabel &S6. Selain berfungsi sebagai penghubung untuk
pertukaran data" kabel &S6 ini *uga akan mengalirkan arus +, sebesar/ 5 Volt
kepada papan Arduino sehingga praktis tidak diperlukan sumber daya dari luar.
23
-
7/23/2019 dodik
10/16
Saat mendapat suplai daya" lampu F(+ indikator daya pada papan Arduino akan
menyala menandakan bah-a ia siap beker*a.
Gambar 2.5 0omponen F(+ yang terdapat pada board Arduino &no
Sumber/ http/##arduino.cc#en#main#hard-are
$ada papan Arduino &no terdapat sebuah F(+ kecil yang terhubung ke pin
digital 3. F(+ ini dapat digunakan sebagai output saat seorang pengguna
membuat sebuah program dan ia membutuhkan sebuah penanda dari *alannya
program tersebut. 'ni adalah cara yang praktis saat pengguna melakukan u*i coba.
&mumnya microcontroller pada papan Arduino telah memuat sebuah
program kecil yang akan menyalakan F(+ tersebut berkedipkedip dalam *eda
satu detik. Eadi sangat mudah untuk mengu*i apakah sebuah papan Arduino baru
dalam kondisi baik atau tidak" cukup sambungkan papan itu dengan sebuah
komputer dan perhatikan apakah F(+ indikator daya menyala konstan dan F(+
dengan pin3 itu menyala berkedipkedip.
2.2 Pengena!an *enor
Sensor merupakan *enis tranduser yang digunakan untuk mengubah besaran
mekanis" magnetis" panas" sinar" dan kimia men*adi tegangan dan arus listrik.
Sensor sering digunakan untuk pendeteksian pada saat melakukan pengukuran
atau pengendalian. 6eberapa *enis sensor yang banyak digunakan dalam
2
http://arduino.cc/en/main/hardwarehttp://arduino.cc/en/main/hardware -
7/23/2019 dodik
11/16
rangkaian elektronik antara lain sensor cahaya7F+R8"sensor suhu7F!358" dan
sensor kelembaban uadara7+HT8.
+alam melakukan analisa ini digunakan sensor tipe F!35 yang digunakan
sebagai alat sensor suhu didalam rangkaian dengan menggunakan supplay
tegangan sebesar 15V darirduinoyang merupakan boardelektronik atau papan
rangkaian elektronik open sourceyang di dalamnya terdapat komponen utama
yaitu sebuah chip mikrokontroler dengan *enis AVR dari perusahaan Atmel.
!ikrokontroler itu sendiri adalah chip atau ', 7integrated circuit8 yang bisa
diprogram menggunakan komputer. Tu*uan menanamkan program pada
mikrokontroler adalah agar rangkaian elektronik dapat membaca input"
memproses input tersebut dan kemudian menghasilkan output sesuai yang
diinginkan.
Eadi mikrokontroler bertugas sebagai Gotak yang mengendalikan input"
proses dan output sebuah rangkaian elektronik. !ikrokontroler ada pada
perangkat elektronik di sekeliling kita. !isalnya handphone" !$3 player" +V+"
televisi" A," dll. !ikrokontroler *uga dipakai untuk keperluan mengendalikan
robot. 6aik robot mainan" maupun robot industri. 0arena komponen utama
Arduino adalah mikrokontroler" maka Arduino pun dapat diprogram
menggunakan komputer sesuai kebutuhan kita. untuk dapat mengukur suhu
ruangan dibutuhkan komponen sa*a yaitu F!35. selain modul mikrokontroler
rduino.
F!35 merupakan komponen elektronis berupa ', yang mampu
menghasilkan tegangan sebanding dengan besaran suhu yang menyelimuti.
0eluaran tegangan telah terkalibrasi dalam skala 0elvin.. Finieritas keluaran
tegangan pada skala ,elsius adalah 1mV#I, dengan akurasi JKI, pada suhu
ruang" dengan rentang suhu yang dapat direspon antara 5551I,"penggunaaan
F!35 tidak memerlukan perangkat tambahan" dengan mempunyai output
25
-
7/23/2019 dodik
12/16
impedansi yang rendah sehingga akan mempermudah dalam pembacaan dan
kontrol. 0onsumsi energy yang diperlukan ', ini sangat rendah :1 p% sehingga
tidak menimbulkan panas yang relative besar atau kurang dari 1"I,. Sensor ini
beker*a pada *angka tegangan yang lebar 7antara sampai 31 Volt8 memudahkan
penyesuian perancangan dengan perangkat sesudahnya.output dapat langsung
dihubungkan port mikrokontroler yang memiliki A+, atau denganrduino"
karenarduinomemiliki port &C (analog input) sebanyak : buah dengan
*enis"A+, yg dipakai adalah *enis A+, sebesar/1bit . !ikrokontroler ada pada
perangkat elektronik di sekeliling kita. !isalnya handphone" !$3 player" +V+"
televisi" A," dll.
!ikrokontroler *uga dipakai untuk keperluan mengendalikan robot. 6aik
robot mainan" maupun robot industri. &ntuk mendeteki keadaan alam sekitar
berupa data hasil analog input yang dibaca oleh sensor maka diba-ah ini terdapat
beberapa dasar teori yang men*adi acuan untuk mengenal cara ker*a sensor yang
digunakan dalam penelitian ini adalah sebagai berikut /
2.2.2 *enor 3e!embaban udara'6umidit #D6T11$
0elembaban udara menggambarkan kandungan uap air di udara yang dapat
dinyatakan sebagai kelembaban mutlak" kelembaban nisbi 7relatif8 maupun defisit
tekanan uap air. 0elembaban nisbi adalah membandingkan antara
kandungan#tekanan uap air aktual dengan keadaan *enuhnya atau pada kapasitas
udara untuk menampung uap air.
$eralatan elektronik *uga men*adi mudah berkarat *ika udara disekitarnya
memiliki kelembaban yang cukup tinggi. )leh karena itu" informasi mengenai
kelembaban udara pada suatu area tertentu men*adi sesuatu hal yang penting
untuk diketahui karena menyangkut efekefek yang ditimbulkannya.
2:
http://www.indorobotika.com/arduinohttp://www.indorobotika.com/arduinohttp://www.indorobotika.com/arduinohttp://www.indorobotika.com/arduino -
7/23/2019 dodik
13/16
'nformasi mengenai nilai kelembaban udara diperoleh dari proses
pengukuran. Alat yang biasanya digunakan untuk mengukur kelembaban udara
adalah higrometer. D6T11 adalah sensor digital yang dapat mengukur suhu dan
kelembaban udara di sekitarnya. Sensor ini sangat mudah digunakan bersama
dengan Arduino. !emiliki tingkat stabilitas yang sangat baik serta fitur kalibrasi
yang sangat akurat. 0oefisien kalibrasi disimpan dalam )T$ program memory"
sehingga ketika internal sensor mendeteksi sesuatu" maka module ini
menyertakan koefisien tersebut dalam kalkulasinya"D6T11 ini termasuk sensor
yang memiliki kualitas terbaik" dinilai dari respon" pembacaan data yang cepat"
dan kemampuan antiinterference. &kurannya yang kecil" dan dengan transmisi
sinyal hingga 21 meter"dengan sepsifikasi/ Supply 'oltage/ 95 V% #emperature
range/ 151 I, error ofJ 2 I," umidity/ 21C1L RH J 5L RHerror%dengan
sesifikasi digital interfacing system. membuat produk ini cocok digunakan untuk
banyak aplikasiaplikasi pengukuran suhu dan kelembaban.
.
Gambar 2.7Sensor kelembaban udara#Humidity 7+HT8
Tabe! 2.2 Tabel karakteristik sensor kelembaban udara#umidity
!odel +HT
$o-er supply 35.5V +,
)utput signal digital signal via singlebus
!easuring range humidity 21C1L RH J 5L RH error
temperature 0-50 C error of 2 C
Accuracy humidity 9LRH 7!aM 95LRH8N
2>
-
7/23/2019 dodik
14/16
temperature 92.1,elsius
Resolution or
sensitivity
humidity LRHN temperature
1.,elsius
Repeatability humidity 9LRHN temperature 9
,elsius
Humidity hysteresis 9LRH
Fongterm Stability 91.5LRH#year
Sensing period Average/ 2s
Inter08angeabi!it fully interchangeable
+imensions si?e 2O5.5O5.5mm
+ari pen*elasan 7Tabel 2.28 diatas bah-a struktur yang merupakan cara
ker*a dari sensor kelembaban udara#umidity memiliki empat buah kaki
yaitu/ pada bagian kaki7V,,8" dihubungkan ke bagian Vss yg bernilai sebesar
5V"pada board arduino uno dan untuk bagian kaki *+&dihubungkan keground
(*+&) pada board arduino uno" sedangkan pada bagian kaki data yang
merupakan keluaran (,utput) dari hasil pengolahan data analog dari sensor
yang dihubungkan ke bagian analog input (pin)" yaitu pada bagian pin
P/ (Pulse idth /odulation) pada board arduino uno dan yang tak
ketinggalan terdapat satu kaki tambahan yaitu kaki +C (+ot Connected)" yang
tidak dihubungkan ke pin manapun. Sensor kelembaban lain yang banyak
dikembangkan adalah *enis sensor serat optik yang menggunakan serat optik
sebagai bahan sensor. 6erbagai metode dan bahan untuk sensor telah
dikembangkan pada sensor serat optik ini.
!etode pengukuran yang digunakan seperti misalnyaN pengukuran serapan
gelombang" pengukuran pelemahan gelombang" dan pengukuran intensitas.
!aterial yang digunakan untuk sensor kebanyakan adalah bahanbahan hidrogel
seperti gelatin murni atau gelatin yang didoping" polimer yang didoping
,o,l29$VA" polianilin dengan nano ,o" dan agarosa. $emanfaatan $)D
(polymer optical fiber) sebagai sensor kelembaban telah dilakukan oleh Shin?o
2
-
7/23/2019 dodik
15/16
dengan konfigurasi probe sensor berbentuk lurus" diperoleh rentang kelembaban
yang dapat dideteksi antara 21C1L. $enelitian lain oleh Arregui dengan gel
agarosa yang digunakan sebagai pengganti cladding dari probe" diperoleh hasil
yang lebih baik. Rentang kelembaban yang mampu dideteksi 111L dengan
-aktu respon C1 detik. )leh karena itu $ada penelitian ini telah dirancang dan
dibuat sensor kelembaban menggunakan $)D dengan modifikasi cladding
menggunakan bahan gelatin dan chitosan" kemudian probe dari sensor
dibengkokkan membentuk huruf
-
7/23/2019 dodik
16/16
31