39 Eigen::VectorXf cartesianVel(posLen + oriLen);
43 Eigen::Vector3f targetPos = trajectory->GetPosition(t);
44 Eigen::Vector3f errPos = targetPos - tcp->getPositionInRootFrame();
45 Eigen::Vector3f posVel = errPos *
KpPos;
48 posVel += trajectory->GetPositionDerivative(t);
55 cartesianVel.block<3, 1>(0, 0) = posVel;
60 Eigen::Matrix3f targetOri = trajectory->GetOrientation(t).toRotationMatrix();
63 Eigen::AngleAxisf aa(oriDir);
64 Eigen::Vector3f errOri = aa.axis() * aa.angle();
65 Eigen::Vector3f oriVel = errOri *
KpOri;
68 oriVel += trajectory->GetOrientationDerivative(t);
75 cartesianVel.block<3, 1>(posLen, 0) = oriVel;
82 Eigen::Vector3f targetPos = trajectory->GetPosition(t);
83 Eigen::Vector3f errPos = targetPos - tcp->getPositionInRootFrame();
89 Eigen::Matrix3f targetOri = trajectory->GetOrientation(t).toRotationMatrix();
92 Eigen::AngleAxisf aa(oriDir);
98 Eigen::Vector3f targetPos = trajectory->GetPosition(t);
99 return targetPos - tcp->getPositionInRootFrame();
105 Eigen::Matrix3f targetOri = trajectory->GetOrientation(t).toRotationMatrix();
108 Eigen::AngleAxisf aa(oriDir);
109 return aa.axis() * aa.angle();