Originally Posted by
MrMetric
I didn't completely answer my original request for help, and I firmly believe in trying to give back to the community so that someone else can self-help. To that end, let me explain a bit..
CNA18 is an interface port on the MC161-1 CPU card. CNA18 has the pins that are high speed interrupt pins bound to the SKIP control. A SKIP control is basically a means of interrupting an operation. This is done by inserting a G31.x (where X can be 1, 2, 3, etc... one for each input pin... G31 by itself implies G31.1). If you've watched any of the thousand videos out there with a renishaw probe, you'll see it advance until it hits a surface. In G code land, that is just a Gxx to move at a specific feedrate BUT there is a G31 added to the command as a modifier. So, even though the move command says to advance 50mm, if the input changes state at, say 10mm, the movement stops/interrupts. Personally, SKIP is kind of a lousy name, in my opinion, but that is all that is really happening.
Renishaw tool setters and probes work with a set of macros. These handle all of the movements, which are, of course, interrupted by the G31 input changing state. The Renishaw macros then read the current location through common variables and perform whatever action is appropriate. In a tool presetter case, the tool offset will be calculated and the value put into the variable location that is bound to what you see on the screen. Think of these locations as dual ported memory. You can either access them through a graphical user interface (keyboard and screen) or programmatically via a bound memory location. That is *all* there is to it.
Now for the Meldas M3 specifically.... What I found is that I could not run the macros without getting format errors. It was frustrating.... An out of the box macro would error out in the first 15 lines or so, and the solution was to just remove a comment line. That isn't good... A comment line is functionally irrelevant, so removing it should do nothing at all, but it made all the difference in the world. The implication, of course, was that there was likely a problem with the firmware (basically the operating system of the CNC itself) was malfunctioning. The firmware is stored on EPROMs on this control, and the labels showed this version:
MC433 261W000-A3
MACRO 261W610-A1
Eventually I found another plugin module with the 12 EPROMs that had this sticker:
MC433 261W000-C0
MACRO 261W610-A2
That version doesn't have all the format issues that the original one had. Note that there *are* other firmware versions found out other M3 controls out there that have different part numbers. I cannot tell you which ones work and which ones do not. I only know that I tried two different firmware cartridges which A3/A1 and neither of those worked (likely eliminating corruption of the firmware itself), while the C0/A2 version seems to behave much better (I haven't fully vetted this yet, so there is definitely a TBD in here).
Feel free to reach out to me if you have a question. I'll help if I can, but please realize that I *am* an amateur. I have learned this stuff by painfully clawing my way up a cliff of knowledge. :-(