Hello, I propose a Sink EDM emulator comp. ( Sink EFM is used to make molds,
Wire EDM is used to make dies ) I plan it can evolve into a real Sink EDM controller. The comp controls EDM motion and spark generator. It is a python hal component that moves along a pre-programmed path (parametric). It also sequencers though power settings, allowing a single tool to 'rough', 'pre-finish' and 'finish'. Forward motion uses a predetermined list of positions. It moves using EXTERNAL-OFFSETS. The forward path is entirely pre-calculated. The paths is a list of tuples with XYZ values measured from starting point ( SPO = [(0,0,0)...)] ) Motion is simply moving to an adjacent tuple's offsets. The process is driven by a fake sensed volatge. The emulation has no real Pulse Generator or voltage monitor. The emulation is driven by a fake process variable (PV) which is pv = random.uniform(max,min). Later, this fake PV can become real hardware that measures the voltage between tool; and wok, and a hardware Window comparator the output FWD HOD BWD. How PV causes motion: If PV evaluates to FWD, the path list index is incremented, and the tuple offsets are given to axis.L.eoffset-counts If PV is HOLD, no new motion occurs. If PV is BWD, a DETOUR is created. this list is a path away from stock, towards a position where bad discharges are unlikely. DETOURS: Detours begin and end at the break point (BP) ( where BWD occurred) The detour list describes motion away from stock, usually ending at SPO. When the DETOUR ends successfully: If the PV controlled motion returns the tool to the BP , ( when FWDs move the tool back to BP) then the orbital path is resumed. A succesful detour simply returns to the main path. On simple plunge cuts, this is trivial, the detour is the path. If the detour fails, the power is reemoved, the tool returns to SPO, and the NGC program is aborted. PECK EDM: The addition of DETOURS mafe PECK eddm possible. The CutTime and JumpDistance are programmable. The tool always begins at [(0,0,0), ... and always returns there. After an EDM cut the sparking generator is disabled. LinuxCNC poses, SEDM cuts: LinuxCNC will 'pose' the tool using Gcode. Mcodes supply needed parameters to the comp. (Later ,Mcodes can be replaced by LatheMacro style GUIs) EDM CUT Success or Fail: A sink EDM cut can fail if: the process returns to SPO. or too many contiguous BWDs occur. ( this is a parameter ) If the cut was successful, the NGC program takes control of tool position, and continues ( to next EDM cut or to program end) If the cut fails, the tool is returned to the SPO, and the NGC program is aborted. The machine is ready for use. If the cut succeeds, the tool is returned to SPO, and the NGC program is resumed. Many SEDM cuts can be in one NGC program. The above is the intent, it already runs, I have a brand new RIP iwth mnaster from 08.03.2026. I can populate that local repo with the developed c ode ( likely in a single day) This local repo has a SEDM branch. If idea review says to go ahhaead, I will add my code and git commit -m "Description of changes". and git add . and git push origin [your-branch-name]. then on GitHub Open a Pull Request (PR) then wait for review. I wont push until comments say to do so. Please advise Thanks TomP ( hope this makes sense ;-) _______________________________________________ Emc-developers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-developers
