GAFU SUPER DEVICE



//
Posted on August 16, 2016 at 2:27 PM

//

Biar Binatang Jadi Canggih




Sofian Hadiwijaya

Programming is a creative activity.

IoT Pada Intel Galileo Menggunakan Platform Dari Geeknesia.com

Jun 13th, 2015 9:48 pm | Comments

Hari ini sangat luar biasa, karena saya dapat berbagi ilmu pengetahuan tentang “Internet of Things” dengan menggunakan board dari intel berupaIntel Galileo dan Intel Edison pada acara Bandung Internet of Things Meetup yang ke 12 Persentasi saya dimulai dari menceritakan apa itu Intel Galileodan Intel Edison. Pada tulisan saat ini saya tidak akan banyak menulis tentang board tersebut, saya akan bercerita pengalaman sayang menggunakan platform IoT asli made in Bandung yaitu Geeknesia.

1. Registrasi

Pertama kita harus registrasi dulu pada websitenya Geeknesia, Tunggu beberapa saat nanti Anda akan mendapatkan email dari Geeknesia berupa username dan password untuk masuk ke platform IoT tersebut.

2. Add New Device

Setelah mendapatkan akses, kita bisa menambahkan device yang kita punya dengan cara, mengklik button pada pojok kanan atas “Add New Device”, disini kita akan diminta untuk memberikan informasi device kita.

jika semua data sudah diisi dengan benar, kita tekan tombol create. Setelah itu kita akan dibawa ke halaman yang memberikan informasi detail tentang device kita dan beberapa contoh API dari Geeknesia yang dapat kita gunakan nantinya.

3. Menghubungkan Intel Galileo ke Geeknesia

Ada beberapa cara untuk menghubungkan Intel Galileo dan Geeknesia. Namun pada artikel ini saya hanya akan membahas dengan menggunakan bahasa pemrogramman nodejs dan protocol mqtt. Saya menggunakan Grove Starter Kit, untuk memudahkan dalam menggunakan LED dan sensor LDR.

Persiapkan Intel Galileo kalian, pertama-tama remote login Intel Galileo, bisa melalui ssh ataupun telnet ataupun screen. Untuk saat ini saya menggunakan ssh. Kemudian tulis kode berikut dan simpan

package.json

 
{
  "name": "galileo-geeknesia",
  "version": "1.0.0",
  "description": "menghubungkan galileo ke geeknesia",
  "main": "galileo-geeknesia.js",
  "dependencies": {
    "galileo-io": "^0.8.14",
    "mqtt": "^1.1.4"
  },
  "devDependencies": {},
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "sofian hadiwijaya",
  "license": "ISC"
}

galileo-geeknesia.js

 
var mqtt = require('mqtt'), url = require('url'), Galileo = require("galileo-io");
var mqtt_url = url.parse('mqtt://USERNAME:PASSWORD@geeknesia.com:1883');
var auth = (mqtt_url.auth || ':').split(':');
var board = new Galileo();
var LDR = 0;

var client = mqtt.createClient(mqtt_url.port, mqtt_url.hostname, {
  username: auth[0],
  password: auth[1]
});

client.on('connect', function() { // When connected
  client.publish('iot/live', 'DEVICE_ID', function() {
    console.log("Menghubungkan ke Geeknesia");
  });
  board.pinMode(8,board.MODES.OUTPUT)
  board.analogRead("A3",function(data){
    LDR = data;
  });
  setInterval(function(){
    if(LDR >=300)
      board.digitalWrite(8,1);
    else
      board.digitalWrite(8,0);
    client.publish('iot/data', '{"code":"USERNAME:PASSWORD","attributes":{"LDR":"'+LDR+'"}}', function() {
      console.log("Send data LDR = "+LDR);
    });
  }, 1000);
});

Ganti USERNAME, PASSWORD, dan DEVICE_ID sesuai dengan informasi detail dari device kalian. Source codenya saya upload ke github, yang mauclone ataupun fork bisa ke link intel-galileo-geeknesia. Untuk menjalan kode tersebut sebelumnya kita ketik perintah

 
$ npm install

perintah tersebut akan menginstal dependencies dari kode kita. Setelah itu untuk menjalankan script tersebut kita ketik perintah

 
$ node galileo-geeknesia.js

untuk melihat apakah kode tersebut berjalan dengan sempurna, kita kembali ke dashboard Geeknesia. Kita pastikan device kita terhubung dan mengirimkan data, bisa dilihat pada gambar berikut

Pengembangan selanjut, kita bisa bikin dashboard yang mendapatkan data dari API Geeknesia.

Posted by Sofian Hadiwijaya Jun 13th, 2015 9:48 pm geeknesiaintel galileointernet of thingsiotmqttnodejs

 

« Blinky LED using Intel Galileo BoardMembuat web atau blog statis gratis pada github dengan octopress »

Copyright © 2016 - Sofian Hadiwijaya - Powered by Octopress


Leave a Comment:

Please Sign in First