Cánh tay Robot đượclấy ý tưởng từ cánh tay của con người, dùng để thực hiện cách hành động thay thế sứccon người trong công việc như di chuyển vật, sơn, vặn, hàn, gắp, lắp ráp… Hiện nay
Trang 1TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI TP HỒ CHÍ
MINH KHOA ĐIỆN – ĐIỆN TỬ VIỄN THÔNG
BÁO CÁO ĐỒ ÁN
CÁNH TAY ROBOT 5 BẬC TỰ DO
(ROBOT ARM 5 DOF)
Chuyên ngành: TỰ ĐỘNG HOÁ CÔNG NGHIỆP
Giảng viên hướng dẫn: Trương Ngọc Bảo Sinh viên thực hiện:
Trang 2Lời đầu tiên, nhóm em xin gửi lời cảm ơn chân thành đến thầy Trương Ngọc Bảo
đã tận tình chỉ bảo, giúp đỡ nhóm hoàn thành môn học và báo cáo bài tập lớn môn họcRobot Công Nghiệp
Với những sinh viên kỹ thuật như chúng em thì khoảng thời gian thực hành đồ ánsau những tiết học lý thuyết là điều rất quý giá Tuy thời gian học chỉ ba tháng, nhưngnhờ sự giúp đỡ của thầy chúng em đã học hỏi được thêm nhiều điều mới và có nhiềutrải nghiệm, kinh nghiệm thực tế, được ứng dụng những điều đã học trên lý thuyết vàothực tiễn và biết thêm những điều mới mẻ mà sách vở chưa thể truyền đạt được
Với sự hướng dẫn tận tình của thầy Trương Ngọc Bảo, chúng em đã được biết vàhiểu hơn những thứ mà mình sẽ tiếp xúc và làm việc sau này Theo xu hướng bắt kịpthời đại con người không ngừng nâng cao học hỏi, phát triển cuộc sống hiện đại, đểthỏa mãn nhu cầu đời sống Kiến thức đã giúp con người phát minh những đột phánhững thành tự lớn nhằm tạo ra một cuộc sống không vất vả Điển hình là máy tính,một công cụ đã thay đổi thế giới, góp mặt hầu hết cho mọi công việc nhằm mục đích;tính toán, lưu giữ thông tin, hỗ trợ liên lạc.v.v…, nhờ đó công việc và học tập đượctiếp cận nhanh hơn
Với sứ mệnh học hỏi và nghiên cứu nhóm 999 đã chọn đề tài “Cánh tay robot 5bậc tự do”, nhằm mục đích tiếp cận với việc thiết kế, mô phỏng và vận hành một cánhtay robot Thông qua việc thực hiện đồ án mỗi sinh viên trong nhóm có điểm nhìn trựcquan hơn về robot và các thiết bị ngoại vi, các kết nối và khả năng điều khiển củarobot Không những thế mỗi sinh viên tiếp cận được các ứng dụng hỗ trợ cho côngviệc và học tập sau này
Tuy đã có sự chuẩn bị trong bài báo cáo bài tập lớn kết thúc môn học xong khôngthể tránh khỏi những sai sót, mong được sự cảm thông từ thầy
Xin chân thành cảm ơn!
i
Trang 3MỤC LỤC
CHƯƠNG 1 LÊN Ý TƯỞNG THỰC HIỆN ĐỒ ÁN 1
1.1 Đặt vấn đề 1
1.2 Mục tiêu và yêu cầu 1
1.3 Nội dung nghiên cứu 2
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 3
2.1 Giới thiệu về Robot 3
2.1.1 Lịch sử ra đời Robot 3
2.1.2 Phân loại Robot 4
2.1.3 Cánh tay robot 5
2.1.4 Giải thuật gắn hệ trục tọa độ cho Robot 8
2.2 Robot 5 bậc tự do RRRRR 9
2.3 Arduino 9
2.3.1 Phần cứng 10
2.3.2 Arduino Uno R3 11
2.4 Động cơ Servo 16
2.5 Joy stick (Nút nhấn đa hướng) 17
2.6 Bài toán động học Robot 18
2.6.1 Một số khái niệm cơ bản 18
2.6.2 Biểu diễn Danevit – Hartenberg của bài toán động học Robot: 23
2.6.3 Giải thuật gắn hệ trục tọa độ cho Robot 27
2.7 Động học thuận – nghịch cho mô hình cánh tay robot 5 bậc tự do 28
2.7.1 Động học thuận 28
2.7.2 Động học nghịch 30
CHƯƠNG 3 THIẾT KẾ MÔ HÌNH VÀ MÔ PHỎNG CÁNH TAY ROBOT 5 BẬC TỰ DO TRÊN EASY ROB 33
3.1 Phần mềm EASY ROB 33
3.2 Mô hình Robot được thiết kế trên EASY ROB 34
CHƯƠNG 4 THIẾT KẾ MÔ HÌNH CÁNH TAY ROBOT 5 BẬC TỰ DO TRÊN SOLIDWORKS VÀ MÔ PHỎNG TRÊN MATLAB SIMULINK 37
4.1 Phần mềm SolidWorks 37
4.2 Phần mềm Matlab 37
Trang 44.4 Mô phỏng cánh tay robot với Matlab Simulink 39
4.4.1 Chuyển mô hình robot từ Solidwork sang Matlab Simulink 39
4.4.2 Tạo giao diện điều khiển robot 39
CHƯƠNG 5 THI CÔNG MÔ HÌNH ROBOT 5 BẬC TỰ DO VÀ LẬP TRÌNH ĐIỀU KHIỂN ROBOT THEO HAI CHẾ ĐỘ AUTO VÀ MANUAL 42
5.1 Hình ảnh thi công mô hình 42
5.2 Chương trình điều khiển 42
CHƯƠNG 6 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 54
6.1 Kết luận 54
6.2 Hướng phát triển 54
TÀI LIỆU THAM KHẢO 55
iii
Trang 5MỤC LỤC HÌNH
Hình 2.1 Kết cấu tay máy 5
Hình 2.2 Tay máy kiểu toạ độ Decartes 6
Hình 2.3 Tay máy kiểu toạ độ trụ 6
Hình 2.4 Tay máy kiểu toạ độ cầu 7
Hình 2.5.SCARA 7
Hình 2.6 Vi điều khiển của Arduino UNO R3 12
Hình 2.7 Các cổng I/O của Arduino UNO R3 15
Hình 2.8 Servo MG996R 17
Hình 2.9 Servo SG90 17
Hình 2.10 Nút nhấn Joystick 18
Hình 2.11 Kết nối Joystick và Arduino UNO R3 18
Hình 2.12 Ma trận tọa độ tuần nhất 23
Hình 2.13 Quy tắc bàn tay phải 23
Hình 2.14 Khâu mô hình hóa và khớp theo phương pháp D-H 24
Hình 2.16 Robot 5 bậc tự do biểu diễn trong không gian 30
Hình 3.1 Giao diện thiết làm việc trên EASY ROB 33
Hình 3.2 Mô hình robot thiết kế trên phần mềm EASY ROB 34
Hình 3.3 Kết quả sau khi mô phỏng 36
Hình 4.1 Phần mềm SolidWorks 37
Hình 4.2 Phần mềm Matlab 38
Hình 4.3 Mô hình cánh tay robot được thiết kế bằng solidworks 38
Hình 4.4 Phần mềm MATLAB và SOLID WORKS 39
Hình 4.5 Kết quả sau khi chuyển đổi 39
Hình 4.6 Giao diện bắt đầu mô phỏng 40
Hình 5.1 Các phần của robot và động cơ trước khi lắp ráp 42
Hình 5.2 Robot sau khi lắp ráp 42
Trang 6Bảng 1 Thông số cơ bản của Arduino Uno R3 12 Bảng 2 Bảng DH Robot Arm 5 DOF 28
v
Trang 7ROBOT CÔNG NGHIỆP GVHD: ThS Trương Ngọc Bảo
CHƯƠNG 1 LÊN Ý TƯỞNG THỰC HIỆN ĐỒ ÁN
1.1 Đặt vấn đề
Thời đại hiện nay được dẫn dầu bởi công nghệ, thời đại khoa học công nghệ đòihỏi phải phát triển không ngừng và luôn phải tìm tòi học tập để tiến bộ Thiết bị côngnghệ được đổi mới tiên tiến để góp phần nâng cao chất lượng cũng như hiệu quả và antoàn, ổn định của các thiết bị, máy móc khi hoạt động Các bộ vi điều khiển ngày nayđược ứng dụng trong các lĩnh vực kỹ thuật và đời sống xã hội, đặc biệt là trong kỹthuật tự động hóa và điều khiển từ xa
“Robot” là một thuật ngữ không còn xa lạ gì đối với chúng ta Robot là một loạimáy đặc biệt, lập trình bởi một máy tính có khả năng thực hiện tự động một loạt cáchoạt động phức tạp dưới sự điểu khiển của máy tính hoặc các vi mạch điện tử được lậptrình sẵn Nó được cấu tạo bởi bộ phận cơ khí và phần mềm – điện tử hoạt động tựđộng giống như con người Robot hỗ trợ cho con người rất nhiều trong nhiều khíacạnh của cuộc sống như sản xuất công nghiệp, nông nghiệp, gia đình, nghiên cứu, giảitrí…
Trong ngành công nghiệp sản xuất dây chuyền hoặc trong ngành công nghệ nghiêncứu thì người bạn hỗ trợ đắc lực nhất đó chính là cánh tay robot Cánh tay Robot đượclấy ý tưởng từ cánh tay của con người, dùng để thực hiện cách hành động thay thế sứccon người trong công việc như di chuyển vật, sơn, vặn, hàn, gắp, lắp ráp…
Hiện nay trên thế giới, kĩ thuật chế tạo robot rất phát triển, được tích hợp nhiềuphụ kiện khác nhau, vì thế cánh tay robot rất đa dạng về mẫu mã, kiểu dáng và kíchthước để phù hợp cho từng hoàn cảnh, điều kiện sử dụng
Tại Việt Nam, có rất nhiều đơn vị nghiên cứu về robot như: Trung tâm tự độnghóa, Học viện Kỹ thuật quân sự, Viện nghiên cứu cơ học và tin học ứng dụng, Dựavào kiến thức của bản thân, điều kiện chế tạo và ứng dụng của robot, tài liệu thu thậpđược, cùng với sự giúp đỡ của thầy Trương Ngọc Bảo, chúng em xin được thực hiện
đề tài: “Thiết kế và điểu khiển cánh tay Robot 5 bậc tự do” Vì kinh nghiệm chưanhiều nên trong quá trình thực hiện sẽ xảy ra nhiều sai phạm, mong thầy cô thông cảm
và góp ý cho tụi em sửa chữa
1.2 Mục tiêu và yêu cầu
Mục tiêu chính trong đề tài này là có thể điều khiển cánh tay Robot gắp vật đượcđặt trước và tự động gắp được gắp vật được đặt trước, sau đó đặt ở vị trí mục tiêu đãđược cho trước Và để cánh tay Robot làm được việc này thì ta phải giải quyết một sốvấn đề cần thiết để xuất hiện trong quá trình điều khiển Ví dụ như việc giao tiếp mạch
Trang 8điều khiển Arduino với tay cầm để có thể điều khiển bằng tay và với các động cơ để điều khiển một cách chính xác nhất.
Các mục tiêu cần đạt và yêu cầu cụ thể của đề tài như sau:
Thiết kế phần cứng cho cánh tay Robot 5 bậc tự do
Điều khiển cánh tay Robot đến các vị trí cho trước một cách chính
xác Lập trình điều khiển Robot bằng phần mềm Arduino
Robot vận hành hiệu quả và ổn định
Yêu cầu phần cứng:
Kết cấu vận hành Robot phải chắc chắn, ít rung lắc
Khâu cuối (kẹp) phải đủ lực để gắp vật
1.3 Nội dung nghiên cứu
Nghiên cứu lý thuyết cơ bản về robot
Thành lập các phương trình động học ngược, động học thuận cho robot
Sử dụng phần mềm EASY ROB, MATLAB kết hợp SOLID WORDS để mô phỏng robot
Viết chương trình điều khiển robot cho robot trên Arduino
Trang 9ROBOT CÔNG NGHIỆP GVHD: ThS Trương Ngọc Bảo
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT
2.1 Giới thiệu về Robot
2.1.1 Lịch sử ra đời Robot
Năm 1921, Robot được biến thể của từ gốc Slavo “Rabota” do ông Karel Capek(nhà viết kịch viễn tưởng người Séc) sử dụng để đặt tên cho vở kịch “Rossum’sUniversal Robots” Từ này dùng để chỉ một thiết bị lao động do con người (nhân vậtRossum) tạo ra Tác giả khoa học viễn tưởng Isaac Asimov được cho là người đầu tiên
sử dụng thuật ngữ “robot” trong truyện ngắn sáng tác vào những năm 1940 Asimovcũng đặt tên cho ngành khoa học nghiên cứu về robot là Robotics Trong câu chuyện,Asimov đề xuất ba nguyên tắc để hướng dẫn hành vi của robot và máy thông minh Vàđược gọi tắt là “Asimov Ba luật của Robotics” và đã tồn tại đến ngày nay:
Robot không được xúc phạm con người và không gây tổn hại cho con người.Hoạt động của robot phải tuân theo các quy tắc do con người đặt ra Các quy tắc này không được vi phạm nguyên tắc thứ nhất
Một robot cần phải bảo vệ sự sống của mình, nhưng không được vi phạm hainguyên tắc trước
Robotics được hiểu là một ngành khoa học có nhiệm vụ nghiên cứu, thiết kế, chếtạo các robot và ứng dụng chúng trong các lĩnh vực hoạt động khác nhau của xã hộiloài người, như nghiên cứu khoa học, kỹ thuật, kinh tế, quốc phòng và dân sinh Từhiểu biết sơ bộ về chức năng và kết cấu của robot, chúng ta hiểu, Robotics là một khoahọc liên ngành, gồm cơ khí, điện tử, kỹ thuật điều khiển và công nghệ thông tin Theothuật ngữ hiện nay, robot là sản phẩm của ngành cơ – điện tử (Mechatronics) Khíacạnh nhân văn và khía cạnh khoa học – kỹ thuật của việc sản sinh ra robot thống nhất
ở một điểm: thực hiện hoài bão của con người, là tạo ra thiết bị thay thế mình trongnhững hoạt động không thích hợp với mình, như:
Các công việc lặp đi lặp lại, nhàm chán, nặng nhọc: vận chuyển nguyên vật liệu, lắp ráp, lau cọ nhà…
Trong môi trường khắc nghiệt hoặc nguy hiểm: như ngoài khoảng không vũ trụ, trên chiến trường, dưới nước sâu, trong lòng đất, nơi có phóng xạ, nhiệt
Trang 10robot khác xa với kết cấu các bộ phận cơ thể người và chúng có thể thực hiện nhữngviệc vượt xa khả năng của con người Drone là ví dụ điển hình cho khả năng này củaRobot.
2.1.2 Phân loại Robot
Thế giới hiện có nhiều Robot được tạo ra mỗi mẫu Robot đều mang những đặctính và mục đích sử dụng riêng đo đó việc phân loại chúng không hề đơn giản Có rấtnhiều quan điểm để phân loại nhưng có thể nêu ra ba cách phân loại cơ bản như sau:theo kết cấu, theo cách điều khiển và phạm vi ứng dụng của Robot
Phân loại theo kết cấu: Hay còn gọi là phân loại theo hình học, người ta có thể
phân loại Robot dựa trên đặc điểm này thành các loại Descartes, trụ, cầu, SCARA,kiểu tay người và các dạng khác
Phân loại the phương pháp điều khiển: Có 2 kiểu điều khiển robot: điều khiển hở
và điều khiển kín
Điều khiển hở, dùng truyền động bước (động cơ điện hoặc động cơ thủy lực, khí nén…) mà quãng đường hoặc góc dịch chuyển tỷ lệ với số xung điều khiển Kiểu này đơn giản, nhưng đạt độ chính xác thấp
Điều khiển kín (điều khiển kiểu servo), sử dụng tín hiệu phản hồi vị trí để tăng độ chính xác điều khiển Có 2 kiểu điều khiển servo: điều khiển điểm - điểm và điều khiển theo đường (contour)
Với kiểu điều khiển điểm - điểm, phần công tác dịch chuyển từ điểm này đến điểm kia theo đường thẳng với tốc độ không cao (không làm việc) Nó chỉ làm việc tại các điểm dừng Kiểu điều khiển này được dùng trên các robot hàn điểm, vận chuyển, tán đinh, bắn đinh
Điều khiển contour đảm bảo cho phần công tác dịch chuyển theo quỹ đạo bất kỳ, với tốc độ có thể điều khiển được Có thể gặp kiểu điều khiển này trên các robot hàn hồ quang, phun sơn
Phân loại theo ứng dụng: Cách phân loại này dựa vào mục đích sử dụng của
Trang 11ROBOT CÔNG NGHIỆP GVHD: ThS Trương Ngọc Bảo
2.1.3 Cánh tay robot
Cánh tay robot là một tay máy vạn năng, hoạt động theo chương trình và có thểlập trình lại để hoàn thành và nâng cao hiệu quả hoàn thành các nhiệm vụ khác nhautrong công nghiệp, như vận chuyển nguyên vật liệu, chi tiết, dụng cụ hoặc các thiết bịchuyên dùng khác (Theo Viện nghiên cứu Robot của Mỹ)
Ý tưởng ban đầu của việc thiết kế và chế tạo tay máy là phỏng tác cấu tạo vàchứcnăng của tay người Về sau, đây không còn là điều bắt buộc nữa Tay máy hiện nayrất đa dạng và nhiều loại có dáng vẻ khác rất xa với tay người Tuy nhiên, trong kỹ thuậtrobot người ta vẫn dùng các thuật ngữ quen thuộc, như vai (Shoulder), cánh tay (Arm),
cổ tay (Wrist), bàn tay (Hund) và các khớp (Articulations)… để chỉ tay máy và các bộphận của nó
Hình 2.1 Kết cấu tay máy.
Trong thiết kế và sử dụng tay máy, người ta quan tâm đến các thông số có ảnh hưởng lớn đến khả năng làm việc của chúng, như:
Sức nâng, độ cứng vững, lực kẹp của tay…
Tầm với hay vùng làm việc: kích thước và hình dáng vùng mà phần công tác (khâu chấp hành) có thể với tới
Sự khéo léo, nghĩa là khả năng định vị và định hướng phần công tác (khâu chấp hành) trong vùng làm việc Thông số này liên quan đến số bậc tự do củaphần công tác
Để định vị và định hướng phần công tác một cách tuỳ ý trong không gian 3 chiều
nó cần có 6 bậc tự do, trong đó 3 bậc tự do để định vị, 3 bậc tự do để định hướng Một
số công việc như nâng, hạ, xếp… yêu cầu số bậc tự do ít hơn 6 (vì sẽ chắc chắn hơn).Robot hàn, sơn thường có 6 bậc tự do Trong một số trường hợp cần sự khéo léo, linhhoạt hoặc cần tối ưu hoá quỹ đạo… người ta có thể dùng robot với số bậc tự do lớnhơn 6
Trang 12Các khớp được dùng phổ biến là khớp trượt và khớp quay tuỳ theo số lượng vàcách bố trí các khớp mà có thể tạo ra các tay máy kiểu toạ độ Decac (Cartesian), toạ độtrụ (Cylindrical), toạ độ cầu (Revolute), SCARA, POLAR, kiểu tay người(Anthropomorphic).
Tay máy kiểu tọa độ Descartes: còn gọi là kiểu chữ nhật, dùng ba khớp trượt, cho
phép phần công tác thực hiện một cách độc lập các chuyển động thẳng, song với batrục tọa độ Vùng làm việc của tay máy có dạng hình hộp chữ nhật Do sự đơn giản vềkết cấu tay máy kiểu này có độ cứng vững cao, độ chính xác được đảm bảo đồng đềutrong toàn bộ vùng làm việc, nhưng ít khéo léo Vì vậy, tay máy kiểu đề các đượcdùng để vận chuyển và lắp ráp
Hình 2.2 Tay máy kiểu toạ độ Decartes.
Tay máy kiểu tọa độ Trụ: khác với tay máy kiểu Descartes ở khớp đầu tiên dùng
khớp quay thay cho khớp trượt Vùng làm việc của nó có dạng hình trụ rỗng Khớptrượt nằm ngang cho phép tay máy “thò” được vào khoang rỗng nằm ngang Độ cứngvững cơ học của tay máy trụ tốt, thích hợp với tải nặng nhưng độ chính xác định vịgóc trong mặt phẳng nằm ngang giảm khi tầm với tăng
Hình 2.3 Tay máy kiểu toạ độ trụ.
Tay máy kiểu tọa độ Cầu: khác kiểu trụ do khớp thứ hai (khớp trượt) được thay
bằng khớp quay Nếu quỹ đạo chuyển động của phần công tác được mô tả trong tọa độcầu thì mỗi bậc tự do tương ứng với một khả năng chuyển động và vùng làm việc của
Trang 13ROBOT CÔNG NGHIỆP GVHD: ThS Trương Ngọc Bảo
nó là khối cầu rỗng Độ cứng vững của loại tay máy này thấp hơn hai loại trên và độchính xác định vị phụ thuộc vào tầm với
Hình 2.4 Tay máy kiểu toạ độ cầu.
Tay máy Scara: được đề xuất dùng cho công việc lắp ráp Đó là một kiểu tay
máy có cấu tạo đặc biệt, gồm hai khớp quay và một khớp trượt, nhưng cả ba khớp đều
có trụcsong song với nhau Kết cấu này làm tay máy cứng vững hơn theo phươngthẳng đứng nhưng kém cứng vững theo phương được chọn là phương ngang Loại nàychuyên dùng cho công việc lắp ráp với tải trọng nhỏ theo phương đứng Từ SCARA làviết tắt của “Selective compliance assembly robot arm” để mô tả các đặc điểm trên.Vùng làm việc của Scara là một phần của hình trụ rỗng
Hình 2.5.SCARA.
Tay máy kiểu phỏng sinh: có cả ba khớp đều là khớp quay, trong đó trục thứ nhất
vuông góc với hai trục kia Do sự tương tự với tay người, khớp thứ hai được gọi làkhớp vai, khớp thứ ba gọi là khớp khuỷu nối cẳng tay với khuỷu tay Với kết cấu nàykhông có sự tương ứng giữa khả năng chuyển động của các khâu và số bậc tự do Taymáy làm việc rất khéo léo, nhưng độ chính xác định vị phụ thuộc vị trí của phần côngtác trong vùng làm việc Vùng làm việc của tay máy kiểu này gần giống một phần khốicầu
Trang 14Toàn bộ dạng các kết cấu mô tả ở trên mới chỉ liên quan đến khả năng định vịcủa phần công việc định hướng cho Robot, cần bổ sung phần cổ tay Muốn định hướngtùy ý phần công tác cổ tay phải có ít nhất ba bậc tự do Trong trường hợp trục quaycủa ba khớp gặp nhau tại một điểm ta gọi đó là khớp cầu Ưu điểm chính của khớp cầu
là tách được thao tác định vị và định hướng của phần công tác, làm đơn giản việc tínhtoán Các kiểu khớp khác có thể đơn giản hơn về kết cấu cơ khí, nhưng tính toán tọa
độ khó hơn do không tách được hai loại thao tác trên
2.1.4 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ônggó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ậychú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áctrụ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ấtnế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ốctoạ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 dichuyể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 theohướ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ắnnhỏ 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âmcủ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íchvector 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ếurobot 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ốicùng
Trang 15ROBOT CÔNG NGHIỆP GVHD: ThS Trương Ngọc Bảo
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ápD-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 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
2.2 Robot 5 bậc tự do RRRRR
2.3 Arduino
Arduino là một board mạch vi xử lý, nhằm xây dựng các ứng dụng tương tác vớinhau hoặc với môi trường được thuận lợi hơn Phần cứng bao gồm một board mạchnguồn mở được thiết kế trên nền tảng vi xử lý AVR Atmel 8bit, hoặc ARM Atmel 32-bit Những Model hiện tại được trang bị gồm 1 cổng giao tiếp USB, 6 chân đầu vàoanalog, 14 chân I/O kỹ thuật số tương thích với nhiều board mở rộng khác nhau
Được giới thiệu vào năm 2005, Những nhà thiết kế của Arduino cố gắng mangđến
một phương thức dễ dàng, không tốn kém cho những người yêu thích, sinh viên vàgiới chuyên nghiệp để tạo ra những thiết bị có khả năng tương tác với môi trườngthông qua các cảm biến và các cơ cấu chấp hành Những ví dụ phổ biến cho nhữngngười yêu thích mới bắt đầu bao gồm các robot đơn giản, điều khiển nhiệt độ và pháthiện chuyển động Đi cùng với nó là một môi trường phát triển tích hợp (IDE) chạytrên các máy tính cá nhân thông thường và cho phép người dùng viết các chương trìnhcho Aduino bằng ngôn ngữ C hoặc C++
Arduino được khởi động vào năm 2005 như là một dự án dành cho sinh viên tạitrại Interaction Design Institute Ivrea (Viện thiết kế tương tác Ivrea) tại Ivrea, Italy.Vào
thời điểm đó các sinh viên sử dụng một "BASIC Stamp" (con tem Cơ Bản) có giákhoảng $100, xem như giá dành cho sinh viên Massimo Banzi là một trong nhữngngười sáng lập ra Arduino cũng là giảng viên tại Ivrea Cái tên "Arduino" đến từ mộtquán bar tại Ivrea, nơi một vài nhà sáng lập của dự án này thường xuyên gặp mặt Bản
Trang 16thân quán bar này có được lấy tên là Arduino là tên của bá tước của Ivrea, và cũng làvua của Italy từ năm 1002 đến 1014.
Lý thuyết phần cứng để xây dựng Arduino được đóng góp bởi một sinh viênngười
Colombia tên là Hernando Barragan Sau khi nền tảng Wiring hoàn thành, các nhànghiên cứu đã làm việc với nhau để giúp nó nhẹ hơn, rẻ hơn, và khả dụng đối với cộngđồng mã nguồn mở Trường này cuối cùng bị đóng cửa, vì vậy các nhà nghiên cứu,một trong số đó là David Cuarlielles, đã phổ biến ý tưởng này
2.3.1 Phần cứng
Một mạch Arduino bao gồm một vi điều khiển AVR với nhiều linh kiện bổ sunggiúp dễ dàng lập trình và có thể mở rộng với các mạch khác Một khía cạnh quan trọngcủa Arduino là các kết nối tiêu chuẩn của nó, cho phép người dùng kết nối với CPUcủa board với các module thêm vào có thể dễ dàng chuyển đổi, được gọi là Shield VàiShield truyền thông kết nối với board Arduino trực tiếp thông qua các chân khác nhau,nhưng nhiều shield được định địa chỉ thông qua serial bus I2C-nhiều shield có thểđược xếp chồng và sử dụng dưới dạng song song Arduino chính thức thường sử dụngcác dòng chip megaAVR, đặc biệt là ATmega8, ATmega168, ATmega328,ATmega1280, và ATmega2560 Một vài các bộ vi xử lý khác cũng được sử dụng bởicác mạch Arduino tương thích Hầu hết các mạch bao gồm một bộ điều chỉnh tuyếntính 5V và một thạch anh dao động 16 MHz (hoặc bộ cộng hưởng ceramic trong mộtvài biến thể), mặc dù một vài thiết kế như LilyPad chạy ở tần số 8 MHz và bỏ qua bộđiều chỉnh điện áp trên board mạch do hạn chế về kích cỡ thiết bị Một vi điều khiểnArduino cũng có thể được lập trình sẵn với một bootloader cho phép đơn giản làupload chương trình vào bộ nhớ flash, so với các thiết bị khác thì thường phải cần một
bộ mạch nạp bên ngoài Điều này giúp cho việc sử dụng Arduino trực tiếp hơn bằngcách cho phép sử dụng 1 máy tính gốc như là một bộ nạp chương trình
Theo nguyên tắc, khi sử dụng phần mềm Arduino, tất cả các board được lập trìnhthông qua kết nối RS-232, nhưng cách thức thực hiện lại tùy thuộc vào đời của phầncứng Các board Serial Arduino có chứa một mạch chuyển đổi giữa RS-232 sang TTL.Các board Arduino hiện tại được lập trình thông qua cổng USB, thực hiện thông quachip chuyển đổi USB-to-serial như là FTDI FT232 Vài biến thể, như Arduino Mini vàBoarduino không chính thức, sử dụng một board adapter hoặc cáp nối USBto-serial cóthể tháo rời được, Bluetooth hoặc các phương thức khác (Khi sử dụng một công cụlập trình vi điều khiển truyền thống thay vì ArduinoIDE, công cụ lập trình AVR ISPtiêu chuẩn sẽ được sử dụng
Trang 17ROBOT CÔNG NGHIỆP GVHD: ThS Trương Ngọc Bảo
Board Arduino sẽ đưa ra hầu hết các chân I/O của vi điều khiển để sử dụng chonhững mạch ngoài Ví dụ như board Uno đưa ra 14 chân I/O digital, 6 trong số đó cóthể tạo xung PWM (điều chế độ rộng xung) và 6 chân input analog, có thể được sửdụng như là 6 chân I/O số Những chân này được thiết kế nằm phía trên mặt board,thông qua các header cái 0.10-inch (2.5 mm) Các board Arduino Nano, và Arduino-compatible Bare Bones Board và Boarduino có thể cung cấp các chân header đực ởmặt trên của board dùng để cắm vào các breadboard
Có nhiều biến thể như Arduino-compatible và Arduino-derived Một vài trong số
đó có chức năng tương đương với Arduino và có thể sử dụng để thay thế qua lại.Nhiều hướng mở rộng cho mạch Arduino được thực thiện bằng cách thêm vào cácdriver đầu ra Những board khác thường tương đương về phần điện nhưng có khácnhau về hình dạng và đôi khi còn duy trì độ tương thích với các shield, đôi khi không.Vài biến thể sử dụng bộ vi xử lý hoàn toàn khác biệt, với các mức độ tương thích vớicác shield khác nhau
2.3.2 Arduino Uno R3
Hình 1 Arduino Uno R3
Thông số cơ bản của Arduino Uno R3:
Điện áp hoạt động 5V DC (chỉ được cấp qua cổng USB)
Trang 18Điện áp vào khuyên dùng 7-12V DC
Số chân Digital I/O 14 (6 chân hardware PWM)
Số chân Analog 6 (độ phân giải 10bit)
Dòng tối đa trên mỗi chân I/O 30 mA
Hình 2.6 Vi điều khiển của Arduino UNO R3.
Arduino UNO có thể sử dụng 3 vi điều khiển họ 8bit AVR là ATmega8,ATmega168, ATmega328 Bộ não này có thể xử lí những tác vụ đơn giản như điềukhiển đèn LED nhấp nháy, xử lí tín hiệu cho xe điều khiển từ xa, làm một trạm đonhiệt độ - độ ẩm và hiển thị lên màn hình LCD… hay những ứng dụng khác
Thiết kế tiêu chuẩn của Arduino UNO sử dụng vi điều khiển ATmega328 với giákhoảng 90.000đ Tuy nhiên nếu yêu cầu phần cứng của bạn không cao hoặc túi tiềnkhông cho phép, bạn có thể sử dụng các loại vi điều khiển khác có chức năng tương
Trang 19Nhóm thực hiện: Nhóm 999 Trang 12
Trang 20đương nhưng rẻ hơn như ATmega8 (bộ nhớ flash 8KB) với giá khoảng 45.000đ hoặcATmega168 (bộ nhớ flash 16KB).
Arduino UNO có thể được cấp nguồn 5V thông qua cổng USB hoặc cấp nguồnngoài với điện áp khuyên dùng là 7-12V DC và giới hạn là 6-20V Thường thì cấpnguồn bằng pin vuông 9V là hợp lí nhất nếu bạn không có sẵn nguồn từ cổng USB.Nếu cấp nguồn vượt quá ngưỡng giới hạn trên, bạn sẽ làm hỏng Arduino UNO
Các chân năng lượng:
GND (Ground): Cực âm của nguồn điện cấp cho Arduino UNO Khi bạn
dùng các thiết bị sử dụng những nguồn điện riêng biệt thì những chân này phải được nối với nhau
5V: Cấp điện áp 5V đầu ra Dòng tối đa cho phép ở chân này là 500mA.
3.3V: Cấp điện áp 3.3V đầu ra Dòng tối đa cho phép ở chân này là 50mA Vin (Voltage Input): Để cấp nguồn ngoài cho Arduino UNO, bạn nối cực
dương của nguồn với chân này và cực âm của nguồn với chân GND
IOREF: Điện áp hoạt động của vi điều khiển trên Arduino UNO có thể được
đo ở chân này Và dĩ nhiên nó luôn là 5V Mặc dù vậy bạn không được lấy nguồn 5V từ chân này để sử dụng bởi chức năng của nó không phải là cấp nguồn
RESET: Việc nhấn nút Reset trên board để reset vi điều khiển tương đương
với việc chân RESET được nối với GND qua 1 điện trở 10KΩ
Một số lưu ý:
Arduino UNO không có bảo vệ cắm ngược nguồn vào Do đó bạn phải hết sứccẩn thận, kiểm tra các cực âm – dương của nguồn trước khi cấp cho Arduino UNO.Việc làm chập mạch nguồn vào của Arduino UNO sẽ biến nó thành một miếng nhựachặn giấy mình khuyên bạn nên dùng nguồn từ cổng USB nếu có thể
Các chân 3.3V và 5V trên Arduino là các chân dùng để cấp nguồn ra cho cácthiết bị khác, không phải là các chân cấp nguồn vào Việc cấp nguồn sai vị trí có thểlàm hỏng board Điều này không được nhà sản xuất khuyến khích
Cấp nguồn ngoài không qua cổng USB cho Arduino UNO với điện áp dưới 6V
có thể làm hỏng board
Cấp điện áp trên 13V vào chân RESET trên board có thể làm hỏng vi điều khiểnATmega328
Trang 21ROBOT CÔNG NGHIỆP GVHD: ThS Trương Ngọc Bảo
Cường độ dòng điện vào/ra ở tất cả các chân Digital và Analog của ArduinoUNO nếu vượt quá 200mA sẽ làm hỏng vi điều khiển
Cấp điệp áp trên 5.5V vào các chân Digital hoặc Analog của Arduino UNO sẽlàm hỏng vi điều khiển
Cường độ dòng điện qua một chân Digital hoặc Analog bất kì của Arduino UNOvượt quá 40mA sẽ làm hỏng vi điều khiển Do đó nếu không dùng để truyền nhận dữliệu, bạn phải mắc một điện trở hạn dòng
Bộ nhớ:
32KB bộ nhớ Flash: Những đoạn lệnh bạn lập trình sẽ được lưu trữ trong bộ
nhớ Flash của vi điều khiển Thường thì sẽ có khoảng vài KB trong số này sẽđược dùng cho bootloader nhưng đừng lo, bạn hiếm khi nào cần quá 20KB
bộ nhớ này đâu
2KB cho SRAM (Static Random Access Memory): Giá trị các biến bạn khai
báo khi lập trình sẽ lưu ở đây Bạn khai báo càng nhiều biến thì càng cần nhiều bộ nhớ RAM Tuy vậy, thực sự thì cũng hiếm khi nào bộ nhớ RAM lại trở thành thứ mà bạn phải bận tâm Khi mất điện, dữ liệu trên SRAM sẽ bị mất
1KB cho EEPROM (Electrically Eraseble Programmable Read Only
Memory): Đây giống như một chiếc ổ cứng mini – nơi bạn có thể đọc và ghi
dữ liệu của mình vào đây mà không phải lo bị mất khi cúp điện giống như dữliệu trên SRAM
Các cổng vào ra:
Trang 22Hình 2.7 Các cổng I/O của Arduino UNO R3.
Arduino UNO có 14 chân digital dùng để đọc hoặc xuất tín hiệu Chúng chỉ có 2mức điện áp là 0V và 5V với dòng vào/ra tối đa trên mỗi chân là 40mA Ở mỗi chânđều có các điện trở pull-up từ được cài đặt ngay trong vi điều khiển ATmega328 (mặcđịnh thì các điện trở này không được kết nối)
Một số chân digital có các chức năng đặc biệt như sau:
2 chân Serial: 0 (RX) và 1 (TX): dùng để gửi (transmit – TX) và nhận
(receive – RX) dữ liệu TTL Serial Arduino Uno có thể giao tiếp với thiết bị khác thông qua 2 chân này Kết nối bluetooth thường thấy nói nôm na chính
là kết nối Serial không dây Nếu không cần giao tiếp Serial, bạn không nên
sử dụng 2 chân này nếu không cần thiết
Chân PWM (~): 3, 5, 6, 9, 10, và 11: Cho phép bạn xuất ra xung PWM với
độ phân giải 8bit (giá trị từ 0 → 28-1 tương ứng với 0V → 5V) bằng hàm analogWrite () Nói một cách đơn giản, bạn có thể điều chỉnh được điện áp ra
ở chân này từ mức 0V đến 5V thay vì chỉ cố định ở mức 0V và 5V như những chân khác
Trang 23ROBOT CÔNG NGHIỆP GVHD: ThS Trương Ngọc Bảo
Chân giao tiếp SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) Ngoài các
chức năng thông thường, 4 chân này còn dùng để truyền phát dữ liệu bằng giao thức SPI với các thiết bị khác
LED 13: Trên Arduino UNO có 1 đèn led màu cam (kí hiệu chữ L) Khi bấm
nút Reset, bạn sẽ thấy đèn này nhấp nháy để báo hiệu Nó được nối với chân
số 13 Khi chân này được người dùng sử dụng, LED sẽ sáng
Arduino UNO có 6 chân analog (A0 → A5) cung cấp độ phân giải tín hiệu 10bit(0 → 210-1) để đọc giá trị điện áp trong khoảng 0V → 5V Với chân AREF trên board,
bạn có thể để đưa vào điện áp tham chiếu khi sử dụng các chân analog Tức là nếu bạncấp điện áp 2.5V vào chân này thì bạn có thể dùng các chân analog để đo điện áp trongkhoảng từ 0V → 2.5V với độ phân giải vẫn là 10bit
Đặc biệt, Arduino UNO có 2 chân A4 (SDA) và A5 (SCL) hỗ trợ giao tiếpI2C/TWI với các thiết bị khác
2.4 Động cơ Servo
Chọn động cơ servo: Động cơ servo được sử dụng ở mọi khớp của Robot và trêntay gắp, sử dụng servo ở các vị trí này thay vì động cơ bước để giảm trọng lượng ở đầuRobot Các động cơ bước thường có khối lượng khá nặng nên thay chúng bằng động
cơ servo ở các khớp cuối sẽ giúp robot hoạt động trơn tru, ít rung lắc hơn Servo được
sử dụng trong mô hình là DC servo vì loại servo này dễ điều khiển và với yêu cầu đềtài ta không cần tới các tính năng nổi trội của AC servo vì AC servo đa số chỉ được sửdụng trong Robot công nghiệp
Loại động cơ DC servo được sử dụng trong đề tài:
Servo MG996R: Động cơ RC Servo MG996 là loại thường được sử dụng
nhiều nhất trong các thiết kế Robot hoặc dẫn hướng xe Động cơ RC Servo MG996 có lực kéo mạnh, các khớp và bánh răng được làm hoàn toàn bằng kim loại nên có độ bền cao, động cơ được tích hợp sẵn Driver điều khiển động
cơ bên trong theo cơ chế phát xung - quay góc nên rất dễ sử dụng
Trang 24Hình 2.8 Servo MG996R.
Servo SG90: Là loại được phổ biến sử dụng hiện nay, kích thước động cơ 23 x
12 x 29 mm, khối lượng 9 g Tích hợp sẵn driver điều khiển Vì khối lượng cực nhẹ và tương đối dễ điều khiển nên trong mô hình nó được lắp đặt ở vị trí tay gắp
Hình 2.9 Servo SG90.
2.5 Joy stick (Nút nhấn đa hướng)
Dùng để điều khiển chuyển động của cánh tay robot
Trang 25ROBOT CÔNG NGHIỆP GVHD: ThS Trương Ngọc Bảo
Hình 2.10 Nút nhấn Joystick.
Hình 2.11 Kết nối Joystick và Arduino UNO R3.
2.6 Bài toán động học Robot
Bài toán động học trong Robot bao gồm bài toán về vị trí, bài toán về vận tốc, bàitoán về gia tốc nhưng trong đề tài này chỉ đề cập tới bài toán về vị trí Trong bài toán
về vị trí thì việc xác định được vị trí và hướng của điểm cuối Robot tại những thờiđiểm
khác nhau là vần đề cốt lõi trong phần này Để có thể giải quyết được bài toán, thì như
ta đã biết Robot là một hệ nhiều vật rắn được ghép nối với nhau bằng các khớp xoayhoặc các khớp tịnh tiến do vậy cần phải xác định được hệ tọa độ gắn với các khớp củaRobot Nội dung phần này sẽ đưa ra các lý thuyết cơ bản của động học và cách vậndụng chúng để giải bài toán động học
2.6.1 Một số khái niệm cơ bản
Ma trận xoay
Trong Robot ma trận xoay có ý nghĩa điều hướng cho Robot, cụ thể là giúp Robot xoay theo một hướng xác định Ví dụ như trong Robot phun sơn người điều
Trang 26khiển phải đưa đầu phun hướng vào vật cần được sơn và ma trận xoay sẽ làm nhiệm
Ta có thể miêu tả hướng của Vbằng góc θ hợp bởi vector V và trục X và ta có thể
tính được giá trị của góc θ qua công thức
ê [ , hoặc có thể biểu diễn tổng quát
như sau:
ℎ ế ê [ ]
Trong mô hình Robot ta sẽ làm việc với hệ tọa độ không gian 3 chiều nên tương
tự như trên ta cũng sẽ chiếu vector V lên các trục tương ứng để biết được hướng củavector V
Trang 27ROBOT CÔNG NGHIỆP GVHD: ThS Trương Ngọc Bảo
Chiếu lên X 0
Chiếu lên Y 0
. Chiếu lên Z 0
Ma trận 3x3 trên được gọi là ma trận xoay và được kí hiệu là
như thế nào với hệ
hệ 1 1 1 xoay một góc bao nhiêu so với hệ 0 0 0 hay tỉ lệ
Trang 29ROBOT CÔNG NGHIỆP GVHD: ThS Trương Ngọc Bảo
vì phần hình chiếu của1
Tương tự như vậy ta có
lên 0nằm ở phần âm của trục 0 ,
Vậy ta có ma trận xoay trong trường hợp này như sau
,
1 1 1 lên các trục 0 0
Ma trận trên cho ta biết được hình chiếu của các trục
hề thay đổi, ta gọi đây là
Trang 30thì hệ đã dời một đoạn là d so với trục tương tự như vậy so với trụ là 0
Ma trận biến đổi thuần nhất:
Ma trận biến đổi thuần nhất dùng để tính toán giá trị tọa độ mới cho các khớp
trong
Robot còn được gọi là ma trận chuyển vị Dạng ma trận được mô tả trong hình dưới
Trang 31ROBOT CÔNG NGHIỆP GVHD: ThS Trương Ngọc Bảo
Hình 2.12 Ma trận tọa độ tuần nhất
Trong đó ma trận xoay thể hiện sự thay đổi về hướng của vector điểm cuối so vớiđiềm đầu và vector tịnh tiến thể hiện sự thay đổi về vị trí
Quy tắc bàn tay phải:
Trong quy tắc bàn tay phải khi ta đã biết được hướng của hai trong ba trục tạo độtrong không gian thì ta có thể tìm được hướng của trục còn lại Ví dụ sau sẽ cho tahiểu rõ về quy tắc bàn tay phải
Giả định rằng trục X có hướng từ phải sang trái và trục Y hướng ra ngoài tranggiấy, chúng ta cần xác định trục Z còn lại Để làm được điều này ta áp dụng quy tắcbàn tay phải như sau Để tay phải sao cho hướng của các ngón tay chỉ theo hướng củatrục X hướng từ lòng bàn tay đi ra theo hướng của trục Y lúc này đồng thời đưa ngóngiữa
theo hướng lòng bàn tay đi ra và giơ ngón cái lên, hướng của ngón cái bây giờ làhướng của trục Z
Hình 2.13 Quy tắc bàn tay phải
2.6.2 Biểu diễn Danevit – Hartenberg của bài toán động học Robot:
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àibá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
Trang 32D-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êmvà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ươngphá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ácchuyể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ổngquá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ể