[Physical AI W2D2] 7/7 — MoveIt 경로계획 RViz2 시각화 실습(+ 오류 점검 7종)
·
피지컬AI
[Physical AI W2D2 · 7/7]실제 move_group을 띄우지 않고, MoveIt 경로 계획의 핵심 개념(Planning Frame·좌표계 체인·End-Effector·Target Pose·Planned Trajectory·Motion Execution)을 ROS 2 TF와 RViz2 Marker로 직접 시각화한다. 7관절 좌표계 체인을 TF로 발행하고, 전진기구학으로 tool0 위치를 계산해 화면에서 로봇 팔이 시작 자세와 목표 자세 사이를 반복 이동하는 것을 확인한다. 마지막에 실습 중 자주 겪는 오류 7종을 증상→원인→해결로 정리한다.이 글에서 직접 해보는 것본 주제 전용 작업공간 ~/moveit_planning_ws + 패키지 moveit_planning_demo 생성로봇 팔 좌표계..
[Physical AI W2D2] 6/7 — MoveIt 개념 ②: 계획 기법·Move Group·ROS 2 Control
·
피지컬AI
[Physical AI W2D2 · 6/7]5편에서 MoveIt의 재료(Planning Group·Scene·Collision·Trajectory)를 잡았다면, 이번 글은 그 재료로 "어떻게 길을 찾고, 누가 전체를 지휘하며, 그 결과를 실제 로봇이 어떻게 움직이는가"를 다룬다. Joint/Pose/Cartesian 계획 기법, 샘플링 기반 플래너(OMPL), Move Group Node, 그리고 MoveIt과 ROS 2 Control의 연결까지 개념으로 정리한다.이 글에서 잡는 개념계획 기법 3가지 차이 — Joint Space / Pose Goal / Cartesian 무엇을 기준으로 길을 찾는가샘플링 기반 플래너(RRT·RRTConnect 등 OMPL 류)가 고차원 로봇 팔 문제를 푸는 방식Goal..
[Physical AI W2D2] 5/7 — MoveIt 개념 ①: 경로계획 핵심(Planning Group·Scene·Collision·Trajectory)
·
피지컬AI
[Physical AI W2D2 · 5/7]정운동학·역운동학을 직접 풀어도 실제 로봇 팔은 못 움직인다 — 충돌·관절제한·작업공간·궤적까지 함께 풀어야 하기 때문이다. MoveIt은 이 모든 걸 하나의 구조로 처리하는 모션 플래닝 프레임워크다. 이 글에서 MoveIt이 무엇이고 왜 필요한지, 그리고 경로계획의 핵심 용어(Planning Group·Planning Scene·Collision·Path vs Trajectory·Joint Space)를 개념부터 잡는다.이 글에서 잡는 개념FK/IK만으로는 왜 부족한가 — MoveIt이 왜 필요한가MoveIt이 하는 일: 경로 계획·충돌 검사·역운동학·궤적 생성·제어기 연동Planning Group·End Effector·Robot State·Planning ..
[Physical AI W2D2] 4/7 — 계산 결과를 RViz2로 시각화(FK/IK → 화면)
·
피지컬AI
[Physical AI W2D2 · 4/7]3편에서 Python으로 계산한 2축 로봇 팔의 정운동학·역운동학 결과를, 이번엔 ROS2 노드로 다시 계산해 RViz2 화면에 띄운다. /tf로 world→base_link→link1→link2→tool0 좌표계를, MarkerArray로 링크·관절·목표점·작업공간을 그려, Python 숫자 결과와 화면 위치가 정확히 일치함을 눈으로 검증한다.이 글에서 직접 해보는 것1. ROS2 작업공간·패키지(two_link_kinematics_demo) 생성2. .rviz 설정 파일로 Fixed Frame world + Grid·TF·MarkerArray Display 고정3. two_link_kinematics_visualizer.py — FK/IK를 계산해 /tf +..
[Physical AI W2D2] 3/7 — 정운동학·역운동학 Python 실습(직접 계산·검증·관절제한·특이점)
·
피지컬AI
[Physical AI W2D2 · 3/7]1·2편에서 잡은 정운동학·역운동학·작업공간·자코비안 개념을 GCP VM 터미널에서 Python으로 직접 계산해 봅니다. 2축 평면 로봇 팔로 FK·IK를 구현하고, 두 개의 해(elbow-up/down)·도달 불가능한 위치·관절 제한·특이점까지 7개의 .py 파일로 눈으로 확인합니다.이 글에서 직접 해보는 것GCP VM 터미널에 Python 실습 환경 준비(~/robot_kinematics_lab)정운동학: 관절각 θ1·θ2 → 말단 위치 x·y 계산(forward_kinematics.py)역운동학: 목표 위치 x·y → 관절각 θ1·θ2 계산, 두 개의 해(elbow-up/down) 확인(inverse_kinematics.py)작업 공간: 도달 가능/불가능 ..
[Physical AI W2D2] 2/7 — 운동학 개념 ②: 역운동학·작업공간·자코비안·특이점
·
피지컬AI
[Physical AI W2D2 · 2/7]1편에서 "관절값 → 손끝 위치"(정운동학)를 풀었다면, 이번엔 거꾸로 "손끝 목표 위치 → 관절값"을 구하는 역운동학을 다룬다. 역운동학이 왜 어려운지(해가 없거나·여럿이거나·무한하거나·특이점), 작업 공간·자코비안·특이점 개념을 입문자 눈높이로 잡는다.이 글에서 잡는 개념역운동학(IK) 이란 — "목표 위치 → 관절값"을 거꾸로 푸는 문제역운동학이 왜 어려운가 — 해가 없거나·여러 개거나·무한히 많거나·특이점·관절 제한2축 평면 로봇 팔의 역운동학 수식(코사인 법칙 → θ2, atan2 → θ1)과 elbow-up/down작업 공간과 관절 공간 — 로봇이 도달할 수 있는 영역, 두 공간을 오가는 제어자코비안(속도 관계)과 특이점(능력을 잃는 자세)을 직관적으..
[Physical AI W2D2] 1/7 — 운동학 개념 ①: 정운동학(링크·관절·자유도·2축 팔·동차변환행렬)
·
피지컬AI
[Physical AI W2D2 · 1/7]로봇 팔의 관절 각도를 알 때 손끝이 공간 어디에 있는지 계산하는 것이 정운동학(Forward Kinematics)이다. 링크·관절·자유도·말단 장치 같은 기본 구성 요소부터, 2축 평면 로봇 팔의 삼각함수 공식, 그리고 회전과 이동을 한 번에 담는 동차변환행렬까지 개념을 잡는다. W2D1에서 다룬 좌표계·TF가 왜 필요했는지 여기서 비로소 연결된다.이 글에서 잡는 개념정운동학(Forward Kinematics) 이란 무엇인가 — "관절값 → 말단 장치 위치·자세" 계산로봇의 기본 구성 요소: 링크 · 관절 · 자유도 · 말단 장치2축 평면 로봇 팔의 정운동학 공식을 삼각함수로 직접 유도회전과 이동을 하나로 묶는 동차변환행렬과 그 연속 곱이 정운동학의 핵심 구조..
[Physical AI W2D1] 6/6 — 좌표 변환 실습: Python 변환 + TF Publisher + RViz
·
피지컬AI
[Physical AI W2D1 · 6/6]4·5편의 동차 변환 행렬을 손으로 굳힌다. NumPy로 2D·3D 변환과 역변환, 좌표계 체인을 직접 계산해 결과를 눈으로 확인하고, TF Publisher 노드를 만들어 base_link→laser·camera_link, odom→base_link를 발행한 뒤 tf2_echo와 RViz로 좌표축을 검증한다.이 글에서 직접 해보는 것1. NumPy로 2D 동차 변환·역변환, 3D 변환, 좌표계 체인 계산2. 계산 결과를 4·5편의 손계산과 대조(앞 1m → odom (2,2), laser 1m → base 1.25·0.15)3. TF Publisher 노드(coordinate_tf_publisher.py) — RPY→Quaternion + static/dyna..