00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef _CALIBRATED_WRENCH_SENSOR_HPP_
00023 #define _CALIBRATED_WRENCH_SENSOR_HPP_
00024
00025 #include <rtt/TaskContext.hpp>
00026 #include <rtt/Ports.hpp>
00027 #include <rtt/Property.hpp>
00028
00029 #include <ocl/OCL.hpp>
00030 #include <kdl/frames.hpp>
00031
00032 namespace OCL{
00033
00034 class CalibratedWrenchSensor : public RTT::TaskContext
00035 {
00036 public:
00037 CalibratedWrenchSensor(const std::string& name);
00038 virtual ~CalibratedWrenchSensor(){};
00039
00040 private:
00041 virtual bool configureHook();
00042 virtual bool startHook();
00043 virtual void updateHook();
00044 virtual void stopHook();
00045 virtual void cleanupHook(){};
00046
00047 RTT::ReadDataPort<KDL::Wrench> wrench_in;
00048 RTT::ReadDataPort<KDL::Frame> mount_position;
00049
00050 RTT::WriteDataPort<KDL::Wrench> wrench_out;
00051
00052 RTT::Property<KDL::Frame> WF_prop;
00053 RTT::Property<KDL::Frame> CF_prop;
00054 RTT::Property<KDL::Vector> cog_prop;
00055 RTT::Property<double> mass_prop;
00056
00057 KDL::Vector cog;
00058 KDL::Frame F_m_comp,F_m_ws;
00059 double mass;
00060 };
00061 }
00062
00063 #endif