The RMP Motion Controller APIs
NetworkNode

Represents an EtherCAT node / SubDevice (Drive, I/O Block, etc) on the network. This class provides an interface to all digital and analog I/O on the node, as well as the ability to read and write SDOs. Get or create a NetworkNode using MotionController::NetworkNodeGet or the Axis property, NetworkNode. More...

Functions

bool Exists ()
 Returns true if this NetworkNode exists on a physical network.
 
RSINodeType TypeGet ()
 Get the node type, as determined by the Vendor ID and Product Code.
 
bool IsEtherCAT ()
 Check if the node is EtherCAT.
 
bool IsSynqNet ()
 Check if the node is SynqNet.
 
bool HasIO ()
 Returns true if the node has any kind of inputs or outputs (analog/digital).
 
bool DigitalInGet (int32_t digitalInNumber)
 Get the state of a digital input.
 
bool DigitalOutGet (int32_t digitalOutNumber)
 Get the state of a digital output.
 
void DigitalOutSet (int32_t digitalOutNumber, bool state)
 Set the state of a digital output.
 
int32_t AnalogInGet (int32_t analogChannel)
 Get the value of an analog input.
 
int32_t AnalogOutGet (int32_t analogChannel)
 Get the value of an analog output.
 
void AnalogOutSet (int32_t analogChannel, int32_t analogValue)
 Set the value of an analog output.
 
int32_t DigitalInCountGet ()
 Get the number of digital inputs on this node.
 
int32_t DigitalOutCountGet ()
 Get the number of digital outputs on this node.
 
int32_t AnalogInCountGet ()
 Get the number of analog inputs on this node.
 
int32_t AnalogOutCountGet ()
 Get the number of analog outputs on this node.
 
int32_t SegmentCountGet ()
 Get the number of segments on this node.
 
int32_t SegmentDigitalInCountGet (int32_t segmentNumber)
 Get the number of digital inputs on a segment.
 
int32_t SegmentDigitalOutCountGet (int32_t segmentNumber)
 Get the number of digital outputs on a segment.
 
int32_t SegmentAnalogInCountGet (int32_t segmentNumber)
 Get the number of analog inputs on a segment.
 
int32_t SegmentAnalogOutCountGet (int32_t segmentNumber)
 Get the number of analog outputs on a segment.
 
int32_t SegmentIDGet (int32_t segmentNumber)
 Get the ID number of a segment.
 
uint64_t DigitalInAddressGet (int32_t bitNumber)
 Get the controller memory address for a Node's digital input.
 
int32_t DigitalInMaskGet (int32_t bitNumber)
 Get the bitwise mask for a Node's digital input.
 
uint64_t DigitalOutAddressGet (int32_t bitNumber)
 Get the controller memory address for a Node's digital output.
 
int32_t DigitalOutMaskGet (int32_t bitNumber)
 Get the bitwise mask for a Node's digital output.
 
uint64_t AnalogInAddressGet (int32_t channel)
 Get the controller memory address for a Node's analog input.
 
int32_t AnalogInMaskGet (int32_t channel)
 Get the bitwise mask for a Node's analog input.
 
uint64_t AnalogOutAddressGet (int32_t channel)
 Get the controller memory address for a Node's analog output.
 
int32_t AnalogOutMaskGet (int32_t channel)
 Get the bitwise mask for a Node's analog output.
 
int32_t ServiceChannelRead (int32_t index, int32_t subIndex, int32_t byteCount)
 Read a number from the SDO.
 
int32_t ServiceChannelRead (int32_t index, int32_t subIndex, int32_t byteCount, uint32_t timeoutMilliseconds)
 
const char *const ServiceChannelReadString (int32_t index, int32_t subIndex, int32_t byteCount)
 Read a string from the SDO.
 
const char *const ServiceChannelReadString (int32_t index, int32_t subIndex, int32_t byteCount, uint32_t timeoutMilliseconds)
 
void ServiceChannelWrite (int32_t index, int32_t subIndex, int32_t byteCount, int32_t sdoValue)
 Write a number in the SDO.
 
void ServiceChannelWrite (int32_t index, int32_t subIndex, int32_t byteCount, int32_t sdoValue, uint32_t timeoutMilliseconds)
 
void ServiceChannelWrite (int32_t index, int32_t subIndex, int32_t byteCount, const char *const stringValue)
 Write a string in the SDO.
 
void ServiceChannelWrite (int32_t index, int32_t subIndex, int32_t byteCount, const char *const stringValue, uint32_t timeoutMilliseconds)
 
char * AKDASCIICommand (const char *const command)
 Send a Kollmorgen AKD ASCII command (NodeType must equal KOLLMORGEN_AKD)
 
void ClearFaults (int32_t axisNumber)
 Clear the faults for a specific axis number on this node.
 
uint32_t VendorIdGet ()
 Get the EtherCAT vendor ID.
 
const char *const NameGet ()
 Get the Node's Short Name that appears on NodeInfo.xml.
 
const char *const ProductNameGet ()
 Get the Node's Product/Long Name that appears on NodeInfo.xml.
 
const char *const VendorNameGet ()
 Get the Node's Vendor Name that appears on NodeInfo.xml.
 
uint32_t ProductCodeGet ()
 Get the EtherCAT product code.
 
uint32_t RevisionGet ()
 Get the EtherCAT hardware revision.
 
uint32_t StationAliasGet ()
 Get the EtherCAT station alias.
 
const char *const SerialNumberGet ()
 Get the serial number as text.
 
uint32_t AxisCountGet ()
 Get the number of Axis objects associated with this NetworkNode.
 
uint16_t StatusWordGet (int32_t axisIndex)
 Get the DS402 status word.
 
const char *const VersionGet ()
 Get the RSI RapidCode version.
 
int32_t MpiVersionMajor ()
 Get the major MPI version.
 
int32_t MpiVersionMinor ()
 Get the minor MPI version.
 
int32_t MpiVersionRelease ()
 Get the release MPI version.
 
int32_t RSIVersionMajor ()
 Get the major RSI version.
 
int32_t RSIVersionMinor ()
 Get the minor RSI version.
 
int32_t RSIVersionMicro ()
 Get the micro RSI version.
 
int32_t RSIVersionPatch ()
 Get the patch RSI version.
 
int32_t NumberGet ()
 Get the zero-based index of this object.
 
int32_t ErrorLogCountGet ()
 Get the number of software errors in the error log.
 
const RsiError *const ErrorLogGet ()
 Get the next RsiError in the log.
 
void ErrorLogClear ()
 Clear the error log.
 
void ThrowExceptions (bool state)
 Configure a class to throw exceptions.
 
const char *const RsiErrorMessageGet (RSIErrorMessage msg)
 Get the RSI-specific error message text for a specific RSIErrorMessage.
 
const char *const ErrorMessageGet (RSIErrorMessage msg)
 Get the detailed text message for an RSIErrorMessage.
 
bool WarningMsgCheck (RSIErrorMessage msg)
 Check to see if an RSIErrorMessage is a warning (true) or not (false).
 
void Trace (bool state)
 Enables/Disables trace output.
 
void TraceMaskOnSet (RSITrace maskOn)
 Turn on a particular trace output mask.
 
bool TraceMaskOnGet (RSITrace maskOn)
 Check to see if a particular trace output mask is turned on.
 
void TraceMaskOffSet (RSITrace maskOff)
 Turn off a particular trace output mask.
 
void TraceMaskClear ()
 Clear the trace output mask.
 
void TraceFileSet (const char *const fileName)
 Channels Tracing messages to specified file.
 
void TraceFileClose ()
 Stops Logging to the file.
 
void TraceInjectMessage (RSITrace traceLevel, const char *const message)
 Add a message to the Trace Log.
 

Static Attributes

static constexpr uint32_t SDOTimeoutMillisecondsDefault = 100
 Default time to wait when reading or writing an SDO with ServiceChannelRead() or ServiceChannelWrite().
 

Description

Definition at line 3744 of file rsi.h.