Grbl เป็น opensource cnc controller ที่มีประสิทธิภาพสูงในการควบคุมการเคลื่อนที่ของ cnc ที่ทำให้สิ่งต่าง ๆ เกิดการเคลื่อนไหวของผู้ผลิตเป็นอุตสาหกรรม, Grbl จะเป็นมาตรฐานอุตสาหกรรม
Grbl เหมาะสำหรับใคร
Maker Bots ส่วนใหญ่ และ เปิดแหล่งเครื่องพิมพ์ 3D มี Grbl ในหัวใจของพวกเขา จะได้รับการปรับให้เหมาะสมกับการใช้งานในหลายร้อยโครงการรวมทั้งตัดเลเซอร์, นักเขียนมืออัตโนมัติเจาะหลุมหลุมจิตรกรภาพวาดและเครื่องวาดภาพลูกบอลในกอล์ฟ เนื่องจากความเรียบง่าย และ ความต้องการของฮาร์ดแวร์ประหยัดของ Grbl ได้เติบโตขึ้น เป็นปรากฏการณ์เล็ก ๆ ของ โปรแกรมโอเพนซอร์ส CNC Controller
ในปี 2009 Simen Svale Skogsrud (http://bengler.no/grbl) เขียน และ ปล่อยรุ่นแรกของ Grbl ให้กับทุกคน ตั้งแต่ 2011,
Grbl เหมาะสำหรับใคร
ผู้ผลิตที่ทำสีและต้องดีควบคุมง่ายสำหรับระบบของพวกเขาที่จะทำงาน Arduino Uno แพร่หลาย คนที่เกลียดเพื่อถ่วงพื้นที่ของพวกเขามีหอคอย PC-มรดกเพียงสำหรับพอร์ตขนาน Tinkerers ที่ต้องควบคุมในการเขียนเป็นระเบียบเรียบร้อยแบบแยกส่วน C เป็นพื้นฐานสำหรับโครงการของพวกเขา
คุณสมบัติที่ดี
Grbl พร้อมสำหรับการผลิตงานเบา เราใช้มันสำหรับทุกโม่ของเราทำงานได้จากแล็ปท็อปของเราโดยใช้ GUIs ผู้เขียนที่ดีหรือสคริปต์คอนโซลง่าย (รวม) ในการสตรีม G-รหัส มันเขียนไว้ใน C การเพิ่มประสิทธิภาพการใช้ประโยชน์จากคุณสมบัติทั้งหมดที่ฉลาดของชิป ATMEGA328P Arduino ที่จะประสบความสำเร็จในระยะเวลาที่แม่นยำและการดำเนินงานไม่ตรงกัน มันเป็นความสามารถในการรักษามากขึ้นกว่าอัตราขั้นตอน 30kHz และส่งมอบความสะอาดกระวนกระวายใจกระแสฟรีของพัลส์ควบคุม
Grbl สำหรับสามเครื่องแกน ไม่มีแกนหมุน (ยัง) - เพียงแค่ X, Y, และ Z
ล่าม G-รหัสดำเนินการย่อยของ NIST rs274 / NGC มาตรฐานและได้รับการทดสอบกับการส่งออกของจำนวนของเครื่องมือ CAM ที่มีปัญหาใด ๆ เชิงเส้นวงกลมและขดลวดได้รับการสนับสนุนอย่างเต็มที่
สนับสนุน G-รหัสใน v0.9
G38.2: พิสูจน์
G43.1, G49: ความยาวเครื่องมือแบบไดนามิกออฟเซ็ต
สนับสนุน G-รหัสใน v0.8 (และ v0.9)
G0, G1: การเคลื่อนไหวเชิงเส้น
G2, G3: Arc และลานเคลื่อนไหว
G4: Dwell
G10 L2, G10 L20: ตั้งค่าการทำงานประสานงานออฟเซ็ต
G17, G18, G19: การเลือกเครื่องบิน
G20, G21: หน่วย
G28, G30: ไปยังตำแหน่งที่กำหนดไว้ล่วงหน้า
G28.1, G30.1: ชุดตำแหน่งที่กำหนดไว้ล่วงหน้า
G53: ย้ายในพิกัดโซลูท
G54, G55, G56, G57, G58, G59: งานประสานงานระบบ
G80: โหมดเคลื่อนไหวยกเลิก
G90, G91: โหมดระยะทาง
G92: ประสานงาน Offset
G92.1: ล้างประสานงานระบบออฟเซ็ท
G93, G94: โหมด Feedrate
M0, M2, M30: หยุดโปรแกรมและสิ้นสุด
M3, M4, M5: การควบคุมแกน
M8, M9: การควบคุมน้ำหล่อเย็น
ค่าตัวเลือกส่วนใหญ่สามารถตั้งค่าที่รันไทม์และจะถูกบันทึกไว้ใน EEPROM ระหว่างการประชุมและยังคงอยู่ระหว่างรุ่นที่แตกต่างกันของ Grbl ที่คุณอัพเกรดเฟิร์มแว สำหรับคำอธิบายเหล่านี้กรัมรหัส, เราปฏิบัติตามแนวทาง NIST กรัมรหัสและ LinuxCNC.org นอกจากนี้ยังมีเอกสารที่ดีสำหรับเหล่านี้เช่นกัน (G-รหัส) (M-รหัส) (รหัสอื่น ๆ )
การจัดการการเร่งความเร็ว
ในวันแรก, Arduino ตัวควบคุมซีเอ็นซีไม่ได้มีการเร่งการวางแผนและไม่สามารถทำงานที่ความเร็วเต็มโดยไม่ต้องชนิดของการผ่อนคลายบาง คง Grbl ของการเร่งจัดการกับมองไปข้างหน้าวางแผนแก้ปัญหานี้และได้รับการจำลองแบบทุกที่ในโลกไมโครคอนโทรลเลอร์ CNC จากมาร์ลินที่จะ TinyG Grbl จงใจใช้รูปแบบการเร่งความเร็วคงที่เรียบง่ายซึ่งเป็นมากกว่าเพียงพอสำหรับบ้านใช้ซีเอ็นซี ด้วยเหตุนี้เราสามารถที่จะลงทุนเวลาของเราการเพิ่มประสิทธิภาพขั้นตอนวิธีการวางแผนของเราและทำให้การเคลื่อนไหวแน่ใจว่ามั่นคงและเชื่อถือได้ เมื่อติดตั้งทุกชุดคุณลักษณะที่เราคิดว่ามีความสำคัญมีความสมบูรณ์และไม่จำเป็นต้องใช้ในการปรับเปลี่ยนการวางแผนของเราเพื่อรองรับพวกเขา, เราตั้งใจที่จะถ่ายโอนไปขึ้นขั้นสูง 3 สั่งเร่งโปรไฟล์ S-โค้งซึ่งโดยทั่วไปมักจะเป็นประโยชน์สำหรับ เครื่องเดียวที่มีอัตราการป้อนสูงมาก (เช่นเลือกและสถานที่) หรือในสภาพแวดล้อมการผลิต สุดท้ายนี่คือการเชื่อมโยงอธิบายพื้นฐานของขั้นตอนวิธีการเข้าโค้งที่ความเร็วสูงของเราเพื่อความสะดวกในการเคลื่อนไหวอัตราที่เร็วที่สุดในอาหารสัตว์และเบรกก่อนที่มุมคมสำหรับการดำเนินงานอย่างรวดเร็วยังกระตุกฟรี
ข้อ จำกัด จากการออกแบบ
เราได้รับการ จำกัด กรัมรหัสการสนับสนุนจากการออกแบบ นี้ช่วยให้ซอร์สโค้ด Grbl ง่ายน้ำหนักเบาและมีความยืดหยุ่นในขณะที่เรายังคงพัฒนาปรับปรุงและรักษาเสถียรภาพกับแต่ละคุณลักษณะใหม่ Grbl สนับสนุนการดำเนินงานทั่วไปที่พบในการส่งออกจากเครื่องมือ CAM-แต่ปล่อยให้บางอย่างของมนุษย์กรัม coders-ผิดหวัง ตัวแปรที่ไม่มีฐานข้อมูลเครื่องมือที่ไม่มีฟังก์ชั่นไม่มีรอบกระป๋องไม่มีคณิตศาสตร์และไม่มีโครงสร้างการควบคุม เพียงแค่การดำเนินงานเครื่องขั้นพื้นฐานและความสามารถในการ อะไรที่ซับซ้อนมากขึ้นเราคิดว่าสามารถจัดการกับอินเตอร์เฟซที่ค่อนข้างง่ายและแปลพวกเขาสำหรับ Grbl
คุณลักษณะใหม่ใน v0.9!
ได้จริงๆมันจะเป็นปีครึ่งตั้งแต่รุ่นล่าสุด? โอ้ว่าเวลาบินของฉัน .. ทั้งนี้นี้คือการปรับปรุงขนาดใหญ่! ความเสถียรและประสิทธิภาพการทำงานที่ได้รับการฝึกฝนและรุนแรงขึ้นจะทำให้คุณภาพการผลิต Grbl นี่คือบทสรุปของการเปลี่ยนแปลงใหม่:
สำคัญ: การตั้งค่า baudrate อนุกรมตอนนี้ 115200! (เพิ่มขึ้นจาก 9600)
New Super Smooth อัลกอริทึม Stepper: ยกเครื่องสมบูรณ์ของการจัดการของคนขับรถ stepper เพื่อลดความซับซ้อนและลดเวลาในการงานต่อ ISR เห็บ การดำเนินการมากนุ่มนวลกับใหม่ขั้นตอนการปรับเปลี่ยนหลายแกน Smoothing (AMASS) อัลกอริทึมที่ไม่สิ่งที่ชื่อของมันหมายถึง (ดูแหล่งที่มา stepper.c สำหรับรายละเอียด) ผู้ใช้ทันทีจะเห็นการปรับปรุงที่สำคัญในวิธีการที่เครื่องของพวกเขาย้ายและประสิทธิภาพโดยรวม!
ความเสถียรและความทนทานอัพเดท: ความมั่นคงโดยรวม Grbl ได้รับการมุ่งเน้นสำหรับรุ่นนี้ วางแผนและอินเตอร์เฟซขั้นตอนการดำเนินการที่ได้รับการเขียนอย่างสมบูรณ์อีกครั้งเพื่อความแข็งแรงและเป็นอมตะโดยการแนะนำของบัฟเฟอร์ส่วนขั้นตอนกลางที่ว่า "การตรวจสอบออก" ขั้นตอนจากบัฟเฟอร์วางแผนในเรียลไทม์ ซึ่งหมายความว่าเราสามารถขับรถในขณะนี้ไม่เกรงกลัว Grbl มันเป็นข้อ จำกัด ที่สูงที่สุด บวกกับขั้นตอนวิธี stepper ใหม่และการเพิ่มประสิทธิภาพการวางแผนนี้แปลถึง 5 เท่าถึง 10 เท่าเพิ่มประสิทธิภาพการทำงานโดยรวมในการทดสอบของเรา! นอกจากนี้ยังมีความมั่นคงและการทดสอบความทนทานได้รับรายงานได้อย่างง่ายดายใช้ 1.4 ล้าน (ใช่ล้านบาท) โปรแกรมสาย G-รหัสเหมือนแชมป์!
(x4) + เร็วกว่าแผนปฏิบัติงาน: การคำนวณการวางแผนที่ดีขึ้นสี่เท่าหรือมากกว่าโดยการเพิ่มประสิทธิภาพการดำเนินงานแบบ end-to-end ซึ่งรวมถึงเพรียวลมการคำนวณและแนะนำตัวชี้วางแผนที่จะหาบางส่วนยกเลิกการทำให้ดีขึ้นของบัฟเฟอร์และไม่เสียรอบ recomputing พวกเขา
G-รหัสตัวแยกวิเคราะห์ยกเครื่อง: สมบูรณ์อีกครั้งที่เขียนจากพื้นดินขึ้น 100% -compliance * มาตรฐาน G-รหัสและเสร็จสมบูรณ์กับการตรวจสอบข้อผิดพลาดเต็ม
การเร่งความเร็วอิสระและการตั้งค่าความเร็ว: แกนแต่ละคนจะถูกกำหนดด้วยความเร่งที่ไม่ซ้ำกันและพารามิเตอร์ความเร็วและ Grbl โดยอัตโนมัติจะคำนวณอัตราเร่งและความเร็วสูงสุดผ่านเส้นทางขึ้นอยู่กับทิศทางการเดินทาง
ข้อ จำกัด : ตรวจสอบถ้าคำสั่งการเคลื่อนไหวใด ๆ ที่เกินขีด จำกัด ของพื้นที่ทำงานก่อนที่จะดำเนินการได้และสัญญาณเตือนออกถ้าตรวจพบ
ละเอียด: G38.2 สอบสวนตรงคำสั่งกรัมรหัสได้รับการสนับสนุนในขณะนี้และการเชื่อมต่อผ่านขา A5
ความยาวชดเชยเครื่องมือตัว: พิสูจน์ไม่ได้ทำให้ความรู้สึกโดยไม่ต้องชดเชยความยาวเครื่องมือ (TLO) เพื่อให้เราเพิ่ม G43.1 / 49 มากเกินไป!
ใหม่ Grbl SIMULATOR! (โดย @jgeisler และ @ashelly): เสื้อคลุมอิสระอย่างสมบูรณ์ของรหัสแหล่งที่มาหลัก Grbl ที่อาจจะรวบรวมเป็นปฏิบัติการบนคอมพิวเตอร์ Arduino ไม่จำเป็นต้องใช้ เพียงแค่เลียนแบบการตอบสนองของ Grbl ราวกับว่ามันเป็นใน Arduino
สามารถกำหนดค่าการรายงานสถานะเรียลไทม์: ขณะนี้ผู้ใช้สามารถปรับแต่งชนิดของข้อมูลเรียลไทม์ Grbl รายงานกลับไปเมื่อพวกเขาออก '?' รายงานสถานะ ซึ่งรวมถึงข้อมูลเช่น: ตำแหน่งเครื่อง, ตำแหน่งงาน, การใช้บัฟเฟอร์วางแผนอนุกรมการใช้ RX บัฟเฟอร์
และอีกมากมาย!
คุณลักษณะใหม่ใน v0.8!
จำนวนมากที่ได้เกิดขึ้นตั้งแต่ v0.7 เรากำลังผลักดันจริงอย่างหนักเพื่อสร้างง่ายควบคุมซีเอ็นซีที่มีประสิทธิภาพสำหรับยัง Arduino ที่เคารพ นี่คือรายการของสิ่งใหม่ที่ได้มา v0.8
แบบมัลติทาสกิ้เรียกใช้คำสั่งเวลา: ฟีถือที่มีการชะลอตัวของการควบคุมการสูญเสียสถานที่ไม่มีประวัติหลังจากที่ถืออาหารรีเซ็ตและการรายงานสถานะ
ขั้นสูง Homing วงจร: จำนวนมากของตัวเลือกการกำหนดค่าสำหรับชนิดของเครื่องจากการที่แกนจะย้ายเมื่อทิศทางค้นหาของพวกเขา สวิทช์ จำกัด นอกจากนี้ยังอาจใช้เป็นข้อ จำกัด อย่างหนักเช่นกัน
Persistent ระบบพิกัดข้อมูล: การทำงานประสานงานระบบ (G54-G59) และตำแหน่งที่กำหนดไว้ล่วงหน้า (G28, G30) จะมีขึ้นใน EEPROM ดังนั้นพวกเขาจึงมักจะถูกตั้งค่าที่คุณตั้งล่าสุดพวกเขา
ตรวจสอบโหมด G-Code: ตั้งขึ้น Grbl จะวิ่งผ่านโปรแกรมของคุณโดยไม่ต้องย้ายอะไรเพื่อให้คุณสามารถตรวจสอบหรือไม่ว่าคุณมีข้อผิดพลาดใด ๆ ที่ Grbl อาจจะไม่ชอบ
ผลตอบรับที่ดีขึ้น: รายงานตำแหน่งเรียลไทม์สิ่ง Grbl จะทำรัฐ parser กรัมโค้ดและเก็บไว้ประสานงานค่าชดเชย
บล็อกเริ่มต้น: อัตโนมัติอย่างน่าอัศจรรย์ทำงานของผู้ใช้บล็อกกรัมรหัสที่เริ่มต้นหรือรีเซ็ต สามารถนำมาใช้ในการตั้งค่าเริ่มต้นของคุณ
Pin-ลึก: เริ่มต้นวัฏจักรถืออาหารสัตว์และยกเลิกการตรึงอยู่ในขณะนี้ออกไป A0, A1, A2 และหมุด เพียงเชื่อมต่อสวิทช์ปกติเปิดให้ขาและพื้นดิน นั่นแหล่ะ!
มีประสิทธิภาพมากขึ้นตัวแยกวิเคราะห์ G-รหัสที่มีข้อผิดพลาดในการตรวจสอบข้อเสนอแนะ
และอีกมากมาย!
กำหนดไว้สำหรับ v1.0 การพัฒนาในอนาคต
Grbl อย่างต่อเนื่องภายใต้การพัฒนาด้วยคุณสมบัติใหม่ที่เพิ่มเข้ามาตลอดเวลา นี่คือรายชื่อของคุณสมบัติที่จะเกิดขึ้นตั้งค่าสำหรับรุ่นถัดไป แต่คลิกที่ลิงค์นี้เพื่ออ่านรายละเอียด
แทนที่: การปรับเวลาจริงของ feedrates ความเร็วแกนและน้ำหล่อเย็นในระหว่างรอบ เราได้แก้ไขได้และก็ต้องคิดออกรายละเอียดเล็ก ๆ ก่อนที่จะติดตั้ง
วิ่งจ๊อกกิ้ง: ตั้งค่าอินเตอร์เฟซที่ง่ายสำหรับผู้ใช้วิ่งออกกำลังกายที่เหมาะสม
ฟันเฟืองค่าตอบแทน: ไม่แน่ใจว่ามันจะทำให้มันกลายเป็นรุ่น Uno แต่แน่นอนเมื่อเราสนับสนุนการควบคุมที่ใหญ่กว่า
Grbl v0.8 (และก่อนหน้านี้) มีการกระจายภายใต้ใบอนุญาต MIT-และได้รับการพัฒนาโดย Simen Svale Skogsrud, Sungeun เค Jeon Ph.D. , และเจน Geisler
Grbl v0.9 มีการกระจายภายใต้ใบอนุญาต GPLv3 และได้รับการพัฒนาโดย Sungeun เค Jeon ปริญญาเอก .. ดู Licensing สำหรับรายละเอียดเพิ่มเติม
รวบรวม Grbl
วิกิพีเดียนี้มีวัตถุประสงค์เพื่อให้คำแนะนำต่าง ๆ เกี่ยวกับวิธีการรวบรวม grbl เมื่อรวบรวมคุณควรจะมีแบรนด์ไฟล์ .hex ใหม่เพื่อแฟลช Arduino ของคุณ กรุณาอย่าลังเลที่จะมีส่วนร่วมมากขึ้นถึงวันที่หรือวิธีการทางเลือก
ผ่าน Arduino IDE (ทุกแพลตฟอร์ม):
อัพเดทล่าสุด: 2014/07/26 โดย chamnit (ทดสอบบน OS X 10.9 และ Windows 7 กับ Arduino IDE v1.05)
ขอขอบคุณคนที่ดีที่ทำงานเกี่ยวกับ Arduino IDE ก็มีทุกสิ่งที่คุณต้องรวบรวม grbl รวมอยู่ในแพคเกจซอฟต์แวร์ของพวกเขา หมายเหตุ: วิธีการนี้จะรวบรวมแหล่งรหัสลงในฐานสิบหกใหม่โดยอัตโนมัติและอัพโหลดไปยัง Arduino คุณไม่สามารถโดยตรงแฟลชไฟล์ .hex ก่อนรวบรวมผ่านทางอินเตอร์เฟซ IDE ดู Grbl กระพริบของเราไปยังหน้าวิกิพีเดีย Arduino วิธีการทำเช่นนี้ถ้าคุณมีเพียงไฟล์ .hex
หมายเหตุ: ก่อนที่จะเริ่มตรวจสอบให้แน่ใจว่าการติดตั้งเก่าของ Grbl ได้ถูกลบออกอย่างสมบูรณ์จาก Arduino IDE
ดาวน์โหลดซอร์สโค้ด Grbl
คลิกที่ปุ่มดาวน์โหลดไปรษณีย์ที่ด้านขวาล่างของหน้าบ้าน
เมื่อดาวน์โหลดเปิดเครื่องรูดมันและคุณจะได้โฟลเดอร์ที่เรียกว่า grbl ปริญญาโทหรือสิ่งที่คล้ายกัน
(เกี่ยวกับ Arduino IDE <1.0.6 หรือ <1.5.6) กำหนดชื่อโฟลเดอร์เพื่อ Grbl คุณต้องทำเช่นนี้เพราะ IDE Arduino ไม่ชอบ - ยัติภังค์ในชื่อห้องสมุดของพวกเขา
ตรวจสอบให้แน่ใจกำลังใช้รุ่นล่าสุดของ Arduino IDE (ทดสอบสุดท้ายใน v1.05)
หมายเหตุ: สำหรับผู้ใช้ Arduino IDE ก่อน v1.05 คุณอาจจำเป็นต้องเพิ่มรหัสแหล่ง Grbl เข้าไปในห้องสมุด Arduino ของคุณเพื่อที่จะปรากฏในห้องสมุดนำเข้า ... เมนู Google Internet สำหรับวิธีการทำเช่นนี้และเมื่อติดตั้งแล้วให้ข้ามไปขั้นตอนที่ 4
โหลด Grbl เป็น IDE Arduino เป็นห้องสมุด
เปิด Arduino IDE
คลิก Sketch เมนูแบบเลื่อนลงนำทางไปยังไลบรารีที่นำเข้า ... และคลิกเพิ่มห้องสมุด ....
เลือกโฟลเดอร์ Grbl เมื่อถามว่าจะเลือกซิปหรือโฟลเดอร์สำหรับไลบรารีที่คุณต้องการเพิ่ม
มันอาจจะใช้เวลาไม่กี่วินาทีสำหรับ Arduino IDE ที่จะนำเข้า
สร้างร่าง Grbl ใน Arduino IDE
เริ่มร่างใหม่หากไม่ได้ขึ้นบนหน้าจอ
คลิก Sketch เมนูแบบเลื่อนลงนำทางไปยังไลบรารีที่นำเข้า ... และคลิกที่ตัวเลือกเมนูใหม่ Grbl ที่ด้านล่างของรายการ
รายการยาวของ #include <> ของใช้โดย Grbl จะถูกเพิ่มเข้าไปร่าง ตรวจสอบให้แน่ใจ (แก้ไขถ้าจำเป็น) ว่า "system.h" เป็นที่หรือใกล้ด้านบนของรายการรวมถึง ณ จุดนี้ไม่ได้เพิ่มอะไรอีก! ไม่มีโมฆะห่วงไม่มีอะไร!
รวบรวมและอัพโหลด Grbl เพื่อ Arduino ของคุณ
เชื่อมต่อ Arduino Uno กับคอมพิวเตอร์ของคุณ
ตรวจสอบให้แน่ใจบอร์ดของคุณถูกตั้งค่าเป็น Arduino Uno ในอะไหล่> เมนูคณะกรรมการและพอร์ตอนุกรมจะถูกเลือกอย่างถูกต้องในอะไหล่> พอร์ตอนุกรม
คลิกอัพโหลดและ Grbl ควรรวบรวมและแฟลชเพื่อ Arduino ของคุณ! (กระพริบด้วยโปรแกรมยังทำงานโดยใช้อัปโหลดการใช้คำสั่งเมนูโปรแกรมเมอร์.)
เมื่อคุณได้ห้องสมุด Grbl ของคุณตั้งค่าใน Arduino IDE คุณสามารถปรับปรุงเปลี่ยนหรือแก้ไขซอร์สโค้ด Grbl ในโฟลเดอร์ห้องสมุด บน Mac ก็อยู่ใน ~ / เอกสาร / Arduino / ห้องสมุด / บน Windows, มันอยู่ใน My Documents \ Arduino \ ห้องสมุด คุณอาจต้องรีสตาร์ท Arduino IDE สำหรับการเปลี่ยนแปลงที่จะมีผลบังคับใช้
เอะอะไม่มี! ไม่มียุ่งเหยิง!
การกำหนดค่า Grbl v0.8
Grbl มีระบบ '$' - คำสั่งเพื่อปรับแต่งการตั้งค่าและทริกเกอร์คำสั่ง runtime เชื่อมต่อไปยัง Grbl ใช้ขั้วอนุกรมที่คุณเลือก (อัตราบอด 9600 จนกว่าคุณจะเปลี่ยนไปว่าใน config.h) เป็น 8-N-1 (8 บิตความเท่าเทียมกันไม่มีและบิต 1 หยุด.) เมื่อการเชื่อมต่อที่คุณควรจะได้รับ Grbl พร้อมรับคำซึ่งมีลักษณะเช่นนี้
Grbl 0.8C ['$' เพื่อขอความช่วยเหลือ]
ประเภท $ และกด Enter คุณไม่ควรจะเห็นสะท้อนใด ๆ ในท้องถิ่นของ $ และป้อน แต่ Grbl ควรจะตอบสนองด้วยข้อความขอความช่วยเหลือ:
$$ (ดูการตั้งค่า Grbl)
$ # (ดูพารามิเตอร์ #)
$ G (มุมมองของรัฐแยกวิเคราะห์)
$ N (มุมมองบล็อกเริ่มต้น)
$ x = ค่า (บันทึกการตั้งค่า Grbl)
$ Nx = สาย (ประหยัดเริ่มต้นบล็อก)
$ C (ตรวจสอบโหมด GCode)
$ X (ฆ่าล็อคปลุก)
$ H (ทำงานวงจรกลับบ้าน)
~ (เริ่มต้นรอบ)
! (ถือฟีด)
? (สถานะปัจจุบัน)
Ctrl-x (รีเซ็ต Grbl)
คำสั่งเหล่านี้เท่านั้นที่สี่ของพวกเขาจะใช้ในการกำหนดค่า Grbl [$$, $ x = มูลค่า $ N, $ Nx = สาย] ในขณะที่ส่วนที่เหลือเป็นคำสั่ง runtime ว่าทั้งรายงานสถานะปัจจุบันใน Grbl หรือปรับแต่งพฤติกรรม
สี่คำสั่งกำหนดค่า: $$, $ x = Val, $ N, $ Nx = สาย
$$ - ดูการตั้งค่า Grbl, $ x = Val - ประหยัด Grbl การตั้งค่า
เมื่อเชื่อมต่อกับ Grbl ประเภท $$ และกด Enter Grbl ควรจะตอบสนองกับรายการของการตั้งค่าระบบปัจจุบันคล้ายกับที่แสดงในต่อไปนี้ ทั้งหมดการตั้งค่าเหล่านี้เป็นถาวรและเก็บไว้ใน EEPROM ดังนั้นหากคุณอำนาจลงเหล่านี้จะถูกโหลดกลับขึ้นในครั้งต่อไปอำนาจของคุณขึ้น Arduino ของคุณ
0 $ 755.906 = (x, ขั้นตอน / เดือน)
$ 1 = 755.906 (และขั้นตอน / เดือน)
$ 2 = 755.906 (Z ขั้นตอน / เดือน)
3 $ = 30 (ชีพจรขั้นตอน USEC)
$ 4 = 500.000 (ฟีเริ่มต้นมิลลิเมตร / นาที)
5 $ = 500.000 (ค่าเริ่มต้นแสวงหามิลลิเมตร / นาที)
$ 6 = 28 (พอร์ตขั้นตอนหน้ากากสลับ, int: 00011100)
7 $ = 25 (ขั้นตอนที่ล่าช้าไม่ได้ใช้งานมิลลิวินาที)
$ 8 = 50.000 (เร่งมิลลิเมตร / วินาที ^ 2)
9 $ = 0.050 (ค่าความเบี่ยงเบนทางแยกมม)
$ 10 = 0.100 (โค้งมม / ส่วน)
$ 11 = 25 (แก้ไข n โค้ง, int)
$ 12 = 3 (n-ทศนิยม int)
$ 13 = 0 (นิ้วรายงานบูล)
$ 14 = 1 (เริ่มต้นอัตโนมัติ, บูล)
$ 15 = 0 (ขั้นตอนที่สลับเปิดใช้งานบูล)
$ 16 = 0 (ข้อ จำกัด อย่างหนักบูล)
$ 17 = 0 (รอบกลับบ้าน, บูล)
$ 18 = 0 (กลับบ้านหน้ากากสลับผบ, int: 00000000)
$ 19 = 25.000 (ฟีดกลับบ้าน, มม / นาที)
$ 20 = 250.000 (กลับบ้านแสวงหามิลลิเมตร / นาที)
$ 21 = 100 (debounce กลับบ้าน, มิลลิวินาที)
$ 22 = 1.000 (กลับบ้านดึงออกมม)
ในการเปลี่ยนเช่นการ ตัวเลือกขั้นตอน microseconds ชีพจร 10us คุณจะพิมพ์นี้ตามด้วยการป้อน:
3 $ = 10
หากทุกอย่างเป็นไปด้วยดี, Grbl จะตอบสนองกับ 'ตกลง' และการตั้งค่านี้จะถูกเก็บไว้ใน EEPROM และจะยังคงอยู่ตลอดไปหรือจนกว่าคุณจะเปลี่ยนพวกเขา คุณสามารถตรวจสอบ Grbl ได้รับและจัดเก็บการตั้งค่าของคุณได้อย่างถูกต้องโดยการพิมพ์ $$ เพื่อดูการตั้งค่าระบบอีกครั้ง
$ N - ดูการเริ่มต้นบล็อก, $ Nx = สาย - บล็อกเริ่มต้นบันทึก
$ Nx บล็อกเริ่มต้นที่ Grbl ทำงานทุกครั้งที่คุณมีอำนาจในการ Grbl หรือรีเซ็ต Grbl ในคำอื่น ๆ บล็อกเริ่มต้นเป็นสายของ g-รหัสที่คุณสามารถมี Grbl อย่างน่าอัศจรรย์รถยนต์วิ่งไปตั้งค่าเริ่มต้นของ G-รหัสของคุณหรือสิ่งอื่นที่คุณต้องการ Grbl ที่จะทำทุกครั้งที่คุณเริ่มต้นขึ้นเครื่องของคุณ ในขณะที่ Grbl จะเก็บสองช่วงตึกของ g-รหัสเป็นค่าเริ่มต้นระบบ แต่ก็สามารถเก็บได้ทุกที่ 1-5 เป็นตัวเลือกเวลารวบรวม (เปลี่ยน config.h และรวบรวมอีกครั้ง)
ดังนั้นเมื่อเชื่อมต่อกับ Grbl พิมพ์ $ n และจากนั้นป้อน Grbl ควรจะตอบสนองกับสิ่งที่สั้น ๆ เช่น:
$ N0 =
$ N1 =
ok
ไม่มากที่จะไป แต่ตอนนี้ก็หมายความว่าไม่มีบล็อกกรัมรหัสที่เก็บไว้ในบรรทัด $ N0 สำหรับ Grbl เพื่อให้ทำงานเมื่อเริ่มต้น $ N1 เป็นบรรทัดถัดไปที่จะทำงาน (ถ้าคุณรวบรวมอีกครั้งที่จะมีมากขึ้นก็จะดำเนินการในการสั่งซื้อเพื่อ $ N4.)
การตั้งค่าเริ่มต้นบล็อกพิมพ์ $ N0 = ตามด้วยบล็อกกรัมรหัสที่ถูกต้องและป้อน Grbl จะทำงานบล็อกเพื่อตรวจสอบว่ามันถูกต้องแล้วตอบกลับด้วยตกลงหรือข้อผิดพลาดที่จะบอกคุณถ้ามันประสบความสำเร็จหรือสิ่งที่ผิดพลาด
ตัวอย่างเช่นบอกว่าคุณต้องการที่จะใช้ในการเริ่มต้นครั้งแรกของคุณบล็อก $ N0 เพื่อตั้งโหมด parser กรัมรหัสของคุณเช่นการทำงานประสานงาน G54, G20 โหมดนิ้ว G17 XY-เครื่องบิน คุณจะพิมพ์ $ N0 = G20 G54 G17 กับเข้าและคุณจะเห็นการตอบสนอง 'ตกลง' จากนั้นคุณสามารถตรวจสอบหากมีการจัดเก็บไว้โดยการพิมพ์ $ n และตอนนี้คุณจะเห็นการตอบสนองเช่น $ N0 = G20G54G17
เมื่อคุณมีบล็อกเริ่มต้นที่เก็บไว้ใน EEPROM Grbl ของทุกครั้งที่คุณเริ่มต้นหรือรีเซ็ตคุณจะเห็นบล็อกของคุณเริ่มต้นพิมพ์กลับมาให้คุณและตอบสนองจาก Grbl เพื่อแสดงให้เห็นว่ามันวิ่ง ok ดังนั้นสำหรับตัวอย่างก่อนหน้านี้คุณจะเห็น:
Grbl 0.8C ['$' เพื่อขอความช่วยเหลือ]
G20G54G17ok
หากคุณมีการเริ่มต้นหลายกรัมรหัสบล็อกที่พวกเขาจะพิมพ์กลับมาให้คุณในการสั่งซื้อเมื่อเริ่มต้นทุก และถ้าคุณต้องการที่จะล้างหนึ่งในบล็อกเริ่มต้นพิมพ์ $ N0 = โดยไม่ต้องอะไรต่อไปนี้เครื่องหมายเท่ากับ
นอกจากนี้ถ้าคุณได้กลับบ้านที่เปิดใช้งานบล็อกเริ่มต้นจะดำเนินการทันทีหลังจากที่วงจรกลับบ้านไม่ได้เริ่มต้น
สิ่งสำคัญ: โปรดใช้ความระมัดระวังมากเมื่อการจัดเก็บการเคลื่อนไหวใด ๆ (G0 / 1, G2 / 3, G28 / 30) คำสั่งในการเริ่มต้นบล็อก คำสั่งการเคลื่อนไหวเหล่านี้จะทำงานทุกครั้งที่คุณตั้งค่าหรืออำนาจขึ้น Grbl ดังนั้นหากคุณมีสถานการณ์ฉุกเฉินและมีการส่งแบบครบวงจรและการตั้งค่า, ย้ายบล็อกเริ่มต้นสามารถและมีแนวโน้มที่จะทำให้สิ่งที่เลวร้ายได้อย่างรวดเร็ว
Grbl ของ $ x = การตั้งค่า Val และสิ่งที่พวกเขาหมายถึง
$ 0, 1 $ และ $ 2 - XYZ ขั้นตอน / เดือน
Grbl ต้องการที่จะรู้ว่าไกลแต่ละขั้นตอนจะใช้เครื่องมือในความเป็นจริง ในการคำนวณขั้นตอน / mm สำหรับแกนของเครื่องของคุณคุณจำเป็นต้องรู้:
มิลลิเมตรต่อการปฏิวัติของสกรูนำ
ขั้นตอนเต็มต่อการปฏิวัติของ steppers ของคุณ (ปกติ 200 บาท)
microsteps ต่อขั้นตอนของการควบคุมของคุณ (ปกติ 1, 2, 4, 8 หรือ 16) เคล็ดลับ: การใช้ค่าไมโครสูง (เช่น 16) สามารถลดแรงบิดมอเตอร์ของคุณเพื่อใช้ต่ำสุดที่จะช่วยให้คุณมีความละเอียดแกนที่ต้องการและคุณสมบัติการทำงานที่สะดวกสบาย
ขั้นตอน / เดือนจากนั้นจะสามารถคำนวณเช่นนี้ steps_per_mm = (steps_per_revolution * microsteps) / mm_per_rev
คำนวณค่าสำหรับทุกแกนนี้และเขียนการตั้งค่าเหล่านี้เพื่อ Grbl
$ 3 - ชีพจรขั้นตอน microseconds
ไดรเวอร์ Stepper ได้รับการประเมินสำหรับความยาวขั้นต่ำชีพจรขั้นตอนบางอย่าง ตรวจสอบเอกสารข้อมูลหรือเพียงแค่พยายามที่ตัวเลขบาง คุณต้องการให้เป็นห้วงสั้นเป็นคนขับ stepper สามารถรับรู้ได้อย่างน่าเชื่อถือ ถ้าพัยาวเกินไปคุณอาจจะเป็นปัญหาในการใช้ระบบที่อัตราการป้อนสูง โดยทั่วไปสิ่งที่ระหว่าง 5 และ 50 microseconds ทำงานได้ดี
$ 4 และ 5 $ - ฟีดที่เริ่มต้นและแสวงหาอัตรามิลลิเมตร / นาที
การตั้งค่านี้ชุดเริ่มต้นแสวงหา (G0) และอัตราการป้อน (G1, G2, G3) หลังจากที่อำนาจ Grbl และ initializes แสวงหาอัตรา (aka แก่ง) ถูกนำมาใช้สำหรับการย้ายจากจุด A ไปยังจุด B ให้เร็วที่สุดเท่าที่เป็นไปได้โดยปกติสำหรับภายในในตำแหน่ง แสวงหาอัตราควรจะตั้งที่ความเร็วสูงสุดเครื่องของคุณสามารถไปในการเคลื่อนไหวใด ๆ แกน อัตราการป้อนค่าเริ่มต้นมักจะไม่ใส่ลงไปในภาพเป็นอัตราการป้อนโดยทั่วไปจะมีการระบุไว้ในโปรแกรม G-รหัส แต่ถ้าไม่อัตราการป้อนค่าเริ่มต้นนี้จะถูกนำมาใช้
หมายเหตุ: ในอนาคตอัตราการป้อนค่าเริ่มต้นจะถูกลบออก มาตรฐาน G-รหัสไม่ได้มีอัตราการป้อนค่าเริ่มต้น (G1, G2, G3) แต่ข้อผิดพลาดออกมาถ้าไม่มีการ 'F' อัตราการป้อนคำสั่งที่ระบุ แสวงหาอัตรา (aka แก่ง) จะมีการปรับปรุงเพื่อให้ผู้ใช้สามารถระบุความเร็วสูงสุดแกนแต่ละคนสามารถย้ายแทนที่จะมีเพียงหนึ่งในความเร็วที่ จำกัด ทั้งหมดของพวกเขา
6 $ - พอร์ตขั้นตอนหน้ากากสลับ, int: ไบนารี
บางตัวควบคุม cnc-stepper ต้องการปัจจัยการผลิตสูงต่ำของฤๅษีทั้งทิศทางและขั้นตอน สายสัญญาณที่จะมีขึ้นตามปกติสูงหรือต่ำเพื่อส่งสัญญาณทิศทางหรือจัดขึ้นที่สูงและต่ำไปสำหรับคู่ของไมโครเพื่อส่งสัญญาณเหตุการณ์ขั้นตอน เพื่อบรรลุเป้าหมายนี้ Grbl สามารถกลับบิตออกเพื่อรองรับความต้องการเฉพาะ ค่าหน้ากากสลับเป็นไบต์ที่ XORed กับข้อมูลขั้นตอนและทิศทางก่อนที่จะส่งลงพอร์ตก้าว วิธีการที่คุณสามารถใช้ทั้งสองจะกลับพัขั้นตอนหรือกลับหนึ่งหรือมากกว่าของทิศทางของแกน บิตในไบต์นี้สอดคล้องกับพินได้รับมอบหมายให้ก้าวใน config.h โปรดทราบว่าบิต 0 และ 1 ไม่ได้ใช้สำหรับการผกผัน ต่อบิตเริ่มต้นที่ได้รับมอบหมายเช่นนี้
#define X_STEP_BIT 2
#define Y_STEP_BIT 3
#define Z_STEP_BIT 4
#define X_DIRECTION_BIT 5
#define Y_DIRECTION_BIT 6
#define Z_DIRECTION_BIT 7
ถ้าคุณต้องการที่จะกลับทิศทาง X และ Y ในการตั้งค่านี้คุณจะคำนวณค่าโดย bitshifting เช่นนี้ (ในสภาพแวดล้อมของการคำนวณที่คุณชื่นชอบ):
> (1 << X_DIRECTION_BIT) | (1 << Y_DIRECTION_BIT)
ซึ่งเท่ากับ 96 ดังนั้นการออกคำสั่งนี้จะกลับพวกเขา
6 $ = 96
ตอนนี้เมื่อคุณดูการตั้งค่าปัจจุบันตอนนี้คุณจะเห็นนี้ในสายหน้ากากคว่ำของคุณด้วยแทน binary ของจำนวน (5 บิตและ 6 ในขณะนี้ควรจะแสดง 1 เพื่อระบุผกผัน.)
$ 6 = 96 (พอร์ตขั้นตอนที่สลับหน้ากาก int. 1100000)
$ 7 - ขั้นตอนที่ล่าช้าไม่ได้ใช้งานมิลลิวินาที
เวลา steppers ของคุณเสร็จสมบูรณ์การเคลื่อนไหวและมาหยุดทุก Grbl จะปิดการใช้ steppers โดยค่าเริ่มต้น เวลาล็อค stepper ไม่ได้ใช้งานเป็นระยะเวลาเวลา Grbl จะทำให้ steppers ล็อคก่อนที่จะปิดการใช้งาน ขึ้นอยู่กับระบบที่คุณสามารถตั้งค่านี้ให้เป็นศูนย์และปิดการใช้งาน กับคนอื่น ๆ ที่คุณอาจต้อง 25-50 มิลลิวินาทีเพื่อให้แน่ใจว่าแกนของคุณมาให้เสร็จสมบูรณ์ก่อนที่จะหยุดปิดการใช้งาน (เครื่องของฉันมีแนวโน้มที่จะดริฟท์เพียงเล็กน้อยถ้าฉันไม่ได้มีการเปิดใช้งานนี้.) หรือคุณสามารถให้แกนของคุณเปิดใช้งานตลอดเวลาโดยการตั้งค่านี้ให้สูงสุด 255 มิลลิวินาที อีกครั้งเพียงที่จะทำซ้ำคุณสามารถเก็บทุกแกนที่เปิดใช้งานอยู่เสมอโดยการตั้งค่า $ 7 = 255
$ 8 - เร่งมิลลิเมตร / วินาที ^ 2
นี่คือการเร่งความเร็วในมม / วินาที / วินาที คุณไม่จำเป็นที่จะเข้าใจสิ่งที่หมายถึงพอจะพูดได้ว่าค่าที่ต่ำกว่าจะช่วยให้อัตราเร่ง smooooother ในขณะที่อัตราผลตอบแทนที่สูงกว่ามูลค่าการเคลื่อนไหวที่เข้มงวดมากขึ้นและเข้าถึง feedrates ต้องการเร็วมาก ในด้านเทคนิคนี้เป็นจุดที่จะชี้การเร่งความเร็วของเครื่องของคุณเป็นอิสระจากแกน ตั้งค่าการเร่งนี้สูงถึงแกน จำกัด ที่สุดของคุณสามารถช่วยให้คุณโดยไม่สูญเสียขั้นตอนใด ๆ โดยปกติแล้วคุณต้องการที่จะให้ตัวเองเป็นบัฟเฟอร์เล็ก ๆ น้อย ๆ เพราะถ้าคุณสูญเสียขั้นตอน Grbl มีความคิดนี้เกิดขึ้น (steppers มีการควบคุมการเปิดวง) และจะให้ไป
$ 9 - เบี่ยงเบนสนธิมม
เบี่ยงเบนทางแยกเข้าโค้งจะถูกใช้โดยผู้จัดการเร่งเพื่อกำหนดวิธีการที่รวดเร็วสามารถย้ายผ่านเส้นทาง คณิตศาสตร์เป็นบิตซับซ้อน แต่โดยทั่วไปค่าที่สูงขึ้นจะช่วยให้เร็วขึ้นโดยทั่วไปอาจจะเคลื่อนไหว jerkier ค่าที่ต่ำกว่าทำให้ผู้จัดการเร่งระมัดระวังมากขึ้นและจะนำไปสู่การเข้าโค้งอย่างระมัดระวังและช้าลง ดังนั้นถ้าคุณทำงานเป็นปัญหาที่เครื่องของคุณพยายามที่จะเปิดเตะมุมเร็วเกินไปลดค่านี้จะทำให้มันช้าลง หากคุณต้องการเครื่องของคุณที่จะย้ายได้เร็วขึ้นผ่านทางแยก, เพิ่มค่านี้ให้เร็วขึ้น สำหรับคนเทคนิคการตีที่ลิงค์นี้เพื่ออ่านเกี่ยวกับขั้นตอนวิธีการเข้าโค้ง Grbl ซึ่งบัญชีสำหรับทั้งความเร็วและมุมสนธิกับง่ายมากที่มีประสิทธิภาพและวิธีการที่แข็งแกร่ง
10 $ - อาร์ mm / ส่วน
Grbl ทำให้วงการและโค้งโดยแบ่งพวกเขาออกเป็นเส้นเล็ก ๆ เล็ก คุณอาจจะไม่จำเป็นต้องปรับเปลี่ยนค่านี้ - แต่ถ้าคุณพบว่าวงการของคุณดิบเกินไปคุณอาจปรับนี้ (จริงๆหนึ่งในสิบของมิลลิเมตรไม่แม่นยำพอสำหรับคุณคุณอยู่ใน Nanotech?) ค่าที่ต่ำกว่าจะช่วยให้ความแม่นยำสูงกว่า แต่อาจนำไปสู่ปัญหาเรื่องประสิทธิภาพ
$ 11 - แก้ไข N-โค้ง, int
นี่คือการตั้งค่าขั้นสูงที่ไม่ควรจะมีการเปลี่ยนแปลงเว้นแต่มีสถานการณ์ที่คุณจะต้อง เพื่อให้ G02 / 03 โค้งเป็นไปได้ใน Grbl, Grbl ใกล้เคียงกับสถานที่ตั้งของส่วนโค้งถัดไปโดยมุมเล็ก ๆ ประมาณ แก้ไข N-โค้งคือจำนวนของส่วนโค้งประมาณดำเนินการก่อน Grbl คำนวณส่วนโค้งที่แน่นอนในการแก้ไขข้อผิดพลาดสำหรับดริฟท์ประมาณ คอมพิวเตอร์สถานที่ที่แน่นอนเหล่านี้มีราคาแพงคอมพิวเตอร์ แต่มีบางกรณีที่รุนแรงที่ใกล้เคียงมุมเล็ก ๆ ที่สามารถนำข้อผิดพลาดพอที่จะเห็นได้ชัดเช่นโค้งขนาดเล็กมากที่มีความยาวส่วนโค้งขนาดใหญ่ เปลี่ยนการตั้งค่านี้ถ้าพบปัญหาแปลกกับโค้ง แต่ก็ไม่แนะนำให้ไปต่ำกว่า 3 เพราะอาจนำไปสู่ความอดอยากบัฟเฟอร์ที่แกนชะลอตัวลงและอาการสะอึก แต่ผลอาจแตกต่างกัน
$ 12 - N-ทศนิยม, int
กำหนดจำนวนทศนิยมทุกสถานที่ของจุดลอยตัวค่า Grbl รายงาน ไม่ได้มีความซับซ้อนมากขึ้นกว่าที่
$ 13 - นิ้วรายงานบูล
Grbl v0.8 มีการวางตำแหน่งเรียลไทม์คุณลักษณะการรายงานให้ข้อเสนอแนะผู้ใช้บนเครื่องที่เป็นว่าในช่วงเวลานั้น โดยปกติแล้วมันมีการตั้งค่าที่จะรายงานในมม แต่โดยการส่ง $ 13 = 1 คำสั่งคุณส่งธงบูลีนนี้เพื่อความจริงและคุณลักษณะการรายงานสถานะตอนนี้จะรายงานในนิ้ว $ 13 = 0 ถึงตั้งค่ากลับไปมิลลิเมตร
$ 14 - เริ่มต้นอัตโนมัติ, บูล
ในสภาพแวดล้อม CNC มืออาชีพมากขึ้นข้อดีเริ่มงานโดยการโหลดโปรแกรมของพวกเขาแล้วกดปุ่ม 'เริ่มต้นวงจรบนเครื่องของพวกเขา มันเริ่มต้นงาน Grbl ไม่สิ่งเดียวกัน แต่ไม่ได้ไปโดยปริยาย ในฐานะที่เป็นเครื่องมือการเรียนรู้เรา 'อัตโนมัติวงจรเริ่มต้น' คำสั่งใด ๆ G-รหัสที่ใช้ส่งไปยัง Grbl สำหรับวิ่งออกกำลังกายเพียงเครื่องเพื่อดูว่าย้ายไปในทิศทางที่พวกเขาคิดว่ามันควรจะไปหรือเพียงแค่เห็นด้วยกับสิ่งที่เครื่องของพวกเขาสามารถทำได้ . นี้จะทำให้มันง่ายที่จะโหลดขึ้นเครื่องของคุณกับ Grbl และรับในการทำงานมากกว่าที่มีความขยันหมั่นเพียรที่จะตี 'วงจรเริ่มต้น' ตลอดเวลาที่คุณต้องการที่จะย้ายแกนใด ๆ ของคุณ เมื่อคุณเรียนรู้เครื่องของคุณและได้รับการจัดการที่ดีใน G-รหัสคุณสามารถปิดการใช้ 'อัตโนมัติวงจรเริ่มต้น' คุณสมบัติโดยการส่ง Grbl $ 14 = 0 คำสั่ง (อาจจะต้องนุ่มรีเซ็ตหรือวงจรไฟฟ้าที่จะโหลดการเปลี่ยนแปลง.)
วิธีที่บอกอีกว่าอาจจะ:
ถ้า $ 14 = 0 แล้วบางคำสั่ง GCode เช่น Xn, Yn ฯลฯ จะไม่เกิดขึ้นเมื่อคุณใส่พวกเขาที่สถานีอนุกรม ถ้า $ 14 = 1 แล้วคำสั่งเคลื่อนไหว GCode ที่จะเกิดขึ้น
เห็นได้ชัดว่า cnc ใหญ่จะไม่ดำเนินการ GCode จนผู้ประกอบการกดปุ่ม 'วงจรเริ่มต้น' คำสั่ง GCode ได้รับ แต่การจัดคิวและรอที่ปุ่ม 'วงจรเริ่มต้น' ทำให้มีความรู้สึก? เมื่อ 14 $ = 0 แล้วว่าเป็นวิธีที่ทำหน้าที่ grbl เกินไป คุณต้องปุ่ม! (ในกรณีที่แนบปุ่ม feed-ถือเกินไป!)
เมื่อ 14 $ = 1 แล้วซอฟแวร์โดยอัตโนมัติ grbl กดเวอร์ชั่นของซอฟต์แวร์ของ 'เริ่มต้นวงจร' สำหรับคุณทุกครั้งที่คุณ 'Enter' บรรทัดคำสั่ง GCode ผ่านขั้วอนุกรม นี้จะทำเพื่อให้ความสะดวกสบายมากขึ้นสำหรับคุณที่จะป้อนคำสั่งและดูสิ่งที่เกิดขึ้นได้โดยไม่ต้องกดปุ่ม
15 $ - ขั้นตอนที่กลับเปิดใช้งานบูล
โดยค่าเริ่มต้น stepper ช่วยให้ขาอยู่ในระดับสูงที่จะปิดการใช้งานและต่ำเพื่อเปิดใช้งาน ถ้าการตั้งค่าของคุณต้องการตรงข้ามเพียงแค่กลับ stepper ช่วยให้ขาโดยการพิมพ์ 15 $ = 1 ปิดการใช้งานกับ $ 15 = 0 (อาจจะต้องวงจรไฟฟ้าในการโหลดการเปลี่ยนแปลง.)
$ 16 - ขีด จำกัด ของฮาร์ดบูล
สวิทช์วงเงินยากมีคุณลักษณะด้านความปลอดภัยที่จะช่วยป้องกันเครื่องคอมพิวเตอร์ของคุณจากการเดินทางไกลเกินไปที่จะออกปลายของการเดินทางและการกระแทกหรือทำลายสิ่งที่มีราคาแพง โดยทั่วไปคุณสายขึ้นบางสวิทช์ (กลหรือแสง) ซึ่งอยู่ใกล้กับจุดสิ้นสุดของการเดินทางของแกนแต่ละหรือที่คุณเคยรู้สึกเหมือนว่าอาจจะมีปัญหาหากโปรแกรมของคุณจะย้ายมากเกินไปที่จะไปยังที่ที่มันไม่ควร เมื่อสวิทช์เรียกมันจะหยุดทันทีเคลื่อนไหวทั้งหมดปิดน้ำหล่อเย็นและแกน (ถ้าเชื่อมต่อ) และเข้าสู่โหมดการเตือนภัยซึ่งบังคับให้คุณตรวจสอบเครื่องของคุณและการตั้งค่าทุกอย่าง
ในการใช้ข้อ จำกัด อย่างหนักกับ Grbl หมุดขีด จำกัด ที่จะมีขึ้นสูงที่มีความต้านทานดึงขึ้นภายในดังนั้นสิ่งที่คุณต้องทำคือลวดในสวิทช์ปกติเปิดที่มีขาและพื้นดินและเปิดใช้งานข้อ จำกัด อย่างหนักกับ $ 16 = 1 นั่นแหล่ะ (ปิดการใช้งานกับ $ 16 = 0) ถ้าคุณต้องการขีด จำกัด สำหรับปลายทั้งสองของการเดินทางของหนึ่งแกนเพียงลวดในสองสวิทช์ในแบบคู่ขนานกับขาและพื้นดินดังนั้นหากคนใดคนหนึ่งของพวกเขาการเดินทางจะเรียกวงเงินยาก
เพิ่งรู้ว่าเหตุการณ์วงเงินยากจะถือเป็นเหตุการณ์สำคัญที่ steppers หยุดทันทีและจะมีขั้นตอนที่หายไปมีแนวโน้มที่ Grbl ไม่ได้มีความคิดเห็นเกี่ยวกับตำแหน่งใด ๆ ดังนั้นจึงไม่สามารถรับประกันได้ว่ามันมีความคิดใด ๆ ที่มันเป็น ดังนั้นถ้าวงเงินยากถูกเรียก Grbl จะเข้าสู่โหมดห่วงเตือนภัยไม่มีที่สิ้นสุดให้คุณมีโอกาสที่จะตรวจสอบเครื่องของคุณและบังคับให้คุณสามารถตั้งค่า Grbl โปรดจำไว้ว่ามันเป็นอย่างหมดจดคุณลักษณะด้านความปลอดภัย
หากคุณมีปัญหากับสวิทช์วงเงินยากอย่างต่อเนื่องหลังจากที่คุณเรียกรีเซ็ตการตั้งค่านุ่มจะรีเซ็ต Grbl เข้าสู่สถานะการเตือนภัยที่คุณสามารถเข้าถึงการตั้งค่าและคำสั่ง Grbl แต่ทั้งหมดกรัมรหัสและบล็อกการเริ่มต้นจะถูกล็อคออก เพื่อให้คุณสามารถปิดการใช้งานการตั้งค่าขีด จำกัด ของยากแล้ว $ X ปลดล็อคปลุก หรือคุณสามารถลวดในสวิทช์ปิดตามปกติในซีรีส์กับพื้นดินทุกขีด จำกัด ของสวิทช์ตัดการเชื่อมต่อสวิทช์ชั่วคราวเพื่อให้คุณสามารถมี Grbl ย้ายแกนของคุณปิดสวิทช์
$ 17 - รอบ Homing, บูล
อ่า, กลับบ้าน สิ่งที่ได้รับสิ่งจำเป็นอย่างมากใน Grbl เป็นเวลานาน ก็ตอนนี้ได้รับการสนับสนุนอย่างเต็มที่ใน v0.8 สำหรับผู้ที่เริ่มต้นเพียงแค่เข้าไปใน CNC, วงจรกลับบ้านถูกนำมาใช้อย่างถูกต้องและแม่นยำค้นหาศูนย์ตำแหน่งบนเครื่อง (เครื่อง aka ศูนย์) ทุกครั้งที่คุณเริ่มต้น Grbl ของคุณระหว่างการประชุม ในคำอื่น ๆ คุณรู้ว่าคุณจะอยู่ที่ไหนในเวลาใดก็ตามทุกครั้ง สมมติว่าคุณเริ่มเครื่องจักรกลหรือสิ่งที่กำลังจะเริ่มต้นขั้นตอนต่อไปในการทำงานและไฟดับคุณเริ่มต้นใหม่ Grbl Grbl และมีความคิดที่มันเป็น คุณซ้ายกับงานของการหาที่ที่คุณอยู่ หากคุณมีกลับบ้าน, คุณมักจะมีเครื่องศูนย์จุดอ้างอิงในการค้นหาจากดังนั้นสิ่งที่คุณต้องทำคือการทำงานรอบกลับบ้านและกลับมาที่คุณซ้ายปิด
การตั้งค่ารอบกลับบ้านสำหรับ Grbl, คุณจะต้องมีสวิทช์ขีด จำกัด ในตำแหน่งที่คงที่จะไม่ได้รับการกระแทกหรือย้ายหรืออื่น ๆ จุดอ้างอิงของคุณได้รับ messed ขึ้น พวกเขามักจะมีการติดตั้งในจุดที่ไกลที่สุดใน + x + y, + Z ของแกนแต่ละ สายขีด จำกัด ของคุณในสวิทช์ด้วยหมุดขีด จำกัด และพื้นดินเช่นเดียวกับข้อ จำกัด อย่างหนักและเปิดใช้งานกลับบ้าน ถ้าคุณอยากรู้คุณสามารถใช้สวิทช์ขีด จำกัด ของคุณสำหรับข้อ จำกัด อย่างหนักทั้งในและกลับบ้าน พวกเขาเล่นดีกับคนอื่น ๆ
โดยค่าเริ่มต้นรอบการกลับบ้านของ Grbl ย้ายแกน Z บวกเป็นครั้งแรกที่จะล้างพื้นที่ทำงานและจากนั้นย้ายทั้ง X และ Y แกนในเวลาเดียวกันในทิศทางที่เป็นบวก การตั้งค่าวิธีวงจรการกลับบ้านของคุณมีลักษณะการทำงานที่มีการตั้งค่า Grbl ขึ้นลงหน้าอธิบายสิ่งที่พวกเขาทำ (และตัวเลือกเวลารวบรวมได้เป็นอย่างดี.)
นอกจากนี้อีกหนึ่งสิ่งที่จะต้องทราบเมื่อกลับบ้านถูกเปิดใช้งาน Grbl จะล็อคออกคำสั่งกรัมรหัสจนกว่าคุณจะดำเนินการรอบกลับบ้าน ความหมายไม่มีแกนเคลื่อนไหวเว้นแต่ล็อคเป็นคนพิการ ($ X) แต่เพิ่มเติมว่าภายหลัง ส่วนใหญ่ถ้าไม่ทั้งหมดควบคุม CNC, ทำอะไรบางอย่างที่คล้ายกันเป็นส่วนใหญ่คุณลักษณะด้านความปลอดภัยที่จะช่วยให้ผู้ใช้จากการทำผิดพลาดการวางตำแหน่งซึ่งเป็นเรื่องง่ายมากที่จะทำและจะเสียใจเมื่อความผิดพลาดส่วนซากปรักหักพัง หากคุณพบนี้น่ารำคาญหรือพบข้อบกพร่องแปลกใด ๆ โปรดแจ้งให้เราทราบและเราจะพยายามที่จะทำงานกับมันเพื่อให้ทุกคนมีความสุข :)
หมายเหตุ: ตรวจสอบ config.h สำหรับตัวเลือกกลับบ้านมากขึ้นสำหรับผู้ใช้ขั้นสูง คุณสามารถปิดการใช้งานการล็อกกลับบ้านเมื่อเริ่มต้นการกำหนดค่าที่แกนย้ายครั้งแรกในช่วงวงจรกลับบ้านและในสิ่งที่สั่งซื้อและอื่น ๆ
$ 18 - Homing หน้ากากผบคว่ำ, int: ไบนารี
โดยค่าเริ่มต้น Grbl ถือว่าวิทช์ จำกัด กลับบ้านของคุณอยู่ในทิศทางที่เป็นบวกครั้งแรกย้ายแกน z บวกแล้ว XY แกนบวกก่อนที่จะพยายามที่จะค้นหาแม่นยำเครื่องศูนย์โดยจะกลับมาช้าไปรอบ ๆ สวิทช์ ถ้าเครื่องของคุณมีสวิทช์ จำกัด ในทิศทางเชิงลบหน้ากากทิศทางกลับบ้านสามารถกลับทิศทางแกน มันทำงานได้เช่นเดียวกับหน้ากาก stepper คว่ำซึ่งทั้งหมดที่คุณต้องทำขาตั้งทิศทางแกน 1 ที่คุณต้องการที่จะกลับด้านและที่แกนในขณะนี้จะค้นหาขาขีด จำกัด ในทิศทางลบ
$ 19 - ฟีด Homing, มิลลิเมตร / นาที
ค้นหารอบแรกกลับบ้านสำหรับวงเงินที่สวิทช์ในอัตราที่แสวงหาที่สูงขึ้นและหลังจากที่พบว่าพวกเขาจะย้ายในอัตราที่ช้าลงฟีดเหลาลงในตำแหน่งที่แม่นยำของเครื่องศูนย์ Homing อัตราการป้อนคืออัตราการป้อนช้าลง ตั้งค่านี้เป็นสิ่งที่คุ้มค่าในอัตราที่ให้เครื่องทำซ้ำและแม่นยำเป็นศูนย์ที่ตั้ง
$ 20 - Homing แสวงหามิลลิเมตร / นาที
Homing แสวงหาอัตราวงจรกลับบ้านอัตราการค้นหาหรืออัตราที่มันเป็นครั้งแรกพยายามที่จะหาสวิทช์ จำกัด ปรับตัวเข้ากับสิ่งที่อัตราการได้รับการวิทช์ จำกัด ในเวลาพอที่สั้นโดยไม่ต้องบุกเข้ามาในสวิทช์ขีด จำกัด ของคุณถ้าพวกเขามาในเร็วเกินไป นี้แสวงหาอัตราพฤติกรรมเล็ก ๆ น้อย ๆ ที่แตกต่างจากคนขับ stepper หลัก แทนที่จะอัตราจากจุดไปยังจุดที่มันเป็นเพียงแค่ย้ายทั้งหมดของแกนในอัตราบุคคลเดียวกันโดยไม่คำนึงถึงวิธีการหลายแกนกำลังจะย้ายในเวลาเดียวกัน ดังนั้น XY แสวงหาย้ายจะดูเหมือนจะย้ายประมาณ 41% เร็วกว่าถ้าคุณจะย้ายไปด้วยคำสั่ง G1 (คุณสามารถปิดการใช้งานนี้ใน config.h ถ้าจะมารบกวนคุณ. ก็มีการเพิ่มความเร็วรอบกลับบ้าน.)
$ 21 - Homing debounce, MS
เมื่อใดก็ตามที่สวิทช์เรียกบางส่วนของพวกเขาสามารถมีไฟฟ้า / เสียงกลที่จริง 'ตีกลับ' สัญญาณสูงและต่ำสำหรับไม่กี่มิลลิวินาทีก่อนที่จะปักหลักอยู่. เพื่อแก้ปัญหานี้คุณจะต้อง debounce สัญญาณทั้งโดยฮาร์ดแวร์กับชนิดของบางอย่าง สัญญาณปรับอากาศหรือซอฟต์แวร์ที่มีความล่าช้าสั้น ๆ เพื่อให้สัญญาณเสร็จสิ้นการใหญ่ Grbl ดำเนินการหน่วงเวลาที่สั้นเพียงกลับบ้านเมื่อการตั้งศูนย์เครื่องจักร ตั้งค่าความล่าช้านี้เพื่อสิ่งที่สวิทช์ของคุณต้องการที่จะได้รับกลับบ้านทำซ้ำ ในกรณีส่วนใหญ่ 5-25 มิลลิวินาทีเป็นเรื่องปกติ
$ 22 - Homing ดึงออกมม
ในการเล่นที่ดีกับข้อ จำกัด อย่างหนักมีที่กลับบ้านสามารถแบ่งปันวิทช์ จำกัด เดียวกันวงจรกลับบ้านจะย้ายออกทั้งหมดของสวิทช์ จำกัด โดยเดินทางดึงออกนี้หลังจากที่เสร็จสิ้น ในคำอื่น ๆ จะช่วยป้องกันวิกฤติอุบัติเหตุวงเงินยากหลังจากรอบกลับบ้าน
กลับบ้านแสวงหาอัตราการตั้งค่าการควบคุมวิธีการอย่างรวดเร็วย้ายซ้อมรบดึงออกเช่นคำสั่ง G1
Grbl ภายในคำสั่ง:
เทคนิคที่เหลือคำสั่ง Grbl ไม่ได้ตั้งค่าคำสั่ง แต่เรากำลังจะอธิบายพวกเขาที่นี่ไม่มีเหตุผลที่ดีกว่าคนอื่น ๆ เพื่อความสมบูรณ์
คำสั่งสามสถานะปัจจุบัน: $ G $ #?
Grbl ให้สามคำสั่งเพื่อรายงานสถานะปัจจุบันและที่มันเป็น ในสามหนึ่งในนั้นคือเวลาจริงการตอบสนองกับตำแหน่งปัจจุบัน อีกสองคนไม่ได้ แต่ตอบสนองกับวิธีการบล็อกที่เข้ามาจะได้รับการประมวลผลขึ้นอยู่กับรัฐที่กำหนดโดย G-รหัสการตั้งค่าหรือสวิทช์ เหตุผลที่พวกเขาไม่ได้เป็นเรียลไทม์ที่ Grbl มีบัฟเฟอร์ภายในที่ร้านค้าและวางแผนการเคลื่อนไหวบัฟเฟอร์ บล็อก GCode เข้ามาเพียงแค่ตรึงบนการเคลื่อนไหวใหม่ในตอนท้ายของบัฟเฟอร์เมื่อมีห้องพัก บัฟเฟอร์พื้นเพื่อให้แน่ใจว่าการเคลื่อนไหวย้าย Grbl ที่เร็วที่สุดและปลอดภัยที่สุดในอัตราที่เป็นไปได้อย่างต่อเนื่องอีกครั้งการคำนวณมันเรียลไทม์เช่นการเคลื่อนไหวจบและคนใหม่เข้ามา
$ G - ดูรัฐ parser GCode
นี้จะพิมพ์คำสั่งทั้งหมดของโหมด GCode ใช้งานที่แยกวิเคราะห์จะแปลคำสั่งใด ๆ ที่เข้ามา โหมดเหล่านี้รวมถึง G20 / G21 นิ้ว / มมโหมด G54-G59 ทำงานที่ใช้งานระบบพิกัด G0 / G1 / G2 / G3 โหมดการเคลื่อนไหวปราดเปรียว, G17 / G18 / G19 เลือกเครื่องบินที่ใช้งาน, G90 / G91 โหมดแน่นอน G93 / G94 ฟีผกผัน โหมดอัตรา M0 / M1 / M2 การไหลของโปรแกรม, M3 / M4 / รัฐแกน M5, M8 / M9 รัฐหล่อเย็นจำนวนเครื่องมือ T และ F อัตราการป้อนที่ใช้งาน นอกจากนี้ยังจะมีรายการที่ใช้งานสวิทช์ $ Sx Grbl เช่นบล็อก $ S1 ลบ เมื่อเรียก Grbl จะกลับมาสายเช่นนี้:
[G0 G54 G17 G21 G90 G94 M0 M5 M9 T0 F500.000]
$ # - ดูพารามิเตอร์ GCode
พารามิเตอร์ G-รหัสโดยทั่วไปเก็บทำงาน G54-G59 ประสานงานการชดเชยและ G28 / G30 ตำแหน่งบ้าน (ต้องไม่สับสนกับกลับบ้านและเครื่องศูนย์. ตำแหน่งบ้านเหล่านี้สามารถตั้งค่าได้ที่ใดก็ได้ในพื้นที่โดยเครื่อง G28.1 / G30.1 คำสั่ง) ส่วนใหญ่ของพารามิเตอร์เหล่านี้จะถูกเขียนโดยตรงกับ EEPROM ได้ตลอดเวลาที่พวกเขามีการเปลี่ยนแปลงและมีความถาวร หมายความว่าพวกเขาจะยังคงเหมือนเดิมโดยไม่คำนึงถึงอำนาจลงจนกว่าพวกเขาจะมีการเปลี่ยนแปลงอย่างชัดเจน
พิกัดทำงาน G54-G59 สามารถเปลี่ยนผ่าน G10 L2 Px หรือ G10 L20 Px คำสั่งที่กำหนดโดยมาตรฐาน NIST GCode และ EMC2 (linuxcnc.org) มาตรฐาน G28 / G30 ตำแหน่งบ้านสามารถเปลี่ยนผ่าน G28.1 และคำสั่ง G30.1 ตามลำดับ โปรดทราบว่า G92 ไม่ได้ถาวรหรือที่จัดขึ้นใน EEPROM ตามมาตรฐานกรัมรหัสและจะตั้งค่าให้เป็นศูนย์เมื่อ Grbl ถูกรีเซ็ต โปรดอ่านเหล่านี้มาตรฐานกรัมรหัสที่จะเข้าใจว่าพวกเขาจะใช้
เมื่อ $ # เรียกว่า Grbl จะตอบสนองกับการชดเชยที่เก็บไว้จากพิกัดเครื่องสำหรับแต่ละระบบดังต่อไปนี้
[G54: 4.000,0.000,0.000]
[G55: 4.000,6.000,7.000]
[G56: 0.000,0.000,0.000]
[G57: 0.000,0.000,0.000]
[G58: 0.000,0.000,0.000]
[G59: 0.000,0.000,0.000]
[G28: 1.000,2.000,0.000]
[G30: 4.000,6.000,0.000]
[G92: 0.000,0.000,0.000]
ส่วนใหญ่เหล่านี้ชดเชยไม่เป็นประโยชน์โดยเฉพาะอย่างยิ่งถ้าคุณมีการใช้งานกลับบ้าน หากคุณไม่ได้กลับบ้านที่เปิดใช้งานเหล่านี้เป็นที่น่ากลัวอย่างน่าพิศวงเพราะเมื่อคุณกลับบ้านคุณก็สามารถย้ายกลับไปยังตำแหน่งที่เก็บไว้เดียวกันโดยใช้การทำงานของระบบพิกัดภายในความถูกต้องของเครื่องของคุณ หรือถ้าคุณกำลังทำหลายส่วนและมีเส้นทางเครื่องมือสำหรับเพียงส่วนหนึ่งสิ่งที่คุณต้องทำคือการตั้งค่าการทำงานของคุณระบบพิกัดไปยังตำแหน่งที่ส่วนถัดไปจะถูกสร้างขึ้นมาและเรียกใช้อีกครั้งรหัสเดียวกันว่า
? - สถานะปัจจุบัน
? คำสั่งทันทีกลับสภาพที่ใช้งานของ Grbl และเรียลไทม์ตำแหน่งปัจจุบันทั้งในพิกัดเครื่องและพิกัดการทำงาน นี้อาจจะส่งในเวลาใด ๆ และการทำงานที่ไม่ตรงกันกับกระบวนการอื่น ๆ ทั้งหมดที่ Grbl จะทำ $ 13 การตั้งค่า Grbl กำหนดว่าจะรายงานมิลลิเมตรหรือนิ้ว เมื่อไหร่? คือกด Grbl ทันทีจะตอบกับสิ่งที่ต้องการต่อไปนี้:
<Idle, mPOS: 5.529,0.560,7.000, WPos: 1.529, -5.440, -0.000>
รัฐที่ใช้งาน Grbl สามารถในคือ Idle คิววิ่งถือบ้านปลุก, ตรวจสอบ
ไม่ได้ใช้งานระบบทั้งหมดจะไปและก็พร้อมสำหรับอะไร
คิว: การเคลื่อนไหว (s) ถูกจัดคิวในบัฟเฟอร์วางแผนการรอคอยคำสั่งเริ่มต้นรอบที่จะออก กระบวนการบางอย่างเช่นการตรวจสอบโหมดกรัมรหัสไม่สามารถเรียกใช้ในขณะที่บางสิ่งบางอย่างที่ถูกจัดคิว รีเซ็ตเพื่อล้างคิว
Run: แสดงวงจรการทำงานอยู่
ถือ: ถือฟีอยู่ในกระบวนการของการดำเนินการหรือการชะลอตัวลงไปที่ป้าย หลังจากถือเสร็จสมบูรณ์ Grbl จะเข้าสู่สถานะคิวรอรอบเริ่มที่จะกลับมาโปรแกรม
หน้าแรก: ในช่วงกลางของรอบกลับบ้าน หมายเหตุ: ตำแหน่งจะไม่ปรับปรุงอยู่ในระหว่างรอบการกลับบ้าน แต่พวกเขาจะได้รับการตั้งค่าเป็น [0,0,0] ทำครั้งเดียว
ปลุก: นี้แสดงให้เห็นสิ่งที่ได้ไปผิดหรือ Grbl ไม่ทราบตำแหน่ง ล็อครัฐนี้ออกทั้งหมดคำสั่งกรัมรหัส แต่ช่วยให้คุณสามารถโต้ตอบกับการตั้งค่า Grbl ถ้าคุณจำเป็นต้อง '$ X' ฆ่าเผยแพร่ล็อคปลุกรัฐนี้และทำให้ Grbl ในสถานะ Idle ซึ่งจะช่วยให้คุณสามารถย้ายสิ่งอีกครั้ง ตามที่กล่าวมาก่อนต้องระมัดระวังในสิ่งที่คุณกำลังทำหลังจากปลุก
ตรวจสอบ: Grbl เป็นในการตรวจสอบโหมดกรัมรหัส มันจะประมวลผลและตอบสนองต่อทุกคำสั่งกรัมรหัส แต่ไม่เคลื่อนไหวหรือเปิดอะไร เมื่อสลับออกด้วยคำสั่งอื่น '$ C' Grbl จะตั้งค่าตัวเอง
คำสั่งอื่น ๆ $ C $ X $ H ~! Ctrl-X
$ C - ตรวจสอบโหมด GCode
นี้สลับตัวแยกวิเคราะห์ GCode Grbl ที่จะใช้บล็อกทั้งหมดที่เข้ามาดำเนินการให้สมบูรณ์ตามที่คุณต้องการในการดำเนินงานตามปกติ แต่จะไม่ย้ายใด ๆ ของแกนละเว้นสถิตอยู่และอำนาจปิดแกนและน้ำหล่อเย็น นี้มีวัตถุประสงค์เป็นวิธีที่จะช่วยให้ผู้ใช้วิธีการตรวจสอบว่าโปรแกรมใหม่ของพวกเขากรัมรหัสค่าโดยสารกับตัวแยกวิเคราะห์ของ Grbl และตรวจสอบข้อผิดพลาดใด ๆ (และในที่สุดนี้ยังจะตรวจสอบการละเมิดขีด จำกัด นุ่ม.)
เมื่อสลับออก Grbl จะดำเนินนุ่มตั้งค่าอัตโนมัติ (^ X) นี้สำหรับสองวัตถุประสงค์ มันช่วยลดความยุ่งยากในการจัดการรหัสบิต แต่ก็ยังป้องกันผู้ใช้จากการเริ่มต้นงานเมื่อโหมด G-รหัสของพวกเขาไม่ได้สิ่งที่พวกเขาคิดว่าพวกเขา การตั้งค่าระบบมักจะช่วยให้ผู้ใช้สดเริ่มต้นที่สอดคล้องกัน
หมายเหตุ: ในที่สุดโหมด GCode การตรวจสอบอาจจะเป็นปัจจัยอีกครั้งเพื่อให้โปรแกรม "ประวัติ" ใน Grbl ซึ่งหมายความว่า Grbl สามารถเริ่มโปรแกรมกรัมรหัสที่ใดก็ได้ มันภายในจะไปผ่านทั้งหมดของโปรแกรมกรัมรหัสขึ้นไปที่ต้องการกลางเดือนโปรแกรมจุดที่จะกลับไปที่ตั้งค่าทั้งหมดของรัฐแยกวิเคราะห์และสถานที่ให้ย้ายไปยังจุดเริ่มต้นที่และเริ่มดำเนินการ / เคลื่อนย้ายจากจุดนั้น ตัวอย่างเช่นสมมติว่าคุณมี E-หยุดอยู่ตรงกลางของโปรแกรมเพราะคุณลืมบางสิ่งบางอย่างหรือคุณมีเครื่องมือที่ผิดในแกน ส่วนของคุณเป็นเรื่องปกติและจำเป็นต้องรีสตาร์ทโปรแกรม ตอนนี้คุณจะต้องเริ่มต้นโปรแกรมจากจุดเริ่มต้นและปล่อยให้ร่างกายย้ายและวิ่งขึ้นไปยังจุดที่คุณ e-หยุด หากคุณมีโปรแกรมยาวนี้อาจใช้เวลาสักครู่ แต่โปรแกรม "ประวัติ" เพียงแค่จะไปถึงจุดเริ่มต้นของโปรแกรมภายในโดยไม่ต้องย้ายอะไรและเพียงเริ่มต้นการย้ายจากจุดที่จะกลับในวันที่
$ X - ล็อคปลุกฆ่า
โหมดการเตือน Grbl เป็นรัฐเมื่อสิ่งที่ได้ไปผิดอย่างยิ่งเช่นวงเงินยากหรือยกเลิกในระหว่างรอบหรือถ้า Grbl ไม่ทราบตำแหน่ง โดยค่าเริ่มต้นถ้าคุณได้กลับบ้านเปิดใช้งานและพลังงานขึ้น Arduino, Grbl เข้าสู่สถานะการเตือนภัยเพราะไม่ทราบตำแหน่ง โหมดการเตือนจะล็อคทั้งหมดบล็อกกรัมรหัสจนถึง '$ H' วงจรกลับบ้านได้รับการดำเนินการ หรือถ้าผู้ใช้ต้องการที่จะแทนที่ล็อคสัญญาณเตือนภัยที่จะย้ายแกนของพวกเขาออกสวิทช์ขีด จำกัด ของพวกเขาตัวอย่างเช่น '$ X' ฆ่าล็อคปลุกจะแทนที่ล็อคและอนุญาตให้มีฟังก์ชั่น G-รหัสไปทำงานอีกครั้ง
แต่อย่างระมัดระวัง !! นี้ควรจะใช้เฉพาะในสถานการณ์ฉุกเฉิน ตำแหน่งที่ได้รับการสูญเสียโอกาสและ Grbl อาจจะไม่เป็นที่คุณคิดว่ามันเป็น ดังนั้นจึงแนะนำให้ใช้โหมดที่เพิ่มขึ้น G91 เพื่อให้ย้ายสั้น จากนั้นดำเนินการรอบกลับบ้านหรือรีเซ็ตทันทีหลังจากนั้น
$ H - วงจรกลับบ้านเรียก
คำสั่งนี้เป็นวิธีเดียวที่จะดำเนินการรอบกลับบ้านใน Grbl ก่อนหน้านี้ G28 และ G30 โดยอัตโนมัติจะเริ่มต้นรอบการกลับบ้าน แต่นี้ไม่ถูกต้องตามมาตรฐานกรัมรหัส Homing เป็นคำสั่งที่แยกการจัดการโดยตัวควบคุม G28 และ G30 เพียงย้ายไป 'บ้าน' / ตำแหน่งที่กำหนดไว้ล่วงหน้าที่เก็บไว้ในพารามิเตอร์กรัมรหัสซึ่งสามารถอยู่ที่ใดก็ได้ในเครื่อง
เคล็ดลับ: หลังจากใช้วงจรกลับบ้านแทนที่จะวิ่งออกกำลังกายด้วยตนเองตลอดเวลาที่จะอยู่ในตำแหน่งตรงกลางของปริมาณพื้นที่ทำงานของคุณ คุณสามารถตั้งค่า G28 หรือ G30 ตำแหน่งที่กำหนดไว้ล่วงหน้าที่จะเป็นตำแหน่งหลังการกลับบ้านของคุณใกล้ชิดกับที่คุณจะตัดเฉือน การตั้งค่าเหล่านี้คุณจะต้องเขย่าเบา ๆ เครื่องของคุณไปยังที่ที่คุณจะต้องการที่จะย้ายไปหลังจากกลับบ้าน ประเภท G28.1 (หรือ G30.1) ที่จะมีการจัดเก็บ Grbl ตำแหน่งนั้น ดังนั้นแล้วหลังจากกลับบ้าน '$ H' คุณก็สามารถป้อน 'G28' (หรือ 'G30') และมันจะย้ายมีอัตโนมัติอย่างน่าอัศจรรย์ โดยทั่วไปแล้วผมก็จะย้ายแกน XY ไปยังศูนย์และปล่อยแกน Z ขึ้น เพื่อให้แน่ใจว่าจะไม่มีโอกาสที่เครื่องมือในแกนไม่ได้จับอะไร
~ - เริ่มต้นวงจร
นี่คือวงจรเริ่มต้นหรือดำเนินการคำสั่งที่จะสามารถออกได้ตลอดเวลาในขณะที่มันเป็นคำสั่งที่เรียลไทม์ เมื่อ Grbl มีการเคลื่อนไหวที่ถูกจัดคิวในบัฟเฟอร์และพร้อมที่จะไปคำสั่งเริ่มต้นวงจร ~ จะเริ่มดำเนินการบัฟเฟอร์และ Grbl จะเริ่มต้นการย้ายแกน อย่างไรก็ตามโดยค่าเริ่มต้นเริ่มต้นวงจรอัตโนมัติถูกเปิดใช้งานเพื่อให้ผู้ใช้ใหม่จะไม่จำเป็นต้องใช้คำสั่งนี้เว้นแต่ถือฟีดจะดำเนินการ เมื่อถือฟีดจะถูกดำเนินการเริ่มต้นวงจรจะดำเนินการโปรแกรม เริ่มต้นวงจรเพียงจะมีผลเมื่อมีการเคลื่อนไหวในบัฟเฟอร์พร้อมที่จะไปและจะไม่ทำงานกับกระบวนการอื่น ๆ เช่นกลับบ้าน
! - ฟีดไว้
คำสั่งระงับการฟีดจะนำวงจรที่ใช้งานเพื่อหยุดผ่านการชะลอตัวของการควบคุมเพื่อไม่ให้สูญเสียตำแหน่ง นอกจากนี้ยังเป็นเรียลไทม์และอาจจะเปิดใช้งานได้ตลอดเวลา เมื่อดำเนินการเสร็จสิ้นหรือหยุดชั่วคราว Grbl จะรอจนกว่าวงจรเริ่มต้นคำสั่งที่ออกจะกลับมาในการเขียนโปรแกรม ฟีดไว้เท่านั้นสามารถหยุดวงจรและจะไม่ส่งผลกระทบต่อกลับบ้านหรือกระบวนการอื่น ๆ
ถ้าคุณต้องการที่จะหยุดวงจรโปรแกรมกลางและไม่สามารถสูญเสียตำแหน่งให้ทำไว้จะมีฟีด Grbl นำทุกอย่างเพื่อหยุดการควบคุม เมื่อดำเนินการเสร็จสิ้นแล้วคุณสามารถออกรีเซ็ต พยายามที่จะดำเนินการระงับการฟีดเมื่อใดก็ตามที่เครื่องกำลังทำงานก่อนกดปุ่มรีเซ็ตยกเว้นแน่นอนหากมีสถานการณ์ฉุกเฉินบาง
Ctrl-x - รีเซ็ต Grbl
นี่คือคำสั่งตั้งค่าอ่อน Grbl ของ มันเป็นเรียลไทม์และสามารถส่งได้ตลอดเวลา เป็นชื่อที่แสดงถึงจะรีเซ็ต Grbl แต่ในวิธีการควบคุมยังคงรักษาตำแหน่งเครื่องของคุณและทำทุกอย่างโดยไม่ต้องเปิดเครื่องลง Arduino ของคุณ ครั้งเท่านั้นรีเซ็ตนุ่มอาจสูญเสียตำแหน่งคือเมื่อปัญหาเช่นถ้า steppers ถูกฆ่าตายในขณะที่พวกเขากำลังจะย้าย ถ้าเป็นเช่นนั้นก็จะรายงานถ้าติดตาม Grbl ของตำแหน่งตัวเครื่องได้รับการสูญเสีย
การกำหนดค่า Grbl v0.9
ลิงค์ด่วน:
การเริ่มต้น
การตั้งค่า Grbl
การตั้งค่า Grbl และสิ่งที่พวกเขาหมายถึง
Grbl ของคำสั่ง $ อื่น ๆ
คำสั่ง Real-Time
การเริ่มต้น
ครั้งแรกที่เชื่อมต่อกับ Grbl ใช้ขั้วอนุกรมที่คุณเลือก
ตั้งอัตราการส่งข้อมูลไปยัง 115200 เป็น 8-N-1 (8 บิตความเท่าเทียมกันไม่มีและบิต 1 หยุด.)
เมื่อเชื่อมต่อที่คุณควรจะได้รับ Grbl พร้อมรับคำซึ่งมีลักษณะเช่นนี้
Grbl 0.9g ['$' เพื่อขอความช่วยเหลือ]
ประเภท $ และกด Enter จะมีการพิมพ์ข้อความ Grbl ช่วยเหลือ คุณไม่ควรจะเห็นสะท้อนใด ๆ ในท้องถิ่นของ $ และป้อน Grbl ควรจะตอบสนองด้วย:
$$ (ดูการตั้งค่า Grbl)
$ # (ดูพารามิเตอร์ #)
$ G (มุมมองของรัฐแยกวิเคราะห์)
$ ฉัน (ดูข้อมูลการสร้าง)
$ N (มุมมองบล็อกเริ่มต้น)
$ x = ค่า (บันทึกการตั้งค่า Grbl)
$ Nx = สาย (ประหยัดเริ่มต้นบล็อก)
$ C (ตรวจสอบโหมด GCode)
$ X (ฆ่าล็อคปลุก)
$ H (ทำงานวงจรกลับบ้าน)
~ (เริ่มต้นรอบ)
! (ถือฟีด)
? (สถานะปัจจุบัน)
Ctrl-x (รีเซ็ต Grbl)
'$' - คำสั่งเป็นคำสั่งระบบ Grbl ใช้ในการปรับแต่งการตั้งค่าดูหรือเปลี่ยนสถานะ Grbl และโหมดการทำงานและเริ่มวงจรกลับบ้าน ช่วงสี่ไม่ - คำสั่ง '$' เป็นคำสั่งควบคุมเรียลไทม์ที่สามารถส่งได้ตลอดเวลาไม่ว่าสิ่งที่จะทำ Grbl เหล่านี้อย่างใดอย่างหนึ่งได้ทันทีเปลี่ยนพฤติกรรมการทำงาน Grbl หรือทันทีพิมพ์รายงานของข้อมูลเรียลไทม์ที่สำคัญเช่นตำแหน่งปัจจุบัน (aka DRO)
การตั้งค่า Grbl
$$ - ดูการตั้งค่า Grbl
เพื่อดูการตั้งค่าชนิด $$ และกดหลังจากที่เชื่อมต่อ Grbl Grbl ควรจะตอบสนองกับรายการของการตั้งค่าระบบปัจจุบันดังแสดงในตัวอย่างด้านล่าง ทั้งหมดการตั้งค่าเหล่านี้เป็นถาวรและเก็บไว้ใน EEPROM ดังนั้นหากคุณอำนาจลงเหล่านี้จะถูกโหลดกลับขึ้นในครั้งต่อไปที่คุณกำลังขึ้น Arduino ของคุณ
0 $ = 10 (ชีพจรขั้นตอน USEC)
$ 1 = 25 (ขั้นตอนที่ล่าช้าไม่ได้ใช้งานมิลลิวินาที)
$ 2 = 0 (พอร์ตขั้นตอนที่สลับหน้ากาก: 00000000)
$ 3 = 6 (พอร์ตผบคว่ำหน้ากาก: 00000110)
$ 4 = 0 (ขั้นตอนที่ช่วยให้สลับ, บูล)
5 $ = 0 (ไม่ จำกัด จำนวนขากลับ, บูล)
6 $ = 0 (สอบสวนคว่ำขาบูล)
$ 10 = 3 (หน้ากากรายงานสถานะ: 00000011)
$ 11 = 0.020 (ค่าความเบี่ยงเบนทางแยกมม)
$ 12 = 0.002 (ความอดทนโค้งมม)
$ 13 = 0 (นิ้วรายงานบูล)
$ 14 = 1 (เริ่มต้นอัตโนมัติ, บูล)
$ 20 = 0 (ข้อ จำกัด นุ่มบูล)
$ 21 = 0 (ข้อ จำกัด อย่างหนักบูล)
$ 22 = 0 (รอบกลับบ้าน, บูล)
$ 23 = 1 (กลับบ้านหน้ากากสลับผบ: 00000001)
$ 24 = 50.000 (ฟีดกลับบ้าน, มม / นาที)
$ 25 = 635,000 (กลับบ้านแสวงหามิลลิเมตร / นาที)
$ 26 = 250 (debounce กลับบ้าน, มิลลิวินาที)
$ 27 = 1.000 (กลับบ้านดึงออกมม)
$ 100 = 314.961 (x, ขั้นตอน / เดือน)
$ 101 = 314.961 (และขั้นตอน / เดือน)
$ 102 = 314.961 (Z ขั้นตอน / เดือน)
$ 110 = 635,000 (x อัตราสูงสุดมิลลิเมตร / นาที)
$ 111 = 635,000 (และอัตราสูงสุดมิลลิเมตร / นาที)
$ 112 = 635,000 (Z อัตราสูงสุดมิลลิเมตร / นาที)
$ 120 = 50.000 (x เร่งมิลลิเมตร / วินาที ^ 2)
$ 121 = 50.000 (และเร่งมิลลิเมตร / วินาที ^ 2)
$ 122 = 50.000 (Z เร่งมิลลิเมตร / วินาที ^ 2)
$ 130 = 225.000 (x เดินทางสูงสุด, มม)
$ 131 = 125.000 (และเดินทางสูงสุด, มม)
$ 132 = 170.000 (Z เดินทางสูงสุด, มม)
$ x = Val - ประหยัด Grbl การตั้งค่า
$ x = คำสั่ง Val บันทึกหรือเปลี่ยนแปลงการตั้งค่า Grbl ซึ่งสามารถทำได้ด้วยตนเองโดยการส่งคำสั่งนี้เมื่อเชื่อมต่อกับ Grbl ผ่านโปรแกรมเทอร์มิอนุกรม แต่ส่วนใหญ่ Grbl GUIs จะทำเพื่อคุณเป็นคุณสมบัติที่ใช้งานง่าย
ในการเปลี่ยนด้วยตนเองเช่นการ ตัวเลือกขั้นตอน microseconds ชีพจร 10us คุณจะพิมพ์นี้ตามด้วยการป้อน:
0 $ = 10
หากทุกอย่างเป็นไปด้วยดี, Grbl จะตอบสนองกับ 'ตกลง' และการตั้งค่านี้จะถูกเก็บไว้ใน EEPROM และจะยังคงอยู่ตลอดไปหรือจนกว่าคุณจะเปลี่ยนพวกเขา คุณสามารถตรวจสอบ Grbl ได้รับและจัดเก็บการตั้งค่าของคุณได้อย่างถูกต้องโดยการพิมพ์ $$ เพื่อดูการตั้งค่าระบบอีกครั้ง
Grbl ของ $ x = การตั้งค่า Val และสิ่งที่พวกเขาหมายถึง
หมายเหตุ: การตั้งค่าหมายเลขมีการเปลี่ยนแปลงตั้งแต่ v0.8c เพื่อวัตถุประสงค์ในอนาคตการตรวจสอบ
$ 0 - ชีพจรขั้นตอน microseconds
ไดรเวอร์ Stepper ได้รับการประเมินสำหรับความยาวขั้นต่ำชีพจรขั้นตอนบางอย่าง ตรวจสอบเอกสารข้อมูลหรือเพียงแค่พยายามที่ตัวเลขบาง คุณต้องการพัลส์ที่สั้นที่สุดไดรเวอร์ stepper สามารถรับรู้ได้อย่างน่าเชื่อถือ ถ้าพัลส์มีความยาวเกินไปคุณอาจจะเป็นปัญหาเมื่อใช้ระบบฟีดที่สูงมากและอัตราการเต้นของชีพจรเพราะพัขั้นตอนที่สามารถเริ่มต้นการทับซ้อนกัน เราขอแนะนำให้บางสิ่งบางอย่างประมาณ 10 ไมโครวินาทีซึ่งเป็นค่าเริ่มต้น
$ 1 - ขั้นตอนที่ล่าช้าไม่ได้ใช้งานมิลลิวินาที
เวลา steppers ของคุณเสร็จสมบูรณ์การเคลื่อนไหวทุกและมาหยุด Grbl จะชะลอการปิดการใช้งาน steppers โดยค่านี้ หรือคุณสามารถให้แกนของคุณเปิดใช้งานโดยการตั้งค่านี้ให้สูงสุด 255 มิลลิวินาที อีกครั้งเพียงที่จะทำซ้ำคุณสามารถเก็บทุกแกนที่เปิดใช้งานอยู่เสมอโดยการตั้งค่า $ 1 = 255
เวลาล็อค stepper ไม่ได้ใช้งานเป็นระยะเวลาเวลา Grbl จะทำให้ steppers ล็อคก่อนที่จะปิดการใช้งาน ขึ้นอยู่กับระบบที่คุณสามารถตั้งค่านี้ให้เป็นศูนย์และปิดการใช้งาน กับคนอื่น ๆ ที่คุณอาจต้อง 25-50 มิลลิวินาทีเพื่อให้แน่ใจว่าแกนของคุณมาให้เสร็จสมบูรณ์ก่อนที่จะหยุดปิดการใช้งาน นี้จะช่วยให้บัญชีสำหรับมอเตอร์เครื่องที่ไม่ชอบที่จะถูกทิ้งไว้เป็นเวลานานโดยไม่ต้องทำอะไรบางอย่าง นอกจากนี้ยังเก็บไว้ในใจว่าคนขับ stepper บางจำไม่ได้ซึ่งขั้นตอนขนาดเล็กที่พวกเขาหยุดอยู่ดังนั้นเมื่อคุณเปิดใช้งานคุณอาจเป็นพยานบางขั้นตอน 'หายไป' เนื่องจากนี้ ในกรณีนี้เพียงให้ steppers ของคุณเปิดใช้งานผ่านทาง $ 1 = 255
$ 2 - พอร์ตขั้นตอนที่สลับหน้ากาก: ไบนารี
การตั้งค่านี้ตีความขั้นตอนสัญญาณชีพจร โดยค่าเริ่มต้นสัญญาณขั้นตอนเริ่มต้นที่ปกติต่ำและสูงขึ้นเมื่อเหตุการณ์ชีพจรขั้นตอน หลังจากเวลาชีพจรขั้นตอนที่กำหนดโดย $ 0, พินตั้งค่าต่ำจนเหตุการณ์ชีพจรขั้นตอนต่อไป เมื่อคว่ำพฤติกรรมชีพจรขั้นตอนที่สลับจากปกติสูงไปต่ำในช่วงการเต้นของชีพจรและกลับไปที่สูง ผู้ใช้ส่วนใหญ่จะไม่จำเป็นต้องใช้การตั้งค่านี้ แต่นี้จะมีประโยชน์สำหรับคนขับรถ cnc-stepper บางอย่างที่มีความต้องการเฉพาะ ตัวอย่างเช่นความล่าช้าเทียมระหว่างทิศทางขาและชีพจรขั้นตอนที่สามารถสร้างขึ้นโดย inverting ขาขั้นตอน
การตั้งค่าหน้ากากคว่ำนี่คือค่าที่เก็บแกนจะกลับเป็นสถานะบิต คุณจริงๆไม่จำเป็นต้องเข้าใจวิธีการทำงาน คุณก็ต้องป้อนค่าการตั้งค่าสำหรับแกนที่คุณต้องการที่จะกลับ ตัวอย่างเช่นถ้าคุณต้องการที่จะกลับแกน X และ Z คุณต้องการส่ง $ 2 = 5 ถึง Grbl และการตั้งค่าในขณะนี้ควรอ่าน $ 2 = 5 (พอร์ตขั้นตอนที่สลับหน้ากาก: 00000101)
ค่าการตั้งค่าหน้ากาก Invert Invert X Y Z กลับ
0 00000000 N: ยังไม่มี
1 00000001 ใช่ไม่มี
2 00000010 ไม่มีใช่
3 00000011 Y ใช่
4 00000100 N: Y
5 00000101 ใช่ Y
6 00000110 ไม่มี Y Y
7 00000111 Y Y Y
$ 3 - หน้ากากสลับพอร์ตทิศทาง: ไบนารี
การตั้งค่านี้ตีความสัญญาณทิศทางสำหรับแต่ละแกน โดยค่าเริ่มต้น Grbl อนุมานว่าแกนย้ายไปในทิศทางที่เป็นบวกเมื่อสัญญาณทิศทางขาอยู่ในระดับต่ำและทิศทางเชิงลบเมื่อขาสูง บ่อยครั้งที่แกนไม่ได้ย้ายด้วยวิธีนี้กับเครื่องบาง การตั้งค่านี้จะกลับสัญญาณทิศทางขาแกนที่ย้ายทางตรงข้าม
สลับการตั้งค่าหน้ากากนี้ทำงานเหมือนพอร์ตขั้นตอนที่สลับหน้ากากและร้านค้าที่แกนจะกลับเป็นสถานะบิต การกำหนดค่าการตั้งค่านี้คุณก็ต้องส่งค่าสำหรับแกนที่คุณต้องการที่จะกลับ ใช้ตารางข้างต้น ตัวอย่างเช่นถ้าต้องการที่จะกลับทิศทางแกน Y เท่านั้นที่คุณจะส่ง 3 $ = 2 Grbl และการตั้งค่าในขณะนี้ควรอ่าน 3 $ = 2 (พอร์ตผบคว่ำหน้ากาก: 00000010)
$ 4 - ขั้นตอนการเปิดใช้งานสลับ, บูล
โดยค่าเริ่มต้น stepper ช่วยให้ขาอยู่ในระดับสูงที่จะปิดการใช้งานและต่ำเพื่อเปิดใช้งาน ถ้าการตั้งค่าของคุณต้องการตรงข้ามเพียงแค่กลับ stepper ช่วยให้ขาโดยการพิมพ์ 4 $ = 1 ปิดการใช้งานกับ $ 4 = 0 (อาจจะต้องวงจรไฟฟ้าในการโหลดการเปลี่ยนแปลง.)
$ 5 - ขากลับ Limit, บูล
โดยค่าเริ่มต้นขาขีด จำกัด ที่จะมีขึ้นตามปกติสูงที่มีความต้านทานภายในของ Arduino ดึงขึ้น เมื่อขาขีด จำกัด ต่ำ Grbl ตีความนี้เป็นทริกเกอร์ สำหรับพฤติกรรมที่ตรงข้ามเพียงแค่กลับหมุดขีด จำกัด โดยการพิมพ์ 5 $ = 1 ปิดการใช้งานกับ 5 $ = 0 คุณอาจจะต้องมีวงจรไฟฟ้าในการโหลดการเปลี่ยนแปลง
หมายเหตุ: ถ้าคุณกลับหมุดขีด จำกัด ของคุณคุณจะต้องต้านทานภายนอกเลื่อนลงสายในทุกหมุดขีด จำกัด เพื่อป้องกันการบรรทุกเกินพิกัดหมุดที่มีในปัจจุบันและทอด
6 $ - ขา Probe คว่ำ, บูล
โดยค่าเริ่มต้นขาสอบสวนจะจัดขึ้นตามปกติสูงที่มีภายใน Arduino ของตัวต้านทานดึงขึ้น เมื่อขาสอบสวนอยู่ในระดับต่ำ Grbl ตีความนี้เป็นทริกเกอร์ สำหรับพฤติกรรมที่ตรงข้ามเพียงขากลับสอบสวนโดยการพิมพ์ 6 $ = 1 ปิดการใช้งานกับ 6 $ = 0 คุณอาจจะต้องมีวงจรไฟฟ้าในการโหลดการเปลี่ยนแปลง
หมายเหตุ: ถ้าคุณกลับขาสอบสวนของคุณคุณจะต้องต้านทานภายนอกเลื่อนลงสายในขาสอบสวนเพื่อป้องกันไม่ให้มากไปด้วยในปัจจุบันและมันทอด
10 $ - หน้ากากรายงานสถานะ: ไบนารี
การตั้งค่านี้กำหนดสิ่งที่ Grbl ข้อมูลเรียลไทม์จะรายงานกลับไปยังผู้ใช้เมื่อ '?' รายงานสถานะจะถูกส่ง โดยค่าเริ่มต้น Grbl จะส่งกลับไปทำงานของรัฐ (ไม่สามารถปิดได้) ตำแหน่งเครื่องและตำแหน่งงาน (ตำแหน่งเครื่องที่มีการประสานงานและการชดเชยชดเชยอื่น ๆ นำไปใช้) สองคุณลักษณะการรายงานเพิ่มเติมมีอยู่ที่มีประโยชน์สำหรับการเชื่อมต่อซึ่งรวมถึง RX บัฟเฟอร์อนุกรมและป้องกันการวางแผนการใช้บัฟเฟอร์ กำหนดให้ใช้ตารางด้านล่างเพื่อตรวจสอบข้อมูลที่คุณต้องการ Grbl ที่จะส่งกลับ โดยทั่วไปเก็บข้อมูลนี้ให้น้อยที่สุดเพราะมันใช้ทรัพยากรในการพิมพ์และส่งข้อมูลกลับมา
เครื่องมูลค่าการตั้งค่าหน้ากากตำแหน่งตำแหน่ง Planner ทำงานบัฟเฟอร์ RX บัฟเฟอร์
0 00000000 N: N:
1 00000001 ใช่ N:
2 00000010 ไม่มีใช่ไม่มี
3 00000011 Y Y N:
4 00000100 N: ใช่
5 00000101 ใช่ใช่
6 00000110 ไม่มี Y ใช่
7 00000111 Y Y ใช่
8 00001000 ไม่มีวัด N Y
9 00001001 ใช่ไม่มี Y
10 00001010 ไม่มีใช่ Y
11 00001011 Y ใช่ Y
12 00001100 N: Y Y
13 00001101 ใช่ Y Y
14 00001110 ไม่มี Y Y Y
15 00001111 Y Y Y Y
$ 11 - เบี่ยงเบนสนธิมม
เบี่ยงเบนสนธิถูกนำมาใช้โดยผู้จัดการเร่งความเร็วเพื่อกำหนดวิธีการที่รวดเร็วสามารถย้ายผ่านทางแยกส่วนของเส้นของโปรแกรมกรัมรหัสเส้นทาง ตัวอย่างเช่นถ้าเส้นทางกรัมรหัสมีคม 10 องศาเปิดขึ้นมาและเครื่องจักรที่มีการเคลื่อนไหวที่ความเร็วเต็มการตั้งค่านี้จะช่วยกำหนดเท่าใดเครื่องจะต้องมีการชะลอตัวลงได้อย่างปลอดภัยผ่านมุมโดยไม่สูญเสียขั้นตอน
วิธีที่เราคำนวณมันเป็นบิตซับซ้อน แต่โดยทั่วไปค่าที่สูงขึ้นจะช่วยให้การเคลื่อนไหวได้เร็วขึ้นผ่านมุมในขณะที่เพิ่มความเสี่ยงของการสูญเสียขั้นตอนและการวางตำแหน่ง ค่าที่ต่ำกว่าทำให้ผู้จัดการเร่งระมัดระวังมากขึ้นและจะนำไปสู่การเข้าโค้งอย่างระมัดระวังและช้าลง ดังนั้นถ้าคุณทำงานเป็นปัญหาที่เครื่องของคุณพยายามที่จะเปิดเตะมุมเร็วเกินไปลดค่านี้จะทำให้มันช้าลงเมื่อเข้าสู่มุม หากคุณต้องการเครื่องของคุณที่จะย้ายได้เร็วขึ้นผ่านทางแยก, เพิ่มค่านี้ให้เร็วขึ้น สำหรับคนที่อยากรู้อยากเห็นกดที่ลิงค์นี้เพื่ออ่านเกี่ยวกับขั้นตอนวิธีการเข้าโค้ง Grbl ซึ่งบัญชีสำหรับทั้งความเร็วและมุมสนธิกับง่ายมากที่มีประสิทธิภาพและวิธีการที่แข็งแกร่ง
$ 12 - ความอดทนโค้งมม
Grbl ทำให้ G2 / วงการ G3 โค้งและเอนริเก้โดยแบ่งพวกเขาออกเป็นเส้นเล็ก ๆ เล็กเช่นที่ความถูกต้องติดตามโค้งไม่เคยต่ำกว่าค่านี้ คุณอาจจะไม่จำเป็นต้องปรับเปลี่ยนการตั้งค่านี้ตั้งแต่ 0.002mm เป็นอย่างดีด้านล่างความถูกต้องของมากที่สุดเครื่อง CNC แต่ถ้าคุณพบว่าวงการของคุณดิบเกินไปหรือการติดตามโค้งมีประสิทธิภาพช้าปรับการตั้งค่านี้ ค่าที่ต่ำกว่าจะช่วยให้ความแม่นยำสูงกว่า แต่อาจนำไปสู่ปัญหาประสิทธิภาพการทำงานโดยการบรรทุกเกินพิกัด Grbl มีเส้นเล็ก ๆ มากเกินไป อีกวิธีหนึ่งคือค่าสูงกว่าร่องรอยที่จะมีความแม่นยำต่ำกว่า แต่สามารถเพิ่มความเร็วในการทำงานของส่วนโค้งตั้งแต่ Grbl มีเส้นน้อยที่จะจัดการกับ
สำหรับขี้สงสัย, ความอดทนโค้งถูกกำหนดให้เป็นระยะตั้งฉากสูงสุดจากส่วนของเส้นที่มีจุดสิ้นสุดของมันนอนอยู่บนโค้งอาคาคอร์ด กับบางรูปทรงเรขาคณิตพื้นฐานเราแก้สำหรับความยาวของส่วนของเส้นที่จะติดตามโค้งที่สอดคล้องกับการตั้งค่านี้ การสร้างแบบจำลองโค้งในลักษณะนี้เป็นที่ดีเพราะส่วนของเส้นโค้งโดยอัตโนมัติปรับและขนาดที่มีความยาวเพื่อให้แน่ใจว่าประสิทธิภาพการติดตามโค้งที่เหมาะสมในขณะที่ไม่เคยสูญเสียความถูกต้อง
$ 13 - นิ้วรายงานบูล
Grbl มีการวางตำแหน่งเรียลไทม์คุณลักษณะการรายงานให้ข้อเสนอแนะผู้ใช้บนเครื่องที่เป็นว่าในเวลานั้นเช่นเดียวกับพารามิเตอร์สำหรับการประสานงานและการชดเชยละเอียด โดยค่าเริ่มต้นมีการตั้งค่าที่จะรายงานในมม แต่โดยการส่ง $ 13 = 1 คำสั่งคุณส่งธงบูลีนนี้เพื่อความจริงและคุณลักษณะการรายงานเหล่านี้ในขณะนี้จะรายงานในนิ้ว $ 13 = 0 ถึงตั้งค่ากลับไปมิลลิเมตร
$ 14 - เริ่มต้นอัตโนมัติ, บูล
ในสภาพแวดล้อม CNC มืออาชีพมากขึ้นข้อดีเริ่มงานโดยการโหลดโปรแกรมของพวกเขาแล้วกดปุ่ม 'เริ่มต้นวงจรบนเครื่องของพวกเขา มันเริ่มต้นงาน Grbl ไม่สิ่งเดียวกัน แต่ไม่ได้ไปโดยปริยาย ในฐานะที่เป็นเครื่องมือการเรียนรู้เรา 'อัตโนมัติวงจรเริ่มต้น' คำสั่งใด ๆ G-รหัสที่ใช้ส่งไปยัง Grbl สำหรับวิ่งออกกำลังกายเพียงเครื่องเพื่อดูว่าย้ายไปในทิศทางที่พวกเขาคิดว่ามันควรจะไปหรือเพียงแค่เห็นด้วยกับสิ่งที่เครื่องของพวกเขาสามารถทำได้ . นี้จะทำให้มันง่ายที่จะโหลดขึ้นเครื่องของคุณกับ Grbl และรับในการทำงานมากกว่าที่มีความขยันหมั่นเพียรที่จะตี 'วงจรเริ่มต้น' ตลอดเวลาที่คุณต้องการที่จะย้ายแกนใด ๆ ของคุณ เมื่อคุณเรียนรู้เครื่องของคุณและได้รับการจัดการที่ดีใน G-รหัสคุณสามารถปิดการใช้ 'อัตโนมัติวงจรเริ่มต้น' คุณสมบัติโดยการส่ง Grbl $ 14 = 0 คำสั่ง (อาจจะต้องนุ่มรีเซ็ตหรือวงจรไฟฟ้าที่จะโหลดการเปลี่ยนแปลง.)
วิธีที่บอกอีกว่าอาจจะ:
ถ้า $ 14 = 0 แล้วบางคำสั่ง GCode เช่น Xn, Yn ฯลฯ จะไม่เกิดขึ้นเมื่อคุณใส่พวกเขาที่สถานีอนุกรม ถ้า $ 14 = 1 แล้วคำสั่งเคลื่อนไหว GCode ที่จะเกิดขึ้น
เห็นได้ชัดว่า cnc ใหญ่จะไม่ดำเนินการ GCode จนผู้ประกอบการกดปุ่ม 'วงจรเริ่มต้น' คำสั่ง GCode ได้รับ แต่การจัดคิวและรอที่ปุ่ม 'วงจรเริ่มต้น' ทำให้มีความรู้สึก? เมื่อ 14 $ = 0 แล้วว่าเป็นวิธีที่ทำหน้าที่ grbl เกินไป คุณต้องปุ่ม! (ในกรณีที่แนบปุ่ม feed-ถือเกินไป!)
เมื่อ 14 $ = 1 แล้วซอฟแวร์โดยอัตโนมัติ grbl กดเวอร์ชั่นของซอฟต์แวร์ของ 'เริ่มต้นวงจร' สำหรับคุณทุกครั้งที่คุณ 'Enter' บรรทัดคำสั่ง GCode ผ่านขั้วอนุกรม นี้จะทำเพื่อให้ความสะดวกสบายมากขึ้นสำหรับคุณที่จะป้อนคำสั่งและดูสิ่งที่เกิดขึ้นได้โดยไม่ต้องกดปุ่ม
$ 20 - ขีด จำกัด ของซอฟท์บูล
ขีด จำกัด ของซอฟท์เป็นคุณลักษณะด้านความปลอดภัยที่จะช่วยป้องกันเครื่องคอมพิวเตอร์ของคุณจากการเดินทางไกลเกินไปและเกินขีด จำกัด ของการเดินทาง, crashing หรือทำลายสิ่งที่มีราคาแพง มันทำงานโดยการรู้ข้อ จำกัด การเดินทางสูงสุดสำหรับแต่ละแกนและสถานที่ที่ Grbl อยู่ในพิกัดเครื่อง เมื่อใดก็ตามที่เคลื่อนไหวกรัมรหัสใหม่ถูกส่งไปยัง Grbl มันจะตรวจสอบหรือไม่ว่าคุณตั้งใจได้เกินพื้นที่เครื่องของคุณ ถ้าคุณทำ Grbl จะออกอาหารไว้ที่ใดก็ตามที่มันเป็นทันทีปิดแกนและน้ำหล่อเย็นและจากนั้นตั้งระบบเตือนภัยที่ระบุปัญหาที่เกิดขึ้น ตำแหน่งที่เครื่องจะถูกเก็บไว้ในภายหลังเพราะมันไม่ได้ทำป้ายบังคับทันทีเช่นข้อ จำกัด อย่างหนัก
หมายเหตุ: ขีด จำกัด ของซอฟท์ต้องกลับบ้านที่จะเปิดใช้งานและความถูกต้องสูงสุดแกนตั้งค่าเดินทางเพราะ Grbl ต้องการที่จะรู้ว่ามันอยู่ที่ไหน $ 20 = 1 เพื่อเปิดใช้งานและ $ 20 = 0 ปิดการใช้งาน
$ 21 - ขีด จำกัด ของฮาร์ดบูล
ทำงานวงเงินยากพื้นเช่นเดียวกับข้อ จำกัด นุ่ม แต่ใช้สวิทช์ทางกายภาพแทน โดยทั่วไปคุณสายขึ้นบางสวิทช์ (กลหรือแสง) ซึ่งอยู่ใกล้กับจุดสิ้นสุดของการเดินทางของแกนแต่ละหรือที่คุณเคยรู้สึกเหมือนว่าอาจจะมีปัญหาหากโปรแกรมของคุณจะย้ายมากเกินไปที่จะไปยังที่ที่มันไม่ควร เมื่อสวิทช์เรียกมันทันทีจะหยุดการเคลื่อนไหวทั้งหมดปิดน้ำหล่อเย็นและแกน (ถ้าเชื่อมต่อ) และเข้าสู่โหมดการเตือนภัยซึ่งบังคับให้คุณตรวจสอบเครื่องของคุณและการตั้งค่าทุกอย่าง
ในการใช้ข้อ จำกัด อย่างหนักกับ Grbl หมุดขีด จำกัด ที่จะมีขึ้นสูงที่มีความต้านทานดึงขึ้นภายในดังนั้นสิ่งที่คุณต้องทำคือลวดในสวิทช์ปกติเปิดที่มีขาและพื้นดินและเปิดใช้งานข้อ จำกัด อย่างหนักกับ $ 21 = 1 (ปิดการใช้งานกับ $ 21 = 0.) เราขอแนะนำให้ใช้การแทรกแซงไฟฟ้ามาตรการป้องกัน หากคุณต้องการขีด จำกัด สำหรับปลายทั้งสองของการเดินทางของหนึ่งแกนเพียงลวดในสองสวิทช์ในแบบคู่ขนานกับขาและพื้นดินดังนั้นหากคนใดคนหนึ่งของพวกเขาการเดินทางจะเรียกวงเงินยาก
เก็บไว้ในใจว่าเหตุการณ์วงเงินยากจะถือเป็นเหตุการณ์สำคัญที่ steppers หยุดทันทีและจะมีขั้นตอนที่หายไปมีแนวโน้มที่ Grbl ไม่ได้มีความคิดเห็นเกี่ยวกับตำแหน่งใด ๆ ดังนั้นจึงไม่สามารถรับประกันได้ว่ามันมีความคิดใด ๆ ที่มันเป็น ดังนั้นถ้าวงเงินยากถูกเรียก Grbl จะเข้าสู่โหมดห่วงเตือนภัยไม่มีที่สิ้นสุดให้คุณมีโอกาสที่จะตรวจสอบเครื่องของคุณและบังคับให้คุณสามารถตั้งค่า Grbl โปรดจำไว้ว่ามันเป็นอย่างหมดจดคุณลักษณะด้านความปลอดภัย
$ 22 - รอบ Homing, บูล
อ่า, กลับบ้าน สำหรับผู้ที่เริ่มต้นเพียงแค่เข้าไปใน CNC, วงจรกลับบ้านถูกนำมาใช้อย่างถูกต้องและแม่นยำค้นหาที่รู้จักกันและตำแหน่งที่สอดคล้องกับทุกเครื่องที่คุณเริ่มต้น Grbl ของคุณระหว่างการประชุม ในคำอื่น ๆ คุณรู้ว่าคุณจะอยู่ที่ไหนในเวลาใดก็ตามทุกครั้ง สมมติว่าคุณเริ่มเครื่องจักรกลหรือสิ่งที่กำลังจะเริ่มต้นขั้นตอนต่อไปในการทำงานและไฟดับคุณเริ่มต้นใหม่ Grbl Grbl และมีความคิดที่มันเป็น คุณซ้ายกับงานของการหาที่ที่คุณอยู่ หากคุณมีกลับบ้าน, คุณมักจะมีเครื่องศูนย์จุดอ้างอิงในการค้นหาจากดังนั้นสิ่งที่คุณต้องทำคือการทำงานรอบกลับบ้านและกลับมาที่คุณซ้ายปิด
การตั้งค่ารอบกลับบ้านสำหรับ Grbl, คุณจะต้องมีสวิทช์ขีด จำกัด ในตำแหน่งที่คงที่จะไม่ได้รับการกระแทกหรือย้ายหรืออื่น ๆ จุดอ้างอิงของคุณได้รับ messed ขึ้น พวกเขามักจะมีการติดตั้งในจุดที่ไกลที่สุดใน + x + y, + Z ของแกนแต่ละ สายขีด จำกัด ของคุณในสวิทช์ด้วยหมุดขีด จำกัด และพื้นดินเช่นเดียวกับข้อ จำกัด อย่างหนักและเปิดใช้งานกลับบ้าน ถ้าคุณอยากรู้คุณสามารถใช้สวิทช์ขีด จำกัด ของคุณสำหรับข้อ จำกัด อย่างหนักทั้งในและกลับบ้าน พวกเขาเล่นดีกับคนอื่น ๆ
โดยค่าเริ่มต้นรอบการกลับบ้านของ Grbl ย้ายแกน Z บวกเป็นครั้งแรกที่จะล้างพื้นที่ทำงานและจากนั้นย้ายทั้ง X และ Y แกนในเวลาเดียวกันในทิศทางที่เป็นบวก การตั้งค่าวิธีวงจรการกลับบ้านของคุณมีลักษณะการทำงานที่มีการตั้งค่า Grbl ขึ้นลงหน้าอธิบายสิ่งที่พวกเขาทำ (และตัวเลือกเวลารวบรวมได้เป็นอย่างดี.)
นอกจากนี้อีกหนึ่งสิ่งที่จะต้องทราบเมื่อกลับบ้านถูกเปิดใช้งาน Grbl จะล็อคออกคำสั่งกรัมรหัสจนกว่าคุณจะดำเนินการรอบกลับบ้าน ความหมายไม่มีแกนเคลื่อนไหวเว้นแต่ล็อคเป็นคนพิการ ($ X) แต่เพิ่มเติมว่าภายหลัง ส่วนใหญ่ถ้าไม่ทั้งหมดควบคุม CNC, ทำอะไรบางอย่างที่คล้ายกันเป็นส่วนใหญ่คุณลักษณะด้านความปลอดภัยที่จะช่วยให้ผู้ใช้จากการทำผิดพลาดการวางตำแหน่งซึ่งเป็นเรื่องง่ายมากที่จะทำและจะเสียใจเมื่อความผิดพลาดส่วนซากปรักหักพัง หากคุณพบนี้น่ารำคาญหรือพบข้อบกพร่องแปลกใด ๆ โปรดแจ้งให้เราทราบและเราจะพยายามที่จะทำงานกับมันเพื่อให้ทุกคนมีความสุข :)
หมายเหตุ: ตรวจสอบ config.h สำหรับตัวเลือกกลับบ้านมากขึ้นสำหรับผู้ใช้ขั้นสูง คุณสามารถปิดการใช้งานการล็อกกลับบ้านเมื่อเริ่มต้นการกำหนดค่าที่แกนย้ายครั้งแรกในช่วงวงจรกลับบ้านและในสิ่งที่สั่งซื้อและอื่น ๆ
$ 23 - Homing หน้ากากผบคว่ำ, int: ไบนารี
โดยค่าเริ่มต้น Grbl ถือว่าวิทช์ จำกัด กลับบ้านของคุณอยู่ในทิศทางที่เป็นบวกครั้งแรกย้ายแกน z บวกแล้ว XY แกนบวกก่อนที่จะพยายามที่จะค้นหาแม่นยำเครื่องศูนย์โดยจะกลับมาช้าไปรอบ ๆ สวิทช์ ถ้าเครื่องของคุณมีสวิทช์ จำกัด ในทิศทางเชิงลบหน้ากากทิศทางกลับบ้านสามารถกลับทิศทางแกน มันทำงานได้เช่นเดียวกับขั้นตอนที่สลับพอร์ตและพอร์ตทิศทางหน้ากากคว่ำซึ่งทั้งหมดที่คุณต้องทำส่งค่าในตารางเพื่อแสดงให้เห็นว่าสิ่งที่แกนคุณต้องการที่จะกลับและค้นหาในทิศทางตรงกันข้าม
$ 24 - ฟีด Homing, มิลลิเมตร / นาที
ค้นหารอบแรกกลับบ้านสำหรับวงเงินที่สวิทช์ในอัตราที่แสวงหาที่สูงขึ้นและหลังจากที่พบว่าพวกเขาจะย้ายในอัตราที่ช้าลงฟีดเหลาลงในตำแหน่งที่แม่นยำของเครื่องศูนย์ Homing อัตราการป้อนคืออัตราการป้อนช้าลง ตั้งค่านี้เป็นสิ่งที่คุ้มค่าในอัตราที่ให้เครื่องทำซ้ำและแม่นยำเป็นศูนย์ที่ตั้ง
$ 25 - Homing แสวงหามิลลิเมตร / นาที
Homing แสวงหาอัตราวงจรกลับบ้านอัตราการค้นหาหรืออัตราที่มันเป็นครั้งแรกพยายามที่จะหาสวิทช์ จำกัด ปรับตัวเข้ากับสิ่งที่อัตราการได้รับการวิทช์ จำกัด ในเวลาพอที่สั้นโดยไม่ต้องบุกเข้ามาในสวิทช์ขีด จำกัด ของคุณถ้าพวกเขามาในเร็วเกินไป
$ 26 - Homing debounce, MS
เมื่อใดก็ตามที่สวิทช์เรียกบางส่วนของพวกเขาสามารถมีไฟฟ้า / เสียงกลที่จริง 'ตีกลับ' สัญญาณสูงและต่ำสำหรับไม่กี่มิลลิวินาทีก่อนที่จะปักหลักอยู่. เพื่อแก้ปัญหานี้คุณจะต้อง debounce สัญญาณทั้งโดยฮาร์ดแวร์กับชนิดของบางอย่าง สัญญาณปรับอากาศหรือซอฟต์แวร์ที่มีความล่าช้าสั้น ๆ เพื่อให้สัญญาณเสร็จสิ้นการใหญ่ Grbl ดำเนินการหน่วงเวลาที่สั้นเพียงกลับบ้านเมื่อการตั้งศูนย์เครื่องจักร ตั้งค่าความล่าช้านี้เพื่อสิ่งที่สวิทช์ของคุณต้องการที่จะได้รับกลับบ้านทำซ้ำ ในกรณีส่วนใหญ่ 5-25 มิลลิวินาทีเป็นเรื่องปกติ
$ 27 - Homing ดึงออกมม
ในการเล่นที่ดีกับข้อ จำกัด อย่างหนักมีที่กลับบ้านสามารถแบ่งปันวิทช์ จำกัด เดียวกันวงจรกลับบ้านจะย้ายออกทั้งหมดของสวิทช์ จำกัด โดยเดินทางดึงออกนี้หลังจากที่เสร็จสิ้น ในคำอื่น ๆ จะช่วยป้องกันวิกฤติอุบัติเหตุวงเงินยากหลังจากรอบกลับบ้าน
$ 100 $ 101 และ $ 102 - [X, Y, Z] ขั้นตอน / เดือน
Grbl ต้องการที่จะรู้ว่าไกลแต่ละขั้นตอนจะใช้เครื่องมือในความเป็นจริง ในการคำนวณขั้นตอน / mm สำหรับแกนของเครื่องของคุณคุณจำเป็นต้องรู้:
มมเดินทางต่อการปฏิวัติของมอเตอร์ของคุณ นี้ขึ้นอยู่กับเกียร์ไดรฟ์เข็มขัดของคุณหรือนำสกรู
ขั้นตอนเต็มต่อการปฏิวัติของ steppers ของคุณ (ปกติ 200 บาท)
microsteps ต่อขั้นตอนของการควบคุมของคุณ (ปกติ 1, 2, 4, 8 หรือ 16) เคล็ดลับ: การใช้ค่าไมโครสูง (เช่น 16) สามารถลดแรงบิดมอเตอร์ของคุณเพื่อใช้ต่ำสุดที่จะช่วยให้คุณมีความละเอียดแกนที่ต้องการและคุณสมบัติการทำงานที่สะดวกสบาย
ขั้นตอน / เดือนจากนั้นจะสามารถคำนวณเช่นนี้ steps_per_mm = (steps_per_revolution * microsteps) / mm_per_rev
คำนวณค่าสำหรับทุกแกนนี้และเขียนการตั้งค่าเหล่านี้เพื่อ Grbl
$ 110, $ 111 และ $ 112 - [X, Y, Z] อัตราสูงสุดมิลลิเมตร / นาที
ชุดนี้อัตราสูงสุดแกนแต่ละคนสามารถย้าย เมื่อใดก็ตามที่ Grbl แผนย้ายมันจะตรวจสอบหรือไม่ว่าการย้ายเป็นสาเหตุที่ทำให้คนใดคนหนึ่งของแกนบุคคลเหล่านี้จะเกินอัตราสูงสุดของพวกเขา ถ้าเป็นเช่นนั้นก็จะชะลอตัวลงการเคลื่อนไหวเพื่อให้แน่ใจว่าไม่มีแกนเกินขีด จำกัด อัตราสูงสุดของพวกเขา ซึ่งหมายความว่าแต่ละแกนมีความเร็วเป็นอิสระของตัวเองซึ่งจะเป็นประโยชน์อย่างมากสำหรับการ จำกัด ช้าลงโดยทั่วไปแกน Z
วิธีที่ง่ายที่สุดในการกำหนดค่าเหล่านี้คือการทดสอบแต่ละแกนหนึ่งครั้งโดยเพิ่มขึ้นอย่างช้า ๆ การตั้งค่าอัตราสูงสุดและย้ายมัน ตัวอย่างเช่นในการทดสอบแกน X, ส่งบางสิ่งบางอย่างเช่น Grbl G0 X50 กับระยะทางในการเดินทางที่เพียงพอเพื่อให้แกนเร่งความเร็วสูงสุดของมัน คุณจะได้รู้ว่าคุณได้ตีเกณฑ์อัตราสูงสุดเมื่อ steppers ของคุณแผงลอย มันจะทำให้บิตของเสียง แต่ไม่ควรทำร้ายมอเตอร์ของคุณ ใส่การตั้งค่า 10-20% ต่ำกว่าค่านี้เพื่อให้คุณสามารถบัญชีสำหรับสวมใส่แรงเสียดทานและมวลของชิ้นงานของคุณ / เครื่องมือ จากนั้นทำซ้ำสำหรับแกนอื่น ๆ ของคุณ
หมายเหตุ: การตั้งค่าอัตราสูงสุดยังชุด G0 แสวงหาอัตรา
$ 120, $ 121, $ 122 - [X, Y, Z] เร่งมิลลิเมตร / วินาที ^ 2
ชุดนี้แกนพารามิเตอร์เร่งมิลลิเมตร / วินาที / วินาที Simplistically, ค่าที่ต่ำกว่าทำให้ Grbl ความสะดวกในการเคลื่อนไหวช้าลงในขณะที่อัตราผลตอบแทนที่สูงกว่ามูลค่าการเคลื่อนไหวที่เข้มงวดมากขึ้นและถึง feedrates ต้องการเร็วมาก เหมือนการตั้งค่าอัตราสูงสุดแต่ละแกนมีค่าอัตราเร่งของตัวเองและมีความเป็นอิสระของแต่ละอื่น ๆ ซึ่งหมายความว่าการเคลื่อนไหวหลายแกนจะเร่งให้เร็วที่สุดเท่าต่ำสุดแกนการบริจาคสามารถ
อีกครั้งเช่นเดียวกับการตั้งค่าอัตราสูงสุดวิธีที่ง่ายที่สุดในการกำหนดค่าสำหรับการตั้งค่านี้คือการทดสอบรายบุคคลแกนมีค่าเพิ่มขึ้นอย่างช้า ๆ จนแต่ละแผงลอยมอเตอร์ แล้วจบตั้งค่าการเร่งของคุณมีมูลค่า 10-20% ต่ำกว่าค่าสูงสุดนี้แน่นอน นี้ควรบัญชีสำหรับสวมใส่แรงเสียดทานและแรงเฉื่อยมวล เราขอแนะนำให้คุณทดสอบแห้งบางโปรแกรมกรัมรหัสด้วยการตั้งค่าใหม่ของคุณก่อนที่จะกระทำกับพวกเขา บางครั้งการโหลดบนเครื่องของคุณจะแตกต่างกันเมื่อย้ายในทั้งหมดเข้าด้วยกัน
$ 130, $ 131, $ 132 - [X, Y, Z] เดินทางแม็กซ์มม
ชุดนี้เดินทางสูงสุดตั้งแต่ต้นจนจบสำหรับแต่ละแกนในมม นี้จะเป็นประโยชน์เฉพาะถ้าคุณมีข้อ จำกัด นุ่ม (และกลับบ้าน) ทำงานเช่นนี้จะถูกใช้โดยคุณลักษณะขีด จำกัด นุ่ม Grbl เพื่อตรวจสอบถ้าคุณได้เกินขีด จำกัด ของเครื่องของคุณมีคำสั่งการเคลื่อนไหว
Grbl อื่น ๆ ของ '$' คำสั่ง
คำสั่ง $ อื่น ๆ ให้การควบคุมเพิ่มเติมสำหรับผู้ใช้เช่นความคิดเห็นเกี่ยวกับการพิมพ์ในปัจจุบัน parser กรัมรหัสของรัฐกิริยาหรือวิ่งรอบกลับบ้าน ในส่วนนี้จะอธิบายถึงสิ่งที่คำสั่งเหล่านี้และวิธีการที่จะใช้พวกเขา
$ # - ดูพารามิเตอร์ GCode
พารามิเตอร์ G-รหัสเก็บพิกัดชดเชยค่าสำหรับ G54-G59 พิกัดทำงาน G28 / G30 ตำแหน่งที่กำหนดไว้ล่วงหน้า, G92 พิกัดชดเชยชดเชยความยาวและละเอียด (ไม่เป็นทางการ แต่เราได้เพิ่มที่นี่ต่อไป) ส่วนใหญ่ของพารามิเตอร์เหล่านี้จะถูกเขียนโดยตรงกับ EEPROM ได้ตลอดเวลาที่พวกเขามีการเปลี่ยนแปลงและมีความถาวร หมายความว่าพวกเขาจะยังคงเหมือนเดิมโดยไม่คำนึงถึงอำนาจลงจนกว่าพวกเขาจะมีการเปลี่ยนแปลงอย่างชัดเจน พารามิเตอร์ไม่ถาวรซึ่งจะไม่ได้รับการเก็บรักษาไว้เมื่อการตั้งค่าหรืออำนาจกรณืมี G92, เครื่องมือ G43.1 ระยะเวลาในการชดเชยและข้อมูลที่ละเอียด G38.2
พิกัดทำงาน G54-G59 สามารถเปลี่ยนผ่าน G10 L2 Px หรือ G10 L20 Px คำสั่งที่กำหนดโดยมาตรฐาน NIST GCode และ EMC2 (linuxcnc.org) มาตรฐาน G28 / G30 ตำแหน่งที่กำหนดไว้ล่วงหน้าสามารถเปลี่ยนแปลงได้ผ่าน G28.1 และคำสั่ง G30.1 ตามลำดับ
เมื่อ $ # เรียกว่า Grbl จะตอบสนองกับการชดเชยที่เก็บไว้จากพิกัดเครื่องสำหรับแต่ละระบบดังต่อไปนี้ TLO หมายถึงระยะเวลาในการชดเชยเครื่องมือและ PRB หมายถึงพิกัดของวงจรละเอียดที่ผ่านมา
[G54: 4.000,0.000,0.000]
[G55: 4.000,6.000,7.000]
[G56: 0.000,0.000,0.000]
[G57: 0.000,0.000,0.000]
[G58: 0.000,0.000,0.000]
[G59: 0.000,0.000,0.000]
[G28: 1.000,2.000,0.000]
[G30: 4.000,6.000,0.000]
[G92: 0.000,0.000,0.000]
[TLO: 0.000,0.000,0.000]
[PRB: 0.000,0.000,0.000]
$ G - ดูรัฐ parser GCode
นี้จะพิมพ์คำสั่งทั้งหมดของโหมด GCode ใช้งานในการแยกวิเคราะห์กรัมรหัส Grbl ของ เมื่อส่งคำสั่งนี้เพื่อ Grbl ก็จะตอบกับสิ่งที่ต้องการ:
[G0 G54 G17 G21 G90 G94 M0 M5 M9 T0 S0.0 F500.0]
เหล่านี้ใช้งานโหมดกำหนดวิธีการบล็อกกรัมรหัสต่อไปหรือคำสั่งจะถูกตีความโดยแยกวิเคราะห์กรัมรหัส Grbl ของ สำหรับผู้ที่ใหม่กับ G-รหัสและเครื่องจักรกล CNC, โหมดตั้งค่าตัวแยกวิเคราะห์เป็นรัฐโดยเฉพาะเพื่อให้คุณไม่มีอย่างต่อเนื่องบอก parser วิธีที่จะแยกมัน โหมดเหล่านี้จะถูกจัดเป็นชุดที่เรียกว่า "กลุ่มคำกริยา" ที่ไม่สามารถใช้งานได้อย่างมีเหตุผลในเวลาเดียวกัน ยกตัวอย่างเช่นหน่วยกลุ่มคำกริยาชุดว่าโปรแกรมกรัมรหัสของคุณจะถูกตีความในนิ้วหรือมิลลิเมตร
รายชื่อของกลุ่มคำกริยาการสนับสนุนจาก Grbl, แสดงอยู่ด้านล่าง แต่สมบูรณ์มากขึ้นและคำอธิบายรายละเอียดสามารถดูได้ที่เว็บไซต์ของ LinuxCNC คำสั่งกรัมโค้ดตัวหนาแสดงถึงโหมดเริ่มต้นเมื่อเปิดเครื่องขึ้น Grbl หรือรีเซ็ต
กลุ่มคำกริยาหมายสมาชิก Words
โหมดการเคลื่อนไหว G0, G1, G2, G3, G38.2, G80
ระบบพิกัดเลือก G54, G55, G56, G57, G58, G59
เครื่องบินเลือก G17, G18, G19
โหมดระยะทาง G90, G91
ฟีดโหมดอัตรา G93, G94
โหมดหน่วย G20, G21
ความยาวเครื่องมือ Offset G43.1, G49
โหมดโปรแกรมของ M0 M1, M2, M30
แกนรัฐ M3, M4, M5
น้ำหล่อเย็นรัฐ M7, M8, M9
นอกจากนี้ยังมีโหมดการแยกวิเคราะห์กรัมโค้ด Grbl จะรายงานจำนวนเครื่องมือที่ใช้งาน T ความเร็วแกน S และ F อัตราการป้อนซึ่งเริ่มต้นทั้งหมดเป็น 0 เมื่อตั้งค่า สำหรับผู้ที่อยากรู้อยากเห็นเหล่านี้ไม่ได้ค่อนข้างพอดีกับกลุ่มคำกริยาที่ดี แต่เป็นเพียงที่สำคัญสำหรับการกำหนดรัฐ parser
$ ฉัน - ดูการสร้างข้อมูล
นี้จะพิมพ์ข้อเสนอแนะให้กับผู้ใช้รุ่น Grbl และรหัสแหล่งสร้างวันที่ เลือก $ ฉันยังสามารถเก็บสตริงสั้นเพื่อช่วยระบุที่เครื่อง CNC คุณกำลังสื่อสารกับถ้าคุณมีมากกว่าเครื่องใช้ Grbl ในการตั้งสายนี้ส่ง Grbl $ I = xxx ที่ xxx เป็นสตริงปรับแต่งของคุณที่น้อยกว่า 80 ตัวอักษร ครั้งต่อไปที่คุณทำการสอบถาม Grbl กับ $ ฉันจะดูสร้างข้อมูล, Grbl จะพิมพ์สตริงนี้หลังจากที่รุ่นและวันที่สร้าง
$ N - ดูการเริ่มต้นบล็อก
$ Nx บล็อกเริ่มต้นที่ Grbl ทำงานทุกครั้งที่คุณมีอำนาจในการ Grbl หรือรีเซ็ต Grbl ทุก ในคำอื่น ๆ บล็อกเริ่มต้นเป็นสายของ g-รหัสที่คุณสามารถมี Grbl อย่างน่าอัศจรรย์รถยนต์วิ่งไปตั้ง G-รหัสเริ่มต้นกิริยาหรืออะไรก็ได้ที่คุณต้องการ Grbl ที่จะทำทุกครั้งที่คุณเริ่มต้นขึ้นเครื่องของคุณ Grbl สามารถเก็บสองช่วงตึกของ g-รหัสเป็นระบบเริ่มต้น
ดังนั้นเมื่อเชื่อมต่อกับ Grbl พิมพ์ $ n และจากนั้นป้อน Grbl ควรจะตอบสนองกับสิ่งที่สั้น ๆ เช่น:
$ N0 =
$ N1 =
ok
ไม่มากที่จะไป แต่ตอนนี้ก็หมายความว่าไม่มีบล็อกกรัมรหัสที่เก็บไว้ในบรรทัด $ N0 สำหรับ Grbl เพื่อให้ทำงานเมื่อเริ่มต้น $ N1 เป็นบรรทัดถัดไปที่จะทำงาน
$ Nx = สาย - บล็อกเริ่มต้นบันทึก
สิ่งสำคัญ: โปรดใช้ความระมัดระวังมากเมื่อการจัดเก็บการเคลื่อนไหวใด ๆ (G0 / 1, G2 / 3, G28 / 30) คำสั่งในการเริ่มต้นบล็อก คำสั่งการเคลื่อนไหวเหล่านี้จะทำงานทุกครั้งที่คุณตั้งค่าหรืออำนาจขึ้น Grbl ดังนั้นหากคุณมีสถานการณ์ฉุกเฉินและมีการส่งแบบครบวงจรและการตั้งค่า, ย้ายบล็อกเริ่มต้นสามารถและมีแนวโน้มที่จะทำให้สิ่งที่เลวร้ายได้อย่างรวดเร็ว ยังไม่ได้วางคำสั่งใด ๆ ที่บันทึกข้อมูลไปยัง EEPROM เช่น G10 / G28.1 / G30.1 ซึ่งจะทำให้เกิด Grbl อย่างต่อเนื่องอีกครั้งเขียนข้อมูลนี้เมื่อเริ่มต้นทุกคนและตั้งค่าซึ่งในที่สุดจะสวมใส่ออก EEPROM ของ Arduino ของคุณ
การใช้งานทั่วไปสำหรับการเริ่มต้นบล็อกเป็นเพียงการตั้งค่าที่คุณต้องการรัฐกิริยาเช่น G20 โหมดนิ้วเสมอเริ่มต้นการทำงานที่แตกต่างระบบพิกัดหรือเพื่อให้วิธีการที่ให้ผู้ใช้สามารถเรียกใช้บางคุณลักษณะเฉพาะผู้เขียนที่พวกเขาต้องการสำหรับ โครงการบ้าของพวกเขา
การตั้งค่าเริ่มต้นบล็อกพิมพ์ $ N0 = ตามด้วยบล็อกกรัมรหัสที่ถูกต้องและป้อน Grbl จะทำงานบล็อกเพื่อตรวจสอบว่ามันถูกต้องแล้วตอบกลับด้วยตกลงหรือข้อผิดพลาดที่จะบอกคุณถ้ามันประสบความสำเร็จหรือสิ่งที่ผิดพลาด หากมีข้อผิดพลาด Grbl จะไม่บันทึกมัน
ตัวอย่างเช่นบอกว่าคุณต้องการที่จะใช้ในการเริ่มต้นครั้งแรกของคุณบล็อก $ N0 เพื่อตั้งโหมด parser กรัมรหัสของคุณเช่นการทำงานประสานงาน G54, G20 โหมดนิ้ว G17 XY-เครื่องบิน คุณจะพิมพ์ $ N0 = G20 G54 G17 กับเข้าและคุณจะเห็นการตอบสนอง 'ตกลง' จากนั้นคุณสามารถตรวจสอบหากมีการจัดเก็บไว้โดยการพิมพ์ $ n และตอนนี้คุณจะเห็นการตอบสนองเช่น $ N0 = G20G54G17
เมื่อคุณมีบล็อกเริ่มต้นที่เก็บไว้ใน EEPROM Grbl ของทุกครั้งที่คุณเริ่มต้นหรือรีเซ็ตคุณจะเห็นบล็อกของคุณเริ่มต้นพิมพ์กลับมาให้คุณและตอบสนองจาก Grbl เพื่อแสดงให้เห็นว่ามันวิ่ง ok ดังนั้นสำหรับตัวอย่างก่อนหน้านี้คุณจะเห็น:
Grbl 0.9g ['$' เพื่อขอความช่วยเหลือ]
G20G54G17ok
หากคุณมีการเริ่มต้นหลายกรัมรหัสบล็อกที่พวกเขาจะพิมพ์กลับมาให้คุณในการสั่งซื้อเมื่อเริ่มต้นทุก และถ้าคุณต้องการที่จะล้างหนึ่งในบล็อกเริ่มต้นพิมพ์ $ N0 = โดยไม่ต้องอะไรต่อไปนี้เครื่องหมายเท่ากับ
นอกจากนี้ถ้าคุณได้กลับบ้านที่เปิดใช้งานบล็อกเริ่มต้นจะดำเนินการทันทีหลังจากที่วงจรกลับบ้านไม่ได้เริ่มต้น
$ C - ตรวจสอบโหมด GCode
นี้สลับตัวแยกวิเคราะห์ GCode Grbl ที่จะใช้บล็อกทั้งหมดที่เข้ามาดำเนินการให้สมบูรณ์ตามที่คุณต้องการในการดำเนินงานตามปกติ แต่จะไม่ย้ายใด ๆ ของแกนละเว้นสถิตอยู่และอำนาจปิดแกนและน้ำหล่อเย็น นี้มีวัตถุประสงค์เป็นวิธีที่จะให้ผู้ใช้วิธีการตรวจสอบว่าโปรแกรมใหม่ของพวกเขากรัมรหัสค่าโดยสารกับตัวแยกวิเคราะห์ของ Grbl และตรวจสอบข้อผิดพลาดใด ๆ (และการตรวจสอบการละเมิดขีด จำกัด นุ่มถ้าเปิดใช้งาน)
เมื่อสลับออก Grbl จะดำเนินนุ่มตั้งค่าอัตโนมัติ (^ X) นี้สำหรับสองวัตถุประสงค์ มันช่วยลดความยุ่งยากในการจัดการรหัสบิต แต่ก็ยังป้องกันผู้ใช้จากการเริ่มต้นงานเมื่อโหมด G-รหัสของพวกเขาไม่ได้สิ่งที่พวกเขาคิดว่าพวกเขา การตั้งค่าระบบมักจะช่วยให้ผู้ใช้สดเริ่มต้นที่สอดคล้องกัน
$ X - ล็อคปลุกฆ่า
โหมดการเตือน Grbl เป็นรัฐเมื่อสิ่งที่ได้ไปผิดอย่างยิ่งเช่นวงเงินยากหรือยกเลิกในระหว่างรอบหรือถ้า Grbl ไม่ทราบตำแหน่ง โดยค่าเริ่มต้นถ้าคุณได้กลับบ้านเปิดใช้งานและพลังงานขึ้น Arduino, Grbl เข้าสู่สถานะการเตือนภัยเพราะไม่ทราบตำแหน่ง โหมดการเตือนจะล็อคทุกคำสั่งกรัมรหัสจนถึง '$ H' วงจรกลับบ้านได้รับการดำเนินการ หรือถ้าผู้ใช้ต้องการที่จะแทนที่ล็อคสัญญาณเตือนภัยที่จะย้ายแกนของพวกเขาออกสวิทช์ขีด จำกัด ของพวกเขาตัวอย่างเช่น '$ X' ฆ่าล็อคปลุกจะแทนที่ล็อคและอนุญาตให้มีฟังก์ชั่น G-รหัสไปทำงานอีกครั้ง
แต่อย่างระมัดระวัง !! นี้ควรจะใช้เฉพาะในสถานการณ์ฉุกเฉิน ตำแหน่งที่ได้รับการสูญเสียโอกาสและ Grbl อาจจะไม่เป็นที่คุณคิดว่ามันเป็น ดังนั้นจึงแนะนำให้ใช้โหมดที่เพิ่มขึ้น G91 เพื่อให้ย้ายสั้น จากนั้นดำเนินการรอบกลับบ้านหรือรีเซ็ตทันทีหลังจากนั้น
$ H - วงจรกลับบ้านเรียก
คำสั่งนี้เป็นวิธีเดียวที่จะดำเนินการรอบกลับบ้านใน Grbl บางคนควบคุมการเคลื่อนไหวอื่น ๆ ที่กำหนดคำสั่ง G-รหัสพิเศษเพื่อให้ทำงานได้รอบกลับบ้าน แต่นี้ไม่ถูกต้องตามมาตรฐานกรัมรหัส Homing เป็นคำสั่งที่แยกการจัดการโดยตัวควบคุม
การเชื่อมต่อ Grbl
วิกิพีเดียนี้มีวัตถุประสงค์เพื่อให้คำแนะนำต่าง ๆ เกี่ยวกับวิธีการเชื่อมต่อกับ grbl ในรูปแบบต่างๆ กรุณาอย่าลังเลที่จะมีส่วนร่วมมากขึ้นถึงวันที่หรือวิธีการทางเลือก
Grbl ของ Pins
แผนภาพ Pin สำหรับ v0.8 และ v0.9 Grbl กับรูปแบบดั้งเดิม (หมายเหตุ: ขาสอบสวน A5 จะใช้ได้เฉพาะใน Grbl v0.9.)
Grbl Pin แผนภาพ
สำหรับ Grbl v0.9 กับ PWM แกนตัวแปรเปิดใช้งาน: (หมายเหตุ:. Z-ขีด จำกัด และแกนช่วยให้ขาเปลี่ยนเพราะเรามีการเข้าถึงฮาร์ดแวร์ PWM ใน D11 สำหรับแกนตัวแปรออก PWM ในการทำงาน) เรายังคงปรับปรุงพินนี้ การกำหนดค่าในขณะนี้โดยการชั่งน้ำหนักทางเลือกในอนาคต เราต้องการที่จะเปลี่ยนพินเพียงครั้งเดียว ติดตามความคืบหน้า!
Grbl Pin แผนภาพกับ PWM Spindle ตัวแปร
ครั้งแรกในการเชื่อมต่อมอเตอร์ stepper ของคุณเพื่อ Grbl คุณจะต้องไดรเวอร์มอเตอร์บางอย่างเพื่ออำนาจ steppers และเชื่อมต่อปัจจัยการผลิตที่ขับรถของคุณไปยังหมุดควบคุม Arduino มีจำนวนของไดรเวอร์ที่สามารถที่จะทำเช่นนี้อย่างเต็มที่ที่สร้างไว้ล่วงหน้าบางส่วนที่สร้างไว้ล่วงหน้าหรือ DIY สมบูรณ์ มีตัวอย่างบางส่วนมาลงที่หน้าเป็น ไดรเวอร์ stepper จะต้องแบ่งปัน stepper ช่วยให้ขา (D8) ที่จะช่วยให้ขาของตนในขณะที่ทิศทางและขั้นตอนขาชีพจร (D2-D7) จะต้องมีการเชื่อมต่อกับขาของพวกเขาเกี่ยวกับคนขับรถ เพียงให้แน่ใจว่าไดรเวอร์ทั้งหมดของคุณและ Arduino แบ่งปันพื้นดินทั่วไป (ดาวดินที่มีอำนาจขับรถของคุณมอเตอร์) นี้เป็นเรื่องเกี่ยวกับสิ่งที่คุณจะต้องเริ่มต้น
หลังจากนั้นเมื่อคุณตัดสินใจว่าคุณพร้อมหรือต้องการที่จะช่วยให้กลับบ้านและ / หรือข้อ จำกัด เรื่องยากที่คุณจะต้องเชื่อมต่อสวิทช์วงเงินปกติเปิดให้แต่ละพิน จำกัด (D9-D11) Homing และข้อ จำกัด เรื่องยากที่ใช้สวิทช์เดียวกัน หมุดขีด จำกัด เหล่านี้จะถูกจัดขึ้นแล้วสูงที่มีความต้านทานดึงขึ้นภายในดังนั้นสิ่งที่คุณต้องทำคือลวดพวกเขากับพื้น ดังนั้นเมื่อคุณปิดสวิทช์, สวิทช์จะดึงขาขีด จำกัด กับพื้น หากคุณต้องการที่จะมีสวิทช์วงเงินยากทั้งสองด้านของการเดินทางของแกนเพียงลวดสองวิทช์ จำกัด ในขนานไปกับขีด จำกัด ของแกนขาและพื้นดิน ให้แน่ใจว่าคุณมีสวิทช์ที่ติดตั้งก่อนที่จะพยายามที่จะดำเนินการรอบกลับบ้านและให้แน่ใจว่าคุณใช้วิธีการเดินสายไฟที่ดีในการลดเสียงรบกวนไฟฟ้าภายนอกบนขาอินพุท
ใน v0.8 Grbl และต่อมามีขาลึกหนาบางของการเริ่มต้นรอบการถืออาหารและการตั้งค่าคำสั่ง runtime เพื่อให้คุณสามารถมีปุ่มควบคุมทางกายภาพเครื่องของคุณ เช่นเดียวกับขาขีด จำกัด , ขาเหล่านี้จะจัดขึ้นที่สูงที่มีความต้านทานดึงขึ้นภายในดังนั้นสิ่งที่คุณต้องทำคือการเชื่อมต่อสวิทช์เปิดตามปกติในแต่ละขาและพื้นดิน อีกครั้งให้แน่ใจว่าคุณใช้วิธีการเดินสายไฟที่ดีในการลดเสียงรบกวนไฟฟ้าภายนอกบนขาอินพุท
หากคุณมีความปรารถนาหรือต้องการสำหรับแกนหรือการควบคุมน้ำหล่อเย็น Grbl จะสลับขาออกเหล่านี้ (D12, D13, A3) สูงหรือต่ำขึ้นอยู่กับคำสั่ง G-รหัสที่คุณส่งไป Grbl ด้วย v0.9 และ PWM แกนตัวแปรเปิดใช้งานขาออกจะ D11 ช่วงของแรงดันไฟฟ้าจาก 0V ถึง 5V ขึ้นอยู่ความเร็วแกนคำสั่งกรัมรหัส 0V บ่งชี้แกนออกในกรณีนี้ ตั้งแต่หมุดเหล่านี้เป็นแอพลิเคชันทั้งหมดขึ้นอยู่ในวิธีการที่พวกเขาจะใช้เราจะปล่อยให้คุณในการควบคุมและการใช้งานเหล่านี้สำหรับเครื่องของคุณ นอกจากนี้คุณยังสามารถตัดแกนและไฟล์ที่มาควบคุมน้ำหล่อเย็นเพื่อให้ง่ายต่อการปรับเปลี่ยนวิธีการทำงานและจากนั้นรวบรวมและอัปโหลด Grbl แก้ไขของคุณผ่าน Arduino IDE
วิธีที่หนึ่ง: EasyDriver V4.4
แก้ไขล่าสุด: 2012/01/29 โดย Atrixium
นี่คืออินเตอร์เฟซที่ตรงไปตรงมาเป็นธรรมสำหรับเครื่อง 3 แกน
'ขั้นตอนสัญญาณพื้นดิน' สำหรับแต่ละ EasyDriver มีการเชื่อมต่อเข้าด้วยกันและเชื่อมโยงกับขา GND ของ Arduino อย่าสับสนกับพื้นดินมอเตอร์หรือการเชื่อมต่อพื้นดินอื่น ๆ ใน EasyDriver!
'ขั้นตอน' พินสำหรับ X, Y และแกน Z ที่แนบมากับขาดิจิตอล 2, 3 และ 4 ตามลำดับ
'Dir' พินสำหรับ X, Y และแกน Z ที่แนบมากับขาดิจิตอล 5, 6 และ 7 ตามลำดับ
ทรัพยากร
GRBL EasyDriver
บิ๊กรุ่น
ไฟล์ Fritzing
EasyDriver เว็บไซต์
วิธีที่สอง: grblshield
ปรับปรุงล่าสุด: 2012-02-21 โดย aldenhart
grblshield - ปลั๊กเพื่อ Arduino 3 แกนของการควบคุมมอเตอร์ - ถึง 2.5 แอมป์ต่อคดเคี้ยว ไดร์เวอร์ได้รับการป้องกันความร้อนกับกระแสเกินและดังนั้นจึงทนมากที่จะเหนื่อยหน่ายหรือความล้มเหลว grblshield v2
วิธีที่สาม: โล่ stepper
แก้ไขล่าสุด: 2012/02/03 โดย edwardrford
buildlog.net Arduino โล่ stepper - pololu บริการคนขับโล่ Arduino 3 แกนของการควบคุมมอเตอร์ ไดรเวอร์ถอดเปลี่ยนได้ในกรณีที่เกิดความเสียหาย คู่มือผู้ใช้โล่ stepper
เชื่อมต่อกับ Grbl
-ลิงค์ที่ใช้บ่อย
เริ่มต้นขึ้นข้อความ
Grbl $ ช่วยเหลือข้อความ
Grbl ความหมายการตอบสนอง
ข้อความ Grbl อื่น ๆ
อินเตอร์เฟซการเขียนสำหรับ Grbl
Streaming โปรแกรม G-Code เพื่อ Grbl
การโต้ตอบกับระบบ Grbl ของ
Grbl การเชื่อมต่อ
อินเตอร์เฟซสำหรับ Grbl ค่อนข้างง่ายและตรงไปตรงมา เราดำเนินการตามขั้นตอนเพื่อพยายามที่จะทำให้มันเป็นเรื่องง่ายที่สามารถสำหรับผู้ใช้ใหม่ในการเริ่มต้นและสำหรับนักพัฒนา GUI เพื่อเขียนอินเตอร์เฟซที่กำหนดเองของตัวเองเพื่อ Grbl
ทุกสิ่งที่สื่อสารผ่านอินเตอร์เฟซอนุกรมบนพอร์ต USB Arduino คุณเพียงแค่ต้องเชื่อมต่อ Arduino ของคุณไปยังคอมพิวเตอร์ของคุณด้วยสาย USB ใช้มาตรฐานใด ๆ โปรแกรม Terminal อนุกรมเพื่อเชื่อมต่อกับ Grbl เช่นจอภาพอนุกรม Arduino IDE, Coolterm ฉาบ ฯลฯ หรือใช้อย่างใดอย่างหนึ่ง GUIs Grbl ที่ดีมากออกมีในป่าอินเทอร์เน็ต
เพียงเกี่ยวกับการมีปฏิสัมพันธ์กับผู้ใช้ Grbl ทุกคนจะดำเนินการโดยการส่งสตริงของตัวอักษรตามด้วยป้อน Grbl แล้วจะดำเนินการสตริงดำเนินการได้ตามแล้วตอบกลับมาพร้อมกับการตอบสนองจะบอกคุณว่ามันไป สตริงเหล่านี้รวมถึงการส่ง Grbl บล็อก G-รหัสที่จะดำเนินการเพื่อกำหนดค่า Grbl ของดูวิธี Grbl จะทำ ฯลฯ ในบางครั้ง Grbl อาจไม่ตอบสนองทันที เรื่องนี้เกิดขึ้นเฉพาะเมื่อ Grbl เป็นสิ่งที่ว่างทำอย่างอื่นหรือรอสำหรับห้องพักบางส่วนเพื่อล้างในบัฟเฟอร์วางแผนของมองไปข้างหน้าเพื่อที่จะสามารถประมวลผลเส้นชัยก่อนส่ง
แต่หนึ่งข้อยกเว้นนี้เป็นคำสั่งของ Grbl เรียลไทม์ เหล่านี้จะถูกเลือกโดยตรงจากกระแสอนุกรมที่เข้ามาจะดำเนินการทันทีและถ่ายทอดสด ดูวิกิพีเดียการกำหนดค่า Grbl ของเราที่จะเห็นสิ่งที่พวกเขาและวิธีที่พวกเขาทำงาน
เริ่มต้นขึ้นข้อความ
Grbl vX.Xx ['$' เพื่อขอความช่วยเหลือ]
เริ่มต้นขึ้นข้อความเสมอพิมพ์เมื่อเริ่มต้นหลังจากที่รีเซ็ตหรือสิ้นสุดโครงการ เมื่อใดก็ตามที่คุณเห็นข้อความนี้นี้ยังหมายความว่า Grbl ได้เสร็จสิ้นการเริ่มต้นใหม่ทุกระบบเพื่อให้ทุกอย่างเริ่มออกทุกครั้งที่เดียวกับที่คุณใช้ Grbl
vX.Xx ระบุจำนวนรุ่นใหญ่, ตามด้วยตัวอักษรรุ่นรอง หมายเลขรุ่นที่สำคัญแสดงให้เห็นการเปิดตัวโดยทั่วไปในขณะที่ตัวอักษรเพียงแค่แสดงให้เห็นการปรับปรุงคุณลักษณะหรือนอกเหนือจากตัวอักษรรุ่นรองก่อน
การแก้ไขการแก้ไขข้อผิดพลาดมีการติดตามโดยจำนวนข้อมูลสร้าง, พิมพ์เมื่อคำสั่ง $ ฉันถูกส่ง การแก้ไขเหล่านี้ไม่ได้ปรับปรุงหมายเลขรุ่นและจะได้รับตามวันที่แก้ไขในปีเดือนและวันเช่นดังนั้น 20140820
Grbl $ ช่วยเหลือข้อความ
ทุก Grbl สตริงได้รับจะถือว่าเป็นบล็อกกรัมรหัส / สายเพื่อให้การดำเนินการยกเว้นสำหรับบางระบบพิเศษคำสั่ง Grbl ใช้สำหรับการกำหนดค่าให้ข้อเสนอแนะให้กับผู้ใช้ในสิ่งที่และวิธีการของการทำหรือดำเนินงานบางอย่างเช่นการกลับบ้าน วงจร ต้องการดูรายการของคำสั่งระบบเหล่านี้พิมพ์ตาม $ โดยใส่และ Grbl จะตอบสนองกับ:
$$ (ดูการตั้งค่า Grbl)
$ # (ดูพารามิเตอร์ #)
$ G (มุมมองของรัฐแยกวิเคราะห์)
$ ฉัน (ดูข้อมูลการสร้าง)
$ N (มุมมองบล็อกเริ่มต้น)
$ x = ค่า (บันทึกการตั้งค่า Grbl)
$ Nx = สาย (ประหยัดเริ่มต้นบล็อก)
$ C (ตรวจสอบโหมด GCode)
$ X (ฆ่าล็อคปลุก)
$ H (ทำงานวงจรกลับบ้าน)
~ (เริ่มต้นรอบ)
! (ถือฟีด)
? (สถานะปัจจุบัน)
Ctrl-x (รีเซ็ต Grbl)
ตรวจสอบหน้าวิกิพีเดียการกำหนดค่า Grbl ของเราที่จะหาสิ่งที่ทุกคำสั่งเหล่านี้หมายถึงและวิธีการที่จะใช้พวกเขา
Grbl ความหมายการตอบสนอง
ทุกบล็อกกรัมรหัสส่งไปยัง Grbl และ Grbl คำสั่งระบบ (ไม่รวมคำสั่งแบบ real-time) จะตอบสนองกับว่ามันไป ในส่วนนี้จะอธิบายถึงการตอบสนอง Grbl และความหมายของพวกเขา
ok: ทั้งหมดเป็นสิ่งที่ดี! ทุกอย่างในบรรทัดสุดท้ายก็เป็นที่เข้าใจโดย Grbl และได้รับการประมวลผลและดำเนินการประสบความสำเร็จ
ข้อผิดพลาด: จดหมายคำสั่งที่คาดหวัง: G-รหัสประกอบด้วยกรัมรหัส "คำว่า" ซึ่งประกอบด้วยตัวอักษรตามด้วยค่าตัวเลข ข้อผิดพลาดนี้เกิดขึ้นเมื่อคำนำหน้าตัวอักษรของคำกรัมรหัสจะหายไปในบล็อกกรัมรหัส (สาย aka)
ข้อผิดพลาด: รูปแบบตัวเลขที่ไม่ดี: คำต่อท้ายค่าจำนวนกรัมรหัสคำที่ขาดหายไปในบล็อกกรัมรหัสหรือเมื่อการกำหนดค่าสาย = $ Nx หรือ $ x = การตั้งค่า Val Grbl และ x ไม่ได้ค่าตัวเลข
ข้อผิดพลาด: คำสั่งที่ไม่ถูกต้อง: การออกคำสั่งระบบ $ Grbl ไม่เป็นที่รู้จักหรือไม่ถูกต้อง
ข้อผิดพลาด: มูลค่า <0: ค่าของ $ x = Val Grbl การตั้งค่าอัตราการป้อน F, หมายเลขบรรทัดยังไม่มีคำ P, T จำนวนเครื่องมือหรือความเร็วแกน S เป็นเชิงลบ
ข้อผิดพลาด: การตั้งค่าปิดการใช้งาน: Homing ถูกปิดใช้งานเมื่อใช้คำสั่ง $ H
ข้อผิดพลาด: มูลค่า <3 USEC: ขั้นตอนที่มีความยาวเวลาชีพจรต้องไม่น้อยกว่า 3 microseconds (ด้วยเหตุผลทางเทคนิค)
ข้อผิดพลาด: EEPROM อ่านล้มเหลว การใช้ค่าเริ่มต้น: ถ้า Grbl ไม่สามารถอ่านข้อมูลที่มีอยู่ใน EEPROM ข้อผิดพลาดนี้จะถูกส่งกลับ Grbl ก็จะชัดเจนและเรียกคืนข้อมูลที่ได้รับผลกระทบกลับไปเริ่มต้น
ข้อผิดพลาด: ไม่ว่าง: คำสั่ง $ Grbl บางอย่างจะถูกบล็อกขึ้นอยู่สถานะปัจจุบัน Grbl หรือสิ่งที่ตนทำ โดยทั่วไป Grbl บล็อกคำสั่งที่เรียกจากหรือเขียนไปแบบ EEPROM ตั้งแต่ไมโครคอนโทรลเลอร์ AVR จะปิดทั้งหมดของการขัดจังหวะสำหรับรอบนาฬิกาไม่กี่เมื่อเกิดเหตุการณ์ใด ๆ มีการทำงานที่ไม่เป็นไปรอบ ๆ อื่น ๆ นอกเหนือจากการปิดกั้นมัน ซึ่งจะทำให้มั่นใจทั้งเครื่องกำเนิดไฟฟ้าแบบอนุกรมและขั้นตอนการขัดจังหวะกำลังทำงานได้อย่างราบรื่นตลอดการดำเนินงาน
ข้อผิดพลาด: การล็อคปลุก: Grbl เข้าสู่สถานะการเตือนภัยเมื่อ Grbl ไม่ทราบว่ามันคืออะไรและจะปิดกั้นทุกกรัมรหัสคำสั่งจากการถูกดำเนินการ ข้อผิดพลาดนี้เกิดขึ้นหากคำสั่งกรัมรหัสจะถูกส่งไปในขณะที่สถานะการเตือนภัย Grbl มีสองสถานการณ์การเตือนภัย: เมื่อกลับบ้านถูกเปิดใช้งาน Grbl โดยอัตโนมัติจะเข้าสู่สถานะการเตือนภัยเพื่อเตือนให้ผู้ใช้ที่บ้านก่อนที่จะทำอะไร เมื่อสิ่งที่มีการผิดพลาดอย่างยิ่งโดยปกติเมื่อ Grbl ไม่สามารถรับประกันการวางตำแหน่ง นี้มักจะเกิดขึ้นเมื่อมีอะไรบางอย่างที่ทำให้เกิด Grbl ที่จะบังคับให้หยุดทันทีในขณะที่เคลื่อนย้ายมาจากวงเงินยากที่จะถูกเรียกหรือใช้คำสั่งการตั้งค่าผิดจังหวะ
ข้อผิดพลาด: กลับบ้านไม่ได้เปิดใช้งาน: ขีด จำกัด ของซอฟท์ไม่สามารถเปิดใช้งานถ้ากลับบ้านไม่ได้เปิดใช้เพราะ Grbl มีความคิดที่มันเป็นเมื่อคุณเริ่มต้นเครื่องของคุณจนกว่าคุณจะดำเนินการรอบกลับบ้านไม่มี
ข้อผิดพลาด: ล้นบรรทัด: Grbl มีจะทำทุกอย่างที่มันไม่ภายใน 2KB ของแรม ไม่มากเลย ดังนั้นเราจึงมีการตัดสินใจบางอย่างเกี่ยวกับสิ่งที่เป็นสิ่งสำคัญ Grbl จำกัด จำนวนของตัวอักษรในแต่ละบรรทัดให้น้อยกว่า 80 ตัวอักษร (70 v0.8) ไม่รวมช่องว่างหรือความคิดเห็น มาตรฐานกรัมรหัสเอกสาร 256 ตัวอักษร แต่ Grbl ก็ไม่ได้มี RAM ที่จะสำรองไว้ แต่เราไม่คิดว่าจะมีปัญหาใด ๆ กับเรื่องนี้กับทุกคาดว่าคำสั่งกรัมรหัสส่งไปยัง Grbl ข้อผิดพลาดนี้มักจะเกิดขึ้นเมื่อผู้ใช้หรือ CAM สร้างโปรแกรมกรัมรหัสส่งค่าของตำแหน่งที่อยู่ในความแม่นยำสอง (เช่น -2.003928578394852) ซึ่งไม่เป็นจริงหรือเป็นไปได้ทางร่างกาย ผู้ใช้และ GUIs ต้องส่งค่าจุดลอย Grbl ในความแม่นยำเดียว (เช่น -2.003929) เพื่อหลีกเลี่ยงข้อผิดพลาดนี้
ข้อผิดพลาด: การละเมิดกลุ่ม Modal: parser กรัมรหัสตรวจพบสองคำสั่ง G-รหัสที่อยู่ในกลุ่มคำกริยาเดียวกันในบล็อก / เส้น กลุ่ม Modal เป็นชุดของคำสั่ง G-รหัสที่พิเศษร่วมกัน ตัวอย่างเช่นคุณไม่สามารถออกทั้งแก่ง G0 และโค้ง G2 ในบรรทัดเดียวกันเนื่องจากพวกเขาทั้งสองต้องใช้ค่าตำแหน่งเป้าหมาย XYZ ในบรรทัด LinuxCNC.org มีบางเอกสารที่ดีในกลุ่มคำกริยา
ข้อผิดพลาด: คำสั่งที่ไม่สนับสนุน: parser กรัมรหัสไม่รู้จักหรือสนับสนุนหนึ่งกรัมรหัสคำสั่งในบรรทัด ตรวจสอบโปรแกรม G-รหัสของคุณสำหรับคำสั่งที่ไม่สนับสนุนใด ๆ และลบพวกเขาหรือปรับปรุงพวกเขาเข้ากันได้กับ Grbl
ข้อผิดพลาด: อัตราการป้อน Undefined: ไม่มีอัตราการป้อนโปรแกรมและคำสั่งกรัมรหัสที่ต้องเป็นหนึ่งในบล็อก / เส้นเป็น G-รหัสเอกสารมาตรฐานอัตรา F ฟีดที่จะไม่ได้กำหนดตามการตั้งค่าหรือเมื่อเปลี่ยนจากโหมดเวลาผกผันไปที่โหมดหน่วย รุ่นเก่า Grbl มีการตั้งค่าอัตราการป้อนค่าเริ่มต้นซึ่งเป็นเรื่องผิดกฎหมายและถูกลบออกใน Grbl v0.9
ข้อผิดพลาดที่ไม่ถูกต้อง GCode ID: XX: เพื่อประหยัดพื้นที่แฟลชบาง Grbl v0.9 ติดตั้งบางอย่างที่ไม่ถูกต้องเป็นความลับหมายเลขกรัมรหัสเพื่อบ่งชี้ถึงข้อผิดพลาดของการเขียนโปรแกรมผิดปกติกรัมรหัส การจัดเก็บสายเต็มรูปแบบที่จะอธิบายข้อผิดพลาดทั้งหมดจะใช้ส่วนที่เหลือของแฟลชพื้นที่อันมีค่าของเรามีการทำงานร่วมกับ ที่พบมากที่สุด erros กรัมโค้ดข้างต้นจะพิมพ์ยังคงอยู่ในสตริงมนุษย์สามารถอ่านได้ว่า
คำอธิบาย ID
23 AG หรือ M คุ้มค่าคำสั่งในบล็อกไม่ได้เป็นจำนวนเต็ม ตัวอย่างเช่น G4 ไม่สามารถ G4.13 บางคำสั่งกรัมรหัสจะลอยจุด (G92.1) แต่เหล่านี้จะถูกละเว้น
24 กรัมสองรหัสคำสั่งให้ทั้งสองต้องใช้คำพูดแกน XYZ ถูกตรวจพบในบล็อก
25 คำกรัมรหัสซ้ำในบล็อก
26 คำสั่งกรัมรหัสชัดเจนโดยปริยายหรือต้องใช้คำพูดแกน XYZ ในบล็อก แต่ไม่มีผู้ใดได้รับการตรวจพบ
27 โปรโตคอลกรัมรหัสเอกสารหมายเลขบรรทัด N เพื่อจะอยู่ในช่วงของ 1-99,999 เราคิดว่าเป็นบิตโง่และโดยพลการ ดังนั้นเราจึงเพิ่มจำนวนสูงสุดเพื่อ 9,999,999 ข้อผิดพลาดนี้เกิดขึ้นเมื่อคุณส่งจำนวนมากขึ้นกว่านี้
28 คำสั่งกรัมรหัสถูกส่ง แต่ก็หายไปบาง P สำคัญหรือคำค่า L ในบรรทัด โดยพวกเขาคำสั่งไม่สามารถดำเนินการ ตรวจสอบกรัมรหัสของคุณ
29 Grbl สนับสนุนหกทำงานระบบพิกัด G54-G59 ข้อผิดพลาดนี้เกิดขึ้นเมื่อพยายามที่จะใช้หรือกำหนดค่าการทำงานได้รับการสนับสนุนระบบพิกัดเช่น G59.1, G59.2 และ G59.3
30 คำสั่ง G53 กรัมรหัสต้องมีทั้ง G0 แสวงหาหรือโหมดการเคลื่อนไหวฟี G1 ที่จะใช้งาน การเคลื่อนไหวที่แตกต่างกันมีบทบาท
31 มีคำแกนไม่ได้ใช้ในบล็อกและโหมดการเคลื่อนไหว G80 ยกเลิกการใช้งาน
32 โค้ง G2 หรือ G3 ได้รับคำสั่ง แต่ไม่มีคำพูดแกน XYZ ในระนาบที่เลือกที่จะติดตามโค้ง
33 คำสั่งการเคลื่อนไหวมีเป้าหมายที่ไม่ถูกต้อง G2, G3 และ G38.2 สร้างข้อผิดพลาดนี้ ทั้งละเอียดและโค้งโยงกับความหมายรัศมี, ตำแหน่งปัจจุบันไม่สามารถเป็นเช่นเดียวกับเป้าหมาย ข้อผิดพลาดนี้เมื่อโค้งเป็นไปไม่ได้ในทางคณิตศาสตร์ในการติดตามที่ตำแหน่งปัจจุบันตำแหน่งเป้าหมายและรัศมีของส่วนโค้งไม่ได้กำหนดส่วนโค้งที่ถูกต้อง
34 โค้ง G2 หรือ G3, ตรวจสอบที่มีความหมายรัศมีมีข้อผิดพลาดทางคณิตศาสตร์เมื่อคำนวณเรขาคณิตโค้ง ลองทั้งทำลายโค้งเป็นครึ่งวงกลมหรือ quadrants หรือกำหนดให้พวกเขามีความหมายชดเชยโค้ง
35 โค้ง G2 หรือ G3, ตรวจสอบที่มีความหมายชดเชยที่หายไป IJK คำชดเชยในระนาบที่เลือกที่จะติดตามโค้ง
36 มีที่ไม่ได้ใช้คำพูดที่เหลือกรัมรหัสที่ไม่ได้ใช้คำสั่งใด ๆ ในบล็อกที่มี
37 ความยาวเครื่องมือ G43.1 แบบไดนามิกคำสั่งชดเชยไม่สามารถใช้เพื่อชดเชยแกนอื่น ๆ นอกเหนือจากแกนการกำหนดค่าของมัน แกนเริ่มต้น Grbl เป็นแกน Z
ข้อความ Grbl อื่น ๆ
พร้อมกับการตอบสนองตามปกติจากผู้ใช้ป้อน Grbl มีข้อความเพิ่มเติมสำหรับข้อเสนอแนะที่สำคัญของรัฐในปัจจุบัน ข้อความเหล่านี้จัดเป็นสามชั้นโดยทั่วไป: ส่งข้อความแจ้งเตือนข้อความความคิดเห็นและข้อความสถานะเรียลไทม์
สัญญาณเตือน
ปลุกเป็นรัฐฉุกเฉิน สิ่งที่ได้ไปผิดมหันต์เมื่อเหล่านี้เกิดขึ้น โดยปกติแล้วพวกเขาจะเกิดจากข้อผิดพลาดขีด จำกัด เมื่อเครื่องที่มีการย้ายหรือต้องการที่จะย้ายออกไปข้างนอกพื้นที่เครื่องและความผิดพลาดเป็นสิ่งที่ พวกเขายังรายงานปัญหาถ้า Grbl จะหายไปและไม่สามารถรับประกันการวางตำแหน่งหรือคำสั่งสอบสวนล้มเหลว เมื่ออยู่ในโหมดปลุก, Grbl จะล็อคออกและปิดทุกอย่างจนกว่าผู้ใช้จะมีปัญหาการตั้งค่า แม้หลังจากที่การตั้งค่า, Grbl จะยังคงอยู่ในการปลุกโหมดป้องกันทั้งหมดกรัมรหัสจากการถูกดำเนินการ แต่ช่วยให้ผู้ใช้สามารถแทนที่การเตือนภัยด้วยตนเอง นี่คือเพื่อให้แน่ใจว่าผู้ใช้รู้และรับทราบปัญหาและได้ดำเนินการตามขั้นตอนในการแก้ไขปัญหาหรือบัญชีสำหรับมัน
ส่งข้อความแจ้งเตือนทั้งหมดเริ่มต้นด้วยการปลุก: `ตามด้วยคำอธิบายสั้น ๆ ของสาเหตุการเตือนภัย
เตือนภัย: ฮาร์ด / ขีด จำกัด นุ่ม: ยากและ / หรือข้อ จำกัด ที่อ่อนนุ่มจะต้องเปิดใช้งานสำหรับข้อผิดพลาดนี้เกิดขึ้น ด้วยข้อ จำกัด ที่ยาก Grbl จะเข้าสู่โหมดการเตือนเมื่อมีสวิทช์วงเงินยากได้รับการเรียกและแรงฆ่าเคลื่อนไหวทั้งหมด ตำแหน่งที่เครื่องจะหายไปและจำเป็นต้องกลับบ้านอีกครั้ง ด้วยข้อ จำกัด นุ่มเตือนภัยเกิดขึ้นเมื่อ Grbl ตรวจพบการเคลื่อนไหวโปรแกรมพยายามที่จะย้ายที่อยู่นอกพื้นที่ที่เครื่องกำหนดโดยกลับบ้านและการตั้งค่าการเดินทางสูงสุด แต่เมื่อสัญญาณเตือนภัย, การละเมิดขีด จำกัด นุ่มจะสั่งระงับการฟีดและรอจนกว่าเครื่องได้หยุดก่อนที่จะออกเตือนภัย ขีด จำกัด ของซอฟท์ไม่ได้สูญเสียตำแหน่งเครื่องเพราะเรื่องนี้
เตือนภัย: ยกเลิกในระหว่างรอบ: เตือนภัยนี้เกิดขึ้นเมื่อผู้ใช้ออกรีเซ็ตนุ่มในขณะที่เครื่องอยู่ในวงจรและการย้าย รีเซ็ตนุ่มจะฆ่าทุกการเคลื่อนไหวในปัจจุบันและเหมือนปลุกวงเงินยากที่ไม่สามารถควบคุมได้ทำให้เกิดการหยุด Grbl ที่จะสูญเสียตำแหน่ง
เตือนภัย: Probe ล้มเหลว: G38.2 คำสั่งสอบสวนตรงต้องมีการแจ้งเตือนหรือข้อผิดพลาดเมื่อสอบสวนล้มเหลวที่จะเรียกในระยะทางที่สอบสวนโปรแกรม Grbl เข้าสู่สถานะการเตือนภัยเพื่อแสดงให้ผู้ใช้สอบสวนล้มเหลว แต่จะไม่สูญเสียตำแหน่งเครื่องเนื่องจากการเคลื่อนไหวสอบสวนมาถึงการหยุดการควบคุมก่อนที่ข้อผิดพลาด
ข้อความตอบรับ
ข้อความตอบรับให้ข้อมูลที่ไม่สำคัญในสิ่งที่จะทำ Grbl และ / หรือสิ่งที่ต้องการ ไม่ซับซ้อนเกินไป ข้อความตอบรับจะถูกล้อมรอบเสมอใน [] วงเล็บ
[รีเซ็ตเพื่อดำเนินการต่อ]: หลังจากข้อความที่ส่งสัญญาณเตือนที่จะบอกให้ผู้ใช้สามารถตั้งค่า Grbl ทราบว่าเป็นสัญญาณเตือนภัยที่เกิดขึ้น
['$ H' | '$ X' เพื่อปลดล็อค]: หลังจากการเตือนภัยและผู้ใช้ตั้งค่าได้ส่งข้อความความคิดเห็นนี้ถูกส่งหลังจากข้อความเริ่มต้นที่จะบอกผู้ใช้ว่าทุกคำสั่งกรัมรหัสจะถูกล็อคออกจน ผู้ใช้ปลดล็อคด้วยตนเองด้วยคำสั่ง $ X หรือดำเนินการรอบกลับบ้าน นอกจากนี้ถ้าผู้ใช้มีการเปิดใช้งาน Homing ข้อความนี้จะถูกส่งเมื่อสดพลังงานขึ้นเพื่อแสดงให้เห็นผู้ใช้ต้องการไปที่บ้านของเครื่องก่อนที่จะทำอะไรอย่างอื่น
[ข้อควรระวัง: ปลดล็อค]: โหมดการเตือนสามารถด้วยตนเองมากกว่าการขี่โดยผู้ออกคำสั่ง $ X ข้อความความคิดเห็นนี้ถูกส่งเมื่อผู้ใช้แทนที่การเตือนภัย
[เปิดใช้งาน]: ข้อความความคิดเห็นที่เรียบง่ายเพื่อแสดงให้ผู้ใช้ที่รัฐ Grbl หรือโหมดถูกเปิดใช้งาน
[พิการ]: เหมือนข้างต้น แต่แจ้งให้รัฐหรือโหมดการใช้งานได้
ข้อความอื่น ๆ :
[PRB: 0.000,0.000,1.492]: นี่เป็นเพียงเล็กน้อยออกจากสถานที่ แต่เป็นบริการที่จะ GUIs, Grbl ทันทีจะส่งข้อความความคิดเห็นที่มีตำแหน่งที่ถูกสั่งการสอบสวนเมื่อประสบความสำเร็จ G38.2 คำสั่งสอบสวนตรง ข้อมูลนี้ยังสามารถดูได้ในพารามิเตอร์ที่พิมพ์ออกมาเรียกโดย $ #
[G0 G54 G17 G21 G90 G94 M0 M5 M9 T0 F0.]: เมื่อคำสั่งระบบ $ G จะถูกส่ง Grbl ตอบกลับด้วยข้อความที่มีในปัจจุบัน parser กรัมรหัสของรัฐกิริยา
$ # ดูพารามิเตอร์: เมื่อคำสั่งระบบ $ # จะถูกส่ง Grbl ตอบกลับด้วยข้อความที่มีหลายกระแสพารามิเตอร์กรัมรหัสซึ่งรวมถึงการทำงานประสานงานการชดเชยตำแหน่งที่กำหนดไว้ล่วงหน้า, G92 พิกัดชดเชยความยาวเครื่องมือชดเชยและการสอบสวนที่ผ่านมา ตำแหน่ง ข้อมูลทั้งหมดนี้จะมีการพิมพ์ข้อความที่มีความคิดเห็น [] วงเล็บ
อินเตอร์เฟซการเขียนสำหรับ Grbl
สำหรับนักพัฒนาเท่านั้น: ส่วนนี้จะแสดงวิธีการสื่อสารแนะนำให้ติดตั้งและโปรโตคอลสตรีมมิ่งกับ Grbl สำหรับ GUI
อินเตอร์เฟซทั่วไป Grbl ได้รับการอธิบายข้างต้น แต่สิ่งที่ขาดหายไปคือวิธีการเรียกใช้โปรแกรมทั้งหมด G-โค้ดบน Grbl เมื่อมันไม่ได้ดูเหมือนจะมีคุณสมบัติในการอัพโหลด หรือวิธีการสร้าง GUI ที่ดีกับข้อเสนอแนะเรียลไทม์ นี่คือที่ส่วนนี้เหมาะกับใน. ก่อนที่ผู้ใช้ร้องขออย่างดุเดือดสำหรับแฟลชไดรฟ์, RAM ภายนอกสนับสนุนจอแอลซีดี, จอยสติ๊กหรือสนับสนุนเครือข่ายเพื่อให้พวกเขาสามารถอัปโหลดโปรแกรม G-รหัสและทำงานได้โดยตรงบน Grbl คำตอบทั่วไปว่าเป็นความคิดที่ดี แต่ Grbl ไม่จำเป็นต้องให้ Grbl มีอยู่แล้วเกือบทั้งหมดของเครื่องมือและคุณลักษณะที่เชื่อถือได้สื่อสารกับอินเตอร์เฟซผู้ใช้แบบกราฟิกง่าย (GUI) นอกจากนี้เราต้องการที่จะลดมากที่สุดเท่าที่เราสามารถทำได้ในสิ่งที่ Grbl ควรจะทำเพราะในท้ายที่สุด Grbl ความต้องการที่จะมุ่งเน้นการผลิตที่สะอาด, การเคลื่อนไหวที่เชื่อถือได้ นั่นแหล่ะ
Streaming โปรแกรม G-Code เพื่อ Grbl
ที่นี่เราจะอธิบายสามวิธีการสตรีมมิ่งที่แตกต่างกันสำหรับ Grbl GUIs แต่จริงๆมีเพียงสองที่เราขอแนะนำให้ใช้ หนึ่งในปัญหาหลักที่มีสตรีมมิ่งเพื่อ Grbl เป็นพอร์ต USB ตัวเอง Arduinos และส่วนใหญ่ควบคุมเล็กทั้งหมดใช้ชิปแปลง USB เพื่ออนุกรมที่ในบางครั้งพฤติกรรมแปลกและไม่ปกติวิธีการที่คุณคาดหวังเช่นบัฟเฟอร์แพ็คเก็ต USB และความล่าช้าที่สามารถสร้างความหายนะให้กับโปรโตคอลสตรีมมิ่ง ปัญหาก็คือวิธีการจัดการกับบางส่วนของความล่าช้าและความแปลกประหลาดของเครื่องคอมพิวเตอร์ของตัวเองเพราะไม่มีของพวกเขาเป็นอย่างแท้จริงเรียลไทม์และมักจะสร้างไมโครล่าช้าเมื่อมีการดำเนินงานอื่น ๆ โดยไม่คำนึงถึงเราได้มาด้วยวิธีการเพื่อให้แน่ใจว่ากระแสกรัมรหัสมีความน่าเชื่อถือและเรียบง่าย
Streaming พิธีสาร: ง่ายโทรตอบสนอง [แนะนำสำหรับ Grbl v0.9 +]
โทรตอบสนองสตรีมมิ่งโปรโตคอลเป็นหลักฐานโง่ที่สุดและวิธีที่ง่ายในการสตรีมโปรแกรม G-รหัสเพื่อ Grbl อินเตอร์เฟซคอมพิวเตอร์โฮสต์เพียงส่งสายของ G-รหัสเพื่อ Grbl และรอการตกลงหรือข้อผิดพลาด: การตอบสนองก่อนที่จะส่งบรรทัดถัดไปของ G-รหัส ดังนั้นไม่ว่าถ้า Grbl จำเป็นต้องรอสำหรับห้องพักในบัฟเฟอร์วางแผนมองไปข้างหน้าเพื่อเสร็จสิ้นการแยกและการดำเนินงานบรรทัดสุดท้ายของ g-รหัสหรือถ้าโฮสต์คอมพิวเตอร์ไม่ว่างทำอะไรบางอย่างนี้รับประกันทั้งเครื่องคอมพิวเตอร์โฮสต์และ Grbl , โปรแกรมกรัมรหัสที่ได้รับการส่งและรับอย่างถูกต้อง ตัวอย่างของโปรโตคอลนี้ได้รับการเผยแพร่ในสคริปต์ simple_stream.py ของเราใน repo ของเรา
แต่ก็ยังช้าที่สุดของสามที่ระบุไว้โปรโตคอลสตรีมมิ่ง Grbl เป็นหลักมีสองบัฟเฟอร์ระหว่างการดำเนินการตามขั้นตอนและโฮสต์อินเตอร์เฟซคอมพิวเตอร์ หนึ่งในนั้นคืออนุกรมได้รับบัฟเฟอร์ นี้จะจัดเก็บในเวลาสั้น ๆ ได้ถึง 127 ตัวอักษรของข้อมูลที่ได้รับจากเครื่องคอมพิวเตอร์โฮสต์จนกว่า Grbl มีเวลาในการเรียกและแยกสายของ G-รหัส บัฟเฟอร์อื่น ๆ คือมองไปข้างหน้ากันชนวางแผน นี้จะจัดเก็บบัฟเฟอร์ถึงการเคลื่อนไหว 17 สายที่มีการเร่งวางแผนและปรับให้เหมาะสมสำหรับการดำเนินการขั้นตอน ตั้งแต่โปรโตคอลการตอบสนองต่อการเรียกร้องที่ได้รับสายของ G-รหัสในขณะที่เครื่องคอมพิวเตอร์โฮสต์รอสำหรับการตอบสนอง, อนุกรม Grbl ของบัฟเฟอร์รับมักจะเป็นที่ว่างเปล่าและภายใต้การใช้ หาก Grbl จะทำงานอย่างแข็งขันและดำเนินการขั้นตอน Grbl ทันทีจะเริ่มดำเนินการและที่ว่างเปล่ามองไปข้างหน้ากันชนวางแผนในขณะที่มันจะส่งการตอบสนองไปยังเครื่องคอมพิวเตอร์โฮสต์รอบรรทัดถัดไปจากเครื่องคอมพิวเตอร์โฮสต์เมื่อได้รับมันแยกและ วางแผนและเพิ่มการสิ้นสุดของบัฟเฟอร์มองไปข้างหน้า
แม้ว่าความล่าช้าการสื่อสารนี้อาจจะใช้เวลาเพียงเสี้ยววินาทีมีผลสะสมเนื่องจากมีความล่าช้ากับทุกบล็อกกรัมรหัสส่งไปยัง Grbl ในสถานการณ์บางอย่างเช่นโปรแกรมกรัมรหัสที่มีจำนวนมากเรียงตามลำดับสั้นมากส่วนสอดคล้องกับอัตราการป้อนสูงล่าช้าสะสมอาจมีขนาดใหญ่พอที่จะว่างเปล่าและอดมองไปข้างหน้ากันชนวางแผนภายในระยะเวลานี้ ซึ่งอาจนำไปสู่การเริ่มต้นหยุดเคลื่อนไหวเมื่อสตรีมมิ่งไม่สามารถให้ทันกับการทำงานของโปรแกรมกรัมรหัส นอกจากนี้ตั้งแต่ Grbl สามารถวางแผนและเพิ่มประสิทธิภาพของสิ่งที่อยู่ในลักษณะข้างหน้ากันชนวางแผนการทำงานที่ผ่านเหล่านี้ประเภทของการเคลื่อนไหวจะไม่เต็มความเร็วเพราะบัฟเฟอร์มองไปข้างหน้าเสมอจะเต็มไปบางส่วนเมื่อใช้วิธีการสตรีมมิ่งนี้ หากใบสมัครที่คาดหวังของคุณไม่ได้มีจำนวนมากของเหล่านี้ส่วนสายสั้นที่มีอัตราการป้อนสูงโปรโตคอลสตรีมมิ่งนี้ควรจะเป็นมากกว่าเพียงพอสำหรับการใช้งานมากที่สุดและเป็นวิธีที่รวดเร็วในการเริ่มต้น แต่เราไม่แนะนำให้ใช้วิธีนี้สำหรับรุ่น Grbl v0.8 หรือก่อนเนื่องจากบางปัญหาประสิทธิภาพการทำงานกับรุ่นนี้
Streaming พิธีสาร: ผ่านการควบคุมการไหล (XON / XOFF)
เพื่อหลีกเลี่ยงความเสี่ยงของการอดอาหารมองไปข้างหน้ากันชนวางแผน, ควบคุมการไหลของสตรีมมิ่งโปรโตคอลสามารถใช้ในการพยายามที่จะให้อนุกรม Grbl ของบัฟเฟอร์รับเต็มรูปแบบเพื่อให้ Grbl มีการเข้าถึงได้ทันทีกับสายกรัมรหัสต่อไปที่จะแยกและแผนโดยไม่ต้อง ต้องรอให้เครื่องคอมพิวเตอร์โฮสต์ที่จะส่ง การควบคุมการไหลที่เรียกว่าเป็น XON / XOFF ควบคุมการไหลของซอฟต์แวร์ที่ใช้สองตัวอักษรพิเศษที่จะบอกคอมพิวเตอร์โฮสต์เมื่อมีหรือไม่ได้มีห้องพักในอนุกรมได้รับบัฟเฟอร์ที่จะได้รับข้อมูลเพิ่มเติม เมื่อมีห้องพักปกติจะอยู่ที่ 20% เต็มรูปแบบอักขระพิเศษถูกส่งไปยังเครื่องคอมพิวเตอร์โฮสต์ที่ระบุพร้อมที่จะได้รับ เครื่องคอมพิวเตอร์โฮสต์จะเริ่มต้นในการส่งข้อมูลจนกว่าจะได้รับการหยุดรับอักขระพิเศษอื่น ๆ ที่ปกติจะอยู่ที่ 80% เต็ม Grbl ของ XON / XOFF คุณลักษณะการควบคุมการไหลของซอฟแวร์อาจจะถูกเปิดใช้งานผ่าน config.h แต่ไม่ได้รับการสนับสนุนอย่างเป็นทางการด้วยเหตุผลดังต่อไปนี้
ในขณะที่เสียงในตรรกะ, ควบคุมการไหลของซอฟแวร์ที่มีจำนวนของปัญหา ระยะเวลาระหว่าง Grbl และเครื่องคอมพิวเตอร์โฮสต์เป็นเกือบจะไม่สมบูรณ์แบบในการซิงค์ส่วนใหญ่จะโปรโตคอล USB และชิปแปลง USB-อนุกรมบน Arduino ทุก นี้ poses ปัญหาใหญ่เมื่อมีการส่งและรับตัวละครที่ควบคุมการไหลพิเศษเหล่านี้ เมื่ออนุกรม Grbl ของบัฟเฟอร์รับอยู่ในระดับต่ำ, เวลาระหว่างเมื่อส่งพร้อมที่จะได้รับตัวอักษรและเมื่อเครื่องคอมพิวเตอร์โฮสต์ส่งข้อมูลอื่น ๆ ทั้งหมดขึ้นอยู่กับทุกสิ่งในระหว่าง หากเครื่องคอมพิวเตอร์โฮสต์ไม่ว่างหรือ Arduino แปลง USB-อนุกรมจะไม่ส่งตัวอักษรในเวลาล่าช้านี้อาจทำให้เกิด Grbl รอให้ข้อมูลแบบอนุกรมขึ้นมาก่อนในการแยกและการดำเนินงานบรรทัดถัดไปของ G-รหัส แม้เลว แต่ถ้าอนุกรมได้รับบัฟเฟอร์ใกล้จะเต็มรูปแบบและครบวงจรได้รับตัวละครจะถูกส่งไปที่เครื่องคอมพิวเตอร์โฮสต์อาจไม่ได้รับสัญญาณในเวลาที่จะหยุดการถ่ายโอนข้อมูลและกว่าไหลบัฟเฟอร์อนุกรม Grbl ของ นี้จะไม่ดีและจะเสียหายกระแสข้อมูล
เพราะวิธีการไหลของการควบคุมซอฟแวร์จะขึ้นอยู่กับประสิทธิภาพการทำงานของตัวแปลง USB-อนุกรมบน Arduino และคอมพิวเตอร์โฮสต์, ลายน้ำต่ำและสูงเพื่อพร้อมที่จะได้รับและหยุดได้รับตัวละครจะต้องมีการติดตามแต่ละกรณี ดังนั้นจึงไม่ได้จริงๆโซลูชั่นที่มีประสิทธิภาพ ในประสบการณ์ของเรากับ XON / XOFF ซอฟแวร์ควบคุมการไหลของมันอย่างไม่ได้ทำงานกับ Arduinos กับ Atmega8U / 16U ชิปแปลง USB-อนุกรม (ในทุก Arduinos ปัจจุบันจาก Uno เพื่อ Mega2560) ด้วยเหตุผลบางอย่างที่มีความล่าช้า USB แพ็คเก็ตที่จะออกจากการควบคุม Grbl และนำเสมอเกือบถึงความเสียหายของข้อมูล อย่างไรก็ตาม XON / XOFF ทำงานเฉพาะใน Arduinos เก่าหรือตัวควบคุมขนาดเล็กที่ให้ความสำคัญ RS232 FTDI ชิปแปลง USB-อนุกรมเช่น Duemilanove หรือตัวควบคุมที่มี FTDI คณะกรรมการแบ่งออก เฟิร์มแว FTDI ของความน่าเชื่อถือส่ง XON / XOFF อักขระพิเศษในเวลาและในเวลา เราไม่แน่ใจว่าทำไมมีเช่นความแตกต่างระหว่างพวกเขา
ถ้าคุณตัดสินใจที่จะใช้ XON / XOFF ควบคุมการไหลของซอฟต์แวร์สำหรับ GUI ของคุณเก็บไว้ในใจว่าในขณะที่มันจะเท่านั้นจริงๆทำงานร่วมกับ FTDI แปลง USB-อนุกรม แต่สิ่งที่ดีเกี่ยวกับวิธีการนี้คือการที่คุณสามารถเชื่อมต่อกับ Grbl กว่าโปรแกรมจำลองอนุกรมเช่น Coolterm เปิดใช้งาน XON / XOFF การควบคุมการไหลตัดและวางทั้งโปรแกรมกรัมรหัสในนั้นและ Grbl จะดำเนินการได้อย่างสมบูรณ์ . (Nice แต่ไม่จำเป็นจริงๆ.)
Streaming พิธีสาร: ขั้นสูงตัวอักษรนับ [แนะนำ]
เพื่อให้ได้สิ่งที่ดีที่สุดของโลกทั้งความเรียบง่ายและความน่าเชื่อถือของวิธีการตอบสนองต่อการเรียกร้องและการประกันของประสิทธิภาพสูงสุดด้วยการควบคุมการไหลของซอฟแวร์ที่เรามาด้วยโปรโตคอลตัวอักษรนับง่ายสำหรับสตรีมมิ่งโปรแกรม G-รหัสเพื่อ Grbl มันทำงานเหมือนวิธีการตอบสนองต่อการเรียกร้องที่เครื่องคอมพิวเตอร์โฮสต์ส่งสายของ g-รหัสสำหรับ Grbl ที่จะดำเนินการและรอการตอบกลับ แต่แทนที่จะต้องพิเศษ XON / XOFF ตัวอักษรสำหรับการควบคุมการไหลของโปรโตคอลนี้เพียงแค่ใช้การตอบสนอง Grbl ของ เป็นวิธีการที่เชื่อถือได้ติดตามว่าห้องพักมากที่มีอยู่ในอนุกรม Grbl ของบัฟเฟอร์รับ ตัวอย่างของโปรโตคอลนี้จะถูกระบุไว้ใน stream.py สคริปต์สตรีมมิ่งใน repo ของเรา
ความแตกต่างที่สำคัญระหว่างโปรโตคอลนี้และอื่น ๆ เป็นเครื่องคอมพิวเตอร์โฮสต์ต้องการที่จะรักษานับยืนอยู่กี่ตัวอักษรจะได้ส่งไปยัง Grbl แล้วลบจำนวนตัวอักษรที่สอดคล้องกับสายดำเนินการด้วยการตอบสนองแต่ละ Grbl สมมติว่ามีโปรแกรมสั้นกรัมรหัสที่มี 5 สาย 25, 40, 31, 58, และ 20 ตัวอักษร (นับอาหารเส้นและตัวอักษรกลับสายการบินเกินไป) เรารู้ว่ามี Grbl อนุกรม 127 ตัวอักษรได้รับบัฟเฟอร์และเครื่องคอมพิวเตอร์โฮสต์สามารถส่งได้ถึง 127 ตัวอักษรโดยไม่ต้องล้นบัฟเฟอร์ ถ้าเราปล่อยให้เครื่องคอมพิวเตอร์โฮสต์ส่งสายที่สมบูรณ์มากที่สุดเท่าที่เราสามารถโดยไม่ต้องผ่านการไหลของอนุกรม Grbl ได้รับบัฟเฟอร์สามบรรทัดแรกวันที่ 25, 40, และ 31 ตัวอักษรที่สามารถส่งรวมเป็น 96 ตัวอักษร เมื่อ Grbl ตอบสนองเรารู้ว่าบรรทัดแรกที่ได้รับการประมวลผลและไม่ได้อยู่ในบัฟเฟอร์อ่านอนุกรม ขณะที่มันยืนบัฟเฟอร์อ่านอนุกรมตอนนี้มี 40 และ 31 เส้นตัวละครในนั้นรวมเป็น 71 ตัวอักษร เครื่องคอมพิวเตอร์โฮสต์ต้องแล้วตรวจสอบว่ามันปลอดภัยที่จะส่งบรรทัดถัดไปโดยไม่ต้องล้นบัฟเฟอร์ ด้วยบรรทัดถัดไปที่ 58 ตัวอักษรและบัฟเฟอร์อนุกรมที่ 71 รวมเป็น 129 ตัวอักษรคอมพิวเตอร์โฮสต์จะต้องรอจนกว่าจะมีห้องพักมากขึ้นได้เคลียร์จากบัฟเฟอร์อนุกรม เมื่อการตอบสนอง Grbl ถัดมาในบรรทัดที่สองได้รับการประมวลผลและมีเพียงสามบรรทัดตัวอักษร 31 ยังคงอยู่ในบัฟเฟอร์อนุกรม ณ จุดนี้มันปลอดภัยที่จะส่งโปรแกรมสุดท้ายที่เหลืออีกสอง 58 และ 20 สายลักษณะของกรัมรหัสรวมทั้งหมด 101
ในขณะที่มีความซับซ้อนดูเหมือนตัวละครตัวนี้นับโปรโตคอลสตรีมมิ่งที่มีประสิทธิภาพมากในทางปฏิบัติ มันก็จะช่วยให้มั่นใจได้บัฟเฟอร์อ่านอนุกรม Grbl เต็มไปในขณะที่ไม่เคยล้นมัน มันช่วยเพิ่มประสิทธิภาพการทำงานของ Grbl โดยการวางแผนการมองไปข้างหน้ากันชนเต็มรูปแบบและก็ค่อนข้างง่ายที่จะใช้เป็นสคริปต์ของเราแสดงให้เห็นถึง stream.py เราได้ผ่านการทดสอบความเครียดนี้โปรโตคอลตัวอักษรนับสุดขั้วและมันยังไม่ได้ล้มเหลวเลย ดูเหมือนจะมีเพียงความเร็วในการเชื่อมต่อแบบอนุกรมมีขีด จำกัด เราขอแนะนำให้ GUIs ทั้งหมดที่ใช้ตัวละครตัวนี้นับโปรโตคอลสตรีมมิ่ง
การโต้ตอบกับระบบ Grbl ของ
พร้อมด้วยสตรีมมิ่งโปรแกรมกรัมรหัสมีไม่กี่สิ่งที่มากขึ้นที่จะต้องพิจารณาเมื่อเขียน GUI สำหรับ Grbl เช่นวิธีการใช้รายงานสถานะเรียลไทม์คำสั่งควบคุม, การจัดการกับ EEPROM และการจัดการข้อความทั่วไป
การรายงานสถานะ
เมื่อ? ตัวละครที่ถูกส่งไปยัง Grbl (ไม่มีอาหารเส้นเพิ่มเติมหรือตัวอักษรกลับสายการบินจำเป็น) ทันทีจะตอบสนองกับสิ่งที่ชอบ <Idle, mPOS: 0.000,0.000,0.000, WPos: 0.000,0.000,0.000> เพื่อรายงานสถานะและตำแหน่งปัจจุบัน . ? มักจะหยิบออกและลบออกจากอนุกรมได้รับบัฟเฟอร์เมื่อใดก็ตามที่ตรวจพบ Grbl หนึ่ง ดังนั้นเหล่านี้สามารถส่งได้ตลอดเวลา นอกจากนี้จะทำให้มันง่ายขึ้นเล็กน้อยสำหรับ GUIs จะรับกับรายงานสถานะพวกเขาจะถูกห่อหุ้มอยู่เสมอโดย <> บั้ง
นักพัฒนาสามารถใช้ข้อมูลนี้เพื่อให้บนหน้าจอตำแหน่งดิจิตอลอ่านออก (DRO) สำหรับผู้ใช้และ / หรือที่จะแสดงให้ผู้ใช้ตำแหน่ง 3 มิติในพื้นที่ทำงานเสมือน เราขอแนะนำให้สอบถาม Grbl สำหรับ? สถานะเรียลไทม์รายงานที่ไม่เกิน 5Hz 10Hz อาจจะเป็นไปได้ แต่ในบางจุดมีผลตอบแทนลดลงและคุณจะเดินทางโดยรถแท็กซี่ของ CPU Grbl มากขึ้นโดยขอให้สร้างและส่งข้อมูลจำนวนมากตำแหน่ง
รายงานสถานะ Grbl เป็นธรรมเพียงในองค์กร มันก็จะเริ่มต้นด้วยคำอธิบายของรัฐเช่นเครื่อง IDLE (คำอธิบายของเหล่านี้มีอยู่ที่อื่น ๆ ในวิกิพีเดีย) ค่าข้อมูลต่อไปนี้มักจะอยู่ในคำสั่งที่ระบุไว้ด้านล่างและคั่นด้วยเครื่องหมายจุลภาค แต่อาจไม่อยู่ในลำดับที่แน่นอนหรือพิมพ์เลย การส่งออกรายงานขึ้นอยู่กับผู้ใช้ $ 10 รายงานสถานะหน้ากากการตั้งค่า
mPOS: 0.000,0.000,0.000: ตำแหน่งเครื่องระบุว่าเป็น X, Y, Z พิกัด หน่วย (มมหรือนิ้ว) ขึ้นอยู่กับ $ 13 Grbl หน่วยการรายงานการตั้งค่า
WPos: 0.000,0.000,0.000: ตำแหน่งงานระบุว่าเป็น X, Y, Z พิกัด หน่วย (มมหรือนิ้ว) ขึ้นอยู่กับ $ 13 Grbl หน่วยการรายงานการตั้งค่า
Buf: 0: จำนวนของการเคลื่อนไหวที่ถูกจัดคิวในบัฟเฟอร์วางแผน Grbl ของ
RX: 0: จำนวนตัวอักษรที่ถูกจัดคิวใน RX อนุกรม Grbl ของบัฟเฟอร์รับ
Real-Time คำสั่งควบคุม
เรียลไทม์คำสั่งควบคุม ~ เริ่มต้นรอบ / กลับมา! อาหารถือและ ^ X นุ่มรีเซ็ตทั้งหมดทันทีสัญญาณ Grbl เปลี่ยนสถานะการทำงานของมัน เพียงแค่ชอบ? รายงานสถานะการควบคุมตัวอักษรเหล่านี้จะหยิบออกและลบออกจากบัฟเฟอร์อนุกรมเมื่อมีการตรวจพบและไม่จำเป็นต้องใช้สายฟีดเพิ่มเติมหรือตัวอักษรที่ผลตอบแทนการขนส่งในการดำเนินงาน
EEPROM ประเด็น
การเข้าถึงแบบ EEPROM บนซีพียู AVR Arduino จะเปิดออกทั้งหมดของการขัดจังหวะในขณะที่อ่าน CPU และเขียนไปแบบ EEPROM นี้ poses ปัญหาสำหรับคุณสมบัติบางอย่างใน Grbl โดยเฉพาะอย่างยิ่งหากผู้ใช้มีการสตรีมมิ่งและทำงานโปรแกรมกรัมรหัสเพราะมันสามารถหยุดกำเนิดขั้นตอนหลักของการขัดจังหวะจากการดำเนินการในเวลา ส่วนใหญ่ของการเข้าถึงแบบ EEPROM ถูก จำกัด โดย Grbl เมื่อมันอยู่ในบางรัฐ แต่มีบางสิ่งบางอย่างที่นักพัฒนาจำเป็นต้องรู้
การตั้งค่าที่ไม่สามารถสตรีมไปยัง Grbl กับทั้ง XON / XOFF ควบคุมการไหลของซอฟแวร์หรือขั้นสูงของตัวละครนับโปรโตคอลสตรีมมิ่ง เฉพาะการทำงานของโปรโตคอลการตอบสนองเรียกง่ายๆ นี้เป็นเพราะในระหว่างการเขียนแบบ EEPROM, CPU AVR ยังปิดลงขัดจังหวะ RX อนุกรมซึ่งหมายความว่าข้อมูลที่ได้รับความเสียหาย โปรโตคอลที่เรียกร้องการตอบสนองที่ไม่ส่งข้อมูลใด ๆ จนกว่าการตอบสนองกลับมา
เมื่อมีการเปลี่ยนพิกัดการทำงานหรือการเข้าถึง G28 / G30 ตำแหน่งที่กำหนดไว้ล่วงหน้า Grbl มีการเรียกพวกเขาจาก EEPROM มีโอกาสเล็ก ๆ เชื่อมต่อนี้สามารถหยุด stepper หรืออนุกรมรับขัดจังหวะนานพอที่จะทำให้เกิดปัญหาการเคลื่อนไหวเป็น แต่เพียงเพราะมันเรียก 12 ไบต์ในเวลาที่ 2 รอบต่อเรียกโอกาสที่มีขนาดเล็กมากว่านี้จะทำอะไรกับวิธีการ Grbl ทำงาน เราเพียงแค่แนะนำการรักษาตาเกี่ยวกับเรื่องนี้และรายงานให้เราปัญหาใด ๆ ที่คุณอาจคิดว่ามีความเกี่ยวข้องกับเรื่องนี้
การจัดการข้อความ
ส่วนใหญ่ของการตอบรับจาก Grbl ควรเป็นประเภทดีมาก GUIs สามารถบอกได้ว่าเป็นสิ่งที่ นี่คือวิธีการที่พวกเขามีการจัด:
ok: มาตรฐานการตอบสนองทั้งหมดเป็นที่ดีในการบรรทัดเดียวส่งไป Grbl
ข้อผิดพลาด :: การตอบสนองข้อผิดพลาดมาตรฐานเพื่อบรรทัดเดียวส่งไป Grbl
สัญญาณเตือน :: ข้อผิดพลาดที่สำคัญที่เกิดขึ้น กระบวนการทั้งหมดหยุดจนกว่าผู้ใช้รับทราบ
[]: ข้อความข้อเสนอแนะทั้งหมดจะถูกส่งไปอยู่ในวงเล็บ เหล่านี้รวมถึงพารามิเตอร์และกรัมรหัส parser พิมพ์ลึกหนาบางรัฐ
<>: รายงานสถานะจะถูกส่งไปในบั้ง
มีบางสิ่งที่ไม่เหมาะสมอย่างเรียบร้อยในการตั้งค่านี้ในขณะที่มี ในรุ่นถัดไปเราจะพยายามที่จะทำให้เรื่องนี้เป็นสากลมากขึ้น แต่สำหรับตอนนี้ GUIs ของคุณจะต้องไปยังบัญชีด้วยตนเองสำหรับเหล่านี้:
ข้อความเริ่มต้น
$ ช่วยเหลือพิมพ์ออก
$ ไม่มี Start-up ดำเนินการบล็อกหลังจากข้อความเริ่มต้น
$$ มุมมองการตั้งค่า Grbl พิมพ์ออก
G-รหัสการจัดการข้อผิดพลาด
ในฐานะของ Grbl v0.9, parser กรัมรหัสเป็นอย่างมาตรฐาน compilant กับข้อผิดพลาดการตรวจสอบที่สมบูรณ์ เมื่อกรัมรหัสแยกวิเคราะห์ตรวจพบข้อผิดพลาดในบล็อกกรัมรหัส / สายตัวแยกวิเคราะห์จะถ่ายโอนข้อมูลทุกอย่างในบล็อกจากหน่วยความจำและรายงานข้อผิดพลาดกลับไปยังผู้ใช้หรือ GUI การถ่ายโอนข้อมูลนี้สามารถก่อให้เกิดปัญหาเพราะบล็อกกรัมรหัสที่ไม่ดีอาจจะมีบางคำสั่งการวางตำแหน่งที่มีค่าหรือการตั้งค่าอัตราการกินอาหาร
ก็ขอแนะนำให้ทำในสิ่งที่ตัวควบคุม CNC มืออาชีพทุกคนทำเมื่อตรวจพบข้อผิดพลาดในโปรแกรม G-รหัสหยุด ไม่ได้ทำอะไรต่อไปจนกว่าผู้ใช้จะมีการปรับเปลี่ยน G-รหัสและการแก้ไขข้อผิดพลาดในโปรแกรมของพวกเขา มิฉะนั้นสิ่งเลวร้ายที่อาจเกิดขึ้น
เป็นบริการที่จะ GUIs, Grbl มี "กากรัมรหัส" โหมดเปิดใช้งานโดยคำสั่ง $ ระบบ C GUIs สามารถสตรีมโปรแกรม G-รหัสเพื่อ Grbl ที่จะแยกมันผิดพลาดตรวจสอบและรายงานตกลงและข้อผิดพลาด: 'โดยไม่ต้องเปิดเครื่องอะไรหรือย้าย ดังนั้น GUIs สามารถ pre-โปรแกรมตรวจสอบก่อนที่จะสตรีมมิ่งพวกเขาจริง ปิดการใช้งาน "ตรวจสอบกรัมรหัส" โหมดการส่งคำสั่ง $ ระบบ C อื่นและ Grbl โดยอัตโนมัติจะนุ่มรีเซ็ตเพื่อล้างและ re-initialize parser กรัมรหัสและส่วนที่เหลือของระบบ นี้อาจจะควรจะทำงานในพื้นหลังเมื่อผู้ใช้โหลดโปรแกรมแรกก่อนที่ผู้ใช้ตั้งค่าเครื่องของเขา ล้างนี้และอีกครั้งเริ่มต้นล้าง G92 โดยมาตรฐานกรัมรหัสซึ่งผู้ใช้บางส่วนยังคงไม่ถูกต้องใช้ในการตั้งค่าในส่วนของศูนย์
การเขย่าเบา ๆ
แต่น่าเสียดายที่ Grbl ไม่ได้มีอินเตอร์เฟซที่วิ่งออกกำลังกายที่เหมาะสมอย่างน้อยตอนนี้ นี่คือเพื่อประหยัดพื้นที่แฟลชที่มีค่าสำหรับการพัฒนา Grbl v0.9 แต่ถูกกำหนดไว้สำหรับรุ่นถัดไปของ Grbl อย่างไรก็ตามปัจจุบัน Grbl GUIs ได้มาด้วยวิธีการที่จะจำลองการวิ่งออกกำลังกายที่มี Grbl โดยการส่งการเคลื่อนไหวที่เพิ่มขึ้นเช่น X0.1 G91, วิ่งออกกำลังกายด้วยการคลิกแต่ละหรือกดปุ่ม
ความคิดเห็น
แสดงความคิดเห็น