ข้อเปรียบเทียบในการเลือกใช้ CNC Controller สำหรับการ Retrofit CNC ระหว่าง Mach3 และ Linuxcnc

เหตผลที่จะต้องทำการศึกษาเปรียบเที่ยบการเลือก CNC Controller ที่เหมาะสมนั้น มันมีปัญหาอยู่ว่ามีผู้ที่สนใจจะทำการ Retrofit หรือ ปรับปรุง เครื่องจักร CNC ให้ใช้งานได้โดยเนื่องมาจากเหตผลดังนี้
  • 1.CNC Controller ประเภท Compact Design มีต้นทุนที่สูง 
  • 2.ต้องการผู้ชำนาญงานในการติดตั้ง
  • 3.มีข้อจำกัดเกี่ยวกับการ เลื่อกใช้อุปกรณ์ต่อพ่วงต่าง ๆ
  • 4.ต้องการเรียนรู้ระบบ สำหรับการพัฒนาและช่วยเหลือตนเองให้เกิดความคล่องตัวในการทำงาน Automation

จึงหาแนวทางอื่น แนวทางที่น่าสนใจคือการใช้ CNC Controller แบบ PC Base ซึ่งมี Software ที่สามารถทำงานควบคุม CNC ได้เช่นกัน Software ที่เรานิยมกันคือ MACH3 CNC Controller โปรแกรมดังกล่าวค่อนข้างจะมีชื่อเสียงในกลุ่มใช้งาน PC Base เนื่องจากความสะดวกในการใช้งานเพราะใช้ ระบบปฎิบัติการ Windows ส่วน โปรแกรมอีกตัวที่นิยมใช้ กันคือ LinuxCNC หากคนที่ไม่เข้าใจในการเลือกใช้ระบบปฏิการ จะมีความรู้สึกว่าค่อนข้างยุ่งยากในการใช้งาน

จากประวัติการสร้าง Linuxcnc นั้นที่จริงแล้วเป้าหมายคือมาทดแทน CNC Controller แบบ Compact Design ที่ถูกสร้างโดย NIST หากท่านใดสนใจหาอ่านได้ จาก Link นี้ครับ 

ข้อเปรียบเทียบเรื่องระบบปฏิบัติการ ระหว่าง Windows และ Linux สำหรับงาน ควบคุมเครื่องจักร 




มีคำถามว่า ระบบทันเวลา หรือ RTOS มันมีความสำคัญอย่างไรมีคำตอบดังนี้ครับ

ยกตัวอย่าง

การกลึงเกลียว ความสัมพันธ์ระหว่างการเคลื่อนที่ของแกน Z จะต้อง สัมพันธ์กับการเคลื่อนที่ของ Spindle ระบบของ CNC จะต้องมีการตรวจสอบความเร็วรอบที่ถูกต้องตลอดเวลาหากผิดเพี้ยนก็จะทำได้ชิ้นงานที่ไม่ถูกต้องด้วย 



หรือ

การกลึงแบบ ความเร็วตัดคงที่ ความสัมพันธ์ของแกน X จะต้องมีความสัมพันธ์กับความเร็วรอบ ของ Spindle เช่นกัน 

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

หมายเหตุ ผู้เขียนมีประสพการณ์ การทดลองการกลึงเกลียวด้วย Mach3 CNC Controller มาเช่นกัน ซึ่งต้องสร้าง G Code แบบพิเศษ คุณภาพงานและเวลาจะสู้ LinuxCNC ไม่ได้ ที่ต้องหมายเหตุ เนื่องจากอาจมีผู้ขัดแย้งกับบทความนี้จึงใคร่ขออธิบายใว้ ผู้เขียนมิได้เข้าข้างใดข้างหนึ่งแต่ขออธิบายด้วยเหตุผล และ ประสพการณ์ หากท่านใดมีข้อสงสัยหรือขัดแย้งสามารถ ติดต่อได้ตามที่อยู่ติดต่อของ Blog นี้ได้ครับ


จากตัวอย่างดังกล่าว บนระบบปฏิบัติการ Windows ที่ใช้กันทั่วไปจะไม่มี RTOS จะมีก็แต่ใน Windows CE เท่านั้น ดังนั้นน่าจะเป็นคำตอบว่าหากสนใจที่จะปรับปรุงเครื่องจักรทำไมจึงต้องใช้ LinuxCNC 


ตัวอย่างที่เห็นชัดในรูปของ G-Code Support ระหว่าง Mach3 กับ LinuxCNC










LinuxCNC "G-Code" Quick Reference อ่านอย่างละเอียดที่นี่ครับ
CodeParametersDescription
Motion(X Y Z A B C U V W apply to all motions)
G0Rapid Move
G1Linear Move
G2, G3I J K or R, PArc Move
G4PDwell
G5I J P QCubic Spline
G5.1I JQuadratic Spline
G5.2P LNURBS
G38.2 - G38.5Straight Probe
G33KSpindle Synchronized Motion
G33.1KRigid Tapping
G80Cancel Canned Cycle
Canned cycles(X Y Z or U V W apply to canned cycles, depending on active plane)
G81R L (P)Drilling Cycle
G82R L (P)Drilling Cycle, Dwell
G83R L QDrilling Cycle, Peck
G73R L QDrilling Cycle, Chip Breaking
G85R L (P)Boring Cycle, Feed Out
G89R L (P)Boring Cycle, Dwell, Feed Out
G76P Z I J R K Q H L EThreading Cycle
Distance Mode
G90, G91Distance Mode
G90.1, G91.1Arc Distance Mode
G7Lathe Diameter Mode
G8Lathe Radius Mode
Feed Rate Mode
G93, G94, G95Feed Rate Mode
Spindle Control
M3, M4, M5SSpindle Control
M19Orient Spindle
G96, G97S DSpindle Control Mode
Coolant
M7, M8, M9Coolant Control
Tool Length Offset
G43HTool Length Offset
G43.1Dynamic Tool Length Offset
G43.2HApply additional Tool Length Offset
G49Cancel Tool Length Compensation
Stopping
M0, M1Program Pause
M2, M30Program End
M60Pallet Change Pause
Units
G20, G21Units
Plane Selection(affects G2, G3, G81…G89, G40…G42)
G17 - G19.1Plane Select
Cutter Radius Compensation
G40Compensation Off
G41,G42DCutter Compensation
G41.1, G42.1D LDynamic Cutter Compensation
Path Control Mode
G61 G61.1Exact Path Mode
G64P QPath Blending
Return Mode in Canned Cycles
G98Canned Cycle Return Level
Other Modal Codes
FSet Feed Rate
SSet Spindle Speed
TSelect Tool)
M48, M49Speed and Feed Override Control
M50P0 (off) or P1 (on)Feed Override Control
M51P0 (off) or P1 (on)Spindle Speed Override Control
M52P0 (off) or P1 (on)Adaptive Feed Control
M53P0 (off) or P1 (on)Feed Stop Control
G54-G59.3Select Coordinate System
Flow-control Codes
o subSubroutines, sub/endsub call
o whileLooping, while/endwhile do/while
o ifConditional, if/else/endif
o repeatRepeat a loop of code
[]Indirection
o callCall named file
M70Save modal state
M71Invalidate stored state
M72Restore modal state
M73Save and Auto-restore modal state
Input/Output Codes
M62 - M65PDigital Output Control
M66P E L QWait on Input
M67TAnalog Output,Synchronized
M68TAnalog Output, Immediate
Non-modal Codes
M6TTool Change
M61QSet Current Tool
G10 L1P Q RSet Tool Table
G10 L10PSet Tool Table
G10 L11PSet Tool Table
G10 L2P RSet Coordinate System
G10 L20PSet Coordinate System
G28, G28.1Go/Set Predefined Position
G30, G30.1Go/Set Predefined Position
G53Move in Machine Coordinates
G92Coordinate System Offset
G92.1, G92.2Reset G92 Offsets
G92.3Restore G92 Offsets
M101 - M199P QUser Defined Commands
Comments & Messages
; (…)Comments
(MSG,…)Messages
(DEBUG,…)Debug Messages
(PRINT,…)Print Messages


จะเห็นได้ว่า G-Code Support ที่สนองการทำงานของเครื่องจักร  LinuxCNC จะมีการ Support ชุดคำสั่งมากกว่า Mach3 CNC controller นั่นหมายความว่า ขีดความสามารถของ LinuxCNC Controller จะมีความสามารถมากกว่า Mach3 CNC เช่นกันครับ

สำหรับประเทศไทยแล้ว ชอบการโฆษณาชวนเชื่อมากกว่าเหตุผลมันจึงเป็นที่มาของความไม่รู้จริง และ ปัญหาหากเราอยากเข้าสู่ยุค I4.0 คงจะต้องปรับปรุงวิธีการเรียนรู้กันครับ ด้วยความหวังดีและจริงใจ จาก PANMANEECNC

ความคิดเห็น