PDA

View Full Version : cycle 800 calculation takes too long



Trapatoni
12-27-2011, 09:09 AM
Controller Sinumerik 840D

When calculating the cycle 800, a short waiting time always occurs.
Is it possible to calculate cycle 800 in advance and write the values for that processing into a already set up predefined zero offset?

My program looks like this:

N400 OFFSET=112 SPEED=12000 FEED=4200 TOOL_IN="T07" TOOLD=1
N405 G505
N410 KORR(offset, COR_X, COR_Y, COR_Z, COR_A, COR_B); Call Subprogram
N415 D=TOOLD M3 S=SPEED

N420 CYCLE800(0,"TABLE",0,57,0,0,0,0,0,0,21.15+COR_Y,-28.33+COR_X,152.4-COR_Z,0)

N425 G0 G9 Z0
N430 X=-20 Y=20
N435 G1 X=0 Y=2 F=FEED M=QU(08)
N440 G0 Z=30 M=QU(09); Safety position

Can anybody help me please?

Thank you

Trapi

Hexogen
12-27-2011, 04:13 PM
Hey
Cycle 800 just takes time...
What is a “short waiting times”?
Serial production? Or do you process single parts?
How much time do you want to save?
For what are you using cycle 800? Only for the calculation or also for the positioning?
What cinematic?

In advance you cannot calculate it like that.
You can save the calculation in frame variables and recall afterwards.

However I don’t think your memory will be big enough.

Trapatoni
12-27-2011, 11:14 PM
Thank you for your quick answer.
I am processing serial parts.
My machine is a 5 axial machine (x,y,z,a,b) with circular table and swinging bridge
P cinematic
I have around 50 cycles that I use on each component part.

I already increased my zero offset (Frame) to 100.
In that way I can allocate an own zero offset to each process.

I have a similar machine that calculates cycle 800 in advance like this:
However I don’t quite get how that calculation works.

N3075 CYCLE800(0,"UNIT1_ST1",20000,39,822+R833,666.06+R832,0,15,0.001,0,0,0,0,0,)
N3080 ;#END#*NCG;*RO*;*HD*
;
;G542
N3085 STOPRE
N3090 $P_UIFR[42,X1,TR]=$P_ACTFRAME[X1,TR]
N3095 $P_UIFR[42,Y1,TR]=$P_ACTFRAME[Y1,TR]
N3100 $P_UIFR[42,Z1,TR]=$P_ACTFRAME[Z1,TR]
N3105 $P_UIFR[42,A1,TR]=0
N3110 $P_UIFR[42,C1,TR]=0
N3115 $P_UIFR[42,X1,RT]=$P_ACTFRAME[X1,RT]
N3120 $P_UIFR[42,Y1,RT]=$P_ACTFRAME[Y1,RT]
N3125 $P_UIFR[42,Z1,RT]=$P_ACTFRAME[Z1,RT]
N3130 STOPRE

Thank you
Trapi

darkvoice666
12-28-2011, 04:58 AM
Just eliminate cycle 800 and replaces it with TRANS and RED “by foot”
Regards