2 LỜI MỞ ĐẦUTrong thời đại phát triển nhanh như ngày nay, máy móc dần thay thế con người trong các công việc mang tính thủ công, các doanh nghiệp cũng đầu tư về máy móc nhiều để hạn chế
Trang 1ĐẠI HỌC BÁCH KHOA HÀ NỘI
Trường Điện – Điện Tử
Giáo viên hướng dẫn: TS Dương Minh Đức
Sinh viên thực hiện: Nhóm 10
Trần Văn Vĩnh 20192177 Nguyễn Công Đức 20191760 Đoàn Minh Quang 20192040
Trang 22
LỜI MỞ ĐẦU
Trong thời đại phát triển nhanh như ngày nay, máy móc dần thay thế con người trong các công việc mang tính thủ công, các doanh nghiệp cũng đầu tư về máy móc nhiều để hạn chế về mặt số lượng nhân công, vì tính hiệu quả trong công việc của chúng cao hơn Một trong những ứng dụng phổ biến trong công nghiệp đấy là máy CNC, được sử dụng rất phổ biến để gia công các chi tiết phức tạp như hoa văn, họa tiết … hay có thể kể một số chức năng của máy CNC như: Được sử dụng để điều khiển các loại máy công cụ khác
Lập trình các thông số nhanh chóng giúp cho các máy hoạt động một cách
tự động
Bù được sai số cho sai số khi thực hiện gia công
Máy có chức năng chẩn sai hỗ sợ quá trình sửa chữa
Thông qua môn học này, chúng em đã có những kiến thức cơ bản về việc vận hành máy CNC, cũng như hiểu biết hơn cách vận hành của chúng và ứng dụng thực tế của chúng ra sao
Chúng em xin chân thành cảm ơn thầy Dương Minh Đức, nhờ những bài giảng và sự chỉ bảo nhiệt tình của thầy mà chúng em đã hiểu biết hơn về môn học này, sau đây là báo cáo về bài tập lớn của nhóm chúng em, báo cáo gồm có
5 phần, tương ứng với những yêu cầu mà thầy đưa ra để làm BTL này và phần cuối là code thực hiện trên Matlab của nhóm chúng em:
Chương 1: Thiết kế bộ điều khiển vị trí
Chương 2: Tăng giảm tốc trước khi nội suy
Chương 3: Thiết kế quỹ đạo chữ P và chữ C
Chương 4: Tăng giảm tốc sau khi nội suy
Chương 5: Phụ lục
Báo cáo BTL này của chúng em là sự cố gắng và nỗ lực của cả nhóm, về mặt kiến thức và hiểu biết của chúng em còn hạn chế nên báo cáo này sẽ còn nhiều sai sót, mong Thầy có nhận xét và đưa ra góp ý để chúng em sửa sai và tiến bộ hơn trong tương lai
Chúng em xin chân thành cảm ơn Thầy
Trang 3MỤC LỤC
Mục lục ……….……….……… 3
CHƯƠNG 1: THIẾT KẾ BỘ ĐIỀU KHIỂN VỊ TRÍ ……… 4
1.1 Lựa chọn hàm truyền……… 4
1.2 Thiết kế bộ điều khiển ……… 4
CHƯƠNG 2: TĂNG GIẢM TỐC TRƯỚC NỘI SUY – ADCBI ………… 6
2.1 Nội suy theo quỹ đạo đường thẳng ……… 7
2.1.1 Nội suy thô ……… 8
2.1.2 Nội suy tinh ……… 11
2.2 Nội suy theo quỹ đạo hình tròn ……… 13
2.2.1 Tăng tốc và giảm tốc ……… 13
2.2.2 Nội suy thô ……… 14
2.2.3 Nội suy tinh ……… 15
CHƯƠNG 3: NỘI SUY CHỮ ……… 18
3.1 Nội suy chữ P ……… 18
3.2 Nội suy chữ C ……… 20
CHƯƠNG 4: TĂNG GIẢM TỐC SAU NỘI SUY – ADCAI ……… 23
4.1 Nội suy đường thẳng ……… 23
4.1.1 Nội suy thô ……… 23
4.1.2 Tăng tốc, giảm tốc ……… 23
4.2 Nội suy đường tròn ……… 25
CHƯƠNG 5: PHỤ LỤC ……… 27
Bài 2: ADCBI ……… 27
2.1 Đường thẳng ……… 27
2.2 Đường tròn ……… 30
Bài 3: Nội suy chữ P và C ……… 32
3.1 Nội suy chữ P ……… 32
3.2 Nội suy chữ C ……… 38
Bài 4: ADCAI ……… 46
4.1 ADCAI đường thẳng ……… 46
4.2 Đường tròn ……… 49
Trang 4Do đối tượng đã có sẵn khâu tích phân đã triệt tiêu sai lệch tĩnh, nên ta chỉ cần sử dụng bộ điều khiển PD Ta có sơ đồ mô phỏng mạch điều khiển cho 2
trục:
Hình 1.1: Sơ đồ mô phỏng mạch điều khiển cho 2 trục
Trang 5Ta sử dụng công cụ PID Tuner của MATLAB để thiết kế bộ điều khiển PD Chọn theo mục tiêu là thời gian xác lập nhỏ nhất nhưng vẫn đảm bảo những yêu cầu đề bài đặt ra, ta chọn được thông số của bộ PD là:
Độ quá điều chỉnh 4.44% ≤ 5%
Sai lệch tĩnh: ~ 0 Thời gian xác lập: 0.186s
Udk X/Y =9.788V ≤ 10V Thoả mãn yêu cầu bài toán
Trang 66
CHƯƠNG 2: TĂNG GIẢM TỐC TRƯỚC NỘI SUY – ADCBI
Thực hiện tăng giảm tốc trước khi nội suy:
Hình 2.1: cấu trúc nội suy theo ADCBI
Trang 7Hình 2.2: Hai dạng profile tốc độ
- Chiều dài L
- Gia tốc tăng tốc cho phép A
- Gia tốc giảm tóc cho phép D
- Chu kỳ nội suy Tipo
- Chu kỳ điều khiển Tpos
- Tốc độ ăn dao F
Kiểm tra quỹ đạo là dạng nào bằng công thức
𝐹2𝐴+
𝐹2𝐷≥ 𝐿 2.1 Nội suy theo quỹ đạo đường thẳng
Profile tốc độ cho chuyển động thẳng
- Chiều dài L = 50 mm đi từ điểm A(20;30) đến điểm B (60;60)
- Gia tốc tăng tốc cho phép A= 4 mm/s2
- Gia tốc giảm tốc cho phép D = 4 mm/s2
- Chu kì nội suy Tipo = 5 ms
- Chu kỳ điều khiển Tpos = 1 ms
- Tốc độ ăn dao F = 10 mm/s
Tăng và giảm tốc:
𝐹2𝐴+
𝐹2𝐷= 25 < 50
Sử dụng profile tốc độ Normal Block Tăng tốc:
TA = = 2.5 (𝑠)
VA(i+1) = VA(i) + T A ipo
Trang 88
Tốc dộ không đổi:
Tc= − − = 2.5(𝑠)
VC(i) =F Giảm tốc:
TD = = 2.5 (𝑠)
VD(i+1) = VD(i) - Tipo D
Hình 2.3: Profile vận tốc 2.1.1 Nội suy thô
Trang 9Độ dịch chuyển nội suy:
Trang 1010 Hình 2.4: Quỹ đạo nội suy thô
Hình 2.5: ΔX nội suy thô
Trang 112.1.2 Nội suy tinh
Ta có chu kì nội suy (𝑇𝑖𝑝𝑜 = 5 𝑚𝑠) lớn hơn chu kì điều khiển (𝑇𝑝𝑜𝑠 = 1
𝑚𝑠) nên cần chia nhỏ các giá trị độ dịch chuyển Δ𝑋𝑖, Δ theo chu kì điều 𝑌𝑖khiển Tạo ra các đầu vào lượng đặt tại các thời điểm phát tín hiệu điều khiểnNội suy tuyến tính
𝑁 =𝑇
𝑇 = 5
𝑎 𝑗( ) = ( ), ≤ ≤ + 𝑖 𝑗 𝑖 𝑁 Với 𝑎(𝑗) là lượng đặt cho bộ điều khiển vị trí tại chu kỳ điều khiển thứ j; 𝑝(𝑖) là khoảng dịch chuyển tính được cho chu kì nội suy thứ i
Hình 2.6: Quỹ đạo nội suy tuyến tính
Trang 1212 Hình 2.7: ΔX nội suy tuyến tính
HÌnh 2.8: Đáp ứng trục X, trục Y
Trang 13Hình 2.9: So sánh quỹ đạo 2.2 Nội suy theo quỹ đạo hình tròn
Thông số lựa chọn
- Từ điểm A(40;5) đến điểm B(0;25) tâm đường tròn I(15;5)
- Gia tốc tăng tốc cho phép: A = 4 mm/s 2
- Gia tốc góc tăng tốc cho phép: 𝑎𝐴 = = 0.16𝑟𝑎𝑑/𝑠2
- Gia tốc giảm tốc cho phép: D = 4 mm/s2
- Gia tốc góc giảm tốc cho phép: 𝑎𝐷 = = 0.16 𝑟𝑎𝑑/𝑠2
- Chu kì nội suy: 𝑇𝑖𝑝𝑜 = 5 ms
- Chu kì điều khiển: 𝑇𝑝𝑜𝑠 = 1 ms
- Tốc độ ăn dao (tốc độ dài): F = 10 mm/s
- Vận tốc góc tối đa 𝜔𝑚𝑎𝑥 = = 0.4 𝑟𝑎𝑑 𝑠/
- Góc nội suy: 𝜑
- Nội suy ngược chiều kim đồng hồ
2.2.1 Tăng tốc và giảm tốc
Cung tròn cần di chuyển = arccos𝜑 (| |.|. | ) = 2.2143(𝑟𝑎𝑑)
Thuật toán Euler
Cos(𝛼) = 𝐴 = 1, sin(𝛼) = 𝐵 = 𝛼
Nội suy cung tròn 𝜑 = 𝜋 (𝑟𝑎𝑑), 1 bước dịch chuyển cơ bản (BLU) = 10-2 mm
𝐸𝑅 = 𝜑
𝛼 1 + 𝛼 − 1 𝑅
Trang 14𝑛 = 𝑐𝑒𝑖𝑙 𝜑
𝛼 = 6129 Đưa qua bộ lọc
Trang 15Hình 2.10: Độ dịch chuyển theo trục Y nội suy thô
Hình 2.11: Quỹ đạo nội suy thô 2.2.3 Nội suy tinh
Vì chu kỳ nội suy thô lớn hơn chu kỳ điều khiển nên sẽ có những chũ kỳ điều khiển vị trí không có lượng đặt Do đó ta thực hiện nội suy tinh để chia tạo giá trị đặt cho từng chu kỳ điều khiển vị trí nằm trong từng chu kỳ nội suy thô tương
tự với nội suy đường thẳng
Trang 1616
\
Nội suy tuyến tính
Hình 2.12: Độ dịch chuyển theo trục Y nội suy tuyến tính
Hình 2.13: Quỹ đạo nội suy tuyến tính
Trang 17Hình 2.14: So sánh nội suy thô, nội suy tinh
Hình 2.15: Đáp ứng trục X và Y
Trang 1818
CHƯƠNG 3: NỘI SUY CHỮ
3.1 Nội suy chữ P
Hình 3.1: Ý tưởng chữ P Nội suy quỹ đạo chữ P với các thông số:
o Nửa cung tròn AB với tọa độ A(20,60), B(20,100) Bán kính R = 20mm, tọa độ tâm O(20,80) Góc quay 𝜃 = 𝜋, quay ngược chiều kim đồng hồ
o Đoạn thẳng BC với tọa độ B(20,100), C(20,20) Độ dài 𝐿 = 80𝑚𝑚 Trình tự thực hiện:
o Thực hiện nội suy cung tròn AB theo chiều ngược chiều kim đồng hồ
o Thực hiện nội suy đường thẳng BC
Trang 19Kết quả mô phỏng:
Hình 3.2: Quỹ đạo chữ P
Hình 3.3: Vận tốc chữ P
Trang 21nA_BC=ceil(TA_BC/T_ipo); %Số chu kì nội suy tăng tốc
nC_BC=ceil(TC_BC/T_ipo); %Số chu kì nội suy tốc độ không đổi
nD_BC=ceil(TD_BC/T_ipo); %Số chu kì nội suy giảm tốc
Trang 23% Nội suy tuyến tính
%Khởi tạo giá trị chu kì điều khiển
Trang 25subplot(1,2,1); %subplot(m,n,p)chia hình hiện tại thành lưới m-by- nvà
tạo các trục ở vị trí được chỉ định bởi p
Trang 26%% Tăng giảm tốc sau khi nội suy - ADCAI
%Khai báo tham số
%% Nội suy đường thẳng - ADCAI
xA=20; yA=20; % điểm đầu
xB=60; yB=50; % điểm cuối
L=sqrt((xB-xA)^2+(yB-yA)^2); % chiều dài quãng đường
%% NỘI SUY THÔ
Trang 27title( '\DeltaX va \DeltaY sau tăng giảm tốc ' );
xlabel( 'Thời gian (s)' );
ylabel( '\Delta (mm)' );
legend( '\DeltaX' , '\DeltaY' )
% Quỹ đạo nội suy thô
figure(3); %Do thi quy dao noi suy tho + tang giam toc
Trang 2849
title( '\DeltaX nội suy thô sau tăng tốc ' );
xlabel( 'Thời gian (s)' );
title( '\DeltaX nội suy tuyến tính ' );
xlabel( 'Thời gian (s)' );
%{} Giả thiết bài toán
xA=10; yA=10; % điểm đầu
xB=50; yB=40; % điểm cuối
X_tho = zeros(1,n+1); X_tho(1)=xA;
Y_tho = zeros(1,n+1); Y_tho(1)=yA;
Trang 30title( '\DeltaX nội suy thô ' );
xlabel( 'Thời gian (s)' );
title( '\DeltaY nội suy thô ' );
xlabel( 'Thời gian (s)' );
title( '\DeltaX sau tăng giảm tốc ' );
xlabel( 'Thời gian (s)' );
title( '\DeltaY sau tăng giảm tốc' );
xlabel( 'Thời gian (s)' );
Y_ptp =[yA yB];
plot(X_ptp,Y_ptp, 'm o' ); %Diem dau noi diem cuoi%
Trang 31title( '\DeltaY nội suy tuyến tính' );
xlabel( 'Thời gian (s)' );
title( '\DeltaX nội suy trung bình ' );
xlabel( 'Thời gian (s)' );
%plot(X_ptp,Y_ptp,'m o',x,y,'-.m','LineWidth',2); %Diem dau noi diem
cuoi ; hold on;
title( 'Quy dao' );
xlabel( 'X (mm)' );
ylabel( 'Y (mm)' )