SlideShare a Scribd company logo
1 of 44
Download to read offline
ROS 를 활용한
SLAM과 내비게이션
The 2nd Open Robotics Seminar
표윤석
WWW.OROCA.ORG
Section 10.
2014/12/21
ROSRobot Operating System
ROSRobot Operating System
뭔 말이야?
ㅡㅡ;;
뭐야? OTL...
더 어려워 보이잖아!
ㅡㅡ;;
좀~ 쉽게 갑시다!
길 찾기
어때요?
by Wikimol, CC BY-SA 3.0
길 「명사」
1. 사람이나 동물 또는 자동차 따위가 지나
갈 수 있게 땅 위에 낸 일정한 너비의 공간.
2. 물 위나 공중에서 일정하게 다니는 곳.
3. 걷거나 탈것을 타고 어느 곳으로 가는 노
정(路程).
-국립국어원 표준국어대사전-
Ciaran Griffin, http://www.gettyimages.com
길 「명사」
1. 사람이나 동물 또는 자동차 따위가 지나
갈 수 있게 땅 위에 낸 일정한 너비의 공간.
2. 물 위나 공중에서 일정하게 다니는 곳.
3. 걷거나 탈것을 타고 어느 곳으로 가는 노
정(路程).
-국립국어원 표준국어대사전-
나침반도 없고
지도도 없다면?
http://www.pinterest.com/jerodor/cagaduisimo/
Big Dipper, by Magnus Manske, Public Domain
pixabay.com, CC0
상상해 보세요!
어둠 속 길 찾기
로봇의 길 찾기
(이제부터는 성실히 풀어가 볼게요.)
A에서 B까지
가자!
장애물은
피해서…
무사히 도착!
A에서 B까지
가자!
장애물은
피해서…
무사히 도착!
① 위치: 로봇의 위치 계측/추정하는 기능
② 센싱: 벽, 물체 등의 장애물의 계측하는 기능
③ 지도: 길과 장애물 정보가 담긴 지도
④ 경로: 목적지까지 최적 경로를 계산하고 주행하는 기능
StarGazer Vicon MXEstimote (Beacon)
Kobuki
pixabay.com, CC0
 로봇은 길을 찾아가기 위해 지도가 필요하다!
 지도
 도로와 같은 기반 시설의 경우 디지털 지도 OK!
 병원, 카페, 회사, 가정집의 지도?
 탐사, 붕괴된 위험지역의 지도?
 SLAM
(Simultaneous Localization And Mapping)
지도? 없으면 만들자!
여긴 어디? 지도 만들자같이
https://students.cs.byu.edu/~cs470ta, http://vimeo.com/3423169
pixabay.com, CC0, www.willowgarage.com CC BY 3.0
① 위치 ② 센싱 ③ 지도 ④ 경로
pixabay.com, CC0, www.willowgarage.com CC BY 3.0
① 위치 ② 센싱 ③ 지도 ④ 경로
위치+센싱 → 지도 위치+센싱+지도 → 경로
SLAM Navigation
ROSRobot Operating System
https://www.openslam.org/gmapping.html
$ sudo apt-get install ros-indigo-kobuki* ros-indigo-gmapping ros-indigo-navigation
$ sudo apt-get install ros-indigo-urg-node
$ cd ~/catkin_ws/src
$ git clone https://github.com/oroca/oroca-ros-pkg.git
$ cd ~/catkin_ws && catkin_make
$ roscore
$ roslaunch kobuki_node minimal.launch
$ sudo chmod a+rw /dev/ttyACM0
$ roslaunch kobuki_slam kobuki_slam.launch
$ rosrun rviz rviz -d `rospack find kobuki_slam`/rviz/kobuki_slam.rviz
$ roslaunch kobuki_keyop safe_keyop.launch
$ rosrun map_server map_saver
2차원 점유 격자 지도(OGM, Occupancy Grid Map)
• 흰색 = 로봇이 이동 가능한 자유 영역 (free area)
• 흑색 = 로봇이 이동 불가능한 점유 영역 (occupied area)
• 회색 = 확인되지 않은 미지 영역 (unknown area)
https://mirror.enha.kr/
SLAM, Navigation 은 기본 기능이고
상위에 서비스 또는 모바일 로봇 자체를 하고 싶다고요?
그렇다면 SLAM, Navigation 은 그대로 쓰시고
좀 더 시간을 원하시는 부분에 투자하세요.
세상에 없는 유니크한 당신만의 로봇을 기대해 봅니다.
SLAM, Navigation 을 더 공부하고 싶다고요?
모든 소프트웨어는 오픈 소스 입니다.
마음껏 보고, 이해해 보고, 기능도 추가하며
공부해 보세요. 이보다 더 좋은 교과서는 없습니다.
SLAM, Navigation 은 기본 기능이고
상위에 서비스 또는 모바일 로봇 자체를 하고 싶다고요?
그렇다면 SLAM, Navigation 은 그대로 쓰시고
좀 더 시간을 원하시는 부분에 투자하세요.
세상에 없는 유니크한 당신만의 로봇을 기대해 봅니다.
http://en.wikipedia.org/wiki/Kalman_filter, CC0
S. Thrun, W. Burgard, and D. Fox. Probabilistic Robotics. MIT Press, Cambridge, MA, 2005.
∆𝑡𝑡 � 𝑎𝑎 𝑚𝑚𝑚𝑚𝑚𝑚
∆𝑡𝑡 � 𝑎𝑎 𝑚𝑚𝑚𝑚𝑚𝑚
Dynamic Window
𝑣𝑣
𝜔𝜔
D. Fox, W. Burgard and S. Thrun, The dynamic window approach to collision avoidance, IEEE Robotics & Automation Magazine
Goal
Goal
Goal
SLAM, Navigation 을 더 공부하고 싶다고요?
모든 소프트웨어는 오픈 소스 입니다.
마음껏 보고, 이해해 보고, 기능도 추가하며
공부해 보세요. 이보다 더 좋은 교과서는 없습니다.
SLAM, Navigation 은 기본 기능이고
상위에 서비스 또는 모바일 로봇 자체를 하고 싶다고요?
그렇다면 SLAM, Navigation 은 그대로 쓰시고
좀 더 시간을 원하시는 부분에 투자하세요.
세상에 없는 유니크한 당신만의 로봇을 기대해 봅니다.
Thank you for your attention.
Yoonseok Pyo
passionvirus@gmail.com
www.robotpilot.net
WWW.OROCA.ORG

More Related Content

What's hot

Robotics: Modelling, Planning and Control
Robotics: Modelling, Planning and ControlRobotics: Modelling, Planning and Control
Robotics: Modelling, Planning and ControlCody Ray
 
fusion of Camera and lidar for autonomous driving I
fusion of Camera and lidar for autonomous driving Ifusion of Camera and lidar for autonomous driving I
fusion of Camera and lidar for autonomous driving IYu Huang
 
Lidar for Autonomous Driving II (via Deep Learning)
Lidar for Autonomous Driving II (via Deep Learning)Lidar for Autonomous Driving II (via Deep Learning)
Lidar for Autonomous Driving II (via Deep Learning)Yu Huang
 
Machine Learning in Robotics
Machine Learning in RoboticsMachine Learning in Robotics
Machine Learning in Roboticsijtsrd
 
20160420 ROS 3차 강의 (for 아스라다 팀)
20160420 ROS 3차 강의 (for 아스라다 팀)20160420 ROS 3차 강의 (for 아스라다 팀)
20160420 ROS 3차 강의 (for 아스라다 팀)Yoonseok Pyo
 
RPA (ROBOTIC PROCESS AUTOMATION)
RPA (ROBOTIC PROCESS AUTOMATION)RPA (ROBOTIC PROCESS AUTOMATION)
RPA (ROBOTIC PROCESS AUTOMATION)ssuser9a50211
 
Particle Swarm Optimization by Rajorshi Mukherjee
Particle Swarm Optimization by Rajorshi MukherjeeParticle Swarm Optimization by Rajorshi Mukherjee
Particle Swarm Optimization by Rajorshi MukherjeeRajorshi Mukherjee
 
Particle swarm optimization
Particle swarm optimizationParticle swarm optimization
Particle swarm optimizationAbhishek Agrawal
 
Vanet by Sujata Tiwari
Vanet by Sujata TiwariVanet by Sujata Tiwari
Vanet by Sujata Tiwarirahulpandey510
 
Visual odometry & slam utilizing indoor structured environments
Visual odometry & slam utilizing indoor structured environmentsVisual odometry & slam utilizing indoor structured environments
Visual odometry & slam utilizing indoor structured environmentsNAVER Engineering
 
14 Machine Learning Single Layer Perceptron
14 Machine Learning Single Layer Perceptron14 Machine Learning Single Layer Perceptron
14 Machine Learning Single Layer PerceptronAndres Mendez-Vazquez
 
Automated traffic control system
Automated traffic control systemAutomated traffic control system
Automated traffic control systemLikithe
 

What's hot (20)

Robotics: Modelling, Planning and Control
Robotics: Modelling, Planning and ControlRobotics: Modelling, Planning and Control
Robotics: Modelling, Planning and Control
 
fusion of Camera and lidar for autonomous driving I
fusion of Camera and lidar for autonomous driving Ifusion of Camera and lidar for autonomous driving I
fusion of Camera and lidar for autonomous driving I
 
Lidar for Autonomous Driving II (via Deep Learning)
Lidar for Autonomous Driving II (via Deep Learning)Lidar for Autonomous Driving II (via Deep Learning)
Lidar for Autonomous Driving II (via Deep Learning)
 
Robotics position and orientation
Robotics position and orientationRobotics position and orientation
Robotics position and orientation
 
Robotics Navigation
Robotics NavigationRobotics Navigation
Robotics Navigation
 
Machine Learning in Robotics
Machine Learning in RoboticsMachine Learning in Robotics
Machine Learning in Robotics
 
20160420 ROS 3차 강의 (for 아스라다 팀)
20160420 ROS 3차 강의 (for 아스라다 팀)20160420 ROS 3차 강의 (for 아스라다 팀)
20160420 ROS 3차 강의 (for 아스라다 팀)
 
H사 RPA Usecase
H사 RPA UsecaseH사 RPA Usecase
H사 RPA Usecase
 
RPA (ROBOTIC PROCESS AUTOMATION)
RPA (ROBOTIC PROCESS AUTOMATION)RPA (ROBOTIC PROCESS AUTOMATION)
RPA (ROBOTIC PROCESS AUTOMATION)
 
Particle Swarm Optimization by Rajorshi Mukherjee
Particle Swarm Optimization by Rajorshi MukherjeeParticle Swarm Optimization by Rajorshi Mukherjee
Particle Swarm Optimization by Rajorshi Mukherjee
 
Motion Planning
Motion PlanningMotion Planning
Motion Planning
 
Space robots
Space robotsSpace robots
Space robots
 
Particle swarm optimization
Particle swarm optimizationParticle swarm optimization
Particle swarm optimization
 
Vanet by Sujata Tiwari
Vanet by Sujata TiwariVanet by Sujata Tiwari
Vanet by Sujata Tiwari
 
OpenCV
OpenCVOpenCV
OpenCV
 
Visual odometry & slam utilizing indoor structured environments
Visual odometry & slam utilizing indoor structured environmentsVisual odometry & slam utilizing indoor structured environments
Visual odometry & slam utilizing indoor structured environments
 
14 Machine Learning Single Layer Perceptron
14 Machine Learning Single Layer Perceptron14 Machine Learning Single Layer Perceptron
14 Machine Learning Single Layer Perceptron
 
Automated traffic control system
Automated traffic control systemAutomated traffic control system
Automated traffic control system
 
OpenCV Introduction
OpenCV IntroductionOpenCV Introduction
OpenCV Introduction
 
Robot Classification
Robot ClassificationRobot Classification
Robot Classification
 

More from Yoonseok Pyo

제6회 오픈 로보틱스 세미나 4세션 공학으로 콘텐츠 만들기
제6회 오픈 로보틱스 세미나 4세션 공학으로 콘텐츠 만들기제6회 오픈 로보틱스 세미나 4세션 공학으로 콘텐츠 만들기
제6회 오픈 로보틱스 세미나 4세션 공학으로 콘텐츠 만들기Yoonseok Pyo
 
제6회 오픈 로보틱스 세미나 1세션 임의의 어떤 로봇
제6회 오픈 로보틱스 세미나 1세션 임의의 어떤 로봇제6회 오픈 로보틱스 세미나 1세션 임의의 어떤 로봇
제6회 오픈 로보틱스 세미나 1세션 임의의 어떤 로봇Yoonseok Pyo
 
ROS SERIAL and OpenCR
ROS SERIAL and OpenCRROS SERIAL and OpenCR
ROS SERIAL and OpenCRYoonseok Pyo
 
20160427 ROS 4차 강의 (for 아스라다 팀)
20160427 ROS 4차 강의 (for 아스라다 팀)20160427 ROS 4차 강의 (for 아스라다 팀)
20160427 ROS 4차 강의 (for 아스라다 팀)Yoonseok Pyo
 
20160414 ROS 2차 강의 (for 아스라다 팀)
20160414 ROS 2차 강의 (for 아스라다 팀)20160414 ROS 2차 강의 (for 아스라다 팀)
20160414 ROS 2차 강의 (for 아스라다 팀)Yoonseok Pyo
 
20160406 ROS 1차 강의 (for 아스라다 팀)
20160406 ROS 1차 강의 (for 아스라다 팀)20160406 ROS 1차 강의 (for 아스라다 팀)
20160406 ROS 1차 강의 (for 아스라다 팀)Yoonseok Pyo
 
DYNAMIXEL ROS Package
DYNAMIXEL ROS PackageDYNAMIXEL ROS Package
DYNAMIXEL ROS PackageYoonseok Pyo
 
공돌이에게도 전략은 필요하다
공돌이에게도 전략은 필요하다공돌이에게도 전략은 필요하다
공돌이에게도 전략은 필요하다Yoonseok Pyo
 
BLDC 모터 돌려보기
BLDC 모터 돌려보기BLDC 모터 돌려보기
BLDC 모터 돌려보기Yoonseok Pyo
 
Open Source License
Open Source LicenseOpen Source License
Open Source LicenseYoonseok Pyo
 
4th Open Robotics Seminar
4th Open Robotics Seminar4th Open Robotics Seminar
4th Open Robotics SeminarYoonseok Pyo
 
2nd ROS Tutorial Seminar Section 4
2nd ROS Tutorial Seminar Section 42nd ROS Tutorial Seminar Section 4
2nd ROS Tutorial Seminar Section 4Yoonseok Pyo
 
2nd ROS Tutorial Seminar Section 2
2nd ROS Tutorial Seminar Section 22nd ROS Tutorial Seminar Section 2
2nd ROS Tutorial Seminar Section 2Yoonseok Pyo
 
2nd ROS Tutorial Seminar
2nd ROS Tutorial Seminar2nd ROS Tutorial Seminar
2nd ROS Tutorial SeminarYoonseok Pyo
 
20150708 ros seminar_in_busan_korea
20150708 ros seminar_in_busan_korea20150708 ros seminar_in_busan_korea
20150708 ros seminar_in_busan_koreaYoonseok Pyo
 
제3회 오픈 로보틱스 세미나 (제12세션) : 로봇 암 모델링과 MoveIt! 사용법
제3회 오픈 로보틱스 세미나 (제12세션) : 로봇 암 모델링과 MoveIt! 사용법제3회 오픈 로보틱스 세미나 (제12세션) : 로봇 암 모델링과 MoveIt! 사용법
제3회 오픈 로보틱스 세미나 (제12세션) : 로봇 암 모델링과 MoveIt! 사용법Yoonseok Pyo
 
제3회 오픈 로보틱스 세미나 (제9세션) : ROS를 활용한 SLAM과 내비게이션
제3회 오픈 로보틱스 세미나 (제9세션) : ROS를 활용한 SLAM과 내비게이션제3회 오픈 로보틱스 세미나 (제9세션) : ROS를 활용한 SLAM과 내비게이션
제3회 오픈 로보틱스 세미나 (제9세션) : ROS를 활용한 SLAM과 내비게이션Yoonseok Pyo
 
제3회 오픈 로보틱스 세미나 (제7세션) : 로봇운영체제ROS 개론
제3회 오픈 로보틱스 세미나 (제7세션) : 로봇운영체제ROS 개론제3회 오픈 로보틱스 세미나 (제7세션) : 로봇운영체제ROS 개론
제3회 오픈 로보틱스 세미나 (제7세션) : 로봇운영체제ROS 개론Yoonseok Pyo
 
제2회 오픈 로보틱스 세미나 (제8세션 로봇 운영체제 ROS 개론)
제2회 오픈 로보틱스 세미나 (제8세션 로봇 운영체제 ROS 개론)제2회 오픈 로보틱스 세미나 (제8세션 로봇 운영체제 ROS 개론)
제2회 오픈 로보틱스 세미나 (제8세션 로봇 운영체제 ROS 개론)Yoonseok Pyo
 
제1회 오픈 로보틱스 세미나 (제6세션:로봇 운영체제 ROS 개론)
제1회 오픈 로보틱스 세미나 (제6세션:로봇 운영체제 ROS 개론)제1회 오픈 로보틱스 세미나 (제6세션:로봇 운영체제 ROS 개론)
제1회 오픈 로보틱스 세미나 (제6세션:로봇 운영체제 ROS 개론)Yoonseok Pyo
 

More from Yoonseok Pyo (20)

제6회 오픈 로보틱스 세미나 4세션 공학으로 콘텐츠 만들기
제6회 오픈 로보틱스 세미나 4세션 공학으로 콘텐츠 만들기제6회 오픈 로보틱스 세미나 4세션 공학으로 콘텐츠 만들기
제6회 오픈 로보틱스 세미나 4세션 공학으로 콘텐츠 만들기
 
제6회 오픈 로보틱스 세미나 1세션 임의의 어떤 로봇
제6회 오픈 로보틱스 세미나 1세션 임의의 어떤 로봇제6회 오픈 로보틱스 세미나 1세션 임의의 어떤 로봇
제6회 오픈 로보틱스 세미나 1세션 임의의 어떤 로봇
 
ROS SERIAL and OpenCR
ROS SERIAL and OpenCRROS SERIAL and OpenCR
ROS SERIAL and OpenCR
 
20160427 ROS 4차 강의 (for 아스라다 팀)
20160427 ROS 4차 강의 (for 아스라다 팀)20160427 ROS 4차 강의 (for 아스라다 팀)
20160427 ROS 4차 강의 (for 아스라다 팀)
 
20160414 ROS 2차 강의 (for 아스라다 팀)
20160414 ROS 2차 강의 (for 아스라다 팀)20160414 ROS 2차 강의 (for 아스라다 팀)
20160414 ROS 2차 강의 (for 아스라다 팀)
 
20160406 ROS 1차 강의 (for 아스라다 팀)
20160406 ROS 1차 강의 (for 아스라다 팀)20160406 ROS 1차 강의 (for 아스라다 팀)
20160406 ROS 1차 강의 (for 아스라다 팀)
 
DYNAMIXEL ROS Package
DYNAMIXEL ROS PackageDYNAMIXEL ROS Package
DYNAMIXEL ROS Package
 
공돌이에게도 전략은 필요하다
공돌이에게도 전략은 필요하다공돌이에게도 전략은 필요하다
공돌이에게도 전략은 필요하다
 
BLDC 모터 돌려보기
BLDC 모터 돌려보기BLDC 모터 돌려보기
BLDC 모터 돌려보기
 
Open Source License
Open Source LicenseOpen Source License
Open Source License
 
4th Open Robotics Seminar
4th Open Robotics Seminar4th Open Robotics Seminar
4th Open Robotics Seminar
 
2nd ROS Tutorial Seminar Section 4
2nd ROS Tutorial Seminar Section 42nd ROS Tutorial Seminar Section 4
2nd ROS Tutorial Seminar Section 4
 
2nd ROS Tutorial Seminar Section 2
2nd ROS Tutorial Seminar Section 22nd ROS Tutorial Seminar Section 2
2nd ROS Tutorial Seminar Section 2
 
2nd ROS Tutorial Seminar
2nd ROS Tutorial Seminar2nd ROS Tutorial Seminar
2nd ROS Tutorial Seminar
 
20150708 ros seminar_in_busan_korea
20150708 ros seminar_in_busan_korea20150708 ros seminar_in_busan_korea
20150708 ros seminar_in_busan_korea
 
제3회 오픈 로보틱스 세미나 (제12세션) : 로봇 암 모델링과 MoveIt! 사용법
제3회 오픈 로보틱스 세미나 (제12세션) : 로봇 암 모델링과 MoveIt! 사용법제3회 오픈 로보틱스 세미나 (제12세션) : 로봇 암 모델링과 MoveIt! 사용법
제3회 오픈 로보틱스 세미나 (제12세션) : 로봇 암 모델링과 MoveIt! 사용법
 
제3회 오픈 로보틱스 세미나 (제9세션) : ROS를 활용한 SLAM과 내비게이션
제3회 오픈 로보틱스 세미나 (제9세션) : ROS를 활용한 SLAM과 내비게이션제3회 오픈 로보틱스 세미나 (제9세션) : ROS를 활용한 SLAM과 내비게이션
제3회 오픈 로보틱스 세미나 (제9세션) : ROS를 활용한 SLAM과 내비게이션
 
제3회 오픈 로보틱스 세미나 (제7세션) : 로봇운영체제ROS 개론
제3회 오픈 로보틱스 세미나 (제7세션) : 로봇운영체제ROS 개론제3회 오픈 로보틱스 세미나 (제7세션) : 로봇운영체제ROS 개론
제3회 오픈 로보틱스 세미나 (제7세션) : 로봇운영체제ROS 개론
 
제2회 오픈 로보틱스 세미나 (제8세션 로봇 운영체제 ROS 개론)
제2회 오픈 로보틱스 세미나 (제8세션 로봇 운영체제 ROS 개론)제2회 오픈 로보틱스 세미나 (제8세션 로봇 운영체제 ROS 개론)
제2회 오픈 로보틱스 세미나 (제8세션 로봇 운영체제 ROS 개론)
 
제1회 오픈 로보틱스 세미나 (제6세션:로봇 운영체제 ROS 개론)
제1회 오픈 로보틱스 세미나 (제6세션:로봇 운영체제 ROS 개론)제1회 오픈 로보틱스 세미나 (제6세션:로봇 운영체제 ROS 개론)
제1회 오픈 로보틱스 세미나 (제6세션:로봇 운영체제 ROS 개론)
 

제2회 오픈 로보틱스 세미나 (제10세션 ROS를 활용한 SLAM과 내비게이션)