[Tutorial] Cara Akses Serial Interface Menggunakan Node JS dan Arduino

Pada tutorial kali ini saya akan menerangkan tentang cara komunikasi serial menggunakan node JS dan arduino. Untuk memulai memprogram ada hal yang kita perlukan yaitu node JS yang dapat didownload disini. Kemudian kalian install dan buat coding pada sublime atau notepad. Berikut listing programnya :

Listing  Program Node JS:
server.js
var serialport = require("serialport");
var SerialPort = serialport.SerialPort;

var receivedData ;
var sendData;
var serialPort = new SerialPort("COM6", { // Menggunakan COM 6
baudrate: 9600,
parser: serialport.parsers.readline("\n")
});

serialPort.on("open", function () { // Komunikasi serial dibuka
console.log('open');

serialPort.on('data', function(data) { //Menerima dan Mengirim data ke Arduino


receivedData += data.toString();
//console.log(receivedData);

if (receivedData .indexOf('E') >= 0 && receivedData .indexOf('B') >= 0) {
sendData = receivedData .substring(receivedData .indexOf('B') + 1, receivedData .indexOf('E'));
receivedData="";
k=sendData.split(",");
var a=k[0];
var b=k[1];
console.log("nilai A ="+a);
console.log("nilai B ="+b);

}
});
});

 
Listing  Program Arduino:
void setup() {
 
 Serial.begin(9600); // inisialisasi baudrate, defaultnya menggunakan 9600
 // inisiasi Output dalam hal ini menggunakan LED di PIN 13
pinMode(13, OUTPUT);
Serial.println("arduino siap"); //indikator siap digunakan
}
 
void loop() {

char getdata = (char)Serial.read();
 if(getdata == 'A'){ // Jika menerima data berupa teks A maka hidupkan lampu
 digitalWrite(13, HIGH);
 Serial.println("hidup");
 }
 if(getdata == 'D'){// Jika menerima data berupa teks D maka matikan lampu111
 digitalWrite(13, LOW);
 Serial.println("mati");
 }
 
 }




Kemudian lakukan install serial port pada node JS dengan code : "npm install --save-dev serialport".
Maka akan tampil seperti dibawah ini




Kemudian tunggu proses dan pastikan sudah terkoneksi dengan internet
Jika sudah selesai akan muncul seperti ini :
Kemudian jalankan aplikasi, maka hasilnya akan seperti ini :
Terima Kasih dan Semoga Bermanfaat :)

Post a Comment

Previous Post Next Post