Aitrtech
Published

Tracking Time with Custom Macro

System variables allow for time-based applications like tool-life monitoring, preventive maintenance, sampling inspections and machine warm-up.

Share

Leaders-In background

Custom Macro gives you the ability to monitor time from within a CNC program. System variables provide access to two timers (milliseconds and hours), a calendar (year, month, day) and a clock (hours, minutes, seconds):
 • #3001 millisecond timer
 • #3002 hour timer
 • #3011 date (yyyymmdd)
 • #3012 time (hhmmss)

The millisecond timer (#3001) will run for about 600 hours before it automatically resets. The hour timer (#3002) will run for about 9,500 hours before resetting. They are always running, but can be reset at any time. Consider these commands that use the milliseconds timer to cause a 10-second dwell:
#3001 = 0 (Reset millisecond timer)
N1 IF [#3001 GT 10000] GOTO 5
GOTO 1
N5 …

The date and clock functions work differently. If the present date and time is February 3, 2018, at 3:39:02 p.m., the current date and time system variable values will display as follows:
#3011: 20180203
#3012: 153902

The clock uses a 24-hour format: 15:39 is, of course, 3:39 p.m. Since these system variables run in sync with the CNC’s system clock, it is possible to track events over longer periods of time. 

These time-related system variables also allow unique time-based applications. Think of situations in which events must be timed:
 • How long a cutting tool is machining (part of a tool-life monitoring system).
 • Preventive maintenance tasks, like filter changes.
 • Time-based sampling inspections.
 • Machine warm-up after a period of non-use.

The following time-based spindle warm-up example was suggested by Ryan McKibbin of the Maryland Institute College of Art. A machine spindle’s thermal expansion during warm-up may cause size deviations that make it impossible to run acceptable workpieces until it warms up. The warm-up routine must be run whenever the spindle cools, such as after off-shifts and whenever the machine is idle for more than an hour.

As Mr. McKibbin’s program shows, tracking when the warm-up program is required can be programmed by including a few commands at the beginning and end of all programs:
%
O0001
IF [[[#509 + 010000] GT #3012] AND [#508 EQ #3011]] GOTO 5
#3006 = 1 (Cold spindle – press cycle start)
M03 S12000
G04 P120000
M03 S18000
G04 P120000
M03 S23000
G04 P60000
M05
#3006 = 2 (Warm-up over – press cycle start)
(Machining program begins here)
N5 . . .
(At the end of the program:)
#508 = #3011
#509 = #3012
M30
%

Permanent common variables #508 and #509 keep track of the last date and time when the machine finished running a program. The IF statement tests the last completion time plus one hour against the current time and the last completion date against the current date. If more than an hour has elapsed, or if the date changes, the operator is instructed (by the #3006 stop with message command) to press the cycle start button to run the warm-up routine. The warm-up routine could, of course, be run automatically by eliminating the stop with a message command.

The warm-up routine starts the spindle at varying speeds, and the CNC will dwell appropriately until the spindle warms up. After the spindle warms up, the operator is instructed to press the cycle start button again to run the program. This could also be an automatic action.

Permanent common variables #508 and #509 are updated at the end of the program, so new time and date values will be considered the next time the program is run.

World According To
Acquire
SolidCAM Additive - Upgrade Your Manufacturing
Airtech
Koma Precision
World Machine Tool Survey
Paperless Parts
VERISURF
715 Series - 5-axis complete machining
Innovative Manufacturing for the Medical Industry
SolidCAM
QualiChem Metalworking Fluids

Related Content

5 Reasons Why You Should Know How to Write Custom Macros

Custom macros enhance what can be done in G-code programs, giving users the ability to code operations that were previously not possible.

Read More
CNC Tech Talks

A Higbee Thread Milling Custom Macro

Higbee threads provide a full thread form at the very start of the thread. The sharp edge is removed during the machining process.

Read More
CNC Tech Talks

6 Ways to Streamline the Setup Process

The primary goal of a setup reduction program must be to keep setup people working at the machine during the entire setup process.

Read More
Turning Machines

4 Commonly Misapplied CNC Features

Misapplication of these important CNC features will result in wasted time, wasted or duplicated effort and/or wasted material.

Read More

Read Next

Registration Now Open for the Precision Machining Technology Show (PMTS) 2025

The precision machining industry’s premier event returns to Cleveland, OH, April 1-3.   

Read More
Workforce Development

Building Out a Foundation for Student Machinists

Autodesk and Haas have teamed up to produce an introductory course for students that covers the basics of CAD, CAM and CNC while providing them with a portfolio part.

Read More

5 Rules of Thumb for Buying CNC Machine Tools

Use these tips to carefully plan your machine tool purchases and to avoid regretting your decision later.

Read More
Airtech International Inc.