PENGANTAR
Alhamdulillah, segala puji dan syukur kepada Allah SWT atas segala rahmat, taufik
dan hidayah hingga penulis dapat menyelesaikan modul basic untuk pelatihan arduino di smart
lab. Modul ini berisi tiga bab pembahasan yaitu Komponen Elektro, Pengenalan Arduino dan
Sensor serta Aplikasinya.
Dengan modul basic ini, penulis mengucapkan terima kasih kepada seluruh pihak
terkait seperti teman teman di dunia maya yang telah memberikan share ilmunya pada pada
dunia maya. Selain itu penulis juga memberikan pengahrgaan yang sebesar-besarnya kepada
para penulis panduan arduino yang tidak bisa disebutkan satu persatu. Mudah-mudahan dengan
modul ini bisa menjadi ladang amal buat teman teman di dunia maya yang telah memberikan
ilmunya untuk saya.
saya menyadari bahwa dalam penyusunan Modul ini masih terdapat kelemahan yang
perlu diperkuat dan kekurangan yang perlu dilengkapi. Dengan rendah hati penulis
mengharapkan masukan, untuk memperkuat dan melengkapi kekurangan tersebut.
DAFTAR ISI
Halaman
1. Pengantar Modul .................................................................................... 1
2. Daftar Isi ................................................................................................. 2
BAB I
COMPUTER NETWORK (Jaringan Komputer)
A. Target Belajar
Target dari modul satu pada tahap basic adalah diharapkan peserta training dapat
memahami sebagai berikut:
1. Computer Network Fundamental (Jaringan Komputer Dasar)
2. Computer Network Media / Connection (Media Jaringan Komputer)
3. Hardware Programming Computer Network (Pemrograman Hardware Jaringan
Komputer)
B. Teori
B.1 Jaringan Komputer Dasar
Jaringan komputer merupakan kumpulan beberapa komputer atau gadget lainnya
yang dapat saling berkomunikasi satu sama lain serta dapat berbagi data antara
pengguna. Untuk membangun sebuah jaringan komputer memerlukan perangkat lain
pada komputer seperti Perangkat Jaringan Komputer, Media Transmisi.
Dalam jaringan komputer, ada yang disebut dengan terminologi jaringan yang
merupakan jenis jaringan komputer seperti Internet, Local Area Network, Wide Are
Network, Metropolitan Area Network, Virtual Private Network, Extranet dan Intranet,
Multiple dan Converged Network.
Internet
Internet merupakan terminologi jaringan komputer yang tergabung dengan berbagai
ISP (Internet Service Provider) yang biasanya menghubungkan koneksi sampai
berbagai negara.
Gambar 1. Internet
LAN (Local Area Network)
Local Area Network merupakan terminologi jaringan komputer yang bekerja di area
geografis terbatas, yang dapat digunakan untuk multiakses high-bandwith media,
dengan administrasi lokal dan koneksi secara langsung. Perangkat yang digunakan
terminologi ini biasanya router,switch,hub,repeater. Kategori lan biasannya digunakan
untuk Client Server Network dan Peer to Peer Network.
Gambar 2. MAN
VPN (Virtual Private Network)
VPN merupakan terminologi jaringan yang memanfaatkan terminologi jaringan
internet atau jaringan yang lainnya untuk keperluan pribadi, sehingga dapat mengakses
data pribadi dari mana saja. VPN biasanya diaplikasikan untuk memonitoring
memepermudah pekerjaan sesorang dalam memonitoring.
Gambar 3. VPN
Guided Media
Guided media merupakan media jaringan komputer dengn media yang dapat dilihat
secara kasat mata seperti Open Wire, Twisted Pair, Coaxial Cable, Optical Fiber.
Twisted Pair
STP (Shielded Twisted Pair), selain dililitkan, juga punya proteksi terhadap
induksi atau interferensi sinyal dari luar kabel berupa lapisan kertas alumunium
foil, sebelum jaket pembungkus luar.
Kabel UTP (Khususnya CAT5 / CAT5e)
Konektor yang bisa digunakan untuk UTP Cable CAT5 adalah RJ-45. Untuk
penggunaan koneksi komputer, dikenal 2 buah tipe penyambungan kabel UTP ini,
yaitu straight cable dan crossover cable. Fungsi masing-masing jenis koneksi ini
berbeda, straight cable digunakan untuk menghubungkan client ke hub/router,
sedangkan crossover cable digunakan untuk menghubungkan client ke client atau
dalam kasus tertentu digunakan untuk menghubungkan hub ke hub.
STRAIGHT CABLE
Menghubungkan ujung satu dengan ujung lain dengan satu warna, dalam artian
ujung nomor satu merupakan ujung nomor dua di ujung lain. Sebenarnya urutan
warna dari masing-masing kabel tidak menjadi masalah, namun ada standard
secara internasional yang digunakan untuk straight cable ini, yaitu:
CROSSOVER CABLE
Koneksi roll-over
Koneksi roll-over digunakan untuk
management peralatan jaringan
memakai komputer yang ada. Koneksi
ini biasa digunakan untuk koneksi
antara komputer dengan console port
pada router atau switch. Koneksi roll-
over seperti
diperlihatkan pada Gambar
Coaxial Cable / Kabel Coaxial
Ada dua jenis cable coaxial Digunakan untuk transmisi analog Impedansi 75
Ohm Contoh : kabel antena TV external, Digunakan untuk transmisi digital
Impedansi 50 Ohm Contoh : kabel jaringan computer.
Fiber Optic
Fiber optic adalah medium Fotonik, menghantarkan signal fotonik atau
cahaya
Ground wave
Ground wave merupakan perambatan gelombang radio mengikuti kontur / curve
permukaan bumi biasanya beroperasi sampai frequensi 2 MHz.
Gambar 7. LOS
B.3 Hardware Programming Computer Network
Membangun jaringan komputer, tidak semudah membalik telapak tangan.
Diperlukan pemahaman tentang komponen jaringan baik dari sisi perangkat lunak
(software) maupun dari sisi perangkat keras (hardware).Perangkat lunak (software)
jaringan komputer meliputi: Sistem operasi client, sistem operasi server (NOS=Network
Operating System), Program Aplikasi untuk server dan client, Internet Sharing, Sofware
antivirus dan lain-lain.Sedangkan perangkat keras (hardware) jaringan meliputi:
Komputer Server, Client/Workstation, Kartu Jaringan (NIC=Network Interface Card),
Kabel, Konector, HUB, Repeater, Bridge dan Router.
Kedua komponen diatas harus ada, karena salah satu tidak ada maka jaringan
komputer tidak dapat berfungsi dengan baik, atau bahkan tidak dapat berfungsi sama
sekali.
C. Project
1. Membuat Kabel Straight dan Cross
Kabel Straight Kabel Cross
BAB II
HTML (HYPERTEXT MARKUP LANGUAGE)
A. Target Belajar
1. Memahami tentang konsep WWW
2. Memahami tentang struktur dokumen HTML
3. Memahami tentang dasar-dasar HTML
4. Memahami tentang pengaturan teks, daftar item, gambar, tabel, form, meta.
5. dapat mengaplikasikan HTML untuk programming arduino
B. Teori
www(world Wide Web)
Internet merupakan terminologi jaringan komputer yang tergabung dengan berbagai
ISP (Internet Service Provider) yang biasanya menghubungkan koneksi sampai
berbagai negara. World Wide Web (WWW) merupakan bagian dari internet yang
paling cepat berkembang dan paling populer. WWW bekerja merdasarkan pada tiga
mekanisme berikut:
Protocol standard aturan yang di gunakan untuk berkomunikasi pada computer
networking, Hypertext Transfer Protocol (HTTP) adalah protocol untuk WWW.
Address WWW memiliki aturan penamaan alamat web yaitu URL(Uniform
Resource Locator) yang di gunakan sebagai standard alamat internet.
HTML digunakan untuk membuat document yang bisa di akses melalui web.
Pengenalan HTML
Hypertext Markup Language merupkan standard bahasa yang di gunakan untuk
menampilkan document web, yang bisa anda lakukan dengan HTML yaitu:
HTML
Setiap document HTML harus di awali dan di tutup dengan tag HTML
<HTML> </HTML>
HEAD
Bagian header dari document HTML di apit oleh tag <HEAD></HEAD> di dalam
bagian ini biasanya dimuat tag TITLE yang menampilkan judul dari halaman pada
titlenya browser.
Header juga memuat tag META yang biasanya di gunakan untuk menentukan informasi
tertentu mengenai document HTML, anda bisa menentukan author name, keywords,
dan lainyan pada tag META.
BODY
Document body di gunakan untuk menampilkan text, image link dan semua yang akan
di tampilkan pada web page.
Ada dua macam list yang bisa anda tambahkan ke document HTML:
1. Unordered List (Bullet) :
2. Ordered List (Numbering)
Contoh.
Tag Attribute Value Description
<UL> TYPE QUARE Bullet Kotak
DISC Bullet Titik
CIRCLE Bullet Lingkaran
<OL> TYPE Ii Upper Roman
Lower Roman
Aa percase Lowercase
<OL> START n Begin Number
Definition List
Definition List terdiri diapit oleh tag <DL> … </DL> dan <DT> tag menentukan
definition term serta <DD> tag menentukan definition itu sendiri.
Horizontal Rules(HR)
Horizontal Rule tag digunakan untuk menggambar garis horizontal dalam document
HTML.
Attribute Description
Position menetukan posisi dari HR, dengan value : canter |
right | left.
Width Untuk menentukan panjang HR default 100%
Size Untuk menentukan tebal dari HR dalam pixel
Noshad Efek bayangan.
Hexadecimal Color
#FF0000 Red
#00FF00 Green
#0000FF Blue
#000000 Black
#FFFFFF White
Alignment
Align attribute digunakan untuk menentukan perataan object dalam document HTML
baik berupa text, object, image, paragraph, division dan lain-lain.
Value Description
Left Rata kanan
Right Rata kiri
Center Rata Tengah
Justify Rata kanan kiri
Format text
Physical Formatting
Tag Description
<B> ... </B> Bold text
<I> ... </I> Italic text
<U> ... </U> Underline Text
<BIG> ... </BIG> Untuk ukuran yang lebih
besar dari normal
<SMALL> ... </SMALL> Untuk ukuran yang lebih
kecil dari norm
<STRIKE> ... </STRIKE> Untuk memberi garis di
Tengah text
<SUP> ... </SUP> Superscript text
Logical Formatting
Tag Description
<EM> ... </EM> Text miring / <I>
<STRONG> ... </STRONG> Text tebal / <B>
<DEL> ... </DEL> Mencoret text / <STRIKE>
<INS> ... </INS> Underline text / <U>
Preformatted text
Tag PRE di gunakan untuk menampilkan text sesuai dengan format aslinya.
Hyperlink
Link Address
Absolute Address - merupakan full internet address (URL) yang meliputi protocol,
network location dan path dan nama file.
Contoh: http ://www.yahoo.com/index.html
Relatif Address - URL yang tidak menyebutkan protocol dan network locationya
(hanya path dan nama filenya).
Anchor
Anchor tag <A> untuk menentukan hyperlink dalam document HTML. HREF property
digunakan untuk menentukan tujuan dari hyperlink tersebut.
<A HREF=”URL”> Hypertext </A>
<A HREF=”protocol:host.domain:port/path/filename”> Hypertext </A>
Table
Membuat table
Tag <TABLE> digunaka untuk membuat table dalam document HTML , bagian pokok
dari table adalah cell yang didefinisikan dengan menggunakan tag <TD>. Berikutnya
kalo anda ingin membuat beberapa baris cell dalam table gunakan tag <TR>.
Menambahkan Heading cell
Untuk menambahkan heading pada table tambahkan tag <TH> pada table yang sudah
di buat.
Pemformatan table
Untuk memformat perataan text di dalam table anda bisa gunakan attribute Align dan
Valign (vertical Alignment)
Attribute Value
Align Center | justify | left | right
Valign BASELINE | TOP | BOTTOM | MIDDLE
Merge cell
Tag <TD> memiliki atribut colspan untuk merge column dan rowspan untuk merge
baris.
Image
Format Image
Ada banyak format image, tapi ada tiga jenis format yang paling sering digunakan :
1. GIF (Graphical Interchange Format) (.GIF)
2. JPEG (Joint Photographic Expert Image) (.JPG)
3. PNG (Portable Network Graphics)
<IMG SRC=”URL”>
Attribute Value Description
Align Center | justify | left | >Top, bottom, middle digunakan
right | > Top, bottom, untuk menentukan posisi image
Baseline | top | bottom terhadap text
| middle > Left, right, center untuk menentukan
posisi image di document
FORM
Kegunaan Form
Berikut ini beberapa contoh kegunaan Form dalam web:
1. memperoleh data-data user baik nama, alamat dan data lainnya
2. memperoleh informasi pembelian secara online
3. memperoleh feedback dari user mengenai website anda.
Form Element
Tag <FORM> digunakan untuk membuat form dalam document HTML.
Attribute Description
ACCEPT Mendefinisikan MIME yang di izinkan oleh server yang
memuat script untuk memproses form.
Syntax: ACCEPT=”Internet Media Type”
METHOD Menentukan bagaimana data akan di kirim ke server. GET
– data akan di kirim dengan menggunakan query string
pada URL. POST – data akan di kirim ke server sebagai
block data ke script.
Syntax: METHOD=”POST|GET”
ACTION Menentukan lokasi dari script yang akan memproses data
dari form
Syntax: ACTION=”URL”
C. Project
1. Penggunaan syntak HTML, bagian-bagian HTML, penggunaan komentar dan tag
<BR> untuk ganti baris.
<HTML>
<HEAD>
<TITLE>Latihan HTML</TITLE>
</HEAD>
<!-- Ini merupakan suatu komentar -->
<BODY>
Selamat Belajar HTML<BR>
Semoga Sukses !
</BODY>
</HTML>
2. Menggunakan tag <P> untuk membuat paragraph; tag judul <H1> s/d <H6> untuk
pembesaran huruf.
<HTML>
<HEAD>
<TITLE>Contoh Pengaturan Judul</TITLE>
</HEAD>
<BODY>
<H1 ALIGN = “CENTER”> Pesona Tanaman
Hias </H1><P>
Keindahan tanaman hias<BR>
membawa suatu pesona tersendiri<BR>
Warna-warni bunga
</BODY>
</HTML>
3. Membuat garis horizontal <HR>
<HTML>
<HEAD>
<TITLE>Atribut NOSHADE pada Tag HR</TITLE>
</HEAD>
<BODY>
<H1>KEBUN PESONA</H1>
<HR SIZE = "10" NOSHADE>
Jl. Malang Km 14<BR>
Malang <BR>
Indonesia<BR>
</BODY>
</HTML>
4. Menggunakan tag <DIV> untuk mengelompokkan sejumlah baris teks yang
memiliki karakteristik yang sama.
<HTML>
<HEAD>
<TITLE>Tag DIV</TITLE>
</HEAD>
<BODY>
<DIV ALIGN = "RIGHT">
<H1><U>SMART LAB</U></H1>
<H2>Jl. Raya PANCORAN</H2>
<H2>JAkarta</H2>
</DIV>
<HR>
</BODY>
</HTML>
5. Penggunaan <PRE> untuk menampilkan teks apa adanya.
<HTML>
<HEAD>
<TITLE>Praformat </TITLE>
</HEAD>
<BODY>
<H2>Daftar Harga Keladi:</H2>
<PRE>
Red Flash.........35.000
Red Fire..........60.000
Fannie Munson.....60.000
</PRE>
Harga sewaktu-waktu bisa berubah.
</BODY>
</HTML>
6. Pengaturan Font : Face (untuk jenis Font), Size (untuk ukuran Font), Color (untuk
warna)
<HTML>
<HEAD>
<TITLE>Jenis Font</TITLE>
</HEAD>
<BODY>
Normal: 012345ABCD<BR>
<FONT COLOR="blue" FACE = "Arial">Arial:
012345ABCD</FONT>
<BR>
<FONT COLOR="green" FACE = "Courier" SIZE="5">
Courier: 012345ABCD</FONT>
<BR>
</BODY>
</HTML>
7. Pengaturan warna background : BGCOLOR
<HTML>
<HEAD>
<TITLE>Warna - Bagian 2</TITLE>
</HEAD>
<BODY BGCOLOR = "black" TEXT = "gray">
Normal<BR>
<FONT COLOR = "blue">Warna Biru</FONT><BR>
<FONT COLOR = "green">Warna Hijau</FONT><BR>
<FONT COLOR = "red">Warna Merah</FONT><BR>
<FONT COLOR = "yellow">Warna kuning</FONT><BR>
</BODY>
</HTML>
8. MENAMPILKAN DAFTAR ITEM (LIST)
Penggunaan tag <UL> untuk daftar list yang tidak diberi nomor; tag <LI> untuk
daftar item yang diberi bulatan.
<HTML>
<HEAD>
<TITLE>Contoh Pemakaian Tag UL dan LI</TITLE>
</HEAD>
<BODY>
<H2>Daftar Sekolah Model :</H2>
<UL>
<LI>SMA N 54 Jakarta <BR>
<LI>SMA N 1 Jakarta <BR>
</HEAD>
<BODY>
<TABLE BORDER = "1">
<CAPTION>Daftar Wilayah dan Kota</CAPTION>
<TR>
<TD ROWSPAN = "3">Jawa Tengah</TD>
<TD>Semarang</TD>
</TR>
<TR><TD>Kudus</TD></TR>
<TR><TD>Solo</TD></TR>
</TABLE>
</BODY>
</HTML>
15. Atribut COLSPAN bisa ditempatkan pada tag <TD> atau <TH>
<HTML>
<HEAD>
<TITLE>Penggunaan COLSPAN</TITLE>
</HEAD>
<BODY>
<TABLE BORDER = "1">
<CAPTION>Daftar Target</CAPTION>
<TR>
<TH COLSPAN = "2">Area: Jawa Tengah</TH>
</TR>
<TR><TD>Semarang</TD><TD>15.000</TD></TR>
<TR><TD>Kudus</TD><TD>11.000</TD></TR>
</TABLE>
</BODY>
</HTML>
16. Pengaturan jarak dalam tabel :
ELLSPACING mengatur jarak bagian sel thd tepi dalam bingkai tabel.
CELLPADDING mengatur jarak teks terhadap tepi kiri.
<HTML>
<HEAD>
<TITLE>Tombol dengan Tabel</TITLE>
</HEAD>
<BODY>
<TABLE BORDER = "5" CELLSPACING = "5"
CELLPADDING = "5" BGCOLOR = "green">
<TR><TD>
<FONT COLOR = "red"><B>e-mail</B></FONT>
</TD></TR>
</TABLE>
</BODY>
</HTML>
17. PEMBUATAN LINK
Penggunaan tag <A HREF>
<HTML>
<HEAD>
<TITLE>Halaman Utama</TITLE>
</HEAD>
<BODY>
<H1>Halaman Utama</H1>
Silakan klik pada link-link berikut:<BR>
<A HREF = "halx.htm">Halaman X</A><BR>
<A HREF = "http://www.google.com">Homepage
saya</A><BR>
<A HREF = "computer.jpg"><IMG SRC =
“computer.jpg> Membuat
link dengan gambar </A><BR>
</BODY>
</HTML>
Buatlah file halx.htm, sehingga ketika diklik pada Halaman X akan menuju file
yang dimaksud.
18. Menggunakan bookmark pada suatu halaman web yang panjang.
<HTML>
<HEAD>
<TITLE>Bookmark</TITLE>
</HEAD>
<BODY>
<CENTER>
<H1>BUKU</H1>
<B>Daftar Isi:</B><BR>
<A HREF = "#bab1">Bab 1</A><BR>
<A HREF = "#bab2">Bab 2</A><BR>
<HR>
<A NAME = "#bab1">
<H2>BAB 1</H2>
...<BR>
...<BR>
<HR>
<A NAME = "#bab2">
<H2>BAB 2</H2>
...<BR>
...<BR>
<HR>
</CENTER>
</BODY>
</HTML>
19. PENGGUNAAN FORM
Input data dengan input
<HTML>
<HEAD>
<TITLE>Contoh Penggunaan Formulir</TITLE>
</HEAD>
<BODY>
<FORM ACTION = "info.htm" METHOD = "POST">
Nama :
<INPUT TYPE = "TEXT" NAME = "nama" SIZE = "20"
MAXLENGTH = "20">
<BR>
Hobby :
<INPUT TYPE = "TEXT" NAME = "hobby" SIZE = "25"
MAXLENGTH = "40">
<BR>
<INPUT TYPE = "SUBMIT" VALUE = "Kirim">
<INPUT TYPE = "RESET" VALUE = "Kosongkan">
</FORM>
</BODY>
</HTML>
File info.htm yang dituju oleh web diatas.
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<BODY>
Info
</BODY>
</HTML>
20. Penggunaan tipe checkbox
<HTML>
<HEAD>
<TITLE>Contoh Penggunaan Formulir</TITLE>
</HEAD>
<BODY>
<FORM>
Buah yang Anda sukai:<BR>
<INPUT TYPE = "CHECKBOX" NAME = "anggur"
CHECKED>Anggur<BR>
<INPUT TYPE = "CHECKBOX" NAME = "jeruk">Jeruk<BR>
<INPUT TYPE = "CHECKBOX" NAME = "melon">Melon<BR>
</FORM>
</BODY>
</HTML>
21. Penggunaan tombol radio dan komentar
<HTML>
<HEAD>
<TITLE>Contoh Penggunaan Formulir</TITLE>
</HEAD>
<BODY>
<FORM>
Jenis Kelamin:<BR>
<INPUT TYPE = "RADIO"
NAME = "sex" CHECKED>Pria<BR>
<INPUT TYPE = "RADIO"
NAME = "sex">Wanita<BR>
<BR>
Komentar Anda:<BR>
<TEXTAREA NAME = "komentar"
ROWS = "5" COLS = "40" WRAP>
</TEXTAREA>
<BR>
</FORM>
</BODY>
</HTML>
22. Pemilihan dengan select
<HTML>
<HEAD>
<TITLE>Contoh SELECT - Model Drop Down</TITLE>
</HEAD>
<BODY>
<FORM>
Olahraga yang paling Anda sukai:<BR>
<SELECT NAME = "olahraga">
<OPTION VALUE = "Sepakbola" SELECTED>Sepak Bola
<OPTION VALUE = "Bulutangkis">Bulutangkis
<OPTION VALUE = "Tenismeja">Tenis Meja
<OPTION VALUE = "Basket">Basket
<OPTION VALUE = "Lain-lain">Lain-lain
</SELECT>
<BR>
</FORM>
</BODY>
</HTML>
Sekarang, ubahlah baris select diatas dengan : <SELECT NAME=”olahraga”
SIZE=”3”>, perhatikan perbedaannya dengan yang diatas.
23. PENGGUNAAN TAG META
Ditempatkan dalam bagian header, dan biasanya diletakkan setelah </TITLE>.
Digunakan untuk menyimpan sejumlah informasi.
Contoh :
1. Jika anda membuat dokumen HTML melalui FrontPage akan muncul tag meta
sebagai berikut :
<META NAME=”Generator” CONTENT=”Microsoft FrontPage”>
2. Agar halaman web yang dibuat disertakan ketika mesin pencari web (mbah
Google) melakukan pencarian, gunakan atribut keywords, semakin banyak
keywords yang dimasukkan, akan semakin besar halaman web disebutkan dalam
hasil pencarian. <META NAME=”keywords” CONTENTS=”teknologi, komputer,
telekomunikasi”>
3. Mengarahkan ke halaman lain
<HTML>
<HEAD>
<TITLE>Pengalihan Halaman</TITLE>
<META HTTP-EQUIV = "REFRESH"
CONTENT = "5; URL = baru.htm">
</HEAD>
<BODY>
Halaman web kami sudah dipindah.
Anda akan dipindahkan ke halaman
tersebut dalam waktu 5 detik.
</BODY>
</HTML>
<!DOCTYPE html>
<html>
<head>
<title>Demo Cek Lokasi Geolocation HTML5</title>
</head>
<body>
<center>
<p>Cek lokasi anda! >> <button onclick="getLocation()">Cek</
button></p>
<p id="tampilkan"></p>
</center>
<script>
var view = document.getElementById("tampilkan");
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(showPositio
n, showError);
} else {
view.innerHTML = "Yah browsernya ngga support Geoloc
ation bro!";
}
}
function showPosition(position) {
view.innerHTML = "Latitude: " + position.coords.latitude
+
"<br>Longitude: " + position.coords.longitude;
}
function showError(error) {
switch(error.code) {
case error.PERMISSION_DENIED:
view.innerHTML = "Yah, mau deteksi lokasi tapi g
a boleh :("
break;
case error.POSITION_UNAVAILABLE:
view.innerHTML = "Yah, Info lokasimu nggak bisa
ditemukan nih"
break;
case error.TIMEOUT:
view.innerHTML = "Requestnya timeout bro"
break;
case error.UNKNOWN_ERROR:
view.innerHTML = "An unknown error occurred."
break;
}
}
</script>
</body>
</html>
<body>
<center>
<p id="tampilkan"></p>
<p>Cek lokasi anda! >> <button
onclick="getLocation()">Cek</button></p>
<div id="mapcanvas"></div>
</center>
<script src="http://maps.google.com/maps/api/js"></script>
<script>
var view = document.getElementById("tampilkan");
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(showPosition,
showError);
} else {
view.innerHTML = "Yah browsernya ngga support
Geolocation bro!";
}
}
function showPosition(position) {
lat = position.coords.latitude;
lon = position.coords.longitude;
latlon = new google.maps.LatLng(lat, lon)
mapcanvas = document.getElementById('mapcanvas')
mapcanvas.style.height = '500px';
mapcanvas.style.width = '500px';
var myOptions = {
center:latlon,
zoom:14,
mapTypeId:google.maps.MapTypeId.ROADMAP
}
function showError(error) {
switch(error.code) {
case error.PERMISSION_DENIED:
view.innerHTML = "Yah, mau deteksi lokasi tapi ga
boleh :("
break;
case error.POSITION_UNAVAILABLE:
view.innerHTML = "Yah, Info lokasimu nggak bisa
ditemukan nih"
break;
case error.TIMEOUT:
view.innerHTML = "Requestnya timeout bro"
break;
case error.UNKNOWN_ERROR:
view.innerHTML = "An unknown error occurred."
break;
}
}
</script>
</body>
</html>
D. Chalengge
1. Buatlah tampilan yang menarik untuk coding Mendeteksi Lokasi Dengan HTML
tampilan Google Map dengan menggunakan HTML
2. Simpanlah hasil yang anda sudah desain pada server lalu akses desain sistem anda
menggunakan hp atau komputer yang client.
BAB III
ARDUINO WEB SERVER
A. Target Belajar
1. Mampu memahami cara kerja ethernet shield dan wifi shield
2. mampu membuat server menggunakan Arduino
3. mampu membuat mengaplikasikan ethernet shield dan Wifi Shield
4. mampu membuat dan mengaplikasikan HTML dan arduino.
5. Mampu membuat sistem monitoring online berbasis web
B. Teori
Ethernet Shield
Ethernet Shield menambah kemampuan arduino board agar terhubung ke
jaringan komputer. Ethernet shield berbasiskan cip ethernet Wiznet W5100. Ethernet
library digunakan dalam menulis program agar arduino board dapat terhubung ke
jaringan dengan menggunakan arduino ethernet shield.
Pada ethernet shield terdapat sebuah slot micro-SD, yang dapat digunakan
untuk menyimpan file yang dapat diakses melalui jaringan. Onboard micro-SD card
reader diakses dengan menggunakan SD library.
Arduino board berkominikasi dengan W5100 dan SD card mengunakan bus
SPI (Serial Peripheral Interface). Komunikasi ini diatur oleh library SPI.h dan
Ethernet.h. Bus SPI menggunakan pin digital 11, 12 dan 13 pada Arduino Uno. Pin
digital 10 digunakan untuk memilih W5100 dan pin digital 4 digunakan untuk memilih
SD card.
Pin-pin yang sudah disebutkan sebelumnya tidak dapat digunakan untuk
input/output umum ketika kita menggunakan ethernet shield. Karena W5100 dan SD
card berbagi bus SPI, hanya salah satu yang dapat aktif pada satu waktu. Jika kita
menggunakan kedua perangkat dalam program kita, hal ini akan diatasi oleh library
yang sesuai. Jika kita tidak menggunakan salah satu perangkat dalam program kita,
kiranya kita perlu secara eksplisit mendeselect-nya. Untuk melakukan hal ini pada SD
card, set pin 4 sebagai output dan menuliskan logika tinggi padanya, sedangkan untuk
W5100 yang digunakan adalah pin 10. DFRduino Ethernet shield adalah sebuah clone
dari arduino Ethernet shield yang dibuat oleh DFRobot.
C. PROJECT
Project yang akan kita buat adalah
1. Pengukur Suhu berbasis WEB Menggunakan Ethernet Shield
2. Pengukur Jarak Berbasis WEB dengan 3 Sensor Menggunakan Ethernet Shield
3. Mengontrol Relay dengan Wireless ESP8266
void setup()
{
// start the Ethernet connection and the server:
Ethernet.begin(mac, ip);
server.begin();
}
void loop()
{
client.print(tempC);
client.print(" C");
client.print("</center>");
break;
}
if (c == '\n') {
// you're starting a new line
currentLineIsBlank = true;
}
else if (c != '\r') {
// you've gotten a character on the current line
currentLineIsBlank = false;
}
}
}
// give the web browser time to receive the data
delay(1);
// close the connection:
client.stop();
}
}
#define TRIGGER_PIN 2
#define ECHO_PIN 3
#define TRIGGER_PIN1 4
#define ECHO_PIN1 5
#define TRIGGER_PIN2 6
#define ECHO_PIN2 7
#define MAX_DISTANCE 10
byte mac[] = {
0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED};
IPAddress ip(192,168,1,20);
IPAddress gateway(192,168,1,1);
IPAddress subnet(255, 255, 255, 0);
EthernetServer server(80);
NewPing sonar(TRIGGER_PIN,ECHO_PIN,MAX_DISTANCE);
NewPing sonar2(TRIGGER_PIN1,ECHO_PIN1,MAX_DISTANCE);
NewPing sonar3(TRIGGER_PIN2,ECHO_PIN2,MAX_DISTANCE);
void setup(){
Serial.begin(9600);
while(!Serial){
;
}
Ethernet.begin(mac, ip);
server.begin();
Serial.print("server connect");
Serial.println(Ethernet.localIP());
}
void loop() {
EthernetClient client = server.available();
if (client){
Serial.println("new client");
boolean currentLineIsBlank=true;
while (client.connected()){
if (client.available()){
char c=client.read();
Serial.write(c);
if (c=='\n' && currentLineIsBlank){
client.println("HTTP/1.1 200 OK");
client.println("Content-Type:text/html");
client.println("Connection:Close");
client.println();
client.println("<!DOCTYPE HTML>");
client.println("<html>");
client.println("<head>");
client.println("<title>PENGUKUR JARAK BERBASIS WEB DENGAN 3 SENSOR </title>");
client.print("<font size=12>");
client.print("<center>SMART LAB </center>");
client.print("</font");
client.print("<font size=12>");
client.print("<center>WORKSHOP ARDUINO</center>");
client.print("</font");
client.println("<br />");
client.println("</head>");
// cek sensor
int cm=sonar.ping_cm();
int cm2=sonar2.ping_cm();
int cm3=sonar3.ping_cm();
client.print("<font size=7>");
client.print("SENSOR 1 JARAKNYA = ");
client.println(cm);
client.println("cm");
client.println("</center>");
client.print("</font");
client.println("<br />");
client.println("<center>");
client.print("<font size=7>");
client.print("SENSOR 2 JARAKNYA = ");
client.println(cm2);
client.println("cm");
client.println("</center>");
client.print("</font");
client.println("<br />");
client.println("<center>");
client.print("<font size=7>");
client.print("SENSOR 3 JARAKNYA = ");
client.println(cm3);
client.println("cm");
client.println("<br />");
client.print("</font");
client.println("</center>");
client.println("</html>");
break;
}
if (c == '\n'){
currentLineIsBlank = true;
}
else if(c !='\r'){
currentLineIsBlank=false;
}
}
}
delay(1);
client.stop();
Serial.println("Client disconnected");
}
}
Pada Project ini kita mengontrol Relay dengan Arduino melalui Webserver, atau
bisa juga disebut Menyalakan lampu melalui Internet, alat dan bahan yang
dibutuhkan adalah sebagai beriku
1x Arduino Compatible
1x ESP8266 Wifi Module
1x Relay Modul 4 Channel
Kabel jumper secukupnya
Breadboard (Projectboard)
Koneksi Internet (WiFi)
Aplikasi Android yang bernama ESPduino,
Langkah-Langkah
1. Rangkailah arduino dan wifi esp8266 seperti pada gambar 15
}
String kirimPerintah(String perintah, const int timeout, boolean debug)
{
String response = "";
esp8266.print(perintah);
long int time = millis();
while( (time+timeout) > millis()) {
while(esp8266.available()) {
char c = esp8266.read();
response+=c;
}
}
if(debug) {
Serial.print(response);
}
return response;
}
Sketch Pada baris berikut ini, ubah dan sesuaikan dengan SSID dan Password
Wifi anda
kirimPerintah("AT+CWJAP=\"Andy182 Network\",\"waipigratis\"\r\n",3000,DEBUG);
10. Setelah berhasil upload sketch, buka serial monitor untuk Menampilkan IP
Adress
D. Chalengge
Buatlah project akhir anda dengan sistem monitoring berbasis web.
PUSTAKA
Evan, W.Brian. “ Arduino Programming Notebook”. 2007.
Ardiansyah.Deden. “Modul Praktikum Sistem Interface dan Mikrocontroller 1 dan 2”. 2014.
http:\\ www.arduino.cc
http:\\ www.arduino.cc/en/Booklet/HomePage
http:\\ www.geraicerdas.com
http:\\ www.garagelab.com
http:\\ www.boardduino.wed.id