เมื่อไม่นานมานี้อาจารย์คนหนึ่งได้ใช้ส่วนสะท้อนแสงเลเซอร์กับพาราโบลาเป็นเส้นชั้นในและพัฒนาโปรแกรมส่วนหนึ่งจากการวาดเส้นโค้งในซอฟต์แวร์ไปจนถึงการเขียนโปรแกรม เขาไม่เคยคาดหวังว่าโปรแกรมที่สร้างโดยซอฟต์แวร์นั้นมีขนาดใหญ่มากและประสิทธิภาพของการตรวจสอบการปรับเปลี่ยนการดีบักและการประมวลผลต่ำเกินไป
เขามาหาฉันและขอให้ฉันช่วยเขียนโปรแกรม CNC ที่กระชับและเป็นสากล ฉันจะใช้สิ่งนี้เป็นตัวอย่างเพื่ออธิบายการเขียนโปรแกรมประเภทโค้งสองขั้นตอนโดยหวังว่าจะให้แรงบันดาลใจที่ดีแก่คุณ
รูปภาพ
เพิ่ม WeChat: Yuki7557 เพื่อรับบทช่วยสอน CNC 10G
ขั้นตอนที่ 1: ตั้งค่าตัวแปรและแทนที่พวกเขาในสมการ
สมการพารามิเตอร์วงรีในรูปด้านบนคือ:
x =147. 05441*cos (t)
y =85*sin (t)
มันถูกทำเครื่องหมายตามพิกัด XY เมื่อวาด เครื่อง 2- แกน CNC คือแกน x และ z ดังนั้นจึงเปลี่ยนเป็น:
z =147. 05441*cos (t)
x =85*sin (t)
ตั้งค่าตัวแปรเป็นสมการดังนี้:
#25=#1*cos [#3] (สมการพารามิเตอร์วงรี z=a*cos (t))
#24=#2*sin [#3] (สมการพารามิเตอร์วงรี x=b*sin (t))
บางคนอาจบอกว่าพวกเขายากจนในวิชาคณิตศาสตร์และไม่เข้าใจสมการ ในความเป็นจริงมันไม่สำคัญว่าคุณจะไม่เข้าใจสมการ วัตถุประสงค์ของขั้นตอนนี้คือการแปลงสมการพารามิเตอร์วงรีเป็นตัวแปรแมโครอื่น ๆ ที่สามารถตั้งค่าสำหรับเครื่องมือเครื่องซีเอ็นซี (ตัวอย่างเช่นตัวแปรแมโครของระบบ Falak คือ # และการแสดงตัวเลขและซีเมนส์คือ r ….)
ขั้นตอนที่ 2: ใช้สมการเพื่อคำนวณจุดพิกัด
เนื่องจากรูปร่างของชิ้นงานใด ๆ สามารถมองเห็นได้ว่าประกอบด้วยจุดเล็ก ๆ นับไม่ถ้วนและจากนั้นจุดเชื่อมต่อด้วยกลุ่มเส้นเล็ก ๆ จึงสร้างผลิตภัณฑ์ที่หลากหลาย
สมการพารามิเตอร์วงรี:
#24=#2*sin [#3] (Ellipse parametric Equation x=b*sin (t))
#25=#1*cos [#3] (ELLIPSE PARAMETRIC Equation Z=A*cos (t))
ให้ค่าที่แตกต่างกัน #3 (เช่นผ่านการดำเนินการด้วยตนเองของตัวแปร #3) สมการสามารถใช้ในการคำนวณค่า x และ z บนเส้นโค้งรูปวงรีรูปวงรีและจากนั้นการประมวลผลเส้นโค้งของเส้นโค้งจะเสร็จสิ้นผ่านการแทรกซึมของ G01x _ z _
โปรแกรมมีดังนี้:
%O0001
N01 #1=147. 05441 ( #1 แสดงถึงกึ่งแกนตามแนวยาวของวงรี)
n02 #2=85 ( #2 หมายถึงกึ่งแนวขวาง B ของวงรี)
N03 #3=90 ( #3 หมายถึงมุมเริ่มต้นและมุมเริ่มต้นคือ 90 องศาสำหรับการประมวลผลครึ่งซ้ายของวงรี)
N04 G54 S800 M03
N05 T0101
N06 G00 X170 Z200
N07 G00 Z1
n08#24=#2*sin [#3] (สมการพารามิเตอร์วงรี x=b*sin (t))
n09#26=#1*cos [#3] (สมการพารามิเตอร์วงรี z=a*cos (t))
N10 G41 (สร้างค่าตอบแทน)
n11 g 0 1 x [2*#24] z#26 f0.3 (เปลี่ยนหนึ่งครั้ง)
n12 #3= #3+3 (คำนวณการเพิ่มมุมถัดไป)
N13 ถ้า [#3 LT180] GOTO8 (หากรถไม่ได้เข้าที่
N14 G40 (ยกเลิกการชดเชย)
N15 G 00 Z200 M05 (กลับไปที่จุดปลอดภัย)
n16 g 00 x250 (กลับไปที่จุดปลอดภัย)
M30 (ขั้นตอนสิ้นสุดลง)
%





