본문 바로가기

분류 전체보기

(43)
Quadruped 공부 하고 싶다. #1 [Quadruped Robot] #1 Inverse Kinematic Analysis Of A Quadruped Robot 프로젝트 초점이 4족 보행으로 옮겨가면서, 새롭게 공부를 시작하는 중이다. 기구학 쪽에 그렇다 할 지식이 없었는데, 일전의 Manipulation을 들으면서 배운 Position, Rotation, Tranformation, Pose 등의 개념을 이해하고 좌표계의 설정과 Matrix 연산에 대해 공부한 경험으로 Inverse Kinematic Analysis Of A Quadruped Robot [1] 논문을 읽는데 큰 어려움이 없었다. [Reference] [1] Muhammed Arif Şen, Veli Bakırcıoğlu, Mete Kalyoncu, "Inverse Kinematic Analysis Of A..
Manipulation 공부 하고 싶다. #7 [Geometric Perception (Part3)] #1 MIT Robotic Manipulation (Lecture 7: Geometric Perception (Part3)) Lecture 7까지 해서 Geometric Perception에 대해 다뤘다. 8부터는 내용을 정리하고 그 이후 방향에 대해 설명하는데, Isaac 시뮬레이션과의 진도를 맞추기 위해서 일부분 건너 띄우고 Sim2Real에 초점을 두고 공부하려고 한다. Manipulation도 너무 하고싶은데, 교수님께서 4족의 training 위주로 요청을 하셔서 후딱 끝내고 다시 돌아올 예정이다. Chapter 9에서 Reinforcement Learning에 대해 나오는데, 기본적인 개념만 나오고 버클리대학의 cs285 Reinfocement Learning 강의를 추천하는 글을 적어놓으셨다..
Manipulation 공부 하고 싶다. #6 [Geometric Perception (Part2)] #1 MIT Robotic Manipulation (Lecture 5: Geometric Perception (Part2)) 현재 7강이랑 8강까지 다 들어봤는데, Reinforcement Learning과 점점 거리가 생기기 시작하는 거 같다. 일단 내용자체는 이전과 동일하게 Point Clouds에 중점이 맞춰져 있고, 그 외에는 다양한 테크닉들을 소개하고 이론적으로 설명하고 있다. 수학적 개념과 Simulation으로 넘어갔을 때 겪은 이상과 현실의 갭과 개선 방안에 대해 주로 강의한다.
시뮬레이션 하고 싶다. #3-2 [Make Custom Gym (Part 2)] #1 Isaac Gym에서 Simulation 만들기 2 [이전 요약] 아직 보이지는 않지만, 우리는 원하는 env를 만들고, 해당 env에 들어가는 Actor 또한 설정하였다. 근데 Simulation도 안 켜지고 아무런 현상 없이 터미널에 주석 몇 개만 나오고 끝이 난다. 그래서 오늘은 직접 Viewer를 설정하여 Simulation을 완성해보자. 6,7. Viewer 만들기 #6-1 그림 1. 에 기재된 바와 같이 첫째로 Viewer를 만든다. #6-2 이후에 Simulation 내에서 키보드와 마우스를 사용하고 싶으면 subscribe_viewer_keyboard_event라는 함수로부터 정의가 필요하다. 공식문서에 따르면 [NVIDIA docs -> API Reference -> Python A..
시뮬레이션 하고 싶다. #3-1 [Make Custom Gym (Part 1)] #1 Isaac Gym에서 Simulation 만들기 본 내용은 NVIDIA에서 제공되는 Programming-Simulation Setup를 참조하여 만들었습니다. 1. Simulation Setup & gymapi (개요) Isaac에서는 비교적 간단한 방법으로 Simulation을 구현할 수 있다. 전체적인 내용을 다루면 글이 길어지기 때문에 Part별로 나눠서 설명하고자 한다. (그림 1.) Isaac의 특징에 대해 설명을 하고 이어서 gymapi의 기능과 어떻게 모델을 넣고, 어떻게 값을 조정하는지 알아본다. 일단 첫 구성은 그림 2. 에서 나타낸 바와 같이 아이작 짐 Sim의 연산을 위해 하드웨어들을 지정하는 과정이 필요하다. 2. Simulation Parameters 설정하기 이후 Simu..
Manipulation 공부 하고 싶다. #5 [Geometric Perception (Part1)] #1 MIT Robotic Manipulation (Lecture 5: Geometric Perception (Part1)) 이번 수업 내용은 굉장히 어려워서 다음 챕터인 Lecture 6까지 듣고 정리하느라 조금 늦었다. 일단 Lecture 5만 다뤄보겠다. 간단하게 설명하면, 간단하지 않다. SLAM의 기술에 대한 설명인데 # I. So many Sensors Chapter 1 에서는 Manipulation에서 사용되는 센서들에 대해 정리하고 이론적으로는 파란 글씨로 어떤 방법들이 존재하는지 설명해준다. # II. Simulation Position & Model Positions' Relationships SLAM의 Corresponding과정에 대해 디테일하게 다룬다. 이전 강의에서 배운 Opti..
Manipulation 공부 하고 싶다. #4 [Basic Pick & Plane 2] #1 MIT Robotic Manipulation (Lecture 4: Basic Pick & Plane 2) 오늘 내용은 생각보다 복잡한 편이었다. 영상 품질도 좋지 못해서 중간중간에 필기와 동행해서 듣는 게 불가능해서 1시간보다 더 오래 영상을 보게 됐다. 그래도 한번 다시 정리하니까 이해하는데 무리는 없었다. 주된 내용은 2번 사진의 Pesudo Inverse의 ||Ax-b||^2와 3번 사진의 Constrain the direction에 나온 J(q) 방정식을 잘 이해하고 쓸 수 있는가? 이것이 중점이었다. 영상에서는 Singularity(특이점)라고 말하면서 특이점이 오는 경우 (기울기 값이 0인 경우, 최소 값의 경우) 속도가 굉장히 커지므로 위험하다. 그래서 2번의 식을 사용하면 조금 더 O..
시뮬레이션 하고 싶다. #2-2 [Environments, Training, and Tips] #1 Isaac Gym (Part 2: Environments, Training, and Tips) 1) Reinforcement Learning 다양한 예시들을 Repository에 모아두시고 링크를 달으시면서 시작하신다. 해당 튜토리얼을 따라 하기 위해 isaacgym 디렉터리에서 Git을 가져왔다. $ git clone https://github.com/Denys88/rl_games GitHub - Denys88/rl_games: RL implementations RL implementations. Contribute to Denys88/rl_games development by creating an account on GitHub. github.com 근데 직접 깔아보니 공식문서를 보면 다른 링크..
시뮬레이션 하고 싶다. #2-1 [Environments, Training, and Tips] #1 Isaac Gym (Part 2: Environments, Training, and Tips) 영상을 참조하여 글을 쓴다. 영상에서는 간단한 예제들을 돌려본다. 일단 나는 3080 ti를 사용하고 cpu는 intel 12900을 사용하는 중이다. (간단한 예제들은 아주 부드럽게 돌아간다.) 우분투는 20.04를 사용하고 있다. 1) 1080 Balls 1080개의 공을 만드는 예제인 듯하다. 카티아와 비슷하게 마우스로 카메라를 컨트롤하는데 Alt 키+왼쪽 마우스를 눌러서 로테이션이 가능하고 마우스 휠키의 드래그로 화면을 이동한다. 영상에서는 여러번 리셋하면서 환경에 대해 설명해준다. 2) joint_monkey 이전에 설치 확인차 사용했던 코드이다. 터미널 창을 보면 여러 가지 DOF(Degree ..
시뮬레이션 하고 싶다. #1 [Install] #1 Isaac Gym (Part 1: Introduction and Getting Started) Manipulation강의를 들으면서 Duke를 통한 Simulation 이해와 조작 방법을 배울 수 있지만, 아무래도 커스텀 모델을 넣고 돌려보고 싶은 상황에서는, 다른 Simulation tool을 사용해야 하지 않을까 싶었다. 그래서 처음엔 Mujoco를 활용하려 했는데, conda 환경에 따른 설치 경로 안내가 생각보다 불편해서 근 3일간 굉장한 고통을 겪었다. (sudo install lib시리즈도 안 먹더라..) 그래서 새로운 환경을 찾고자 여러 곳을 알아본 끝에 PhysX를 기반으로 한, NVIDIA의 Issac Gym을 찾았다. 어떤 부분에서 더 낫다 하는, 객관적인 자료를 찾지는 못했지만 ..