IGN IoT: Menciptakan Proyek IoT Keren Dengan Mudah

Ridwan Fajar 18 Juli 2015

IGN IoT: Menciptakan Proyek IoT Keren Dengan Mudah

IoT atau kependekan dari internet of things merupakan salah satu sektor baru yang menjadi incaran para developer untuk memberikan solusi kepada khalayak yang ingin memadukan kenyamanan penggunaan perangkat keras melalui perangkat mobile (misalnya) dengan melalui internet. Dalam tataran smart city IoT sendiri merupakan salah satu bagian penting. Mengontrol peralatan rumah tangga selagi Anda berada di kantor atau sedang belanja, bukan hal yang sulit lagi jika Anda sudah menggunakan layanan IoT.

IoT sendiri memang masih didominasi oleh perusahaan besar, baik perangkat keras atau perangkat lunak yang digunakan. Tapi seiring dengan berkembangnya perangkat keras terbuka seperti Rapsberry Pi, MicroPython, Tessel, dan lainnya. Berbagai developer yang belum dapat menginvestasikan waktunya untuk membuat perangkat keras sendiri terbantu dengan kehadiran mereka. Banyak developer yang dapat mengembangkan perangkat lunak atau sistem operasi sendiri untuk dibundel dengan minikomputer tadi untuk menciptakan solusi yang akan mereka tawarkan kepada khalayak. Proyek ini dimulai sejak April 2015 dengan tim pengembang sebanyak 19 orang.

[caption id="attachment_5097" align="aligncenter" width="600"]IGN IoT Stack (sumber: doc.iot.ignsdk.web.id) IGN IoT Stack (sumber: doc.iot.ignsdk.web.id)[/caption]

Tidak ketinggalan dengan developer lain, tim IGOS Nusantara pun sedang mengembangkan perangkat pengembangan IoT yang ditopang dengan menggunakan teknologi open source. Salah satu perangkat keras yang dibidiknya untuk saat ini adalah Rapsberry Pi. Kemudian tim IGOS Nusantara pun merilis IGN ARM, sebuah distro yang dikembangkan dari IGOS Nusantara khusus untuk komputer dengan arsitektur ARM, misalnya Rapsberry Pi. Selain untuk Raspberry Pi, IGN ARM dapat mendukung juga untuk beberapa minikomputer seperti BananaPi, BeagleBone, CubieBoard, dan lainnya.

Kemudian untuk runtime, Ibnu Yahya dan tim IGNSDK menciptakan IGNSDK IoT runtime yang memudahkan client apps library IGNSDK IoT (Shark.io) mengakses interface perangkat keras, sensor, sql, filesystem, dan etc, menggunakan javascript API. IGNSDK IoT runtime saat ini sudah mendukung multi channel, dimana sebuah runtime dapat menangani lebih dari satu client apps. Saat ini client apps yang dapat dikembangkan dapat berupa aplikasi HTML5 ataupun Node.js/JX Core. Namun tim sedang berusaha agar Shark.IO dapat digunakan di bahasa pemrograman lain seperti Python, Go, C, C++, dan lainnya.

[caption id="attachment_5095" align="aligncenter" width="600"]Kumpulan ISO IGN ARM (http://doc.iot.ignsdk.web.id/) Kumpulan ISO IGN ARM (http://doc.iot.ignsdk.web.id/)[/caption]

Berikut ini adalah salah satu contoh source code dari tim IGN IoT yang digunakan untuk mengendalikan sebuah tank yang dibangun menggunakan Raspberry Pi:

 
window.onload = function() {
	var socket;

	socket = new WebSocket("ws://192.168.1.164:6969");

	socket.onclose = function()
	{
		console.error("web channel closed");
	};
	socket.onerror = function(error)
	{
		console.error("web channel error: " + error);
	};
	socket.onopen = function()
	{
		new sharkIO(socket, function(channel) {
			window.fs = channel.objects.fs;
			window.gpio = channel.objects.gpio;
			gpio.set(18);
	gpio.mode("out");
	gpio.set(23);
	gpio.mode("out");
	gpio.set(24);
	gpio.mode("out");
	gpio.set(25);
	gpio.mode("out");
		});
	}
}

function maju(){
	reset()
	gpio.write(18,1);
	gpio.write(24,1);
}
function mundur(){
	reset()
	gpio.write(23,1);
	gpio.write(25,1);
}
function kanan_atas(){
	reset()
	gpio.write(18,1);
}
function kiri_atas(){
	reset()
	gpio.write(24,1);
}
function kanan_bawah(){
	reset()
	gpio.write(23,1);
}
function kiri_bawah(){
	reset()
	gpio.write(25,1);
}
function reset(){
gpio.write(18,0);
gpio.write(23,0);
gpio.write(24,0);
gpio.write(25,0);
}

Anda dapat melihat salah satu video demonya di Youtube. Atau jika Anda ingin lebih kepo bagaimana detailnya membuat proyek IoT dengan IGNSDK IoT? silahkan kunjungi dokumentasi IGN IoT sekarang juga :D

[caption id="attachment_5096" align="aligncenter" width="500"]IGN IoT Stack (sumber: http://blog.anak10thn.science/) IGN IoT Stack (sumber: http://blog.anak10thn.science/)[/caption]

[caption id="" align="aligncenter" width="476"]tank Demo kendali Tank Raspberry Pi menggunakan IGN IoT (http://doc.iot.ignsdk.web.id/)[/caption]

(rfs/ignsdk)