Description
Reads the relative position data of axis specified with "axis". The relative position is stored in "data[0]" of "ODBAXIS".
All axes can be read at a time by specifying ALL_AXES for "axis". In that case, an relative position of each axis is stored in the data array of ODBAXIS.
The decimal point position of the relative position can be acquired in the cnc_getfigure function.
- Series 15/15i The relation to the read relative position, amount of Tool Length Compensation and Cutter Radius Compensation, and amount of servo delay and acceleration/deceleration delay follows setting the CNC parameter of the following description.
- Series 16/18/21, 16i/18i/21i, 0i-A/B/C, Power Mate i Amount of Tool Length Compensation and Cutter Radius Compensation, and amount of servo delay and acceleration/deceleration delay is always included in the read relative position.
- Series 16i/18i-W Amounts of Wire diameter Compensation, amounts of servo delay and acceleration/deceleration delay is always included in the read relative position.
- Series 30i/31i/32i, 0i-D/F, Power Motion i-A
Amount of Tool Length Compensation and Cutter Radius Compensation is always included in the read relative position. But, amount of servo delay and acceleration/deceleration delay is not included.
Universal Fanuc Driver
Fanuc Focas Library CD
Declaration
Arguments
Specify the library handle. See "Library handle" for details.
Specify axis number to read.
ALL_AXES | : | for all axes(ALL_AXES : -1) |
1,..,m | : | for each axis(m : number of controlled axis) |
Specify the length of the data block(size of ODBAXIS structure)
ODBAXIS
for each axis | for all axes |
---|---|
- Series 15/15i, 30i, 0i-D/F, PMi-A
n = Maximum controlled axes
(The data for current controlled axes are valid)
- Series 16/18/21, 16i/18i/21i, 0i-A/B/C, Power Mate i
n = Current controlled axes
Pointer to the ODBAXIS structure including the relative position data of the controlled axes. The ODBAXIS structure is as follows.
typedef struct odbaxis {
short dummy ; /* Not used. */
short type ; /* Axis number. */
long data[MAX_AXIS] ; /* Relative position data of controlled axis. */
} ODBAXIS ; /* MAX_AXIS is the maximum controlled axes. */
Return
EW_OK is returned on successful completion, otherwise any value except EW_OK is returned.
The major error codes are as follows.
Return code | Meaning/Error handling |
---|---|
(2) |
Size of ODBAXIS structure(length) is illegal. |
(4) |
The specification of axis number (axis) is improper. |
As for the other return codes or the details, see "Return status of Data window function"
CNC option
For HSSB connection,
For Ethernet connection,
The Ethernet function and the extended driver/library function are necessary. However, in case of Series 16i/18i/21i-B, 0i-B/C/D/F, Series 30i and PMi-A, the required CNC option is as follows. When Embedded Ethernet is used,above two optional functions are not required.
When Ethernet board is used,
- only Ethernet function is required.
CNC parameter
This function is related to the following CNC parameter.
See the manual of CNC parameter for details.
2202#2,#3,#4,#5 (influenced by setting)
CNC mode
This function can be used in any CNC mode.
Available CNC
0i-A | 0i-B/C(Note) | 0i-D | 0i-F | 15 | 15i | 16 | 18 | 21 | 16i-A | 18i-A | 21i-A | 16i-B | 18i-B | 21i-B | 30i-A | 30i-B | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
M (Machining) | |||||||||||||||||
T (Turning) | - | ||||||||||||||||
LC (Loader) | - | - | - | - | - | - | - | - |
0i-D | 0i-F | 16i | 18i | 30i-A | 30i-B | |
---|---|---|---|---|---|---|
P (Punch press) | - | |||||
L (Laser) | - | - | - | - | ||
W (Wire) | - | - |
Power Mate i-D | |
Power Mate i-H | |
Power Motion i-A | O |
"O" | : | Both Ethernet and HSSB | |
"E" | : | Ethernet | |
"H" | : | HSSB | |
"X" | : | Cannot be used | |
"-" | : | None |
Note) 0i-C does not support the HSSB function.
See Also
Example(C Language)
The following program displays "RELATIVE 4: 900051" while the relative
position data of the 4th axis(rotation axis) is 90.0051.
(in case of "IS-C".)
#include "fwlib32.h"
void example( void )
{
ODBAXIS buf ;
cnc_relative( h, 4, 4+4*1, &buf ) ;
printf( "RELATIVE 4:%8ld\n", buf.data[0] ) ;
}
Example(C#)
The following program displays "RELATIVE 4: 900051" while the relative
position data of the 4th axis(rotation axis) is 90.0051.
(in case of "IS-C".)
class example
{
public void sample()
{
Focas1.ODBAXIS buf = new Focas1.ODBAXIS();
Focas1.cnc_relative(h, 4, 4 + 4 * 1, buf);
Console.WriteLine("RELATIVE 4:{0,8}", buf.data[0]);
}
}