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