Nội dung của đồ án - Tìm hiểu tổng quan và cơ sở lý thuyết của đề tài - Thiết kế mô hình robot cáp 6 bậc tự do trên phần mềm SolidWorks 2021 - Tính toán động học thuận đặt trục, vẽ khơng
TỔNG QUAN
Đặt vấn đề
Ngày nay, công nghệ robot đang phát triển mạnh mẽ, đặc biệt trong việc thay thế các công việc lặp đi lặp lại và nguy hiểm, giảm bớt sức lao động cho con người Robot được ứng dụng rộng rãi trong các nhà máy và các lĩnh vực yêu cầu độ chính xác cao như y tế, thám hiểm và cứu nạn Sự quan tâm của các quốc gia đối với lĩnh vực robot ngày càng tăng, dẫn đến nghiên cứu và phát triển không ngừng, cải thiện phần cứng, độ chính xác, công suất và tốc độ của robot Điều này giúp robot dần đáp ứng mọi nhu cầu của con người.
Trước đây ta từng biết đến robot chủ yếu là các cấu trúc kiểu cánh tay như PUMA
560, IRB 6620, RV-2FR là những robot công nghiệp với động cơ được lắp đặt chủ yếu ở từng khớp, cho phép chúng hoạt động hiệu quả trong không gian rộng rãi và không có vật cản Cấu trúc thẳng đứng của các robot này giúp tối ưu hóa khả năng di chuyển và làm việc trong các môi trường công nghiệp khác nhau.
Robot có ứng dụng đa dạng trong các lĩnh vực như gắp thả hàng hóa, hàn cắt máy móc, chăm sóc cây nông nghiệp và ghi mã sản phẩm Tuy nhiên, trong các môi trường hẹp và khắc nghiệt, cấu trúc robot truyền thống gặp khó khăn trong việc hoạt động ổn định Do đó, các loại robot mới như robot di động và robot truyền động bằng cáp đã được phát triển, mang lại tính linh hoạt cao và khả năng di chuyển dễ dàng trong các địa hình phức tạp Những robot đa bậc này rất linh hoạt, phù hợp cho việc kiểm tra và bảo trì máy móc trong không gian hạn chế và nguy hiểm Chúng còn được sử dụng trong thăm dò, cứu hộ, và phẫu thuật ở những khu vực khó tiếp cận Đặc biệt, độ dài của robot cần đủ lớn để vào sâu trong khu vực làm việc, và cấu trúc đa bậc giúp dễ dàng tránh né vật cản Động cơ của robot được tập trung ở phần đế, làm cho phần thân linh hoạt hơn và hạn chế ảnh hưởng của nhiễu từ trường, nhờ vào việc không có thiết bị điện nào trên thân robot, chỉ sử dụng dây cáp.
Hình 1.2: Ứng dụng của robot cáp; a) trong thăm dò; b) trong hàn cắt
1.1.1 Tình hình nghiên cứu ngoài nước
Robot điều khiển chuyển động bằng cáp đang được nghiên cứu rộng rãi trên toàn cầu và được phân loại thành nhiều nhóm dựa trên cấu trúc kết hợp với dây cáp Một trong những loại robot phổ biến là robot có cấu trúc giống gân hay cơ bắp (Tendon Robot), thường được ứng dụng trong y học cho nội soi và sửa chữa các hư hỏng trên tàu Loại robot Tensegrity, với cấu trúc giống quả bóng và các thanh cứng kết nối bằng dây cáp, được NASA phát triển để khám phá bề mặt hành tinh Cuối cùng, robot Suspended Cable, có hình dáng tương tự robot song song, cung cấp không gian làm việc rộng hơn và thường được sử dụng trong quay phim tại sân vận động, kết hợp với công nghệ in 3D để xây dựng các công trình lớn.
Bảng 1.1: Phân loại các loại robot truyền động bằng cáp
STT Phân loại Đặc điểm Hình ảnh
Soft robot hoặc flexible robot [4-9]
Robot có cấu trúc gồm nhiều bậc tự do để robot trở nên linh động hơn trong không gian làm việc Hình dáng chúng giống con rắn hay giun
Robot có bề mặt là các mặt tiếp xúc có dạng như khối nhị thập diện
Robot có cấu trúc giống như Paralle robot hoạt động của robot có thể tuyến tính, phẳng hoặc ba chiều tăng khả năng mang tải của robot cáp
Trong những năm gần đây, nghiên cứu về robot cáp đã trở thành một lĩnh vực quan trọng, với nhiều công trình đáng chú ý Một trong số đó là nghiên cứu của Wilhelm vào năm 2017 về điều khiển cho Cable-driven Remote Access Manipulator (CRAM), trong đó tác giả đã giải quyết bài toán động học nghịch bằng phương pháp Jacobian, xác định điểm kỳ dị và đảm bảo sự ổn định của robot thông qua phương pháp Weighted Harmonic Isotropy Measure (WHIM), cho thấy ưu điểm vượt trội so với các phương pháp thông thường trên mô phỏng Ngoài ra, Wilhelm cũng đã chỉ ra những thách thức trong việc thiết kế mô hình robot cáp, đặc biệt là trong việc bố trí và điều khiển chuyển động của cáp Nghiên cứu của Wenfu Xu về Cable-driven Hyper-Redundant Manipulator (CDHM) cũng góp phần làm phong phú thêm lĩnh vực này.
2018 [8] nói về việc thiết kế bộ truyền động bằng cáp mới về cách bố trí đi dây cáp dùng
Bài viết đề cập đến việc điều khiển chuyển động của khớp bằng 3 động cơ và 3 sợi cáp, tương tự như thiết kế của công ty OC Robotic ở Mỹ Nghiên cứu đã xây dựng bộ điều khiển chuyển động cho một cặp khớp, tính toán động học và động lực học trên mô hình thực tế Nghiên cứu tiếp theo của Wenfu Xu vào năm 2018 về Cable-Driven Redundant Spatial Manipulator (CRSM) đã cải thiện khả năng mang tải của robot bằng cách kết hợp lò xo đàn hồi Năm 2021, Yang Zheng đã phát triển Cable-driven hyper-redundant manipulator (CDHM) với 24 bậc tự do và thiết kế bộ điều khiển Puller-Follower để điều khiển chính xác ba dây cáp cho một cặp khớp.
Việc ứng dụng robot cáp trong môi trường làm việc hẹp và tiềm ẩn nhiều nguy cơ đã thúc đẩy nhu cầu sử dụng hệ thống điều khiển từ xa Hệ thống này không chỉ hỗ trợ hiệu quả cho robot cáp mà còn đang trở nên phổ biến trong nhiều lĩnh vực Năm 2014, Khalifa đã đề xuất phương pháp đồng nhất không gian làm việc cho hai robot có cấu trúc khác nhau, mở ra khả năng ứng dụng cho nhiều hệ thống robot Roque Saltaren vào năm 2018 đã phát triển hệ thống điều khiển từ xa cho Hybrid Seaded Robot với 24 cơ cấu chấp hành, phục vụ cho việc khám phá đại dương Ngoài ra, nghiên cứu của Martinez năm 2020 về hệ thống điều khiển trên Mobile robot cũng đã giúp khám phá những địa hình phức tạp Hệ thống điều khiển từ xa kết hợp phản hồi lực cho robot cáp là rất quan trọng, giúp khai thác tối đa tiềm năng của công nghệ này.
1.1.2 Tình hình nghiên cứu trong nước
Nền kinh tế Việt Nam, một trong những nền kinh tế phát triển nhanh nhất thế giới, đang chứng kiến sự gia tăng nhu cầu về robot trong giai đoạn 2016 – 2021 Sự phát triển này phản ánh xu hướng Robotics và công nghệ cao, giúp doanh nghiệp giảm nhân công và chi phí vận hành, từ đó duy trì lợi thế cạnh tranh Robot ngày càng được ứng dụng rộng rãi trong các nhà máy sản xuất thiết bị di động, đồ uống, thực phẩm, hàng tiêu dùng, chế biến và chế tạo Xu hướng này được thể hiện rõ trong Hình 1.4.
Robot đang thu hút sự chú ý của các nhà nghiên cứu và giáo viên tại Việt Nam nhờ vào tiềm năng to lớn của chúng Nhiều công trình nghiên cứu liên quan đến robot cáp đã được thực hiện, cho thấy sự quan tâm ngày càng tăng đối với lĩnh vực này.
Bảng 1.2: Các đề tài nghiên cứu về robot cáp ở Việt Nam
STT Tên đề tài Tác giả Năm Nội dung
Thiết kế mô hình robot truyền động bằng cáp phục vụ phun thuốc bảo vệ thực vật trong sản xuất Nông nghiệp
Nguyễn Đức Tài, PGS.TS Nguyễn Trường Thịnh
2020 Tính toán và kiểm chứng động học cho robot trên mô phỏng
Sử dụng robot song song 6 bậc tự do điều khiển bằng cáp cho các ứng dụng trong in bê tông 3D [17]
Ths Tưởng Phước Thọ, PGS.TS Nguyễn Trường Thịnh
Thiết kế cơ khí và phân tích động học cho không gian làm việc của robot cáp song song được thực hiện, với khảo sát không gian làm việc cho các tải trọng 30kg, 50kg, 60kg và 80kg Đồng thời, bộ căng cáp được xây dựng nhằm duy trì độ căng nhất định cho cáp.
Tại Đại Học Sư Phạm Kỹ Thuật, nghiên cứu về robot cáp đang được thúc đẩy mạnh mẽ Năm 2021, sinh viên Trần Thanh Hải và Đào Hùng Vương đã thực hiện đề tài “Thiết kế và chế tạo robot 7 bậc tự do với cơ cấu truyền động bằng cáp” dưới sự hướng dẫn của TS Đặng Xuân Ba Đề tài đã thành công trong việc thiết kế và thi công mô hình robot 7 bậc tự do, đồng thời phát triển phương pháp giải động học nghịch thông minh, các bộ điều khiển PID, SMC và giải thuật né vật cản cho robot trên môi trường mô phỏng.
Năm 2021, nhóm sinh viên Đỗ Hoàng Thái Dương, Phạm Phùng Huỳnh Đình Đại và Nguyễn Thị Ngọc Thi, dưới sự hướng dẫn của TS Đặng Xuân Ba, đã thành công trong việc thiết kế và thi công robot 7 bậc tự do với khả năng tránh vật cản linh hoạt, áp dụng các thuật toán điều khiển PID, Fuzzy và SMC Tuy nhiên, mô hình này vẫn gặp hạn chế do sử dụng động cơ DC, dẫn đến quy mô nhỏ và vấn đề giãn cáp trong quá trình vận hành Năm 2022, nhóm sinh viên Dương Minh Trí và Trần Trọng Lượng, hướng dẫn bởi TS Trần Đức Thiện, đã phát triển mô hình robot 6 bậc tự do sử dụng cáp và hệ thống điều khiển phân tán mạng CAN, nhưng cũng gặp khó khăn với động cơ AC Servo và tính linh hoạt của cáp Việc điều khiển robot từ xa ngày càng trở nên phổ biến, đặc biệt trong lĩnh vực cánh tay máy, với nhiều thiết bị Joystick như Novint Falcon và Phantom được phát triển để phục vụ cho ứng dụng này, cho thấy sự cần thiết của nghiên cứu trong lĩnh vực này.
Kết quả nghiên cứu cho thấy robot cáp nối tiếp có nhiều tiềm năng ứng dụng thực tiễn, đặc biệt trong các lĩnh vực nguy hiểm và hạn chế về không gian Việc phát triển hệ thống điều khiển từ xa kết hợp phản hồi lực cho robot cáp là cần thiết, nhằm nâng cao hiệu quả trong các ứng dụng y tế và môi trường làm việc khó khăn Điều này đã thúc đẩy nhóm nghiên cứu lựa chọn thực hiện đề tài này.
“Thiết kế mô hình và bộ điều khiển từ xa cho robot cáp nối tiếp 6 bậc tự do”.
Mục đích và mục tiêu của đề tài
1.2.1 Mục đích của đề tài
Cải tiến cấu trúc robot nối tiếp truyền động bằng cáp là một bước tiến quan trọng trong nghiên cứu robot đa bậc Phương pháp giải động học nghịch được áp dụng để tối ưu hóa hiệu suất của cấu trúc này Đồng thời, việc điều khiển robot thông qua mạng CAN giúp nâng cao tính linh hoạt và hiệu quả trong hoạt động Cuối cùng, nghiên cứu và xây dựng hệ thống điều khiển từ xa cho robot sẽ tạo ra những ứng dụng đa dạng và tiện ích hơn trong thực tiễn.
1.2.2 Mục tiêu của đề tài
Thiết kế và thi công mô hình robot cáp 6 bậc tự do kết hợp tính toán động học bằng phương pháp Jacobian Hệ thống điều khiển từ xa không dây được xây dựng với thiết bị điều khiển joystick Nonvint Falcon, tích hợp phản hồi lực để mang lại cảm nhận xúc giác chân thực cho người vận hành khi điều khiển robot.
Phương pháp nghiên cứu
Phân tích dữ liệu được thực hiện thông qua các công cụ như Matlab và QT Creator, giúp quan sát và thu thập dữ liệu hiệu quả Quá trình này cho phép vẽ đồ thị phản ứng và đánh giá kết quả của hệ thống Để kiểm tra tính chính xác của các kết quả, bài viết tham khảo một số tài liệu từ Google Scholar.
Phân tích mô phỏng sử dụng công cụ Simscape trong Matlab Simulink nhằm mô phỏng giải thuật giải động học nghịch thông qua phương pháp Jacobian Nghiên cứu này tập trung vào việc phát triển hệ thống điều khiển từ xa cho mô hình robot cáp 6 bậc tự do, giúp nâng cao hiệu quả và độ chính xác trong quá trình điều khiển.
Phân tích thí nghiệm bao gồm việc đánh giá kết quả thực nghiệm dựa trên những dữ liệu thu được từ mô phỏng Qua đó, chúng ta sẽ đưa ra nhận xét về sự phù hợp giữa thực nghiệm và lý thuyết đã học từ các bài báo Việc so sánh này giúp làm rõ những điểm mạnh và hạn chế của phương pháp thực nghiệm, đồng thời khẳng định tính chính xác của lý thuyết trong ứng dụng thực tiễn.
Các tiêu chí đánh giá hiệu quả của hệ thống bao gồm việc kiểm tra sai số bám của robot so với quỹ đạo đã đặt, cũng như chất lượng điều khiển dựa trên dữ liệu đã thu thập từ mô hình.
Giới hạn đề tài
– Đề tài chỉ giải quyết các vấn đề liên quan đến động học của robot
Phương pháp đề xuất tính động học nghịch của robot chỉ tập trung vào việc giải quyết bài toán vị trí mà không xem xét các ràng buộc về hướng di chuyển của robot.
– Chưa đánh giá và tối ưu thời gian trễ trong hệ thống điều khiển từ xa
Mô hình robot do nhóm sinh viên tự thiết kế và thi công chưa được đánh giá về độ bền vững, ổn định và an toàn trong quá trình hoạt động Hơn nữa, vị trí ban đầu của robot được đặt thủ công, dẫn đến việc chưa thể xác định tính chính xác tuyệt đối của mô hình.
Giới thiệu nội dung
Các chương còn lại bao gồm:
Chương 2: Cơ sở lý thuyết
Chương này cung cấp cái nhìn tổng quan về robot, bao gồm động học và quy hoạch quỹ đạo cho robot Ngoài ra, chương còn trình bày những kiến thức cơ bản về mạng CAN, lý thuyết hệ thống điều khiển từ xa, phương pháp phản hồi lực, và hệ thống điều khiển phân tán.
Chương 3: Thiết kế và thi công mô hình
Chương này cung cấp cái nhìn tổng quan về hệ thống được thiết kế và thi công, bao gồm quy trình thiết kế và thi công mô hình robot, mạng CAN, tủ điện, cũng như xây dựng giao diện quan sát và thu thập dữ liệu.
Chương 4: Tính toán động học hệ thống
Chương này tập trung vào việc tính toán và kiểm chứng động học cho joystick điều khiển robot cáp, đồng thời phân tích động học của robot cáp 6 bậc tự do thông qua các phương pháp đại số và Jacobian.
Chương 5: Mô phỏng hệ thống
Chương này cung cấp cái nhìn tổng quan về hệ thống mô phỏng và kiểm chứng phương pháp Jacobian trong việc giải quyết động học nghịch cho robot Nó cũng trình bày các bước xây dựng hệ thống điều khiển từ xa, bao gồm cả mô phỏng hệ thống điều khiển từ xa với và không có phản hồi lực.
Chương 6: Thực nghiệm và đánh giá hệ thống
Chương này cung cấp cái nhìn tổng quát về quy trình thực nghiệm và đánh giá mạng CAN, bao gồm các phương pháp truyền động bằng cáp cho robot cáp Ngoài ra, bài viết cũng đề cập đến việc thực nghiệm và đánh giá điều khiển robot từ xa, cả trong trường hợp không có phản hồi lực và có phản hồi lực.
Chương 7: Kết luận và hướng phát triển
Chương này trình bày về kết luận của đề tài đã thực hiện và các hướng có thể phát triển của đề tài.
CƠ SỞ LÝ THUYẾT
Tổng quan robot
Robot là những máy tự động mô phỏng hoạt động của con người, được thiết kế để thay thế con người trong các công việc phức tạp và nguy hiểm Chúng được lập trình bởi máy tính, có khả năng thực hiện nhiều hoạt động phức tạp dưới sự điều khiển của vi mạch điện tử và khớp nối chuyển động Hầu hết các khớp robot hoạt động bằng động cơ điện, thích hợp cho hệ thống tải nhẹ Với khả năng thực hiện công việc lặp đi lặp lại với tốc độ và độ chính xác cao, robot có độ bền lớn và thường được sử dụng trong các lĩnh vực lắp ráp, sản xuất, sửa chữa, cũng như làm việc trong môi trường khắc nghiệt và độc hại.
Động học robot
Mục đích của bài toán động học thuận là xác định vị trí của khâu tác động cuối của tay máy dựa trên các biến khớp Động học thuận cũng được áp dụng để xác định không gian làm việc của robot Tay máy được cấu tạo từ một chuỗi động hở với nhiều khâu (Links), được nối với nhau qua các khớp Một đầu chuỗi kết nối với giá (Base), trong khi đầu còn lại kết nối với phần công tác (End effector) Mỗi khâu kết hợp với khớp phía trước tạo thành một cặp khâu khớp, và mỗi cặp này được đặc trưng bởi hai loại thông số.
- Các thông số không thay đổi giá trị trong quá trình làm việc của tay máy được gọi là tham số
Các biến khớp là những thông số thay đổi giá trị khi tay máy hoạt động Để thể hiện sự thay đổi giữa các hệ tọa độ của các khớp liền kề, ta sử dụng phép biến đổi đồng nhất Quy tắc Denavit-Hartenberg cho phép kết hợp các ma trận chuyển vị riêng lẻ thành một ma trận chuyển vị tổng thể Biến đổi này có một nghiệm duy nhất, trong khi ba thông số còn lại được giữ cố định theo thiết kế cơ khí.
Hệ trục giữa và Z i (một cặp khâu khớp) được mô tả bởi các thông số như góc quay α i − 1 giữa trục Z i − 1 và Z i quanh trục X i − 1, khoảng cách a i − 1 giữa trục Z i − 1 và Z i dọc theo trục X i − 1, và khoảng cách d i giữa trục X i − 1 và X i dọc theo trục Z i Ngoài ra, góc quay θ 1 giữa trục X i − 1 và X i quanh trục Z i cũng được tính đến Phương pháp Denavit-Hartenberg được sử dụng để tính toán động học thuận bằng cách đặt các trục tọa độ tại các khớp của robot, từ đó xác định ma trận chuyển đổi tổng quát giữa hệ trục thứ {i-1} và hệ trục thứ {i}.
1 1 1 1 cos sin 0 sin cos cos cos sin sin sin sin cos sin cos cos
Ma trận chuyển vị của hệ từ hệ 0 đến hệ i được tính bằng cách nhân các ma trận chuyển vị ở từng khâu lại với nhau:
Động học thuận là quá trình xác định vị trí và hướng của cơ cấu chấp hành cuối dựa trên các giá trị biến khớp đã biết Kết quả của quá trình này được biểu diễn dưới dạng ma trận.
Trong đó:R 3×3 là ma trận biểu diễn hướng của điểm đầu cuối so với toạ độ gốc;
P 3×3 là ma trận biểu diễn vị trí của điểm đầu cuối so với toạ độ gốc.
Mục đích của bài toán động học nghịch là xác định các biến khớp của robot dựa trên tọa độ và hướng của cơ cấu chấp hành cuối Các phương pháp giải bài toán này bao gồm phương pháp đại số, hình học và số học Đối với robot có nhiều bậc tự do, việc tính toán động học nghịch trở nên phức tạp hơn, đòi hỏi áp dụng các phương pháp đặc biệt để giải quyết hiệu quả các bài toán liên quan.
Lý thuyết về phương pháp Jacobian
2.3.1 Các thành phần vận tốc từ khớp tới khớp trong cánh tay robot
Hình 2.2: Hình ảnh minh họa các thành phần của cánh tay máy Hình 2.2 mô tả các thành phần trong hệ cánh tay máy
Vận tốc góc của liên kết i+1 được xác định bằng vận tốc góc của liên kết thứ i cộng với một yếu tố mới do vận tốc xoay tại khâu i+1 gây ra Công thức này có thể được trình bày trong khung i như sau:
Bằng cách áp dụng ma trận xoay cho khung i và i + 1, chúng ta có thể mô tả chuyển động của khâu tại khung thứ i Khi nhân hai vế của công thức (2.4) với R i i + 1, ta có thể xác định vận tốc góc của link i+1 trong khung i + 1.
Vận tốc tuyến tính của gốc trong khung i + 1 cũng giống như vận tốc tại khung
i cộng thêm một thành tố mới gây ra bởi vận tốc xoay của link thứ i
Vận tốc dài tại hệ tọa độ i + 1 so với hệ tọa độ i :
Vận tốc dài trong hệ tọa độ i + 1 :
Tổng kết hai công thức cần nhớ là hai công thức sau:
Ma trận Jacobian J theo các biến được xác định bởi:
Trong đós i là vị trí end effector thứ i; j là góc quay các khớp của robot
Hàm cơ bản đối với động lực học thuận mô tả vận tốc của end effector được viết như sau:
Chúng ta có giá trị hiện tại của θ,s,t, từ đó tính toán được ma trận Jacobian J
, sau đó cập nhật Δθđể tăng hoặc giảm giá trị góc: θ = θ + Δθ (2.11)
Vị trí end effector thay đổi sẽ gây ra sự thay đổi về góc khớp và được ứng lượng theo công thức sau:
Viết lại sai số vị trí: e = JΔθ (2.13)
Công thức của phương pháp Jacobian transpose được biểu diễn như sau: Δθ = αJ e -1 (2.14)
Trong đó là hệ số sấp xỉ
Công thức của phương pháp pseudoinverse được biểu diễn như sau: Δθ = J e † (2.15)
Trong đó ma trận J theo phương pháp pseudoinverse có kích thước n m
Phương pháp pseduoinverse giúp ổn định gần điểm kỳ dị, nơi có sự thay đổi lớn về góc khớp của robot Tuy nhiên, do sai số trong thực tế, việc đạt được điểm kỳ dị là rất hiếm.
Phương pháp pseduoinverse có thêm thành phần khác đó là ma trận ( I - J J † )
Chúng ta có thể thiết lập giá trị Δθ theo công thức sau:
Bất kỳ vector φ nào cũng có thể đạt được giá trị Δθ để làm giảm giá trị JΔθ - e Bằng cách chọn φ ổn định, vị trí mong muốn có thể được xác định Ví dụ, φ có thể được chọn để không cập nhật giá trị góc, giúp tránh hiện tượng kỳ dị.
Một dạng khác của phương pháp pseudoinverse, hàm thông thường được viết như sau:
Ta có công thức khác:
Quy hoạch quỹ đạo
Quy hoạch quỹ đạo là quá trình thiết lập các tín hiệu tham chiếu cho bộ điều khiển robot, giúp robot di chuyển theo quỹ đạo mong muốn Có hai loại quỹ đạo chính: quỹ đạo điểm – điểm, đi qua hai điểm đã xác định trong khoảng thời gian cụ thể, và quỹ đạo đường, đi qua nhiều điểm theo một đường liên tục đã được xác định trước Để tạo quỹ đạo cho robot, đồ án này sử dụng đa thức bậc 3.
Quy hoạch quỹ đạo theo hàm đa thức bậc 3 có dạng:
Để xác định vị trí của cơ cấu chấp hành, cần phải đi qua hai điểm xác định trong không gian làm việc, từ vị trí đầu đến vị trí cuối của end effector Giải bài toán động học ngược, ta xác định các giá trị đầu và cuối cho các biến khớp, với q 0 = q t ( ) và q f = q t ( ) f Điều kiện ban đầu được thiết lập để đảm bảo tính chính xác trong quá trình điều khiển.
– Tại thời điểm bắt đầu: t =t 0 , q t ( ) 0 =q 0, ( ) 0 0 d q t v dt =
– Tại thời điểm kết thúc: t = t f , q t ( ) f =q f , d q t ( ) f v f dt Từ 2 điều kiện tại lúc bắt đầu và lúc kết thúc, thay vào phương trình (2.20) ta có hệ phương trình sau:
Giải hệ phương trình (2.21) ta được các nghiệm sau:
Thay các nghiệm từ phương trình (2.22) vào phương trình (2.20), ta được:
Nếu ta chọn vận tốc đầu và vận tốc cuối là 0 thì phương trình (2.23) trở thành:
Lý thuyết về mạng CAN bus
2.5.1 Tổng quan về mạng CAN bus
Giao thức CAN (Controller Area Network) là một hệ thống truyền thông bus nối tiếp phát triển bởi Bosch vào những năm 1980, sử dụng hai dây (CAN-High và CAN-Low) Được chuẩn hóa theo tiêu chuẩn ISO-11898 và ISO-11519, CAN trở thành giao thức tiêu chuẩn trong ngành công nghiệp ô tô, hỗ trợ giao tiếp cho xe ô tô chở khách, xe tải và tàu thuyền Hiện nay, giao thức này đã mở rộng ứng dụng ra nhiều lĩnh vực khác, bao gồm tự động hóa công nghiệp, xây dựng tự động hóa, máy dệt và các loại máy móc sản xuất, được gọi là mạng điều khiển nhúng.
Hình 2.3: Mô hình tổng quan về cấu trúc mạng CAN
Dựa vào Hình 2.3, cấu trúc mạng CAN sẽ bao gồm nhiều node khác nhau Trong đó mỗi node bao gồm cấu trúc như sau:
– Bộ điều khiển CAN: trong cấu trúc mạng CAN khối điều khiển sẽ đóng vai trò xử lý tín hiệu khi các node trao đổi thông tin với nhau
Bộ thu phát CAN chuyển đổi dữ liệu đã xử lý thành tín hiệu số dưới dạng các bit 0 và 1, dựa trên mức điện áp chênh lệch giữa hai kênh CAN HIGH và CAN LOW Mạng CAN 2.0 có những đặc điểm nổi bật như tính linh hoạt và khả năng truyền tải dữ liệu hiệu quả.
Bảng 2.1: Thông số kỹ thuật CAN 2.0
Kích thước dữ liệu Tối đa 8 byte/Frame
Tốc độ truyền Tối đa 1Mbps trong phạm vi 40m
Phạm vi tối đa 6 km với tốc độ 10Kbps
Số node tối đa 127 node
Phương pháp tránh xung đột dữ liệu Dựa trên ưu tiên của ID gói tin
Phương pháp đọc tín hiệu trên bus Dựa trên sự chênh lệch điện áp 2 dây CAN
Cơ chế phân xử không phá hủy cho phép dữ liệu được truyền lên đường bus và có thể truy cập từ bất kỳ node nào Mỗi node đều có khả năng lấy dữ liệu và được phân xử theo thứ tự ưu tiên.
Bus truy cập với khung với mức độ ưu tiên cao nhất mà không có bị delay
Cơ chế phát hiện lỗi: Ngắt kết nối với node bus bị lỗi mà vẫn duy trì liên lạc giữa các nút còn lại
Các khung truyền không được xác định bằng địa chỉ các nút, mà được xác định bằng nội dung của chúng
Cấu hình hệ thống đơn giản Giảm khối lượng dây dẫn Cải thiện độ tin cậy của hệ thống khả năng tương thích với các công cụ chuẩn đoán
Mạng CAN có khả năng phát hiện lỗi qua 5 bộ phận khác nhau, giúp việc sửa chữa trở nên dễ dàng hơn Hơn nữa, chi phí xây dựng mạng thấp nhờ vào tính tiện lợi trong việc kết nối dây và khả năng giảm thiểu lỗi cho hệ thống.
Có tính linh hoạt cao, dễ dàng nâng cấp và mở rộng, đồng thời đảm bảo mức ưu tiên cao và bảo mật thông qua bộ lọc ID.
Dữ liệu CAN được truyền dưới dạng các frame (khung dữ liệu), được cấu tạo gồm nhiều bit với những chức năng khác nhau Có 4 loại frame dữ liệu:
– Data frame (khung dữ liệu): là khung mang dữ liệu từ một bộ truyền dữ liệu đến các bộ phận dữ liệu
Khung yêu cầu (remote frame) là một loại khung được gửi từ một node nhằm yêu cầu một node khác truyền khung dữ liệu có ID tương ứng với khung yêu cầu đó.
– Error frame (khung báo lỗi): là khung được truyền bởi bất kỳ node nào khi node đó phát hiện lỗi bus
Khung báo quá tải (overload frame) được sử dụng để tạo độ trễ giữa các khung dữ liệu hoặc yêu cầu trong hệ thống bus CAN Mỗi node trong bus CAN có khả năng truyền dữ liệu khi phát hiện bus rãnh, nhưng nếu một node nhận quá nhiều dữ liệu, nó có thể sử dụng khung này để ngăn chặn sự truyền tiếp theo Hiện nay, các bộ điều khiển CAN đã trở nên thông minh và hiệu quả, nên không còn cần thiết phải sử dụng khung báo quá tải nữa.
Khung dữ liệu và khung yêu cầu là hai loại khung duy nhất có ID, và cơ chế phân xử sẽ được áp dụng cho chúng khi truyền trên bus Hai loại khung này có hai định dạng khác nhau: định dạng chuẩn (Standard) và định dạng mở rộng (Extended).
– Định dạng khung chuẩn sử dụng ID có độ dài 11 bit
– Định dạng khung mở rộng sử dụng ID có độ dài 29 bit
Chuẩn CAN 2.0A chỉ quy định sử dụng loại khung chuẩn Chuẩn CAN 2.0B sử dụng cả loại khung chuẩn và khung mở rộng
Lý thuyết về hệ thống điều khiển robot từ xa
Hệ thống điều khiển robot từ xa cho phép người dùng thực hiện các thao tác điều khiển robot thông qua các thiết bị như joystick, điện thoại và thiết bị phản hồi lực Việc sử dụng thiết bị phản hồi lực, chẳng hạn như Novint Falcon, nâng cao trải nghiệm điều khiển và mang lại sự chính xác trong các thao tác.
Phương pháp position-mapping [13, 18, 19]được áp dụng theo công thức sau: w e h
Trong bài viết này, P e đại diện cho vị trí cuối của robot, P h là vị trí của joystick, và P là vị trí trong không gian làm việc ảo của robot Hệ số khuếch đại không gian làm việc được ký hiệu là K, với K = diag (k x, k y, k z).
Để xác định các hệ số ánh xạ giữa robot master và robot slave, trước tiên cần xác định vùng không gian làm việc mong muốn của robot slave cùng với vùng không gian làm việc có thể di chuyển ở robot master Từ đó, chúng ta có thể tính toán để xác định vùng không gian làm việc chung của hai robot dựa trên các hệ số K và P w.
Ta sẽ chọn hai thông số trên sao cho vùng làm việc chung của 2 robot là tối đa.
Lý thuyết về phương pháp phản hồi lực
Phương pháp phản hồi lực đơn giản dựa trên việc tạo ra một lò xo ảo, giúp tái tạo cảm giác lực khi di chuyển ra ngoài vùng không gian làm việc Khi lò xo bị nén, nó sẽ tạo ra một lực tác động ngược lại theo định luật Hooke, tạo cảm giác phản hồi tự nhiên cho người sử dụng.
Biếu diễn tay cầm ảo của thiết bị Haptic
Lực đàn hồi của lò xo có thể được tính toán bằng công thức f = k s Δx, trong đó k là hệ số đàn hồi và Δx là độ biến dạng của lò xo Hình 2.5 minh họa việc tạo ra đối tượng ảo nhằm điều khiển lực tác động lên thiết bị phản hồi lực.
Lực tác động f được xác định bởi hệ số độ cứng lò xo k s và chiều dài thay đổi của lò xo Δx Để nhận biết các điểm tiếp xúc cứng, cần sử dụng giá trị lớn cho hằng số lò xo Tuy nhiên, do hạn chế về độ cứng của thiết bị phản hồi lực, giá trị k s thường không thể tăng lên đủ mức để cảm nhận chân thực độ cứng bề mặt tiếp xúc Việc áp dụng cơ chế giảm chấn giúp ổn định lực tác động lên người dùng một cách từ từ, từ đó tăng cường cảm nhận xúc giác cho người dùng.
Trong đó c là hệ số giảm chấn, v= xlà tốc độ thay đổi chuyển động của chiều dài lò xo
Việc tích hợp yếu tố giảm chấn giúp ổn định phần xúc giác, cho phép lực tác động giảm dần cho đến khi không còn di chuyển, lúc này toàn bộ lực tác động sẽ tương đương với lực nén của lò xo.
Lý thuyết về hệ thống điều khiển phân tán
Trong lĩnh vực điều khiển và tự động hóa, hai loại kiến trúc điều khiển phổ biến là kiến trúc điều khiển tập trung và kiến trúc điều khiển phân tán Mỗi loại kiến trúc này có các thành phần và cấu trúc riêng, phù hợp với những ứng dụng khác nhau Kiến trúc điều khiển tập trung được minh họa trong Hình 2.6, trong khi kiến trúc điều khiển phân tán được trình bày trong Hình 2.7.
Phòng điều khiển trung tâm
Kiến trúc điều khiển tập trung (CCS) sử dụng một máy tính duy nhất để quản lý toàn bộ quá trình kỹ thuật, bao gồm các loại máy tính như bộ điều khiển số trực tiếp (DDC), máy tính lớn, máy tính cá nhân hoặc thiết bị điều khiển khả trình Thông thường, máy tính điều khiển được đặt ở phòng điều khiển, cách xa hiện trường Trong hệ thống này, tín hiệu và thông tin từ các thành phần và cảm biến được gửi về trung tâm điều khiển, nơi quyết định các tác động lên các đối tượng trong hệ thống Việc truyền tín hiệu có thể thực hiện qua dây hoặc không dây, nhưng tất cả đều hội tụ tại máy tính điều khiển Kiến trúc này thường được áp dụng trong các dự án tự động hóa quy mô vừa và nhỏ nhờ vào tính đơn giản trong việc điều khiển máy móc và thiết bị.
Phòng điều khiển trung tâm
Máy tính giám sát Máy tính giám sát
Phòng điều khiển cục bộ I/O
Hình 2.7: Kiến trúc điều khiển phân tán
Kiến trúc điều khiển phân tán (DCS) là một phương pháp điều khiển mà trong đó quyết định và điều khiển được phân chia giữa các thành phần khác nhau, thay vì tập trung tại một trung tâm duy nhất Điều này cho phép các quyết định được thực hiện một cách cục bộ và phân tán trên từng thành phần của hệ thống Các thành phần trong kiến trúc này có khả năng tương tác và trao đổi thông tin, từ đó thực hiện các quyết định điều khiển hiệu quả Mỗi thành phần có thể đảm nhận vai trò như cảm biến, bộ điều khiển, hoặc thực thi các hành động cụ thể, đồng thời có khả năng liên lạc và gửi/nhận thông tin với các thành phần khác trong hệ thống.
Kiến trúc điều khiển phân tán mang lại nhiều lợi ích quan trọng, bao gồm tăng tính linh hoạt và độ tin cậy cho hệ thống Việc phân tán quyết định và điều khiển giúp hệ thống duy trì hoạt động ổn định ngay cả khi một thành phần gặp sự cố Thêm vào đó, kiến trúc này cung cấp khả năng mở rộng linh hoạt, cho phép thêm hoặc loại bỏ các thành phần mà không ảnh hưởng đến các phần khác Cuối cùng, kiến trúc điều khiển phân tán tạo điều kiện cho sự phân tách chức năng và quản lý, giúp các thành phần phát triển độc lập và tối ưu hóa hiệu suất.
Kiến trúc điều khiển phân tán đang được áp dụng rộng rãi trong nhiều lĩnh vực như điều khiển công nghiệp, hệ thống mạng thông tin, và điều khiển giao thông Sự phát triển nhanh chóng của công nghệ thông tin và truyền thông đã làm cho kiến trúc này trở nên phổ biến và quan trọng hơn bao giờ hết Nó đóng vai trò thiết yếu trong việc xây dựng các hệ thống điều khiển phức tạp, đáp ứng nhu cầu của thế giới kỹ thuật số hiện đại.
THIẾT KẾ VÀ THI CÔNG HỆ THỐNG
Tổng quan về hệ thống thi công
Hình 3.1: Tổng quan về hệ thống điều khiển từ xa robot cáp
Hệ thống điều khiển từ xa trong đề tài này gồm hai phần: master và slave Hệ thống master sử dụng joystick 3D Nonvint Falcon và máy tính để đọc tín hiệu, ánh xạ vị trí của joystick sang robot cáp trên hệ thống slave, đồng thời gửi tín hiệu qua giao thức Zigbee Máy tính cũng tính toán phản hồi lực cho joystick, tạo cảm giác chân thực cho người điều khiển Hệ thống slave bao gồm máy tính nhúng Jetson Nano, mạng CAN, driver điều khiển động cơ AC Servo và cơ cấu chấp hành AC Servo, có nhiệm vụ nhận tín hiệu từ master, tính toán động học nghịch bằng phương pháp Jacobian và điều khiển đồng bộ 6 khớp của robot Nhóm thực hiện thiết kế và thi công mô hình robot cáp 6 bậc tự do, mạng truyền thông CAN, tủ điện điều khiển, phương pháp ánh xạ không gian làm việc, và giao diện thu thập, quan sát dữ liệu cho hệ thống.
Thiết kế và thi công mô hình robot
3.2.1 Thiết kế mô hình robot
Hình 3.2: Tổng quan mô hình 3D robot 6 bậc tự do
Mô hình 3D của robot cáp 6 bậc tự do được thiết kế trên phần mềm SolidWorks, với hình minh họa tại Hình 3.2 Robot gồm hai thành phần chính: đế robot và thân robot, như thể hiện trong Hình 3.3 Đế robot được chế tạo từ khung nhôm định hình, phục vụ cho việc bố trí động cơ Thân robot bao gồm bốn khâu (khâu 0, khâu 1, khâu 2 và khâu cuối - end-effector) cùng với sáu khớp xoay, tương ứng với ba khớp nối vạn năng.
Hình 3.3: Cấu trúc tổng quan mô hình 3D robot
3.2.1.1 Thiết kế đế robot Đế robot được thiết kế từ nhôm định hình và thép tấm, đế là nơi bố trí động cơ truyền động cho 6 khớp của robot và bố trí các bộ căng cáp
Khung đế robot được thiết kế từ các thanh nhôm định hình kích thước 30x30 cm, tạo thành khối vuông có kích thước 50x50x50 cm Đế robot bao gồm hai tấm thép dày 5mm, trong đó tấm đầu tiên kết nối với khâu 1 và tấm thứ hai dùng để lắp đặt các bộ căng cáp Bộ động cơ và hộp số AC Servo được gắn với khung đế thông qua một tấm thép nhỏ dày 10mm.
Hình 3.5: Mô hình 3D hai tấm nhôm ở đế robot a) tấm nhôm thứ 1; b) tấm nhôm thứ 2
Hình 3.6: Mô hình 3D cơ cấu căng cáp
Cơ cấu căng cáp sử dụng lò xo để đùn và làm cong vỏ cáp, từ đó tạo ra lực căng cho sợi cáp bên trong Mỗi bậc tự do của robot được trang bị một bộ căng cáp riêng biệt.
Khung đế của robot là nơi lắp đặt các động cơ truyền động, bao gồm động cơ AC Servo kết hợp với hộp số Các động cơ này được cố định trên các thanh nhôm định hình của khung đế bằng các tấm thép dày 10mm, đảm bảo sự ổn định và hiệu quả hoạt động cho robot.
Hình 3.7: Mô hình 3D bộ động cơ ở đế robot a) bộ động cơ 400W và hộp số; b) nẹp bộ động cơ 400W; c) bộ động cơ 100W và hộp số; d) nẹp bộ động cơ 100W
Các động cơ AC Servo được bố trí trên khung đế robot, với các động cơ 400W lớn hơn ở bên phải, chịu trách nhiệm truyền động cho khớp 1, 2 và 3, trong khi các động cơ 100W nhỏ hơn ở bên trái, truyền động cho khớp 4, 5 và 6 Thiết kế pulley được trang bị các rãnh và lỗ phù hợp để truyền động bằng cáp, đảm bảo hiệu suất và độ chính xác cao cho robot.
Hình 3.8: Mô hình 3D pulley động cơ ở đế robot a) góc nhìn 3D; b) góc nhìn từ trên xuống Động cơ 3 Động cơ 2 Động cơ 1 Động cơ 6 Động cơ 5 Động cơ 4
Hình 3.9: Thứ tự động cơ trên mô hình 3D
Thân robot bao gồm 7 thành phần chính, trong đó có 4 khâu: khâu 1, khâu 2, khâu 3 và khâu cuối (end-effector) Ngoài ra, robot còn được trang bị 3 khớp vạn năng (universal joint), mỗi khớp cung cấp 2 bậc tự do cho robot Cấu trúc thân robot được thể hiện chi tiết trong Hình 3.10.
Khâu 1 Khớp 1 Khâu 2 Khớp 2 Khâu 3 Khớp 3 End-effector
Cấu trúc mô hình 3D của robot cáp được thiết kế với các khâu và khớp dạng module, giúp việc lắp ghép và tháo rời trở nên dễ dàng Thiết kế module không chỉ đơn giản hóa quá trình lắp ráp mà còn cho phép tăng số lượng khớp một cách linh hoạt bằng cách bổ sung các khâu và khớp mới vào mô hình hiện có Do các module khâu và khớp có cấu trúc tương tự nhau, bài viết sẽ trình bày chi tiết về cấu tạo của một cặp khâu khớp.
Mô hình 3D của khâu 1 bao gồm các chi tiết: a) mô hình lắp ghép; b) chi tiết 1; c) chi tiết 2; d) chi tiết 3 Cấu tạo khớp 1 của robot được hình thành từ 3 chi tiết, trong đó chi tiết 1 và chi tiết 3 được kết nối với chi tiết 2 thông qua các bu lông và đai ốc Khâu 2 và khâu 3 của robot có cấu trúc tương tự như khâu 1, được mô tả trong hình ảnh tiếp theo.
Hình 3.12: Mô hình 3D của khâu 2 và khâu 3
Khâu cuối của robot bao gồm ba chi tiết, giúp lắp ghép dễ dàng các cơ cấu chấp hành (end-effector) với hình dạng đa dạng, như được thể hiện trong Hình 3.13.
Mô hình 3D khâu cuối của robot bao gồm các thành phần chính là tay nối dài và khớp vạn năng Hình 3.13 minh họa cấu trúc của mô lắp ghép, chi tiết 2 và chi tiết 3, cho thấy cách thức hoạt động của các khớp trong robot.
Khớp vạn năng Các tay nối dài
Mô hình 3D của khớp robot cho thấy mỗi khớp vạn năng được trang bị 4 tay nối dài Trong số đó, một tay nối dài giữ pulley xoay quanh trục Y, một tay nối dài giữ pulley xoay quanh trục Z, và hai tay nối dài giữ encoder cho các khớp xoay quanh trục Y và trục Z Các chi tiết này được mô tả rõ ràng trong hình bên dưới.
Tay nối dài giữ encoder cho khớp xoay quanh trục Y
Tay nối dài giữ encoder cho khớp xoay quanh trục Z
Mô hình 3D tay nối dài bao gồm các thành phần quan trọng: a) giữ pulley xoay quanh trục Y, b) giữ pulley xoay quanh trục Z, c) giữ encoder cho khớp xoay quanh trục Y, và d) giữ encoder cho khớp xoay quanh trục Z.
Mô hình 3D của khớp robot bao gồm 7 chi tiết và được mô tả trong Hình 3.15
Hình 3.16: Mô hình 3D khớp vạn năng của robot a) mô hình lắp ghép; b) chi tiết 1; c) chi tiết
Các chi tiết 3, 4, 5 và 6 là các trục inox có đường kính 6mm, kết hợp với chi tiết 1 và 2 để tạo thành một khối khớp vạn năng, cho phép xoay quanh hai trục vuông góc Chi tiết 7 là pulley được thiết kế cho việc dẫn động bằng cáp, cố định với chi tiết 2, đảm nhận nhiệm vụ kéo khớp robot xoay quanh trục Y Thiết kế các pulley này được mô tả trong Hình 3.17.
Hình 3.17: Mô hình 3D pulley trên thân robot a) góc nhìn 3D; b) góc nhìn từ trên xuống
3.2.2 Thi công mô hình robot
Dựa trên bản thiết kế robot đã trình bày, nhóm tiến hành gia công các thành phần của robot cáp 6 bậc tự do bằng các phương pháp như in 3D và CNC Quy trình bắt đầu với việc gia công phần đế, tiếp theo là phần thân, và cuối cùng là lắp ghép hoàn thiện mô hình robot.
Hình 3.18: Tổng quan mô hình robot thi công
Thiết kế và thi công module CAN
3.3.1 Yêu cầu thiết kế cho module CAN
Mỗi module CAN có nhiệm vụ điều khiển và giám sát 1 khớp xoay của robot, vì vậy mỗi module cần có những chức năng sau:
Bảng 3.1: Yêu cầu thiết kế module CAN
STT Yêu cầu Thiết kế
Mạch điều khiển trong tủ điện AC dễ bị nhiễu, dẫn đến tín hiệu encoder từ động cơ bị sai lệch Do đó, module CAN cần phải có khả năng triệt tiêu nhiễu AC để đảm bảo độ chính xác trong quá trình hoạt động.
Mạch lọc thông thấp đọc encoder từ AC Servo
Đối với encoder trên động cơ AC, việc kết nối trực tiếp có thể gây hư hỏng mạch điều khiển do dòng điện lớn Do đó, cần phải cách ly module CAN với mạch động lực để đảm bảo an toàn và hiệu suất hoạt động.
Mạch cách ly AC - DC
3 Có khả xuất xung điều khiển động cơ AC Servo Sử dụng vi điều khiển để tạo xung
Module giao tiếp CAN không chỉ có khả năng truyền thông qua mạng CAN mà còn tích hợp nhiều chức năng hữu ích khác như đọc tín hiệu tương tự, giao tiếp UART và giao tiếp SPI.
3.3.2 Sơ đồ khối cho module CAN
Hình 3.23: Sơ đồ khối các thành phần trong module CAN
Dựa vào yêu cầu thiết kế, sơ đồ khối các thành phần của một node CAN được mô tả trong Hình 3.23 và được trình bày cụ thể như sau:
- Khối nguồn: cung cấp nguồn 5V và 3V cho mạch
- Khối nguồn USB giao tiếp: cổng USB giao tiếp nạp code và Debug
- Khối đọc Encoder: kênh đọc encoder
- Khối xử lý trung tâm: vi điều khiển
- Khối cấp xung cho AC Motor: kênh cấp xung cho động cơ AC
- Khối pin Input-Output: chân Input và Output
3.3.3 Sơ đồ nguyên lý cho module CAN
Dựa trên yêu cầu thiết kế và sơ đồ khối của các thành phần trong một node CAN, chúng ta sẽ tiến hành thiết kế từng khối riêng lẻ Cuối cùng, sẽ thực hiện bố trí và nối dây cho mạch PCB để hoàn thiện hệ thống.
Hình 3.24: Khối nguồn 5VDC trong một node CAN
Khối nguồn sử dụng IC7805 để ổn định điện áp đầu vào cho mạch, với tụ điện giúp lọc phẳng nguồn và đèn LED báo hiệu trạng thái nguồn Điện áp đầu vào được cung cấp trong khoảng từ 7 đến 36 VDC.
Hình 3.25: Khối nguồn 3.3VDC trong một node CAN
Trong mạch điện sử dụng nguồn 3V3, IC AMS1117-3V3 được dùng để hạ áp, tương tự như trong mạch nguồn 5VDC Mạch nguồn này còn được trang bị tụ lọc để làm phẳng điện áp, cùng với công tắc bật tắt nguồn và đèn báo hiệu.
Cổng nạp chương trình trên node CAN cho phép giao tiếp nạp Code và Debug với vi xử lý STM32 thông qua hai chân tín hiệu SWDIO và SWCLK Cầu chì U7 được sử dụng để bảo vệ mạch khỏi tình trạng quá tải nguồn USB và nguồn của PCB.
Hình 3.27: Bộ lọc thông thấp đọc encoder từ AC Servo trong một node CAN
Việc nối trực tiếp động cơ AC với vi điều khiển mà không có bộ cách ly có thể gây hỏng hóc cho vi điều khiển do dòng điện lớn hơn Do đó, cần thiết phải sử dụng bộ cách ly để bảo vệ mạch Mạch đọc encoder AC thường sử dụng opto để đảm bảo an toàn và hiệu quả.
TLP521 có thời gian lên xuống tín hiệu từ 5us đến 200kHz Để giảm thiểu nhiễu, việc sử dụng bộ lọc thông thấp tại ngõ vào của opto sẽ giúp tín hiệu trở nên ổn định hơn.
Hình 3.28: Mạch đọc encoder gắn trên link trong một node CAN
Kênh encoder còn lại hoạt động với nguồn 5VDC và cần mạch lọc thông thấp để ổn định tín hiệu Diode Zenner được sử dụng để điều chỉnh tín hiệu xuống còn 3.3VDC, giúp tương thích với ngõ vào tín hiệu số của vi điều khiển STM.
Hình 3.29: Module giao tiếp CAN TJA trong một node CAN
Sử dụng module TJA1050 hỗ trợ cho STM giao tiếp thông qua CAN bus
Hình 3.30: Mạch tạo dao động cho vi xử lý
Sử dụng thạch anh có tần số dao dộng là 32.768kHz để tạo dao động ngoài
Hình 3.31: Nút nhấn reset Nút nhấn reset kết nối với đèn báo trạng thái nút nhấn và tụ chống dội
Hình 3.32: Sơ đồ chân sử dụng trên MCU STM32F103C8T6 Mỗi node CAN được trang bị một vi điều khiển STM32F103C8T6 làm bộ xử lý trung tâm
Sau khi thiết kế mạch nguyên lý, bố trí linh kiện và nối dây các linh kiện, ta có mô hình 3D của module 1 node CAN như hình bên dưới:
Hình 3.33: Mô hình 3D của một node CAN
Kết quả thi công module CAN:
Hình 3.34: Thi công module CAN
Thiết kế và thi công mạng CAN cho robot cáp 6 bậc tự do
3.4.1 Thiết kế mạng CAN cho robot cáp 6 bậc tự do
Hệ thống mạng CAN bao gồm 1 master và 6 slave module như Hình 3.35
Hình 3.35: Sơ đồ tổng quan hệ thống mạng CAN
Tín hiệu từ microcomputer được gửi đến master, nơi master phân chia các gói tin nhắn qua mạng CAN Tin nhắn này chứa dữ liệu cần thiết để slave tạo xung chuyển động cho động cơ Đồng thời, slave đọc tín hiệu từ encoder của động cơ AC và encoder trên link của robot, sau đó gửi thông tin này về master và cuối cùng là về microcomputer.
3.4.1.1 Lưu đồ giải thuật cho master module
Tin nhắn từ microcmputer cho saster có cấu trúc như Hình 3.36
Cấu trúc tin nhắn microcomputer gửi cho master:
Hình 3.36: Cấu trúc tin nhắn từ microcomputer cho master
Tín hiệu gửi xuống cho master là vị trí góc tại mỗi link, trong đó gồm có 6 byte,
5 byte đầu tiên là giá trị vị trí góc khi đã nhân lên 100 lần, vị trí góc thực tế sẽ là
− = − deg, 1 byte cuối cùng sẽ là tên của động cơ
Bảng 3.2: Một số ký hiệu tên động cơ sử dụng trong tin nhắn
Mô tả Kí hiệu Động cơ link 1 a Động cơ link 2 b Động cơ link 3 c Động cơ link 4 d Động cơ link 5 e Động cơ link 6 f
Tính toán góc cho từng động cơ
Flag_s_UART== 1? Đường truyền rảnh?
Hệ thống khởi tạo các biến và timer ngắt khi bắt đầu Khi timer báo cờ lên ‘1’, chương trình sẽ kiểm tra trong vòng While xem cờ timer đã lên 1 chưa Nếu giá trị là 1, hệ thống sẽ thực hiện các công việc tính toán xung cho Driver.
“Đọc 2 encoder”, “Tính toán góc” và gửi tín hiệu trở về
Khởi tại ngắt nhận CAN
Lưu dũ liệu Flag_CAN1 = 1;
Lưu dũ liệu Flag_CAN2 = 1;
Lưu dũ liệu Flag_CAN3 = 1;
Lưu dũ liệu Flag_CAN4 = 1;
Lưu dũ liệu Flag_CAN5 = 1;
Lưu dũ liệu Flag_CAN6 = 1;
Hình 3.38: Lưu đồ chương trình ngắt nhận CAN trên vi điều khiển master
Chương trình ngắt nhận dữ liệu trên Master bắt đầu bằng việc kiểm tra ID của Slave gửi tin nhắn để xác định Node nguồn Sau khi xác định, dữ liệu sẽ được lưu lại cho quá trình xử lý và báo cờ Khi tất cả cờ báo nhận dữ liệu đạt mức “1”, điều này cho thấy dữ liệu đã đầy đủ và sẵn sàng để gửi lên máy tính qua giao thức UART.
3.4.1.2 Lưu đồ giải thuật cho Slave modules
Tính toán xung cho Driver
Tính toán và gửi dữ liệu
Tính toán xung cho Driver
Tính delta góc Tính xung cung cấp Cập nhật góc hiện tại Flag_send = 1;
Tính toán và gửi dữ liệu
Flag_send = 0; Đọc dữ liệu encoder Tính toán góc
Gửi tin nhắn dữ liệu cho master
Gửi tin nhắn cho phép Slave tiếp theo gửi dữ liệu
Hình 3.39 minh họa lưu đồ giải thuật trên vi điều khiển slave module, bao gồm ba phần chính: a) chương trình chính; b) chương trình con “Tính toán xung cho driver” và “Tính toán và gửi dữ liệu”; c) chương trình timer định thời.
Chương trình timer ngắt hoạt động với thời gian định sẵn là 1ms, trong đó biến “Dem” sẽ tăng thêm 1 mỗi khi hết 1ms Khi biến “Dem” đạt giá trị 4, tức là sau 4ms, chương trình sẽ báo cờ để thực hiện công việc đã được lập trình.
Chương trình while hoạt động theo lưu đồ Hình 3.39, thực hiện công việc khi có cờ báo Khi nhận tín hiệu đặt, chương trình sẽ tính toán xung cung cấp cho driver, dựa trên sự thay đổi tín hiệu để điều chỉnh chuyển động đến vị trí mong muốn và cập nhật vị trí góc mới Sau khi hoàn tất, dữ liệu sẽ được gửi đi Chương trình con gửi dữ liệu sẽ tính toán giá trị góc từ xung encoder và gửi về master, đồng thời truyền tin nhắn với mã ID khác để yêu cầu node tiếp theo truyền dữ liệu Cấu trúc tin nhắn giữa master và slave được xác định rõ ràng.
Trong hệ thống mạng CAN, việc cấu hình Filter ID và Filter Mask là cần thiết để lọc tin nhắn giữa các node Điều này giúp loại bỏ những tin nhắn không cần thiết, giảm thiểu hiện tượng nhận quá nhiều tin nhắn cùng lúc, từ đó tránh tình trạng treo hệ thống.
Hình 3.41: Hình ảnh mô tả bộ lọc tin nhắn Một ví dụ mô tả đơn giản như sau:
Bảng 3.3: Ví dụ đơn giản về bộ lọc tin nhắn
ID tin nhắn truyền đến 0 0 0 0 0 0 0 0 0 0 1
Tin nhắn trong mạng CAN sẽ được lọc qua bộ lọc trước khi vào hệ thống nhận dữ liệu Bộ lọc này có nhiệm vụ so sánh ID của tin nhắn truyền đến để đảm bảo chỉ những tin nhắn phù hợp mới được xử lý.
ID và Mask để ra quyết định tin nhắn đó có được phép đi vào hay không Bit có giá trị
“0” trên Filter Mask nghĩa là không quan tâm, bit có giá trị “1” trên Filter Mask là quan tâm
Theo Bảng 3.3, các bit từ 1 đến 10 đều có giá trị 1, điều này cho thấy tin nhắn truyền đến cần có ID với các bit từ 1 đến 10 bằng 0; chỉ cần một bit khác sẽ không đáp ứng yêu cầu Bit thứ 0 trên Filter Mask có giá trị 0, cho phép bit thứ 0 trên Filter ID có thể là 0 hoặc 1 Do đó, với cấu hình bộ lọc này, tin nhắn sẽ được nhận với mã 0x000 0000 0000 và 0x000 0000 0001.
Bộ lọc được sử dụng bao gồm 11 bit, cấu hình bộ lọc theo bảng sau:
Bảng 3.4: Bảng cấu hình Filter ID và Filter Mask
Node 1 sẽ nhận được hai tin nhắn là: 0x000 và 0x001
Node 2 sẽ nhận được hai tin nhắn là: 0x000 và 0x002
Node 3 sẽ nhận được hai tin nhắn là: 0x000 và 0x004
Node 4 sẽ nhận được hai tin nhắn là: 0x000 và 0x008
Node 5 sẽ nhận được hai tin nhắn là: 0x000 và 0x010
Node 6 sẽ nhận được hai tin nhắn là: 0x000 và 0x020
3.4.2 Thi công mạng CAN cho robot cáp 6 bậc tự do
Dựa vào kết quả thi công module CAN và sơ đồ kết nối mạng CAN trong Hình 3.35 ta có kết quả thi công mạng CAN:
Hình 3.42: Thi công mạng CAN 6 node
Thiết kế và thi công tủ điện
Tủ điện được thiết kế với tiêu chí gọn nhẹ, thẩm mỹ cao, và dễ dàng trong việc vận hành, kiểm tra và thay thế Các thành phần chính của tủ điện bao gồm 3 driver MR-JE 40A cho động cơ AC Servo HG-KN43B công suất 400W, 3 driver MR-J3 10A cho động cơ AC Servo công suất 100W (HF-KP13, HG-KR13, HF-MP13), mạng truyền thông CAN, cùng với các đèn báo và nút nhấn.
3.5.1 Danh sách thiết bị của tủ điện
Căn cứ vào yêu cầu thiết kế tủ điện bên trên, danh sách các thiết bị được lựa chọn để thiết kế tủ điện được trình bày trong Bảng 3.5
Bảng 3.5: Danh sách thiết bị tủ điện
STT Tên Hình ảnh SL Đặc điểm
3 pha Điện áp định mức 220VAC Dòng định mức 50A Bảo vệ quá tải và ngắn mạch
3 pha Điện áp định mức 220VAC Dòng định mức 15A Dùng đề bảo vệ
1 pha Điện áp định mức 250VAC Dòng định mức 10A
1 pha Điện áp định mức 250VAC Dòng định mức 5A Dùng để bảo vệ mạch
3 pha Điện áp định mức 690VAC Dòng điện mức 25A Áp cuộc coil 24VDC Dùng để đóng cắt mạch điều khiển và mạch công suất cho driver
6 Nguồn 1 Điện áp ngõ vào 220VAC Điện áp ngõ ra 24VDC Dòng ngõ ra 5A
7 Lọc 2 Điện áp định mức: 250VAC Dòng định mức: 20A Lọc nguồn cấp cho driver
1 pha hoặc 3 pha Điện áp vào 200 – 240 VAC Điện áp ra 3 pha 170VAC Tần số 50 – 60 Hz, công suất 400W Dòng điện định mức 2.6A
1 pha hoặc 3 pha Điện áp vào 220 – 230VAC Điện áp ra 3 pha 170VAC Tần số 50 – 60 Hz, công suất 100W Dòng điện định mức 0.9A
3.5.2 Sơ đồ nối dây hệ thống
3.5.2.1 Sơ đồ đi dây tổng quát
Sau khi đã lựa chọn thiết bị cần thiết cho hệ thống, sơ đồ kết nối tổng quát của hệ thống được biểu thị như Hình 3.43:
Encoder Microcomputer STM32F407 CAN Network Servo Amplifier AC Servo Cable robot 6 DOF
Hình 3.43: Sơ đồ đi dây tổng quát các khối của hệ thống ở Slave
Hệ thống bao gồm máy tính nhúng nhận và gửi dữ liệu không dây qua Zigbee, sau đó xử lý dữ liệu và tính toán động học thông minh bằng phương pháp Jacobian Dữ liệu được gửi xuống STM32F407 (1 Node CAN) để truyền cho các Node CAN khác Các Node CAN nhận dữ liệu và điều khiển khối Driver Servo, đồng thời đọc Encoder ở từng động cơ để đảm bảo độ chính xác trong quá trình điều khiển Cuối cùng, dữ liệu từ các Node CAN sẽ được truyền lên STM32F407 và sau đó gửi về máy tính nhúng để quan sát và thu thập thông tin.
3.5.2.2 Sơ đồ nối dây tủ điện
Hình 3.44: Sơ đồ nối dây tủ điện
Hệ thống mạch động lực bao gồm 6 động cơ AC Servo và 6 driver điều khiển tương ứng Sơ đồ đi dây của hệ thống này được thể hiện trong Hình 3.45.
PP PG NP NG 24VDC
PP PG NP NG 24VDC
PP PG NP NG 24VDC
PP PG NP NG 24VDC
PP PG NP NG 24VDC
PP PG NP NG 24VDC
Hình 3.45: Sơ đồ đi dây mạch động lực
3.5.2.3 Sơ đồ nối dây mạch điều khiển
Mạch điều khiển của hệ thống cung cấp nguồn điện cho mạng CAN, bao gồm một master và sáu module slave Sơ đồ đi dây cho mạch điều khiển được thể hiện trong Hình 3.46.
Hình 3.46: Sơ đồ đi dây mạch điều khiển Các khối trong sơ đồ nối dây mạch điều khiển tổng quát:
– Khối 1 Ziggbee module có chức năng truyền tín hiệu nối tiếp UART thông qua giao thức không dây
– Khối 2 USB UART có chức năng chuyển đổi tín hiệu UART sang RS-232 và ngược lại
– Khối 3 Microcomputer là một máy tính nhúng tính thu thập dữ liệu và xử lý thuật toán
– Khối 4 Master: truyền nhận dữ liệu từ khối Microcomputer và tách dữ liệu điều khiển cho các Slave hoạt động
– Khối 5 Slave: khối bao gồm 6 Node để điều khiển 6 động cơ AC Servo và đọc tín hiệu encoder
Sơ đồ nối dây cho Master được thể hiện như hình Hình 3.47, sơ đồ nối dây của 1 node trong Slave như Hình 3.48:
Hình 3.47: Sơ đồ nối dây Master
Hình 3.48: Sơ đồ nối dây 1 Node của Slave Trong đó khối CAN module có sơ đồ đi dây như Hình 3.49:
Hình 3.49: Sơ đồ nối dây khối CAN module
3.5.2.4 Kết quả đi dây tủ điện điều khiển
Kết quả sau khi đi dây tủ điện điều khiển:
Hình 3.50: Kết quả đi dây tủ điện điều khiển Hình ảnh hệ thống slave sau khi lắp đặt hoàn thiện được mô tả như hình sau:
Hình 3.51: Hệ thống sau khi đi dây hoàn thiện
Xây dựng giao diện quan sát và thu thập dữ liệu
Yêu cầu thiết kế giao diện điều khiển và tính toán giải thuật:
– Giao diện cần hiển thị được đầy đủ các thông số của robot: vị trí end effector, các góc khớp theta, thời gian khi chạy giao diện
– Giao diện có thể lưu dữ liệu dưới dạng file excel
– Giao diện có thể kết nối hai USB UART cùng một lúc
– Giao diện có thể kiểm tra tín hiệu encoder từ động cơ và từ encoder ngoài – Giao diện có thể quy hoạch quỹ đạo theo các hình cơ bản
– Giao diện có thể hiện thị được thông tin về vị trí, đáp ứng góc và sai số ở chế độ điều khiển từ xa
Phần mềm lập trình giao diện điều khiển và thu thập dữ liệu được phát triển trên nền tảng máy tính nhúng Jetson Nano Để lập trình các thuật toán và thu thập dữ liệu của hệ thống, nhóm đã sử dụng QT Creator làm công cụ chính.
QT Creator là phần mềm đa nền tảng, hỗ trợ Windows, macOS và Linux, cho phép thiết kế giao diện ứng dụng trong nhiều lĩnh vực khác nhau Phần mềm này hỗ trợ nhiều ngôn ngữ lập trình như C/C++, Python và Java, đồng thời có một cộng đồng học tập rộng lớn.
Hình 3.52: Phần mềm QT Creator
Giao diện điều khiển bao gồm 6 trang chính, mỗi trang sẽ có một chức năng riêng và được mô tả trong Bảng 3.6
Bảng 3.6: Mô tả các trang trong giao diện quan sát và thu thập dữ liệu
STT Tên trang Mô tả
1 Tab_intro Giới thiệu tên đề tài và các thành viên
2 Tab_setup Thiết lập một số tính năng để chạy mô hình robot
3 Tab_trajectory Chọn chế độ quy hoạch quỹ đạo cho robot, hiển thị vị trí và lưu dữ liệu
4 Tab_error_Pos Hiển thị sai số vị trí của end – effector
5 Tab_angle Hiển thị dữ liệu các góc khớp của robot
6 Tab_error_angle Hiển thị dữ liệu sai số góc khớp của robot
Hình 3.53: Tab_intro Tab_intro là trang giới thiệu tên đề tài, giới thiệu giáo viên hướng dẫn và các thành viên trong nhóm thực hiện đề tài
Tab_setup là công cụ quan trọng trong việc thiết lập các kết nối UART cần thiết cho hoạt động của robot, đồng thời xác định vị trí ban đầu cho robot Các khu vực chức năng trong Tab_setup hỗ trợ quá trình này hiệu quả.
– Khu vực 1 thiết lập kết nối cổng Serial (2 cổng) và điều khiển
Khu vực 2 cho phép điều khiển động cơ ở chế độ Jog và thực hiện việc reset dữ liệu mạch CAN Khu vực 3 hiển thị thông tin về tín hiệu đã gửi, dữ liệu nhận được và kích thước bộ nhớ lưu trữ dữ liệu Trong khi đó, khu vực 4 giúp người dùng chọn động cơ và hiển thị tín hiệu đặt cùng với tín hiệu hồi tiếp từ encoder động cơ AC và encoder rời tại khớp robot.
Hình 3.55: Tab_trajectory Các khu vực chức năng trong tab_trajectory:
– Khu vực 1 điều khiển mô hình theo quỹ đạo đã chọn và lưu dữ file excel
– Khu vực 2 chọn hình dạng quy hoạch quỹ đạo (đường thẳng – line, 2 đường thẳng – 3 points, quỹ đạo đường tròn - cycle) và đặt tên file excel
– Khu vực 3 hiển thị dữ liệu vị trí joystick, kích thước mảng lưu dữ liệu và vận tốc trung bình của end effector
– Khu vực 4 đồ thị vị trí end effector tại các mặt phẳng
– Khu vực 5 đồ thị vị trí end effector theo thời gian
Tab_error_Pos hiển thị sai số vị trí end effector của robot theo hai dạng tín hiệu encoder động cơ AC và encoder rời tại khớp của robot
The Tab_angle displays the angular values of the robot based on the set signal, feedback from the AC Servo motor, and feedback from the external encoder at the joint The angular values, denoted as θ1, are crucial for accurate robot positioning and control.
2, 3 , 4 , 5 , 6 hiển thị theo đồ thị lần lượt là 1, 2, 3, 4, 5, 6
Tab_error_angle hiển thị sai số các giá trị góc so với tín hiệu đặt Sai số tại các khớp của robot được thể hiện lần lượt qua đồ thị số 1, 2, 3, 4, 5, 6, tương ứng với các khớp 1, 2, 3, 4, 5, và 6.
TÍNH TOÁN ĐỘNG HỌC HỆ THỐNG
Động học joystick
Dựa vào Hình 4.1, chúng ta có thể mô tả hệ trục tọa độ của thiết bị haptic, bao gồm động học của một cánh tay và góc nhìn từ đế robot Hình ảnh này cung cấp cái nhìn tổng quan về các vector liên quan đến hoạt động của thiết bị haptic.
OP - OA = AB + BE + EP (4.1)
Trong đó các thành phần ở vế bên phải là:
Mà đoạn thẳng BE là:
Thay công thức (4.2), (4.3), (4.4), (4.5) vào công thức (4.1) ta được:
Dựa vào Hình 4.1c, ta có thể thấy OP - OA = AP, tọa độ điểm P có mối liên hệ với điểm A so với hệ trục UVW
Giả sử, chúng ta có tọa độ điểm P trong hệ tọa độ XYZ, tiếp theo là ánh xạ điểm
P sang hệ tọa độ UVW theo các ma trận xoay hoặc ma trận tịnh tiến như sau:
Viết lại công thức (4.7) ta được:
Viết lại công thức (4.9), vị trí điểm P trong hệ trục tọa độ UVW:
1 2 3 cos cos sin cos sin sin sin u v w
Theo công thức (4.10) ta được:
Từ công thức (4.10), ta có hệ phương trình:
1 2 3 cos cos sin sin sin sin u w
Bình phương hai vế công thức (4.13):
Khai triển công thức (4.14), ta được phương trình như sau:
2 P u +c ac +2P a w s = − P u +c −a −P w − +e bs +d (4.15) Đặt các hệ số
Phương trình (4.15) được viết lại thành:
A +B =C (4.16) Đặt các biến như sau:
Biến đổi công thức (4.16) được phương trình:
( A temp + C temp ) u 2 − 2 B temp u + ( C temp − A temp ) = 0 (4.19)
Nghiệm của phương trình (4.19) có hai lời giải như sau:
2 2 2 temp temp temp temp temp temp
1 2 tan temp temp temp temp temp temp
Từ hệ phương trình trong công thức (4.13), biến đổi các vế theo giá trị cos và sin:
3 cos cos sin sin sin sin u w
4.1.2 Động học thuận joystick Để giải động học thuận cho robot song song 3 bậc tự do, chúng ta có được các góc xoay 1 , 2 , 3 để tìm ra vị trí end – effector cho robot
Cấu trúc của robot song song 3 bậc tự do được mô tả như sau:
Robot song song 3 bậc tự do có cấu trúc đặc biệt, trong đó mỗi khớp xoay được xác định bởi góc xoay i Điểm J i đại diện cho khớp xoay thứ 2 trên cánh tay robot, với i = 1, 2, 3.
Phương pháp này cho phép tính toán tọa độ của mỗi điểm J i dựa trên giá trị góc i đã biết Bằng cách chọn điểm J i làm tâm của mặt cầu với bán kính J E i i, và di chuyển mặt cầu theo vector E E i 0, ta tạo ra một mặt cầu mới Tọa độ điểm E 0 sẽ là giao điểm giữa ba mặt cầu này.
Hình 4.3: Hình ảnh mô tả phương pháp 3 mặt cầu Gọi J 1 ,J 2 và J 3 là tâm mặt cầu sau khi dời trục ta có thể xoay chuyển đổi điểm
J trong hệ trục UVW sang hệ tọa độ XYZ:
0 0 1 xi i i ui yi i i vi zi wi
Với trường hợp cánh tay thứ 1 trong hệ trục U V W 1 1 1 , i =1:
Mà vector B J 1 1 bằng vector E P 1 1 , ta có:
Tọa độ của điểm J 1 trong hệ trục tọa độ U V W 1 1 1 :
Tọa độ điểm J 1 trong hệ trục tọa độXYZ:
1 cos sin 0 cos sin cos 0
0 0 1 sin cos cos cos cos sin sin cos sin sin sin cos cos sin x y z
Tương tự, ta có tọa độ điểm J 2 và J 3 :
2 2 cos cos cos cos sin sin cos sin sin sin cos cos sin x y z
3 3 cos cos cos cos sin sin cos sin sin sin cos cos sin x y z
Phương trình 3 mặt cầu với tọa độ mặt cầu đã tìm được:
Khai triển công thức (4.31) ta được:
2 x 2 y 2 z x y z x + y +z − xJ − yJ − zJ +J +J +J =BE (4.34) Đặt q i =J xi 2 +J yi 2 +J zi 2 , i=1, 2,3
Từ công thức (4.37), ta biến đổi như sau:
Thay giá trị x, y vào công thức (4.35) ta được:
Bảng 4.1: Ký hiệu viết gọn
Ký hiệu viết tắt Biến Ký hiệu viết tắt Biến Ký hiệu viết tắt Biến
Từ phương trình (4.39) và (4.40), ta đặt các biến như sau:
Kết hợp công thức (4.39) và (4.40) ta được:
Ta có thể tìm vị trí end effector của robot:
Giải phương trình bậc 2 trong (4.44) cho ra nghiệm giá trị z, nhưng do tọa độ của joystick theo trục Z phải có giá trị dương, nên các nghiệm âm sẽ bị loại bỏ Sau khi xác định được tọa độ z, ta thay vào công thức (4.42) để tính toán giá trị x và y.
Động học robot cáp 6 bậc tự do
4.2.1 Đặt trục robot cáp 6 bậc tự do
Hệ trục tổng quát của robot cáp 6 bậc tự do được đặt như hình sau:
Hình 4.4: Hệ trục tọa độ của robot
Hình 4.5: a) Góc nhìn theo hệ tọa độ XOZ; b) góc nhìn theo hệ tọa độ XOY
Trong đó i là góc lệch giữa hệ trục tọa độ thứ i so với hệ trục tọa độ i -1; L i là chiều dài của mỗi link
4.2.2 Động học thuận robot cáp 6 bậc tự do
Sau khi đặt hệ trục cho robot, ta lập bảng D-H như sau:
Bảng 4.2: bảng D-H của robot cáp 6 bậc tự do i a i − 1 i − 1 d i i Giới hạn góc
Biến i có giá trị từ 1 đến 7; a i đại diện cho khoảng cách từ trục Z i đến Z i + 1 theo trục X i; i là góc xoay trục Z i đến Z i + 1 theo trục X i; d i thể hiện khoảng cách giữa hai trục X i − 1 và X i theo trục Z i; và i là góc lệch giữa trục X i − 1 với X i theo trục Z i.
Ta có ma trận chuyển đổi của robot từ gốc tọa độ thứ i đến i-1:
Với c i là cos ( ) i ; s i là sin ( ) i ; c i là cos ( ) i ; s i là sin ( ) i
Ma trận chuyển đổi từ hệ tọa độ 0 đến hệ tọa độ 1:
Ma trận chuyển đổi từ hệ trục tọa độ thứ 7 về hệ trục tọa độ thứ 0 được mô tả như sau:
4.2.2.1 Vị trí của end – effector
Dựa vào kết quả tính toán ở phương trình (4.53), ta có vị trí end – effector của robot được biểu diễn như sau:
4.2.2.2 Các thành phần trong ma trận hướng
Dựa vào kết quả tính toán ở phương trình (4.53), ta có các thành phần ma trận hướng được biễu diễn như sau:
4.2.3 Giải động học nghịch robot cáp bằng phương pháp đại số
Từ ma trận chuyển vị cuối của robot 0 7 Tta có được ma trận sau:
Trong đó vị trí end effector đã biết và các thành phần trong ma trận hướng biết được thông qua các góc Euler
Thay công thức (4.57) vào công thức (4.54) ta được:
P x =L + L r L c s s c c c + c s s + L c c (4.67) Thay công thức (4.60) vào công thức (4.55) ta được:
P y =L r + L c s + c c s + L s (4.68) Thay công thức (4.63) vào công thức (4.56) ta được:
P =L c c s +c c s −s s s +L r +L c s (4.69) Giả xử ta có được ma trận 0 4 Tcó dạng như sau:
Thay phương trình (4.74) vào phương trình (4.67) ta được:
P x =L + L r + L t + L c c (4.83) Thay phương trình (4.77) vào phương trình (4.68) ta được:
Thay phương trình (4.80) vào phương trình (4.69) ta được:
Chia công thức (4.85) cho công thức (4.83):
Từ công thức trên, ta có phương trình tính toán 1 như sau:
Từ công thức (4.85) ta được:
Từ công thức (4.84) và (4.88) ta được
Ta có hệ phương trình theo công thức (4.76) và (4.82):
Nghiệm của phương trình là:
Vậy góc 3 được tính như sau:
Ta có hệ phương trình theo công thức (4.77) và (4.78):
Nghiệm của phương trình là:
Vậy góc 4 được tính như sau:
Thay công thức (4.74) và (4.76) vào công thức (4.59) ta có:
Thay công thức (4.77) vào công thức (4.62)
Ta có hệ phương trình theo công thức (4.59) và (4.62):
Nghiệm của hệ phương trình (4.100) là:
Góc 5 được tính như sau:
Thay công thức (4.77) vào công thức (4.60):
Thay công thức (4.77) và (4.78) vào công thức (4.61)
Ta có hệ phương trình sau:
Nghiệm của hệ phương trình là:
Góc 6 được tính như sau:
Để giải bài toán động học nghịch cho robot cáp 6 bậc tự do, cần xác định các thành phần vị trí và hướng của ma trận 0 4 T Dữ liệu có sẵn bao gồm vị trí và hướng của ma trận 0 7 T cùng với vị trí của ma trận 0 4 T Do đó, việc xác định thành phần hướng của ma trận là cần thiết.
4 Tlà không biết được, do đó cần có phương pháp cao hơn để giải được bài động học nghịch cho robot này
4.2.4 Giải động học nghịch robot cáp bằng phương pháp Jacobian Để giải động học nghịch cho robot theo phương pháp Jacobian pseudoinverse, thực hiện theo các bước như sau:
Các bước tính toán động học nghịch sử dụng phương pháp Jacobians:
Bước 1: chọn vị trí và hướng mong muốn cho robot chuyển động đến
Bước 2: tính toán sai số giữa vị trí end effector hiện tại và vị trí mong muốn dx = X - X g (4.110)
Bước 3: tính toán ma trận Jacobian với góc hiện tại
Bước 4: tính ma trận nghịch đảo Jacobian
Bước 5: cập nhật giá trị góc θ = θ + αJ dx -1 (4.112)
Bước 6: nếu vị trí và hướng end effector trùng với điểm mong muốn thì dừng, nếu sai thì quay lại bước 2
Trong bài viết này, chúng ta xem xét một robot với vector vị trí mong muốn X g thuộc không gian ba chiều, cùng với vị trí end effector X Sai số giữa vị trí mong muốn và vị trí thực tế của robot được biểu diễn bằng vector dx Đồng thời, vector θ đại diện cho vị trí góc của mỗi khớp robot, và hệ số α được định nghĩa trong không gian bốn chiều.
MÔ PHỎNG HỆ THỐNG
Tổng quan về hệ thống mô phỏng
Hình 5.1: Sơ đồ khối mô phỏng hệ thống
Mô tả nhiệm vụ của từng khối:
Khối master bao gồm joystick và Laptop A, trong đó joystick tạo quỹ đạo chuyển động và gửi tín hiệu vị trí đến Laptop A để tính toán ánh xạ vị trí Laptop A không chỉ điều khiển robot cáp mà còn nhận diện các vị trí ngoài không gian làm việc của robot, thực hiện tính toán lực phản hồi và tác động lên joystick.
Khối slave bao gồm Laptop B, nơi chạy chương trình mô phỏng robot cáp 6 bậc tự do trên phần mềm Matlab Simulink Chương trình này nhận tín hiệu từ khối master, thực hiện tính toán động học nghịch bằng phương pháp Jacobian và điều khiển các khớp xoay của mô hình mô phỏng.
Kiểm chứng động học nghịch sử dụng phương pháp Jacobian
Hình 5.2 minh họa quá trình kiểm chứng Jacobian với hai điểm P1 và P2, trong đó P1 là vị trí hiện tại của cánh tay robot và P2 là vị trí mong muốn mà robot cần di chuyển đến Phương pháp Jacobian được áp dụng để giải quyết bài toán động học nghịch cho cánh tay robot cáp Kết quả của quá trình này được thể hiện trong Hình 5.2b.
Tọa độ điểm ban đầu của robotP 1 (1027.4; 5.3; 5.3− − )mm tương ứng với các góc
Vị trí điểm mong muốn là điểm P 2 (1000;50;50)mm
Lưu đồ thuật toán kiểm chứng phương pháp Jacobian trên Matlab:
- Tính toán ma trận Jacobian
- Cập nhật giá trị góc theta
- Tính toán vị trí robot
- Tính toán sai số vị trí e
Sai số vị trí đã đạt yêu cầu?
Hình 5.3: Lưu đồ kiểm chứng phương pháp Jacobian Bảng 5.1: Kết quả kiểm chứng phương pháp Jacobian với 2 điểm
Kết quả kiểm chứng từ Bảng 5.1 cho thấy vị trí của robot sau khi giải động học nghịch bằng phương pháp Jacobian trùng khớp với điểm P2 đã cho Sai số vị trí đạt khoảng 0.99 x 10^-5 mm, nhỏ hơn sai số cho phép là 1 x 10^-5 mm, cho thấy hiệu quả của phương pháp này trong việc xác định vị trí chính xác của robot.
Kiểm tra một trường hợp khác với vị trí ban đầu là điểm P 1 , nhưng vị trí của điểm
P 2thay đổi thành giá trị bất kỳ
Bảng 5.2: Kết quả kiểm chứng phương pháp Jacobian với nhiều điểm
Phương pháp Jacobian đã thành công trong việc xác định vị trí cho robot với sai số nhỏ hơn 1 × 10⁻⁵ mm, dựa trên sai số các trục x, y và z tại những điểm mong muốn khác nhau Các điểm được chọn ngẫu nhiên không thuộc vào các điểm kỳ dị của robot.
Mô phỏng quy hoạch quỹ đạo cho robot cáp
Sau khi xác minh tính chính xác của phương pháp Jacobian với một điểm cho trước, nhóm sẽ tiến hành quy hoạch quỹ đạo cho robot Các quỹ đạo thử nghiệm sẽ lần lượt là hình tam giác và đường tròn Sơ đồ mô phỏng trên Matlab Simulink được trình bày chi tiết.
Hình 5.4: Sơ đồ mô phỏng phương pháp Jacobian với quỹ đạo quy hoạch
5.3.1 Mô phỏng quy hoạch quỹ đạo hình tam giác
Trường hợp tiếp theo mô phỏng chuyển động của robot theo quỹ đạo hình tam giác Tọa độ các điểm mô phỏng lần lượt là: P 1 (1027.4; -5.3; -5.3), P 2 ( 950; 50; 10),
P Kết quả mô phỏng quỹ đạo tam giác: a) b)
Hình 5.5: Quy hoạch quỹ đạo hình tam giác bằng phương pháp Jacobian a) góc nhìn 3D; b) góc nhìn YOZ
Robot đã theo dõi quỹ đạo đã được xác định trước một cách ổn định, không có hiện tượng vọt lố trong quá trình di chuyển (Hình 5.5) Đáp ứng của robot khi thực hiện quỹ đạo hình tam giác cho thấy sự ổn định với sai số nhỏ, khoảng 10 − 3 mm (Hình 5.6) Cụ thể, sai số vị trí của robot theo các trục x, y, và z đều nằm trong giới hạn cho phép (Hình 5.7).
5.3.2 Mô phỏng quy hoạch quỹ đạo hình tròn
Một thí nghiệm đã được thực hiện để mô phỏng quỹ đạo cho robot cáp 6 bậc tự do, với quỹ đạo hình tròn được quy hoạch tại tọa độ điểm O (900; 0; 0) và bán kính 150.
Hình 5.8 minh họa quy hoạch quỹ đạo hình tròn bằng phương pháp Jacobian với hai góc nhìn: 3D và YOZ Robot bắt đầu từ vị trí home (1027.4; -5.3; -5.3) và di chuyển đến điểm đầu tiên trong đường tròn, tiếp tục thực hiện chu kỳ quỹ đạo hình tròn Hình 5.9 thể hiện sự đáp ứng vị trí của robot theo ba trục: a) trục x; b) trục y; c) trục z.
P 1 a) b) c) Hình 5.10: Sai số vị trí của robot với quỹ đạo hình tròn a) trục x; b) trục y; c) trục z
Quan sát tín hiệu đáp ứng vị trí theo thời gian, vị trí của robot bám theo tín hiệu đặt Sai số theo các trục X, Y, Z nhỏ khoảng 10 − 3 mm
Phương pháp Jacobian trong giải động học nghịch đã cho kết quả ổn định và chính xác trong việc mô phỏng quy hoạch quỹ đạo cho robot, với sai số bám nhỏ.
Các bước xây dựng hệ thống điều khiển từ xa
Bước 1: Xác định toàn bộ không gian làm việc của slave và master
Từ cấu trúc cơ khí nên xét các góc giới hạn trên joystick như sau:
Ta được không gian làm việc của joystick được mô tả trong Hình 5.11:
Hình 5.11: Không gian làm việc của thiết bị joystick
Từ cấu trúc cơ khí nên xét các góc giới hạn trên robot cáp 6 bậc tự do:
Ta được không gian làm việc của robot cáp được mô tả trong Hình 5.12:
Hình 5.12: Không gian làm việc của robot cáp 6 bậc tự do
Bước 2: Lựa chọn vùng không gian làm việc chung của 2 robot
Để xác định vùng không gian làm việc cho robot cáp, cần dựa vào các giới hạn không gian mong muốn mà robot sẽ hoạt động.
841, 1000 ; -210, 210 ; -210, 210 x y z đơn vị mm Tương tự với joystick ta chọn được vùng làm việc mong muốn như sau: x 72, 125 ; y − 35, 35 và
35, 35 z − đơn vị mm Vùng không gian được biểu thị như hình: a) b)
Hình 5.13: Vùng không gian làm việc chung giữa a) robot cáp 6 bậc tự do b) joystick
Bước 3: Tính toán các thông số ánh xạ thích hợp
Từ không gian làm việc đã chọn, chúng ta có thể xác định hệ số khuếch đại và vị trí điểm làm việc ảo bằng công thức (2.26).
5.4.1 Áp dụng phương pháp phản hồi lực vào hệ thống điều khiển từ xa
Phương pháp ánh xạ hiện tại có nhược điểm là giới hạn không gian lựa chọn trong các vùng cố định Việc áp dụng phương pháp phản hồi lực giúp người dùng cảm nhận thực tế hơn khi điều khiển robot di chuyển, đồng thời mở rộng vùng không gian cần tiếp cận Khi robot ra ngoài vùng không gian làm việc, lực tác động tại end effector của joystick sẽ cho phép người dùng cảm nhận xúc giác, ngăn không cho robot di chuyển ra ngoài khu vực làm việc.
Thiết bị điều khiển joystick không chỉ tạo quỹ đạo chuyển động cho robot mà còn cung cấp phản hồi lực, giúp người điều khiển có cảm nhận trực quan Tuy nhiên, sự không tương đồng giữa joystick và robot cáp 6 bậc tự do dẫn đến việc joystick có thể tạo ra tín hiệu mà robot không thể đáp ứng Để khắc phục vấn đề này, tín hiệu vị trí của joystick (P h ) sẽ được ánh xạ (P ) và tính toán bằng phương pháp Jacobian để giải quyết bài toán động học nghịch Kết quả sẽ được kiểm chứng bằng cách sử dụng ma trận đồng nhất trong động học thuận để tính toán lại vị trí (P f ) và đối chiếu với vị trí sau ánh xạ (P e ).
Nếu sai số lớn hơn hoặc bằng mức chấp nhận được (mm), vị trí hiện tại sẽ được xác nhận nằm ngoài không gian làm việc, và chế độ phản hồi lực sẽ được kích hoạt Thuật toán phản hồi lực được thực hiện trên thiết bị Master, chưa áp dụng cho dữ liệu vị trí robot từ thiết bị Slave phản hồi về.
Khai báo các biến, khởi tạo timer (50ms),
Vị trí này có nằm ngoài vùng làm việc?
Hình 5.15: Lưu đồ hoạt động của Master trong hệ thống điều khiển từ xa kết hợp phản hồi lực
5.4.1.1 Trường hợp phản hồi lực
Trường hợp điều khiển robot ra ngoài vùng không gian làm việc được mô tả, với phản hồi lực tác động giúp đưa robot trở lại trong khu vực làm việc.
Hình 5.16 minh họa diễn biến lực phản hồi của robot khi ở vị trí ngoài không gian làm việc Trong đó, X_e đại diện cho vị trí của robot slave sau khi áp dụng phương pháp mapping workspace, còn X_f là vị trí phản hồi của robot slave trong vùng không gian làm việc.
Vị trí di chuyển Xn là điểm mà lực từ end effector của robot master tác động lên robot slave, đưa nó vào không gian làm việc Khi robot master di chuyển ra ngoài vùng không gian làm việc, lực kéo lại sẽ giúp đưa điểm này trở về bên trong Lực tác động này phụ thuộc vào hệ số được chọn, có xu hướng đưa điểm vào trong không gian làm việc Do hệ số đàn hồi theo trục x, y và z không bằng nhau và lệch theo trục x, lực sẽ có xu hướng hướng vào trong trục x.
5.4.1.2 Lưu đồ kết hợp giữa thuật toán ánh xạ và phương pháp haptic
Lưu đồ kết hợp giữa thuật toán ánh xạ và phương pháp haptic được mô tả:
4 While (not termination condition) do
5 Đọc vị trí từ thiết bị haptic Novint Falcon P h
6 Áp dụng giải thuật ánh xạ đồng nhất không gian làm việc
P e =kP h +P w , P e là vị trí gửi xuống slave robot
8 if (Vị trí đặt là điểm ngoài không gian làm việc)
9 Thực hiện chế độ haptic f = +k s x cv, f là lực tác động lên Joystick
11 Chạy ở chế độ bình thường
5.4.2 Khảo sát các thông số của hệ thống phản hồi lực
Dựa trên công thức tính toán lực phản hồi (2.28), nhóm nghiên cứu đã khảo sát ảnh hưởng của các thông số độ cứng lò xo \( k_s \) và hệ số giảm chấn \( c \) đến trải nghiệm của người vận hành trong hệ thống phản hồi lực Dưới đây là bảng các trường hợp khảo sát.
Bảng 5.3: Khảo sát các thông số hệ thống phản hồi lực
Tên khảo sát Độ cứng lò xo k s
Hệ số giảm chấn c (Ns/m)
Việc khảo sát được thực hiện với trục z của joystick, kết quả khảo sát được trình bày dưới đây:
• Khảo sát độ cứng lò xo ảo áp dụng trong phản hồi lực với hệ số k s
Thay đổi hệ số k s ( 0.2 1.5 ) và c=3 ta quan sát đáp ứng của hệ thống: a) b)
Hình 5.17: Khảo sát các thông số lực phản hồi với k s =0.2 và c=3 a) đáp ứng vị trí trục z joystick; b) sai số vị trí trục z joystick a) b)
Hình 5.18: Khảo sát các thông số lực phản hồi với k s =0.5 và c=3 a) đáp ứng vị trí trục z joystick; b) sai số vị trí trục z joystick a) b)
Hình 5.19: Khảo sát các thông số phản hồi lực với k s =1 và c=3 a) đáp ứng vị trí trục z joystick; b) sai số vị trí trục z joystick
• Khảo sát hệ số giảm chấn hỗ trợ lò xo ảo với hệ số c
Thay đổi hệ số c ( 1 12 ) và k s =0.2ta quan sát đáp ứng của hệ thống: a) b)
Hình 5.20: Khảo sát các thông số phản hồi lực với k s =0.2 và c=1 a) đáp ứng vị trí trục z joystick; b) sai số vị trí trục z joystick a) b)
Hình 5.21: Khảo sát các thông số phản hồi lực với k s =0.2 và c=5 a) đáp ứng vị trí trục z joystick; b) sai số vị trí trục z joystick a) b)
Hình 5.22: Khảo sát các thông số phản hồi lực với k s =0.2 và c=9 a) đáp ứng vị trí trục z joystick; b) sai số vị trí trục z joystick
Từ các khảo sát về các yếu tố ảnh hưởng đến lực phản hồi, chúng ta nhận thấy rằng khi tăng hệ số k s, hệ thống trở nên dễ dao động hơn và thời gian xác lập tăng tỷ lệ thuận với hệ số này Ngược lại, khi tăng hệ số c, hệ thống sẽ ổn định hơn; tuy nhiên, nếu hệ số c tăng quá cao, sẽ dẫn đến sự tồn tại của sai số xác lập trong hệ thống.
Để đạt được chất lượng lực phản hồi tốt nhất và mang lại cảm nhận chân thực cho người vận hành, chúng tôi đã lựa chọn bộ thông số k s = diag( [0.2 0.2 0.2] ) và c = diag( [9 9 9] ) dựa trên các bản khảo sát về sự thay đổi độ cứng lò xo k s và hệ số giảm chấn c.
Mô phỏng hệ thống điều khiển từ xa không có phản hồi lực
Hình 5.23: Mô phỏng hệ thống điều khiển từ xa không có phản hồi lực
Máy tính thứ hai nhận dữ liệu qua giao thức Serial để xác định vị trí sau khi thực hiện thuật toán ánh xạ, từ đó tách các tọa độ theo trục x, y và z Những tọa độ này sẽ được đưa vào khối động học nghịch, giúp tính toán các góc xoay cần thiết Cuối cùng, các góc xoay này sẽ được cung cấp cho mô hình Simscape để điều khiển chuyển động đến vị trí mong muốn.
Sau khi áp dụng giải thuật ánh xạ số (2.25), vị trí của robot sẽ được xác định, cho phép đưa hai robot về một không gian làm việc chung trên robot phụ Khi ánh xạ không gian làm việc của hai robot, chúng ta sẽ tạo ra những khu vực làm việc riêng biệt cho từng robot, đảm bảo không có sự giao nhau giữa chúng, như minh họa trong Hình 5.13.
Thực hiện thí nghiệm trên ta thu được các kết quả như sau: a) b)
Hình 5.24: Quỹ đạo chuyển động của robot khi mô phỏng hệ thống điều khiển từ xa không có phản hồi lực trường hợp 1 a) góc nhìn 3D; b) góc nhìn YOZ a) b) c)
Hình 5.25 Tín hiệu vị trí theo a) trục x, b) trục y và c) trục z khi kiểm chứng hệ thống điều khiển từ xa không có phản hồi lực trường hợp 1 a) b) c)
Hình 5.26: Tín hiệu sai số vị trí theo a) trục x, b) trục y và c) trục z khi kiểm chứng hệ thống điều khiển từ xa không có phản hồi lực trường hợp 1
Thực hiện thí nghiệm trên ta thu được các kết quả như sau: a) b)
Trong mô phỏng hệ thống điều khiển từ xa không có phản hồi lực, quỹ đạo chuyển động của robot cáp cho thấy những hạn chế khi chọn vùng không gian làm việc Đặc biệt, robot cáp phải hoạt động trong vùng làm việc đã xác định; nếu ra ngoài, nó sẽ gặp phải các điểm kỳ dị và di chuyển mất kiểm soát Điều này cũng phản ánh sự hạn chế khi áp dụng giải thuật Jacobian để tính toán động học nghịch cho robot Để khắc phục, nhiều phương pháp đã được đề xuất nhằm né tránh các điểm kỳ dị, trong đó có phương pháp phản hồi lực tác dụng lên Joystick, giúp giữ cho robot cáp không di chuyển ra ngoài biên giới của vùng không gian làm việc.
Hình 5.28 minh họa tín hiệu vị trí theo ba trục: a) trục x, b) trục y và c) trục z, khi kiểm chứng hệ thống điều khiển từ xa không có phản hồi lực trong trường hợp 2.
Hình 5.29 minh họa tín hiệu sai số vị trí theo các trục x, y và z trong quá trình kiểm chứng hệ thống điều khiển từ xa không có phản hồi lực trong trường hợp 2 Kết quả cho thấy khi robot di chuyển đến điểm kỳ dị, nó mất kiểm soát và dao động nhanh chóng, với sai số vị trí theo trục x, y và z lên tới hơn 200mm so với tín hiệu đặt.
A m pl itu de ( mm ) Px setpoint
A m pl itu de ( mm ) Py setpoint
A m pl itu de ( mm ) P setpoint
A m pl itu de ( mm ) x axis error
A m pl itu de ( mm ) y axis error
A m pl itu de ( mm ) axis error
Mô phỏng hệ thống điều khiển từ xa có phản hồi lực
Sơ đồ khối mô phỏng phản hồi lực cho phép robot di chuyển theo quỹ đạo do thiết bị joystick tạo ra, với việc ánh xạ giữa hai vùng không gian làm việc Hình 5.31 minh họa không gian làm việc của robot cáp và thiết bị điều khiển joystick trước khi thực hiện ánh xạ Sau khi áp dụng phương pháp ánh xạ, không gian làm việc của joystick đã được đồng bộ hóa với robot cáp, tạo ra sự tương tác hiệu quả giữa hai thiết bị.
Hình 5.31 mô tả không gian làm việc của hai robot, với a) là không gian của robot cáp và joystick trước khi ánh xạ, và b) là không gian của joystick sau khi ánh xạ Sử dụng các hệ số được chọn theo công thức số (2.25) với k = diag(3, 6, 6) và P w = [650, 0, 0] T, chúng ta có thể xác định vùng giao giữa hai không gian làm việc của robot.
Hình 5.32: Không gian làm việc chung của 2 robot sau phép ánh xạ
Thực hiện thí nghiệm trên ta thu được các kết quả như sau: a) b) c)
Hình 5.33 minh họa tín hiệu vị trí của robot theo các trục x, y và z khi kiểm chứng mô phỏng hệ thống điều khiển từ xa có phản hồi lực Khi joystick di chuyển trong không gian làm việc chung của cả hai robot, tín hiệu vị trí từ joystick được ánh xạ trực tiếp sang robot cáp Tuy nhiên, khi joystick ra ngoài không gian làm việc chung, robot cáp sẽ nhận tín hiệu vị trí gần nhất trong vùng làm việc chung làm tín hiệu đặt Các vị trí khoanh tròn trong hình thể hiện trạng thái vị trí đã nằm ngoài không gian làm việc của robot.
Hình 5.34: Toạ độ vị trí robot di chuyển ra bên ngoài vùng làm việc; a) trục x; b) trục y; c) trục z
Trong thí nghiệm, có hai điểm P1 và P2 nằm ngoài không gian làm việc của robot cáp và joystick, với tọa độ P1 = (986.85; 206.99; −181.859) và P2 = (1014.42; −162.02; −44.35) Hai điểm này được xác định rõ ràng như hình dưới đây.
Hình 5.35: Vị trí điểm nằm ngoài vùng không gian làm việc của robot khi chạy trên mô phỏng a) b) e)
Hình 5.36 minh họa tín hiệu sai số vị trí theo các trục x, y và z trong quá trình kiểm chứng mô phỏng hệ thống điều khiển từ xa không có phản hồi lực Dựa vào công thức (2.28), khi vị trí của joystick được ánh xạ và nằm ngoài không gian làm việc chung của hai robot, chúng ta có thể tính toán lực phản hồi tác động lên joystick theo ba phương x, y và z với độ lớn như Hình 5.37 Điều này giúp người vận hành cảm nhận được vị trí ngoài không gian làm việc và đưa robot trở lại khu vực làm việc an toàn.
Hình 5.37 Tín hiệu lực tác động theo a) trục x, b) trục y và c) trục z khi kiểm chứng mô phỏng hệ thống điều khiển từ xa không có phản hồi lực
Từ những kết quả mô phỏng trong mục 5.5 và 5.6 ta rút ra được bảng kết luận sau:
Bảng 5.4: So sánh kết quả mô phỏng hệ thống điều khiển từ xa có và không có phản hồi lực
Không có phản hồi lực
Hệ số khuếch đại nhỏ tạo ra vùng không gian làm việc chung cho hai robot nhỏ Vùng không gian này được xác định trong một khối hình hộp chữ nhật mà chúng ta đã chọn.
Hệ số khuếch đại lớn giúp mở rộng vùng không gian làm việc chung của hai robot, tuy nhiên, vẫn có những vị trí ngoài phạm vi hoạt động của robot cáp, dẫn đến sự di chuyển không ổn định của robot.
Hệ số khuếch đại lớn giúp mở rộng vùng không gian làm việc chung của hai robot, nhờ vào phản hồi lực từ Joystick, cho phép robot cáp di chuyển ổn định mà không chạm vào điểm kỳ dị Điều này cũng tạo ra cảm nhận xúc giác cho người vận hành, giúp họ nhận biết và cảm nhận tốt hơn trong quá trình điều khiển robot.
THỰC NGHIỆM VÀ ĐÁNH GIÁ HỆ THỐNG
Thực nghiệm mạng truyền thông CAN
Để vận hành mô hình robot hiệu quả, hệ thống mạng CAN cần được xây dựng với độ chính xác cao, đảm bảo tính tin cậy và ổn định trong quá trình hoạt động.
Sau khi hoàn tất cấu hình và lập trình mạng CAN bus, nhóm sẽ tiến hành kiểm tra khả năng truyền nhận dữ liệu và điều khiển cơ bản với động cơ AC Servo Sơ đồ tổng quan về thực nghiệm này sẽ được mô tả nhằm xác nhận tính chính xác của mạng CAN.
STM32F407 CAN Network Servo Amplifier AC Servo Motor Cable robot 6
Hình 6.1 trình bày sơ đồ tổng quan thực nghiệm kiểm chứng mạng CAN Dữ liệu được gửi từ máy tính theo cấu trúc đã xây dựng cho mạng CAN, bao gồm vị trí góc quay của động cơ AC Servo Nhóm đã tiến hành một số thí nghiệm để kiểm tra hiệu suất và tính chính xác của mạng này.
Thí nghiệm 1: điều khiển động cơ số 5 quay một góc 0.2 deg, động cơ số 6 quay một góc -0.1 deg
Hình 6.2: Kết quả kiểm chứng mạng CAN thí nghiệm 1 Theo kết quả trên Hình 6.2, tín hiệu cần gửi xuống cho động cơ 5 là 0.2 1000 0020
+ = + , tín hiệu gửi xuống cho động cơ 6 là −0.1 100 = −0010 Tín hiệu hồi tiếp đọc được từ encoder của động cơ AC đối với động cơ 5 là 0018
+ = , vị trí động cơ 6 là 0008
Vị trí động cơ có sai số so với tín hiệu đặt, quan sát xung cung cấp cho động cơ và số xung trên driver đã nhận được
Dựa vào vị trí góc của động cơ, số xung mỗi vòng quay và tỷ số truyền của hộp số, ta có thể tính số xung cần phát cho mỗi động cơ bằng công thức cụ thể.
Để tính số xung cần phát cho động cơ thứ i, ta sử dụng công thức p i = θ i * r i * a i Cụ thể, áp dụng công thức này, số xung cần phát cho động cơ 5 là khoảng 11 xung và cho động cơ 6 là khoảng -4 xung.
So sánh số xung lý thuyết và số xung thực tế trên driver của động cơ cho thấy rằng số xung đã được cung cấp là đủ Tuy nhiên, có sự sai số tín hiệu do việc làm tròn số xung cần thiết Vì vậy, cần phải tích lũy thêm xung để bù đắp cho driver.
Thí nghiệm 2: điều khiển động cơ số 5 và số 6 về vị trí góc 0 deg
Hình 6.4: Kết quả kiểm chứng mạng CAN thí nghiệm 2
Tín hiệu đặt gửi cho động cơ là vị trí 0 deg Dựa vào kết quả trên Hình 6.4, vị trí của động cơ đều đã chạy về vị trí 0 deg
Hình 6.5: Số xung nhận được trên driver thí nghiệm 2
Khi quan sát số xung trên driver của động cơ, số xung cần thiết để đưa động cơ 5 và 6 quay ngược về vị trí 0 độ tương ứng với việc số xung sẽ trở về vị trí ban đầu là 0 xung.
Thí nghiệm 3: điều khiển vị trí cả 6 động cơ cùng lúc
Thực hiện điều khiển vị trí động cơ theo thứ tự lần lượt là 1 = 5; 2 = 5; 3 = 3
Hình 6.6: Kết quả kiểm chứng mạng CAN thí nghiệm 2 Dựa vào tín hiệu hồi tiếp của 6 động cơ, vị trí góc của từng động cơ là:
Bảng 6.1: Vị trí góc của động cơ trong thí nghiệm 3 Động cơ i Vị trí góc (deg) i
Hình 6.7: Số xung nhận được trên driver thí nghiệm 3 Dựa vào công thức (5.1) ta có số xung cần phát của mỗi động cơ như sau:
Bảng 6.2: Số xung cần phát của động cơ trong thí nghiệm 3 Động cơ i Số xung cần phát p i (xung)
Dấu trừ biểu thị chiều quay của động cơ theo hướng kim đồng hồ Vị trí của động cơ gần giống với vị trí tín hiệu đặt, tuy nhiên có sai số nhỏ do quá trình làm tròn xung và độ phân giải xung của encoder, bị ảnh hưởng bởi giới hạn đọc xung của vi điều khiển.
Kết luận: mạng CAN điều khiển hoạt động đúng theo yêu cầu thuật toán đã đề ra, xung cung cấp cho các driver hoạt động chính xác.
Quy hoạch quỹ đạo cho robot trong thực tế
6.2.1 Quy hoạch quỹ đạo hình tam giác
Quy hoạch quỹ đạo hình tam giác cho robot bắt đầu từ vị trí A (1027.4; 5.3; 5.3), tiếp theo di chuyển đến điểm B (927.4; 105.3; 5.3), sau đó đến điểm C (927.4; 105.3; 155.3) và cuối cùng trở về điểm A Hàm quy hoạch quỹ đạo sử dụng là hàm bậc 3, với thời gian di chuyển giữa các điểm là 15 giây và thời gian lấy mẫu của hệ thống là 50ms.
Kết quả thực nghiệm trên mô hình robot sử dụng tín hiệu hồi tiếp từ động cơ AC Servo được trình bày qua các hình ảnh dưới đây Hình 6.8 cho thấy: a) quỹ đạo tam giác trong mặt phẳng XYZ và b) quỹ đạo tam giác trong mặt phẳng.
YOZ a) b) c) Hình 6.9: Vị trí robot khi quy hoạch quỹ đạo tam giác a) vị trí theo trục X; b) vị trí theo trục
Robot điều chỉnh vị trí dựa trên tín hiệu đã gửi, và để đánh giá độ chính xác, cần xem xét sai số tín hiệu vị trí Sai số ở các trục được thể hiện trong Hình 6.10, bao gồm sai số theo trục X (a), trục Y (b) và trục Z (c).
Sai số vị trí của robot được quan sát và thể hiện trong Hình 6.10, cho thấy sai số giữa tín hiệu đặt và tín hiệu hồi tiếp nhỏ hơn 2mm Đáp ứng theo thời gian của các góc robot được mô tả trong Hình 6.11 với các trường hợp a), b), c), d), e) và f).
Hình 6.11 trình bày đáp ứng góc quy hoạch quỹ đạo hình tam giác của robot, bao gồm các góc theta1 đến theta6 Quan sát cho thấy tín hiệu hồi tiếp từ encoder các động cơ theo sát tín hiệu đặt, thể hiện sự chính xác trong việc điều khiển các góc của robot.
Hình 6.12 thể hiện đáp ứng sai số góc trong quy hoạch quỹ đạo hình tam giác với các sai số góc được phân loại như sau: a) sai số góc theta1; b) sai số góc theta2; c) sai số góc theta3; d) sai số góc theta4; e) sai số góc theta5; f) sai số góc theta6.
Sai số các khớp của robot nhỏ hơn 0.5 độ, với tín hiệu các góc phản ứng tốt với tín hiệu đặt Tuy nhiên, cần thực hiện thêm thí nghiệm để cải thiện kết quả Thí nghiệm được tiến hành 10 lần với tín hiệu quỹ đạo không đổi, và kết quả sai số vị trí của robot được thống kê trong Bảng 6.3.
Bảng 6.3: Giá trị RMS với quỹ đạo hình tam giác
Sau khi thực hiện nhiều lần thí nghiệm, kết quả cho thấy sai số vị trí từ tín hiệu encoder trên động cơ AC Servo tốt hơn so với vị trí tính toán từ tín hiệu encoder của khớp robot Cụ thể, sai số vị trí lớn nhất từ tín hiệu encoder của động cơ ghi nhận khoảng 0.63mm theo trục X, 1mm theo trục Y và 1.3mm theo trục Z.
Kết luận: Sau khi quy hoạch quỹ đạo cho robot, động cơ đã quay chính xác các góc tín hiệu mong muốn với sai số nhỏ Tuy nhiên, mô hình chuyển động thực tế vẫn còn hạn chế, dẫn đến việc các khớp chuyển động qua cáp chưa đạt độ chính xác cao.
6.2.2 Quy hoạch quỹ đạo hình tròn
Robot sẽ thực hiện một quỹ đạo hình tròn với tâm tại O (900; 0; 0) và bán kính 15cm Bắt đầu từ vị trí home A (1027.4; 5.3; 5.3), robot sẽ di chuyển đến điểm đầu tiên trên quỹ đạo tròn để bắt đầu quá trình vẽ Quá trình này sẽ kéo dài qua 2 chu kỳ của đường tròn, sau đó robot sẽ quay trở lại vị trí home Thời gian để robot hoàn thành một vòng tròn là 30.1 giây, trong khi thời gian di chuyển từ home A đến vị trí quỹ đạo là 15 giây, với thời gian lấy mẫu của hệ thống là 50ms.
Hình 6.13: a) Quỹ đạo hình tròn trong mặt phẳng XYZ; b) quỹ đạo hình tròn trong mặt phẳng
Robot được quan sát trong Hình 6.13, với tín hiệu đặt hình tròn, đường tín hiệu màu đen biểu thị tín hiệu đặt và đường màu đỏ là tín hiệu hồi tiếp từ động cơ Hình 6.14 minh họa đáp ứng vị trí quy hoạch quỹ đạo hình tròn, bao gồm a) vị trí theo trục X và b) vị trí theo trục Y.
Theo Hình 6.14 và Hình 6.15, vị trí của robot theo tín hiệu đặt thể hiện sự chính xác cao với sai số nhỏ dưới 3mm ở các trục X, Y và Z Cụ thể, sai số theo trục X, Y và Z lần lượt được ghi nhận trong các phần a), b) và c) của hình ảnh.
Hình 6.16 minh họa đáp ứng góc của robot trong quy hoạch quỹ đạo hình tròn, với các góc theta1 đến theta6 được chỉ rõ từ a) đến f) Trong khi đó, Hình 6.17 thể hiện sai số khớp khi thực hiện quy hoạch quỹ đạo hình tròn, với các sai số khớp 1 đến khớp 6 được phân loại từ a) đến f).
Dữ liệu vị trí và sai số của các khớp robot cho thấy vị trí khớp đáp ứng tốt với tín hiệu đặt, với sai số dưới 0.5 độ Để đánh giá phương pháp Jacobian trong quy hoạch quỹ đạo hình tròn và độ chính xác của mô hình, thí nghiệm đã được thực hiện thêm 10 lần để xác thực kết quả.
Bảng 6.4: Giá trị RMS với quỹ đạo hình tròn
Dựa vào kết quả thu thập từ cảm biến encoder, vị trí của robot được xác định từ tín hiệu encoder của động cơ AC Servo với sai số nhỏ dưới 0.5mm trên trục X, 1.9mm trên trục Y và 1.3mm trên trục Z Tuy nhiên, khi robot di chuyển theo tín hiệu đọc từ encoder của từng khớp, sai số vị trí trở nên lớn và không theo đúng quỹ đạo mong muốn.
Nguyên nhân dẫn đến mô hình bị chuyển động sai:
- Sự chuyển động của mỗi sợi cáp còn hạn chế
- Lực căng giữa các sợi cáp chưa đều đẫn đến các khớp chuyển động chưa đúng
- Xảy ra hiện tượng cáp bị giãn trong lúc di chuyển
Thực nghiệm điều khiển từ xa cho robot không có phản hồi lực
Trong thực nghiệm điều khiển từ xa không có phản hồi lực, Joystick chỉ gửi tín hiệu vị trí cho Laptop, giúp xử lý dữ liệu và ánh xạ qua miền không gian làm việc chung để điều khiển robot cáp 6 bậc tự do ở Slave Đầu tiên, cần thiết lập vị trí gốc chung cho Joystick và robot Thời gian di chuyển từ vị trí gốc của robot tại P (1027.5;0;0) đến vị trí đầu tiên do Joystick gửi là 15 giây Khi cả hai robot đều ở vị trí gốc trong không gian ánh xạ, ta có thể bắt đầu di chuyển Joystick theo các quỹ đạo mong muốn.
Thực nghiệm hệ thống điều khiển xa với thời gian thực hiện trong vòng 60s ta tiến hành thu thập dữ liệu vị trí đặt, góc quay của robot
Để đảm bảo an toàn trong quá trình vận hành, chúng tôi đã chọn các hệ số dược như sau: k = diag(2.5, 4, 4) và P w = [680, 0, 0] T Hơn nữa, vùng làm việc chung của hai robot cần có hệ số nhỏ hơn so với mô phỏng.
Tiến hành thu thập dữ liệu khi chạy hệ thống từ lúc ở vị trí home đến vị trí làm việc chung của 2 robot a) b)
Hình 6.19: Quỹ đạo chuyển động của robot trong trường hợp điều khiển từ xa không có phản hồi lực; a) góc nhìn 3D; b) góc nhìn YOZ
Dữ liệu sẽ được vẽ theo các trục x, y và z a) b) c)
Hình 6.20: Tín hiệu vị trí theo a) trục x, b) trục y và c) trục z khi kiểm chứng thực nghiệm hệ thống điều khiển từ xa không có phản hồi lực
Dữ liệu sẽ được vẽ sai số theo các trục x, y và z a) b) c)
Hình 6.21: Tín hiệu sai số vị trí theo a) trục x, b) trục y và c) trục z khi kiểm chứng thực nghiệm hệ thống điều khiển từ xa không có phản hồi lực
Quan sát sự đáp ứng vị trí của robot theo thời gian cho thấy vị trí của robot theo sát tín hiệu đã nhận, với khả năng ổn định cao Đồ thị sai số vị trí cho thấy sai số nằm trong khoảng nhỏ, cho thấy mô hình hoạt động ổn định Để có thêm đánh giá, chúng ta cũng cần xem xét đồ thị các góc.
và 6 đáp ứng như sau: a) b) c) d) e) f)
Hình 6.22 trình bày tín hiệu đáp ứng góc xoay của các khớp trong hệ thống điều khiển từ xa không có phản hồi lực, bao gồm khớp 1, khớp 2, khớp 3, khớp 4, khớp 5 và khớp 6 Sai số góc xoay của các khớp được thể hiện qua các ký hiệu 1, 2, 3, 4, 5 và 6, cho thấy sự đáp ứng của từng khớp trong quá trình kiểm chứng thực nghiệm.
Hình 6.23 minh họa tín hiệu sai số góc xoay của các khớp trong quá trình kiểm chứng thực nghiệm hệ thống điều khiển từ xa không có phản hồi lực Cụ thể, các khớp được phân tích bao gồm khớp 1, khớp 2, khớp 3, khớp 4, khớp 5 và khớp 6.
Dữ liệu thu thập từ vị trí góc xoay của động cơ cho thấy các khớp không xảy ra hiện tượng giao động hay vọt lố, với biên dạng tín hiệu ổn định và sai số các khớp nhỏ hơn 1 độ Kết quả thực nghiệm cho thấy mô hình robot hoạt động ổn định, và phương pháp anh xạ được sử dụng hiệu quả cho hệ thống điều khiển từ xa của cánh tay máy.
Thực nghiệm điều khiển từ xa cho robot có phản hồi lực
Trong thực nghiệm điều khiển từ xa có phản hồi lực, một chiếc laptop sẽ tính toán giá trị lực và gửi tín hiệu ngược trở lại joystick, giúp người dùng cảm nhận xúc giác tốt hơn khi vận hành hệ thống Quá trình này bao gồm việc thu thập dữ liệu từ mô hình robot và thiết bị joystick để cải thiện hiệu quả điều khiển.
Ta có các hệ số dược chọn như sau: k = diag ( 2.5 4 4 ; ) P w = 680 0 0 T a) b)
Hình 6.25: Quỹ đạo chuyển động của joystick sau khi ánh xạ, quỹ đạo tín hiệu đặt và quỹ đạo chuyển động của robot; a) góc nhìn 3D; b) góc nhìn YOZ
Trong hình 6.26, đường màu đen biểu thị vị trí joystick di chuyển sau ánh xạ, đường màu đỏ là tín hiệu gửi đến robot cáp, và đường màu xanh dương là phản ứng thực tế của robot Dữ liệu thu thập cho thấy phương pháp phản hồi lực giúp hệ thống duy trì ổn định, ngay cả khi có những vùng nằm ngoài không gian làm việc của robot cáp, khi joystick di chuyển vào vùng kỳ dị.
6.4.1 Dữ liệu được thu thập trên master
Tiến hành thu thập dữ liệu khi chạy robot cáp ở vị trí ban đầu đến vị trí làm việc chung của 2 robot a) b)
Hình 6.26: Quỹ đạo chuyển động của robot trong trường hợp điều khiển từ xa có phản hồi lực; a) góc nhìn 3D; b) góc nhìn YOZ
Dữ liệu sẽ được vẽ theo các trục x, y và z a) b)
(mm ) apping Position Setpoint Position
A m pl itu de ( mm ) Py mapping Py setpoint c)
Hình 6.27: Tín hiệu vị trí theo a) trục x, b) trục y và c) trục z khi kiểm chứng thực nghiệm hệ thống điều khiển từ xa có phản hồi lực
Dữ liệu sẽ được vẽ sai số theo các trục x, y và z a) b) c)
Hệ thống điều khiển từ xa có phản hồi lực cho robot cáp cho thấy tín hiệu sai số vị trí theo các trục x, y và z Khi kiểm chứng, tại những điểm ngoài không gian làm việc, vị trí gửi không theo kịp tín hiệu ánh xạ, dẫn đến việc hệ thống chuyển sang chế độ phản hồi lực Lực cản được tạo ra tỷ lệ với sai số giữa điểm biên không gian làm việc và vị trí ánh xạ, giúp end effector của joystick được kéo trở lại vào không gian làm việc, cho phép robot tiếp tục vận hành.
A m pl itu de ( mm ) P mapping P setpoint
A m pl itu de ( mm ) axis error haptic
Hình 6.29: Tín hiệu lực tác động theo a) trục x, b) trục y và c) trục z khi kiểm chứng mô phỏng hệ thống điều khiển từ xa có phản hồi lực
6.4.2 Dữ liệu được thu thập trên slave Để biết được hệ thống có phản hồi lực vận hành ổn định hơn khi chưa có phản hồi lực hay không, dữ liệu thu thập được trên hệ thống slave cần được thu thập và so sánh với tín hiệu trên hệ thống master khi vận hành Dữ liệu được thu thập cùng trường hợp với quỹ đạo như dữ liệu trên master
Tiến hành thu thập dữ liệu khi chạy robot cáp ở vị trí ban đầu đến vị trí làm việc chung của 2 robot a) b)
Hình 6.30: Quỹ đạo chuyển động của robot trong trường hợp điều khiển từ xa có phản hồi lực; a) góc nhìn 3D; b) góc nhìn YOZ
Dữ liệu sẽ được vẽ theo các trục x, y và z trên hệ thống slave a) b) c)
Hình 6.31: Tín hiệu vị trí theo a) trục x, b) trục y và c) trục z khi kiểm chứng thực nghiệm hệ thống điều khiển từ xa có phản hồi lực (slave)
Khi quan sát tín hiệu mà robot thu thập trong quá trình vận hành, vị trí của nó không xuất hiện hiện tượng giao động hay thay đổi đột ngột Để có thêm thông tin đánh giá, hãy so sánh các tín hiệu như trong hình a) và b).
Hình 6.32: a) Đáp ứng vị trí theo trục x chưa có phản hồi lực (master); b) đáp ứng vị trí theo trục x khi có phản hồi lực (slave)
Robot hoạt động theo tín hiệu mà máy tính master đã gửi, đảm bảo rằng vị trí của nó luôn nằm trong không gian làm việc đã được xác định.
Dữ liệu sẽ được vẽ sai số theo các trục x, y và z
A m pl itu de ( mm ) Px setpoint
A m pl itu de ( mm ) Py setpoint
A m pl itu de ( mm ) P setpoint
A m pl itu de ( mm ) Px setpoint
Hình 6.33 trình bày tín hiệu sai số vị trí theo các trục x, y và z trong quá trình kiểm chứng thực nghiệm hệ thống điều khiển từ xa có phản hồi lực (slave) Các góc xoay của các khớp 1, 2, 3, 4, 5 và 6 được thể hiện với các đáp ứng khác nhau.
A m pl itu de ( mm ) axis error
A m pl itu de ( mm ) Y axis error
A m pl itu de ( mm ) Z axis error
A m pl itu de ( deg ) Theta1 setpoint
A m pl itu de ( deg ) Theta setpoint
A m pl itu de ( deg ) Theta setpoint
A m pl itu de ( deg ) Theta setpoint
Hình 6.34 minh họa tín hiệu đáp ứng góc xoay của các khớp trong quá trình kiểm chứng thực nghiệm hệ thống điều khiển từ xa có phản hồi lực, bao gồm các khớp từ 1 đến 6, với các ký hiệu a) khớp 1, b) khớp 2, c) khớp 3, d) khớp 4, e) khớp 5 và f) khớp 6.
Quan sát cho thấy robot chỉ hoạt động trong không gian làm việc đã định sẵn và không di chuyển khi ở ngoài khu vực này, điều này được thể hiện qua các góc khớp nằm ngang Khi người vận hành quay lại khu vực làm việc, robot sẽ tiếp tục hoạt động bình thường.
Sai số góc xoay các khớp 1 , , , , 2 3 4 5 và 6 đáp ứng như sau: a) b) c) d)
A m pl itu de ( deg ) Theta5 setpoint
A m pl itu de ( deg ) Theta setpoint
A m pl itu de ( deg ) rror theta 1
A m pl itu de ( deg ) rror theta
A m pl itu de ( deg ) rror theta
Hình 6.35 minh họa tín hiệu sai số góc xoay của các khớp trong quá trình kiểm chứng thực nghiệm hệ thống điều khiển từ xa có phản hồi lực, bao gồm các khớp từ 1 đến 6 (a đến f).
Dữ liệu thu thập cho thấy robot cáp 6 bậc tự do duy trì kết nối tốt với tín hiệu từ master và không di chuyển vào các điểm kỳ dị bên ngoài vùng làm việc Việc phản hồi lực khi thiết bị di chuyển ra ngoài không gian làm việc giúp người vận hành cảm nhận được và điều chỉnh thiết bị trở lại vùng làm việc một cách hiệu quả.
Trong thí nghiệm, Joystick đã đưa ra 5 lần các vùng nằm ngoài không gian làm việc, với các điểm được xét lần lượt là P1, P2, P3, P4 và P5 Vị trí của điểm P1 được xác định là (1013.2; 180.43; −32.65).
Ta có thấy 5 điểm như trên nằm sát ngoài rìa vùng không gian làm việc của robot cáp như trong hình dưới đây: a) b)
Hình 6.36: Vị trí điểm nằm ngoài vùng không gian làm việc của robot trong không gian a)
Oxyz; b) Oxz khi tiến hành chạy thực nghiệm
A m pl itu de ( deg ) rror theta 5
A m pl itu de ( deg ) rror theta