Namespaces | Classes | Typedefs | Functions
icl_hardware::canopen_schunk Namespace Reference

Namespaces

namespace  ds301
namespace  ds402

Classes

class  CanOpenController
 The CanOpenController class is the main entry point for any calls to the canOpen System. More...
class  CanOpenReceiveThread
 The CanOpenReceiveThread class handles incoming canOpen messages. More...
class  DeviceException
 If something goes wrong with the host's CAN controller, this exception will be used. More...
class  DS301Group
 The DS301Group class is the base Class for all canOpen device groups, providing basic interfaces to the DS301 functionality. More...
class  DS301Node
 The DS301Node class Is the base class representation of canOpen devices. It is the access point to the most relevant functionalities of the DS301 protocol (canOpen) More...
class  DS402Group
 The DS402Group class is the base class for canOpen devices implementing the DS402 device protocol (motors) More...
class  DS402Node
 Class that holds devices according to the DS402 (drives and motion control) specification. More...
class  EMCY
 The EMCY class handles the spontaneously occurring Emergency (EMCY) messages, keeps track of a nodes EMCY state and offers translation of the error codes to human readable form. More...
class  HeartBeatMonitor
class  NMT
 The NMT class provides access to NMT functions of the canOpen protocol and keeps the NMT state of canOpen nodes. More...
class  NotFoundException
 This exception is thrown if a requested node or node group does not exist. More...
class  PDO
 The PDO class provides access to one (of the possible multiple) Process Data Object of a canOpen node. The class provides structures for transmit and received data and the functions to trigger down- and uploads. More...
class  PDOException
 PDO related exceptions go here. More...
class  ProtocolException
 Basic CanOpen exception that contains the Object dictionary index and subindex. More...
class  ResponseException
 Exceptions relating to device responses. More...
class  RPDO
 This class describes Receive PDOs, meaning PDOs that send data from the host to the device. More...
class  SchunkPowerBallNode
 This class gives a device specific interface for Schunk Powerballs, as they need some "special" treatment such as commutation search instead of homing. More...
class  SDO
 The SDO class represents Service Data Objects (SDO) that are used for slow access of the canOpen object dictionary. It uses the COB-ID which identifies entry with a 16bit index and 8 bit sub index and allows read and write operations. The SDO is mainly used to set up the system before the actual cyclic operation starts. This class holds the generic data, provides the up- and download functionality and parses incoming SDOs to ensure that they are correct. More...
class  TimeoutException
 If a device response times out, this exception will be thrown. More...
class  TPDO
 This class describes Transmit PDOs, meaning PDOs that send data from the device to the host. More...

Typedefs

typedef boost::shared_ptr
< icl_hardware::can::tCanDevice
CanDevPtr
typedef
icl_hardware::can::tCanMessage 
CanMsg
typedef boost::shared_ptr
< CanOpenReceiveThread
CanOpenReceiveThreadPtr
typedef boost::function< void(const
icl_hardware::can::tCanMessage
&msg)> 
ReceivedPacketCallback
 definition of boost function callback for received packages

Functions

std::string binaryString (const uint64_t num)
template<typename T >
std::string binaryString (const T num)
int boolify (int v)
template<typename T >
T convertFromCharVector (const std::vector< uint8_t > &vec)
 This converts a vector of uint8_t entries into another datatype with a matching byte length. The target datatypes must be of the same size as the vector has entries. Otherwise a std::bad_cast exception is thrown. So make sure to use a try/catch mechanism when using this function.
template<typename T >
std::vector< uint8_tconvertToCharVector (const T value)
 This little helper transforms any datatype that has a size of at most 4 Bytes into a vector of uint8_t. If the data can't be converted, because its size is more than 4 bytes, the vector will be empty.
 DECLARE_LOG_STREAM (CanOpen)
std::map< uint32_t, std::string > getErrorMapFromConfigFile (const std::string &filename, const std::string &category="error_codes")
 Creates an error map from a given INI file.
std::string hexArrayToString (const unsigned char *msg, const uint8_t length)
 Transforms an array of unsigned chars into a string of Hex representations of those chars.
std::string hexToString (const uint64_t num)
 Converts a hexadecimal number into its string representation 0xXX.
 REGISTER_LOG_STREAM (CanOpen)
std::string sanitizeString (const std::string &text)
 This function removes all non-graphical characters from the given string.
static void sendSync (const CanDevPtr &can_device)
 sendSync sends a SYNC message which is used to ensure synchronous processing of all CanOpen nodes.

Typedef Documentation

Definition at line 34 of file helper.h.

Definition at line 35 of file helper.h.

Definition at line 33 of file helper.h.

definition of boost function callback for received packages

Definition at line 39 of file CanOpenReceiveThread.h.


Function Documentation

Definition at line 53 of file helper.cpp.

template<typename T >
std::string icl_hardware::canopen_schunk::binaryString ( const T  num)

Definition at line 56 of file helper.h.

Definition at line 32 of file SchunkPowerBallNode.cpp.

template<typename T >
T icl_hardware::canopen_schunk::convertFromCharVector ( const std::vector< uint8_t > &  vec) [inline]

This converts a vector of uint8_t entries into another datatype with a matching byte length. The target datatypes must be of the same size as the vector has entries. Otherwise a std::bad_cast exception is thrown. So make sure to use a try/catch mechanism when using this function.

Parameters:
vecVector of uint8_t entries

Definition at line 147 of file helper.h.

template<typename T >
std::vector<uint8_t> icl_hardware::canopen_schunk::convertToCharVector ( const T  value) [inline]

This little helper transforms any datatype that has a size of at most 4 Bytes into a vector of uint8_t. If the data can't be converted, because its size is more than 4 bytes, the vector will be empty.

Parameters:
valuearbitrary datatype value
Returns:
std::vector< uint8_t > Byte representation of value

Definition at line 104 of file helper.h.

std::map< uint32_t, std::string > icl_hardware::canopen_schunk::getErrorMapFromConfigFile ( const std::string &  filename,
const std::string &  category = "error_codes" 
)

Creates an error map from a given INI file.

The outcoming std::map will have uint32_t as identifiers and strings as messages. The file has to be structured as follows:

[error_codes] 0xXXXXXXXX=Message string of error error_code ...

the category "error_codes" can be any arbitrary identifier

Parameters:
filenameFilename of INI file
categoryCategory string

Definition at line 75 of file helper.cpp.

std::string icl_hardware::canopen_schunk::hexArrayToString ( const unsigned char *  msg,
const uint8_t  length 
)

Transforms an array of unsigned chars into a string of Hex representations of those chars.

Parameters:
msgArray with bytes to print
lengthNumber of entries in the array
Returns:
std::string representation of the array

Definition at line 42 of file helper.cpp.

Converts a hexadecimal number into its string representation 0xXX.

Parameters:
numchar with hexadecimal number
Returns:
std::string string representation of num

Definition at line 33 of file helper.cpp.

std::string icl_hardware::canopen_schunk::sanitizeString ( const std::string &  text)

This function removes all non-graphical characters from the given string.

All spaces, tabs and all special characters not in !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ will be removed.

Parameters:
[in]textString that will be parsed
Returns:
std::string sanitized string

Definition at line 62 of file helper.cpp.

static void icl_hardware::canopen_schunk::sendSync ( const CanDevPtr &  can_device) [inline, static]

sendSync sends a SYNC message which is used to ensure synchronous processing of all CanOpen nodes.

Parameters:
can_devicedevice handle to use for the communication

Definition at line 41 of file sync.h.



schunk_canopen_driver
Author(s): Felix Mauch , Georg Heppner
autogenerated on Thu Jun 6 2019 20:17:24