Làm cách nào để chuyển đổi các tham số và góc liên kết (trong động học) thành ma trận biến đổi trong logic lập trình?


10

Tôi đang làm nghiên cứu về robot như một sinh viên, và tôi hiểu phần lớn toán học khái niệm; tuy nhiên, khi thực sự triển khai mã để tính toán động học chuyển tiếp cho robot của tôi, tôi bị mắc kẹt. Tôi chỉ không hiểu cách mà cuốn sách hoặc trang web mà tôi tìm thấy giải thích nó.

Tôi muốn tính toán các góc XYZ cho các tham số liên kết (tham số Denavit-Hartenberg), chẳng hạn như sau :

iαi1ai1diθi1000θ129000θ230a2d3θ3490a3d4θ459000θ569000θ6

0TN

Câu trả lời:


6

Phần DH Matrix của trang DH trên wikipedia có các chi tiết.

0T11T20T2=0T11T2

i1Ti,i=1

0T1=Trans(d1)Rot(θ1)Trans(a2)Rot(α2)

Ở đâu

Trans(d1)=[10000100001d1=00001],

Rot(θ1)=[cos(θ1)sin(θ1)00sin(θ1)cos(θ1)0000100001],

Trans(a2)=[100a2=0010000100001],

Rot(α2)=[10000cos(α2=0)sin(α2=0)00sin(α2=0)cos(α2=0)00001]

Trong trường hợp này

0T1=Rot(θ1)

Khi bạn có tất cả các biến đổi của mình, bạn nhân chúng lên, ví dụ:

0TN=0T11T2...N1TN

0TNd=[0TN,14,0TN,24,0TN,34]T0TN


Sẽ không alpha_2 là -90 độ?
Grace
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.