#include <kuka_ikac.h>
Public Member Functions | |
void | ikPub (void) |
KukaIKAC () | |
Private Member Functions | |
void | basicsols (Eigen::MatrixXd qsol, Eigen::MatrixXd &qaux, Eigen::VectorXd sol) |
void | bestsol (Eigen::MatrixXd qsol, Eigen::VectorXd sol, Eigen::VectorXd qref, Eigen::VectorXd &q, double &potq) |
void | DHmatrix (double alpha, double a, double d, double &theta, Eigen::MatrixXd &T) |
void | exactikine (Eigen::MatrixXd T0, double q10, Eigen::VectorXd cjoints, Eigen::MatrixXd &qsol, Eigen::VectorXd &sol) |
void | filtersols (Eigen::MatrixXd qsol, Eigen::VectorXd &sol) |
void | getq1 (Eigen::VectorXd cjoints, float i, double &q10) |
bool | ik (std::vector< double > pose, std::vector< double > currentjoints, std::vector< double > &joints) |
void | initialelbows (Eigen::VectorXd q, Eigen::MatrixXd T0, Eigen::VectorXd &PJ) |
void | joint_states_callback (const sensor_msgs::JointState::ConstPtr &msg) |
bool | kukaikCallback (iri_wam_common_msgs::wamInverseKinematics::Request &req, iri_wam_common_msgs::wamInverseKinematics::Response &res) |
bool | kukaikCallbackFromPose (iri_wam_common_msgs::wamInverseKinematicsFromPose::Request &req, iri_wam_common_msgs::wamInverseKinematicsFromPose::Response &res) |
void | optimizesol (Eigen::MatrixXd q, Eigen::MatrixXd T0, Eigen::VectorXd &qbest, double &potq, Eigen::VectorXd qref) |
double | pi2pi (double x) |
void | potentialfunction (Eigen::VectorXd qref, Eigen::VectorXd &q, double &potq) |
void | skewop (Eigen::Matrix3d &M, Eigen::Vector3d v) |
void | soltrig (double a, double b, double c, Eigen::MatrixXd &q2sol2) |
void | sphericalikine (Eigen::MatrixXd T0, Eigen::MatrixXd T4, Eigen::VectorXd cjoints, Eigen::Vector2d &q5, Eigen::Vector2d &q6, Eigen::Vector2d &q7) |
Private Attributes | |
int | checksol_ |
std::vector< double > | currentjoints |
std::vector< double > | currentjoints_ |
double | d1 |
double | d3 |
double | d5 |
double | d7 |
Eigen::MatrixXd | DHparam_ |
sensor_msgs::JointState | ik_joints_msg |
ros::Publisher | ik_joints_publisher_ |
int | IMAX_ |
ros::ServiceClient | joint_move_client |
iri_wam_common_msgs::joints_move | joint_move_srv |
ros::Subscriber | joint_states_subscriber |
Eigen::VectorXd | joints_ |
ros::ServiceServer | kukaik_server |
ros::ServiceServer | kukaik_server_fromPose |
tf::TransformListener | listener_ |
ros::NodeHandle | nh_ |
Eigen::MatrixXd | Qlim_ |
double | step_ |
tf::StampedTransform | tcp_H_wam7_ |
Definition at line 26 of file kuka_ikac.h.
Definition at line 7 of file kuka_ikac.cpp.
void KukaIKAC::basicsols | ( | Eigen::MatrixXd | qsol, |
Eigen::MatrixXd & | qaux, | ||
Eigen::VectorXd | sol | ||
) | [private] |
Definition at line 445 of file kuka_ikac.cpp.
void KukaIKAC::bestsol | ( | Eigen::MatrixXd | qsol, |
Eigen::VectorXd | sol, | ||
Eigen::VectorXd | qref, | ||
Eigen::VectorXd & | q, | ||
double & | potq | ||
) | [private] |
Definition at line 604 of file kuka_ikac.cpp.
void KukaIKAC::DHmatrix | ( | double | alpha, |
double | a, | ||
double | d, | ||
double & | theta, | ||
Eigen::MatrixXd & | T | ||
) | [private] |
Definition at line 342 of file kuka_ikac.cpp.
void KukaIKAC::exactikine | ( | Eigen::MatrixXd | T0, |
double | q10, | ||
Eigen::VectorXd | cjoints, | ||
Eigen::MatrixXd & | qsol, | ||
Eigen::VectorXd & | sol | ||
) | [private] |
Definition at line 364 of file kuka_ikac.cpp.
void KukaIKAC::filtersols | ( | Eigen::MatrixXd | qsol, |
Eigen::VectorXd & | sol | ||
) | [private] |
Definition at line 328 of file kuka_ikac.cpp.
void KukaIKAC::getq1 | ( | Eigen::VectorXd | cjoints, |
float | i, | ||
double & | q10 | ||
) | [private] |
Definition at line 585 of file kuka_ikac.cpp.
bool KukaIKAC::ik | ( | std::vector< double > | pose, |
std::vector< double > | currentjoints, | ||
std::vector< double > & | joints | ||
) | [private] |
Definition at line 224 of file kuka_ikac.cpp.
void KukaIKAC::ikPub | ( | void | ) |
Definition at line 84 of file kuka_ikac.cpp.
void KukaIKAC::initialelbows | ( | Eigen::VectorXd | q, |
Eigen::MatrixXd | T0, | ||
Eigen::VectorXd & | PJ | ||
) | [private] |
Definition at line 696 of file kuka_ikac.cpp.
void KukaIKAC::joint_states_callback | ( | const sensor_msgs::JointState::ConstPtr & | msg | ) | [private] |
Definition at line 93 of file kuka_ikac.cpp.
bool KukaIKAC::kukaikCallback | ( | iri_wam_common_msgs::wamInverseKinematics::Request & | req, |
iri_wam_common_msgs::wamInverseKinematics::Response & | res | ||
) | [private] |
Definition at line 167 of file kuka_ikac.cpp.
bool KukaIKAC::kukaikCallbackFromPose | ( | iri_wam_common_msgs::wamInverseKinematicsFromPose::Request & | req, |
iri_wam_common_msgs::wamInverseKinematicsFromPose::Response & | res | ||
) | [private] |
Definition at line 101 of file kuka_ikac.cpp.
void KukaIKAC::optimizesol | ( | Eigen::MatrixXd | q, |
Eigen::MatrixXd | T0, | ||
Eigen::VectorXd & | qbest, | ||
double & | potq, | ||
Eigen::VectorXd | qref | ||
) | [private] |
Definition at line 478 of file kuka_ikac.cpp.
double KukaIKAC::pi2pi | ( | double | x | ) | [private] |
Definition at line 589 of file kuka_ikac.cpp.
void KukaIKAC::potentialfunction | ( | Eigen::VectorXd | qref, |
Eigen::VectorXd & | q, | ||
double & | potq | ||
) | [private] |
Definition at line 624 of file kuka_ikac.cpp.
void KukaIKAC::skewop | ( | Eigen::Matrix3d & | M, |
Eigen::Vector3d | v | ||
) | [private] |
Definition at line 575 of file kuka_ikac.cpp.
void KukaIKAC::soltrig | ( | double | a, |
double | b, | ||
double | c, | ||
Eigen::MatrixXd & | q2sol2 | ||
) | [private] |
Definition at line 715 of file kuka_ikac.cpp.
void KukaIKAC::sphericalikine | ( | Eigen::MatrixXd | T0, |
Eigen::MatrixXd | T4, | ||
Eigen::VectorXd | cjoints, | ||
Eigen::Vector2d & | q5, | ||
Eigen::Vector2d & | q6, | ||
Eigen::Vector2d & | q7 | ||
) | [private] |
Definition at line 656 of file kuka_ikac.cpp.
int KukaIKAC::checksol_ [private] |
Definition at line 31 of file kuka_ikac.h.
std::vector<double> KukaIKAC::currentjoints [private] |
Definition at line 32 of file kuka_ikac.h.
std::vector<double> KukaIKAC::currentjoints_ [private] |
Definition at line 47 of file kuka_ikac.h.
double KukaIKAC::d1 [private] |
Definition at line 28 of file kuka_ikac.h.
double KukaIKAC::d3 [private] |
Definition at line 28 of file kuka_ikac.h.
double KukaIKAC::d5 [private] |
Definition at line 28 of file kuka_ikac.h.
double KukaIKAC::d7 [private] |
Definition at line 28 of file kuka_ikac.h.
Eigen::MatrixXd KukaIKAC::DHparam_ [private] |
Definition at line 29 of file kuka_ikac.h.
sensor_msgs::JointState KukaIKAC::ik_joints_msg [private] |
Definition at line 40 of file kuka_ikac.h.
ros::Publisher KukaIKAC::ik_joints_publisher_ [private] |
Definition at line 41 of file kuka_ikac.h.
int KukaIKAC::IMAX_ [private] |
Definition at line 31 of file kuka_ikac.h.
Definition at line 56 of file kuka_ikac.h.
iri_wam_common_msgs::joints_move KukaIKAC::joint_move_srv [private] |
Definition at line 57 of file kuka_ikac.h.
Definition at line 45 of file kuka_ikac.h.
Eigen::VectorXd KukaIKAC::joints_ [private] |
Definition at line 42 of file kuka_ikac.h.
ros::ServiceServer KukaIKAC::kukaik_server [private] |
Definition at line 52 of file kuka_ikac.h.
Definition at line 50 of file kuka_ikac.h.
tf::TransformListener KukaIKAC::listener_ [private] |
Definition at line 36 of file kuka_ikac.h.
ros::NodeHandle KukaIKAC::nh_ [private] |
Definition at line 34 of file kuka_ikac.h.
Eigen::MatrixXd KukaIKAC::Qlim_ [private] |
Definition at line 30 of file kuka_ikac.h.
double KukaIKAC::step_ [private] |
Definition at line 28 of file kuka_ikac.h.
tf::StampedTransform KukaIKAC::tcp_H_wam7_ [private] |
Definition at line 37 of file kuka_ikac.h.