Table of Contents

Class ToolOffsetAgreementCheck

Namespace
Hi.NcParsers.Dependencys.Generic
Assembly
HiMech.dll

The H / T agreement check: whether a tool length offset number must be the number of the tool in the spindle. On by default — one offset row per tool, numbered like the tool, is the habit worth encouraging, and a program that keeps it never sees the check. ToolHeightOffsetSyntax (G43 / G44) and G43p4RtcpSyntax (G43.4) read the one instance on the runner: on the block that activates the compensation, and on a tool change under a still-active one, an H that is not the T warns (Comp-ToolHeight–HDiffersFromTool, Comp-ToolHeight–HOutlivesToolChange) with both rows' lengths. H0 and G49 are exempt, and before the first tool change there is no T to compare. Diagnostics only — the compensation follows the H word, as it does on the control.

Fanuc has no such check built in; Haas ships it as Setting 15 "H & T Code Agreement" (alarm 332 "H AND T NOT MATCHED", H0 exempt there too). A program written with another habit — tool numbers 101–106 on offset rows 1–6, one tool switching between G43.4 H02 and G43 H03 — turns the check off with HMustMatchTool.

A runner whose dependency list carries no instance behaves as if HMustMatchTool were true, so a project saved before the option existed is checked as well. The brand presets carry an explicit instance so the setting is visible and editable in the controller XML:

<ToolOffsetAgreementCheck>
  <HMustMatchTool>true</HMustMatchTool>
</ToolOffsetAgreementCheck>
A radius offset (D) agreement check, should one be wanted, belongs on this same dependency.
public class ToolOffsetAgreementCheck : INcDependency, IMakeXmlSource
Inheritance
ToolOffsetAgreementCheck
Implements
Inherited Members
Extension Methods

Constructors

ToolOffsetAgreementCheck()

Initializes a new instance with the check on.

public ToolOffsetAgreementCheck()

ToolOffsetAgreementCheck(XElement)

Loads HMustMatchTool from XML produced by MakeXmlSource(string, string, bool); an absent or unreadable element keeps the default.

public ToolOffsetAgreementCheck(XElement src)

Parameters

src XElement

Root element named XName.

Fields

DefaultHMustMatchTool

Default for HMustMatchTool, and what a runner with no instance on its dependency list behaves as.

public const bool DefaultHMustMatchTool = true

Field Value

bool

Properties

HMustMatchTool

Whether the H number of G43 / G44 / G43.4 must be the number of the tool in the spindle. False silences the two agreement warnings; the compensation itself is the same either way.

public bool HMustMatchTool { get; set; }

Property Value

bool

XName

XML element name used to register this dependency with XFactory.

public static string XName { get; }

Property Value

string

Methods

MakeXmlSource(string, string, bool)

Creates an XML representation of the object. This method may also generate additional resources such as related files.

public XElement MakeXmlSource(string baseDirectory, string relFile, bool exhibitionOnly)

Parameters

baseDirectory string

The base directory for resolving relative paths

relFile string

The relative file path for the XML source

exhibitionOnly bool

if true, the extended file creation is suppressed.

Returns

XElement

An XML element representing the object's state

Remarks

For the demand of easy moving source folder (especially project folder) without configuration file path corruption, the relative file path is applied. The baseDirectory is typically the folder at the nearest configuration file folder. Since the folder can be moving with the configuration file.

Reg(XFactory)

Registers this type's deserializer with the given XFactory (or Default when factory is null). Idempotent.

public static void Reg(XFactory factory = null)

Parameters

factory XFactory