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! > MetalWorking Machines > Haas Mills


Haas Mills Discuss Haas machinery here!


This forum is sponsored by:

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Ban this user!
Old 05-18-2010, 12:27 AM
 
Join Date: Sep 2005
Location: US
Posts: 26
MMTechi is on a distinguished road
need better method for program exit routine

I post my programs using work coordinates G54 thru G59 from surfcam. After I run or setup a part the tool moves to a clearance location based on the work coordinate G111 called from a sub routine that is always in the control.

I set the work coordinate G111 when I 1st manually move the tool away from the part for clearance, and then capture it in the G111 offset page. It is an arbitrary and random spot which is what I want so that i don't have to write it in the main program.

This works fine until I do a program mid-start. The Haas control assumes it should use the last modal work coordinate G111 because i skipped over the beginning G54 part of the program.

How can I make the G111 a one time use and then return to using the original work coordinate without stating it again just before the M30? I want to have the original work coordinate stated 1 time at the beginning of the program.

I am not quite sure how a G53 works or if it can be used for what i want, I am looking for a way to just quickly "capture" the arbitrary clearance location and not edit the program once written.

If anybody has an idea or are currently doing something similar I would appreciate any suggestions.

Thanks
Bob Flores
MMTechi
MMTech@chartermi.net

sample program

%
O777
G54 G17 G90

N6
G90 G40 G80 M1
T6 D6 M6
/M8
G90 G0 X0. Y0.
G43 H6 G0 Z0.4
S752 F0.9
M3

G82 G98 X0. Y0. Z-0.77 Q0.125 R0.1 P0 F0.9
G80

N100
M98 P89995 (EXIT SUB PROG -CAPTURE G111 AT CONTROL)
M30
%

-this what the exit sub routine in the control does-

O89995
M9
M5
G111
G90 G40 G80 G0 X0. Y0. Z0.0
M99
Reply With Quote

  #2   Ban this user!
Old 05-18-2010, 04:25 AM
Pondo's Avatar  
Join Date: Apr 2010
Location: USA
Posts: 169
Pondo is on a distinguished road

You can put a line in the sub after the move to recall G54 if that's the normal offset used, but it would ned to be changed to reflect the WCS you are using:
O89995
M9
M5
G111
G90 G40 G80 G0 X0. Y0. Z0.0
G54 <---needs to be changed to match whatever WCS in the program
M99

Or edit the post to output the WCS after the sub callout. This way it would always be the WCS used:
N100
M98 P89995 (EXIT SUB PROG -CAPTURE G111 AT CONTROL)
G54 (or G55, G56, etc.)
M30
%
If you are just retracting the tool to clear it from the part, then you could just edit the post to put it right in the program instead of a sub.
When I have an indexer in the machine or a tall part or a long tool, I have a post that moves the tool to a "safe" location for a tool change. I use G125 for the location:
%
O690 ( RING FIX OP1 )
( T10 - 1/4 SPOT )
G17G40G80G90G0G54
N10
T10
G90G0G125X0Y0
G54
M6
( OPERATION 1; HOLES )
( TOOL 10 )
( 1/4 SPOT )
S6000M3
G90G0G54X-3.25Y1.6
G43Z2.H10M8
G73G98X-3.25Y1.6Z-.075R.1Q.012F21.
Y-.025
Y-1.65
Y-3.275
G0G80Z2.
M9
G91G28Z0.M19
G91G28Y0.
T10
G90G0G125X0Y0
G54
M6
M30
%
This is for a Haas vertical, what kind of machine are you programming for?
When you restart, do you use the restart function in the controller? It should pick up the active WCS. If it doesn't then there is something wrong.
I never used G53 for anything other than sending the machine to it's home position. The same as G91G28Z0 = G53Z0.
Reply With Quote

  #3   Ban this user!
Old 05-18-2010, 12:05 PM
 
Join Date: Sep 2005
Location: US
Posts: 26
MMTechi is on a distinguished road

Hi Pondo, Thanks for the reply.

I have a haas vertical mill. I do understand and have used your methods. I guess I am just being lazy but I want to try and avoid having the WPC stated more than once in the main program. I keep multiple setups and vises on the table and change the wpc often and sometimes save the offsets from a previous job and just edit for the next available wpc. I don"t always remember what WPC is available when posting out of surfcam. The closest method that works is when I post the program It prompts me for which wpc I want to use and it puts it at the top of the program and before the M30.

The kind of mid start I use makes the Haas midstart setting go thru a bunch of motions that I don't want or need ( I will output the wpc before the m30 before turning on the midstart on setting)

I like moving the spindle away to a random spot that clears the part, keeps coolant from dripping, and is easy to blow off part and just capture that location to the offset page.

I almost have it the way I like, was just looking for a non modal work coordinate command

Thanks for suggestions, any are always welcome

%
O777 (MOWER_SHAFTPULLEY_1.NCC 0:10:59)
G54 G17 M0

M99 P6 (T 6 - 0.3770 -0.7700)
M99 P11 (T 11 .5 DIA MILL AROUND THD 0.5000 -0.1450)

M99 P100 (END PROG POSITION)

N6
G90 G40 G80 M1
T6 D6 M6
/M8
G91 G41 G1 X-.02 F100.
G90 G0 X0. Y0.
G43 H6 G0 Z0.4
S752 F0.9
M3

G0 X0. Y0.
G0 Z0.4

G40
G82 G98 X0. Y0. Z-0.77 Q0.125 R0.1 P0 F0.9
G80
G0 Z0.4


N11
G90 G40 G80 M1
T1 D1 M6
(.5 DIA MILL AROUND THD)
/M8
G91 G41 G1 X-.02 F100.
G90 G0 X0.1425 Y0.
G43 H1 G0 Z0.4
S4000 F35.0
M3

G0 X0.1425 Y0.
G0 Z0.4

G0 Z0.1
G1 Z-0.145 F10.0
G3 X0.2425 I0.05 J0
I-0.2425 J0 F35.0
X0.1425 I-0.05 J0 F10.0
G0 Z0.4


G91 G40 G0 Y.05
G90


N100
M98 P89995 (EXIT SUB PROG -CAPTURE G111 AT CONTROL)
T1 M6 G54
M30
%
Reply With Quote

  #4   Ban this user!
Old 05-19-2010, 01:15 AM
 
Join Date: Jul 2005
Location: Canada
Posts: 11,565
Geof will become famous soon enough

I have not read everything in detail in your posts but it sounds like you do not have Program Restart turned on in your machine. When this is turned on the machine scans the program ahead of the point you are restarting at and makes sure all the offsets are correctly set. This means that you cannot get an offset carried over from the previous cycle.

Alternatively instead of using your G111 location you may be able to use G53 to park your machine using machine coordinates. G53 is a non-modal command that tells the machine to move to the specified location in machine coordinates; G53 X0. Y0. Z0. moves it home, G53 X-15. Y-8.0 Z3.0 moves the the center of the table and lifts the spindle above the tool change position on a VF2
__________________
An open mind is a virtue...so long as all the common sense has not leaked out.
Reply With Quote

  #5   Ban this user!
Old 05-19-2010, 03:29 AM
Pondo's Avatar  
Join Date: Apr 2010
Location: USA
Posts: 169
Pondo is on a distinguished road

I do the same thing. I run a couple repeat jobs and they have dedicated WPC's.
All of the posts I use output the active WPC at the start of each tool, so when I restart I just search down to the tool # and hit cycle start. I don't use the restart in the controller often either for the same reason you said. Plus I have a bunch of program segments in MDI for moving to the tool touch off point, WPC XY0, setting the spindle speed for the edge finder, shuttling the pallets, etc. If restart is active it reads the M30's between them and won't do anything.
If I have to change the WPC, I use the F1-search-find and replace text. That changes all of them in the program.
Do you use the sub before each tool or just at the end? If it's just at the end, then have the WPC recalled at the end of the program, before the M30. You mention it posts out like that, do you edit it out?
I have the mills go home in Z and Y at the end, and then I add a line to move the table to an X position for the same reasons you do as well. I just handwheel it to where I want it and put that location in at the end:

G91G28Z0.
G91G28Y0.
G90G0X12.
M30
%
Since 99% of the time I want the table towards me as far as possible, all I need is the X to be moved.
Reply With Quote

Sponsored Links
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
Narrow minded exit for the Cadillac Fastrip General Business Practices and Pricing 6 04-27-2010 09:17 PM
Need Help!- program exit sub routine MMTechi G-Code Programing 3 06-11-2009 04:51 PM
G70 exit commands with a -u. rapidtraverse Haas Lathes 35 01-13-2008 09:34 PM
Entry exit arc leaving bump SIG Fanuc 24 12-21-2007 05:57 AM
How to exit large assembly mode? interflexo Solidworks 3 09-25-2006 03:21 AM




All times are GMT -5. The time now is 03:34 AM.





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