PmcB1s/PMC_B1.mt
NoName
0.4
0
5.5
5.5
3
50
50
30
20
15
8
5
(-40, -40, 0)
(40, 40, 10)
0.125
(2, 0, -50)
(72, 50, 0)
Design/standard_force_4exp_201902_design.stl
Al6061T6.mp
Al6061T6.WorkpieceMaterial
25
1000
T1
(0,10)
(30,10)
12
0.5
20
(20,6)
(75,6)
0.0625
15
3
0
50
15
5
50
1.5
15
5
5.5
WC-Co6-800nm.CutterMaterial
7
20
5
true
3
true
0
999
8
HolderAnc
0
0
Fanuc
(0, 0, 0)
true
6
0
58
0
false
true
false
(INF, INF, INF)
(-INF, -INF, -INF)
(INF, INF, INF)
(-INF, -INF, -INF)
(60, 60, 60)
60000
20000
PT0S
0
範例 1-1 執行NC檔案
RunNcFile("NC/circle.ptp");
RunNcFile("NC/drill_slot.ptp");
RunNcFile("NC/side.ptp");
RunNcFile("NC/slide.ptp");
true
範例 1-2 基礎設定 及 執行NC檔案
////一般設定////
DispCache_Mb = 1260; //GRAM暫存空間 (Mb)
MachiningResolution_mm = 0.125; //仿真解析度 (mm)
MachiningMotionResolution = FeedPerCycle;
EnableCollisionDetection = true; //是否啟用碰撞檢測開啟
EnablePauseOnCollision = false; //是否啟用碰撞發生時暫停
////執行NC檔案////
RunNcFile("NC/circle.ptp");
RunNcFile("NC/drill_slot.ptp");
RunNcFile("NC/side.ptp");
RunNcFile("NC/slide.ptp");
true
範例 1-3 穿插設定於NC檔案間
////一般設定////
DispCache_Mb = 260; //GRAM暫存空間 (Mb)
MachiningResolution_mm = 1.0; //仿真解析度 (mm)
MachiningMotionResolution = FeedPerCycle;
EnableCollisionDetection = true; //是否啟用碰撞檢測開啟
EnablePauseOnCollision = false; //是否啟用碰撞發生時暫停
RunNcFile("NC/circle.ptp");
EnableCollisionDetection = false;
RunNcFile("NC/drill_slot.ptp");
MachiningResolution_mm = 1.0/8;
RunNcFile("NC/side.ptp");
RunNcFile("NC/slide.ptp");
true
範例 2-1 優化NC
////一般設定////
DispCache_Mb = 260; //GRAM暫存空間 (Mb)
MachiningResolution_mm = 1.0; //仿真解析度 (mm)
MachiningMotionResolution = FeedPerCycle;
EnableCollisionDetection = false; //是否啟用碰撞檢測開啟
EnablePauseOnCollision = false; //是否啟用碰撞發生時暫停
////NC優化設定////
OptEnableInterpolation = true; //是否要重新插補,增加路徑線段加減速
OptRapidFeed_mmdmin = 4000; //無切削區域進給
OptMinFeedrate_mmdmin = 100; //有切削區域最小進給
OptMaxFeedrate_mmdmin = 4000; //有切削區域最大進給
OptMaxAcceleration_mmds2 = 10; //加減速限制
OptExtendedPreDistance_mm = 3; //有切削區域等效計算的前長度
OptExtendedPostDistance_mm = 2; //有切削區域等效計算的後長度
OptSpindlePowerSafetyFactor = 1.5; //主軸功率安全係數
OptSpindleTorqueSafetyFactor = 1.5; //主軸扭力安全係數
OptPreferedForce_N = double.PositiveInfinity; //優化目標力
////執行NC檔案////
RunNcFile("NC/circle.ptp");
RunNcFile("NC/drill_slot.ptp");
RunNcFile("NC/side.ptp");
RunNcFile("NC/slide.ptp");
OptimizeToFiles("Cache/Opt-[NcName]"); //優化NC檔並以路徑樣板輸出
true
範例 3 其他各式指令
////一般設定////
DispCache_Mb = 260; //GRAM暫存空間 (Mb)
MachiningResolution_mm = 1.0; //仿真解析度 (mm)
MachiningMotionResolution = FeedPerCycle;
EnableCollisionDetection = false; //是否啟用碰撞檢測開啟
EnablePauseOnCollision = false; //是否啟用碰撞發生時暫停
WriteRuntimeGeom("Cache/init.wct"); //寫入暫存檔
////執行NC檔案////
RunNcFile("NC/circle.ptp");
RunNcFile("NC/drill_slot.ptp");
RunNcFile("NC/side.ptp");
RunNcFile("NC/slide.ptp");
WriteRuntimeGeom("Cache/finish.wct"); //寫入暫存檔
WriteRuntimeGeomToStl("Cache/finish.stl",0)
WriteStepFiles("Cache/[NcName].step.csv");
WriteShotFiles("Cache/[NcName].shot.csv", 1);
true
範例 4 補充腳本
////一般設定////
DispCache_Mb = 2260; //GRAM暫存空間 (Mb)
WriteRuntimeGeom("Cache/finish-2.wct"); //寫入暫存檔
Diff(1); //執行和成品誤差比對
true
true
false
true
true
true
false
MaxTipDeflectionOnToolRunningCoordinate_um.Y
MaxTipDeflectionOnToolRunningCoordinate_um.Y
Linear
0
2000
Linear
0
1
NormalizedPositiveErf
-0.1
0.5
Linear
0
1
Linear
-0.3
0.3
Linear
0
1
Fit
-400
400
ForceToWorkpieceOnWorkpieceCoordinate
Fit
-10
10
Fit
-10
10
Fit
0
1
Fit
0
1
Fit
0
1
Fit
0
1
Fit
0
1
Fit
0
1
260