Skip to content

How to Run

InJung Hwang edited this page Feb 6, 2017 · 24 revisions

Introduction

Alpha 버전 기준으로, OPEL Device 상에서는 각종 OPEL framework daemon들이, Android Device 상에서는 OPEL Manager application이 반드시 동작해야 합니다.

OPEL framework daemon들은 camera, sensor, OPEL JavaScript apps를 관리합니다. OPEL Manager application은 OPEL framework daemon들과 Bluetooth, Wi-fi Direct 등으로 통신하여, camera, sensor, OPEL JS apps를 사용합니다.

따라서, OPEL을 실행하려면 OPEL device에서 OPEL framework daemon들을 실행한 후, Android Device 상에서 OPEL Manager application을 실행하는 과정을 차례대로 수행해야 합니다.

On OPEL Device

Linking the Libraries

OPEL 을 실행하기 전, Build 부분에서 빌드하고 설치한 라이브러리들을 제대로 Linking 해주어야 합니다. 그렇지 않으면, 라이브러리를 제대로 찾지 못해 실행 중에 오류가 발생할 수 있습니다.

sudo ldconfig

Create Data Directory (Alpha 1)

현재 OPEL 은 alpha 버전으로 어느정도 유연하지 않은 부분들이 있습니다. 그 중 하나가 OPEL 에서 사용하는 데이터를 다루는 부분입니다. 이 부분은 향후 개선 사항에서 고쳐갈 부분입니다.

OPEL 에서 데이터를 저장하고 사용하는 장소로 특정 디렉토리가 필요합니다.

Alpha 1(Raspberry Pi 2/3)의 경우에는,

/home/pi/opelData/  

에 디렉토리를 생성해주시길 바랍니다.

Alpha 2(Tegra TX1)의 경우에는, OPEL에서 아래 경로에 직접 data directory를 생성해줍니다.

/OPEL_DIR/data/

Enable Camera Device (Alpha 1)

카메라를 라즈베리파이에 연결한 후, 카메라 모듈 enable

$ sudo raspi-config

Enable Camera -> OK
and Reboot

Run OPEL Daemon

  • Alpha 1
$ cd /OPEL_DIR/
$ ./run_daemons start
  • Alpha 2 이후
$ cd /OPEL_DIR/
$ ./run_opel

Terminate OPEL Daemon

  • Alpha 1
$ cd /OPEL_DIR/
$ ./run_daemons stop
  • Alpha 2 이후

Ctrl+C 키를 입력하여 SIGINT signal 발생하면 OPEL daemon들이 모두 종료됨.

How to Run Each OPEL Framework (before Alpha3)

Before make test of OPEL framework, Please set OPEL_DIR environment
OPEL Framework 를 따로 테스트하기 전에, 항상 OPEL_DIR 환경변수를 설정해주세요.
(When it reboots, it needs to be set again)

cd /OPEL_DIR/
export OPEL_DIR=$(pwd)

Sensor Framework

Prerequisites

  • How to connect the sensor (Conventional Sensor Connection) Please refer to Issue (#29)

  • Build & Run sensorManager daemon

$ cd /OPEL_DIR/opel_sensor_manager/
$ mkdir build
$ cd build
$ cmake ..
$ make
$ cd ../bin
$ sudo ./sensorManager
  • Run sample JS application
$ cd /OPEL_DIR/node/src/sensfw/
$ ./build.sh
$ node test3.js

I made sample application (test3.js), which uses 'On' API of sensor manager.
Please customize it as you want to use.

  • Sample Application ('Get' API)
var opel_dir = process.env.OPEL_DIR;
var sensorManager = require(opel_dir+"/node/sensfw/nil");

var value=sensorManager.Get("LIGHT").LIGHT;
console.log('the vlaue is' + value);

Camera Framework

On Android Device

  • OPEL Manager Application을 실행하면, 자동으로 OPEL device를 discover하고 연결됨.