This document has been prepared in order to be used by OSAI. It describes the latest release of
the product.
OSAI reserves the right to modify and improve the product described by this document at any time
and without prior notice.
Actual application of this product is up to the user. In no event will OSAI be responsible or liable for
indirect or consequential damages that may result from installation or use of the equipment
described in this text.
Changed LIMITSW function
Changed description of A_TO_ID function
Changed description of ID_TO_A function
Changed description of ANAIN function
Changed description of ENCODER function
Changed description of PARK_SP function
Changed description of GET_SP function
Changed GETUSED function
Added new function PUTUSED
Added new function GETUSEC
Added new function PUTUSEC
Changed description of AX_SETZ function
Changed description and NOTE of AX_GET8 function
Added NOTE
Added NOTE
Changed description and NOTES of TC_CONF function
Changed description of TC_READ1 function
Changed description and NOTES of TC_WRIT function
Changed AXD_CMD function
Added new function AX_MECS
Added new function AX_MECR
Added new function AX_MECW
Added new function AX_RTFBCK
CHAP. 10
APPENDIX H
10 Series CNC WINPLUS Library- User Manual (04)
Added new charter “CANOPEN-HILSCHER MANAGEMENT FUNCTIONS”
Added new appendix “TABLE OF MAIN RESOURCES OF AXIS BOARDS”
Preface
10 Series CNC WinPLUS Library - User Manual
PREFACE
This manual contains the description of all block functions (FB) needed for the logic application
projects of the 10 Series CNC.
It contains the corresponding Structured Text (ST) code for each FB and a description of the input
and output variables.
This manual deals specifically with functions and function blocks. For further information on
WinPLUS, its language and its applications in the 10 Series CNC environment consult the following
manuals:
10 Series CNC WinPLUS APPLICATION MANUALCode 45006926D
10 Series CNC WinPLUS development toolCode 45006877B
You can find an FB or a function more easily if you look up the Function Reference List below in
this preface.
In this list the functions are ordered alphabetically and for each of them there is a short description
plus the page number.
In this manual the various function blocks have been subdivided into groups depending on the type
of operation they fulfil or the environment to which they belong. So if you do not know the exact
name of an FB, but know the environment to which it refers, you can easily find the FB in the
manual by consulting the index.
COMMON FEATURES OF FUNCTION BLOCKS:
All function blocks can be used in the Ladder Diagram / Function Block Diagram (LD/FBD) editors
and the Structured Text (ST). All the other function blocks are extensions which internally use a
function call. These functions can also be used in the ST editor. For each FB there is an example
for the calls and the necessary parameters in ST.
stat_wrd output (function status output word)
The function status output is available on all system function blocks. After the relevant function has
been completed, this word contain a value indicating that all went well or that there was some kind
of problem. When everything was ok, the status word will be zero. In case of problems the value of
the status word is different from zero. Please refer to the specific function block for the meaning of
the values returned in the status word.
10 Series CNC WinPLUS Library - User Manual (04) 1
Preface
10 Series CNC WinPLUS Library - User Manual
Often you're not interested in knowing the status of the functions because your program has been
tested and always works well. You can then hook up only one single short variable, e.g. MW 999,
to the status output of many functions.
ax_id input (physical axis identifier)
The axis identifier is used for many system functions. It is a number identifying the internal
resources for one axis on an axes module. For non OS-Wire systems , each axes module supports
8 axes, 6 resources are reserved for physical axes (which read encoders and/or write to D/A
converters) and 2 for virtual axes. A machine axis (e.g. "X") may be related to any of the available
physical axis resources on any of the axes modules.
There can be up to 4 axes modules in the 10 Series CNC chassis, allowing for up to 32 axes
(theoretically). The axis identifier now, is a number in the range of 1 through 32. It must be
assigned during the axes configuration in AMP and will also serve to define the page number of the
axes table on which this axis will be managed.
OS-Wire systems are not subjected to any hardware limitation and therefore the number of
physical axes may range from 1 to 32, and the same applies to the total number of transducers and
converters.
Even when you move the physical connections (encoder, D/A) of an axis to another axes module,
its ax_id will remain unchanged and the axis data will remain available on the same page of the
axes table.
The function A_TO_ID converts an ASCII axis address to its physical axis identifier number.
For non OS-Wire systems , the identifiers of the tansducer inputs are numbers in the range of
100Hex up to 1nnHex. On the first servo module you will find (top to bottom) the transducers
100Hex through 105Hex, on the second 106Hex through 10BHex, on the third module 10CHex
through 111, and so on. The D/A converters have a similar numbering system. On the first module
you will find the converters 200Hex through 205Hex, on the second module 206Hex through
20BHex, and so on.
In OS-Wire systems, the identifiers mapped on the bus use code 1nntHex, where ‘nn’ is the
address (from 0 to 3DHex) of the device and ‘t’ is the transducer number from 1 to 3. On the OS3
drive you can fit (as an option) only one incremental transducer, on the Bridge you can have up to
3 transducers. D/A converters use a similar system of codes (this applies only to Bridge devices):
2nncHex, where ‘nn’ is the address of the device (from 0 to 3DHex) and ‘c’ is the converter number
from 1 to 3.
In OS-Wire systems fitted with local transducers and converters (i.e., not mapped on a digital bus
but present on the board connector), the identifier codes are the same as are used in non OS-Wire
systems.
210 Series CNC WinPLUS Library - User Manual (04)
Preface
10 Series CNCWinPLUS Library - User Manual
TYPES OF SYSTEM FUNCTION CALLS
There can be 3 different types of system function calls (system function blocks):
WAIT
A WAIT function call suspends the execution of the task that called it. This task will resume its
activity after the function has been completely executed.
The suspension of a task implies the suspension of all routines that make up this task. The WAIT
function is normally executed by an environment other than the I/O processor module (the system).
For this reason a WAIT function is a synchronous call: when the logic scan exits from a WAIT
function block, this block has been completely executed.
NOWAIT
A NOWAIT function call does not suspend the execution of the logic task that called it. Immediately
after the call has been issued, the logic task resumes execution. The function call will be executed
by an environment other than the I/O processor module (system).
For this reason a NOWAIT function is an asynchronous call: when the logic scan exits from a
NOWAIT function block, the function is still being executed by another environment.
The execution of many NOWAIT function calls from a logic task may cause a system overloading
since the simultaneous execution of many functions is required.
When 15 NOWAIT functions are in parallel execution, the function that has generated the last call
is in any case executed and it returns to the word status a warning code (1000 hexadecimal).
If you continue to call NOWAIT functions after the warning message, that is when 25 functions are
in parallel execution, an unrecoverable emergency is generated ("too many requests").
INTERNAL
An INTERNAL function is similar to a WAIT function call but its execution is much faster because
it's done by the same environment that calls the function (WinPLUS). An INTERNAL function call is
in all aspects like a subroutine available to the WinPLUS environment. For this reason an
INTERNAL function is a synchronous call: when the logic scan exits from an INTERNAL function
block, this block has been completely executed.
10 Series CNC WinPLUS Library - User Manual (04)3
Preface
10 Series CNC WinPLUS Library - User Manual
LIST OF THE BASE ELEMENTS OF THE LANGUAGE
AABORT: Abort a point-to-point-interpolator................................................................ 4-5
TABLE OF MAIN RESOURCES OF AXIS BOARDS:........................................... H-1
10 Series CNC WinPLUS Library - User Manual (04)vii
Index
10 Series CNC WinPLUS Library - User Manual
END OF INDEX
viii10 Series CNC WinPLUS Library - User Manual (04)
Chapter 1
NC RELATED FUNCTIONS
The NC system function calls allow the WinPLUS logic program to communicate with the system
and to request the execution of typical CNC related functions (operator functions, part program
related functions). All functions can be used as a function block or can be called as a function in
the Structured Text. This chapter gives the type and sequence of parameters for the Structured
Text call. Where necessary, the function and its conditions are explained.
Each function has a return value (parameter 'stat_wrd') which can be found in Appendix B
("Messages relative to NC) or a zero value if the execution was completed without errors.
REQUEST CYCLE START FOR A SELECTED PROCESS.......................................
REQUEST CYCLE FOR A SELECTED PROCESS....................................................
REQUEST CYCLE STOP FOR THE SELECTED PROCESS ....................................
REQUEST THE INTERPOLATOR TO ENTER IN FEEDHOLD STATUS ..................
REQUEST THE INTERPOLATOR TO EXIT FROM FEEDHOLD...............................
ENTER IN HOLD .........................................................................................................
EXIT FROM HOLD.......................................................................................................
SET MANUAL FEEDRATE OVERRIDE......................................................................
SET RAPID FEEDRATE OVERRIDE ..........................................................................
SET FEEDRATE OVERRIDE ......................................................................................
SET SPEED OVERRIDE .............................................................................................
REQUEST MODE OF OPERATION FOR A SELECTED PROCESS.........................
GET JOG INCREMENT...............................................................................................
SET JOG INCREMENT ...............................................................................................
SELECT ONE OR MORE AXES FOR MANUAL MOVEMENT...................................
REQUEST RESET OF NC ..........................................................................................
NOTIFY END OF RESET FROM WINPLUS ...............................................................
GET INFORMATION FROM SELECTED PART PROGRAM .....................................
REQUEST INFORMATION ABOUT PP EXECUTION ................................................
SELECT A PART PROGRAM FOR EXECUTION.......................................................
SELECT A BLOCK FROM PART PROGRAM FOR EXECUTION..............................
EXECUTE A BLOCK IN MDI .......................................................................................
EXECUTES PROGRAM BLOCKS FROM WINPLUS IN MDI MODE .........................
RESUME PART PROGRAM EXECUTION AFTER M06 ............................................
DISABLE PART PROGRAM BLOCK PRECALCULATION ........................................
ENABLE PART PROGRAM BLOCK PRECALCULATION .........................................
10 Series CNC WinPLUS Library - User Manual (03)1-1
Chapter 1
NC Related Functions
REQUEST THE INTERPOLATOR TO ENTER IN FEEDHOLD STATUS AT END
OF MOVEMENT..........................................................................................................
PART PROGRAM EXECUTION MONITORING MANAGEMENT…………………….
MASTER/SLAVE AXES MANAGEMENT………………………………………………..
FEEDHEM
PPRUNINFO
XDA_COMD
1-210 Series CNC WinPLUS Library - User Manual (03)
Chapter 1
NC Related Functions
CYSTART: Request cycle start for a selected process
Type: No Wait
LD/FBD:
stat_wrd
ST:
stat_wrd := CYSTART(proc_num) ;
INPUT VARIABLE:process number (1..20)(int)
OUTPUT VARIABLE:status word(int)
Description:
This function is used to simulate the front panel's cycle start button in WinPLUS
NOTE:
The CYCLE has the same functionalities as CYSTART but it is a WAIT function.
10 Series CNC WinPLUS Library - User Manual (03)1-3
Chapter 1
NC Related Functions
CYCLE: Request cycle for a selected process
Type: Wait
LD/FBD:
stat_wrd
ST:
stat_wrd := CYCLE(proc_num);
INPUT VARIABLE:process number (1..20)(int)
OUTPUT VARIABLE:status word(int)
Description:
This function is utilized to simulate pressing of the command module's cycle start button from
WinPLUS
The WAIT CYCLE function allows synchronization with the NC module and always receives an
acknowledge from the process.
On exit from the CYCLE call two situations can take place, according to the process' status:
• Process in "IDLE" status:
• Process in "RUN" status:
NOTE:
This function can be used, when the logic sends the blocks MDI (MDI_CMD) to execution.
In presence of a CYCLE command, the logic can synchronise with the NC environment as follows:
• execution of a block in MDI with actual axes movements using the routines CONMOV and
ENDMOV
• execution of a block in MDI without moving the axes by testing the process signal status IDLE
and RUN.
The command that has been sent in execution following the
CYCLE call is being executed; you must wait for the process
to enter "IDLE" status so that the command can be executed
The command sent in execution following the CYCLE call
has already been executed.
The function CYSTART has the same features as the function CYCLE, but as it is a NOWAIT, it
does not allow a proper synchronisation between the logic and the NC environment, if the block
sent to execution does not contain an actual axis move.
1-410 Series CNC WinPLUS Library - User Manual (03)
CYSTOP: Request cycle stop for the selected process
LD/FBD:
stat_wrd
ST:
stat_wrd := CYSTOP(proc_num,ax_id);
Chapter 1
NC Related Functions
Type: No Wait
INPUT VARIABLES:process number (1..20)(int)
axes identifier of axis to be stopped(int)
OUTPUT VARIABLE:status word(int)
Description:
This function stops the axis' motion (ax_id) relative to the process specified by the user
("proc_num").
The "ax_id" parameter is insignificant, in fact the axis in motion can be stopped without the "ax_id"
axis identify;
Despite this we advise to give the identifier of the axis to be stopped to the "ax_id" parameter for
reasons of future developments compatibility.
10 Series CNC WinPLUS Library - User Manual (03)1-5
Chapter 1
NC Related Functions
FEEDHLD: Request the interpolator to enter the feedhold status
Type: No Wait
LD/FBD:
stat_wrd
ST:
stat_wrd := FEEDHLD(proc_num);
INPUT VARIABLE:process number (1..20)(int)
OUTPUT VARIABLE:status word(int)
Description:
This function simply sets the feedrate to a zero value. Any on-going interpolating axes motion in
the selected process is suspended. The motion can be resumed with FEED_GO.
NOTES:
• This function is not executed when the control is working in G33 (thread cutting) or G84
(tapping). The stat_wrd variable contains a corresponding error code.
• The feedhold state is not cancelled by a RESET.
• Flag S_nFEEDH (S 20_15) informs the logic about the actual state of the control.
1-610 Series CNC WinPLUS Library - User Manual (03)
Chapter 1
NC Related Functions
FEED_GO: Request the interpolator to exit the feedhold status
Type: No Wait
LD/FBD:
stat_wrd
ST:
stat_wrd := FEED_GO(proc_num);
INPUT VARIABLE:process number 1-20(int)
OUTPUT VARIABLE:status word(int)
Description:
This function makes the interpolator exit the feedhold state requested by the function FEEDHLD.
The feedrate with the value previous to the entry in feedhold state is restored. The motion of the
axes resumes.
If you call this function when the interpolator is not in feedhold state, nothing happens.
See also:
FEEDHLDrequest feedhold system function call
System flags:
S_nFEEDH(S 20_15) process in feedhold status.
10 Series CNC WinPLUS Library - User Manual (03)1-7
Chapter 1
NC Related Functions
FEEDHEM: request to interpolator to enter in feedhold at end of movement
Type: No Wait
LD/FBD:
stat_wrd
ST:
stat_wrd := FEEDHEM(proc_num);
INPUT VARIABLE :number of process 1-20(int)
OUTPUT VARIABILE :status word(int)
Description:
With this function the final point of the movement (program block) currently executed is reached at
zero speed. At this point feedrate is set on zero as is done with the FEEDHLD function. The
movement can be resumed with FEED_GO.
NOTES:
• This function applies continuous motions, as reaching the final point at zero speed is an intrinsic
characteristic in all other types of movement and hence the function in question is an integral part
of the movement. However, at the end of all types of movement, feedrate is set on zero.
• Stopping at the final point of a movement is not ensured if the stop request is executed at a
distance from the final point of the movement which is not sufficient to stop the movement
(compatibly with the acceleration values configured on the axes); in this case, the stop will occur
on the subsequent movement(s), as in a regular feedHold.
• If the stop at final point has been correctly requested, stop coordinates may differ from the final
point of the movement by a distance of the order of 0.01 mm.
• This function is not performed when the control is working in G33 mode (threading) or G84
(tapping). The stat_wrd variable contains the corresponding error code.
• Feedhold status is not deleted by a RESET.
• The S_nFEEDH (S 20_15) flag informs the logic as to the current control status.
1-810 Series CNC WinPLUS Library - User Manual (03)
Chapter 1
NC Related Functions
HOLDON: Enter in hold
Type: No Wait
LD/FBD:
stat_wrd
ST:
stat_wrd := HOLDON(proc_num);
INPUT VARIABLE:process number 1-20(int)
OUTPUT VARIABLE:function status output word(int)
Description:
This function stops the interpolator of the requested process. In this status of the NC, it is possible
to execute manual motion, to execute MDI motion and to invoke multi-block-retrace.
See also:
HOLDOFFExit from HOLD status function call.
System flags:
S_nHOLDA(S 20_02) process in HOLD status.
10 Series CNC WinPLUS Library - User Manual (03)1-9
Chapter 1
NC Related Functions
HOLDOFF: Exit from hold
Type: No Wait
LD/FBD:
stat_wrd
ST:
stat_wrd := HOLDOFF(proc_num);
INPUT VARIABLE:process number (1..20)(int)
OUTPUT VARIABLE:function status output word(int)
Description:
This function makes the interpolator exit from HOLD status function call.
See also:
HOLDONrequest to enter in HOLD status.
System flag:
S_nHOLDA(S 20_2) process in HOLD status.
1-1010 Series CNC WinPLUS Library - User Manual (03)
Loading...
+ 384 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.