การใช้งาน EASY DUINO PRO ในการส้าง mini CNC ด้วย GRBL
การใช้บอร์ด EASY DUINO PRO ในการสร้าง miniCNC โดยใช้ ซอฟแวร์ GRBL
เรามาทำการติดตั้ง GRBL ลงในบอร์ด EASYDUINO PRO ด้วย ARDUINO IDE
https://github.com/grbl/grbl/wiki
1.เข้าไปใน LINK แล้วทำการโหลด GRBL ทำการ save เป็น ZIP
2.แตกไฟล zip ที่โหลดออกมา
3.เลือก ไฟล์ ชือ GRBL copy นำไปวางในlibrary
ใน Arduino IDE
4.เปิด Arduino IDE
5.ทำการ UPLOAD ซอฟแวร์ลงในบอร์ด EASYDUINO PRO
6.โดยเลือกCOMPORTที่เครื่องคอมพิวเตอร์พบ หากยังไม่ลงDriver CH340 ให้ทำการDowload
ตัวอย่าง การเชื่อมต่อสายต่างๆกับ Driver stepper motor
สำหรับ การต่อ LAYOUTทั้งหมดของบอร์ด EASYDUINO PRO
การ ตั้งค่า โปรแกรมGRBL ด้วยการ เขียนคำสั่ง อย่างง่าย ด้วย command
เมื่อทำการ upload โปรแกรม เสร็จแล้ว ให้ทำเปิด Serial monitor ใน Arduino IDE จะเห็น ดังภาพด้านล่าง
หลังจากนั้น ให้ทำการ พิมพ์ $$ แล้ว Enter จะมีขอมอูลในการตั้งค่าต่างๆแสดงออกมา
ถ้าต้องการทราบ คำสั่งอื่นๆสามารถเข้าไปดูเพิ่มได้ที่ command
โดยข้อมมูลที่แสดง มีรายละเอียดดังนี้
วิธีการปรับตั้งค่า
การตั้งค่า GRBL สามารถทำได้โดย พิมพ์ตัวเลขของค่าพารามิเตอร์ที่ต้องการเปลี่ยน ตามด้วย = และค่าใหม่
เช่น การตั้งค่า step/mm. ของแกน X เป็น 80 step /mm. หากต้องการตั้งต่า ให้ทำการพิมพ์ $100= 80 และEnter
จะมีการต่อจากบอร์ด ว่า ok และสามารถตรวจสอบค่าได้โดย พิมพ์ $$ และEnter จะมีการแสดงค่า ที่ตั้งค่าใหม่ออกมา
การคำนวน STEP/ mm. ของ มอเตอร์ STEPPPER
การคำนวน นี้เป็นส่วนสำคัยที่หมายถึงคสสามสำคัญของความแม่นยำของเครื่อง cnc ที่เราสร้างขึ้น ว่าเคลื่อนที่ไปตามขนาดที่เราต้องการหรือไม่ และตรงตามการสั่งงานหรือไม่นั้นเอง
- มอเตอร์ใช้จานวน pulse เท่าไรในการหมุน 1 รอบ หรือค่า pulse ที่เราตั้งที่ไดร์ นั้นเอง ในกล่อง ไดร์ปัจจุบัน จะมีเขียนไว้ที่กล่อง แต่ถ้ามาเป็นแบบองศา เช่น 1.8 องศา ก็คือ 1 pulse จะหมุนไป 1.8 องศา ที่นี้รอบหนึ่งก็คือ 360 องศา ก็หมายความว่า ต้องเอา 360 /1.8 เท่ากับต้องใช้ 200 pulse นั้นเอง
- เมื่อได้ค่า pulse ต่อการหมุนหนึ่งรอบมาแล้วนั้น ก็หมายความว่าเราต้องตั้งให้โปรแกรมให้รู้ว่ารอบ หนึ่งที่มอเตอร์หมุน เคลื่อนที่ไปเท่าไร เช่นหากเราใช้บอลสกูล ที่มีระยะ pitch 5 mm ก็คือหมุนบอลสกูลรอบหนึ่ง ตัวnut จะเคลื่อนที่ 5 mmนั้นเอง
- เอาค่า pulse มาหารด้วยระยะทางในการเคลื่อนที่ต่อหนึ่งรอบของการหมุนของมอเตอร์ ก็จะเท่ากับ
200/5 =40 นั้นเองครับ
สรุปคือ เอาค่า pulse ที่ทาให้มอเตอร์หมุนหนึ่งรอบ/ด้วยระยะที่เกิดการเคลื่อนที่เมื่อมอเตอร์หมุนหนึ่งรอบ
การควบคุม หรือ การสั่งงาน cnc ด้วย Gcode พื้นฐาน
G-code (Specifies a preparatory function command) คือ ชุดคำสั่ง ที่ว่าด้วยการควบคุม ต่ำแหน่งและ output ต่างๆของการควบคุมแบบCNC เช่นการคุมตำแหน่ง XYZ สำหรับ บทความนี้จะ อธิบายการใช้งานกับ GRBL อย่างง่ายเท่านั้นและจะลงรายละเอียดในบทความต่อไป
M-code (Specifies a miscellaneous function command) คือ ชุดคำสั่ง ที่ใช้สำหรับควบคุม ตัวอุปกรณท กับเครื่อง เช่น Output motor on off ระบบนำ้ เป็นต้น
ชุดคำสั่งที่ G-code และ M-codeดังนี้
List of Supported G-Codes in Grbl v1.1:
Non-Modal Commands: G4, G10L2, G10L20, G28, G30, G28.1, G30.1, G53, G92, G92.1
- Motion Modes: G0, G1, G2, G3, G38.2, G38.3, G38.4, G38.5, G80
- Feed Rate Modes: G93, G94
- Unit Modes: G20, G21
- Distance Modes: G90, G91
- Arc IJK Distance Modes: G91.1
- Plane Select Modes: G17, G18, G19
- Tool Length Offset Modes: G43.1, G49
- Cutter Compensation Modes: G40
- Coordinate System Modes: G54, G55, G56, G57, G58, G59
- Control Modes: G61
- Program Flow: M0, M1, M2, M30*
- Coolant Control: M7*, M8, M9
- Spindle Control: M3, M4, M5
- Valid Non-Command Words: F, I, J, K, L, N, P, R, S, T, X, Y, Z
สามารถดูคำอธิบาย Gcode และ Mcode ได้ที่ CNC-CODE
การเขียนคำสั่ง Gcode and Mcode
ตัวอย่างการสั่งงานเป็นตำแหน่ง โดยใช้ G0 และ G1
ตัวอย่าง
G0 คือสั่งการเคลื่อนที่เป็นเส้นตรง ที่ความเร็วสูงสุดของเครื่องที่ตั้งค่าไว้
การเขียนสั่งงาน ตัวอย่าง ให้หัวCNC เคลื่อนที่ ไปที่ต่ำแหน่ง X100 Y100 Z100 ด้วยความเร็วสูงสุด หน้าตาของคำสั่งจะเป็นดังนี้
G0 X100 Y100 Z100
G1 คือสั่งการเคลื่อนที่เป็นเส้นตรง โดยกำหนดความเร็ว ในการวิ่ง
การเขียนสั่งงาน ตัวอย่าง ให้หัวCNC เคลื่อนที่ ไปที่ต่ำแหน่ง X100 Y100 Z100 ด้วยความเร็ว 1000 mm/min หน้าตาของคำสั่งจะเป็นดังนี้
G1 X100 Y100 Z100 F1000
F =feed rate หรือ อัตราการเคลื่อนที่ ปกติเป็นหน่วย mm./min
การเขียน สี่เหลี่ยม แบบง่าย
ใช้คำสั่ง Gcode เขียน ให้ cnc เคลื่อนที่ เป็น สี่เหลี่ยม วนตามเข็มนาฬิกา ขนาด 50×50 mm.
G92 X0 Y0 Z0 % OFFSET POSITION RESET ZERO Only GRBL
G0 X0 Y0
G0 X0 Y50
G0 X50 Y50
G0 X50 Y0
G0 X0 Y0
M30 % END code
ชุดคำสั่ง Gcode เป็นดังนี้
การเคลื่อนที่วงกลม
สำหรับทำชุดคำสั่ง Gcode สามารถเขียนใน noetpad และsave เป็น .gcode , .nc , .tap ได้เลยและนำไปเปิดใน Gcode sender เพื่อสั่งให้ เครื่องทำงานด้วย Gcode ได้เลย
ตัวอย่าง G-code sender ที่แนะนำ
1.Universal Gcode Sender คลิกเพื่อเข้าเว็บสำหรับDowload
สำหรับ การใช้งาน UGS ดูในLINK UGS (HOW TO USE )
2.Candle คลิกสำหรับเข้าเว็บDowload
สำหรับ บทความนี้ ผมขอพักลงไว้เพียงเท่านี้ครับ บทความต่อไปจะมาอธิายลงลึกถึงการใช้ Gcode และการประดิษฐ์ เครื่อง CNC เป็นของตัวเอง หากเป็นประโยชน์ อยากให้กด แชร์ให้คนอื่นอ่านด้วยนะครับ สามารถถามได้นะครับ