คลังบทเรียน / การเขียนโปรแกรม CNC

บทที่ 29

อ่านและตรวจโปรแกรมจาก CAM — โพสต์โปรเซสเซอร์ โครงสร้างโปรแกรม การชดเชยรัศมีแบบต่างๆ และสิ่งที่ต้องตรวจก่อนเดินเครื่อง

สิ่งที่ต้องรู้เมื่อโปรแกรม CNC สร้างขึ้นจากซอฟต์แวร์ CAM และแปลงรหัสผ่านโพสต์โปรเซสเซอร์ ความแตกต่างระหว่างสิ่งที่ CAM กำหนดกับสิ่งที่โพสต์โปรเซสเซอร์ควบคุม โครงสร้างของโปรแกรมจาก CAM และการตรวจเฉพาะจุดสำคัญด้านความปลอดภัย การชดเชยรัศมีมีด 3 รูปแบบ (Computer, Control, Wear) และการตั้งค่าตาราง D ให้ถูกต้อง ปัญหาของเส้นทางส่วนโค้งเทียบกับจุดเส้นตรงสั้นจำนวนมาก (Chordal tolerance) รายการตรวจสอบก่อนเดินเครื่องจริง การใช้ Backplot ค้นหาข้อผิดพลาด และกฎการตัดสินใจระหว่างการแก้ที่หน้าเครื่องกับการกลับไปแก้ในโมเดล CAM พร้อมโปรแกรมตัวอย่าง

โปรแกรมงานกัด CNC ส่วนใหญ่ในภาคอุตสาหกรรมปัจจุบันสร้างขึ้นจากซอฟต์แวร์ CAM (Computer-Aided Manufacturing) มากกว่าการเขียนโค้ดด้วยมือทีละบรรทัด แม้กระนั้น ช่างเทคนิคและวิศวกรโรงงานยังจำเป็นต้องอ่านและเขียนโปรแกรมด้วยมือเป็น เพื่อ อ่านและตรวจสอบโค้ด NC ได้ชัดเจน เนื่องจาก โปรแกรมที่โพสต์ออกจาก CAM ทุกโปรแกรมต้องผ่านการตรวจสอบก่อนปล่อยให้เครื่องจักรตัดชิ้นงานจริงเสมอ

แม้ซอฟต์แวร์ CAM จะคำนวณทางเดินมีด (Toolpath) ได้อย่างแม่นยำตามแบบจำลอง 3D CAD แต่ระบบ CAM ไม่เคยรับรู้สภาพแวดล้อมทางกายภาพจริงหน้างาน เช่น ช่างเซ็ตเครื่องมือไว้ในพ็อต (Pocket) ใดของแม็กกาซีน, ปากกาหรือแคลมป์ยึดงานบนโต๊ะเครื่องสูงเท่าใด หรือในตารางออฟเซ็ตหน้าเครื่องมีค่าตัวเลขใดบันทึกค้างไว้ บทนี้จะอธิบายขั้นตอนการกำเนิดโปรแกรมจาก CAM โครงสร้างของโค้ดที่สร้างขึ้น และจุดสำคัญที่ต้องระวังเป็นพิเศษก่อนส่งโปรแกรมเข้าสู่ขั้นตอนทดสอบตัดชิ้นงานจริง (Prove-out) ตามบทที่ 21

29.1 จาก CAM ถึงเครื่องจักร

ซอฟต์แวร์ CAM ไม่ได้เขียนรหัส G-code ออกมาโดยตรงในขั้นตอนแรก กระบวนการทำงานจะแบ่งออกเป็น 2 ขั้นตอนหลักเสมอ:

  1. CAM คำนวณทางเดินมีด (Toolpath Generation): ซอฟต์แวร์ประมวลผลรูปทรงเรขาคณิตจากแบบจำลองชิ้นงาน (Part Model) และชิ้นงานดิบ (Stock) ร่วมกับพารามิเตอร์ของเครื่องมือและเงื่อนไขการตัดเฉือน (Cutting Conditions) ที่วิศวกรกำหนด เช่น ระยะกินลึกต่อชั้น (Stepdown / Depth of Cut), ระยะกินด้านข้าง (Stepover), ความเร็วรอบสปินเดิล และอัตราป้อน ผลลัพธ์ที่ได้คือข้อมูลทางเดินมีดขั้นกลางที่ไม่ขึ้นกับเครื่องจักร (Neutral Intermediate Format เช่น ข้อมูลพิกัดตำแหน่งปลายเครื่องมือ CL-Data หรือ Cutter Location Data)
  2. โพสต์โปรเซสเซอร์ (Post-processor): โปรแกรมแปลภาษาเฉพาะทางที่ทำหน้าที่แปลงข้อมูลพิกัดทางเดินมีด (CL-Data) ออกมาเป็นข้อความรหัส G-code และ M-code ตามไวยากรณ์ ขีดความสามารถ และสเปกเฉพาะตัวของชุดควบคุมและเครื่องจักรรุ่นนั้นๆ
จาก CAM ถึงเครื่อง แต่ละขั้นกำหนดอะไร และไม่รู้อะไร แบบจำลอง CAD รูปร่างของชิ้นงาน กำหนด ขนาดและผิว ไม่รู้ วิธีจับยึด CAM คำนวณเส้นทาง กำหนด เส้นทาง ความลึก · เครื่องมือ S F ไม่รู้ ค่าในตาราง · ความสูงตัวจับจริง โพสต์โปรเซสเซอร์ เขียนรหัส G กำหนด ส่วนโค้ง G41 · คำสั่งเจาะ · ลำดับเปลี่ยนมีด ไม่รู้ พารามิเตอร์ของเครื่อง ตรวจ คนอ่าน · Backplot ตรวจ หัวโปรแกรม · การเคลื่อนที่เข้าหางาน การเดินเครื่องครั้งแรก สิ่งที่ขั้นก่อนหน้าไม่รู้ ต้องตรวจที่ขั้นนี้ เครื่อง เดินโปรแกรม ใช้ค่าของเครื่อง ตารางค่าชดเชย · จุดศูนย์ชิ้นงาน ทุกเครื่องต้องมีโพสต์โปรเซสเซอร์ของตัวเอง ข้อผิดพลาดของรูปแบบแก้ที่โพสต์โปรเซสเซอร์ครั้งเดียว ข้อผิดพลาดที่อยู่นอกโปรแกรม เช่น ค่าในตารางค่าชดเชย หาได้จากการอ่านและการเดินเครื่องครั้งแรกเท่านั้น
รูปที่ 29.1 CAM คำนวณเส้นทาง โพสต์โปรเซสเซอร์เขียนรหัส G และคนตรวจก่อนเครื่องเดิน

การเข้าใจการแบ่งแยกหน้าที่ระหว่าง CAM กับโพสต์โปรเซสเซอร์ ช่วยให้วิศวกรและช่างหน้างานวิเคราะห์ปัญหาได้ทันทีว่า เมื่อโค้ด NC มีข้อผิดพลาด ต้นตออยู่ที่จุดใด และต้องกลับไปแก้ไขที่ระบบใด:

ตารางที่ 29.1 การแบ่งหน้าที่ระหว่าง CAM และโพสต์โปรเซสเซอร์
ประเด็นการทำงาน กำหนดและควบคุมโดย ข้อผิดพลาดที่มักตรวจพบ แนวทางการแก้ไขที่ถูกต้อง
รูปร่างทางเดินมีด ความลึก ระยะกินข้าง CAM เลือกผิวงานผิด, กำหนดระดับความลึกผิด, กัดเหลือเนื้อหรือกินเนื้อเกิน แก้ไขในพารามิเตอร์ Toolpath ของโปรเจกต์ CAM
ความเร็วรอบ (S) และอัตราป้อน (F) CAM (ดึงจาก Tool Library หรือผู้ใช้ป้อน) ดึงเงื่อนไขตัดเฉือนของเครื่องมือผิดชนิดมาใช้, ป้อนค่า F ต่อรอบ (mm/rev) ในโหมดต่อนาที (mm/min) ปรับแก้ใน Operation ของ CAM หรืออัปเดตคลังเครื่องมือ (Tool Library)
หมายเลขเครื่องมือ (T), ค่าความยาว (H), ค่ารัศมี (D) CAM (กำหนดจากคลังเครื่องมือ) หมายเลขเครื่องมือไม่ตรงกับตำแหน่งพ็อตในแม็กกาซีน หรือไม่ตรงกับตารางออฟเซ็ต แก้ไขข้อมูลเครื่องมือใน CAM หรือปรับใบตั้งเครื่อง (Setup Sheet) ให้ตรงกัน
รูปแบบส่วนโค้ง (G02/G03) หรือเส้นตรงสั้น, รหัส R หรือ I J K โพสต์โปรเซสเซอร์ เครื่องไม่รองรับส่วนโค้งข้ามระนาบ, แตกเป็นเส้นตรงสั้นมากเกินไปจนเครื่องอ่านไม่ทัน ปรับแต่งการตั้งค่าการแปลงส่วนโค้งในโพสต์โปรเซสเซอร์
รูปแบบการชดเชยรัศมีมีด (Cutter Compensation) CAM และโพสต์โปรเซสเซอร์ร่วมกัน ช่างหน้าเครื่องใส่ค่าในตาราง D ไม่ตรงกับโหมดที่เลือกไว้ใน CAM กำหนดมาตรฐานระบบชดเชยแบบเดียวกันทั้งโรงงาน
คำสั่งเจาะสำเร็จรูป (Canned Cycle) โพสต์โปรเซสเซอร์ เครื่องไม่รองรับคำสั่งเจาะนั้น หรือโพสต์โปรเซสเซอร์แตกคำสั่งเจาะออกเป็นการเคลื่อนที่เส้นตรง (G00/G01) หลายบรรทัดแทนที่จะส่งคำสั่งสำเร็จรูป ปรับแต่งการตั้งค่า Canned Cycle ในโพสต์โปรเซสเซอร์ให้ตรงกับเครื่อง
บรรทัดเตรียมความปลอดภัย ลำดับเปลี่ยนเครื่องมือ รหัส M พิเศษ โพสต์โปรเซสเซอร์ ลำดับการเคลื่อนที่ขัดแย้งกับสเปกเครื่อง, นำรหัส M เฉพาะของเครื่องอื่นมาใช้ แก้ไขสคริปต์ในไฟล์โพสต์โปรเซสเซอร์ของเครื่องนั้น
รูปแบบตัวเลข จุดทศนิยม และจำนวนหลัก โพสต์โปรเซสเซอร์ ตัวเลขพิกัดไม่มีจุดทศนิยม, ความละเอียดทศนิยมไม่ตรงกับพารามิเตอร์เครื่อง ปรับแต่ง Number Formatting ในโพสต์โปรเซสเซอร์

เครื่องจักรแต่ละเครื่องควรมีโพสต์โปรเซสเซอร์เฉพาะประจำเครื่อง (Dedicated post-processor): การนำโปรแกรมที่โพสต์สำหรับเครื่องหนึ่งไปรันบนอีกเครื่องหนึ่ง แม้จะเป็นชุดควบคุม Fanuc เหมือนกัน อาจทำให้เครื่องหยุดด้วย Alarm หรือเคลื่อนที่ผิดลำดับ เพราะเครื่องจักรแต่ละยี่ห้อมีลำดับคำสั่งเปลี่ยนเครื่องมืออัตโนมัติ (ATC), รหัส M ควบคุมระบบน้ำหล่อเย็น, การรองรับคำสั่งเจาะสำเร็จรูป (เช่น หากเครื่องไม่รองรับคำสั่งเจาะบางรูปแบบ โพสต์โปรเซสเซอร์ต้องแตกการเคลื่อนที่ออกเป็น G00/G01 ทีละสเต็ป แต่หากเครื่องรองรับอยู่แล้วก็ควรเขียนเป็นคำสั่งสำเร็จรูป เช่น G81 หรือ G83 เพื่อไม่ให้โค้ดยาวเกินจำเป็นและปรับแก้หน้างานได้ง่าย) หรือการเปิดโหมดประมวลผลความเร็วสูง (High-Speed Machining) ที่แตกต่างกัน หากพบข้อบกพร่องด้านไวยากรณ์หรือลำดับคำสั่งซ้ำๆ ต้องแก้ไขที่ไฟล์โพสต์โปรเซสเซอร์ครั้งเดียว ไม่ควรตามลบหรือพิมพ์แก้ด้วยมือในโปรแกรม NC ทุกครั้งที่โพสต์งานใหม่

29.2 โครงสร้างของโปรแกรมจาก CAM

โปรแกรมที่โพสต์ออกจาก CAM มีโครงสร้างบล็อกคำสั่งสอดคล้องกับโปรแกรมที่เขียนด้วยมือตามบทที่ 11 ทุกประการ จุดแตกต่างสำคัญคือ ความยาวของไฟล์ โปรแกรมกัดงานแม่พิมพ์สามมิติอาจมีความยาวหลายหมื่นถึงหลายแสนบรรทัด ในทางปฏิบัติ วิศวกรและช่างผู้ตรวจสอบจึงไม่สามารถอ่านโค้ดทีละบรรทัดได้ทั้งหมด แต่จะมุ่งตรวจ ส่วนโครงสร้างภายนอกที่โพสต์โปรเซสเซอร์เป็นผู้เขียนขึ้น (Envelope Code) ซึ่งเป็นส่วนที่สั้นแต่มีโอกาสชนกระแทก (Crash) สูงที่สุด:

ตารางที่ 29.2 ส่วนประกอบหลักของโปรแกรมจาก CAM
โครงสร้างโปรแกรม รายละเอียดคำสั่งที่ปรากฏ แนวทางการตรวจสอบทางเทคนิค
หัวโปรแกรม (Program Header) หมายเลขโปรแกรม, ชื่องาน, วันที่โพสต์, รายการเครื่องมือ พร้อมระบุหมายเลข H, D และหมายเหตุระบบชดเชย ตรวจสอบเทียบกับใบสั่งผลิตและใบตั้งเครื่อง (Setup Sheet) ทุกรายการ
บรรทัดเตรียมความปลอดภัย (Safety Line) G90 G94 G17 G49 G40 G80 G21 และคำสั่งส่งแกนกลับจุดอ้างอิง ตรวจสอบหน่วยวัด (G21 = มม.) และโหมดอัตราป้อน (G94 = มม./นาที) ให้ถูกต้อง
บล็อกเรียกและส่งเครื่องมือเข้าหางาน (Tool Call & Approach) T_ M06, พิกัดศูนย์งาน (G54), ทิศทางและความเร็วสปินเดิล (S_ M03), เรียกค่าความยาว (G43 H_ Z_) และน้ำหล่อเย็น (M08) ต้องอ่านอย่างละเอียดทุกบรรทัด เป็นจุดที่เกิดการชนได้บ่อยที่สุด
ทางเดินมีดตัดเฉือน (Cutting Toolpath) คำสั่ง G01, G02, G03 นับหมื่นบรรทัด ไม่ต้องไล่อ่านทีละพิกัด ให้ใช้ระบบ Backplot และซอฟต์แวร์จำลองตรวจจับเส้นทาง
บล็อกยกเครื่องมือถอยและจบกระบวนการ (Tool Retract) ยกแกน Z ถอยพ้นชิ้นงาน, ปิดน้ำหล่อเย็น (M09), หยุดสปินเดิล (M05), ส่งแกนกลับจุดอ้างอิง และคำสั่งหยุดเสริม (M01) ยืนยันว่าแกน Z ยกพ้นระดับปากกาและแคลมป์ ก่อนที่แกน X และ Y จะเคลื่อนที่เสมอ
ส่วนท้ายโปรแกรม (Program End) ส่งแกนกลับจุดโฮมและจบโปรแกรมด้วย M30 ยืนยันว่าวัฏจักรเจาะและการชดเชยรัศมีมีดถูกยกเลิก (G80, G40) ครบถ้วน

การวิ่งเร็วเข้าหางานครั้งแรกของแต่ละเครื่องมือ (Initial Rapid Approach): เป็นจุดเสี่ยงชนที่ต้องตรวจสอบอย่างรัดกุมที่สุด เพราะเครื่องมือต้องวิ่งเร็ว (G00) จากตำแหน่งเปลี่ยนมีดลงมาสู่ผิวงาน ลำดับการเคลื่อนที่ที่ปลอดภัยตามมาตรฐานสากลคือ:

  1. เคลื่อนที่แกน X และ Y ด้วย G00 ไปยังพิกัดปากหลุมหรือจุดเริ่มกัดที่ระดับความสูงปลอดภัยเหนืองาน
  2. สั่งลดระดับแกน Z ลงมาพร้อมเรียกค่าชดเชยความยาว G43 H_ Z_ ไปยังระนาบปลอดภัย (Clearance Plane เช่น Z50. หรือ Z15.)
  3. ป้อนลงต่อด้วยอัตราป้อนตัด (G01) เข้าหาเนื้อชิ้นงาน

โพสต์โปรเซสเซอร์ที่ไม่ได้มาตรฐานบางตัวอาจรวมคำสั่งการเคลื่อนที่ของแกน X, Y และแกน Z ไว้ในบรรทัดเดียวกัน เช่น G00 G43 H01 X10. Y20. Z5. ซึ่งอาจชนแคลมป์หรือชิ้นงาน เพราะเส้นทางการวิ่งของ G00 แบบหลายแกนไม่ได้เป็นเส้นตรงเสมอไปตามที่อธิบายในบทที่ 8

29.3 รูปแบบการชดเชยรัศมีมีดใน CAM

ซอฟต์แวร์ CAM สามารถคำนวณตำแหน่งจุดศูนย์กลางของมีดตัดได้ในคอมพิวเตอร์ตามขนาดเครื่องมือในคลังเครื่องมือ ดังนั้นเมื่อสั่งโพสต์โปรแกรม จึงมีตัวเลือกให้กำหนดว่าต้องการใส่คำสั่งชดเชยรัศมี G41 หรือ G42 ลงในโปรแกรมเพื่อให้ชุดควบคุม CNC ร่วมประมวลผลหรือไม่ ซึ่งในมาตรฐานสากลแบ่งออกเป็น 3 รูปแบบหลัก:

ตารางที่ 29.3 รูปแบบการชดเชยรัศมีมีดใน CAM
รูปแบบ (Compensation Type) พิกัดเส้นทางที่บันทึกลงในโปรแกรม G-code คำสั่ง G41 / G42 ในโปรแกรม ค่าตัวเลขที่ต้องป้อนลงในตาราง D หน้าเครื่อง
Computer พิกัดแนวเส้นกึ่งกลางของมีดตัด (Tool Centerline) ไม่มี ไม่ต้องป้อนค่า (ระบบไม่ได้เรียกใช้ตาราง D)
Control พิกัดแนวเส้นขอบของชิ้นงานจริง (Part Profile Geometry) มี รัศมีเต็มของมีดตัด เช่น เครื่องมือ Ø10 ต้องใส่ค่า Geometry R เป็น 5.000 มม.
Wear พิกัดแนวเส้นกึ่งกลางของมีดตัด (เหมือนแบบ Computer) มี ค่า Geometry D ตั้งเป็นศูนย์ (0.000) ช่างจะปรับเฉพาะค่าในช่อง Wear เป็นไมครอน
รูปแบบการชดเชยรัศมีมีดใน CAM ขอบนอก 60 × 40 มม. ดอกเอ็นมิลล์ Ø10 ตามมาตราส่วน Computer เส้นทางคือศูนย์กลางดอก ไม่มี G41 — ขนาดในแบบ ชิ้นงานที่ได้ (ทับกัน) เส้นทางในโปรแกรม ศูนย์กลางดอก (ทับกัน) ศูนย์กลางห่างขอบ 5 มม. · ชิ้นงาน 60 × 40 Control เส้นทางคือขอบชิ้นงาน มี G41 D = 5.000 ขนาดในแบบ ชิ้นงานที่ได้ เส้นทางในโปรแกรม (ทับกัน) ศูนย์กลางดอก ศูนย์กลางห่างขอบ 5 มม. · ชิ้นงาน 60 × 40 Wear เส้นทางคือศูนย์กลางดอก มี G41 D = 0 ขนาดในแบบ ชิ้นงานที่ได้ (ทับกัน) เส้นทางในโปรแกรม ศูนย์กลางดอก (ทับกัน) ศูนย์กลางห่างขอบ 5 มม. · ชิ้นงาน 60 × 40 Wear ที่ตั้ง D ผิด เส้นทางเดียวกับแบบ Wear D = 5.000 ขนาดในแบบ ชิ้นงานที่ได้ เส้นทางในโปรแกรม (ทับกัน) ศูนย์กลางดอก ศูนย์กลางห่างขอบ 10 มม. ชิ้นงาน 70 × 50 ใหญ่ไปด้านละ 5 มม. แบบ Wear มี G41 D12 เหมือนแบบ Control ช่างที่ใส่รัศมีเต็มตามความเคยชินจึงได้ชิ้นงานผิดขนาดโดยไม่มี alarm
รูปที่ 29.2 สามแบบของการชดเชยรัศมีใน CAM แบบ Wear ต้องตั้งค่า D เป็นศูนย์

รูปแบบ Wear เป็นมาตรฐานที่นิยมใช้สูงสุดในโรงงานผลิตชิ้นส่วนสมัยใหม่ เพราะผสานข้อดีของทั้งสองระบบเข้าด้วยกัน: ซอฟต์แวร์ CAM ช่วยคำนวณการเลี้ยวรอบมุมแคบและส่วนโค้งในคอมพิวเตอร์ได้อย่างแม่นยำ ปราศจากปัญหาส่วนโค้งตัดตัวเอง ขณะเดียวกันยังมีคำสั่ง G41 D_ อยู่ในโค้ด ช่วยให้ช่างหน้าเครื่องสามารถปรับแต่งขนาดชิ้นงานได้อย่างละเอียดผ่านตารางค่าสึกหรอ (Wear Offset)

ข้อควรระวังของรูปแบบ Wear: เนื่องจากโปรแกรมแบบ Wear จะมีคำสั่ง G41 D12 ปรากฏอยู่ในโค้ดเหมือนกับแบบ Control ทุกประการ หากช่างหน้าเครื่องไม่ทราบว่าโปรแกรมนี้โพสต์มาแบบใด แล้วเผลอคีย์ค่ารัศมีเต็ม เช่น ใส่ 5.000 ลงในช่อง Geometry D12 ตามความคุ้นเคย ชุดควบคุมจะขยับจุดศูนย์กลางมีดหนีออกจากเส้นทางเดิมไปอีก 5 มม. ส่งผลให้จุดศูนย์กลางมีดอยู่ห่างจากขอบงานจริงถึง 10 มม. ทำให้ขอบนอกชิ้นงานมีขนาดใหญ่เกินไปด้านละ 5 มม. หรือหากเป็นงานกัดเบ้าใน (Pocket) เบ้าจะมีขนาดเล็กลงด้านละ 5 มม. จนชิ้นงานเสีย หัวโปรแกรมและใบตั้งเครื่องจึงต้องระบุรูปแบบการชดเชยรัศมีไว้อย่างชัดเจนเสมอ และโรงงานควรกำหนดเป็นนโยบายมาตรฐานเดียวกันทุกงาน

นอกจากนี้ ในบางโปรแกรม CAM ยังมีตัวเลือกเสริม เช่น Reverse Wear ซึ่งออกแบบมาให้ค่าในตาราง D ติดลบเมื่อคมตัดสึกหรอ และตัวเลือก Off ซึ่งมีความหมายเทียบเท่ากับแบบ Computer

29.4 การเดินส่วนโค้งจริงเทียบกับเส้นตรงสั้นจำนวนมาก

เวลาเปิดอ่านโปรแกรมที่โพสต์ออกจาก CAM เรามักพบคำสั่งส่วนโค้ง 2 แบบ:

  1. ส่วนโค้งแท้ (G02 หรือ G03): มีคำสั่งบรรทัดเดียว ระบุพิกัดปลายทางและจุดศูนย์กลางส่วนโค้ง
  2. เส้นตรงสั้นต่อกัน (G01): มีคำสั่งเดินเส้นตรงสั้นๆ ต่อเรียงกันเป็นสิบหรือเป็นร้อยบรรทัด

29.4.1 ใครเป็นคนกำหนดว่าจะได้ส่วนโค้งหรือเส้นตรง?

กระบวนการนี้เกิดจากการทำงานร่วมกันระหว่าง CAM และโพสต์โปรเซสเซอร์:

  • CAM คำนวณจุดพิกัด: รูปร่างชิ้นงานที่เป็นส่วนโค้งระนาบสองมิติ (เช่น ระนาบ XY บน G17) CAM จะส่งข้อมูลเป็นส่วนโค้ง แต่สำหรับผิวโค้งอิสระ 3 มิติ (Freeform Surface) หรือเส้นโค้งอิสระ ซอฟต์แวร์ CAM จะคำนวณและซอยส่วนโค้งออกเป็นจุดพิกัดเส้นตรงสั้นๆ ต่อเรียงกัน เพื่อควบคุมไม่ให้ระยะเบี่ยงเบนระหว่างคอร์ดเส้นตรงกับผิวโค้งจริงเกินกว่าค่าความคลาดเคลื่อนที่กำหนด (Chordal Tolerance หรือ Sagitta)
  • โพสต์โปรเซสเซอร์เขียนโค้ด:
    • หากเครื่องจักรรองรับและเปิดฟังก์ชันรวมเส้นโค้ง (Arc Filtering) ไว้ โพสต์โปรเซสเซอร์จะรวบจุดพิกัดเหล่านั้นกลับมาเขียนเป็นคำสั่ง G02/G03 บรรทัดเดียว
    • แต่หากเป็นระนาบที่เครื่องไม่รองรับส่วนโค้ง หรือใน CAM ปิดฟังก์ชันรวมส่วนโค้งไว้ โพสต์โปรเซสเซอร์จะแตกพิกัดทั้งหมดออกมาเป็นคำสั่งเส้นตรง G01 ทีละท่อน
ส่วนโค้งกับเส้นตรงหลายบรรทัด ส่วนโค้ง 90° รัศมี 20 มม. เขียนสองแบบ ภาพซ้ายและกลางตามมาตราส่วน แบบที่ 1: บรรทัดเดียว G02 X20. Y0 R20. จุดเริ่ม X0 Y20. จุดสิ้นสุด X20. Y0 ศูนย์กลาง ส่วนโค้งจริง 1 บรรทัด ตรงกับแบบพอดี แบบที่ 2: เส้นตรงต่อกัน ความคลาดเคลื่อนใน CAM 0.02 ขยายเส้นนี้ ในภาพขวา → จุดปลาย บรรทัด 18 บรรทัด ช่องว่างกับส่วนโค้ง เล็กเกินกว่าจะเห็นที่มาตรานี้ ขยายเส้นตรงหนึ่งเส้น แนวตั้งขยายมากกว่าแนวนอน 25 เท่า 0.019 ส่วนโค้งในแบบ (เส้นประ) เส้นตรงหนึ่งบรรทัด ยาว L = 1.74 มม. ช่องว่างกลางเส้น 0.019 มม. ไม่เกินความคลาดเคลื่อน 0.02 ช่องว่าง ≈ L 2 8 r L ≤ 8 × 20 × 0.02 = 1.79 จำนวนเส้น = 31.42 1.79 = 17.6 → 18 0.02 มม. → 18 บรรทัด 0.002 มม. → 56 บรรทัด ผิวโค้งอิสระทำได้เฉพาะเส้นตรง ความคลาดเคลื่อนที่ละเอียดเกินพิกัดของงานทำให้โปรแกรมยาวและเครื่องเดินช้า ส่วนโค้งในระนาบหลักให้โพสต์โปรเซสเซอร์เขียนเป็น G02 G03 ด้วย I J K เมื่อเครื่องรับได้
รูปที่ 29.3 ส่วนโค้งหนึ่งบรรทัดกับเส้นตรงหลายบรรทัด จำนวนบรรทัดขึ้นกับความคลาดเคลื่อนที่ตั้งใน CAM

29.4.2 ยาวไปผิวเป็นเหลี่ยม — สั้นไปเครื่องสะดุด

ความยาวของเส้นตรงแต่ละท่อนขึ้นอยู่กับรัศมีความโค้ง rr และค่าความคลาดเคลื่อน (Tolerance) ที่ตั้งใน CAM โดยระยะเบี่ยงเบนสูงสุดระหว่างเส้นตรงความยาว LL กับส่วนโค้งรัศมี rr มีค่าประมาณ L2/(8r)L^2 / (8r) ทำให้คำนวณความยาวสูงสุด Lmax⁡L_{\max} ของเส้นตรงแต่ละท่อนได้จาก:

Lmax⁡≈8×r×ToleranceL_{\max} \approx \sqrt{8 \times r \times \text{Tolerance}}

ตัวอย่างเช่น ส่วนโค้งรัศมี 20 มม. ที่ตั้งค่าความคลาดเคลื่อนไว้ 0.02 มม. ความยาวเส้นตรงแต่ละท่อนจะยาวได้ไม่เกิน 8×20×0.02≈1.79 มม.\sqrt{8 \times 20 \times 0.02} \approx 1.79\text{ มม.} สำหรับส่วนโค้ง 90° (ความยาวเส้นรอบวง 31.4 มม.) จะต้องใช้โค้ดทั้งหมด 18 บรรทัด แต่หากบีบความคลาดเคลื่อนลง 10 เท่าเหลือ 0.002 มม. ความยาวเส้นตรงจะสั้นลง และต้องใช้เส้นตรงสั้นเพิ่มขึ้นเป็น 10≈3.16 เท่า\sqrt{10} \approx 3.16\text{ เท่า} หรือประมาณ 56 บรรทัด

การตั้งค่าความละเอียดส่งผลต่อการทำงานจริง 2 ด้าน:

  • หากแตกเป็นเส้นตรงยาวเกินไป (ตั้งค่า Tolerance หยาบ): ผิวงานส่วนโค้งจะเห็นเป็นเหลี่ยมชัดเจน (Faceting) ชิ้นงานไม่ได้รูปทรงตามแบบ
  • หากแตกเป็นเส้นตรงสั้นมากเกินความจำเป็น (ตั้งค่า Tolerance ละเอียดเกินเหตุ): ส่งผลเสียทางเทคนิค 3 ประการ:
  1. เครื่องจักรตัดงานกระตุกและเดินช้ากว่าค่า F ที่ตั้งไว้: เมื่อความเร็วในการประมวลผลบล็อกคำสั่ง (Block Processing Time: BPT) ของชุดควบคุมอ่านและคำนวณการเคลื่อนที่ล่วงหน้าไม่ทัน เกิดภาวะข้อมูลป้อนไม่ทัน (Data starvation) ตามที่อธิบายในบทที่ 24 และบทความโปรแกรมจาก CAM เดินช้ากว่าที่ประเมิน
  2. ขนาดไฟล์โปรแกรมใหญ่เกินความจุหน่วยความจำของเครื่องจักร: ไฟล์อาจมีขนาดหลายสิบเมกะไบต์ จนไม่สามารถโหลดลงหน่วยความจำของ CNC ได้โดยตรง ต้องอาศัยการรันผ่านระบบส่งข้อมูลภายนอก (DNC) หรือการ์ดความจำ
  3. เกิดสัญญาณเตือนตัดเนื้อเกิน (Gouging Alarm) เมื่อเปิดใช้ G41: หากเปิดใช้การชดเชยรัศมีมีดบนเส้นตรงที่มีความยาวสั้นกว่ารัศมีของเครื่องมือในมุมด้านใน ชุดควบคุมจะไม่สามารถหาจุดตัดชดเชยได้และจะฟ้อง Alarm ทันที ตามที่อธิบายในบทที่ 13 งานกัดผิวโค้ง 3 มิติจึงต้องเลือกใช้รูปแบบ Computer เสมอ

แนวทางแก้ไข: หากเครื่องจักรรองรับการเดินส่วนโค้งระนาบ ควรเปิดฟังก์ชันฟิลเตอร์ใน CAM (Arc Filtering / Tolerance Filter) ให้รวมเส้นตรงสั้นบนระนาบ G17 แปลงกลับเป็นคำสั่ง G02/G03 และตั้งค่าโพสต์โปรเซสเซอร์ให้เขียนเป็นรูปแบบจุดศูนย์กลางส่วนโค้ง I J K แทนรูปแบบรัศมี R เพื่อป้องกันปัญหาการตัดส่วนโค้งที่โตเกินครึ่งวงกลมหรือวงกลมเต็มวง ตามคำแนะนำในบทที่ 8

29.5 รายการตรวจสอบก่อนเดินเครื่องจริง

รายการตรวจสอบต่อไปนี้เป็นการขยายแนวทางการตรวจโปรแกรมจากบทที่ 19 เพื่อให้เหมาะกับโปรแกรมจาก CAM ที่มีความยาวมากจนไม่สามารถไล่ตรวจทีละพิกัดได้:

ตารางที่ 29.4 รายการตรวจสอบโปรแกรมจาก CAM ก่อนปล่อยเดินเครื่อง
รายการที่ต้องตรวจ วิธีการตรวจสอบ ผลกระทบหากเกิดข้อผิดพลาด
หมายเลขโปรแกรมและรุ่นของแบบงาน อ่านหัวโปรแกรม เทียบกับใบสั่งผลิตและฉบับแก้ไขของ Drawing ตัดงานผิดเวอร์ชัน ได้ชิ้นงานรุ่นเก่าที่ถูกยกเลิกแล้ว
หน่วยวัดระบบมิลลิเมตรหรือนิ้ว ตรวจคำสั่ง G21 (มม.) หรือ G20 (นิ้ว) ในบรรทัดความปลอดภัย ขนาดชิ้นงานผิดเพี้ยนไป 25.4 เท่า
ระบบพิกัดจุดศูนย์ชิ้นงาน อ่านคำสั่ง G54–G59 ที่ส่วนต้นของแต่ละเครื่องมือ เทียบกับตำแหน่งเซ็ตงานจริง กัดงานผิดตำแหน่ง หรือเครื่องมือวิ่งชนปากกาจับงาน
หมายเลขเครื่องมือ (T), ค่าความยาว (H) และค่ารัศมี (D) เทียบรายการเครื่องมือในหัวโปรแกรมกับใบตั้งเครื่องและตาราง Offset เครื่องมือชนชิ้นงาน หรือขนาดผิดเพี้ยน
รูปแบบการชดเชยรัศมีมีด อ่านหมายเหตุในหัวโปรแกรม ยืนยันว่าตาราง D ต้องใส่รัศมีเต็ม (Control) หรือใส่ศูนย์ (Wear) ขนาดชิ้นงานผิดพลาดไปเท่ากับรัศมีของมีดตัดต่อด้าน
การเคลื่อนที่เร็วเข้าหางานครั้งแรก อ่านลำดับคำสั่ง G00 และ G43 ตั้งแต่เริ่มจนถึงระดับผิวงาน เครื่องมือวิ่งทแยงชนแคลมป์จับยึดหรือขอบชิ้นงานดิบ
ระดับความสูงปลอดภัย (Clearance Plane) ตรวจสอบเส้นทางใน Backplot เทียบกับความสูงของแคลมป์และน็อตฟิกซ์เจอร์จริง เครื่องมือชนสิ่งกีดขวางขณะเคลื่อนที่เร็วข้ามตำแหน่ง
ระดับความลึกต่ำสุดในแกน Z (Lowest Z) ตรวจสอบค่าพิกัด Z ต่ำสุดใน Backplot เทียบกับแบบงานและความยาวจับยึดของมีด กัดทะลุชิ้นงานลงบนโต๊ะเครื่อง หรือด้ามมีด/คอลเล็ตชนชิ้นงาน
ความเร็วรอบ (S) และอัตราป้อน (F) ตรวจสอบค่า S และ F ของแต่ละเครื่องมือ เทียบกับวัสดุงานและชนิดคมตัด เครื่องมือไหม้ คมตัดหัก หรือเครื่องเดินช้าเกินจริง
การยกเลิกคำสั่งค้างสภาวะ (Modal Cancel) ตรวจสอบว่าท้ายเครื่องมือแต่ละตัวมี G80, G40 และยกแกน Z พ้นงานก่อนเปลี่ยนเครื่องมือ เครื่องมือตัวถัดไปเริ่มทำงานด้วยสถานะตกค้างที่ไม่ได้ตั้งใจ
รหัสคำสั่งแปลกปลอม ค้นหารหัส G หรือ M แปลกๆ ที่เครื่องจักรรุ่นนี้ไม่มีหรือไม่รองรับ เครื่องหยุดชะงักกลางคันด้วย Alarm หรือระบบเสริมไม่ทำงาน

29.5.1 การใช้ Backplot ตรวจสอบโปรแกรม

ระบบ Backplot ของเว็บไซต์นี้อ่านรหัส G ตามกฎของชุดควบคุมแบบ Fanuc สามารถวาดเส้นทางเดินมีดจำลอง พร้อมแสดงตัวตรวจจับข้อผิดพลาด (Syntax & Logic Validator) ช่วยชี้จุดที่น่าสงสัยในโปรแกรมจากโพสต์โปรเซสเซอร์ได้โดยอัตโนมัติ:

ตารางที่ 29.5 ข้อผิดพลาดจากโพสต์โปรเซสเซอร์ที่ตัวตรวจของ Backplot สามารถตรวจพบ
สัญญาณเตือนที่ตัวตรวจ Backplot ชี้ สาเหตุที่มักเกิดขึ้นบ่อย
สั่ง G00 ลดระดับแกน Z พร้อมกับการเคลื่อนที่แกน X และ Y โพสต์โปรเซสเซอร์รวมบล็อกการเคลื่อนที่เข้าหางานไว้ในบรรทัดเดียวกัน
มีคำสั่ง G00 วิ่งด้านข้างที่ระดับความสูงต่ำกว่าผิวงาน ตั้งค่าความสูงปลอดภัย (Retract/Clearance) ใน CAM ต่ำเกินไป หรือเลือกโหมดเชื่อมโยงเส้นทางแบบตรง
ระยะจากศูนย์กลางถึงจุดเริ่มและจุดปลายส่วนโค้งไม่เท่ากัน ความละเอียดของทศนิยมในโพสต์โปรเซสเซอร์ไม่เพียงพอ หรือมีการพิมพ์แก้ตัวเลขด้วยมือ
หมายเลขค่าชดเชย G43 H_ ไม่ตรงกับหมายเลขเครื่องมือ T_ กำหนดหมายเลข H ในคลังเครื่องมือของ CAM ไม่ตรง หรือคัดลอกบล็อกคำสั่งมาจากเครื่องมืออื่น
พิกัดตัวเลขไม่มีจุดทศนิยมกำกับ มีการแก้ไขโค้ดด้วยมือ หรือการตั้งค่า Format Output ในโพสต์โปรเซสเซอร์ผิดพลาด
ค่า F มีตัวเลขต่ำผิดปกติในโหมด G94 (เช่น F0.15) นำค่าอัตราป้อนต่อรอบ (mm/rev) จากคลังเครื่องมือมาใช้ในโหมดตัดต่อนาที (mm/min)
คำสั่งหยุดสปินเดิล M05 อยู่ในบรรทัดเดียวกับการเคลื่อนที่ตัดงาน การจัดเรียงลำดับบล็อกคำสั่งของโพสต์โปรเซสเซอร์ไม่ถูกต้อง
สั่งเปลี่ยนเครื่องมือตัวใหม่โดยที่คำสั่งเจาะยังไม่ถูกยกเลิก โพสต์โปรเซสเซอร์ลืมใส่คำสั่งยกเลิกวัฏจักร G80 ที่ท้ายกระบวนการเจาะ

อย่างไรก็ตาม ระบบจำลองเส้นทางบนจอภาพไม่สามารถรับรู้ค่าตัวเลขจริงในตารางออฟเซ็ต ความสูงของแคลมป์หน้างาน และตำแหน่งศูนย์งานบนโต๊ะเครื่องจักรได้ สิ่งเหล่านี้จึงยังต้องอาศัยการอ่านตรวจทานของช่างและการเดินทดสอบโปรแกรมตามขั้นตอนในบทที่ 21 เสมอ

29.6 ปรับแก้หน้าเครื่อง หรือกลับไปแก้ใน CAM

เมื่อพบจุดบกพร่องระหว่างการตั้งเครื่อง การพิมพ์แก้โค้ดที่หน้าจอของชุดควบคุมทำได้เร็ว แต่สิ่งที่แก้ในข้อความของโปรแกรมจะหายไปเมื่อโพสต์โปรแกรมใหม่จาก CAM สิ่งที่แก้ได้จึงแบ่งเป็นสามระดับ

  1. แก้ที่เครื่องโดยไม่แตะโปรแกรม คือค่าในตารางค่าชดเชยและสวิตช์ override ค่าเหล่านี้อยู่ที่เครื่อง ไม่หายเมื่อโพสต์ใหม่
  2. แก้ข้อความในโปรแกรมได้ แต่ต้องส่งกลับไปแก้ใน CAM คือการแก้ที่ไม่เปลี่ยนเส้นทางของเครื่องมือ เช่น ค่า S F หมายเลข H D และ M01 ถ้าไม่แก้ใน CAM ด้วย ข้อผิดพลาดเดิมจะกลับมาในการโพสต์ครั้งต่อไป
  3. แก้ใน CAM เท่านั้น คือทุกอย่างที่เปลี่ยนเส้นทางของเครื่องมือ การแก้ตัวเลขพิกัดด้วยมือในโปรแกรมที่มีหลายร้อยบรรทัดพลาดได้ง่าย และ CAM ไม่รู้ว่าเส้นทางเปลี่ยน
ตารางที่ 29.6 สิ่งที่พบระหว่างตั้งเครื่องและที่ที่ต้องแก้
สิ่งที่พบ แก้ที่ไหน
ขนาดชิ้นงานคลาดไปเล็กน้อย เช่น 0.02 มม. ค่าสึกหรอในตารางค่าชดเชย (ระดับ 1)
เครื่องมือสั่นหรือผิวไม่ดีระหว่างลองชิ้นแรก ลด Feedrate override หรือ Spindle override ระหว่างลอง (ระดับ 1) แล้วแก้ค่า S F ในโปรแกรมเป็นค่าที่ใช้ได้ (ระดับ 2)
หมายเลข H หรือ D ไม่ตรงกับตารางค่าชดเชยของเครื่อง แก้หมายเลขในโปรแกรม แล้วแก้คลังเครื่องมือใน CAM (ระดับ 2)
ต้องการหยุดตรวจหลังเครื่องมือบางตัว แทรก M01 (ระดับ 2)
ความสูงปลอดภัยไม่พ้นแคลมป์ CAM (ระดับ 3) ค่านี้อยู่ในทุกการยกและเคลื่อนที่ข้ามในเส้นทาง ไม่ใช่แค่บรรทัดแรก
ต้องลดความลึกตัดหรือระยะเลื่อนข้าง CAM (ระดับ 3)
เนื้อที่เหลือจากการกัดหยาบมากหรือน้อยไป ค่าเผื่อเนื้อ (Stock to Leave) ใน CAM (ระดับ 3)
ต้องใช้เครื่องมือขนาดอื่น CAM (ระดับ 3) ดูกรณีด้านล่าง
ต้องสลับลำดับงานหรือลำดับเปลี่ยนเครื่องมือ CAM (ระดับ 3)

กรณีการเปลี่ยนขนาดเครื่องมือตัด: เช่น เดิมใน CAM กำหนดใช้ดอกเอ็นมิลล์ Ø10 แต่ในสโตร์หน้างานมีเฉพาะดอก Ø12 ไม่ควรแก้ด้วยค่า D ในตารางค่าชดเชยแบบ Wear เพราะทางเดินมีดรอบมุมด้านในและการกินเนื้อที่ CAM คำนวณไว้ถูกออกแบบมาสำหรับดอก Ø10 มีดที่โตขึ้นจะเฉือนกินผนังชิ้นงานส่วนอื่นเสียหาย ต้องกลับไปเลือกขนาดเครื่องมือจริงใน CAM แล้วสั่งคำนวณ Toolpath และโพสต์โปรแกรมใหม่เท่านั้น

ทุกครั้งที่มีการแก้ไขโปรแกรมที่หน้าเครื่อง ช่างต้องเขียนหมายเหตุบันทึกไว้ในหัวโปรแกรมอย่างชัดเจน เช่น (EDITED AT MACHINE 2026-11-01: T3 H2 TO H3) พร้อมลงบันทึกในใบสั่งงาน เพื่อให้วิศวกรผู้รับผิดชอบนำการแก้ไขนั้นไปอัปเดตไฟล์ต้นฉบับใน CAM ต่อไป

29.7 ตัวอย่าง: หาข้อผิดพลาดในโปรแกรมจาก CAM

โปรแกรมตัวอย่างต่อไปนี้จำลองรูปแบบโครงสร้างที่โพสต์ออกจาก CAM สำหรับแผ่นเหล็กขนาด 100 × 80 × 20 มม. มีขั้นตอนปาดหน้าผิวบน, กัดขอบนอกพร้อมทำมุมโค้ง R10 ลึก 5 มม. และเจาะรูทะลุ Ø8.5 จำนวน 4 รู กำหนดจุดศูนย์งาน G54 ไว้ที่กึ่งกลางผิวบน ใบเซ็ตอัพระบุว่าโปรแกรมใช้ระบบชดเชยรัศมีแบบ Wear โดยกำหนดให้ใส่ค่าในช่อง D12 = 5.000 ตามขนาดรัศมีของดอก Ø10

ในโปรแกรมและใบตั้งเครื่องนี้มีข้อผิดพลาดแฝงอยู่ทั้งหมด 6 ข้อ ให้ลองตรวจหาข้อผิดพลาดด้วยตนเองก่อนเปิดดูตารางเฉลย

%
O2901 (PLATE-A REV B)
(POSTED 2026-10-29  Fanuc 3-AXIS VMC)
(G54 X0 Y0 = PART CENTER  Z0 = FINISHED TOP)
(T1  D50 FACE MILL   H1)
(T2  D10 END MILL    H2  D12  WEAR COMP)
(T3  D8.5 DRILL      H3)
N10 G90 G94 G17 G49 G40 G80
N15 G21
N20 G91 G28 Z0.
N25 G90
(T1 FACE MILL D50)
N30 T1 M06
N35 G54 G00 X-85. Y-20. S1200 M03
N40 G43 H1 Z15. M08
N45 Z3.
N50 G01 Z0. F800.
N55 X85. F600.
N60 Y20.
N65 X-85.
N70 G00 Z15. M09
N75 M05
N80 G91 G28 Z0.
N85 G90 M01
(T2 END MILL D10  CONTOUR  WEAR COMP)
N100 T2 M06
N105 G54 G00 X0. Y0. S3200 M03
N110 G43 H2 Z15. M08
N115 G00 X-70. Y-40. Z-5.
N120 G01 G41 D12 X-55. Y-30. F400.
N125 Y30.
N130 G02 X-40. Y45. I15. J0.
N135 G01 X40.
N140 G02 X55. Y30. I0. J-15.
N145 G01 Y-30.
N150 G02 X40. Y-45. I-1.5 J0.
N155 G01 X-40.
N160 G02 X-55. Y-30. I0. J15.
N165 G01 G40 X-70. Y-40.
N170 G00 Z15. M09
N175 M05
N180 G91 G28 Z0.
N185 G90 M01
(T3 DRILL D8.5)
N200 T3 M06
N205 G54 G00 X-35. Y-25. S1500 M03
N210 G43 H2 Z15. M08
N215 G99 G81 X-35. Y-25. Z-23 R2. F0.15
N220 X35.
N225 Y25.
N230 X-35.
N235 G80
N240 G00 Z15. M09
N245 M05
N250 G91 G28 Z0.
N255 G28 X0. Y0.
N260 G90
N265 M30
%

ดูเครื่องมือเดินตั้งแต่ N10 ถึง N265 ได้ในตัวจำลองการตัด และBackplot

ตารางที่ 29.7 เฉลยข้อผิดพลาดทั้ง 6 ข้อของโปรแกรม O2901
ลำดับ บรรทัดที่พบ รายละเอียดข้อผิดพลาด ผลกระทบที่เกิดขึ้นหน้าเครื่อง วิธีการตรวจพบ
1 N115 คำสั่ง G00 เคลื่อนที่แกน X Y พร้อมดิ่งแกน Z ลงลึกถึง Z-5. เครื่องมือวิ่งทแยงตัดผ่านมุมชิ้นงานที่ระดับใต้ผิว ชนกระแทกชิ้นงานด้วยความเร็ว Rapid ตัวตรวจ Backplot แจ้งเตือน และตรวจพบจากการอ่านบล็อกเคลื่อนที่แรก
2 N150 พิมพ์ค่าพารามิเตอร์ส่วนโค้งผิดเป็น I-1.5 (ค่าที่ถูกต้องคือ I-15.) ตำแหน่งจุดศูนย์กลางส่วนโค้งผิดพลาด ชุดควบคุมจะล็อกด้วย Alarm หรือตัดงานเบี้ยวรูปทรง ตัวตรวจ Backplot แจ้งเตือน และสังเกตเห็นรูปทรงไม่บรรจบปิดรูป
3 N210 เรียกใช้ค่าชดเชยความยาวผิดเป็น G43 H2 ทั้งที่เป็นเครื่องมือ T3 นำค่าความยาวของดอกเอ็นมิลล์มาใช้กับดอกสว่าน ความลึกเจาะจะผิดพลาดเท่าผลต่างความยาว ตัวตรวจ Backplot แจ้งเตือน และตรวจพบจากการเทียบหมายเลขเครื่องมือกับหัวโปรแกรม
4 N215 ตัวเลขพิกัดความลึก Z-23 ไม่มีจุดทศนิยมกำกับ ชุดควบคุม Fanuc จะตีความเป็น Z−0.023 มม. ทำให้ดอกสว่านแทบไม่แตะผิวชิ้นงาน ตัวตรวจ Backplot แจ้งเตือน และสังเกตจากช่วงความลึกตัดแกน Z ของเครื่องมือ
5 N215 กำหนดอัตราป้อน F0.15 ในโหมดตัดต่อนาที (G94) อัตราป้อนช้าเพียง 0.15 มม./นาที ดอกสว่านแทบหยุดนิ่ง (ค่าจริงคือ 0.15 มม./รอบ ที่ S1500 ต้องเป็น F225.) ตัวตรวจ Backplot แจ้งเตือนอัตราป้อนต่ำผิดปกติ
6 ใบตั้งเครื่อง ระบุให้ป้อนค่า D12 = 5.000 ในโปรแกรมที่โพสต์เป็นระบบ Wear จุดศูนย์กลางมีดจะถูกชดเชยออกไปห่างขอบงานถึง 10 มม. ขอบนอกชิ้นงานจะโตขึ้นด้านละ 5 มม. อ่านหัวโปรแกรม WEAR COMP เทียบกับใบตั้งเครื่อง (ระบบจำลองบนจอไม่รู้ค่าในตาราง)

ข้อผิดพลาดข้อที่ 1 ถึง 5 ระบบตรวจจับของ Backplot สามารถชี้เป้าได้แม่นยำ แต่ ข้อที่ 6 ซึ่งทำให้ขนาดชิ้นงานผิดไปเท่ารัศมีเครื่องมือโดยไม่เกิด Alarm ใดๆ สามารถตรวจพบได้จากการอ่านหัวโปรแกรมและใบตั้งเครื่องโดยคนเท่านั้น นี่คือเหตุผลว่าทำไมการอ่านตรวจด้วยตาจึงต้องทำควบคู่กับระบบจำลองเสมอ

29.8 ข้อผิดพลาดที่พบบ่อย

ตารางที่ 29.8 ข้อผิดพลาดที่พบบ่อยของโปรแกรมจาก CAM
ข้อผิดพลาดที่เกิดขึ้น ผลเสียตามมา แนวทางการป้องกัน
ใช้โพสต์โปรเซสเซอร์ของเครื่องรุ่นอื่น ลำดับการเปลี่ยนมีดหรือรหัส M ผิดพลาด เกิด Alarm หยุดกลางคัน จัดทำโพสต์โปรเซสเซอร์เฉพาะประจำแต่ละเครื่อง และระบุชื่อเครื่องในหัวโปรแกรม
ไม่ทราบว่าโปรแกรมใช้ระบบชดเชยแบบใด ขนาดชิ้นงานผิดเพี้ยนไปเท่ากับรัศมีของมีดตัดต่อด้าน ระบุระบบชดเชยในหัวโปรแกรมและใบตั้งเครื่องอย่างชัดเจน และยึดระบบเดียวกันทั้งโรงงาน
หมายเลขเครื่องมือใน CAM ไม่ตรงกับแม็กกาซีน เครื่องจักรหยิบเครื่องมือตัดผิดตัวมาใช้งาน บันทึกคลังเครื่องมือใน CAM ให้ตรงกับช่องพ็อตจริง และตรวจทานหัวโปรแกรมทุกครั้ง
ตั้งความสูงปลอดภัยใน CAM ต่ำกว่าแคลมป์ เครื่องมือเคลื่อนที่เร็วชนแคลมป์จับยึดระหว่างย้ายตำแหน่ง นำแคลมป์และฟิกซ์เจอร์เข้าไปร่วมจำลองใน CAM และตั้งระยะความปลอดภัยจากสิ่งกีดขวางจริง
แตกเป็นเส้นตรงสั้นมากเกินความจำเป็น เครื่องจักรตัดงานกระตุก เดินช้ากว่าอัตราป้อนจริง ไฟล์ใหญ่เกินหน่วยความจำ ตั้งค่า Tolerance ให้พอดีกับพิกัดความเผื่อของงาน และเปิดฟังก์ชันรวมเส้นตรงเป็นส่วนโค้ง
นำค่าอัตราป้อนต่อรอบมาใช้ในโหมดต่อนาที เครื่องมือแทบไม่ขยับ หรือในทางตรงข้ามอาจวิ่งเร็วเกินจนคมตัดแตกหัก ตรวจสอบโหมด G94 หรือ G95 ให้สัมพันธ์กับค่าในคลังเครื่องมือก่อนสั่งโพสต์
แก้ไขพิกัดทางเดินมีดที่หน้าเครื่องโดยไม่แก้ใน CAM การแก้ไขสูญหายเมื่อมีการโพสต์งานใหม่ และข้อผิดพลาดเดิมจะกลับมาอีก แก้ไขที่ต้นฉบับใน CAM เสมอ และบันทึกประวัติการแก้ไขในหัวโปรแกรม
พึ่งพาระบบจำลองบนจอภาพโดยไม่อ่านโค้ด ตรวจไม่พบข้อผิดพลาดที่อยู่นอกตัวโปรแกรม เช่น ค่าที่ตั้งผิดในตาราง Offset อ่านตรวจสอบส่วนที่โพสต์โปรเซสเซอร์เขียนขึ้นทุกครั้ง และเดินทดสอบตามขั้นตอนในบทที่ 21

สรุป

  • CAM คำนวณทางเดินมีด ส่วนโพสต์โปรเซสเซอร์เขียนโค้ด NC: ข้อบกพร่องด้านรูปแบบคำสั่งต้องปรับแก้ที่โพสต์โปรเซสเซอร์ให้จบ และทุกเครื่องจักรควรมีโพสต์โปรเซสเซอร์เฉพาะของตนเอง
  • มุ่งตรวจส่วนที่โพสต์โปรเซสเซอร์เป็นผู้สร้าง (Envelope Code): ได้แก่ หัวโปรแกรม, บรรทัดเตรียมความปลอดภัย, บล็อกเรียกเครื่องมือและการวิ่งเร็วเข้าหางานครั้งแรก และส่วนท้ายการทำงานของเครื่องมือ ส่วนทางเดินเครื่องมือตัดเฉือนให้นำไปตรวจสอบในระบบจำลอง Backplot
  • การชดเชยรัศมีมีดมี 3 รูปแบบหลัก: แบบ Computer (ไม่มี G41), แบบ Control (ตาราง D ใส่ค่ารัศมีเต็ม) และแบบ Wear (ตาราง D เริ่มต้นที่ศูนย์) โดยแบบ Wear นิยมใช้มากที่สุดและเกิดความผิดพลาดได้ง่ายที่สุด ต้องระบุในหัวโปรแกรมเสมอ
  • เส้นตรงสั้นจำนวนมากทำให้เกิดปัญหาข้อมูลป้อนไม่ทัน (Data starvation): ทำให้เครื่องจักรเดินสะดุดและไฟล์ใหญ่เกินความจุ หากทำได้ควรเปิดฟังก์ชันฟิลเตอร์เพื่อรวมเส้นตรงเป็นคำสั่งส่วนโค้ง G02/G03 รูปแบบ I J K
  • รายการตรวจก่อนเดินเครื่อง: ตรวจหน่วยวัด, จุดศูนย์งาน, หมายเลข T H D, ระบบชดเชย, การเคลื่อนที่เร็วเข้าหางานครั้งแรก, ความสูงปลอดภัย, พิกัด Z ต่ำสุด, ความเร็วรอบ และอัตราป้อน
  • แก้ไขที่หน้าเครื่องได้เฉพาะค่าพารามิเตอร์: ห้ามแก้พิกัดทางเดินมีดที่หน้าตู้ควบคุม และทุกการแก้ไขต้องถูกบันทึกกลับไปอัปเดตในโมเดล CAM ต้นทางเสมอ

พบข้อผิดพลาดหรือมีข้อเสนอแนะ? ส่งอีเมลแจ้งเรา