Activity
Packet MONITORING BERBASIS IoT (THINGSPEAK)
MENGGUNAKAN MIT APP INVENTOR 2
6
I. TUJUAN
1. Dapat membuat aplikasi monitoring berbasis IoT menggunakan MIT App Inventor 2.
2. Dapat merancang koneksi IoT menggunakan server Thingspeak dengan NodeMCU.
2. Android
Android adalah sistem operasi berbasis Linux yang dirancang untuk perangkat
bergerak layar sentuh seperti telepon pintar dan komputer tablet. Android awalnya
dikembangkan oleh Android, Inc., dengan dukungan finansial dari Google, yang
kemudian membelinya pada tahun 2005.
Gambar 2. Android
3. NodeMCU
NodeMCU adalah sebuah platform IoT yang bersifat open source. Terdiri dari
perangkat keras berupa System On Chip ESP8266 dari ESP8266 buatan Espressif
System, juga firmware yang digunakan, yang menggunakan bahasa pemrograman
scripting Lua. Istilah NodeMCU secara default sebenarnya mengacu pada firmware
yang digunakan daripada perangkat keras development kit.
c. Berikan keterangan untuk masing-masing field, seperti contoh pada gambar 18.
URL
Untuk dapat mengambil nilai yang tersimpan pada channel Thingspeak yang sudah
dibuat maka perlu memasukkan URL terlebih dahulu, caranya sebagai berikut:
a. Masuk pada menu “API Keys”.
Channel ID
API Keys
Home URL
B. GAMBAR RANGKAIAN
C. LISTING PROGRAM
Berikut adalah Listing Program NodeMCU
#include <ESP8266WiFi.h>
#include "ThingSpeak.h"
#include "DHT.h"
WiFiClient client;
unsigned long myChannelNumber = CHANNEL_ID; //sesuaikan channelID
const char * myWriteAPIKey = "READ_API_KEYS"; //sesuaikan API Keys
DHT dht(DHTPIN, DHTTYPE);
int suhu,kelembapan;
void setup()
{
Serial.begin(9600);
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
Serial.println(".......");
Serial.println("WiFi Connected....IP Address:");
Serial.println(WiFi.localIP());
ThingSpeak.begin(client);
dht.begin();
Serial.println("Monitoring Suhu dan Kelembapan Thingspeak");
delay(2000);
}
void loop()
{
kelembapan = dht.readHumidity();
suhu = dht.readTemperature();
Serial.println("Suhu : " + String(suhu) + " °C");
Serial.println("Kelembapan : " + String(kelembapan) + " %" + "\n");
KirimThingspeak();
}
void KirimThingspeak()
{
ThingSpeak.setField(1, suhu);
ThingSpeak.setField(2, kelembapan);