Nghiên cứu lựa chọn dụng cụ và đường dùng cụ trong sáng tạo hình bề mặt tự do trên máy phay CNC 3 trục Nghiên cứu lựa chọn dụng cụ và đường dùng cụ trong sáng tạo hình bề mặt tự do trên máy phay CNC 3 trục luận văn tốt nghiệp thạc sĩ
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI Hoàng Văn Quý NGHIÊN CỨU LỰA CHỌN DỤNG CỤ VÀ ĐƯỜNG DỤNG CỤ TRONG TẠO HÌNH BỀ MẶT TỰ DO TRÊN MÁY PHAY CNC TRỤC Ngành: Kỹ thuật Cơ khí Mã số: 9520103 LUẬN ÁN TIẾN SĨ KỸ THUẬT CƠ KHÍ NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS Bùi Ngọc Tuyên Hà Nội – 2019 LỜI CAM ĐOAN Tơi xin cam đoan cơng trình nghiên cứu cá nhân hướng dẫn giáo viên hướng dẫn nhà khoa học Tài liệu tham khảo luận án trích dẫn đầy đủ Các kết nghiên cứu luận án trung thực chưa tác giả khác công bố Người hướng dẫn khoa học Nghiên cứu sinh PGS TS Bùi Ngọc Tuyên Hoàng Văn Quý ii LỜI CẢM ƠN Luận án hoàn thành hướng dẫn tận tình PGS TS Bùi Ngọc Tuyên Tơi xin chuyển tới thầy kính trọng, lịng biết ơn sâu sắc định hướng, bảo, động viên, kiến thức quý báu thầy lĩnh vực mà nghiên cứu Tôi xin bày tỏ biết ơn sâu sắc tới tập thể giảng viên môn Gia công vật liệu Dụng cụ cơng nghiệp có chia sẻ q báu kiến thức, phương pháp nghiên cứu lời động viên tới NCS suốt tiến trình nghiên cứu đề tài Trong suốt trình giúp đỡ tận tình tạo Tơi xin gửi lời Viện Cơ khí tận tình nghiên cứu học tập, nghiên cứu luôn nhận thầy Viện Cơ khí Phịng Đào cảm ơn chân thành đến thầy cô giúp đỡ để tơi hồn thành q trình học tập Tơi xin gửi lời cảm ơn đến Ban Giám Hiệu trường Đại học Hải Phòng tạo điều kiện thuận lợi cho tơi q trình thực đề tài nghiên cứu Cuối cùng, xin gửi lời biết ơn tới gia đình, người thân ln bên cạnh suốt tồn thời gian thực nghiên cứu Hài nội, ngày tháng 12 năm 2019 Nghiên cứu sinh Hoàng Văn Quý iii MỤC LỤC DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT vii Danh mục ký hiệu vii Danh mục chữ viết tắt ix DANH MỤC CÁC BẢNG xi DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ xiii MỞ ĐẦU CHƯƠNG TỔNG QUAN VỀ GIA CÔNG MẶT TỰ DO 1.1 Mặt tự ứng dụng mặt tự 1.1.1 Giới thiệu 1.1.2 Lịch sử phát triển 1.1.3 Ứng dụng đường, mặt tự 1.1.3.1 Ứng dụng đường, mặt tự thiết kế 1.1.3.2 Ứng dụng đường, mặt tự gia công 10 1.2 Q trình gia cơng tạo hình bề mặt tự 13 1.3 Dụng cụ đường dụng cụ gia công mặt tự 15 1.3.1 Kiểu dụng cụ sử dụng gia công mặt tự 15 1.3.1.1 Dao phay ngón đầu phẳng 17 1.3.1.2 Dao phay ngón đầu cầu 17 1.3.1.3 Dao phay ngón đầu phẳng có góc lượn 17 1.3.1.4 Dao phay ngón thân 18 1.3.2 Đường dụng cụ gia công mặt tự 21 1.3.2.1 Khái niệm 21 1.3.2.2 Các kiểu đường dụng cụ 21 1.3.2.3 Các thông số đường dụng cụ 27 1.4 Phương pháp tính tốn sinh đường dụng cụ 29 1.4.1 Phương pháp sinh đường dụng cụ sở điểm tiếp xúc (CC-Based) [29] 29 1.4.2 Phương pháp sinh đường dụng cụ sở điểm định vị dụng cụ (CL-Based) [29] 30 1.5 Tổng quan tình hình nghiên cứu gia cơng mặt tự máy phay CNC 31 1.5.1 Tổng quan tình hình nghiên cứu nước 31 1.5.2 Tổng quan tình hình nghiên cứu giới 33 iv 1.6 Đánh giá tình hình nghiên cứu phương pháp gia cơng mặt tự đề xuất hướng nghiên cứu luận án 35 1.7 Kết luận 37 CHƯƠNG PHƯƠNG PHÁP BIỂU DIỄN ĐƯỜNG VÀ MẶT TỰ DO TRONG CÁC HỆ THỐNG CAD/CAM 39 2.1 Biểu diễn đường tự hệ thống CAD/CAM 39 2.1.1 Các phương pháp biểu diễn toán đường tổng quát 39 2.1.2 Biểu diễn đường cong Bezier 40 2.1.3 Biểu diễn đường cong B-spline 45 2.2 Biểu diễn mặt tự hệ thống CAD/CAM 47 2.2.1 Phương pháp biểu diễn mặt dạng mơ hình đa thức dạng tham số 49 2.2.1.1 Mô hình tốn biểu diễn mảnh mặt Ferguson 49 2.2.1.2 Mơ hình mảnh mặt Bezier 50 2.2.2 Phương pháp biểu diễn mặt dạng mơ hình nội suy ranh giới mảnh mặt 51 2.2.2.1 Biểu diễn mặt tự mô hình mặt kẻ 51 2.2.2.2 Biểu diễn mặt tự mơ hình mặt Coon 52 2.2.3 Phương pháp biểu diễn mặt dạng mơ hình mảnh qt 52 2.2.3.1 Mảnh mặt trượt tịnh tiến 52 2.2.3.2 Mảnh mặt quay 53 2.2.4 Phương pháp biểu diễn mặt dạng tứ giác 53 2.2.5 Mảnh mặt B - spline 54 2.2.6 Mặt NURBS 55 2.2.6.1 Biểu diễn toán học bề mặt NURBS 55 2.3.6.2 Đạo hàm mặt NURBS 56 2.2.7 Công cụ mô số mặt sang dạng mặt tự 57 2.3.8 Cấu trúc tệp (file) biểu diễn mặt theo định dạng IGES CAD/CAM 59 2.2.8.1 Cấu trúc file IGES 59 2.2.8.2 Biểu diễn số đối tượng theo định dạng file IGES 65 2.3 Kết luận 67 CHƯƠNG XÂY DỰNG PHƯƠNG PHÁP LỰA CHỌN DỤNG CỤ TRONG GIA CƠNG TẠO HÌNH BỀ MẶT TỰ DO TRÊN MÁY PHAY CNC TRỤC 69 3.1 Giới thiệu 69 v 3.2 Ảnh hưởng dụng cụ tạo hình bề mặt máy phay CNC 70 3.3 Xây dựng phương án lựa chọn dụng cụ cắt hợp lý để gia cơng tạo hình mặt tự 74 3.3.1 Phân vùng mặt tự 75 3.3.2 Lựa chọn dụng cụ hợp lý tương ứng với phân vùng 79 3.3.3 Xác định ranh giới tương ứng với phân vùng cục 81 3.3.4 Thí nghiệm đánh giá kết 88 3.4 Đề xuất phương án gia công với bề mặt phân vùng: 99 3.4 Kết luận 101 CHƯƠNG XÂY DỰNG PHƯƠNG PHÁP LỰA CHỌN ĐƯỜNG DỤNG CỤ TRONG GIA CƠNG TẠO HÌNH BỀ MẶT TỰ DO TRÊN MÁY PHAY CNC TRỤC 103 4.1 Xây dựng thực nghiệm Taguchi đánh giá ảnh hưởng đường dụng cụ tới chất lượng tạo hình bề mặt tự 105 4.1 Phương pháp Taguchi 105 4.1.2 Xây dựng thực nghiệm 107 4.1.2.1 Điều kiện thực nghiệm 107 4.1.2.2 Lựa chọn thông số đầu vào xây dựng mảng trực giao Taguchi 109 4.2 Đề xuất phương án xác định đường dụng cụ 114 4.2.1 Điều kiện biên 114 4.2.2 Tính tốn thơng số đường dụng cụ 115 4.2.2.1 Tính tốn bước tiến ngang (St).(Bổ đề 1) 116 4.2.2.2 Xác định đường dẫn hợp lý đảm bảo Sc ≤ [Sc] (Bổ đề 2) 118 4.2.3 Tính tốn sai số xấp xỉ 123 4.3 Mô thực nghiệm đánh giá kết 126 4.4 Kết luận 129 KẾT LUẬN VÀ KIẾN NGHỊ 130 DANH MỤC TÀI LIỆU THAM KHẢO 132 PHỤ LỤC vi DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT Danh mục ký hiệu STT Ký hiệu C(u) u v Bi, n(u) Ri, n(u) Pi x y z 10 Pi, j 11 U 12 Wi, j 13 14 i, j 15 Sc 16 17 18 19 20 21 22 23 K H u(t) v(t) t D M Giải nghĩa Phương trình biểu diễn đường cong tự với biến u Tham số đường cong tự theo phương u (0 ≤ u ≤ 1) Tham số đường cong tự theo phương v (0 ≤ v ≤ 1) Đa thức Bernstein với biến u Hàm vô hướng sở cho đường cong tự Điểm điều khiển thứ i đường cong mặt cong tự Biến số hàm số theo phương Ox hệ tọa độ Descartes Biến số hàm số theo phương Oy hệ tọa độ Descartes Biến số hàm số theo phương Oz hệ tọa độ Descartes Điểm điều khiển nút (i, j) lưới điểm điều khiển mặt tự Véc tơ nút Trọng số tương ứng điểm điều khiển Pi, j mặt tự Chỉ số Bán kính cong scallop height (chiều cao lượng kim loại để lại sau bước dịch dao ngang) Độ cong Độ cong Gauss Đường cong tham số t theo phương u Đường cong tham số t theo phương v Tham số t đường cong Ma trận thứ hai đường cong Ma trận chuyển Toán tử sai phân vii 24 25 Q C Ma trận hệ số góc Ma trận hệ số Ferguson 26 d du Phép tính đạo hàm với biến u 27 28 29 30 31 32 33 34 m mm µm S(u,v) 35 Tn 36 37 38 39 G Si Sc Tpi T n TT St Đơn vị đo độ dài: mét Đơn vị đo độ dài: mi li mét (10-3m) Đơn vị đo độ dài: micro mét (10-6m) Mặt tự biểu diễn không gian tham số Vector hướng dụng cụ Vector pháp tuyến mặt S(u,v) Mặt phẳng tiếp tuyến mặt cong S(u,v) Khoảng dịch dao ngang (Step over size) Mặt phẳng tạo vector hướng dao vector pháp tuyến Giao tuyến mặt phẳng Tn TT Điểm i mặt S(u,v) Đường cong giao mặt Tn S(u,v) Đường dụng cụ thứ i viii Danh mục chữ viết tắt STT Viết tắt Viết đầy đủ CAD CAM CAGD CIM CAE CAPP Computer Aided Production Planning NC Numerical Control CNC Computer Numerical Control 10 NURBS Non-uniform rational Bspline 11 B-spline B-spline 12 2D Two Dimension 13 3D Three Dimension 14 5D Five Dimension 15 16 17 CC point CL point Computer Aided Design Computer Aided Manufacturing Computer Aided Geometry Design Computer Intergrated Manufacturing Computer Aided Engineering Cutting Contact point Cutting Location point CC path Cutting contact path ix Giải nghĩa Thiết kế có hỗ trợ máy tính Sản xuất có hỗ trợ máy tính Thiết kế hình học có hỗ trợ máy tính Sản xuất có tích hợp máy tính Ứng dụng máy tính phân tích Lập kế hoạch chế tạo sản phẩm có trợ giúp máy tính Điều khiển số Điều khiển số máy tính (chỉ hệ thống khí gia cơng tự động Mặt đường Bspline hữu tỉ không đồng Đường cong tự Bspline Không gian phẳng (dùng máy trục) Không gian ba chiều (dùng máy trục) Không gian năm chiều (dùng máy trục) Điểm cắt (điểm tạo hình) Điểm định vị dụng cụ Đường tập hợp (quỹ đạo) điểm tạo hình 18 CL path Cutting Location path 19 DP DPi, i=1, Data Points 20 set of data points x Đường tập hợp (quỹ đạo) điểm định vị dụng cụ Tập điểm liệu tập liệu điểm thành phần 'Style','text'); % Truc cua duong cong AMB_Data.axis(1)=subplot('position',[.05,.07,.9,.77]); axis([-.01,1.01,-.01,1.01]); axis manual; axis on hold on; % Khung gioi han cua chuong trinh fill([-.1,1.1,1.1,-.1],[-.1,-.1,1.1,1.1],[1,1,1],'edgecolor','none'); plot([0,1,1,0,0],[0,0,1,1,0],'-k'); %%% Hàm Callback %%% function restart(varargin) global AMB_Data; AMB_Data.c=zeros(0,2); AMB_Data.movetype=0; AMB_Data.moveind=0; for k=AMB_Data.handles if k,delete(k);end end AMB_Data.handles=[0,0]; set(AMB_Data.uicontrols(1),'String','Bac: -1'); % Chèn, xóa, chỉnh sửa điểm điều khiển function myDownfct(varargin) global AMB_Data; if strcmp(get(gcf,'SelectionType'),'normal') % Chèn thêm điểm điều khiển, nâng bậc đường cong p=get(AMB_Data.axis(1),'CurrentPoint'); p=p(1,1:2); if min(p) >= & max(p) = & max(p) = & max(p) = & max(p) 0 % Ve cap nhat them da giac dieu khien if AMB_Data.handles(1)==0 AMB_Data.handles(1)=plot(AMB_Data.c(:,1),AMB_Data.c(:,2),'-ok'); else set(AMB_Data.handles(1),'Xdata',AMB_Data.c(:,1)); set(AMB_Data.handles(1),'Ydata',AMB_Data.c(:,2)); end end if n>1 % ve cap nhat them duong t=linspace(0,1,panz); s=casteljau(AMB_Data.c,t'); if AMB_Data.handles(2)==0 AMB_Data.handles(2)=plot(s(:,1),s(:,2),'-b','Linewidth',2); else set(AMB_Data.handles(2),'Xdata',s(:,1)); set(AMB_Data.handles(2),'Ydata',s(:,2)); end end %%% Ham cua chuong trinh AMB_program %%% function p = casteljau(c,t) % sư dụng thuật toán Pierre De Casteljau % p = casteljau(c,t) % points p(j,:) Duong cong Bezier voi tap diem dieu khien c(k,:) % Cho thong so t(j) % Chuyen doi sang dang vecto cot (Khi can thiet) t = t(:); [np1,dim] = size(c); % Tinh de quy cua De casteljau if np1 == p = (1+0*t)*c; else p0 = casteljau(c(1:end-1,:),t); p1 = casteljau(c(2:end,:),t); t = repmat(t,1,dim); p = (1-t).*p0 + t.*p1; end Phụ lục 2.2 Biểu diễn mặt phẳng CATIA V5R20 theo định dạng IGES START RECORD GO HERE S 1H,,1H;,5HPart1,15HPlanarCATIA.igs,44HDASSAULT SYSTEMES CATIA V5 R20 - wG ww.3ds.com,27HCATIA Version Release 20 ,32,75,6,75,15,5HPart1,1.0,2,2HG MM,1000,1.0,15H20171104.110143,0.001,10000.0,5HHVQuy,8HHVQuy-PC,11,0,15HG 20171104.110143,; G 406 0 0 000010201D 406 0 15 0D 128 0 0 001010001D 128 0 13 0D 126 15 0 0 001010001D 126 0 0D 126 20 0 0 001010001D 126 0 0D 126 25 0 0 001010001D 126 0 0D 126 30 0 0 001010001D 126 0 0D 102 35 0 0 001010001D 102 0 0D 110 36 0 0 001010501D 110 0 0D 1 4 10 11 12 13 14 15 16 110 37 0 0 001010501D 110 0 0D 110 38 0 0 001010501D 110 0 0D 110 39 0 0 001010501D 110 0 0D 102 40 0 0 001010501D 102 0 0D 142 41 0 0 001010001D 142 0 0D 144 42 0 10000 0 000000000D 144 0 0D 406,1,9HSurface.1,0,0; 1P 128,3,3,3,3,0,0,1,0,0,0.0,0.0,0.0,0.0,197.8293762,197.8293762, 3P 197.8293762,197.8293762,0.0,0.0,0.0,0.0,131.7123485,131.7123485, 3P 131.7123485,131.7123485,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0, 3P 1.0,1.0,1.0,1.0,1.0,1.0,-7.645088975,5.987486329,0.0, 3P -73.58821438,5.987486329,0.0,-139.5313398,5.987486329,0.0, 3P -205.4744652,5.987486329,0.0,-7.645088975,49.89160251,0.0, 3P -73.58821438,49.89160251,0.0,-139.5313398,49.89160251,0.0, 3P -205.4744652,49.89160251,0.0,-7.645088975,93.79571869,0.0, 3P -73.58821438,93.79571869,0.0,-139.5313398,93.79571869,0.0, 3P -205.4744652,93.79571869,0.0,-7.645088975,137.6998349,0.0, 3P -73.58821438,137.6998349,0.0,-139.5313398,137.6998349,0.0, 3P -205.4744652,137.6998349,0.0,0.0,197.8293762,0.0,131.7123485,0, 3P 0; 3P 126,3,3,0,0,1,0,0.0,0.0,0.0,0.0,197.8293762,197.8293762, 5P 197.8293762,197.8293762,1.0,1.0,1.0,1.0,-7.645088975, 5P 5.987486329,0.0,-73.58821438,5.987486329,0.0,-139.5313398, 5P 5.987486329,0.0,-205.4744652,5.987486329,0.0,0.0,197.8293762, 5P 0.0,0.0,0.0,0,0; 5P 126,3,3,0,0,1,0,0.0,0.0,0.0,0.0,131.7123485,131.7123485, 7P 131.7123485,131.7123485,1.0,1.0,1.0,1.0,-205.4744652, 7P 5.987486329,0.0,-205.4744652,49.89160251,0.0,-205.4744652, 7P 93.79571869,0.0,-205.4744652,137.6998349,0.0,0.0,131.7123485, 7P 0.0,0.0,0.0,0,0; 7P 126,3,3,0,0,1,0,0.0,0.0,0.0,0.0,197.8293762,197.8293762, 9P 197.8293762,197.8293762,1.0,1.0,1.0,1.0,-205.4744652, 9P 137.6998349,0.0,-139.5313398,137.6998349,0.0,-73.58821438, 9P 137.6998349,0.0,-7.645088975,137.6998349,0.0,0.0,197.8293762, 9P 0.0,0.0,0.0,0,0; 9P 126,3,3,0,0,1,0,0.0,0.0,0.0,0.0,131.7123485,131.7123485, 11P 131.7123485,131.7123485,1.0,1.0,1.0,1.0,-7.645088975, 11P 137.6998349,0.0,-7.645088975,93.79571869,0.0,-7.645088975, 11P 49.89160251,0.0,-7.645088975,5.987486329,0.0,0.0,131.7123485, 11P 0.0,0.0,0.0,0,0; 11P 102,4,5,7,9,11,0,0; 13P 110,0.0,0.0,0.0,197.8293762,0.0,0.0,0,0; 15P 110,197.8293762,0.0,0.0,197.8293762,131.7123485,0.0,0,0; 17P 110,197.8293762,131.7123485,0.0,0.0,131.7123485,0.0,0,0; 19P 110,0.0,131.7123485,0.0,0.0,0.0,0.0,0,0; 21P 102,4,15,17,19,21,0,0; 23P 142,0,3,23,13,1,0,0; 25P 144,3,1,0,25,0,1,1; 27P S 1G 4D 28P 42 T 17 18 19 20 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 Phụ lục 2.3 Cấu trúc mặt trụ tâm O(0, 0), bán kính R=30, chiều cao h = 20 theo định dạng IGES CATIA V5R20 START RECORD GO HERE S 1H,,1H;,,16HCATIA MatTru.igs,44HDASSAULT SYSTEMES CATIA V5 R20 - www.3dsG com,27HCATIA Version Release 20 ,32,75,6,75,15,,1.0,2,2HMM,1000,1.0, G 15H20171104.142321,0.001,10000.0,5HHVQuy,8HHVQuy-PC,11,0,15H20171104.142G 321,; G 124 0 0 001020201D 124 0 0D 100 0 0 001010001D 1 100 0D 124 0 0 001020201D 124 0 0D 100 0 0 001010001D 100 0D 102 0 10000 0 000000000D 102 Sketch.1 0D 406 0 0 000010201D 406 0 15 0D 110 0 0 001010001D 110 0 0D 110 0 0 001010001D 110 0 0D 120 0 0 001010001D 120 0 0D 110 10 0 0 001010001D 110 0 0D 124 11 0 0 001020201D 124 0 0D 100 12 0 0 21 001010001D 100 0 0D 110 13 0 0 001010001D 110 0 0D 124 14 0 0 001020201D 124 0 0D 100 15 0 0 27 001010001D 100 0 0D 102 16 0 0 001010001D 102 0 0D 142 17 0 0 001010001D 142 0 0D 144 18 0 10000 0 000000000D 144 0 0D 110 19 0 0 001010001D 110 0 0D 110 20 0 0 001010001D 110 0 0D 120 21 0 0 001010001D 120 0 0D 110 22 0 0 001010001D 110 0 0D 124 23 0 0 001020201D 124 0 0D 100 24 0 0 45 001010001D 100 0 0D 110 25 0 0 001010001D 110 0 0D 124 26 0 0 001020201D 124 0 0D 100 27 0 0 51 001010001D 100 0 0D 102 28 0 0 001010001D 102 0 0D 142 29 0 0 001010001D 142 0 0D 144 30 0 10000 0 000000000D 144 0 0D 124,1.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,0.0,1.0,0.0,0,0; 1P 100,0.0,0.0,0.0,30.0,0.0,-30.0,0.0,0,0; 3P 124,-1.0,0.0,0.0,0.0,0.0,-1.0,0.0,0.0,0.0,0.0,1.0,0.0,0,0; 5P 100,0.0,0.0,0.0,30.0,0.0,-30.0,0.0,0,0; 7P 102,2,3,7,0,0; 9P 406,1,9HExtrude.1,0,0; 11P 110,0.0,0.0,10.0,0.0,0.0,11.0,0,0; 13P 110,30.0,0.0,0.0,30.0,0.0,20.0,0,0; 15P 120,13,15,0.0,6.283185307,0,0; 17P 110,30.0,0.0,20.0,30.0,0.0,0.0,0,0; 19P 124,1.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,0.0,1.0,0.0,0,0; 21P 6 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 10 11 100,0.0,0.0,0.0,30.0,0.0,-30.0,0.0,0,0; 110,-30.0,0.0,0.0,-30.0,0.0,20.0,0,0; 124,-1.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,0.0,-1.0,20.0,0,0; 100,0.0,0.0,0.0,30.0,0.0,-30.0,0.0,0,0; 102,4,19,23,25,29,0,0; 142,0,17,0,31,2,0,0; 144,17,1,0,33,0,1,11; 110,0.0,0.0,10.0,0.0,0.0,11.0,0,0; 110,-30.0,0.0,0.0,-30.0,0.0,20.0,0,0; 120,37,39,0.0,6.283185307,0,0; 110,-30.0,0.0,20.0,-30.0,0.0,0.0,0,0; 124,-1.0,0.0,0.0,0.0,0.0,-1.0,0.0,0.0,0.0,0.0,1.0,0.0,0,0; 100,0.0,0.0,0.0,30.0,0.0,-30.0,0.0,0,0; 110,30.0,0.0,0.0,30.0,0.0,20.0,0,0; 124,1.0,0.0,0.0,0.0,0.0,-1.0,0.0,0.0,0.0,0.0,-1.0,20.0,0,0; 100,0.0,0.0,0.0,30.0,0.0,-30.0,0.0,0,0; 102,4,43,47,49,53,0,0; 142,0,41,0,55,2,0,0; 144,41,1,0,57,0,1,11; S 1G 4D 60P 30 23P 25P 27P 29P 31P 33P 35P 37P 39P 41P 43P 45P 47P 49P 51P 53P 55P 57P 59P T 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Phụ lục 3.1 Hàm vector nut % Ham tinh toan vecto nut function xi=KnotVector(k,N) xi(1:k)=0; for i=k+1:N xi(i)=(i-k)/(N-k+1); end xi(N+1:N+k)=1; Phụ lục 3.2 Hàm Ma trận sở % ham tao ma tran co so function MN = MatrixBasisFunction(N,knot,t,xknot) for i=1:length(t) for j=1:N MN(i,j)=BasisFunction(j,knot,t(i),xknot); end end Phụ lục 3.3 Hàm độ cong lớn, nhỏ vùng cục %Do cong lon nhat, nho nhat vung cuc bo function[lcPmax,lcPmin]=MaxMinCurvatureLocalSurface(M,gPmax,gPmin) Vmax=[]; Vmin=[]; for i=1:size(M,1) for j=1:size(M,2) if(M(i,j)~=0) Vmax=[Vmax,gPmax(i,j)]; Vmin=[Vmin,gPmin(i,j)]; end end end lcPmax=max(Vmax); lcPmin=min(Vmin); Phụ lục 3.4 Tính tốn điểm bề mặt % Tinh toan diem be mat bang cach su dung mang diem dieu khien P so w SurfacePoint (n, p, U, m, q, V,w, u, v, S) {/* Tinh toan diem tren mat */ /* Input: n,p,U,m,q,V,w,u,v */ /* Output: S */} uspan = FindSpan(n,p,u,U); BasicFuns (uspan,u,p,U,Nu); vspan = FindSpan(m,q,v,V); BasicFuns (vspan,v,q,V,Nv); for (l=0, l