New to VMC? Learn How to Recover After Hitting Reset Mid‑Cut or a Power Cut and How to Stop the Machine Safely







INTRODUCTION:

One of the scariest moments for a new VMC operator is when you accidentally hit RESET while the machine is cutting, or when the power suddenly drops in the middle of a pass. Don't panic, these are recoverable situations, but you need a clear process. If you hit RESET mid‑cut, the machine stops immediately: the spindle may still be spinning, but all axis motion halts and the program resets. Your first move is to press FEED HOLD again just to be safe, then pull the tool up in Z using HANDLE mode (or JOG) to clear the part. Next, write down the current absolute coordinates of the tool tip from the position screen – these tell you where you stopped. You can then restart the program from that approximate point using MDI to reposition, or by editing the program to skip already‑cut areas. Never simply press CYCLE START again that will restart from the beginning and likely crash. For a power cut, the machine will go dark. When power returns, you must reference/home all axes first because the control has lost position memory. Then, using the coordinates you hopefully wrote down before the outage, manually move the tool safely away, check if the part or tool is damaged, and decide whether to restart the program from a safe block. Equally important is knowing how to stop the machine safely in normal conditions: never just flip the main breaker. Instead, first send the spindle to a safe Z height (like tool change position), then press RESET to cancel all active commands, stop the spindle with M05 (or MDI command), turn off coolant, switch to JOG or HANDLE, move the table to a convenient loading position, and only then power down using the control's power‑off button or the main disconnect. The golden rule: RESET is not an emergency stop; it's a controlled pause. For true emergencies, use the red E‑STOP, but know that after E‑Stop, you must re‑reference the machine as if after a power cut. Practice these recovery steps on an empty table before you need them for real.


First we need to know how machine memory work in different situation?


Power Blackout / Machine Power OFF :

Volatile Memory: COMPLETELY ERASED

The machine loses its active G-codes, active feedrates (F), spindle speeds (S), and look-ahead math.
The servo motor encoders lose their relative pulse count. When you turn the machine back on, the position screen displays "fake" numbers. You must home all axes (G28) to recalibrate the physical machine zero.

Non-Volatile Memory: NOT ERASED

Your stored G-code programs, G54--G59 work offsets, and tool geometry tables remain perfectly safe.


Pressing the RESET Button (or reading M30/M02)


Volatile Memory: PARTIALLY ERASED / RESET TO DEFAULTS:

The active running program cursor is pulled away from the current line and thrown back to the very top line (O number). The Distance-To-Go counter is wiped instantly to 0.000. The Look-Ahead Buffer (the upcoming lines the machine calculated) is thrown in the trash. Active S and F registers are wiped to zero.

Active movement codes (G01, G02) are wiped and restored to the machine's factory startup default (usually G00 rapid).

The machine does not go blind. It knows exactly where it is standing relative to Machine Home and G54 because the scales never lost power. You do not need to home the machine.

Non-Volatile Memory: NOT ERASED

All programs, offsets, and parameters stay untouched.


3. Changing Modes:


Volatile Memory: NOT ERASED

Turning the mode selection dial does not wipe out anything. It simply pauses the active execution registry.
If you were in EDIT mode and typed half a line of code, it stays in the buffer.
If you were in AUTO and hit Feed Hold, the active modal $G$-codes ($G54, G01$), Feedrate ($F$), and Spindle Speed ($S$) remain locked in their RAM slots.

Non-Volatile Memory: NOT ERASED

All master registry data remains completely untouched.

Which situations erase the machine memory? and how to retrive those information?

The machine thinks through modal registers, let's categorize exactly what causes the machine to erase its active memory and how you can use EDIT mode to perfectly rebuild that memory so the machine can finish a half-completed job safely.


The Situations That Erase Active Machine Memory:

There are only three main events on a shop floor that will wipe out the machine's volatile modal memory (S, F, active tool compensation, active G-codes):

Pressing the RESET Button:
Instantly clears the look-ahead buffer and wipes active modal states back to factory defaults.

A Power Blackout / Switching the Machine OFF:
Wipes out all volatile RAM completely.

Reading an M02 or M30 Code:
These are the "End of Program" commands. When the controller reads them, it automatically self-resets, wiping out the active running memory to prepare for the next part.

Switching between HANDLE, JOG, EDIT, or MDI modes never erases this memory.



2. How to Tell the Machine About Previous Parameters:

When the memory is wiped mid-job, you must act as the machine's external brain. You have to feed it a "Startup Line" that manually rebuilds its memory before it touches the metal block.

To do this safely, you must always give the machine four critical pieces of information in a single line:

The Work Offset: Where is the part? (G54)
The Tool Length: Which tool height is active? (G43 H..)
The Spindle Speed: How fast should it spin? (S.. M03)
The Safe Target Coordinates: Where should it safely park in the air before cutting? (X.. Y.. Z..)


3. Rebuilding Memory in EDIT Mode:

Imagine you are running a PowerMill toolpath using Tool 2 (a Face Mill). The power cuts out or someone hits RESET right in the middle of the toolpath. You have safely cleared the tool away, homed the axes, and manually found the block number where it stopped. Let's say the stop block was line N500. You cannot just cursor to N500 and hit start, because the machine doesn't know the spindle speed, the work offset, or the tool length anymore.

Here is exactly how you fix it in EDIT mode:


Write a Safe Memory-Rebuilding Block:

Go to the very top of your program, or switch to MDI mode, and prepare a custom command line to load into the machine's active registers.

You will type a line that looks like this:

G90 G54 G00 T02 M06 ; (Manually ensure Tool 2 is loaded)
G43 H02 X0 Y0 Z50.0 S1200 M03 ; (The Master Memory Rebuilding Line)

When you execute this line in Single Block, look at what happens inside the machine's memory slots:

G90 G54 tells the active register: Wake up, we are using Absolute tracking on the G54 coordinate system.

S1200 M03 tells the spindle register: Spin clockwise at 1200 RPM right now.

G43 H02 Z50.0 tells the Z-axis register: Look at Tool 2's geometry registry, apply that length, and stop safely 50mm above the part.



Aligning the Cursor to Your Stop Block

Turn Single Block ON and drop Rapid Override to 0%. Run that custom startup line. The spindle is now spinning, the tool height is active, and the tool is hovering safely in mid-air.

Now, switch the machine to EDIT mode. Use your keypad arrow keys to scroll down past your startup lines, straight to your target block N500, where the machine originally stopped. Put your yellow flashing cursor right on that line.

Switch the mode dial to AUTO (MEM). Because your cursor is sitting on N500, and you just manually rebuilt the active modal registers (G54, H02, S1200), the machine's brain is no longer blind!
Press Cycle Start. The machine will read N500, look at its active registers, see that everything matches perfectly, and smoothly step right back into the cut to finish your part without a single jerk or crash.

You can park your tool anywhere you want as long as it is in clear, safe air! It does not have to be exactly above the position where it stopped. Once you have safely executed your "Memory Rebuilding Line" in the air, the machine’s brain recalculates its position. The moment you switch back to AUTO at your stop block (N500) and hit Cycle Start, the machine will automatically calculate the path from your current parking spot straight to the N500 coordinate target.





How to turn on machine after accidentally hits the RESET button mid-cut or unexpected power cut?

One of the most stressful situations an operator can face on the shop floor is when the power cuts out unexpectedly or someone accidentally hits the RESET button mid-cut, the strategy to recover the job safely follows the exact same logical steps. The biggest trap an operator can fall into is blindly pressing Cycle Start again. Doing that will cause an immediate, catastrophic tool crash. Here is the exact professional blueprint to safely recover a half-machined workpiece.

Before you even think about looking at the code, you must get the cutting tool safely away from the metal block.

Switch the machine to HANDLE (MPG) mode. Select the Z-axis and slowly wheel the tool straight up (+Z) until it is completely clear of the workpiece and any vise jaws.

Once Z is high in the air, jog X and Y to move the tool completely away from the part so you can inspect the damage.

Look closely at the inserts on your face mill or the flutes on your end mill. When power drops or RESET is hit mid-cut, the tool stops spinning while still engaged in the metal. This sudden shock frequently cracks carbide inserts or chips tool tips. If it looks damaged, change the inserts or the tool immediately.

Check if the tool gouged the part when it stopped. If you were running a roughing cycle, a small mark doesn't matter because the finishing cycle will clean it up.

You have two ways to resume machining, depending on how far along the toolpath was.

1. Rerun the Tool (The Safest & Easiest Way):

If the toolpath was only a few minutes into the cut, or if you want to be 100% safe, do not try to start from the exact middle of a line. Instead, restart the specific tool from its very beginning.

Press RESET to send the program back to the top.

In EDIT mode, use the arrow keys to find the start of the specific tool sequence you were running like look for the Tool Change block, like T02 M06 or the safe approach block G54 G00 X... Y....

Switch to AUTO mode. Turn Single Block (SBK) ON and turn your Rapid Override to 0%.

Press Cycle Start. The machine will safely reload the tool, start the spindle, and position itself in the air above the part.

Once it plunges and begins cutting "air" over the section it already machined, turn Single Block OFF, crank the rapid up slightly, and let it cut air until it naturally catches up to the un-machined half of the block.

2. Block Search / Sequence Restart:

If you are running a massive, 2-hour PowerMill 3D finishing program and the power cuts out at the 1-hour mark, you don't want to waste an hour cutting air. You need to start from the middle of the program.

Look at your paper sheet or memory to find the Block Number (N-code) or line of code where the machine stopped.

Switch to EDIT mode, type that block number (e.g., N5420), and press the SRH-↓ (Sequence Search) softkey. The cursor will jump directly to that line.

You cannot just hit start here because the machine has forgotten the background commands. You must manually read the code above that line to see what the active Spindle Speed (S), Feedrate (F), and Coolant (M08) were.

Switch to MDI mode and manually execute those background states so they are active in the machine's brain:

M03 S1200 M08 ; (Start spindle and coolant manually)
G43 H02 Z50.0 ; (Activate your tool length offset safely in the air)

Switch back to MEM/AUTO mode where your cursor is waiting at line N5420. Turn Single Block ON, drop Rapid to 0%, and look at your Distance-To-Go screen.

Press Cycle Start. Watch the tool slowly move down. Once it safely enters the cut zone at the right height, turn Single Block off.





How to find exact line or block number where the machine stopped during a power blackout or a sudden RESET?


Finding the exact line or block number where the machine stopped during a power blackout or a sudden RESET requires a bit of detective work, because the moment the machine loses power or resets, the active screen clears out. However, the Fanuc controller has built-in features that save this information.


1. The Block Screen: ( If pressed RESET button not POWERCUT)

If someone pressed the RESET button but the machine did not lose electrical power, the controller's screen is still fully operational. Even though the yellow cursor instantly jumps back to the top of the program (O0112), the machine saves the last executed position.

Press the PROG hard key on your panel. Look at the softkeys under the screen and press [BLOCK] or [MDI/NEXT].

This screen splits into two sections: Current Block and Next Block. Look at the Current Block window. It will display the exact line of
G-code the machine was processing the very millisecond the RESET button was hit. Write down the N-number or the exact coordinates shown on that specific line.



2. The "Distance-To-Go" Coordinate Check: (Works for POWERCUT)

If the shop experienced a total power failure, the screen goes completely black, and Method 1 won't work because the volatile RAM clears when you restart the main breaker. In this scenario, you use the physical position of the tool to find your location in the code.

Turn the machine back on, home all axes, and reload your program in EDIT mode. Switch to HANDLE mode and carefully bring your tool back down until it is hovering right next to the "stop scar" on your half-finished block where the tool stopped cutting.

Press the POS hard key and look at your ABSOLUTE coordinate screen. Write down the exact X and Y values where the tool is currently standing (e.g., X-42.550, Y12.300).

Go back to your PROG screen in EDIT mode. Use the page-down key to scroll through your code, looking at the X and Y target values on your lines. Find the line in your program that matches or is closest to the coordinates you wrote down from the physical part. That is your stop block.


How both situation above affect position?

If someone presses RESET, the machine never loses power, so its encoders never go blind. You can read the position screen instantly without homing.

If the LIGHTS GO OFF, the machine goes blind. The numbers on the screen at reboot are wrong. You must Home first to restore the machine’s vision, and then jog back to your visual stop landmark to capture the true, real coordinates.


3. Checking the PowerMill NC Program Text:

If you are running a heavy 3D roughing or finishing toolpath generated by PowerMill, your program will have thousands of lines of code. Finding a single coordinate among 50,000 lines by scrolling on the machine screen can take hours. To speed this up, use the Search function on the controller:

Look at your half-finished metal block and estimate how far along the cut was. For example, if the tool was roughing a pocket from left to right and stopped exactly in the middle of the pocket, you know the approximate geometric location.

Go to the machine controller, open the program in EDIT mode, type F followed by your active cutting feedrate (e.g., F1500), and press the SRH-↓ (Search Down) softkey.

This jumps you directly into the cutting sections of the program, bypassing the tool changes and setups, allowing you to quickly cross-reference your physical $X/Y$ stop positions with the text file.



Why you cannot trust the position screen immediately after a power blackout, and why the Homing (Reference Return) step is mandatory?

The motors that move your VMC axes are called Servo Motors. To know exactly where they are on the machine bed, they rely on a device attached to the back of the motor called an Encoder. When the main factory power cuts out, the electrical current holding the encoder's memory disappears. The machine's brain instantly goes completely "blind." When you flip the main breaker back on and start the machine, the controller screen will boot up and display numbers (like X0.00, Y0.00, Z0.00), but these numbers are completely fake. The machine is just guessing based on where it woke up. It has entirely forgotten where its true physical Machine Home and Work Offsets (G54) are.

Because the machine wakes up blind after a power failure, you cannot capture the real coordinates until you recalibrate its brain.
When you switch to REF / HOME mode and send the axes to their home switches:

The machine moves until it physical hits its precision grid switches or reads its absolute scale lines.

The controller resets its master internal calculator back to its absolute true factory zero point ($X0, Y0, Z0$).

Once the machine knows its true home, it instantly recalculates exactly where your G54 Work Offset is sitting on the table.



How to you bring it back to the spot?

Before you turn the machine on or home it, look inside the machine enclosure with a flashlight. Look at the half-cut block. Find a clear physical landmark right next to where the tool stopped

Now, perform your mandatory axis homing sequence. The machine is now fully calibrated and accurate.

Switch to HANDLE mode, look inside the machine, and manually steer the tool tip back to that exact physical landmark you noted in Step 1.

Now that the machine's brain is calibrated and the tool is back at the stop scar, press the POS key. The numbers on the screen are now 100% accurate true coordinates. You can safely use these numbers to find your exact stopping block in your PowerMill program!





How to stop machine during machining?

If your active program does not have an M01 (Optional Stop) coded into it, then how to freeze the machine exactly where you want without crashing the tool or losing your program position.


1. Single Block" (SBK) Method:

If you know the exact line of code or tool path section where you want to stop, like after right after a roughing tool finishes but before the finishing tool starts, you can use the Single Block switch.

Keep your eyes on the running program screen. Watch the cursor move through the lines of code. A few lines before the machine reaches your desired stopping point, turn the Single Block (SBK) switch ON.

Once Single Block is active, the machine will execute the current line of movement and then feed-hold itself automatically at the end of that block. It will stay completely still, waiting for you.

While it is paused, you can check your parts, clear chips, or inspect anything safely. When you are ready to continue, turn Single Block OFF and press Cycle Start to let the program resume at full speed.



2. Feedrate Override at 0%:

If you are watching the cutter work and suddenly see something unexpected like a large chip wrap or coolant misdirection and want to pause instantly without messing up the code, use your overrides.

Turn the Feedrate Override dial all the way down to 0%. Because the machine multiplies its programmed feedrate by your override percentage (500 mm/min * 0% = 0), the physical axes will stop moving instantly.

Unlike hitting Feed Hold, turning the override to 0% is incredibly smooth and doesn't cause any abrupt mechanical jerking on the ball screws. When the obstruction is clear, slowly click the dial back up to 100% to resume the cut smoothly.

3. Feed Hold + Manual Handle:

If you need to stop the machine, move the tool away to inspect the part, and then resume cutting exactly where you left off, follow this specific sequence:

Press the red FEED HOLD button. The axes will stop moving, but the spindle will keep spinning safely in place.

Switch your mode dial to HANDLE / JOG mode. Switching modes won't erase your active program text!.

Press the SPINDLE STOP button to turn off the cutter rotation, then handwheel your Z-axis straight up out of the way so you can inspect your block.

Clean or check the workpiece. Use the handwheel to move the tool back to roughly where it was before you moved it, just keep it safely in the air a few millimeters above the cut zone.

Switch back to AUTO / MEM mode. Turn the Spindle CW (M03) back on manually, or let the machine activate it when you resume.

Turn Rapid/Feed overrides down to 0%. Press Cycle Start. The machine’s look-ahead memory will instantly grab its previous path, move the tool smoothly back to the exact coordinate where you pressed Feed Hold, and wait. Turn your overrides up to let it continue cutting!



When you press FEED HOLD and switch to HANDLE mode to move the tool away, you have not pressed the RESET button. Because the RESET button was never touched, the machine’s brain remains in a state called Interrupted Execution.

Here is what the controller's memory registers look like while you are checking the part;
The Program Pointer stays frozen exactly on the line of code it was reading when you pressed Feed Hold. It does not move. The Distance-To-Go register remembers exactly how many millimeters were left in that specific movement block before you interrupted it.
The active modal memory registers remain completely untouched. The parameters in modal memory G54, G01 & M03 all remain active in the background RAM. Because these slots still hold those exact numbers, the moment you flip back to AUTO and press Cycle Start, the machine looks at the Spindle Register, sees 1200, and can instantly restart the motor at the correct RPM. It looks at the Feedrate Register, sees 500, and knows exactly how fast to move the table.

Now, let's look at what happens if you press that red RESET button while the tool is parked away from the cut. The millisecond your finger hits RESET, a total wipe of the temporary registers occurs:
The Program Pointer is violently yanked away from the cutting line and forced back to the very top line of the program (O0112). The Distance-To-Go register is instantly wiped to zero. The machine completely forgets where it was supposed to go. The active G54, spindle speeds, and feedrates are cleared from the live buffer.










Post a Comment

0 Comments