Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 90 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
90
Dung lượng
5,53 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA CƠ KHÍ CHẾ TẠO MÁY ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT CƠ ĐIỆN TỬ THIẾT KẾ CHẾ TẠO MÁY CẮT KHẮC LASER GVHD: TS CÁI VIỆT ANH DŨNG SVTH: LÊ HỮU TOÁN MSSV: 11146122 SVTH: LÊ HÀ TRUNG MSSV: 11146128 SKL 0 2 Tp Hồ Chí Minh, tháng 1/2016 an BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH BỘ MÔN CƠ ĐIỆN TỬ ĐỒ ÁN TỐT NGHIỆP Đề tài: THIẾT KẾ CHẾ TẠO MÁY CẮT KHẮC LASER Giảng viên hướng dẫn: Sinh viên thực hiện: TS CÁI VIỆT ANH DŨNG LÊ HỮU TOÁN 11146122 Lớp: LÊ HÀ TRUNG 111461 Khố: 2011 - 2016 11146128 Tp Hồ Chí Minh, tháng 1/2016 an TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HCM KHOA CƠ KHÍ CHẾ TẠO MÁY Bộ mơn Cơ Điện Tử CỘNG HỒ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự – Hạnh phúc NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Giảng viên hướng dẫn: TS CÁI VIỆT ANH DŨNG Sinh viên thực hiện: LÊ HỮU TOÁN MSSV: 11146122 LÊ HÀ TRUNG MSSV: 11146128 Tên đề tài: THIẾT KẾ VÀ CHẾ TẠO MÁY CẮT KHẮC LASER Các số liệu, tài liệu ban đầu: Các sách báo chuyên ngành liên quan có thư viện trường ĐH SPKT TP HCM tài liệu trang mạng Internet Các chi tiết cấu, máy móc có sẵn thị trường với tiêu chuẩn thơng số định Nội dung đồ án: Nghiên cứu tổng quan đề tài, mục đích, nhiệm vụ đề tài, kết nghiên cứu Cơ sở lý thuyết: giới thiệu cấu, thông số máy cắt khắc laser, nguyên lý cách thức cắt khắc Tính tốn lựa chọn thiết bị tối ưu cho máy, thiết kế mơ hình hợp lý Thiết kế điều khiển giao diện hoạt động máy Kết luận, đánh giá đưa hướng phát triển đề tài Các sản phẩm dự kiến Máy cắt khắc laser Ngày giao đồ án: 9/9/2015 Ngày nộp đồ án: 8/1/2016 TRƯỞNG BỘ MÔN GIẢNG VIÊN HƯỚNG DẪN (Ký, ghi rõ họ tên) (Ký, ghi rõ họ tên) Được phép bảo vệ ………………………………………… i an LỜI CAM KẾT - Tên đề tài: Thiết kế chế tạo máy cắt khắc laser - GVHD: TS Cái Việt Anh Dũng - Họ tên sinh viên: Lê Hà Trung Lớp: 111461A - MSSV: 11146128 - Địa sinh viên: Số 163, đường 29/4, huyện Trảng Bom, tỉnh Đồng Nai - Số điện thoại liên lạc: 01248.117.489 - Email: lhtrung184@gmail.com - Ngày nộp khoá luận tốt nghiệp (ĐATN): 8/1/2016 - Lời cam kết: “Tôi xin cam đoan khoá luận tốt nghiệp (ĐATN) cơng trình tơi nghiên cứu thực Tôi không chép từ viết cơng bố mà khơng trích dẫn nguồn gốc Nếu có vi phạm nào, tơi xin chịu hồn tồn trách nhiệm” Tp Hồ Chí Minh, ngày tháng năm 2016 Ký tên Lê Hà Trung ii an LỜI CẢM ƠN Đối với sinh viên ngành điện tử, việc thực đồ án tốt nghiệp quan trọng Muốn làm điều này, trước hết chúng em phải trải qua khoảng thời gian năm giảng đường đại học Khoảng thời gian đó, chúng em học vơ số kiến thức từ môn đại cương, sở mơn chun ngành Qua giúp chúng em có kiến thức chun sâu khí điện tử, từ làm đồ án nhỏ môn chuyên ngành, giúp chúng em từ lý thuyết vào thực tế nghiên cứu chế tạo mô hình thực tế Lời cảm ơn chân thành sâu sắc xin gửi đến gia đình động viên không mệt mỏi giúp đỡ, tạo điều kiện để chúng em hồn thành khóa học cách tốt Trước tiên chúng em xin chân thành gửi đến tồn thể q thầy Khoa Cơ Khí Chế Tạo Máy truyền đạt kiến thức kinh nghiệm quý báu suốt năm tháng giảng đường Đại Học lời cảm ơn chân thành Chúng em xin bày tỏ lòng biết ơn chân thành đến TS Cái Việt Anh Dũng, người hướng dẫn, bảo tận tình tạo điều kiện thuận lợi để chúng em hoàn thành tốt đồ án Bên cạnh chúng em muốn gửi lời cảm ơn đến thầy cô giáo Khoa Cơ Khí Chế Tạo Máy, thầy cho chúng em lời khuyên hữu ích tạo điều kiện tốt cho chúng em thực đề tài Mặc dù cố gắng, khoảng thời gian cho phép, hạn chế mặt kiến thức thân, đồ án khơng thể tránh khỏi nhiều thiếu sót Chính vậy, chúng em mong nhận góp ý thầy giáo, cô giáo bạn bè người có quan tâm đến lĩnh vực mà đồ án trình bày Cuối cùng, chúng em xin chúc q thầy, khoa khí Chế Tạo Máy lời chúc sức khỏe, hạnh phúc, công tác tốt Chúng em xin chân thành cảm ơn! Tp Hồ Chí Minh, ngày tháng năm 2016 Nhóm sinh viên thực Lê Hữu Toán Lê Hà Trung iii an TÓM TẮT ĐỒ ÁN THIẾT KẾ VÀ CHẾ TẠO MÁY CẮT KHẮC LASER Máy cắt khắc laser thiết kế máy gia công NC, dùng để cắt khắc vẽ kỹ thuật tranh ảnh lên vật liệu.Thiết bị chế tạo cứng vững, ổn định, xác hỗ trợ việc gia cơng khắc bề mặt cắt rời vật liệu theo hình dạng cho trước Thiết bị có khả nhận file cắt/khắc từ phần mềm xuất file nc từ gia cơng theo u cầu vẽ với độ xác cao Lê Hữu Toán Lê Hà Trung iv an ABSTRACT DESIGN AND MANUFACTURING LASER CUTTING Laser engraving cutting machine is designed as an NC machining, engraving for cutting technical drawings or pictures on the material The equipment is made rigid, stable and accurate support the engraving process on the surface or cut material under the given shapes The equipment is capable of receiving file cutting / engraving from file import software nc then processed as required drawings with highest accuracy v an MỤC LỤC NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP i LỜI CAM KẾT ii LỜI CẢM ƠN iii TÓM TẮT ĐỒ ÁN iv ABSTRACT v MỤC LỤC vi DANH MỤC HÌNH ẢNH ix DANH MỤC SƠ ĐỒ, BẢNG BIỂU xii DANH MỤC TỪ VIẾT TẮT xiii Chương 1: GIỚI THIỆU 1.1 Tính cấp thiết đề tài 1.2 Ý nghĩa khoa học thực tiễn đề tài 1.3 Mục tiêu nghiên cứu đề tài 1.4 Đối tượng phạm vi nghiên cứu 1.4.1 Đối tượng nghiên cứu 1.4.2 Phạm vi nghiên cứu 1.5 Phương pháp nghiên cứu 1.5.1 Cách thức nghiên cứu 1.5.2 Phương tiện nghiên cứu 1.6 Kết cấu đồ án tốt nghiệp Chương 2: TỔNG QUAN NGHIÊN CỨU ĐỀ TÀI 2.1 Sơ lược phát triển tia laser 2.1.1 Laser 2.1.2 Tính chất laser 2.1.3 Ứng dụng laser 2.2 Tình hình nghiên cứu 2.2.1 Ngoài nước 2.2.2 Trong nước 2.3 Hướng nghiên cứu Chương 3: CƠ SỞ LÝ THUYẾT 3.1 Phần khí 3.1.1 Động bước 3.1.2 Bộ truyền đai 10 vi an 3.2 Phần điện 13 3.2.1 Mạch driver TB6560[10] 13 3.2.2 Mạch điều khiển Arduino 15 3.2.3 Mạch giảm áp LM2596 17 3.2.4 Mạch driver laser 17 Chương 4: PHƯƠNG HƯỚNG VÀ CÁC GIẢI PHÁP 19 4.1 Những yêu cầu đề tài 19 4.2 Cơ sở chọn phương án thiết kế 19 4.3 Phần khí 19 4.4 Phần điện 22 4.5 Lựa chọn giải pháp 23 4.5.1 Phần khí 23 4.5.2 Phần điện 25 4.6 Trình tự cơng việc tiến hành 25 Chương 5: TÍNH TỐN THIẾT KẾ MÁY CẮT KHẮC LASER 26 5.1 Tính tốn tốc độ quay động 26 5.2 Tính tốn thiết kế truyền đai 27 5.3 Thiết kế khí 28 5.3.1 Mơ hình tổng thể 28 5.3.2 Cơ cấu truyền động trục x 29 5.3.3 Cơ cấu truyền động trục y 29 5.3.4 Cơ cấu gá laser 30 5.3.5 Cơ cấu gá vật liệu 30 5.3.6 Gá động trục x 31 5.3.7 Gá động trục y 31 5.3.8 Hướng chuyển động tịnh tiến trục 32 5.4 Phân tích khả chịu ứng suất cho trượt chịu lực 32 Chương 6: CHẾ TẠO VÀ THỬ NGHIỆM 34 6.1 Hệ thống điều khiển máy 34 6.2 Các phận cấu trúc khí 34 6.3 Các phận cấu trúc hệ thống mạch điện điều khiển 41 6.4 Lập trình điều khiển 44 6.5 Quá trình thực nghiệm 50 Chương 7: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 52 7.1 Kết luận 52 7.2 Phần làm 52 vii an 7.3 Phần chưa làm hạn chế 52 7.4 Kiến nghị hướng phát triển 53 TÀI LIỆU THAM KHẢO 54 PHỤ LỤC I 55 PHỤ LỤC II 65 viii an lenh[k1] += "X" + (X1).ToString() + " Y" + (Y1).ToString() + " Z1 "; k1++; // textBox6.Text += "X:" + X1.ToString() + "\n"; } for (double i = 2*Math.PI; i >= goc1; i = i - hs ) { X1 = X + I + R * Math.Cos(i); Y1 = Y + J + R * Math.Sin(i); lenh[k1] += "X" + (X1).ToString() + " Y" + (Y1).ToString() + " Z1 "; k1++; // textBox6.Text += "X:" + X1.ToString() + "\n"; } } Y0 = Y; X0 = X; } private void datatextG01(string textdata) { string ka = textdata; kt = ""; for (int k5 = 0; k5 < textdata.Length; k5++) { string text2 = (textdata[k5]).ToString(); // MessageBox.Show(text2); if ((text2 == "X") || (text2 == "Y")) { kt = text2; } else if (text2 == " ") { if (kt == "X") { tdx = Convert.ToDouble(s1); X = Convert.ToDouble(tdx); } if (kt == "Y") { tdy = Convert.ToDouble(s1); Y = Convert.ToDouble(tdy); } s1 = ""; } else { s1 += text2; } } X0 = X; Y0 = Y; lenh[k1] += "X" + X + " Y" + Y + " Z1 "; k1++; } private void datatextG1(string textdata) { string ka = textdata; kt = ""; for (int k5 = 0; k5 < textdata.Length; k5++) { string text2 = (textdata[k5]).ToString(); // MessageBox.Show(text2); if ((text2 == "X") || (text2 == "Y")) { 61 an kt = text2; } else if (text2 == " ") { if (kt == "X") { tdx = Convert.ToDouble(s1); X = Convert.ToDouble(tdx); } if (kt == "Y") { tdy = Convert.ToDouble(s1); Y = Convert.ToDouble(tdy); } s1 = ""; } else { s1 += text2; } } X0 = X; Y0 = Y; lenh[k1] += "X" + X + " Y" + Y + " Z0 "; k1++; //textBox1.Text += "X:" + X.ToString() + "Y:" + Y.ToString() + "I:" + I.ToString() + "J:" + J.ToString(); //textBox1.Text = "G1"; // textBox6.Text = lenh[k1].ToString(); } private void send(string text1) { string ka = text1; kt = ""; for (int k5 = 0; k5 < text1.Length; k5++) { string text2 = (text1[k5]).ToString(); // MessageBox.Show(text2); if ((text2 == "X") || (text2 == "Y") || (text2 == "Z")) { kt = text2; } else if (text2 == " ") { if (kt == "X") { tdx = Convert.ToDouble(s1); SetText(s1); tdox = Convert.ToInt64(tdx * 77); serialPort1.Write("X"); serialPort1.Write(tdox.ToString()); serialPort1.Write(" "); // MessageBox.Show(tdox.ToString()); } if (kt == "Y") { tdy = Convert.ToDouble(s1); SetText1(s1); tdoy = Convert.ToInt64(tdy * 51.5); serialPort1.Write("Y"); serialPort1.Write(tdoy.ToString()); serialPort1.Write(" "); //MessageBox.Show(tdoy.ToString()); 62 an } if (kt == "Z") { tdz = Convert.ToDouble(s1); tdoz = Convert.ToInt64(tdz * 1); serialPort1.Write("Z"); serialPort1.Write(tdoz.ToString()); serialPort1.Write(" "); } s1 = ""; } else { s1 += text2; } } serialPort1.WriteLine("R"); } private void checkBox1_CheckedChanged(object sender, EventArgs e) { } private void textBox2_TextChanged(object sender, EventArgs e) { } private void buttonstar_Load(object sender, EventArgs e) { } private void folderBrowserDialog1_HelpRequest(object sender, EventArgs e) { } private void menuStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e) { } private void exitToolStripMenuItem_Click(object sender, EventArgs e) { Application.Exit(); } private void openToolStripMenuItem_Click(object sender, EventArgs e) { openFileDialog1.Filter = "Gcode: NC |*.nc;*.txt;|All file types|*.*"; if (openFileDialog1.ShowDialog() == DialogResult.OK) { richTextBox1.Text = File.ReadAllText(openFileDialog1.FileName); } } private void tabPage1_Click(object sender, EventArgs e) { } 63 an private void buttonlen_Click(object sender, EventArgs e) { string up = ""; Y = Y - 100; up += "X" + (X).ToString() + " Y" + (Y).ToString() + " "; send(up); } private void buttonxuong_Click(object sender, EventArgs e) { string down = ""; Y = Y + 100; down += "X" + (X).ToString() + " Y" + (Y).ToString() + " "; send(down); } private void button6_Click(object sender, EventArgs e) { on = true; } private void buttonstop_Click(object sender, EventArgs e) { on = false; } private void buttontrai_Click(object sender, EventArgs e) { string trai = ""; X = X - 100; trai += "X" + (X).ToString() + " Y" + (Y).ToString() + " "; send(trai); } private void buttonphai_Click(object sender, EventArgs e) { string phai = ""; X = X + 100; phai += "X" + (X).ToString() + " Y" + (Y).ToString() + " "; send(phai); } private void richTextBox1_TextChanged(object sender, EventArgs e) { } } } 64 an PHỤ LỤC II Code giao diện điều khiển C# using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO.Ports; using System.IO; namespace CNC_Controller { public partial class buttonstar : Form { public buttonstar() { InitializeComponent(); } int comlen = 0; string[] lenh = new string[10000000]; double goc0 = 0; double goc1 = 0; int k1 = 0; int k2 = 0; int k3 = 0; double hs = 0; string kt = ""; string s1 = ""; double R = 0; double Xmin = 0, Xmax = 0, Ymin = 0, Ymax = 0; double X = 0, Y = 0, I = 0, J = 0; double X1 = 0, Y1 = 0; double X0 = 0, Y0 = 0; double tdx = 0, tdy = 0, tdz = 0, tdi = 0, tdj = 0; double tdox = 0, tdoy = 0, tdoz = 0, tdoi = 0, tdoj = 0; bool on = false; delegate void SetTextCallback(string text); string s = String.Empty; private void button2_Click(object sender, EventArgs e) { int dem = 0; string strInput = richTextBox1.Text; string[] strArr = strInput.Split('\n'); foreach (string item in strArr) { string aa = item + " "; data(aa); } } private void timer1_Tick(object sender, EventArgs e) { string[] sport = SerialPort.GetPortNames(); if (comlen != sport.Length) { 65 an comlen = sport.Length; comboBox1.Items.Clear(); for (int j = 0; j < comlen; j++) { comboBox1.Items.Add(sport[j]); if (sport[j] == Properties.Settings.Default.PortName) { comboBox1.Text = Properties.Settings.Default.PortName; } } } } private void button3_Click(object sender, EventArgs e) { if (comboBox1.Text == "") { MessageBox.Show(" Vui long chon cong COM", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (serialPort1.IsOpen == true) { serialPort1.Close(); button3.Text = "Connect"; label2.Text = "DisConnect"; comboBox1.Enabled = true; } else { serialPort1.PortName = comboBox1.Text; try { serialPort1.Open(); button3.Text = "DisConnect"; label2.Text = "Connect"; comboBox1.Enabled = false; MessageBox.Show("Da ket noi:" + serialPort1.PortName); } catch (System.Exception ex) { MessageBox.Show(" Khong thu mo cong Com" + serialPort1.PortName, " Loi ", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } private void timer2_Tick(object sender, EventArgs e) { if (checkBox1.Checked == true) { serialPort1.WriteLine(lenh[k2]); k2++; } else { k2 = 0; } } 66 an private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e) { s = serialPort1.ReadExisting(); //SetText(s); if(on == true) { if( s =="R") { //MessageBox.Show(lenh[k3]); send(lenh[k3]); k3++; } } } private void SetText(string text) { if (this.textBox1.InvokeRequired) { SetTextCallback d = new SetTextCallback(SetText); // khởi tạo delegate gọi đến SetText this.Invoke(d, new object[] { text }); } else this.tbtdoX.Text = text; } private void SetText1(string text) { if (this.textBox3.InvokeRequired) { SetTextCallback d = new SetTextCallback(SetText1); // khởi tạo delegate gọi đến SetText this.Invoke(d, new object[] { text }); } else this.tbtdoY.Text = text; } private void data(string text) { string ka = text; for (int k5 = 0; k5 < text.Length; k5++) { string text2 = (text[k5]).ToString(); // MessageBox.Show(text2); if (text2 == "G") { kt = text2; } else if (text2 == " ") { if (kt == "G") { if (s1 == "1") { datatextG1(text); // textBox1.Text = "G1"; } if (s1 == "01") { datatextG01(text); // textBox1.Text = "G1"; } if (s1 == "02") { 67 an // textBox1.Text = "G2"; datatextG02(text); } if (s1 == "03") { // textBox1.Text = "G3"; datatextG03(text); } } s1 = ""; } else { s1 += text2; } } } private void datatextG03(string textdata) { string ka = textdata; for (int k5 = 0; k5 < textdata.Length; k5++) { string text2 = (textdata[k5]).ToString(); // MessageBox.Show(text2); if ((text2 == "X") || (text2 == "Y") || (text2 == "I") || (text2 == "J")) { kt = text2; } else if (text2 == " ") { if (kt == "X") { tdx = Convert.ToDouble(s1); X = Convert.ToDouble(tdx); } if (kt == "Y") { tdy = Convert.ToDouble(s1); Y = Convert.ToDouble(tdy); } if (kt == "I") { tdi = Convert.ToDouble(s1); I = Convert.ToDouble(tdi); } if (kt == "J") { tdj = Convert.ToDouble(s1); J = Convert.ToDouble(tdj); } s1 = ""; } else { s1 += text2; } } R = Math.Sqrt(I * I + J * J); Y1 = Y0; 68 an X1 = X0; if (Y0 >= (Y + J)) { goc0 = (Math.Acos((X0 - X - I) / (Math.Abs(Math.Sqrt(I * I + J * J))))); } if (Y0 < (Y + J)) { goc0 = * Math.PI - (Math.Acos((X0 - X - I) / (Math.Abs(Math.Sqrt(I * I + J * J))))); } if (Y >= (Y + J)) { goc1 = (Math.Acos((-I) / (Math.Sqrt(I * I + J * J)))); } if (Y < (Y + J)) { goc1 = * Math.PI - Math.Acos((-I) / (Math.Sqrt(I * I + J * J))); } hs = 0.005; // textBox6.Text += "X:" + goc0.ToString() + "Y:" + goc1.ToString() + I.ToString() + "J:" + J.ToString(); if (goc0 = (Y + J)) { goc1 = (Math.Acos((-I) / (Math.Sqrt(I * I + J * J)))); } if (Y < (Y + J)) { goc1 = 2*Math.PI -(Math.Acos((-I) / (Math.Sqrt(I * I + J * J)))); } hs = 0.005; if(goc0 >= goc1) { for (double i = goc0; i > goc1; i = i - hs) { 70 an X1 = X + I + R * Math.Cos(i); Y1 = Y + J + R * Math.Sin(i); lenh[k1] += "X" + (X1).ToString() + " Y" + (Y1).ToString() + " Z1 "; k1++; // textBox6.Text += "X:" + X1.ToString() + "\n"; } } if(goc0 < goc1) { for (double { X1 = X + Y1 = Y + lenh[k1] i = goc0; i > 0; i = i - hs) I + R * Math.Cos(i); J + R * Math.Sin(i); += "X" + (X1).ToString() + " Y" + (Y1).ToString() + " Z1 "; k1++; // textBox6.Text += "X:" + X1.ToString() + "\n"; } for (double i = 2*Math.PI; i >= goc1; i = i - hs ) { X1 = X + I + R * Math.Cos(i); Y1 = Y + J + R * Math.Sin(i); lenh[k1] += "X" + (X1).ToString() + " Y" + (Y1).ToString() + " Z1 "; k1++; // textBox6.Text += "X:" + X1.ToString() + "\n"; } } Y0 = Y; X0 = X; } private void datatextG01(string textdata) { string ka = textdata; kt = ""; for (int k5 = 0; k5 < textdata.Length; k5++) { string text2 = (textdata[k5]).ToString(); // MessageBox.Show(text2); if ((text2 == "X") || (text2 == "Y")) { kt = text2; } else if (text2 == " ") { if (kt == "X") { tdx = Convert.ToDouble(s1); X = Convert.ToDouble(tdx); } if (kt == "Y") { tdy = Convert.ToDouble(s1); Y = Convert.ToDouble(tdy); } s1 = ""; } else { s1 += text2; } } X0 = X; 71 an Y0 = Y; lenh[k1] += "X" + X + " Y" + Y + " Z1 "; k1++; } private void datatextG1(string textdata) { string ka = textdata; kt = ""; for (int k5 = 0; k5 < textdata.Length; k5++) { string text2 = (textdata[k5]).ToString(); // MessageBox.Show(text2); if ((text2 == "X") || (text2 == "Y")) { kt = text2; } else if (text2 == " ") { if (kt == "X") { tdx = Convert.ToDouble(s1); X = Convert.ToDouble(tdx); } if (kt == "Y") { tdy = Convert.ToDouble(s1); Y = Convert.ToDouble(tdy); } s1 = ""; } else { s1 += text2; } } X0 = X; Y0 = Y; lenh[k1] += "X" + X + " Y" + Y + " Z0 "; k1++; } private void send(string text1) { string ka = text1; kt = ""; for (int k5 = 0; k5 < text1.Length; k5++) { string text2 = (text1[k5]).ToString(); // MessageBox.Show(text2); if ((text2 == "X") || (text2 == "Y") || (text2 == "Z")) { kt = text2; } else if (text2 == " ") { if (kt == "X") { tdx = Convert.ToDouble(s1); SetText(s1); tdox = Convert.ToInt64(tdx * 77); serialPort1.Write("X"); serialPort1.Write(tdox.ToString()); serialPort1.Write(" "); // MessageBox.Show(tdox.ToString()); 72 an } if (kt == "Y") { tdy = Convert.ToDouble(s1); SetText1(s1); tdoy = Convert.ToInt64(tdy * 51.5); serialPort1.Write("Y"); serialPort1.Write(tdoy.ToString()); serialPort1.Write(" "); //MessageBox.Show(tdoy.ToString()); } if (kt == "Z") { tdz = Convert.ToDouble(s1); tdoz = Convert.ToInt64(tdz * 1); serialPort1.Write("Z"); serialPort1.Write(tdoz.ToString()); serialPort1.Write(" "); // MessageBox.Show(tdoz.ToString()); } // tbtdoX.Text = tdx.ToString(); // tbtdoY.Text = tdy.ToString(); s1 = ""; } else { s1 += text2; } } serialPort1.WriteLine("R"); } private void checkBox1_CheckedChanged(object sender, EventArgs e) { } private void textBox2_TextChanged(object sender, EventArgs e) { } private void buttonstar_Load(object sender, EventArgs e) { } private void folderBrowserDialog1_HelpRequest(object sender, EventArgs e) { } private void menuStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e) { } private void exitToolStripMenuItem_Click(object sender, EventArgs e) { Application.Exit(); } private void openToolStripMenuItem_Click(object sender, EventArgs e) 73 an { openFileDialog1.Filter = "Gcode: NC |*.nc;*.txt;|All file types|*.*"; if (openFileDialog1.ShowDialog() == DialogResult.OK) { richTextBox1.Text = File.ReadAllText(openFileDialog1.FileName); } } private void tabPage1_Click(object sender, EventArgs e) { } private void buttonlen_Click(object sender, EventArgs e) { string up = ""; Y = Y - 100; up += "X" + (X).ToString() + " Y" + (Y).ToString() + " "; send(up); } private void buttonxuong_Click(object sender, EventArgs e) { string down = ""; Y = Y + 100; down += "X" + (X).ToString() + " Y" + (Y).ToString() + " "; send(down); } private void button6_Click(object sender, EventArgs e) { on = true; } private void buttonstop_Click(object sender, EventArgs e) { on = false; } private void buttontrai_Click(object sender, EventArgs e) { string trai = ""; X = X - 100; trai += "X" + (X).ToString() + " Y" + (Y).ToString() + " "; send(trai); } private void buttonphai_Click(object sender, EventArgs e) { string phai = ""; X = X + 100; phai += "X" + (X).ToString() + " Y" + (Y).ToString() + " "; send(phai); } private void richTextBox1_TextChanged(object sender, EventArgs e) { } } } 74 an S an K L 0 ... iii an TÓM TẮT ĐỒ ÁN THIẾT KẾ VÀ CHẾ TẠO MÁY CẮT KHẮC LASER Máy cắt khắc laser thiết kế máy gia công NC, dùng để cắt khắc vẽ kỹ thuật tranh ảnh lên vật liệu .Thiết bị chế tạo cứng vững, ổn định,... nghiên cứu: ? ?Thiết kế chế tạo máy cắt khắc laser? ?? thực theo mục tiêu sau: Thiết kế chế tạo khí cho máy, theo cấu trục Xây dựng chương trình điều khiển máy cắt khắc theo vẽ thiết kế Máy thao... thông số máy cắt khắc laser, nguyên lý cách thức cắt khắc Tính tốn lựa chọn thiết bị tối ưu cho máy, thiết kế mơ hình hợp lý Thiết kế điều khiển giao diện hoạt động máy Kết luận, đánh giá đưa hướng