KDL 1.5.1
Loading...
Searching...
No Matches
chainiksolverpos_nr_jl.hpp
Go to the documentation of this file.
1// Copyright (C) 2007-2008 Ruben Smits <ruben dot smits at mech dot kuleuven dot be>
2// Copyright (C) 2008 Mikael Mayer
3// Copyright (C) 2008 Julia Jesse
4
5// Version: 1.0
6// Author: Ruben Smits <ruben dot smits at mech dot kuleuven dot be>
7// Maintainer: Ruben Smits <ruben dot smits at mech dot kuleuven dot be>
8// URL: http://www.orocos.org/kdl
9
10// This library is free software; you can redistribute it and/or
11// modify it under the terms of the GNU Lesser General Public
12// License as published by the Free Software Foundation; either
13// version 2.1 of the License, or (at your option) any later version.
14
15// This library is distributed in the hope that it will be useful,
16// but WITHOUT ANY WARRANTY; without even the implied warranty of
17// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18// Lesser General Public License for more details.
19
20// You should have received a copy of the GNU Lesser General Public
21// License along with this library; if not, write to the Free Software
22// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
23
24#ifndef KDLCHAINIKSOLVERPOS_NR_JL_HPP
25#define KDLCHAINIKSOLVERPOS_NR_JL_HPP
26
27#include "chainiksolver.hpp"
28#include "chainfksolver.hpp"
29
30namespace KDL {
31
41 {
42 public:
43
44 static const int E_IKSOLVERVEL_FAILED = -100;
45 static const int E_FKSOLVERPOS_FAILED = -101;
46
65
82
84
85
95 virtual int CartToJnt(const JntArray& q_init, const Frame& p_in, JntArray& q_out);
96
103 int setJointLimits(const JntArray& q_min, const JntArray& q_max);
104
106 virtual void updateInternalDataStructures();
107
109 const char* strError(const int error) const;
110
111 private:
112 const Chain& chain;
113 unsigned int nj;
119 unsigned int maxiter;
120 double eps;
121
124
125 };
126
127}
128
129#endif
This abstract class encapsulates a solver for the forward position kinematics for a KDL::Chain.
Definition: chainfksolver.hpp:41
Implementation of a general inverse position kinematics algorithm based on Newton-Raphson iterations ...
Definition: chainiksolverpos_nr_jl.hpp:41
virtual int CartToJnt(const JntArray &q_init, const Frame &p_in, JntArray &q_out)
Calculates the joint values that correspond to the input pose given an initial guess.
Definition: chainiksolverpos_nr_jl.cpp:62
JntArray q_min
Definition: chainiksolverpos_nr_jl.hpp:114
int setJointLimits(const JntArray &q_min, const JntArray &q_max)
Function to set the joint limits.
Definition: chainiksolverpos_nr_jl.cpp:103
ChainIkSolverVel & iksolver
Definition: chainiksolverpos_nr_jl.hpp:116
JntArray delta_q
Definition: chainiksolverpos_nr_jl.hpp:118
~ChainIkSolverPos_NR_JL()
Definition: chainiksolverpos_nr_jl.cpp:111
unsigned int nj
Definition: chainiksolverpos_nr_jl.hpp:113
static const int E_FKSOLVERPOS_FAILED
Child IK solver vel failed.
Definition: chainiksolverpos_nr_jl.hpp:45
JntArray q_max
Definition: chainiksolverpos_nr_jl.hpp:115
unsigned int maxiter
Definition: chainiksolverpos_nr_jl.hpp:119
Twist delta_twist
Definition: chainiksolverpos_nr_jl.hpp:123
virtual void updateInternalDataStructures()
Update the internal data structures.
Definition: chainiksolverpos_nr_jl.cpp:53
Frame f
Definition: chainiksolverpos_nr_jl.hpp:122
const char * strError(const int error) const
Return a description of the latest error.
Definition: chainiksolverpos_nr_jl.cpp:115
static const int E_IKSOLVERVEL_FAILED
Definition: chainiksolverpos_nr_jl.hpp:44
double eps
Definition: chainiksolverpos_nr_jl.hpp:120
const Chain & chain
Definition: chainiksolverpos_nr_jl.hpp:112
ChainFkSolverPos & fksolver
Definition: chainiksolverpos_nr_jl.hpp:117
Definition: chainiksolver.hpp:42
Definition: chainiksolver.hpp:66
Definition: chain.hpp:35
Definition: frames.hpp:570
Definition: jntarray.hpp:70
int error
Latest error, initialized to E_NOERROR in constructor.
Definition: solveri.hpp:149
represents both translational and rotational velocities.
Definition: frames.hpp:720
Definition: articulatedbodyinertia.cpp:26