Robotics Library  0.7.0
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
rl::hal::WeissKms40 Class Reference

Weiss Robotics Force-Torque Sensor KMS 40. More...

#include <WeissKms40.h>

Inheritance diagram for rl::hal::WeissKms40:
Inheritance graph
[legend]

Public Types

enum  SystemState {
  SYSTEM_STATE_SCRIPT_FAILURE = 1073741824, SYSTEM_STATE_CMD_FAILURE = 536870912, SYSTEM_STATE_POWER_FAULT = 268435456, SYSTEM_STATE_TEMP_FAULT = 134217728,
  SYSTEM_STATE_CALIBRATION_FAULT = 67108864, SYSTEM_STATE_OVERRUN_MZ = 33554432, SYSTEM_STATE_OVERRUN_MY = 16777216, SYSTEM_STATE_OVERRUN_MX = 8388608,
  SYSTEM_STATE_OVERRUN_FZ = 4194304, SYSTEM_STATE_OVERRUN_FY = 2097152, SYSTEM_STATE_OVERRUN_FX = 1048576, SYSTEM_STATE_TEMP_WARNING = 2048,
  SYSTEM_STATE_CALIBRATION_EXPIRED = 1024, SYSTEM_STATE_SCRIPT_RUNNING = 32, SYSTEM_STATE_DAQ_RUNNING = 16, SYSTEM_STATE_FILTER_ENABLED = 8,
  SYSTEM_STATE_TARA = 4, SYSTEM_STATE_STABLE = 2, SYSTEM_STATE_CALIBRATION_VALID = 1
}
 

Public Member Functions

 WeissKms40 (const ::std::string &address="192.168.1.30", const unsigned short int &port=1000, const ::std::size_t &filter=0, const ::std::size_t &divider=1)
 
virtual ~WeissKms40 ()
 
void close ()
 
::rl::math::Vector doAcquireSingleFrame ()
 
::std::pair< ::std::chrono::system_clock::time_point, ::std::chrono::system_clock::duration > doGetCalibrationDateLifetime ()
 
::rl::math::Matrix doGetCalibrationMatrix ()
 
::boost::dynamic_bitset doGetDataAcquisitionMask ()
 
::std::string doGetDescriptorString ()
 
::std::size_t doGetFilter ()
 
::std::string doGetFirmwareVersion ()
 
::std::size_t doGetFrameSendDivider ()
 
::std::size_t doGetSerialNumber ()
 
SystemState doGetSystemFlags ()
 
::std::string doGetSystemType ()
 
bool doGetTare ()
 
float doGetTemperature ()
 
::std::size_t doGetVerboseLevel ()
 
::std::vector< ::std::string > doPrintVariable (const ::std::vector< ::std::string > &variables)
 
::boost::dynamic_bitset doSetDataAcquisitionMask (const ::boost::dynamic_bitset<> &mask)
 
::std::string doSetDescriptorString (const ::std::string &value)
 
::std::size_t doSetFilter (const ::std::size_t &value)
 
::std::size_t doSetFrameSendDivider (const ::std::size_t &value)
 
bool doSetTare (const bool &doOn)
 
::std::size_t doSetVerboseLevel (const ::std::size_t &level)
 
void doStartContinuousDataAcquisition ()
 
void doStopContinuousDataAcquisition ()
 
::rl::math::Vector getForces () const
 
::rl::math::Vector getForcesTorques () const
 
::rl::math::Real getForcesTorquesMaximum (const ::std::size_t &i) const
 
::rl::math::Real getForcesTorquesMinimum (const ::std::size_t &i) const
 
::rl::math::Vector getTorques () const
 
void open ()
 
void start ()
 
void step ()
 
void stop ()
 
- Public Member Functions inherited from rl::hal::CyclicDevice
 CyclicDevice (const ::std::chrono::nanoseconds &updateRate)
 
virtual ~CyclicDevice ()
 
virtual ::std::chrono::nanoseconds getUpdateRate () const
 
- Public Member Functions inherited from rl::hal::Device
 Device ()
 
virtual ~Device ()
 
bool isConnected () const
 
bool isRunning () const
 
- Public Member Functions inherited from rl::hal::SixAxisForceTorqueSensor
 SixAxisForceTorqueSensor ()
 
virtual ~SixAxisForceTorqueSensor ()
 
::std::size_t getForcesCount () const
 
::rl::math::Real getForcesMaximum (const ::std::size_t &i) const
 
::rl::math::Real getForcesMinimum (const ::std::size_t &i) const
 
::std::size_t getTorquesCount () const
 
::rl::math::Real getTorquesMaximum (const ::std::size_t &i) const
 
::rl::math::Real getTorquesMinimum (const ::std::size_t &i) const
 
- Public Member Functions inherited from rl::hal::ForceSensor
 ForceSensor ()
 
virtual ~ForceSensor ()
 
- Public Member Functions inherited from rl::hal::TorqueSensor
 TorqueSensor ()
 
virtual ~TorqueSensor ()
 

Private Member Functions

::std::string recv (const ::std::string &command)
 

Private Attributes

::std::size_t divider
 
::std::size_t filter
 
::rl::math::Vector frame
 
Socket socket
 

Additional Inherited Members

- Protected Member Functions inherited from rl::hal::Device
void setConnected (const bool &connected)
 
void setRunning (const bool &running)
 

Detailed Description

Weiss Robotics Force-Torque Sensor KMS 40.

See "KMS Command Set Reference Manual": <www.weiss-robotics.de/en/download.html?cid=70&fid=37&id=164>

Member Enumeration Documentation

◆ SystemState

Enumerator
SYSTEM_STATE_SCRIPT_FAILURE 
SYSTEM_STATE_CMD_FAILURE 
SYSTEM_STATE_POWER_FAULT 
SYSTEM_STATE_TEMP_FAULT 
SYSTEM_STATE_CALIBRATION_FAULT 
SYSTEM_STATE_OVERRUN_MZ 
SYSTEM_STATE_OVERRUN_MY 
SYSTEM_STATE_OVERRUN_MX 
SYSTEM_STATE_OVERRUN_FZ 
SYSTEM_STATE_OVERRUN_FY 
SYSTEM_STATE_OVERRUN_FX 
SYSTEM_STATE_TEMP_WARNING 
SYSTEM_STATE_CALIBRATION_EXPIRED 
SYSTEM_STATE_SCRIPT_RUNNING 
SYSTEM_STATE_DAQ_RUNNING 
SYSTEM_STATE_FILTER_ENABLED 
SYSTEM_STATE_TARA 
SYSTEM_STATE_STABLE 
SYSTEM_STATE_CALIBRATION_VALID 

Constructor & Destructor Documentation

◆ WeissKms40()

rl::hal::WeissKms40::WeissKms40 ( const ::std::string &  address = "192.168.1.30",
const unsigned short int &  port = 1000,
const ::std::size_t &  filter = 0,
const ::std::size_t &  divider = 1 
)
Parameters
[in]addressTCP hostname
[in]portTCP port
[in]filterValue representing the ID of the filter that should be used
[in]dividerValue representing the frame rate divider

◆ ~WeissKms40()

rl::hal::WeissKms40::~WeissKms40 ( )
virtual

Member Function Documentation

◆ close()

void rl::hal::WeissKms40::close ( )
virtual
Precondition
stop()

Implements rl::hal::Device.

◆ doAcquireSingleFrame()

rl::math::Vector rl::hal::WeissKms40::doAcquireSingleFrame ( )

◆ doGetCalibrationDateLifetime()

std::pair<::std::chrono::system_clock::time_point,::std::chrono::system_clock::duration > rl::hal::WeissKms40::doGetCalibrationDateLifetime ( )

◆ doGetCalibrationMatrix()

rl::math::Matrix rl::hal::WeissKms40::doGetCalibrationMatrix ( )

◆ doGetDataAcquisitionMask()

boost::dynamic_bitset rl::hal::WeissKms40::doGetDataAcquisitionMask ( )

◆ doGetDescriptorString()

std::string rl::hal::WeissKms40::doGetDescriptorString ( )

◆ doGetFilter()

std::size_t rl::hal::WeissKms40::doGetFilter ( )

◆ doGetFirmwareVersion()

std::string rl::hal::WeissKms40::doGetFirmwareVersion ( )

◆ doGetFrameSendDivider()

std::size_t rl::hal::WeissKms40::doGetFrameSendDivider ( )

◆ doGetSerialNumber()

std::size_t rl::hal::WeissKms40::doGetSerialNumber ( )

◆ doGetSystemFlags()

WeissKms40::SystemState rl::hal::WeissKms40::doGetSystemFlags ( )

◆ doGetSystemType()

std::string rl::hal::WeissKms40::doGetSystemType ( )

◆ doGetTare()

bool rl::hal::WeissKms40::doGetTare ( )

◆ doGetTemperature()

float rl::hal::WeissKms40::doGetTemperature ( )
Returns
[ °C ]

◆ doGetVerboseLevel()

std::size_t rl::hal::WeissKms40::doGetVerboseLevel ( )

◆ doPrintVariable()

std::vector<::std::string > rl::hal::WeissKms40::doPrintVariable ( const ::std::vector< ::std::string > &  variables)

◆ doSetDataAcquisitionMask()

boost::dynamic_bitset rl::hal::WeissKms40::doSetDataAcquisitionMask ( const ::boost::dynamic_bitset<> &  mask)

◆ doSetDescriptorString()

std::string rl::hal::WeissKms40::doSetDescriptorString ( const ::std::string &  value)

◆ doSetFilter()

std::size_t rl::hal::WeissKms40::doSetFilter ( const ::std::size_t &  value)

◆ doSetFrameSendDivider()

std::size_t rl::hal::WeissKms40::doSetFrameSendDivider ( const ::std::size_t &  value)

◆ doSetTare()

bool rl::hal::WeissKms40::doSetTare ( const bool &  doOn)

◆ doSetVerboseLevel()

std::size_t rl::hal::WeissKms40::doSetVerboseLevel ( const ::std::size_t &  level)

◆ doStartContinuousDataAcquisition()

void rl::hal::WeissKms40::doStartContinuousDataAcquisition ( )

◆ doStopContinuousDataAcquisition()

void rl::hal::WeissKms40::doStopContinuousDataAcquisition ( )

◆ getForces()

rl::math::Vector rl::hal::WeissKms40::getForces ( ) const
virtual
Parameters
[out]forces[N]

Implements rl::hal::ForceSensor.

◆ getForcesTorques()

rl::math::Vector rl::hal::WeissKms40::getForcesTorques ( ) const
virtual
Parameters
[in]forcesTorques[N],[N],[N],[Nm],[Nm],[Nm]

Implements rl::hal::SixAxisForceTorqueSensor.

◆ getForcesTorquesMaximum()

rl::math::Real rl::hal::WeissKms40::getForcesTorquesMaximum ( const ::std::size_t &  i) const
virtual
Returns
[N],[N],[N],[Nm],[Nm],[Nm]

Implements rl::hal::SixAxisForceTorqueSensor.

◆ getForcesTorquesMinimum()

rl::math::Real rl::hal::WeissKms40::getForcesTorquesMinimum ( const ::std::size_t &  i) const
virtual
Returns
[N],[N],[N],[Nm],[Nm],[Nm]

Implements rl::hal::SixAxisForceTorqueSensor.

◆ getTorques()

rl::math::Vector rl::hal::WeissKms40::getTorques ( ) const
virtual
Parameters
[out]torques[Nm]

Implements rl::hal::TorqueSensor.

◆ open()

void rl::hal::WeissKms40::open ( )
virtual

Implements rl::hal::Device.

◆ recv()

std::string rl::hal::WeissKms40::recv ( const ::std::string &  command)
private

◆ start()

void rl::hal::WeissKms40::start ( )
virtual
Precondition
open()

Implements rl::hal::Device.

◆ step()

void rl::hal::WeissKms40::step ( )
virtual
Precondition
start()

Implements rl::hal::CyclicDevice.

◆ stop()

void rl::hal::WeissKms40::stop ( )
virtual
Precondition
open()

Implements rl::hal::Device.

Member Data Documentation

◆ divider

::std::size_t rl::hal::WeissKms40::divider
private

◆ filter

::std::size_t rl::hal::WeissKms40::filter
private

◆ frame

::rl::math::Vector rl::hal::WeissKms40::frame
private

◆ socket

Socket rl::hal::WeissKms40::socket
private

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