Daftar Isi
Daftar Isi____________________________________________________________________________________________ 2
I. Teori Dasar Internet of Things ____________________________________________________________ 4
Pengertian Internet of Things __________________________________________ 4
Persiapan Software ___________________________________________________ 4
1. Persiapan code editor ________________________________________________ 4
2. Menyiapkan board nodemcu ___________________________________________ 6
3. Menyiapkan Blynk sebagai platform iot __________________________________ 8
II. Project Internet of Things _____________________________________________________________ 12
Project Smart Home (LED) ___________________________________________ 12
1. Komponen yang perlu disiapkan ______________________________________ 12
2. Struktur Rangkaian _________________________________________________ 12
3. Kodingan di Arduino IDE ____________________________________________ 13
4. Konfigurasi aplikasi blynk ___________________________________________ 13
5. Output Project _____________________________________________________ 15
Project Smart Home (Servo) __________________________________________ 16
1. Komponen yang perlu disiapkan ______________________________________ 16
2. Struktur Rangkaian _________________________________________________ 16
3. Kodingan di Arduino IDE ____________________________________________ 17
4. Konfigurasi Blynk __________________________________________________ 17
5. Output Project _____________________________________________________ 20
Project IOT Weather Station __________________________________________ 21
1. Komponen yang perlu disiapkan ______________________________________ 21
2. Struktur Rangkaian _________________________________________________ 21
3. Kodingan di Arduino IDE ____________________________________________ 21
4. Konfigurasi Blynk __________________________________________________ 23
5. Output project _____________________________________________________ 26
Project Ubidots IOT Platform _________________________________________ 27
1. Komponen yang perlu disiapkan ______________________________________ 27
2. Struktur Rangkaian _________________________________________________ 27
3. Kodingan di Arduino IDE ____________________________________________ 28
4. Konfigurasi Ubidots ________________________________________________ 29
5. Output project _____________________________________________________ 29
Project RFID Access with Blynk _______________________________________ 30
1. Komponen yang harus disiapkan ______________________________________ 30
2. Struktur Rangkaian _________________________________________________ 30
3. Kodingan di Arduino DIE ____________________________________________ 32
4. Konfigurasi Blynk __________________________________________________ 34
5. Output Project _____________________________________________________ 35
Project IOT Google Assistant _________________________________________ 37
1. Komponen yang harus disiapkan ______________________________________ 37
2. Konfigurasi IFTTT _________________________________________________ 37
3. Struktur Rangkaian _________________________________________________ 49
4. Kodingan di Arduino IDE ____________________________________________ 49
5. Konfigurasi Blynk __________________________________________________ 50
6. Output Project _____________________________________________________ 50
I. Teori Dasar Internet of Things
Pengertian Internet of Things
Internet of Things adalah sebuah konsep dimana suatu objek yang memiliki kemampuan
untuk mentransfer data melalui jaringan tanpa memerlukan interaksi manusia ke manusia
atau manusia ke komputer
Mudahnya kita berinteraksi dengan suatu benda dengan bantuan internet
Lalu bagaimana bila kita ingin mempelajari iot? Maka siapkan beberapa hal berikut
• Code editor
• Microcontroller
• Object iot
• Internet
• Platform iot
Persiapan Software
Untuk membuat program kita membutuhkan software untuk menjalankan program yang
sudah kita buat.
1. Persiapan code editor
Untuk membuat program kita membutuhkan code editor, disini kita akan menggunakan
Arduino IDE (Integrated Development Environtment)
• Download software Arduino IDE di laptopmu disini,
Kemudian gulir kebawah sedikit
Sesuaikan dengan versi OSmu, bila sudah didownload maka install seperti software pada
umumnya
Bila sudah terinstall, buka maka tampilannya akan seperti ini
Fungsi Arduino IDE adalah :
• Text editor untuk menulis kodingan (code yang masih difahami manusia)
• Compiler yang mengubah kodingan (code yang masih difahami manusia) ke kode
binary (code yang difahami mesin)
2. Menyiapkan board nodemcu
1. Buka Arduino IDE
2. Sambungkan nodemcu ke laptop menggunakan kabel USB
3. Menambahkan board untuk nodemcu
• Buka file > preference
Maka akan tampil popup seperti ini
• Tambahkan di bagian Additional Boards Manager URLs, seperti gambar diatas
link berikut ini
http://arduino.esp8266.com/stable/package_esp8266com_index.json
4. Download board untuk nodemcu (karena defaultnya ini untuk Arduino)
• Download esp8266 by ESP8266 Community (ini board untuk nodemcu)
• Klik Tools > Boards > Boards Manager
Maka akan tampil pop up seperti ini, setelah itu cari di pencariannya esp8266, dan klik
install
Tunggu sampai proses installasi selesai.
Catatan
Beberapa laptop tidak dapat membaca port nodemcu, maka ikuti langkah-langkah berikut
1. install CH34DG driver disini
2. gunakan 9600bps baud rate disetiap project
3. sambungkan ke wifi
3. Menyiapkan Blynk sebagai platform iot
1. Menambahkan library blynk ke arduino
• Klik Tools > Manage Libraries
• Maka akan tampil pop up seperti berikut, cari Blynk di kolom pencariannya
• Kemudian klik install, tunggu sampai proses installasi selesai
• Catatan, setiap libraries yang kita install akan tersimpan di folder berikut
• Download aplikasi blynk di smartphonemu disini
• Buka aplikasi blynkmu dan setting seperti berikut, atau ikuti langkah-langkah
berikut
• Daftarkan emailmu, maka blynk akan mengirimkan token ke emailmu, ingat
token ini akan kita pakai terus untuk setiap project yang terkoneksi dengan blynk
• Buatlah project baru dan beri nama training iot
• Pilih hardwarenya adalah NodeMCU
• Pilih connection typenya adalah Wi-Fi
• Buka emailmu lalu bisa simpan token tersebut
II. Project Internet of Things
Project Smart Home (LED)
Kita akan membuat bagaimana bisa menyala matikan LED menggunakan smartphone
1. Komponen yang perlu disiapkan
• Arduino IDE
• Aplikasi Blynk
• Lampu LED
• NodeMCU
• Kabel Jumper (Female to Female)
• Kabel USB
2. Struktur Rangkaian
Pastikan kabelnya terpasang seperti berikut :
3. Kodingan di Arduino IDE
#define BLYNK_PRINT Serial // digunakan untuk monitor blynk di serial
monitor
#include <ESP8266WiFi.h> // file untuk modul wifi
#include <BlynkSimpleEsp8266.h> // file untuk blynk
char auth[] = "***************************"; // token yang dikirim blynk
ke email masing2
char ssid[] = "namahostpotmu";
char pass[] = "passwordhostpotmu";
void setup() // fungsi utama, sekali dijalankan
{
Serial.begin(9600); // untuk monitor di serial print
Blynk.begin(auth, ssid, pass); // menjalankan blynk sesuai token, wifi,
dan paswordnya
void loop() // fungsi utama, berulang kali dijalankan
{
Blynk.run(); // perintah untuk menjalankan blynk
}
4. Konfigurasi aplikasi blynk
• Buka aplikasi blynk, kemudian ketuk icon (+) di pojok kanan
• dan cari widget berupa Button
• Kemudian buat menjadi 3 Button
• Lalu setting button tersebut seperti berikut dengan mengetuk setiap button
• Maka akan tampil halaman setting seperti berikut
• sesuaikan outputnya seperti pin yang di nodemcu; D0, D1 dan D2 dan rubah dari
PUSH ke SWITCH
• Kemudian tekan tombol play untuk menjalankan blynk, lakukan uji coba ke
semua button dan pastikan internetnya berjalan lancar ya
5. Output Project
LED dapat dinyala matikan lewat button di aplikasi blynk
Project Smart Home (Servo)
Kita akan membuat bagaimana bisa menggerakkan Servo menggunakan smartphone, dengan
servo kita dapat membuka tutup pintu, jendala bahkan tempat sampah.
1. Komponen yang perlu disiapkan
• Arduino IDE
• Aplikasi Blynk
• Servo
• NodeMCU
• Kabel Jumper (Male to Female)
• Kabel USB
2. Struktur Rangkaian
Pastikan kabelnya terpasang seperti berikut
3. Kodingan di Arduino IDE
#define BLYNK_PRINT Serial
//Definisi Serial pada Blink
//Setting Library
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <Servo.h> // ini library untuk servo
//Definisi variabel token dari email, SSID, password
char auth[] = "***************************";
char ssid[] = "namahostpotmu";
char pass[] = "passwordhostpotmu";
//Definisi fungsi servo menjadi gerak_servo
Servo gerak_servo;
//Fungsi Blynk untuk mengatur nilai servo dengan pin virtual V1 yang ada
pada aplikasi blynk
BLYNK_WRITE(V1){
gerak_servo.write(param.asInt());
}
//Settingan awal default
void setup()
{
Serial.begin(9600); //memulai serial monitor dengan baudrate 9600
gerak_servo.attach(2); //setting pin gpio 2 ke servo, D4 = 2
Blynk.begin(auth, ssid, pass);//setting blynk
}
void loop()
{
Blynk.run();//memulai blynk
4. Konfigurasi Blynk
• Tambahkan widget lalu pilih slider
• Tekan slider yang sudah kita buat
• Kemudian atur pinnya menjadi virtual dan pilih V1 (sesuai dengan kodingan di
Arduino IDE)
• Pastikan semua settingan seperti ini, atur perputaran servo dari 0 - 180°
• Kemudian jalankan blynk dan coba untuk menggerak gerakan slider untuk
menggerakan servo.
5. Output Project
Servo dapat diputar melalui slider aplikasi blynk
Project IOT Weather Station
Kita akan membuat bagaimana bisa suhu di suatu ruangan bisa menampilkan datanya ke hp
kita menggunakan aplikasi blynk
1. Komponen yang perlu disiapkan
• Arduino IDE
• Aplikasi Blynk
• Dht11
• NodeMCU
• Kabel Jumper (Female to Female)
• Kabel USB
2. Struktur Rangkaian
Pastikan kabelnya terpasang seperti berikut
3. Kodingan di Arduino IDE
• Include library dht11, sketch > include library > manage library
• Kemudian cari DHT11 by Adubfruit dan klik install -> install All
• Kemudian koding seperti berikut :
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <DHT.h>
char auth[] = "***************************";
char ssid[] = "namahostpotmu";
char pass[] = "passwordhostpotmu";
#define DHTPIN 14 // mendefinisikan pin dht di nodemcu
#define DHTTYPE DHT11 // mendefinisikan tipe dht yang kita gunakan
DHT dht(DHTPIN, DHTTYPE); // setting pin dan tipe dht yang digunakan
BlynkTimer timer; // mendefinisikan timer dari blynk
void sendSensor() // fungsi untuk mengirimkan sensor
{
float h = dht.readHumidity(); // variabel untuk membaca kelembapan
float t = dht.readTemperature(); // variable untuk membaca suhu
if (isnan(h) || isnan(t)) { // kondisi bila suhu dan kelembapan tidak
mengirimkan data
Serial.println("Failed to read from DHT sensor!");
return;
}
Blynk.virtualWrite(V1, t); // setting pin virtual suhu di aplikasi
blynk
Blynk.virtualWrite(V2, h); // setting pin virtual kelembapan di
aplikasi blynk
}
void setup()
{
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
dht.begin(); // sensor dht mulai membaca data suhu dan kelembapan
timer.setInterval(1000L, sendSensor); // waktu untuk mengirimkan sensor
setiap 1 detik
}
void loop()
{
Blynk.run();
timer.run();
}
4. Konfigurasi Blynk
• Buat widget baru dan pilih Gauge
• Buat 2 buah gauge, satu untuk kelembapan dan satunya untuk temperature
• Setting gauge pertama untuk temperature, pinnya V1 dengan nilai dari 0 - 50
• Setting gauge kedua untuk kelembapan, pinnya V2 dengan nilai dari 20 – 80
• Kemudian jalankan, maka hasilnya seperti ini
5. Output project
Data suhu dan kelembapan ruangan akan dikirim dari dht11 ke aplikasi blynk secara realtime
setiap 1 detik.
Sensor dht 11 memiliki 2 parameter yang dapat digunakan untuk memantau kondisi cuaca
yakni suhu dan kelembapan, berikut range dari suhu dan kelembapan yang dapat diukur
menggunakan dht tergantung jenisnya
Project Ubidots IOT Platform
Kita akan membuat bagaimana bisa suhu di suatu ruangan bisa terdeteksi datanya ke laptop
kita menggunakan Platfrom web Ubidots
1. Komponen yang perlu disiapkan
• Arduino IDE
• Web Ubidots
• Dht11
• NodeMCU
• Kabel Jumper (Female to Female)
• Kabel USB
2. Struktur Rangkaian
Dan pastikan kabelnya terpasang seperti berikut
3. Kodingan di Arduino IDE
• Download library ubidots disini, lalu taruh di libraries project arduino mu
• Kemudian koding seperti berikut
#include <DHT.h>
#include <UbidotsMicroESP8266.h> // import file ubidots
#define DHTPIN 4 // mendefinisikan pin dht di nodemcu adalah 4, D2 = 4
#define DHTTYPE DHT11 // mendefinisikan tipe dht yang kita gunakan
char auth[] = "***************************";
char ssid[] = "namahostpotmu";
char pass[] = "passwordhostpotmu";
DHT dht(DHTPIN,DHTTYPE);
Ubidots client(auth); // setting token client di ubidots
unsigned long last = 0;
void setup() {
Serial.begin(9600);
dht.begin(); // dht mulai membaca suhu dan kelembapan
delay(20); // delay 0,02 detik
client.wifiConnection(ssid,pass); // menyambungkan ubidots client
dengan wifi
}
void loop() {
if(millis()-last>10000){ // jika sudah 10 detik
float hum = dht.readHumidity();
float temp = dht.readTemperature();
last = millis();
client.add("kelembapan",hum); // ubidots client membaca kelembapan
client.add("Temperatur",temp); // ubidots client membaca suhu
client.sendAll(true); // ubidots client mengirimkan semua data
}
}
4. Konfigurasi Ubidots
• Kunjungi web ubidots di link berikut
• Daftar akun dan ikuti tutorial berikut ini
5. Output project
Data dari dht11 akan ditampilkan di website ubidots secara realtime.
Project RFID Access with Blynk
Kita akan membuat bagaimana bisa kartu RFID, KTP & KRL bisa mengirimkan datanya ke
hp kita menggunakan aplikasi blynk, lalu membuka atau menggerakkan servo
1. Komponen yang harus disiapkan
• Arduino IDE
• Aplikasi Blynk
• RFID
• NodeMCU
• Servo
• Kabel Jumper (Female to Female)
• Kabel USB
2. Struktur Rangkaian
Dan pastikan kabel rfid terpasang seperti berikut
Dan kabel servo terpasang seperti berikut
Penjelasan pin
Nama Pin Penjelasan
VCC Digunakan untuk Power modul, biasanya 3.3V yang sering digunakan
RST Atur ulang pin - digunakan untuk mengatur ulang atau mematikan modul
Ground Terhubung ke Ground sistem
IRQ Pin interupsi - digunakan untuk membangunkan modul saat perangkat berada
dalam jangkauan
MISO/SCL/Tx Pin MISO saat digunakan untuk komunikasi SPI, bertindak sebagai SCL untuk
I2c dan Tx untuk UART
MOSI Pin Master Out Slave In Untuk komunikasi SPI
SCK Serial Clock Pin - digunakan untuk menyediakan sumber jam
SS/SDA/Rx Bertindak sebagai masukan Serial (SS) untuk komunikasi SPI, SDA untuk IIC
dan Rx selama UART
Jangan lupa untuk mensolder sensor RFID kita, sehingga hasilnya seperti ini
3. Kodingan di Arduino DIE
• Install librari mfrc522 dari GithubCommunity, klik tools > manage libraries
• Kemudian koding seperti berikut
#define BLYNK_PRINT Serial
#include <SPI.h>
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <MFRC522.h> // import file MFRC522 yang sudah kita install
#include <Servo.h>
char auth[] = "***************************";
char ssid[] = "namahostpotmu";
char pass[] = "passwordhostpotmu";
#define SDA_PIN D2 // mendefinisikan SDA pin ke D2
#define RST_PIN D1 // mendefinisikan RST pin ke D1
#define motor D4
Servo servo;
MFRC522 mfrc522(SDA_PIN, RST_PIN); // setting mfrc dengan SDA dan RST
WidgetLCD lcd(V1); // setting pin virtual LCD ke V1 di aplikasi blynk
void setup()
{
Serial.begin(9600);
SPI.begin(); // Initiate SPI bus
Blynk.begin(auth, ssid, pass);
mfrc522.PCD_Init(); // Inisiasi MFRC522 card
pinMode(motor, OUTPUT);
Serial.println("Approximate your card to the reader..."); // pesan
untuk mentap kartu
Serial.println();
void loop()
{
Blynk.run();
if ( ! mfrc522.PICC_IsNewCardPresent())
{
return;
}
if ( ! mfrc522.PICC_ReadCardSerial())
{
return;
}
// menampilkan UID di serial Monitor
Serial.print("UID tag :");
String content= "";
byte letter;
// berfungsi untuk mengubah ID dari Kartu menjadi kode Hexa seperti 04
EA F0 2B
for (byte i = 0; i < mfrc522.uid.size; i++)
{
Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ");
Serial.print(mfrc522.uid.uidByte[i], HEX);
content.concat(String(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " "));
content.concat(String(mfrc522.uid.uidByte[i], HEX));
}
Serial.println();
Serial.print("Message : ");
content.toUpperCase(); // UID dijadikan Huruf besar semua
if(content.substring(1) == "04 EA F0 2B") // masukkan ID kartu / E-KTP
disini
{
lcd.clear();
lcd.print(0, 0, "UID for Card is"); // Menampilkan UID di
LCD blynk
lcd.print(0, 1, content);
delay(1000);
buka(); // fungsi untuk menggerakkan servo
}
else
{
lcd.clear();
lcd.print(0, 0, "Invalid card"); // Menampilkan pesan
ditolak di LCD blynk
lcd.print(0, 1, "Access Denied");
}
void buka(){ // membuat fungsi untuk menggerakkan servo
servo.attach(motor);
servo.write(90);
delay(2000);
servo.write(0);
}
4. Konfigurasi Blynk
• Pilih widget berupa LCD
• Tekan LCD tersebut
• Pilih advance lalu pilih pinnya V
5. Output Project
Setiap UID (User ID) dari Kartu akan terdeteksi di aplikasi blynk
Ini karena UID yang dikodingan berbeda dengan UID kartu kita
Ganti UID di kodingan sesuai yang tampil di serial monitor
kemudian upload ulang, maka jika tab kartu di RFID, maka di aplikasi blynk akan tampil
seperti ini, dan servo akan terbuka atau bergerak
Project IOT Google Assistant
Kita akan membuat bagaimana bisa menyala matikan lampu lewat hp kita menggunakan
google assistant
1. Komponen yang harus disiapkan
• Arduino IDE
• Web IFTTT
• Lampu
• Relay
• NodeMCU
• Kabel Jumper (Female to Female)
• Kabel USB
• Google assistant
2. Konfigurasi IFTTT
• Masuk ke web IFTTT di link berikut
• Daftar akun terlebih dahulu
• Pilih sign up, dan masukkan email yang sesuai dengan google assistantmu
• Klik skip
• Klik create
• Klik This
• Search dan klik google assistant
• Klik Connect
• Pastikan email yang terdaftar sesuai dengan ifttt dan google assistant
• Kemudian klik say a simple phrase
• Lalu tampilannya akan seperti ini
• What do you want to say ? isi dengan apa yang ingin kita ucapkan untuk
menyalakan lampu
• What do you want the Assistant to say in response ? isi dengan apa yang kita
inginkan di respon dari google assitant
• Lalu klik create trigger
• Klik That
• Search webhooks
• Klik connect
• Klik make a web request
• Maka tampilannnya akan seperti ini
• Di bagian url isi seperti ini
https://188.166.206.43/token_blynkmu_disini/update/V0
• Klik Finish
• Ok disini kita sudah membuat pengaturan untuk lampu ON di google assistant,
• Buat versi lampu OFF seperti yang sudah kita lakukan
• Pastikan di bagian say simple phrase
• Pastikan di bagian webhooks di setting seperti ini
3. Struktur Rangkaian
Dan pastikan kabelnya terpasang seperti berikut
4. Kodingan di Arduino IDE
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
char auth[] = "***************************";
char ssid[] = "namahostpotmu";
char pass[] = "passwordhostpotmu";
void setup()
{
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
}
void loop()
{
Blynk.run();
}
5. Konfigurasi Blynk
• Setting untuk menggunakan blynk disini
6. Output Project
Lampu di suatu ruangan dapat dinyala matikan lampu menggunakan google assistant, saat
kita mengucapkan ok google, turn on the lamp, maka lampu akan menyala. Dan bila kita
mengucapkan ok google, turn off the lamp, maka lampu akan mati