Menurut Wikipedia, Internet of Things atau dikenal juga dengan

advertisement
BAB 2
LANDASAN TEORI
2.1
IOT (Internet of Things)
Menurut Wikipedia, Internet of Things atau dikenal juga dengan singkatan IoT,
merupakan sebuah konsep yang bertujuan untuk memperluas manfaat dari
konektivitas internet yang tersambung secara terus-menerus. Adapun kemampuan
seperti berbagi data, remote control, dan sebagainya, termasuk juga pada benda di
dunia nyata. Contohnya bahan pangan, elektronik, koleksi, peralatan apa saja,
termasuk benda hidup yang semuanya tersambung ke jaringan lokal dan global
melalui sensor yang tertanam dan selalu aktif.
Makna serupa yang lain, Internet of Things (IoT) adalah sebuah
konsep/skenario dimana suatu objek yang memiliki kemampuan untuk
mentransfer data melalui jaringan tanpa memerlukan interaksi manusia ke
manusia atau manusia ke komputer. "A Things" pada Internet of Things dapat
didefinisikan sebagai subjek misalkan orang dengan monitor implant jantung,
hewan peternakan dengan transponder biochip, sebuah mobil yang telah
dilengkapi built-in sensor untuk memperingatkan pengemudi ketika tekanan ban
rendah. Sejauh ini, IoT paling erat hubungannya dengan komunikasi machine-tomachine (M2M) di bidang manufaktur dan listrik, perminyakan, dan gas. Produk
dibangun dengan kemampuan komunikasi M2M yang sering disebut dengan
sistem cerdas atau "smart". (contoh: smart label, smart meter, smart grid sensor).
Meskipun konsep ini kurang populer hingga tahun 1999, namun IoT telah
Universitas Sumatera Utara
7
dikembangkan selama beberapa dekade. Alat Internet pertama, misalnya, adalah
mesin Coke di Carnegie Melon University di awal 1980-an. Para programer dapat
terhubung ke mesin melalui Internet, memeriksa status mesin dan menentukan
apakah ada atau tidak minuman dingin yang menunggu mereka, tanpa harus pergi
ke mesin tersebut.
Istilah IoT (Internet of Things) mulai dikenal tahun 1999 yang saat itu
disebutkan pertama kalinya dalam sebuah presentasi oleh Kevin Ashton,
cofounder and executive director of the Auto-ID Center di MIT. Dengan semakin
berkembangnya infrastruktur internet, maka kita menuju babak berikutnya, di
mana bukan hanya smartphone atau komputer saja yang dapat terkoneksi dengan
internet. Namun berbagai macam benda nyata akan terkoneksi dengan internet.
Sebagai contohnya dapat berupa : mesin produksi, mobil, peralatan elektronik,
peralatan yang dapat dikenakan manusia (wearables), dan termasuk benda nyata
apa saja yang semuanya tersambung ke jaringan lokal dan global menggunakan
sensor dan atau aktuator yang tertanam.
2.2
Pengertian Sistem
Sistem adalah suatu kesatuan yang terdiri dari dua atau lebih komponen atau
subsistem yang saling berinteraksi untuk mencapai suatu tujuan (Jogiyanto, 2000).
Sistem adalah sekumpulan elemen yang saling terkait atau terpadu yang
dimaksudkan untuk mencapai suatu tujuan (Abdul Kadir, 2003)
Universitas Sumatera Utara
8
Dari uraian diatas mengenai definisi sistem, penulis dapat menyimpulkan
pengertian dari sistem yang berkaitan dengan judul, yaitu “Sistem adalah suatu
cara yang dibuat sedemikian rupa yang terdiri dari dua elemen atau lebih yang
saling berhubungan mengatasi masalah atau kendala-kendala yang terjadi dengan
tujuan yang diinginkan.
2.3
Pengertian Internet
Internet adalah sekumpulan jaringan berbeda yang saling terhubung bersama
sebagai suatu kesatuan dengan menggunakan berbagai macam protokol, salah
satunya adalah protokol TCP/IP (Transmission Control Protocol/Internet
Protocol) (Shalahuddin, Mdan Rossa A.S, 2010). TCP/IP adalah protokol yang
paling banyak digunakan di internet. Protokol TCP/IP merupakan cara standard
untuk memaketkan dan mengalamatkan data komputer (sinyal eletronik) sehingga
data tersebut dapat dikirim ke komputer terdekat atau keliling dunia dan tiba
dalam waktu cepat tanpa rusak atau hilang.
Asal - usul internet berasal dari jaringan komputer yang dibentuk pada
tahun 1970-an. Jaringan komputer tersebut disebut dengan Arpanet, yaitu jaringan
komputer yang dibentuk olah departemen pertahanan Amerika Serikat.
Selanjutnya, jaringan komputer tersebut diperbaharui dan dikembangakan, dan
sekarang penerusnya menjadi tulang punggung global untuk sumber daya
informasi yang disebut dengan internet.
Universitas Sumatera Utara
9
Daya guna internet itu terletak pada informasi itu sendiri, bukan pada
jaringan komputer. Informasi itu ada karena beberapa orang atau beberapa
kelompok memberikan waktu, usaha, dan karya mereka. Mereka mempunyai ide,
menyusunnya, menciptakan sesuatu yang berguna dan membuatnya tersedia buat
pemakai internet di seluruh dunia.
2.3.1
Network
Network adalah jaringan dari sistem komunikasi data yang melibatkan sebuah atau
lebih sistem komputer yang dihubungkan dengan jalur transmisi alat komunikasi
membentuk satu sistem. Dengan network, komputer yang satu dapat
menggunakan data di komputer lain, dapat mencetak laporan di printer komputer
lain, dapat memberi berita ke komputer lain walaupun berlainan area. Network
merupakan cara yang sangat berguna untuk mengintegrasikan sistem informasi
dan menyalurkan arus informasi dari satu area ke area lainnya.
2.3.1.1 Web Server
Web server adalah suatu perangkat lunak yang dijalankan pada komputer server
dan berfungsi agar dokumen internet server yang mampu untuk melayani koneksi
perpindahan data dalam protokol http web server disamping e-mail. Middleware
adalah perangkat lunak yang bekerja sama dengan web server dan berfungsi
menterjemahkan kode - kode tertentu, menjalankan kode - kode tersebut dan
memungkinkan berinteraksi dengan basis data. Dikarenakan web server dirancang
untuk menampilkan data, dimulai dari teks, hypertext, gambar yang merupakan
Universitas Sumatera Utara
10
keunggulan dari web sehingga web tidak hanya dapat diterima di universitas tetapi
di seluruh perusahaan komersial yang dapat menampilkan datanya dalam internet.
Macam-macam web server antara lain Apache (Open Source), Xitami , IIS, PWS.
Sedangkan, Web Browser adalah salah satu perangkat lunak disisi client yang
digunakan untuk mengakses informasi web.
Website (situs web) merupakan alamat (URL) yang berfungsi sebagai
tempat penyimpanan data dan informasi dengan berdasarkan topik tertentu. URL
adalah suatu sarana yang digunakan untuk menentukan lokasi informasi pada
suatu web server. Situs atau web dapat dikategorikan menjadi 2 yaitu:
1. Web Statis, yaitu web yang berisi atau menampilkan informasi-informasi
yang sifatnya statis (tetap),
2. Web Dinamis, yaitu web yang menampilkan informasi serta dapat
berinteraksi dengan user yang sifatnya dinamis.
2.3.1.2 World Wide Web (WWW)
World Wide Web (WWW), lebih dikenal dengan web, merupakan salah satu
layanan yang didapat oleh pemakai komputer yang terhubung ke internet. Web
pada awalnya adalah ruang informasi dalam internet, dengan menggunakan
teknologi hypertext, pemakai dituntun untuk menemukan informasi dengan
mengikuti link yang disediakan dalam dokumen web ytang ditampilkan dalam
browser web. Agar file yang berisi hypertext ini bisa dikirimkan, diperlukan
Universitas Sumatera Utara
11
protokol pengiriman data yang spesifik yang disebut Hypertext Transfer Protocol
(HTTP). Untuk menemukan setiap hubungan Hypertext digunakan Uniform
Resource Locator (URL). Karena itu, halaman WWW juga disebut dokumen URL.
(Konsep dan Aplikasi Pemrograman Client Server dan Sistem Terdistribusi, Budi
Sutedjo Dharma Oetomo, 2000).
2.3.1.3 Sekilas tentang HTTP
HTTP (Hypertext Transfer Protocol) adalah protokol yang banyak digunakan di
internet untuk pertukaran berkas atau data lainnya didalam World Wide Web
dengan menggunakan browser. Sebuah browser disebut client HTTP, sedangkan
penyedia halaman web yang diakses oleh browser disebut server HTTP (web
server). Sumber yang akan diakses memiliki alamat yang disebut Universal
Resources Locator (URL). Resources (sumber daya) yang dimaksud disini dapat
berupa berkas, hasil output dari sebuah program (seperti PHP), hasil query dari
server basis data dan lain-lain. HTTP memiliki dua versi, HTTP yang pertama kali
diciptakan adalah HTTP 1.0, kemudian dikembangkan lagi menjadi HTTP 1.1
yang banyak digunakan sekarang.
(Konsep dan Aplikasi Pemrograman Client server dan Sistem Terdistribusi, Budi
Sutedjo Dharma Oetomo, 2000).
2.4
Perangkat Lunak Pendukung
Berdasarkan penelitian, dapat disimpulkan bahwa perangkat lunak pendukung
yang dibutuhkan pada proses pengembangan sistem yang akan dilakukan terdiri
Universitas Sumatera Utara
12
dari tiga jenis aplikasi. Aplikasi yang dibutuhkan yaitu NodeJS yang akan menjadi
gateway server, Arduino IDE yang akan menjadi
lingkungan pemrograman
ESP8266 dan Visual Studio Code sebagai text editor dalam pembuatan gateway.
2.4.1
NodeJS
NodeJS merupakan platform yang dapat menjalankan bahasa pemrograman
Javascript dan dibangun menggunakan Chrome’s V8 Javascript Engine. NodeJS
dapat berjalan di semua OS. NodeJS menggunakan filosofi event-driven, nonblocking IO model yang membuat NodeJS ringan dan efisien.
2.4.2
Arduino IDE
Arduino IDE merupakan perangkat lunak yang digunakan untuk memprogram
berbagai macam Mikrokontroller seperti Arduino dan ESP8266. Arduino IDE
dapat berjalan disemua OS. Arduino IDE menggunakan bahasa pemrograman
C/C++ dan menggunakan kompiler (avr-g++).
2.4.3
Visual Studio Code
Visual Studio Code merupakan teks editor keluaran Microsoft. Visual studio code
dapat berjalan di semua OS dan dibuat menggunakan javascript yang di bangun
menjadi aplikasi desktop menggunakan Electron.
Universitas Sumatera Utara
13
2.5
Perangkat Keras Pendukung
Berdasarkan penelitian, dapat disimpulkan bahwa perangkat keras pendukung
yang dibutuhkan pada proses pengembangan sistem yang akan dilakukan terdiri
dari tiga jenis perangkat. Perangkat yang dibutuhkan yaitu laptop yang pada
pembuatan sistem ini bukan hanya sebagai tempat pembuatan sistem, tetapi juga
digunakan sebagai Gateway yang didalamnya terdapat Web Server dan Web
Socket. Yang kedua adalah ESP8266 sebagai satuan mikrokontroller yang
dirangkai sedemikian rupa menjadi rangkaian yang terdapat led. Yang ketiga
adalah Access Point sebagai penghubung antara client, gateway server dan node.
2.5.1
Laptop
Laptop adalah komputer bergerak yang berukuran relatif kecil dan ringan,
beratnya berkisar dari 1–6 kg, tergantung pada ukuran, bahan, dan spesifikasi
laptop tersebut. Sumber daya laptop berasal dari baterai atau adaptor A/C yang
dapat digunakan untuk mengisi ulang baterai dan menyalakan laptop itu sendiri.
Baterai laptop pada umumnya dapat bertahan sekitar 1 hingga 6 jam sebelum
akhirnya habis, tergantung dari cara pemakaian, spesifikasi, dan ukuran baterai.
2.5.2
ESP8266
ESP8266 merupakan modul wifi yang mempunyai kapabilitas full stack TCP/IP
dan MCU (Microcontroller Unit). ESP8266 dapat berfungsi menjadi banyak hal
seperti Access Point, webclient, webserver dll.
Universitas Sumatera Utara
14
2.5.3
Acces Point
Access Point adalah sebuah perangkat jaringan yang berisi sebuah transceiver dan
antena untuk transmisi dan menerima sinyal ke dan dari clients remote. Dengan
access points (AP) clients wireless bisa dengan cepat dan mudah untuk terhubung
kepada jaringan LAN kabel secara wireless.
2.5.4
Resistor
Fungsi Resistor sebagai peredam tegangan DC atau AC, Resistor berbahan dasar
karbon film atau metal film, dengan besaran satuan resistans ohm berkisaran 0,1
ohm dan Mohm (1 Mega = 1. 10 pangkat 6 ohm).
2.5.5
Kapasitor
Komponen elektronika yang mempunyai kemampuan menyimpan electronelektron selama waktu yang tidak tertentu. Kapasitor berbeda dengan akumulator
dalam menyimpan muatan listrik terutama tidak terjadi perubahan kimia pada
bahan kapasitor, besarnya kapasitansi dari sebuah kapasitor dinyatakan dalam
farad.
Universitas Sumatera Utara
15
2.5.6
LED (Light Emitting Diode)
Light Emitting Diode atau sering disingkat dengan LED adalah komponen
elektronika yang dapat memancarkan cahaya monokromatik ketika diberikan
tegangan maju. LED merupakan keluarga Dioda yang terbuat dari bahan
semikonduktor. Warna-warna Cahaya yang dipancarkan oleh LED tergantung
pada jenis bahan semikonduktor yang dipergunakannya.
2.6
Bahasa Pemrograman Pendukung
Berdasarkan penelitian, dapat disimpulkan bahwa bahasa pemrograman
pendukung yang dibutuhkan pada proses pengembangan sistem yang akan
dilakukan terdiri dari dua bahasa. Bahasa pemrograman yang dibutuhkan yaitu
Javascript yang dijalankan pada gateway dan C++ sebagai program ESP8266.
2.6.1
Javascript
Bahasa pemrograman tingkat tinggi dan dinamis. JavaScript populer di internet
dan dapat bekerja di sebagian besar penjelajah web populer seperti Internet
Explorer (IE), Mozilla Firefox, Netscape dan Opera. Kode JavaScript dapat
disisipkan dalam halaman web menggunakan tag SCRIPT.
Universitas Sumatera Utara
16
2.6.2
C++
C++ adalah bahasa pemrograman komputer yang dibuat oleh Bjarne Stroustrup,
yang merupakan perkembangan dari bahasa C.
2.7 Flowchart
Flowchart adalah bagan-bagan yang mempunyai arus untuk menggambarkan
langkah-langkah dalam menyelesaikan suatu masalah tertentu dan flowchart
merupakan salah satu cara penyajian dalam algoritma. Program flowchart
menggambarkan urutan logika dari suatu algoritma. Tahapan pembuatan program
yaitu mendefinisikan masalah dan menganalisanya. Mencakup: tujuan pembuatan
program, parameter yang digunakan, fasilitas yang disediakan, algoritma yang
diterapkan dan bahasa program yang digunakan.
2.7.1
Simbol pada Flowchart
Simbol pada
flowchart merupakan gambar atau bagan yang memperlihatkan
urutan dan hubungan antar proses beserta instruksinya. Gambaran ini dinyatakan
dengan simbol. Dengan demikian setiap simbol menggambarkan proses tertentu.
Sedangkan hubungan antar proses digambarkan dengan garis penghubung.
Flowchart disusun dengan simbol-simbol. Simbol ini dipakai sebagai alat bantu
menggambarkan proses di dalam program. Simbol-simbol yang dipakai antara
lain:
Universitas Sumatera Utara
17
1. Simbol Arus Arah
Yaitu, simbol yang dipakai untuk menghubungkan antara simbol yang satu
dengan simbol lainnya atau disebut juga connecting line.
Tabel 2.7.1 Simbol Arus Arah
Simbol
Nama
Arus / Flow
Fungsi
Penghubung antara prosedur /
proses.
Simbol keluar / masuk prosedur
Off-line Connector
atau proses. dalam lembar /
halaman yang lain.
2. Simbol Proses
Yaitu, merupakan simbol yang menunjukkan jenis operasi pengolahan
dalam suatu prosedur.
Tabel 2.7.2 Simbol Proses
Simbol
Nama
Fungsi
Simbol yang menunjukkan
Process
pengolahan yang dilakukan
Komputer.
Simbol untuk kondisi yang akan
Decision
menghasilkan beberapa
kemungkinan jawaban / aksi.
Terminal
Simbol untuk permulaan atau
akhir darti suatu program.
Universitas Sumatera Utara
18
Manual Input
Simbol untuk pemasukan data
secara manual on-line keyboard.
3. Simbol Input-Output
Yaitu, simbol yang dipakai untuk menyatakan jenis peralatan yang
digunakan sebagai media input atau output.
Tabel 2.7.3 Simbol Input-Output
Simbol
Nama
Fungsi
Simbol yang menyatakan proses
Input-Output
input dan output tanpa
tergantung dengan jenis
peralatannya.
Simbol yang menyatakan input
Document
berasal dari dokumen dalam
bentuk kertas atau output di
cetak dikertas.
Disk and On-line
Storage
2.8
Simbol untuk menyatakan input
berasal dari disk atau output di
simpan ke disk.
UML ( Unified Modeling Language)
UML adalah sebuah bahasa yang telah menjadi standart dalam industri untuk
visualisasi, merancang, dan mendokumentasikan sistem piranti lunak. UML
menawakan sebuah standar 8 untuk merancang model sebuah sistem. Dengan
Universitas Sumatera Utara
19
menggunakan UML kita dapat membentuk model untuk semua jenis aplikasi
piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem
operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman.
Notasi UML merupakan sekumpulan bentuk khusus yang menggambarkan
berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan UML
syntax mendefinisikan bagaimana bentuk-bentuk tersebut dapat di kombinasikan.
Notasi UML terustama di turunkan dari 3 notasi yang telah ada, yaitu : ObjectOriented Design, Object-Modeling Technique dan Object-Oriented Software
Engineering.
2.8.1
Use Case Diagram
Use Case diagram menggambarkan fungsionalitas yang di harapkan dari sebuah
sistem, yang ditekankan adalah “apa” yang di perbuat sistem, dan bukan
“bagaimana”. Use case diagram dapat sangat membantu bila kita sedang
menyusun requirement sebuah sistem, mengkomunikasikan rancangan dengan
klien, dan merancang test case untuk semua feature yang ada pada sistem. Sebuah
use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi
fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas yang
common.
Universitas Sumatera Utara
20
2.8.2
Squnce Diagram
Squence diagram menggambarkan interaksi antar objek di dalam dan di sekitar
sistem (termasuk pengguna, display, dan sebagainya) berupa pesan yang
digambarkan terhadap waktu. Squence diagram terdiri atar dimensi vertikal
(waktu) dan dimensi horizontal (objek-objek yang terkait). Sequence diagram
biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah
yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output
tertentu.
Universitas Sumatera Utara
Download