Laporan Kerja Praktek PT. Satunol Mikrosistem
BAB II TINJAUAN PUSTAKA 2.1 ESP8266 ESP8266 adalah sebuah embedded chip yang di desain untuk komunikasi berbasis wifi. Chip ini memiliki output serial TTL dan juga mempunya GPIO 2 buah. ESP8266 dapat digunakan secara sendiri (Standalone) ataupun digabungkan dengan perangkat
pengendali
lainnya
seperti
mikrokontroler.
ESP8266
memiliki
kemampuan networking yang lengkap dan menyatu baik sebagai client maupun sebagai Access Point. Firmware yang dimiliki ESP88266 begitu banyak, dapat juga sebuah chip ESP8266 diprogram dengan tujuan khusus sesuai degan kebutuhan sebagai contoh kemampuan untuk berkomunikasi dengan web yang menggunakan port HTTPS. Chip ESP8266 disempurnakan oleh Tensilica’s seri L106 Diamond dengan prosesor 32-bit. ESP8266 memiliki tiga mode akses : sebagai wifi access menggunakan AT command, biasanya dimanfaatkan oleh Arduino untuk koneksi wifi, sebagai system yang berdiri sendiri menggunakan NodeMCU dan menggunakan bahasa LUA, sebagai sistem yang berdiri sendiri dengan menggunakan Arduino IDE yang sudah bisa terhubung dengan ESP8266. ESP 8266 dapat bertindak sebagai client ke suatu wifi router, sehingga saat konfigurasi dibutuhkan
setting
nama
access
pointnya
dan
juga
nya,
selain itu ESP8266 dapat digunakan sebagai Access Point dimana ESP8266 dapat menerima akses wifi. (Mahali, 2016:173) 2.1.1 ESP-01 ESP-01 memiliki kemampuan yang memungkinkan mikrokontroler untuk terhubung dengan jaringan WiFi secara sederhana menggunakan perintah AT-Command. ESP-01 bekerja pada tegangan 3.3 V yang merupakan standar JEDEC (t Electron Device Engineering Council). Jika menggunakan USB to TTL, untuk memperoleh tegangan 3.3 V dapat menggunakan pin 3.3 V pada Arduino (Arduino dalam keadaan terhubung ke PC). Untuk
Laporan Kerja Praktek PT. Satunol Mikrosistem kelemahan dari ESP-01 yaitu memerlukan banyak jumper dalam pengkabelan. ESP-01 hanya memiliki 8 pin kaki yang diilustrasikan sebagaimana gambar berikut:
Dimana:
VCC Terhubung dengan catu daya 3.3V
GPIO0 dan GPIO2 adalah port general purpose. GPIO0 dapat digunakan untuk menentukan mode operasi terhadap modul (mode pemrograman atau normal). Untuk mode normal GPIO0 harus terhubung ke 3.3V, namun jika ingin melakukan flashing (mode pemrograman) maka GPIO0 harus digroundkan.
U0RXD(GPIO2) : Port receiver ntuk komunikasi serial
U0TXD (GPIO1_: Port transceiver untuk komunikasi serial
CH_PD: Chip Enable. Harus bernilai 3.3V untuk operasi normal
EXT_RSTB: harus bernilai 3.3V untuk operasi normal dan 0V untuk reset
GND Ground (Embeddednesia, 2017)
Laporan Kerja Praktek PT. Satunol Mikrosistem 2.1.2 ESP-12E (NodeMCU) Nodemcu
merupakan
sebuah
open
source
platform
IoT
dan
pengembangan kit yang menggunakan bahasa pemrograman Lua untuk membantu makers dalam membuat prototype produk IoT atau bisa dengan memakai sketch dengan arduino IDE. Pengembangan Kit ini didasarkan pada modul ESP8266 dengan menggunakan ESP8266 versi 12E (ESP-12E), yang mengintegrasikan GPIO, PWM (Pulse Width Modulation), I2C , 1-Wire dan ADC (Analog to Digital Converter) semua dalam satu board. Keunikan dari Nodemcu ini sendiri yaitu boardnya yang berukuran sangat kecil yaitu panjang 4.83cm, lebar 2.54cm, dan dengan berat 7 gram. Tapi walaupun ukurannya yang kecil, board ini sudah dilengkapi dengan fitur wifi dan firmwarenya yang bersifat opensource.
Adapun spesifikasi yang terdapat pada board ini yaitu:
Board ini berbasis ESP8266 Serial WiFi SoC (single on Chip) dengan onboard USB to TTL. Untuk Wireless standar yang digunakan adalah IEEE 802.11b/g/n
2 tantalum capasitor 100 micro farad dan yg kecil 10 micro farad
3.3v LDO regulator
Blue led
2102 usb to UART bridge
Tombol reset, port usb, dan tombol flash
Laporan Kerja Praktek PT. Satunol Mikrosistem
Terdapat 9 GPIO yang di dalamnya terdapat 3 pin PWM, 1 x ADC Channel, dan pin RX TX
Pada pin seberangnya, terdapat AD0 sebagai analog sample
3 pin ground
S3 & S2 sebagai pin gpio
S1 MOSI(Master Output Slave Input) yaitu jalur data dari master dan masuk ke dalam slave, sc cmd/cs
S0 MISO(Master Input Slave Input) yaitu jalur data keluar dari slave dan masuk ke dalam master
SK yg merupakan SCLK dari master ke slave yang berfungsi sebagai clock
Pin Vin sebagai masukan tegangan
GPIO bisa di full kontrol lewat jaringan wifi
GPIO dengan arus keluaran masing-masing 15mA dengan tegangan 3V
Built in 32-bit MCU
Dapat di program langsung lewat USB, tanpa menggunakan rangkaian tambahan.
Pengembangan Board dengan Open-Source Firmware ini dapat dipergunakan untuk mengengmbangkan aplikasi IoT hanya dengan beberapa baris script Lua (Dirakit, 2016)
2.2 Firmware Ardi (2016:3) berpendapat bahwa “Firmware adalah software atau sekumpulan instruksi yang diprogram pada perangkat hardware dengan tujuan sebuah hardware dapat bekerja.” Pada dasarnya Firmware memiliki tugas yang sama seperti Operating System yaitu mengacu pada hal yang sama dan dapat digunakan bergantian bila diterapkan pada perangkat tertentu. Firmware disimpan dalam memori khusus yang disebut flash ROM. Adapun beberapa contoh dari firmware yaitu:
NodeMCU dengan menggunakan basic programming lua
Laporan Kerja Praktek PT. Satunol Mikrosistem
MicroPython dengan menggunakan basic programming python
AT Command dengan menggunakan perintah-perintah AT Command (AT Command Instruction Set).
2.3 ESP MESH Perkembangan Internet Things (IoT) membutuhkan peningkatan jumlah node untuk terhubung ke Internet. Namun, hanya sejumlah terbatas node yang bisa langsung terhubung ke router yang sama. Oleh karena itu, diharapkan dapat mengembangkan protokol ESP-MESH untuk mengatasi masalah ini. Dalam jaringan mesh, node dapat membentuk jaringan dan paket forward. Akibatnya, sejumlah besar node dapat terhubung ke Internet dengan hanya menggunakan sebuah router. 2.4 IP Address Vicky (2012:2) berpendapat bahwa “IP Address adalah suatu identitas numerik yang dilabelkan kepada suatu alat seperti komputer, router atau printer yang terdapat dalam suatu jaringan komputer yang menggunakan internet protocol sebagai sarana komunikasi.” Pada setiap modul ESP8266, IP Address sudah terkonfigurasi sehingga tidak perlu melakukan konfigurasi secara manual untuk IP Address 2.5 MAC Adress MAC Address (Media Access Control Address) merupakan sebuah alamat jaringan yang diimplementasikan pada lapisan data-link dalam tujuh lapisan model OSI, yang merepresentasikan sebuah node tertentu dalam jaringan. Dalam sebuah jaringan berbasis Ethernet, MAC address merupakan alamat yang unik yang memiliki panjang 48-bit (6 byte) yang mengidentifikasikan sebuah device, interface dalam sebuah router, atau node lainnya dalam jaringan. MAC Address juga sudah terdapat pada masing-masing device ESP8266 sehingga dapat digunakan untuk comparing antar ESP8266. (Wikipedia, 2017:1)
Laporan Kerja Praktek PT. Satunol Mikrosistem 2.6 Arduino “Arduino adalah pengendali mikro single-board yang bersifat open-source, diturunkan dari Wiring platform, dirancang untuk memudahkan penggunaan elektronik dalam berbagai bidang. Hardwarenya memiliki prosesor Atmel AVR dan softwarenya memiliki bahasa pemrograman sendiri”. (Wikipedia, 2015:1) Arduino dapat dimanfaatkan sebagai connector antara ESP-01 dan PC ketika akan dilakukan ing program atau menggunakan instruksi AT Command. 2.7 USB to TTL USB to TTL merupakan salah satu jenis kabel converter yang banyak ditemui pada bidang microkontroller dan komunikasi micro ke komputer. USB to TTL memungkinkan pengguna untuk membuat perangkat elektronika mikrokontroller dapat berkomunikasi dengan komputer sesuai kehendak. Untuk penggunaan USB to TTL, pada PC yang digunakan harus sudah ter-install driver dari USB to TTL sendiri yaitu driver IC CH340. (Arsana, 2012:1) 2.8 Akses Point Access Point dalam jaringan computer adalah sebuah jalur akses nirkabel (Wireless Access Point atau AP) merupakan perangkat komunikasi nirkabel yang memungkinkan antar perangkat untuk terhubung ke jaringan nirkabel dengan menggunakan Wi-Fi. Adapun fungsi dari Akses Point yaitu:
Mengatur agar AP dapat berfungsi sebagai DH server.
Menetapkan enckripsi Wired Equivalent Privacy (WEP) dan Wi-Fi Protected Access (WPA)
Mengatur akses berdasarkan MAC Address device pengakses.
Sebagai Hub/Switch yang bertindak untuk menghubungkan jaringan lokal dengan jaringan wireless/nirkabel (Fauziza, 2012:6)
Laporan Kerja Praktek PT. Satunol Mikrosistem 2.9 Client/Station Client adalah sistem atau proses yang melakukan permintaan (request) data ke akses point. Client menerima data (dalam hal ini diperoleh dari sensor), lalu pesan diteruskan ke akses point dan menunggu respon, setelah itu akses point menerima dan memprosesnya permintaan basis data tersebut hingga kemudian hasilnya diberikan ke client. Dalam proses tersebut tentunya melibatkan banyak hal seperti jaminan integritas, pemeriksaan autorisasi, proses update dan lain sebagainya. Adapun fungsi dari client yaitu:
Mengatur interface (mengatur data yang diterima dari sensor)
Menerima data yang diperoleh dari akses point lain dan meneruskan data tersebut.
(Sasha, 2016:2)