# Thread: Biesse Rover Numerical Functions

1. ## Biesse Rover Numerical Functions

I am trying to parametrically divide a panels width to make equal spaced lines in the X axis. For example if a door ranges from 300 to 399 divide it by 4 and so on. My problem seems to be using a numerical function to create a whole number for the division. This is what I have so far:-

TG=LPY/100+0.5

In the manual the numerical functions are:

_L conversion to whole form
_I whole

When I try using either of these I get an error. I am curious no what the difference is between conversion(_L) and whole(_I) and what you would use
_B absolute value for.

2. [PARAMETERS]
LY=800 LZ=18 LX=1500 HC1

[CONTOURS]

N10 AA=LPX/9 BB=LPY/6 CC=LPX/8 LL=(LPY-2*BB)/4 RR=(LL/3)
;AUTO TOOL CHANGE
N20 ;CHANGE THIS LINE FOR A TOOL CHANGE ON YOUR MACHINE
;PON
N30 X=AA Y=BB Z=PRK TP=1 PRF=5 F=4 VF=5 G40 L=PON
;SEGMENT WITH KNOW END POINT
N40 X=LPX-(LL+CC) Y=BB G1
;SEGMENT WITH KNOW END POINT
N50 X=LPX-(CC+LL) Y=BB+LL
;ARC WITH KNOW END POINT & RADIUS
N60 X=LPX-(CC+LL) Y=LPY-(BB+LL) R=LL G5
;SEGMENT WITH KNOW END POINT
N70 X=LPX-(CC+LL) Y=LPY-BB G1
;SEGMENT WITH KNOW END POINT
N80 X=AA Y=LPY-BB G1
;SEGMENT WITH KNOW END POINT
N90 X=AA Y=BB G1
;POFF
N100 L=POFF
N110 X=PRK Y=PRK
. BUT ITS WORTH TYPING IT IN TO SEE HOW IT WORKS. VERY USEFULL WAY OF PROGRAMMING JUST ONCE.

THE PROGRAM WORKS BY SPLITTING THE DOOR INTO SECTIONS. SEE TOP LINE.
THE CC IS THE DISTANCE ABOVE THE ARC CREATED, RR IS THE RADIUS DEPENDING ON WIDTH OF DOOR
LL IS THE WIDTH OF SEGMENT JOINING THE ARC DEPENDING ON WIDTH.

3. hope it helps someone.
as biesse is one of the hardest codes to post process so it actually runs in the machine i tend to write all my programs in this sort of format as once written once a couple of quick number changes has different sized parts machined the same but at the right sizes.
obviously that example was for a kitchen door etc. i normally make pool tables! 4 different sizes- one program!

4. Hi Battwell

Many thanks. I have not yet had chance to try your code. As we have had some spindle trouble with the machine. But I see you use letters so the machine can read its position(eg X=AA). Do you still sell the software for Pc to CNI?

I have come up with this, but am unable to try it at the momment:-

N10 G71 LX=1980 LY=810 LZ=39 HC1 Z=PRK
N20 X=AA Y=BB STL=110 SPA=_I(LPY-(STL*2))/100*0.6 TG=(LPY-(STL*2))/SPA
N30 X-5 Y=STL Z=PRK PRF2.2 F20 G40 TP1 L=PON
N40 JM!(AA<0):1
N50 G1 X=LPX+5
N60 JM:2
:1
N70 G1 Z-5
N80 JM!(BB<(LPY-STL):2
N90 YI=TG
N100 JM:1
:2
N110 L=POFF
N120 X=PRK Y=PRK
&#37;

I have yet to try this program and I must admit I haven't quite got to grips with all the different jump instructions especially when using the PLC.

If this works I would like to be able to open the stops turn the door over repeat the program and link subprograms for cutting various holes for glass in the door. I haven't a clue how to do this but I am sure it can be done.

We have eight options for glass and all can have either rebated or flush bead. Rebated programs have angle cuts in the corner so we don't have to chisel them, like we do with flush beading. I was wondering if it is poosible to add extra options in the Panel dimension table to stop other operators having to modify the code?

The only other way I could think of is to have a line like this:-

N15 OPT=4 REB=Y

Then possibly I could put some code in the program to open subprogram 4Y.

• i use the aa= bb= etc as variables
i set aa=??? so aa is a number ie a width or length etc maybe a rebate depth in your case. also if your using the variable as a counter it must be initialised here too ie. ii=0 then in the program you may write ii=+1 or similar to add one to it.
all must be defined at the start of the program. put a ; (remark) and what each one is in the code to remind other operators etc. then these numbers are all that needs to be changed for different sizes etc
the initial sizes ie lx ly lz i just use bigger than my job size so i can see the program on the screen. i rarely mix the use of both in the program.
ie. the middle of my job would be defined as aa/2 instead of lpx/2 and so on. that way you only use the parameter variables which the operator changes and checks for each size change of the job

to turn panel over- easy! write g200. this turns off vacuum pods etc to release board, the green start zone lamp is then flashing. reseat your work the other way up. press zone start button and program continues.

blimey f20!!! thats a bit fast for any cutting tool? you will find it machines best between f3 and f8 speeds if you dont want it to mess up corners etc

• ## a good example of parametric with board flip line 430

N20 AA=1905 BB=55 CC=300 DD=700 AN=9 WT=18.5 RR=13 WP=46
; AA=SLATE BB=SLATE TO CAB CC= DD= AN=ANGLE WT=WALL THICK
; RR=REBATE WP=PROFILE-
N8 XO=BB-WP
N9 L=GC1 UT=1
N10 Y0 Z=PRK PRF=LPZ/2 F5 G41 TP1 L=PON X-20+WP-BB
N19 G1 X=WP-BB Y0
N20 G1 Y=LPY BA=90-AN
N22 Y=LPY+20 G40
N23 L=PSU
N10 Y0 Z=PRK PRF=LPZ+2 F5 G41 TP1 L=PON X-20+WP-BB
N19 G1 X=WP-BB Y0
N20 G1 Y=LPY BA=90-AN
N22 Y=LPY+20 G40
N23 L=PSU
;N28 G1 Z=-LPZ-10
;N29 G1 BS+ BA0 F10
;N29 G1 Z=-LPZ/2
;N30 G1 X=AA+BB-WP Y0 BA=270+AN F5
;N39 G1 Y-20 G40
;N40 L=PSU
N41 X=AA+BB-WP+10 Y0 Z=PRK PRF=LPZ/2 F5 G42 TP1 L=PON
N42 G1 X=AA+BB-WP
N43 G1 Y=LPY BA=90+AN
N46 G1 Y=LPY+20 G40
N47 L=PSU
N41 X=AA+BB-WP+10 Y0 Z=PRK PRF=LPZ+2 F5 G42 TP1 L=PON
N42 G1 X=AA+BB-WP
N43 G1 Y=LPY BA=90+AN
N46 G1 Y=LPY+20 G40
N47 L=PSU
;N10 X=-20+WP-BB Y0 Z=PRK PRF=LPZ+1 F5 G41 TP1 L=PON
;N19 G1 X=WP-BB Y0
;N20 G1 Y=LPY BA=90-AN
;N28 G1 Z=-LPZ-10
;N29 G1 BS+ BA0 F10
;N29 G1 Z1
;N30 G1 X=AA+BB-WP Y0 BA=270+AN F5
;N39 G1 Y-20 G40
;N40 L=PSU
; INNER UPRIGHTS
N50 X=AA/2+600+WT/2 Y-20 Z=PRK PRF=3 F5 G41 TP1 L=PON
N60 G1 Y0
N69 G1 Y=LPY
N70 G1 Y=LPY+20
N79 G1 X=AA/2-600-WT/2
N130 G1 Y0
N140 G1 Y-20 G40
N150 L=PSU
N160 X=AA/2-600+WT/2 Y-20 Z=PRK PRF=3 F5 G41 TP1 L=PON
N170 G1 Y0
N180 G1 Y=LPY+20
N190 G1 X=AA/2+600-WT/2
N200 G1 Y0
N210 G1 Y-20 G40
N220 L=PSU
; 18MM CLEAN
N10 X=-BB+WP-10 Y0 Z=PRK PRF=0 F10 G41 TP1 L=PON
N10 G1 Z-18
N11 G1 X=-BB+WP+10
N12 G1 Y=LPY BA=90-AN
N13 XI0.01
N14 G1 Y0 BA=-90-AN
N14 G1 X=-BB+WP-10 G40
N15 L=PSU
N16 X=AA+BB-WP+10 Y0 Z=PRK PRF=0 F10 G42 TP1 L=PON
N16 G1 Z-18
N16 G1 X=AA+BB-WP-10 Y0
N17 G1 Y=LPY BA=90+AN
N18 XI-0.01
N19 G1 Y0 BA=-90+AN
N20 G1 X=AA+BB-WP+20 G40
N21 L=POFF
; REBATE
N229 L=GC1 UT=3
N230 X=-BB+WP Y=LPY+10 Z=PRK PRF=WT/2 F8 G41 TP1 L=PON
N240 G1 Y=LPY-RR/2
N250 G1 X=AA+BB-WP
N258 G1 X=AA+BB+WP G40
N258 L=PSU
N258 X=-BB-WP Y=LPY+10 Z=PRK PRF=WT/2 F5 G41 TP1 L=PON
N258 G1 Y=LPY-RR+1
N258 G1 X=AA+BB-WP
N258 G1 X=AA+BB+WP G40
N258 L=PSU
N258 X=-BB-WP Y=LPY+25 Z=PRK PRF=LPZ+1 F5 G41 TP1 L=PON
N258 G1 Y=LPY
N258 G1 X=AA+BB-WP
N258 G1 X=AA+BB+WP G40
N258 L=POFF
N280 L=GC1 UT=5
N290 X=AA+BB+WP Y0 Z=PRK PRF=LPZ F6 G41 TP1 L=PON
N300 G1 X=AA+BB-WP
N310 G1 X=-BB+WP
N320 G1 X=-BB-WP Y-10 G40
N330 L=POFF
N280 L=GC1 UT=2
N290 X=AA+BB+WP Y2 Z=PRK PRF=3 F6 G41 TP1 L=PON
N300 G1 X=AA+BB-WP
N310 G1 X=-BB+WP
N320 G1 X=-BB-WP G40
N330 L=POFF
N339 X=AA/2-DD-181 Y75 PRF=4 T8 L=G99
N340 X=AA/2-DD Y48 PRF=5 T8 L=G99
N350 X=AA/2-DD Y82 PRF=4 T8 L=G99
N360 X=AA/2-CC Y82 PRF=4 T8 L=G99
N370 X=AA/2-CC Y48 PRF=5 T8 L=G99
N379 X=AA/2-32 Y75 PRF=4 T8 L=G99
N379 X=AA/2+32 Y75 PRF=4 T11 L=G99
N380 X=AA/2+CC Y48 PRF=5 T11 L=G99
N390 X=AA/2+CC Y82 PRF=5 T11 L=G99
N400 X=AA/2+DD Y82 PRF=5 T11 L=G99
N410 X=AA/2+DD Y48 PRF=5 T11 L=G99
N419 X=AA/2+DD+181 Y75 PRF=4 T11 L=G99
N420 X=PRK Y=PRK
N430 L=G200
N429 XO0 YO0
N430 L=GC1 UT=2
N440 X-20 Y-10 Z=PRK PRF=2 F6 G42 TP1 L=PON
N450 G1 X0 Y0
N460 G1 X=LPX
N470 G1 X=LPX+20 G40
N480 L=PSU
N490 Y320 Z=PRK PRF=2 F6 G42 TP1 L=PON
N500 G1 X=LPX
N510 G1 X0
N520 G1 X-20 Y340 G40
N530 L=POFF
N540 X=PRK Y=PRK
%

• that program can be seen running here

"http://www.youtube.com/watch?v=pZLYvTfDw50"]YouTube- Biesse CNC point to point at work with close ups

• Thank you for posting the video and the example. I have a lot to learn.

What about sub program option? Is it possible to add to the dimension screen or will the options still have to be done in the code?

I like the vaccumn pods. Did you make them yourself or buy them? I have yet to make some replacements for the original Biesse ones.

As for the gaffer tape the factory I work in is virtually held together by it. The toolchanger needs fixing on mine.

Do you still sell the PC to CNI program? I would be very intrested as I need to create and modify a whole heap of programs.

As to the feedspeed. We have no problems with the corners although we do have to run any diagonal work at 10m/min otherwise it developes a bow. I also have to fudge programs if they need parrallel diagonals. We actually cut out 40mm thick MDF in 3 passes using a 4 flute compression rougher finisher at 30m/min with no problem. I think the acceleration is set low.

PS Apart from changing the parameter values(CC=LPY etc) do you think the program will work? I won't be able to find out till after the weekend.

• N10 G71 LX=1980 LY=810 LZ=39 HC1 Z=PRK
N15 STL=110 SPA=_I(LPY-(STL*2))/100*0.6 TG=(LPY-(STL*2))/SPA
N20 X=AA Y=BB LPX=CC LPY=DD
N30 X-5 Y=STL Z=PRK PRF2.2 F20 G40 TP1 L=PON
N40 JM!(AA<0):1
N50 G1 X=CC+5
N60 JM:2
:1
N70 G1 Z-5
N80 JM!(BB<(DD-STL):2
N90 YI=TG
N100 JM:1
:2
N110 L=POFF
N120 X=PRK Y=PRK
N130 L=G200
N140 RP=2
&#37;

This is a very basic internal door that supposed to look Tongue and gooved. The first and last lines are always spaced 110mm(STL) the edge of the door. Spacing for the other lines in between(TG) is normally worked out on a calculator by subtracting 2x110 from the whatever the door width is. Dividing the remainder by 100 and rounding that number up for the spaces. I hoping this program does away with the calculator.

• N20 X=AA Y=BB STL=110 SPA=_I(LPY-(STL*2))/100*0.6 TG=(LPY-(STL*2))/SPA

the x and y need giving a starting number. the x= doesnt tell the controller x position.

use something like bb=0 and add to it before the conditional jump
ie. bb=bb+100
then check if bb= bigger or smaller for the jump as required.

i made the pods from nylon. took me a day! was one of the first programs i wrote as my machine all the pods were naffed when i got it.
i still have a couple of the original mdf ones on there which are totally useless! didnt realise mdf leaked so much...lol

i can arrange for the cni program for you, just have to confirm the cost now. would you want to run it on 1 pc only or from a memory stick?

you will probably find your max interpolation speed is limited to 10 metres in the axis setup. machine only does faster on rapid moves.
i had to slow my z axis last week as the motor is getting tired and couldnt keep up.
what spindle fault did you have?

• i dont know how to do polar coordinates on biesse
ie i dont know how to set a variable to current x position
i always work it methodically from a starting point

• N10 G71 LX=1980 LY=810 LZ=39 HC1 Z=PRK
N15 STL=110 SPA=_I(LPY-(STL*2))/100*0.6 TG=(LPY-(STL*2))/SPA
N20 AA=0 BB=STL LPX=CC LPY=DD
N30 X-5 Y=STL Z=PRK PRF2.2 F20 G40 TP1 L=PON
N40 JM!(AA=0):1
N50 G1 X=CC+5
N55 AA+1
N60 JM:2
:1
N70 G1 Z-5
N74 AA-1
N80 JM!(BB<(DD-STL):2
N85 BB+TG
N90 YI=TG
N100 JM:1
:2
N110 L=POFF
N120 X=PRK Y=PRK
N130 L=G200
N140 RP=2
&#37;

Does this work?

I would need the memory stick. Do you have a demo to persuade the boss?

My machine was limited to 14.5m/min by the Z axis. But I got around this by Putting Max interpol speed as 30m/min in all 3 axis but limited the Max speed to 10m/min in the Z axis. I have timed the difference and a door that usese to take 1min 50 secs(10m/min) now take 1mins 3 secs(20m/min). I am going to put a floating saw on my my machine and hope to do these simply doors at 40m/min and no sanding in the V groove.

Although I have vectric with all it whistles and bells on my home set up I am enjoying learning the g code.

I had 2 spindle problems the first was the bearings died in TP1(I run this at 24,000 all the time floating V groove head.Custom made). Swapped TP2 to TP1 position so I had the float option. Everything ran fine. Left the engineer and electrician to move TP2 back when TP1 was fixed and the broke the collet sensor in TP2. So that now been sent for servicing. The error code was xx59.

• Page 1 of 4 1234 Last

### About CNCzone.com

We are the largest and most active discussion forum from DIY CNC Machines to the Cad/Cam software to run them. The site is 100% free to join and use, so join today!

### Follow us on

Search Engine Friendly URLs by vBSEO ©2011, Crawlability, Inc.