Classes | Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
ethercat_hardware::WGSoftProcessor Class Reference

#include <wg_soft_processor.h>

Classes

struct  Info
 

Public Member Functions

void add (WGMailbox *mbx, const std::string &actuator_name, const std::string &processor_name, unsigned iram_address, unsigned ctrl_address)
 
bool initialize (EthercatCom *com)
 
 WGSoftProcessor ()
 

Protected Member Functions

bool assertReset (const Info &info, std::ostream &err_msg)
 Puts soft processor in reset. More...
 
const WGSoftProcessor::Infoget (const std::string &actuator_name, const std::string &processor_name, std::ostream &err_out) const
 Get pointer to soft processor by name. Returns NULL if processor d/n exist and create message in err_out. More...
 
bool readFirmwareCB (ethercat_hardware::SoftProcessorFirmwareRead::Request &request, ethercat_hardware::SoftProcessorFirmwareRead::Response &response)
 
bool releaseReset (const Info &info, std::ostream &err_msg)
 Takes soft processor out of reset. More...
 
bool resetCB (ethercat_hardware::SoftProcessorReset::Request &request, ethercat_hardware::SoftProcessorReset::Response &response)
 
bool writeFirmwareCB (ethercat_hardware::SoftProcessorFirmwareWrite::Request &request, ethercat_hardware::SoftProcessorFirmwareWrite::Response &response)
 

Protected Attributes

EthercatComcom_
 
std::vector< Infoprocessors_
 
ros::ServiceServer read_firmware_service_
 service that allows read of soft processor firmware More...
 
ros::ServiceServer reset_service_
 service that resets soft-processor More...
 
ros::ServiceServer write_firmware_service_
 service that allows write of soft processor firmware More...
 

Static Protected Attributes

static const unsigned IRAM_INSTRUCTION_LENGTH = 1024
 

Detailed Description

Certain version of WG0X device firmware use soft proccessors to perform certain tasks. For soft processors it is sometimes benificial to allow firmware to be modified to support different devices

Definition at line 57 of file wg_soft_processor.h.

Constructor & Destructor Documentation

ethercat_hardware::WGSoftProcessor::WGSoftProcessor ( )

Definition at line 10 of file wg_soft_processor.cpp.

Member Function Documentation

void ethercat_hardware::WGSoftProcessor::add ( WGMailbox mbx,
const std::string &  actuator_name,
const std::string &  processor_name,
unsigned  iram_address,
unsigned  ctrl_address 
)

Definition at line 26 of file wg_soft_processor.cpp.

bool ethercat_hardware::WGSoftProcessor::assertReset ( const Info info,
std::ostream &  err_msg 
)
protected

Puts soft processor in reset.

Definition at line 176 of file wg_soft_processor.cpp.

const WGSoftProcessor::Info * ethercat_hardware::WGSoftProcessor::get ( const std::string &  actuator_name,
const std::string &  processor_name,
std::ostream &  err_out 
) const
protected

Get pointer to soft processor by name. Returns NULL if processor d/n exist and create message in err_out.

Definition at line 38 of file wg_soft_processor.cpp.

bool ethercat_hardware::WGSoftProcessor::initialize ( EthercatCom com)

Definition at line 15 of file wg_soft_processor.cpp.

bool ethercat_hardware::WGSoftProcessor::readFirmwareCB ( ethercat_hardware::SoftProcessorFirmwareRead::Request &  request,
ethercat_hardware::SoftProcessorFirmwareRead::Response &  response 
)
protected

Definition at line 56 of file wg_soft_processor.cpp.

bool ethercat_hardware::WGSoftProcessor::releaseReset ( const Info info,
std::ostream &  err_msg 
)
protected

Takes soft processor out of reset.

Definition at line 184 of file wg_soft_processor.cpp.

bool ethercat_hardware::WGSoftProcessor::resetCB ( ethercat_hardware::SoftProcessorReset::Request &  request,
ethercat_hardware::SoftProcessorReset::Response &  response 
)
protected

Definition at line 143 of file wg_soft_processor.cpp.

bool ethercat_hardware::WGSoftProcessor::writeFirmwareCB ( ethercat_hardware::SoftProcessorFirmwareWrite::Request &  request,
ethercat_hardware::SoftProcessorFirmwareWrite::Response &  response 
)
protected

Definition at line 106 of file wg_soft_processor.cpp.

Member Data Documentation

EthercatCom* ethercat_hardware::WGSoftProcessor::com_
protected

Definition at line 108 of file wg_soft_processor.h.

const unsigned ethercat_hardware::WGSoftProcessor::IRAM_INSTRUCTION_LENGTH = 1024
staticprotected

Definition at line 84 of file wg_soft_processor.h.

std::vector<Info> ethercat_hardware::WGSoftProcessor::processors_
protected

Definition at line 86 of file wg_soft_processor.h.

ros::ServiceServer ethercat_hardware::WGSoftProcessor::read_firmware_service_
protected

service that allows read of soft processor firmware

Definition at line 95 of file wg_soft_processor.h.

ros::ServiceServer ethercat_hardware::WGSoftProcessor::reset_service_
protected

service that resets soft-processor

Definition at line 97 of file wg_soft_processor.h.

ros::ServiceServer ethercat_hardware::WGSoftProcessor::write_firmware_service_
protected

service that allows write of soft processor firmware

Definition at line 96 of file wg_soft_processor.h.


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


ethercat_hardware
Author(s): Rob Wheeler , Derek King
autogenerated on Thu Mar 4 2021 03:10:21