năm gần đây bởi ưu điểm vượt trội của nó so với các cơ cấu truyền thống như cơ cấu gắp cơ khí, cơ cấu hút… Ngoài ra, hệ thống còn được tích hợp thêm camera xử lý ảnh để robot có thể nhận
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA
Người hướng dẫn: TS LÊ HOÀI NAM
Sinh viên thực hiện: NGUYỄN VĂN TẤN
HUỲNH TRÍ LỄ
Đà Nẵng, 2019
Trang 2TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CƠ KHÍ
Độc lập - Tự do - Hạnh phúc
NHẬN XÉT ĐỒ ÁN TỐT NGHIỆP
1 Thông tin chung:
1 Họ và tên sinh viên: Nguyễn Văn Tấn Số thẻ SV: 101140199
Huỳnh Trí Lễ Số thẻ SV: 101140188
2 Lớp: 14CDT2
3 Tên đề tài: Thiết kế và chế tạo robot gắp thức ăn sử dụng xử lý ảnh và tay gắp mềm
4 Người hướng dẫn: Lê Hoài Nam Học hàm/ học vị: Tiến sĩ
II Nhận xét, đánh giá đồ án tốt nghiệp:
1 Về tính cấp thiết, tính mới, khả năng ứng dụng của đề tài: (điểm tối đa là 2đ)
………
IV Đánh giá:
1 Điểm đánh giá: …… /10 (lấy đến 1 số lẻ thập phân)
2 Đề nghị: ☐ Được bảo vệ đồ án ☐ Bổ sung để bảo vệ ☐ Không được bảo vệ
Đà Nẵng, ngày tháng năm 201
Người hướng dẫn DUT.LRCC
Trang 3I Thông tin chung:
1 Họ và tên sinh viên: Nguyễn Văn Tấn Số thẻ SV: 101140199
Huỳnh Trí Lễ Số thẻ SV: 101140188
2 Lớp: 14CDT2
3 Tên đề tài: Thiết kế và chế tạo robot gắp thức ăn sử dụng xử lý ảnh và tay gắp mềm
4 Người phản biện: ……….………… Học hàm/ học vị: …………
II Nhận xét, đánh giá đồ án tốt nghiệp:
tối đa
Điểm đánh giá
1 Sinh viên có phương pháp nghiên cứu phù hợp, giải
1a
- Tính mới (nội dung chính của ĐATN có những phần mới so
với các ĐATN trước đây)
- Đề tài có giá trị khoa học, công nghệ; có thể ứng dụng thực
tiễn
15
1b
- Kỹ năng giải quyết vấn đề; hiểu, vận dụng được kiến thức
cơ bản, cơ sở, chuyên ngành trong vấn đề nghiên cứu
- Chất lượng nội dung ĐATN (thuyết minh, bản vẽ, chương
trình, mô hình,…)
50
1c
- Có kỹ năng vận dụng thành thạo các phần mềm ứng dụng
trong vấn đề nghiên cứu;
- Có kỹ năng đọc, hiểu tài liệu bằng tiếng nước ngoài ứng
dụng trong vấn đề nghiên cứu;
- Có kỹ năng làm việc nhóm;
15
2a - Bố cục hợp lý, lập luận rõ ràng, chặt chẽ, lời văn súc tích 15
2b - Thuyết minh đồ án không có lỗi chính tả, in ấn, định dạng 5
DUT.LRCC
Trang 4Quy về thang 10 (lấy đến 1 số lẻ)
- Các tồn tại, thiếu sót cần bổ sung, chỉnh sửa: ………
………
- Câu hỏi đề nghị sinh viên trả lời trong buổi bảo vệ: ………
………
- Đề nghị: ☐ Được bảo vệ đồ án ☐ Bổ sung để bảo vệ ☐ Không được bảo vệ
Đà Nẵng, ngày tháng năm 201…
Người phản biện
DUT.LRCC
Trang 5Tên đề tài: Thiết kế và chế tạo robot gắp thức ăn sử dụng xử lý ảnh và tay gắp mềm Sinh viên thực hiện: Nguyễn Văn Tấn Số thẻ SV: 101140199
Lớp: 14CDT2
Giảng viên hướng dẫn: TS Lê Hoài Nam
Giảng viên duyệt: TS Võ Như Thành
độ xử lý ảnh tĩnh
DUT.LRCC
Trang 6TRƯỜNG ĐẠI HỌC BÁCH KHOA
Thiết kế và chế tạo robot gắp thức ăn sử dụng xử lý ảnh và tay gắp mềm
2 Đề tài thuộc diện: ☒ Có ký kết thỏa thuận sở hữu trí tuệ đối với kết quả thực hiện
3 Các số liệu và dữ liệu ban đầu:
Các số liệu yêu cầu về phạm vi hoạt động, tốc độ, chu kỳ của robot theo yêu cầu của công ty Maruyasu Kikai
Kích thước thông số các bộ phận công ty Maruyasu Kikai cung cấp
Các vật liệu: Nhôm định hình, inox, thép
4 Nội dung các phần thuyết minh và tính toán:
5 Các bản vẽ, đồ thị ( ghi rõ các loại và kích thước bản vẽ ):
Bản vẽ sơ đồ đấu nối mạch điện (1A0)
Bản vẽ sơ đồ tổng quát hệ thống (1A0)
Bản vẽ lưu đồ thuật toán lập trình (1A0)
Bản vẽ tổng quát hệ thống (1A0)
Bản vẽ tay gắp và đồ gá tay gắp (1A0)
6 Họ tên người hướng dẫn: TS Lê Hoài Nam
7 Ngày giao nhiệm vụ đồ án: 19/1/2019
8 Ngày hoàn thành đồ án: 30/5/2019
Đà Nẵng, ngày 1 tháng 6 năm 2019
DUT.LRCC
Trang 7Ngày nay, nền kinh tế của nước ta đang trên đà phát triển mạnh mẽ, các ngành công nghiệp ngày càng đòi hỏi trình độ khoa học kỹ thuật cao Nhu cầu của nhà sản xuất cũng như nhà tiêu dùng là tăng không ngừng Đây là cơ hội và cũng là thách thức cho ngành cơ điện tử, với việc ứng dụng các thành tựu nhân loại để phục vụ nhu cầu xã hội Robot là một ứng dụng thiết thực nhất, từ những cỗ máy đơn giản đến phức tạp nhất, nó
có thể góp mặt vào trong mọi lĩnh vực đời sống sản xuất con người
Các robot đã và đang trở thành công cụ lao động thông minh, từng bước thay thế con người trong hoạt động sản xuất Nhờ có robot mà năng suất và chất lượng lao động ngày càng được cải thiện và tiệm cận sự hoàn hảo Trong học phần này, chúng em thực hiện đề tài: Thiết kế và chế tạo robot gắp thức ăn sử dụng xử lý ảnh và tay gắp mềm Với mục tiêu tạo ra một sản phẩm hoạt động linh hoạt và có khả năng ứng dụng thực tế mang lại hiệu quả kinh tế cao Các nhiệm vụ cần thực hiện trong đề tài này bao gồm:
Xác định phương án thiết kế và thiết kế tay gắp
Nghiên cứu và điều khiển robot
Đặc biệt chúng tôi gửi lời cảm ơn chân thành nhất tới thầy giáo – TS Lê Hoài Nam
đã quan tâm giúp đỡ, hướng dẫn hoàn thành tốt đề tài này trong thời gian qua Không thể không nhắc tới sự hổ trợ truyền đạt kinh nghiệm của kỹ sư Hoàng Hữu Vỹ, các thành viên trong nhóm Aiméka và các bạn trong tập thể lớp 14CDT
Tuy nhiên do kiến thức và kinh nghiệm còn nhiều hạn chế nên khó tránh khỏi những thiếu sót Chúng tôi rất mong nhận được sự thông cảm và đóng góp ý kiến của các thầy và các bạn sinh viên để đồ án của chúng tôi được hoàn chỉnh hơn Xin chân thành cảm ơn
Đà Nẵng, ngày 30 tháng 11 năm 2018 Người thực hiện đề tài: Nguyễn Văn Tấn
Huỳnh Trí Lễ DUT.LRCC
Trang 8ii
Chúng tôi xin cam đoan số liệu và kết quả nghiên cứu trong đồ án này là trung thực và chưa hề được sử dụng để bảo vệ đồ án hoặc học vị nào khác Mọi sự giúp đỡ cho việc thực hiện đồ án này đã được cảm ơn và các thông tin trích dẫn trong đồ án đã được chỉ rõ nguồn gốc và được phép công bố
Sinh viên thực hiện
Nguyễn Văn Tấn
Huỳnh Trí Lễ
DUT.LRCC
Trang 9Tóm tắt
Nhiệm vụ đồ án
Lời nói đầu và cảm ơn i
Lời cam đoan liêm chính học thuật ii
Mục lục iii
Danh sách các bảng biểu, hình vẽ và sơ đồ v
Danh sách các cụm từ viết tắt vii
Trang Chương 1: TỔNG QUAN 1
1.1 Đặt vấn đề 1
1.2 Bài toán đặt ra 1
Chương 2: HỆ THỐNG ROBOT GẮP THỨC ĂN 3
2.1 Mô hình hóa hệ thống 3
2.1.1 Tổng quan 3
2.1.2 Sơ đồ khối hệ thống 4
2.1.3 Hệ thống thực tế 5
2.2 Quy trình xử lý ảnh 5
2.2.1 Tổng quan về xử lý ảnh 5
2.2.2 Nội dung quy trình xử lý ảnh 6
2.3 Cơ cấu chấp hành 7
Chương 3: QUÁ TRÌNH XỬ LÝ ẢNH 9
3.1 Các khái niệm liên quan đến xử lý ảnh 9
3.1.1 Điểm ảnh 9
3.1.2 Độ phân giải ảnh 9
3.1.3 Mức xám của ảnh 9
3.1.4 Cấu trúc lưu dữ liệu 9
3.2 Các thành phần của hệ thống xử lý ảnh 10
3.2.1 Thiết bị phần cứng: camera xử lý ảnh 10
DUT.LRCC
Trang 10iv
3.2.3 Trình soạn thảo Geany 17
3.3 Quy trình xử lý ảnh 19
Chương 4: HỆ THỐNG TRUYỀN ĐỘNG 22
4.1 Cơ cấu truyền động 22
4.2 Bộ điều khiển công suất 23
4.2.1 Cấu trúc và kết nối 23
4.2.2 Phần mềm PC Interface Software for RCEC 25
4.3 Bộ điều khiển trung tâm PLC và module CC-Link 27
4.3.1 Bộ điều khiển lập trình PLC 27
4.3.2 Module CC-Link FX3U-16CCL-M 30
4.4 Lập trình điểu khiển hệ thống truyền động 34
Chương 5: TAY GẮP MỀM 41
5.1 Lựa chọn phương án 41
5.2 Giới thiệu chung về tay gắp mềm 41
5.3 Nguyên lý hoạt động 42
5.4 Thiết kế 43
5.4.1 Các thông số hình học 43
5.4.2 Vật liệu 45
5.5 Mô phỏng 45
5.6 Chế tạo 47
5.6.1 Chuẩn bị 47
5.6.2 Quá trình đúc 48
5.7 Thực nghiệm 49
5.8 Các phiên bản 50
5.9 Điều khiển tay gắp mềm 51
KẾT LUẬN 53
TÀI LIỆU THAM KHẢO 54
DUT.LRCC
Trang 11PHỤ LỤC 2 PHỤ LỤC 3
DUT.LRCC
Trang 12vi
Trang
Hình 1.1 Mô tả công việc cánh tay robot cần thực hiện……….2
Hình 2.1 Sơ đồ tổng quan của hệ thống………3
Hình 2.2 Sơ đồ khối hệ thống……….……….4
Hình 2.3 Hệ thống thực tế……….5
Hình 2.4 Các giai đoạn chính trong quá trình xử lý ảnh………6
Hình 2.5 Sơ đồ động của hệ thống………7
Hình 3.1 Camera Logitech HDc720HD……….10
Hình 3.2 Máy tính Raspberry Pi……….11
Hình 3.3 Raspberry Pi và các thiết bị ngoại vi………11
Hình 3.4 Cấu trúc Raspberry Pi model B+……….12
Hình 3.5 Kiểm tra IP của RPi ……….14
Hình 3.6 Giao diện Putty dùng để kết nối tới RPi……… 14
Hình 3.7 Các chân GPIO thực tế……….15
Hình 3.8 Sơ đồ chân GPIO của RPi model 3B+……….15
Hình 3.9 Các trình soạn thảo được dùng trên RPi……… 17
Hình 3.10 Giao diện trình soạn thảo Geany………18
Hình 3.11 Lưu đồ thuật toán lập trình xử lí ảnh……… 19
Bảng 4.1 So sánh giữa PLC và Rơ-le……….27
Bảng 4.2 So sánh các phương pháp truyền dữ liệu của CC-Link……… 31
Bảng 4.3 Tọa độ các vị trí của cơ cấu chấp hành cuối……….38
Hình 4.1 Cấu tạo cơ cấu truyền động……… 22
Hình 4.2 Mode Number của cơ cấu truyền động………22
Hình 4.3 Cấu trúc PCON-CB……….23
Hình 4.4 Sơ đồ đấu nối các thiết bị cơ bản……… 24
Hình 4.5 Trường hợp không sử dụng EMG- (dừng khẩn cấp) ……… 24
Hình 4.6 Trường hợp có sử dụng EMG- (dừng khẩn cấp) ……… 25
Hình 4.7 Tự động kết nối khi khởi động ………25
Hình 4.8 Chọn chế độ hoạt động………25
Hình 4.9 Thiết lập Parameter cho cơ cấu truyền động………26
DUT.LRCC
Trang 13Hình 4.11 PLC Mitsubishi FX3G-60M……… 28
Hình 4.12 Cấu trúc bộ điều khiển lập trình PLC……….28
Hình 4.13 Hoạt động của PLC………29
Hình 4.14 Module CC-Link FX3U-16CCL-M……… 30
Hình 4.15 Tối ưu hệ thống với CC-Link……….31
Hình 4.16 Liên kết dữ kiệu giữa các trạm trong hệ thống CC-Link………32
Hình 4.17 Kiểu nối dây CC-Link……… 33
Hình 4.18 Minh họa quá trình truyền dữ liệu……… …34
Hình 4.19 Các thanh ghi được cấp phát……… 35
Hình 4.20 Vị trí địa chỉ các thanh ghi……….…35
Hình 4.21 Hai cấu trúc đọc và ghi từ Buffer Memory……….36
Hình 4.22 Khối khởi động PLC……… 37
Hình 4.23 Khối nạp vị trí PCx………37
Hình 4.24 Khối về “Home” ……… 37
Hình 4.25 Khối bật tắt bit CSTR………37
Hình 4.26 Khối đọc giá trị các thanh ghi……….37
Hình 4.27 Lưu đồ thuật toán lập trình PLC chương trình cơ bản……….39
Hình 4.28 Lưu đồ thuật toán lập trình PLC kết hợp xử lí ảnh……… 40
Bảng 5.1 Các thông số hình học của ngón tay mềm………43
Hình 5.1 Mẫu tay gắp mềm đầu tiên của Suzumori……… 42
Hình 5.2 Cấu tạo của hệ thống các khoang nước bên trong sao biển……… 43
Hình 5.3 Nguyên lý hoạt động của tay gắp mềm………43
Hình 5.4 Các thông số thiết kế phần khoang khí của một ngón tay riêng lẻ……….44
Hình 5.5 Các thông số thiết kế phần đế của một ngón tay riêng lẻ……… 44
Hình 5.5 Kết quả mô phỏng FEA của một ngón tay và tay gắp mềm……….46
Hình 5.6 Mô phỏng ngón tay dưới tác dụng của 20kPa và -20kPa……… 47
Hình 5.7 Khuôn đúc tay gắp mềm……… 47
Hình 5.8 Các vật dụng cơ bản dùng để chế tạo tay gắp mềm……… 48
Hình 5.9 Các bước cơ bản của quá trình đúc tay gắp mềm……… 49
Hình 5.10 Các mẫu tay gắp mềm cùng đồ gá……… 49
Hình 5.11 Thử nghiệm gắp vật……… ….50
Hình 5.12 Các phiên bản tay gắp mềm……… ……50
Hình 5.13 Sơ đồ khối hệ thống khí nén……… ………52
Hình 5.14 Khả năng co, duỗi thực tế của tay gắp………52
DUT.LRCC
Trang 14 CGA – Color Graphic Adaptor
CPU – Central Processing Unit
HSV – Hue, Saturation, Value
I2C – Inter-Integrated Circuit
IP – Internet Protocol
MISO – Master Out Slave Out
MOSI – Master Out Slave In
RAM – Random Access Memory
RCEC – Robo Cylinder
RGB – Red Green Blue
RPi – Raspberry Pi
SDA – Serial Data
SIO – Serial Input/Output
SPI – Service Provider Interface
TXD – Transmit Data
UART – Universal Asynchronous Receiver-Transmitter
USB - Universal Serial Bus
XLA – Xử lý ảnh
DUT.LRCC
Trang 15Chương 1: TỔNG QUAN
1.1 Đặt vấn đề
Hầu hết chúng ta đều biết, con người Nhật Bản có một tính cách rất nổi bật đó là
họ luôn tỉ mĩ, chỉnh chu trong tất cả những việc họ làm và một trong những sản phẩm đặc trưng cho tính cách đó chính là cơm hộp ăn trưa (bento) bởi sự cầu kì, tinh tế và nghệ thuật của nó Cơm hộp được sử dụng rất thường xuyên trong các bữa ăn trưa của người Nhật Những hộp cơm có nhiều màu sắc và được tạo hình đa dạng dưới bàn tay khéo léo của những người nội trợ đảm đang Cơm hộp ban đầu xuất phát từ những hộp cơm trưa mà các bà mẹ chuẩn bị cho con mình mang theo để ăn trên trường Nhưng các
em nhỏ thường rất kén ăn do đó những bà mẹ đã có sáng kiến đó là tạo hình đẹp mắt cho hộp cơm bằng cách tỉa gọt và trang trí các món ăn nhằm kích thích sự tò mò, thích thú và khiến các em ngoài ăn cơm, thịt ra thì còn ăn thêm các loại rau củ nhờ màu sắc hấp dẫn và tạo cảm giác ngon miệng Dần dần về sau, cơm hộp ăn trưa không chỉ là sản phẩm thể hiện tình yêu và sự quan tâm của các bà mẹ đến con cái mình mà đã phát triển lên thành một nét văn hóa riêng, một sản phẩm đặc trưng của người Nhật Bản
Ngày nay, cùng với nhịp sống ngày càng nhanh, nhu cầu tiêu thụ cơm hộp chế biến sẵn cũng tăng theo Đòi hỏi các doanh nghiệp sản xuất phải nâng cao năng suất Điều này đồng nghĩa với việc họ phải cố gắng tự động hóa được hết tất cả các khâu trong quá trình sản xuất cơm hộp Tuy nhiên họ lại gặp một vấn đề đau đầu tại khâu đóng gói thức
ăn vào hộp đó là: Làm thế nào để di chuyển những loại thức ăn cầu kì, đa dạng như vậy vào trong các hộp đựng mà vẫn đảm bảo được tính thẩm mĩ và an toàn vệ sinh? Chính
vì vậy, một công ty của Nhật Bản là Maruyasu Kikai đã đưa ra một yêu cầu và cũng là
đề tài của đồ án này để giải quyết dần vấn đề trên
Thức ăn không bị hư, trầy, biến dạng hoặc rơi rớt trong quá trình gắp
Việc thiết kế tập trung chủ yếu ở phần thiết kế ý tưởng tay gắp với ràng buộc là không được sử dụng hơi để hút trực tiếp thức ăn
Để giải quyết các vấn đề đặt ra ở trên, nhóm tác giả đã quyết định lựa chọn phương
án là Tay gắp mềm (Soft gripper) với vật liệu là silicon để nghiên cứu và chế tạo Đây
DUT.LRCC
Trang 16năm gần đây bởi ưu điểm vượt trội của nó so với các cơ cấu truyền thống như cơ cấu gắp cơ khí, cơ cấu hút… Ngoài ra, hệ thống còn được tích hợp thêm camera xử lý ảnh
để robot có thể nhận biết và gắp thức ăn vào đúng vị trí của từng loại trong hộp Hoạt động của hệ thống theo yêu cầu được mô tả như trong Hình 1.1
Hình 1.1 Mô tả công việc cánh tay robot cần thực hiện
DUT.LRCC
Trang 17Chương 2: HỆ THỐNG ROBOT GẮP THỨC ĂN
2.1 Mô hình hóa hệ thống
2.1.1 Tổng quan
Hình 2.1 Sơ đồ tổng quan của hệ thống
Hệ thống robot gắp thức ăn là tập hợp của nhiều hệ thống thành phần khác như:
Hệ thống cơ khí, hệ thống khí nén, hệ thống điện, hệ thống điều khiển Các hệ thống riêng biệt này được thiết kế để kết nối với nhau nhằm tạo ra một hệ thống hoàn chỉnh, đảm bảo thực hiện tốt nhiệm vụ đặt ra của đề tài
Hệ thống sau khi hoàn chỉnh có thể hoạt động theo 2 chế độ:
Chế độ dạy học: Robot sẽ được dạy học trước với các thông số đầu vào
về vận tốc, gia tốc, vị trí, gắp và thả thức ăn Khi khởi động thì robot sẽ tuân theo đúng những gì đã được dạy mà hoạt động Các hoạt động của robot diễn ra tuần tự và theo một chu kỳ khép kín Vòng lặp ngừng hoạt động khi có tác động dừng của người vận hành
Chế độ xử lý ảnh tĩnh: Robot vẫn hoạt động như chế độ dạy học nhưng
sẽ được bổ sung thêm vào chức năng xử lý ảnh, nhờ đó robot có thể nhận biết được có thức ăn hay không Nếu không có thức ăn thì robot sẽ ở chế độ chờ, liên tục quét các vị trí đến khi có thức ăn thì robot sẽ phân tích thức ăn thuộc loại nào để có thể gắp, thả đến đúng vị trí của loại thức ăn đó
DUT.LRCC
Trang 182.1.2 Sơ đồ khối hệ thống
Hình 2.2 Sơ đồ khối hệ thống
Sơ đồ hệ thống gồm có 4 khối chính:
Khối nguồn
Khối điều khiển
Khối cơ cấu chấp hành
cơ và tay gắp thông qua hệ thống khí nén để thực hiện việc gắp và thả thức ăn đến đúng
vị trí của nó Các số liệu về vị trí, vận tốc và gia tốc của cánh tay robot sẽ được cài đặt trước vào bộ điều khiển bằng phần mềm dạy học trên máy tính Để cho hệ thống hoạt động thì ta cần cấp nguồn 220VAC cho PLC, nguồn 24V cho bộ điều khiển động cơ và nguồn 5V cho Raspberry Pi
DUT.LRCC
Trang 192.1.3 Hệ thống thực tế
Hình 2.3 Hệ thống thực tế 2.2 Quy trình 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, chuyển đổi kiểu ả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ý ả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
Sử dụng nội dung ảnh sau xử lí cho một ứng dụng cụ thể
DUT.LRCC
Trang 202.2.2 Nội dung quy trình xử lý ảnh
Hình 2.4 Các giai đoạn chính trong quá trình xử lý ảnh 2.2.2.1 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 có thể là ảnh màu hoặc ảnh trắng đen sẽ được thu nhận qua các thiết bị như camera, sensor, máy scanner,… 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 ở 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ị Trong đề tài này, chúng tôi sử dụng camera Logitech 720
có độ phân giải 1280x720pi
2.2.2.2 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
2.2.2.3 Phân đoạn
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 nê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
DUT.LRCC
Trang 21Biể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ư 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 dổi dữ liệu ảnh thô sang một dạng thích hợp hơn cho các xử lý về sau
2.2.2.5 Nhận dạng và phân tí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 dán nhãn cho các đối tượng trong ảnh Ví dụ đối với nhận dạng hình dáng sản phẩm, sau xử lý ảnh ta phân loại các đối tượng có trong ảnh thành
ở hình dạng như thế nào và dán cho nó một nhãn nhất định
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ý Tùy theo ngôn ngữ và phần mềm mà người lập trình lựa chọn thì cách tiếp cận với từng công đoạn sẽ có độ khó dễ khác nhau Một cách tổng quát thì những chứ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…
2.3 Cơ cấu chấp hành
Hình 2.5 Sơ đồ động của hệ thống Dựa vào sơ đồ động, ta xác định được hệ thống bao gồm hai cơ cấu chấp hành được điều khiển độc lập với nhau Và hai cơ cấu này hoạt động phụ thuộc lẫn nhau để vận hành toàn bộ hệ thống
Cơ cấu chấp hành thứ nhất là cánh tay robot Đây là robot hai bậc tự do, bao gồm hai trục chính (bao gồm động cơ, trục truyền động, encoder…), hai bộ điều khiển công
DUT.LRCC
Trang 22suất (PCON-CB/CFB), phần mềm điều khiển (PC Interface Software for RCEC) Được điều khiển bởi PLC Mitsubishi thông qua module CC-link
Cơ cấu chấp hành thứ hai là tay gắp Cũng được điều khiển bởi PLC qua hệ thống khí nén, có kết hợp xử lý ảnh được lập trình bằng ngôn ngữ C trên nền soạn thảo Geany,
có áp dụng thư viện thị giác máy tính OpenCV C++ Với đề tài này, tay gắp được thiết
kế để giải quyết nhiều vấn đề khó khăn như: sản phẩm thao tác là thức ăn có hình dạng kích thước không cố định, đảm bảo sản phẩm không bị hư hại trong quá trình vận hành
hệ thống…Do vậy tay gắp này mang nhiều đặc tính riêng như:
Gắp được vật có nhiều hình dạng kích thước khác nhau
Cơ cấu nhẹ, mềm dẻo không gây ảnh hưởng cơ học tới sản phẩm
Hoạt động được ở tốc độ cao và không ảnh hưởng tới kết quả toàn hệ thống
Công nghệ hiện đại, mới mẻ, không sinh phế phẩm và an toàn với môi trường
DUT.LRCC
Trang 23Ví dụ: Độ phân giải của ảnh trên màn hình CGA (Color Graphic Adaptor) là một lưới điểm theo chiều ngang màn hình: 320 điểm chiều dọc * 200 điểm ảnh (320*200)
Rõ ràng, cùng màn hình CGA 12” ta nhận thấy mịn hơn màn hình CGA 17” độ phân giải 320*200 Lý do: cùng một mật độ (độ phân giải) nhưng diện tích màn hình rộng hơn thì độ mịn (liên tục của các điểm) kém hơn
3.1.3 Mức xám của ảnh
Một điểm ảnh (pixel) có 2 đặc trưng cơ bản đó là vị trí (x,y) của điểm ảnh và độ xám của nó Và mức xám của một điểm ảnh là cường độ sáng của nó gắn với một trị số nhất định tại điểm đó Có nhiều thang biểu thị mức xám như 16, 32, 64, 128, 256,… Mức 256 được sử dụng phổ biến (kỹ thuật máy tính dung 1 Byte để biểu diễn mức xám,
có 28 = 256 mức, tức là từ 0 255)
3.1.4 Cấu trúc lưu dữ liệu
Dữ liệu được lưu trữ theo cấu trúc mảng (tập có thự tự gồm các phần tử số thực hoặc phức) Ảnh cũng được lưu trữ bởi các mảng phần tử với các dữ liệu lưu trữ có thể
là màu cường độ của ảnh Hầu hết các ảnh được lưu trữ dưới dạng các mảng 2 chiều (ví dụ: ma trận) Trong các mảng 2 chiều này, mỗi phần tử tương ứng với một pixel và thường được biểu diễn bởi một điểm trên màng hình mày tính (ví dụ: một bức ảnh có
500 hàng và 700 cột gồm nhiều điểm màu khác nhau được lưu trữ bởi một ma trận kích thước 500x700) Một bức ảnh như ảnh màu đòi hỏi phải được lưu trữ bởi mảng ba chiều
DUT.LRCC
Trang 24(red) của phần tử, mặt phẳng thứ hai biểu diễn cho cường độ màu xanh lá cây (green)
và mặt phẳng còn lại biểu diễn cho cường độ màu xanh da trời (blue) của phần tử Với việc lưu trữ các ảnh dưới dạng mảng, việc xử lý ảnh với dữ liệu được lưu bởi dạng ma trận nào được thực hiện rất thuận tiện
Line scan camera, thích hợp cho các ứng dụng cần cả tốc độ cao và chất lượng hình ảnh cao Loại camera này không theo dõi toàn bộ ảnh mà đánh giá ảnh chính xác theo từng dòng Thường được sử dụng trong quá trình kiểm tra chất lượng hàng hóa và quy trình phân loại
Network camera, thường được sử dụng để giám sát với chất lượng hình ảnh vượt trội và hiệu suất mạnh mẽ trong môi trường ánh sáng thấp
Một hệ thống xử lý ảnh tốt cần một camera tốt, đồng thời tùy vào mục đích sử dụng cũng như yêu cầu của ứng dụng mà lựa chọn camera phù hợp Các tiêu chí căn cứ
để lựa chọn một camera cho xử lý ảnh gồm: điện năng tiêu thụ, độ phân giải, loại cảm biến được sử dụng trong máy ảnh, chuẩn giao tiếp, loại Camera đơn sắc hay màu … Trong khuôn khổ đề tài này, nhiệm vụ xử lý ảnh không quá phức tạp nên nhóm tác giả sử dụng Camera Logitech HDc270h Với các thông số kỹ thuật chính như sau:
Độ phân giải 1280 x 720 pixel
Chuẩn giao tiếp USB2.0
Loại Camera màu
Tốc độ khung hình 30 fps
Hình 3.1 Camera Logitech HDc270h DUT.LRCC
Trang 253.2.2 Raspberry Pi
3.2.2.1 Hiểu biết chung về Raspberry Pi
Raspberry Pi (viết tắt là RPi) là một máy vi tính nhỏ, giá rẻ, kích thước nhỏ gọn, tiết kiệm điện năng (nguồn điện cung cấp cho RPi là 5V) RPi được sử dụng như một máy vi tính thông thường khi đã kết nối với một màn hình máy vi tính hoặc màn hình tivi qua cáp HDMI hoặc jack video analog, người dùng tương tác với RPi thông qua bàn phím và chuột
Hình 3.2 Máy tính Raspberry Pi Máy tính RPi khi mới mua về chỉ là một bo mạch, muốn RPi trở thành máy tính thực thụ, ta cần kết nối RPi với các thiết bị ngoại vi như màn hình, bàn phím, chuột,… thông qua các cổng kết nối trên bo mạch và cung cấp nguồn điện 5V 2.5A
DUT.LRCC
Trang 26RPi là một thiết bị nhỏ cho phép mọi người có thể tìm hiểu, khám phá máy tính, lập trình với các ngôn ngữ như Python hoặc C RPi sử dụng hệ điều hành Linux và có thể làm được gần như mọi thứ mà một máy tính thông thường có thể làm
RPi có 3 mẫu chính, đó là: RPi model A, RPi model B và RPi model B+ Về cơ bản, phần lớn cấu trúc của 3 mẫu này giống nhau Tuy nhiên mỗi mẫu lại có một số điểm khác biệt:
RPi model A: RAM chỉ có dung lượng 256MB, chỉ có một cổng USB, không có cổng Ethernet, có 26 chân GPIO
RPi model B: RAM 512MB, có 2 cổng USB, 1 cổng Ethernet và 26 chân GPIO
RPi model B+: Có 4 cổng USB giúp tăng cường khả năng kết nối với các thiết bị ngoại vi, có 40 chân GPIO Ngoài ra, ngõ video và ngõ audio được tích hợp thành một cổng duy nhất Model B+ được phát triễn thành nhiều phiên bản mới nhưng
cơ bản vẫn giữ cấu trúc cơ bản của model B+ như model 2B, model 3B, model 3B+ Trong đề tài này, chúng tôi sử dụng RPi model 3B+ để phục vụ cho quá trình lập trình và vận hành hệ thống Sau đây là cấu trúc của RPi model 3B+
Hình 3.4 Cấu trúc Raspberry Pi model B+
DUT.LRCC
Trang 27RPi model 3B+ là sản phẩm mới nhất, nổi bật với chip 4 nhân 64-bit có tốc độ 1.4GHz Ngoài ra còn hỗ trợ Wifi Dual-band 2.4GHz và 5GHz, Bluetooth, cổng Ethernet tốc độ cao (300Mbps) Thông số kỹ thuật chi tiết của RPi model B+ như sau:
Vi xử lý: Broadcom BCM2837B0, quad-core A53 (ARMv8) 64-bit SoC
Sau khi cài HĐH, dĩ nhiên có thể sử dụng RPi được ngay, nhưng để tối ưu và thuận tiện cho việc sử dụng, ta cần có một vài thiết lập cơ bản bao gồm: Thay đổi mật khẩu; bật tùy chọn khởi động vào giao diện đồ họa; thay đổi múi giờ, ngôn ngữ; bật camera;
ép xung;… Để phục vụ cho đề tài này, chúng ta cần phải cài đặt phần mềm phục vụ cho việc lập trình vận hành hệ thống Đó là OpenCV, là một thư viện mã nguồn mở phục vụ cho việc nghiên cứu và phát triễn về thị giác máy tính Tối ưu hóa và xử lí các ứng dụng trong thời gian thực, giúp cho việc xây dựng các ứng dụng xử lí ảnh, thị giác máy tính,… một cách nhanh hơn
Vì RPi là một máy tính không hoàn chỉnh, muốn vận hành được phải kết nối đầy
đủ các thiết bị cần thiết, đôi khi tạo sự bất tiện khi muốn thao tác với RPi Để có thể thao tác với RPi mọi lúc, mọi nơi mà không cần phải di chuyển RPi, chúng ta có thể sử dụng các phần mềm như Putty hoặc SSH Secure Shekk Client để kết nối và điều khiển RPi,
DUT.LRCC
Trang 28chỉ cần chúng ta biết địa chỉ IP, user và password để kết nối RPi Ở đây, chúng tôi sử dụng phần mềm Putty để kết nối và điều khiển RPi Để biết được địa chỉ IP của RPi, từ cửa sổ dòng lệnh, gõ lệnh “sudo ifconfig”, sau đó nhấn phím “Enter”
Hình 3.5 Kiểm tra IP của RPi Chạy phềm mềm Putty trên máy tính cá nhân, sau đó nhập địa chỉ IP của RPi vào rồi chọn “Open” Tiếp theo nhập “user” và “password” của RPi vào Như vậy, ta có thể thao tác trên RPi mà không cần phải làm việc trực tiếp trên RPi, giúp công việc tiện hợi hơn rất nhiều
Hình 3.6 Giao diện Putty dùng để kết nối tới RPi
DUT.LRCC
Trang 293.2.2.3 Tìm hiểu về các chân GPIO của Raspberry Pi
GPIO là từ viết tắt của General Purposr Input/Output, là các chân trên một header
có thể dùng làm ngõ vào (input pin) hoặc ngõ ra (output pin), phụ thuộc vào cách thiết lập của người lập trình, có thể điều khiển thông qua phần mềm GPIO cho phép các thiết
bị ngoại vi như các cảm biến, các thiết bị điện tử (công tắc, led,…),… kết nối Đây là nơi RPi giao tiếp với thế giới bên ngoài thông qua các thiết bị điện tử, điều khiển được kết nối với các chân GPIO
Hình 3.7 Các chân GPIO thực tế Các mẫu RPi có sơ đồ bố trí các chân GPIO hoàn toàn khác nhau Ở đây, chúng ta chỉ đề cập đến sơ đồ chân GPIO của RPi model 3B+ mà chúng ta sẽ sử dụng, nó được quy định như trong hình 3.7 dưới đây:
Hình 3.8 Sơ đồ chân GPIO của RPi model 3B+
DUT.LRCC
Trang 30Có nhiều cách đánh số, ký hiệu cho các chân GPIO của RPi Ở đây, chúng ta chỉ
đề cập đến hai cách đánh số chính, đó là kiểu BCM và kiểu BOARD
Đánh số theo kiểu BCM là cách ký hiệu các chân theo đúng chức năng của nó Ở hình 3.7, hai cột dọc ngoài cùng hai bên như các ô +3.3V, GPIO2, GPIO3,…
đó là cách đánh số theo kiểu BCM Ở cách đánh số này, chúng ta còn được thấy các ký hiệu như SDA, SCL, MOSI, MISO, SCLK,… đó chính là các chân GPIO có chức năng thay thế Nghĩa là, ngoài chức năng ngõ ra, ngõ vào thì các chân này còn dùng để thực hiện các chức năng khác Đó là giao thức I2C (SCL, SDA, GPCLK0), giao thức SPI (MOSI, MISO, SCLK, CE0, CE1), giao thức UART (TXD, RXD)
Đánh số theo kiểu BOARD là cách đánh số các chân GPIO dựa trên vị trí của các chân trên header Trên header, các chân GPIO được chia làm hai hàng, mỗi hành
có 20 chân Trên hình 3.7, hai cột có các vòng tròn được đánh số từ 1 đến 40 chính là cách đánh số theo kiểu BOARD
Chúng ta cần hiểu các quy tắc đánh số, ký hiệu các chân này để có thể lập trình và điều khiển chính xác các chân GPIO đúng với yêu cầu sử dụng RPi 3B+ GPIO gồm có:
2 chân có mức điện áp 3.3V ( chân 3.3V hoặc chân số 1, 17)
2 chân có mức điện áp 5V (chân 5V hoặc chân số 2, 4)
8 chân có mức điện áp 0V (chân GND hoặc chân số 6, 9, 14, 20, 25, 30,
34, 39)
28 chân GPIO (các chân còn lại) Trong đó có 15 chân GPIO thường (chân
số 11, 12, 13, 15, 16, 22, 29, 31, 32, 33, 35, 36, 37, 38, 40), 13 chân còn lại có chức năng thay thế
Các chân GPIO chịu mức điện áp tối thiểu là 3V, tối đa là 5V Nếu mức điện áp nằm ngoài giới hạn này có thể sẽ làm mạch hỏng Vì vậy, chúng ta nên sử dụng một mạch mở rộng hoặc mạch chuyển đổi điện áp để kết nối với các thiết bị ngoại vi, không nên kết nối trực tiếp các thiết bị, linh kiện điện tử vào GPIO trên RPi
Và tất nhiên để có thể sử dụng được các chân GPIO này trong lập trình và điều khiển thì chúng ta cần phải cài đặt thư viện “WiringPi” hoặc “RPi.GPIO” cho nó Việc cài đặt này được tiến hành dễ dàng thông qua các câu lệnh trên cửa sổ “Terminal” Trong báo cáo này chúng ta sẽ không đi sâu vào việc cài đặt các thư viện hay các chức năng
bổ trợ cho RPi, mọi sự hướng dẫn đã được phổ biến trong các tài liệu và internet 3.2.2.4 Một số ngôn ngữ và thư viện lập trình cho Raspberry Pi
Hiện nay, có rất nhiều ngôn ngữ lập trình cho RPi như Python, Scratch, Java, C, Shell, Ruby … Phổ biến hơn hết là Python và C Các ngôn ngữ lập trình chỉ khác nhau
về bộ quy tắc, cú pháp và các thư viện bổ trợ Nguyên lý, cách thức tiếp cận để giải
DUT.LRCC
Trang 31quyết một vấn đề đối với mọi ngôn ngữ lập trình đều hoàn toàn giống nhau Trong báo cáo này, chúng tôi sử dụng ngôn ngữ C để lập trình cho ứng dụng của hệ thống Kèm theo ngôn ngữ C thì các thư viện quan trọng cần thiết cho việc lập trình cũng được cài đặt đồng thời như OpenCV, WiringPi,…
OpenCV, một cái tên vô cùng quen thuộc đối với những chương trình xử lí ảnh, là một thư viện mã nguồn mở hàng đầu cho thị giác máy tính, xử lí ảnh và các tính năng liên quan tới thời gian thực Nó có các giao diện C, C++, Python, Java và hỗ trợ Windows, Linux, Mac OS, iOS và Android OpenCV được thiết kế để tính toán hiệu quả và với sự tập trung nhiều vào các ứng dụng thời gian thực Được viết bằng tối ưu hóa C/C++, thư viện có thể tận dụng lợi thế của xử lý đa lõi Được sử dụng trên khắp thế giới, trong nhiều lĩnh vực từ khai thác mỏ, bản đồ trên web hoặc công nghệ robot Các ứng dụng phổ biến sử dụng OpenCV bao gồm: kiểm tra và giám sát tự động, robot
và xe tự lái, phân tích hình ảnh y tế, tìm kiếm và phục hồi hình ảnh/ video, phân tích cấu trúc 3D chuyển động, chỉnh sửa ảnh,…
WiringPi là một thư viện dùng để truy xuất GPIO của RPi được viết bằng ngôn ngữ C cho BCM2835 (là bộ vi xử lí được sử dụng trong RPi) Thư viện này sử dụng để lập trình và thiết lập các chân GPIO, từ đó ta có thể đọc và ghi các tín hiệu của các chân 3.2.3 Trình soạn thảo Geany
Có nhiều trình soạn thảo được sử dụng trên RPi như BlueJ Java IDE, Geany Programmer’s Editor, Greenfoot Java IDE, Python 2, Python 3, …
Hình 3.9 Các trình soạn thảo được dùng trên RPi Trong đề tài này, chúng tôi sử dụng trình soạn thảo “Geany Programmer’s Editer” Đây là một ứng dụng cho phép người dùng viết code trực tiếp trên RPi một cách
DUT.LRCC
Trang 32dễ dàng Geany là một phương án hoàn hảo cho các chương trình lớn, cần nhiều nguồn file, hỗ trợ hầu hết các ngôn ngữ lập trình như C, Java, Python, Pascal,…
Hình 3.10 Giao diện trình soạn thảo Geany
Để sử dụng Geany trên RPi chúng ta cần thực hiện các lệnh sau trên cửa sổ Terminal:
Tải và cài đặt: “sudo apt-get update” – “sudo apt-get install geany”
Cài đặt trình biên dịch ngôn ngữ C: “sudo apt-get install build-essential”
DUT.LRCC
Trang 333.3 Quy trình xử lý ảnh
Ta có lưu đồ thuật toán lập trình trình xử lí ảnh như dưới đây:
Hình 3.11 Lưu đồ thuật toán lập trình xử lý ảnh
Khối lệnh thu nhận và kiểm tra hình ảnh đầu vào
VideoCapture cap(0);
if (!cap.isOpened())
{
DUT.LRCC
Trang 34return -1;
} bool bSuccess = cap.read(imgCurrent);
Hàm “VideoCapture cap(0)” cho phép chúng ta lấy được các khung hình video thông qua camera hoặc đọc video từ file video Khởi tạo đối tượng “cap”, nếu RPi đang kết nối với một camera thì truyền tham số “0” vào để OpenCV tự phát hiện và mở đúng camera đó Để biết camera đã được mở hay chưa ta kiểm tra thuộc tính “isOpened” của đối tượng “cap”
Nếu mở video thành công thì dùng vòng lặp vô hạn để lấy khung hình video từ camera thông qua phương thức “read()” Khung hình sẽ được lưu vào biến có tên
“imgCurrent”, với khai báo kiểu dữ liệu là “Mat” (cấu trúc dữ liệu lưu trữ data của hình ảnh) Với ảnh được lưu này, ta có thể áp dụng các thuật toán để xử lí theo ý muốn
Khối tiền xử lí và phân đoạn ảnh
{
Mat imgHSV;
cvtColor(croppedImage, imgHSV, CV_BGR2HSV);
Mat imgThresholed;
Scalar minScalar = Scalar(LH, LS, LV);
Scalar maxScalar = Scalar(HH, HS, HV);
inRange(imgHSV, minScalar, maxScalar, imgThresholed);
Trang 35Khối này thực hiện hai nhiệm vụ chính đó là chuyển đổi kiểu ảnh và khử nhiễu
Dữ liệu ảnh đầu vào sẽ là ảnh RGB có tên là “croppedImage”, qua quá trình biến đổi, đầu ra sẽ là ảnh nhị phân đã được khử một phần nhiễu Ảnh này sẽ phục vụ cho quá trình nhận dạng và kết luận màu sau này Cụ thể, chức năng các lệnh và hàm được sử dụng trong khối này như sau:
Khai báo hai biến kiểu dữ liệu “Mat” để phục vụ cho quá trình chuyển đổi kiểu ảnh: “Mat imgHSV” (biến sẽ lưu dữ liệu của ảnh HSV) và “Mat imgThresholed” (biến sẽ lưu dữ liệu của ảnh nhị phân)
Các thông số như độ sáng, độ tương phản,… rất quan trọng trong xử lí ảnh nên ảnh cần được chuyển qua hệ HSV Để chuyển đổi từ hệ RGB sang hệ HSV, ta sử dụng hàm “cvtColor(Mat imgIn, Mat imgOut, int code)” Với “imgIn, imgOut” là các đầu vào, đầu ra có cùng size, depth, “code” quy định việc chuyển đổi mã màu nào sang
mã màu nào và nó có cấu trúc như sau: “CV_[mã màu nguồn]2[mã màu đích]”
Hàm “inRange” được sử dụng để ra một ảnh nhị phân trong một khoảng màu cụ thể được giới hạn bởi “minScalar, maxScalar”
Sử dụng đồng thời hai hàm “erode” và “dilate” để khử nhiễu cho ảnh nhị phân Hai hàm này có cấu trúc tương tự nhau: “Funtion(imgIn, imgOut, StructuringElecment” Hàm “erode” có chức năng giảm kích thước đối tượng, tách rời các đối tượng gần nhau, làm mảnh và tìm xương đối tượng Hàm “dilate” thì làm cho đối tượng trong ảnh tăng lên về kích thước (giản nở ra)
Khối nhận dạng và kết luận màu
Màu xanh (bắp cải): Mat imgA1 = fun(croppedImage, 38, 93, 0, 141, 213, 255);
Màu vàng (gà): Mat imgA2 = fun(croppedImage, 0, 77, 0, 11, 220, 255);
Màu trắng (bánh bao): Mat imgA3 = fun(croppedImage, 0, 0, 169, 182, 44, 249); Hàm “countNonZero” được sử dụng để đếm số fixel có giá trị khác “0”, tức là điểm có màu trắng có trong ảnh nhị phân
DUT.LRCC
Trang 36Chương 4: HỆ THỐNG TRUYỀN ĐỘNG
4.1 Cơ cấu truyền động
Hình 4.1 Cấu tạo cơ cấu truyền động Đây là một cơ cấu do công ty IAI CORPORATION sản xuất và cung cấp, bao gồm các bộ phận sau:
3: Lớp vỏ kim loại bảo vệ 4: Thép không gỉ chống bụi
7: Thanh trượt
Cách đọc Mode Number của cơ cấu:
Hình 4.2 Mode Number của cơ cấu truyền động 1: Tên dòng sản phẩm
Trang 378: Chiều dài cáp
9: Một số tùy chọn riêng 10: Nhận dạng chỉ dùng cho IAI
Hai cơ cấu mà chúng ta sử dụng trong robot là: M-B và RCP6-SA6C-WA-42P-20-450-P3-M
RCP6-SA6C-WA-42P-6-150-P3- RCP6-SA6C-WA-42P-6-150-P3-M-B: Động cơ được bố trí thẳng trên phương chuyển động, không sử dụng pin, động cơ có frame size là 42mm, chiều dài hành trình là 150mm, bước ren 6mm, bộ điều khiển loại PCON-CB, chiều dài cape là 5m và có tính năng tự hãm (Brake)
RCP6-SA6C-WA-42P-20-450-P3-M: tương tự như trên, nhưng chiều dài hành trình là 450mm, bước ren là 20mm và không có tính năng tự hãm
4.2 Bộ điều khiển công suất
Bộ điều khiển công suất có vai trò xử lý và điều khiển dòng năng lượng điện bằng cách cung cấp điện áp và dòng điện ở dạng thích hợp cho các tải Tải sẽ quyết định các thông số về điện áp, dòng điện, tần số, và số pha tại ngõ ra của bộ biến đổi
PCON-CB/CFB được sản xuất bởi tập đoàn IAI American, Inc sử dụng phần mềm
PC Interface Software for RCEC để điều khiển chỉnh bằng tay
4.2.1 Cấu trúc và kết nối
Hình 4.3 Cấu trúc PCON-CB Cấu trúc của bộ điều khiển công suất như sau:
1 Đèn led hiển thị trạng thái bộ điều khiển
2 Kết nối với bộ điều khiển trung tâm (Host system)
3 Đèn báo nguồn và giám sát cảnh báo
4 Công tắc cài đặt thiết lập số trục
5 Công tắc cài đặt thiết lập chế độ hoạt động
Trang 38Hình 4.4 Sơ đồ đấu nối các thiết bị cơ bản
Kết nối SIO với bộ chuyển đổi đến máy tính PC
Kết nối với động cơ và encoder bằng cáp kèm theo
Thiết lập chế độ sang Manual
Cung cấp nguồn cho PCON như hình dưới:
Hình 4.5 Trường hợp không sử dụng EMG- (dừng khẩn cấp)
DUT.LRCC
Trang 39Hình 4.5 Trường hợp có sử dụng EMG- (dừng khẩn cấp)
được kết nối và nguồn +24V được cung cấp/ ngắt Sau khi tắt nguồn phải đợi trong ít nhất 1s để khởi động lại
4.2.2 Phần mềm PC Interface Software for RCEC
Phần mềm PC Interface Software for RCEC được dùng để giao tiếp và điều khiển với bộ điều khiển công suất PCON-CB
Trước khi vào phần mềm điều khiển cần bật bộ điều khiển PCON và kết nối SIO tới PC
Hình 4.7 Tự động kết nối khi khởi động Hình 4.8 Chọn chế độ hoạt động
Thiết lập Parameter dựa trên các thông số của cơ cấu chấp hành Chọn
“Parameter” “Edit”
DUT.LRCC