Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • ostasse/sot-core
  • gsaurel/sot-core
  • stack-of-tasks/sot-core
3 results
Show changes
Showing
with 617 additions and 543 deletions
/**
\defgroup Filters Filters
*/
/** \page codeorganization Code organization
\section sec_organization Organization of the code
The code is based on the <c>dynamic-graph</c> package, which provides the
framework on which sot-core relies. Hence most of the code in <c>sot-core</c>
consists of classes that derive from dynamic_graph::Entity.
These entities are usually
compiled and linked in their own dynamic library, as a python module
Aside from the python modules, this package installs a core library libsot-core,
that provides functions and code common to all modules. All python modules
developed here link with libsot-core. For example, common mathematical
entities, definitions and functions are in the core library.
See \ref sot_core_base for a list of what's in this code base.
This library implements
\li A solver for the control law using tasks and features: the stack of tasks
\li The framework of Tasks and Features, as defined in \cite Mansard2007, that
\li Base classes for working with tasks and features, such as special matrices
(rotation, twist) and vectors (quaternions, etc.)
\li A basic C++ "machinery", the \ref factory, that "makes things work"
*/
/**
\page subp_operators Operators on signals
\section subp_unitary_op Unitary Algebraic operators
\subsection ssubp_unitary_op Vector selector
This entity output a vector remapping an input vector
\f${\bf v}_{in}=[v_0,v_1,\cdots,v_n]\f$.
It is realized by specifying bounds such as \f$({[i,j],[k,l]})\f$,
then the output vector will be the contanetion of the
intervals extracted from the input vector:
\f${\bf v}_{out}=[v_i,v_{i+1},\cdots,v_{j-1},v_{j},v_{k},
v_{k+1},\cdots,v_{l-1},v_l]\f$
For instance if we have an input vector
such that:
\code
1
2
3
4
5
6
7
9
10
\endcode
then specifying the bounds \f$(3,5)\f$ and \f$( 7,10\f$) will gives
the following output vector
\code
3
4
7
8
9
\endcode
*/
/* Olivier Stasse
* CNRS, LAAS 2019
*/
/** \page page_featuredoc Features
The general definition of feature is provided by
dynamicgraph::sot::FeatureAbstract .
The list of features that are provided are:
<ul>
<li> Feature1D : \f$ L_2 \f$ norm of \f$ e(t)\f$
dynamicgraph::sot::Feature1D</li>
<li> FeatureGeneric : Externalisation of the Feature computation
dynamicgraph::sot::FeatureGeneric </li>
<li> FeatureJointLimits : Distance to the joint limits and its Jacobian
dynamicgraph::sot::FeatureJointLimits </li>
<li> FeatureLineDistance : Regulate the distance of a line through a body
to a reference point
dynamicgraph::sot::FeatureLineDistance </li>
<li> FeaturePoint6d : Regulate the distance from a pose on a body to
a point reference.
dynamicgraph::sot::FeaturePoint6d </li>
<li> FeaturePoint6dRelative : Regulate a relative distance between
two bodies.
dynamicgraph::sot::FeatuePoint6dRelative </li>
<li> FeaturePosture : Regulate the posture between the current one
and a reference.
dynamicgraph::sot::FeaturePosture </li>
<li> FeatureReferenceHelper : dynamicgraph::sot::FeatureReferenceHelper
</li>
<li> FeatureTask : dynamicgraph::sot::FeatureTask </li>
<li> FeatureVector3 : dynamicgraph::sot::FeatureVector3 </li>
<li> FeatureVisualPoint : : dynamicgraph::sot::FeatureVisualPoint </li>
</ul>
*/
/** \page page_RequirementsInstallation Requirements and Installation
\section sec_requirements Requirements
This package should be compiled and installed with cmake.
This library is based on several packages:
\li <c>dynamic-graph</c> (https://github.com/stack-of-tasks/dynamic-graph)
\li <c>eigen</c>
\li <c>boost</c>
\li <c>pthread</c>
\li <c>python</c>
\li <c>pinocchio</c> (https://github.com/stack-of-tasks/pinocchio)
Their presence will be checked with the use of pkg-config.
\section sec_installation Installation
\subsection subsec_ins_binaries From binary package
The recommended way to install sot-core is to use
<a href="https://robotpkg.openrobots.org/install.html">robotpkg</a> and its
<a href="https://robotpkg.openrobots.org/robotpkg-wip.html">wip
extension</a>.
A short and quick way to get it on 16.04 LTS is to do the following:
\verbatim
sudo tee /etc/apt/sources.list.d/robotpkg.list <<EOF
deb [arch=amd64] http://robotpkg.openrobots.org/wip/packages/debian/pub kinetic
robotpkg deb [arch=amd64] http://robotpkg.openrobots.org/packages/debian/pub
kinetic robotpkg EOF \endverbatim This created a file to add robotpkg and
robotpkg/wip as apt repositories. To identify the packages from this repository
the server key must be added: \verbatim curl
http://robotpkg.openrobots.org/packages/debian/robotpkg.key | sudo apt-key add -
\endverbatim
The list of available packages is provided through:
\verbatim
sudo apt-get update
\endverbatim
Finally the package is installed with:
\verbatim
sudo apt-get install robotpkg-sot-core-v3
\endverbatim
\subsection subsec_ins_sourcefiles From source files
Although not recommended you can install the repository
after installing all the dependencies and type:
\verbatim
mkdir _build
cd _build
cmake .. -DCMAKE_BUILD_TYPE=RELEASE
make -j 8
\endverbatim
To build the documentation
\verbatim
make doc
\endverbatim
To test the code
\verbatim
make test
\endverbatim
*/
/* Olivier Stasse
* CNRS, LAAS 2019
*/
/** \namespace dynamicgraph::sot
This is the namespace for a subset of helperd classes related to the
implementation of the Stack-Of-Tasks.
*/
/** \mainpage
\section sec_intro Introduction
This library implements a modular architecture to test and experiment
controllers in the Stack of Tasks Framework as defined in \cite Mansard2007.
It is specifically targeted to retain real-time performance while
having high level software capabilities, like plugins and python scripting.
The package includes the following functionnalities:
<ul>
<li> A parameter server object to register and collect information on your
robot (see \subpage page_parameter_server) </li>
<li> From the internal SoT point of view a class called Device which is
allowing a direct interaction with your robot.</li>
<li> From the extern SoT point of view a class which makes the connection
either with the hardware or with a simulator </li>
<li> A full kinematic engine implemented in an incremental manner.</li>
</ul>
\subpage page_RequirementsInstallation
\subpage page_featuredoc
\subpage page_sot
\subsection tasks Tasks
Each task implements a specific controller which
can be a free space task, visual servoing, a constraint,
and so on ... a task is mainly defined by the feature it is
handling and its gain.
After being defined, tasks are pushed in the Stack of Tasks which then
calculates a control law as explained in \cite Mansard2007.
See documentation of class dynamicgraph::sot::TaskAbstract for more information.
@defgroup sot_core_base Sot-core library (libsot-core.[dll|so])
For developers, this is the core library that your project has to
be linked with. It defines the related algorithms and entities
using the dynamic-graph framework.
\section presento What's in the box?
All the C++ code is placed in the namespace "dynamic_graph::sot". In the core
library, the following classes are present:
\subsection subsec_sot Stack of Task solvers
A hierarchical inequality solver, sot::SolverHierarchicalInequalities, is
present. For the maths, see \cite Mansard2007.
\subsection subsec_exceptions Exceptions
The library defines the following classes of exceptions that derive from
std::exception: \li sot::ExceptionAbstract (the base class for all exceptions in
sot-core; use it to catch only sot-core exceptions) \li sot::ExceptionDynamic
\li sot::ExceptionFactory (raised if issues in instancing tasks and features)
\li sot::ExceptionFeature (raised by a feature - see \ref subsec_Features)
\li sot::ExceptionSignal
\li sot::ExceptionTask (raised by a task - see \ref subsec_Tasks)
\li sot::ExceptionTools
\subsection subsec_signalcast Signal cast helpers
Using the dynamic-graph module's signal_disp<T>, signal_cast<T> or
signal_trace<T> methods, involves a cast to or from a
stringstream object (i.e. for all practical purposes, a string). For the
objects defined in sot-core (T = sot::*), most of these casts are defined.
Hence you can display sot::VectorQuaternion or sot::MatrixTwist objects as
strings, or set them from the command line (using a script interpreter from
the dynamic-graph package).
\subsection subsec_Tasks Tasks
Tasks are the hierarchical element of the stack of tasks.
A task computes a value and a Jacobian as output signals.
Once stacked into a solver, the solver will compute the control vector
that makes the task value converge toward zero in the
order defined by the priority levels. For more information see the documentation
of class dynamicgraph::sot:TaskAbstract.
\subsection subsec_tools Mathematical base
The following classes encapsulate common mathematical objects, and
are all defined in the core library; see each individual class documentation
for reference.
\li Vectors: (sot::VectorQuaternion, sot::VectorRollPitchYaw, sot::VectorUTheta)
\li Matrices: (sot::MatrixForce, sot::MatrixHomogeneous, sot::MatrixRotation,
sot::MatrixTwist) \li sot::MultiBound can be used to enforce bounds on numeric
values
\subsection subsec_others Others
The core library also contains functions for adaptation and extension of
the dynamic-graph shell; see additional-functions.cpp, factory.cpp and pool.cpp
directly for these. In a nutshell, a typical user shouldn't need these.
See \ref factory for additional information.
\defgroup plugins_list List of python modules
These python modules are linked with the core library.
sot/sot-qr
sot/weighted-sot
sot/sot-h
sot/sot
math/op-point-modifier
matrix/binary-op
matrix/derivator
matrix/fir-filter
matrix/integrator-abstract
matrix/integrator-euler
matrix/matrix-constant
matrix/unary-op
matrix/vector-constant
matrix/vector-to-rotation
task/gain-adaptive
task/task-pd
task/constraint
task/gain-hyperbolic
task/task
task/task-conti
task/task-unilateral
feature/feature-point6d
feature/feature-vector3
feature/feature-generic
feature/feature-joint-limits
feature/feature-1d
feature/feature-point6d-relative
feature/feature-visual-point
feature/feature-task
feature/feature-line-distance
traces/reader
tools/time-stamp
tools/timer
tools/seq-play
tools/sequencer
tools/robot-simu
tools/periodic-call-entity
tools/motion-period
tools/neck-limitation
tools/mailbox-vector
tools/kalman
tools/joint-limitator
tools/gripper-control
tools/com-freezer
tools/clamp-workspace
tools/binary-int-to-uint
control/control-gr
control/control-pd
@defgroup factory Factory
This code implements the factory design pattern, making creation of features,
tasks and other objects available.
Objects, which are derived from Entities, Tasks, or Features, can be
declared within the code and compiled to C++ python modules. These
modules can be imported at run-time and register their class names to
the Factory (see the sotFactory documentation to learn how).
The Factory can then create instances of these objects and subsequently
register them in the Pool, where they can be listed, accessed, and acted upon
(see sot::PoolStorage documentation). Basic commands defined by entities include
signal connection graph file generation, help and name print, and signals.
The public static objects (singletons) made available by including the
corresponding headers in this module are:
\li sot::PoolStorage, accessed by method getInstance.
\image html schema_plugin.png
@defgroup codesourceexamples Code source examples
Various examples to use the different parts of the Stack of Tasks.
They are all located in the tests directory.
*/
/** \page page_parameter_server Parameter Server
In order to register and recover information on your robot it is possible
to register information using the class dynamicgraph::sot::RobotUtil.
*/
/** \page page_sot Stack-of-Tasks
As explained in class dynamicgraph::sot::FeatureAbstract,
\f[
{\bf E}(t) = {\bf e}({\bf q}(t), t)= {\bf s}({\bf q}(t)) - {\bf s}^*(t)
\f]
thus:
\f[
\dot{\bf E}= \frac{\partial{\bf e}}{\partial{\bf q}} \dot{\bf q}
+ \frac{\partial{\bf e}}{\partial t} \\
\f]
The features are responsible for computing:
\li \f$ {\bf E}(t) \f$
\li \f$ \frac{\partial{\bf e}}{\partial t} \f$
\li \f$ \frac{\partial{\bf e}}{\partial{\bf q}} \f$
The class dynamicgraph::sot::Task takes some features outputs as inputs.
It imposes an exponential decrease, i.e.
\f$ \dot{\bf E} = -\lambda {\bf E} \f$.
It gives:
\f[
-\lambda {\bf e} =
\frac{\partial{\bf e}}{\partial{\bf q}} \dot{\bf q}
+ \frac{\partial{\bf e}}{\partial t}
\f]
and computes solutions as:
\f[
\dot{\bf q} = \frac{\partial{\bf e}}{\partial{\bf q}}^{\dagger} \left(
- \lambda {\bf e} - \frac{\partial{\bf e}}{\partial t}
\right) + K v
\f]
where:
\li \f$\frac{\partial{\bf e}}{\partial{\bf q}}^{\dagger}\f$ is the
pseudo-inverse of \f$\frac{\partial{\bf e}}{\partial{\bf q}}\f$,
\li \f$\dot{\bf q} \in \mathbb{R}^n\f$,
\li \f$K \in \mathcal{M}_{n,m}(\mathbb{R})\f$ is a base of the kernel of
\f$\frac{\partial{\bf e}}{\partial{\bf q}}\f$, of dimension \f$m\f$,
\li and \f$v\f$ spans \f$\mathbb{R}^m\f$ so that \f$K v\f$ spans
the kernel of
\f$\frac{\partial{\bf e}}{\partial{\bf q}}\f$.
\f$v\f$ is a free parameters left to tasks of lower priority.
*/
<br><br>
<hr>
<center>
<img src="./pictures/footer.jpg" Height=100>
<br>sot-core library documentation</br>
</center>
<hr>
</center>
</body>
</head>
<HTML>
<HEAD>
<TITLE>sot-core library documentation</TITLE>
<LINK HREF="package.css" REL="stylesheet" TYPE="text/css">
</HEAD>
<BODY>
body {
font-family: 'Lucida Grande','Lucida Sans Unicode',Verdana,Sans-Serif;
color: #5D5D5D;
}
dl {
border: 1.5px #82b6d7 solid;
width: 97%;
padding: 5px;
color: #330077;
}
code {
color: #3C9A35;
}
td.md {
color: #0066CC;
}
h1 {
padding-top: 50px;
padding: 0px;
font-family: 'Lucida Grande','Lucida Sans Unicode',Verdana,Sans-Serif;
font-variant: small-caps;
color:#0066CC;
text-align: center;
}
h2,h3,hr {
magin-top: 15px;
padding: 0px;
font-family: 'Lucida Grande','Lucida Sans Unicode',Verdana,Sans-Serif;
font-variant: small-caps;
color:#0066CC;
}
h4 {
color: #3C9A35;
}
a:link {
font-weight: bold;
text-decoration: none;
color:#0066CC
}
a:hover, a:active {
text-decoration: underline;
color: #3C9A35;
}
a:visited {
font-weight: bold;
color: #3C9A35;
text-decoration: none;
}
DIV.memitem
{
spacing: 10px;
width:100%;
background:#FFFFFF;
font-size:100%;
line-height:normal;
border-width: 1px;
border-style: solid;
border-color: #808080;
-moz-border-radius: 8px 8px 8px 8px;
}
DIV.memproto
{
width:100%;
background:#F0F0F0;
font-size:100%;
line-height:normal;
border-width: 1px;
border-style: solid;
border-color: #808080;
-moz-border-radius: 8px 8px 8px 8px;
}
DIV.memdoc
{
padding: 10px;
width:100%;
font-size:100%;
line-height:normal;
}
DIV.tabs
{
float : left;
width : 100%;
background : url("tab_b.gif") repeat-x bottom;
margin-bottom : 4px;
}
DIV.tabs UL
{
margin : 0px;
padding-left : 10px;
list-style : none;
}
DIV.tabs LI, DIV.tabs FORM
{
display : inline;
margin : 0px;
padding : 0px;
}
DIV.tabs FORM
{
float : right;
}
DIV.tabs A
{
float : left;
background : url("tab_r.gif") no-repeat right top;
border-bottom : 1px solid #84B0C7;
font-size : x-small;
font-weight : bold;
text-decoration : none;
}
DIV.tabs A:hover
{
background-position: 100% -150px;
}
DIV.tabs A:link, DIV.tabs A:visited,
DIV.tabs A:active, DIV.tabs A:hover
{
color: #1A419D;
}
DIV.tabs SPAN
{
float : left;
display : block;
background : url("tab_l.gif") no-repeat left top;
padding : 5px 9px;
white-space : nowrap;
}
DIV.tabs INPUT
{
float : right;
display : inline;
font-size : 1em;
}
DIV.tabs TD
{
font-size : x-small;
font-weight : bold;
text-decoration : none;
}
DIV.tabs SPAN {float : none;}
DIV.tabs A:hover SPAN
{
background-position: 0% -150px;
}
DIV.tabs LI#current A
{
background-position: 100% -150px;
border-width : 0px;
}
DIV.tabs LI#current SPAN
{
background-position: 0% -150px;
padding-bottom : 6px;
}
DIV.nav
{
background : none;
border : none;
border-bottom : 1px solid #84B0C7;
}
DIV.groupHeader
{
padding-top: 30px;
padding-bottom: 20px;
background : none;
border : none;
border-bottom : 1px solid #84B0C7;
font-family: 'Lucida Grande','Lucida Sans Unicode',Verdana,Sans-Serif;
font-variant: small-caps;
font-size: 14pt;
color:#0066CC;
}
.directory p
{
margin: 0px;
white-space: nowrap;
font-family: 'Lucida Grande','Lucida Sans Unicode',Verdana,Sans-Serif;
font-size: 10pt;
font-weight: normal;
}
.directory h3
{
font-family: 'Lucida Grande','Lucida Sans Unicode',Verdana,Sans-Serif;
margin: 0px;
margin-top: 1em;
padding-bottom: 20px;
font-size: 12pt;
font-variant: small-caps;
text-align: center;
}
.directory a:visited {
font-weight: bold;
text-decoration: none;
color:#0066CC
}
# Doxyfile 1.4.2
#---------------------------------------------------------------------------
# Project related configuration options
#---------------------------------------------------------------------------
OUTPUT_DIRECTORY = .
CREATE_SUBDIRS = NO
OUTPUT_LANGUAGE = English
BRIEF_MEMBER_DESC = YES
REPEAT_BRIEF = YES
ABBREVIATE_BRIEF = "The $name class" \
"The $name widget" \
"The $name file" \
is \
provides \
specifies \
contains \
represents \
a \
an \
the
ALWAYS_DETAILED_SEC = YES
INLINE_INHERITED_MEMB = NO
FULL_PATH_NAMES = NO
STRIP_FROM_PATH =
STRIP_FROM_INC_PATH =
SHORT_NAMES = NO
JAVADOC_AUTOBRIEF = YES
MULTILINE_CPP_IS_BRIEF = NO
DETAILS_AT_TOP = YES
INHERIT_DOCS = YES
DISTRIBUTE_GROUP_DOC = NO
SEPARATE_MEMBER_PAGES = NO
TAB_SIZE = 2
OPTIMIZE_OUTPUT_FOR_C = NO
OPTIMIZE_OUTPUT_JAVA = NO
SUBGROUPING = YES
#---------------------------------------------------------------------------
# Build related configuration options
#---------------------------------------------------------------------------
EXTRACT_LOCAL_CLASSES = YES
EXTRACT_LOCAL_METHODS = NO
CASE_SENSE_NAMES = NO
HIDE_SCOPE_NAMES = NO
SHOW_INCLUDE_FILES = NO
INLINE_INFO = YES
SORT_MEMBER_DOCS = YES
SORT_BRIEF_DOCS = NO
SORT_BY_SCOPE_NAME = NO
MAX_INITIALIZER_LINES = 30
FILE_VERSION_FILTER =
#---------------------------------------------------------------------------
# configuration options related to warning and progress messages
#---------------------------------------------------------------------------
QUIET = NO
WARNINGS = YES
WARN_IF_UNDOCUMENTED = YES
WARN_IF_DOC_ERROR = YES
WARN_NO_PARAMDOC = NO
WARN_FORMAT = "$file:$line: $text"
WARN_LOGFILE =
#---------------------------------------------------------------------------
# configuration options related to the input files
#---------------------------------------------------------------------------
RECURSIVE = YES
EXCLUDE =
EXCLUDE_SYMLINKS = NO
EXAMPLE_PATH =
EXAMPLE_PATTERNS = *
EXAMPLE_RECURSIVE = NO
INPUT_FILTER =
FILTER_PATTERNS =
FILTER_SOURCE_FILES = NO
#---------------------------------------------------------------------------
# configuration options related to source browsing
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
ALPHABETICAL_INDEX = NO
COLS_IN_ALPHA_INDEX = 5
IGNORE_PREFIX =
#---------------------------------------------------------------------------
# configuration options related to the HTML output
#---------------------------------------------------------------------------
GENERATE_HTML = YES
HTML_FILE_EXTENSION = .html
HTML_ALIGN_MEMBERS = YES
GENERATE_HTMLHELP = NO
CHM_FILE =
HHC_LOCATION =
GENERATE_CHI = NO
BINARY_TOC = NO
TOC_EXPAND = YES
DISABLE_INDEX = NO
ENUM_VALUES_PER_LINE = 1
GENERATE_TREEVIEW = YES
TREEVIEW_WIDTH = 250
#---------------------------------------------------------------------------
# configuration options related to the LaTeX output
#---------------------------------------------------------------------------
LATEX_OUTPUT = latex
LATEX_CMD_NAME = latex
MAKEINDEX_CMD_NAME = makeindex
COMPACT_LATEX = NO
PAPER_TYPE = a4wide
EXTRA_PACKAGES =
LATEX_HEADER =
PDF_HYPERLINKS = NO
USE_PDFLATEX = NO
LATEX_BATCHMODE = NO
LATEX_HIDE_INDICES = NO
#---------------------------------------------------------------------------
# configuration options related to the RTF output
#---------------------------------------------------------------------------
RTF_OUTPUT = rtf
COMPACT_RTF = NO
RTF_HYPERLINKS = NO
RTF_STYLESHEET_FILE =
RTF_EXTENSIONS_FILE =
#---------------------------------------------------------------------------
# configuration options related to the man page output
#---------------------------------------------------------------------------
MAN_OUTPUT = man
MAN_EXTENSION = .3
MAN_LINKS = NO
#---------------------------------------------------------------------------
# configuration options related to the XML output
#---------------------------------------------------------------------------
XML_OUTPUT = xml
XML_SCHEMA =
XML_DTD =
XML_PROGRAMLISTING = YES
#---------------------------------------------------------------------------
# configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
GENERATE_AUTOGEN_DEF = NO
#---------------------------------------------------------------------------
# configuration options related to the Perl module output
#---------------------------------------------------------------------------
PERLMOD_LATEX = NO
PERLMOD_PRETTY = YES
PERLMOD_MAKEVAR_PREFIX =
#---------------------------------------------------------------------------
# Configuration options related to the preprocessor
#---------------------------------------------------------------------------
ENABLE_PREPROCESSING = YES
MACRO_EXPANSION = YES
EXPAND_ONLY_PREDEF = YES
SEARCH_INCLUDES = YES
INCLUDE_PATH =
INCLUDE_FILE_PATTERNS =
EXPAND_AS_DEFINED =
SKIP_FUNCTION_MACROS = YES
#---------------------------------------------------------------------------
# Configuration::additions related to external references
#---------------------------------------------------------------------------
TAGFILES = \
${MATRIXABSTRACTLAYER_DOCDIR}/html/MatrixAbstractLayer.doxytag=${MATRIXABSTRACTLAYER_DOCDIR}/html \
${DYNAMICSJRLJAPAN_DOCDIR}/html/dynamicsJRLJapan.doxytag=${DYNAMICSJRLJAPAN_DOCDIR}/html \
${HRP2DYNAMICS_DOCDIR}/html/hrp2Dynamics.doxytag=${HRP2DYNAMICS_DOCDIR}/html \
${WALKGENJRL_DOCDIR}/html/walkGenJrl.doxytag=${WALKGENJRL_DOCDIR}/html \
${DYNAMIC_GRAPH_DOCDIR}/html/dynamic-graph.doxytag=${DYNAMIC_GRAPH_DOCDIR}/html
GENERATE_TAGFILE = sot-core.doxytag
ALLEXTERNALS = NO
EXTERNAL_GROUPS = YES
PERL_PATH = /usr/bin/perl
#---------------------------------------------------------------------------
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# Configuration::additions related to the search engine
#---------------------------------------------------------------------------
SEARCHENGINE = NO
#---------------------------------------------------------------------------
# Project related configuration options
#---------------------------------------------------------------------------
PROJECT_NAME = "${PROJECT_NAME} library documentation"
PROJECT_NUMBER = ${PROJECT_VERSION}
#---------------------------------------------------------------------------
# Build related configuration options
#---------------------------------------------------------------------------
EXTRACT_ALL = YES
EXTRACT_PRIVATE = YES
EXTRACT_STATIC = NO
HIDE_UNDOC_MEMBERS = YES
HIDE_UNDOC_CLASSES = YES
HIDE_FRIEND_COMPOUNDS = YES
HIDE_IN_BODY_DOCS = NO
INTERNAL_DOCS = NO
SHOW_INCLUDE_FILES = NO
GENERATE_TODOLIST = YES
GENERATE_TESTLIST = NO
GENERATE_BUGLIST = NO
GENERATE_DEPRECATEDLIST= YES
ENABLED_SECTIONS =
SHOW_USED_FILES = NO
SHOW_DIRECTORIES = NO
#---------------------------------------------------------------------------
# configuration options related to warning and progress messages
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# configuration options related to the input files
#---------------------------------------------------------------------------
FILE_PATTERNS = *.hh *.idl
EXCLUDE_PATTERNS =
INPUT = ${${PROJECT_NAME}_SOURCE_DIR}/include \
${CMAKE_CURRENT_SOURCE_DIR}/additionalDoc
#---------------------------------------------------------------------------
# configuration options related to inserting images
#---------------------------------------------------------------------------
IMAGE_PATH = ${${PROJECT_NAME}_SOURCE_DIR}/doc/figures
#---------------------------------------------------------------------------
# configuration options related to source browsing
#---------------------------------------------------------------------------
SOURCE_BROWSER = NO
INLINE_SOURCES = NO
STRIP_CODE_COMMENTS = YES
REFERENCED_BY_RELATION = NO
REFERENCES_RELATION = NO
VERBATIM_HEADERS = NO
#---------------------------------------------------------------------------
# configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# configuration options related to the HTML output
#---------------------------------------------------------------------------
HTML_OUTPUT = html
HTML_STYLESHEET = ${CMAKE_CURRENT_SOURCE_DIR}/package.css
HTML_HEADER = ${CMAKE_CURRENT_SOURCE_DIR}/header.html
HTML_FOOTER = ${CMAKE_CURRENT_SOURCE_DIR}/footer.html
#---------------------------------------------------------------------------
# configuration options related to the LaTeX output
#---------------------------------------------------------------------------
GENERATE_LATEX = NO
USE_PDFLATEX = YES
#---------------------------------------------------------------------------
# configuration options related to the RTF output
#---------------------------------------------------------------------------
GENERATE_RTF = NO
#---------------------------------------------------------------------------
# configuration options related to the man page output
#---------------------------------------------------------------------------
GENERATE_MAN = NO
#---------------------------------------------------------------------------
# configuration options related to the XML output
#---------------------------------------------------------------------------
GENERATE_XML = NO
#---------------------------------------------------------------------------
# configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
GENERATE_AUTOGEN_DEF = NO
#---------------------------------------------------------------------------
# configuration options related to the Perl module output
#---------------------------------------------------------------------------
GENERATE_PERLMOD = NO
#---------------------------------------------------------------------------
# Configuration options related to the preprocessor
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# Configuration::additions related to external references
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
CLASS_DIAGRAMS = YES
HIDE_UNDOC_RELATIONS = YES
HAVE_DOT = YES
CLASS_GRAPH = NO
COLLABORATION_GRAPH = YES
GROUP_GRAPHS = YES
UML_LOOK = NO
TEMPLATE_RELATIONS = NO
INCLUDE_GRAPH = YES
INCLUDED_BY_GRAPH = YES
CALL_GRAPH = NO
GRAPHICAL_HIERARCHY = YES
DIRECTORY_GRAPH = YES
DOT_IMAGE_FORMAT = png
DOT_PATH =
DOTFILE_DIRS =
MAX_DOT_GRAPH_DEPTH = 1000
DOT_TRANSPARENT = NO
DOT_MULTI_TARGETS = YES
GENERATE_LEGEND = YES
DOT_CLEANUP = YES
doc/pictures/HRP2.jpg

23.1 KiB

#FIG 3.2 Produced by xfig version 3.2.5b
Landscape
Center
Metric
A4
100.00
Single
-2
1200 2
6 6120 6030 12690 8145
2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5
8930 6070 12665 6070 12665 8145 8930 8145 8930 6070
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
7470 6485 8930 6485
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
6357 7149 8930 7149
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
6357 7896 8930 7896
4 2 0 50 -1 0 22 0.0000 4 255 2520 8681 6983 articularJacobian\001
4 2 0 50 -1 0 22 0.0000 4 330 1230 8681 7730 jacobian\001
4 2 0 50 -1 0 22 0.0000 4 330 1170 8681 6319 position\001
4 1 0 50 -1 2 26 0.0000 4 300 2940 10756 6651 FeaturePoint6d\001
-6
6 8910 3735 10485 4275
6 9000 3735 10215 4050
4 2 0 50 -1 0 22 0.0000 4 255 1170 10193 4013 errordot\001
-6
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
8948 4179 10442 4179
-6
6 3600 3285 5175 3825
6 3690 3285 4905 3600
4 2 0 50 -1 0 22 0.0000 4 255 1170 4883 3563 errordot\001
-6
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
3638 3729 5132 3729
-6
6 540 6300 2115 6795
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
578 6726 2072 6726
4 2 0 50 -1 0 22 0.0000 4 330 1230 1823 6560 jacobian\001
-6
6 540 5175 2115 5625
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
578 5540 2072 5540
4 2 0 50 -1 0 22 0.0000 4 180 705 1823 5374 error\001
-6
6 945 495 1800 765
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 59.15 118.32
999 721 1797 721
4 2 0 50 -1 0 11 0.0000 4 135 690 1664 630 selection\001
-6
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 3
0 0 1.00 110.67 221.33
3234 1522 3234 1935 5226 1935
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
0 0 1.00 110.67 221.33
3825 4950 6471 4344
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
0 0 1.00 110.67 221.33
10710 6075 7965 4344
2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5
2072 4945 5807 4945 5807 7020 2072 7020 2072 4945
2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5
5175 1665 8961 1665 8961 4344 5175 4344 5175 1665
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
3732 2700 5226 2700
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
8961 3510 10455 3510
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
8961 2846 10455 2846
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
8961 2182 10455 2182
2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5
1797 413 3797 413 3797 1522 1797 1522 1797 413
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 59.15 118.32
3797 1389 4595 1389
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 59.15 118.32
3797 1035 4595 1035
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 59.15 118.32
3797 679 4595 679
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 59.15 118.32
999 1306 1797 1306
4 1 0 50 -1 2 26 0.0000 4 300 2955 3898 5481 FeatureGeneric\001
4 0 0 50 -1 0 18 0.0000 4 195 1335 2487 5951 errSOUT =\001
4 0 0 50 -1 0 18 0.0000 4 195 2685 2487 6320 errorSIN - ref.errorSIN\001
4 0 0 50 -1 0 18 0.0000 4 255 2205 2487 6726 jacSOUT = jacSIN\001
4 1 0 50 -1 2 26 0.0000 4 300 3105 7052 2340 FeatureAbstract\001
4 2 0 50 -1 0 22 0.0000 4 255 1365 4977 1845 reference\001
4 2 0 50 -1 0 22 0.0000 4 255 1305 4977 2475 selection\001
4 0 0 50 -1 0 22 0.0000 4 255 1545 9127 3344 dimension\001
4 0 0 50 -1 0 22 0.0000 4 330 1230 9127 2680 jacobian\001
4 0 0 50 -1 0 22 0.0000 4 180 705 9127 2016 error\001
4 1 0 50 -1 2 13 0.0000 4 150 1470 2775 1035 FeatureAbstract\001
4 0 0 50 -1 0 11 0.0000 4 135 765 3885 1301 dimension\001
4 0 0 50 -1 0 11 0.0000 4 180 630 3885 945 jacobian\001
4 0 0 50 -1 0 11 0.0000 4 90 360 3885 591 error\001
4 2 0 50 -1 0 11 0.0000 4 135 600 1664 1215 errordot\001
doc/pictures/feature.png

13 KiB

doc/pictures/footer.jpg

23.1 KiB

#FIG 3.2 Produced by xfig version 3.2.5b
Landscape
Center
Metric
A4
100.00
Single
-2
1200 2
6 3555 360 8820 2475
6 7290 810 8820 1980
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
7296 1901 8790 1901
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
7296 1237 8790 1237
4 0 0 50 -1 0 22 0.0000 4 330 1230 7462 1735 jacobian\001
4 0 0 50 -1 0 22 0.0000 4 255 600 7462 1071 task\001
-6
2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5
3561 379 7296 379 7296 2454 3561 2454 3561 379
4 1 0 50 -1 2 26 0.0000 4 300 2550 5387 1541 TaskAbstract\001
-6
6 1575 3285 11250 5895
6 4725 4095 7425 5715
6 4725 5175 7425 5715
2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5
4725 5175 7425 5175 7425 5715 4725 5715 4725 5175
4 0 0 50 -1 0 18 0.0000 4 195 1020 4950 5535 feature 1\001
-6
2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5
4725 4095 7425 4095 7425 4635 4725 4635 4725 4095
2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5
4725 4635 7425 4635 7425 5175 4725 5175 4725 4635
4 0 0 50 -1 0 18 0.0000 4 195 1020 4950 4995 feature 2\001
4 0 0 50 -1 0 18 0.0000 4 30 180 4950 4455 ...\001
-6
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
2738 3740 4232 3740
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
2738 4404 4232 4404
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
2738 5151 4232 5151
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
7958 3740 9452 3740
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
7958 4404 9452 4404
2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5
4230 3325 7967 3325 7967 5895 4230 5895 4230 3325
4 1 0 50 -1 2 26 0.0000 4 300 915 6058 3906 Task\001
4 2 0 50 -1 0 22 0.0000 4 255 1755 3983 3574 controlGain\001
4 2 0 50 -1 0 22 0.0000 4 330 2010 3983 4238 dampingGain\001
4 2 0 50 -1 0 22 0.0000 4 255 2385 3983 4985 controlSelection\001
4 0 0 50 -1 0 22 0.0000 4 180 705 8235 3574 error\001
4 0 0 50 -1 0 22 0.0000 4 255 2985 8235 4230 errorTimeDerivative\001
-6
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
0 0 1.00 110.67 221.33
5850 3330 5580 2475
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
0 0 1.00 111.00 222.00
6030 6833 6030 5850
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
2738 7250 4232 7250
2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2
1 1 1.00 110.67 221.33
7958 7250 9452 7250
2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5
4230 6835 7965 6835 7965 8325 4230 8325 4230 6835
4 1 0 50 -1 2 26 0.0000 4 300 1500 6058 7416 TaskPD\001
4 2 0 50 -1 0 22 0.0000 4 255 1245 3983 7084 errorDot\001
4 0 0 50 -1 0 22 0.0000 4 255 1245 8235 7084 errorDot\001
doc/pictures/task.png

9.54 KiB

@ARTICLE { Mansard2007,
AUTHOR = { Mansard, N. and Chaumette, F. },
TITLE = { Task sequencing for sensor-based control },
JOURNAL = { IEEE Transaction on Robotics },
VOLUME = { 23 },
NUMBER = { 1 },
PAGES = { 60 - 72 },
MONTH = { February },
YEAR = { 2007 },
PDF = { 2007-mansard-itro.pdf },
}