Mengirim Data Menggunakan NodeJS
Pendahuluan
Raspberry Pi adalah mini komputer yg mempunyai input output digital port seperti pada board microcontroller. Kelebihan Rasberry Pi dibanding board microcontroller yg lain diantaranya yaitu mempunyai Port/koneksi untuk display berupa TV atau Monitor PC serta koneksi USB untuk Keyboard serta Mouse. Raspberry Pi dibuat di inggris oleh Raspberry Pi Foundation. Pada awalnya Raspberry Pi ditunjukan untuk modul pembelajaran ilmu komputer disekolah. Untuk dapat menyimpan data pada ANTARES dapat menggunakan NodeJS Request. Berikut adalah langkah-langkanya:

Gambar 1. Raspberry Pi Device
1. Install Raspberry Pi OS
Pertama-tama anda harus memiliki Raspberry Pi yang sudah memiliki OS. Jika anda belum memiliki Raspberry Pi yang memiliki OS, anda dapat mengikuti tutorial pada halaman https://www.raspberrypi.org/documentation/installation/installing-images/. Jika anda sudah memiliki Raspberry Pi lengkap dengan OS nya, maka anda bisa langsung melanjutkan ke step berikutnya.
2. Install Librari
Aktifkan Raspberry Pi dan buka jendela terminal. Setelah jendela terminal terbuka, input syntax di bawah ini untuk menginialisasi library npm seperti yang ditunjukkan pada gambar 2.
npm init --yes

Gambar 2. Initial NPM Library on Terminal UI
Setelah menginputkan syntax diatas, tekan enter dan jika proses inialisasi berhasil maka tampilan jendela terminal akan seperti gambar 3.

Gambar 3. Initial NPM Library on Terminal UI
Jika sudah berhasil menginiaslisasi NPM library maka selanjutnya install NPM library dengan menggunakan syntax di bawah ini seperti yang ditunjukkan pada gambar 4./p>
npm install request --save

Gambar 4. Install NPM Library on Terminal UI
Setelah menginputkan syntax diatas, tekan enter dan jika proses instalisasi berhasil maka tampilan jendela terminal akan seperti gambar 5.

Gambar 5. Install NPM Library on Terminal UI
Jika tampilan sudah sesuai dengan gambar 5 maka proses instalasi library npm sudah selesai.
3. Membuat NodeJS Request
Setelah berhasil menghinstall library npm, selanjutnya adalah membuat file dengan format NodeJS. Untuk membuat file pada Raspberry Pi, anda dapat menggunakan syntax dibawah ini. File ini digunakan untuk menyimpan data pada Platform ANTARES.
sudo nano your-file-name.js

Gambar 6. Create File Syntax on Terminal UI
Jika sudah masuk ke dalam file NodeJS Reqeust yang akan dibuat. Masukkan list di bawah ini dan jangan lupa inputkan URL Device anda dan juga Access Key anda.
Store Data to ANTARES NodeJS Request Format
Field | Value | |
---|---|---|
URL | http://platform-iot.unnes.ac.id/~/antares-cse/antares-id/your-application-name/your-device-name
or http://platform-iot.unnes.ac.id/~/antares-cse/your-device-ID
Note: your-device-ID must be starting with CNT . e.g. CNT-842419289 |
|
Method | POST |
|
Header | Key | Value |
X-M2M-Origin | access-id:access-password |
|
Content-Type | application/json;ty=4 |
|
Accept | application/json |
var request = require("request");
var options = { method: 'POST',
url: 'URL',
headers:
{ 'cache-control': 'no-cache',
'content-type': 'application/json;ty=4',
'x-m2m-origin': 'access-id:access-password' },
body: '\r\n{\r\n "m2m:cin": {\r\n "cnf": "message",\r\n "con": "\r\n {\r\n \t \\"status\\": \\"0\\",\r\n \\"dim\\": \\"10\\"\r\n }\r\n "\r\n }\r\n}' };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});
Jika sudah diinputkan, maka tampilan akan sama seperti pada gambar 7.

Gambar 7. NodeJS File
Untuk menyimpan file NodeJS Request anda, anda perlu menekan Ctrl+X > Enter > Y.
4. Execute NodeJS Request
Setelah file NodeJS Request disimpan. Selanjutnya anda dapat mengeksekusi file tersebut dengan menggunakan sytanx berikut.
sudo node your-file-name.js

Gambar 8. Executed File & Result
Jika anda mendapatkan respon yang mirip dengan gambar 8, Selamat anda telah berhasil menyimpan data pada device anda di ANTARES
Field | Value | |
---|---|---|
URL | http://platform-iot.unnes.ac.id/~/antares-cse/antares-id/your-application-name/your-device-name
or http://platform-iot.unnes.ac.id/~/antares-cse/your-device-ID
Note: your-device-ID must be starting with CNT . e.g. CNT-842419289 |
|
Method | POST |
|
Header | Key | Value |
X-M2M-Origin | access-id:access-password |
|
Content-Type | application/xml;ty=4 |
|
Accept | application/xml |
var request = require("request");
var options = { method: 'POST',
url: 'URL',
headers:
{ 'Cache-Control': 'no-cache',
'Content-Type': 'application/xml;ty=4',
'X-M2M-Origin': 'access-id:access-password' },
body: '<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\r\n <cnf>message</cnf>\r\n <con>\r\n <obj>\r\n <int name="data" val="16"/>\r\n <int name="unit" val="watt"/>\r\n <obj>\r\n \r\n' };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
Jika sudah diinputkan, maka tampilan akan sama seperti pada gambar 7.

Gambar 7. NodeJS File
Untuk menyimpan file NodeJS Request anda, anda perlu menekan Ctrl+X > Enter > Y.
5. Cek Data pada Device di ANTARES
Anda dapat mengecek data yang anda simpan pada Device pada ANTARES dengan membuka URL device anda.

Gambar 9. Tampilan Device pada ANTARES
Monitoring Suhu dan Kelembaban Menggunakan Sensor DHT11
Pendahuluan
Pada tutorial ini, Anda akan membuat suatu sistem monitoring suhu dan kelembaban menggunakan Raspberry Pi, sensor DHT11 dan ANTARES. Sensor DHT11 akan mengukur suhu dan kelembaban di sekitar ruangan, lalu akan mengirimkan data tersebut sehingga dapat dimonitor melalui device pada ANTARES.
1. Alat dan Bahan
Alat dan bahan yang digunakan yaitu:
a. Raspberry Pi
b. Sensor DHT11
c. Resistor 10k ohm
d. Breadboard
e. Kabel jumper

Gambar 10. Alat dan Bahan
2. Rangkaian Hardware
Kemudian Anda perlu menghubungkan sensor DHT11 dengan Raspberry Pi. Rangkailah sensor DHT11 dengan Raspberry Pi seperti pada gambar 11 berikut. Gunakan breadboard dan kabel jumper dalam proses merangkai.

Gambar 11. Rangkaian
Hubungkan kaki VCC sensor DHT11 ke pin 3.3V RaspberryPi, kaki GND sensor DHT11 ke pin GND RaspberryPi, kaki data sensor DHT11 ke GPIO 4 RaspberryPi dan pull up resistor seperti pada gambar.
3. Install Library DHT11
Sebelum memulai proses pada software, Anda perlu menginstall Library DHT11 pada RaspberryPi yang Anda gunakan. Pada tutorial ini, Anda akan menggunakan Library DHT11 dari Szazo. Buka jendela Terminal lalu ketik kode berikut untuk memulai instalasi.
git clone https://github.com/szazo/DHT11_Python.git
Setelah proses instalasi selesai, akan muncul folder DHT11_Python.
4. Kode Program
Setelah proses instalasi library selesai, Anda akan membuat kode program untuk membaca sensor dan mengirimkan data sensor ke Device Antares. Sebelum memulai, pastikan Anda telah membuat Aplikasi serta Device pada console Antares milik Anda.
Selanjutnya, masuk ke direktori folder DHT11_Python lalu buka file dht11_example.py menggunakan Python. Kemudian akan terbuka jendela text editor Python, lalu ketik kode program seperti berikut
import RPi.GPIO as GPIO
import dht11
import time
import datetime
import request
import json
#initialize GPIO
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.cleanup()
#read data using pin 4
instance = dht11.DHT11(pin=4)
while True:
result = instance.read()
if result.is_valid():
print("Last valid input: " + str(datetime.datetime.now()))
print("Temperature: %d C" % result.temperature)
print("Humidity: %d %%" % result.humidity)
data = '\r\n{\r\n "m2m:cin": {\r\n "cnf": "message",\r\n "con": "\r\n {\r\n \t \\"Temperature\\": \\"'+str(result.temperature)+'\\",\r\n \\"Humidity\\": \\"'+str(result.humidity)+'\\"\r\n
url = 'http://platform-iot.unnes.ac.id/~/antares-cse/antares-id/your-application-name/your-device-name'
headers = {'cache-control':'no-cache','content-type':'application/json;ty=4','x-m2m-origin':'Your-Acces-Key'}
r = request.post(url,headers=headers,data=data)
time.sleep(2)
Simpan file tersebut, kemudian buka jendela Terminal lalu ketik kode berikut:
cd DHT11_Python && python dht11_example.py
lalu akan muncul tampilan seperti berikut:

Gambar 12. Tampilan pada Terminal
Tampilan tersebut menunjukkan bahwa sensor mulai mengukur suhu dan kelmbaban. Selanjutnya silakan periksa data yang masuk pada Device Antares yang telah Anda buat sebelumnya. Jika berhasil maka tampilan pada Device Anda akan seperti berikut ini:

Gambar 13. Tampilan Device pada ANTARES