p, y( 6)p , z ( 6 )
3.4.5. Thuật toán giải bài toán ngược
Như đã trình bày ở phần phương pháp chung, nội dung của bài toán ngược được phát biểu như sau: cho trước cơ cấu tay máy tức là cho trước số
khâu, số khớp, loại khớp, kích thước động di của các khâu thành viên và cho trước vị trí và hướng của khâu tác động cuối trong hệ toạ độ Descartes được gọi là các biến vị trí), ta phải xác định vị trí của các khâu thành viên thông qua các toạ độ suy rộng q, (được gọi là các biến di chuyển của chúng sao cho khâu tác động cuối đạt được vị trí và hướng yêu cầu.
Phát biểu trên có thể mở rộng ra như sau: cho trước cơ cấu tay máy và yêu cầu dịch chuyển (hay quy luật chuyển động thể hiện sự thay đổi cả về vị
trí và hướng) của khâu tác động cuối được mô tả trong hệ toạ độ Descartes, ta phải xác định quy luật chuyển động của các khâu thành viên thông qua các biến đi chuyển (toạ độ suy rộng q = qi(t)).
Thông thường, ta vẫn sử dụng phương pháp chung đã nêu ở phần trên
để tìm lời giải; tuy nhiên, như đã phân tích ở phần I của chương này, có vô số
lời giải cho bài toán ngược. Thuật toán tìm lời giải của bài toán ngược trình bày dưới đây có thể dùng để tìm lời giải trong trường hợp tổng quát. Thuật toán gồm các bước sau:
Bước 1: Thiết lập phương trình ma trận chuyển đổi tổng quát cho tay máy. Nếu có yêu cầu cụ thể về vị trí và hướng (giá trị của các biến vị trí) của khâu tác động cuối thì thể hiện các thông số toạ độ cụ thể trong phương trình chuyển đổi tổng quát vừa được thiết lập (xem các phương trình tổng quát (3.63), (3.64) và (3.65) ở phần trên).
Bước 2: Chú ý xem xét các phần tử của các ma trận được thiết lập cụ
thể, sau đó đối chiếu với các phần tử của ma trận trong biểu thức tổng quát (3.65) để tìm kiếm theo thứ tự.
(a) Các phần tử chỉ chứa một biến di chuyển (một toạ độ suy rộng) để
có thể gán vào biểu thức có các giá trị của biến vị trí đã được cho trước theo yêu cầu cụ thể về vị trí và hướng cho trước nếu có.
(b) Các cặp phần tử tạo thành một biểu thức chỉ liên quan đến một biến di chuyển khi được tách ra hoặc thực hiện phép chia, gán giá trị nếu có được các số liệu cụ thể để thiết lập các hàm arctan nhằm xác định giá trị của biến di chuyển chưa biết theo biến vị trí đã biết từ mục (a).
(c) Tìm các phần tử hoặc nhóm các phần tử biến di chuyển chưa biết theo các phần tử biến vị trí đã xác định được ở mục (a) và (b) bằng phương pháp dồng nhất thức các biểu thức lượng giác.
Bước 3: Chọn một phần tử biến di chuyển đã xác định ở mục 2 để thếit lập phương trình với các phần tử biến vị trí và biến di chuyển có liên quan ở
các ma trận khác. Giải phương trình này để tìm biểu thức mô tả mối liên hệ
một biến di chuyển với tất cả các phần tử của ma trận chuyển đổi tổng quát. Bước 4: Lập lại bước 3 cho đến khi phép đồng nhất thức được thực hiện với tất cả các phần tử biến di chuyển tìm thấy ở bước 2.
Bước 5: Nếu có bất cứ một lời giải nào của biến di chuyển không hợp lý so với các điều kiện biên trong chuyển động của các khâu thành viên, không xác định hoặc lời giải thừa thì đặt lời giải đó sang một bên và tiếp tục tìm lời giải tốt hơn. Chú ý rằng, các lời giải xác định theo các phần tử biến di chuyển là các vectơ q1 có thể hiệu quả hơn các lời giải theo các thành phần của nó trên các trục toạ độ x, y, z, bởi vì việc tìm kiếm các phần tử thành phần của các vectơ này có thể kéo theo việcgiải ccs phương trình phức tạp trong khi vị trí mong muốn của khâu tác động cuối đã được cho trước.
Bước 6: Nếu có nhiều biến di chuyển là góc quay được xác định, ta nhân cả hai vế của phương trình (gồm các ma trận) với ma trận nghịch đảo của ma trận A cho phép khớp đầu tiên để tạo ra một phương trình ma trận mới tương đương với phương trình ma trận trước đó (xem biểu thức (*), trang 169 của phần phương pháp chung). Tiếp tục thực hiện tuần tự lại cách thức đã nêu trên cho đến khâu cuối cùng để thiết lập các phương trình ma trận có sự tham gia của các ma trận nghịch đảo.
Bước 7: Lặp lại bước hai đến bước sáu cho đến khi tìm được tất cả các biến di chuyển.
Bước 8: Nếu lời giải phù hợp cho biến di chuyển nào đó không thể tìm
được, hãy chọn lại một biến di chuyển khác mà ta đã loại bỏ ở bước 5 và lưu ý vùng nghiệm không tương thích.
Bước 9: Nếu không tìm thấy lời giải cho tay máy thì có thể tay máy không thể đạt tới vị trí và hướng (đặc biệt) đã nêu: ví dụ như ngoài vùng không gian hoạt động của tay máy hoặc cũng có thể lời giải đơn thuần về mặt lý thuyết mà trên thực tế với những ràng buộc về vạt lý, kết cấu đã hạn chế
chuyển động của tay máy.
Như đã phân tích ở phần trước, khi thực hiện thuật toán giải bài toán ngược, thường dẫn tới bài toán vô định. Nhằm khắc phục tình trạng này, để
tìm lời giải cho bài toán ngược, người ta thường đưa thêm các ràng buộc cho các biến vị trí, các biến di chuyển và chọn những nghiệm nào thoả mãn các ràng buộc trên. Một cách giải quyết khác là người ta đặt vấn đề tối ưu hoá theo một tiêu chuẩn nào đó; ví dụ, thời gian ngắn nhất, quãng đường đi ngắn nhất, chi phí cho di chuyển nhỏ nhất, v.v... Tất nhiên, lúc đó bài toán nghịch sẽ phức tạp và khó khăn hơn nhưng không có nghĩa là không giải được