Originally published at: https://edmproud.com/wire-edm-to-d-or-not-and-y/
Programming with offsets
The Use of D offsets was used to shorten and simplify the programing process. We needed a process to edit without rewriting the entire program to make minor changes, so let’s look at what was involved and Y the use of D offsets was needed. The first widely used system to deliver programs to the machine tool was paper tape. Slow and cumbersome, it required the programmer to use a manual programming stick (that is, a #2 pencil) and a notepad to describe the geometry and path in code, and then type that code using the teletype to produce a paper tape. The paper tape was then hand-carried to the machine tool, where it was fed through a tape reader.
Several short-lived mediums followed paper tape: cassette tapes, floppy disks, RS232, USB. The Ethernet cable now allows us to dump large files very quickly to multiple sources and in multiple platforms.
To get the most of today’s programming systems with offset registers, it is helpful to define how to view those “D values.” They can be used as a diametrical or radial offset in the case of changing the wire diameter, either after programing the job, or in the case of changing the wire diameter during the machining process, and to compensate for the deviation of the spark gap and power settings to decrease tolerance and repeatability.
Years ago, it was much easier to program print dimensions and then use the offset register to compensate for half the diameter of the wire and half the spark gap. However, small angles and small radii caused internal calculation issues with the control. When the ability of compensating the part drawing by posting the path as our output, we learned to use small compensation values to offset the difference in the machine technology versus the actual machine cutting kerf. That way, there was a lower chance of errors of compensation in the geometrical interference vectors.
This method is still popular with small-diameter wires, since it can be used to tweak the last .0001 inch or two from the machining process. Some controls have the ability to add a second register to this equation; this allows a small value to be put into a register that globally offsets that amount. That value is added to each one of the paths, in the case a program is repeated, and the compensation value is changed for first, second, third, or more skim passes. However, this just increases the chances of the control not being able to calculate a smaller piece of geometry with a larger value of compensation.
In today’s controls, they have more calculating power, which makes programming the path instead of the part acceptable. The machine operator needs to understand what each one of these programming practices brings to the table, and what it does for operators and programmers. As the need for smaller, tighter tolerances grows, our programming practices must be flexible.
Another need to adjust our offset value is the spark itself. When workpiece thickness changes, so does the cut speed and flushing conditions—which can influence the kerf. A simple example: as the speed of the cut increases in the same thickness of steel and same power settings, the curve decreases. By adjusting the first pass offset by a small amount to make the first pass the right size, there is no need to adjust the programmed path of the remaining passes to get the proper size and finish required for the part.
As you may have noticed, it’s possible that different methods may yield the same results. However, in the case of part geometry issues, it will require the use an alternative method to gain the results needed. Use your D wisely.