D = Device(CAMMING2, CAMMING3)
C = Calculation functions
Lo scopo della DC10ElGear funzione is to calculate the areas of electronic cam for managing a slave of a Gearing.
The gearing is a system that links a Slave axis an axis Master by a ratio of timing adjustable.
Below is a chart showing the progress of the Slave respect to Master. The zero point on the graph represents the time when given the command to STARTCAM the Slave. The ratio set in the sample chart is 1:2 (aslParam[1] = 500)
N.B.: The stretch marked as “tacc” there may be no if you set the acceleration time to zero. With zero acceleration time Slave's departure is to “step”, reached in 'zero time' the speed of the Master.
DC10ElGear (aslParam, codeG, codeM, codeQm, codeQs, codeQma, codeQsa,Error)
Parameters:
IN/OUT | VARIABLE TYPE | EXAMPLE NAME | DIM | |
---|---|---|---|---|
IN | ARRSYS | aslParam [1] | L | Synchronous Slave/Master relationship (1000=1:1) (possibility of minimum variation of 1‰) |
IN | ARRSYS | aslParam [2] | L | Maximum speed Slave (UM/sec) [1÷999999] |
IN | ARRSYS | aslParam [3] | L | Acceleration time Slave to go from zero to max speed. Setting 0 the start is to “step”. (s/100) [1÷999999] |
IN | ARRSYS | aslParam [4] | L | Master reference speed, used to calculate the accelerations (UM/sec) [1÷999999] |
IN | ARRSYS | aslParam [5] | L | “Measure” parameter of used device [1÷999999] |
IN | ARRSYS | aslParam [6] | L | “Pulse” parameter of used device [1÷999999] |
OUT | ARRSYS | CodeG | L | Array containing calculated G Code (40 elements) (OUT) |
OUT | ARRSYS | CodeM | L | Array containing claculated M Code (40 elements) (OUT) |
OUT | ARRSYS | CodeQm | L | Array containing calculated CodeQm (40 elements) (OUT) |
OUT | ARRSYS | CodeQs | L | Array containing calculated CodeQs (40 elements) (OUT) |
OUT | ARRSYS | CodeQma | L | Array containing CodeQma (40 elements) (OUT) |
OUT | ARRSYS | CodeQsa | L | Array containing CodeQsa (40 elements) (OUT) |
OUT | SYSTEM | Error | B | Var of occurred error (OUT) |
After calling the function, the error variable takes certain values, the meaning of these values is summarized below:
0: calculation executed without errors
1: Sync ratio equal to 0
2: Slave max speed less than or equal to 0
3: Master speed less than or equal to 0
4: “Measure” parameter less than or equal to 0
5: Calculated Slave speed greater than the maximum Slave speed
In our example, we want to calculate the cam shaft when the gfCalcElGear flag goes to 1. Writing on the cam is done by the DW20WrCam function.
MAIN: IF gfCalcElGear gfCalcElGear = 0 aslParam[1] = 2000 ;Slave/Master relationship (2:1) aslParam[2] = 4000 ;Maximum Slave speed aslParam[3] = 0 ;Acceleration Slave time (0=disabled:starting without ramps) aslParam[4] = 1500 ;Master reference speed aslParam[5] = 1000 ;"Measure" parameter of device aslParam[6] = 4000 ;"Pulse" parameter of device DC10ElGear (aslParam, codeG, codeM, codeQm, codeQs, codeQma, codeQsa,Error) IF NOT Error SettIniz = 1 NumSet = 4 DW20WrCam(cmCamma,CodeG,CodeM,CodeQm,CodeQs,CodeQma,CodeQsa,SettIniz,SettFine,NumSet,Error) ENDIF ENDIF