บทที่ 31
ชุดควบคุมยี่ห้ออื่นเทียบกับ Fanuc — Haas, Mitsubishi, Siemens และระบบเขียนโปรแกรมแบบสนทนา
สิ่งที่เหมือนกันและข้อแตกต่างสำคัญเมื่อนำความรู้การเขียนโปรแกรมไปประยุกต์ใช้กับชุดควบคุมที่ไม่ใช่ Fanuc การเปรียบเทียบกลุ่มรหัส ISO G-code (Haas และ Mitsubishi) กับเรื่องที่ต้องระวังเป็นพิเศษ เช่น พิกัดจุดศูนย์งานเสริม (G154/G54.1), โปรแกรมย่อยภายในไฟล์เดียวกัน (M97) และการตีความตัวเลขที่ไม่มีจุดทศนิยม ระบบชุดควบคุม Siemens SINUMERIK ในภาษาเฉพาะตัวและโหมด ISO Dialect (G290/G291) ข้อควรระวังของรหัสคำสั่งที่ซ้ำซ้อนแต่ความหมายต่างกัน ตัวอย่างโปรแกรมงานเดียวกันบน Fanuc และ Siemens และรายการตรวจสอบความปลอดภัยเมื่อต้องย้ายโปรแกรมข้ามยี่ห้อ
ทุกบทของหนังสือเล่มนี้ใช้ชุดควบคุม Fanuc เป็นแกนหลักในการอธิบาย เนื่องจากเป็นระบบควบคุมเครื่องจักร CNC ที่แพร่หลายที่สุดในโลก และมีผู้ผลิตชุดควบคุมรายอื่นจำนวนมากที่ยึดโครงสร้างคำสั่งตามมาตรฐานเดียวกัน อย่างไรก็ดี ในโรงงานอุตสาหกรรมจริง เครื่องจักร CNC อาจติดตั้งชุดควบคุมยี่ห้ออื่น เช่น Haas, Mitsubishi, Siemens SINUMERIK, Heidenhain หรือ Mazak
บทนี้จะอธิบายว่า องค์ความรู้และทักษะการเขียนโปรแกรมที่ได้เรียนรู้มาสามารถนำไปประยุกต์ใช้กับชุดควบคุมค่ายอื่นได้อย่างไร มีขอบเขตที่เหมือนกันตรงจุดใด และมีจุดแตกต่างเชิงลึกเรื่องใดบ้างที่หากไม่ระวัง อาจทำให้โปรแกรมที่ใช้ได้บน Fanuc เกิดข้อผิดพลาดหรือชนบนเครื่องจักรยี่ห้ออื่น
ข้อควรทราบ: ข้อมูลอ้างอิงในบทนี้รวบรวมจากคู่มือการเขียนโปรแกรมมาตรฐานของผู้ผลิต ได้แก่ Mitsubishi M800/M80 Series, Siemens SINUMERIK 840D sl/828D และคู่มือรหัสคำสั่งของ Haas Automation ทั้งนี้เนื่องจากเครื่องจักรแต่ละยี่ห้อมีฟังก์ชันเสริมและการตั้งค่าพารามิเตอร์ของผู้ผลิตเครื่องจักร (Machine Tool Builder — MTB) ที่แตกต่างกัน ผู้ใช้งานต้องตรวจสอบคู่มือประจำเครื่องจริงเสมอ ก่อนปล่อยโปรแกรมทำงาน
31.1 ชุดควบคุม 2 กลุ่มหลักในวงการ CNC
เมื่อพิจารณาจากภาษาที่ใช้ในการสื่อสารและสั่งการ ชุดควบคุมในอุตสาหกรรม CNC สามารถแบ่งออกเป็น 2 กลุ่มใหญ่:
- กลุ่มรหัส ISO G-code (Fanuc-compatible): เป็นกลุ่มที่ยึดโครงสร้างคำสั่ง G-code และ M-code ตามมาตรฐาน ISO 6983 / EIA RS-274-D ในรูปแบบเดียวกับ Fanuc ได้แก่ Haas, Mitsubishi, Yasnac, Mazak (ในโหมด EIA/ISO) และชุดควบคุมจากไต้หวันส่วนใหญ่ โปรแกรมในกลุ่มนี้สามารถนำไปใช้งานข้ามยี่ห้อกันได้โดยตรงหรือปรับแต่งเพียงเล็กน้อย องค์ความรู้เกือบทั้งหมดในหนังสือเล่มนี้ใช้กับชุดควบคุมกลุ่มนี้ได้ทันที โดยสิ่งที่แตกต่างมักเป็นเพียงรหัสคำสั่งเสริมเฉพาะรุ่น, หมายเลขพารามิเตอร์ และหน้าตาของสัญญาณเตือน Alarm
- กลุ่มที่มีภาษาเฉพาะตัวและระบบสนทนา (Proprietary / Conversational): ได้แก่ Siemens SINUMERIK (ภาษา Siemens Advanced), Heidenhain (ภาษา Klartext), Mazak (ภาษา Mazatrol) และ Hurco ชุดควบคุมกลุ่มนี้มีไวยากรณ์คำสั่ง โครงสร้างการเรียกเครื่องมือ และคำสั่งวัฏจักรเจาะกัดเป็นเอกลักษณ์ของตนเอง อย่างไรก็ดี หลายยี่ห้อในกลุ่มนี้ (โดยเฉพาะ Siemens) จะมี โหมดจำลองภาษา ISO Dialect ที่สามารถสลับมารับโปรแกรม G-code สไตล์ Fanuc ได้
สิ่งที่เหมือนกันในทุกชุดควบคุม: คือหลักการพื้นฐานทางวิศวกรรมการผลิตทั้งหมด ซึ่งไม่ขึ้นกับภาษาหรือรหัสคำสั่ง ได้แก่:
- กฎมือขวาและระบบพิกัดคาร์ทีเซียน (Cartesian Coordinates) ตามบทที่ 4
- ระบบพิกัดศูนย์งานชิ้นงาน (
G54) ตามบทที่ 6 - กลศาสตร์การชดเชยความยาวเครื่องมือ (Tool Length Offset) และการชดเชยรัศมีมีดตัด (Cutter Radius Compensation)
- ขั้นตอนการวางแผนกระบวนการผลิตและการทดสอบโปรแกรมที่หน้าเครื่องตามบทที่ 21
- ตรรกะงานผลิตต่อเนื่องและการจัดการรอบเวลาตามบทที่ 28
31.2 ชุดควบคุม Haas
ชุดควบคุมของ Haas Automation พัฒนาขึ้นโดยใช้สถาปัตยกรรม ISO G-code ที่ใกล้เคียงกับ Fanuc มากที่สุดในบรรดาชุดควบคุมทั้งหมด โปรแกรมงานกัด Machining Center ส่วนใหญ่ในหนังสือเล่มนี้สามารถนำไปโหลดและสั่งทำงานบนเครื่อง Haas ได้ทันทีโดยไม่ต้องแก้ไข แต่มีจุดแตกต่างสำคัญในทางปฏิบัติ 4 ประการที่ต้องทำความเข้าใจ:
| หัวข้อการทำงาน | รูปแบบของ Fanuc | รูปแบบเฉพาะของ Haas |
|---|---|---|
| ระบบพิกัดงานเสริม | G54.1 P1 ถึง P48 (หรือขยายถึง P300) |
ใช้คำสั่ง G154 P1 ถึง P99 (นอกจากนี้ยังรองรับรหัสเดิม G110–G129 ซึ่งเทียบเท่ากับ G154 P1–P20) |
| การเรียกโปรแกรมย่อยภายในไฟล์เดียวกัน | แยกเป็นโปรแกรมของตัวเองแล้วเรียกด้วย M98 P_ หรือใช้ M98 Q_ (Q คือหมายเลขบรรทัด N) ในรุ่นที่มี เช่น Series 30i เมื่อตั้งบิต SQC ของพารามิเตอร์ 6005 เป็น 1 |
ใช้คำสั่ง M97 P_ โดย P คือหมายเลขบรรทัด N ภายในไฟล์เดียวกัน และจบโปรแกรมย่อยด้วย M99 |
| การปรับแต่งระบบเครื่องจักร | ปรับผ่านหน้าพารามิเตอร์ (Parameter) ซึ่งมักถูกล็อกรหัสผ่าน | มีหน้าต่าง Setting แยกต่างหาก ให้ผู้ใช้เปิดอ่านคำอธิบายภาษาอังกฤษและปรับตั้งได้เองอย่างอิสระ (เช่น การเปิด/ปิดระบบเป่าลม, โหมดมุมโค้ง) |
| แอดเดรส P ในวัฏจักรเจาะ | P (เวลาหยุดที่ก้นรู) ที่เขียนในบรรทัดที่เจาะเป็นค่าคงสถานะ ใช้กับทุกรูถัดไปจนถึง G80 ตามบทที่ 15 ส่วน P ในบรรทัดที่ไม่ได้เจาะ เช่น G04 P_ หรือ M98 P_ ไม่เปลี่ยนค่านี้ |
แอดเดรส P มีคุณสมบัติคงสภาวะ (Modal) หากระหว่างวัฏจักร G82 Z-5. P500 มีการสั่ง G04 P1000 หรือ M97 P2000 แทรก ค่า P ใหม่นั้นอาจถูกนำไปใช้เป็นเวลาหยุดที่ก้นรูของรูถัดไปแทน 500 |
ประเด็นของคำสั่ง M97 ที่ทำให้โปรแกรมย้ายไม่ได้:
ผู้เขียนโปรแกรมที่คุ้นเคยกับเครื่อง Haas นิยมใช้คำสั่ง M97 P1000 เพื่อเรียกโปรแกรมย่อยที่วางต่อท้ายโปรแกรมหลัก (อยู่ใต้บรรทัด M30) ซึ่งสะดวกมากเพราะรวมทุกอย่างไว้ในไฟล์เดียว แต่เมื่อนำโปรแกรมนี้ไปรันบน Fanuc ชุดควบคุมจะไม่เข้าใจคำสั่ง M97 และจะเกิด Alarm ขึ้นทันที การแปลงกลับไปใช้บน Fanuc จะต้องตัดส่วนโปรแกรมย่อยแยกออกมาบันทึกเป็นไฟล์ใหม่พร้อมใส่หมายเลข O ของตนเอง แล้วเปลี่ยนคำสั่งเรียกเป็น M98 P... ตามบทที่ 10
Backplot ของเว็บไซต์นี้อ่าน M97 และ G154 ของ Haas ได้ รวมทั้ง M98 Q ของ Fanuc จึงใช้วาดและตรวจโปรแกรมของ Haas ก่อนแปลง และตรวจโปรแกรมที่แปลงแล้วได้
31.3 ชุดควบคุม Mitsubishi
ชุดควบคุม Mitsubishi (เช่น ตระกูล M70, M80 และ M800) เป็นที่นิยมอย่างสูงในเครื่องจักร CNC แบรนด์ญี่ปุ่นและไต้หวัน โครงสร้างภาษา G-code ของ Mitsubishi ถูกออกแบบมาให้เข้ากันได้กับ Fanuc เกือบ 100% เอกสารและคู่มือการเขียนโปรแกรมใช้รหัสคำสั่งเดียวกันแทบทุกบท ข้อแตกต่างสำคัญมักอยู่ที่ความยืดหยุ่นของฟังก์ชันและพารามิเตอร์:
| หัวข้อการทำงาน | ข้อมูลจำเพาะบน Mitsubishi M800/M80 Series |
|---|---|
| การเรียกโปรแกรมย่อยขั้นสูง | รองรับรูปแบบ M98 P_ H_ L_ โดย P คือหมายเลขโปรแกรม, H คือหมายเลขบรรทัด N ที่ต้องการให้เริ่มอ่าน และ L คือจำนวนรอบวนซ้ำ (ทำให้เรียกบรรทัดในไฟล์เดียวกันได้เหมือน M97 ของ Haas) นอกจากนี้ยังรองรับการเรียกด้วยชื่อไฟล์ตรงๆ เช่น M98 <PART-A.NC> |
| ระบบพิกัดงานเสริม | รองรับคำสั่ง G54.1 P1 ถึง P300 เป็นมาตรฐาน |
| การตีความตัวเลขที่ไม่มีจุดทศนิยม | เลือกรูปแบบได้ผ่านพารามิเตอร์ #1078 Decpt2: โดย Type I จะอ่านเป็นหน่วยย่อยที่สุด (0.001 มม.) เหมือน Fanuc ส่วน Type II จะอ่านเป็นหน่วยมิลลิเมตรเต็ม (Pocket Calculator Type) |
| ตระกูลระบบคำสั่ง G-code | สามารถสลับระบบรหัส G ได้ผ่านพารามิเตอร์ #1037 cmdtyp |
| รหัสสัญญาณเตือน Alarm | ใช้รหัสขึ้นต้นด้วยอักษรตัวเดียว เช่น P20, P33 ซึ่งหมายเลขจะไม่ตรงกับรหัส PS ของ Fanuc |
ข้อควรระวังเรื่องตัวเลขที่ไม่มีจุดทศนิยม: หากนำโปรแกรมที่เขียนตัวเลขแบบไม่มีจุดทศนิยม เช่น X10 ซึ่งตั้งใจให้เป็น 10 มิลลิเมตร (บนเครื่องที่ตั้ง Type II) ไปรันบนเครื่องจักรที่ตั้งค่าพารามิเตอร์เป็น Type I เครื่องจะอ่านเป็น ส่งผลให้พิกัดสั้นลง 1,000 เท่าตามปัญหาที่อธิบายในบทที่ 23 ดังนั้น เมื่อย้ายโปรแกรมควรใส่จุดทศนิยมกำกับตัวเลขพิกัดระยะทางทุกตัวเสมอ เช่น X10.
31.4 ชุดควบคุม Siemens SINUMERIK
ชุดควบคุม Siemens SINUMERIK (เช่น รุ่น 828D และ 840D sl) ใช้มากในเครื่องจักรจากยุโรปและเครื่อง 5 แกน มีภาษาโปรแกรมเฉพาะตัว เรียกว่า ภาษา Siemens (Siemens Advanced Language) และมีโหมดเสริม ISO Dialect สำหรับรันโปรแกรมรูปแบบ Fanuc
31.4.1 ข้อแตกต่างเชิงเปรียบเทียบระหว่างภาษา Siemens กับ Fanuc
แม้ฟิสิกส์การตัดเฉือนจะเหมือนกัน แต่ไวยากรณ์คำสั่งของภาษา Siemens แตกต่างจาก Fanuc อย่างชัดเจน:
| หัวข้อการทำงาน | ไวยากรณ์บนชุดควบคุม Fanuc | ไวยากรณ์ในภาษา Siemens (SINUMERIK) |
|---|---|---|
| หน่วยวัดระบบมิลลิเมตร/นิ้ว | G21 (มม.) / G20 (นิ้ว) |
G71 (มม.) / G70 (นิ้ว) หรือคำสั่ง G710/G700 |
| เครื่องหมายระบุข้อความหมายเหตุ | อยู่ในวงเล็บกลม ( ... ) |
อยู่หลังเครื่องหมายอัฒภาค ; ... |
| การเรียกเครื่องมือและชดเชยความยาว | สั่ง T1 M06 แล้วเรียกความยาวด้วย G43 H01 |
สั่ง T1 M6 หรือเรียกตามชื่อ T="DRILL_8.5" M6 แล้วเปิดใช้ค่าชดเชยความยาวด้วยหมายเลขคมตัด D1 โดยไม่ต้องมีคำสั่ง G43 |
| ตัวเลขที่ไม่มีจุดทศนิยม | ตีความเป็นหน่วยย่อยสุด (X10 = 0.010 มม.) |
ตีความเป็นหน่วยเต็มตามโหมด (X10 = 10.0 มม.) |
| คำสั่งเจาะสำเร็จรูป | คำสั่งคงสภาวะ G81 ถึง G89 สั่งปิดด้วย G80 |
คำสั่งฟังก์ชันเฉพาะตัว เช่น CYCLE81(...) พร้อมส่งพารามิเตอร์ในวงเล็บ และเรียกวนซ้ำด้วย MCALL |
| การกำหนดรัศมีส่วนโค้ง | ใช้แอดเดรส R_ |
ใช้คำสั่งกำหนดรัศมีเฉพาะตัว CR=_ (Circle Radius) |
| ตัวแปรในโปรแกรม | ใช้เครื่องหมายชาร์ป เช่น #1–#33, #500 |
ใช้ตัวแปร R-parameter เช่น R0, R1 หรือตัวแปรที่ตั้งชื่อเป็นตัวอักษรได้อิสระ |
| การเรียกและการจบโปรแกรมย่อย | เรียกด้วย M98 P_ จบด้วย M99 |
เรียกด้วย ชื่อโปรแกรม ได้โดยตรง จบด้วยคำสั่ง M17 หรือ RET |
| ระบบพิกัดจุดศูนย์งาน | G54 ถึง G59 และ G54.1 P_ |
G54 ถึง G57 และกลุ่มขยาย G505 ถึง G599 สั่งยกเลิกด้วย G500 |
| การหมุนและแปลงระบบพิกัด | สั่งผ่าน G-code เช่น G52, G68, G51.1 |
ควบคุมผ่านระบบ Frame เช่น TRANS, ROT, MIRROR, SCALE (หรือแบบเพิ่มระยะ ATRANS, AROT) |
| การกลับจุดอ้างอิงเครื่องจักร | สั่งผ่าน G28 หรือ G53 |
สั่งผ่านคำสั่ง G74 หรือใช้คำสั่งเฉพาะตัว G75 วิ่งเข้าหาตำแหน่งคงที่ |
คำเตือน
จุดที่ต้องระวังเป็นพิเศษเมื่อนำโปรแกรม Fanuc ไปใช้บน Siemens:
- คำสั่ง
G70และG71: บน FanucG71คือคำสั่งกลึงปอกหยาบหลายเที่ยวตามบทที่ 16 แต่บน SiemensG71หมายถึง การตั้งหน่วยวัดเป็นมิลลิเมตร หากนำโปรแกรมกลึง Fanuc มารันบน Siemens โดยไม่แปลง เครื่องจะเข้าใจว่าเป็นการเปลี่ยนหน่วยวัดและข้ามกระบวนการกลึงหยาบไปทั้งหมด- การตีความตัวเลขจำนวนเต็ม: Siemens จะอ่าน
X10หรือZ-20เป็นระยะเต็ม 10 มม. และ −20 มม. ทันที ตรงกันข้ามกับ Fanuc ที่จะอ่านเป็น 0.010 มม. และ −0.020 มม.
คำสั่งเจาะของ Siemens เขียนขึ้นในรูปแบบฟังก์ชันพารามิเตอร์ เช่น CYCLE81(RTP, RFP, SDIS, DP) โดย RTP คือระดับถอยปลอดภัย (Retract Plane), RFP คือระนาบผิวอ้างอิงชิ้นงาน (Reference Plane), SDIS คือระยะเผื่อก่อนถึงผิว (Safety Distance) และ DP คือระดับความลึกเป้าหมายก้นรู (Final Depth) ในทางปฏิบัติ ช่างมักสร้างคำสั่งเหล่านี้ผ่านหน้าจอกราฟิกกึ่งอัตโนมัติ (ShopMill หรือ ShopTurn) โดยไม่ต้องพิมพ์ทีละตัวอักษร
31.4.2 โหมด ISO Dialect บน Siemens
ชุดควบคุม Siemens มีฟังก์ชันแปลงภาษาในตัว:
- สั่งคำสั่ง
G291ในบล็อกเดี่ยว เพื่อสลับเข้าสู่โหมด ISO Dialect ทำให้ชุดควบคุมสามารถอ่านคำสั่ง G-code และมาโครสไตล์ Fanuc ได้โดยตรง - สั่งคำสั่ง
G290ในบล็อกเดี่ยว เพื่อสลับกลับมาสู่ ภาษา Siemens ปกติ
เมื่อสลับโหมด พิกัดจุดศูนย์งานและออฟเซ็ตเครื่องมือที่กำลังใช้งานอยู่จะคงสภาวะเดิมอย่างต่อเนื่อง โหมด ISO ช่วยให้สามารถนำโปรแกรมที่โพสต์จาก CAM สำหรับ Fanuc มารันบน Siemens ได้สะดวกรวดเร็ว อย่างไรก็ตาม การตั้งค่าพารามิเตอร์เครื่องจักร MD10884 จะเป็นตัวกำหนดว่าตัวเลขที่ไม่มีจุดทศนิยมในโหมด ISO จะถูกอ่านแบบเครื่องคิดเลข (มม.) หรือแบบมาตรฐาน Fanuc (ไมครอน) ดังนั้น จึงต้องใส่จุดทศนิยมในทุกพิกัดเสมอแม้จะรันในโหมด ISO
31.5 ชุดควบคุมระบบสนทนา (Conversational Controls)
ชุดควบคุมชั้นนำบางยี่ห้อถูกออกแบบมาเพื่อเน้นการเขียนโปรแกรมหน้าเครื่องจักรผ่านระบบโต้ตอบเชิงสนทนา (Conversational Programming) โดยเฉพาะ Heidenhain ซึ่งใช้มากในงานกัดแม่พิมพ์และเครื่องกัด 5 แกนจากยุโรป ภาษาหลักของ Heidenhain คือ Klartext (Plain Language) ซึ่งมีโครงสร้างคำสั่งเป็นประโยคสนทนา เช่น TOOL CALL, L X+50 Y+20 R0 FMAX (คำสั่งเดินเส้นตรง) และมีรอบงานเจาะคว้านแบบเฉพาะตัว
31.5.1 Mazak: Mazatrol และ EIA/ISO
ชุดควบคุม Mazatrol ของ Mazak เขียนโปรแกรมได้สองแบบบนเครื่องเดียวกัน เมื่อพบโปรแกรมบนเครื่อง Mazak จึงต้องดูก่อนว่าเป็นแบบใด
- Mazatrol คือระบบสนทนา ผู้เขียนโปรแกรมกรอกข้อมูลของชิ้นงานและรูปร่างที่ต้องตัดทีละหัวข้อบนหน้าจอ เช่น รูเจาะหรือหลุม แล้วชุดควบคุมคำนวณเส้นทางเดินของเครื่องมือให้ โปรแกรมแบบนี้ไม่มีบรรทัดรหัส G ให้อ่านหรือแก้ไข ความรู้เรื่องรหัส G ในหนังสือเล่มนี้จึงใช้กับโปรแกรมแบบนี้โดยตรงไม่ได้
- EIA/ISO คือโปรแกรมรหัส G แบบปกติ เนื้อหาส่วนใหญ่ในหนังสือเล่มนี้ใช้ได้ แต่ยังต้องตรวจจุดที่ต่างจาก Fanuc ตามรายการตรวจสอบและคู่มือของเครื่อง
Mazatrol เหมาะกับงานที่เขียนโปรแกรมหน้าเครื่อง เช่น งานจำนวนน้อยที่รูปร่างไม่ซับซ้อน ส่วนโปรแกรมที่ส่งออกจาก CAM มักใช้แบบ EIA/ISO
ข้อจำกัดในการย้ายโปรแกรม: โปรแกรม Mazatrol และรอบงาน (Cycle) ของ Klartext แปลงทีละบรรทัดเป็นรหัส G ของ Fanuc ไม่ได้ เพราะชุดควบคุมคำนวณเส้นทางเดินของเครื่องมือเองจากข้อมูลที่กรอก เมื่อย้ายงานไปเครื่องอื่นจึงต้องสร้างโปรแกรมใหม่ ซึ่งทำได้ตามที่มาของโปรแกรมเดิม
- โปรแกรมมาจาก CAM: เปิดงานเดิมใน CAM แล้วโพสต์ใหม่ด้วยโพสต์โปรเซสเซอร์ของเครื่องปลายทาง ตามบทที่ 29 โปรแกรม Klartext มักมาจาก CAM โดยเฉพาะงานแม่พิมพ์และงาน 5 แกน ส่วน CAM ที่ส่งงานให้เครื่อง Mazak ส่วนใหญ่โพสต์เป็นแบบ EIA/ISO ซึ่งเป็นรหัส G แบบปกติอยู่แล้ว
- โปรแกรมเขียนที่หน้าเครื่อง: ซึ่งพบบ่อยกับ Mazatrol ไม่มีงานใน CAM ให้เปิด ต้องเขียนใหม่จากแบบงาน ด้วยรหัส G หรือด้วยระบบสนทนาของเครื่องปลายทาง
ชุดควบคุม Mazak บางรุ่นมีตัวเลือกแปลงโปรแกรม Mazatrol เป็นแบบ EIA/ISO ให้ ถ้าจะใช้ ให้ตรวจกับคู่มือของเครื่องว่ามีตัวเลือกนี้หรือไม่ ไม่ว่าจะได้โปรแกรมใหม่ด้วยวิธีใด ต้องตรวจด้วยแบบจำลองและทดลองด้วย SINGLE BLOCK ก่อนตัดจริงเสมอ
31.6 ตัวอย่าง: งานเจาะชิ้นเดียวกันบนชุดควบคุมต่างระบบ
กรณีศึกษางานเจาะรูขนาด Ø8.5 มม. ลึก 12 มม. จำนวน 4 รู ที่พิกัด และ บนแผ่นเพลต โดยกำหนดจุดศูนย์งาน G54 ไว้ที่กึ่งกลางผิวบนของชิ้นงาน
31.6.1 โปรแกรมบนชุดควบคุม Fanuc (และใช้ได้บน Haas / Mitsubishi)
%
O3101 (FOUR HOLES - Fanuc)
(G54 X0 Y0 = PLATE CENTER Z0 = TOP)
N10 G17 G21 G40 G49 G80 G90 G94
N20 T1 M06 (D8.5 DRILL)
N30 G54 G00 X-30. Y-20. S1500 M03
N40 G43 H01 Z50. M08
N50 G99 G81 X-30. Y-20. Z-12. R3. F150
N60 X30.
N70 Y20.
N80 G98 X-30.
N90 G80 M09
N100 M05
N110 G91 G28 Z0
N120 G90
N130 M30
%
ดูเครื่องมือเดินตั้งแต่ N10 ถึง N130 ได้ในตัวจำลองการตัด และBackplot
การรันบน Haas และ Mitsubishi: โปรแกรมนี้สามารถรันบน Haas และ Mitsubishi ได้ทันทีโดยไม่ต้องแก้ไขใดๆ หากต้องการใช้พิกัดงานเสริม บน Haas จะเขียนเป็น G154 P1 ส่วนบน Fanuc และ Mitsubishi จะเขียนเป็น G54.1 P1
31.6.2 โปรแกรมเดียวกันในภาษา Siemens (SINUMERIK Native)
; FOUR HOLES - SIEMENS NATIVE LANGUAGE
; G54 X0 Y0 = PLATE CENTER Z0 = TOP
G17 G71 G40 G90 G94 ; G71 = กำหนดหน่วยเป็นมิลลิเมตร
T="DRILL_8.5" M6 ; เรียกเครื่องมือตัดตามชื่อที่ลงทะเบียน
D1 ; เปิดใช้ค่าชดเชยความยาวของคมตัดที่ 1 ทันที
G54 G0 X-30. Y-20. S1500 M3
Z50. M8
MCALL CYCLE81(50., 0., 3., -12.) ; เรียกใช้วัฏจักรเจาะแบบค้างสภาวะ (RTP, RFP, SDIS, DP)
X-30. Y-20.
X30.
Y20.
X-30.
MCALL ; ยกเลิกสภาวะการเจาะ (เทียบเท่า G80)
G0 Z100. M9
M5
M30
| พารามิเตอร์การทำงาน | โครงสร้างบน Fanuc | โครงสร้างบน Siemens (ภาษาหลัก) |
|---|---|---|
| หน่วยวัดมิลลิเมตร | คำสั่ง G21 |
คำสั่ง G71 |
| การเปิดค่าชดเชยความยาว | คำสั่ง G43 H01 ควบคู่กับการเคลื่อนที่แกน Z |
สั่งเปิดหมายเลขคมตัด D1 ใต้บรรทัดเปลี่ยนเครื่องมือ |
| คำสั่งเจาะสำเร็จรูป | คำสั่ง G81 คงสภาวะ ยกเลิกด้วย G80 |
คำสั่ง MCALL CYCLE81(...) คงสภาวะ ยกเลิกด้วย MCALL เปล่า |
| ระยะพ้นผิวก่อนเจาะ | แอดเดรส R3. (พิกัดสัมบูรณ์ของระนาบจุด R) |
พารามิเตอร์ SDIS 3. (ระยะสัมพัทธ์เหนือผิวระนาบอ้างอิง RFP) |
| ระดับถอยปลอดภัย | คำสั่งสลับ G98 (ระดับเริ่มต้น) และ G99 (ระดับ R) |
พารามิเตอร์ RTP 50. (ระนาบถอยปลอดภัยที่ระบุไว้ในฟังก์ชัน) |
| การใส่จุดทศนิยม | มีจุดทศนิยมกำกับทุกตัวเลข | แนะนำให้ใส่จุดทศนิยมกำกับเสมอเพื่อความปลอดภัย |
31.7 รายการตรวจสอบเมื่อย้ายโปรแกรมข้ามชุดควบคุม
ก่อนนำโปรแกรมที่เขียนหรือส่งออกจากเครื่องจักรยี่ห้อหนึ่งไปรันบนอีกยี่ห้อหนึ่ง ให้ตรวจสอบรายการต่อไปนี้อย่างละเอียด นอกเหนือจากการตรวจตามปกติในบทที่ 29:
| หัวข้อที่ต้องตรวจสอบ | เหตุผลทางเทคนิคและความเสี่ยง |
|---|---|
| จุดทศนิยมในพิกัดระยะทางทุกค่า | ชุดควบคุมต่างยี่ห้อหรือต่างพารามิเตอร์ตีความตัวเลขไม่มีจุดทศนิยมต่างกัน เสี่ยงต่อการวิ่งผิดพลาด 1,000 เท่า |
| รหัสคำสั่งที่ชื่อซ้ำแต่ความหมายต่างกัน | เช่น G70/G71 (หน่วยวัดบน Siemens vs วัฏจักรกลึงบน Fanuc) หรือคำสั่ง M97 |
| รูปแบบระบบพิกัดงานเสริม | ตรวจสอบการแปลงระหว่าง G54.1 P_, G154 P_ และกลุ่ม G505–G599 |
| รูปแบบการเรียกโปรแกรมย่อย | คำสั่ง M97 ของ Haas, M98 P_ H_ ของ Mitsubishi และการเรียกตามชื่อไฟล์ของ Siemens มีไวยากรณ์ต่างกัน |
| รหัส M พิเศษของผู้ผลิตเครื่องจักร (MTB) | รหัสเปิดปิดน้ำหล่อเย็นแรงดันสูง, ลมเป่าเศษ หรือการปลดล็อกแกนหมุน แตกต่างกันในเครื่องแต่ละยี่ห้อ ตามบทที่ 10 |
| ฟังก์ชันออปชันขั้นสูง | คำสั่งทำงาน 5 แกน (เช่น G68.2, G43.4) และคำสั่งควบคุมความเร็วสูง มีไวยากรณ์และเงื่อนไขเฉพาะตัว |
| หมายเลขตัวแปรระบบของมาโคร | หมายเลขตัวแปรที่ใช้อ่านค่าออฟเซ็ตและตำแหน่งแกนปัจจุบันของ Fanuc, Haas และ Mitsubishi มีการจัดสรรต่างกัน |
| ลำดับบล็อกเปลี่ยนเครื่องมือและส่งแกนกลับโฮม | ผู้ผลิตเครื่องจักรแต่ละรายมีลำดับการยกแกนและการเตรียมเครื่องมือตัวถัดไปที่ไม่เหมือนกัน |
แนวทางปฏิบัติที่ดีที่สุดในการย้ายงาน: สำหรับโปรแกรมที่มีความยาวหรือโปรแกรมกัดผิว 3 มิติ ควรเปิดโปรเจกต์ในซอฟต์แวร์ CAM แล้วสั่งโพสต์โปรเซสเซอร์ใหม่สำหรับเครื่องจักรเป้าหมายโดยตรง การแก้ไขและแปลงโค้ดด้วยมือเหมาะกับโปรแกรมสั้นๆ ที่เขียนด้วยมือเท่านั้น และทุกครั้งที่ย้ายโปรแกรม ต้องทดสอบบนเครื่องจักรจริงตามขั้นตอนในบทที่ 21 เสมือนเป็นโปรแกรมใหม่ทุกครั้ง
31.8 ข้อผิดพลาดที่พบบ่อย
| ข้อผิดพลาดที่เกิดขึ้น | ผลเสียตามมา | แนวทางการป้องกัน |
|---|---|---|
| รันโปรแกรมที่ไม่มีจุดทศนิยมข้ามเครื่อง | แกนเครื่องมือวิ่งผิดตำแหน่งไป 1,000 เท่า ชนกระแทกรุนแรง | เขียนจุดทศนิยมกำกับตัวเลขพิกัดระยะทางทุกตัวเสมอเป็นนิสัย |
นำคำสั่ง G70/G71 ของ Fanuc ไปรันบน Siemens |
เครื่องจักรเปลี่ยนหน่วยวัดกะทันหัน ไม่เกิดการกลึงตามต้องการ | ตรวจสอบคู่มือคำสั่งของชุดควบคุมปลายทางก่อนรันโค้ดเสมอ |
นำโปรแกรม Haas ที่มีคำสั่ง M97 ไปรันบน Fanuc |
เกิด Alarm หรือเครื่องสั่งการรหัส M ผิดพลาด | ตัดแยกโปรแกรมย่อยออกเป็นไฟล์อิสระ แล้วเรียกใช้ด้วย M98 |
นำรหัสพิกัด G154 ไปรันบนเครื่องที่ไม่ใช่ Haas |
ชุดควบคุมขึ้น Alarm เนื่องจากไม่รู้จักคำสั่ง | แปลงรหัสคำสั่งกลับเป็น G54.1 P_ ให้ถูกต้องตามมาตรฐานเครื่อง |
คัดลอกบล็อก G43 H_ ไปใส่ในโปรแกรม Siemens |
ระบบไม่ยอมรับหรือเครื่องมือไม่ได้รับการชดเชยความยาว | เปลี่ยนมาใช้ระบบเรียกหมายเลขคมตัด D1 ตามไวยากรณ์ของ Siemens |
| สันนิษฐานว่าหมายเลข Alarm เหมือนกันทุกยี่ห้อ | วิเคราะห์สาเหตุผิดพลาดและเสียเวลาในการซ่อมบำรุง | อ่านข้อความเตือนภาษาอังกฤษบนจอและเปิดคู่มือ Alarm ของยี่ห้อนั้น |
| พยายามแปลงโปรแกรมของระบบสนทนาทีละบรรทัด | โครงสร้างคำสั่งผิดพลาด ทางเดินเครื่องมือเบี้ยวรูปทรง | โพสต์ใหม่จาก CAM ถ้าโปรแกรมมาจาก CAM หรือเขียนใหม่จากแบบงานถ้าเขียนที่หน้าเครื่อง |
| ปล่อยเดินโปรแกรมที่เพิ่งย้ายยี่ห้อมาโดยไม่ทดสอบ | เกิดการชนกระแทกหรือชิ้นงานเสียหาย | ปฏิบัติตามขั้นตอน Prove-out เสมือนเป็นโปรแกรมใหม่ทุกครั้ง |
สรุป
- หลักการพื้นฐานทั้งหมดในหนังสือเล่มนี้ใช้ได้กับทุกชุดควบคุม: ระบบพิกัดคาร์ทีเซียน, จุดศูนย์งาน, ออฟเซ็ตเครื่องมือ, การวางแผนกระบวนการ และการทดสอบโปรแกรมเป็นสากล สิ่งที่ต่างกันคือไวยากรณ์และรูปแบบคำสั่งเท่านั้น
- Haas และ Mitsubishi ทำงานบนพื้นฐานเดียวกับ Fanuc: Haas เพิ่มคำสั่ง
G154และM97ส่วน Mitsubishi เพิ่มคำสั่งM98 P_ H_,G54.1 P1–P300และมีพารามิเตอร์เลือกรูปแบบการอ่านตัวเลขที่ไม่มีจุดทศนิยม - Siemens มีภาษาเฉพาะตัว: คำสั่งหน่วยวัดคือ
G71(มม.) และG70(นิ้ว), ค่าชดเชยความยาวเปิดด้วยหมายเลขคมตัดD_, คำสั่งเจาะเป็นตระกูลCYCLE81ร่วมกับMCALLและสามารถสลับมารัน G-code สไตล์ Fanuc ได้ผ่านโหมด ISO Dialect ด้วยคำสั่งG291 - Mazak เขียนโปรแกรมได้สองแบบ: Mazatrol เป็นระบบสนทนาที่ไม่มีบรรทัดรหัส G ส่วน EIA/ISO เป็นรหัส G แบบปกติ ต้องดูก่อนว่าโปรแกรมเป็นแบบใด
- โปรแกรมจากระบบสนทนา (Conversational) แปลงทีละบรรทัดไม่ได้: ต้องสร้างโปรแกรมใหม่ โพสต์ใหม่จาก CAM ถ้าโปรแกรมเดิมมาจาก CAM หรือเขียนใหม่จากแบบงานถ้าเขียนที่หน้าเครื่อง
- เขียนจุดทศนิยมกำกับตัวเลขระยะทางทุกครั้ง: เป็นวินัยทางวิศวกรรมที่ช่วยป้องกันอุบัติเหตุพิกัดเพี้ยน 1,000 เท่าได้ปลอดภัยที่สุด และ ต้องทดสอบโปรแกรมที่ย้ายมาใหม่ตามขั้นตอน Prove-out เสมอ
พบข้อผิดพลาดหรือมีข้อเสนอแนะ? ส่งอีเมลแจ้งเรา