THIẾT KẾ THUẬT TOÁN ĐIỀU KHIỂN PHI TUYẾN CHO ROBOT DELTA Chương 1: Cơ sở lý thuyết về robot Delta Chương 2 : Giới thiệu phần cứng của robot Delta Chương 3 : Đề xuất thuật toán điều khiển phi tuyến cho robot delta Chương 4 : Thử nghiệm hệ thống
Giới thiệu về robot Delta
1.1.1Khái quát về robot trong công nghiệp
Robot công nghiệp là các tay máy tự động hoặc bán tự động có thể lập trình, sử dụng PLC hoặc vi điều khiển nhạy cao Chúng có thể được cố định hoặc di chuyển, lặp lại các hành động một cách chính xác Được ứng dụng trong các hệ thống sản xuất linh hoạt, robot công nghiệp có khả năng điều khiển nhiều chiều và tự động nâng, di chuyển vật nặng Các ứng dụng phổ biến của robot bao gồm hàn, sơn, lắp ráp, chọn và đặt linh kiện điện tử, làm bao bì, dán nhãn, pallet, kiểm tra sản phẩm và thử nghiệm, tất cả đều với độ bền, tốc độ và độ chính xác cao.
Hình 1Cánh tay robot trong công nghiệp
Robot công nghiệp có thể được điều khiển bằng hai phương pháp chính: đầu tiên là lập trình tự động qua máy tính, cho phép robot hoạt động mà không cần sự can thiệp của con người; thứ hai là sử dụng bộ điều khiển từ xa với joystick, giúp người dùng điều khiển các chuyển động của robot một cách linh hoạt.
1.1.2 Giới thiệu về robot Delta 3 bậc tự do
Robot song song là một loại robot có cấu trúc động học khép kín, với các bộ phận được kết nối thông qua các khớp động.
Khớp ổ bi mắt trâu được sử dụng trong robot Delta mang lại nhiều ưu điểm nổi bật, bao gồm độ cứng cao nhờ vào cấu trúc hình bình hành và khả năng thực hiện các chuyển động từ đơn giản đến phức tạp.
Robot Delta là loại robot song song 3 bậc hoạt động, chuyên dụng trong công nghiệp, nổi bật với khả năng cung cấp chính xác vị trí làm việc đầu và cuối Với cơ chế hình bình hành và hệ thống cánh tay nhỏ gọn, robot Delta không chỉ hoạt động nhanh chóng mà còn tiết kiệm không gian trong nhà máy Cấu tạo chính của nó bao gồm 3 cánh tay có khớp lăng trụ, được kết nối với khớp ở bệ quay cố định, mỗi khớp lăng trụ được điều khiển bởi động cơ riêng, mang lại hiệu suất làm việc cao và chính xác.
Cấu tạo của robot Delta sẽ gồm các phần như sau
Một bệ cố định ở phía trên chứa động cơ điều khiển.
Ba cánh tay được gắn vào bệ, với đầu mỗi cánh tay kết nối với một chi tiết hình tam giác nhỏ Khi các cánh tay di chuyển, chi tiết hình tam giác này cũng sẽ chuyển động theo.
Robot delta thường có trọng tải dưới 8kg, nhưng lại rất linh hoạt và nhanh chóng Nhờ vào tốc độ cao, robot này có khả năng sản xuất các sản phẩm với độ chính xác cao trong thời gian ngắn.
Robot Delta bao gồm hai loại chính là 3PUS và 3RUS, có chức năng tương tự nhưng thiết kế khác nhau Robot Delta 3PUS là một biến thể của 3RUS, với đặc điểm nổi bật là thay thế khớp dẫn động quay bằng khớp động dẫn tịnh tiến Cấu trúc của 3PUS bao gồm hai bản cố định tam giác song song và khớp tịnh tiến nằm ở mỗi bên, giúp thực hiện chức năng nâng hạ hiệu quả.
Hình 2 Robot Delta 3PUS Đối tượng mà em nghiên cứu chính là robot delta 3 bậc 3 RUS với 3 cánh tay chuyển động song song quanh một bệ cố định
Hình 3 Robot Delta 3 bậc tự do 3RUS
Robot Delta 3RUS được trang bị ba cánh tay chuyển động song song, điều khiển bằng động cơ bước, cho phép mâm giữa hoạt động linh hoạt mà không làm dịch chuyển bệ cố định Mâm giữa này có khả năng gắp, thả hoặc kéo đồ vật đến vị trí khác một cách nhanh chóng và chính xác.
Ứng dụng của Robot song song
Robot Delta có ứng dụng rất rộng rãi trong đời sống như
Robot Delta có ứng dụng rất nhiều trong công nghiệp Ví dụ như kéo thả đồ vật, lắp ráp linh kiện…
Các robot này được sử dụng để sắp xếp các sản phẩm trên băng chuyền, điều mà các loại robot khác không thể thực hiện Chúng có khả năng xử lý các sản phẩm khác nhau với tốc độ nhanh và đặc biệt phù hợp cho các mặt hàng dễ vỡ.
Người ta sử dụng robot Delta để mô phỏng yên ngựa hay là mô phỏng xe đạp cho vận động viên…
Robot delta còn được sử dụng để mô phỏng buồng lái máy bay, đào tạo các phi công dân sự hoặc quân sự…
Trong lĩnh vực y học, robot có cấu trúc song song được sử dụng làm giá nâng kính hiển vi, hỗ trợ bác sĩ thực hiện các ca phẫu thuật một cách dễ dàng và hiệu quả.
Ngoài ra, chúng còn được sử dụng như một công cụ hỗ trợ giải phẫu
Hoạt động kết hợp cảm biến hình ảnh là cần thiết để nhận diện chính xác sản phẩm qua ngoại hình Ngoài việc sử dụng robot song song, cảm biến hình ảnh đóng vai trò như "đôi mắt" của robot, giúp xử lý thông tin về hình dáng và màu sắc Nhờ đó, robot có khả năng gắp đúng vật một cách hiệu quả.
Máy in 3D và máy cắt CNC sử dụng hệ thống robot song song
Là loại máy in sử dụng hệ thống song song của robot Delta kết hợp giữa robot 3PUS và 3RUS
Công nghệ in 3D được cho là nhanh chóng, tiện lợi, tạo ra các sản phẩm đẹp bằng công nghệ in nhựa
Chúng được chế tạo để phục vụ sản xuất nhanh chóng các sản phẩn in 3D
CHƯƠNG II GIỚI THIỆU PHẦN CỨNG CỦA
Sơ đồ khối tổng quan của robot delta
2.1.1 Sơ đồ khối cơ khí của robot Delta 3RUS
Hình 4 Cấu tạo robot song song 3RUS
Cấu tạo của robot này bao gồm:
Khung cố định tam giác ở trên cùng
Ba chân chủ động điều khiển bằng động cơ
Ba chân bị động, được nối với các chân chủ động bằng các ổ bi, khớp mắt trâu
Ba chân bị động theo cấu trúc hình bình hành
Nhờ cấu trúc hình bình hành mà robot có thể di chuyển bệ chuyển động tịnh tiến trong không gian
2.1.2 Sơ đồ tổng quan mạch điện của robot Delta 3RUS
Hình 5 Sơ đồ mạch điện tổng quan của robot Delta 3 RUS
Thông qua sơ đồ khối, chúng ta có thể nhìn thấy robot Delta 3RUS có những khối sau:
Khối Nguồn cấp
Khối Nguồn là bộ phận cung cấp điện cho robot hoạt động và các khối khác Để đảm bảo hoạt động ổn định, không nên sử dụng dòng điện xoay chiều, vì nó có thể gây hỏng hóc Thay vào đó, khối nguồn khuyến nghị sử dụng bộ biến đổi AC – DC và mạch hạ áp DC – DC Mạch chỉnh lưu có nhiều loại khác nhau để đáp ứng nhu cầu này.
Mạch chỉnh lưu không điều khiển sử dụng Diode
Mạch chỉnh lưu có điều khiển sử dụng SCR
Mạch chỉnh lưu bán điều khiển sử dụng cả Diode và SCR
Trong khối nguồn này, em sử dụng mạch chỉnh lưu không điều khiển dạng cầu sử dụng Diode
Hình 6 Mạch chỉnh lưu AC - DC
Mạch chỉnh lưu bao gồm biến áp xung, cầu Diode 1N4001, IC LM7805 để chuyển đổi thành 5VDC, cùng với tụ hóa 470uF và hai tụ 104 0,1uF Mạch còn được trang bị cầu chì 1A để bảo vệ Ưu điểm nổi bật của mạch này là tính dễ hiểu, dễ sử dụng và cung cấp nguồn ra ổn định nhờ có tụ lọc nhiễu.
Biến áp xung biến đổi từ nguồn xoay chiều 200VAC – 12VAC
Gồm có 2 cuộn dây sơ cấp và thứ cấp
Phần lớn các mạch chỉnh lưu hiện nay đều dùng loại biến áp này
Hình 7 Cuộn dây biến áp xung 220V - 12V
2.2.2 Cầu Diode 1N4001 a, Cơ sở lý thuyết
Vì đồ thị của dòng điện xoay chiều (AC) có hình sin, trong khi dòng điện 1 chiều (DC) mong muốn có dạng đường thẳng, nên đã ra đời khái niệm cầu Diode.
Hình 8 Nguyên lý hoạt động của cầu Diode
Trong nửa chu kỳ (+) của dòng điện xoay chiều dạng sóng hình sin, các diodes D1 và D2 sẽ được phân cực thuận, trong khi D3 và D4 sẽ bị phân cực ngược Kết quả là, điện áp sẽ di chuyển theo hướng được chỉ định bằng mũi tên màu đỏ trong hình 9.
Nửa chu kỳ còn lại (-) của dòng điện xoay chiều, ta có thể thấy chiều ngược lại,D3 và D4 phân cực thuận, D1 và D2 là phân cực nghịch b, Diode 1N4001
Diode 1N4001, thuộc dòng diode 1N400x, được sử dụng phổ biến trong các mạch điện tử Các diode này được thiết kế đặc biệt để phục vụ cho các mạch chỉnh lưu, mạch nguồn cung cấp điện và ngăn chặn điện áp không mong muốn.
- Dòng điện đỉnh không lặp lại: 30A
- Dòng điện ngược để không bị đánh thủng: 5uA
- Điện áp ngược lặp lại tối đa: 50V
Ký hiệu của Diode 1N4001 trên mạch điện:
Hình 10 Ký hiệu của Diode 1N4001 trên mạch điện
2.2.3 Mạch hạ áp sử dụng IC LM7805 a, Cơ sở lý thuyết
Mạch hạ áp sử dụng IC ổn áp LM 7805 là một giải pháp hạ áp không điều chỉnh, cung cấp điện áp đầu ra ổn định 5VDC Mạch này được kết nối trực tiếp với hai đầu của cầu Diode, đảm bảo hiệu suất và độ tin cậy trong việc cung cấp nguồn điện.
Mạch hạ áp, hay còn gọi là mạch Buck, sử dụng IC LM7805 kết hợp với các tụ hóa và tụ gốm 104 để lọc điện áp Những tụ này giúp ổn định điện áp đầu ra, ngăn chặn tình trạng reset cho vi điều khiển Sơ đồ mạch hạ áp với IC LM7805 là một giải pháp hiệu quả cho việc cung cấp nguồn điện ổn định.
Hình 11 Mạch buck không điều khiển sử dụng 7805
Sơ đồ mạch hạ áp không điều khiển điện áp đầu ra sử dụng IC 7805, với đầu vào 12VDC và đầu ra 5VDC Mạch này bao gồm một tụ hóa có giá trị 470uF cùng với hai tụ khác, giúp ổn định điện áp và cải thiện hiệu suất hoạt động.
7805 có 3 chân đó là IN, OUT và GND
IN là điện áp đầu vào, có giá trị 12V
OUT là điện áp đầu ra có giá trị 5V
GND là nối đất, có giá trị là 0V c, Thông số kỹ thuật của 7805
Dòng điện đầu ra 1,5A Điện áp đầu vào tối đa: 35V Điện áp đầu ra: 5VDC (const)
Khối chuyển động
2.3.1 Động cơ servo Ở đây, em sẽ nói đến động cơ RC Servo EMAX ES-08 MDII
Hình 12 Servo RC Emax ES-08MDII
- Điện áp đầu vào: 4-7VDC
- Lực kéo: 1.6kg (đối với 7VDC)
- Tín hiệu sử dụng: Digital
Khối xử lý, đo lường
2.4.1 Vi xử lý Arduino Uno
2.4.1.1 Vi điều khiển ATMega328P a, Giới thiệu về vi điều khiển ATMega328P
Là chip vi điều khiển được sản xuất bởi Atmel, thuộc họ vi điều khiển Mega AVR
Có sức mạnh nổi bật hơn vi điều khiển ATMega8
Là một vi điều khiển 8bit dựa trên kiến trúc RISC
Có thể lập trình được
Hỗ trợ các chuẩn kết nối SPI, I2C,…
Với 32 chân sử dụng đầu vào ra I/O
Hình 13 Vi điều khiển ATMega328P b, Thông số kỹ thuật của vi điều khiển ATMega328P
Tổng số chân PWM: 6 chân
Số chân Analog: 6 chân Điện áp hoạt động: 1,8 - 5VDC c, Sơ đồ chân của vi điều khiển ATMega328P
Hình 14 Sơ đồ chân của vi điều khiển ATmega328P
STT chân Mô tả Chức năng Mô tả chức năng
1 PC6 reset Reset vi điều khiển
2 PD0 Chân kỹ thuật số (RX) Chân đầu vào cho giao tiếp nối tiếp
3 PD1 Chân kỹ thuật số (TX) Chân đầu ra cho giao tiếp nối tiếp
4 PD2 Chân kỹ thuật số Chân 4 được sử dụng làm ngắt ngoài 0
5 PD3 Chân kỹ thuật số (PWM) Chân 5 được sử dụng làm ngắt ngoài 1
6 PD4 Chân kỹ thuật số Chân 6 được sử dụng cho nguồn bộ đếm bên ngoài Timer0
7 Vcc Điện áp dương Nguồn dương của hệ thống
8 GND Nối đất Nối đất của hệ thống
9 XTAL Dao động tinh thể Nối với 1 thạch anh tạo dao động
10 XTAL Dao động tinh thể Nối với 1 thạch anh tạo dao động
11 PD5 Chân kỹ thuật số (PWM) Chân 11 được sử dụng cho nguồn bộ đếm bên ngoài Timer1
12 PD6 Chân kỹ thuật số (PWM) Bộ so sánh analog dương i / ps
13 PD7 Chân kỹ thuật số Bộ so sánh analog âm i / ps
14 PB0 Chân kỹ thuật số Nguồn đầu vào bộ đếm hoặc bộ hẹn giờ
15 PB1 Chân kỹ thuật số (PWM) Bộ đếm hoặc bộ hẹn giờ so sánh khớp A
16 PB2 Chân kỹ thuật số (PWM) Chân này hoạt động như lựa chọn slave i / p.
17 PB3 Chân kỹ thuật số (PWM) Chân này được sử dụng làm đầu ra dữ liệu master và đầu vào dữ liệu slave cho SPI.
18 PB4 Chân kỹ thuật số Chân này hoạt động như một đầu vào xung nhịp master và đầu ra xung nhịp slave.
19 PB5 Chân kỹ thuật số Chân này hoạt động như một đầu ra xung nhịp master và đầu vào xung nhịp slave cho SPI.
20 AVcc Điện áp dương Điện áp dương cho ADC (nguồn)
21 AREF Tham chiếu analog Điện áp tham chiếu analog cho ADC (Bộ chuyển đổi analog sang kỹ thuật số)
22 GND Nối đất Nối đất của hệ thống
23 PC0 Đầu vào analog Đầu vào analog giá trị kỹ thuật số kênh 0
24 PC1 Đầu vào analog Đầu vào analog giá trị kỹ thuật số kênh 1
25 PC2 Đầu vào analog Đầu vào analog giá trị kỹ thuật số kênh 2
26 PC3 Đầu vào analog Đầu vào analog giá trị kỹ thuật số kênh 3
27 PC4 Đầu vào analog Đầu vào analog giá trị kỹ thuật số kênh 4
28 PC5 Đầu vào analog Đầu vào analog giá trị kỹ thuật số kênh 5
Bảng 1 Số chân và chức năng của vi điều khiển ATmega 328P
2.4.2 Board vi điều khiển Arduino Uno R3 a, Giới thiệu board Arduino Uno R3
- Nhắc tới lập trình vi điều khiển không thể không nhắc đến Arduino UNO R3
- Arduino Uno đã phát triển đến thế hệ thứ 3
- Board mạch Arduino Uno R3 sử dụng vi điều khiển ATMega họ 8 bit, chủ yếu là ATMega 328P
Arduino Uno R3 là một bảng mạch mạnh mẽ có khả năng thực hiện các tác vụ đơn giản như điều khiển đèn LED nhấp nháy, hiển thị thông tin trên màn hình LCD và đọc giá trị từ các cảm biến Thông số kỹ thuật của board Arduino Uno R3 cho thấy tính năng vượt trội và khả năng ứng dụng đa dạng trong các dự án điện tử.
Vi điều khiển: ATMega 328P Điện áp hoạt động: 5VDC (USB)
Tần số hoạt động: 16MHz
Dòng điện tiêu thụ: 30mA Điện áp đầu vào: 7-12VDC (cấp vào jack DC)
Dòng ra tối đa: 500mA
Có hỗ trợ chuẩn kết nối SPI và I2C cho lcd
2.4, Sơ đồ mạch điện các khối
Hình 15 Sơ đồ mạch điện cho robot Delta
Sơ đồ này em vẽ trên nền tảng Altium Designer 18, một phần mềm phát triển mạch điện tử rất mạnh mẽ
Altium Designer là phần mềm thiết kế PCB mạnh mẽ, mang đến một môi trường tích hợp giúp người dùng thực hiện toàn bộ quy trình thiết kế sản phẩm điện tử, từ giai đoạn ý tưởng cho đến sản xuất.
Altium Designer là nền tảng thiết kế tích hợp, kết hợp mọi khía cạnh của quy trình từ chụp sơ đồ, bố trí PCB đến quản lý thành phần Người dùng có khả năng tạo và chỉnh sửa sơ đồ, đóng vai trò quan trọng trong việc phát triển bố cục PCB chi tiết.
Với 2 file là Schematic và PCB, việc thiết kế mạch sẽ trở nên đơn giản hơn
Sơ đồ trên là file Schematic, đại diện cho nguyên lý hoạt động của robot Delta, bao gồm các khối quan trọng như khối nguồn, khối xử lý và khối chuyển động.
CHƯƠNG 3: ĐỀ XUẤT GIẢI THUẬT ĐIỀU
Các phương pháp điều khiển robot Delta hiện nay
3.1.1 Phương pháp PID a, PID là gì Được viết tắt bởi cụm từ Proportional Integral Derivative, có nghĩa là cơ chế phản hồi các vòng điều khiển
Bộ điều khiển này được sử dụng nhiều trong các hệ thống kín có tín hiệu phản hồi
Nhiệm vụ của PID là tính toán các giá trị sai số là hiệu số giữa giá trị đo thông số biến đổi và thông số đặt mong muốn
Bộ điều khiển có chức năng làm giảm tối đa sai số bằng các điều chỉnh giá trị điều khiển đầu vào
Hình 16 Chất lượng điều khiển khi sử dụng bộ điều khiển PID b, Nguyên lý hoạt động của PID
Thiết bị điều khiển và cài đặt
Sau khi chọn giá trị cài đặt (SV), bộ điều khiển sẽ gửi thông tin điều khiển đến các thiết bị chấp hành và cơ cấu Trong quá trình này, các thuật toán sẽ hoạt động, yêu cầu đóng mở liên tục với thời gian thay đổi, phụ thuộc vào trạng thái làm việc của hệ thống.
Hình 17 Sơ đồ của bộ điều khiển PID c, Các loại bộ điều khiển PID và ứng dụng của bộ điều khiển PID
PID được chia thành 3 loại:
PI: được gọi là Proportional Intergral Controller, là bộ điều khiển tỉ lệ, tích phân. P: là Proportional Controller, bộ điều khiển tỉ lệ
PID: là Proportional Intergral and Derivative Controller, được gọi là bộ điều khiển tỉ lệ, tích phân, đạo hàm
PD: còn được gọi là Proportional Derivative Controller, là bộ điều khiển tỉ lệ, đạo hàm Ứng dụng của bộ điều khiển PID:
Sử dụng PID điều khiển hệ thống bình mức qua PLC
Thiết kế thuật toán điều khiển UAV, Multicopter, cụ thể là các mạch flight controller…
Sử dụng bộ điều khiển PID trong các hệ thống Delta như 3PUS và 3RUS giúp tối ưu hóa mạch cân bằng với con quay hồi chuyển Bộ điều khiển này còn được ứng dụng hiệu quả trong việc điều khiển tốc độ động cơ không đồng bộ 3 pha thông qua PLC và biến tần Ưu điểm của bộ điều khiển PID là khả năng duy trì độ chính xác cao và ổn định trong quá trình điều khiển, tuy nhiên cũng tồn tại một số nhược điểm cần được lưu ý.
Đây là những thiết bị công nghệ cao, hoạt động an toàn và tự động
Cung cấp khả năng đáp ứng cao
Tính chính xác, tự động hóa cao
Không quá phức tạp trong điều chỉnh và chức năng của thiết bị
Các thiết bị PID mang lại lợi ích lớn, giúp các doanh nghiệp sử dụng mang lại hiệu quả cao.
Có thể thu được chính xác các giá trị của điểm đặt
Rất dễ bị nhiễu do sử dụng tín hiệu điều khiển
Việc điều chỉnh số liệu nhiều sẽ làm giảm tuổi thọ và khả năng hoạt động của thiết bị
Dễ dàng thấy được sự không ổn định khi nó không được điều chỉnh đúng cách
Cần có người chuyên môn cao về PID
3.1.2 Phương pháp điều khiển thích nghi a, Khái niệm
Là Phương sử dụng một bộ điều khiển phải thích nghi được với một hệ thống có đầu vào không chắc chẳn hoặc thông số bị thay đổi
Cơ sở của điều khiển thích nghi là ước lượng tham số, thường sử dụng các phương pháp như đệ quy bình phương tối thiểu và Gradient Descent Ổn định Lyapunov đóng vai trò quan trọng trong phương pháp điều khiển thích nghi, được áp dụng để phát triển các luật cập nhật và tiêu chuẩn hội tụ b Các loại phương pháp điều khiển thích nghi đa dạng, góp phần cải thiện hiệu suất hệ thống.
Có 2 loại điều khiển thích nghi
Điều khiển thích nghi nuôi tiến
Điều khiển thích nghi hồi tiếp
Tự điều chỉnh của bộ điều khiển tuyến tính cố định sau đó trong giai đoạn thực thi tại một điểm làm việc;
Tự điều chỉnh của bộ điều khiển bền vững cố định sau đó trong giai đoạn thực hiện cho toàn bộ phạm vi các điểm làm việc;
Tự điều chỉnh của bộ điều khiển cố định theo yêu cầu nếu hành vi quá trình này thay đổi do lão hóa, trôi, bào mòn vv.;
Điều khiển thích nghi của các bộ điều khiển cho các quá trình phi tuyến hoặc thời gian - biến đổi;
Điều khiển thích nghi hoặc điều khiển tự điều chỉnh của các bộ điều khiển phi tuyến cho các quá trình phi tuyến;
Điều khiển thích nghi hoặc điều khiển tự-điều chỉnh của các bộ điều khiển đa biến cho các quá trình đa biến (các hệ thống MIMO)
Xây dựng mô hình cho robot Delta
3.2.1 Mô hình động học cho robot Delta
Robot song song Delta không gian 3RUS bao gồm các thành phần chính như bàn máy cố định A, bàn máy động B, và ba khâu chủ động A1B1, A2B2, A3B3 được kết nối với bàn máy cố định thông qua các khớp quay Các khâu chủ động này được dẫn động bởi ba động cơ gắn chặt với bàn máy cố định A Ngoài ra, robot còn có ba khâu bị động B1D1, B2D2, B3D3, mỗi khâu là một cấu trúc hình bình hành.
Bàn máy động có khả năng chuyển động tịnh tiến trong không gian, cho phép robot Delta 3RUS hoạt động với 3 bậc tự do Điều này được xác định bởi 3 tọa độ θ1, θ2 và θ3 trong không gian khớp.
Hình 18 Mô hình robot song song delta
Sử dụng phương trình Langrange nhân tử để thiết lập phươn trình chuyển động : q= [ s T a S T p ] = [ θ 1 θ 2 θ 3 x p y p z p ] T
Với: s a =[ θ 1 θ 2 θ 3 ] T là tọa độ suy rộng các khớp chủ động s p =[ x p y p z p ] T là tọa độ thao tác
Phương trình liên kết các chân nhện cho robot được mô tả như sau: f1 = L2^2 - [(cos α1 (R - r) + L1 cos α1 cos θ1 - xp)^2 + (L1 sin θ1 + zp)^2 + (sin α1 (R - r) + L1 sin α1 cos θ1 - yp)^2]; f2 = L2^2 - [(cos α2 (R - r) + L1 cos α2 cos θ2 - xp)^2 + (sin α2 (R - r) + L1 sin α2 cos θ2 - yp)^2 + (sin θ2 + zp)^2]; f3 = L2^2 - [(cos α3 (R - r) + L1 cos α3 cos θ3 - xp)^2 + (sin α3 (R - r) + L1 sin α3 - cos θ3 - yp)^2 + (sin θ3 + zp)^2].
3.2.2 Bài toán động học thuận cho robot Được xác định từ 3 góc θ 1, θ 2, θ 3 trong không gian khớp, ta tìm được vị trí của tọa độ tương ứng của điểm:
Tâm bàn máy động đóng vai trò quan trọng trong bài toán động học thuận, đặc biệt khi việc xác định tọa độ của khâu tác động cuối của robot gặp khó khăn Việc sử dụng các cảm biến để hỗ trợ trong quá trình này là rất cần thiết.
Trong trường hợp này, việc đo các góc θ1, θ2, θ3 giữa các khâu chủ động và bàn máy cố định cho phép chúng ta tính toán và suy ra vị trí của bàn máy động tương ứng.
Dựa vào các phương trình liên kết các chân, bài toán động học thuận được mô tả qua các phương trình sau: x1 = cos α1 (R−r) + L1 cos α1 cos θ1, y1 = sin α1 (R−r) + L1 sin α1 cos θ1; x2 = cos α2 (R−r) + L1 cos α2 cos θ2, y2 = sin α2 (R−r) + L1 sin α2 cos θ2; x3 = cos α3 (R−r) + L1 cos α3 cos θ3, y3 = sin α3 (R−r) + L1 sin α3 cos θ3; z1 = −L1 sin θ1, z2 = −L2 sin θ2.
3.2.3 Bài toán động học ngược cho robot Delta
Mục đích của bài toán động học ngược là tính toán các góc xoay của các khớp trên tọa độ tâm bàn máy động:
Dựa vào phương trình liên kết các chân nhện của robot, ta suy ra phương trình dưới dạng f i (i=1,2,3…) như sau
Vấn đề động học nghịch này tương đương với giải quyết phương trình sau a sin θ+ b cos θ= c (16)
Phương trình này được giải như sau:
Chia 2 vế của phương trình cho √ a 2 +b 2 , ta có a sin θ
√ a 2 + b 2 Thay ngược lại vào phương trình trên, ta có cos α sin θ+sin α cos θ= c
Biến đổi phương trình (17), ta có: sin(θ +α )= c
Ta đưa ra được biểu thức sau:
Tổng quát lại phương trình (18), ta có: θ i =arcsin c i
Như vậy, bài toán động học nghịch đã được giải thích triệt để.
Thiết kế giải thuật điều khiển cho tay gắp Delta
3.3.1 Mô hình động lực học cho tay gắp Delta
Như đã nói ở trên, mô hình động lực học Delta được trình bày dưới dạng ma trận như sau:
Trong đó: s=q=[ θ 1 θ 2 θ 3 x p y p z p ] T là vecto trạng thái của hệ thống
Ma trận đối xứng xác định dương M (s ) là ma trận khối lượng
Vector g (s ) là một vector tổng hợp Vector này bao gồm Coriolis, ly tâm và trọng lực.
Ta mô tả ma trận Jacobi của các phương trình động học như sau : ϕ s ( s)= ∂ f
Trong đó f i (i=1,2,3) là các phương trình liên kết cánh tay robot, được trình bày ở trên và λ là nhân tử Lagrange
Bài toán điều khiển Delta 3RUS liên quan đến việc điều chỉnh chuyển động của bàn máy theo quỹ đạo đã định sẵn Mục tiêu là đảm bảo rằng vị trí thực tế s p = [x p, y p, z p] T tiệm cận đến giá trị mong muốn r p = [x d, y d, z d] T thông qua việc tác động tín hiệu điều khiển τ lên hệ thống.
Ta có ϕ a là ma trận Jacobi của các biến chủ động s a =[ θ 1 θ 2 θ 3 ] T và ϕ p là ma trận của các biến bị động s p =[ x p y p z p ] T , suy ra : ϕ a =
Ta đặt R = [ −ϕ I −1 p 3 ϕ a ] với I 3 là ma trận đơn vị có kích thước 3x3 và nhân R với 2 vế của phương trình, ta có :
Từ các phương trình liên kết cánh tay robot như trên, ta có : f ( s )=f ( s a , s p ) =0 ⇒ f ´ =ϕ a ´ s a + ϕ p ´ s p =0 (25)
Như phương trình trên với ma trận không suy biến ϕ p , ta có : ´ s p =−ϕ −1 p ϕ a ´ s a (26)
Như vậy, ta có thể suy ra được : ´ s=R ´ s a và ´ s= R ´ s a + ´ R ´ s a (27)
Thay phương trình vừa suy ra được vào phương trình R T , ta có :
Vì R T ϕ T s =0 nên biểu thức (28) được viết lại như sau :
Từ đó, suy ra phương trình động lực học của Delta sẽ có dạng sau :
Phương trình này sẽ được sử dụng trong phần thiết kế giải thuật điều khiển
3.3.2 Thiết kế giải thuật điều khiển cho robot Delta
Sơ đồ điều khiển của Delta được thể hiện như sau
Hình 19 sơ đồ điều khiển của robot Delta
Dựa trên giá trị đặt r p = [ x d y d z d ] T, chúng ta có thể tính toán quỹ đạo mong muốn cho robot Delta, cụ thể là cho từng góc khớp thông qua quỹ đạo mong muốn của bộ phận kết thúc r a =[ θ 1 d , θ 2 d , θ 3 d ] T Tín hiệu này được sử dụng để tính toán tín hiệu điều khiển τ a.
Dưới tác động của lực τ a, cánh tay robot hoạt động với trạng thái đầu của góc khớp Delta 3 chân, được biểu diễn bởi s a = [θ 1, θ 2, θ 3] T Giá trị này không chỉ được sử dụng để cập nhật tín hiệu điều khiển mà còn cho bài toán động học ngược nhằm xác định vị trí kết thúc của cánh tay robot.
3.3.3 Thiết kế bộ điều khiển dành cho delta
Chúng tôi sẽ thiết kế một bộ điều khiển cho robot Delta, giúp bàn máy động di chuyển theo quỹ đạo mong muốn Bộ điều khiển này được xây dựng dựa trên phương trình động lực học, với công thức: τ a = ´ M ( r ´ a + K p e a + K d e ´ a ) + C s ´ a + ´ g (31).
Giá trị mong muốn của ba góc khớp được ký hiệu là r a =[ θ 1d , θ 2 d , θ 3 d ] T, được tính toán thông qua bài toán động học ngược từ tín hiệu mong muốn Sai lệch tín hiệu điều khiển của ba góc khớp được xác định bằng công thức e a =r a − s a, trong đó r p =[ x d y d z d ] T là tín hiệu điều khiển tương ứng.
Sử dụng tín hiệu của (31) thế vào phương trình động lực học của robot ở trên, ta có
Từ phương trình (32) suy ra:
Ma trận M là ma trận đối xứng và xác định dương, do đó ma trận M' = R^T M R cũng sẽ đối xứng và xác định dương Điều này dẫn đến việc M' khả nghịch, và từ đó ta có thể suy ra rằng s' a = r' a + K P e a + K D e' a.
Mặt khác, (34) cũng tương đương với e ´ a =− K p e a − K D e ´ a (35) Đặt q a = [ e e ´ a a ] phương trình (35) trở thành q ´ a = [ −K O 3 P −K I 3 D ] q a (36)
Ta ký hiệu A= [ −K O 3 P − I K 3 D ] , khi đó nghiệm của hệ (36) có dạng: q a ( t ) = ⅇ At q a ( 0 ) (37)
Mục tiêu của bài toán là điều khiển sai số góc khớp e a tiến về giá trị không, tương đương với việc điều khiển q a cũng tiến về không sau một khoảng thời gian hoạt động nhất định Để đạt được điều này, ma trận A cần được thiết kế sao cho tất cả các giá trị riêng của A nằm ở phía bên trái trục ảo, và yêu cầu này sẽ được thỏa mãn thông qua việc lựa chọn các ma trận tham số K P và K D.
Các bước thực hiện thiết kế robot Delta:
Khởi tạo giá trị mong muốn r p =[ x d , y d , z d ] T , sử dụng bài toán động học ngược để tính quỹ đạo mong muốn sao cho phù hợp r a =[ θ 1 d , θ 2 d , θ 3d ] T
Lựa chọn các ma trận tham số K P và K D sao cho tất cả các giá trị rieng cảu ma trận A nằm bên trái trục ảo
Tính toán tín hiệu điều khiển:
Tính toán tín hiệu điều khiển τ a dựa trên phương trình (36)
Kiểm tra, đánh giá và tinh chỉnh cho bộ điều khiển
Chương 4: Thử nghiệm hệ thống
Dùng matlab Simulink thiết lập mô phỏng
Hình 20 Mô phỏng điều khiển robot delta qua phần mềm matlab Simulink
Hình 19 minh họa sơ đồ mô phỏng hệ thống điều khiển robot delta trong Matlab Simulink, với các khối điều khiển được sắp xếp từ trái qua phải, bắt đầu với khối Passive Reference.
Khối Passive Reference là khối khởi tạo r p =[ x d , y d , z d ] T
Khối này dùng để khởi tạo quỹ đạo cho bàn máy động
Hình 22 Bên trong khối quỹ đạo đặt
Khối quỹ đạo đặt là phần thiết lập các giá trị ban đầu cho bàn máy động, với các giá trị r p được định nghĩa là [ x d , y d , z d ] T Các phương trình liên quan cũng được xác định dựa trên các thông số đã cho.
Các phương trình được lấy trong 2 trường hợp:
Khối này còn được gọi là khối động học ngược, được sử dụng trong tính toán giá trị đặt r a =[ θ 1 d , θ 2d , θ 3 d ] T cho ba góc khớp của delta
Hình 24 Bên trong khối động học ngược Đầu tiên, ta sẽ đặt đầu vào các giá trị tham số
Các tham số mô hình được cho ở bảng 2
Tính toán θ 1, θ 2, θ 3 theo phương trình ở phần động học thuận
Khối control signal là khối tính toán tín hiệu điều khiển τ a , bao gồm chuyển động của các khớp quay s a =[ θ 1 ,θ 2 , θ 3 ] T
Và chuyển động của vị trí gắp s p =[ x , y , z ] T
Hình 26 Bên trong khối Dynamic Matrix control signal
Hình 27 Bên trong khối control signal của control signal
Như ta có thể thấy, muốn điều khiển nhanh hay chậm phụ thuộc vào các thông số K P , K D được khai báo trên chương trình
Như vậy, muốn điều khiển tốc độ nhanh hay chậm, chỉnh các thông số K P , K D trên chương trình
Khối tính toán chuyển động của robot thực hiện dựa trên tín hiệu điều khiển τ a, bao gồm việc điều khiển các góc khớp quay S a = [θ 1, θ 2, θ 3] T và vị trí gắp s p = [x, y, z] T.
Hình 29 Bên trong khối Delta Robot
Khối này dùng để quan sát và so sánh chuyển độc của các khớp so với thực tế với quỹ đạo mong muốn thiết lập cho robot
Hình 33 Khối View State Space
Dùng để quan sát chuyển động gắp của robot so với thực tế
Thiết lập các tham số mô phỏng như sau:
Giá trị Đơn vị Giá trị Đơn vị α 1 0 rad R 0,266 m α 2 2 π
Bảng 2 Giá trị tham số của delta mô phỏng
Thiết lập các tham số điều khiển:
- Bộ điều khiển 1: KP = 64I3 và KD = 16I3
- Bộ điều khiển 2: KP = 256I3 và KD = 32I3
Tiến hành mô phỏng hệ thống trên Matlab Simulink
Bài viết này tiến hành so sánh hai bộ điều khiển trong việc đáp ứng quỹ đạo của robot, bao gồm quỹ đạo hình tròn và quỹ đạo hình tam giác.
Trường hợp 1: Quỹ đạo là hình tròn
Rô bốt song song Delta 3RUS chuyển động theo quỹ đạo r p =[ x d , y d , z d ] T, với các thành phần x d =0,3 cos (2 πt), y d =0,3 sin (2 πt) và z d =−0,7 Sau khoảng 0.5 giây, các góc khớp của robot sẽ đạt được giá trị tương ứng với quỹ đạo mong muốn, nhờ vào việc tính toán các giá trị góc đặt cho biến khớp thông qua bài toán động học ngược Tốc độ đáp ứng của khâu tác động cuối cũng được thể hiện theo quỹ đạo r p =[ x d , y d , z d ] T, đảm bảo sự chính xác và hiệu quả trong quá trình hoạt động của robot.
Hình 34 Đáp ứng quỹ đạo chuyển động của robot Delta trong không gian khớp với quỹ đạo là hình tròn
Hình 35 Đáp ứng chuyển động khâu tác động cuối cảu robot Delta với quỹ dạo là hình tròn
Chuyển động của khâu bàn máy động trong robot Delta 3RUS được thể hiện trong không gian 2D và 3D, như minh họa trong Hình 27 Bộ điều khiển dựa trên mô hình đã mang lại kết quả điều khiển hiệu quả, giúp đối tượng đạt được quỹ đạo đầu ra mong muốn.
Hình 36 Đáp ứng chuyển động quỹ đạo mong muốn là hình tròn
Sai lệch vị trí và góc khớp của robot Delta không gian 3RUS được minh họa trong Hình 4.5, với đường màu đỏ thể hiện bộ điều khiển.
2 cho tốc độ bám góc khớp và vị trí nhanh hơn, đồng thời cho sai lệch thấp hơn so với đường màu xanh tương ứng với bộ điều khiển 1
Hình 37 Sai lệch vị trí góc khớp của robot Delta trong không gian 2D và 3D với quỹ đạo là hinh tròn
Trường hợp 2: Quỹ đạo mong muốn là một đường tròn với r p =[ x d , y d , z d ] T x d =0,1 +0,2 cos ( 2t ) (40) y d =0,1+0,2 cos (2 t) sin (2t ) (41) z d =−0,7 (42)
Giống như trường hợp đầu tiên, quỹ đạo hình số 8 cho phép 3 khớp quay gắn trên chân robot Delta nhanh chóng đạt được giá trị mong muốn Điều này cho thấy tọa độ của robot sẽ di chuyển theo quỹ đạo hình số 8 một cách chính xác.
Hình 38 Đáp ứng quỹ đạo chuyển động trong không gian khớp của robot Delta với quỹ đạo hình số 8
Hình 39 Đáp ứng quỹ đạo chuyển động khâu tác động cuối của robot Delta với trường hợp quỹ đạo số 8
Chuyển động của khâu bàn máy động trong robot Delta 3RUS được phân tích trong không gian 2D và 3D, đặc biệt trong trường hợp quỹ đạo số 8, như thể hiện trong hình ảnh.
Kết quả điều khiển cho thấy, bàn máy động đã nhanh chóng đạt được quỹ đạo đáp ứng đầu ra mong muốn, chứng minh tính hiệu quả của phương pháp thiết kế bộ điều khiển.
Hình 40 Đáp ứng quỹ đạo chuyển động mong muốn là hình số 8
Sai lệch vị trí và góc khớp của robot Delta không gian 3RUS được minh họa trong hình 27 Hiệu quả của hai bộ điều khiển cũng được thể hiện qua khả năng di chuyển theo quỹ đạo hình số 8.
Hình 41 Sai lệch góc khớp và vị trí cảu robot Delta khí quỹ đạo là hình số 8
Bộ điều khiển 2, được thể hiện bằng đường màu đỏ, cho thấy khả năng điều chỉnh tốc độ, góc khớp và vị trí nhanh hơn so với bộ điều khiển 1, được biểu diễn bằng đường màu xanh So với bộ điều khiển 1, bộ điều khiển 2 đạt được sai lệch thấp hơn, cho thấy hiệu suất tốt hơn trong việc điều khiển.
Tiến hành chạy thử và nhìn trên khối View Joint Space
Hình 42 Tốc độ của robot khi áp dụng bộ điều khiển PID
Tốc độ ổn định khi sử dụng bộ điều khiển được thể hiện rõ qua mô phỏng, trong đó nhánh đỉnh của đồ thị trùng với đường 0, chứng minh tính ổn định của hệ thống.
Khi điều chỉnh các tham số K P và K D, tốc độ của robot sẽ thay đổi Cụ thể, nếu tăng giá trị K P một chút và giảm K D, độ dốc của đồ thị sẽ tiến gần đến trục tung, cho thấy rằng tốc độ của robot sẽ tăng lên.
Lưu đồ thuật toán cho robot Delta
Sau khi khởi động hệ thống, với các thông số K P và K D được cài đặt như trong phần mô phỏng, hệ thống sẽ tự động đọc vị trí thông qua phương trình động học ngược.
Robot sẽ biết được vị trí hiện tại của bàn máy động, từ đó đi vào phần áp dụng PID với các thông số đã cài đặt ở trên
Arduino sẽ xuất tín hiệu điều khiển để điều khiển hành trình của động cơ servo nhằm giúp bàn máy động có được quỹ đạo như mong muốn.
Trong quá trình kiểm tra, nhiệm vụ chính là xác định xem bàn máy động đã được đặt đúng vị trí hay chưa Có hai trường hợp có thể xảy ra trong quá trình này.
Một là, YES nếu như bàn máy đến vị trí cần, lúc đó kết thúc chương trình
Hai là, NO nếu như bàn máy không đến đúng vị trí mong muốn, hệ thống tự động về vị trí lặp lại chu kỳ PID
Lập trình giải thuật điều khiển trên ngôn ngữ C cho Robot Delta với nền tảng phần cứng Arduino
Arduino là một vi điều khiển có thể lập trình được, hỗ trợ ngôn ngữ C và C++.
Là một trong những kit phát triển cơ bản, Arduino làm được rất nhiều project khác nhau liên quan đến hệ thống nhúng thông minh
Sau đâu là chương trình mẫu của Arduino điều khiển robot song song Delta:
Chương trình này được viết trên phần mềm Visual Studio Code với rất nhiều tính năng nổi bật hơn so với Arduino IDE
Extension Platform IO IDE tích hợp với ngôn ngữ C trên Visual Studio Code, hỗ trợ không chỉ cho vi điều khiển mà còn cho cả Node JS, CSS, HTML, Lua và nhiều ngôn ngữ khác.
Platform IO IDE là một extension hữu ích cho Visual Studio Code, không chỉ hỗ trợ lập trình Arduino mà còn tương thích với các vi điều khiển STM như STM32 F405, F722 và các vi điều khiển 8051 như AT89S52.
Hình 44 Khai báo chân và setup PID
Muốn điều khiển servo, ta phải có thư viện cho servo
Khi sử dụng servo, bạn cần khai báo số lượng servo và kết nối chân tín hiệu của chúng vào vi điều khiển Để điều chỉnh góc quay của servo so với vị trí ban đầu, hãy sử dụng lệnh angle.
Khởi tạo giá trị K P , K I , K D tạo bộ điều khiển PID
Hình 46 Tính toán góc của servo
Kết luận và hướng phát triển của đề tài
Robot song song, đặc biệt là robot Delta, đang ngày càng được ưa chuộng trong ngành công nghiệp sản xuất nhờ vào tốc độ và độ chính xác cao Bài viết này trình bày phương pháp thiết kế và tối ưu hóa bộ điều khiển cho loại robot này, cung cấp hướng dẫn thiết kế áp dụng cho mọi loại robot song song Đầu tiên, chúng tôi tiến hành tính toán các thông số cần thiết và biểu diễn các phương trình chuyển động của robot trong không gian thông qua các phương trình động học thuận và nghịch.
Thiết kế bộ điều khiển cho robot sử dụng phương pháp PID controller, một trong những phương pháp điều khiển phổ biến hiện nay, giúp tối ưu hóa hiệu suất hoạt động của robot thông qua việc điều chỉnh các thông số phù hợp.
Chúng tôi đã thiết kế một bộ điều khiển đề xuất cho robot Delta, sử dụng các phương trình tín hiệu để điều chỉnh các góc khớp của robot theo vị trí đã chỉ định Qua đó, robot có thể được điều khiển theo quỹ đạo đã được xác định trước.
Bộ điều khiển hiện tại vẫn gặp phải vấn đề nhiễu và sai sót trong quá trình điều khiển Do đó, trong tương lai, sẽ có một phương pháp điều khiển mới được thiết kế nhằm thay thế cho cách điều khiển hiện tại.