This commit is contained in:
2025-12-18 11:09:45 +08:00
parent 5e28ac1fa7
commit 32ff8b45e3
62 changed files with 2436 additions and 1551 deletions
@@ -131,6 +131,42 @@ ReTrainMillingPara(Fz|Mx|My|Mz, "StainlessSteel.mp");
<p>如果僅使用<code>Mx|My|Mz</code>,由於力矩資料為 <span class="math">\(\vec{r} \times \vec{F}\)</span>,所以r方向資料會遺失,相當於少了一個自由度,難以訓練材料系數。
所以力矩資料須搭配<code>Fz</code>使用。</p>
<p><code>ReTrainMillingPara</code>校正銑削係數,沒有限制資料種類及每刃進給。</p>
<h2 id="訓練品質指標">訓練品質指標</h2>
<p>訓練完成後,系統會計算以下品質指標:</p>
<h3 id="相關係數-correlation-coefficient-r">相關係數 (Correlation Coefficient, R)</h3>
<p>相關係數 <span class="math">\(R\)</span> 是整體訓練結果的單一數值,用於評估訓練後模擬值與量測值的線性相關程度,範圍為 <span class="math">\(0\)</span><span class="math">\(1\)</span>,越接近 <span class="math">\(1\)</span> 表示訓練結果越好。新刀的相關係數通常介於 0.95 至 0.999 之間。</p>
<h3 id="訓練誤差比-trainingerrratio">訓練誤差比 (TrainingErrRatio)</h3>
<p>訓練誤差比是在執行 <a class="xref" href="../../../../../api/Hi.MachiningProcs.RuntimeApi.html#Hi_MachiningProcs_RuntimeApi_TrainMillingPara_">TrainMillingPara</a><small>(API)</small><a class="xref" href="../../../../../api/Hi.MachiningProcs.RuntimeApi.html#Hi_MachiningProcs_RuntimeApi_ReTrainMillingPara_">ReTrainMillingPara</a><small>(API)</small> 後,動態註冊並設置到訓練區域內各步的<a href="../StepVariables/index.html">步變數</a>,用於評估該步的模擬與量測之間的誤差程度,數值越小表示該步的訓練品質越好。</p>
<div class="math">
\[
\text{TrainingErrRatio} = \sqrt{\frac{\sum_{i} e_i^2}{\sqrt{\sum_{i} y_i^2 \cdot \sum_{i} \hat{y}_i^2}}}
\]</div>
<p>其中:</p>
<ul>
<li><span class="math">\(e_i = y_i - \hat{y}_i\)</span>:第 <span class="math">\(i\)</span> 個樣本的誤差</li>
<li><span class="math">\(y_i\)</span>:量測值</li>
<li><span class="math">\(\hat{y}_i\)</span>:模擬預測值</li>
</ul>
<p>此指標會嵌入到每個加工步驟的輸出資料中,可用於識別訓練品質較差的段落。</p>
<h3 id="角度偏移-angleoffset">角度偏移 (AngleOffset)</h3>
<p>角度偏移是在執行訓練函數後,動態註冊並設置到訓練區域內各步的<a href="../StepVariables/index.html">步變數</a><span class="math">\(\theta_{offset}\)</span> 表示該步量測資料與模擬資料之間的刀刃旋轉相位差。系統會自動對齊相位以獲得最佳訓練結果。</p>
<div class="math">
\[
\theta_{offset} = \frac{2\pi \cdot i_{min}}{N_{div}}
\]</div>
<p>其中:</p>
<ul>
<li><span class="math">\(i_{min}\)</span>:使預測誤差最小的角度索引</li>
<li><span class="math">\(N_{div}\)</span>:一轉的角度分割數,即 <a class="xref" href="../../../../../api/Hi.MachiningProcs.RuntimeApi.html#Hi_MachiningProcs_RuntimeApi_MillingCycleDivisionNum">MillingCycleDivisionNum</a><small>(API)</small></li>
</ul>
<div class="TIP">
<h5>Tip</h5>
<p>如果同一批訓練中各段落的 AngleOffset 差異過大,可能表示主軸旋轉突然放慢或放快或資料缺失,或系統無法準確分析樣本並導致不理想訓練的結果。</p>
</div>
<div class="TIP">
<h5>Tip</h5>
<p>較大的 <a class="xref" href="../../../../../api/Hi.MachiningProcs.RuntimeApi.html#Hi_MachiningProcs_RuntimeApi_MillingCycleDivisionNum">MillingCycleDivisionNum</a><small>(API)</small> 設定可以得到更準確的 AngleOffset 結果,進而訓練出更準確的銑削係數。</p>
</div>
<h2 id="範例專案-動力計訓練銑削係數">範例專案-動力計訓練銑削係數</h2>
<p>使用動力計訓練銑削係數的範例專案可於此下載:</p>
<p><a href="https://superhightech-gitea.webredirect.org/HiNC-Deploy/Demo-Para-Training-S50C-202501">https://superhightech-gitea.webredirect.org/HiNC-Deploy/Demo-Para-Training-S50C-202501</a></p>