Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | Friends
youbot::EthercatMasterWithoutThread Class Reference

#include <EthercatMasterWithoutThread.hpp>

Inheritance diagram for youbot::EthercatMasterWithoutThread:
Inheritance graph
[legend]

List of all members.

Public Member Functions

void AutomaticReceiveOn (const bool enableAutomaticReceive)
void AutomaticSendOn (const bool enableAutomaticSend)
void getEthercatDiagnosticInformation (std::vector< ec_slavet > &ethercatSlaveInfos)
unsigned int getNumberOfSlaves () const
 return the quantity of ethercat slave which have an input/output buffer
bool isErrorInSoemDriver ()
bool isEtherCATConnectionEstablished ()
bool isThreadActive ()
bool receiveProcessData ()
void registerJointLimitMonitor (JointLimitMonitor *object, const unsigned int JointNumber)
bool sendProcessData ()

Private Member Functions

bool closeEthercat ()
 closes the ethercat connection
 EthercatMasterWithoutThread (const std::string &configFile, const std::string &configFilePath)
bool getMailboxMsgBuffer (YouBotSlaveMailboxMsg &mailboxMsg, const unsigned int jointNumber)
void getMsgBuffer (const unsigned int jointNumber, YouBotSlaveMsg &returnMsg)
void initializeEthercat ()
 establishes the ethercat connection
void parseYouBotErrorFlags (const YouBotSlaveMsg &messageBuffer)
bool receiveMailboxMessage (YouBotSlaveMailboxMsg &mailboxMsg)
bool sendMailboxMessage (const YouBotSlaveMailboxMsg &mailboxMsg)
void setMailboxMsgBuffer (const YouBotSlaveMailboxMsg &msgBuffer, const unsigned int jointNumber)
void setMsgBuffer (const YouBotSlaveMsg &msgBuffer, const unsigned int jointNumber)
 ~EthercatMasterWithoutThread ()

Private Attributes

ConfigFileconfigfile
bool ethercatConnectionEstablished
std::vector< SlaveMessageInput * > ethercatInputBufferVector
std::vector< SlaveMessageOutput * > ethercatOutputBufferVector
std::vector< ec_slavetethercatSlaveInfo
unsigned int ethercatTimeout
std::string ethernetDevice
std::vector
< YouBotSlaveMailboxMsg
firstMailboxBufferVector
char IOmap_ [4096]
ec_mbxbuft mailboxBufferReceive
ec_mbxbuft mailboxBufferSend
unsigned int mailboxTimeout
unsigned int nrOfSlaves
std::vector< YouBotSlaveMsgprocessDataBuffer

Static Private Attributes

static std::string configFileName
static std::string configFilepath

Friends

class EthercatMaster
class YouBotGripper
class YouBotGripperBar
class YouBotJoint

Detailed Description

The Ethercat Master is managing the whole ethercat communication It have to be a singleton in the system

Definition at line 87 of file EthercatMasterWithoutThread.hpp.


Constructor & Destructor Documentation

youbot::EthercatMasterWithoutThread::EthercatMasterWithoutThread ( const std::string &  configFile,
const std::string &  configFilePath 
) [private]

Definition at line 67 of file EthercatMasterWithoutThread.cpp.

Definition at line 98 of file EthercatMasterWithoutThread.cpp.


Member Function Documentation

void youbot::EthercatMasterWithoutThread::AutomaticReceiveOn ( const bool  enableAutomaticReceive) [virtual]

Implements youbot::EthercatMasterInterface.

Definition at line 131 of file EthercatMasterWithoutThread.cpp.

void youbot::EthercatMasterWithoutThread::AutomaticSendOn ( const bool  enableAutomaticSend) [virtual]

Implements youbot::EthercatMasterInterface.

Definition at line 122 of file EthercatMasterWithoutThread.cpp.

closes the ethercat connection

Definition at line 377 of file EthercatMasterWithoutThread.cpp.

void youbot::EthercatMasterWithoutThread::getEthercatDiagnosticInformation ( std::vector< ec_slavet > &  ethercatSlaveInfos) [virtual]

provides all ethercat slave informations from the SOEM driver

Parameters:
ethercatSlaveInfosethercat slave informations

Implements youbot::EthercatMasterInterface.

Definition at line 141 of file EthercatMasterWithoutThread.cpp.

bool youbot::EthercatMasterWithoutThread::getMailboxMsgBuffer ( YouBotSlaveMailboxMsg mailboxMsg,
const unsigned int  jointNumber 
) [private, virtual]

gets a mailbox message form the buffer which came form the motor controllers

Parameters:
msgBufferethercat mailbox message
jointNumberjoint number of the receiver joint

Implements youbot::EthercatMasterInterface.

Definition at line 436 of file EthercatMasterWithoutThread.cpp.

void youbot::EthercatMasterWithoutThread::getMsgBuffer ( const unsigned int  jointNumber,
YouBotSlaveMsg returnMsg 
) [private, virtual]

get a ethercat message form the buffer

Parameters:
msgBufferethercat message
jointNumberjoint number of the receiver joint

Implements youbot::EthercatMasterInterface.

Definition at line 410 of file EthercatMasterWithoutThread.cpp.

return the quantity of ethercat slave which have an input/output buffer

Implements youbot::EthercatMasterInterface.

Definition at line 115 of file EthercatMasterWithoutThread.cpp.

establishes the ethercat connection

Definition at line 225 of file EthercatMasterWithoutThread.cpp.

checks if an error has occurred in the soem driver returns a true if an error has occurred

Implements youbot::EthercatMasterInterface.

Definition at line 201 of file EthercatMasterWithoutThread.cpp.

Implements youbot::EthercatMasterInterface.

Definition at line 210 of file EthercatMasterWithoutThread.cpp.

Implements youbot::EthercatMasterInterface.

Definition at line 107 of file EthercatMasterWithoutThread.cpp.

Definition at line 488 of file EthercatMasterWithoutThread.cpp.

receives mailbox messages and stores them in the buffer

Parameters:
mailboxMsgethercat mailbox message

Definition at line 471 of file EthercatMasterWithoutThread.cpp.

receives ethercat messages from the motor controllers returns a true if everything it OK and returns false if something fail

Implements youbot::EthercatMasterInterface.

Definition at line 178 of file EthercatMasterWithoutThread.cpp.

void youbot::EthercatMasterWithoutThread::registerJointLimitMonitor ( JointLimitMonitor object,
const unsigned int  JointNumber 
) [virtual]

Implements youbot::EthercatMasterInterface.

Definition at line 217 of file EthercatMasterWithoutThread.cpp.

sends the mailbox Messages which have been stored in the buffer

Parameters:
mailboxMsgethercat mailbox message

Definition at line 447 of file EthercatMasterWithoutThread.cpp.

sends ethercat messages to the motor controllers returns a true if everything it OK and returns false if something fail

Implements youbot::EthercatMasterInterface.

Definition at line 155 of file EthercatMasterWithoutThread.cpp.

void youbot::EthercatMasterWithoutThread::setMailboxMsgBuffer ( const YouBotSlaveMailboxMsg msgBuffer,
const unsigned int  jointNumber 
) [private, virtual]

stores a mailbox message in a buffer which will be sent to the motor controllers

Parameters:
msgBufferethercat mailbox message
jointNumberjoint number of the sender joint

Implements youbot::EthercatMasterInterface.

Definition at line 422 of file EthercatMasterWithoutThread.cpp.

void youbot::EthercatMasterWithoutThread::setMsgBuffer ( const YouBotSlaveMsg msgBuffer,
const unsigned int  jointNumber 
) [private, virtual]

stores a ethercat message to the buffer

Parameters:
msgBufferethercat message
jointNumberjoint number of the sender joint

Implements youbot::EthercatMasterInterface.

Definition at line 398 of file EthercatMasterWithoutThread.cpp.


Friends And Related Function Documentation

friend class EthercatMaster [friend]

Reimplemented from youbot::EthercatMasterInterface.

Definition at line 89 of file EthercatMasterWithoutThread.hpp.

friend class YouBotGripper [friend]

Reimplemented from youbot::EthercatMasterInterface.

Definition at line 91 of file EthercatMasterWithoutThread.hpp.

friend class YouBotGripperBar [friend]

Reimplemented from youbot::EthercatMasterInterface.

Definition at line 92 of file EthercatMasterWithoutThread.hpp.

friend class YouBotJoint [friend]

Reimplemented from youbot::EthercatMasterInterface.

Definition at line 90 of file EthercatMasterWithoutThread.hpp.


Member Data Documentation

Definition at line 183 of file EthercatMasterWithoutThread.hpp.

Definition at line 191 of file EthercatMasterWithoutThread.hpp.

Definition at line 193 of file EthercatMasterWithoutThread.hpp.

Definition at line 195 of file EthercatMasterWithoutThread.hpp.

Definition at line 173 of file EthercatMasterWithoutThread.hpp.

Definition at line 171 of file EthercatMasterWithoutThread.hpp.

Definition at line 185 of file EthercatMasterWithoutThread.hpp.

Definition at line 189 of file EthercatMasterWithoutThread.hpp.

Definition at line 165 of file EthercatMasterWithoutThread.hpp.

Definition at line 175 of file EthercatMasterWithoutThread.hpp.

Definition at line 187 of file EthercatMasterWithoutThread.hpp.

Definition at line 181 of file EthercatMasterWithoutThread.hpp.

Definition at line 177 of file EthercatMasterWithoutThread.hpp.

Definition at line 179 of file EthercatMasterWithoutThread.hpp.

Definition at line 169 of file EthercatMasterWithoutThread.hpp.

Definition at line 167 of file EthercatMasterWithoutThread.hpp.


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


youbot_driver
Author(s): Jan Paulus
autogenerated on Mon Oct 6 2014 09:08:03