Axis System Configuration

Overview

Axis system configuration functions This groups defines all functions to configure labCAN axis systems properly.

+ Collaboration diagram for Axis System Configuration:

Functions

long LCA_GetAxisHomingSwitchSpeed (dev_hdl hAxis, double *pfSpeed)
 Query speed for move to homing or limit switch. More...
 
long LCA_GetAxisPosMax (dev_hdl hAxis, double *pfPosMax)
 Query maximum position limit for axis. More...
 
long LCA_GetAxisPosMin (dev_hdl hAxis, double *pfPosMin)
 Query minimum position limit for axis. More...
 
long LCA_GetAxisVelMax (dev_hdl hAxis, double *pfVelMax)
 Query maximum velocity for axis. More...
 
long LCA_GetDefaultPosUnit (dev_hdl hAxis, int *pPrefix, int *pPositionUnit)
 Queries the default position unit. More...
 
long LCA_GetDefaultVelUnit (dev_hdl hAxis, int *pPrefix, int *pPositionUnit, int *pTimeUnit)
 Queries the default velocity unit. More...
 
long LCA_SetDefaultPosUnit (dev_hdl hAxis, int Prefix, int PositionUnit)
 Set default position unit. More...
 
long LCA_SetDefaultVelUnit (dev_hdl hAxis, int Prefix, int PositionUnit, int TimeUnit)
 Set default velocity unit. More...
 

Function Documentation

long LCA_GetAxisHomingSwitchSpeed ( dev_hdl  hAxis,
double *  pfSpeed 
)

Query speed for move to homing or limit switch.

The function LCA_FindHome() or LCA_FindHomeOfAxis() execute homing moves for a certain axis or a number axes. This function reads the speed used during this homing move while axis searches for the home switch or limit switch.

Parameters
[in]hAxisValid axis handle
[out]pfSpeedReturns speed value for limit switch search
Returns
Error code - ERR_NOERR indicates success
long LCA_GetAxisPosMax ( dev_hdl  hAxis,
double *  pfPosMax 
)

Query maximum position limit for axis.

The travel range of the axis is the range between minimum and maximum position.

Parameters
[in]hAxisValid axis handle
[out]pfPosMaxStores maximum axis position in position units
Returns
The maximum position in position units
See also
LCA_GetAxisPosMin()
Examples:
capi_nemaxys_test.cpp, capi_nemesys_test.cpp, and capi_rotaxys_test.cpp.
long LCA_GetAxisPosMin ( dev_hdl  hAxis,
double *  pfPosMin 
)

Query minimum position limit for axis.

The travel range of the axis is the range between minimum and maximum position.

Parameters
[in]hAxisValid axis handle
[out]pfPosMinStores maximum axis position in position units
Returns
The maximum position in position units
See also
LCA_GetAxisPosMax()
Examples:
capi_nemaxys_test.cpp, and capi_nemesys_test.cpp.
long LCA_GetAxisVelMax ( dev_hdl  hAxis,
double *  pfVelMax 
)

Query maximum velocity for axis.

The minimum velocity is considered 0

Parameters
[in]hAxisValid axis handle
[out]pfVelMaxStores maximum axis velocity in velocity units
Returns
The maximum velocity in velocity units
Examples:
capi_nemaxys_test.cpp, and capi_nemesys_test.cpp.
long LCA_GetDefaultPosUnit ( dev_hdl  hAxis,
int *  pPrefix,
int *  pPositionUnit 
)

Queries the default position unit.

Parameters
[in]hAxisValid axis handle
[out]pPrefixReturns the prefix of the SIunit (i.e MILLI - see Prefix Constants)
[out]pPositionUnitReturns the position unit identifier (i.e. METERS - see Position Units)
Returns
Error code - ERR_NOERR indicates success
long LCA_GetDefaultVelUnit ( dev_hdl  hAxis,
int *  pPrefix,
int *  pPositionUnit,
int *  pTimeUnit 
)

Queries the default velocity unit.

Parameters
[in]hAxisValid axis handle
[out]pPrefixReturns the prefix of the velocity unit (see Prefix Constants)
[out]pPositionUnitReturns the position unit (numerator) of the velocity unit (i.e. METERS - see Position Units)
[out]pTimeUnitReturns the time unit (denominator) of the velocity unit. (i.e. PER_SECOND - see Time Units)
Returns
Error code - ERR_NOERR indicates success
long LCA_SetDefaultPosUnit ( dev_hdl  hAxis,
int  Prefix,
int  PositionUnit 
)

Set default position unit.

This function sets the default position unit. All parameters of subsequent move function calls are given in this new unit. Example to select millimeters as position unit. Example:

1 long Result = LCA_SetDefaultPosUnit(hAxis, MILLI, METERS);
Parameters
[in]hAxisValid axis handle
[in]PrefixThe prefix of the SIunit (i.e MILLI - see Prefix Constants)
[in]PositionUnitThe position unit identifier (i.e. METERS - see Position Units)
Returns
Error code - ERR_NOERR indicates success
Warning
Take care if you work with axis systems. Axis systems may rely on a certain position and velocity unit of their axis devices. If you change the position unit or velocity unit, you should restore the default unit prior to using the axis system functions.
long LCA_SetDefaultVelUnit ( dev_hdl  hAxis,
int  Prefix,
int  PositionUnit,
int  TimeUnit 
)

Set default velocity unit.

This function sets the default velocity unit.

1 long Result = LCA_SetDefaultVelUnit(hAxis, MILLI, METERS, PER_SECOND);
Parameters
[in]hAxisValid axis handle
[in]PrefixThe prefix of the velocity unit (see Prefix Constants)
[in]PositionUnitThe position unit (numerator) of the velocity unit (i.e. METERS - see Position Units)
[in]TimeUnitThe time unit (denominator) of the velocity unit. (i.e. PER_SECOND - see Time Units)
Returns
Error code - ERR_NOERR indicates success
Warning
Take care if you work with axis systems. Axis systems may rely on a certain position and velocity unit of their axis devices. If you change the position unit or velocity unit, you should restore the default unit prior to using the axis system functions.