13 #include <rtm/idl/BasicDataType.hh> 14 #include <rtm/idl/ExtendedDataTypes.hh> 16 #include <rtm/DataFlowComponentBase.h> 20 #include <rtm/idl/BasicDataTypeSkel.h> 21 #include <rtm/idl/ExtendedDataTypesSkel.h> 48 virtual RTC::ReturnCode_t onInitialize();
52 virtual RTC::ReturnCode_t onFinalize();
94 bool startImpedanceController(
const std::string& i_name_);
95 bool startImpedanceControllerNoWait(
const std::string& i_name_);
96 bool stopImpedanceController(
const std::string& i_name_);
97 bool stopImpedanceControllerNoWait(
const std::string& i_name_);
98 bool setImpedanceControllerParam(
const std::string& i_name_, OpenHRP::ImpedanceControllerService::impedanceParam i_param_);
99 bool getImpedanceControllerParam(
const std::string& i_name_, OpenHRP::ImpedanceControllerService::impedanceParam& i_param_);
100 void waitImpedanceControllerTransition(std::string i_name_);
156 double sr_gain, avoid_gain, reference_gain, manipulability_limit;
165 sr_gain(1.0), avoid_gain(0.001), reference_gain(0.01), manipulability_limit(0.1), transition_count(0), is_active(false)
174 void copyImpedanceParam (OpenHRP::ImpedanceControllerService::impedanceParam& i_param_,
const ImpedanceParam& param);
175 void updateRootLinkPosRot (TimedOrientation3D tmprpy);
176 void getTargetParameters ();
177 void calcImpedanceControl ();
178 void calcForceMoment();
182 std::map<std::string, hrp::VirtualForceSensorParam>
m_vfs;
183 std::map<std::string, hrp::Vector3> abs_forces, abs_moments, abs_ref_forces,
abs_ref_moments;
200 #endif // IMPEDANCE_H
std::map< std::string, ImpedanceParam > m_impedance_param
TimedOrientation3D m_baseRpy
std::vector< TimedDoubleSeq > m_ref_force
std::map< std::string, hrp::Vector3 > abs_ref_moments
InPort< TimedOrientation3D > m_rpyIn
RTC::CorbaPort m_ImpedanceControllerServicePort
InPort< TimedDoubleSeq > m_qRefIn
hrp::dvector transition_joint_q
ImpedanceControllerService_impl m_service0
std::map< std::string, hrp::VirtualForceSensorParam > m_vfs
InPort< TimedPoint3D > m_basePosIn
ExecutionContextHandle_t UniqueId
InPort< TimedDoubleSeq > m_qCurrentIn
std::vector< InPort< TimedDoubleSeq > * > m_forceIn
hrp::JointPathExPtr manip
TimedDoubleSeq m_qCurrent
unsigned int m_debugLevel
OutPort< TimedDoubleSeq > m_qOut
std::vector< TimedDoubleSeq > m_force
std::map< std::string, ee_trans > ee_map
InPort< TimedOrientation3D > m_baseRpyIn
std::vector< InPort< TimedDoubleSeq > * > m_ref_forceIn
void ImpedanceControllerInit(RTC::Manager *manager)