Tải bản đầy đủ (.docx) (13 trang)

ỨNG DỤNG GIAO TIẾP ROBOT YK400X và ỨNG DỤNG PHÂN LOẠI sản PHẨM BẰNG CAMERA

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (408.63 KB, 13 trang )

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CƠ KHÍ
BỘ MÔN CƠ ĐIỆN TỬ
o0o
LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC
ỨNG DỤNG GIAO TIẾP ROBOT YK400X
VÀ ỨNG DỤNG PHÂN LOẠI SẢN PHẨM DÙNG
CAMERA
1
Tp HCM, 6/2014LỜI CẢM ƠN
Trước tiên, tôi xin cảm ơn thầy Nguyễn Tường Long, giáo viên trực tiếp hướng dẫn. Xin được
cảm ơn thầy Chung Tấn Lâm, giáo viên đồng hướng dẫn. Các thầy đã cho tôi những định hướng,
tạo mọi điều kiện về vật chất lẫn tinh thần, đã giúp tôi hoàn thành trọn vẹn và đúng thời hạn đề
tài của mình.
Xin cảm ơn thầy Từ Diệp Công Thành, giáo viên chủ nhiệm của lớp. Thầy là người trực tiếp giúp
đỡ, cung cấp thông tin và nhắc nhở kịp thời cho lớp chúng tôi với mọi hoạt động liên quan đến
việc học tập và làm luận văn trong suốt ba năm thầy chủ nhiệm lớp.
Xin được chân thành cảm ơn các thầy cô trong hội đồng chấm luận văn tốt nghiệp. Cám ơn các
thầy, các cô đã bớt thời gian quý báu để xem xét đề tài của tôi.
Xin được gửi lời tri ân các thầy, các cô đã dìu dắt tôi trong suốt các năm học vừa qua.
Cuối cùng, tôi dành lời cảm ơn sâu sắc cho ba, mẹ và những người thân. Mọi người là chỗ dựa
tinh thần, là nguồn động viên để tôi vượt qua những khó khăn, thử thách trong học tập và cuộc
sống.
Một lần nữa, xin chân thành cảm ơn tất cả mọi người!
Tp Hồ Chí Minh, 06/2014
Nguyễn Bá Hoàng Long
2
TÓM TẮT LUẬN VĂN
ỨNG DỤNG GIAO TIẾP ROBOT YK400X VÀ ỨNG DỤNG PHÂN LOẠI
SẢN PHẨM BẰNG CAMERA


Ứng dụng Camera cho việc định vị và nhận dạng là một đề tài được đặt ra từ cuối thế kỷ
20. Trải qua một giai đoạn phát triển, đến thời điểm này kỹ thuật nhận dạng và định vị bằng
Camera đã tương đối hoàn chỉnh. Với sự phát triển của công nghệ cảm biến Camera, độ chính
xác định vị ngày càng cao. Đồng thời, sự ra đời của các thư viện xử lý ảnh giúp người lập trình
nhanh chóng viết ứng dụng mà không cần phải mất thời gian tìm hiểu quá sâu về lý thuyết xử lý
ảnh. Trên tinh thần đó, tôi chọn thư viện xử lý ảnh Stockcar của Lecky Integaration. Thư viện
này chứa các hàm cần thiết cho việc xử lý ảnh và định vị vật trong không gian 2D.
Nhiệm vụ chính của luận văn là xây dựng một phần mềm (viết bằng Visual C#). Phần mềm này
gồm 2 chức năng chính:
− Giao tiếp với bộ điều khiển RCX142 và ứng dụng điều khiển Robot YK400x bằng máy tính.
− Phân tích ảnh chụp từ Camera sau đó định vị và nhận dạng vật.
Sau khi hoàn thành hai nhiệm vụ chính trên, tôi viết một ứng dụng nhỏ để định vị và phân loại
sản phẩm theo màu, Robot sẽ thao tác gắp vật và thả đúng vào giỏ chứa sản phẩm theo màu
tương ứng.
3
MỤC LỤC
Đề mục … Trang
Trang bìa i
Nhiệm vụ luận văn
Lời cam kết
Lời cảm ơn ii
Tóm tắt luận văn iii
Mục lục iv
Danh sách hình ảnh vii
Danh sách bảng biểu ix
4
DANH MỤC CÁC HÌNH
Hình 1.1: Robot Spirit và Opportunity thám hiểm sao hỏa 2
Hình 1.2: ROV Lastic hoạt động dưới đáy biển 2
Hình 1.3: Camera thông minh hỗ trợ Robot sơn xe quân đội các loại 3

Hình 1.4: Robot làm việc nhà 3
Hình 1.5: Robot làm vườn 4
Hình 1.6: Robot YK400x 5
Hình 1.7: Logitech Quickcam Pro 4000 5
Hình 2.1: Hình dáng động học của SCARA 7
Hình 2.2: Hệ tọa độ gốc của SCARA và các biến khớp 8
Hình 2.3 Các hệ tọa độ được gắn theo quy tắc Denavit-Hatenberg 8
Hình 2.4: Tính động học ngược cho Scara 11
Hình 2.5: Hình chiếu đứng YK400x 12
Hình 2.6: Hình chiếu cạnh YK400x 12
Hình 2.7: Không gian làm việc YK400x 14
Hình 2.8: Bộ điều khiển RCX 142 15
Hình 2.9: Manual Program Board 16
Hình 2.10: Bắt tay phần cứng 18
Hình 2.11: Bắt tay phần mềm 19
Hình 3.1: Nguyên tắc tạo ảnh với cảm biến CCD 22
Hình 3.2: Lưới lọc Bayer 23
Hình 3.3: Cảm biến 3CCD 23
Hình 3.4: Nguyên tắc tạo ảnh với cảm biến CMOS 24
5
Hình 3.5: Chuyển từ ảnh màu sang ảnh xám 26
Hình 3.6: Phân ngưỡng cho ảnh xám 27
Hình 3.7: Ảnh phân ngưỡng cho thuật toán tìm Blob 27
Hình 4.1: Giao diện chính của chương trình điều khiển 29
Hình 4.2: Cài đặt các thông số giao tiếp 29
Hình 4.3: Chức năng MANUAL 30
Hình 4.4: Hộp Incoming với dữ liệu điểm 31
Hình 4.5: Chế độ PROGRAM 32
Hình 4.6: Hộp Incoming với dữ liệu các chương trình 32
Hình 4.7: Giao diện Camera 33

Hình 4.8: Bảng điều khiển chính 34
Hình 4.9: Giao diện Calibration 35
Hình 4.10: Hệ tọa độ mặt bàn 35
Hình 4.11: Giao diện xử lý ảnh 36
Hình 4.12: Giao diện lựa chọn hệ số tỷ lệ màu 37
Hình 5.1: Bảng điều khiển cho ứng dụng 38
Hình 5.2: Lưu đồ chương trình điều khiển Robot 39
Hình 5.3: Lưu đồ điều khiển xử lý ảnh và tìm tọa độ vật 41
Hình 5.4: Lưới điểm giúp đánh giá sai số 43
Hình 5.5: Kết quả tọa độ của lưới điểm 43
Hình 5.6: Phân bố sai số theo quy tắc Tchebychev 45
Hình 5.7: Phân bố sai số theo 2 phương X và Y 46
Hình 5.8: Phân bố sai số tổng hợp 46
6
DANH MỤC CÁC BẢNG
Bảng 2.1: Các tham số cho Robot Scara 9
Bảng 2.2:Bảng các thông số cho Robot Scara YK400x 13
Bảng 2.3: Sơ đồ chân D-SUB 9 17
Bảng 5.1: Hướng tập trung của sai số 44
Bảng 5.2: Hướng phân tán của sai số 44
Bảng 5.3: Các tỷ lệ % ứng với m 45
Bảng A.1: Kiểu tên gọi các hàm xử lý ảnh 51
Bảng A.2: Các định dạng dữ liệu điểm ảnh 52
Bảng A.3: Kiểu hằng ROI 52
Bảng A.4: Hằng số toán học 52
Bảng A.5: Các màu vẽ chồng 53
Bảng A.6: Kiểu hằng chuyển tọa độ 53
Bảng A.6: Các mã lỗi thông dụng 54
Chương 1: TỔNG QUAN
1.1 Đặt vấn đề

Trong những năm gần đây, sự phát triển mạnh của các bộ vi xử lý cao cấp đã tạo một bước
tiến vô cùng to lớn cho Robot. Giấc mơ chế tạo được một Robot giống người, có thể làm thay các
công việc cho con người đã thành hiện thực. Các loại Robot này đang ngày càng được hoàn thiện,
phục vụ con người trong nhiều lĩnh vực khác nhau. Từ thế hệ các Robot đơn giản chỉ hoạt động
một cách thụ động theo các chương trình cài đặt sẵn, đến thời điểm này, các Robot đã có thể hoạt
động một cách phức tạp hơn, có khả năng tự xử lý và phân tích các tình huống như con người.
7
Cùng với sự phát triển của các loại cảm biến với độ chính xác cao, các bộ vi xử lý có thể thực
hiện hàng tỉ phép tính trong một giây, Robot đang dần dần thay thế con người trong một số lĩnh
vực đặc thù, cho hiệu quả và năng suất cao hơn.
Ta có thể coi các bộ vi xử lý này là bộ não của Robot, bộ não này càng ngày càng được tối
ưu hóa về kích thước cũng như tốc độ để điều khiển Robot một cách hiệu quả nhất. Vai trò của
cảm biến đối với Robot được xem như là các cơ quan thị giác, xúc giác, vị giác của con người.
Ví dụ với camera, ta xem camera như là con mắt trợ giúp cho Robot xác định vị trí, nhận dạng
vật. Ngày nay, Camera là một cảm biến không thể thiếu đối với các thế hệ Robot hiện đại. Các
Robot này sử dụng Camera để định vị, nhận dạng và thu thập dữ liệu. Ứng dụng Camera cho
Robot được dùng trong nhiều lĩnh vực khác nhau:
1.1.1 Trong lĩnh vực thám hiểm
Robot giúp con người thám hiểm ở những nơi không trực tiếp làm được hoặc những nơi
nguy hiểm như: sao hỏa, miệng núi lửa, lò phản ứng hạt nhân… Năm 2007, người Mỹ đã đưa lên
sao Hỏa 2 xe tự hành mang tên Spirit va Opportunity. Các xe này không có tay lái, trung tâm điều
khiển thuộc Phòng thí nghiệm chuyển động phản lực của NASA ở thành phố Pasadena. Các
Robot dạng này dùng Camera để thu thập dữ liệu hình ảnh, lấy mẫu và phân tích các thông tin về
khí hậu, đất đai và địa chất của nơi thám hiểm, sau đó gửi các dữ liệu này về trung tâm.

Hình 1.1: Robot Spirit và Opportunity thám hiểm sao hỏa
Gần đây nhất, một thiết bị điều khiển từ xa – ROV Latis đã được một nhóm các nhà nghiên
cứu từ cộng hòa Ireland chế tạo nhằm giúp xác định ranh giới dưới đáy biển của các quốc gia.
Thông tin do thiết bị thu thập được sẽ được dùng để giải quyết một lần và vĩnh viễn các tranh
8

chấp về đường lục địa. Máy sử dụng hệ thống camera chất lượng cao và có độ nhạy màu trong
điều kiện ánh sáng rất yếu. Các hình ảnh thu thập được trên máy tính sẽ giúp xác định vị trí, địa
điểm, chiều di chuyển và cự ly của thiết bị đối với đáy biển và tàu mẹ cùng lúc.
Hình 1.2: ROV Lastic hoạt động dưới đáy biển
1.1.2 Trong công nghiệp
Trong công nghiệp quốc phòng, việc sơn màu ngụy trang cho các loại xe có ý nghĩa đặc
biệt quan trọng. Màu sơn cho xe quân sự cần thay đổi thích hợp cho từng chiến trường khác nhau.
Vì vậy mà quân đội Mỹ đang nghiên cứu, phát triển kỹ thuật sơn tự động, chỉ cần chọn màu sơn
Robot sẽ tự động sơn cho các loại xe khác nhau. Camera sử dụng dữ liệu ảnh để nhận biết, xác
định các thông tin vị trí của các loại xe khác nhau, các phụ kiện kèm trên xe…rồi chuyển sang
không gian 3D. Sau khi đã hiệu chỉnh về hệ tọa độ Robot, chiếc xe được sơn với mô hình vừa
được cung cấp, phụ thuộc vào các yếu tố: kích thước, hình dáng, đời xe, các phụ kiện gắn thêm
trên xe…
9
Hình 1.3: Camera thông minh hỗ trợ Robot sơn xe quân đội các loại
1.1.3 Trong đời sống hằng ngày
Đây là lĩnh vực đang rất phát triển tại Nhật. Robot giúp làm việc nhà, làm vườn, dạy học và
đồng thời cũng là phương tiện giải trí cho con người. Các Robot này đều được trang bị Camera
(nhiều hơn 2) để phân biệt các vật thể khác nhau:
Hình 1.4: Robot làm việc nhà
Đây là dự án mang tên Robot giúp việc AR của đại học Tokyo. Robot này có thể quan sát
và phân biệt các vật khác nhau bằng mắt 2 tròng, có thể định vị được vật ngay cả khi chúng nằm
dưới ghế hoặc bàn. Các loại Robot truyền thống thường gặp khó khăn trong việc xử lý những vật
không ở dạng rắn, nhưng AR có thể nhận ra quần áo bằng nếp nhăn của chúng.
10
Hình 1.5: Robot làm vườn
Đây là một dự án thuộc Viện Công nghệ Massachusetts – Mỹ, phía trên Robot được gắn
một cánh tay và máy tính nhúng. Cánh tay này vốn được trang bị một Camera và tay kẹp. Trong
cuộc thử nghiệm, Robot có thể tưới cho một cây cà chua, rồi tiến đến một cây cà chua khác và hái
quả bằng tay kẹp sau khi đã nhận diện qua webcam.

Như vậy, ta có thể thấy việc xử lý ảnh để định vị cho Robot là một việc không còn mới, vấn
đề là ứng dụng nó sao cho thật thích hợp, đảm bảo tính hiệu quả và độ chính xác.
1.2 Cơ sở lựa chọn đề tài
Với sự yêu thích trong lĩnh vực Robot, tôi đã quyết định tìm hiểu từ loại Robot công nghiệp
đơn giản nhất là SCARA. Để tăng cường thêm sự linh hoạt và tự động cho SCARA, tôi kết hợp
nó với một Camera để định vị vật trong mặt phẳng. Từ đó, tôi có thể ứng dụng vào các hệ thống
phân loại sản phẩm theo kích thước, theo màu sắc…Vì vậy, tôi chọn đề tài là: “Ứng dụng giao
tiếp Robot YK400x và ứng dụng phân loại sản phẩm dùng Camera ”
1.2.1 Phần cứng
Về phần cứng cho việc thực hiện đề tài, tôi sử dụng Robot SCARA YK400x của hãng
Yamaha (bộ điều khiển RCX142) và Camera Logitech Quickcam Pro 4000 để định vị và thao tác
với vật (có sẵn tại phòng thí nghiệm C6, bộ môn Cơ Điện Tử).
11
Hình 1.6: Robot YK400x
Hình 1.7: Logitech Quickcam Pro 4000
1.2.2 Lý thuyết
Nhiệm vụ chính của Camera là chụp ảnh đưa về máy tính. Máy tính sẽ phân tích ảnh đó để
nhận ra đâu là vật, từ đó sẽ cho ta biết tọa độ Pixel của vật trên frame ảnh. Tuy nhiên, ta chưa thể
định vị được vật do đây chỉ là tọa độ pixel. Ta cần chuyển đổi tọa độ điểm ảnh sang tọa độ thực
ngoài không gian. Lý thuyết để giải quyết vấn đề này là Camera Calibration.
12
Sau khi đã có tọa độ thực của vật ngoài không gian, ta đưa tọa độ này về tọa độ gốc của
Robot. Lúc này nhiệm vụ của Robot là thao tác với vật tại vị trí được cung cấp. Vấn đề điều
khiển này do bộ điều khiển RCX142 giải quyết.
1.2.3 Phần mềm
Xây dựng một phần mềm thực hiện nhiệm vụ giao tiếp giữa máy tính, Robot và Camera,
được viết bằng C# (Microsoft Visual Studio 2008). Với phần mềm này việc điều khiển Robot
YK400x trở nên dễ dàng hơn, hơn nữa, Robot được trang bị thêm một Camera ra sẽ mở rộng khả
năng làm việc cho Robot.
Tôi xác định rõ hai mục tiêu cần đạt được trong luận văn này là:

− Ứng dụng giao tiếp Robot SCARA YK400x
− Ứng dụng định vị và phân loại sản phẩm bằng Camera
Chương 2: ROBOT SCARA YK_400X VÀ BỘ ĐIỀU KHIỂN RCX142
1.3 Giới thiệu Robot SCARA
1.3.1 Khái quát Robot SCARA
RobotSCARA (Selectively Compliant Articulated Robot Arm) ra đời năm 1979, đây là một
kiểu tay máy có cấu tạo đặc biệt, được sử dụng nhiều trong công việc lắp ráp các tải trọng nhỏ.
13

×