Ebook Basic IoT
Ebook Basic IoT
SESI 2
Istilah upload dalam hal ini yaitu memasukkan program (firmware) yang telah dibuat di
Arduino IDE ke dalam chip microcontroller. Cara untuk mengupload firmware yaitu :
3. Buka program blink pada arduino (File -> Examples -> Blink) yang akan di upload
1
4. Pastikan Port terdeteksi di Arduino
Untuk awalan memulai belajar membuat firmware, program yang cocok adalah memahami bagaimana
cara untuk mengendalikan pin I/O pada microcontroller tersebut. Untuk membuat
3
program baru di Arduino IDE dengan cara mengklik File -> New. Berikut ini contoh program kendali output.
void setup() {
pinMode(D4,OUTPUT);
void loop() {
digitalWrite(D4,HIGH);
delay(1000);
digitalWrite(D4,LOW);
delay(1000);
Setelah memahami bagaimana cara membuat program output, selanjutnya adalah bagaimana cara
untuk menerima atau membaca sebuah input dari luar ke microcontroller. Berikut ini merupakan contoh
program pembacaan input.
void setup() {
Serial.begin(9600);
pinMode(A0,INPUT_PULLUP);
}
void loop() {
int input_A0 = analogRead(A0);
Serial.println(input_A0)
delay(100);
}
Setelah menyelesaikan dan memahami bagaimana mengendalikan output dan membaca output,
selanjutnya adalah bagaimana cara menggabungkan kedua program tersebut. Berikut ini merupakan
contoh program penggabungan.
4
void setup() {
pinMode(A0,INPUT_PULLUP);
pinMode(D4,OUTPUT);
}
void loop() {
int input_A0 = analogRead(A0);
boolean input_state;
Dalam pembuatan sebuah program, biasanya diperlukan sarana untuk melihat proses berjalannya
program tersebut, hal ini biasa disebut debugging. Dalam Arduino IDE disediakan sarana untuk debuging ini
yaitu dengan menggunakan serial monitor. Serial monitor ini digunakan untuk berinteraksi antara
komputer dengan microcontroller menggunakan jalur serial (UART). Chip microcontroller (ESP8266)
mendukung sarana UART ini sebagai debugging dan sebagai media untuk uploading firmware. Berikut ini
cara menggunakan serial monitor :
void setup() {
Serial.begin(9600);
pinMode(A0,INPUT_PULLUP);
pinMode(D4,OUTPUT);
Serial.println("HALO DUNIA !!!");
}
void loop() {
int input_A0 = analogRead(A0);
5
boolean input_state;
delay(100);
}
Board/Shield yang digunakan yaitu pentarium basic dalam board tersebut terdapat sensor DHT11 yang
digunakan untuk membaca suhu dan kelembaban. Untuk dapat membaca nilai suhu dan kelembaban dari
sensor tersebut, berikut ini yang perlu dilakukan :
6
2. Coba Example program
7
3. Lihat Serial Monitor
8
2. Pilih File Examples Antares ESP8266 HTTP AntaresStoreData
3. Example ini digunakan untuk mengirim data ke Antares. Ganti accesskey, wifi ssid, wifi pass, project
name dan device name sesuai dengan akun masing-masing.
9
4. Setelah mengganti semua parameter selanjutnya upload program tersebut dan lihat di Serial
monitor.
5. Pastikan device mendapatkan IP address dan mendapatkan Internet. Ketika mendapatkan tulisan
“201 Created” berarti data sudah tersimpan di Antares.
6. Untuk get data dari Antares, dapat mencoba membuka file examples Antares ESP8266 HTTP
AntaresGetLatestData. Ubah parameter sama dengan program store data dan klik upload.
Setelah upload selesai, buka lah serial monitor. Pastika tampilan sama seperti gambar di bawah ini :
10
11
BAB 4
Proyek Smartswitch
Dalam memulai pembuatan proyek IoT ada beberapa hal yang perlu disiapkan seperti skema rangkaian, tool
kit, sensor, dan lain-lain. Proyek yang akan dibuat dalam pembahasan kali ini yaitu pembuatan smartswitch.
Smartswitch merupakan alat yang mampu mengendalikan beban seperti lampu, AC, pompa, dan sebagaianya
menggunakan smartphone ataupun berdasarkan sensor. Smartwitch ini menggantikan saklar yang pada
awalnya hanya bisa secara manual, dengan adanya smartswitch ini saklar tersebut dapat dikendalikan
menggunakan smartphone atau sensor secara otomatis. Persiapan untuk memulai proyek ini antara lain :
1. Toolkit
2. Development Kit
a. Kabel Data
12
b. ESP8266 + Pentarium Shield Basic
c. Lampu + Fitting
3. Wifi + Internet
13
4.2 Merakit development board dengan lampu
Untuk mengendalikan nyala dan mati lampu, maka fitting lampu perlu di rakit seperti gambar di
bawah ini :
220 AC
Lamp
220 AC
Untuk merakit lampu dan fitting nya ke shield bisa di lihat video dengan link :
https://www.youtube.com/watch?v=Y2bFCADChuA
pinMode(D5,OUTPUT);
void loop() {
digitalWrite(D5,HIGH);
delay(1000);
digitalWrite(D5,LOW);
delay(1000);
14
4.4 Pembuatan program mengirim data sensor ke antares
Pada tahap ini merupakan gabungan program DHT 11 dan program AntaresStoreData.
Berikut ini programnya :
#include "DHT.h"
#include "AntaresESP8266HTTP.h"
#define DHTPIN D3
#define DHTTYPE DHT11
dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
Serial.println("DHTxx test!");
dht.begin();
antares.setDebug(true);
antares.wifiConnection(WIFISSID,PASSWORD);
}
void loop() {
float h = dht.readHumidity(); float t =
dht.readTemperature(); float f =
dht.readTemperature(true);
15
Serial.println("Failed to read from DHT sensor!");
return;
}
antares.add("temperature", t);
antares.add("humidity", h);
antares.send(projectName, deviceName);
delay(10000);
}
Pada tahap ini merupakan gabungan program kendali lampu dan AntaresGetLatesData.
Berikut ini programnya :
#include "AntaresESP8266HTTP.h"
#define ACCESSKEY "d8134ce7938a1983:c68c33d3e16b5d0e"
#define WIFISSID "pentarium"
#define PASSWORD "pentarium"
#define projectName "PENTARIUM_WORKSHOP_IOT"
#define deviceName "SMARTSWITCH_1_CONTROL"
void loop() {
antares.get(projectName, deviceName); // Store latest value in
buffer
if(antares.getSuccess()) {
16
int status = antares.getInt("status");
if (status==1)
{
digitalWrite(D5,HIGH);
}
else
{
digitalWrite(D5,LOW);
}
}
delay(10000);
}
17