Song với sự nghiên cứu đó, đốitượng cánh tay robot 2 bậc tự do giúp con người di chuyển linh hoạt hơn.Nhóm chúng em quyết định thực hiện đề tài : “Mô hình hóa và nhận dạng hệcánh tay rob
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KĨ THUẬT TP.HCM
KHOA ĐIỆN – ĐIỆN TỬ
SVTH : Nguyễn Quang Trung 21151487
Nguyễn Hoàng Nghĩa 21151138
TP.HCM, ngày 20 tháng 05 năm 2023.
Trang 2Mục lục
CHƯƠNG 1 : ĐẶT VẤN ĐỀ 3
1.1 Tầm quan trọng của đề tài 3
1.2 Mục tiêu đề tài 3
1.3 Giới hạn đề tài 3
1.4 Phương pháp lý thuyết 4
1.5 Phương pháp thực hiện 4
1.6 Nội dung đề tài 4
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 6
2.1 Mô hình toán học 7
CHƯƠNG 3: THIẾT KẾ VÀ MÔ PHỎNG HỆ THỐNG 12
3.1 Khai báo và xây dựng mô hình nhận dạng 12
3.1.1 Khai báo thông số hệ cánh tay robot 2 bậc tự do 12
3.1.2 Thiết kế và mô phỏng quá trình nhận dạng trên Simulink 12
CHƯƠNG 4: KẾT LUẬN 25
CHƯƠNG 5: TÀI LIỆU THAM KHẢO 25
Trang 3Mục lục hình ảnh
Hình 2.1: Mô hình cánh tay robot 2 bậc tự do 7
Hình 2.2: Chuyển động của hệ trong tọa độ Oxy 8
Hình 2.3: Phân tích vector vận tốc trong hệ trục tọa độ Oxy 8
Hình 2.4: Chuyển động của hệ trong tọa độ Oxy 10
Hình 3.1: Mô hình hóa hệ cánh tay 2 bậc tự do 12
Hình 3.2: Khối matlab function và ngõ vào, ra mô tả hệ cánh tay robot 2 bậc tự do 13
Hình 3.3: Mô hình lấy mẫu trên Matlab Simulink 14
Hình 3 4: Tín hiệu nhiễu và đầu vào dạng sóng hình sin 14
Hình 3.5: Bảng thông số khối sin 15
Hình 3.6 Bảng thông số khối Random number 15
Hình 3.7: Khối thu thập dữ liệu 16
Hình 3.8: Scope hiển thị thông số nhận dạng bằng phương pháp bình phương cực tiểu 17
Hình 3.9: Tổng quan mô hình mô phỏng trên Matlab Simulink 18
Hình 3.10: Scope tín hiệu điều khiển momen khớp thứ nhất 19
Hình 3.11: Scope tín hiệu điều khiển momen khớp thứ hai 19
Hình 3 12: Dữ liệu sau khi chạy và đáp ứng của hệ với 4 thông số t1,t1_d,t2,t2_d 20
Hình 3.13: Scope hiển thị ma trận phi 21
Hình 3.14: Đáp ứng to1 của mô hình thực và to1 ước lượng tham số khi không có tác động của nhiễu 21
Hình 3.15: Đáp ứng to2 của mô hình thực và to2 ước lượng tham số khi không có tác động của nhiễu 22
Hình 3.16: Đáp ứng to1 của mô hình thực và to1 ước lượng tham số khi nhiễu bằng 1.5 23
Hình 3.17: Đáp ứng to2 của mô hình thực và to2 ước lượng tham số khi nhiễu bằng 1.5 23
Trang 4CHƯƠNG 1 : ĐẶT VẤN ĐỀ
1.1 Tầm quan trọng của đề tài.
Xu thế hiện nay của khoa học công nghệ ngày càng phát triển, việc nghiêncứu, chế tạo, phát minh các loại máy móc, robot công nghệ đang và phát triểnthành xu hướng hiện nay Cánh tay robot 2 bậc tự do là một đối tượng phituyến với các tham số bất định thường được sử dụng trong các phòng thínghiệm, nghiên cứu để kiểm chứng các giải thuật điều khiển thông minh Môhình cánh tay robot 2 bậc tự do là một trong các dự án có rất nhiều ứng dụngthực tiễn trong cuộc sống hiện nay, được ứng dụng trong giảng dạy và pháttriển thương mại giữa các nước trên thế giới Song với sự nghiên cứu đó, đốitượng cánh tay robot 2 bậc tự do giúp con người di chuyển linh hoạt hơn.Nhóm chúng em quyết định thực hiện đề tài : “Mô hình hóa và nhận dạng hệcánh tay robot 2 bậc tự do áp dụng phương pháp bình phương cực tiểu hồiquy tuyến tính ” với mong muốn tìm hiểu chính xác quá trình nhận dạng vàđánh giá tổng quan mô hình hóa áp dụng phương pháp bình phương cực tiểuhồi quy tuyến tính để xác định được các yếu tố bất thường trong hệ cánh tayrobot 2 bậc tự do
1.2 Mục tiêu đề tài.
Mục tiêu của đề tài là áp dụng được những kiến thức đã học trong môn học
mô hình hóa và nhận dạng hệ thống để thiết kế cũng như mô phỏng các môhình , nhận dạng được hệ cánh tay robot 2 bậc tự do, xác định được các thông
số hệ thống không thể đo đạc được Nhận dạng hệ thống giúp xác định cáctham số ẩn, nhiễu động Trong quá trình nhận dạng và mô phỏng, những mụctiêu của đề tài được đề ra như sau:
-Nghiên cứu và đưa ra cơ sở lý thuyết của phương pháp bình phương cực tiểu
áp dụng mô hình hồi qui tuyến tính
- Xác định các tham số của hệ cánh tay robot 2 bậc tự do
-Tính toán các tham số động lực học, xây dựng các hàm - không gian trạngthái (space- state) của hệ
- Mô hình hóa hệ cánh tay robot 2 bậc tự do
- Nhận dạng được các tham số của mô hình
1.3 Giới hạn đề tài.
Trang 5Trong nội dung môn học, đề tài: “ Mô hình hóa và nhận dạng hệ cánh tayrobot 2 bậc tự do áp dụng phương pháp bình phương cực tiểu hồi quy tuyếntính”, chủ yếu là muốn thực hiện nhiệm vụ là mô hình hóa và nhận dạng được
hệ cánh tay robot 2 bậc tự do và xác định được các yếu tố bất thường của hệ
để từ đó đưa ra đánh giá và kết luận một cách khách quan nhất Tuy nhiên ởđây với việc sử dụng phương pháp bình phương cực tiểu hồi quy tuyến tính làgiả định mối quan hệ tuyến tính giữa các biến đầu vào và đầu ra, mà hệ cánhtay robot 2 bậc tự do thường có tính phi tuyến do các yếu tố do ma sát, quántính, tải trọng thay đổi Do vậy mô hình hồi quy tuyến tính có thể không mô tảchính xác các hành vi của hệ thống, dẫn đến các sai sót trong điều khiển Mặtkhác hệ cánh tay robot 2 bậc tự do thường hoạt động trong môi trường cónhiễu, gây ảnh hưởng đến dữ liệu thu thập được Vậy nên nhóm chỉ xét hệtrong môi trường mô phỏng Matlab Simulink và mục đích đề tài là mô hìnhhóa và từ đó nhận dạng được hệ cánh tay robot 2 bậc tự do
1.4 Phương pháp lý thuyết.
Đề tài được tiếp cận dựa trên các phương pháp sau:
- Phương pháp khảo sát tài liệu, tìm hiểu các tài liệu liên quan đến đề tài như:phương trình vi phân của hệ cánh tay robot 2 bậc tự do, thông số vật lý củacánh tay robot 2 bậc tự do, , nguyên lý thiết kế cho các hệ thống trên simulink,tham khảo các phương pháp tiệm cận với phương pháp áp dụng trong báo cáonhất
- Sử dụng các nguồn thông tin internet, các bài báo nghiên cứu, đồ án tốtnghiệp, các tạp chí khoa học và giáo trình bộ môn tương tự trên thư viện số,các trang web khoa học kĩ thuật, tham khảo ý tưởng thiết kế từ các bài báokhoa học trong trường, sự hướng dẫn từ các anh chị và giảng viên có kinhnghiệm trong lĩnh vực này
1.5 Phương pháp thực hiện.
Đề tài được nhóm xây dựng thành các công đoạn thực hiện sau:
- Xây dựng thiết kế mô hình hồi quy tuyến tính dùng các phần tử hồi quy phituyến và các khối matlab function
- Thiết kế các thuật toán áp dụng cho hệ cánh tay robot 2 bậc tự do
- Đáp ứng ngõ ra được mô phỏng trên phần mềm matlab simulink phục vụcho công tác nghiên cứu
- Xây dựng môi trường mô phỏng trên Matlab Simulink
- Chạy mô phỏng của hệ để đánh giá được sự bất thường của hệ thống thông
Trang 6qua quá trình mô hình hóa và nhận dạng.
1.6 Nội dung đề tài.
- Trình bày cơ sở lý thuyết của hệ cánh tay robot 2 bậc tự do
- Mô hình hóa hệ thống cánh tay robot 2 bậc tự do
- Xác định thông số ban đầu của hệ thống
- Thiết kế và xây dựng quá trình nhận dạng và mô hình hóa hệ áp dụngphương pháp bình phương cực tiểu hồi quy tuyến tính
- Thiết lập môi trường mô phỏng Matlab Simulink
- Phân tích xác định kết quả mô phỏng và đưa ra kết luận, đánh giá cácyếu tố bất thường của hệ
- Trình bày tài liệu tham khảo
Trang 7CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
Cánh tay robot 2 bậc tự do ( 2 DOF ) là một hệ thống cơ điện mô phỏngchuyển động của cánh tay con người, với khả năng di chuyển theo 2 hướngđộc lập Cụ thể bậc tự do đề cập đến số lượng chuyển động độc lập mà hệthống có thể thực hiện được Cánh tay robot 2 bậc tự do hoạt động dựa trêncác lý thuyết sau:
Kinematics: Nghiên cứu chuyển động của các vật thể mà không xét đến lựctác động Kinematics được sử dụng để mô tả các chuyển động của các khớprobot, bao gồm vị trí, tốc độ, gia tốc
Dynamics: Nghiên cứu chuyển động của các vật thể chịu tác động của lực.Dynamics được sử dụng để mô tả lực tác động lên các khớp robot, momenquán tính và momen động cơ cần thiết để di chuyển robot
Trang 82.1 Mô hình toán học
Hình 2.1: Mô hình cánh tay robot 2 bậc tự do
Bảng 1: Một vài thông số đặc trưng hệ cánh tay robot 2 bậc tự do
Chuyển động của hệ cánh tay robot 2 bậc tự do trong tọa đô Oxy
Giả sử chuyển động của cánh tay robot 2 bậc tự do trong hệ tọa độ Oxy vớitrọng tâm của từng khâu được đặt ở cuối thanh và đặc trưng cho vật nặng m1
và m2
Do đó ta có được tọa độ vị trí của m1 và m2:
{m1 (x1, y1)
m2(x2, y2) (2.1)Trong đó:
Trang 9y1=L1S1 (2.3)
x2=x1+L2C12=L1C1+L2C12 (2.4)
y2=y1+L2S12=L1S1+L2S12(2.5)
Hình 2.2: Chuyển động của hệ trong tọa độ Oxy
Phân tích vector vận tốc trong hệ trục tọa độ Oxy
Hình 2.3: Phân tích vector vận tốc trong hệ trục tọa độ Oxy
Độ lớn của vector được xác định:
Trang 11 Các bước bình phương cực tiểu
Rút phương trình theo các hệ số để nhận dạng thông số hệ thống:
φ :là các biến để thuthập dự liệu
Hình 2.4: Chuyển động của hệ trong tọa độ Oxy
Trang 12Các thuật ngữ trong mô hình ARX:
+ Vector θ gọi là vector tham số hệ thống
+ Vector φ (t ) gọi là vector hồi qui ( do φ (t) gồm tín hiệu vào và tín hiệu ratrong quá khứ, các thành phần của vector φ (t) gọi là phần tử hồi qui
+ Bộ dự báo cáo dạng như trên được gọi là bộ dự báo dạng hồi qui tuyến tính
CHƯƠNG 3: THIẾT KẾ VÀ MÔ
PHỎNG HỆ THỐNG
3.1 Khai báo và xây dựng mô hình nhận dạng
- Đầu tiên để tiến hành xây dựng mô hình nhận dạng ta cần khai báo giá trịcủa các thông số vật lý trong hệ cánh tay robot 2 bậc tự do
3.1.1 Khai báo thông số hệ cánh tay robot 2 bậc tự do
Bảng 2:khai báo thông số vật lý của cánh tay máy 2 bậc tự do
Trang 13Ký hiệu Giá trị Đơn vị Ý Nghĩa
m1 23.902 Kg Khối lượng vật nặng 1
m2 1.285 Kg Khối lượng vật nặng 2
L1 0.45 m Chiều dài thanh 1
L2 0.45 m Chiểu dài thanh 2
g 9.81 m/s2 Gia tốc trọng trường
Hình 3.1: Mô hình hóa hệ cánh tay 2 bậc tự do
3.1.2 Thiết kế và mô phỏng quá trình nhận dạng trên Simulink
Chương trình matlab function phương trình vi phân mô tả hệ cánh tay robot 2 bậc tự do:
Trang 14Ngõ vào của hệ là tín hiệu điều khiển momen của 2 khớp, góc lệch
theta1,theta2 và đạo hàm bậc 1 của chúng.
Hình 3.2: Khối matlab function và ngõ vào, ra mô tả hệ cánh tay robot 2 bậc tự do
Trang 15Hình 3.3: Mô hình lấy mẫu trên Matlab Simulink
Nhiễu ban đầu bằng 0 và cài đặt các giá trị như hình bên dưới.
Hình 3 4: Tín hiệu nhiễu và đầu vào dạng sóng hình
sin
Trang 16Hình 3.5: Bảng thông số khối sin
Hình 3.6 Bảng thông số khối Random number
Trang 17Hình 3.7: Khối thu thập dữ liệu
Chương trình thuật toán để tính toán hệ số thực của mô hình và kiểm tra
Chương trình Matlab Function để tính toán hệ số nhận dạng bằng
phương pháp bình phương cực tiểu (LS).
function y = fcn(t1,t2,t1_d,t2_d,t1_dd,t2_dd)
Trang 19Hình 3.9: Tổng quan mô hình mô phỏng trên Matlab Simulink
Lưu ý: Khi thực hiện quá trình thu thập dữ liệu từ khối lấy mẫu mô hình hóa của hệ cánh tay robot 2 bậc tự do thì phải khai báo tên scope
và save format đúng.
Các bước thực hiện:
+ Bước 1: Chạy file matlab simulink chứa khối lẫy mẫu và khối thu thập với
sample time là 20 giây
+ Bước 2: Sau khi lấy mẫu xong thì thực hiện chạy thông số và các biến dữ liệu trong chương trình con nằm ngoài command windows
+ Bước 3: Chạy thuật toán hồi quy và các biến ma trận
+ Bước 4: Chạy thuật toán tìm hệ số và tính toán bằng phương pháp bình phương cực tiểu (LS)
+ Bước 5: Sau khi chạy trong thuật toán ở bước 4 thì run lại để cập nhật giá trị
Trang 20để so sánh hệ số nhận dạng và hệ số mô hình.
3.2 Kết quả mô phỏng
Hình 3.10: Scope tín hiệu điều khiển momen khớp thứ nhất
Hình 3.11: Scope tín hiệu điều khiển momen khớp thứ hai
Trang 21Trường hợp 1: Mô phỏng với nhiễu bằng 0
Hình 3 12: Dữ liệu sau khi chạy và đáp ứng của hệ với 4 thông số t1,t1_d,t2,t2_d
Trang 22Hình 3.13: Scope hiển thị ma trận phi
Hình 3.14: Đáp ứng to1 của mô hình thực và to1 ước lượng tham số khi không có tác
động của nhiễu
Trang 23Hình 3.15: Đáp ứng to2 của mô hình thực và to2 ước lượng tham số khi không có tác
động của nhiễu
- Hệ số tính toán khi không có nhiễu và hệ số thực của mô hình
Đánh giá kết quả sai số giữa hệ số tính toán bằng phương pháp bình
phương cực tiểu và thông số thực của hệ cánh tay robot 2 bậc tự do khi không có nhiễu tác động
=> Hệ số mô phỏng cho ra kết quả sát với thực nghiệm, sai số hầu như không
có, quá trình nhận dạng cho kết quả tối ưu
Trường hợp 2: Mô phỏng với nhiễu khác 0
Trang 24Hình 3.16: Đáp ứng to1 của mô hình thực và to1 ước lượng tham số khi nhiễu bằng 1.5
Hình 3.17: Đáp ứng to2 của mô hình thực và to2 ước lượng tham số khi nhiễu bằng 1.5
Trang 25- Hệ số tính toán khi có nhiễu bằng 1.5 và hệ số thực của mô hình
Đánh giá kết quả sai số giữa hệ số tính toán bằng phương pháp bình
phương cực tiểu và thông số thực của hệ cánh tay robot 2 bậc tự do khi có nhiễu tác động
=> Hệ số mô phỏng cho ra kết quả sát với thực nghiệm, sai số có nhưng không đáng kể và chênh lệch nhiều, nằm trong khoảng cho phép Quá trình nhận dạng cho kết quả ở mức chính xác
Kết quả các thông số sau khi nhận dạng
Trang 26- Mô hình hóa hệ cánh tay robot 2 bậc tự do ở cả 2 trường hợp có nhiễu vàkhông có nhiễu đều cho đáp ứng là như nhau, đáp ứng bám sát tín hiệu đầuvào sin
- Xét tới quá trình nhận dạng thông số mô hình thì có chút sai số xảy ra đốivới 2 trường hợp có nhiễu và không có nhiễu tác động Ở cả 2 trường hợp thìquan sát thấy to2 ( tín hiệu điều khiển momen ở khớp thứ 2 của cánh taymáy ) cho ra đáp ứng mịn và ổn định hơn, còn to1 ( tín hiệu điều khiểnmomen ở khớp thứ 1 của cánh tay máy ) thì bị ảnh hưởng bởi nhiễu rõ rệthơn, dao động xung quanh tín hiệu sin, có sai số nhỏ nhưng không đáng kể.Nhìn chung thì quá trình nhận dạng thông số mô hình thực và thông số đượctính toán bằng phương pháp bình phương cực tiểu cho ra kết quả chấp nhậnđược
CHƯƠNG 5: TÀI LIỆU THAM KHẢO
[1] Chap 11 Recursive Estimation Methods Lennart Ljung, Systemidentification Theory for the user – Second edition,
[2] Advanced Engineering Mathematics, 10th Editon
[3] Modeling and Simulation of Systems Using MATLAB and Simulink