Về thực tiễn: - Tích hợp điều khiển mờ vào điều khiển mở ra triển vọng mới trong việc khai thác, áp dụng cho các hệ thống điều khiển trong công nghiệp để thay đổi công nghệ sản xuất bằn
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA
HUỲNH BÁ TẤN
ỨNG DỤNG BỘ ĐIỀU KHIỂN MỜ KẾT HỢP
XỬ LÝ ẢNH CHO HỆ TAY MÁY 3 BẬC TỰ DO
LUẬN VĂN THẠC SĨ KỸ THUẬT ĐIỀU KHIỂN VÀ TỰ ĐỘNG HÓA
Đà Nẵng, Năm 2020
Trang 2TRƯỜNG ĐẠI HỌC BÁCH KHOA
HUỲNH BÁ TẤN
ỨNG DỤNG BỘ ĐIỀU KHIỂN MỜ KẾT HỢP
XỬ LÝ ẢNH CHO HỆ TAY MÁY 3 BẬC TỰ DO
Chuyên ngành: Kỹ thuật điện
Mã số: 852.02.16
LUẬN VĂN THẠC SĨ KỸ THUẬT ĐIỀU KHIỂN VÀ TỰ ĐỘNG HÓA
Người hướng dẫn khoa học: TS.TRƯƠNG THỊ BÍCH THANH
Đà Nẵng, Năm 2020
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan rằng đây là công trình nghiên cứu của riêng tôi Các kết quả được viết được viết chung với các tác giả khác đều có sự đồng ý của họ trước khi đưa vào luận văn Các kết quả trong luận văn là trung thực và chưa từng công bố trong bất
kỳ công trình nào khác
Tác giả luận văn
Huỳnh Bá Tấn
Trang 4LỜI CẢM ƠN
Lời đầu tiên tác giả xin cảm ơn sâu sắc đến cán bộ hướng dẫn khoa học :
TS Trương Thị Bích Thanh đã hướng dẫn tác giả hoàn thành luận văn này
Tác giả cảm ơn các bạn đồng môn, phòng đào tạo, các phòng ban liên quan thuộc trường Đại học Bách khoa Đà Nẵng đã hỗ trợ và đóng góp ý kiến để tác giả hoàn thành luận văn của mình
Tác giả cảm ơn ban lãnh đạo nhà trường, ban lãnh đạo các khoa, các bạn đồng nghiệp nơi công tác, động viên, giúp đỡ trong quá trình làm nghiên cứu
Tác giả luận văn
Huỳnh Bá Tấn
Trang 5TRANG TÓM TẮT TIẾNG VIỆT VÀ TIẾNG ANH ỨNG DỤNG BỘ ĐIỀU KHIỂN MỜ KẾT HỢP XỬ LÝ ẢNH CHO HỆ TAY
MÁY 3 BẬC TỰ DO
Học viên: Huỳnh Bá Tấn Chuyên ngành: Kỹ thuật điều khiển và tự động hóa
Mã số: 852.02.16 Khóa: 36 Trường Đại học Bách khoa - ĐHĐN
Tóm tắt – Trong luận văn này, mô hình hóa, mô phỏng và điều khiển 3 bậc tự do đã
từng được nghiên cứu và ứng dụng Luận văn đã xây dựng phương trình động học và động lực học của robot bằng cách sử dụng phương pháp Lagrange Để xác nhận mô hình phân tích, luận văn so sánh mô hình phân tích trong Matlab với mô hình được mô phỏng với hộp công cụ SimMechanics Luận văn cũng xây dựng chương trình xử lý ảnh và tạo
ra quỹ đạo đặt làm tín hiệu vào cho tay máy 3 bậc tự do Bộ điều khiển PID được áp dụng để điều khiển robot, tác giả đã thiết kế bộ điều khiển mờ chỉnh định tham số cho
bộ điều khiển PID Tác giả đã tóm tắt kết quả đạt được và đưa ra hướng phát triển tiếp theo
Từ khóa – Động lực học, mô hình phân tích, công cụ SimMechanic, xử lý ảnh, điều
khiển mờ chỉnh định tham số
FUZZY CONTROL APPLICATION WITH IMAGE PROCESSING OF 3 DEGREE OF FREEDOM ARTICULATED MANIPULATOR
Abstract – In the dissertation, the modeling, simulation and control of 3 degree of
freedom articulated robotic manipulator have been studied and applied The dissertation extraced kinematics and dynamics equations of the mentioned manipulaor by using the Lagrange method In order to validate the analytical model of the manipulator the dissertation compared the model simulated in the simulation environment of Matlab with the model was simulated with the SimMechanics toolbox The thesis developed an image processing program and created the trajectory as an input signal for 3 degrees of freedom articulated robotic manipulator PID controller is applied to control the robot, the autor designed the fuzzy controller to set the parameters for PID controller The achieved results are summarized and perspective of the work is provided
Key words – dynamics, analytical model, SimMechanics toolbox, image processing,
fuzzy controller to set the parameters
Trang 6MỤC LỤC
LỜI CAM ĐOAN
LỜI CẢM ƠN
TRANG TÓM TẮT TIẾNG VIỆT VÀ TIẾNG ANH
MỤC LỤC
DANH MỤC HÌNH ẢNH
DANH MỤC CÁC KÝ HIỆU
DANH MỤC CÁC CHỮ VIẾT TẮT
MỞ ĐẦU 1
1 Lý do chọn đề tài: 1
2 Mục đích nghiên cứu: 1
3 Đối tượng và phạm vị nghiên cứu: 2
3.1 Đối tượng nghiên cứu: 2
- Mô phỏng tay máy 3 bậc tự do bằng Matlab Simulink và Solidworks 2
3.2 Phạm vi nghiên cứu: 2
4 Phương pháp nghiên cứu: 2
5 Ý nghĩa khoa học và thực tiễn của đề tài: 2
6 Bố cục luận văn: 2
Chương 1 – CƠ SỞ LÝ THUYẾT 4
1.1 Tổng quan về Robot: 4
1.1.1 Lịch sử phát triển của robot 4
1.1.2 Ứng dụng robot trong sản xuất: 5
1.1.3 Các khái niệm và định nghĩa về robot công nghiệp 6
1.1.4 Phân loại robot công nghiệp 8
1.1.5 Cấu trúc cơ bản của robot công nghiệp 9
1.2 Tổng quan về điều khiển mờ: 10
1.2.1 Lịch sử phát triển: 10
1.2.2 Điều khiển mờ: 11
1.2.3 Hệ điều khiển mờ nâng cao: 15
1.3 Kết luận: 15
Chương 2 – XỬ LÝ ẢNH VÀ ỨNG DỤNG 17
Trang 72.1 Tổng quan về camera: 17
2.2 Xử lý ảnh: 18
2.2.1 Tổng quan về xử lý ảnh: 18
2.2.2 Các quá trình xử lý ảnh: 18
2.2.3 Ảnh và biểu diễn ảnh: 20
2.2.4 Các loại tệp cơ bản trong xử lý ảnh: 20
2.3 Ứng dụng Matlab trong xử lý ảnh: 21
2.3.1 Các kiểu ảnh, các thao tác ảnh cơ bản trong Toolbox: 21
2.3.2 Phân tích ảnh: 31
2.4 Kết luận: 35
Chương 3 – XÂY DỰNG MÔ HÌNH TOÁN HỌC 36
3.1 Các phương thức điều khiển cánh tay Robot: 36
3.2 Sơ đồ động học cánh tay Robot 3 bậc tự do: 36
3.2.1 Thông số tay máy: 36
3.2.2 Động học thuận của cánh tay Robot 3 DOF: 37
3.2.3 Động học nghịch của cánh tay Robot 3 DOF: 39
3.2.4 Thành lập phương trình động lực học của tay máy 3 DOF: 41
3.2.5 Mô tả toán học tay máy 3 DOF bằng phương trình vi phân: 43
3.3 Kết luận: 45
Chương 4 – THIẾT KẾ BỘ ĐIỀU KHIỂN PID MỜ 46
4.1 Đặt vấn đề: 46
4.2 Tổng hợp hệ điều khiển PID: 46
4.2.1 Các phương pháp thiết kế bộ PID: 47
4.2.2 Tổng hợp bộ điều khiển PID: 48
4.3 Tổng hợp mô hình bộ điều khiển PID mờ: 51
4.3.1 Nguyên tắc chuyển đổi PID thành FUZZY PID 51
4.3.2 Xây dựng luật điều khiển: 52
4.3.3 Xây dựng quy tắc mờ trên Matlab – Simulink: 53
Chương 5 – MÔ PHỎNG HOẠT ĐỘNG TAY MÁY VÀ ĐÁNH GIÁ KẾT QUẢ 57
5.1 Mô phỏng tay máy với solidwork: 57
5.2 Giải thuật xử lý ảnh và tạo quỹ đạo cho tay máy hoạt động: 60
Trang 85.3 Mô hình phân tích của hệ tay máy 3 bậc tự do: 62
5.3.1 Sơ đồ khối mô hình phân tích: 62
5.3.2 Sơ đồ mô hình: 63
5.3.3 Kết quả mô phỏng: 63
5.4 Mô hình Simulink mô phỏng của hệ tay máy 3 bậc tự do: 65
5.4.1 Sơ đồ khối mô hình mô phỏng: 65
5.4.2 Sơ đồ mô hình: 66
5.4.3 Kết quả mô phỏng: 66
5.5 Kết luận chung: 68
KẾT LUẬN VÀ KIẾN NGHỊ 69
TÀI LIỆU THAM KHẢO
PHỤ LỤC
Trang 9DANH MỤC HÌNH ẢNH
Hình 1.1 Hệ tọa độ robot có n khâu 7
Hình 1.2 Quy tắc bàn tay phải 8
Hình 1.3 Trường công tác của robot 8
Hình 1.4 Các thành phần của robot công nghiệp 9
Hình 1.5 Sơ đồ khối hệ thống điều khiển mờ 11
Hình 1.6 Cấu trúc điều khiển mờ 14
Hình 2.1 Các quá trình xử lý ảnh 18
Hình 2.2 Ảnh đồng xu 32
Hình 2.3 Ảnh Sobel Filter và Canny Filter 32
Hình 2.4 Ảnh nhị phân 33
Hình 2.5 Ảnh gốc và hiển thị đường biên 34
Hình 2.6 Ảnh gốc và hiển thị đường biên các đồng xu 34
Hình 3.1 Các hệ tọa độ của tay máy 3 bậc 37
Hình 3.2 Sơ đồ thông số động lực của tay máy 42
Hình 4.1 Sơ đồ bộ điều khiển PID 46
Hình 4.2 Sơ đồ cấu trúc mạch vòng dòng điện bỏ qua E 49
Hình 4.3 Sơ đồ cấu trúc mạch vòng dòng điện thu gọn 49
Hình 4.4 Sơ đồ cấu trúc mạch vòng điều chỉnh tốc độ 49
Hình 4.5 Sơ đồ cấu trúc mạch vòng điều chỉnh tốc độ thu gọn 50
Hình 4.6 Sai lệch góc quay 52
Hình 4.7 Thay đổi sai lệch góc quay 52
Hình 4.8 Thay đổi thông số Kp 52
Hình 4.9 Thay đổi thông số Ki 52
Hình 4.10 Thay đổi thông số Kd 52
Hình 4.11 Giao diện thiết kế logic mờ cho hàm Fuzzy_PID 54
Hình 4.12 Giao diện thiết kế biến đầu vào sai lệch góc quay 54
Hình 4.13 Giao diện thiết kế biến đầu vào thay đổi sai lệch góc quay 55
Hình 4.14 Giao diện thiết kế biến đầu ra thay đổi thông số Kp 55
Hình 4.15 Giao diện thiết kế biến đầu ra thay đổi thông số Ki 56
Hình 4.16 Giao diện thiết kế biến đầu ra thay đổi thông số Kd 56
Hình 5.1 Thông số kích thước đế robot 57
Hình 5.2 Thông số kích thước của khâu 1 57
Trang 10Hình 5.3 Thông số kích thước của khâu 2 58
Hình 5.4 Thông số kích thước của khâu 3 58
Hình 5.5 Hình kết hợp các chi tiết tay máy 58
Hình 5.6 Thông báo sau khi chuyển đổi mô hình Solidwork sang Matlab 59
Hình 5.7 Hộp thoại Import Physical Modeling XML 59
Hình 5.8 Mô hình robot 3 bậc sau khi chuyển từ Solidwork sang Matlab 59
Hình 5.9 Lưu đồ giải thuật cho xử lý ảnh và tạo quỹ đạo tay máy 60
Hình 5.10 Ảnh xám 61
Hình 5.11 Ảnh khoanh biên vật được chỉnh định 61
Hình 5.12 Ảnh tìm được trọng tâm vật 61
Hình 5.13 Quỹ đạo chuyển đạo điểm đầu cuối của robot trên mặt phẳng XY 62
Hình 5.14 Sơ đồ khối mô hình phân tích 62
Hình 5.15 Sơ đồ mô hình phân tích tay máy 3 bậc dùng PID 63
Hình 5.16 Sơ đồ mô hình phân tích tay máy 3 bậc dùng PID mờ 63
Hình 5.17 Đồ thị quỹ đạo góc thực 1 - PID 63
Hình 5.18 Đồ thị quỹ đạo góc thực 1 – PID mờ 63
Hình 5.19 Sai lệch góc quay 1 - PID 64
Hình 5.20 Sai lệch góc quay 1 – PID mờ 64
Hình 5.21 Đồ thị quỹ đạo góc thực 2 - PID 64
Hình 5.22 Đồ thị quỹ đạo góc thực 2 – PID mờ 64
Hình 5.23 Sai lệch góc quay 2 - PID 64
Hình 5.24 Sai lệch góc quay 2 – PID mờ 64
Hình 5.25 Đồ thị quỹ đạo góc thực 3 - PID 64
Hình 5.26 Đồ thị quỹ đạo góc thực 3 – PID mờ 64
Hình 5.27 Sai lệch góc quay 3 - PID 65
Hình 5.28 Sai lệch góc quay 3 – PID mờ 65
Hình 5.29 Sơ đồ khối mô hình mô phỏng 65
Hình 5.30 Sơ đồ mô hình mô phỏng tay máy 3 bậc dùng bộ điều khiển PID 66
Hình 5.31 Sơ đồ mô hình mô phỏng tay máy 3 bậc dùng bộ điều khiển PID mờ 66
Hình 5.32 Đồ thị quỹ đạo góc 1 - PID 67
Hình 5.33 Đồ thị quỹ đạo góc 1 – PID mờ 67
Hình 5.34 Sai lệch góc quay 1 - PID 67
Trang 11Hình 5.35 Sai lệch góc quay 1 – PID mờ 67
Hình 5.36 Đồ thị quỹ đạo góc 2 - PID 67
Hình 5.37 Đồ thị quỹ đạo góc 2 – PID mờ 67
Hình 5.38 Sai lệch góc quay 2 - PID 67
Hình 5.39 Sai lệch góc quay 2 – PID mờ 67
Hình 5.40 Đồ thị quỹ đạo góc 3 - PID 68
Hình 5.41 Đồ thị quỹ đạo góc 3 – PID mờ 68
Hình 5.42 Sai lệch góc quay 3 - PID 68
Hình 5.43 Sai lệch góc quay 3 – PID mờ 68
Trang 12DANH MỤC BẢNG BIỂU
Bảng 3.1 Thông số tay máy 3 bậc tự do 37
Bảng 3.2 Thông số D-H 37
Bảng 4.1 Ảnh hưởng của bộ điều khiển đến Kp, Ki và Kd 47
Bảng 4.2 Bảng phương pháp Ziegler-Nichols 47
Bảng 4.3 Bảng thay đổi đầu ra tham số Kp 53
Bảng 4.4 Bảng thay đổi đầu ra tham số Ki 53
Bảng 4.5 Bảng thay đổi đầu ra tham số Kd 53
Trang 13Ri(p) Hàm truyền bộ điều chỉnh dòng điện
R(p) Hàm truyền bộ điều chỉnh tốc độ
R(p) Hàm truyền bộ điều chỉnh vị trí
Tdk Hằng số thời gian mạch điều khiển bộ chỉnh lưu s
Tu Hằng số thời gian điện từ mạch phần ứng s
Trang 14DANH MỤC CÁC CHỮ VIẾT TẮT
AMF American Machine and Foundry Company- Cty máy móc và đúc của Mỹ XLA Xử lý ảnh
AFNOR Association française de Normalisation – tổ chức của Pháp về tiêu
chuẩn hóa
RIA Robot Institute of America – Viện Robot của Mỹ
SISO Single input single output – Hệ một đầu vào một đầu ra
MISO Multi input single output – Hệ nhiều đầu vào một đầu ra
MIMO Multi input multi output – Hệ nhiều đầu vào nhiều đầu ra
IP Internet Protocol - giao thức Internet
IMG Image – File ảnh
PCX Tệp hình ảnh Bitmap Paintbrush viết tắc của “Hình ảnh trao đổi” TIFF Tagged Image File Format – Tiêu chuẩn công nghiệp in ấn và xuất bản
JPEG Joint Photographic Expert Group – Phát triển để lưu trữ hình ảnh
GIF Graphics Interchange Format – Định dạng trao đổi hình ảnh
PNG Portable Network Graphics – Đồ họa mạng di động
BMP Một định dạng tập tin hình ảnh
RGB Red – Green – Blue – Mô hình màu
DOF Depth of field – Độ sâu trường ảnh
Trang 15MỞ ĐẦU
1 Lý do chọn đề tài:
Ngày nay, cách mạng công nghiệp xanh và thông minh đóng vai trò ngày càng quan trọng trong nền kinh tế Từ những ngành sản xuất nông nghiệp, thủy sản, y dược, chế biến hế biến thực phẩm, bảo vệ môi trường, năng lượng hoá tái tạo, hoá học và vật liệu cho đến các ngành chế tạo máy, công nghệ chế tạo ô tô, các ngành công nghệ cao v.v… Cuộc cách mạng này tạo ra môi trường mà máy tính, tự động hóa và con người sẽ làm việc cùng nhau theo những cách thức hoàn toàn mới Tại đây, robot và các loại máy móc sẽ sử dụng các thuật toán để điều khiển mà không cần sự can thiệp của con người
Áp dụng Robot trong quá trình sản xuất sẽ tốn ít sức người và dữ liệu được thu thập đầy
đủ hơn Chất lượng sản phẩm được đảm bảo do kiểm soát được từ khâu nguyên vật liệu cho đến khi thành hình và chuyển đến tay người tiêu dùng Hơn nữa, con người sẽ không phải trực tiếp làm việc ở những môi trường làm việc nguy hiểm, giảm tỷ lệ tử vong, bệnh tật trong quá trình lao động Do vậy Robot có tầm quan trọng rất lớn và là một trong những lĩnh vực nghiên cứu hàng đầu trong thời đại ngày nay
Ở nước ta, nhiều cơ sở đã bắt đầu nhập ngoại nhiều loại Robot phục vụ các công việc học tập, nghiên cứu và sản xuất, có những nơi đã bắt đầu thiết kế chế tạo và lắp ráp Robot Với những ý nghĩa to lớn của Robot công nghiệp, chắc chắn ngành công nghiệp chế tạo và ứng dụng Robot sẽ phát triển rất mạnh trong tương lai Ngoài vấn đề điều khiển tay máy, cánh tay Robot cũng là lĩnh vực cần quan tâm Vấn đề này đã được nghiên cứu ở nhiều nơi trên thế giới và cho ra đời những sản phẩm ứng dụng, tuy nhiên việc áp dụng lý thuyết điều khiển hiện đại để nâng cao chất lượng cho hệ thống là một vấn đề cần nghiên cứu và chế tạo, đáp ứng như cầu thị trường các thiết bị tự động hóa hiện nay
Qua thời gian học tập và nghiên cứu chương trình thạc sĩ tự động hóa tại Đại học
Đà Nẵng, tôi thấy lĩnh vực nghiên cứu ứng dụng robot là một lĩnh vực khá mới mẻ, đặc
biệt là những robot tự động Vì vậy tôi quyết định chọn đề tài "Ứng dụng bộ điều khiển
mờ kết hợp xử lý ảnh cho hệ tay máy 3 bậc tự do" Thông qua luận văn tôi sẽ khảo
sát, nghiên cứu và điều khiển tay máy 3 bậc tự do cùng hệ thống điều khiển vị trí theo quỹ đạo sử dụng phương pháp điều khiển mờ để gắp vật cố định trên mặt phẳng với sự giúp đỡ của Camera xác định tọa độ vật
2 Mục đích nghiên cứu:
- Nghiên cứu lý thuyết về tay máy và lý thuyết mờ
- Nghiên cứu Image Processing Toolbox trong MATLAB cho việc xử lý ảnh và kết nối mô phỏng
- Ứng dụng điều khiển mờ điều khiển tay máy 3 bậc tự do gắp vật theo vị trí quỹ đạo đặt trước
- Phân tích đánh giá kết quả đạt được qua mô phỏng tay máy
Trang 163 Đối tượng và phạm vị nghiên cứu:
3.1 Đối tượng nghiên cứu:
- Mô phỏng tay máy 3 bậc tự do bằng Matlab Simulink và Solidworks
- Điều khiển tay máy 3 bậc tự do
4 Phương pháp nghiên cứu:
- Tìm hiểu cơ sở lý thuyết về tay máy, xử lý ảnh, qua thông qua các bài báo, internet, sách…
- Tìm hiểu lý thuyết và xây dựng thuật toán điều khiển mờ tay máy 3 bậc tự do theo quỹ đạo định sẵn
- Tìm hiểu phương pháp mô phỏng tay máy phần mềm Matlab Simulink và Solidworks
- Nghiên cứu thiết kế chương trình xác định tọa độ vật bằng Camera, chương trình tạo ra quỹ đạo robot
5 Ý nghĩa khoa học và thực tiễn của đề tài:
Về khoa học:
- Việc nghiên cứu và thiết kế bộ điều khiển mờ nhằm nâng cao chất lượng điều khiển, tăng độ mềm dẻo và linh hoạt của bộ truyền động trong các sản xuất, cụ thể điều khiển tay máy 3 bậc tự do là một vấn đề có ý nghĩa cao về khoa học
- Ứng dụng thành công công nghệ xử lý ảnh vào điều khiển các thiết bị thông minh
- Việc xử lý ảnh và điều khiển mờ tay máy 3 bậc tự do tạo tiền đề cho những nghiên cứu tiếp theo trong tương lai
Về thực tiễn:
- Tích hợp điều khiển mờ vào điều khiển mở ra triển vọng mới trong việc khai thác, áp dụng cho các hệ thống điều khiển trong công nghiệp để thay đổi công nghệ sản xuất bằng việc tự động hóa việc điều khiển, giảm vốn đầu tư, nâng cao chất lượng hệ thống điều khiển, đưa lại nhiều hơn các sản phẩm chất lượng tốt với giá thành thấp, cạnh tranh hơn
- Ứng dụng xử lý ảnh vào công nghiệp sản xuất tự động, điều khiển robot làm trực quan hóa quá trình giám sát điều khiển
- Ứng dụng công nghệ điều khiển mờ và xử lý ảnh sẽ góp phần thúc đẩy cuộc cách mạng công nghiệp hiện nay
6 Bố cục luận văn:
Trang 17Luận văn có phần mở đầu giới thiệu về nội dung, mục lục, danh mục các bảng, hình vẽ, kết luận và kiến nghị bao gồm 5 chương được nghiên cứu cụ thể:
Chương 1: Cơ sở lý thuyết
Chương 2: Xử lý ảnh và ứng dụng Matlab trong xử lý ảnh
Chương 3: Xây dựng mô hình toán học cho tay máy 3 bậc tự do
Chương 4: Thiết kế bộ điều khiển PID mờ điều khiển tay máy 3 bậc tự do Chương 5: Mô phỏng hoạt động tay máy và đánh giá kết quả
Trang 18Chương 1 – CƠ SỞ LÝ THUYẾT
1.1 Tổng quan về Robot:
1.1.1 Lịch sử phát triển của robot
Thuật ngữ “Robot” xuất phát từ tiếng Sec (Czech) “Robota” có nghĩa là công việc tạp dịch trong vở kịch Rossum’s Universal Robotscủa Karel Capek, vào năm 1921 Trong vở kịch này, Rossum và con trai của ông ta đã chế tạo ra những chiếc máy gần giống với con người để phục vụ con người Có lẽ đó là một gợi ý ban đầu cho các nhà sáng chế kỹ thuật về những cơ cấu, máy móc bắt chước các hoạt động cơ bắp của con người
Đầu thập kỷ 60, công ty Mỹ AMF (American Machine and Foundry Company) quảng cáo một loại máy tự động vạn năng và gọi là “Người máy công nghiệp” (Industrial Robot) Ngày nay người ta đặt tên người máy công nghiệp (hay robot công nghiệp) cho những loại thiết bị có dáng dấp và một vài chức năng như tay người được
điều khiển tự động để thực hiện một số thao tác sản xuất
Về mặt kỹ thuật, những robot công nghiệp ngày nay, có nguồn gốc từ hai lĩnh vực kỹ thuật ra đời sớm hơn đó là các cơ cấu điều khiển từ xa (Teleoperators) và các máy công cụ điều khiển số (NC - Numerically Controlled machine tool)
Các cơ cấu điều khiển từ xa (hay các thiết bị kiểu chủ-tớ) đã phát triển mạnh trong chiến tranh thế giới lần thứ hai nhằm nghiên cứu các vật liệu phóng xạ Người thao tác được tách biệt khỏi khu vực phóng xạ bởi một bức tường có một hoặc vài cửa quan sát để có thể nhìn thấy được công việc bên trong Các cơ cấu điều khiển từ xa thay thế cho cánh tay của người thao tác; nó gồm có một bộ kẹp ở bên trong (tớ) và hai tay cầm ở bên ngoài (chủ) Cả hai, tay cầm và bộ kẹp, được nối với nhau bằng một cơ cấu sáu bậc tự do để tạo ra các vị trí và hướng tuỳ ý của tay cầm và bộ kẹp Cơ cấu dùng để điều khiển bộ kẹp theo chuyển động của tay cầm
Vào khoảng năm 1949, các máy công cụ điều khiển số ra đời, nhằm đáp ứng yêu cầu gia công các chi tiết trong ngành chế tạo máy bay Những robot đầu tiên thực chất
là sự nối kết giữa các khâu cơ khí của cơ cấu điều khiển từ xa với khả năng lập trình của máy công cụ điều khiển số
Dưới đây chúng ta sẽ điểm qua một số thời điểm lịch sử phát triển của ng-ời máy công nghiệp Một trong những robot công nghiệp đầu tiên được chế tạo là robot Versatran của công ty AMF, Mỹ Cũng vào khoảng thời gian nầy ở Mỹ xuất hiện loạirobot Unimate -1900 được dùng đầu tiên trong kỹ nghệ ôtô
Tiếp theo Mỹ, các nước khác bắt đầu sản xuất robot công nghiệp : Anh -1967, Thuỵ Điển và Nhật -1968 theo bản quyền của Mỹ; CHLB Đức -1971; Pháp - 1972; ở ý-
1973
Tính năng làm việc của robot ngày càng được nâng cao, nhất là khả năng nhận biết và xử lý Năm 1967 ở trường Đại học tổng hợp Stanford (Mỹ) đã chế tạo ra mẫu
Trang 19robot hoạt động theo mô hình “mắt-tay”, có khả năng nhận biết và định hướng bàn kẹp theo vị trí vật kẹp nhờ các cảm biến Năm 1974 Công ty Mỹ Cincinnati đưa ra loại robot được điều khiển bằng máy vi tính, gọi là robot T3 (The Tomorrow Tool: Công cụ của tương lai) Robot nầy có thể nâng được vật có khối lượng đến 40 KG
Có thể nói, Robot là sự tổ hợp khả năng hoạt động linh hoạt của các cơ cấu điều khiển từ xa với mức độ “tri thức” ngày càng phong phú của hệ thống điều khiển theo chương trình số cũng như kỹ thuật chế tạo các bộ cảm biến, công nghệ lập trình và các phát triển của trí khôn nhân tạo, hệ chuyên gia
Trong những năm sau này, việc nâng cao tính năng hoạt động của robot không ngừng phát triển Các robot được trang bị thêm các loại cảm biến khác nhau để nhận biết môi trường chung quanh, cùng với những thành tựu to lớn trong lĩnh vực Tin học - Điện tử đã tạo ra các thế hệ robot với nhiều tính năng đăc biệt, số lượng robot ngày càng gia tăng, giá thành ngày càng giảm Nhờ vậy, robot công nghiệp đã có vị trí quan trọng trong các dây chuyền sản xuất hiện đại
1.1.2 Ứng dụng robot trong sản xuất:
Từ khi mới ra đời robot công nghiệp được áp dụng trong nhiều lĩnh vực dưới góc
độ thay thế sức người Nhờ vậy các dây chuyền sản xuất được tổ chức lại, năng suất và hiệu quả sản xuất tăng lên rõ rệt
Mục tiêu ứng dụng robot công nghiệp nhằm góp phần nâng cao năng suất dây chuyền công nghệ, giảm giá thành, nâng cao chất lượng và khả năng cạnh tranh của sản phẩm đồng thời cải thiện điều kiện lao động Đạt được các mục tiêu trên là nhờ vào những khả năng to lớn của robot như: làm việc không biết mệt mỏi, rất dễ dàng chuyển nghề một cách thành thạo, chịu được phóng xạ và các môi trường làm việc độc hại, nhiệt
độ cao, “cảm thấy” được cả từ trường và “nghe” được cả siêu âm Robot được dùng thay thế con người trong các trường hợp trên hoặc thực hiện các công việc tuy không nặng nhọc nhưng đơn điệu, dễ gây mệt mõi, nhầm lẫn
Trong ngành cơ khí, robot được sử dụng nhiều trong công nghệ đúc, công nghệ hàn, cắt kim loại, sơn, phun phủ kim loại, tháo lắp vận chuyển phôi, lắp ráp sản phẩm
Ngày nay đã xuất hiện nhiều dây chuyền sản xuất tự động gồm các máy CNC với Robot công nghiệp, các dây chuyền đó đạt mức tự động hoá cao, mức độ linh hoạt cao ở đây các máy và robot được điều khiển bằng cùng một hệ thống chương trình
Ngoài các phân xưởng, nhà máy, kỹ thuật robot cũng được sử dụng trong việc khai thác thềm lục địa và đại dương, trong y học, sử dụng trong quốc phòng, trong chinh phục vũ trụ, trong công nghiệp nguyên tử, trong các lĩnh vực xã hội
Rõ ràng là khả năng làm việc của robot trong một số điều kiện vượt hơn khả năng của con người; do đó nó là phương tiện hữu hiệu để tự động hoá, nâng cao năng suất lao động, giảm nhẹ cho con người những công việc nặng nhọc và độc hại Nhược điểm lớn nhất của robot là chưa linh hoạt như con người, trong dây chuyền tự động, nếu có một
Trang 20robot bị hỏng có thể làm ngừng hoạt động của cả dây chuyền, cho nên robot vẫn luôn hoạt động dưới sự giám sát của con người
1.1.3 Các khái niệm và định nghĩa về robot công nghiệp
1.1.3.1 Định nghĩa về Robot công nghiệp:
Hiện nay có nhiều định nghĩa về Robot, có thể điểm qua một số định nghĩa như sau:
Định nghĩa theo tiêu chuẩn AFNOR (Pháp):
Robot công nghiệp là một cơ cấu chuyển động tự động có thể lập trình, lặp lại các chương trình, tổng hợp các chương trình đặt ra trên các trục toạ độ; có khả năng định
vị, định hướng, di chuyển các đối tượng vật chất: chi tiết, dao cụ, gá lắp theo những hành trình thay đổi đã chương trình hoá nhằm thực hiện các nhiệm vụ công nghệ khác nhau
Định nghĩa theo RIA (Robot institute of America):
Robot là một tay máy vạn năng có thể lặp lại các chương trình được thiết kế để
di chuyển vật liệu, chi tiết, dụng cụ hoặc các thiết bị chuyên dùng thông qua các chương trình chuyển động có thể thay đổi để hoàn thành các nhiệm vụ khác nhau
Định nghĩa theo GOCT 25686-85 (Nga):
Robot công nghiệp là một máy tự động, được đặt cố định hoặc di động được, liên kết giữa một tay máy và một hệ thống điều khiển theo chương trình, có thể lập trình lại
để hoàn thành các chức năng vận động và điều khiển trong quá trình sản xuất
Có thể nói Robot công nghiệp là một máy tự động linh hoạt thay thế từng phần hoặc toàn bộ các hoạt động cơ bắp và hoạt động trí tuệ của con người trong nhiều khả năng thích nghi khác nhau
Robot công nghiệp có khả năng chương trình hoá linh hoạt trên nhiều trục chuyển động, biểu thị cho số bậc tự do của chúng Robot công nghiệp được trang bị những bàn tay máy hoặc các cơ cấu chấp hành, giải quyết những nhiệm vụ xác định trong các quá trình công nghệ: hoặc trực tiếp tham gia thực hiện các nguyên công (sơn, hàn, phun phủ, rót kim loại vào khuôn đúc, lắp ráp máy ) hoặc phục vụ các quá trình công nghệ (tháo lắp chi tiết gia công, dao cụ, đồ gá ) với những thao tác cầm nắm, vận chuyển và trao đổi các đối tượng với các trạm công nghệ, trong một hệ thống máy tự động linh hoạt, được gọi là “Hệ thống tự động linh hoạt robot hoá” cho phép thích ứng nhanh và thao tác đơn giản khi nhiệm vụ sản xuất thay đổi
1.1.3.2 Các khái niệm :
* Bậc tự do của robot:
Bậc tự do là số khả năng chuyển động của một cơ cấu (chuyển động quay hoặc tịnh tiến) Để dịch chuyển được một vật thể trong không gian, cơ cấu chấp hành của robot phải đạt được một số bậc tự do Nói chung cơ hệ của robot là một cơ cấu hở, do
đó bậc tự do của nó có thể tính theo công thức:
𝑤 = 6𝑛 − ∑5 𝑖𝑝𝑖
Trang 21Để định vị và định hướng khâu chấp hành cuối một cách tuỳ ý trong không gian
3 chiều robot cần có 6 bậc tự do, trong đó 3 bậc tự do để định vị và 3 bậc tự do để định hướng
Một số công việc đơn giản nâng hạ, sắp xếp cóthể yêu cầu số bậc tự do ít hơn Các robot hàn, sơn thường yêu cầu 6 bậc tự do Trong một số trường hợp cần sự khéo léo, linh hoạt hoặc khi cần phải tối ưu hoá quỹ đạo, người ta dùng robot với số bậc tự
do lớn hơn 6
* Hệ tọa độ:
Mỗi robot thường bao gồm nhiều khâu (links) liên kết với nhau qua các khớp (joints), tạo thành một xích động học xuất phát từ một khâu cơ bản (base) đứng yên Hệ toạ độ gắn với khâu cơ bản gọi là hệ toạ độ cơ bản (hay hệ toạ độ chuẩn) Các hệ toạ độ trung gian khác gắn với các khâu động gọi là hệ toạ độ suy rộng Trong từng thời điểm hoạt động, các toạ độ suy rộng xác định cấu hình của robot bằng các chuyển dịch dài hoặc các chuyển dịch góc cuả các khớp tịnh tiến hoặc khớp quay Các toạ độ suy rộng còn được gọi là biến khớp
Hình 1.1 Hệ tọa độ robot có n khâu
Các hệ toạ độ gắn trên các khâu của robot phải tuân theo qui tắc bàn tay phải: Dùng tay phải, nắm hai ngón tay út và áp út vào lòng bàn tay, xoè 3 ngón: cái, trỏ và giữa theo 3 phương vuông góc nhau, nếu chọn ngón cái là phương và chiều của trục z, thì ngón trỏ chỉ phương, chiều của trục x và ngón giữa sẽ biểu thị phương, chiều của trục y
Trong robot ta thường dùng chữ O và chỉ số n để chỉ hệ toạ độ gắn trên khâu thứ
n Như vậy hệ toạ độ cơ bản (Hệ toạ độ gắn với khâu cố định) sẽ được ký hiệu là 𝑂0; hệ toạ độ gắn trên các khâu trung gian tương ứng sẽ là 𝑂1, 𝑂2, … , 𝑂𝑛−1, hệ toạ độ gắn trên khâu chấp hành cuối ký hiệu là 𝑂𝑛
Trang 22Hình 1.2 Quy tắc bàn tay phải 1.1.3.3 Trường công tác của robot:
Trường công tác (hay vùng làm việc, không gian công tác) của robot là toàn bộ thể tích được quét bởi khâu chấp hành cuối khi robot thực hiện tất cả các chuyển động
có thể Trường công tác bị ràng buộc bởi các thông số hình học của robot cũng như các ràng buộc cơ học của các khớp; ví dụ, một khớp quay có chuyển động nhỏ hơn một góc
3600 Người ta thường dùng hai hình chiếu để mô tả trường công tác của một robot
Hình 1.3 Trường công tác của robot
1.1.4 Phân loại robot công nghiệp
Robot công nghiệp rất phong phú đa dạng, có thể được phân loại theo các cách sau:
* Phân loại theo kết cấu:
Theo kết cấu của tay máy người ta phân thành robot kiểu toạ độ Đề các, Kiểu toạ
độ trụ, kiểu toạ độ cầu, kiểu toạ độ góc, robot kiểu SCARA
* Phân loại theo hệ thống truyền động:
Hệ truyền động khí nén: có kết cấu gọn nhẹ hơn do không cần dẫn ngược nhưng lại phải gắn liền với trung tâm taọ ra khí nén Hệ này làm việc với công suất trung bình
và nhỏ, kém chính xác, thường chỉ thích hợp với các robot hoạt động theo chương trình định sẳn với các thao tác đơn giản “nhấc lên - đặt xuống” (Pick and Place or PTP: Point
To Point)
* Phân loại theo ứng dụng:
Trang 23Dựa vào ứng dụng của robot trong sản xuất có Robot sơn, robot hàn, robot lắp ráp, robot chuyển phôi v.v
* Phân loại theo cách thức và đặc trưng của phương pháp điều khiển:
Có robot điều khiển hở (mạch điều khiển không có các quan hệ phản hồi), Robot điều khiển kín (hay điều khiển servo): sử dụng cảm biến, mạch phản hồi để tăng độ chính xác và mức độ linh hoạt khi điều khiển
Ngoài ra còn có thể có các cách phân loại khác tuỳ theo quan điểm và mục đích nghiên cứu
1.1.5 Cấu trúc cơ bản của robot công nghiệp
1.1.5.1 Các thành phần chính của Robot công nghiệp:
Một robot công nghiệp thường bao gồm các thành phần chính như: cánh tay robot, nguồn động lực, dụng cụ gắn lên khâu chấp hành cuối, các cảm biến, bộ điều khiển, thiết bị dạy học, máy tính các phần mềm lập trình cũng nên được coi là một thành phần của hệ thống robot Mối quan hệ giữa các thành phần trong robot được thể hiện trong hình 1.4
Hình 1.4 Các thành phần của robot công nghiệp
Cánh tay robot (tay máy) là kết cấu cơ khí gồm các khâu liên kết với nhau bằng các khớp động để có thể tạo nên những chuyển động cơ bản của robot
Nguồn động lực là các động cơ điện (một chiều hoặc động cơ bước), các hệ thống
xy lanh khí nén, thuỷ lực để tạo động lực cho tay máy hoạt động
Dụng cụ thao tác được gắn trên khâu cuối của robot, dụng cụ của robot có thể có nhiều kiểu khác nhau như: dạng bàn tay để nắm bắt đối tượng hoặc các công cụ làm việc như mỏ hàn, đá mài, đầu phun sơn
Thiết bị dạy-học (Teach-Pendant) dùng để dạy cho robot các thao tác cần thiết theo yêu cầu của quá trình làm việc, sau đó robot tự lặp lại các động tác đã được dạy để làm việc (phương pháp lập trình kiểu dạy học)
Các phần mềm để lập trình và các chương trình điều khiển robot được cài đặt trên máy tính, dùng điều khiển robot thông qua bộ điều khiển (Controller) Bộ điều khiển còn được gọi là Mođun điều khiển (hay Unit, Driver), nó thường được kết nối với máy tính Một mođun điều khiển có thể còn có các cổng Vào - Ra (I/O port) để làm việc với nhiều thiết bị khác nhau như các cảm biến giúp robot nhận biết trạng thái của bản thân,
Trang 24xác định vị trí của đối tượng làm việc hoặc các dò tìm khác; điều khiển các băng tải hoặc
cơ cấu cấp phôi hoạt động phối hợp với robot
1.1.5.2 Kết cấu của tay máy:
Tay máy là thành phầnquan trọng, nó quyết định khả năng làm việc của robot Các kết cấu của nhiều tay máy được phỏng theo cấu tạo và chức năng của tay người; tuy nhiên ngày nay, tay máy được thiết kế rất đa dạng, nhiều cánh tay robot có hình dáng rất khác xa cánh tay người Trong thiết kế và sử dụng tay máy, chúng ta cần quan tâm đến các thông số hình - động học, là những thông số liên quan đến khả năng làm việc của robot như: tầm với (hay trường công tác), số bậc tự do (thể hiện sự khéo léo linh hoạt của robot), độ cứng vững, tải trọng vật nâng, lực kẹp
Các khâu của robot thường thực hiện hai chuyển động cơ bản:
• Chuyển động tịnh tiến theo hướng x, y, z trong không gian Descarde, thông thường tạo nên các hình khối, các chuyển động nầy thường ký hiệu là T (Translation) hoặc P (Prismatic)
• Chuyển động quay quanh các trục x, y, z ký hiệu là R (Rotation)
Tuỳ thuộc vào số khâu và sự tổ hợp các chuyển động (R và T) mà tay máy có các kết cấu khác nhau với vùng làm việc khác nhau Các kết cấu thường gặp của là Robot là robot kiểu toạ độ Đề các, toạ độ trụ, toạ độ cầu, robot kiểu SCARA, hệ toạ độ góc (phỏng sinh)
1.2 Tổng quan về điều khiển mờ:
1.2.1 Lịch sử phát triển:
Từ năm 1965 đã ra đời một lý thuyết mới đó là lý thuyết tập mờ (Fuzzy set theory)
đo giáo sư Lofti A Zadeh ở trường đại học Califonia - Mỹ đưa ra Từ khi lý thuyết đó
ra đời nó được phát triển mạnh mẽ qua các công trình khoa học của các nhà khoa học như: Năm 1972 GS Terano và Asai thiết lập ra cơ sở nghiên cứu hệ thống điều khiển
mờ ở Nhật, năm 1980 hãng Smith Co bắt đầu nghiên cứu điều khiển mờ cho lò hơi Những năm đầu thập kỷ 90 cho đến nay hệ thống điều khiển mờ và mạng nơron (Fuzzy system and neural network) được các nhà khoa học, các kỹ sư và sinh viên trong mọi lĩnh vực khoa học kỹ thuật đặc biệt quan tâm và ứng dụng trong sản xuất và đời sống Tập mờ và lôgic mờ đã dựa trên các thông tin "không đầy đủ, về đối tượng để điều khiển đầy đủ về đối tượng một cách chính xác
Các công ty của Nhật bắt đầu dùng lôgic mờ vào kỹ thuật điều khiển từ năm
1980 Nhưng do các phần cứng chuẩn tính toán theo giải thuật 1ôgic mờ rất kém nên hầu hết các ứng dụng đều dùng các phần cứng chuyên về lôgic mờ Một trong những ứng dụng dùng lôgic mờ đầu tiên tại đây là nhà máy xử lý nước của Fuji Electric vào năm 1983, hệ thống xe điện ngầm của Hitachi vào năm 1987
Trang 251.2.2 Điều khiển mờ:
1.2.2.1 Sơ đồ của hệ thống điều khiển mờ:
Hình 1.5 Sơ đồ khối hệ thống điều khiển mờ
* Khối mờ hoá:
Khâu mờ hóa có nhiệm vụ chuyển đổi một giá trị rõ hóa đầu vào x0 thành một vector µ gồm các độ phụ thuộc của các giá trị rõ đó theo các giá trị mờ (tập mờ) đã định nghĩa cho biến ngôn ngữ đầu vào
Mờ hóa định nghĩa như sự ánh xạ (sự làm tương ứng) từ lập các giá trị thực (giá trị rõ) x* U Rn thành lập các giá trị mờ ~ A' ở trong U Hệ thống mờ như là một bộ xấp xỉ vạn năng
Nguyên tắc chung việc thực hiện mờ hóa là:
- Từ tập giá trị thực x sẽ tạo ra tập mờ ~ A' với hàm liên thuộc có giá trị đủ rộng tại các điểm rõ x*
- Nếu có nhiễu ở đầu vào thì việc mờ hóa sẽ góp phần khử nhiễu
- Việc mờ hóa phải tạo điều kiện đơn giản cho tính toán sau này
Thông thương có 3 phương pháp mờ hóa: mờ hóa đơn trị, mờ hóa Gauss (Gaussian fuzzifier) và mờ hóa hình tam giác (Triangular fuzzifier) Thường sử dụng
mờ hóa Gauss hoặc mờ hóa tam giác vì hai phương pháp này không những cho phép tính toán tương đối đơn giản mà còn đồng thời khử nhiễu đầu vào
- Mờ hóa đơn trị (Singleton fuzzifier): Mờ hóa đơn trị từ các điểm giá trị thực x*
U lấy các giá trị đơn trị của tập mờ ~ A', nghĩa là hàm liên thuộc dạng:
𝜇′𝐴(𝑋) = {1 𝑁ế𝑢 𝑥 = 𝑥∗
0 𝑁ế𝑢 𝑥 ≠ 𝑥∗
- Mờ hóa Gauss (Gaussian Fuzzifier): Mờ hóa Gauss là từ các điểm giá trị thực
x* U lấy các giá trị trong tập mờ ~ A' với hàm liên thuộc Gauss
- Mờ hóa hình tam giác (Triangular Fuzzifier): Mờ hóa hình tam giác là từ các
điểm giá trị thực x* U lấy các giá trị trong tập mờ ~ A' với hàm liên thuộc dạng hình tam giác, hoặc hình thang
Ta thấy mờ hóa đơn trị cho phép tính toán về sau rất đơn giản nhưng không khử được nhiễu đầu vào, mờ hóa Gauss hoặc mờ hóa hình tam giác không những cho phép tính toán về sau tương đối đơn giản mà còn đồng thời có thể khử nhiễu đầu vào
Ví dụ đại lượng tốc độ có những giá trị có thể được nêu dưới dạng ngôn ngữ như sau: rất chậm, chậm, trung bình, nhanh và rất nhanh
Trang 26Mỗi giá trị ngôn ngữ đó của biến tốc được xác định bằng một tập mờ định nghĩa trên tập nền là tập các số thực dương chỉ giá trị vật lý x (đơn vị km/h) của biến tốc v như 40km/h, 50km/h, Hàm liên thuộc tương ứng của chúng được ký hiệu bằng: µ rất chậm (x), µ chậm (x), µtrung bình (x), µ nhanh (x), µ rất nhanh (x) Như vậy biến tốc độ v có hai miền giá trị khác nhau:
- Miền các giá trị ngôn ngữ N = {rất chậm, chậm, trung bình, nhanh, rất nhanh}
Ánh xạ trên có tên gọi là quá trình mờ hóa giá trị rõ x
* Khâu thực hiện luật hợp thành:
Khâu thực hiện luật hợp thành gồm hai khối đó là khối luật mờ và khối hợp thành
Khối hợp thành (Inference Mechanism):
Biến đổi các giá trị mờ hoá của biến ngôn ngữ đầu vào thành các giá trị mờ của biến ngôn ngữ đầu ra theo các luật hợp thành
Khối luật mờ (Rule-base):
Gồm tập các luật “Nếu Thì ” dựa vào các luật mờ cơ sở do người thiết kế xây dựng thích hợp cho từng biến và giá trị của các biến ngôn ngữ theo quan hệ mờ Vào/Ra
Ta có luật hợp thành là tên chung gọi mô hình R biểu diễn một hay nhiều hàm liên thuộc cho một hay nhiều mệnh đề hợp thành, nói cách khác luật hợp thành được hiểu là một tập hợp của nhiều mệnh đề hợp thành Một luật hợp thành chỉ có một mệnh
đề hợp thành được gọi là luậthợp thành đơn Ngược lại, nếu nó có nhiều hơn một mệnh
đề hợp thành ta sẽ gọi nó là luật hợp thành kép Phần lớn các hệ mờ trong thực tế đều
có mô hình là luật hợp thành kép Ngoài ra R còn có một số tên gọi khác phụ thuộc vào cách kết hợp các mệnh đề hợp thành (max hay sum) và quy tắc sử dụng trong từng mệnh
đề hợp thành (MIN hay PROD):
- Luật hợp thành max-PROD, nếu các hàm liên thuộc thành phần được xác định theo quy tắc hợp thành PROD và phép hợp giữa các mệnh đề hợp thành được lấy theo luật max
Trang 27- Luật hợp thành max-MIN, nếu các hàm liên thuộc thành phần được xác định theo quy tắc hợp thành MIN và phép hợp giữa các mệnh đề hợp thành được lấy theo luật max
- Luật hợp thành sum-MIN, nếu các hàm liên thuộc thành phần được xác định theo quy tắc hợp thành MIN và phép hợp lấy theo công thức Lukasiewicz
- Luật hợp thành sum-PROD, nếu các hàm liên thuộc thành phần được xác định theo quy tắc hợp thành PROD và phép hợp được lấy theo công thức Lukasiewicz
* Khối giải mờ (Defuzzifier):
Bộ điều khiển mờ tổng hợp được như trên chưa thể áp dụng được trong điều khiển đối tượng, vì đầu ra luôn là một giá trị mờ B’ Một bộ điều khiển mờ hoàn chỉnh
có thêm khâu giải mờ Khâu giải mờ, có nhiệm vụ chuyển đổi tập mờ B’ thành một giá trị rõ y’ chấp nhận được cho đối tượng
Giải mờ được định nghĩa như sự ánh xạ (sự làm tương ứng) từ tập mờ B’ trong tập cơ sở V (thuộc tập số thực R; V R; đó là đầu ra của khối hợp thành và suy luận mờ) thành giá trị rõ đầu ra y V Như vậy nhiệm vụ của giải mờ là tìm một điểm rõ y
V làm đại diện tốt nhất cho tập mờ B’ Có ba điều lưu ý sau đây lúc chọn phương pháp giải mờ:
- Tính hợp lý của kết quả Điểm rõ y* V là điểm đại diện (cho “năng lượng”) của tập mờ B’, điều này có thể cảm nhận trực giác tính hợp lý của kết quả khi đã có hàm liên thuộc của tập mờ B’
- Việc tính toán đơn giản Đây là điều rất quan trọng để tính toán nhanh, vì các
bộ điều khiển mờ thường làm việc ở thời gian thực
- Tính liên tục Một sự thay đổi nhỏ trong tập mờ B’ chỉ làm thay đổi nhỏ kết quả giải mờ, nghĩa là không gây ra thay đổi đột biến giá trị mờ y V
Như vậy giải mờ là quá trình xác định một giá trị rõ đầu ra theo hàm liên thuộc hợp thành đã tìm được từ các luật hợp thành và điều kiện đầu vào Có ba phương pháp giải mờ thường được dùng là: phương pháp cực đại, phương pháp trọng tâm và phương pháp trung bình tâm
1.2.2.2 Phân loại điều khiển mờ:
Cũng giống như điều khiển kinh điển, bộ điều khiển mờ được phân loại dựa trên các quan điểm khác nhau:
- Theo số lượng đầu vào và đầu ra ta phân ra bộ Điều khiển mờ "Một vào - một ra" (SISO); "Nhiều vào - một ra" (MISO); "Nhiều vào - nhiều ra" (MIMO)
Bộ điều khiển mờ MIMO rất khó cài đặt thiết bị hợp thành Mặt khác, một bộ điều khiển mờ có m đầu ra dễ dàng cài đặt thành m bộ điều khiển mờ chỉ có một đầu ra
vì vậy bộ điều khiển mờ MIMO chỉ có ý nghĩa về lý thuyết, trong thực tế không dùng
- Theo bản chất của tín hiệu đưa vào bộ điều khiển ta phân ra bộ điều khiển mờ tĩnh và bộ điều khiển mờ động Bộ điều khiển mờ tĩnh chỉ có khả năng xử lý các tín hiệu
Trang 28hiện thời, bộ điều khiển mờ động có sự tham gia của các giá trị đạo hàm hay tích phân của tín hiệu, chúng được ứng dụng cho các bài toán điều khiển động Bộ điều khiển mờ tĩnh chỉ có khả năng xử lý các giá trị tín hiệu hiện thời Để mở rộng miền ứng dụng của chúng vào các bài toán điều khiển động, các khâu động học cần thiết sẽ được nối thêm vào bộ điều khiển mờ tĩnh nhằm cung cấp cho bộ điều khiển các giá trị đạo hàm hay tích phân của tín hiệu Cùng với những khâu động học bổ sung này, bộ điều khiển tĩnh sẽ trở thành bộ Điều khiển mờ động
1.2.2.3 Cấu trúc cơ bản của bộ điều khiển mờ:
Về nguyên tắc, hệ thống điều khiển mờ cũng không có gì khác so với các hệ thống điều khiển tự động thông thường khác Sự khác biệt ở đây chính là bộ điều khiển
mờ làm việc có tư duy như “bộ não” dưới dạng trí tuệ nhân tạo Nếu khẳng định làm việc với hệ thống điều khiển mờ do đó cũng có thể được coi như một hệ thống mạng neuron hay đúng hơn là một hệ thống điều khiển được thiết kế mà không cần biết trước
mô hình của đối tượng Bộ điều khiển mờ gồm các thành phần sau:
Hình 1.6 Cấu trúc điều khiển mờ
- Giao diện đầu vào bao gồm khâu mờ hóa và các khâu phụ trợ khác (như khâu tích phân, khâu vi phân,…) để thực hiện các bài toán điều khiển động
- Thiết bị hợp thành là sự triển khai các luật hợp thành R được xây dựng trên cơ
sở luật điều khiển thích hợp
- Giao diện đầu ra gồm khâu giải mờ và các khâu tác động trực tiếp tới đối tượng (như khâu khuếch đại, khâu hạn chế,…)
Nguyên tắc tổng hợp một bộ điều khiển mờ hoàn toàn dựa trên cơ sở toán học, cách định nghĩa các biến ngôn ngữ vào ra và phương pháp lựa chọn luật điều khiển
Trái tim của các bộ điều khiển mờ chính là các luật điều khiển mờ có dạng các mệnh đề hợp thành theo cấu trúc “Nếu … Thì” và các nguyên tắc triển khai các mệnh
đề hợp thành đó có tên là nguyên tắc Max-Min hay Sum-Min,… Mô hình của luật điều khiển được xây dựng theo nguyên tắc thích hợp và được gọi là luật hợp thành Thiết bị thực hiện luật hợp thành trong bộ điều khiển mờ được gọi là thiết bị hợp thành mờ
Trang 291.2.3 Hệ điều khiển mờ nâng cao:
1.2.3.1 Hệ điều khiển thích nghi mờ:
Hệ điều khiển thích nghi mờ là hệ điều khiển thích nghi được xây dựng trên cơ
sở của hệ mờ
So với hệ điều khiển thích nghi kinh điển, hệ điều khiển thích nghi mờ có miền tham số chỉnh định rất lớn Bên cạnh các tham số Kp, TI, TD giống như bộ điều khiển PID thông thường, ở bộ điều khiển mờ ta còn có thể chỉnh định các tham số khác như hàm liên thuộc, các luật hợp thành, các phép toán OR, AND, NOT, nguyên lý giải mờ v.v
Trong thực tế, hệ điều khiển thích nghi được sử dụng ngày càng nhiều vì nó có các ưu điểm nổi bật so với hệ thông thường Với khả năng tự chỉnh định lại các tham số của bộ điều chỉnh cho phù hợp với đối tượng chưa biết rõ đã đưa hệ thích nghi mờ trở thành một hệ điều khiển thông minh
1.2.3.2 Hệ điều khiển mờ lai F-PID:
Hệ mờ lai viết tắt là F-PID là hệ điều khiển trong đó thiết bị điều khiển gồm 2 thành phần: Thành phần điều khiển kinh điển và thành phần điều khiển mờ Bộ Điều khiển F-PID có thể thiết lập dựa trên hai tín hiệu là sai lệch e(t) và đạo hàm của nó e’(t)
Bộ Điều khiển mờ có đặc tính rất tốt ở vùng sai lệch lớn, ở đó với đặc tính phi tuyến của
nó có thể tạo ra phản ứng động rất nhanh Khi quá trình của hệ tiến gần đến điểm đặt (sai lệch e(t) và đạo hàm của nó e’(t) xấp xi bằng 0) vai trò của bộ điều khiển mờ(FLC)
bị hạn chế nên bộ điều khiển sẽ làm việc như một bộ điều chỉnh PID bình thường
1.3 Kết luận:
Cho đến nay robot được ứng dụng rộng rãi trong nhiều lĩnh vực kinh tế, khoa học
kỹ thuật và công nghệ Đặc biệt robot tay máy với các cơ cấu 2 và 3 bậc tự do được sử dụng rộng rãi trong công nghiệp điện tử với độ chính xác cao như hệ thống quay ra đa, điều chỉnh tầm và hướng pháo cao xạ, lắp ráp trong các dây chuyền sản xuất…với ưu điểm là có tính chính xác và độ ổn định cao chính vì thế việc thông minh hóa các hệ thống điều khiển này đang được nhiều nhà khoa học quan tâm nghiên cứu
Việc áp dụng logic mờ đã cho tạo ra các bộ điều khiển mờ, mờ lai, với những tính chất khá tốt nhằm đáp ứng yêu cầu trong điều khiển tự động, ví dụ điều khiển các đối tượng phức tạp Ngoài ra, các bộ điều khiển mờ cho phép lặp lại các tính chất của các bộ điều khiển kinh điển Thiết kế bộ điều khiển mờ cũng rất đa dạng, qua việc tổ chức các nguyên tắc điều khiển và chọn tập mờ cho các biến ngôn ngữ cho phép người
ta thiết kế các bộ điều khiển mờ khác nhau
Ứng dụng logic mờ (Fuzzy logic) đã trở nên ngày càng phổ biến trong cuộc sống của chúng ta, từ các sản phẩm tiêu dùng như máy ảnh, máy giặt, xe hơi tới các sản phẩm công nghiệp như robot, tàu điện ngầm, các dụng cụ y tế,…Không giống như các bộ điều khiển thông thường, điều khiển logic mờ không dựa trên mô hình toán học của hệ thống Thay vào đó, điều khiển logic mờ là một dạng điều khiển tự động để điều khiển một đối
Trang 30tượng sao cho phù hợp với hành vi mong muốn Đối với một hệ thống phức tạp thì việc thành lập các mô hình toán học là vô cùng khó khăn, khi đó việc sử dụng những bộ điều khiển truyền thống là không thể, trong những trường hợp này thì sử dụng bộ điều khiển logic mờ là rất thích hợp và hữu ích
Trang 31Chương 2 – XỬ LÝ ẢNH VÀ ỨNG DỤNG MATLAB TRONG XỬ LÝ ẢNH
2.1 Tổng quan về camera:
* Khái niệm về camera:
Camera là một thiết bị ghi hình có thể ghi lại những hình ảnh trong một khoảng thời gian nào đó và lưu trữ các dữ liệu hình ảnh này
* Phân loại camera:
Có 3 cách phân loại camera: theo công nghệ, theo đường truyền, theo hình dạng
- Phân loại theo công nghệ:
Camera Analog: Ghi hình băng từ xử lý tín hiệu analog, xử lý tín hiệu màu vector màu, loại Camera này hiện nay ít dùng
Camera Analog HD: CVI, TVI, SDI
Camera IP: Camera IP sử dụng dây mạng để truyền tín hiệu, sử dụng giao thức
mạng IP để truyền các gói tin video, hình ảnh Với Camera IP người dùng có thể điều khiển và giám sát ở bất cứ đâu thông qua mạng internet
- Phân loại theo kỹ thuật đường truyền:
Camera có dây: Camera có dây sử dụng đường truyền vật lý (cáp đồng trục, cáp
mạng) truyền tải tín hiệu: âm thanh, hình ảnh đến đầu ghi hình, đến điểm cuối cần quan sát, đảm bảo tín hiệu an toàn và tính bảo mật tốt
Camera không dây: Camera này sử dụng công nghệ camera IP bắt sóng Wi-Fi hay sóng vô tuyến RF để truyền tín hiệu giao động tần số từ 1,2 – 2,4 MHz để truyền tải
dữ liệu Tuy nhiên, vẫn phải cấp nguồn điện tại chỗ để chúng hoạt động Các loại camera không dây hay camera ip wifi có ưu điểm đó là dễ thi công lắp đặt do không cần
đi dây, lắp đặt ở những vị trí không thể đi dây được Việc sử dụng camera không
dây được đánh giá là không ổn định vì phụ thuộc vào sóng Wi-Fi cũng như không an
toàn dễ bị bắt sóng hoặc bị ảnh hưởng nhiễu trước các nguồn sóng khác như điện thoại
di động
Đối với khoảng cách xa hàng ngàn mét chúng ta cần phải sử dụng những thiết bị đặc biệt hoạt động ở tần số cao để tăng tín hiệu phát sóng hay gọi là Repeater Wi-Fi có giá thành cao
- Phân loại theo hình dáng:
Hình cầu - Camera Dome: Camera được thiết kế có kiểu dáng bán cầu nhỏ, gọn
phù hợp với môi trường trong nhà, văn phòng, Thiết kế kiểu dáng rất trang nhã với góc nhìn cố định lắp đặt ốp trần hoặc trên tường nhà
Hình thân trụ - Camera Box: Camera thân có nhiều hình dạng và kích thước khác
nhau, được thiết kế có khả năng tương tác với môi trường, do đó camera này thương được lắp đặt ngoài trời, hành lang, kho xưởng,…
Trang 32Hình chữ nhật - Bullets Camera: Đây là loại Camera truyền thống thường được dùng trong các văn phòng siêu thị Đây là loại Camera giá thành rẻ tuy nhiên thời điểm này ít dùng Camera được bảo vệ trong hộp để bảo vệ trước tác động phá hoại hay điều kiện môi trường
Camera Speed Dome PTZ: Hơn nữa Camera có thể được lập trình để hoạt động,
nên nó có thể làm tất cả các công việc cho bạn
Camera Mini - Ngụy trang: Thiết kế nhỏ gọn có khả năng che dấu được không bị phát hiện mà vẫn hoạt động bình thường
2.2 Xử lý ảnh:
2.2.1 Tổng quan về xử lý ảnh:
Xử lý ảnh (XLA) là đối tượng nghiên cứu của lĩnh vực thị giác máy, là quá trình biến đổi từ một ảnh ban đầu sang một ảnh mới với các đặc tính và tuân theo ý muốn của người sử dụng Xử lý ảnh có thể gồm quá trình phân tích, phân lớp các đối tượng, làm tăng chất lượng, phân đoạn và tách cạnh, gán nhãn cho vùng hay quá trình biên dịch các thông tin hình ảnh của ảnh
Cũng như xử lý dữ liệu bằng đồ hoạ, xử lý ảnh số là một lĩnh vực của tin học ứng dụng Xử lý dữ liệu bằng đồ họa đề cập đến những ảnh nhân tạo, các ảnh này được xem xét như là một cấu trúc dữ liệu và được tạo bởi các chương trình Xử lý ảnh số bao gồm các phương pháp và kỹ thuật biến đổi, để truyền tải hoặc mã hoá các ảnh tự nhiên Mục đích của xử lý ảnh gồm:
- Biến đổi ảnh làm tăng chất lượng ảnh
- Tự động nhận dạng ảnh, đoán nhận ảnh, đánh giá các nội dung của ảnh
Nhận biết và đánh giá các nội dung của ảnh là sự phân tích một hình ảnh thành những phần có ý nghĩa để phân biệt đối tượng này với đối tượng khác, dựa vào đó ta có thể mô tả cấu trúc của hình ảnh ban đầu Có thể liệt kê một số phương pháp nhận dạng
cơ bản như nhận dạng ảnh của các đối tượng trên ảnh, tách cạnh, phân đoạn hình ảnh,…
2.2.2 Các quá trình xử lý ảnh:
Hình 2.1 Các quá trình xử lý ảnh
Thu nhận ảnh: Đây là công đoạn đầu tiên mang tính quyết định đối với quá trình XLA Ảnh đầu vào sẽ được thu nhận qua các thiết bị như camera, sensor, máy scanner,v.v… và sau đó các tín hiệu này sẽ được số hóa Việc lựa chọn các thiết bị thu nhận ảnh sẽ phụ thuộc vào đặc tính của các đối tượng cần xử lý Các thông số quan trọng
Trang 33ở bước này là độ phân giải, chất lượng màu, dung lượng bộ nhớ và tốc độ thu nhận ảnh của các thiết bị
Tiền xử lý: Ở bước này, ảnh sẽ được cải thiện về độ tương phản, khử nhiễu, khử bóng, khử độ lệch,v.v… với mục đích làm cho chất lượng ảnh trở lên tốt hơn nữa, chuẩn
bị cho các bước xử lý phức tạp hơn về sau trong quá trình XLA Quá trình này thường được thực hiện bởi các bộ lọc
Phân đoạn ảnh: phân đoạn ảnh là bước then chốt trong XLA Giai đoạn này phân tích ảnh thành những thành phần có cùng tính chất nào đó dựa theo biên hay các vùng liên thông Tiêu chuẩn để xác định các vùng liên thông có thể là cùng màu, cùng mức xám v.v… Mục đích của phân đoạn ảnh là để có một miêu tả tổng hợp về nhiều phần tử khác nhau cấu tạo lên ảnh thô Vì lượng thông tin chứa trong ảnh rất lớn, trong khi đa
số các ứng dụng chúng ta chỉ cần trích một vài đặc trưng nào đó, do vậy cần có một quá trình để giảm lượng thông tin khổng lồ đó Quá trình này bao gồm phân vùng ảnh và trích chọn đặc tính chủ yếu
Tách các đặc tính: Kết quả của bước phân đoạn ảnh thường được cho dưới dạng
dữ liệu điểm ảnh thô, trong đó hàm chứa biên của một vùng ảnh, hoặc tập hợp tất cả các điểm ảnh thuộc về chính vùng ảnh đó Trong cả hai trường hợp, sự chuyển đổi dữ liệu thô này thành một dạng thích hợp hơn cho việc xử lý trong máy tính là rất cần thiết Để chuyển đổi chúng, câu hỏi đầu tiên cần phải trả lời là nên biểu diễn một vùng ảnh dưới dạng biên hay dưới dạng một vùng hoàn chỉnh gồm tất cả những điểm ảnh thuộc về nó Biểu diễn dạng biên cho một vùng phù hợp với những ứng dụng chỉ quan tâm chủ yếu đến các đặc trưng hình dạng bên ngoài của đối tượng, ví dụ như các góc cạnh và điểm uốn trên biên chẳng hạn Biểu diễn dạng vùng lại thích hợp cho những ứng dụng khai thác các tính chất bên trong của đối tượng, ví dụ như vân ảnh hoặc cấu trúc xương của
nó Sự chọn lựa cách biểu diễn thích hợp cho một vùng ảnh chỉ mới là một phần trong việc chuyển đổi dữ liệu ảnh thô sang một dạng thích hợp hơn cho các xử lý về sau Chúng ta còn phải đưa ra một phương pháp mô tả dữ liệu đã được chuyển đổi đó sao cho những tính chất cần quan tâm đến sẽ được làm nổi bật lên, thuận tiện cho việc xử
lý chúng
Nhận dạng và giải thích: Đây là bước cuối cùng trong quá trình XLA Nhận dạng ảnh có thể được nhìn nhận một cách đơn giản là việc gán nhãn cho các đối tượng trong ảnh Ví dụ đối với nhận dạng chữ viết, các đối tượng trong ảnh cần nhận dạng là các mẫu chữ, ta cần tách riêng các mẫu chữ đó ra và tìm cách gán đúng các ký tự của bảng chữ cái tương ứng cho các mẫu chữ thu được trong ảnh Giải thích là công đoạn gán nghĩa cho một tập các đối tượng đã được nhận biết
Chúng ta cũng có thể thấy rằng, không phải bất kỳ một ứng dụng XLA nào cũng bắt buộc phải tuân theo tất cả các bước xử lý đã nêu ở trên, ví dụ như các ứng dụng chỉnh sửa ảnh nghệ thuật chỉ dừng lại ở bước tiền xử lý Một cách tổng quát thì những
Trang 34chức năng xử lý bao gồm cả nhận dạng và giải thích thường chỉ có mặt trong hệ thống phân tích ảnh tự động hoặc bán tự động, được dùng để rút trích ra những thông tin quan trọng từ ảnh, ví dụ như các ứng dụng nhận dạng ký tự quang học, nhận dạng chữ viết tay v.v…
2.2.3 Ảnh và biểu diễn ảnh:
Ảnh trong thực tế là một ảnh liên tục cả về không gian và giá trị độ sáng Để có thể xử lý ảnh bằng máy tính thì cần thiết phải tiến hành số hóa ảnh Quá trình số hóa biến đổi các tín hiệu liên tục sang tín hiệu rời rạc thông qua quá trình lấy mẫu (rời rạc hóa về không gian) và lượng tử hóa các thành phần giá trị mà về nguyên tắc bằng mắt thường không thể phân biệt được hai điểm liền kề nhau Các điểm như vậy được gọi là các pixel (Picture Element) hay các phần tử ảnh hoặc điểm ảnh Ở đây cần phân biệt khái niệm pixel hay đề cập đến trong các hệ thống đồ họa máy tính Để tránh nhầm lẫn
ta gọi khái niệm pixel này là pixel thiết bị Khái niệm pixel thiết bị có thể xém xét như sau: khi ta quan sát màn hình (trong chế độ đồ họa), màn hình không liên tục mà gồm các điểm nhỏ, gọi là pixel Mỗi pixel gồm một tập tọa độ (x, y) và màu Như vậy mỗi ảnh là tập hợp các điểm ảnh Khi được số hóa nó thường được biểu diễn bởi mảng
2 chiều I(n,p): n là dòng và p là cột
Ảnh có thể được biểu diễn theo một trong hai mô hình: mô hình Vector hoặc mô hình Raster
Mô hình Vector: Ngoài mục đích tiết kiệm không gian lưu trữ, dễ dàng hiển thị
và in ấn, các ảnh biểu diễn theo mô hình vector còn có ưu điểm cho phép dễ dàng lựa chọn, sao chép, di chuyển, tìm kiếm…Theo những yêu cầu này thì kỹ thuật biểu diễn vector tỏ ra ưu việt hơn Trong mô hình này, người ta sử dụng hướng vector của các điểm ảnh lân cận để mã hóa và tái tạo lại hình ảnh ban đầu Các ảnh vector được thu nhận trực tiếp từ các thiết bị số hóa như Digitalize hoặc được chuyển đổi từ các ảnh Raster thông qua các chương trình vector hóa
Mô hình Raster: là mô hình biểu diễn ảnh thông dụng nhất hiện nay Ảnh được biểu diễn dưới dạng ma trận các điểm ảnh Tùy theo nhu cầu thực tế mà mỗi điểm ảnh
có thể được biểu diễn bởi một hay nhiều bit Mô hình Raster thuận lợi cho việc thu nhận, hiển thị và in ấn
2.2.4 Các loại tệp cơ bản trong xử lý ảnh:
Ảnh thu đựơc sau quá trình số hoá có nhiều loại khác nhau phụ thuộc vào kỹ thuật số hoá ảnh và các ảnh thu nhận được có thể lưu trữ trên tệp để dùng cho việc xử
lý các bước tiếp theo Có một số loại tệp cơ bản và thông dụng nhất hiện nay như là:
Trang 35* Ảnh được định chỉ số (Indexed Images):
- Một ảnh chỉ số bao gồm một ma trận dữ liệu X và ma trận bản đồ màu map Ma trận dữ liệu có thể có kiểu thuộc lớp uint8, uint16 hoặc kiểu double Ma trận bản đồ màu
là một mảng mx3 kiểu double bao gồm các giá trị dấu phẩy động nằm giữa 0 và 1 Mỗi hàng của bản đồ chỉ ra các giá trị mà: red, green và blue của một màu đơn Một ảnh chỉ
số sử dụng ánh xạ trực tiếp giữa giá trị của pixel ảnh tới giá trị trong bản đồ màu Màu sắc của mỗi pixel ảnh được tính toán bằng cách sử dụng giá trị tương ứng của X ánh xạ tới một giá trị chỉ số của map Giá trị 1 chỉ ra hàng đầu tiên, giá trị 2 chỉ ra hàng thứ hai trong bản đồ màu …
- Một bản đồ màu thường được chứa cùng với ảnh chỉ số và được tự động nạp
cùng với ảnh khi sử dụng hàm imread để đọc ảnh Tuy nhiên, ta không bị giới hạn khi
sử dụng bản đồ màu mặc định, ta có thể sử dụng mất kì bản đồ màu nào Hình sau đây minh hoạ cấu trúc của một ảnh chỉ số Các pixel trong ảnh được đại diện bởi một số nguyên ánh xạ tới một giá trị tương ứng trong bản đồ màu
Lớp và độ lệch của bản đồ màu (Colormap Offsets):
- Quan hệ giữa giá trị trong ma trận ảnh và giá trị trong bản đồ màu phụ thuộc vào kiểu giá trị của các phần tử ma trận ảnh Nếu các phần tử ma trận ảnh thuộc kiểu double , giá trị 1 sẽ tương ứng với giá trị trong hàng thứ nhất của bản đồ màu , giá trị 2
sẽ tương ứng với giá trị trong hàng thứ 2 của bản đồ màu … Nếu các phần tử của ma trận ảnh thuộc kiểu uint8 hay uint16 sẽ có một độ lệch (offset) – giá trị 0 trong ma trận ảnh sẽ tương ứng với giá trị trong hàng đầu tiên của bản đồ màu , giá trị 1 sẽ tương ứng với giá trị trong hàng thứ 2 của bản đồ màu …
- Độ lệch cũng được sử dụng trong việc định dạng file ảnh đồ hoạ để tăng tối đa
số lượng màu sắc có thể được trợ giúp
Giới hạn trong việc trợ giúp ảnh thuộc lớp unit16:
- Toolbox xử lý ảnh của Matlab trợ giúp có giới hạn ảnh chỉ số thuộc lớp uint16
Ta có thể đọc những ảnh đó và hiển thị chúng trong Matlab nhưng trước khi xử lý chúng,
ta phải chuyển đổi chúng sang kiểu uint8 hoặc double Để chuyển đổi (convert) tới kiểu
double ta dùng hàm im2double Để giảm số lượng màu của ảnh xuống 256 màu (uint8)
sử dụng hàm imapprox
Trang 36* Ảnh cường độ (Intensity Images):
- Một ảnh cường độ là một ma trận dữ liệu ảnh I mà giá trị của nó đại diện cho cường độ trong một số vùng nào đó của ảnh Matlab chứa một ảnh cường độ như một
ma trận dơn, với mỗi phần tử của ma trận tương ứng với một pixel của ảnh Ma trận có thể thuộc lớp double, uint8 hay uint16 Trong khi ảnh cường độ hiếm khi được lưu với bản đồ màu, Matlab sử dụng bản đồ màu để hiển thị chúng
- Những phần tử trong ma trận cường độ đại diện cho các cường độ khác nhau hoặc độ xám Những điểm có cường độ bằng 0 thường được đại diện bằng màu đen và cường độ 1,255 hoặc 65535 thường đại diện cho cường độ cao nhất hay màu trắng
*Ảnh nhị phân (Binary Images):
- Trong một ảnh nhị phân, mỗi pixel chỉ có thể chứa một trong hai giá trị nhị phân
0 hoặc 1 Hai giá trị này tương ứng với bật hoặ tắt (on hoặc off) Một ảnh nhị phân được lưu trữ như một mảng lôgíc của 0 và 1
* Ảnh RGB (RGB Images):
- Một ảnh RGB - thường được gọi là true-color, được lưu trữ trong Matlab dưới
dạng một mảng dữ liệu có kích thước 3 chiều mxnx3 định nghĩa các giá trị màu red, green và blue cho mỗi pixel riêng biệt Ảnh RGB không sử dụng palette Màu của mỗi pixel được quyết định bởi sự kết hợp giữa các giá trị R, G, B (Red, Green, Blue) được lưu trữ trong một mặt phẳng màu tại vị trí của pixel Định dạng file đồ hoạ lưu trữ ảnh RGB giống như một ảnh 24 bít trong đó R, G, B chiếm tương ứng 8 bít một Điều này cho phép nhận được 16 triệu màu khác nhau
- Một mảng RGB có thể thuộc lớp double, uint8 hoặc uint16 Trong một mảng RGB thuộc lớp double, mỗi thành phần màu có giá trị giữa 0 và 1 Một pixel mà thành phần màu của nó là (0, 0, 0) được hiển thị với màu đen và một pixel mà thành phần màu
là (1, 1, 1) được hiển thị với màu trắng Ba thành phần màu của mỗi pixel được lưu trữ cùng với chiều thứ 3 của mảng dữ liệu Chẳng hạn, giá trị màu R,G,B của pixel (10,5) được lưu trữ trong RGB(10,5,1), RGB(10,5,2) và RGB(10,5,3) tương ứng
- Để tính toán màu sắc của pixel tại hàng 2 và cột 3 chẳng hạn, ta nhìn vào bộ ba giá trị được lưu trữ trong (2, 3, 1:3) Giả sử (2,3,1) chứa giá trị 0.5176 ; (2,3,2) chứa giá trị 0.1608 và (2,3,3) chứa giá trị 0.0627 thì màu sắc của pixel tại (2,3) sẽ là (0.5176, 0.1608, 0.0627)
Các mặt phẳng màu riêng rẽ của một ảnh RGB:
- Chú ý rằng mỗi mặt phẳng màu riêng rẽ chứa một khoẳng trắng Khoảng trắng tương ứng với giá trị cao nhất của mỗi màu riêng rẽ Chẳng hạn trong ảnh mặt phẳng R, vùng trắng đại diện cho sự tập trung cao nhất của màu đỏ thuần khiết Nếu R được trộn với G hoặc B ta sẽ có màu xám Vùng màu đen trong ảnh chỉ ra giá trị của pixel mà không chứa màu đỏ R=0 Tương tự cho các mặt phẳng màu G và B
Trang 37* Mảng ảnh nhiều khung hình (Multiframe Image Arrays):
- Với một vài ứng dụng, ta có thể cần làm việc với một tập hợp các ảnh quan hệ
với thời gian hoặc khung nhìn như MRI hay khung hình phim
- Toolbox xử lý ảnh trong Matlab cung cấp sự trợ giúp cho việc lưu trữ nhiều ảnh trong cùng một mảng Mỗi ảnh được gọi là một khung hình (Frame) Nếu một mảng giữ nhiều frame, chúng được nối theo 4 chiều Chẳng hạn, một mảng với năm ảnh có kích thước 400x300 sẽ là một mảng có kích thước 400x300x3x5 Một ảnh chỉ số hoặc ảnh cường độ nhiều khung tương tự sẽ là 400x300x1x5
- Sử dụng lệnh cat để chứa các ảnh riêng rẽ trong một mảng nhiều khung hình
Chẳng hạn, nếu ta có một nhóm các ảnh A1, A2, A3, A4 và A5, ta có thể chứa chúng trong một mảng duy nhất sử dụng
- Ta cũng có thể trích các khung hình từ một ảnh nhiều khung hình
- Ghi nhớ rằng, trong một mảng ảnh nhiều khung hình, mỗi ảnh phải có cùng kích thước và có cùng số mặt phẳng Trong một ảnh chỉ số nhiều khung, mỗi ảnh phải sử dụng cùng một bản đồ màu
Sự trợ giúp giới hạn với ảnh nhiều khung:
- Nhiều hàm trong toolbox hoạt động chỉ trên 2 hoặc 3 chiều đầu tiên Ta có thể
sử dụng chiều thứ 4 với những hàm này nhưng ta phải xử lý mỗi khung hình một cách
độc lập
- Nếu ta truyền một mảng vào hàm và mảng có nhiều chiều hơn số chiều mà hàm
đã được thiết kế để hoạt động, kết quả có thể không đoán trước được Trong một số trường hợp, hàm đơn giản chỉ xử lý khung hình đầu tiên nhưng trong các trường hợp khác, sự hoạt động không tạo ra kết quả nào có ý nghĩa
2.3.1.2 Các thao tác ảnh cơ bản trong Toolbox:
* Các hàm chuyển đổi kiểu ảnh:
- Với các thao tác nhất định, sẽ thật hữu ích khi có thể chuyển đổi ảnh từ dạng
này sang dạng khác Chẳng hạn, nếu ta muốn lọc một màu ảnh được lưu trữ dưới dạng ảnh chỉ số, đầu tiên, ta nên chuyển đổi nó thành dạng ảnh RGB Khi ta áp dụng phép lọc tới ảnh RGB, Matlab sẽ lọc giá trị cường độ trong ảnh tương ứng Nếu ta cố gắng lọc ảnh chỉ số, Matlab đơn giản chỉ áp đặt phép lọc tới ma trận ảnh chỉ số và kết quả sẽ không có ý nghĩa
Chú ý: Khi convert một ảnh từ dạng này sang dạng khác, ảnh kết quả có thể khác
ảnh ban đầu Chẳng hạn, nếu ta convert một ảnh màu chỉ số sang một ảnh cường độ, kết quả ta sẽ thu được một ảnh đen trắng
- Danh sách sau đây sẽ liệt kê các hàm được sử dụng trong việc convert ảnh:
+ dither: Tạo một ảnh nhị phân từ một ảnh cường độ đen trắng bằng cách trộn,
tạo một ảnh chỉ số từ một ảnh RGB bằng cách trộng (dither)
+ gray2id: Tạo một ảnh chỉ số từ một ảnh cường độ đen trắng
Trang 38+ grayslice: Tạo một ảnh chỉ số từ một ảnh cường độ đen trắng bằng cách đặt
ngưỡng
+ im2bw: Tạo một ảnh nhị phân từ một ảnh cường độ, ảnh chỉ số hay ảnh RGB
trên cơ sở của ngưỡng ánh sáng
+ ind2gray: Tạo một ảnh cường độ đen trắng từ một ảnh chỉ số
+ ind2rgb: Tạo một ảnh RGB từ một ảnh chỉ số
+ mat2gray: Tạo một ảnh cường độ đen trắng từ dữ liệu trong một ma trận bằng
cách lấy tỉ lệ giữ liệu
+ rgb2gray: Tạo một ảnh cường độ đen trắng từ một ảnh RGB
+ rgb2ind: Tạo một ảnh chỉ số từ một ảnh RGB
- Ta cũng có thể thực hiện các phép chuyển đổi kiểu chỉ sử dụng cú pháp của Matlab Chẳng hạn, ta có thể chuyển đổi một ảnh cường độ sang ảnh RGB bằng cách ghép nối 3 phần sao chép của ma trận ảnh gốc giữa 3 chiều:
RGB = cat(3,I,I,I );
- Ảnh RGB thu được có các ma trận đồng nhất cho các mặt phẳng R, G, B vì vậy ảnh hiển thị giống như bóng xám
- Thêm vào những công cụ chuyển đổi chuẩn đã nói ở trên, cũng có một số hàm
mà trả lại kiểu ảnh khác như một phần trong thao tác mà chúng thực hiện
* Chuyển đổi không gian màu:
- Toolbox xử lý ảnh biểu diễn màu sắc như các giá trị RGB (trực tiếp trong ảnh RGB hoặc gián tiếp trong ảnh chỉ số) Tuy nhiên, có các phương pháp khác cho việc
biểu diễn màu sắc Chẳng hạn, một màu có thể được đại diện bởi các giá trị hue,
saturation và các giá trị thành phần (HSV) Các phương pháp khác cho việc biểu diễn
màu được gọi là không gian màu
- Toolbox cung cấp một tập các thủ tục để chuyển đổi giữa các không gian màu Các hàm xử lý ảnh tự chúng coi dữ liệu màu sắc dưới dạng RGB tuy nhiên, ta có thể xử
lý một ảnh mà sử dụng các không gian màu khác nhau bằng cách chuyển đổi nó sang RGB sau đó chuyển đổi ảnh đã được xử lý trở lại không gian màu ban đầu
Chú ý: Với ảnh chỉ số, imread luôn luôn đọc bản đồ màu vào trong một chuỗi
thuộc lớp double, thậm chí mảng ảnh tự nó thuộc lớp uint8 hay uint16
- Chẳng hạn, đoạn mã sau sẽ đọc một ảnh RGB vào không gian làm việc của Matlab lưu trong biến RGB
Trang 39- Trong ví dụ này, imread sẽ nhận ra định dạng file để sử dụng từ tên file Ta cũng
có thể chỉ ra định dạng file như một tham số trong hàm imread Matlab trợ giúp rất nhiều định dạng đồ hoạ thông dụng chẳng hạn: BMP, GIF, JPEG, PNG, TIFF… Để biết thêm các kiểu gọi hàm và tham số truyền vào, xem trợ giúp online của Matlab
Đọc nhiều ảnh từ một file đồ hoạ:
- Matlab trợ giúp một số định dạng file đồ hoạ chẳng hạn như: HDF và TIFF, chúng chứa nhiều ảnh Theo mặc định, imread chỉ trợ giúp ảnh đầu tiên trong file Để nhập thêm các ảnh từ file, sử dụng cú pháp được trợ giúp bởi định dạng file Chẳng hạn, khi được sử dụng với TIFF, ta có thể sử dụng một giá trị chỉ số với imread để chỉ ra ảnh
mà ta muốn nhập vào Ví dụ sau đây đọc một chuối 27 ảnh từ một file TIFF và lưu
những ảnh anỳ trong một mảng 4 chiều Ta có thể sử dụng hàm iminfo để xem bao nhiêu
ảnh đã được lưu trữ
- Khi file chứa nhiều ảnh theo một số kiểu nhất định chẳng hạn theo thứ tự thời gian, ta có thể lưu ảnh trong Matlab dưới dạng mảng 4 chiều Tất cả các ảnh phải có cùng kích thước
Ghi một ảnh đồ hoạ:
- Hàm imwrite sẽ ghi một ảnh tới một file đồ hoạ dưới một trong các định dạng
được trợ giúp Cấu trúc cơ bản nhất của imwrite sẽ yêu cầu một biến ảnh và tên file Nếu
ta gộp một phần mở rộng trong tên file, Matlab sẽ nhận ra định dạng mong muốn từ nó
Chỉ ra định dạng phụ - Tham số đặc biệt:
- Khi sử dụng imwrite với một số định dạng đồ hoạ, ta có thể chỉ ra các tham số
phụ Chẳng hạn, với định dạng PNG ta có thể chỉ ra độ sâu bít như một tham số phụ
- Để biết thêm các cấu trúc khác của hàm xem phần trợ giúp trực tuyến của Matlab
Đọc và ghi ảnh nhị phân theo định dạng 1 bít:
- Trong một số định dạng file, một ảnh nhị phân có thể được lưu trong một định dạng 1 bít Nếu định dạng file trợ giúp nó, Matlab ghi ảnh nhị phân như ảnh 1 bít theo mặc định Khi ta đọc một ảnh nhị phân với định dạng 1 bít, Matlab đại diện nó trong không gian làm việc như một mảng logic
- Ví dụ sau đọc một ảnh nhị phân và ghi nó dưới dạng file TIFF Bởi vì định dạng TIFF trợ giúp ảnh 1 bít, file được ghi lên đĩa theo định dạng 1 bit:
Trang 40Xem lớp lưu trữ của file :
- Hàm imwrite sử dụng luật sau đây để quyết định lớp lưu trữ được sử dụng trong
ảnh kết quả :
+ logical: Nếu định dạng ảnh ra (Output Image) được chỉ rõ là trợ giúp ảnh 1 bit, hàm imwrite tạo một file ảnh 1 bit Nếu định dạng ảnh ra được chỉ rõ là không trợ giúp ảnh 1 bít (như JPEG), hàm imwrite chuyển ảnh tới một ảnh thuộc lớp uint8
+ uint8: Nếu định dạng ảnh ra được chỉ rõ là trợ giúp ảnh 8 bít, hàm imwrite tạo một ảnh 8 bít
+ uint16: Nếu định dạng ảnh ra được chỉ rõ trợ giúp ảnh 16 bit (PNG hoặc TIFF), hàm imwrite tạo một ảnh 16 bít Nếu định dạng ảnh ra không trợ giúp ảnh 16 bít, hàm chuyển đổi dữ liệu ảnh tới lớp uint8 và tạo một ảnh 8 bít
+ double: Matlab chuyển dữ liệu ảnh tới dạng uint8 và tạo một ảnh 8 bit bởi vì hầu hết các file ảnh sử dụng định dạng 8 bít
Truy vấn một file đồ hoạ :
- Hàm iminfo cho phép ta có thể nhận được thông tin về một file ảnh được trợ
giúp bởi toolbox Thông tin mà ta nhận được phụ thuộc vào kiểu của file nhưng nó luôn bao gồm những thông tin sau :
+ Tên của file ảnh
+ Định dạng file ảnh
+ Số version của định dạng file
+ Ngày sửa đổi file gần nhất
+ Kích thước file tính theo byte
+ Chiều rộng ảnh tính theo pixel
+ Chiều cao ảnh tính theo pixel
+ Số lượng bít trên một pixel
+ Kiểu ảnh: RGB, chỉ số …
* Chuyển đổi định dạng các file ảnh:
- Để thay đổi định dạng đồ hoạ của một ảnh, sử dụng hàm imread để đọc một ảnh
và sau đó lưu nó với hàm imwrite đồng thời chỉ ra định dạng tương ứng
- Để minh hoạ, ví dụ sau đây sử dụng hàm imread để đọc một file BMP vào không gian làm việc Sau đó, hàm imwrite lưu ảnh này dưới định dạng PNG
bitmap = imread('mybitmap.bmp','bmp');
imwrite (bitmap,'mybitmap.png','png');
* Đọc và ghi ảnh DICOM:
- Toolbox xử lý ảnh bao gồm trợ giúp cho việc thao tác với ảnh số (Digital
Imaging) và ảnh y học (Communication in Medicine)