What's new
What's new

Need suggestions Macro-Probe change. M78 or M79? Alarm ck on probe skip hit/no-hit

countryguy

Hot Rolled
Joined
Jul 29, 2014
Location
Mich, USA
Would anyone happen to have an answers or suggestions to the following situation. As a full probe macro toolset, this is mostly running on non-haas I am told but there is a haas version and is running on older and new systems.

issue: Using a Renishaw probe on a 98 VF/4 w/ and custom macro set (NOT haas/Renishaw macros)in the calibration ring setup. The problem is the NE evaluation of the skip coord hit compared to the G54 location. The IF 5062NE5042-GOTO535 below in the sample snippet will never equate properly (implementation and code design issue, not a machine evaluation issue) I typed up a longer write up on why at the end below. We're just a Father/Son setup in a garage - learning together. so I am VERY cautious w/ expensive gear. OMI2-T, OMP-40-2, OTS 1/2-aa


ORIG CODE SNIPPET A)
This is all part of the probe & stylus ball calibration. So 1 of many similar sections.
N525
G103P1
G0Z[#111-#5023]
G31Y[#30-#5022]F[#121] (run till setting ring ID skip/hit)
M98P9965
IF[#5062NE#5042]GOTO535 (See bottom paragraph on what is intended here).
#3000=91 (PROBE FAIL)
(***********************)


Work arounds for comment/review. ( I have 2)
A option 1. This does work, but ....eh. a hack.
-change Haas parms 59-62. (Probe offsets.) change each haas parm by .0001 (a tenth) different, (LESS Favorable).
-Set #5062 (haas probe Y coord on skip hit) to #502 then 5042 (Haas Coord Y) to parms #505
-Change IF to IF[#502NE#505]GOTO535
-Had to use #500's... even w/ the 59-62 offsets, the haas internals still did not consider them NE w/ offsets.

B option 2
-Use M78 and M79 (M79 Alarm if Skip Signal Not Found - Mill | Customer Resource Center)
- Set the move G31 w/ an M79 check.
- remove the IF and just GOTO535 if no Alarm issues on the M78 G31Y move?
- One Q I have... is there a way to test a #PARM to see if the M78 alarm was issued?


Sample fix ideas

B- Preferred (I believe this is the way to go? ) but not sure what to do w/ ALARM check (guidance?).
N525
G103P1
G0Z[#111-#5023]
M78 G31Y[#30-#5022]F[#121] (M78 Alarm if no skip measuring setting ring ID in Y Cal)
M98P9965 (runs some delays)
IF[ NO ALARM ] GOTO535 ( Not sure how I should treat this part? - like the If/check to exit, else #3000 alarm).
#3000=91 (PROBE FAIL)

DETAIL: Why the IF#5062NE#5042 Fails and what started all this. Of all the machines and installs out there... Mine is the oddball. Told that after a G31X/Y move, that #506x is checked against #504x as a NOT EQUAL since the machine location -vs- the probe location will always be slightly off due to stop-signals, skip signals, firmware grabs of locations between the #506x and #504x series of values.... (maybe backlas, maybe run-out, etc all play into this?) All I can say is my values are EQUAL every single time following a G31 move. I cannot find ANY reason or web threads noting this as an issue.
So.... this is my story and it's been weeks trying to get this all running. I am attempting to help the programmer/designer w/ some Haas side updates and solutions.
 
Last edited:
Some experiments of mine on M78 and M79 are that they alarm when they shouldn’t. Have you reviewed the way the Haas renishaw routines work? They use G31 almost exclusively with their own checks.
 
Been a while since I played with G31 or M78, but looking at one of my old programs, it looks like I used some rounding. Maybe had similar issue? eg:

N201 IF [ ROUND[ 1000 * [ #5042 + #1 ] ] EQ ROUND[ 1000 * #5062 ] ] GOTO210 (MISS)

is there a way to test a #PARM to see if the M78 alarm was issued?

To look in the alarm history, or do something when the machine alarms? I don't think you can do anything here since the machine will be in alarm condition and stopped. You'll have to reset.
 
Final part of this... Ended up calling both Haas and Renishaw. Haas noted that it's probably due to slow FeedRates being used on the G31Y probe move. That if I bump it up to 50ipm or even to 200ipm, it would most likely yield the drift. The developer (who is a wiz) noted it's a quirk of the control or a bug someplace. Someday I may find out....For now we ended up programming around it but I would still like to know why it runs on dozens of other haas systems and not this one.
 








 
Back
Top