Vào năm 1955, Denavit và Hartenberg đăng tải một bài báo của tạp chí Cơ học Ứng dụng ASME (Journal of Applied Mechanics). Từ các phương pháp giải trong bài báo này, việc ứng dụng phương pháp giải quyết bài toán được đưa vào biểu diễn và mô hình hóa chuyển động của robot. Mô hình hóa Denavit – Hartenberg (phương pháp
D-H) là cách biểu diễn đơn giản mô hình các khâu và khớp của robot và có thể sử dụng cho bất cứ cấu hình robot nào. Chúng ta còn có thể dùng phương pháp này để biểu diễn cho bất kì hệ trục toại độ nào như: Dercartes, trụ, cầu, Euler, RPY… Thêm vào đó, nó có thể biểu diễn cho tác cả robot mà chúng ta có thể gặp trong công nghiệp, robot dịch vụ, robot biến hình… Chúng ta còn có thể sử dụng kết quả của phương pháp D-H cho các bài toán như bài toán Jacobi, phân tích lực, độ cứng…
Giả sử robot là một chuỗi các khâu và các khớp nối tiếp, các khớp nối này có thể là khớp trượt (tịnh tiến) hay các khớp xoay và chúng có thể sắp xếp theo bất kì thức tự nào và có thể nằm trong bất kì mặt phẳng nào. Các khâu cũng có chiều dài bất kì kể các khi bằng 0, có thể xoắn hoặc cong. Vì vậy, bất kì một tập hợp các khâu, các khớp đều có thể tạo thành một cấu hình robot và chúng ta đều có thể giải quyết các vấn đề với nó thông qua mô hình hóa.
Để làm được việc này, cần phải gắn một hệ trục tham chiếu tới mỗi khớp và sau đó xác định sự chuyển vị từ khớp này đến khớp kế tiếp. Nếu kết hợp tất các các chuyển vị từ đế đến các khớp tiếp theo rồi đến khâu chấp hành (khớp cuối cùng), ta sẽ có ma trận chuyển vị toàn phần. Ở phần dưới này, chúng ta sẽ xác định giải thuật tổng quát dựa vào biểu diễn D-H để gắn các hệ trục tham chiếu lên các khớp. Sau đó xác định chuyển vị giữa 2 hệ trục kết tiếp nhau. Cuối cùng ta sẽ có được ma trận chuyển vị của robot.
Hình 2.14 Khâu mô hình hóa và khớp theo phương pháp D-H
Giả sử robot được thiết kế với một số lượng các khâu và khớp tùy ý và có thể bố trí bất kì. Hình trên biểu diễn ba khâu kế tiếp nhau với hai khớp. Các khớp này có thể
là khớp tịnh tiến hoặc khớp xoay hoặc có thể cả hai. Trong thực tế, việc thiết kế robot thường là khớp bậc 5 để dễ dàng điều khiển nhưng trong hình vẽ thường biểu diễn các khớp này có hai bậc tự do. Mỗi khớp trong mô hình hóa có thể xoay và tịnh tiến, giả sử ta đánh số n cho khớp thứ nhất trong hình trên, i+1 cho khớp thứ gau và i+2 cho khớp thứ ba. Như vậy có thể hiểu được rằng, trước và sau ba khớp này còn có thể có rất nhiều khớp khác tác động và gắn lên hệ thống robot. Mỗi khâu cũng sẽ được đánh số, khâu i nằm giữa khớp i và i+1, khâu i+1 nằm giữa khớp i+1 và i+2.
Để mô hình hóa robot với phương pháp D-H, đầu tiên cần phải gắn một hệ trục tham chiếu địa phương lên mỗi khớp. Vì vậy, mỗi khớp chung ta sẽ phải gắn trục Z và trục X. Chúng ta không nhất thiết phải gắn trục Y vì chúng ta có thể xác định trục Y theo tam diện thuận mà hệ trục tham chiết có được. Ngoài ra vì biểu diễn D-H không cần thiết sử dụng trục Y. Quá trình gắn hệ trục tham chiếu như sau:
Tất cả mọi khớp đều phải có trục Z. Nếu khớp là khớp xoay, trục Z được xác định theo hướng dịch chuyển tại ra do sự quay theo quy tác bàn tay phải. Nếu là khớp tịnh tiến, trục Z sẽ dọc theo hướng di chuyển. Và cách đánh số trục của khớp i sẽ là i- 1. Như vậy, trục Z biểu diễn khớp i+1 và Zi. Với quy tắc đơn giản này sẽ giúp chúng ta nhanh chóng gắn trục Z lên mọi khớp. Như vậy khi khớp quay, góc quay quanh trục Z sẽ là mốt biến khớp (θ hoặc α hoặc β) còn đối với khớp tịnh tiến thì chiều dài của khâu dọc theo trục Z biểu diễn bới thông số d sẽ là biến khớp.
Với việc mô hình hóa không nhất thiết là các khớp phải song song hay giao nhau. Trong mô hình đưa ra, trục Z là những đường thẳng chéo nhau. Như vậy luôn tồn tại một đường thẳng vuông góc chung giữa các truc Z này, đây chính là khoảng cách ngắn nhất giữa hai trục Z. Hệ trục tham chiếu địa phương phải luôn được gắn theo hướng đường vuông góc chung giữa trục Zi-1 và trục Zi thì hướng của trục Xi sẽ dọc theo hướng của đoạn ai. Tương tự như vậy, nếu đường vuông góc chung giửa Zi và Zi+1 là ai+1, hướng của trục Xi+1 sẽ dọc theo ai+1. Đường vuông góc chung của các khớp kế tiếp nhau không nhất thiết phải giao nhau hay trùng nhau. Các gốc tọa độ các hệ trục không cần trùng nhau. Ngoại trừ những trường hợp đặc biệt, ta có thể gắn hệ trục tọa độ lên mọi khớp. Nếu hai trục Z song song nhau, có vô số đường vuông góc chung thì chúng ta sẽ lấy đường vuông góc chung của khớp trước. Còn nếu trục Z của hai khớp giao nhau, không có đường vuông góc chung (chiều dài sẽ bằng 0) chúng ta gắn trục X dọc theo đường vuông góc với mặt phẳng hình thành bởi hai trục này. Điều này có nghĩa là đường vuông góc chung là đường thẳng vuông góc với mặt phẳng chứa hai trục Z và hướng sẽ là hướng của tích hữu hướng của hai trục này.
Như vậy, θ biểu diễn sự quay xung quanh trục Z, d biểu diễn khoảng cách trên trục Z giữa hai đường vuông góc chung, a biểu diễn chiều dài đoạn vuông góc chung còn gọi là đoạn dịch chuyển của khớp (joint offset), α biểu diễn góc giữa hai truc Z kế tiếp nhau (góc xoắn). Thường chỉ có d và θ là biến khớp.
Bước kế tiếp cần di chuyển các sự chuyển vị từ hệ trục tọa đồ này đến hệ trục tọa độ kế tiếp. Giả sử ở hệ trục toạ độ địa phương i-1 chúng ta sẽ tạo ra bốn dịch chuyển tiêu chuẩn để di chuyển hệ trục này tới hệ trục i là:
Quay xung quanh trục Zi-1 một góc θi, sau khi quay xong các trục Xi-1 và Xi song song với nhau vì ai-1 và ai đều vuông góc Zi-1 và quay quanh Zi-1 một góc θi sẽ làm chúng song song.
Tịnh tiến dọc trục Zi-1 một đoạn di làm cho Xi-1 và Xi trùng nhau. Rõ ràng khi Xi-1 và Xi song song và vuông góc Zi-1, như vậy, khi di chuyển dọc theo Zi-1 thì chúng trùng với nhau.
Di chuyển dọc theo trục Xi-1 một khoảng a1 để Zi-1 nằm thẳng với trục Zi. Ở điểm này, hai gốc tọa độ của hai hệ trũc tham chiếu sẽ ở cùng một điểm.
Quay trục Zi-1 xung quanh trục Xi một góc αi để trục Zi-1 nằm thẳng với trục Zi. Ở điểm này, hệ trục i-1 và i sẽ hoàn toàn trung nhau. Và chúng ta sẽ tiếp túc di chuyển từ hệ trục này đến hệ trục tiếp theo.
Tương tự bốn chuyển động giữa hệ trục i và i+1 sẽ tạo nên chuyển vị tiếp theo. Bắt đầu từ hệ trục tham chiếu, ta sẽ tạo nên chuyển vị từ đế robot, sau đó, tới khớp thứ nhất, thứ hai và cuối cùng tới cơ cấu chấp hành.
Ma trận A biểu diễn bốn di chuyển bằng cách nhân bốn ma trận biểu diễn từng chuyển động, kết quả như sau:
Với mỗi hệ robot, ta có thể bắt đầu từ khớp thứ nhất tới khớp thứ hai rồi khớp thứ ba… cho tới cơ cấu chấp hành của robot. Mỗi ma trận chuyển vị là Ai+n. Như vậy, ma trận chuyển vị tổng giữa đế và cơ cấu chấp hành là
Với n là số khớp. Với robot có sáu bậc tự do thì có sáu ma trận. Để tính toán được ma trận A chúng ta phẩn lập ra bản tham số khớp và khâu với các giá trị để biểu diễn khớp và khâu được xác định từ bản vẽ hay cấu hính robot.
2.6.3. Giải thuật gắn hệ trục tọa độ cho Robot
Bắt đầu đánh số từ 0 đến n (n là số khâu của robot) và đế robot được đánh số 0. Mỗi hệ trục tọa độ của đế được gắn song song với hệ trục tham chiếu. Gốc của hệ trục tọa độ này được gắn trùng với gốc của khớp 1. Với giả thiết là trục khớp 1 vuông góc với mặt phẳng xy.
Hệ trục tọa đọ gắn trên khâu robot được gắn tại khớp xa hơn so với đế. Vì vậy chúng ta sẽ thấy hệ trục tọa độ số 1 sẽ gắn tại khớp số 2 (khớp này nối giữa khâu 1 và khâu 2).
Gốc của hệ trục tọa độ đặt tại giao điểm của đường vuông góc chung của các trục khớp với nhau. Nếu các trục khớp song song với nhau thì vị trí của gốc của hệ trục tọa độ được lựa chọn sao cho khoảng cách giữa các khâu bằng 0 hoặc nhỏ nhất nếu có một khoảng dịch chuyển giữa các khâu. Nếu các trục khớp giao nhau thì gốc toại độ sẽ đặt tại điểm giao nhau của các trục.
Trục Z trùng với trục khớp. Nếu khớp tịnh tiến thì hướng trục Z sẽ là hướng di chuyển đi xa từ khớp. Nếu khớp trụ, hướng của trục Z xác định là hướng dương theo hướng quay trục Z (theo người thiết kế) hoặc theo hướng lựa chọn sao cho góc xoắn nhỏ nhất.
Trục X sẽ song song với đường vuông góc chung giữa các trục khớp của khâu. Trong trường hợp các trục khớp song song với nhau, trục X sẽ trùng với đường tâm của khấu. Nếu các trục giao nhau không có đường vuông góc chung trục X sẽ là tích vector của hai vector Zn-1 và Zn. Trong nhiều trường hợp trục X sẽ có hướng như trục X của khâu trước.
Hướng của trục Y tuân theo quy tắc bàn tay phải.
Hệ trục tọa độ ở khâu cuối (n) thường gắn ở tay gắp hay cơ cấu chấp hành. Nếu robot có tay gắp tạo bởi nhiều khớp thì một hệ trục tọa độ được đặt ở tay gắp hay cơ cấu chấp hành và chúng được ngăn chặn bới một ma trận chuyển vị từ hệ trục cuối
cùng của cánh tay robot với hệ trục của tay gắp/ Trục Z của hệ trục này cùng hường với khớp cuối cùng.
Từ đó ta có thể rút ra được bốn quy tắc để gắn hệ trục tọa độ theo phương pháp D-H:
Chọn trục Z sao cho trục Z là trục của động cơ.
Chọn trục X là sao cho trục Xi phải cùng vuông góc với Zi và Zi-1.
Trục Y là trục còn lại của quy tác bàn tay phải.
Trục X phải cắt phương của trục Zi-1, nếu trục X không cắt phương của Zi-1, ta có thể dời tâm của trục tọa độ i theo phương của trục Z sao cho thỏa điều kiện trên.