manipulator code정리(2)

폰한량·2022년 7월 19일

manipulator

목록 보기
2/2
post-thumbnail

open_maipulator 코드 안의 헷갈리는 개념, 문법 정리하기


libs/src/kinematics.cpp


1. void SolverUsingCRAndJacobian::setOption(const void *arg){}

  Eigen::MatrixXd jacobian = 
  Eigen::MatrixXd::Identity(6, manipulator->getDOF());
  Eigen::Vector3d joint_axis = Eigen::Vector3d::Zero(3);

Chain-Rule과 Jacobian matrix을 사용한 Kinematics Solver
Chain-Rule(함성함수의 도함수 공식)과 Jacobain matrix(다변수 벡터 함수의 도함수 행렬)는 모두 특정함수의 도함수를 도출해낸다는 공통점이 있다.

2. Eigen::Vector3d::Zero(3), getDOF()

Eigen::MatrixXd jacobian = Eigen::MatrixXd::Identity(6, manipulator->getDOF());
Eigen::Vector3d joint_axis = Eigen::Vector3d::Zero(3);
Eigen::Vector3d position_changed = Eigen::Vector3d::Zero(3);
Eigen::Vector3d orientation_changed = Eigen::Vector3d::Zero(3);
Eigen::VectorXd pose_changed = Eigen::VectorXd::Zero(6);

Zero(Index size) 벡터 -> 크기에 맞게 세로벡터나 가로벡터 형태로 0을 return함

DOF는 degree of freedom의 준말로써 어떤 물체의 상태를 표시할 수 있는 최소한의 독립된 변수의 수를 의미한다. 로봇 공학에서는 로봇의 위치와 자세를 결정하기 위해 필요한 변수들의 최소 갯수를 의미한다.
DOF가 같은 준말인 depth of field(피사계심도)와 혼동하지 말 것.

profile
쓸모 있을 개발자

0개의 댓글