RobWorkProject  23.9.11-
Public Types | Public Member Functions | Public Attributes | List of all members
PiHParameterization Class Reference

Parameterization of a Peg in Hole action, used by the PiHStrategy. More...

#include <PiHParameterization.hpp>

Inherits AssemblyParameterization.

Public Types

typedef rw::core::Ptr< PiHParameterizationPtr
 Smart pointer type for parameterization.
- Public Types inherited from AssemblyParameterization
typedef rw::core::Ptr< AssemblyParameterizationPtr
 smart pointer type to this class

Public Member Functions

 PiHParameterization (rw::core::Ptr< rw::core::PropertyMap > pmap)
 Construct parameterization from PropertyMap. More...
 PiHParameterization (double holeRadius, double pegRadius, double theta, double phi, double distX, double distY, double distTContact, double x0)
 Construct parameterization with values given directly with SI units. More...
virtual ~PiHParameterization ()
virtual rw::core::Ptr< rw::core::PropertyMaptoPropertyMap () const
 Store the parameterization in a PropertyMap. More...
virtual AssemblyParameterization::Ptr clone () const
 Clone the parameterization. More...
virtual void reset (rw::core::Ptr< rw::core::PropertyMap > pmap)
 Reset the parameters by taking new parameters from a PropertyMap. More...
- Public Member Functions inherited from AssemblyParameterization
 AssemblyParameterization ()
 Construct an empty parameterization.
 AssemblyParameterization (rw::core::Ptr< rw::core::PropertyMap > pmap)
 Construct a parameterization from a PropertyMap. More...
virtual ~AssemblyParameterization ()
virtual AssemblyParameterization::Ptr make (rw::core::Ptr< rw::core::PropertyMap > pmap) const
 Construct a parameterization of same type from a PropertyMap. More...

Public Attributes

double holeRadius
 Radius of the hole.
double pegRadius
 Radius of the peg.
double theta
 The angle, \(\theta\), of the peg relative to the hole. More...
double phi
 The approach angle, \(\phi\), giving the direction the peg approaches the hole.
double distX
 The distance, x, from the hole to the center of the peg end. Distance is in direction parallel to the hole axis.
double distY
 The distance, y, from the peg/hole edge to the rotation point.
double distTContact
 The approach distance, d, in meters.
double x0
 The insertion depth, \(x_0\), in meters.

Additional Inherited Members

- Protected Attributes inherited from AssemblyParameterization
rw::core::Ptr< rw::core::PropertyMap_pmap
 The PropertyMap.

Detailed Description

Parameterization of a Peg in Hole action, used by the PiHStrategy.

The insertion strategy with parameters shown. Left

image shows the initial approach pose, second image shows the linear approach motion, third image shows the angular motion, and the right image shows the final linear insertion."

The strategy is parameterized using the following parameters:

| Parameter | Description | Units | Units in PropertyMap | | --------------— | -------------------------------------------------------------------------------— | ----------------— | -----------------— | | \(r_{hole}\) | Radius of the hole. | m | mm | | \(r_{peg}\) | Radius of the peg. | m | mm | | \(\theta\) | The angle between the peg and hole axes. Zero corresponds to a straight insertion. | rad | rad | | \(\phi\) | The approach angle. | rad | rad | | x | Height of the peg end point above the hole. | m | mm | | y | The distance to the rotation point. | m | mm | | d | The approach distance. | m | mm | | \(x_0\) | The insertion depth. | m | mm |

The strategy and parameters are also described in the article [1].

[1]: Lars Carøe Sørensen, Jacob Pørksen Buch, Henrik Gordon Petersen and Dirk Kraft, Online Action Learning using Kernel Density Estimation for Quick Discovery of Good Parameters for Peg-in-Hole Insertion, In Proceedings of the 13th International Conference on Informatics in Control, Automation and Robotics (ICINCO 2016), Volume 2, pages 166-177

Constructor & Destructor Documentation

◆ PiHParameterization() [1/2]

Construct parameterization from PropertyMap.

pmap[in] a PropertyMap with the parameterization given as properties with user-friendly (non-SI) units.

◆ PiHParameterization() [2/2]

PiHParameterization ( double  holeRadius,
double  pegRadius,
double  theta,
double  phi,
double  distX,
double  distY,
double  distTContact,
double  x0 

Construct parameterization with values given directly with SI units.

holeRadius[in] radius of the hole, \(r_{hole}\), in meters.
pegRadius[in] radius of the peg, \(r_{peg}\), in meters.
theta[in] the peg angle, \(\theta\), in radians.
phi[in] the approach angle, \(\phi\), in radians.
distX[in] the approach distance, d, in meters.
distY[in] the distance to the rotation point, y, in meters.
distTContact[in] the approach distance, d, in meters.
x0[in] the insertion depth, \(x_0\), in meters.

Member Function Documentation

◆ clone()

virtual AssemblyParameterization::Ptr clone ( ) const

Clone the parameterization.

a pointer to the new parameterization.

Reimplemented from AssemblyParameterization.

◆ reset()

virtual void reset ( rw::core::Ptr< rw::core::PropertyMap pmap)

Reset the parameters by taking new parameters from a PropertyMap.

pmap[in] a PropertyMap.

Reimplemented from AssemblyParameterization.

◆ toPropertyMap()

virtual rw::core::Ptr<rw::core::PropertyMap> toPropertyMap ( ) const

Store the parameterization in a PropertyMap.

a pointer to a PropertyMap, or NULL if parameterization is empty.

Reimplemented from AssemblyParameterization.

Member Data Documentation

◆ theta

double theta

The angle, \(\theta\), of the peg relative to the hole.

\(\theta = 0\) means that the peg and hole is parallel.

\(\theta = \frac{\pi}{2}\) means that the peg and hole is perpendicular.

The documentation for this class was generated from the following file: