11월, 2016의 게시물 표시

[DRONE] Node.js로 Gazebo 3D Simulator 연동하기

Node.js을 사용하여 Gazebo Simulator와 연동하기 위해서는 Gazebojs을 설치해야 한다.
단계1. 작업 디렉토리를 만들고, Node.js와 Gazebojs을 설치한다. $ mkdir ~/simjs $ cd ~/simjs
단계2. Node.js와 Gazebojs을 설치한다. $ sudo apt install -y gazebo7 libgazebo7-dev libjansson-dev npm nodejs nodejs-legacy
단계3. npm 툴을 사용해서 Gazebojs을 설치한다. $ npm init -y $ npm install gazebojs

Google Cloud Platform 에서 PUB/SUB 사용하기

이미지
Google Cloud Platform 에서 PUB/SUB 사용하기 Google Cloud Platform(GCP)에서 실시간으로 안정적인 메시징 및 데이터 스트리밍을 제공하는 글로벌 서비스가 Pub/Sub 이다.

1. GCP Pub/Sub 서비스 소개  1.1 확장 가능한 메시징 미딜웨어 Cloud Pub/Sub는 실시간 메시징 서비스로 개별 응용 프로그램간에 메시지를 주고 받을 수 있다. 그리고 GCP 또는 인터넷의 다른 곳에 있는 시스템 또는 컴포넌트들을  분리하기 위하여 Cloud Pub/Sub을 활용할 수 있다. Cloud Pub/Sub는 1초에 100만건을 낮은 대기 시간에 '적어도 한 번은' 제공되도록 설계되어 있다고 한다.

1.2 모든 데이터에 연결 Cloud Pub/Sub을 사용하여 여러 소스로부터 데이터에 publish와 subscribe 한 후, Google Cloud Dataflow에 의한 데이터의 파악도 실시간으로 실행할 수 있다. Cloud Pub/Sub을 사용하면 분산 응용 프로그램 구성 요구산의 복잡한 종석성을 줄일 수 있다. Cloud Pub/Sub는 구글의 광고에서 GMail까지 구글 앱에 사용되는 동일한 메시징 기술이라고 한다.

1.3 GCP의 Pub/Sub 특징뛰어난 확장성기본적으로 1초에 1만건의 메시지를 보낼 수 있고, 요청에 따라 100만 건 이상을 보낼 수 있음Push / Poll 전달Subscribers이 인터넷 또는 방화벽 내에 위치 여부에 상관없이 유연한 전달 옵션들을 가짐암호화모든 메시지 데이터는 전송될 때나 저장될 때도 암호화 되어 안전하게 보호복제된 스토리지모든 메시지를 여러 영역의 여러 서버에 저장하여 'at least once' 메시지 전달이 제공되도록 설계메시지 큐1:1 통신 패턴을 지원하기 위해 단일 Topic과 Subscription을 사용하는 확장 가능한 메시지 큐 생성종단 간 응답 확인응용 프로그램 수준에서 명시적인 응답을 확인함으로써 신뢰할 수 있는 응용 프로그…

[ROS] macOS Sierra에 ROS Kinetic 설치하기

ROS 중 Kinetic 버전을 macOS에 설치할 때는 ROS.org 홈페이지를 참고한다. 이 글에서는 설치 과정에서 발생할 수 있는 문제점들에 대해 보충 설명한다.

하지만 아직 ROS.org 홈페이지에서도 작업이 진행 중이라 설치 후 모든 macOS에서 정상 동작을 보장하지 않는다.

설치 참고: http://wiki.ros.org/kinetic/Installation/OSX/Homebrew/Source

1. 설치 준비 먼저 다음 툴들이 설치되어 있거나, 필요시 설치해야 한다.
HomebrewcmakePythonpip
1.1 Homebrew ROS을 macOS에 설치할 때 우선 필요한 툴은 Homebrew이다. Homebrew는 홈페이지를 참고하여 설치한다. (http://brew.sh/)

1.2 cmake
Homebrew가 설치 되었다면 cmake을 설치한다.

$ brew update $ brew install cmake
1.3 python 공식 설치 홈페이지를 참고한다. (http://docs.python-guide.org/en/latest/starting/install/osx/)

Pytone2.7 설치
$ brew install python
Python3 설치
$ brew install python3
1.4 pippip is a package management system used to install and manage software packages written in Python. Many packages can be found in the Python Package Index (PyPI).[4] $ sudo easy_install pip
1.4 ROS 참조들 그리고 ROS 설치에 필요한 참조들을 brew에 설정한다.
$ brew tap ros/deps $ brew tap osrf/simulation # Gazebo, sdformat, and ogre $ brew tap homebrew/versions # VTK5 $ brew tap homebrew/sci…