Public Types | Public Member Functions | Private Attributes | List of all members
ObjectContactTurnaroundDetectorBase Class Reference

#include <ObjectContactTurnaroundDetectorBase.h>

Public Types

enum  detector_total_wrench { TOTAL_FORCE, TOTAL_MOMENT, TOTAL_MOMENT2, GENERALIZED_WRENCH }
 
enum  process_mode {
  MODE_IDLE, MODE_STARTED, MODE_DETECTED, MODE_MAX_TIME,
  MODE_OTHER_DETECTED
}
 

Public Member Functions

void calcPhiValueFromConstraintConversionMatrix (std::vector< double > &phi, const std::vector< hrp::dvector6 > &ccm, const hrp::dvector6 &res_wrench)
 
void calcTotalForceMoment (hrp::Vector3 &total_force, hrp::Vector3 &total_moment1, hrp::Vector3 &total_moment2, const std::vector< hrp::Vector3 > &forces, const std::vector< hrp::Vector3 > &moments, const std::vector< hrp::Vector3 > &hposv)
 
bool checkDetection (const std::vector< hrp::Vector3 > &forces, const std::vector< hrp::Vector3 > &moments, const std::vector< hrp::Vector3 > &hposv)
 
bool checkDetection (const double raw_wrench_value, const double raw_friction_coeff_wrench_value)
 
bool checkDetection (const hrp::dvector6 &raw_resultant_wrench_value)
 
hrp::Vector3 getAxis () const
 
void getConstraintConversionMatricesRefDwrench (std::vector< hrp::dvector6 > &ccm1, std::vector< hrp::dvector6 > &ccm2, std::vector< double > &refdw) const
 
hrp::dvector getDataForLogger () const
 
size_t getDetectGeneralizedWrenchDim () const
 
detector_total_wrench getDetectorTotalWrench () const
 
double getDetectRatioThre () const
 
double getDetectTimeThre () const
 
double getDwrenchCutoffFreq () const
 
std::vector< double > getFilteredFrictionCoeffWrenchWithHold () const
 
hrp::dvector6 getFilteredResultantWrenchWithHold () const
 
std::vector< double > getFilteredWrenchWithHold () const
 
double getForgettingRatioThre () const
 
bool getIsHoldValues () const
 
double getMaxTime () const
 
process_mode getMode (const size_t idx) const
 
hrp::Vector3 getMomentCenter () const
 
double getOtherDetectTimeThre () const
 
double getStartRatioThre () const
 
double getStartTimeThre () const
 
double getWrenchCutoffFreq () const
 
bool isDetected (const size_t idx) const
 
bool isDetected () const
 
 ObjectContactTurnaroundDetectorBase (const double _dt)
 
void printParams () const
 
void resizeVariablesForGeneralizedWrench (size_t generalized_wrench_dim)
 
void setAxis (const hrp::Vector3 &a)
 
void setConstraintConversionMatricesRefDwrench (const std::vector< hrp::dvector6 > &ccm1, const std::vector< hrp::dvector6 > &ccm2, const std::vector< double > &refdw)
 
void setDetectorTotalWrench (const detector_total_wrench _dtw)
 
void setDetectRatioThre (const double a)
 
void setDetectTimeThre (const double a)
 
void setDwrenchCutoffFreq (const double a)
 
void setForgettingRatioThre (const double a)
 
void setIsHoldValues (const bool a)
 
void setMaxTime (const double a)
 
void setMomentCenter (const hrp::Vector3 &a)
 
void setOtherDetectTimeThre (const double a)
 
void setPrintStr (const std::string &str)
 
void setStartRatioThre (const double a)
 
void setStartTimeThre (const double a)
 
void setWrenchCutoffFreq (const double a)
 
void startDetection (const double _ref_diff_wrench, const double _max_time)
 
void startDetectionForGeneralizedWrench ()
 
bool updateProcessModeFromDwrench (const std::vector< double > &tmp_dwrench)
 
 ~ObjectContactTurnaroundDetectorBase ()
 

Private Attributes

hrp::Vector3 axis
 
std::vector< hrp::dvector6constraint_conversion_matrix1
 
std::vector< hrp::dvector6constraint_conversion_matrix2
 
std::vector< size_t > count
 
double current_time
 
size_t detect_count_thre
 
double detect_ratio_thre
 
std::vector< double > dphi1
 
double dt
 
detector_total_wrench dtw
 
boost::shared_ptr< FirstOrderLowPassFilter< double > > dwrench_filter
 
std::vector< double > filtered_friction_coeff_wrench_with_hold
 
hrp::dvector6 filtered_resultant_wrench_with_hold
 
std::vector< double > filtered_wrench_with_hold
 
double forgetting_ratio_thre
 
boost::shared_ptr< FirstOrderLowPassFilter< double > > friction_coeff_wrench_filter
 
bool is_filter_reset
 
bool is_hold_values
 
bool is_other_constraint_detected
 
double max_time
 
hrp::Vector3 moment_center
 
size_t other_detect_count_thre
 
std::vector< double > phi1
 
std::vector< double > phi2
 
std::vector< process_modepmode
 
std::string print_str
 
std::vector< double > raw_wrench
 
std::vector< double > ref_dwrench
 
boost::shared_ptr< FirstOrderLowPassFilter< hrp::dvector6 > > resultant_dwrench_filter
 
boost::shared_ptr< FirstOrderLowPassFilter< hrp::dvector6 > > resultant_wrench_filter
 
size_t start_count_thre
 
double start_ratio_thre
 
boost::shared_ptr< FirstOrderLowPassFilter< double > > wrench_filter
 

Detailed Description

Definition at line 11 of file ObjectContactTurnaroundDetectorBase.h.

Member Enumeration Documentation

Enumerator
TOTAL_FORCE 
TOTAL_MOMENT 
TOTAL_MOMENT2 
GENERALIZED_WRENCH 

Definition at line 15 of file ObjectContactTurnaroundDetectorBase.h.

Enumerator
MODE_IDLE 
MODE_STARTED 
MODE_DETECTED 
MODE_MAX_TIME 
MODE_OTHER_DETECTED 

Definition at line 14 of file ObjectContactTurnaroundDetectorBase.h.

Constructor & Destructor Documentation

ObjectContactTurnaroundDetectorBase::ObjectContactTurnaroundDetectorBase ( const double  _dt)
inline

Definition at line 40 of file ObjectContactTurnaroundDetectorBase.h.

ObjectContactTurnaroundDetectorBase::~ObjectContactTurnaroundDetectorBase ( )
inline

Definition at line 58 of file ObjectContactTurnaroundDetectorBase.h.

Member Function Documentation

void ObjectContactTurnaroundDetectorBase::calcPhiValueFromConstraintConversionMatrix ( std::vector< double > &  phi,
const std::vector< hrp::dvector6 > &  ccm,
const hrp::dvector6 res_wrench 
)
inline

Definition at line 215 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::calcTotalForceMoment ( hrp::Vector3 total_force,
hrp::Vector3 total_moment1,
hrp::Vector3 total_moment2,
const std::vector< hrp::Vector3 > &  forces,
const std::vector< hrp::Vector3 > &  moments,
const std::vector< hrp::Vector3 > &  hposv 
)
inline

Definition at line 101 of file ObjectContactTurnaroundDetectorBase.h.

bool ObjectContactTurnaroundDetectorBase::checkDetection ( const std::vector< hrp::Vector3 > &  forces,
const std::vector< hrp::Vector3 > &  moments,
const std::vector< hrp::Vector3 > &  hposv 
)
inline

Definition at line 112 of file ObjectContactTurnaroundDetectorBase.h.

bool ObjectContactTurnaroundDetectorBase::checkDetection ( const double  raw_wrench_value,
const double  raw_friction_coeff_wrench_value 
)
inline

Definition at line 158 of file ObjectContactTurnaroundDetectorBase.h.

bool ObjectContactTurnaroundDetectorBase::checkDetection ( const hrp::dvector6 raw_resultant_wrench_value)
inline

Definition at line 185 of file ObjectContactTurnaroundDetectorBase.h.

hrp::Vector3 ObjectContactTurnaroundDetectorBase::getAxis ( ) const
inline

Definition at line 375 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::getConstraintConversionMatricesRefDwrench ( std::vector< hrp::dvector6 > &  ccm1,
std::vector< hrp::dvector6 > &  ccm2,
std::vector< double > &  refdw 
) const
inline

Definition at line 377 of file ObjectContactTurnaroundDetectorBase.h.

hrp::dvector ObjectContactTurnaroundDetectorBase::getDataForLogger ( ) const
inline

Definition at line 386 of file ObjectContactTurnaroundDetectorBase.h.

size_t ObjectContactTurnaroundDetectorBase::getDetectGeneralizedWrenchDim ( ) const
inline

Definition at line 385 of file ObjectContactTurnaroundDetectorBase.h.

detector_total_wrench ObjectContactTurnaroundDetectorBase::getDetectorTotalWrench ( ) const
inline

Definition at line 383 of file ObjectContactTurnaroundDetectorBase.h.

double ObjectContactTurnaroundDetectorBase::getDetectRatioThre ( ) const
inline

Definition at line 369 of file ObjectContactTurnaroundDetectorBase.h.

double ObjectContactTurnaroundDetectorBase::getDetectTimeThre ( ) const
inline

Definition at line 371 of file ObjectContactTurnaroundDetectorBase.h.

double ObjectContactTurnaroundDetectorBase::getDwrenchCutoffFreq ( ) const
inline

Definition at line 367 of file ObjectContactTurnaroundDetectorBase.h.

std::vector<double> ObjectContactTurnaroundDetectorBase::getFilteredFrictionCoeffWrenchWithHold ( ) const
inline

Definition at line 404 of file ObjectContactTurnaroundDetectorBase.h.

hrp::dvector6 ObjectContactTurnaroundDetectorBase::getFilteredResultantWrenchWithHold ( ) const
inline

Definition at line 405 of file ObjectContactTurnaroundDetectorBase.h.

std::vector<double> ObjectContactTurnaroundDetectorBase::getFilteredWrenchWithHold ( ) const
inline

Definition at line 403 of file ObjectContactTurnaroundDetectorBase.h.

double ObjectContactTurnaroundDetectorBase::getForgettingRatioThre ( ) const
inline

Definition at line 374 of file ObjectContactTurnaroundDetectorBase.h.

bool ObjectContactTurnaroundDetectorBase::getIsHoldValues ( ) const
inline

Definition at line 400 of file ObjectContactTurnaroundDetectorBase.h.

double ObjectContactTurnaroundDetectorBase::getMaxTime ( ) const
inline

Definition at line 401 of file ObjectContactTurnaroundDetectorBase.h.

process_mode ObjectContactTurnaroundDetectorBase::getMode ( const size_t  idx) const
inline

Definition at line 384 of file ObjectContactTurnaroundDetectorBase.h.

hrp::Vector3 ObjectContactTurnaroundDetectorBase::getMomentCenter ( ) const
inline

Definition at line 376 of file ObjectContactTurnaroundDetectorBase.h.

double ObjectContactTurnaroundDetectorBase::getOtherDetectTimeThre ( ) const
inline

Definition at line 373 of file ObjectContactTurnaroundDetectorBase.h.

double ObjectContactTurnaroundDetectorBase::getStartRatioThre ( ) const
inline

Definition at line 370 of file ObjectContactTurnaroundDetectorBase.h.

double ObjectContactTurnaroundDetectorBase::getStartTimeThre ( ) const
inline

Definition at line 372 of file ObjectContactTurnaroundDetectorBase.h.

double ObjectContactTurnaroundDetectorBase::getWrenchCutoffFreq ( ) const
inline

Definition at line 366 of file ObjectContactTurnaroundDetectorBase.h.

bool ObjectContactTurnaroundDetectorBase::isDetected ( const size_t  idx) const
inline

Definition at line 279 of file ObjectContactTurnaroundDetectorBase.h.

bool ObjectContactTurnaroundDetectorBase::isDetected ( ) const
inline

Definition at line 280 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::printParams ( ) const
inline

Definition at line 287 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::resizeVariablesForGeneralizedWrench ( size_t  generalized_wrench_dim)
inline

Definition at line 86 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::setAxis ( const hrp::Vector3 a)
inline

Definition at line 347 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::setConstraintConversionMatricesRefDwrench ( const std::vector< hrp::dvector6 > &  ccm1,
const std::vector< hrp::dvector6 > &  ccm2,
const std::vector< double > &  refdw 
)
inline

Definition at line 349 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::setDetectorTotalWrench ( const detector_total_wrench  _dtw)
inline

Definition at line 356 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::setDetectRatioThre ( const double  a)
inline

Definition at line 341 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::setDetectTimeThre ( const double  a)
inline

Definition at line 343 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::setDwrenchCutoffFreq ( const double  a)
inline

Definition at line 332 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::setForgettingRatioThre ( const double  a)
inline

Definition at line 346 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::setIsHoldValues ( const bool  a)
inline

Definition at line 363 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::setMaxTime ( const double  a)
inline

Definition at line 364 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::setMomentCenter ( const hrp::Vector3 a)
inline

Definition at line 348 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::setOtherDetectTimeThre ( const double  a)
inline

Definition at line 345 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::setPrintStr ( const std::string &  str)
inline

Definition at line 324 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::setStartRatioThre ( const double  a)
inline

Definition at line 342 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::setStartTimeThre ( const double  a)
inline

Definition at line 344 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::setWrenchCutoffFreq ( const double  a)
inline

Definition at line 325 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::startDetection ( const double  _ref_diff_wrench,
const double  _max_time 
)
inline

Definition at line 59 of file ObjectContactTurnaroundDetectorBase.h.

void ObjectContactTurnaroundDetectorBase::startDetectionForGeneralizedWrench ( )
inline

Definition at line 68 of file ObjectContactTurnaroundDetectorBase.h.

bool ObjectContactTurnaroundDetectorBase::updateProcessModeFromDwrench ( const std::vector< double > &  tmp_dwrench)
inline

Definition at line 219 of file ObjectContactTurnaroundDetectorBase.h.

Member Data Documentation

hrp::Vector3 ObjectContactTurnaroundDetectorBase::axis
private

Definition at line 22 of file ObjectContactTurnaroundDetectorBase.h.

std::vector<hrp::dvector6> ObjectContactTurnaroundDetectorBase::constraint_conversion_matrix1
private

Definition at line 23 of file ObjectContactTurnaroundDetectorBase.h.

std::vector<hrp::dvector6> ObjectContactTurnaroundDetectorBase::constraint_conversion_matrix2
private

Definition at line 23 of file ObjectContactTurnaroundDetectorBase.h.

std::vector<size_t> ObjectContactTurnaroundDetectorBase::count
private

Definition at line 38 of file ObjectContactTurnaroundDetectorBase.h.

double ObjectContactTurnaroundDetectorBase::current_time
private

Definition at line 26 of file ObjectContactTurnaroundDetectorBase.h.

size_t ObjectContactTurnaroundDetectorBase::detect_count_thre
private

Definition at line 31 of file ObjectContactTurnaroundDetectorBase.h.

double ObjectContactTurnaroundDetectorBase::detect_ratio_thre
private

Definition at line 26 of file ObjectContactTurnaroundDetectorBase.h.

std::vector<double> ObjectContactTurnaroundDetectorBase::dphi1
private

Definition at line 36 of file ObjectContactTurnaroundDetectorBase.h.

double ObjectContactTurnaroundDetectorBase::dt
private

Definition at line 25 of file ObjectContactTurnaroundDetectorBase.h.

detector_total_wrench ObjectContactTurnaroundDetectorBase::dtw
private

Definition at line 32 of file ObjectContactTurnaroundDetectorBase.h.

boost::shared_ptr<FirstOrderLowPassFilter<double> > ObjectContactTurnaroundDetectorBase::dwrench_filter
private

Definition at line 18 of file ObjectContactTurnaroundDetectorBase.h.

std::vector<double> ObjectContactTurnaroundDetectorBase::filtered_friction_coeff_wrench_with_hold
private

Definition at line 36 of file ObjectContactTurnaroundDetectorBase.h.

hrp::dvector6 ObjectContactTurnaroundDetectorBase::filtered_resultant_wrench_with_hold
private

Definition at line 24 of file ObjectContactTurnaroundDetectorBase.h.

std::vector<double> ObjectContactTurnaroundDetectorBase::filtered_wrench_with_hold
private

Definition at line 36 of file ObjectContactTurnaroundDetectorBase.h.

double ObjectContactTurnaroundDetectorBase::forgetting_ratio_thre
private

Definition at line 26 of file ObjectContactTurnaroundDetectorBase.h.

boost::shared_ptr<FirstOrderLowPassFilter<double> > ObjectContactTurnaroundDetectorBase::friction_coeff_wrench_filter
private

Definition at line 19 of file ObjectContactTurnaroundDetectorBase.h.

bool ObjectContactTurnaroundDetectorBase::is_filter_reset
private

Definition at line 34 of file ObjectContactTurnaroundDetectorBase.h.

bool ObjectContactTurnaroundDetectorBase::is_hold_values
private

Definition at line 34 of file ObjectContactTurnaroundDetectorBase.h.

bool ObjectContactTurnaroundDetectorBase::is_other_constraint_detected
private

Definition at line 34 of file ObjectContactTurnaroundDetectorBase.h.

double ObjectContactTurnaroundDetectorBase::max_time
private

Definition at line 26 of file ObjectContactTurnaroundDetectorBase.h.

hrp::Vector3 ObjectContactTurnaroundDetectorBase::moment_center
private

Definition at line 22 of file ObjectContactTurnaroundDetectorBase.h.

size_t ObjectContactTurnaroundDetectorBase::other_detect_count_thre
private

Definition at line 31 of file ObjectContactTurnaroundDetectorBase.h.

std::vector<double> ObjectContactTurnaroundDetectorBase::phi1
private

Definition at line 36 of file ObjectContactTurnaroundDetectorBase.h.

std::vector<double> ObjectContactTurnaroundDetectorBase::phi2
private

Definition at line 36 of file ObjectContactTurnaroundDetectorBase.h.

std::vector<process_mode> ObjectContactTurnaroundDetectorBase::pmode
private

Definition at line 37 of file ObjectContactTurnaroundDetectorBase.h.

std::string ObjectContactTurnaroundDetectorBase::print_str
private

Definition at line 33 of file ObjectContactTurnaroundDetectorBase.h.

std::vector<double> ObjectContactTurnaroundDetectorBase::raw_wrench
private

Definition at line 36 of file ObjectContactTurnaroundDetectorBase.h.

std::vector<double> ObjectContactTurnaroundDetectorBase::ref_dwrench
private

Definition at line 36 of file ObjectContactTurnaroundDetectorBase.h.

boost::shared_ptr<FirstOrderLowPassFilter<hrp::dvector6> > ObjectContactTurnaroundDetectorBase::resultant_dwrench_filter
private

Definition at line 21 of file ObjectContactTurnaroundDetectorBase.h.

boost::shared_ptr<FirstOrderLowPassFilter<hrp::dvector6> > ObjectContactTurnaroundDetectorBase::resultant_wrench_filter
private

Definition at line 20 of file ObjectContactTurnaroundDetectorBase.h.

size_t ObjectContactTurnaroundDetectorBase::start_count_thre
private

Definition at line 31 of file ObjectContactTurnaroundDetectorBase.h.

double ObjectContactTurnaroundDetectorBase::start_ratio_thre
private

Definition at line 26 of file ObjectContactTurnaroundDetectorBase.h.

boost::shared_ptr<FirstOrderLowPassFilter<double> > ObjectContactTurnaroundDetectorBase::wrench_filter
private

Definition at line 17 of file ObjectContactTurnaroundDetectorBase.h.


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


hrpsys
Author(s): AIST, Fumio Kanehiro
autogenerated on Thu May 6 2021 02:41:53