Tính toán động học của robot dư dẫn động bằng phương pháp ma trận tựa nghịch đảo

MỤC LỤC

NGHỊCH ĐẢO MA TRẬN CHỮ NHẬT MA TRẬN TỰA NGHỊCH ĐẢO

    Đối với các Robot dư dẫn động có số lượng các tọa độ khớp lớn hơn số lượng các tọa độ không gian của khâu thao tác, do đó ma trận Jacobi là ma trận chữ nhật. Để giải quyết bài toán động học ngược của Robot dư dẫn động ta cần giải bài toán nghịch đảo ma trận Jacobi, từ đó chúng ta đưa ra định nghĩa ma trận tựa nghịch đảo. Các phương trình sau đây được sử dụng để định nghĩa ma trận nghịch đảo suy rộng, ma trận nghịch đảo suy rộng phản chiều và ma trận tựa nghịch đảo của ma trận A.

    Ma trận nghịch đảo suy rộng phản chiếu (Reflexive Generalized Inverse) của ma trận A∈IRmìn là ma trận X∈IRmìn thoả món các phương trình (2.4) và (2.5). Ma trận tựa nghịch đảo (Pseudoinverse) của ma trận A∈IRmìn là ma trận X∈IRmìn thoả món bốn phương trỡnh từ (2.4) đến (2.7). Chú ý: Ma trận tựa nghịch đảo còn gọi là ma trận Moore- Penrose để kỷ niệm hai nhà bác học đã nghiên cứu loại ma trận này.

    Dựa trên lý thuyết về nghịch đảo ma trận của Moore-Penrose và sơ đồ khối ta xây dựng thủ tục MP_Inverse() để tính ma trận tựa nghịch đảo của. Trong trường hợp hạng của ma trận A không đầy đủ, để tìm được ma trận tựa nghịch đảo của ma trận A ta sử dụng phương pháp khác đó là phương pháp Greville. Dựa trên lý thuyết về ma trận nghịch đảo của Greville và sơ đồ khối trên ta xây dựng thủ tục GRE_Inverse() để tính ma trận tựa nghịch đảo của.

    Phân tích A thành tích 2 ma trận Jm và ma trận C với ma trận Jmđược lấy từ m cột đầu của ma trận A (Jmlà ma trận vuông).Ta tiến hành kiểm tra nếu det(Jm)=0thì dừng lại và thoát khỏi chương trình còn nếu det(Jm)≠0 thì tiếp tục chương trình. - Dựa trên lý thuyết về nghịch đảo ma trận theo phương pháp phân tích cân xứng và sơ đồ khối ta xây dựng thủ tục KHALIL_Inverse() tính ma trận tựa nghịch đảo của Amìn, trỡnh bày ở cuối phụ lục. - Đối với phương pháp Greville: có thể tính toán tựa nghịch đảo ngay cả khi ma trận A có hạng không đầy đủ (tức là r<min(m,n)).

    Trong trường hợp hạng của ma trận A là đầy đủ thì phương pháp này có cùng kết quả với phương pháp Moore- Penrose. - Đối với phương pháp Khalil: cho phép xác định ma trận tựa nghịch đảo của ma trận A cỡ mìn với n> mvà hạng của ma trận A phải đầy đủ , nếu khụng thì phương pháp này cũng không thể áp dụng. Kết quả của phương pháp này cho ta m hàng đầu của ma trận A+giống với 2 phương pháp trên, còn n−m hàng sau thì có khác so với 2 phương pháp trên.

    TÍNH TOÁN ĐỘNG HỌC NGƯỢC ROBOT DƯ DẪN ĐỘNG BẰNG PHƯƠNG PHÁP MA TRẬN JACOBI

    GIẢI PHÁP ĐƯA RA CHO MÔ HÌNH ĐỘNG HỌC NGƯỢC

    Sau khi thiết lập được công thức (3.4) ta sử dụng phương pháp số để tính toán vị trí, vận tốc, gia tốc các khâu ở từng thời điểm. Như vậy, một cách giải quyết đơn giản bài toán động học ngược Robot dư dẫn động là chúng ta chỉ cần chọn hàm z thích hợp và sử dụng các phương pháp được đưa ra ở chương hai để tính ma trận tựa nghịch đảo của ma trận Jacobi là J+ sau đó thay vào công thức (3.4). Tuy nhiên các phương pháp đó cho ta kết quả chưa thật sự chính xác.

    Dưới đây chúng ta sẽ nêu ra 2 phương pháp tính trực tiếp để giải quyết bài toán mà không cần phải tính J+.

    PHƯƠNG PHÁP KHALIL GIẢI BÀI TOÁN ĐỘNG HỌC NGƯỢC ROBOT DƯ DẪN ĐỘNG

    Có một vấn đề phát sinh là khi ta lấy m cột trái của ma trận J rồi sau đó tính nghịch đảo ma trận Jm. Trong một số bài toán mà ma trận Jmlà ma trận suy biến tức là không thể tiến hành nghịch đảo được ma trận đó. Đồng thời trong quá trình đổi chỗ sẽ ghi lại việc đổi chỗ giữa cột 1 với cột bao nhiêu từ đó tương ứng với việc đổi chỗ vị trí giữa bậc tự do q.

    Thủ tục đổi chỗ giữa các cột của ma trận J được trình bày ở phần phụ lục. Tối ưu sử dụng để giải quyết phần vận tốc khớp cơ bản qp =Jm−1p , chúng ta cần cực tiểu nó. Dựa vào các bước giải bài toán động học ngược như trên ta xây dựng thủ tục INV_KHALIL() để tính toán vị trí và vận tốc các khâu của Robot dư dẫn động.

    PHƯƠNG PHÁP REDUCED GRADIENT (RG) GIẢI BÀI TOÁN ĐỘNG HỌC NGƯỢC RÔBỐT DƯ DẪN ĐỘNG

    Trong trường hợp ma trận Ja(q) có định thức bằng 0 thì cách giải quyết cũng được đưa ra như cách giải quyết đã được trình bày trong phương pháp Khalil. Dựa trên lý thuyết về phương pháp Reduced- Gradient, chúng ta xây dựng thủ tục INV_RG() để giải quyết bài toán động học ngược của Robot dư dẫn động (được trình bày ở phần phụ lục).

    GIỚI THIỆU VỀ MAPLE VÀ CÁCH SỬ DỤNG MAPLE ĐỂ GIẢI BÀI TOÁN ĐỘNG HỌC ROBOT DƯ DẪN ĐỘNG

    Từ dấu nhắc lệnh ta cú thể gừ bất kỳ lệnh nào của Maple 9.0 và sẽ nhận được kết quả một cách nhanh chóng. Do đó ta không phải nhớ hàng ngàn câu lệnh đó mà chỉ cần nhấn phím F1 hoặc sử dụng ?command để tìm hiểu cú pháp từng câu lệnh. - BangDH(“duong dan”): nhập thông số Denavit- Hartenberg với tham số truyền vào là đường dẫn tới File chứa thông số Robot cần tính.

    - InTranDH(A): tính ma trận chuyển DH với tham số nhập vào ma trận chứa thông số DH. - vitri(T): tính vị trí bàn kẹp với tham số truyền vào là ma trận chuyển DH T. - vantocgoc(T): tính vận tốc góc bàn kẹp với tham số truyền vào là ma trận chuyển DH.

    - giatocgoc(vg): tính gia tốc góc bàn kẹp với tham số truyền vào là vận tốc góc bàn kẹp. - quydao(p): vẽ quỹ đạo chuyển động của bàn kẹp với tham số truyền vào là vi trí bàn kẹp. Chương trình chính là thủ tục hàm main( ) vời tham số truyền vào là tên phương pháp được sử dụng để tính toán động học ngược Robot dư dẫn động.

    - JCB(p,q): tính ma trận Jacobi với tham số truyền vào là vị trí bàn kẹp p và ma trận tọa độ khớp q. - INV_Khalil(J,P,delta,t): giải bài toán động học ngược bằng phương pháp Khalil với tham số truyền vào là ma trận Jacobi J, quỹ đạo chuyển động của bàn kẹp P, bước và khoảng thời gian tính toán. - INV_RG(J,P,alpha,B,delta,t): giải bài toán động học ngược bằng phương pháp Reduced- Gradient với tham số truyền vào gồm có: ma trận Jacobi, quỹ đạo bàn kẹp, bước điều chỉnh, ma trận khối lượng quán tính, bước và khoảng thời gian tính toán.

    - MP_Inverse(A): đưa ra kết qủa ma trận tựa nghịch đảo của ma trận A bằng phương pháp Moore- Penrose, tham số truyền vào chính là ma trận A. - GRE_Inverse(A): đưa ra kết qủa ma trận tựa nghịch đảo của ma trận A bằng phương pháp Greville, tham số truyền vào chính là ma trận A. - KHALIL_Inverse(A): đưa ra kết qủa ma trận tựa nghịch đảo của ma trận A bằng phương pháp Khalil, tham số truyền vào chính là ma trận A.