Table of Contents

資料映射

外部資料包含智慧刀把、動力計,可依時間線性映射至指定刀具路徑及加工區域。

映射資料可用於檢視加工狀態、訓練銑削係數、校正銑削係數。

所以資料映射需指定映射之兩部:指定輸入資料、指定NC路徑。

Mapping Overview Example
資料映射圖例

指定輸入資料

Note

指令格式

AddTimeDataByFile(<映射名>, <輸入檔案路徑>, <映射起點時間>, <映射終點時間>);

<映射名>為自訂之標記名稱,對應於指定NC路徑中的映射名。

時間資料格式為<時>:<分>:<秒>.<小數點後秒>;其餘資料格式為實數。

注意映射資料不會因撥放器重置而被清空。可以使用ClearTimeMappingData指令清空。

Note

指令格式

ClearTimeMappingData();
Tip

指令範例

ClearTimeMappingData();
AddTimeDataByFile( "lineA", "Mapping/sensor1.csv", "18:25:51.7100", "18:26:12.9910");
AddTimeDataByFile( "lineB", "Mapping/sensor1.csv", "18:26:30.5750", "18:27:12.2880");
PlayNcFile("NC/file1.nc")

輸入檔案格式為csv,須包含時間資訊,其餘資訊可選擇包含或不包含。

csv檔案需有標題列,欄位標題需用特定指示詞標示。 部分欄位指示詞為方便性是多擇一。

  • 時間:
    • TimeTag
    • Timetag
    • Time
    • t
  • 動力計:
    • X方向力:
      • Fx
      • Workpiece.Fx
    • Y方向力:
      • Fy
      • Workpiece.Fy
    • Z方向力:
      • Fz
      • Workpiece.Fz
  • 智慧刀把:
    • X方向力矩:
      • Mx
      • Spindle.Mx
    • Y方向力矩:
      • My
      • Spindle.My
    • Z方向力矩:
      • Mz
      • Spindle.Mz
  • 加速規(可選):
    • Ax
    • Ay
    • Az

欄位可以包含其他外部資訊,如下例之CH1CH2

Tip

檔案範例

TimeTag,CH1,CH2,Mx,My,Mz
18:23:54.703,-0.00398,-0.00034,-0.02923,0.10733,0.00409
18:23:54.704,-0.00194,0.00285,0.04155,-0.04457,0.00448
...

指定NC路徑

Note

指令格式

//範圍(多行)資料映射
BeginSelection(<映射名>, <起點映射錨點旗標>, <起點偏置物件>);
EndSelection(<映射名>, <終點映射錨點旗標>, <終點偏置物件>);
//單行資料映射
LineSelection(<映射名>, <起點映射錨點旗標>, <起點偏置物件>, <終點映射錨點旗標>, <終點偏置物件>);

<映射名>為自訂之標記名稱,對應於指定輸入資料中的映射名。

  • 可以使用BeginSelectionEndSelection作範圍(多行)資料映射:
    • BeginSelection設置映射起點。
    • EndSelection設置映射終點。
  • 或是使用LineSelection作單行資料映射。

<映射錨點旗標>可以使用:

  • LineBegin 以該行運動起點為映射錨點。
  • LineEnd 以該行運動終點為映射錨點。
  • FirstTouch 以該行第一次接觸工件的位置為映射錨點。
  • LastTouch 以該行最後接觸工件的位置為映射錨點。

markRegionOnTouch.png

<偏置物件>是相對於錨點的偏移,可以使用:

  • null 無偏移。
  • ShiftTime_s 單位秒。正值為往後時間;負值為往前時間。
  • ShiftDistance_mm 單位mm。正值為往後位移;負值為往前位移。

指定NC路徑命令需在NC碼註解中執行,前置;@符號。

Tip

NC檔案範例

...
G00 G90 X-6. Y10.  
G17 G01 Z-1. F600.
S50 M03
X13. F20 ;@LineSelection("lineA", FirstTouch, ShiftTime_s(2), LineEnd, ShiftDistance_mm(-1));
X25. F10 ;@LineSelection("lineB", FirstTouch, null, LastTouch, null);
...
Tip

NC檔案範例2

如果控制器不支援;符號作為註解,如FANUC控制器,則需將其引入註解範圍內。

...
G00 G90 X-6. Y10.  
G17 G01 Z-1. F600.
S50 M03
X13. F20 (;@LineSelection("lineA", FirstTouch, ShiftTime_s(2), LineEnd, ShiftDistance_mm(-1));)
X25. F10 (;@LineSelection("lineB", FirstTouch, null, LastTouch, null);)
...