Function
Set the interpolation type and the axis for the interpolation.
Format
Ret = SmcWSetBankInterpolation( Id , AxisNo , BankNo, InterType , InterAxis , Reserved)
Parameters
Id [ C, C++: short ] [ Python: ctypes.c_short ]
Specify the device ID retrieved by SmcWInit function.
AxisNo [ C, C++: short ] [ Python: ctypes.c_short ]
Specify axis number.
BankNo [ C, C++: short ] [ Python: ctypes.c_short ]
Specify bank number.
InterType [ C, C++: short ] [ Python: ctypes.c_short ]
Set interpolation type.
0 |
No interpolate |
1 |
Straight line interpolation 1 |
2 |
Straight line interpolation 2 |
3 |
Circular arc interpolation |
Straight line interpolation
1 : It is straight line interpolation operation of can Accel/Decel setting.
Straight line interpolation 2 : It is straight line interpolation operation
of cannot Accel/Decel setting. Only the fixed velocity operation by the
TargetSpeed is possible.
Circular arc interpolation :
Circle move by 2 Axis. Only
the fixed velocity operation by the StartSpeed is possible.
Operation of cannot Accel/Decel setting.
Even if it is set to [0 : No interpolate], to specify the bits including the own axis always be InterAxis.
Example: To AxisNo=4, InterAxis=8[H]
InterAxis [ C, C++: short ] [ Python: ctypes.c_short ]
The axis for each interpolation is set including the own axis.
Axis No bits
[ 8 7 6 5][ 4 3 2 1 ]
Range (4 Axis board): from
0x3 to 0xF
Range (8 Axis board): from 0x3 to 0xFF
0 |
No interpolate |
1 |
Interpolate |
Reserved [ C, C++: short ] [ Python: ctypes.c_short ]
Set value to 0.
Return Value
Ret [ C, C++: long ] [ Python: ctypes.c_long ]
0 |
Terminated normally |
Non-zero |
Terminated abnormally |
See also: Error code details
Remarks
Please specify more than
two axes for InterAxis, except for InterType=0.
It cannot set more than the number of banks specified for BankNum by the
SmcWSetBankNumber function to BankNo.
A set content becomes invalid.
The axis that the axis for
a specified interpolation is different from the first bank for the interpolation
cannot be set since the second bank.
The setting of the axis for all interpolations of the interpolation type
set before is canceled when setting it to the axis that has already been
specified for an object axis again.
Please execute this function before executing the SmcWSetBankReady function.
In SMC-8DL/DF series, two
four axis control chips (1-4 axes and 5-8 axes) are used.
The restriction matter of each board is as follows.
- SMC-2/4/8DL series
Because the bank cannot
operate by SMC-2/4/8DL series, it is "BankNo=1" fixation.
It is possible to set it by one board only by one straight line interpolation
setting of a couple.
In SMC-8DL series , It is possible interpolation setting over the chip.
SmcWSetSync function for
a synchronous control or this function for the interpolation can be set
by one board.
The axis for the interpolation can be included in the axis for a synchronous
control.
- SMC-4DF series
A couple of straight line
interpolation 1 can be set by one board.
A couple of circular arc interpolation can be set by one board.
In Straight line interpolation 1, the first axis of the axis for the interpolation
becomes an interpolation control axis.
- SMC-8DF series
The setting of above-mentioned
SMC-4DF series two pairs can be used.
Straight line interpolation 1 and a circular arc interpolation that steps
over the chip cannot be done.
When the straight line that steps over the chip is interpolated, Straight
line interpolation 2 is using.
In Straight line interpolation 1, the first axis of the axis for the interpolation
becomes an interpolation control axis.
- Circular arc interpolation
A circular arc interpolation
can be specified only with SMC-4/8DF series.
It is a can not be designated in SMC-2/4/8DL series.
It is possible to select it by a couple only by two axis. One axis or 3,4
axis cannot be specified.
The first axis of the axis for the interpolation is X axis, and the other
side is Y axis. X axis becomes an interpolation control axis.
Please specify the bit including the axis for InterAxis even when InterType=0(No interpolate) and is set.
If the device is in operation, the function cannot be performed.
See Also