오랜만에 다시 로봇 공학을 공부하려고 한다.
이번에 보는건
로봇 공학 알고리즘을 파이썬으로 구현한 오픈소스로
https://atsushisakai.github.io/PythonRobotics/
위 링크에서 다운받아 사용하면 되고
https://pythonrobotics.readthedocs.io/en/latest/modules/appendix.html
이 다큐먼트를 참고하면서 내용을 정리해나가려고한다.
지난번에살펴본 소형 무인 비행체는 비행체을 수학적으로 모델링하고 매트랩, 시뮬링크로 제어하는 과정이었다면
이번에는 확률론, 필터, 선형대수 등을 이용해서
실제 로봇에 사용되는 알고리즘들을 학습해 나가는 과정이 된다.
그동안 로봇 공학을 공부할때 쓰런의 probabilisitc robotics 위주로 학습하였지만
의사 코드와 설명을 봐도 이해하기 힘든 점이 많았고,
매트랩으로 구현 한 코드들이 사용하기 되게 불편했었던것 같았다.
마지막으로 봤을때 겨우 fast slam까지는 어떻게든 이해하고 보긴했지만 그리드나 레이케스팅, 그리고 스램 이후 파트도
진도 나가긴 해야하는데, 아무리 slam kr이나 다른 분들의 자료를 정리해나가면서 봤지만 잘 이해하기가 힘들더라
이번에는 쓰런의 책이 아닌 파이선 로보틱스로 시작하려고 한다.
이 오픈소스는
자율주행에 주로 사용되는 로봇 공학 알고리즘들의 모음으로
특징
1. 각 알고리즘들의 기본 원리를 이해하기 쉽게 작성하였고
2. 자주 사용하는 알고리즘들로 이루어져있으며
3. 의존관계를 최소화 시켰다.
자세한 내용들은 다음의 논문에 서술했다고 한다.
[1808.10703] PythonRobotics: a Python code collection of robotics algorithms
요구사항
- python 3.8.x
- numpy
- scipy
- matplotlib
- pandas
- cvxpy
여기서 사용하는 알고리즘들은 크게 다음과 같이 정리할수 있겠다.
1. localization 위치 추정
2. mapping 지도 작성
3. slam 동시적 위치 추정 및 지도 작성
4. path planing 경로 계획
5. path trackking 경로 추종
6. arm navigation 매니퓰레이터 제어
7. aerial navigation 항공 비행
우선 다큐먼트 사이트에서 칼만 필터 기초 부분부터 정리해보려고 하는데
베이즈 필터를 공부할때마다 식겁한 적이 많았다.
https://pythonrobotics.readthedocs.io/en/latest/modules/appendix.html
쓰런 책에서 가장 먼저 나오는 위치 추정의 원리를 나타내는 그림인데
여전히 belief distribution 신뢰도 분포 개념이 이해될것 같으면서도 아닌 오락가락한게 지긋지긋하게 나온다.
'로봇 > 로봇' 카테고리의 다른 글
칼만, 베이즈 필터 - 파티클 필터 개요와 몬테카를로 방법 (0) | 2020.06.20 |
---|---|
파이썬 로보틱스 - 위치추정, 확장 칼만 필터 (0) | 2020.06.20 |
칼만과 베이즈 필터 in python (0) | 2020.06.19 |
파이썬 로보틱스 - 칼만 필터 기초 파트 2 (0) | 2020.06.19 |
파이썬 로보틱스 - 칼만 필터 기초 파트 1 (0) | 2020.06.18 |