Anda di halaman 1dari 23

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

LAB SHEET Praktik Kendali Dan Akusisi Data


U1 : Membuat Akun Thingspeak
4 X 50
Semester 6
Menit

Hal 1 dari
No Revisi : 01 Tgl : 1 Maret 2019
12

1. Kompetensi
Setelah melakukan praktik, mahasiswa memiliki kompetensi: dapat memahami dan
mengimplementasikan teknik kendali dan akusisi data dengan menggunakan
ESP8266

2. Sub Kompetensi
Setelah melakukan praktik, mahasiswa memiliki sub kompetensi :
a. Memahami konsep internet of things (IOT)
b. Memahami piranti ESP8266
c. Memahami service Thingspeak
d. Memahami komunikasi ESP8266 dengan Thingspeak

3. Dasar Teori
Internet of Things

IoT atau Internet of Things adalah teknologi untuk menyatukan semua


perangkat (‘things’) melalui media internet. Kata kunci dalam teknologi adalah
‘connectivity’ dan objek dari connectivity itu sendiri. ‘Connectivity’ atau dalam bahasa
kita adalah ‘konektivitas’, artinya media untuk menghubungkan semua perangkat.
Secara harafiah, konektivitas IoT adalah melalui internet, namun teknologi ini dapat
dengan mudah diimplementasikan dalam intranet/LAN. Basically, konektivitas yang
didukung adalah media perantara yang menggunakan protokol TCP/IP sebagai
carrier-nya. Yang kedua, objek konektivitas yang kita sebut sebagai ‘Things’ atau
terjemahan tekniknya adalah ‘perangkat’. Things/perangkat ini bukan sembarang
perangkat namun tentunya yang sudah mendukung konektivitas TCP/IP.
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA
LAB SHEET Praktik Kendali Dan Akusisi Data
U1 : Membuat Akun Thingspeak
4 X 50
Semester 6
Menit

Hal 2 dari
No Revisi : 01 Tgl : 1 Maret 2019
12

Gambar 1 Internet of Things

Topologi Teknologi IoT

Pada implementasinya, sebuah sistem IoT tidaklah cukup membutuhkan dua


hal di atas (konektivitas dan perangkat). Sebuah sistem minimal IoT membutuhkan
sebuah server yang dalam terminologi IoT disebut sebagai “backend server”.
Backend server ini nantinya bekerja sebagai penghubung antar perangkat, Berikut
ini merupakan diagram topologi IoT dengan backend server.
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA
LAB SHEET Praktik Kendali Dan Akusisi Data
U1 : Membuat Akun Thingspeak
4 X 50
Semester 6
Menit

Hal 3 dari
No Revisi : 01 Tgl : 1 Maret 2019
12

Gambar 2 Topologi Internet of Things

ESP8266

ESP8266 adalah sebuah embedded chip yang di desain untuk komunikasi


berbasis wifi. Chip ini memiliki output serial TTL dan GPIO. ESP8266 dapat
digunakan secara sendiri (Standalone) maupun digabungkan dengan pengendali
lainnya seperti mikrokontroler. ESP8266 memiliki kemampuan untuk 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. Ada 3 cara menggunakan ESP8266 : sebagai wifi access
menggunakan AT command, dimana biasanya dimanfaatkan oleh Arduino untuk
koneksi wifi, sebagai sistem 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 passwordnya, selain itu
ESP8266 dapat digunakan sebagai Access Point dimana ESP8266 dapat menerima
akses wifi.
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA
LAB SHEET Praktik Kendali Dan Akusisi Data
U1 : Membuat Akun Thingspeak
4 X 50
Semester 6
Menit

Hal 4 dari
No Revisi : 01 Tgl : 1 Maret 2019
12

Gambar 3. ESP8266-1 AI Cloud dan Pin Konfigurasi

Fitur yang dimiliki oleh ESP8266-1 sebagai berikut :


 Frekuensi wifi 802.11 b/g/n
 Prosesor 32 - bit MCU
 10 - bit ADC
 TCP/ IP protocol stack
 TR switch, LNA , power amplifier dan jaringan
 PLL , regulator , dan unit manajemen daya
 Mendukung keragaman antena
 WiFi 2.4 GHz , mendukung WPA / WPA2
 Dukungan STA mode operasi /AP / STA + AP
 Dukungan Smart link Fungsi untuk kedua perangkat Android dan iOS
 SDIO 2.0 , ( H ) SPI , UART , I2C , I2S , IR Remote Control , PWM , GPIO
 STBC , 1x1 MIMO , 2x1 MIMO
 A - MPDU & A - MSDU agregasi & 0.4s guard interval

Thingspeak
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA
LAB SHEET Praktik Kendali Dan Akusisi Data
U1 : Membuat Akun Thingspeak
4 X 50
Semester 6
Menit

Hal 5 dari
No Revisi : 01 Tgl : 1 Maret 2019
12

"ThingSpeak adalah platform open source Internet of Things (IOT) aplikasi dan API
untuk menyimpan dan mengambil data dari hal menggunakan protokol HTTP melalui Internet
atau melalui Local Area Network. ThingSpeak memungkinkan pembuatan aplikasi sensor
logging, aplikasi lokasi pelacakan, dan jaringan sosial hal dengan update status ". ThingSpeak
awalnya diluncurkan oleh ioBridge pada tahun 2010 sebagai layanan untuk mendukung
aplikasi IOT. ThingSpeak telah terintegrasi dukungan dari numerik komputasi perangkat lunak
MATLAB dari MathWorks. Memungkinkan ThingSpeak pengguna untuk menganalisis dan
memvisualisasikan data yang diunggah menggunakan Matlab tanpa memerlukan pembelian
lisensi Matlab dari MathWorks.

ThingSpeak memiliki hubungan dekat dengan MathWorks, Inc. Bahkan, semua


dokumentasi ThingSpeak dimasukkan ke situs dokumentasi Matlab yang MathWorks 'dan
bahkan memungkinkan terdaftar MathWorks akun pengguna login sebagai valid di situs
ThingSpeak. Persyaratan layanan dan kebijakan privasi dari ThingSpeak.com adalah antara
pengguna setuju dan MathWorks, Inc

Cara Kerja :
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA
LAB SHEET Praktik Kendali Dan Akusisi Data
U1 : Membuat Akun Thingspeak
4 X 50
Semester 6
Menit

Hal 6 dari
No Revisi : 01 Tgl : 1 Maret 2019
12

Gambar 4. ThingSpeak

4. ALAT DAN BAHAN


1. PC/Laptop
2. ESP8266 AI Cloud Inside
3. Arduino UNO
4. Project board
5. Access Point dengan koneksi Internet
6. Jumper secukupnya

5. Langkah Kerja
Berikut ini langkah-langkah yang harus dilakukan

1. buatlah akun di thingspeak

a. Kunjungi http://thingspeak.com
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA
LAB SHEET Praktik Kendali Dan Akusisi Data
U1 : Membuat Akun Thingspeak
4 X 50
Semester 6
Menit

Hal 7 dari
No Revisi : 01 Tgl : 1 Maret 2019
12

b. Lalu singUp, masukan semua data yang perlu diisi

c. Konfirmasikan email yang akan digunakan


FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA
LAB SHEET Praktik Kendali Dan Akusisi Data
U1 : Membuat Akun Thingspeak
4 X 50
Semester 6
Menit

Hal 8 dari
No Revisi : 01 Tgl : 1 Maret 2019
12

d. Verifikasikan alamat email yang kamu masukan sebelumnya melalu akun


email mu
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA
LAB SHEET Praktik Kendali Dan Akusisi Data
U1 : Membuat Akun Thingspeak
4 X 50
Semester 6
Menit

Hal 9 dari
No Revisi : 01 Tgl : 1 Maret 2019
12

e. Lalu kembali lagi pada halaman konfirmasi di thingspeak

f. Selesaikan proses singUp degan memasukan email serta password yang


kalian buat
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA
LAB SHEET Praktik Kendali Dan Akusisi Data
U1 : Membuat Akun Thingspeak
4 X 50
Semester 6
Menit

Hal 10 dari
No Revisi : 01 Tgl : 1 Maret 2019
12

g. Proses singUp selesai

h. Pilih salah satu, thingspeak digunakan sebagai apa


FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA
LAB SHEET Praktik Kendali Dan Akusisi Data
U1 : Membuat Akun Thingspeak
4 X 50
Semester 6
Menit

Hal 11 dari
No Revisi : 01 Tgl : 1 Maret 2019
12

i. Buatlah channel
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA
LAB SHEET Praktik Kendali Dan Akusisi Data
U1 : Membuat Akun Thingspeak
4 X 50
Semester 6
Menit

Hal 12 dari
No Revisi : 01 Tgl : 1 Maret 2019
12

j. Channel untuk mengamati telah terbuat

k. Ini adalah alamat untuk menulis dan membaca data pada channel thinspeak
yang dibuat
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA
LAB SHEET Praktik Kendali Dan Akusisi Data
U1 : Membuat Akun Thingspeak
4 X 50
Semester 6
Menit

Hal 13 dari
No Revisi : 01 Tgl : 1 Maret 2019
12

2. Otomatis lampu led

a. Rangkai ESP8266 dengan Arduino seperti gambar dibawah ini.

b. Pastikan untuk melakukan langkah awal dalam LS1 untuk mengubah kecepatan
ESP8266 dari 115200 menjadi 9600.
c. Setelah selesai maka dapat dilanjutkan dengan membuat program baru untuk
membaca data dari thingspeak menggunakan ESP8266 wifi modul dengan program
sebagai berikut :

#include <SoftwareSerial.h>
#define RX 2
#define TX 3
//declaration an object/class esp8266 type softwareserial
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA
LAB SHEET Praktik Kendali Dan Akusisi Data
U1 : Membuat Akun Thingspeak
4 X 50
Semester 6
Menit

Hal 14 dari
No Revisi : 01 Tgl : 1 Maret 2019
12

SoftwareSerial esp8266(RX,TX); //RX,TX


String ssid = "D"; // disesuaikan dengan WiFi yang akan dihubungkan
String pass = "55555555"; //cantumkan password dari WiFi yang dihubungkan
String data="";
int i=0;
void setup()
{
Serial.begin(9600);
esp8266.begin(9600);
Serial.println("====== inizializing =======");
SendToESP8266("AT",5,"OK");
SendToESP8266("AT+CWMODE=1",5,"OK");
SendToESP8266("AT+CWJAP=\""+ ssid +"\",\""+ pass +"\"",20,"OK");
}
void loop()
{
SendToESP8266("AT+CIPMUX=1",5,"OK");
String strIPSTART = "AT+CIPSTART=4,\"TCP\",\"184.106.153.149\",80";
SendToESP8266(strIPSTART,15,"OK");
String getstr = "GET /channels/ 712542/fields/1/last?api_key= WZM8VV9EPFA2CGP4";
//disesuaikan dengan api key yang dituju dan fields yang akan di isi
String strCommand ="AT+CIPSEND=4,"+String(getstr.length()+4);
SendToESP8266(strCommand,10,">");
SendToESP8266(getstr,20,"OK");
delay(1000);
int j=0;
data="";
while(j<50) {
int a=esp8266.read();
Serial.write(a);
if(a == '\"') break;
else if ((a>=32) && (a<=127)) data +=char(a);
j++;
}
Serial.println();
String x = data.substring(9,10); //disesuaikan dengan lebar data yang akan dimunculkan
pada serial monitor
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA
LAB SHEET Praktik Kendali Dan Akusisi Data
U1 : Membuat Akun Thingspeak
4 X 50
Semester 6
Menit

Hal 15 dari
No Revisi : 01 Tgl : 1 Maret 2019
12

Serial.print("Data read: "); Serial.println(x);


delay(2000);
}
void SendToESP8266 (String ATCommand, int timemax, char codefeedback[])
{
int t=0;
Serial.println("AT Command: "+ATCommand);
while(t<timemax)
{
Serial.print(".");
esp8266.println(ATCommand);
if (esp8266.find(codefeedback))
{
Serial.println("OK");
break;
}
t++;
}
Serial.println();
}
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

LABSHEET KENDALI DAN AKUSISI DATA

Semester 6 U1 : membuat akun ThingSpeak 4 X 50 Menit

No. MEKA/CN/01 Revisi : 01 Tgl : 1 Maret 2019 Hal 16 dari 23

d. Tulis kembali program tersebut dan perhatikan setiap komentar yeng tertera pada
program untuk lebih memahami program.
e. Setelah selesai dan program benar semua saat di compail selanjutnya buka
ThingSpeak anda terlebih dahulu dan pastikan api key yang dimasukan pada program
sama dengan yang ada pada ThingSpeak.
f. Kemudian buka laman baru pada browser lalu masukan
https://api.thingspeak.com/update?api_key=J77APDLPL6A4GY1V&field1=9
WZM8VV9EPFA2CGP4= write api key anda
9 = data yang akan anda kirim
g. Setelah data terkirim kemudian dapat di lihat data tersebut pada field ThingSpeak
anda. Berikut merupakan contoh dari pengaplikasian tahap diataas

Lebar data

Gambar 5. Pengiriman data dan tampilan serial monitor

Gambar 6. Tampilan data pada ThingSpeak


FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

LABSHEET KENDALI DAN AKUSISI DATA

Semester 6 U1 : membuat akun ThingSpeak 4 X 50 Menit

No. MEKA/CN/01 Revisi : 01 Tgl : 1 Maret 2019 Hal 17 dari 23

h. Setelah berhasil dengan lebar data 1 digit, selajutkan modifikasilah program untuk
memunculkan 2 digit angka pada lebar data dengan cara mengubah program pada
bagian

{
Serial.println();
String x = data.substring(9,11); //disesuaikan dengan lebar data yang akan
dimunculkan pada serial monitor
Serial.print("Data read: "); Serial.println(x);
delay(2000);
}

Upload program yang telah dirubah.


Kemudian kirimkan data pada ThingSpeak sebanyak 2 digit, seperti contoh sebagai
berikut:

Gambar 7. Pengiriman Data dan Tampilan Serial Monitor

Gambar 8. Tampilan Data Pada ThingSpeak


FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

LABSHEET KENDALI DAN AKUSISI DATA

Semester 6 U1 : membuat akun ThingSpeak 4 X 50 Menit

No. MEKA/CN/01 Revisi : 01 Tgl : 1 Maret 2019 Hal 18 dari 23

i. Setelah berhasil dengan lebar data 1 digit, selajutkan modifikasilah program untuk
memunculkan 3 digit angka pada lebar data dengan cara mengubah program pada
bagian
{
Serial.println();
String x = data.substring(9,12); //disesuaikan dengan lebar data yang akan
dimunculkan pada serial monitor
Serial.print("Data read: "); Serial.println(x);
delay(2000);
}

Upload program yang telah dirubah.


Kemudian kirimkan data pada ThingSpeak sebanyak 3 digit, seperti contoh sebagai
berikut:

Gambar 9. Pengiriaman Data dan Tampilan Serial Monitor

Gambar 10. Tampilan Data Pada ThingSpeak


FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

LABSHEET KENDALI DAN AKUSISI DATA

Semester 6 U1 : membuat akun ThingSpeak 4 X 50 Menit

No. MEKA/CN/01 Revisi : 01 Tgl : 1 Maret 2019 Hal 19 dari 23

j. Setelah berhasil dengan lebar data 1 digit, selajutkan modifikasilah program untuk
memunculkan 4 digit angka pada lebar data dengan cara mengubah program pada
bagian

{
Serial.println();
String x = data.substring(9,13); //disesuaikan dengan lebar data yang akan
dimunculkan pada serial monitor
Serial.print("Data read: "); Serial.println(x);
delay(2000);
}

Upload program yang telah dirubah.


Kemudian kirimkan data pada ThingSpeak sebanyak 4 digit, seperti contoh sebagai
berikut:

Gambar 11. Pengiriman Data dan Tampilan Serial Monitor


FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

LABSHEET KENDALI DAN AKUSISI DATA

Semester 6 U1 : membuat akun ThingSpeak 4 X 50 Menit

No. MEKA/CN/01 Revisi : 01 Tgl : 1 Maret 2019 Hal 20 dari 23

Gambar 12. Tampilan Data Pada ThingSpeak


k. Setelah berhasil dengan program tersebut kemudian tambahkan rangkaian dengan
dihubungkan pada 3 buat LED yang dikendalikan secara bergantian dengan data yang
kita kirimkan yaitu 0 (mati) dan 1 (hidup).
l. Tambahkanlah program anda terdahulu sehingga seperti program dibawah ini:

#include <SoftwareSerial.h>
#define RX 2
#define TX 3

//declaration an object/class esp8266 type softwareserial


SoftwareSerial esp8266(RX,TX); //RX,TX
String ssid = "D";
String pass = "55555555";
String data="";
int i=0;

void setup()
{
pinMode (6,OUTPUT); //untuk Pin LED
pinMode (7,OUTPUT); //untuk Pin LED
pinMode (8,OUTPUT); //untuk Pin LED
Serial.begin(9600);
esp8266.begin(9600);
Serial.println("====== inizializing =======");
SendToESP8266("AT",5,"OK");
SendToESP8266("AT+CWMODE=1",5,"OK");
SendToESP8266("AT+CWJAP=\""+ ssid +"\",\""+ pass +"\"",20,"OK");
}
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

LABSHEET KENDALI DAN AKUSISI DATA

Semester 6 U1 : membuat akun ThingSpeak 4 X 50 Menit

No. MEKA/CN/01 Revisi : 01 Tgl : 1 Maret 2019 Hal 21 dari 23

void loop()
{
SendToESP8266("AT+CIPMUX=1",5,"OK");
String strIPSTART =
"AT+CIPSTART=4,\"TCP\",\"184.106.153.149\",80";
SendToESP8266(strIPSTART,15,"OK");
String getstr = "GET /channels/718839/fields/1/last?
api_key=WZM8VV9EPFA2CGP4";
String strCommand ="AT+CIPSEND=4,"+String(getstr.length()+4);
SendToESP8266(strCommand,10,">");
SendToESP8266(getstr,20,"OK");
delay(1000);
int j=0;
data="";
while(j<50) {
int a=esp8266.read();
Serial.write(a);
if(a == '\"') break;
else if ((a>=32) && (a<=127)) data +=char(a);
j++;
}
Serial.println();
String x = data.substring(9,10);
Serial.print("Data read: "); Serial.println(x);
delay(2000);
if (x=="0") digitalWrite(6,LOW); //data 0 kondisi lampu mati pada pin 6
if (x=="1") digitalWrite(6,HIGH); //data 1 kondisi lampu hidup pada pin 6
if (x=="2") digitalWrite(7,LOW); //data 2 kondisi lampu mati pada pin 7
if (x=="3") digitalWrite(7,HIGH); //data 3 kondisi lampu hidup pada pin 7
if (x=="4") digitalWrite(8,LOW); //data 4 kondisi lampu mati pada pin 8
if (x=="5") digitalWrite(8,HIGH); //data 5 kondisi lampu hidup pada pin 8
}
void SendToESP8266 (String ATCommand, int timemax, char
codefeedback[])
{
int t=0;
Serial.println("AT Command: "+ATCommand);
while(t<timemax)
FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

LABSHEET KENDALI DAN AKUSISI DATA

Semester 6 U1 : membuat akun ThingSpeak 4 X 50 Menit

No. MEKA/CN/01 Revisi : 01 Tgl : 1 Maret 2019 Hal 22 dari 23

{
Serial.print(".");
esp8266.println(ATCommand);
if (esp8266.find(codefeedback))
{
Serial.println("OK");
break;
}
t++;
}
Serial.println();
}

m. Setelah program selesai dan berhasil di upload maka kembali lakukan pengiriman
data dimulai dengan data 1. Hasil dari langkah ini ialah sebagi berikut:

n. Setelah berhasil, kirimkan data 3 untuk mengubah LED pin 7 menyala. Berikut
merupakan tampilan dari percobaan tersebut

Gambar 13. Tampilan data 3 pada ThingSpeak dan Serial Monitor


FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

LABSHEET KENDALI DAN AKUSISI DATA

Semester 6 U1 : membuat akun ThingSpeak 4 X 50 Menit

No. MEKA/CN/01 Revisi : 01 Tgl : 1 Maret 2019 Hal 23 dari 23

Anda mungkin juga menyukai