Real Project Example

Last updated: January 30 th, 2017

Geeknesia Microcontroller & IOT Starter Kit

Geeknesia Kit

Sebuah Starter Kit Lengkap dari Geeknesia untuk mempelajari IOT dan Micro Controller dengan mudah melalui praktek secara langsung.
Starter Kit ini menyediakan development board ESP 8266 tipe WeMos D1 yang compatible dengan board arduino sehingga mudah dipahami, muda diperlajari, dan mudah dimengerti. Dalam kit ini tersedia komponen elektronik lengkap untuk berbagai keperluan tutorial dan project real.

Read More or Buy Now !

Alat Pendeteksi Kebocoran Gas

Reading Requirement:

Pada project kali ini kita akan membuat aplikasi untuk mendeteksi kebocoran gas di sekitar sensor menggunakan Geeknesia sebagai interface atau sistem peringatan kebocoran gas.

 

Alat dan bahan yang dibutuhkan adalah sebagai berikut :

  • Akun + Project Geeknesia
  • Arduino Board + Ethernet Shield 
  • Sensor Gas
  • Kabel Jumper
  • Kabel LAN
  • Protoboard
  • Internet
     

 

Sensor Gas

Arduiono UNO

Ethernet Shield

 

Kabel LAN

 

Tahap 1

Pastikan anda sudah memiliki akun Geeknesia.com kemudian buatlah Project,Gateway dan Device untuk project Gas Detector.

 

Tahap 2

Rangkailah alat dan bahan yang sudah dipersiapkan seperti tabel di bawah :

 

Tabel Wiring MQ-5 (Sensor Gas) ke Arduino

MQ-5 (Sensor Gas)Arduino UNO
VccVcc 5v
GndGnd
OutA0

 

Tahap 3

Buatlah script pada software Arduino, ikuti script di bawah:

 

Script  

 

#include 
#include 
#include 

// Update these with values suitable for your network.

byte mac[] = {  0xDE, 0xED, 0xBA, 0xFE, 0xFE, 0xDE };

byte ip[] = { 192, 168, 2, 27 }; //Your IP

byte dns2[] = { 8,8,8,8};

byte gateway[] = { 192, 168, 2, 1 }; //Your IP Gateway

char pubschar1 [20];

const int gasPin=A0; //Pin Sensor

int flag;

char message_buff[200];



EthernetClient ethClient;

PubSubClient client("geeknesia.com", 1883, callback, ethClient);

void callback(char* topic, byte* payload, unsigned int length) {

}



// device details

char *deviceId = "device-4407e1d312d262e32f03e1e6691xxxxx"; //Device ID from Geeknesia

char *deviceUsername = "e37fe287911430fe7312be64e12xxxxx"; //Username from Geeknesia

char *devicePassword = "b75572b99c386b9a937bd737863xxxxx"; //Password from Geeknesia

String deviceCredential = String(deviceUsername) + ":" + String(devicePassword);




//Send Data Function

void senddata(char* topic,String credential, char *var1, const int nilai1 ){

  String pubString  = "{\"code\":\"";

  pubString += credential;

  pubString +="\",";

  pubString +="\"attributes\":{\"";

  pubString +=String(var1)+"\":\""+nilai1+"\"";

  pubString +="}}";

  char message_buff[pubString.length()+1];

  pubString.toCharArray(message_buff, pubString.length()+1);

  client.publish("iot/data",message_buff);   

}



void setup()

{

  Ethernet.begin(mac, ip,dns2,gateway); //Setup Connection

  Serial.begin(9600);

}



void loop()

{

  client.publish("iot/live",deviceId);

  if (!client.connected()){

     client.connect(deviceId,NULL,NULL,"iot/will",2,64,deviceId);

  }



  flag=analogRead(gasPin);

  Serial.println(analogRead(flag));

  senddata(deviceId,deviceCredential,"gas", flag);

  delay(500);

} 

 

   Tahap 4

Buka project yang telah dibuat pada Geeknesia.com, kemudian lihat pada indikator GAS DETECTOR jika indikator berwarna hijau artinya device (Arduino) telah terhubung dengan cloud Geeknesia, jika indikator berwarna merah artinya device tidak terhubung, maka periksa kembali koneksi anda dan pastikan kabel LAN sudah terpasang ke Internet Gateway.

 

 

Tahap 5

Lakukan tes sensor yang telah terhubung dengan Analog Input Arduino, dengan cara :

  • Siapkan korek gas.
  • Kemudian tekan bagian pengeluaran gas (Jangan nyalakan api).

Lihat pada Geeknesia apakah nilainya berubah atau tidak? jika berubah maka kualitas sensor masih bagus dan script berjalan dengan baik, jika setelah di coba ternyata tidak ada perubahan cek sensor dan kabel pada sensor.

 

Gambar Percobaan.

 

Nilai sebelum ada gas

 

Nilai setelah ada gas

 


Catatan: Sensor gas yang dapat digunakan pada project ini diantaranya adalah MQ-2, MQ-3, MQ-4, MQ-5, MQ-6, MQ-7 .