편집자 주: 산업용 사물인터넷(IIoT)은 산업 운영에 대한 깊은 통찰을 제공하고 연결된 기계와 시스템의 효율성을 높일 것을 약속합니다. 대규모 IIoT 애플리케이션은 광범위한 센서에서 데이터를 수집하고, 데이터를 안정적이고 안전하게 클라우드로 이동하며, 통찰과 효율성을 제공하는 데 필요한 분석을 수행하기 위해 계층형 아키텍처에 의존합니다. '산업용 인터넷 애플리케이션 개발'에서 저자들은 IIoT 아키텍처를 상세히 검토하고 이러한 시스템과 관련된 광범위한 요구사항을 충족하기 위한 접근법을 논의합니다.
/home/pi/sensor/index.js 파일을 다음 내용으로 생성하고, REMOTE-SERVER-ADDRESS.com을 실제 값으로 교체:
var WebSocket = require('ws');
var rpio = require('rpio');
var ws;
var receiver = 'ws://REMOTE-SERVER-ADDRESS.com:8080';
rpio.open(11, rpio.INPUT);
var establishConnection = function () {
ws = new WebSocket(receiver);
ws.on('close', establishConnection);
ws.on('error', establishConnection);
};
establishConnection();
var sendStatus = function () {
var status = rpio.read(11) === 0;
console.log('light status: ' + status);
var data = JSON.stringify({
device: 'raspberry',
timestamp: Date.now(),
light: status
});
try { ws.send(data); }
catch (e) {console.log('failed to send data to ' + receiver);}
setTimeout(sendStatus, 1000);
};
sendStatus();