This repository has been archived on 2026-10-11. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
HiNC-2025-win-desktop-Deploy/App/wwwroot/HiAPI-docsite/technique/scripting/step-fields.html
T
2026-09-09 17:35:23 +08:00

180 lines
11 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Step Field Reference | HiAPI-C# 2025 </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Step Field Reference | HiAPI-C# 2025 ">
<link rel="icon" href="../../img/HiAPI.favicon.ico">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="toc.html">
<meta name="docfx:rel" content="../../">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../img/HiAPI.logo.png" alt="">
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="Doc-Step-Fields">
<h1 id="step-field-reference">Step Field Reference</h1>
<p>Every simulated <a class="xref" href="step.html">step</a> carries a row of output: the NC line it came from, the kinematics, the load, and what that load did to the cutter. The field-by-field definitions are generated — <a class="xref" href="../../api/Hi.MachiningSteps.MachiningStep.html">MachiningStep</a> is the complete and current list, and it is not copied here. This page states what each group covers, how the numbers are to be read, and the two readings that are most often misread.</p>
<h2 id="how-a-steps-numbers-are-formed">How a Step's Numbers Are Formed</h2>
<p>A step's data covers the <strong>time interval between two consecutive steps</strong> — from the previous step to this one — not an instant. Most fields are therefore a simplification over that period, and the prefix says which: <code>Avg</code> (average), <code>Min</code> / <code>Max</code> (extremes), <code>Delta</code> (range) and <code>MaxAbs</code> (maximum absolute value).</p>
<p>A field that depends on a frame carries the frame in its name: <code>[W]</code> workpiece, <code>[TR]</code> tool running, <code>[SR]</code> spindle rotation. The frames themselves are defined in <a class="xref" href="../milling-physics/milling-physics-coordinates.html">Milling Physics Coordinates</a>.</p>
<h2 id="field-groups">Field Groups</h2>
<table>
<thead>
<tr>
<th>Group</th>
<th>What it covers</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Source</strong></td>
<td>The file, line, line text and flags of the NC command that produced the step, its index in the run, and the active tool id</td>
</tr>
<tr>
<td><strong>Time and motion</strong></td>
<td>End-of-step timecode, step duration (one spindle revolution in the default per-revolution mode), spindle angle at the start, the cutter location with its IJK normal, the machine coordinates, the displacement in program coordinates, and the feed / spindle-speed / cutting-speed / per-tooth family</td>
</tr>
<tr>
<td><strong>Engagement and removal</strong></td>
<td>Whether the cutter was engaged at all, radial and axial engagement (ae, ap), material removal rate, and the program-side cusp height and its distribution</td>
</tr>
<tr>
<td><strong>Chip</strong></td>
<td>Chip thickness, volume and mass</td>
</tr>
<tr>
<td><strong>Force and torque</strong></td>
<td>Average and maximum force on the tool, torques about the tool tip and about the sensor point in each frame, and the mapping-comparison fields that put a measured signal beside the simulated one — error ratios and symbolic error correlation</td>
</tr>
<tr>
<td><strong>Power and energy</strong></td>
<td>Spindle input power (what enters the spindle) and output power (what reaches the cut after spindle losses; the ratio between them is the spindle's configured <a class="xref" href="../../api/Hi.Milling.SpindleCapability.html#Hi_Milling_SpindleCapability_EnergyEfficiency">EnergyEfficiency</a><small>(API)</small>), the instantaneous and continuous power and torque ratios against the spindle capability curve, and accumulated energy consumption</td>
</tr>
<tr>
<td><strong>Thermal</strong></td>
<td>Cutter body, cutter surface, workpiece surface and chip temperatures, cutter subsurface temperature at a given depth, and thermal stress with its yield ratio</td>
</tr>
<tr>
<td><strong>Wear and deflection</strong></td>
<td>Instantaneous and accumulated crater wear, accumulated flank wear depth and width, tool tip and bottom-edge deflection, and re-cut depth</td>
</tr>
</tbody>
</table>
<p>For what the thermal yield ratio implies about breakage risk see <a class="xref" href="../milling-physics/machinability.html">Evaluating Process Machinability</a>; for the wear model behind the wear fields see <a class="xref" href="../milling-physics/wear.html">Tool Life and Wear</a>.</p>
<div class="NOTE">
<h5>Note</h5>
<p><code>EndTimecode</code> was named <code>AccumulatedTime</code> before the rename, and step CSVs written with the legacy header are still read.</p>
</div>
<h2 id="two-readings-that-are-usually-misread">Two Readings That Are Usually Misread</h2>
<h3 id="a-cusp-spike-is-usually-a-rapid-move-collision-not-a-finish-result">A cusp spike is usually a rapid-move collision, not a finish result</h3>
<p>The program-side cusp is computed from the <em>ideal program feedrate</em> while the cutter is engaged with the workpiece. A rapid traverse is not meant to touch material; when it does, the cusp formula is fed the (very high) rapid feedrate, so the value spikes far above any real cutting cusp. Treat an isolated cusp peak at a rapid / G00 line as a likely gouge or collision to investigate. The same engagement-during-rapid usually shows up beside it as spikes in the availability ratios — yielding stress, spindle torque, spindle power.</p>
<h3 id="a-power-or-torque-ratio-over-100-is-load-damage-and-it-is-read-by-duration">A power or torque ratio over 100% is load damage, and it is read by duration</h3>
<p>A ratio above 100% means the spindle cannot supply the demanded load at the commanded rpm, so it droops: with feed held, rpm drops, feed-per-tooth rises, and forces climb further — a runaway loop that, left unchecked, grows the chip until the cutter breaks and the spindle and drive are overstressed. That is load damage, not a tool-versus-workpiece collision (see <a class="xref" href="../nc-optimization/nc-optimization-principles.html">NC optimization</a>).</p>
<p>Read it by <em>duration</em>, not just by height. A one-revolution overshoot usually still completes the pass, leaving a slightly insufficient cut there; a ratio that stays above 100% across many consecutive spindle revolutions is a genuine overload to fix. A high-load step typically also shows large cutter–workpiece engagement, large tip deflection, and more vibration and noise. Because the ratio is normalized by the spindle-capability curve, a placeholder or guessed spindle skews it — confirm against the real spindle's speed–power and speed–torque curves before calling a cut overloaded.</p>
<h2 id="see-also">See Also</h2>
<ul>
<li><a href="step.html">Step</a> — what a step is, and when one is produced</li>
<li><a class="xref" href="../machine-capability/spindle-capability.html">Spindle Capability</a> — the curves that normalize the power and torque ratios above</li>
<li><a class="xref" href="../milling-physics/milling-physics-coordinates.html">Milling Physics Coordinates</a> — what the <code>[W]</code> / <code>[TR]</code> / <code>[SR]</code> marks on these fields mean</li>
</ul>
</article>
<div class="contribution d-print-none">
</div>
<div class="next-article d-print-none border-top" id="nextArticle"></div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<span> Copyright © 2025 <a href='https://superhightech.com.tw'>Tech Coordinate</a>. All rights reserved. <a href='https://superhightech.com.tw'>超級高科技股份有限公司</a> © 2025 版權所有 </span>
</div>
</div>
</footer>
</body>
</html>