- การสร้างเครื่อง CNC Arduino:
- สิ่งที่คุณต้องการ:
- ฐานสำหรับเครื่อง CNC Plotter:
- การประกอบแกน X, Y และ Z:
- แท่นวาดสำหรับเครื่อง CNC:
- การเดินสายไฟและวงจรของเครื่อง CNC:
- รหัสเครื่อง CNC Arduino และการทดสอบ:
- วิธีสร้าง G-Code ของคุณเอง:
- GRBL Controller:
เครื่อง CNC เป็นเครื่องควบคุมเชิงตัวเลขด้วยคอมพิวเตอร์ซึ่งใช้ในการวาดอะไรก็ได้หรือออกแบบชิ้นส่วนเครื่องจักรกลใด ๆ ตามโปรแกรมการออกแบบที่ป้อนเข้าไปในชุดควบคุม ชุดควบคุมอาจเป็นคอมพิวเตอร์หรือไมโครคอนโทรลเลอร์ก็ได้ เครื่อง CNC มีสเต็ปเปอร์และเซอร์โวมอเตอร์เพื่อวาดการออกแบบตามโปรแกรมที่ป้อน
หลังจากค้นคว้าเกี่ยวกับเครื่อง CNC ฉันตัดสินใจสร้างเครื่อง CNC ของตัวเองโดยใช้วัสดุที่หาได้ในท้องถิ่น มีเครื่องจักร CNC จำนวนมากในโลกซึ่งบางเครื่องมีเทคนิคและซับซ้อนมากในการสร้างหรือใช้งานอย่างถูกต้อง ด้วยเหตุนี้ฉันจึงตัดสินใจสร้างCNC Plotter Machineแบบง่ายๆ โดยใช้ Arduinoซึ่งทำได้ง่ายที่สุด คุณยังสามารถใช้สิ่งนี้เป็นเครื่องวาด Arduino CNC โดยมีการปรับเปลี่ยนเล็กน้อย
เครื่องDIY Arduino CNCนี้สามารถวาดรูปทรงพื้นฐานข้อความและแม้แต่การ์ตูนได้เกือบทั้งหมด การทำงานของมันคล้ายกับวิธีที่มือมนุษย์เขียน รวดเร็วและแม่นยำกว่าเมื่อเทียบกับวิธีที่มนุษย์สามารถเขียนหรือวาดได้ ตรวจสอบวิดีโอสาธิตในตอนท้ายของบทช่วยสอนนี้
การสร้างเครื่อง CNC Arduino:
สำหรับเครื่องพล็อตซีเอ็นซีในการทำงานจำเป็นต้องใช้แกน 3 แกน (แกน x แกน y และแกน z แกน x และแกน y ทำงานพร้อมเพรียงกันเพื่อสร้างภาพ 2 มิติบนกระดาษธรรมดา x และ y เหล่านี้ แกนถูกวางไว้ 90 องศาซึ่งกันและกันเพื่อให้จุดใด ๆ บนพื้นผิวเรียบถูกกำหนดโดยค่า x และ y ที่กำหนดแกน z ใช้ยกและลดปากกาลงบนกระดาษธรรมดา
คอมพิวเตอร์จะสร้างพิกัดที่เหมาะสมและส่งไปยังไมโครคอนโทรลเลอร์ผ่านพอร์ต USB ทั้งนี้ขึ้นอยู่กับภาพที่จะวาด ไมโครคอนโทรลเลอร์แปลค่าพิกัดเหล่านี้จากนั้นควบคุมตำแหน่งของมอเตอร์เพื่อสร้างภาพ ที่นี่เราใช้ Arduino เป็นไมโครคอนโทรลเลอร์ในการสร้างเครื่อง CNC นี้ การเคลื่อนไหวแบบสามแกนนั้นมาจากสเต็ปเปอร์มอเตอร์ซึ่งจะถูกควบคุมโดยบอร์ด Arduino คุณสามารถตรวจสอบวิธีการเชื่อมต่อ stepper motor กับ Arduino ได้หากคุณยังใหม่กับสิ่งนี้
มาเริ่มสร้างอุปกรณ์Arduino CNCของเราทีละขั้นตอน
สิ่งที่คุณต้องการ:
หมายเหตุ: การออกแบบของฉันค่อนข้างแตกต่างกันในด้านฮาร์ดแวร์ในแง่ของขนาดและวัสดุที่ใช้ ฉันไม่พบไดรฟ์ดีวีดีเก่าดังนั้นฉันจึงเลือกใช้ชิ้นส่วนเครื่องพิมพ์ ไม่ว่าคุณจะใช้แบบใดตรวจสอบให้แน่ใจว่ามีสเต็ปเปอร์มอเตอร์
ความต้องการฮาร์ดแวร์:
- แผ่นอลูมิเนียม (710 มม. x 710 มม.)
- เครื่องพิมพ์ HP / Epson รุ่นเก่า คุณสามารถใช้ไดรฟ์ดีวีดีของคอมพิวเตอร์เครื่องเก่า
- สลักเกลียวและถั่ว
- แก้ว Perspex
- Arduino UNO
- L293D motor driver shield หรือ Arduino CNC shield
- มอเตอร์เซอร์โวขนาดเล็ก
- ปากกา
เครื่องมือ:
- ไขควง
- เจาะ
- เครื่องมือตัด (เลื่อยตัดหญ้า)
- กาว
- อุปกรณ์ม้านั่ง
โปรแกรม:
เพื่อการทำงานที่มีประสิทธิภาพของเครื่องนี้จะใช้โปรแกรมต่อไปนี้ ไปที่เว็บไซต์ต่างๆแล้วดาวน์โหลด
- Arduino IDE เวอร์ชัน 1.6.6 หรือใหม่กว่าจากที่นี่
- การประมวลผล IDE เวอร์ชัน 3.1.1 หรือเวอร์ชันที่ใหม่กว่าจากที่นี่
- Inkscape เวอร์ชัน 0.48.5 ดาวน์โหลดได้จากที่นี่
- ตัวควบคุม Grbl (อุปกรณ์เสริม)
ฐานสำหรับเครื่อง CNC Plotter:
ตัวเครื่องหลักของอุปกรณ์นี้คือฐานที่รองรับชิ้นส่วนหลักทั้งหมดของเครื่องเข้าด้วยกันเพื่อให้เครื่องมีความมั่นคงและพกพาได้ ในการออกแบบนี้เราจะใช้อลูมิเนียมในการสร้างฐานเนื่องจากมีน้ำหนักเบาดัดและตัดง่ายและยังให้ความเงางามที่ดีเนื่องจากไม่เป็นสนิม
การออกแบบและขนาดของฐานของฉันแสดงไว้ด้านล่าง:
หมายเหตุ: ขนาดทั้งหมดเป็นมิลลิเมตร
หลังจากการดัดและตัดทั้งหมดฉันสามารถสร้างฐานที่มั่นคงได้ดังที่แสดงด้านล่าง:
การประกอบแกน X, Y และ Z:
ในการสร้างแกน x และ yจะใช้แท่นรองเครื่องพิมพ์สองอัน แต่ละชิ้นส่วนเหล่านี้ประกอบด้วยสเต็ปเปอร์มอเตอร์และกลไกการขับเคลื่อนสายพานมักจะใช้ในการเคลื่อนตลับหมึกไปมา
สำหรับแกน zจะมีการติดมอเตอร์เซอร์โวขนาดเล็กบนแกน y โดยใช้กาว เซอร์โวมอเตอร์นี้ใช้ในการเลื่อนปากกาขึ้นลง ควรสร้างกลไกการรองรับที่ดีเพื่อให้สามารถเคลื่อนปากกาขึ้นและลงได้อย่างอิสระ
แท่นวาดสำหรับเครื่อง CNC:
เนื่องจากเครื่องมีขนาดใหญ่อุปกรณ์นี้จึงสามารถวาดภาพบนกระดาษขนาด A5 ได้ ดังนั้นเราจะตัดแพลตฟอร์มขนาด A5 (148 มม. x 210 มม.) ออกจากกระจก Perspex แล้วติดเข้ากับส่วนที่เคลื่อนที่ตามแกน x โดยใช้กาว
การเดินสายไฟและวงจรของเครื่อง CNC:
ใส่ชิลด์ไดรเวอร์มอเตอร์ L293Dเข้ากับบอร์ด Arduino UNO โล่นี้สามารถขับเคลื่อนมอเตอร์สเต็ปเปอร์สองตัวพร้อมกันและเซอร์โวมอเตอร์สองตัว เชื่อมต่อมอเตอร์สเต็ปสองตัวตามที่แสดงด้านล่าง ควรปล่อยให้การเชื่อมต่อกราวด์ไม่ได้เชื่อมต่อเนื่องจากมอเตอร์เป็นแบบไบโพลาร์ สิ่งนี้จะทำหน้าที่เป็นตัวควบคุม Arduino CNCสำหรับเครื่องพลอตเตอร์ของเรา
ติดมอเตอร์เซอร์โวขนาดเล็กเข้ากับเซอร์โว 1 ด้วย เชื่อมต่อแหล่งจ่ายไฟ 7.5V - 9V เข้ากับพอร์ตจ่ายไฟของโล่ขับมอเตอร์ ขณะนี้เครื่องพร้อมสำหรับการทดสอบแล้ว
รหัสเครื่อง CNC Arduino และการทดสอบ:
ก่อนอื่นเราต้องทดสอบสเต็ปเปอร์มอเตอร์และดูว่าเชื่อมต่อถูกต้องหรือไม่
เนื่องจากเรามีการใช้โล่คนขับรถมอเตอร์ L293D เราจำเป็นต้องดาวน์โหลดห้องสมุด AFmotor จากที่นี่ จากนั้นเพิ่มลงในโฟลเดอร์ไลบรารี Arduino IDE ของคุณ ให้แน่ใจว่าคุณเปลี่ยนชื่อไปAFMotor หาก Arduino IDE เปิดปิดและเปิดอีกครั้งและคลิกที่ ไฟล์ -> ตัวอย่าง -> Adafruit มอเตอร์โล่ Library -> stepper ตรวจสอบให้แน่ใจว่าคุณเลือกพอร์ตและบอร์ดในเครื่องมือที่ถูกต้องจากนั้นอัปโหลดรหัสลงในบอร์ด Arduino ควรสังเกตการเคลื่อนไหวบางอย่างบนสเต็ปเปอร์มอเตอร์
ในการทดสอบมอเตอร์สองให้เปลี่ยนพอร์ตมอเตอร์จาก 2 เป็น 1 ในบรรทัดต่อไปนี้แล้วอัปโหลดรหัสอีกครั้ง
#include // เชื่อมต่อสเต็ปมอเตอร์ 48 ขั้นต่อรอบ (7.5 องศา) // เข้ากับพอร์ตมอเตอร์ # 2 (M3 และ M4) มอเตอร์ AF_Stepper (48, 2);
รหัส Arduino สำหรับเครื่อง CNC:
เมื่อสเต็ปเปอร์มอเตอร์ตอบสนองอย่างเหมาะสมแล้วให้คัดลอกรหัส Arduino สำหรับเครื่อง CNCจากส่วนรหัสด้านล่างและอัปโหลดไปยังบอร์ด Arduino คุณสามารถดาวน์โหลดโค้ดได้จากลิงค์ด้านล่าง
ดาวน์โหลดรหัส Arduino CNC
G-Code สำหรับเครื่อง CNC:
G - CODE คือภาษาที่เราบอกให้เครื่องจักรคอมพิวเตอร์ (CNC) ทำอะไรบางอย่าง โดยพื้นฐานแล้วเป็นไฟล์ที่มีพิกัด X, Y และ Z
ตัวอย่างเช่น:
G17 G20 G90 G94 G54 G0 Z0.25X-0.5 Y0. Z0.1 G01 Z0. F5. G02 X0. Y0.5 I0.5 J0.5 F2.5 X0.5 Y0.5 I0. J-0.5 X0. Y-0.5 I-0.5 J0 X-0.5 Y0.2 I0. J0.5 G01 Z0.1 F5. G00 X0. Y0. Z0.25
การเขียน G-Code สำหรับสี่เหลี่ยมธรรมดาอาจเป็นเรื่องที่ท้าทาย แต่โชคดีที่เรามีซอฟต์แวร์ที่สามารถช่วยเราสร้าง G-Code ได้ ซอฟต์แวร์นี้เรียกว่า " Inkscape " ดาวน์โหลดได้จากที่นี่
คุณสามารถสร้าง G-Code ของคุณเองโดยใช้Inkscapeซึ่งเราได้อธิบายไว้ในหัวข้อถัดไปหรือ แต่คุณสามารถใช้ G-Codes ที่พร้อมใช้งานบนอินเทอร์เน็ตได้
ก่อนที่ฉันจะแสดงวิธีสร้าง G-Codes โดยใช้ Inkscape ให้พูดคุยเกี่ยวกับวิธีส่ง G-Codes เหล่านั้นไปยัง Arduino ซอฟต์แวร์ที่จะช่วยให้เราส่ง G-Codes ไปยัง Arduino เรียกว่า Processing
การประมวลผล IDE เพื่ออัปโหลด G-Code:
แพลตฟอร์มนี้จะช่วยเราส่ง G-Codes ไปยังบอร์ด Arduino ในการทำเช่นนั้นคุณจะต้องดาวน์โหลดไฟล์ GCTRL.PDE
ดาวน์โหลดไฟล์ GCTRL.pde จากที่นี่และเปิดโดยใช้ Processing IDE
เมื่อคุณเปิดใน Processing IDE แล้วให้คลิกเรียกใช้ หน้าต่างจะปรากฏขึ้นพร้อมคำแนะนำทั้งหมด กดpบนแป้นพิมพ์ ระบบจะขอให้คุณเลือกพอร์ต ดังนั้นเลือกพอร์ตที่บอร์ด Arduino ของคุณเชื่อมต่อ กรณีของฉันคือพอร์ต 6
ตอนนี้กดgและเรียกดูโฟลเดอร์ที่คุณบันทึก G-CODE ของคุณ เลือก G-CODE ที่ถูกต้องแล้วกด Enter หากทุกอย่างเชื่อมต่อถูกต้องคุณจะเห็นอุปกรณ์ของคุณเริ่มลงจุดบนกระดาษ
หากคุณต้องการยุติกระบวนการเพียงแค่กดxและอุปกรณ์จะหยุดทุกอย่างที่กำลังทำอยู่
วิธีสร้าง G-Code ของคุณเอง:
เรากล่าวว่าInkscapeเป็นซอฟต์แวร์ที่เราจะใช้ในการสร้าง G-CODES ของเรา ในตัวอย่างนี้เราจะสร้างข้อความธรรมดา (HELLO WORLD)ดังที่แสดงด้านล่าง
หมายเหตุ : Inkscape ไม่มีวิธีบันทึกไฟล์เป็น G-CODE ใน ตัว ดังนั้นคุณต้องติดตั้งโปรแกรมเสริมที่ช่วยให้สามารถส่งออกภาพไปยังไฟล์ G-CODE ดาวน์โหลดปลั๊กอิน MakerBot Unicorn จากที่นี่พร้อมบันทึกการติดตั้ง
หากการติดตั้งสำเร็จให้เปิด Inkscape ไปที่เมนู File แล้วคลิก "Document Properties" ขั้นแรกให้เปลี่ยนขนาดจาก px เป็น mm ลดความกว้างและความสูงลงเหลือ 90 มม. ตอนนี้ปิดหน้าต่างนี้ สี่เหลี่ยมจะปรากฏเป็นพื้นที่วาด นี่คือพื้นที่ที่เราจะใช้เขียนข้อความของเรา
ตอนนี้ที่แถบด้านซ้ายคลิกที่แท็บสร้างและแก้ไขวัตถุข้อความ พิมพ์ข้อความ " HELLO WORLD " และวางตำแหน่งไว้ที่มุมขวาบนของสี่เหลี่ยมดังที่แสดงด้านล่าง
คลิกข้อความและเลือกประเภทของแบบอักษรที่คุณต้องการ คลิกใช้และปิด
ตอนนี้คลิกที่เส้นทางและเลือก " object to path "
ตอนนี้ข้อความของคุณพร้อมที่จะบันทึกเป็น G-CODE แล้ว คลิกที่ ไฟล์ -> บันทึกเป็น จากนั้นพิมพ์ชื่อไฟล์ว่า "hello world"
เปลี่ยนประเภทไฟล์เป็น "MakerBot Unicon G-Code" ดังรูปด้านล่าง สิ่งนี้จะปรากฏก็ต่อเมื่อการติดตั้ง Add-on สำเร็จ สุดท้ายคลิกที่บันทึกและคลิกตกลงบนหน้าต่างป๊อปอัป
คุณได้สร้าง G-Code และสามารถลงจุดได้โดยใช้ขั้นตอนก่อนหน้านี้
GRBL Controller:
เมื่อคุณสามารถสร้าง G-Code โดยใช้ Inkscape ได้แล้วอาจจำเป็นต้องดู G-Code เพื่อให้แน่ใจว่าอยู่ในขอบเขตที่กำหนด
ขีด จำกัด ของการวาดภาพจะถูกตั้งค่าใน Arduino CNC รหัสในสายที่แสดงด้านล่าง:
ภาพที่แสดงด้านบนในคอนโทรลเลอร์ GRBL ไม่ควรเกินขีด จำกัด ดังที่แสดงในโค้ด CNC Arduinoด้านบน ถ้าเกินขีด จำกัด เหล่านั้นเช่นไปทางด้านลบของแกน x ส่วนนั้นที่อยู่ด้านลบจะไม่ถูกพล็อต
ในตัวอย่างนี้ค่า x และ y มีตั้งแต่ 0 มม. ถึง 40 มม.
เนื่องจากฉันใช้ชิ้นส่วนเครื่องพิมพ์ที่สามารถพล็อตบนพื้นที่ขนาดใหญ่ได้ฉันจึงเปลี่ยนค่าสูงสุดจาก 40 มม. เป็น 60 มม.
เมื่อใดก็ตามที่คุณสร้าง G-Code โดยใช้ Inkscape ก่อนอื่นคุณสามารถเปิด G-Code นั้นในโปรแกรม GRBL เพื่อดูว่าอยู่ในขอบเขตเหล่านั้นหรือไม่ หากไม่อยู่ภายในคุณต้องปรับขนาดภาพใน Inkscape จนกว่าภาพจะอยู่ในขีด จำกัด ของคุณ
ดังนั้นนี่คือราคาถูกและวิธีการที่ง่ายที่สุดในการสร้างเครื่อง CNC พลอตเตอร์โดยใช้ Arduino Uno ที่บ้าน ลองใช้และแจ้งให้เราทราบในความคิดเห็นตรวจสอบวิดีโอด้านล่าง