ROS(6)
-
[ ROS ] ROS를 이해해보자 #3
0. 머리말 지난 번에는 Topic을 주고 받는 Publisher와 Subscriber를 소개하였으며, Topic을 이용한 통신 방식에 대한 특징들도 알아보았다. 이번에는 직접 코드를 적용해서 경험해보도록 하자. 앞선 글에서 짤막한 코드만으로는 Publisher와 Subscriber를 사용하기에 어려울 수 있다고 생각하여 같이 해보는 글을 준비했다. 시작에 앞서, 나는 Ubuntu 18.04, ROS Melodic을 사용했다. 그리고, 이 글은 ROS wiki의 튜토리얼(C++)을 기반으로 진행했다. 1. 다운로드 우선, 아래의 커맨드를 통해 워크 스페이스(e.g. catkin_ws)를 만들고 그 안에 있는 src 폴더에 튜토리얼 패키지를 다운로드해주자. catkin_ws인 워크 스페이스의 이름은 원하는..
2021.04.28 -
[ ROS ] ROS 커맨드 정리
ROS를 사용하면서 다양한 커맨드를 활용하는데, 그중에서 자주 쓰는 커맨드만 정리해봤다. roscd [패키지 이름] : 해당 패키지의 디렉토리로 이동 roscore : ROS master / parameter server / rosout 시작 rosrun [패키지명] [노드명] : 해당 패키지의 해당 노드 실행 roslaunch [패키지명] [런치 파일] : 해당 런치 파일 실행 rostopic list : 현재 존재하는 모든 토픽명 출력 rostopic pub [토픽명] [메세지 타입] [값] : 설정한 이름과 메세지 타입, 값을 가지는 토픽 송신 rostopic echo [토픽명] : 해당 토픽 출력 rosservice call [서비스명] [메세지 타입] [값] : 설정한 이름과 메세지 타입, 값을..
2021.03.19 -
[ ROS ] ROS를 이해해보자 #2
Node들이 서로 Topic을 주고 받을 수 있게 하는 객체들은 Publisher와 Subscriber이다. 0. 머리말 지난 번 'ROS를 이해해보자 #1'에서는 ROS가 어떠한 장점(프로세스 간 송수신)을 지니고 있는지 알아보았다. 개인적으로는, ROS가 왜 쓰이는지 파악하는게 ROS의 정의를 읽는 것보다 ROS를 이해하는데 더 도움된다고 생각한다. 그래서, 첫 글에서는 ROS의 장점에 대해 알아보고, 독자로 하여금 ROS를 왜 사용하는지 자연스럽게 이해시켜주고 싶었다. ROS를 사용해보고 싶은 사람에게, 어떤 목적으로 쓰는 지 알려주면 목적에 맞는 ROS의 도구들을 잘 찾고 활용할 것 같아서.. 나는 무턱대고 인터넷에 돌아다니는 튜토리얼과 형식적인 정의들을 보며 ROS를 시작했으나, 매우 비효율적이..
2021.03.18 -
[ ROS ] ROS를 이해해보자 #1
로봇이 복잡하고 다양한 기능을 수행하기 위해서는, 여러 종류의 데이터와 이를 처리할 수 있는 프로세스들이 필요하다. 0. 머리말 이 글은 ROS가 무엇인지 설명하는 글이다. 초보자들을 위해 쉽게 설명해보겠다. 내가 처음 ROS를 접했을 때, 생소한 용어들로 인해 ROS를 이해하기 어려웠던게 생생하다. ROS를 처음 배우기 시작하는 사람들에게 도움이 되었으면 하는 바람에서 이것저것 써본다. 사실은 내가 아직도 잘 모르고 있는 것 같아서 공부하려고 쓰는거다.. 우선, ROS를 위키백과에서는 뭐라고 설명하는지 보자. 로봇 운영체제 (ROS,Robot Operating System)는 로봇 응용 프로그램을 개발할 때 필요한 하드웨어 추상화, 하위 디바이스 제어, 일반적으로 사용되는 기능의 구현, 프로세스간의 메..
2021.03.17 -
[ ROS ] Point Cloud Library (PCL) 소개
Point Cloud Library (PCL)은 3D Point Cloud를 다양하게 처리할 수 있는 도구를 제공하는 오픈 라이브러리이다. LiDAR (Light Detection and Ranging, 라이다)는 레이저를 이용해 주변 사물의 거리를 측정하는 센서로, 자율주행에 많이 쓰인다. 물론, LiDAR를 쓰지 않고 카메라만을 이용해 자율 주행을 하는 경우도 있다. 앨런 머스크는 라이다 비싸다구 카메라로만... LiDAR 제조 회사로는 Velodyne, Ouster, Sick.. 등등... 얘네 제품 가격보면 그럴만두 하다.. 3D LiDAR로 데이터를 측정하게 되면 3차원 점들의 집합의 형태로 데이터가 출력되는데, 이를 Point Cloud라고 부른다. 2D LiDAR도 있는데, 얘네가 측정한 데..
2021.03.17 -
[ ROS ] ROS 설치 가이드
Ubuntu 18.04에서 ROS Melodic 버전을 설치하는 과정을 간략하게 정리한 글이다. 매번 새로 세팅해줄때마다 귀찮아서... 필요한 부분만 정리하였다... 1. ROS 설치 터미널에 다음의 커맨드를 실행하여 ROS를 설치해준다. 아래의 커맨드는 ROS의 melodic 버전을 설치하는 과정이며, 다른 버전으로는 kinetic, noetic 등이 있다. sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-ke..
2021.03.17