CNCzone.com-The Largest Machinist Community on the net!



Home Page Mark Forums Read Today's Posts My Replies Classifieds Reviews Photo Gallery Web Links Share Files Advertise With Us Ad List
Go Back   CNCzone.com-The Largest Machinist Community on the net! > Machine Controllers Software and Solutions > Fanuc


Fanuc Discuss Fanuc controllers here!


This forum is sponsored by:

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Ban this user!
Old 04-03-2007, 09:18 AM
 
Join Date: Mar 2007
Location: USA
Posts: 207
John3 is on a distinguished road
Offsets not big enough!

Many, Many thanks to Dan Fritz for his instructions on manually programming a 5T. The instructions worked perfectly after I realized that INSERT and INPUT are two different keys (Dah!) I get the feeling that programming like this all day would be tons of fun.

The lathe is a 22x40 inch machine. It seems like offsets above 9.9999 inches are not accepted!!!!

Am I doing something stupid? Is this for real?

I began writing a program and setting up the machine the same way I do my Fanuc 0-T/ Tsugami Lathe. I turn scrap pieces, measure the dimensions and enter the difference from from machine zero. This makes the readout show the actual part size (Length and diameter) when the right tool offsets are active. I won't be able to do that with this machine if offsets only hold numbers smaller than 10". My Z-zero is 40 inches away from where the workpiece will be.

How do other people work around these sorts of limitations? I've seen some programs that use G50 axis shifting, but I've never bothered to learn this method. Is this what I have to do?

TIA,

John
Reply With Quote

  #2   Ban this user!
Old 04-03-2007, 09:41 AM
jamesweed's Avatar  
Join Date: Jan 2007
Location: USA
Posts: 82
jamesweed is on a distinguished road

Originally Posted by John3 View Post
I turn scrap pieces
Me too sometimes!

Sorry but that just seems funny??? I don't have a answer for you, but you have came to the right place for input. Just not from me...look below this post for help.
-Jim
Reply With Quote

  #3   Ban this user!
Old 04-03-2007, 09:43 AM
 
Join Date: Sep 2005
Location: USA
Age: 60
Posts: 755
Dan Fritz is on a distinguished road

You really need to use G50 to set a coordinate system on your 5T lathe. There were two schools of thought on G50. One was to use G50 once at the beginning of the program to set the X-Z zero for the first tool. Then, you would use tool offsets to compensate for the differences in the tool lengths. The same offsets are used for wear compensation.

Another method is to use a separate G50 statement for each tool. Your G50 statement sets a new zero point for each tool, so that (theoretically) moving each tool to X0Z0 would take all the tools to the exact same point. Then, the tool offsets are used for wear compensation only, and their values would be small.

Fanuc and Mori Seiki programming schools back in the 70's taught customers to use a separate G50 statement for each tool. A similar command on a 5M mill is G92, which works like G50 on a lathe.

The G50 statement can do two things. It can set the coordinate system for X and X, and it can also be used to set a maximum spindle speed for constant surface speed (using a letter "S" with G50). If you use CSS, then as the x axis approaches zero, the spindle will wind up to this maximum RPM and no higher. You may have chuck jaws or a bar feeder that can't take the machines max RPM, so setting this limit is sometimes a safety issue. You only need one G50S--- command at the beginning of the program.

I would always start out a program with a couple of blocks to take the machine home (G28U0W0), then move out to a safe "tool index" position with an incremental move (G00U---W---). That should put my first tool at a known position relative to the workpiece. X0 is, of course, always set to spindle centerline, and I would use the chuck face as a Z0, making all my Z dimensions in the program positive (but you can set Z0 to anywhere you like)

I would then put a block delete character ahead of these first few moves, so that the machine could be restarted from a power off condition easily. I would just power up the machine, turn off the Block Delete switch, start the program, and the machine automatically zeros out, selects the first tool, then moves to the safe start point, calls a G50 for the first tool, then starts cutting. After the first part, I would turn off Block Delete and the machine starts each part cycle from the tool change position rather than homing out each time.

G50 does not move the X or Z servos. All it does is say: "this is your current position". The T-command to select a tool and activate an offset DOES move the X and Z servos, so just changing tools with a T-command like "T0202" indexes the turrret and also MOVES the X and Z axes by the amount of the tool offset "02". That's why I like to use G50 for each tool, and not be faced with large unexpected offset moves when I change tools.

Remember that when you're changing to tool #1, use "T0101" to pick up the offset 01. When you're finished with that tool move it back to the safe tool change position and cancel the offset with "T0100". Then, give it a G50X---Z--- to set the position of tool #2, then change tools and pick up the new offset with a "T0202". Also remember to cancel out the last tool offset when your program is finished, before the M30. Some Fanuc 5s don't cancel the offsets with M30 or M02 (I believe that's a parameter setting), so you should always do it in the program.
Reply With Quote

  #4   Ban this user!
Old 04-03-2007, 12:27 PM
 
Join Date: Mar 2007
Location: USA
Posts: 207
John3 is on a distinguished road

Originally Posted by jamesweed View Post
Me too sometimes!

Sorry but that just seems funny??? I don't have a answer for you, but you have came to the right place for input. Just not from me...look below this post for help.
-Jim
I just checked again, I'm not completely crazy......


If I enter 99999 and press [INPUT] the X offset says 099999

But... If I enter 123456 and press [INPUT] the X offset says 023456 !!! anything put in the 10 inches digit is zeroed out when the [INPUT] key is pressed.

What a PITA.

John
Reply With Quote

  #5   Ban this user!
Old 04-03-2007, 12:50 PM
jamesweed's Avatar  
Join Date: Jan 2007
Location: USA
Posts: 82
jamesweed is on a distinguished road

Since I've already made one dumb post today, I'll go for two...

Is it a decimal problem?

99999.000 and press [INPUT] the X offset says ?

123456.000 and press [INPUT] the X offset says ?

I know... quit posting jamesweed
Reply With Quote

Sponsored Links
  #6   Ban this user!
Old 04-03-2007, 02:33 PM
 
Join Date: Mar 2007
Location: USA
Posts: 207
John3 is on a distinguished road

Jim,

I guess you've never programmed a 5T....? The b*tch is old, it doesn't have a decimal point key, use or display them.

It was from a time when it was considered crazy to 'waste' and entire byte of data on something so cosmetic as decimal points.

One enters 15.375 as 153750, that's how its displayed on the readout as well. Everyone just has to know there is a decimal point between the 4th and 5th digit from the right.

With all the leading zero's shown too (extra logic to blank them) this is a real user friendly interface.

John
Reply With Quote

  #7   Ban this user!
Old 04-03-2007, 04:29 PM
jamesweed's Avatar  
Join Date: Jan 2007
Location: USA
Posts: 82
jamesweed is on a distinguished road

Yhea! 2 for 2!
Boy John that is one user friendly control you got there. And I thought my Allen-Bradley 9 Series were showing their age.
-Jim
Reply With Quote

  #8   Ban this user!
Old 04-03-2007, 11:16 PM
 
Join Date: Sep 2005
Location: USA
Age: 60
Posts: 755
Dan Fritz is on a distinguished road

We sell a lot of BTR interfaces for the 5T and 5M (also the older 2000C and 3000C). You're right that those old controls have limited memory, and can not use decimals.

The BTR hookup lets you connect a PCs parallel printer port directly to the Fanuc's tape reader input. The control thinks it's reading a paper tape, but it's really getting data from the PC. Our software then lets you edit a G-code file on the PC WITH decimals, and we format the number automatically when it's sent to the CNC. The Fanuc still gets data without decimals, but your program can be compatible with newer Fanuc models that use decimals. You can also call files like subroutines and do a lot of fancy G-code editing on the PC. There's no need to use the Fanuc memory anymore, because you'll always be running from the PC in TAPE mode.

It's worth considering if you have a 5T or 5M and you intend to keep the machine for a while. It also adds the ability to save your files on a network, connect it to a wireless network, edit files while you're cutting metal, archive your files, etc. etc.
Reply With Quote

  #9   Ban this user!
Old 04-04-2007, 12:11 AM
 
Join Date: Mar 2007
Location: USA
Posts: 207
John3 is on a distinguished road

Dan,

Tell me more about your Parallel port BTR. NOW!!!!

Many thanks,

John
Reply With Quote

  #10   Ban this user!
Old 04-04-2007, 12:18 AM
 
Join Date: Mar 2007
Location: USA
Posts: 207
John3 is on a distinguished road

Dan,

As per your post earlier:

"You really need to use G50 to set a coordinate system on your 5T lathe. There were two schools of thought on G50. One was to use G50 once at the beginning of the program to set the X-Z zero for the first tool. Then, you would use tool offsets to compensate for the differences in the tool lengths. The same offsets are used for wear compensation........"

Is there a command to cancel or remove the G50 setting so I can be sure of being back to machine coordinates?

Your suggestion to put a tool offset cancel after using a tool such as T0100, doesn't this cause wasted motion of what ever the offsets are? If I'm done using a tool, why would I want to move to remove its offsets, I think I'd rather just move to the offsets for the next new tool?

John
Reply With Quote

Sponsored Links
  #11   Ban this user!
Old 04-04-2007, 05:41 AM
 
Join Date: Sep 2005
Location: USA
Age: 60
Posts: 755
Dan Fritz is on a distinguished road

John3:

The Fanuc BTR (Behind the Tape Reader) connection is something we've offered since 1984 or so. Currently, we sell two products called "PC-DNC Editor" (our basic G-code editor), and the "MultiPort PC-DNC Editor" (the BTR version). The two programs share the same editing features, but the MultiPort version has more DNC functions. You can download a free demo copy of the basic PC-DNC Editor from our website at www.sub-soft.com if you'd like to play with it. The BTR version can be purchased by phone and we'll ship it to you along with the cable.

The BTR function requires a special cable that we make here in our shop. It has a 25-pin male connector on the PC side, and a 50-pin ribbon connector on the CNC side. The cable is about 15 feet long. To connect it, you put a Windows 95/98/NT/2000 or XP based computer near the CNC cabinet and connect the cable to your PC's parallel printer (LPT1) port. The other end of the cable goes inside the CNC to connect to the Fanuc 5Ts "A" board. You unplug the ribbon cable that goes to the tape reader and plug our cable in its place. That's all there is to it. The basic PC-DNC Editor handles serial (RS232) communications, but the MultiPort version handles serial along with parallel BTR, RS422, and FTP data server functions as well. The software is network compatible, so you can connect that PC to your shop network via Ethernet or wireless Ethernet.

We sell the MultiPort Editor as a kit (cable and software) and it costs $1195. The basic PC-DNC Editor is $595. We also offer significant discounts for multiple copy purchases, so you only pay list price for the first copy you buy.

The same products are sold by our West coast distributor, Refresh Your Memory, Inc. (www.rym.com). RYM can be found at all the major machine tool shows (SME and IMTS), and I'm usually in the booth with them, writing more code.

On the PC-DNC Editor, you just open a G-code program, click the "BTR/Send file" menu, and a separate little "DNC box" appears on the screen with your program in it. You then put the Fanuc into TAPE mode and press CYCLE START. As the machine runs, the cursur on the PC moves to show you what block is being fed into the Fanuc's 1-block buffer. If you stop the machine, you can scan or search to any start point in the file and resume the cycle from there. There is a function to automatically format the numbers (mentioned earlier) and a "CALL" function that lets you call files like subroutines. It's similar to the Fanuc "M98Pxxxx" statement, only you say "CALL (file name)" in your program. You can nest subroutines 7 layers deep.

The same MultiPort Editor BTR connection works with Yasnac 2000B and 2000G control also. It just requires a different cable. The Fanuc models that can use the BTR connection are: 200C, 2000C, 3000C, 5T, 5M, 6T, 6M, 7M, 9M, 11T and 11M. Even older models like the 20C and 200A/B controls can use the BTR function, but they need a REALLY special cable.

On your tool offset question, I suppose there's no reason why you HAVE TO cancel the offset each time, but if you use a G50 for each tool, these wasted motions would be very small anyway. I'm pretty sure that the old offset would be cancelled automatically whenever you select the next tool's offset. I have seen, however, some situations where offsets get added together by mistake, so I always just cancelled mine when I was done with the tool out of habit. Another reason is that I would sometimes want to repeat a single tool operation in the program. If I was certain that the old tool offset was cancelled, I could start from the middle of the program and not worry that an old offset is still effective.

If you decide to use just one G50 command at the start of your program, then some of your tool offsets will be quite large, so the wasted motion issue becomes more important. In that case, just give it a new T-code with a new offset and it should move the difference between the two offsets. If you then decide to manually index the tool and run a single tool operation, be sure to RESET the control so no unexpected offsets are in there.
Reply With Quote

  #12   Ban this user!
Old 04-06-2007, 06:44 AM
 
Join Date: Mar 2007
Location: USA
Posts: 207
John3 is on a distinguished road

Originally Posted by Dan Fritz View Post
You really need to use G50 to set a coordinate system on your 5T lathe. There were two schools of thought on G50. One was to use G50 once at the beginning of the program to set the X-Z zero for the first tool. Then, you would use tool offsets to compensate for the differences in the tool lengths. The same offsets are used for wear compensation.

Another method is to use a separate G50 statement for each tool. Your G50 statement sets a new zero point for each tool, so that (theoretically) moving each tool to X0Z0 would take all the tools to the exact same point. Then, the tool offsets are used for wear compensation only, and their values would be small.
I've done all my programming to date (on other machines) never before using the G50 command. I just set all tools to workpiece zero in the offset page(s) at setup time. NOT WHILE I'M WRITING THE PROGRAM!

I don't like the idea of using the G50 for "Registering" tool lengths and offsets in programs. That seems to require having the machine setup before the program is written. I much rather prefer writing the programs and then doing the setups. Even my old (1979) Hurco KM-1 allows me to do that.

Here's my idea on how to have it my way with this old beast:

I'll treat the X and Z axii different. For Z axes I'll use the machine's [ORIGIN] button to set the first tool Z length to zero where ever I touch it off. Then I'll use the 10 inches of Z offset available for each tool, to zero Z for each tool.

I can't do this with X because with only 10" of diameter offset, I can't compensate for the huge X travel this machine has and needs to use both its front and rear turrets.

For X, I'll use G50 with a single value to "move" to the front turret position (+19.0000") and the negative of that (-19.0000) for the rear turret. That way I can write all programs before I set them up and have the operator use the offsets to setup and fine tune the machine like we do all of our others.

My questions are:
1. Will this work?
2. Am I crazy for doing it this way?
3. Can I use G50 for only the X axis and never use it for Z?
4. Is there a better way to do this, short of deep-sixing the 5T?

As always TIA,

John
Reply With Quote

Reply




Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
how do you set G54 thru G59 work offsets? Barney Fanuc 10 01-07-2007 03:02 PM
G54 offsets questions turmite G-Code Programing 1 08-10-2006 07:00 PM
Canceling G54 offsets.... howling60 CamSoft Products 6 12-15-2005 06:11 AM
What's the deal with so many offsets ? mannster Haas Mills 22 09-28-2005 03:06 PM
Down/up loading offsets JPann Machine Problems, Solutions , Wireless DNC, serial port 0 03-21-2004 08:17 PM




All times are GMT -5. The time now is 01:39 PM.





Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Content Relevant URLs by vBSEO
Template-Modifications by TMS

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361