Class EventControl
Defined in File EventApi.h
Nested Relationships
Nested Types
Class Documentation
-
class EventControl
This class contains event control functions.
Public Functions
-
EventControl(WMX3Api *f)
Constructor to initialize an object of this class. The device created by the WMX3Api object passed to this constructor is used to execute API functions. Also see Devices.
-
EventControl(const EventControl &src)
Copy constructor to initialize an object of this class based on an existing object of this class. Also see Copy Operators.
-
EventControl &operator=(const EventControl &src)
Copy assignment operator to initialize an object of this class based on an existing object of this class. Also see Copy Operators.
-
EventControl()
Constructor to initialize an object of this class with a self device. Also see Self Devices.
-
~EventControl()
Destructor for this class.
-
bool IsDeviceValid()
Return TRUE if this class object has access to a device, and FALSE otherwise. A device is required to execute most functions in this class. If this function returns FALSE, a device can be created by calling the CreateDevice function from the WMX3Api object that was passed to the constructor of this class.
Return TRUE if this class object has access to a device, and FALSE otherwise. A device is required to execute most functions in this class. If this function returns FALSE, a device can be created by calling the CreateDevice function from the WMX3Api object that was passed to the constructor of this class.
-
WMX3APIFUNC GetVersion(int *pMajorVersion, int *pMinorVersion, int *pRevisionVersion, int *pFixVersion)
Get the version of the module rtdll.
Get the version of the module rtdll.
- Parameters:
pMajorVersion – [out] The major version number.
pMinorVersion – [out] The minor version number.
pRevisionVersion – [out] The revision version number.
pFixVersion – [out] The fix version number.
-
WMX3APIFUNC SetEvent(int *pId, EventInput *pEventInput, EventOutput *pEventOutput, EventOption *pOption = NULL)
Set an event.
Set an event.
Events consist of two parts: an input function (the condition) and the output function (the action). When the condition is satisfied, the action will be executed.
Remark
The event input function is defined by a class that inherits the EventInput class. Each module defines up to one such class. For example, the CoreMotion module defines the CoreMotionEventInput class, which can be used to specify one of several event inputs.
Similarly, the event output function is defined by a class that inherits the EventOutput class. Each module defines up to one such class. For example, the CoreMotion module defines the CoreMotionEventOutput class, which can be used to specify one of several event outputs.
Once the output function is triggered, it cannot be triggered again until the input function becomes FALSE and then TRUE again. When the EnableEvent function is called for an event, the state of the event will be reset so that it may be triggered again.
Events are evaluated every communication cycle in the order of the identification numbers by the module that defines the event.
This function returns the ID number of the event. Each event has a unique ID number. However, once an event is deleted, the ID number of that event may be reused by a subsequently defined event. The event ID number is required to obtain the event status with the GetEvent function.
See also
- Parameters:
pId – [out] A pointer to an int variable that will contain the event identification number of the new event if the new event is successfully created. The event identification number identifies an event and is passed as arguments to several event command APIs. No two events will have the same event identification number.
pEventInput – [in] A pointer to an object of a class that extends the EventInput class that defines the event input function.
pEventOutput – [in] A pointer to an object of a class that extends the EventOutput class that defines the event output function.
pOption – [in] An optional parameter that is a pointer to an object of the EventOption class and specifies additional options to apply to the event.
-
WMX3APIFUNC SetEvent(int *pId, EventInput *pEventInput, EventOutput *pEventOutput, int id, EventOption *pOption = NULL)
Set an event.
Set an event.
This function is an overloaded function of SetEvent that allows the event identification number of the new event to be specified. If the event identification number is in use by another event or is out of range, this function will return an error.
Remark
This function is useful when the value returned by pId is difficult to read, such as when executing this function with the ApiBuffer class.
- Parameters:
pId – [out] A pointer to an int variable that will contain the event identification number of the new event if the new event is successfully created. The event identification number identifies an event and is passed as arguments to several event command APIs. No two events will have the same event identification number.
pEventInput – [in] A pointer to an object of a class that extends the EventInput class that defines the event input function.
pEventOutput – [in] A pointer to an object of a class that extends the EventOutput class that defines the event output function.
id – [in] The identification number that is requested by the new event. If this identification number is in use by another event, the IDInUse error will be returned. If this function succeeds, the pId argument will return this value. This value must be at least 0 and less than maxEvents.
pOption – [in] An optional parameter that is a pointer to an object of the EventOption class and specifies additional options to apply to the event.
-
WMX3APIFUNC GetEventModuleId(int id, int *pInputModuleId, int *pOutputModuleId)
Get the input function module ID and output function module ID of an existing event.
Get the input function module ID and output function module ID of an existing event.
This function reads the input function module ID and output function module ID of an event. The event is specified by the identification number.
Remark
- Parameters:
id – [in] The event identification number of the event.
pInputModuleId – [out] A pointer to an int that will contain the module ID of the input function.
pOutputModuleId – [out] A pointer to an int that will contain the module ID of the output function.
-
WMX3APIFUNC GetEvent(int id, EventInput *pEventInput, EventOutput *pEventOutput, EventOption *pOption = NULL)
Get the parameters of an event.
Get the parameters of an event.
This function gets the parameters of an event that was defined by SetEvent and other functions.
Remark
The objects passed to the pEventInput and pEventOutput arguments must match the classes that were used to define the input function and output function. If the classes are not matched, the EventInputModuleIdNotMatched or EventOutputModuleIdNotMatched error is returned.
- Parameters:
id – [in] The event identification number of the event.
pEventInput – [out] A pointer to an object of a class that extends the EventInput class that will contain the event input function. The class must match the class that was used to set the event input function.
pEventOutput – [out] A pointer to an object of a class that extends the EventOutput class that will contain the event output function. The class must match the class that was used to set the event output function.
pOption – [out] An optional pointer to an object of the EventOption class that will contain the option settings of the event.
-
WMX3APIFUNC GetEventOption(int id, EventOption *pOption)
Get the option settings of an existing event.
Get the option settings of an existing event.
This function reads the option settings of an event. The event is specified by the identification number.
Remark
- Parameters:
id – [in] The event identification number of the event.
pOption – [out] A pointer to an object of the EventOption class that will contain the option settings of the event.
-
WMX3APIFUNC SetEventInput(int id, EventInput *pEventInput)
This function sets the input function of an event.
This function sets the input function of an event.
This function sets the input function of an event. The event must be first defined with the SetEvent function.
Remark
- Parameters:
id – [in] The event identification number of the event.
pEventInput – [in] A pointer to an EventInput class object that defines the event input function.
-
WMX3APIFUNC SetEventOutput(int id, EventOutput *pEventOutput)
This function sets the output function of an event.
This function sets the output function of an event.
This function sets the output function of an event. The event must be first defined with the SetEvent function.
Remark
- Parameters:
id – [in] The event identification number of the event.
pEventOutput – [in] A pointer to an EventOutput class object that defines the event output function.
-
WMX3APIFUNC GetEventInput(int id, EventInput *pEventInput)
This function gets the input function of an event.
This function gets the input function of an event.
This function gets the input function of an event. The event must be first defined with the SetEvent function.
Remark
- Parameters:
id – [in] The event identification number of the event.
pEventInput – [out] A pointer to an EventInput class object that will contain the event input function.
-
WMX3APIFUNC GetEventOutput(int id, EventOutput *pEventOutput)
This function gets the output function of an event.
This function gets the output function of an event.
This function gets the input function of an event. The event must be first defined with the SetEvent function.
Remark
- Parameters:
id – [in] The event identification number of the event.
pEventOutput – [out] A pointer to an EventOutput class object that will contain the event output function.
-
WMX3APIFUNC GetAllEventID(AllEventID *pEventIdData, int filterInputModuleId = -1, int filterOutputModuleId = -1)
Get the IDs of all existing events.
Get the IDs of all existing events.
This function obtains the IDs of all events that are currently defined. The IDs may be passed to other functions that reference event IDs. For example, an event ID may be passed to the GetEvent API function to obtain further information about that event.
Remark
- Parameters:
pEventIdData – [out] A pointer to an AllEventID class object that will contain the id of all existing events.
filterInputModuleId – [in] An optional parameter that will modify the function to only obtain events with input functions defined by the specified ModuleId.
filterOutputModuleId – [in] An optional parameter that will modify the function to only obtain events with output functions defined by the specified ModuleId.
-
WMX3APIFUNC EnableEvent(int id, unsigned char enable)
Enable or disable an existing event.
Enable or disable an existing event.
This function enables or disables an existing event. The event is specified by the identification number. The event must first be created using the SetEvent API function.
Remark
A disabled event will not be evaluated. A disabled event can later be enabled by another call to this API function.
The initial enabled or disabled state of an event created by a call to SetEvent will depend on the enabled parameter of the Event object passed to SetEvent.
- Parameters:
id – [in] The event identification number of the event.
enable – [in] If 0, the event will be disabled. If 1, the event will be enabled.
-
WMX3APIFUNC RemoveEvent(int id)
Remove an existing event.
Remove an existing event.
This function removes an existing event. The event is specified by the identification number.
Remark
This function will permanently remove an event. The event identification number of the event will be freed, and may be assigned to events defined later.
This function blocks execution and will return at the end of the next cyclic interrupt. If communication is stopped (and events are not being processed), this function is non-blocking and will remove the event immediately.
- Parameters:
id – [in] The event identification number of the event.
-
WMX3APIFUNC ClearAllEvent()
Clear all existing events.
Clear all existing events.
This function permanently clears all existing events. All event identification numbers will be freed, and may be assigned to events defined later.
Remark
This function blocks execution and will return at the end of the next cyclic interrupt. If communication is stopped (and events are not being processed), this function is non-blocking and will clear all events immediately.
-
WMX3APIFUNC SetCustomEvent(int *pId, int inputModuleId, void *pInputData, int inputDataSize, int outputModuleId, void *pOutputData, int outputDataSize, int id, CustomEventOption *pOption = NULL)
Reserved.
Reserved.
- Parameters:
pId – [out] A pointer to an int variable that will contain the event identification number of the new event if the new event is successfully created. The event identification number identifies an event and is passed as arguments to several event command APIs. No two events will have the same event identification number.
inputModuleId – [in] The ID of the module that defines the class inheriting EventInput passed to pInputData.
pInputData – [in] A pointer to an object of a class that inherits the EventInput class.
inputDataSize – [in] The size of the object passed to pInputData, in bytes.
outputModuleId – [in] The ID of the module that defines the class inheriting EventOutput passed to pOutputData.
pOutputData – [in] A pointer to an object of a class that inherits the EventOutput class.
outputDataSize – [in] The size of the object passed to pOutputData, in bytes.
id – [in] The identification number that is requested by the new event. If this identification number is in use by another event, the IDInUse error will be returned. If this function succeeds, the pId argument will return this value. This value must be at least 0 and less than maxEvents.
pOption – [in] An optional parameter that is a pointer to an object of the EventOption class and specifies additional options to apply to the event.
-
WMX3APIFUNC SetCustomEventInput(int id, int moduleId, void *pInputData, int inputDataSize)
Reserved.
Reserved.
- Parameters:
id – [in] The event identification number of the event.
moduleId – [in] The ID of the module that defines the class inheriting EventInput passed to pInputData.
pInputData – [in] A pointer to an object of a class that inherits the EventInput class.
inputDataSize – [in] The size of the object passed to pInputData, in bytes.
-
WMX3APIFUNC SetCustomEventOutput(int id, int moduleId, void *pOutputData, int outputDataSize)
Reserved.
Reserved.
- Parameters:
id – [in] The event identification number of the event.
moduleId – [in] The ID of the module that defines the class inheriting EventOutput passed to pOutputData.
pOutputData – [in] A pointer to an object of a class that inherits the EventOutput class.
outputDataSize – [in] The size of the object passed to pOutputData, in bytes.
-
WMX3APIFUNC GetCustomEventInput(int id, void *pInputDataBuff, int inputDataBuffSize, int *pInputDataSize, int *pModuleId)
Reserved.
Reserved.
- Parameters:
id – [in] The event identification number of the event.
pInputDataBuff – [out] A pointer to a buffer that will contain an object of a class that inherits the EventInput class.
inputDataBuffSize – [in] The size of the buffer passed to pInputDataBuff, in bytes.
pInputDataSize – [out] A pointer to an int that will contain the size of the input data object, in bytes.
pModuleId – [out] A pointer to an int that will contain the module ID of the module that defines the input data object.
-
WMX3APIFUNC GetCustomEventOutput(int id, void *pOutputDataBuff, int outputDataBuffSize, int *pOutputDataSize, int *pModuleId)
Reserved.
Reserved.
- Parameters:
id – [in] The event identification number of the event.
pOutputDataBuff – [out] A pointer to a buffer that will contain an object of a class that inherits the EventOutput class.
outputDataBuffSize – [in] The size of the buffer passed to pOutputDataBuff, in bytes.
pOutputDataSize – [out] A pointer to an int that will contain the size of the output data object, in bytes.
pModuleId – [out] A pointer to an int that will contain the module ID of the module that defines the output data object.
-
WMX3APIFUNC SetCustomEventConfigureOfModule(int moduleId, void *pSetEventData, int setEventDataSize)
Reserved.
Reserved.
- Parameters:
moduleId – [in] The ID of module to configure.
pSetEventData – [in] A pointer to the data to use to configure the module.
setEventDataSize – [in] The size of the data passed to pSetEventData, in bytes.
-
WMX3APIFUNC SetEvent(int *pId, Event *pEventData)
Set an event.
Set an event.
Events consist of two parts: an input function (the condition) and the output function (the action). When the condition is satisfied, the action will be executed.
Remark
Once the output function is triggered, it cannot be triggered again until the input function becomes FALSE and then TRUE again. When the EnableEvent function is called for an event, the state of the event will be reset so that it may be triggered again immediately.
Events are evaluated in the order of the identification numbers once every communication cycle.
This function returns the ID number of the event. Each event has a unique ID number. However, once an event is deleted, the ID number of that event may be reused by a subsequently defined event. The event ID number is required to obtain the event status with the GetEvent function.
See Event for additional information regarding the types of events that may be defined.
- Parameters:
pId – [out] A pointer to an int variable that will contain the event identification number of the new event if the new event is successfully created. The event identification number identifies an event and is passed as arguments to several event command APIs. No two events will have the same event identification number.
pEventData – [in] A pointer to an Event class object that defines the event.
-
WMX3APIFUNC SetEvent(int *pId, Event *pEventData, int id)
Set an event.
Set an event.
This function is an overloaded function of SetEvent that allows the event identification number of the new event to be specified. If the event identification number is in use by another event or is out of range, this function will return an error.
Remark
This function is useful when the value returned by pId is difficult to read, such as when executing this function with the ApiBuffer class.
- Parameters:
pId – [out] A pointer to an int variable that will contain the event identification number of the new event if the new event is successfully created. The event identification number identifies an event and is passed as arguments to several event command APIs. No two events will have the same event identification number.
pEventData – [in] A pointer to an Event class object that defines the event.
id – [in] The identification number that is requested by the new event. If this identification number is in use by another event, the IDInUse error will be returned. If this function succeeds, the pId argument will return this value. This value must be at least 0 and less than maxEvents.
-
WMX3APIFUNC GetEvent(int id, Event *pEventData)
Get the parameters of an existing event.
Get the parameters of an existing event.
This function reads the parameters of an existing event. The event is specified by the identification number.
Remark
The structs in the input and output unions of the returned Event class that contain the event parameters are determined by the values of inputFunction and outputFunction of Event.
- Parameters:
id – [in] The event identification number of the event.
pEventData – [out] A pointer to an Event class object that will contain the parameters of the event.
-
WMX3APIFUNC SetSoftwareTouchProbe(unsigned int channel, unsigned char enable, int axis, int byteAddrs, int bitOffset, unsigned char logic, TouchProbeMode::T mode)
Set parameters for a software touch probe channel. A software touch probe channel is able to latch onto the encoder data of an axis when a particular input signal is detected.
Set parameters for a software touch probe channel. A software touch probe channel is able to latch onto the encoder data of an axis when a particular input signal is detected.
See also
- Parameters:
channel – [in] The channel of the software touch probe. The number of available channels is contained in the maxTouchprobeChannel constant. Touch probe parameters are unique to each channel.
enable – [in] Whether the software touch probe is enabled or not. The API function EnableSoftwareTouchProbe can be used to enable or disable a software touch probe without modifying the touch probe parameters.
axis – [in] The axis to latch the encoder data.
byteAddrs – [in] The byte address of the input signal that triggers latching the encoder data.
bitOffset – [in] The bit address of the input signal that triggers latching the encoder data.
logic – [in] The polarity of the input signal. If set to 0, the encoder data is latched when the input signal changes from 1 to 0. If set to 1, the encoder data is latched when the input signal changes from 0 to 1.
mode – [in] The mode of the software touch probe. If set to LatchFirst, the latched encoder data will not be overwritten when there are subsequent input signal triggers. When the latched data is read using the GetSoftwareTouchProbeCounterValue API function, the software touch probe is considered to have no latched data any more, and the software touch probe will be able to latch encoder data again. If set to LatchLast, the latched encoder data will be overwritten when there are subsequent input signal triggers.
-
WMX3APIFUNC EnableSoftwareTouchProbe(unsigned int channel, unsigned char enable)
Enable a software touch probe channel. A software touch probe channel will only latch encoder data when enabled.
Enable a software touch probe channel. A software touch probe channel will only latch encoder data when enabled.
- Parameters:
channel – [in] The channel of the software touch probe.
enable – [in] Set to 0 to disable the software touch probe and 1 to enable the software touch probe.
-
WMX3APIFUNC GetSoftwareTouchProbe(unsigned int channel, unsigned char *pEnabled, int *pAxis, int *pByteAddrs, int *pBitOffset, unsigned char *pLogic, TouchProbeMode::T *pMode)
Get parameters of a software touch probe channel.
Get parameters of a software touch probe channel.
- Parameters:
channel – [in] The channel of the software touch probe. The number of available channels is contained in the maxTouchprobeChannel constant. Touch probe parameters are unique to each channel.
pEnabled – [out] A pointer to an unsigned char that will contain whether the software touch probe is enabled or not. The API function EnableSoftwareTouchProbe can be used to enable or disable a software touch probe without modifying the touch probe parameters.
pAxis – [out] A pointer to an int that will contain the axis to latch the encoder data.
pByteAddrs – [out] A pointer to an int that will contain the byte address of the input signal that triggers latching the encoder data.
pBitOffset – [out] A pointer to an int that will contain the bit address of the input signal that triggers latching the encoder data.
pLogic – [out] A pointer to an unsigned char that will contain the polarity of the input signal. If set to 0, the encoder data is latched when the input signal changes from 1 to 0. If set to 1, the encoder data is latched when the input signal changes from 0 to 1.
pMode – [out] A pointer to a TouchProbeMode variable that will contain the mode of the software touch probe. If set to LatchFirst, any latched encoder data will not be overwritten when there are subsequent input signal triggers. When the latched data is read using the GetSoftwareTouchProbeCounterValue API function, the software touch probe is considered to have no latched data any more, and the software touch probe will be able to latch encoder data again. If set to LatchLast, latched encoder data will be overwritten when there are subsequent input signal triggers.
-
WMX3APIFUNC IsSoftwareTouchProbeLatched(unsigned int channel, unsigned char *pLatched)
Check whether a software touch probe channel has latched data.
Check whether a software touch probe channel has latched data.
- Parameters:
channel – [in] The channel of the software touch probe.
pLatched – [out] A pointer to an unsigned char that will contain whether the software touch probe channel has latched data. This value is set to 1 if encoder data has been latched. This value is reset to 0 whenever the GetSoftwareTouchProbeCounterValue API function is called.
-
WMX3APIFUNC GetSoftwareTouchProbeCounterValue(unsigned int channel, unsigned char *pLatched, double *pCounterValue)
Get latched data of software touch probe.
Get latched data of software touch probe.
- Parameters:
channel – [in] The channel of the software touch probe.
pLatched – [out] A pointer to an unsigned char that will contain whether the software touch probe channel has latched data. This value is set to 1 if encoder data has been latched. This value is reset to 0 whenever the GetSoftwareTouchProbeCounterValue API function is called.
pCounterValue – [out] The encoder data latched by the software touch probe.
-
WMX3APIFUNC SetHardwareTouchProbe(int axis, unsigned char enable, TouchProbeMode::T mode, TouchProbeSource::T triggerSource, unsigned int channel)
Set parameters for the hardware touch probe of an axis. A hardware touch probe latches the encoder data of the axis when the touch probe input signal is detected.
Set parameters for the hardware touch probe of an axis. A hardware touch probe latches the encoder data of the axis when the touch probe input signal is detected.
See also
- Parameters:
axis – [in] The axis of the hardware touch probe.
enable – [in] This value determines the initial state of the hardware touch probe. Set to 0 to disable the hardware touch probe and 1 to enable the hardware touch probe.
mode – [in] The mode of the touch probe. If set to LatchFirst, the hardware touch probe will latch the encoder data when the next touch probe input signal is detected, but will not latch the encoder data for any subsequent touch probe input signals. If set to LatchLast, the hardware touch probe will latch the encoder data each time the touch probe input signal is detected.
triggerSource – [in] The trigger source of the touch probe. If set to ZPulse, the Z-pulse (index pulse) signal will trigger the touch probe. If set to TouchProbe, the touch probe signal will trigger the touch probe. The touch probe signal specifications will be dependent on the servo drive, and can often be configured to one of several inputs.
channel – [in] The channel of the touch probe. The allowed values are 0 or 1.
-
WMX3APIFUNC GetHardwareTouchProbeStatus(int axis, HardwareTouchProbeStatus *pStatus)
Get parameters and current state of the hardware touch probe of an axis.
Get parameters and current state of the hardware touch probe of an axis.
- Parameters:
axis – [in] The axis of the hardware touch probe.
pStatus – [out] A pointer to a HardwareTouchProbeStatus class object that contains the parameters and current state of the hardware touch probe.
-
WMX3APIFUNC EnableHardwareTouchProbe(int axis, unsigned char enable)
Enable or disable the hardware touch probe of an axis.
Enable or disable the hardware touch probe of an axis.
- Parameters:
axis – [in] The axis of the hardware touch probe.
enable – [in] Set to 0 to disable the hardware touch probe and 1 to enable the hardware touch probe.
-
WMX3APIFUNC SetPSOConfig(unsigned int channel, ComparisonType::T type, ComparatorSource *pSource, PSOOutput *pOutput, double minDurationMilliseconds, PSOOption *pOption = NULL)
Set parameters for a position synchronous output channel. A position synchronous output channel is able to output an output signal when certain conditions, such as an axis reaching a certain position, are met.
Set parameters for a position synchronous output channel. A position synchronous output channel is able to output an output signal when certain conditions, such as an axis reaching a certain position, are met.
See also
- Parameters:
channel – [in] The channel of the position synchronous output. The number of available channels is contained in the maxPsoChannel constant.
type – [in] The type of comparison to perform.
pSource – [in] The source to use for the comparison.
pOutput – [in] A pointer to an PSOOutput class object that specifies the type and address of the output to set based on the result of the comparison.
minDurationMilliseconds – [in] The duration to keep the output set after the comparison changes from true to false. The output will be set while the comparison yields true, and for the period specified in this argument after the comparison changes from true to false. This value has units of milliseconds.
pOption – [in] An optional argument that is a pointer to a class containing additional position synchronous output options.
-
WMX3APIFUNC GetPSOConfig(unsigned int channel, ComparisonType::T *pType, ComparatorSource *pSource, PSOOutput *pOutput, double *pMinDurationMilliseconds, PSOOption *pOption = NULL)
Get parameters for a position synchronous output channel.
Get parameters for a position synchronous output channel.
- Parameters:
channel – [in] The channel of the position synchronous output. The number of available channels is contained in the maxPsoChannel constant.
pType – [out] A pointer to a ComparisonType that will contain the type of comparison to perform.
pSource – [out] A pointer to a ComparatorSource class object that specifies the source to use for the comparison.
pOutput – [out] A pointer to an PSOOutput class object that specifies the type and address of the output to set based on the result of the comparison.
pMinDurationMilliseconds – [out] A pointer to a double that will contain the duration to keep the output set when the comparison changes from true to false, in units of milliseconds.
pOption – [out] An optional argument that is a pointer to a class that will return additional position synchronous output options.
-
WMX3APIFUNC SetPSOSingleData(unsigned int channel, double sData)
Set a single data point for a position synchronous output channel.
Set a single data point for a position synchronous output channel.
This function sets a single data point for a position synchronous output channel. Any data points that have been previously set by the SetPSOSingleData, SetPSOMultipleData, or SetPSOIntervalData functions are cleared.
Remark
See also
- Parameters:
channel – [in] The channel of the position synchronous output. The number of available channels is contained in the maxPsoChannel constant.
sData – [in] The data point.
-
WMX3APIFUNC SetPSOMultipleData(unsigned int channel, int count, double *pMData)
Set multiple data points for a position synchronous output channel.
Set multiple data points for a position synchronous output channel.
This function sets multiple data points for a position synchronous output channel. Any data points that have been previously set by the SetPSOSingleData, SetPSOMultipleData, or SetPSOIntervalData functions are cleared.
Remark
See also
- Parameters:
channel – [in] The channel of the position synchronous output. The number of available channels is contained in the maxPsoChannel constant.
count – [in] The number of data points at the memory location pointed by mData. The maximum number of data points is contained in the maxPsoData constant.
pMData – [in] A pointer to memory location containing a sequence of data points.
-
WMX3APIFUNC SetPSOIntervalData(unsigned int channel, double rangeStart, double rangeEnd, double interval)
Set data points over a range for a position synchronous output channel.
Set data points over a range for a position synchronous output channel.
This function sets data points over a range for a position synchronous output channel. Any data points that have been previously set by the SetPSOSingleData, SetPSOMultipleData, or SetPSOIntervalData functions are cleared.
Remark
All points p that satisfy
[p = rangeStart + n*interval]and[rangeStart < p <= rangeEnd]for integer n will trigger the output. For example, if rangeStart = 0, rangeEnd = 5000, and interval = 1000, then the output will be triggered at positions 1000, 2000, 3000, 4000, and 5000.The activeDataIndex status will return n when the output is set by the nth point. For example, in the above example, activeDataIndex will be set to 1 when the output is set by position 1000, 2 when the output is set by position 2000, 3 when the output is set by position 3000, 4 when the output is set by position 4000, and 5 when the output is set by position 5000.
The number of points p that are generated by this function is unlimited, and may exceed maxPsoData.
See also
- Parameters:
channel – [in] The channel of the position synchronous output. The number of available channels is contained in the maxPsoChannel constant.
rangeStart – [in] The starting position of the range. The first data point will be set to rangeStart + interval.
rangeEnd – [in] The end position of the range. This is the greatest position where the data point may be set.
interval – [in] The interval between each data point.
-
WMX3APIFUNC GetPSOData(unsigned int channel, int *pCount, double *pMData, int maxCount)
Get all data points that are currently set for a position synchronous output channel.
Get all data points that are currently set for a position synchronous output channel.
This function obtains the data points that have been set for a position synchronous output channel using the SetPSOSingleData or SetPSOMultipleData functions.
Remark
The GetFunctionDoesNotMatchSetFunction error is returned if the data for the position synchronous output channel has been set by the SetPSOIntervalData function.
- Parameters:
channel – [in] The channel of the position synchronous output. The number of available channels is contained in the maxPsoChannel constant.
pCount – [out] A pointer to an int that will contain the number of data points at the memory location pointed by mData. The maximum number of data points is contained in the maxPsoData constant.
pMData – [out] A pointer to a memory location that will contain the sequence of data points that are currently set for the position synchronous output channel. Enough space for the maximum number of data points (maxPsoData) must be reserved.
maxCount – [in] The maximum count of data to copy into pMData.
-
WMX3APIFUNC GetPSODataCount(unsigned int channel, int *pCount)
Get the number of data points that are currently set for a position synchronous output channel.
Get the number of data points that are currently set for a position synchronous output channel.
This function obtains the number of data points that have been set for a position synchronous output channel using the SetPSOSingleData or SetPSOMultipleData functions.
Remark
The GetFunctionDoesNotMatchSetFunction error is returned if the data for the position synchronous output channel has been set by the SetPSOIntervalData function.
- Parameters:
channel – [in] The channel of the position synchronous output. The number of available channels is contained in the maxPsoChannel constant.
pCount – [out] A pointer to an int that will contain the number of data points that are set for the position synchronous output channel. The maximum number of data points is contained in the maxPsoData constant.
-
WMX3APIFUNC GetPSOIntervalData(unsigned int channel, double *pRangeStart, double *pRangeEnd, double *pInterval)
Get the range and interval of a position synchronous output channel.
Get the range and interval of a position synchronous output channel.
This function obtains the range and interval that have been set for a position synchronous output channel using the SetPSOIntervalData function.
Remark
The GetFunctionDoesNotMatchSetFunction error is returned if the data for the position synchronous output channel has been set by the SetPSOSingleData or SetPSOMultipleData functions.
- Parameters:
channel – [in] The channel of the position synchronous output. The number of available channels is contained in the maxPsoChannel constant.
pRangeStart – [out] A pointer to a double that will contain the starting position of the range.
pRangeEnd – [out] A pointer to a double that will contain the end position of the range.
pInterval – [out] A pointer to a double that will contain the interval between each data point.
-
WMX3APIFUNC StartPSO(unsigned int channel)
Start a position synchronous output channel. A position synchronous output channel must be started before it controls the output.
Start a position synchronous output channel. A position synchronous output channel must be started before it controls the output.
See also
- Parameters:
channel – [in] The channel of the position synchronous output. The number of available channels is contained in the maxPsoChannel constant.
-
WMX3APIFUNC StopPSO(unsigned int channel)
Stop a position synchronous output channel. A stopped position synchronous output channel will stop controlling any outputs.
Stop a position synchronous output channel. A stopped position synchronous output channel will stop controlling any outputs.
- Parameters:
channel – [in] The channel of the position synchronous output. The number of available channels is contained in the maxPsoChannel constant.
-
WMX3APIFUNC GetPSOStatus(unsigned int channel, PSOStatus *pStatus)
Get the state of a position synchronous output channel.
Get the state of a position synchronous output channel.
- Parameters:
channel – [in] The channel of the position synchronous output. The number of available channels is contained in the maxPsoChannel constant.
pStatus – [out] A pointer to a PSOStatus class object that contains the state of the position synchronous output channel.
-
WMX3APIFUNC SetPlannedVelOverrideConfig(unsigned int channel, ComparisonType::T type, ComparatorSource *pSource, int axis)
Set parameters for a planned velocity override channel. A planned velocity override channel is able to override the velocity of an axis when certain conditions, such as an axis reaching a certain position, are met.
Set parameters for a planned velocity override channel. A planned velocity override channel is able to override the velocity of an axis when certain conditions, such as an axis reaching a certain position, are met.
See also
- Parameters:
channel – [in] The channel of the planned velocity override. The number of available channels is contained in the maxPveloChannel constant.
type – [in] The type of comparison to perform.
pSource – [in] A pointer to a ComparatorSource class object that specifies the source to use for the comparison.
axis – [in] The axis to override the velocity of when the condition yields true.
-
WMX3APIFUNC GetPlannedVelOverrideConfig(unsigned int channel, ComparisonType::T *pType, ComparatorSource *pSource, int *pAxis)
Get parameters for a planned velocity override channel.
Get parameters for a planned velocity override channel.
- Parameters:
channel – [in] The channel of the planned velocity override. The number of available channels is contained in the maxPveloChannel constant.
pType – [out] A pointer to a ComparisonType that will contain the type of comparison to perform.
pSource – [out] A pointer to a ComparatorSource class object that specifies the source to use for the comparison.
pAxis – [out] A pointer to an int that will contain the axis to override the velocity of when the condition yields true.
-
WMX3APIFUNC SetPlannedVelOverrideSingleData(unsigned int channel, PlannedVelocityData sData)
Set a single data point for a planned velocity override channel.
Set a single data point for a planned velocity override channel.
This function sets a single data point for a planned velocity override channel. Any data points that have been previously set by the SetPlannedVelOverrideSingleData or SetPlannedVelOverrideMultipleData functions are cleared.
Remark
See also
- Parameters:
channel – [in] The channel of the planned velocity override. The number of available channels is contained in the maxPveloChannel constant.
sData – [in] The data point as represented by a PlannedVelocityData class object.
-
WMX3APIFUNC SetPlannedVelOverrideMultipleData(unsigned int channel, int count, PlannedVelocityData *pMData)
Set multiple data points for a planned velocity override channel.
Set multiple data points for a planned velocity override channel.
This function sets multiple data points for a position synchronous output channel. Any data points that have been previously set by the SetPlannedVelOverrideSingleData or SetPlannedVelOverrideMultipleData functions are cleared.
Remark
See also
- Parameters:
channel – [in] The channel of the planned velocity override. The number of available channels is contained in the maxPveloChannel constant.
count – [in] The number of data points at the memory location pointed by mData. The maximum number of data points is contained in the maxPveloData constant.
pMData – [in] A pointer to a memory location containing a sequence of data points. Data points are represented by PlannedVelocityData class objects.
-
WMX3APIFUNC GetPlannedVelOverrideData(unsigned int channel, int *pCount, PlannedVelocityData *pMData, int maxCount)
Get all data points that are currently set for a planned velocity override channel.
Get all data points that are currently set for a planned velocity override channel.
- Parameters:
channel – [in] The channel of the planned velocity override. The number of available channels is contained in the maxPveloChannel constant.
pCount – [out] A pointer to an int that will contain the number of data points at the memory location pointed by mData. The maximum number of data points is contained in the maxPveloData constant.
pMData – [out] A pointer to a memory location that will contain the sequence of data points that are currently set for the planned velocity override channel. Enough space to store the maximum number of data points (maxPveloData) must be reserved. Data points are represented PlannedVelocityData class objects.
maxCount – [in] The maximum count of data to copy into pMData.
-
WMX3APIFUNC GetPlannedVelOverrideDataCount(unsigned int channel, int *pCount)
Get the number of data points that are currently set for a planned velocity override channel.
Get the number of data points that are currently set for a planned velocity override channel.
- Parameters:
channel – [in] The channel of the planned velocity override. The number of available channels is contained in the maxPveloChannel constant.
pCount – [out] A pointer to an int that will contain the number of data points that are set for the planned velocity override channel. The maximum number of data points is contained in the constants::maxPveloData.
-
WMX3APIFUNC StartPlannedVelOverride(unsigned int channel)
Start a planned velocity override channel. A planned velocity override channel must be started before it controls the output.
Start a planned velocity override channel. A planned velocity override channel must be started before it controls the output.
See also
- Parameters:
channel – [in] The channel of the planned velocity override. The number of available channels is contained in the maxPveloChannel constant.
-
WMX3APIFUNC StopPlannedVelOverride(unsigned int channel)
Stop a planned velocity override channel. A stopped planned velocity override channel will stop controlling any outputs.
Stop a planned velocity override channel. A stopped planned velocity override channel will stop controlling any outputs.
- Parameters:
channel – [in] The channel of the planned velocity override. The number of available channels is contained in the maxPveloChannel constant.
-
WMX3APIFUNC GetPlannedVelOverrideStatus(unsigned int channel, PlannedVelocityStatus *pStatus)
Get the state of a planned velocity override channel.
Get the state of a planned velocity override channel.
- Parameters:
channel – [in] The channel of the planned velocity override. The number of available channels is contained in the maxPveloChannel constant.
pStatus – [out] A pointer to a PlannedVelocityStatus class object that contains the state of the planned velocity override channel.
Public Static Functions
-
static WMX3APIFUNC ErrorToString(int errCode, char *pString, unsigned int size)
Get a string representation of the specified error code.
Get a string representation of the specified error code.
This function returns a string representation of the specified error code. The error code must be defined in the EventErrorCode enum or the ErrorCode enum in the WMX3Api.h header. All errors returned by functions in class EventControl will be defined in one of these enums. Errors returned by functions in other classes may not be defined in one of these enums, and when such errors are passed to this function, an ErrorCodeNotDefined error will be returned and pString will contain the string representation of this error.
Remark
If pString is too small to contain the entire string representation of the error code, pString will be set to an empty string. An array size of 256 characters will be enough to hold all string representations.
This function is static, and may be called without declaring an instance of the EventControl class or creating a device.
- Parameters:
errCode – [in] The error code to get the string representation of.
pString – [in] A char array that will contain the string representation of the error.
size – [in] The size of the char array in number of characters.
-
static WMX3APIFUNC ErrorToString(int errCode, wchar_t *pString, unsigned int size)
Get a string representation of the specified error code.
Get a string representation of the specified error code.
This function is a variation of ErrorToString that accepts a wchar_t array. Use this function when using Unicode character sets.
Remark
- Parameters:
errCode – [in] The error code to get the string representation of.
pString – [in] A wchar_t array that will contain the string representation of the error.
size – [in] The size of the wchar_t array in number of characters.
-
static WMX3APIFUNC ApiLogToString(unsigned char *pLogData, unsigned int logDataSize, char *pString, unsigned int size)
Get a string representation of the raw data of an API log.
Get a string representation of the raw data of an API log.
This function converts the raw data for one API function call that was extracted from the API log with the GetApiLogData function.
Remark
See also
- Parameters:
pLogData – [in] A char array containing the raw data.
logDataSize – [in] The size of the pLogData char array. This size must be equal to or greater than the size of the raw data.
pString – [out] A char array that will contain the string representation of the raw data of the API log.
size – [in] The size of the pString char array in number of characters.
-
static WMX3APIFUNC ApiLogToString(unsigned char *pLogData, unsigned int logDataSize, wchar_t *pString, unsigned int size)
Get a string representation of the raw data of an API log.
Get a string representation of the raw data of an API log.
This function is a variation of ApiLogToString that accepts a wchar_t array. Use this function when using Unicode character sets.
Remark
- Parameters:
pLogData – [in] A char array containing the raw data.
logDataSize – [in] The size of the char array. This size must be equal to or greater than the size of the raw data.
pString – [out] A wchar_t array that will contain the string representation of the raw data of the API log.
size – [out] The size of the pString wchar_t array in number of characters.
-
static WMX3APIFUNC GetLibVersion(int *pMajorVersion, int *pMinorVersion, int *pRevisionVersion, int *pFixVersion)
Get the version of the module library.
Get the version of the module library.
This function is static, and may be called without declaring an instance of this class or creating a device.
Remark
- Parameters:
pMajorVersion – [out] The major version number.
pMinorVersion – [out] The minor version number.
pRevisionVersion – [out] The revision version number.
pFixVersion – [out] The fix version number.
-
class ComparatorSource
This class contains data to perform a comparison.
Public Functions
-
ComparatorSource()
-
ComparatorSource(ComparatorSourceType::T sourceType, int axis)
Public Members
-
ComparatorSourceType::T sourceType
The type of source data to compare to.
-
int axis
The axis to obtain the source data from.
-
ComparatorSource()
-
class ComparatorSourceType
This enumerator class enumerates the sources for comparisons.
Public Types
-
enum T
Values:
-
enumerator PosCommand
Use the position command of an axis as the source.
-
enumerator PosFeedback
Use the position feedback of an axis as the source.
-
enumerator FollowingError
Use the following error of an axis (the difference between the position command and feedback) as the source.
-
enumerator PosCommand
-
enum T
-
class ComparisonType
This enumerator class enumerates types of comparisons. Comparisons are used to define conditions for certain functions.
Public Types
-
enum T
Values:
-
enumerator Disable
The comparison always yields false.
-
enumerator Equal
The comparison yields true when the source moves past one of the data points. The source is considered to move past a data point if the source is greater than or equal to the data point this cycle and less than that data point in the previous cycle, or if the source is less than or equal to the data point this cycle and greater than that data point in the previous cycle.
-
enumerator PositiveDirection
This comparison yields true when the source moves past one of the data points while moving in the positive direction. This occurs if the source is greater than or equal to a data point this cycle and less than that data point in the previous cycle.
-
enumerator NegativeDirection
This comparison yields true when the source moves past one of the data points while moving in the negative direction. This occurs if the source is less than or equal to a data point this cycle and greater than that data point in the previous cycle.
-
enumerator MoreThan
The comparison yields true when the source is greater than or equal to one of the data points.
-
enumerator LessThan
The comparison yields true when the source is less than or equal to one of the data points.
-
enumerator Disable
-
enum T
-
class Event
This class defines an event.
Public Functions
-
Event()
Public Members
-
EventInputFunction::T inputFunction
The input function of the event. The struct of the “input” union that is used depends on the selection of the input function.
-
union wmx3Api::EventControl::Event::InputFunctionArguments input
Arguments for the input function of the event.
-
EventOutputFunction::T outputFunction
The output function of the event. The struct of the “output” union that is used depends on the selection of the output function.
-
union wmx3Api::EventControl::Event::OutputFunctionArguments output
Arguments for the output function of the event.
-
unsigned char enabled
0: Event is disabled, 1: Event is enabled. If this class is used as a parameter for the SetEvent function, this value determines the initial enabled state of the event. If this class is used as a parameter for the GetEvent function, this value will contain the current enabled state of the event.
-
union InputFunctionArguments
This union defines the structs containing arguments for each input function type.
Public Functions
-
InputFunctionArguments()
Public Members
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::None none
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::IOBit ioBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::NotIOBit notIOBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::OrIOBit orIOBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::AndIOBit andIOBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::XorIOBit xorIOBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::NandIOBit nandIOBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::NorIOBit norIOBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::XnorIOBit xnorIOBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::DelayIOBit delayIOBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::MBit mBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::NotMBit notMBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::OrMBit orMBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::AndMBit andMBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::XorMBit xorMBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::NandMBit nandMBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::NorMBit norMBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::XnorMBit xnorMBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::DelayMBit delayMBit
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::AnotherEvent anotherEvent
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::DelayAnotherEvent delayAnotherEvent
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::EqualPos equalPos
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::GreaterPos greaterPos
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::LessPos lessPos
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::EqualVelocity equalVelocity
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::GreaterVelocity greaterVelocity
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::LessVelocity lessVelocity
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::EqualTrq equalTrq
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::GreaterTrq greaterTrq
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::LessTrq lessTrq
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::OpState opState
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::PosSET posSET
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::DelayedPosSET delayedPosSET
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::CommandDistributedEnd commandDistributedEnd
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::RemainingTime remainingTime
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::RemainingDistance remainingDistance
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::CompletedTime completedTime
-
struct wmx3Api::EventControl::Event::InputFunctionArguments::CompletedDistance completedDistance
-
struct AndIOBit
This structure contains arguments for the AndIOBit input function type.
Public Members
-
unsigned int byteAddress[2]
The byte address of the first I/O bit is specified in byteAddress[0]. The byte address of the second I/O bit is specified in byteAddress[1].
-
unsigned char bitAddress[2]
The bit address of the first I/O bit is specified in bitAddress[0]. The bit address of the second I/O bit is specified in bitAddress[1].
-
unsigned char invert[2]
If invert[0] is set to 1, the value of the first I/O bit will be inverted when calculating the event trigger. If invert[0] is set to 0, the first I/O bit is processed normally. If invert[1] is set to 1, the value of the second I/O bit will be inverted when calculating the event trigger. If invert[1] is set to 0, the second I/O bit is processed normally.
-
IOSourceType::T ioSourceType[2]
Determines the source of the I/O (input or output). ioSourceType[0] corresponds to the first I/O bit and ioSourceType[1] corresponds to the second I/O bit.
-
unsigned int byteAddress[2]
-
struct AndMBit
This structure contains arguments for the AndMBit input function type.
Public Members
-
unsigned int byteAddress[2]
The byte address of the first user memory bit is specified in byteAddress[0]. The byte address of the second user memory bit is specified in byteAddress[1].
-
unsigned char bitAddress[2]
The bit address of the first user memory bit is specified in bitAddress[0]. The bit address of the second user memory bit is specified in bitAddress[1].
-
unsigned char invert[2]
If invert[0] is set to 1, the value of the first user memory bit will be inverted when calculating the event trigger. If invert[0] is set to 0, the first user memory bit is processed normally. If invert[1] is set to 1, the value of the second user memory bit will be inverted when calculating the event trigger. If invert[1] is set to 0, the second user memory bit is processed normally.
-
unsigned int byteAddress[2]
-
struct AnotherEvent
This structure contains arguments for the AnotherEvent input function type.
Public Members
-
unsigned int eventID
The id number of the other event.
-
unsigned char invert
If set to 1, the result of the input function of the other event is inverted. This event will trigger when the other event would not trigger, and this event will not trigger when the other event would trigger. If set to 0, the result of the input function of the other event is processed normally.
-
unsigned int eventID
-
struct CommandDistributedEnd
This structure contains arguments for the CommandDistributedEnd input function type.
-
struct CompletedDistance
This structure contains arguments for the CompletedDistance input function type.
Public Members
-
unsigned int axis
The axis to monitor.
-
unsigned char invert
If set to 1, the logic of the input function is inverted. The event will trigger when the axis completed distance for the position command is less than the specified value. The event will not trigger if the axis is not executing a position command. If set to 0, the input function is processed normally.
-
double distance
The distance at which the event output will trigger, in user units.
-
unsigned int axis
-
struct CompletedTime
This structure contains arguments for the CompletedTime input function type.
Public Members
-
unsigned int axis
The axis to monitor.
-
unsigned char invert
If set to 1, the logic of the input function is inverted. The event will trigger when the axis elapsed time for the position command is less than the specified value. The event will not trigger if the axis is not executing a position command. If set to 0, the input function is processed normally.
-
double timeMilliseconds
The time at which the event output will trigger, in units of milliseconds.
-
unsigned int axis
-
struct DelayAnotherEvent
This structure contains arguments for the DelayAnotherEvent input function type.
Public Members
-
unsigned int eventID
The id nunmber of the other event.
-
unsigned char invert
If set to 1, the result of the input function of the other event is inverted. This event will trigger when the other event would not trigger (continuously for the specified period of time), and this event will not trigger when the other event would trigger. If set to 0, the result of the input function of the other event is processed normally.
-
unsigned int delayTime
The delay time in units of milliseconds.
-
unsigned int eventID
-
struct DelayedPosSET
This structure contains arguments for the DelayedPosSET input function type.
-
struct DelayIOBit
This structure contains arguments for the DelayIOBit input function type.
Public Members
-
unsigned int byteAddress
The byte address of the I/O bit.
-
unsigned char bitAddress
The bit address of the I/O bit.
-
unsigned char invert
If set to 1, the value of the I/O bit will be inverted when calculating the event trigger. The input function will trigger the event output when the I/O bit is continuously 0 for the specified period of time. If set to 0, the I/O bit is processed normally.
-
IOSourceType::T ioSourceType
Determines the source of the I/O (input or output).
-
unsigned int delayTime
The delay time in units of milliseconds.
-
unsigned int byteAddress
-
struct DelayMBit
This structure contains arguments for the DelayMBit input function type.
Public Members
-
unsigned int byteAddress
The byte address of the user memory bit.
-
unsigned char bitAddress
The bit address of the user memory bit.
-
unsigned char invert
If set to 1, the value of the user memory bit will be inverted when calculating the event trigger. The input function will trigger the event output when the user memory bit is continuously 0 for the specified period of time. If set to 0, the user memory bit is processed normally.
-
unsigned int delayTime
The delay time in units of milliseconds.
-
unsigned int byteAddress
-
struct EqualPos
This structure contains arguments for the EqualPos input function type.
Public Members
-
unsigned int axis
The axis to monitor.
-
double pos
The position at which the event output will trigger.
-
unsigned char disablePositiveDirection
If 0, process the input function normally. If 1, the event output will not trigger when the specified axis passes through the specified position while traveling in the positive direction.
-
unsigned char disableNegativeDirection
If 0, process the input function normally. If 1, the event output will not trigger when the specified axis passes through the specified position while traveling in the negative direction.
-
unsigned char useFeedback
If 0, the command position will be monitored. If 1, the feedback position will be monitored.
-
unsigned char invert
If set to 1, the logic of the input function is inverted. The event will trigger when the axis is not at the specified position and is not passing the specified position. If set to 0, the input function is processed normally.
-
unsigned char enableTolerance
If set to 1, the tolerance parameter determines the difference between the specified position and the position of the axis below which the event output will trigger. If set to 0, the tolerance will be set to the default value of 0.5 user units.
-
double tolerance
If the enableTolerance parameter is set to 1, this parameter determines the difference between the specified position and the position of the axis below which the event output will trigger. This parameter is specified in units of user units.
-
unsigned int axis
-
struct EqualTrq
This structure contains arguments for the EqualTrq input function type.
Public Members
-
unsigned int axis
The axis to monitor.
-
double trq
The torque at which the event output will trigger. The torque is specified in units of [%].
-
unsigned char invert
If set to 1, the logic of the input function is inverted. The event will trigger when the axis is not at the specified torque. If set to 0, the input function is processed normally.
-
unsigned char enableTolerance
If set to 1, the tolerance parameter determines the difference between the specified torque and the torque of the axis below which the event output will trigger. If set to 0, the tolerance will be set to the default value of 0.5 (in 0.1% units, indicating a tolerance of 0.05%).
-
double tolerance
If the enableTolerance parameter is set to 1, this parameter determines the difference between the specified torque and the torque of the axis below which the event output will trigger. This parameter is specified in 0.1% units.
-
unsigned char enableUnsigned
If set to 1, the trq parameter is specified as an unsigned value. The input function is evaluated using the absolute value of the axis torque. If set to 0, the trq parameter is specified as a signed value. The input function is evaluated using the axis torque that is negative when applied in the negative direction.
-
unsigned int axis
-
struct EqualVelocity
This structure contains arguments for the EqualVelocity input function type.
Public Members
-
unsigned int axis
The axis to monitor.
-
double velocity
The velocity at which the event output will trigger.
-
unsigned char useFeedback
If 0, the command velocity will be monitored. If 1, the feedback velocity will be monitored.
-
unsigned char invert
If set to 1, the logic of the input function is inverted. The event will trigger when the axis is not at the specified velocity. If set to 0, the input function is processed normally.
-
unsigned char enableTolerance
If set to 1, the tolerance parameter determines the difference between the specified velocity and the velocity of the axis below which the event output will trigger. If set to 0, the tolerance will be set to the default value of 0.5 user units per second.
-
double tolerance
If the enableTolerance parameter is set to 1, this parameter determines the difference between the specified velocity and the velocity of the axis below which the event output will trigger. This parameter is specified in units of user units per second.
-
unsigned char enableUnsigned
If set to 1, the velocity parameter is specified as an unsigned value. The input function is evaluated using the absolute value of the axis velocity. If set to 0, the velocity parameter is specified as a signed value. The input function is evaluated using the axis velocity that is negative when traveling in the negative direction.
-
unsigned int axis
-
struct GreaterPos
This structure contains arguments for the GreaterPos input function type.
Public Members
-
unsigned int axis
The axis to monitor.
-
double pos
The position at which the event output will trigger.
-
unsigned char disablePositiveDirection
If 0, process the input function normally. If 1, the event output will not trigger while the axis is stationary or traveling in the positive direction.
-
unsigned char disableNegativeDirection
If 0, process the input function normally. If 1, the event output will not trigger while the axis is stationary or traveling in the negative direction.
-
unsigned char useFeedback
If 0, the command position will be monitored. If 1, the feedback position will be monitored.
-
unsigned char invert
If set to 1, the logic of the input function is inverted. The event will trigger when the axis position is not greater than the specified position. If set to 0, the input function is processed normally.
-
unsigned int axis
-
struct GreaterTrq
This structure contains arguments for the GreaterTrq input function type.
Public Members
-
unsigned int axis
The axis to monitor.
-
double trq
The torque at which the event output will trigger. The torque is specified in units of [%].
-
unsigned char invert
If set to 1, the logic of the input function is inverted. The event will trigger when the axis torque is not greater than the specified torque. If set to 0, the input function is processed normally.
-
unsigned char enableUnsigned
If set to 1, the trq parameter is specified as an unsigned value. The input function is evaluated using the absolute value of the axis torque. If set to 0, the trq parameter is specified as a signed value. The input function is evaluated using the axis torque that is negative when applied in the negative direction.
-
unsigned int axis
-
struct GreaterVelocity
This structure contains arguments for the GreaterVelocity input function type.
Public Members
-
unsigned int axis
The axis to monitor.
-
double velocity
The velocity at which the event output will trigger.
-
unsigned char useFeedback
If 0, the command velocity will be monitored. If 1, the feedback velocity will be monitored.
-
unsigned char invert
If set to 1, the logic of the input function is inverted. The event will trigger when the axis velocity is not greater than the specified velocity. If set to 0, the input function is processed normally.
-
unsigned char enableUnsigned
If set to 1, the velocity parameter is specified as an unsigned value. The input function is evaluated using the absolute value of the axis velocity. If set to 0, the velocity parameter is specified as a signed value. The input function is evaluated using the axis velocity that is negative when traveling in the negative direction.
-
unsigned int axis
-
struct IOBit
This structure contains arguments for the IOBit input function type.
Public Members
-
unsigned int byteAddress
The byte address of the I/O bit.
-
unsigned char bitAddress
The bit address of the I/O bit.
-
unsigned char invert
If set to 1, the value of the I/O bit will be inverted when calculating the event trigger. The input function will trigger the event output when the I/O bit is 0. If set to 0, the I/O bit is processed normally.
-
IOSourceType::T ioSourceType
Determines the source of the I/O (input or output).
-
unsigned int byteAddress
-
struct LessPos
This structure contains arguments for the LessPos input function type.
Public Members
-
unsigned int axis
The axis to monitor.
-
double pos
The position at which the event output will trigger.
-
unsigned char disablePositiveDirection
If 0, process the input function normally. If 1, the event output will not trigger while the axis is stationary or traveling in the positive direction.
-
unsigned char disableNegativeDirection
If 0, process the input function normally. If 1, the event output will not trigger while the axis is stationary or traveling in the negative direction.
-
unsigned char useFeedback
If 0, the command position will be monitored. If 1, the feedback position will be monitored.
-
unsigned char invert
If set to 1, the logic of the input function is inverted. The event will trigger when the axis position is not less than the specified position. If set to 0, the input function is processed normally.
-
unsigned int axis
-
struct LessTrq
This structure contains arguments for the LessTrq input function type.
Public Members
-
unsigned int axis
The axis to monitor.
-
double trq
The torque at which the event output will trigger. The torque is specified in units of [%].
-
unsigned char invert
If set to 1, the logic of the input function is inverted. The event will trigger when the axis torque is not less than the specified torque. If set to 0, the input function is processed normally.
-
unsigned char enableUnsigned
If set to 1, the trq parameter is specified as an unsigned value. The input function is evaluated using the absolute value of the axis torque. If set to 0, the trq parameter is specified as a signed value. The input function is evaluated using the axis torque that is negative when applied in the negative direction.
-
unsigned int axis
-
struct LessVelocity
This structure contains arguments for the LessVelocity input function type.
Public Members
-
unsigned int axis
The axis to monitor.
-
double velocity
The velocity at which the event output will trigger.
-
unsigned char useFeedback
If 0, the command velocity will be monitored. If 1, the feedback velocity will be monitored.
-
unsigned char invert
If set to 1, the logic of the input function is inverted. The event will trigger when the axis velocity is not less than the specified velocity. If set to 0, the input function is processed normally.
-
unsigned char enableUnsigned
If set to 1, the velocity parameter is specified as an unsigned value. The input function is evaluated using the absolute value of the axis velocity. If set to 0, the velocity parameter is specified as a signed value. The input function is evaluated using the axis velocity that is negative when traveling in the negative direction.
-
unsigned int axis
-
struct MBit
This structure contains arguments for the MBit input function type.
Public Members
-
unsigned int byteAddress
The byte address of the user memory bit.
-
unsigned char bitAddress
The bit address of the user memory bit.
-
unsigned char invert
If set to 1, the value of the user memory bit will be inverted when calculating the event trigger. The input function will trigger the event output when the user memory bit is 0. If set to 0, the user memory bit is processed normally.
-
unsigned int byteAddress
-
struct NandIOBit
This structure contains arguments for the NandIOBit input function type.
Public Members
-
unsigned int byteAddress[2]
The byte address of the first I/O bit is specified in byteAddress[0]. The byte address of the second I/O bit is specified in byteAddress[1].
-
unsigned char bitAddress[2]
The bit address of the first I/O bit is specified in bitAddress[0]. The bit address of the second I/O bit is specified in bitAddress[1].
-
unsigned char invert[2]
If invert[0] is set to 1, the value of the first I/O bit will be inverted when calculating the event trigger. If invert[0] is set to 0, the first I/O bit is processed normally. If invert[1] is set to 1, the value of the second I/O bit will be inverted when calculating the event trigger. If invert[1] is set to 0, the second I/O bit is processed normally.
-
IOSourceType::T ioSourceType[2]
Determines the source of the I/O (input or output). ioSourceType[0] corresponds to the first I/O bit and ioSourceType[1] corresponds to the second I/O bit.
-
unsigned int byteAddress[2]
-
struct NandMBit
This structure contains arguments for the NandMBit input function type.
Public Members
-
unsigned int byteAddress[2]
The byte address of the first user memory bit is specified in byteAddress[0]. The byte address of the second user memory bit is specified in byteAddress[1].
-
unsigned char bitAddress[2]
The bit address of the first user memory bit is specified in bitAddress[0]. The bit address of the second user memory bit is specified in bitAddress[1].
-
unsigned char invert[2]
If invert[0] is set to 1, the value of the first user memory bit will be inverted when calculating the event trigger. If invert[0] is set to 0, the first user memory bit is processed normally. If invert[1] is set to 1, the value of the second user memory bit will be inverted when calculating the event trigger. If invert[1] is set to 0, the second user memory bit is processed normally.
-
unsigned int byteAddress[2]
-
struct None
This structure contains arguments for the None input function type.
Public Members
-
unsigned int reserved
Reserved.
-
unsigned int reserved
-
struct NorIOBit
This structure contains arguments for the NorIOBit input function type.
Public Members
-
unsigned int byteAddress[2]
The byte address of the first I/O bit is specified in byteAddress[0]. The byte address of the second I/O bit is specified in byteAddress[1].
-
unsigned char bitAddress[2]
The bit address of the first I/O bit is specified in bitAddress[0]. The bit address of the second I/O bit is specified in bitAddress[1].
-
unsigned char invert[2]
If invert[0] is set to 1, the value of the first I/O bit will be inverted when calculating the event trigger. If invert[0] is set to 0, the first I/O bit is processed normally. If invert[1] is set to 1, the value of the second I/O bit will be inverted when calculating the event trigger. If invert[1] is set to 0, the second I/O bit is processed normally.
-
IOSourceType::T ioSourceType[2]
Determines the source of the I/O (input or output). ioSourceType[0] corresponds to the first I/O bit and ioSourceType[1] corresponds to the second I/O bit.
-
unsigned int byteAddress[2]
-
struct NorMBit
This structure contains arguments for the NorMBit input function type.
Public Members
-
unsigned int byteAddress[2]
The byte address of the first user memory bit is specified in byteAddress[0]. The byte address of the second user memory bit is specified in byteAddress[1].
-
unsigned char bitAddress[2]
The bit address of the first user memory bit is specified in bitAddress[0]. The bit address of the second user memory bit is specified in bitAddress[1].
-
unsigned char invert[2]
If invert[0] is set to 1, the value of the first user memory bit will be inverted when calculating the event trigger. If invert[0] is set to 0, the first user memory bit is processed normally. If invert[1] is set to 1, the value of the second user memory bit will be inverted when calculating the event trigger. If invert[1] is set to 0, the second user memory bit is processed normally.
-
unsigned int byteAddress[2]
-
struct NotIOBit
This structure contains arguments for the NotIOBit input function type.
Public Members
-
unsigned int byteAddress
The byte address of the I/O bit.
-
unsigned char bitAddress
The bit address of the I/O bit.
-
unsigned char invert
If set to 1, the value of the I/O bit will be inverted when calculating the event trigger. The input function will trigger the event output when the I/O bit is 1. If set to 0, the I/O bit is processed normally.
-
IOSourceType::T ioSourceType
Determines the source of the I/O (input or output).
-
unsigned int byteAddress
-
struct NotMBit
This structure contains arguments for the NotMBit input function type.
Public Members
-
unsigned int byteAddress
The byte address of the user memory bit.
-
unsigned char bitAddress
The bit address of the user memory bit.
-
unsigned char invert
If set to 1, the value of the user memory bit will be inverted when calculating the event trigger. The input function will trigger the event output when the user memory bit is 1. If set to 0, the user memory bit is processed normally.
-
unsigned int byteAddress
-
struct OpState
This structure contains arguments for the OpState input function type.
Public Members
-
unsigned int axis
The axis to monitor.
-
OperationState::T opState
The operation state at which the event output will trigger.
-
unsigned char invert
If set to 1, the logic of the input function is inverted. The event will trigger when the axis operation state is not the specified operation state. If set to 0, the input function is processed normally.
-
unsigned int axis
-
struct OrIOBit
This structure contains arguments for the OrIOBit input function type.
Public Members
-
unsigned int byteAddress[2]
The byte address of the first I/O bit is specified in byteAddress[0]. The byte address of the second I/O bit is specified in byteAddress[1].
-
unsigned char bitAddress[2]
The bit address of the first I/O bit is specified in bitAddress[0]. The bit address of the second I/O bit is specified in bitAddress[1].
-
unsigned char invert[2]
If invert[0] is set to 1, the value of the first I/O bit will be inverted when calculating the event trigger. If invert[0] is set to 0, the first I/O bit is processed normally. If invert[1] is set to 1, the value of the second I/O bit will be inverted when calculating the event trigger. If invert[1] is set to 0, the second I/O bit is processed normally.
-
IOSourceType::T ioSourceType[2]
Determines the source of the I/O (input or output). ioSourceType[0] corresponds to the first I/O bit and ioSourceType[1] corresponds to the second I/O bit.
-
unsigned int byteAddress[2]
-
struct OrMBit
This structure contains arguments for the OrMBit input function type.
Public Members
-
unsigned int byteAddress[2]
The byte address of the first user memory bit is specified in byteAddress[0]. The byte address of the second user memory bit is specified in byteAddress[1].
-
unsigned char bitAddress[2]
The bit address of the first user memory bit is specified in bitAddress[0]. The bit address of the second user memory bit is specified in bitAddress[1].
-
unsigned char invert[2]
If invert[0] is set to 1, the value of the first user memory bit will be inverted when calculating the event trigger. If invert[0] is set to 0, the first user memory bit is processed normally. If invert[1] is set to 1, the value of the second user memory bit will be inverted when calculating the event trigger. If invert[1] is set to 0, the second user memory bit is processed normally.
-
unsigned int byteAddress[2]
-
struct RemainingDistance
This structure contains arguments for the RemainingDistance input function type.
Public Members
-
unsigned int axis
The axis to monitor.
-
unsigned char invert
If set to 1, the logic of the input function is inverted. The event will trigger when the axis remaining distance for the position command is greater than the specified value. The event will not trigger if the axis is not executing a position command. If set to 0, the input function is processed normally.
-
double distance
The distance at which the event output will trigger, in user units.
-
unsigned int axis
-
struct RemainingTime
This structure contains arguments for the RemainingTime input function type.
Public Members
-
unsigned int axis
The axis to monitor.
-
unsigned char invert
If set to 1, the logic of the input function is inverted. The event will trigger when the axis remaining time for the position command is greater than the specified value. The event will not trigger if the axis is not executing a position command. If set to 0, the input function is processed normally.
-
double timeMilliseconds
The time at which the event output will trigger, in units of milliseconds.
-
unsigned int axis
-
struct XnorIOBit
This structure contains arguments for the XnorIOBit input function type.
Public Members
-
unsigned int byteAddress[2]
The byte address of the first I/O bit is specified in byteAddress[0]. The byte address of the second I/O bit is specified in byteAddress[1].
-
unsigned char bitAddress[2]
The bit address of the first I/O bit is specified in bitAddress[0]. The bit address of the second I/O bit is specified in bitAddress[1].
-
unsigned char invert[2]
If invert[0] is set to 1, the value of the first I/O bit will be inverted when calculating the event trigger. If invert[0] is set to 0, the first I/O bit is processed normally. If invert[1] is set to 1, the value of the second I/O bit will be inverted when calculating the event trigger. If invert[1] is set to 0, the second I/O bit is processed normally.
-
IOSourceType::T ioSourceType[2]
Determines the source of the I/O (input or output). ioSourceType[0] corresponds to the first I/O bit and ioSourceType[1] corresponds to the second I/O bit.
-
unsigned int byteAddress[2]
-
struct XnorMBit
This structure contains arguments for the XnorMBit input function type.
Public Members
-
unsigned int byteAddress[2]
The byte address of the first user memory bit is specified in byteAddress[0]. The byte address of the second user memory bit is specified in byteAddress[1].
-
unsigned char bitAddress[2]
The bit address of the first user memory bit is specified in bitAddress[0]. The bit address of the second user memory bit is specified in bitAddress[1].
-
unsigned char invert[2]
If invert[0] is set to 1, the value of the first user memory bit will be inverted when calculating the event trigger. If invert[0] is set to 0, the first user memory bit is processed normally. If invert[1] is set to 1, the value of the second user memory bit will be inverted when calculating the event trigger. If invert[1] is set to 0, the second user memory bit is processed normally.
-
unsigned int byteAddress[2]
-
struct XorIOBit
This structure contains arguments for the XorIOBit input function type.
Public Members
-
unsigned int byteAddress[2]
The byte address of the first I/O bit is specified in byteAddress[0]. The byte address of the second I/O bit is specified in byteAddress[1].
-
unsigned char bitAddress[2]
The bit address of the first I/O bit is specified in bitAddress[0]. The bit address of the second I/O bit is specified in bitAddress[1].
-
unsigned char invert[2]
If invert[0] is set to 1, the value of the first I/O bit will be inverted when calculating the event trigger. If invert[0] is set to 0, the first I/O bit is processed normally. If invert[1] is set to 1, the value of the second I/O bit will be inverted when calculating the event trigger. If invert[1] is set to 0, the second I/O bit is processed normally.
-
IOSourceType::T ioSourceType[2]
Determines the source of the I/O (input or output). ioSourceType[0] corresponds to the first I/O bit and ioSourceType[1] corresponds to the second I/O bit.
-
unsigned int byteAddress[2]
-
struct XorMBit
This structure contains arguments for the XorMBit input function type.
Public Members
-
unsigned int byteAddress[2]
The byte address of the first user memory bit is specified in byteAddress[0]. The byte address of the second user memory bit is specified in byteAddress[1].
-
unsigned char bitAddress[2]
The bit address of the first user memory bit is specified in bitAddress[0]. The bit address of the second user memory bit is specified in bitAddress[1].
-
unsigned char invert[2]
If invert[0] is set to 1, the value of the first user memory bit will be inverted when calculating the event trigger. If invert[0] is set to 0, the first user memory bit is processed normally. If invert[1] is set to 1, the value of the second user memory bit will be inverted when calculating the event trigger. If invert[1] is set to 0, the second user memory bit is processed normally.
-
unsigned int byteAddress[2]
-
InputFunctionArguments()
-
union OutputFunctionArguments
This union defines the structs containing arguments for each output function type.
Public Functions
-
OutputFunctionArguments()
Public Members
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::None none
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::SetIOOutBit setIOOutBit
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::SetMBit setMBit
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::EnableAnotherEvent enableAnotherEvent
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::StopSingleAxis stopSingleAxis
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::StartSinglePos startSinglePos
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::StartSingleMov startSingleMov
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::StartMultiplePos startMultiplePos
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::StartMultipleMov startMultipleMov
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::LinearIntplPos linearIntplPos
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::LinearIntplMov linearIntplMov
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::StartAPIBuffer startAPIBuffer
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::ExecQuickStopSingleAxis execQuickStopSingleAxis
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::OverrideVelSingleAxis overrideVelSingleAxis
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::ExecEStop execEStop
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::TriggerFlightRecorder triggerFlightRecorder
-
struct wmx3Api::EventControl::Event::OutputFunctionArguments::ResetFlightRecorder resetFlightRecorder
-
struct EnableAnotherEvent
This structure contains arguments for the EnableAnotherEvent output function type.
Public Members
-
unsigned int eventID
The event ID of the event to enable or disable.
-
unsigned char invert
If set to 1, the specified event is disabled when this event is triggered. If set to 0, the specified event is enabled normally.
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
unsigned char setOffState
If set to 1, the specified event is disabled when the input function is FALSE (i.e. when the event is not triggered), in addition to the specified event being enabled when the input function is TRUE (i.e. when the event is triggered). Once the specified event is disabled this way, this event output function will not disable it again until the input function becomes TRUE and then FALSE again (so the event enabled state may be overwritten by other functions). If the invert parameter is set to 1, the specified evevnt will be enabled when the input function is FALSE and disabled when the input function is TRUE. If this parameter is set to 0, the specified event will only be enabled when this event is triggered.
-
unsigned int eventID
-
struct ExecEStop
This structure contains arguments for the ExecEStop output function type.
Public Members
-
EStopLevel::T eStopLevel
The level of the emergency stop.
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
EStopLevel::T eStopLevel
-
struct ExecQuickStopSingleAxis
This structure contains arguments for the ExecQuickStopSingleAxis output function type.
Public Members
-
int axis
The axis to stop.
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
int axis
-
struct LinearIntplMov
This structure contains arguments for the LinearIntplMov output function type.
Public Members
-
unsigned int axisCount
The number of axes of the motion.
-
int axis[constants::maxEventInterpolationAxes]
The axes of the motion.
-
double target[constants::maxEventInterpolationAxes]
The target positions of the motion.
-
double maxVelocity[constants::maxEventInterpolationAxes]
The maximum velocities of the motion.
-
double maxAcc[constants::maxEventInterpolationAxes]
The maximum accelerations of the motion.
-
double maxDec[constants::maxEventInterpolationAxes]
The maximum decelerations of the motion.
-
double maxJerkAcc[constants::maxEventInterpolationAxes]
The maximum acceleration jerks of the motion.
-
double maxJerkDec[constants::maxEventInterpolationAxes]
The maximum deceleration jerks of the motion.
-
ProfileType::T type
The profile of the motion.
-
double velocity
The velocity of the motion.
-
double acc
The composite acceleration of the motion.
-
double dec
The composite deceleration of the motion.
-
double jerkAcc
The composite acceleration jerk of the motion.
-
double jerkDec
The composite deceleration jerk of the motion.
-
double jerkAccRatio
The composite acceleration jerk ratio of the motion.
-
double jerkDecRatio
The composite deceleration jerk ratio of the motion.
-
double accTime
The composite acceleration time of the motion.
-
double decTime
The composite deceleration time of the motion.
-
double startingVelocity
The composite starting velocity of the motion.
-
double endVelocity
The composite end velocity of the motion.
-
double secondVelocity
The composite second velocity of the motion.
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
unsigned int axisCount
-
struct LinearIntplPos
This structure contains arguments for the LinearIntplPos output function type.
Public Members
-
unsigned int axisCount
The number of axes of the motion.
-
int axis[constants::maxEventInterpolationAxes]
The axes of the motion.
-
double target[constants::maxEventInterpolationAxes]
The target positions of the motion.
-
double maxVelocity[constants::maxEventInterpolationAxes]
The maximum velocities of the motion.
-
double maxAcc[constants::maxEventInterpolationAxes]
The maximum accelerations of the motion.
-
double maxDec[constants::maxEventInterpolationAxes]
The maximum decelerations of the motion.
-
double maxJerkAcc[constants::maxEventInterpolationAxes]
The maximum acceleration jerks of the motion.
-
double maxJerkDec[constants::maxEventInterpolationAxes]
The maximum deceleration jerks of the motion.
-
ProfileType::T type
The profile of the motion.
-
double velocity
The composite velocity of the motion.
-
double acc
The composite acceleration of the motion.
-
double dec
The composite deceleration of the motion.
-
double jerkAcc
The composite acceleration jerk of the motion.
-
double jerkDec
The composite deceleration jerk of the motion.
-
double jerkAccRatio
The composite acceleration jerk ratio of the motion.
-
double jerkDecRatio
The composite deceleration jerk ratio of the motion.
-
double accTime
The composite acceleration time of the motion.
-
double decTime
The composite deceleration time of the motion.
-
double startingVelocity
The composite starting velocity of the motion.
-
double endVelocity
The composite end velocity of the motion.
-
double secondVelocity
The composite second velocity of the motion.
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
unsigned int axisCount
-
struct None
This structure contains arguments for the None output function type.
Public Members
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
unsigned char singleShot
-
struct OverrideVelSingleAxis
This structure contains arguments for the OverrideVelSingleAxis output function type.
Public Members
-
int axis
The axis to stop.
-
double velocity
The velocity of the motion.
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
int axis
-
struct ResetFlightRecorder
This structure contains arguments for the ResetFlightRecorder output function type.
Public Members
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
unsigned char singleShot
-
struct SetIOOutBit
This structure contains arguments for the SetIOOutBit output function type.
Public Members
-
unsigned int byteAddress
The byte address of the I/O output bit.
-
unsigned char bitAddress
The bit address of the I/O output bit.
-
unsigned char invert
If set to 1, the I/O output bit will be set to 0 when the event is triggered. If set to 0, the I/O output bit will be set to 1 normally.
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
unsigned char setOffState
If set to 1, the I/O output bit will be set to 0 when the input function is FALSE (i.e. when the event is not triggered), in addition to the I/O output bit being set to 1 when the input function is TRUE (i.e. when the event is triggered). Once the I/O output bit is set to 0 this way, this event output function will not be set it to 0 again until the input function becomes TRUE and then FALSE again (so the I/O output bit may be overwritten by other functions). If the invert parameter is set to 1, the I/O output bit will be set to 1 when the input function is FALSE and set 0 when the input function is TRUE. If this parameter is set to 0, the I/O output bit will only be set when the event is triggered.
-
unsigned int byteAddress
-
struct SetMBit
This structure contains arguments for the SetMBit output function type.
Public Members
-
unsigned int byteAddress
The byte address of the user memory bit.
-
unsigned char bitAddress
The bit address of the user memory bit.
-
unsigned char invert
If set to 1, the user memory bit is set to 0 when the event is triggered. If set to 0, the user memory bit will be set to 1 normally.
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
unsigned char setOffState
If set to 1, the user memory bit will be set to 0 when the input function is FALSE (i.e. when the event is not triggered), in addition to the user memory bit being set to 1 when the input function is TRUE (i.e. when the event is triggered). Once the user memory bit is set to 0 this way, this event output function will not be set it to 0 again until the input function becomes TRUE and then FALSE again (so the user memory bit may be overwritten by other functions). If the invert parameter is set to 1, the user memory bit will be set to 1 when the input function is FALSE and set to 0 when the input function is TRUE. If this parameter is set to 0, the user memory bit will only be set when the event is triggered.
-
unsigned int byteAddress
-
struct StartAPIBuffer
This structure contains arguments for the StartAPIBuffer output function type.
Public Members
-
unsigned int channel
The channel of the API buffer.
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
unsigned int channel
-
struct StartMultipleMov
This structure contains arguments for the StartMultipleMov output function type.
Public Members
-
unsigned int axisCount
The number of axes of the motion.
-
int axis[constants::maxEventInterpolationAxes]
The axes of the motion.
-
double target[constants::maxEventInterpolationAxes]
The target positions of the motion.
-
ProfileType::T type[constants::maxEventInterpolationAxes]
The profiles of the motion.
-
double velocity[constants::maxEventInterpolationAxes]
The velocities of the motion.
-
double acc[constants::maxEventInterpolationAxes]
The accelerations of the motion.
-
double dec[constants::maxEventInterpolationAxes]
The decelerations of the motion.
-
double jerkAcc[constants::maxEventInterpolationAxes]
The acceleration jerks of the motion.
-
double jerkDec[constants::maxEventInterpolationAxes]
The deceleration jerks of the motion.
-
double jerkAccRatio[constants::maxEventInterpolationAxes]
The acceleration jerk ratios of the motion.
-
double jerkDecRatio[constants::maxEventInterpolationAxes]
The deceleration jerk ratios of the motion.
-
double accTime[constants::maxEventInterpolationAxes]
The acceleration times of the motion.
-
double decTime[constants::maxEventInterpolationAxes]
The deceleration times of the motion.
-
double startingVelocity[constants::maxEventInterpolationAxes]
The starting velocities of the motion.
-
double endVelocity[constants::maxEventInterpolationAxes]
The end velocities of the motion.
-
double secondVelocity[constants::maxEventInterpolationAxes]
The second velocities of the motion.
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
unsigned int axisCount
-
struct StartMultiplePos
This structure contains arguments for the StartMultiplePos output function type.
Public Members
-
unsigned int axisCount
The number of axes of the motion.
-
int axis[constants::maxEventInterpolationAxes]
The axes of the motion.
-
double target[constants::maxEventInterpolationAxes]
The target positions of the motion.
-
ProfileType::T type[constants::maxEventInterpolationAxes]
The profiles of the motion.
-
double velocity[constants::maxEventInterpolationAxes]
The velocities of the motion.
-
double acc[constants::maxEventInterpolationAxes]
The accelerations of the motion.
-
double dec[constants::maxEventInterpolationAxes]
The decelerations of the motion.
-
double jerkAcc[constants::maxEventInterpolationAxes]
The acceleration jerks of the motion.
-
double jerkDec[constants::maxEventInterpolationAxes]
The deceleration jerks of the motion.
-
double jerkAccRatio[constants::maxEventInterpolationAxes]
The acceleration jerk ratios of the motion.
-
double jerkDecRatio[constants::maxEventInterpolationAxes]
The deceleration jerk ratios of the motion.
-
double accTime[constants::maxEventInterpolationAxes]
The acceleration times of the motion.
-
double decTime[constants::maxEventInterpolationAxes]
The deceleration times of the motion.
-
double startingVelocity[constants::maxEventInterpolationAxes]
The starting velocities of the motion.
-
double endVelocity[constants::maxEventInterpolationAxes]
The end velocities of the motion.
-
double secondVelocity[constants::maxEventInterpolationAxes]
The second velocities of the motion.
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
unsigned int axisCount
-
struct StartSingleMov
This structure contains arguments for the StartSingleMov output function type.
Public Members
-
int axis
The axis of the motion.
-
double target
The target position of the motion.
-
ProfileType::T type
The profile of the motion.
-
double velocity
The velocity of the motion.
-
double acc
The acceleration of the motion.
-
double dec
The deceleration of the motion.
-
double jerkAcc
The acceleration jerk of the motion.
-
double jerkDec
The deceleration jerk of the motion.
-
double jerkAccRatio
The acceleration jerk ratio of the motion.
-
double jerkDecRatio
The deceleration jerk ratio of the motion.
-
double accTime
The acceleration time of the motion.
-
double decTime
The deceleration time of the motion.
-
double startingVelocity
The starting velocity of the motion.
-
double endVelocity
The end velocity of the motion.
-
double secondVelocity
The second velocity of the motion.
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
int axis
-
struct StartSinglePos
This structure contains arguments for the StartSinglePos output function type.
Public Members
-
int axis
The axis of the motion.
-
double target
The target position of the motion.
-
ProfileType::T type
The profile of the motion.
-
double velocity
The velocity of the motion.
-
double acc
The acceleration of the motion.
-
double dec
The deceleration of the motion.
-
double jerkAcc
The acceleration jerk of the motion.
-
double jerkDec
The deceleration jerk of the motion.
-
double jerkAccRatio
The acceleration jerk ratio of the motion.
-
double jerkDecRatio
The deceleration jerk ratio of the motion.
-
double accTime
The acceleration time of the motion.
-
double decTime
The deceleration time of the motion.
-
double startingVelocity
The starting velocity of the motion.
-
double endVelocity
The end velocity of the motion.
-
double secondVelocity
The second velocity of the motion.
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
int axis
-
struct StopSingleAxis
This structure contains arguments for the StopSingleAxis output function type.
Public Members
-
int axis
The axis to stop.
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
int axis
-
struct TriggerFlightRecorder
This structure contains arguments for the TriggerFlightRecorder output function type.
Public Members
-
unsigned char singleShot
If set to 1, the output function is single shot, and the entire event will be deleted after the output function is executed. If set to 0, the event is not deleted after the output function is executed, and may be triggered again.
-
unsigned char disableAfterActivate
If set to 1, the event will be disabled after the output function is executed. The event is not deleted, and it may be enabled again using the EnableEvent API function. If set to 0, the event remains enabled after the output function is executed.
-
unsigned char singleShot
-
OutputFunctionArguments()
-
Event()
-
class EventInputFunction
This enumerator class enumerates the input functions of events. The input function determines the condition at which the event is triggered.
Public Types
-
enum T
Values:
-
enumerator None
The input function never triggers the event output. The output is always 0.
-
enumerator IOBit
The input function triggers the event output when the specified I/O bit is 1.
This input function uses the parameters in the IOBit structure of Event.
-
enumerator NotIOBit
The input function triggers the event output when the specified I/O bit is 0.
This input function uses the parameters in the NotIOBit structure of Event.
-
enumerator OrIOBit
The input function triggers the event output when either of the two specified I/O bits is 1.
This input function uses the parameters in the OrIOBit structure of Event.
-
enumerator AndIOBit
The input function triggers the event output when both of the two specified I/O bits are 1.
This input function uses the parameters in the AndIOBit structure of Event.
-
enumerator XorIOBit
The input function triggers the event output when one but not both of the specified I/O bits is 1 (this input function implements an exclusive-or logic).
This input function uses the parameters in the XorIOBit structure of Event.
-
enumerator NandIOBit
The input function triggers the event output when not both of the two specified I/O bits are 1.
This input function uses the parameters in the NandIOBit structure of Event.
-
enumerator NorIOBit
The input function triggers the event output when neither of the two specified I/O bits is 1.
This input function uses the parameters in the NorIOBit structure of Event.
-
enumerator XnorIOBit
The input function triggers the event output when both of the specified I/O bits are 1 or both of the specified I/O bits are 0 (this input function implements a not exclusive-or logic).
This input function uses the parameters in the XnorIOBit structure of Event.
-
enumerator DelayIOBit
The input function triggers the event output after the specified I/O bit remains continuously 1 for the specified period of time.
This input function uses the parameters in the DelayIOBit structure of Event.
-
enumerator MBit
The input function triggers the event output when the specified user memory bit is 1.
This input function uses the parameters in the MBit structure of Event.
-
enumerator NotMBit
The input function triggers the event output when the specified user memory bit is 0.
This input function uses the parameters in the NotMBit structure of Event.
-
enumerator OrMBit
The input function triggers the event output when either of the two specified user memory bits is 1.
This input function uses the parameters in the OrMBit structure of Event.
-
enumerator AndMBit
The input function triggers the event output when both of the two specified user memory bits are 1.
This input function uses the parameters in the AndMBit structure of Event.
-
enumerator XorMBit
The input function triggers the event output when one but not both of the specified user memory bits is 1 (this input function implements an exclusive-or logic).
This input function uses the parameters in the XorMBit structure of Event.
-
enumerator NandMBit
The input function triggers the event output when not both of the two specified user memory bits are 1.
This input function uses the parameters in the NandMBit structure of Event.
-
enumerator NorMBit
The input function triggers the event output when neither of the two specified user memory bits is 1.
This input function uses the parameters in the NorMBit structure of Event.
-
enumerator XnorMBit
The input function triggers the event output when both of the specified user memory bits are 1 or both of the specified user memory bits are 0 (this input function implements a not exclusive-or logic).
This input function uses the parameters in the XnorMBit structure of Event.
-
enumerator DelayMBit
The input function triggers the event output after the specified user memory bit remains continuously 1 for the specified period of time.
This input function uses the parameters in the DelayMBit structure of Event.
-
enumerator AnotherEvent
The input function triggers the event output when another event triggers. This input function will have almost the same effect as if the input function is set to the same values as the input function of the other event.
This input function uses the parameters in the AnotherEvent structure of Event.
-
enumerator DelayAnotherEvent
The input function triggers the event output after the input function of another event remains continuously TRUE for the specified time period.
This input function uses the parameters in the DelayAnotherEvent structure of Event.
-
enumerator EqualPos
The input function monitors the position command (Pos Cmd) or the position feedback (Actual Pos) of an axis (depending on the parameters). When the axis is within 0.5 user unit of the specified position, or travels through the specified position in either direction, the event output will be triggered.
This input function uses the parameters in the EqualPos structure of Event.
-
enumerator GreaterPos
The input function monitors the position command (Pos Cmd) or the position feedback (Actual Pos) of an axis (depending on the parameters). When the axis position is greater than the specified position, the event output will be triggered.
This input function uses the parameters in the GreaterPos structure of Event.
-
enumerator LessPos
The input function monitors the position command (Pos Cmd) or the position feedback (Actual Pos) of an axis (depending on the parameters). When the axis position is less than the specified position, the event output will be triggered.
This input function uses the parameters in the LessPos structure of Event.
-
enumerator EqualVelocity
This input function monitors the velocity command (Velocity Cmd) or the velocity feedback (Actual Velocity) of an axis (depending on the parameters). When the axis is within 0.5 user units per second of the specified velocity, accelerates from a velocity lower than the specified velocity to a velocity higher than the specified velocity, or decelerates from a velocity higher than the specified velocity to a velocity lower than the specified velocity, the event output will be triggered.
This input function uses the parameters in the EqualVelocity structure of Event.
-
enumerator GreaterVelocity
This input function monitors the velocity command (Velocity Cmd) or the velocity feedback (Actual Velocity) of an axis (depending on the parameters). When the axis velocity is greater than the specified velocity, the event output will be triggered.
This input function uses the parameters in the GreaterVelocity structure of Event.
-
enumerator LessVelocity
This input function monitors the velocity command (Velocity Cmd) or the velocity feedback (Actual Velocity) of an axis (depending on the parameters). When the axis velocity is less than the specified velocity, the event output will be triggered.
This input function uses the parameters in the LessVelocity structure of Event.
-
enumerator EqualTrq
This input function monitors the torque feedback (Actual Torque) of an axis. When the axis torque is within 0.05% of the specified torque value (the torque resolution is 0.1%), increases from a torque lower than the specified torque to a torque higher than the specified torque, or decreases from a torque higher than the specified torque to a torque lower than the specified torque, the event output will be triggered.
This input function uses the parameters in the EqualTrq structure of Event.
-
enumerator GreaterTrq
This input function monitors the torque feedback (Actual Torque) of an axis. When the axis torque is greater than the specified torque value, the event output will be triggered.
This input function uses the parameters in the GreaterTrq structure of Event.
-
enumerator LessTrq
This input function monitors the torque feedback (Actual Torque) of an axis. When the axis torque is less than the specified torque value, the event output will be triggered.
This input function uses the parameters in the LessTrq structure of Event.
-
enumerator OpState
This input function monitors the operation state (Op State) of an axis. When the operation state of the axis is the same as the specified operation state, the event output will be triggered.
This input function uses the parameters in the OpState structure of Event.
-
enumerator PosSET
This input function monitors the position set (Pos Set) signal of an axis. When the position set signal is 1, the event output will be triggered.
This input function uses the parameters in the PosSET structure of Event.
-
enumerator DelayedPosSET
This input function monitors the delayed position set (Delayed Pos Set signal of an axis. When the delayed position set signal is 1, the event output will be triggered.
This input function uses the parameters in the DelayedPosSET structure of Event.
-
enumerator CommandDistributedEnd
This input function monitors the command distribution end (Cmd Distribution End) signal of an axis. When the command distribution end signal is 1, the event output will be triggered.
This input function uses the parameters in the CommandDistributedEnd structure of Event.
-
enumerator RemainingTime
This input function monitors the remaining time (Profile Remaining Milliseconds) for the position command of an axis. If the remaining time until the position command completes is less than or equal to the specified value, or if the axis is not executing a position command, the event output will be triggered.
This input function uses the parameters in the RemainingTime structure of Event.
-
enumerator RemainingDistance
This input function monitors the remaining distance (Profile Remaining Distance) for the position command of an axis. If the remaining distance until the position command completes is less than or equal to the specified value, or if the axis is not executing a position command, the event output will be triggered.
This input function uses the parameters in the RemainingDistance structure of Event.
-
enumerator CompletedTime
This input function monitors the completed time (Profile Completed Milliseconds) for the position command of an axis. If the elapsed time of the current position command is greater than or equal to the specified value, or the axis is not executing a position command, the event output will be triggered.
This input function uses the parameters in the CompletedTime structure of Event.
-
enumerator CompletedDistance
This input function monitors the completed distance (Profile Completed Distance) for the position command of an axis. If the distance traveled by the current position command is greater than or equal to the specified value, or if the axis is not executing a position command, the event output will be triggered.
This input function uses the parameters in the CompletedDistance structure of Event.
-
enumerator Unknown
-
enumerator None
-
enum T
-
class EventOutputFunction
This enumerator class enumerates the output functions of events. The output function determines the action that is executed when the event is triggered.
Public Types
-
enum T
Values:
-
enumerator None
No action is executed when the event is triggered.
-
enumerator SetIOOutBit
This output function sets an I/O output bit to 1 when the input function triggers.
If the I/O output bit is changed by another function, this output function will not overwrite the value of the I/O output bit until the input function becomes FALSE, and then TRUE again (see the discussion at Triggering Events ).
This output function uses the parameters in the SetIOOutBit structure of Event.
-
enumerator SetMBit
This output function sets a user memory output bit to 1 when the input function triggers.
If the user memory bit is changed by another function, this output function will not overwrite the value of the user memory bit until the input function becomes FALSE, and then TRUE again (see the discussion at Triggering Events ).
This output function uses the parameters in the SetMBit structure of Event.
-
enumerator EnableAnotherEvent
This output function sets the enabled state of another event to enabled when the input function of this event triggers.
If the enabled state of the specified event is changed by another function, this output function will not overwrite the enabled state of the specified event until the input function becomes FALSE, and then TRUE again (see the discussion at Triggering Events ).
This output function uses the parameters in the EnableAnotherEvent structure of Event.
-
enumerator StopSingleAxis
This output function stops the motion of a single axis when the input function triggers. This function can operate on axes in Position mode and Velocity mode.
This output function uses the parameters in the StopSingleAxis structure of Event.
-
enumerator StartSinglePos
This output function starts an absolute position motion for a single axis when the input function triggers.
This output function uses the parameters in the StartSinglePos structure of Event.
-
enumerator StartSingleMov
This output function starts a relative position motion for a single axis when the input function triggers.
This output function uses the parameters in the StartSingleMov structure of Event.
-
enumerator StartMultiplePos
This output function starts absolute position motions for multiple axes when the input function triggers.
This output function uses the parameters in the StartMultiplePos structure of Event.
-
enumerator StartMultipleMov
This output function starts relative position motions for multiple axes when the input function triggers.
This output function uses the parameters in the StartMultipleMov structure of Event.
-
enumerator LinearIntplPos
This output function starts an absolute linear interpolation motion when the input function triggers.
This output function uses the parameters in the LinearIntplPos structure of Event.
-
enumerator LinearIntplMov
This output function starts a relative linear interpolation motion when the input function triggers.
This output function uses the parameters in the LinearIntplMov structure of Event.
-
enumerator StartAPIBuffer
This output function starts the execution of an API buffer when the input function triggers.
This output function uses the parameters in the StartAPIBuffer structure of Event.
-
enumerator ExecQuickStopSingleAxis
This output function stops the motion of a single axis using the quick stop deceleration (Quick Stop Dec) when the input function triggers.
This output function uses the parameters in the ExecQuickStopSingleAxis structure of Event.
-
enumerator OverrideVelSingleAxis
This output function overrides the velocity of a single axis executing motion when the input function triggers.
This output function uses the parameters in the OverrideVelSingleAxis structure of Event.
-
enumerator ExecEStop
This output function triggers an emergency stop when the input function triggers.
This output function uses the parameters in the ExecEStop structure of Event.
-
enumerator TriggerFlightRecorder
This output function triggers the flight recorder to write the flight recorder data to file when the input function triggers.
This output function uses the parameters in the TriggerFlightRecorder structure of Event.
-
enumerator ResetFlightRecorder
This output function resets the flight recorder so that it may be triggered again when the input function triggers.
This output function uses the parameters in the ResetFlightRecorder structure of Event.
-
enumerator Unknown
-
enumerator None
-
enum T
-
class HardwareTouchProbeStatus
This class contains the status of a hardware touch probe channel.
Public Functions
-
HardwareTouchProbeStatus()
Public Members
-
int axis
The axis of the hardware touch probe.
-
unsigned char enabled
This value will equal 0 if the hardware touch probe is disabled and 1 if the hardware touch probe is enabled.
-
TouchProbeMode::T mode
The mode of the touch probe.
-
TouchProbeSource::T triggerSource
The trigger source of the touch probe.
-
unsigned int channel
The channel of the touch probe. This can be 0 or 1.
-
unsigned char latched
A pointer to an unsigned char that will contain whether the hardware touch probe channel has latched data. This value is set to 1 if encoder data has been latched. This value is reset to 0 whenever the SetHardwareTouchProbe function or the EnableHardwareTouchProbe function is called.
-
unsigned int latchedValueCount
The number of latched encoder data in the latchedValue array. This value is reset to 0 whenever the SetHardwareTouchProbe function is called, but not when the EnableHardwareTouchProbe function is called.
-
unsigned int latchedValue[constants::maxHardwareTouchProbeLatchedValues]
A buffer array that contains the latched encoder data. The first numLatchedValue elements of the array contain the latched encoder data, with the newer latched encoder data occupying the higher element index. The latched encoder data is a raw 32-bit integer encoder value, and is not in the same coordinates as the axis position (which is affected by factors such as the home position, gear ratio, and compensation). This array is cleared whenever the SetHardwareTouchProbe function is called, but not when the EnableHardwareTouchProbe function is called.
-
double latchedPos[constants::maxHardwareTouchProbeLatchedValues]
A buffer array that contains the same data as the latchedValue array, but in the same coordinates as the axis position (and thus is affected by factors such as home position, gear ratio, and compensation). Because this value is in the axis position coordinates, any multi-turn data (when the encoder loops around the 32-bit integer range) will be reflected in the latched position.
-
HardwareTouchProbeStatus()
-
class PlannedVelocityData
This class contains a planned velocity override data point.
-
class PlannedVelocityStatus
This class contains the current status of a planned velocity override channel.
Public Functions
-
PlannedVelocityStatus()
Public Members
-
unsigned char enabled
0: Planned Velocity Override channel is disabled, 1: Planned Velocity Override channel is enabled.
-
unsigned char active
Whether the velocity has been overridden by the Planned Velocity Override channel. 0: Velocity was not overridden, 1: Velocity was overridden.
-
int activeDataIndex
If “active” is 1, this value contains the index of the Planned Velocity Override data point that caused the velocity to be overridden. If multiple data points caused the velocity to be overridden, this value contains the index of the data point with the smallest index among them. If “active” is 0, this value contains the index of the Planned Velocity Override data point that last caused the velocity to be overridden.
-
double activeVelocityCommand
If “active” is 1, this value contains the velocity that the axis velocity was overridden by. If “active” is 0, this value contains the velocity that the axis velocity was last overridden by. This value will always be equal to the velocity that is associated with the data point with the index equal to activeDataIndex.
-
int axis
The axis of the motion.
-
PlannedVelocityStatus()
-
class PSOOption
This class contains options for a position synchronous output channel.
Public Functions
-
PSOOption()
Public Members
-
unsigned char allowTriggerOnStart
If this option is set to 1, if the source is within 0.5 user units of any data point on the cycle that position synchronous output is started with the StartPSO function, the PSO comparison immediately yields true. This option only affects the following comparison types: Equal, PositiveDirection, and NegativeDirection. If this option is set to 0, the PSO comparison will yield false on cycles that the source is not moving (the source value is the same for that cycle and the previous cycle) for these comparison types. If this option is not specified, it is set to 0 by default.
-
PSOOption()
-
class PSOOutput
This class describes the output for position synchronous output.
Public Functions
-
PSOOutput()
-
PSOOutput(PSOOutputType::T outputType, unsigned int byteAddress, unsigned char bitAddress, unsigned char invert)
Public Members
-
PSOOutputType::T outputType
The type of output.
-
unsigned int byteAddress
The byte address of the output.
-
unsigned char bitAddress
The bit address of the output.
-
unsigned char invert
If this value is set to 0, the output will be set to 1 when the PSO comparison yields true and 0 otherwise. If this value is set to 1, the output will be set to 0 when the PSO comparison yields true and 1 otherwise.
-
PSOOutput()
-
class PSOOutputType
This enumerator class contains the type of output for position synchronous output.
-
class PSOStatus
This class contains the current status of a position synchronous output channel.
Public Functions
-
PSOStatus()
Public Members
-
unsigned char enabled
0: PSO channel is disabled, 1: PSO channel is enabled.
-
unsigned char active
Whether the output was set to 1 or 0 by the PSO channel during this communication cycle. 0: The output was set to 0 (the PSO comparison yielded false and the minimum duration has elapsed). 1: The output was set to 1 (the PSO comparison yielded true or the PSO comparison yielded false but the minimum duration has not elapsed). If the invert option is set to 1, this value will contain 0 when the output is 1 and 1 when the output is 0.
-
int activeDataIndex
This value contains the index of the PSO data point for which the PSO comparison last yielded true. If there have been no PSO data points for which the PSO comparison yielded true since the PSO channel was enabled, this value contains 0. If there are multiple PSO data points for which the PSO comparison yields true in the same cycle (for example, the MoreThan and LessThan comparison types will often have multiple PSO data points that are greater than or less than the source), this value will contain the smallest index among them. The index of the data points are assigned from 0 after the data points are sorted in ascending order. If the SetPSOIntervalData function is used to set the data points, the index of the data points are assigned from 1 instead (each data point is calculated as
[p = rangeStart + n*interval], where n is the index of that data point). If the SetPSOIntervalData function is used to set the data points and there are multiple PSO data points for which the PSO comparison yields true in the same cycle, this value will contain the index of the data point nearest to the source from among them.
-
PSOOutput output
The output of the PSO channel as defined by the SetPSOConfig function. The output is set to 1 or 0 depending on the result of the PSO comparison.
-
PSOStatus()
-
class TouchProbeMode
This enumerator class contains the operation mode of a touch probe.
-
class TouchProbeSource
This enumerator class contains the source for a touch probe.
-
EventControl(WMX3Api *f)