#include <EthercatMasterWithThread.hpp>
Public Member Functions | |
void | AutomaticReceiveOn (const bool enableAutomaticReceive) |
void | AutomaticSendOn (const bool enableAutomaticSend) |
void | deleteDataTraceRegistration (const unsigned int JointNumber) |
void | deleteJointTrajectoryControllerRegistration (const unsigned int JointNumber) |
void | getEthercatDiagnosticInformation (std::vector< ec_slavet > ðercatSlaveInfos) |
unsigned int | getNumberOfSlaves () const |
return the quantity of ethercat slave which have an input/output buffer More... | |
unsigned int | getNumberOfThreadCyclesPerSecond () |
bool | isErrorInSoemDriver () |
bool | isEtherCATConnectionEstablished () |
bool | isThreadActive () |
bool | receiveProcessData () |
void | registerDataTrace (void *object, const unsigned int JointNumber) |
void | registerJointLimitMonitor (JointLimitMonitor *object, const unsigned int JointNumber) |
void | registerJointTrajectoryController (JointTrajectoryController *object, const unsigned int JointNumber) |
bool | sendProcessData () |
Private Member Functions | |
bool | closeEthercat () |
closes the ethercat connection More... | |
EthercatMasterWithThread (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 More... | |
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) |
void | updateSensorActorValues () |
~EthercatMasterWithThread () | |
Static Private Attributes | |
static std::string | configFileName |
static std::string | configFilepath |
Friends | |
class | EthercatMaster |
class | YouBotGripper |
class | YouBotGripperBar |
class | YouBotJoint |
Additional Inherited Members | |
Protected Member Functions inherited from youbot::EthercatMasterInterface | |
EthercatMasterInterface () | |
virtual | ~EthercatMasterInterface () |
The Ethercat Master is managing the whole ethercat communication It have to be a singleton in the system
Definition at line 85 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 66 of file EthercatMasterWithThread.cpp.
|
private |
Definition at line 103 of file EthercatMasterWithThread.cpp.
|
virtual |
Implements youbot::EthercatMasterInterface.
Definition at line 148 of file EthercatMasterWithThread.cpp.
|
virtual |
Implements youbot::EthercatMasterInterface.
Definition at line 126 of file EthercatMasterWithThread.cpp.
|
private |
closes the ethercat connection
Definition at line 441 of file EthercatMasterWithThread.cpp.
void youbot::EthercatMasterWithThread::deleteDataTraceRegistration | ( | const unsigned int | JointNumber | ) |
Definition at line 278 of file EthercatMasterWithThread.cpp.
void youbot::EthercatMasterWithThread::deleteJointTrajectoryControllerRegistration | ( | const unsigned int | JointNumber | ) |
Definition at line 222 of file EthercatMasterWithThread.cpp.
|
virtual |
provides all ethercat slave informations from the SOEM driver
ethercatSlaveInfos | ethercat slave informations |
Implements youbot::EthercatMasterInterface.
Definition at line 169 of file EthercatMasterWithThread.cpp.
|
privatevirtual |
gets a mailbox message form the buffer which came form the motor controllers
msgBuffer | ethercat mailbox message |
jointNumber | joint number of the receiver joint |
Implements youbot::EthercatMasterInterface.
Definition at line 508 of file EthercatMasterWithThread.cpp.
|
privatevirtual |
get a ethercat message form the buffer
msgBuffer | ethercat message |
jointNumber | joint number of the receiver joint |
Implements youbot::EthercatMasterInterface.
Definition at line 480 of file EthercatMasterWithThread.cpp.
|
virtual |
return the quantity of ethercat slave which have an input/output buffer
Implements youbot::EthercatMasterInterface.
Definition at line 120 of file EthercatMasterWithThread.cpp.
unsigned int youbot::EthercatMasterWithThread::getNumberOfThreadCyclesPerSecond | ( | ) |
Definition at line 235 of file EthercatMasterWithThread.cpp.
|
private |
establishes the ethercat connection
Definition at line 293 of file EthercatMasterWithThread.cpp.
|
virtual |
checks if an error has occurred in the soem driver returns a true if an error has occurred
Implements youbot::EthercatMasterInterface.
Definition at line 199 of file EthercatMasterWithThread.cpp.
|
virtual |
Implements youbot::EthercatMasterInterface.
Definition at line 242 of file EthercatMasterWithThread.cpp.
|
virtual |
Implements youbot::EthercatMasterInterface.
Definition at line 113 of file EthercatMasterWithThread.cpp.
|
private |
Definition at line 691 of file EthercatMasterWithThread.cpp.
|
private |
receives mailbox messages and stores them in the buffer
mailboxMsg | ethercat mailbox message |
Definition at line 542 of file EthercatMasterWithThread.cpp.
|
virtual |
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 190 of file EthercatMasterWithThread.cpp.
void youbot::EthercatMasterWithThread::registerDataTrace | ( | void * | object, |
const unsigned int | JointNumber | ||
) |
Definition at line 263 of file EthercatMasterWithThread.cpp.
|
virtual |
Implements youbot::EthercatMasterInterface.
Definition at line 248 of file EthercatMasterWithThread.cpp.
void youbot::EthercatMasterWithThread::registerJointTrajectoryController | ( | JointTrajectoryController * | object, |
const unsigned int | JointNumber | ||
) |
Definition at line 207 of file EthercatMasterWithThread.cpp.
|
private |
sends the mailbox Messages which have been stored in the buffer
mailboxMsg | ethercat mailbox message |
Definition at line 521 of file EthercatMasterWithThread.cpp.
|
virtual |
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 181 of file EthercatMasterWithThread.cpp.
|
privatevirtual |
stores a mailbox message in a buffer which will be sent to the motor controllers
msgBuffer | ethercat mailbox message |
jointNumber | joint number of the sender joint |
Implements youbot::EthercatMasterInterface.
Definition at line 497 of file EthercatMasterWithThread.cpp.
|
privatevirtual |
stores a ethercat message to the buffer
msgBuffer | ethercat message |
jointNumber | joint number of the sender joint |
Implements youbot::EthercatMasterInterface.
Definition at line 461 of file EthercatMasterWithThread.cpp.
|
private |
sends and receives ethercat messages and mailbox messages to and from the motor controllers this method is executed in a separate thread
Definition at line 559 of file EthercatMasterWithThread.cpp.
|
friend |
Definition at line 86 of file EthercatMasterWithThread.hpp.
|
friend |
Definition at line 88 of file EthercatMasterWithThread.hpp.
|
friend |
Definition at line 89 of file EthercatMasterWithThread.hpp.
|
friend |
Definition at line 87 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 209 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 229 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 207 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 227 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 233 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 221 of file EthercatMasterWithThread.hpp.
|
staticprivate |
Definition at line 223 of file EthercatMasterWithThread.hpp.
|
staticprivate |
Definition at line 225 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 245 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 247 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 231 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 188 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 186 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 192 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 194 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 178 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 180 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 241 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 243 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 182 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 205 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 203 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 211 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 213 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 235 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 215 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 184 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 217 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 219 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 190 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 201 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 199 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 197 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 237 of file EthercatMasterWithThread.hpp.
|
private |
Definition at line 239 of file EthercatMasterWithThread.hpp.