การใช้งานเครื่องซีเอ็นซีแบบกัด CNC milling ด้วย Adtech 4640 cnc controller

การใช้งานเครื่องซีเอ็นซีแบบกัด CNC milling ด้วย Adtech 4640 cnc controller

อุปกรณ์และเครื่องมือ

ตอนที่่ 1 การเขียนแบบ ตัวอย่าง Solid CAM

ตอนที่ 2
หน้า monitor เป็นหน้าหลัก

ตอนที่่ 3 การ Set ตำแหน่ง Work
การกัดชิ้นงาน

CNC การแตะชิ้นงาน

CNC การ Set ตำแหน่ง work object

แตะผิวบน

การกัดชิ้นงาน รอบที่ 13000 rpm

การเก็บละเอียด

CNC กัดงาน

พื้นฐานในการเขียนโปรแกรม CNC เบื้องต้น

CNC Programming หรือ การสร้างโปรแกรมสำหรับควบคุมการทำงานเครื่องจักร CNC นั้น มี 3 วิธีหลักๆ คือ การป้อนโปรแกรมโดยตรงที่เครื่องจักร, การเขียนโปรแกรมที่คอมพิวเตอร์โดยใช้โปรแกรมประเภท Text Editor แล้วนำไปโหลดเข้าเครื่องจักร CNC และวิธีการใช้ CAD/CAM Software เข้าช่วย.

การป้อนโปรแกรมหน้าเครื่อง

ส่วนมากใช้ในกรณีที่ชิ้นงานมีรูปร่างไม่ซับซ้อน เป็นเส้นตรง ไม่ต้องคำนวณอะไรมาก และในกรณีที่แก้ไขโปรแกรมนิดหน่อย.

ข้อดี ของวิธีนี้คือ รวดเร็ว, ไม่ต้องใช้ Software ที่มีราคาค่อนข้างสูง

ข้อเสีย คือ ผู้เขียนต้องมีความชาญและเข้าใจ code ของโปรแกรมเป็นอย่างดี, เสี่ยงต่อการป้อนข้อมูลผิด

 ดังนั้นวิธีนี้ควรใช้ด้วยความระมัดระวัง ควรมีการตรวจสอบโปรแกรมให้ละเอียด ก่อนเริ่มทำงานจริง

การใช้โปรแกรมประเภท text editor

เช่น notepad, Microsoft word ในการเขียนโปรแกรม  สำหรับวิธีนี้ก็คล้ายกับแบบแรก เพียงแต่
เปลี่ยนวิธีจากการป้อนหน้าเครื่องมาเป็นการสร้างในคอมพิวเตอร์ก่อน แล้วค่อยนำไปโหลดเข้าเครื่อง

ข้อดี เหมือนกับการป้อนหน้าเครื่องแต่อาจจะต้องเพิ่มขั้นตอนการโหลดโปรแกรมเข้าเครื่องขึ้นมา, การป้อนที่หน้าคอมพิวเตอร์ความผิดพลาดอาจจะน้อยกว่า เพราะการป้อนข้อมูล การ copy อะไรต่างๆ อาจทำได้ง่ายกว่า

ข้อเสีย เหมือนกับการป้อนหน้าเครื่อง

 วิธีนี้อาจใช้ในกรณีที่เราไม่มี Software ประเภท CAM, อาจจะเริ่มต้นที่การเขียนโปรแกรมใน text editor ก่อน จากประสบการณ์ของหลายๆ คนน่าจะเร็วกว่าและผิดพลาดน้อยกว่า หลังจากที่นำไปโหลดเข้าเครื่องถ้ามีอะไรผิดพลาด หรือต้องแก้ไขอะไรเล็กๆ น้อยๆ ค่อยทำที่หน้าเครื่อง

การใช้โปรแกรมประเภท CAM Software

วิธีนี้ใช้หลักการของการสร้างไฟล์ CAD data ขึ้นมาก่อนหลังจากนั้นจะใช้ Software ประเภท CAM (Computer Aided Manufacturing) เช่น Smart CAM, Edge Cam, UG เป็นต้น แปลงข้อมูลจาก CAD data เป็นข้อโปรแกรม CNC หลังจากนั้นก็โหลดโปแกรมเข้าเครื่องจักร
ข้อดี ของวิธีนี้คือ ชิ้นงานที่มีรูปร่างซับซ้อนสามารถทำได้รวดเร็วกว่าวิธีที่ 1 และ 2 มาก รวมทั้งความผิดพลาดก็แทบจะไม่มี (ถ้า CAD data ถูกต้อง), สามารถจำลองการรันงานจริงของโปรแกรมได้โหมด Simulation ซึ่งหากมีความผิดพลาด สามารถทำการแก้ไขได้ก่อน

ข้อเสีย คือ Software ประเภท CAD และ CAM มีราคาค่อนข้างสูง, ผู้ศึกษาควรต้องมีพื้นฐานของ G-Code, M-Code มาบ้าง เพราะถึงแม้ CAM จะเป็นโปรแกรมสำเร็จรูป ในบางขั้นตอนต้องป้อนค่าแบบ manual ด้วยเหมือนกัน เช่น ขั้นตอนการตั้งค่า tool เป็นต้น

 การเลือกใช้วิธีที่ 3 นี้ ควรเลือกใช้ Software ให้เหมาะสมกับการใช้งาน เลือก Feature เท่าที่จำเป็นเท่านั้น เพราะมีผู้จำหน่าย Software หลายาย พยามโฆษณา Feature ต่างๆ มากมายแต่การใช้งานจริงไม่กี่เปอร์เซ็นต์ ทำให้ราคาเพิ่มขึ้นมาหลายเท่าตัวกับความต้องการใช้งานจริง ไม่คุ้มค่ากับการใช้งาน สำหรับ Software บางตัวมี Trial Version หรือเวอร์ชันทดลองใช้งานก่อนโดยทั่วไปก็ประมาณ 30 วัน อาจโหลดมาทดลองใช้ดูก่อน ถ้าใช้แล้วโอเค ค่อยซื้อเวอร์ชันเต็มมาใช้งานอีกครั้ง .

ระบบแกน (Axix system) และระบบพิกัดของเครื่องจักร CNC (Coordinate System)

ก่อนที่เราจะเขียนโปรแกรม CNC เราจำเป็นต้องทำความเข้าใจกับระบบแกนและระบบอ้างอิงของเครื่องจักร cnc ก่อน

 ระบบแกนหรือระบบโคออร์ดิเนต (coordinate) ของเครื่อง cnc เป็นระบบการอ้างอิงตำแหน่งในการเคลื่อนที่ของแกนต่างๆ เพื่อให้เคลื่อนที่ไปตามตำแหน่งที่เรากำหนดไว้ในโปรแกรม

ระบบแกนของเครื่อง CNC (Axis System)

ระบบแกนของเครื่อง CNC โดยทั่วไปประกอบด้วยระบบ 2 แกน และ ระบบ 3 แกน ซึ่งจะขออธิบายในที่นี้ ส่วนระบบอื่นๆ เช่น ระบบ 5 แกนเป็นจะยังไม่ขอกล่าวถึงเพราะเป็นเทคโนโลยีอีกระดับหนึ่งและเฉพาะเครื่องอาจจะทำให้เกิดความสับสนแก่ผู้ที่พึ่งเริ่มศึกษาก็เป็นได้

ระบบ 2 แกน

ประกอบด้วยแกน X และแกน Y รูป, ระบบ 2 แกนจะพบในเครื่องกลึง CNC ทั่วไป ตามรูปแกน X จะอยู่ในแนวนอน ถ้าบริเวณจุดตัดของแกน X-Y คือ พิกัด X0,Y0 การเคลื่อนที่ในแนวแกน X ไปทางซ้าย X จะมีค่าเป็นลบ ในทางกลับกันถ้า X เคลื่อนที่ไปทางขวา X จะมีค่าเป็นบวก

แกน Y จะอยู่ในแนวตั้ง ถ้า Y เคลื่อนที่ไปด้านบน Y จะมีค่าเป็นบวก และ Y เคลื่อนที่ลงด้านล่าง Y จะมีค่าเป็นลบ

รูปที่ 1 แกนของเครื่อง CNC ในระะบ 2 แกน X-Z

ระบบ 3 แกน
ระบบ 3 แกนจะพบในเครื่องกัด (CNC Milling)  และเครื่อง Machining Center จะมีแกนที่เพิ่มเข้ามาอีกหนึ่งแกน คือ แกน Z เป็นแกนที่มีการเคลื่อนที่ในแนวดิ่งหรือแนวลึก ถ้าเคลื่อนที่ขึ้นด้านบน Z จะมีค่าเป็นบวกและถ้าเคลื่อนที่ลงด้านล่าง Z จะมีค่าเป็นลบ

แกนของเครื่อง CNC ในระบบ 3 แกน X-Y-Z

ระบบอ้างอิง (Coordinate System)

เป็นการกำหนดวิธีการอ้างอิงตำแหน่งในการเคลื่อนที่ของเครื่องจักร ซึ่งมีผลอย่างมากในการเขียนโปรแกรม CNC เพราะว่าถ้าเรากำหนดให้เครื่องอ้างอิงระบบหนึ่งแต่เราไปเขียนโปรแกรมอีกระบบหนึ่ง การเคลื่อนที่ของตำแหน่งก็จะเกิดความผิดพลาด, ระบบ Coordinate แบ่งได้ออกเป็น 2 ระบบ คือ

ระบบแบบสัมบูรณ์ (Absolute System)

การเคลื่อนที่แบบสัมบูรณ์ จากรูปด้านล่าง ตำแหนงต่างๆ คือ P1, P2, …P6. นั้นมีการอ้างอิงจากจุดเริ่มต้น (Origin) เดียวกันเสมอ

รูปที่……….. แกนของเครื่อง CNC ในระะบ 2 แกน X-Z…..

แกนของเครื่อง CNC ในระบบ 3 แกน X-Y-Z

จากรูป ….เราสามารถหาพิกัดของโปรแกรมได้ดังนี้

กำหนดให้ ที่จุด Origin X=0, Y=0

P1 = X0 Y10.0

P2 = X-15.0 Y10.0

P3 = X-15.0 Y15.0

P4 = X-40.0 Y15.0

P5 = X-40.0 Y22.5

P6 = X-45.0 Y-22.5

ข้อสังเกต

ตามตัวอย่างเป็นระบบ 2 แกน ชิ้นงานงานเป็นงานซึ่งเป็นการเขียนโปรแกรมงานกลึง จะเห็นว่าค่าในแกน Y จะเท่ากับครึ่งหนึ่งของเส้นผ่านศูนย์กลางเท่านั้น เนื่องจากตำแหน่งของจุด Origin จะอยู่ตรงแกนกลางของชิ้นงาน

ระบบแบบต่อเนื่อง (Increment System)

ระบบการเคลื่อนที่แบบต่อเนื่อง ในการเขียนโปรแกรมนั้นจะอ้างอิงจากจุดสุดท้ายไปเรื่อยจนจบตามตัวอย่างในรูป…..

จากรูป เราสามารถหาพิกัดของโปรแกรมได้ดังนี้

กำหนดให้ ที่จุด Origin X=0, Y=0

P1 = X0 Y10.0

P2 = X-15.0 Y0

P3 = X0 Y5.0

P4 = X-25 Y0

P5 = X0 Y7.5

P6 = X-45 Y0

   Code ของโปรแกรม CNC

ก่อนอื่นเรามาทำความรู้จักกับ code ต่างๆ ของโปรแกรมสำหรับ CNC Machine ก่อน โดยเฉพาะ code มาตรฐานที่จะมีในเครื่อง CNC Machine ทุกเครื่อง ซึ่งจะมีแตกต่างๆ กันออกไปบ้างตามชนิดของเครื่องจักร, ผู้ผลิตเครื่องจักร ซึ่งควรศึกษากับคู่มือของเครื่องจักรนั้นๆ ตอนปฏิบัติงานจริงอีกครั้ง. สำหรับในเครื่องจักร CNC จะแบ่ง code โปรแกรมออกเป็น 2 ชุด คือ G-code และ M-code

ชุดคำสั่ง G-code จะเป็นคำสั่งควบคุมการเคลื่อนที่ในลักษณะต่างๆ ดังนี้

ชุดคำสั่ง G-code จะเป็นคำสั่งควบคุมการเคลื่อนที่ในลักษณะต่างๆ ดังนี้

G00 การเดินเป็นแนวเส้นตรง เป็นการเคลื่อนที่แบบเร็ว ใช้ในกรณีต้องการให้เคลื่อนที่จากจุดหนึ่งไปยังอีกจุดหนึ่งอย่ารวดเร็ว ในลักษณะที่ไม่มีการตัดชิ้นงาน, ความเร็วในการเคลื่อนที่สามารถควบคุมได้โดย Rapid

G01 เป็นการเคลื่อนที่แบบเส้นตรง ส่วนมากใช้ในการลักษณะการกินชิ้นงาน สามารถควบคุมความเร็วโดย Speed และ Feed

G02 การเคลื่อนที่เป็นแนวโค้งตามรัศมี มีทิศทางตามเข็มนาฬิกา

G03 การเคลื่อนที่ในแนวเส้นโค้งตามรัศมี มีทิศทางทวนเข็มนาฬิกา

G04 เป็นคำสั่งให้หยุดทำงานชั่วขณะในลักษณะของการหน่วง (Dwell)

G09 หยุดการทำงาน

G10 การ Setting Data ของการเดินด้วยความเร็ว

G11 การ Setting Data ของการเดินเป็นเส้นตรง

G12 การเดินเส้นโค้งแบบตามเข็มนาฬิกา

G13 การเดินเส้นโค้งแบบทวนเข็มนาฬิกา

G15 การยกเลิกคำสั่งเดินเส้นโค้ง

G16 การเดินโดยใช้คำสั่งการเดินโค้ง

G17 การเลือกพื้นผิวบนระนาบ X Y

G18 การเลือกพื้นผิวบนระนาบ ZX

G19 การเลือกพื้นผิวบนระนาบ ZY

G20 เป็นการกำหนดหน่วยวัดระบบนิ้ว (ค่าที่ป้อนเป็นนิ้ว)

G21 เป็นการกำหนดหน่วยวัดเป็นระบบเมตริก (ค่าที่ป้อนเป็นมิลลิเมตร)

G23 การยกเลิกหรือปิดตรวจสอบระยะเผื่อของชิ้นงาน

G25 ปิดการตรวจสอบวัดเพลาของหัวกัด

G26 เปิดการตรวจสอบวัดเพลาของหัวกัด

G27 การตรวจสอบการกลับสู่จุดที่ใช้อ้างอิง

G28 การกลับสู่จุดที่ใช้ในการอ้างอิงของเครื่อง

G29 การกลับจุดที่ใช้อ้างอิงของเครื่อง

G30 การกลับจุดอ้างอิงของเครื่องจากการกำหนดข้อมูลในเครื่อง

G31 การข้ามคำสั่งเกี่ยวกับจุดอ้างอิง

G33 การเดินกัดทำเกลียว

G40 การยกเลิกค่าชดเชยรัศมีของ Tool

G41 การกำหนดค่าชดเชยรัศมีของ Tool (offset) ไปทางด้านซ้าย

G42 การกำหนดค่าชดเชยรัศมีของ Tool (offset) ไปทางด้านขวา

G43 การกำหนดความยาวของมีดกัดที่มีค่าบวก

G44 การกำหนดความยาวของมีดกัดที่มีค่าลบ

G49 ยกเลิกค่าความยาวของมีดกัด

G50 ยกเลิกมาตราส่วน

G51 กำหนดมาตราส่วน

G54 กำหนดตำแหน่งงานในข้อมูลที่ 1

G55 กำหนดตำแหนงงานในข้อมูลที่ 2

G56 กำหนดตำแหนงงานในข้อมูลที่ 3

G57 กำหนดตำแหนงงานในข้อมูลที่ 4

G58 กำหนดตำแหนงงานในข้อมูลที่ 5

G59 กำหนดตำแหนงงานในข้อมูลที่ 6

G63 เลือกหมวดของการทำเกลียวแบบ Tap

G64 เลือกขนาดของกาตัดเฉือนด้วยด้วยการกัด

G65 การเรียก Marco โปรแกรมมาใช้งาน

G67 ยกเลิก Macro โปรแกรม

G68 การลอกแบบงานโดยหมุนรอบจุดอ้างอิง

G69 ยกเลิกการลอกแบบงาน

G73 การเจาะแบบหยุดให้คายเศษ

G74 การทำเกลียวด้วยการ Tap

G76 การคว้านรูปแบบละเอียด

G80 ยกเลิกการเจาะ การคว้านในแบบต่างๆ

G81 การเจาะแบบไม่ยก (Spot Drilling)

G82 การเจาะแบบไม่ยก (Counter Boring)

G83 การเจาะลึกแบบยกคายเศษ

G84 การทำเกลียวในแบบ Tapping

G85-89 การคว้านรูปแบบคว้านหยาบ

G90 มีดเคลื่อนบนจุดใดๆ วัดระยะจากจุดศูนย์งานทุกครั้ง (Absolute System)

G91 มีดเคลื่อนบนจุดใดๆ วัดระยะจากจุดเริ่มงานทุกครั้ง (Increment System)

G92 การเปลี่ยนจุดศูนย์ของงานที่ใช้อ้างอิง

G93 อัตราการป้อนตรงข้ามกับหน่วยของเวลา

G94 อัตราการป้อน หน่วยเป็น ระยะทาง/เวลา

G95 อัตราการป้อน หน่วยเป็น ระยะทาง/รอบ

G96 ความเร็วของเพลามีดกัด เมตร/นาที

G97 ความเร็วของเพลามีดกัด รอบ/นาที

G98 การเปลี่ยนตำแหน่งเท่ากับค่า G43

G99 การยกเปลี่ยนตำแหน่งเท่ากับค่า R

ชุดคำสั่ง M-code จะเป็นคำสั่งในการควบคุม Function ต่างๆ ของโปรแกรมและเครื่องจักร ดังนี้

M00 Program Stop หยุดการทำงานของโปรแกรม

M01 Option Stop หยุดการทำงานชั่วคราว (ต้องกดปุ่ม Option Stop ที่เครื่องด้วย)

M02 จบการทำงานของโปรแกรม

M30 จบการทำงานของโปรแกรม

M03 หมุนหัว Spindle ตามเข็มนาฬิกา

M04 หมุนหัว Spindle ทวนเข็มนาฬิกา

M05 หยุดการหมุนของหัว Spindle

M06 เปลี่ยน Tool

M07 Thru Spindle

M08 เปิดน้ำหล่อเย็น (Coolant On)

M09 ปิดน้ำหล่อเย็น (Coolant Off)

M11 Set tool carousel position to 1(ATC Tool Changer only)

M19 Cycle positioning (not for spindle orientation) หัวอยู่ในตำแหน่งเปลี่ยน tool

M20 Does nothing                     Standard.

M22 Chip conveyor toggle On/Off Option

M29 Rigid Tap  M29 Sxxxx in block prior to G84

M41 Low gear select

M42 High ear select

M48 100% Spindle speed override forced

M49 Release

M60 A Axis brake On

====================================================================\

ความรู้พื้นฐานก่อนเขียนโปรแกรม CNC

1.ความรู้เกี่ยวกับการอ่านแบบ : การเขียนโปรแกรม CNC นั้นก็คือการถ่ายทอดขนาดและรูปร่างของชิ้นงานจากในแบบ (drawing) ให้ออกมาในรูปของโปรแกรมคอมพิวเตอร์จำพวก G Code, M Code เพื่อสั่งให้เครื่องจักรทำงาน เคลื่อนที่ไปในทิศทางต่างๆ ตามที่กำหนด. ดังนั้นผู้ที่จะทำการเขียนโปรแกรม CNC ต้องมีความรู้อยู่ในระดับที่สามารถอ่านแบบงานได้ เข้าใจในสัญลักษณ์ เครื่องหมายต่างๆ เช่น Dia. 20.0 +0.3,-0.1 จากค่าที่กำหนดให้นี้บางคนอาจจะเข้าใจว่าค่าที่ต้องควบคุมอยู่ที่เส้นผ่าศูนย์กลาง 20.00 มม. แล้วนำค่า 20.00 มม.ไปเขียนเป็นโปรแกรม CNC ซึ่งก็ไม่ถือว่าผิดเพียงแต่ไม่เหมาะสมเท่านั้น โดยปกติแล้วในการเขียนโปรแกรม CNC ถ้าเราเจอค่าขนาดเหมือนตัวอย่าง เราจะเขียนโปรแกรม CNC ด้วยค่ากลาง คือ 20.10 เป็นการป้องกันค่าคลาดเคลื่อนออกนอกพิกัดความเผื่อ

2.ความรู้เกี่ยวกับกระบวนการผลิต : ถ้าเราไม่เข้าใจในกระบวนการผลิต เราก็ไม่สามารถเขียนโปรแกรม CNC ได้ดี หรือไม่ได้เลย บางคนอาจจะเข้าใจว่าแค่โปรแกรม CNC ใช้ software สำเร็จรูปก็ทำได้แล้ว แค่เครื่อง CNC สามารถทำงานตามโปรแกรมที่เขียนได้ก็พอแล้ว อยากจะบอกว่าเป็นความเชื่อที่ผิด การเขียนโปรแกรม CNC ก็เปรียบเสมือนการวางแผนการผลิตนั่นเอง คือ แผนการผลิตที่ดีต้องสามารถทำงานได้รวดเร็ว กระบวนการผลิตสั้นที่สุด ชิ้นงานมีคุณภาพ (ไม่มีงาน NG หรือมีน้อยที่สุด) ซึ่งนั่นก็คือ การวางแผนให้เกิดประสิทธิภาพสูงสุด สำหรับโปรแกรม CNC ก็เช่นเดียวกัน นอกจากจะทำงานได้ตามแบบแล้ว ต้องมีประสิทธิภาพ เกิดงานเสียน้อยที่สุด ประหยัด cutting tool มากที่สุด, cycle time สั้นที่สุด จึงจะเรียกว่าเป็นโปรแกรม CNC ที่ดี ซึ่งการที่จะสร้างโปรแกรม CNC ที่ดีได้นั้นองค์ประกอบอย่างหนึ่งที่สำคัญก็คือ การวางแผนกระบวนการตัดในแต่ละขั้นตอนต่างๆ ให้กับโปรแกรม CNC ซึ่งได้มาจากความเข้าใจในกระบวนการผลิตที่ดีนั่นเอง. ผมจะยกตัวอย่างง่ายๆ เช่น ต้องการกลึงปอกชิ้นงานจากเส้นผ่านศูนย์กลาง 20.00 เหลือ 15.00 บางคนอาจจะเขียนโปรแกรมด้วยการใช้มีดกลึงละเอียดซึ่งแต่ละรอบนั้นจะได้ไม่มาก เช่น รอบละ 0.5 มม. ก็จะต้องเขียนโปรแกรม CNC เพื่อให้กลึงถึง 10 รอบ และอีกโปรแกรมหนึ่งเขียนโดยมีดกลึง กลึงหยาบออกก่อนครั้งละ 2.0 จำนวน 2 รอบ และกลึงด้วยมีดกลึงแบบละเอียดอีกแค่ 2 รอบ ซึ่งสามารถทำงานได้เร็วกว่า แต่ทั้งนี้ก็ต้องดูต้นทุนและองค์ประกอบอื่นๆ ในการพิจารณาด้วย

3.ความสามารถในการคำนวณพื้นฐาน : เป็นการบวกลบคูณหารธรรมดารวมทั้งทิศทางที่กำหนดด้วยเครื่องหมายบวก-ลบ เช่น กำหนดให้ X บวก เคลื่อนที่ไปทางขวา กำหนดให้ Y ลบ เคลื่อนที่ลงด้านล่างเป็นต้น และที่ขาดไม่ได้คือ ตรีโกณมิติ ซึ่งที่พบกันบ่อยจะเป็นการคำนวณ Sin-Cos-Tan เพื่อหาค่าต่างๆ ซึ่งบางครั้งแบบงานก็ไม่ได้กำหนดมาให้.

4.ความรู้เกี่ยวกับเครื่องมือตัด (Cutting Tool) เครื่องมือตัดก็เป็นส่วนสำคัญต่อการผลิตค่อนข้างมาก ในขั้นตอนการเขียนโปรแกรม CNC ถ้าเราเลือกเครื่องมือตัดที่มีประสิทธิภาพการตัดชิ้นงาน นั่นก็หมายความว่าเราสามารถตั้งค่า condition ต่างๆ ให้อยู่ในประสิทธิภาพสูงสุดได้ เช่น หากเราต้องการตัดด้วยความเร็วสูง cutting tool ที่ใช้นั้นก็สามารถรับแรงเสียดทาน ความร้อนได้สูงตามไปด้วย, ต้องการผิวละเอียดและค่า accuracy ของรูสูง แต่ใช้ดอกสว่านเจาะจนเสร็จแทนที่จะใช้ดอกสว่านเจาะนำเผื่อเล็กไว้ก่อนขนาดจริง 0.1-0.2 มม. แล้วใช้ดอก Reamer คว้านเก็บละเอียดอีกครั้งหนึ่ง

5.ความรู้เกี่ยวกับเครื่องจักร CNC : อย่างน้อยก็ต้องสามารถ operate เครื่อง CNC ขั้นพื้นฐานได้ ไม่เช่นนั้นตอนที่เขียนโปรแกรม CNC ก็จะมองภาพไม่ออกว่าโปรแกรมควรจะเดินโปรแกรมไปในทิศทางไหน, ความสามารถของเครื่องสามารถรับชิ้นงานได้ขนาดไหนบ้าง สามารถรับความเร็วรอบสูงสุดได้เท่าไหร่

จริงๆ แล้วความรู้พื้นฐานก่อนการเขียนโปรแกรม CNC มีอีกมากมาย แต่ตามที่มาข้างต้น ในต่อละข้อค่อนข้างจะมีความสำคัญเป็นพิเศษ ถึงถ้าเข้าใจอย่างถ่องแท้แล้ว การเขียนโปรแกรม CNC ก็ไม่ใช่เรื่องน่าหนักใจ

ครงสร้างของโปรแกรม CNC

โปรแกรม CNC  ประกอบด้วยโค๊ดหลัก 2 ชนิดคือ “G Code” และ “M Code” นำไปใช้งานได้ดังนี้

G00 เป็นคำสั่งเคลื่อนที่เร็วความเร็วทั้งหมดจะกำหนดโดยเครื่อง CNC เราสามารถควบคุมได้โดยปรับ % ของ Rapid โดย G00 จะใช้ในการเคลื่อนที่ที่ไม่มีการตัดชิ้นงาน เช่น การเคลื่อนที่ไปตำแหน่งเริ่มต้นกัดงาน, การเคลื่อนที่เพื่อกลับไปยังตำแหน่งเริ่มต้นของงานเพื่อกินกัดงานซ้ำ เป็นต้น

ตัวอย่างการใช้งาน

G00 X0Y0Z15   <= เคลื่อนที่เร็วไปทีตำแหน่ง X = 0, Y= 0 และ Z =15

G00 X20Y20Z10  <= เคลื่อนที่เร็วไปทีตำแหน่ง X = 20, Y= 20 และ Z =10

G01 เป็นคำสั่งเคลื่อนที่แบบเส้นตรง ควบคุมความเร็วตาม Feed ที่กำหนดในโปรแกรม ใช้การในลักษณะของการเดินตัดงานแบบเส้นตรง เช่น

N1  G00 X50.0Y30.0Z2.0

N2  G01Z-2.0

N3  G01Y50.0

N4  G01X70.0

N5  G01Y30.0

N6  G01X50.0

    จากโปรแกรมตัวอย่างและรูปเป็นการเขียนโปรแกรม CNC แบบสัมบูรณ์ (absolute system) เป็นการเดินในทิศทางตามเข็มนาฬิกาเป็นรูปสี่เหลี่ยม 4 จุดที่ความลึก 2.0 ค่าในแกนต่างๆ ให้อ้างอิงตามจุด Origin ของโปรแกรม CNC ที่ X0Y0Z0.

*ข้อสังเกต

ในแต่ละบรรทัดของโปรแกรม CNC เราไม่จำเป็นต้องเขียนค่าทุกแกนในแต่ละบรรทัดได้ ถ้าหากค่าแกนนั้นเหมือนกับบรรทัดที่ผ่านมา เช่น  บรรทัดที่ N2 ระบุค่า Z-2 เท่านั้น เนื่องจากมีการเคลื่อนที่ในแนวแกน Z เท่านั้น ส่วน X กับ Y อยู่ตำแหน่งเดิม แต่ยังไงก็อาจไม่ครอบคลุมกับเครื่อง CNC บางเครื่องก็ได้ เนื่องจากโปรแกรม CNC ในบางเครื่องจำเป็นต้องระบุค่าทุกแกนทุกบรรทัด

      โปรแกรม CNC

 โปรแกรม CNC ประกอบด้วยส่วนประกอบดังต่อไปนี้

รูปแสดงตัวอย่างโครงสร้างของโปรแกรม CNC

 1.รหัสโปรแกรม
ประกอบด้วยรหัสหลักอยู่ 3 ประเภท คือ
1.1 รหัสที่กำหนดระยะและเส้นทางการเดินตัดของ cutting tool เรียกว่า “G-Code” เช่น G00 คำสั่งให้เคลื่อนที่เร็ว, G01 คำสั่งให้เคลื่อนที่เป็นเส้นตรง, G02 คำสั่งให้เคลื่อนที่โค้งตามเข็มนาฬิกา, G03 คำสั่งให้เคลื่อนที่โค้งทวนเข็มนาฬิกา เป็นต้น.
1.2 รหัสควบคุมฟังก์ชันการทำงานของเครื่องจักรและโปรแกรม CNC เรียกว่า “M-Code” เช่น M30 สั่งให้จบโปรแกรมและเลื่อน cursor ขึ้นไปบนจุดเริ่มต้นของโปรแกรม CNC, M08 คำสั่งให้เปิดน้ำหล่อเย็น, M03 คำสั่งให้ spindle หมุน เป็นต้น
1.3 รหัสบรรทัด
ในโปรแกรม CNC แต่ละบรรทัดจะถูกกำหนดด้วยรหัส N จำนวนบรรทัดที่มีได้แน่แต่ละโปรแกรมขึ้นอยู่กับหน่วยความจำ RAM บนเครื่องคอมพิวเตอร์

 2.ค่า 
คือ ค่าระยะ, รัศมี และพารามิเตอร์ต่างๆ ซึ่งจะแตกต่างกันไปตามรหัสที่ ใช้ เช่น G01 X20 Y40 หมายถึง การกำหนดให้เคลื่อนที่เป็นแนวเส้นตรงไปที่ระยะ X=20 และ Z = 40, G02

 ระนาบของเครื่อง CNC
ก่อนทำการเขียนโปรแกรม CNC เราต้องทำความเข้าใจกับระนาบของเครื่อง CNC ก่อน ดังนี้
ระนาบของเครื่อง CNC ทั้งเครื่องกลึงและเครื่อง cnc milling จะแตกต่างกัน โดยปกติแล้วเครื่องกลึง CNC จะมี 2 ระนาบ คือ แกน X และแกน Z ส่วนเครื่อง cnc milling จะมี 3 แกน คือ แกน X แกน Y และแกน Z ตามรูปด้านล่าง

*ข้อสังเกต

ในแต่ละบรรทัดของโปรแกรม CNC เราไม่จำเป็นต้องเขียนค่าทุกแกนในแต่ละบรรทัดได้ ถ้าหากค่าแกนนั้นเหมือนกับบรรทัดที่ผ่านมา เช่น  บรรทัดที่ N2 ระบุค่า Z-2 เท่านั้น เนื่องจากมีการเคลื่อนที่ในแนวแกน Z เท่านั้น ส่วน X กับ Y อยู่ตำแหน่งเดิม แต่ยังไงก็อาจไม่ครอบคลุมกับเครื่อง CNC บางเครื่องก็ได้ เนื่องจากโปรแกรม CNC ในบางเครื่องจำเป็นต้องระบุค่าทุกแกนทุกบรรทัด

                  รูปแสดงระนาบของเครื่องกลึง cnc

                 รูปแสดงระนาบของเครื่องกัด cnc

   จุด Origin หรือจุดศูนย์ จะมีสัญลักษณ์ตามรูปด้านล่าง เป็นจุดที่แกนทั้งหมดตัดกัน ซึ่งทุกแกนจะมีค่าเป็น 0 ตามมาตรฐานนั้นแกนZ    จะเป็นแกนที่อยู่แนวเดียวกับกับแกน spindle ของเครื่อง CNC

    จุดศูนย์ของเครื่อง CNC (Machine Zero Point) เป็นตำแหน่ง 0 ของเครื่องจักร ซึ่งจะขึ้นอยู่กับผู้ผลิตและรุ่นของเครื่อง CNC ไม่สามารถเปลี่ยนแปลงเองได้ จะใช้เป็นจุดอ้างอิงในระบบ

    จุดศูนย์ของชิ้นงาน (work zero point) เป็นจุดศูนย์ของชิ้นงาน และอ้างอิงตำแหน่งของโปรแกรม CNC สามารถกำหนดเองได้

   รูปแสดงความสัมพันธ์ระหว่าง machine zero point และ work zero point

    เริ่มเขียนโปรแกรม CNC

เราจะเริ่มจากการเขียนโปรแกรม CNC สำหรับเครื่องกลึงก่อน

(ค่าที่กำหนดเป็นค่าตัวอย่างเท่านั้น อาจจะเป็นค่าอื่นขึ้นอยู่กับพารามิเตอร์ของแต่ละฟังก์ชันที่แตกต่างกันออกไป

% (กำหนดหัวของโปรแกรม)

G54 (อ้างอิงจุดศูนย์ของชิ้นงานหรือจุดเริ่มต้นของโปรแกรมตาม G54 ซึ่งค่าจะถูกกำหนดไว้ในตาราง offset ของ G54 แล้วในขั้นตอนของการกำหรดจุด origin )

G90 (กำหนดระบบอ้างอิง coordinate แบบ absolute ถ้าเป็นการกำหนดแบบ increment จะใช้ G91)

G43 (กำหนดให้เปิดระบบการ offset tool ถ้าเป็น G41 จะ offset tool ไปทางซ้ายของทิศทางการเดิน และถ้าเป็น G42 จะ offset tool ไปทางด้านขวาของทิศทางการเดินของโปรแกรม CNC)

T01 (กำหนดให้ใช้ tool no.1)

M06 (กำหนดให้มีการเปลี่ยน tool ตามที่กำหนดใน tool no.)

G00 X??  Y?? Z?? (เป็นการเลื่อน tool ไปยังตำแหน่งก่อนเริ่มตัดชิ้นงาน ซึ่งโดยทั่วไปแล้วจะใช้ตำแหน่งที่ใกล้กับตำแหน่งเริ่มต้น แต่จะเผื่อไว้ไม่ให้โดนชิ้นงานเพื่อความปลอดภัย ซึ่งการกำหนดขึ้นอยู่กับความเหมาะสม)

G01 X?? Y?? Z?? (เคลื่อนที่เป็นเส้นตรงตามไปยังตำแหน่ง X,Y,Z ที่กำหนด)

G01 X?? Y?? Z?? (เคลื่อนที่เป็นเส้นตรงตามไปยังตำแหน่ง X,Y,Z ที่กำหนด)

G40 (ยกเลิกการ offset tool)

M30 (จบโปรแกรมและเลื่อน cursor กลับไปที่จุดเริ่มต้นของโปรแกรม)

ความหมายและตัวอักษรใน CNC
 (อ้างอิงตามมาตรฐาน EIA R274 B)

A = การหมุนรอบแนวแกน X

B = การหมุนรอบแนวแกน Y

C = การหมุนรอบแนวแกน Z

D = (1) การหมุนรอบแนวแกนพิเศษ (2) อัตราป้อนที่สาม

E = (1)หมุนรอบแกนพิเศษ (2) อัตราป้อนที่สอง

F = อัตราป้อน

G = การจัดเตรียมการทำงาน

H = ไม่ระบุ

I = (1) ขนาดรอบแนวแกน X ของจุดศูนย์กลางวงกลม (2) ระยะพิตช์ของเกลียวที่ขนานแนวแกน X

J =  (1) ขนาดรอบแนวแกน Y ของจุดศูนย์กลางวงกลม (2) ระยะพิตช์ของเกลียวที่ขนานแนวแกน Y

K = (1) ขนาดรอบแนวแกน Z ของจุดศูนย์กลางวงกลม (2) ระยะพิตช์ของเกลียวที่ขนานแนวแกน Z

L = ไม่กำหนด

M = คำสั่งช่วยทำงาน

N =  หมายเลขบรรทัดในโปรแกรม

O = ไม่กำหนด

P = การเคลื่อนที่ของแนวแกนที่ 3 ที่ขนานกับแกน X

Q = การเคลื่อนที่ของแนวแกนที่ 3 ที่ขนานกับแกน Y

R = การเคลื่อนที่ของแนวแกนที่ 3 ที่ขนานกับแกน Z

S = ความเร็วรอบของเพลาจับเครื่องมือตัด

T = เรียกเครื่องมือตัด

U = การเคลื่อนที่ของแนวแกนที่ 2 ที่ขนานกับแกน X

V = การเคลื่อนที่ของแนวแกนที่ 2 ที่ขนานกับแกน Y

W = การเคลื่อนที่ของแนวแกนที่ 2 ที่ขนานกับแกน Z

X = การเคลื่อนที่ในแนวแกน X

Y = การเคลื่อนที่ในแนวแกน Y

Z = การเคลื่อนที่ในแนวแกน Z

ลำดับขั้นตอนในการเขียนโปรแกรม CNC

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

ขั้นตอนในการเขียนโปรแกรม CNC มีดังนี้

1.กำหนดหมายเลขลำดับของบล็อก หรือหมายเลขบรรทัดในโปรแกรม CNC นั่นเอง

N001

N002

N003

N004

N005

2.การจัดเตรียมการทำงาน เช่น การจัดรูปแบบโครงสร้างของโปรแกรม CNC, การกำหนดทางในการเดินของโปรแกรม CNC (cutting direction), การกำหนดกระบวนการก่อนหลังเพื่อให้โปรแกรมสามารถทำงานได้อย่างต่อเนื่องและสั้นที่สุด ซึ่งเป็นคุณสมบัติของโปรแกรม CNC ที่ดี ไม่เพียงแต่ว่าโปรแกรมสามารถทำงานได้

3.ให้ขนาดต่างๆ ในแบบงาน ก่อนเขียนโปรแกรม CNC ควรมีการกำหนดขนาดต่างๆ ลงในแบบงานให้เรียบร้อยและครบทุกกำหนด สิ่งที่ลืมไม่ได้ คือ ระบบอ้างอิง ซึ่งในการกำหนดขนาดต้องให้สัมพันธ์กับระบบอ้างอิงด้วย

4.กำหนดความเร็วรอบของเพลาจับยึดชิ้นงาน ความเร็วรอบของเพลาจับยึดหรือ spindle นั้นมีผลต่อคุณภาพงานและ cycle time อย่างมาก งานที่วัสดุต่างชนิดกัน ใช้เครื่องมือตัดที่แตกต่างชนิดกัน ความเร็วรอบ (speed) ก็ย่อมไม่เท่ากันแตกต่างไปตามการคำนวณหรือข้อแนะนำสำหรับวัสดุแต่ละชนิด

ความเร็วรอบ n = V x 1000 / 3.14D

เมื่อ S = ความเร็วรอบ มีหน่วยเป็น RPM.

ความเร็วตัด V = (3.14xDxn)/1000

เส้นผ่านศูนย์กลางของชิ้นงาน n

5.เครื่องมือตัด (cutting tool) เลือกใช้เครื่องมือตัดให้เหมาะสมลักษณะและรูปร่างของการตัด รวมทั้งชนิดของ material ที่ใช้ทำเครื่องมือตัด

6.กำหนดอัตราป้อน F

8.ฟังก์ชันการทำงานเสริม M

Create Account



Log In Your Account