ĐỒ ÁN PHÁT TRIỂN TAY KẸP ĐIỆN CÓ PHẢN HỒI LỰC CHO ROBOT HỢP TÁC

Mã đồ án CNCDT0202559
Đánh giá: 5.0
Mô tả đồ án

     Đồ án có dung lượng 260MB. Bao gồm đầy đủ các file như: Tất cả các file chương trình phát triển tay kẹp điện có phản lực cho robot hợp tác, file bản thuyết minh, nhiệm vụ đồ án, phiếu nhận xét, bìa đồ án, phụ lục code, bản trình chiếu bảo vệ Power point…). Ngoài ra còn cung cấp rất nhiều các tài liệu chuyên ngành, các tài liệu phục vụ cho thiết kế đồ án........... PHÁT TRIỂN TAY KẸP ĐIỆN CÓ PHẢN HỒI LỰC CHO ROBOT HỢP TÁC.

Giá: 990,000 VND
Nội dung tóm tắt

MỤC LỤC

LỜI CẢM ƠN…………………………………………………………………........................…..i

TÓM TẮT ĐỀ TÀI……………………………………………….……………........................….ii

CHƯƠNG 1. TỔNG QUAN VỀ ĐỀ TÀI...........................................................…........…….1

1.1   Tổng quan về tay kẹp robot........................................................................................ 1

1.2   Phân loại tay kẹp........................................................................................................ 1

1.2.1  Tay kẹp hút chân không............................................................................................ 1

1.2.2   Tay kẹp khí nén........................................................................................................ 2

1.2.3   Tay kẹp thủy lực....................................................................................................... 3

1.2.4  Tay kẹp servo điện.................................................................................................... 4

CHƯƠNG 2. THIẾT KẾ CƠ KHÍ TAY KẸP..................................................... …........…….6

2.1  Mô hình cơ khí............................................................................................................. 6

2.3  Tính chọn động cơ....................................................................................................... 7

CHƯƠNG 3. THIẾT KẾ MẠCH ĐIỀU KHIỂN TAY KẸP….........................................…….9

3.1   Cảm biến lực FSR402................................................................................................ 9

3.2   Arduino UNO R3......................................................................................................... 9

3.3   ESP32........................................................................................................................ 11

3.4   Chiết áp 20K.............................................................................................................. 12

3.5   Động cơ Servo MG995.............................................................................................. 13

3.6   Sơ dồ mạch điện........................................................................................................ 14

CHƯƠNG 4. THIẾT KẾ GIAO DIỆN CHO TAY KẸP ROBOT....................……............….16

4.1  Thiết lập và tạo bố cục cho phần mềm điều khiển...................................................... 16

4.1.1   QT Designer............................................................................................................ 16

4.1.2   Thiết lập các thông số cho phần mềm điều khiển bằng Python............................. 19

4.2   Lập trình,chức năng................................................................................................... 20

4.3   Cách sử dụng phần mềm điều khiển......................................................................... 21

4.3.1  Tạo kết nối giữa phần mềm và tay kẹp.................................................................... 21

4.3.2  Chế độ điều khiển.....................................................................................................22

4.4  Kết luận....................................................................................................................... 24

CHƯƠNG 5. THIẾT KẾ BỘ ĐIỀU KHIỂN......................................................................... 25

5.1  Truyền thông tay kẹp................................................................................................... 25

5.1.1     Các kiểu truyền và nhận dữ liệu........................................................................... 25

5.1.2  Truyền nhận dữ liệu..................................................................................................29

5.2   Lập trình điều khiển cho tay kẹp có phản hồi lực...................................................... 30

5.2.1  Phương án điều khiển và sơ đồ khối của bộ kẹp.................................................... 30

5.2.2   Chương trình điều khiển cho Arduino......................................................................32

5.2.3    Giảm nhiễu khi đọc cảm biến bằng bộ lọc Kalman.................................................32

CHƯƠNG 6. KẾT QUẢ VÀ THẢO LUẬN......................................................................... 35

6.1  Kết quả đạt được........................................................................................................ 35

6.2  Hướng phát triển trong tương lai của đề tài và những mặt còn hạn chế….................38

PHỤ LỤC........................................................................................................................... 40

TÀI LIỆU THAM KHẢO......................................................................................................46

TÓM TẮT ĐỀ TÀI

Đề tài "Phát triển tay kẹp có phản hồi lực cho Robot hợp tác" được thực hiện nhằm đáp ứng nhu cầu cải tiến và phát triển các thiết bị robot trong ngành công nghiệp, đặc biệt là các hệ thống tự động hóa trong sản xuất. Mục tiêu của đề tài là tăng cường hiệu suất và độ chính xác trong quá trình kẹp và di chuyển vật thể. Điều này rất quan trọng để đáp ứng yêu cầu ngày càng cao về tự động hóa và hiện đại hóa trong các ngành công nghiệp, giúp nâng cao hiệu quả sản xuất và giảm thiểu sai sót trong quá trình vận hành.

Phương pháp giải quyết bao gồm việc nghiên cứu các loại tay kẹp robot hiện có, thiết kế mô hình cơ khí, mạch điều khiển, và giao diện phần mềm điều khiển tay kẹp. Em đã sử dụng các thành phần như Cảm biến lực FSR402, động cơ Servo MG995, ESP32 để thiết kế mạch điều khiển tay kẹp. Giao thức Serial được sử dụng để truyền và nhận dữ liệu giữa tay kẹp và bộ điều khiển, cùng với việc lập trình điều khiển tay kẹp có phản hồi lực bằng ESP 32. Giao diện điều khiển được thiết lập bằng QT Designer, cho phép người dùng dễ dàng thao tác và điều khiển tay kẹp.

Kết quả đạt được cho thấy tay kẹp có khả năng kẹp được nhiều loại phôi khác nhau, mở ra tiềm năng áp dụng vào thực tế cao. Giao diện điều khiển thông minh với nhiều tính năng tiện lợi cho người dùng, có đồ thị hiển thị thông số hiện tại của tay kẹp. Tuy nhiên, để có thể ứng dụng được vào thực tế, cần tích hợp thêm các cải tiến như thiết kế mạch điện nhỏ gọn, sử dụng vỏ kim loại để tăng độ vững chắc, và tích hợp thêm camera cùng cảm biến xúc giác để phát hiện đặc điểm vật lý của vật và điều khiển lực kẹp chính xác hơn. Hướng phát triển tương lai bao gồm tích hợp tay kẹp vào robot UR để thực hiện các nhiệm vụ gắp thả phức tạp, nhằm đáp ứng tốt hơn các yêu cầu của ngành công nghiệp hiện đại.

                                                                                                                                Hà Nội, ngàytháng ... năm 20

                                                                                                                               Sinh viên thực hiện

                                                                                                                                                                                 (Ký và ghi rõ họ tên)

                                                                                                                               ……..….......…….

CHƯƠNG 1. TỔNG QUAN VỀ ĐỀ TÀI

1.1Tổng quan về tay kẹp robot

Tay kẹp là một thiết bị cơ khí được sử dụng để nắm giữ, cầm nắm, hoặc di chuyển các vật thể. Tay kẹp có thể hoạt động tự động hoặc bán tự động và thường được tích hợp vào các hệ thống robot hoặc máy móc trong quá trình sản xuất, lắp ráp, hoặc xử lý vật liệu. Tay kẹp được ứng dụng rộng rãi trong nhiều ngành công nghiệp khác nhau, nhờ khả năng nắm giữ và di chuyển các vật thể với độ chính xác cao và hiệu suất vượt trội. Các ứng dụng của tay kẹp cụ thể và bao gồm:

- Tay kẹp được sử dụng để gắp và lắp ráp các bộ phận trong quá trình sản xuất ô tô, thiết bị điện tử, và các sản phẩm công nghiệp khác.

- Tay kẹp có thể nắm giữ và di chuyển các linh kiện nhỏ như ốc vít, bu lông, và các thành phần điện tử để lắp ráp vào các sản phẩm hoàn chỉnh.

- Tay kẹp được sử dụng để gắp và đặt các sản phẩm vào hộp, túi, hoặc thùng carton trong ngành thực phẩm, dược phẩm và hàng tiêu dùng.

1.2 Phân loại tay kẹp

Tay kẹp công nghiệp có nhiều loại khác nhau, được phân loại dựa trên cơ chế hoạt động và cách thức nắm giữ vật thể. Từ đó ta có thể chia tay kẹp thành các loại chính như sau.

1.2.1 Tay kẹp hút chân không

Tay kẹp hút chân không là một thiết bị quan trọng trong hệ thống tự động hóa công nghiệp, được sử dụng để nắm giữ, di chuyển và xử lý các vật thể bằng cách sử dụng lực hút chân không. Đây là một trong những loại tay kẹp phổ biến nhờ vào khả năng nắm giữ nhẹ nhàng và hiệu quả các vật thể phẳng, mỏng và dễ vỡ.

* Ưu điểm: Ưu điểm của tay kẹp bao gồm khả năng nắm giữ vật thể mỏng và phẳng mà không gây hại cho vật thể, linh hoạt trong việc nắm giữ vật thể có hình dạng phức tạp và có thể dễ dàng tích hợp vào các hệ thống robot và tự động hóa hiện có, giúp cải thiện hiệu quả sản xuất.

* Nhược điểm: Nhược điểm là giới hạn về vật liệu, yêu cầu hệ thống chân không, hạn chế về lực kẹp, nhạy cảm với điều kiện môi trường và chi phi vận hành cao.

1.2.3 Tay kẹp thủy lực

Tay kẹp thủy lực là một loại tay kẹp robot sử dụng hệ thống thủy lực để tạo ra lực kẹp mạnh mẽ và chính xác. Thay vì sử dụng động cơ điện hoặc khí nén, tay kẹp thủy lực vận hành dựa trên nguyên lý chất lỏng không nén được để truyền lực. Mặc dù tay kẹp thủy lực nổi bật với khả năng kẹp vượt trội, nhưng điều này đi kèm với một số hạn chế. Chúng đòi hỏi việc xử lý dầu, hệ thống bơm và bể chứa phức tạp hơn, dẫn đến chi phí bảo trì cao hơn so với các loại tay kẹp khác. Hơn nữa, tay kẹp thủy lực không phù hợp để sử dụng trong môi trường sạch sẽ hoặc trong các ứng dụng y tế do yêu cầu về sự sạch sẽ và ít bụi bẩn.

1.2.4 Tay kẹp servo điện

Tay kẹp servo điện là một thiết bị tiên tiến được sử dụng rộng rãi trong các ứng dụng công nghiệp để gắp và giữ các vật phẩm. Thiết bị này sử dụng động cơ servo để điều khiển lực kẹp và vị trí, cho phép thực hiện các thao tác chính xác và linh hoạt hơn so với các loại tay kẹp truyền thống.

CHƯƠNG 2. THIẾT KẾ CƠ KHÍ TAY KẸP

Tay kẹp là thiết bị được sử dụng trong môi trường sản xuất, do đó các thông số kỹ thuật của nó thường được sử dụng để tiếp thị sản phẩm. Ban đầu, em chỉ quan tâm đến việc thiết bị hoạt động ổn định trong môi trường sản xuất. Tuy nhiên, sau đó em nhận thấy rằng thiết kế của sản phẩm cũng rất quan trọng. Khi quan sát các nhà máy hiện nay, em nhận thấy sự cần thiết của việc có một sản phẩm không chỉ đáp ứng yêu cầu về hiệu suất mà còn phải có thiết kế đẹp và thẩm mỹ.

2.1 Mô hình cơ khí

Tay kẹp là một loại tay kẹp servo điện, có thiết kế kẹp song song. Em đã quyết định chọn tay kẹp này vì nó đã có sẵn trên thị trường, giá thành rẻ và khung chắc chắn. Tay kẹp có độ cứng vững tốt, ổn định dễ dàng thao tác gắp vật mà không bị trượt trong quá trình thao tác.

2.2 Kích thước của các chi tiết

Các khâu truyền động cho ngón tay kẹp có dạng cơ cấu 4 khâu bản lề và những khâu đối diện có kích thước bằng nhau tạo thành hình bình hành (như hình 2.2). Dễ thấy góc nghiêng của khâu chứa má kẹp không đổi trong quá trình chuyển động (bằng 50𝑜) nên tay gắp sẽ luôn gắp song song. Khoảng cách giữa 2 ngón tay kẹp là:

𝐷 = 2𝑑 = 2 ∗ 30 ∗ 𝑠𝑖𝑛 ϴ

2.3 Tính chọn động cơ

Giả sử vật m = 1kg, g = 9,81, hệ số ma sát là 0,5 Lực trọng trường tác động lên vật:

Fg=1 x 9.81 = ,81 (N)

Cân bằng các lực tác dụng theo phương x:

ΣFx = 0 ® -F1·cos(α+ β) - F2·cos(φ) + Fgripper = 0

=> Fgripper = F1·cos(α+ β)+ F2·cos(φ) (1)

Cân bằng các lực theo phương y:

ΣFy = 0 ®F1·sin(α+ β) - F2sin(φ) = 0

Thay vào phương trình (1):

=> M=  (Fkẹp.R)/(cos⁡(φ-40).(cos⁡(50)+sin⁡(50).cot⁡(φ)))(5<φ<85)

Thay F(kẹp) =19,62(N), R=0,03(m)

=> 1,4

CHƯƠNG 3. THIẾT KẾ MẠCH ĐIỀU KHIỂN TAY KẸP

3.1 Cảm biến lực FSR402

Cảm biến áp lực dạng Film FSR402 được sử dụng trong các ứng dụng điều khiển, Robot như: nút nhấn cảm ứng, đo lực tay kẹp Robot, đo áp lực nhấn tại 1 điểm,...thông qua dự thay đổi trở kháng trên hai tiếp xúc của cảm biến, cảm biến có cách sử dụng dễ dàng, độ bền và độ ổn định cao.

* Thông số kỹ thuật:

- Điện tích cảm ứng: đường kính tròn 13mm.

- Tín hiệu trả về: Điện trở biến thiên theo áp lực nhấn.

- Cảm ứng được lực từ 0.1N đến 10N (10g đến 1kg)

- Dạng Film siêu mỏng dày 0.45 mm

- Độ bền 10 triệu lần nhấn.

3.2 Arduino UNO R3

Arduino UNO R3 là một vi điều khiển thuộc dòng Arduino phổ biến nhất, được sử dụng rộng rãi trong các ứng dụng điều khiển nhúng, tự động hóa và các dự án học tập về IoT. Board sử dụng vi điều khiển ATmega328P với thiết kế nhỏ gọn, dễ lập trình thông qua cổng USB và có khả năng tương thích với nhiều module, cảm biến và linh kiện điện tử.

* Thông số kỹ thuật:

- Vi điều khiển: ATmega328P - Điện áp hoạt động: 5V

- Điện áp đầu vào khuyến nghị: 7–12V

- Số chân Digital I/O: 14 (trong đó có 6 chân PWM) - Số chân Analog input: 6

- Dòng điện tối đa trên mỗi chân I/O: 40 mA

- Bộ nhớ Flash: 32 KB (trong đó 0.5 KB dùng cho bootloader) SRAM: 2 KB

- EEPROM: 1 KB

* Nguồn:

- Chân Vin: cấp điện ngoài (7–12V)

- Chân 5V và 3.3V: cấp điện cho module khác

- Chân GND: nối đất

* Giao tiếp:

- I2C: A4 (SDA), A5 (SCL)

- SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK)

- UART: 0 (RX), 1 (TX)

3.4 Chiết áp 20K

Chiết áp (potentiometer) là một linh kiện điện tử thụ động có khả năng thay đổi giá trị điện trở theo cách cơ học. Chiết áp 20kΩ là loại chiết áp có điện trở tổng là 20 kilo-ohm, thường được sử dụng để điều chỉnh điện áp, dòng điện hoặc tín hiệu analog trong mạch điện.

Chiết áp hoạt động như một biến trở ba chân, trong đó:

Hai chân ngoài cùng nối với hai đầu của dải điện trở (toàn bộ 20kΩ),

Chân giữa (gọi là cần gạt hoặc con trượt) có thể trượt trên dải điện trở để lấy mức điện áp thay đổi, từ 0V đến mức điện áp tối đa.

* Thông số kỹ thuật cơ bản:

- Giá trị điện trở: 20kΩ (kilo-ohm)

- Số chân: 3 chân

- Loại: Rotary potentiometer (xoay) hoặc Slide potentiometer (trượt)

- Điện áp hoạt động khuyến nghị: 0 - 5V hoặc 0 -3.3V (tùy theo mạch sử dụng)

- Công suất chịu tải: thường từ 0.1W đến 0.25W Vật liệu: carbon film hoặc cermet.

3.6 Sơ dồ mạch điện

Sơ đồ đấu nối mạch điện như hình 3.6.

CHƯƠNG 4. THIẾT KẾ GIAO DIỆN CHO TAY KẸP ROBOT

QT Designer là một công cụ thiết kế giao diện đồ họa được sử dụng rộng rãi trong phát triển phần mềm, đặc biệt trong các dự án sử dụng C++ và Python. Điểm mạnh của QT Designer nằm ở khả năng cho phép người dùng xây dựng giao diện thông qua thao tác kéo và thả, thay vì phải viết mã thủ công. Các thành phần như nút nhấn, nhãn, hộp thoại và nhiều yếu tố giao diện khác có thể được sắp xếp dễ dàng trong môi trường trực quan này. Được phát triển bởi QT Company, công cụ này giúp tiết kiệm thời gian và đơn giản hóa quá trình tạo giao diện cho cả người mới và lập trình viên chuyên nghiệp.

4.1 Thiết lập và tạo bố cục cho phần mềm điều khiển

4.1.1 Thiết lập và tạo bố cục cho phần mềm điều khiển bằng QT Designer

Để tạo được môi trường giao diện, trước tiên cần cài đặt QT Designer. Mở phần và chọn MainWindow để khởi tạo gia

Dưới đây là hình ảnh khi tạo được môi trường thiết lập giao diện

Để lấy các chức năng như nút nhấn, thanh trượt, đồ thị, textbox, label,… cần nhấn vào thẻ Widget Box nằm góc trên bên trái màn hình.

Dưới đây là hình ảnh của giao diện sao khi tạo xong bố cục.

4.1.2 Thiết lập các thông số cho phần mềm điều khiển bằng Python

Sau khi đã thiết kế giao diện người dùng bằng Qt Designer, bạn có thể xuất thiết kế của mình thành file Python và sử dụng Python để thiết lập các thông số cần thiết cho đồ thị, nút nhấn, và các thành phần giao diện khác. Dưới đây là quy trình chi tiết để thực hiện điều này.

Sau khi hoàn thành thiết kế giao diện, lưu file giao diện dưới dạng file .ui. File .ui chứa mã XML mô tả cấu trúc và thuộc tính của các widget trong giao diện của bạn. Đây là bước quan trọng để lưu giữ tất cả các thành phần và bố cục của giao diện.

Dưới đây là hình ảnh của giao diện sao khi cài đặt các thông số.

4.2 Lập trình,chức năng

Giao diện điều khiển tay kẹp bao gồm các chức năng sau:

- Connect giúp kết nối giao diện điều khiển với tay kẹp, và sau khi kết nối thành công, nút này sẽ chuyển thành Disconnect để ngắt kết nối với thiết bị.

- Setting dùng để cài đặt các thông số ban đầu để kết nối với tay kẹp.

- Chức năng Gắp cho phép tay kẹp thực hiện việc gắp vật khi được nhấn, trong khi Mở sẽ khiến tay kẹp nhả vật.

- Pause được sử dụng để tạm dừng hoạt động của tay kẹp.

- Cuối cùng, Remove cho phép xóa bỏ dữ liệu điều khiển đã được thêm vào.

4.3 Cách sử dụng phần mềm điều khiển

4.3.1 Tạo kết nối giữa phần mềm và tay kẹp

Khi mở phần mềm, chúng ta chọn nút Setting, một màn hình thiết lập các thông số kết nối sẽ tự động hiển thị.

Dưới đây là màn hình điều khiển khi kết nối thành công.

4.3.2 Chế độ điều khiển

a. Điều khiển ứng dụng

Để điều khiển tay kẹp, bạn cần thực hiện tuần tự các bước sau: Trước tiên, nhấn vào mục Options để lựa chọn tập dữ liệu điều khiển đã được lưu trước đó. Sau đó, nhấn nút Send để truyền dữ liệu đến tay kẹp. Khi dữ liệu đã được gửi, bạn bấm nút Gắp để tay kẹp bắt đầu thao tác theo nội dung dữ liệu. Sau khi quá trình kẹp hoàn tất, nút Gắp sẽ tự động chuyển thành Mở. Lúc này, nếu muốn nhả vật thể đã kẹp, bạn chọn nút Mở; khi vật được thả ra, nút này sẽ quay trở lại trạng thái Gắp, sẵn sàng cho lần kẹp tiếp theo.

c. Một số chức năng khác

- Nút Remove có chức năng xóa các dữ liệu mà người dùng đã tự thêm vào.

- Nút Pause đưa tay kẹp về trạng thái tạm dừng. Lúc này, mọi hoạt động của tay kẹp sẽ tạm ngừng cho đến khi người dùng chọn lại nút này .

- Nút Reset giúp làm mới các đồ thị phản hồi lực và đồ thịvị trí của tay kẹp.

4.5 Kết luận

Qua phần trình bày trên, em đã tìm hiểu thêm được phương pháp truyền thông dữ liệu trong công nghiệp, đặc biệt là về Serial. Giao thức này cho phép truyền dữ liệu có độ ổn định cao, phù hợp cho các ứng dụng yêu cầu độ tin cậy trong môi trường công nghiệp… Chúng em cũng đã có thể tự tạo giao diện điều khiển đơn giản bằng Python để đáp ứng yêu cầu của đề tài.

CHƯƠNG 5. THIẾT KẾ BỘ ĐIỀU KHIỂN

5.1 Truyền thông tay kẹp

5.1.1 Các kiểu truyền và nhận dữ liệu

a. Giao tiếp nội bộ ADC

ADC (Analog-to-Digital Converter) là một khối ngoại vi trong vi điều khiển (hoặc IC chuyên dụng), có chức năng chuyển đổi tín hiệu tương tự (analog) thành tín hiệu số (digital) để xử lý trong hệ thống nhúng hoặc máy tính

ADC sẽ đo điện áp đầu vào (Vin) và chuyển nó thành một số nguyên trong khoảng từ 0 đến 2n - 1, với n là độ phân giải của ADC.

Công thức chuyển đổi:

ADCvalue=Vin/Vref .(2n-1)

Với: ESP32, giá trị của Vin là 3.3V và giá trị độ phân giải của ADC là 12 bit, do đó n =12

Về cơ bản, điều này có nghĩa là ESP32 không thể phân biệt 3,2V với 3,3V; giá trị đo được sẽ giống nhau (4095). Tương tự như vậy, nó không thể phân biệt giữa tín hiệu 0V và 0,13V; giá trị đo được sẽ giống nhau (0). Vậy bộ chuyển đổi ADC trên ESP32 về bản chất là phi tuyến tính.

b. Phương pháp điều chỉnh điện áp tải

PWM viết tắt của Pulse Width Modulation, có nghĩa là phương pháp điều chỉnh điện áp tải, hay hiểu đơn giản hơn đây là phương pháp điều chỉnh, thay đổi điện áp tải ra bằng việc thay đổi độ rộng của chuỗi xung vuông, từ đó có sự thay đổi điện áp.

Bộ định thời (timer) trong vi điều khiển hoạt động như một bộ đếm số học, thực hiện việc đếm tuần tự từ giá trị khởi đầu (thường là 0) đến một giá trị đỉnh (maximum count value) được cấu hình trước. Khi đạt đến giá trị này, bộ đếm sẽ tự động tràn (overflow) và khởi động lại chu kỳ đếm mới từ giá trị ban đầu. Khoảng thời gian giữa hai lần tràn liên tiếp được xác định là chu kỳ PWM, trong khi tần số PWM là nghịch đảo của chu kỳ này và được biểu thị bằng đơn vị Hertz (Hz). 

5.1.2 Truyền nhận dữ liệu

Để tay kẹp có thể thực hiện chính xác chức năng gắp vật, hệ thống cần điều khiển vị trí servo dựa trên giá trị đặt trước, tương ứng với khoảng cách mở kẹp phù hợp với từng loại vật thể. Các giá trị đặt trước này (gọi là D) được cấu hình sẵn theo từng chức năng cụ thể như gắp trứng, gắp thanh trụ... Khi người dùng lựa chọn một chức năng từ giao diện điều khiển, hệ thống sẽ tự động truyền giá trị tương ứng đến vi điều khiển chính (ESP32) để phát xung PWM điều khiển servo đạt đến vị trí mong muốn.

Toàn bộ dữ liệu giao tiếp giữa các thành phần trong hệ thống được truyền nội bộ thông qua các hàm xử lý trên ESP32, không sử dụng giao thức truyền thông chuẩn như Modbus RTU mà thay vào đó khai thác trực tiếp các tài nguyên phần cứng như PWM timer và ADC nội. Việc này giúp giảm độ trễ, tăng tốc độ phản hồi và tối ưu hiệu năng điều khiển servo trong các ứng dụng thời gian thực. Dữ liệu được xử lý dưới dạng số nguyên (digital value) và ánh xạ tuyến tính sang đơn vị vật lý như góc quay hoặc lực kẹp, đảm bảo quá trình điều khiển diễn ra chính xác và ổn định.

5.2 Lập trình điều khiển cho tay kẹp có phản hồi lực

5.2.1 Phương án điều khiển và sơ đồ khối của bộ kẹp

Lực tác dụng lên vật tại má kẹp tỉ lệ thuận với moment tại khâu chủ động của cánh tay gắp, tức là moment của động cơ.Vì mômen của động cơ tỷ lệ thuận với lực tác động lên điểm gắp ở do đó để tăng (hoặc giảm) lực tác dụng lên vật, ta chỉ cần tăng (hoặc giảm) góc mong muốn đến của động cơ.

Sơ đồ khối điều khiển như hình 5.6.

Phương pháp điều khiển được đề xuất là:

Sau khi nhận tín hiệu từ bộ điều khiển thông qua giao tiếp Serial: tay kẹp sẽ nhận giá trị điện từ cảm biến lực được gắn ở điểm tiếp xúc khi gắp vật rồi điều khiển góc mong muốn dựa trên lực tác động mong muốn đầu ra sao cho lực đó được cài đặt vừa đủ để gắp được các vật. Từ đó điều khiển góc tác động của servo và điều khiển được lực kẹp theo ý muốn thông qua công thức tương đối:

F = (10000/RFSR )1.11

5.2.2 Chương trình điều khiển cho Arduino

Dưới đây là danh sách các địa chỉ các chân I/O và chức năng tương ứng của chúng. Các thanh ghi này lưu trữ các giá trị điều khiển mà thiết bị Master gửi đến các thiết bị Slave để điều khiển hoạt động của chúng.

Chức năng Chi tiết:

- 14, 17 - Giá trị của cảm biến lực: Đọc giá trị đầu vào từ hai cảm biến lực độc lập, chuyển từ giá trị điện áp sang giá trị lực bởi công thức tương đối.

- 36 - Chân điều chế PWM cho servo: Gửi giá trị góc mong muốn đến servo để điều khiển tay kẹp gắp mở.

- 4 - Giá trị chiết áp: Đọc giá trị chiết áp được gắn đồng trục với servo, sau đó tham chiếu giá trị chiết áp để đọc được vị trí hiện tại của servo.

5.2.3 Giảm nhiễu khi đọc cảm biến bằng bộ lọc Kalman

Bộ lọc Kalman là một thuật toán tối ưu cho phép ước lượng trạng thái của một hệ thống động với độ chính xác cao, ngay cả khi các đo lường bị nhiễu. Được Rudolf E. Kalman phát triển vào những năm 1960, bộ lọc Kalman hoạt động dựa trên hai giai đoạn chính: dự đoán và cập nhật. Trong giai đoạn dự đoán, trạng thái mới được ước lượng dựa trên mô hình động học của hệ thống, cùng với ma trận hiệp phương sai của lỗi dự đoán.

CHƯƠNG 6. KẾT QUẢ VÀ THẢO LUẬN

6.1 Kết quả đạt được

Sau khi hoàn thành đồ án, em thực hiện gần như đã đạt được hết những mục tiêu ban đầu đặt ra cho dự án thiết kế tay kẹp servo phản hồi lực. Đó là:

- Tay kẹp có thể kẹp được nhiều loại phôi kẹp khác nhau

- Giao diện điều khiển thông minh, có nhiều tính năng hướng đến sự tiện lợi của người dùng. Có đồ thị thể hiện được thông số hiện tại của tay kẹp.

Dưới đây là một số kết quả mà em đạt được như các hình dưới.

6.2 Hướng phát triển trong tương lai của đề tài và những mặt còn hạn chế

Mặc dù tay kẹp đang thể hiện khá tốt trong việc gắp nhả vật nhưng vẫn còn khá nhiều hạn chế và để có thể ứng dụng được vào thực tế thì vẫn còn cần cải thiện thêm một vài điều nữa. Cụ thể như sau:

- Tích hợp tay kẹp vào UR robot để thực hiện các nhiệm vụ gắp thả phức tạp.

- Sản phẩm mẫu vẫn còn hạn chế về chế tạo, mạch điện cần được thiết kế nhỏ gọn, tối ưu hơn, vỏ được gia công bằng vật liệu kim loại để đảm bảo độ vững của vỏ, độ chính xác của khớp quay.

- Công việc trong tương lai là khắc phục những hạn chế đã nêu ở trên, sử dụng vật liệu nhôm để gia công vỏ và có thể tích hợp thêm camera và cảm biến xúc giác ở má kẹp để phát hiện đặc điểm vật lý của vật (hình dạng, độ nhám,...) và lực tiếp xúc phân bố, cho phép robot có thể gắp vật một cách chính xác và khéo léo.

PHỤ LỤC

Code Arduino

TÀI LIỆU THAM KHẢO

1. Gareth J. Monkman, Stefan Hesse, Ralf Steinmann, Henrik Schunk, “Robot Grippers”, 2007.

2. Hanwha Robot document, “Robotiq 2F-85 & 2F-140 Instruction Manual”, 2010

3. Jack Johnson, “MODBUS TCP/RTU (C#)”, 2018.

4. Alfian Ma’arif, Iswanto, Aninditya Anggari Nuryono, Rio Ikhsan Alfiand, “Kalman Filter for Noise Reducer on Sensor Readings”, 2019.

"TẢI VỀ ĐỂ XEM ĐẦY ĐỦ ĐỒ ÁN"