Phần mềm meslab 2010B
Hình 4. 8. Giao diện Matlab 2010b Phần mềm Solidwosk 2012
Nguyễn Long Lâm 94 11BCTM.KH Tính toán chế độ cắt khi phay
Khi phay thô:
Theo thuật toán tính Dmax và Lmax ta có Dmax = 30.2mm và Lmax = 50mm Chọn phôi gia công là nhựa Teflon có kích thước L200mm 35mm, lượng dư gia công tinh để lại sau khi phay thô là 0.25mm
Chọn Dao phay ngón NaChi có kích thước: Dc = 4 mm, Ds = 8 mm, l = 12mm, L = 60mm, Z = 2
Chọn n = 1500 v/phút, chiều sâu cắt thô mỗi lát cắt t = 1mm f = 0.5mm/v
fz = 0.25mm/răng
Ta có tốc độ tiến dao Vf = fz*n*z = 0.25*1500*2 = 750 mm/phút Vận tốc cắt Vc = *d*n = 3.14*0.004*1500 = 18.84 m/phút phay tinh:
Sử dụng dao phay cầu NACHI với các thông số như sau: - R = 1.5 mm, D = 3 mm, l = 8mm, L = 70mm, z=2
Lượng dư gia công tinh còn lại là 0.25mm do đó ta chọn cắt tinh một lát với t=0.25mm
Chọn n = 2000 v/phút, chiều sâu cắt thô mỗi lát cắt t = 1mm f = 0.25mm/v
fz = 0.125mm/răng
Ta có tốc độ tiến dao Vf = fz*n*z = 0.125*2000*2 = 500 mm/phút Vận tốc cắt Vc = *d*n = 3.14*0.003*2000 = 18.84 m/phút
Nguyễn Long Lâm 95 11BCTM.KH
4.3 Chương trình gia công
4.3.1 Thuận toán gia công và Dao diện phần mềm gia công viết trên Matlab
Nguyễn Long Lâm 96 11BCTM.KH Hình 4.11. Giao diện phầm mềm điều khiển máy gia công
Nguyễn Long Lâm 97 11BCTM.KH
4.3.2 Kết quả gia công
Hình 4.12. Máy đang gia công sản phẩm
- Mô hình Máy gia công CNC về cơ bản đã gia công được biên dạng theo yêu cầu
4.4 Kết luận và kiến nghị
4.4.1 Kết luận
Với nội dung “Chế tạo mẫu bằng phay CNC sử dụng đo quét laser 3D” qua bốn chương của đề tài đã giải quyết được các vấn đề sau:
- Nghiên cứu tìm hiểu về các phương pháp chế tạo nhanh và phương pháp đo quét 3D laser.
- Tính toán, Xây dựng mô hình gia công phay từ dữ liệu đo quét 3D laser - Tính toán quỹ đạo gia công tập dữ liệu đo quét 3d laser
- Viết thuật toán gia công biên dạng chi tiết dự vào kết quả đo quét - Nghiên cứu tìm hiểu về phần lập trình trên Matlab
Nguyễn Long Lâm 98 11BCTM.KH - Chạy chương trình gia công biên dạng chi tiết trên mô hình máy gia công đã dựng tại phòng 307 C4-5 ĐHBKHN
4.4.2 Kiến nghị
Để đề tài được hoàn thiện hơn nữa tác giả xin đề xuất hướng nghiên cứu như sau:
- Nghiên cứu độ chính xác khi phay, các thông số bù dao gia công cụ thể - Nghiên cứu chế tạo thêm đồ gá để có thể gia công được nhiều chi tiết có hình dạng khác nhau
- Nghiên cứu, chế tạo hệ thông tưới nguội, hệ thống hứng phoi sau khi gia công
- Nghiên cứu đặt bàn máy sao cho không gây ra tiếng ồn, rung động phải nhất có thể để tăng độ chính xac.
Nguyễn Long Lâm 99 11BCTM.KH
TÀI LIỆU THAM KHẢO
1. Nguyễn Tuấn Anh, Cơ sở kỹ thuật CNC, Trung tâm đào tạo Việt - Đức,
Trường đại học sư phạm kỹ thuật – TP. Hồ Chí Minh
2. PGS.TS.Nguyễn Đăng Hoè – Giáo trình công nghệ tạo mẫu nhanh Trường
đại học Kỹ thuật Công nghiệp Thái Nguyên
3. GS.TS Trần Văn Địch, Công nghệ CNC, Nhà xuất bản khoa học và kỹ thuật - Hà Nội
4. Trần Văn Địch, Sổ tay công nghệ chế tạo máy - Nhà xuất bản khoa học và kỹ thuật - Hà Nội
5. Trần Văn Địch, Nguyễn Trọng Bình, Nguyễn Thế Đạt, Nguyễn Viết Tiếp, Trần Xuân Việt (2003), Công Nghệ Chế Tạo Máy, NXB Khoa học và Kỹ thuật 6. Phạm Thị Ngọc Yến, Ngô Hữu Tình, Lê Tấn Hùng, Nguyễn Thị Lan Hương, Cơ sở Matlap và ứng dụng, NXB Khoa học và kỹ thuật
7. Nguyễn Phùng Quang, Matlap & simulink dành cho kỹ sư điều khiển tự động, NXB Khoa học và kỹ thuật
8. Trần Đức Quý – Giáo trình máy đo 3 chiều, Hà Nội tháng 02/2002
9. Trần Thế San - Nguyễn Ngọc Phương (2004). Sổ tay lập trình CNC - NXB Đà Nẵng.
10. Advanced Modelling for CAD/CAM System. (Heidelberg 1991)
11. Fundamental of Dimensional Metrology 3RD ED (ADIvision of
International Thomson Limited)
12. Chana Raksiri, Manukid Parnichkun. Geometric and force errors compensation in a 3-axis CNC milling machine. International Journal of
Machine Tools and Manufacture 2004. 13. www.Meslab.org , www.Oto-hui.com
Nguyễn Long Lâm 100 11BCTM.KH
PHỤ LỤC
Code lập trình điều khiển chƣơng trình gia công
function varargout = PhanMemDieuKhienGiaCong(varargin) % PHANMEMDIEUKHIENGIACONG MATLAB code for PhanMemDieuKhienGiaCong.fig
% PHANMEMDIEUKHIENGIACONG, by itself, creates a new PHANMEMDIEUKHIENGIACONG or raises the existing
% singleton*. %
% H = PHANMEMDIEUKHIENGIACONG returns the handle to a new PHANMEMDIEUKHIENGIACONG or the handle to
% the existing singleton*. %
%
PHANMEMDIEUKHIENGIACONG('CALLBACK',hObject,eventData,handl es,...) calls the local
% function named CALLBACK in
PHANMEMDIEUKHIENGIACONG.M with the given input arguments. %
% PHANMEMDIEUKHIENGIACONG('Property','Value',...) creates a new PHANMEMDIEUKHIENGIACONG or raises the
% existing singleton*. Starting from the left, property value pairs are % applied to the GUI before PhanMemDieuKhienGiaCong_OpeningFcn gets called. An
% unrecognized property name or invalid value makes property application % stop. All inputs are passed to
PhanMemDieuKhienGiaCong_OpeningFcn via varargin. %
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
Nguyễn Long Lâm 101 11BCTM.KH % instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help PhanMemDieuKhienGiaCong
% Last Modified by GUIDE v2.5 23-Sep-2013 00:28:10 % Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @PhanMemDieuKhienGiaCong_OpeningFcn, ...
'gui_OutputFcn', @PhanMemDieuKhienGiaCong_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT
% --- Executes just before PhanMemDieuKhienGiaCong is made visible.
function PhanMemDieuKhienGiaCong_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn. % hObject handle to figure
Nguyễn Long Lâm 102 11BCTM.KH % eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to PhanMemDieuKhienGiaCong (see VARARGIN)
% Choose default command line output for PhanMemDieuKhienGiaCong handles.output = hObject;
% Update handles structure guidata(hObject, handles); cla(handles.axes1,'reset'); axis(handles.axes1,'off');
global com conect conect=0;
% UIWAIT makes PhanMemDieuKhienGiaCong wait for user response (see UIRESUME)
% uiwait(handles.figure1);
% --- Outputs from this function are returned to the command line.
function varargout = PhanMemDieuKhienGiaCong_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure
varargout{1} = handles.output;
% --- Executes on button press in DichYTrai.
function DichYTrai_Callback(hObject, eventdata, handles) % hObject handle to DichYTrai (see GCBO)
Nguyễn Long Lâm 103 11BCTM.KH % handles structure with handles and user data (see GUIDATA)
buocy=str2num(get(handles.BuocY,'string')); dich_chuyen(1,buocy*100);
% --- Executes on button press in DichXVao.
function DichXVao_Callback(hObject, eventdata, handles) % hObject handle to DichXVao (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) buocx=str2num(get(handles.BuocX,'string'));
dich_chuyen(4,buocx*100);
% --- Executes on button press in DichYPhai.
function DichYPhai_Callback(hObject, eventdata, handles) % hObject handle to DichYPhai (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) buocy=str2num(get(handles.BuocY,'string'));
dich_chuyen(2,buocy*100);
% --- Executes on button press in DichXRa.
function DichXRa_Callback(hObject, eventdata, handles) % hObject handle to DichXRa (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) buocx=str2num(get(handles.BuocX,'string'));
dich_chuyen(3,buocx*100);
% --- Executes on button press in QuayPhiNguoc.
function QuayPhiNguoc_Callback(hObject, eventdata, handles) % hObject handle to QuayPhiNguoc (see GCBO)
Nguyễn Long Lâm 104 11BCTM.KH % eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA) gocquay=str2num(get(handles.GocQuay,'string'));
dich_chuyen(6,gocquay*10);
% --- Executes on button press in QuayPhiThuan.
function QuayPhiThuan_Callback(hObject, eventdata, handles) % hObject handle to QuayPhiThuan (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) gocquay=str2num(get(handles.GocQuay,'string'));
dich_chuyen(5,gocquay*10);
function BuocX_Callback(hObject, eventdata, handles) % hObject handle to BuocX (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of BuocX as text
% str2double(get(hObject,'String')) returns contents of BuocX as a double % --- Executes during object creation, after setting all properties.
function BuocX_CreateFcn(hObject, eventdata, handles) % hObject handle to BuocX (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
Nguyễn Long Lâm 105 11BCTM.KH
function BuocY_Callback(hObject, eventdata, handles) % hObject handle to BuocY (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of BuocY as text
% str2double(get(hObject,'String')) returns contents of BuocY as a double % --- Executes during object creation, after setting all properties.
function BuocY_CreateFcn(hObject, eventdata, handles) % hObject handle to BuocY (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function GocQuay_Callback(hObject, eventdata, handles) % hObject handle to GocQuay (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of GocQuay as text
% str2double(get(hObject,'String')) returns contents of GocQuay as a double
Nguyễn Long Lâm 106 11BCTM.KH % --- Executes during object creation, after setting all properties.
function GocQuay_CreateFcn(hObject, eventdata, handles) % hObject handle to GocQuay (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% ---
function File_Callback(hObject, eventdata, handles) % hObject handle to File (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % ---
function Untitled_1_Callback(hObject, eventdata, handles) % hObject handle to Untitled_1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % ---
function tool_Callback(hObject, eventdata, handles) % hObject handle to tool (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % ---
Nguyễn Long Lâm 107 11BCTM.KH
function XLDLQuet_Callback(hObject, eventdata, handles) % hObject handle to XLDLQuet (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
global x y z [x,y,z]=xulybezier(x,y,z); axes(handles.axes1); cla(handles.axes1); surface(x,y,z); axis equal; % ---
function CheDoCat_Callback(hObject, eventdata, handles) % hObject handle to CheDoCat (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
global CSCat Z phi Rold
set(handles.figure1,'Visible','off'); chedo =setupchedocat(); set(handles.figure1,'Visible','on'); LDao=chedo{1} TDCat=chedo{2} CSCat=chedo{3} BTDao=chedo{4} switch LDao case 1 strLDao='Dao phay ngгn'; case 2
Nguyễn Long Lâm 108 11BCTM.KH strLDao='Dao phay cЗu';
case 3
strLDao='Dao phay ®iУm';
end set(handles.viewLDao,'String',strLDao); set(handles.viewTDCat,'String',TDCat); set(handles.viewCSC,'String',CSCat); set(handles.viewBTDao,'String',BTDao); CS=str2num(CSCat); [m,n]=size(Z); [p,q]=size(phi); BGoc=phi(2,1)-phi(1,1); BTienD=Z(2,2)-Z(1,1); CDTho=17.5 - Rold; SLCS=fix(CDTho/CS); n=SLCS*CS; set(handles.viewLDGCT,'String',n); set(handles.viewLDGCTinh,'String','0.25'); set(handles.viewDKP,'String','35'); set(handles.viewLDGCBT,'String','0'); % ---
function Com1_Callback(hObject, eventdata, handles) % hObject handle to Com1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
global com com='COM1';
Nguyễn Long Lâm 109 11BCTM.KH % ---
function Com2_Callback(hObject, eventdata, handles) % hObject handle to Com2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
global com com='COM2';
% ---
function Com3_Callback(hObject, eventdata, handles) % hObject handle to Com3 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
global com com='COM3';
% ---
function Com4_Callback(hObject, eventdata, handles) % hObject handle to Com4 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
global com com='COM4';
% ---
function Com5_Callback(hObject, eventdata, handles) % hObject handle to Com5 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
Nguyễn Long Lâm 110 11BCTM.KH com='COM5';
% ---