From: Steve S. <ste...@ne...> - 2005-05-30 16:07:18
|
Recently there has been much discussion on the IRC channel about how EMC should handle complicated machine functions such as spindle speed/gear changing and the various types of tool changers. The discussion brought out lots of differing opinions and it was mentioned that perhaps the discussion should be moved to the developers list to widen the scope of input. Here is my attempt to summarize the issues. The current state of affairs is that EMC can handle a few types of speed control and tool change, but these functions are essentially hard coded and not easy to modify or extend. The addition of HAL and the possible addition of Classic Ladder will help but cannot solve all the issues. The original EMC design mandated that only one process was in control of motion and I/O and that was the task module. For more complicated issues task could issue an I/O signal and wait while an external process sends a "complete" signal. This works fine for many things but becomes an issue when functions other than cutting need to move the machine axes. Possible solutions might include altering EMC so that I/O can handle motion or enhancing the interpreter to handle I/O. To expose my biases, the latter makes more sense to me. Then we could use the approach of writing macros to handle complex machine functions without having to alter the main EMC code. Not to make light of this, creating macro extensions of the type required is not a minor task. Let the discussion begin.... Regards, Steve Stallings |