TỔNG QUAN
Tầm quan trọng của đề tài
Ngày nay, thay vì cách lưu trữ hàng hóa thủ công tốn nhiều diện tích và nhân công lao động, nhiều công ty trên thế giới đã trang bị hệ thống kho hàng tự động cho văn phòng, nhà xưởng của mình…Với việc ứng dụng công nghệ cao trong việc cất giữ hàng hóa, giờ đây chúng ta có thể quản lý hàng hóa của mình một cách khoa học, có hệ thống và có tính linh hoạt cao, từ đó nâng cao hiệu quả hoạt động và giảm giá thành hoạt động
Nền công nghiệp nước ta nói riêng và các nước trên thế giới nói chung đang phát triển mạnh mẽ Ngày trước, sản phẩm được tạo ra một cách thủ công nên việc mang sản phẩm ra vào kho chủ yếu được thực hiện bằng sức người, do đó không tận dụng hết được các khoảng không gian, sức chứa của kho hàng, việc quản lý hàng hóa kém hiệu quả cũng như tốn nhiều diện tích đất làm nhà chứa kho hàng
Hình 1.1 Mô hình kho hàng cũ
Trong thời kỳ công nghiệp hóa, hiện đại hóa ngày nay sản xuất ngày càng phát triển, hàng hóa làm ra càng nhiều đáp ứng nhu cầu tiêu dùng cho xã hội Từ đó đã nảy sinh cần có những kho hàng hiện đại đáp ứng yêu cầu của sản xuất và khắc phục được những hạn chế của các kho hàng cũ
Hiện tại trên thế giới có nhiều hệ thống lưu trữ hàng hóa, các hệ thống này rất đa dạng, phong phú về thiết bị cũng như cách thức thực hiện Nhưng trong đó chủ yếu là sử dụng nhân công để bốc dỡ hàng hóa, các thiết bị bốc dỡ hàng là các máy nâng sử dụng người lái để sắp xếp hàng hóa vào kho
Nhìn chung, các kho hiện nay có các nhược điểm sau:
• Sử dụng nhiều diện tích để chứa hàng hóa
• Không phân loại được các hàng hóa khác nhau, các hàng hóa thường để chung với nhau trong một kho
• Không bảo quản tốt hàng hóa khi số lượng nhiều
• Rất khó kiểm soát số lượng hàng hóa ra vào kho
Với sự ra đời của các hệ thống xếp hàng hóa tự động, người ta có thể quản lý tốt hàng hóa cũng như nhanh chóng trong việc lưu trữ và xuất hàng hóa ra khỏi kho, các hệ thống kho tự động được sử dụng robot để vận chuyển hàng hóa, điều này đồng nghĩa với việc đầu tư trang thiết bị hiện đại cho hệ thống kho tốn khá nhiều chi phí cho việc vận chuyển hàng hóa nhưng bù lại là hàng hóa được bảo quản tốt, thuận tiện cho việc quản lý và kiểm soát, tiết kiệm được nhân công…
Hình 1.2 Các thiết bị bốc dỡ cơ bản hiện nay.
Mục tiêu của đề tài
Trong quá trình học tập, nghiên cứu dưới sự hướng dẫn của PGS.TS Nguyễn Minh Tâm, nhóm đã tiến hành chọn đề tài và xác định mục tiêu của đề tài nhằm định hướng đúng đắn cho quy trình thực hiện đề tài Mục tiêu cụ thể của đề tài như sau: ứng dụng PLC để điều khiển và giám sát mô hình kho hàng mang tính tự động cao, có khả năng tự động đưa hàng và lấy hàng trong phạm vi kích thước của mô hình bao gồm 3 tầng, mỗi tầng có 3 ô hàng với tốc độ lấy hàng và đưa hàng tối đa nằm trong khoảng nhỏ hơn 60 giây.
Giới hạn của đề tài
Vì một số điều kiện khách quan cũng như chủ quan nên đề tài sẽ có một số giới hạn như sau:
• Kích thước mô hình nhỏ gọn: chiều cao 64cm, chiều dài 60cm, chiều rộng 40cm
• Mô phỏng một cách tổng quát: chỉ có 9 vị trí để cất hàng hóa với cấu trúc theo tầng gồm 3 tầng, mỗi tầng có 3 vị trí
• Sử dụng PLC S7-1200 (1214C DC/DC/DC)
• Hệ thống phải cần một nhân viên trực để giám sát, quản lý và điều khiển hệ thống.
Phương pháp và phương tiện nghiên cứu
Do kiến thức, trình độ của nhóm sinh viên thực hiện là có hạn, dó đó việc hoàn thành sản phẩm và chạy thực tế sẽ gặp nhiều khó khăn, do vậy nhóm sinh viên thực hiện quyết định chọn phương pháp nghiên cứu mang tính kế thừa: đó chính là thực hiện đề tài dựa trên các tài liệu, kiến thức có sẵn đã được trang bị ở những học phần trước Ngoài ra còn sử dụng thêm các thiết bị và phần mềm hỗ trợ như: Solidworks 2017, Tia Portal V15.1… để tiến hành nghiên cứu các nội dung như sau:
• Tìm hiểu về ưu nhược điểm của một số mô hình kho hàng hiện nay, từ đó tổng hợp và thu thập dữ liệu để có hướng xây dựng mô hình đồ án
• Xây dựng thuật toán điều khiển hệ thống
• Đánh giá kết quả thực hiện
• Nhận xét ưu nhược điểm, từ đó đưa ra hướng phát triển thêm cho đề tài.
Nội dung thực hiện
Trong đồ án về hệ thống điều khiển tự động lần này, nhóm sinh viên thực hiện chia nội dung làm 5 chương:
Chương 1 Tổng quan: Tầm quan trọng, mục tiêu, giới hạn thực hiện đề tài và phương pháp, phương tiện nghiên cứu, nội dung thực hiện
Chương 2 Cơ sở lý thuyết: Trình bày và phân tích ưu nhược điểm của các phương án vận hành kho hàng có trên thị trường, từ đó chọn ra phương án phù hợp cho đề tài Tìm hiểu tổng quan về PLC, xử lý ảnh, ngôn ngữ lập trình Python, WINCC, yêu cầu phạm vi ứng dụng,…
Chương 3 Lựa chọn và thiết kế: Thiết kế, lựa chọn linh kiện thiết bị phù hợp với hệ thống và việc thi công hệ thống, sơ đồ khối toàn hệ thống và kết quả thực hiện
Chương 4 Kết quả thực hiện: Đánh giá quá trình hoạt động của hệ thống qua nhiều môi trường khác nhau và đưa ra nhận xét
Chương 5 Kết luận và hướng phát triển: Đưa ra kết luận sau quá trình thực hiện đồ án, đưa ra các hướng phát triển tiếp theo sau khi thực hiện đồ án.
CƠ SỞ LÝ THUYẾT
Tổng quan về PLC S7 – 1200
2.1.1 Đặc điểm và vai trò của PLC S7 – 1200 [3]
S7-1200 ra đời năm 2009 dùng để thay thế dần cho S7-200 So với S7-200 thì S7-
1200 có những tính năng nổi trội hơn
S7-1200 là một dòng của bộ điều khiển logic lập trình (PLC) có thể kiểm soát nhiều ứng dụng tự động hóa S7-1200 được thiết kế nhỏ gọn, chi phí thấp, và một tập lệnh mạnh giúp những giải pháp hoàn hảo hơn cho ứng dụng sử dụng với S7-1200
S7-1200 bao gồm một microprocessor, một nguồn cung cấp được tích hợp sẵn, các đầu vào/ra (DI/DO)
S7-1200 cung cấp một cổng PROFINET, hỗ trợ chuẩn Ethernet và TCP/IP Ngoài ra bạn có thể dùng các module truyền thông mở rộng kết nối bằng RS485 hoặc RS232
Một số tính năng bảo mật giúp bảo vệ quyền truy cập vào cả CPU và chương trình điều khiển:
• Tất cả các CPU đều cung cấp bảo vệ bằng password chống truy cập vào PLC
• Tính năng “know-how protection” để bảo vệ các block đặc biệt của mình
Các module CPU khác nhau có hình dạng, chức năng, tốc độ xử lý lệnh, bộ nhớ chương trình khác nhau
S7-1200 có 5 dòng là CPU 1211C, CPU 1212C, CPU 1214C, CPU 1215C và CPU 1217C Ngoài ra, còn có các dòng CPU S7-1200 SIPLUS đây là các dòng PLC có khả năng làm việc ở các nhà máy có môi trường khắc nghiệt: hóa chất độc hại, nhiệt độ cao… Trong mô hình đồ án, nhóm sinh viên chọn dùng PLC S7 – 1200 dòng CPU 1214C.
2.1.2 Nguyên lý hoạt động của PLC
CPU điều khiển các hoạt động bên trong PLC Bộ xử lý sẽ đọc và kiểm tra chương trình được chứa trong bộ nhớ, sau đó sẽ thực hiện từng lệnh trong chương trình, sẽ đóng hay ngắt các đầu ra Các trạng thái ngõ ra ấy được phát tới các thiết bị liên kết để thực thi và toàn bộ các hoạt động thực thi đó đều phụ thuộc vào chương trình điều khiển được giữ trong bộ nhớ
Hệ thống bus là tuyến dùng để truyền tín hiệu, hệ thống gồm nhiều đường tín hiệu song song:
• Address bus: bus địa chỉ dùng để truyền địa chỉ tới các module khác nhau
• Data bus: bus dùng để truyền dữ liệu
• Control bus:bus điều khiển dung để truyền các tín hiệu định thì và điều khiển đồng bộ các hoạt động trong PLC
Hệ thống Bus sẽ làm nhiệm vụ trao đổi thông tin giữa CPU, bộ nhớ và I/O Bên cạnh đó CPU được cung cấp một xung clock có tần số từ 1,8 Mhz Xung này quyết định tốc độ hoạt động của PLC và cung cấp các yếu tố về định thời, đồng hồ của hệ thống
2.1.3 Ứng dụng của PLC S7 – 1200 trong công nghiệp [4]
PLC S7 – 1200 được ứng dụng trong công nghiệp và dân dụng như:
• Hệ thống băng tải, cân định lượng
• Điều khiển đèn chiếu sáng thông minh
• Điều khiển bơm cao áp, bơm ổn định áp suất
• Xử lý hóa học, chế biến thực phẩm
• Máy trộn, máy nghiền, trạm trộn bê tông.
Giới thiệu về xử lý ảnh
Cùng với ngôn ngữ tự nhiên, hình ảnh đã đóng một vai trò hết sức quan trọng trong việc trao đổi thông tin Tính trực quan của hình ảnh đã giúp cho con người hiểu rõ và sâu sắc hơn các thông tin cần thu thập Người ta đã chứng minh được rằng, trong tất cả các kênh thu nhận thông tin của con người thì lượng thông tin thu nhận qua kênh thị giác chiếm khoảng 70% Hình ảnh là kết quả của việc thu nhận và biểu diễn của năng lượng ánh sáng trải dài từ tia gamma (có bước sóng nhỏ) đến sóng radio (có bước sóng lớn) Tuy nhiên, mắt người chỉ cảm nhận được một vùng giới hạn rất nhỏ trong phổ điện từ Ngược lại, máy tính có thể đọc được một vùng rất rộng trong phổ điện từ, từ tia gamma đến sóng radio Nó có thể biểu diễn và xử lý những bức ảnh được sinh ra bởi những nguồn mà con người không thể nhận biết được, như ảnh siêu âm , ảnh hồng ngoại, ảnh trong vùng tia X, Do đó xử lý ảnh có một phạm vi ứng dụng tương đối rộng
Xử lý ảnh là một trong những lĩnh vực về khoa học và công nghệ khá mới nhưng tốc độ phát triển của nó rất nhanh, được nhiều trung tâm nghiên cứu, ứng dụng Những năm gần đây với sự phát triển của phần cứng máy tính, khoa học kỹ thuật và với nhu cầu hiện đại hóa, thay thế sức lao động của con người bằng máy móc thì việc ứng dụng kỹ thuật xử lý ảnh vào đời sống xã hội càng trở nên mạnh mẽ Không chỉ dừng lại về việc xử lý chất lượng, phục hồi, tái chế ảnh mà ngày nay công nghệ xử lý ảnh còn kết hợp với lĩnh vực trí tuệ nhân tạo, học máy, học sâu mang lại những ứng dụng thực tế để phục vụ và nâng cao chất lượng cuộc sống
Xử lý ảnh được áp dụng vào thực tế, đem lại nhiều hiệu quả trong các lĩnh vực như:
• Lĩnh vực quân sự: xử lý hình ảnh quân sự, giải mã mật thư
• Lĩnh vực y tế: xử lý ảnh y sinh, chụp X quang, MRI
• Lĩnh vực phim ảnh: nhận dạng ảnh, xử lý âm thanh, đồ họa
• Lĩnh vực an ninh, bảo mật: nhận diện khuôn mặt, nhận diện vân tay, giọng nói
• Lĩnh vực giải trí: trò chơi mô phỏng thực tế ảo
• Trong công nghiệp: Robotics, phân loại sản phẩm, trái cây, xe tự hành
Với mục tiêu của đề tài là lưu trữ hàng hóa trong kho của các nhà máy một cách tự động thay cho con người thì việc xử lí thông tin mà hình ảnh mang lại đóng vai trò cực kỳ quan trọng Mỗi bức ảnh đều mang một lượng thông tin nhất định Để có thể nhận biết được những thông tin ẩn chứa trong mỗi bức ảnh đó chẳng hạn như mã QR code, chúng ta cần có một quá trình xử lý ảnh Quá trình xử lí ảnh được xem như là một hoặc nhiều những thao tác với ảnh đầu vào nhằm cho ra kết quả mong muốn Hình dưới sẽ mô tả các bước trong quá trình xử lý ảnh
Hình 2.1 Quá trình xử lý ảnh
Thu nhận ảnh là công đoạn đầu tiên và cũng mang tính quyết định cho cả quá trình xử lý và hoạt động của hệ thống Việc thu nhận ảnh sẽ được thực hiện bởi các thiết bị như camera, điện thoại, máy ảnh,… Kết quả đầu ra của hệ thống sẽ phụ thuộc một phần lớn vào chất lượng ảnh thu nhận được từ đầu vào Ngoài ra chất lượng ảnh cũng bị ảnh hưởng bởi yếu tố bên ngoài như ánh sáng, thời tiết, phong cảnh… Do đó việc lựa chọn thiết bị thu ảnh cũng rất quan trọng Để lựa chọn được thì cần phải xem xét các yêu cầu đã đặt ra của hệ thống như: đặc tính của đối tượng cần nhận dạng, môi trường làm việc của hệ thống, tốc độ xử lý,… Ngoài ra cũng cần dựa vào giá thành để có thể lựa được thiết bị với chất lượng phù hợp Ngày nay đã có nhiều hãng lớn sản xuất các camera chuyên dụng, đáp ứng được các nhu cầu thực tế như: Siemens, Mitsubishi, Logitech, Keyence, Omron, Cognex,…
Sử dụng các kỹ thuật xử lý ảnh để nâng cao chất lượng ảnh Mục đích là để điều chỉnh độ sáng nhằm khắc phục hậu quả của việc chiếu sáng không đều, giảm nhỏ thành phần nhiễu của ảnh tức là các đối tượng xuất hiện ngoài ý muốn, hiệu chỉnh giá trị độ sáng giữa nền và đối tượng, chuẩn hoá độ lớn, màu, dạng của ảnh Ảnh thu thập được thường có nhiễu và cần loại bỏ nhiễu hay ảnh thu được không sắc nét, bị mờ cần làm rõ các chi tiết trước khi đưa vào xử lý Bộ lọc trung bình được sử dụng chính trong bước tiền xử lý ảnh này, nó là bộ lọc mà mỗi điểm ảnh được thay thế bằng trung bình trọng số của xử lý ảnh này, nó là bộ lọc mà mỗi điểm ảnh được thay thế bằng trung bình trọng số của các điểm lân cận nhằm loại bỏ những điểm ảnh biến đổi lớn hơn so với điểm lân cận (hay còn gọi là nhiễu) Ảnh số Ảnh số là tập hợp hữu hạn các điểm ảnh với mức xám phù hợp dùng để mô tả ảnh gần với ảnh thật Số điểm ảnh xác định độ phân giải của ảnh Ảnh có độ phân giải càng cao thì càng thể hiện rõ nét các đặt điểm của tấm hình càng làm cho tấm ảnh trở nên thực và sắc nét hơn
Các thông số cơ bản của ảnh được trình bày như sau: Điểm ảnh: là một phần tử của ảnh số tại toạ độ (x, y) với độ xám hoặc màu nhất định Kích thước và khoảng cách giữa các điểm ảnh đó được chọn thích hợp sao cho mắt người cảm nhận sự liên tục về không gian và mức xám (hoặc màu) của ảnh số gần như ảnh thật Mỗi phần tử trong ma trận được gọi là một phần tử ảnh
Mức xám của ảnh: Là kết quả của sự biến đổi tương ứng 1 giá trị độ sáng của 1 điểm ảnh với 1 giá trị nguyên dương Thông thường nó xác định trong [0, 255] tuỳ thuộc vào giá trị mà mỗi điểm ảnh được biểu diễn Các thang giá trị mức xám thông thường: 16, 32, 64,
128, 256 (Mức 256 là mức phổ dụng Lý do: từ kỹ thuật máy tính dùng 1 byte (8 bit) để biểu diễn mức xám Mức xám dùng 1 byte biểu diễn: 28 %6 mức, tức là từ 0 đến 255)
Hình 2.4 Mức xám của ảnh Độ phân giải của ảnh: là mật độ điểm ảnh được ấn định trên một ảnh số được hiển thị Theo định nghĩa, khoảng cách giữa các điểm ảnh phải được chọn sao cho mắt người vẫn thấy được sự liên tục của ảnh Việc lựa chọn khoảng cách thích hợp tạo nên một mật độ phân bổ, đó chính là độ phân giải và được phân bố theo trục x và y trong không gian hai chiều
Chuyển ảnh xám Đơn vị tế bào của ảnh số là pixel Tùy theo mỗi định dạng là ảnh màu hay ảnh xám mà từng pixel có thông số khác nhau Đối với ảnh màu từng pixel sẽ mang thông tin của ba màu cơ bản tạo ra bản màu khả kiến là Đỏ (R), Xanh lá (G) và Xanh biển (B) Trong mỗi pixel của ảnh màu, ba màu cơ bản R, G và B được bố trí sát nhau và có cường độ sáng khác nhau Thông thường, mỗi màu cơ bản được biểu diễn bằng tám bit tương ứng 256 mức độ màu khác nhau Như vậy mỗi pixel chúng ta sẽ có 28x3 = 224 màu (khoảng
16.78 triệu màu) Đối với ảnh xám, thông thường mỗi pixel mang thông tin của 256 mức xám (tương ứng với tám bit) như vậy ảnh xám hoàn toàn có thể tái hiện đầy đủ cấu trúc của một ảnh màu tương ứng thông qua tám mặt phẳng bit theo độ xám
Hình 2.6 Ảnh trước và sau khi chuyển thành ảnh xám
Trong hầu hết quá trình xử lý ảnh, cấu trúc của ảnh được quan tâm nhiều và ảnh hưởng của yếu tố màu sắc thì được bỏ qua Do đó bước chuyển từ ảnh màu thành ảnh xám là một công đoạn phổ biến trong các quá trình xử lý ảnh vì nó làm tăng tốc độ xử lý là giảm mức độ phức tạp của các thuật toán trên ảnh Công thức chuyển các thông số giá trị màu của một pixel thành mức xám tương ứng như sau:
G = α.CR + β.CG + δ.CB Trong đó các giá trị CR, CG và CB lần lượt là các mức độ màu Đỏ, Xanh và Xanh biển của pixel mà
Bộ lọc Gaussian là bộ lọc thông cao (chỉ giữ lại thành phần tần số thấp), một cách trực quan hơn đây được xem là phương pháp làm mờ mịn giống như hiệu ứng hình ảnh được đặt dưới một lớp màn trong suốt bị mờ Gaussian blur là một bộ lọc làm mờ ảnh, sử dụng lý thuyết hàm Gaussian để tính toán việc chuyển đổi mỗi pixel của hình, phương trình hàm Gaussian dùng trong không hai chiều:
Trong đó x và y là tọa độ theo hai trục đứng và ngang còn σ là giá trị quyết định độ lệch giữa các điểm trên bề mặt Gaussian
2.2.3 Phân đoạn ảnh Đây là quá trình phân chia nội dung các đối tượng cần khảo sát ra khỏi ảnh, phân chia các đối tượng tiếp giáp nhau, phân tách các đối tượng riêng biệt thành các đối tượng con để nhận dạng ảnh Ví dụ: để nhận dạng chữ (hoặc mã QR) trên hộp hàng cho mục đích phân loại, lưu trữ hàng hóa trong kho hàng, ta cần chia các câu chữ về địa chỉ hoặc tên người thành các từ, các chữ, các số (hoặc chấm đen) riêng biệt để nhận dạng Đây là phần phức tạp khó khăn nhất trong xử lý ảnh và cũng dễ gây lỗi, làm mất độ chính xác của ảnh Kết quả nhận dạng hình ảnh phụ thuộc rất nhiều vào quá trình phân đoạn ảnh
2.2.4 Biểu diễn và mô tả ảnh
Biểu diễn và mô tả ảnh là quá trình sau phân đoạn ảnh, ảnh sau phân đoạn chứa các điểm ảnh của vùng ảnh (ảnh đã phân đoạn) cộng với mã liên kết với các vùng lận cận Việc biến đổi các số liệu này thành dạng thích hợp là cần thiết cho xử lý tiếp theo bằng máy tính Việc chọn các tính chất để thể hiện ảnh gọi là rút trích chọn đặc trưng (Feature Extration) gắn với việc tách các đặc tính của ảnh dưới dạng các thông tin định lượng hoặc làm cơ sở để phân biệt lớp đối tượng này với đối tượng khác trong phạm vi ảnh nhận được Ví dụ: trong nhận dạng chữ (tên sản phẩm) trên hộp hàng, chúng ta miêu tả các đặc trưng của từng ký tự giúp phận biệt ký tự này với ký tự khác
2.2.5 Nhận dạng và nội suy
Ngôn ngữ lập trình Python
Ngôn Ngữ Python được Guido van Rossum tạo ra cuối năm 1990
Python khá giống Perl, Ruby, Scheme, Smalltalk và Tcl
Python được phát triển trong một dự án mã mở do một tổ chức phi lợi nhuận Python Software Foundation quản lý
Python được phát triển để chạy trên nền Unix Nhưng theo thời gian, nó đã "bành trướng" sang mọi hệ điều hành từ MS-DOS đến MAC OS, OS/2, Windows, Linux và một số điều hành khác thuộc họ Unix
Python là ngôn ngữ bậc cao (high-level) có hình thức sáng sủa, cấu trúc rõ ràng, thuận tiện cho người mới học lập trình Cho phép người sử dụng viết mã với số lần gõ phím tối thiểu
Python cũng là một trong những ngôn ngữ phổ biến nhất thế giới
Các tính năng chính của Python
• Ngôn ngữ lập trình đơn giản, dễ học: Python có cú pháp đơn giản, rõ ràng Dễ dàng đọc và viết hơn so với các ngôn ngữ lập trình khác như C++, Java, C# Python làm cho việc lập trình trở nên thú vị, làm cho bạn tập trung hơn vào những giải pháp chứ không phải cú pháp
• Miễn phí, mã nguồn mở: Bạn không những có thể sử dụng các phần mềm, chương trình được viết trong Python mà còn có thể thay đổi mã nguồn của nó
• Khả năng di chuyển: Các chương trình Python có thể di chuyển từ nền tảng này sang nền tảng khác và chạy nó mà không có bất kỳ thay đổi nào Nó chạy liền mạch trên hầu hết tất cả các nền tảng như Windows, macOS, Linux
• Khả năng mở rộng và có thể nhúng: Bạn có thể kết hợp các phần code bằng C, C++ và những ngôn ngữ khác vào code Python
• Ngôn ngữ thông dịch cấp cao: Không giống như C/C++, với Python, bạn không phải lo lắng những nhiệm vụ khó khăn như quản lý bộ nhớ, dọn dẹp những dữ liệu vô nghĩa, Khi chạy code Python, nó sẽ tự động chuyển đổi code sang ngôn ngữ máy tính có thể hiểu Bạn không cần lo lắng về bất kỳ hoạt động ở cấp thấp nào
• Thư viện tiêu chuẩn lớn: Python có một số lượng lớn thư viện tiêu chuẩn giúp cho công việc lập trình của bạn trở nên dễ thở hơn rất nhiều, đơn giản vì không phải tự viết tất cả code.
• Hướng đối tượng: Mọi thứ trong Python đều là hướng đối tượng Lập trình hướng đối tượng (OOP) giúp giải quyết những vấn đề phức tạp một cách trực quan Với OOP, bạn có thể phân chia những vấn đề phức tạp thành những tập nhỏ hơn bằng cách tạo ra các đối tượng
Hình 2.7 Ngôn ngữ lập trình Python
2.3.1 Giới thiệu thư viện OpenCV
Project OpenCV được bắt đầu từ Intel năm 1999 bởi Gary Bradsky OpenCV viết tắt cho Open Source Computer Vision Library OpenCV là thư viện nguồn mở hàng đầu cho Computer Vision và Machine Learning, và hiện có thêm tính năng tăng tốc GPU cho các hoạt động theo real-time
OpenCV được phát hành theo giấy phép BSD (*), do đó nó miễn phí cho cả học tập và sử dụng với mục đích thương mại Nó có trên các giao diện C++, C, Python và Java và hỗ trợ Windows, Linux, Mac OS, iOS và Android OpenCV được thiết kế để hỗ trợ hiệu quả về tính toán và chuyên dùng cho các ứng dụng real-time (thời gian thực) Nếu được viết trên C/C++ tối ưu, thư viện này có thể tận dụng được bộ xử lý đa lõi (multi-core processing)
OpenCV được sử dụng cho đa dạng nhiều mục đích và ứng dụng như:
• Kiểm tra và giám sát tự động Robot và xe hơi tự lái
• Phân tích hình ảnh y học
• Tìm kiếm và phục hồi hình ảnh/video
• Tìm kiếm và phục hồi hình ảnh/video
• Phim – cấu trúc 3D từ chuyển động
• Nghệ thuật sắp đặt tương tác
2.3.2 Giới thiệu thư viện NumPy
Numpy (Numeric Python): là một thư viện toán học rất phổ biến và mạnh mẽ của Python NumPy được trang bị các hàm số đã được tối ưu, cho phép làm việc hiệu quả với ma trận và mảng, đặc biệt là dữ liệu ma trận và mảng lớn với tốc độ xử lý nhanh hơn nhiều lần khi chỉ sử dụng Python đơn thuần
NumPy được phát triển bởi Jim Hugunin Phiên bản ban đầu là Numarray được phát triển, có một số chức năng bổ sung Năm 2005, Travis Oliphant đã tạo ra gói NumPy bằng cách kết hợp các tính năng của Numarray và gói Numeric
Numpy được sử dụng cho đa dạng nhiều mục đích như:
• Các phép toán toán học và logic trên mảng
• Các biến đổi Fourier và các quy trình để thao tác shape
• Các phép toán liên quan đến đại số tuyến tính
• NumPy tích hợp sẵn các hàm cho đại số tuyến tính và tạo số ngẫu nhiên
2.3.3 Giới thiệu thư viện Snap7
Snap7 được Dave Nardella Trưởng phòng quản lý phần mềm công ty MASMEC SPA tạo ra Snap7 là thư viện giao tiếp Ethernet đa nền tảng, mã nguồn mở, dùng để truyền nhận dữ liệu qua Ethernet gữa PLC của Siemens (nó hỗ trợ truyền nhận dữ liệu S7- 200, S7-200 Smart, S7-300, S7-400, S7-1200, và S7-1500) và Raspberry PI (1 and 2),
BeagleBone Black, CubieBoard, ARDUINO YUN, computer,
Snap7 có ba thành phần chuyên biệt: client, server và partner cho phép người dùng tích hợp các hệ thống dựa trên PC ( Personal Computer: máy tính cá nhân ) vào chuỗi tự động hóa PLC Trong đó Snap7 client là đối tượng được biết đến nhiều nhất, hầu hết tất cả các trình điều khiển truyền thông PLC trên thị trường đều là Snap7 client
Snap7 hỗ trợ nhiều ngôn ngữ như: Pascal; C#; C++, C, LabVIEW, Python,
Snap7 được sử dụng cho đa dạng nhiều mục đích như:
• Điều khiển PLC (Chạy / Dừng / )
• Thu nhận dữ liệu đọc về từ cảm biến để điều khiển PLC thông qua chương trình Python
• Đọc / ghi toàn bộ bộ nhớ PLC (In / Out / DB / Merkers / Timers / Counters)
• Thực hiện các hoạt động khối (tải lên / tải xuống)
• Đáp ứng mức bảo mật (Đặt mật khẩu / Xóa mật khẩu) và gần như tất cả các chức năng mà Simatic Manager hoặc Tia Portal cho phép
Cơ sở dữ liệu là tập hợp các dữ liệu được tổ chức theo một cấu trúc nhất định để có thể dễ dàng quản lý (đọc, thêm, xóa, sửa dữ liệu)
Hệ thống điều khiển giám sát và thu thập dữ liệu WINCC
WINCC (Windows Control Center) là phần mềm của hãng Siemens dùng để giám sát, điều khiển và thu thập dữ liệu trong quá trình sản xuất Nói rõ hơn, WINCC là chương trình dùng để thiết kế các giao diện Người và Máy – HMI (Human Machine Interface) trong hệ thống SCADA (Supervisory Control and Data Acquisition), với chức năng chính là thu thập số liệu, giám sát và điều khiển quá trình sản xuất Với WINCC, người dùng có thể trao đổi dữ liệu với PLC của nhiều hãng khác nhau như: Siemens, Mitsubishi, Allen braddly, Omron… thông qua cổng COM với chuẩn RS232 của PC và chuẩn RS485 của PLC
WINCC kết hợp các bí quyết của Siemens, công ty hàng đầu trong tự động hóa quá trình, và năng lực của Microsoft (công ty hàng đầu trong việc phát triển phần mềm cho PC) Ngoài khả năng thích ứng cho việc xây dựng các hệ thống có quy mô lớn nhỏ khác nhau, WinCC còn có thể dễ dàng tích hợp với những ứng dụng có quy mô toàn công ty như việc tích hợp với những hệ thống cấp cao như MES (Manufacturing Excution System
- Hệ thống quản lý việc thực hiện sản xuất) và ERP (Enterprise Resource Planning) WINCC cũng có thể sử dụng trên cơ sở quy mô toàn cầu nhờ hệ thống trợ giúp của Siemens có mặt khắp nơi trên thế giới Ở Việt Nam hệ thống của Siemens được tài trợ đưa vào hệ đào tạo chính thức
Hình 2.15 Giao diện phần mềm WinCC
Hình 2.16 Thiết kế giao diện cơ bản trên phần mềm WinCC
2.4.2 Các chức năng phổ biến của WINCC
Khi sử dụng WINCC để thiết kế giao diện Người và Máy – HMI và mạng Scada, WINCC thường sử dụng các chức năng phổ biến sau:
Graphics Designer: Thực hiện dễ dàng các chức năng mô phỏng và hoạt động qua các đối tượng đồ họa của chương trình WINCC, Windows, I/O, và các thuộc tính hoạt động (Dynamic)
Alarm Logging: Thực hiện việc hiển thị các thông báo hay các cảnh báo khi hệ thống vận hành Nhận các thông tin từ các quá trình, hiển thị, hồi đáp và lưu trữ chúng Alarm Logging còn giúp ta phát hiện ra nguyên nhân của lỗi
Tag Logging: Thu thập, lưu trữ và xuất ra dưới nhiều dạng khác nhau từ các quá trình đang thực thi
Report Designer: Tạo ra các thông báo, kết quả Và các thông báo này được lưu dưới dạng nhật ký sự kiện
User Achivers: Cho phép người sử dụng lưu trữ dữ liệu từ chương trình ứng dụng và có khả năng trao đổi với các thiết bị khác.Trong WINCC, các công thức và ứng dụng có thể soạn thảo, lưu trữ và sử dụng trong hệ thống
Ngoài ra, WINCC còn kết hợp với Visual C++, Visual Basic tạo ra một hệ thống tinh vi và phù hợp cho từng hệ thống tự động hóa chuyên biệt
WINCC có thể tạo một giao diện người và máy – HMI dựa trên sự giao tiếp giữa con người với các thiết bị, hệ thống tự động hóa thông qua hình ảnh, số liệu, sơ đồ, Giao diện có thể cho phép người dùng vận hành, theo dõi từ xa và còn có thể cảnh báo, báo động khi có sự cố
WINCC là chương trình thiết kế giao diện người máy thực sự cần thiết cho các hệ thống tự động hóa cao và hiện đại.
Yêu cầu, phạm vi ứng dụng
2.5.1 Yêu cầu thực tế của hệ thống Điện áp sử dụng: 1 pha 220V – 50Hz
Dòng tải: tùy theo công suất động cơ sử dụng và thiết bị ngoại vi khác, thông thường không lớn hơn 2A
Các biện pháp an toàn điện: hệ thống được thiết kế MCB chống giật trên toàn hệ thống và các thiết bị điện khác đạt chuẩn CE Nút dừng khẩn cấp khi có sự cố xảy ra
2.5.2 Phạm vi ứng dụng Ứng dụng rộng rãi trong ngành công nghiệp sản xuất, chế biến thực phẩm, dược phẩm, xây dựng kho phân phối, kho trung chuyển, kho ký gửi hàng hóa trong ngành Logistics, xây dựng kho lạnh, kho mát trong các ngành thực phẩm đông lạnh…
Hệ thống không chỉ được sử dụng trong các công ty lớn mà còn sử dụng ở các cơ sở sản xuất tư nhân nhỏ.
Các công nghệ trên hệ thống kho hàng
Hệ thống kho hàng di chuyển theo quỹ đạo 3 trục X, Y, Z Với quỹ đạo này, việc vận chuyển hàng hóa đến từng khu vực sẽ dễ dàng, chính xác và phạm vi di chuyển sẽ rộng hơn so với các hệ thống kho hàng có quỹ đạo là 2 trục
2.6.2 Bộ phận phân loại hàng hóa
Hệ thống sử dụng camera với độ phân giải và FPS cao để cho ra hình ảnh sắc nét, dễ dàng cho việc xử lý và thu thập dữ liệu, nhiệm vụ của camera là chụp những mã QR code được đính trên hộp hàng Tuy nhiên nếu để cho camera hoạt động và chụp liên tục, sẽ ảnh hưởng đến tuổi thọ của camera, do đó điểm cải tiến lúc này là sử dụng một cảm biến hồng ngoại để phát hiện khi có hộp hàng vào vị trí thì khi đó mới ra lệnh cho camera chụp nhận dạng và gửi tín hiệu về để xử lý.
Khái quát về xung PTO
PTO là từ viết tắt của cụm từ “Pulse Train Output” cung cấp một dạng xung vuông với chu kỳ tác động là 50% (T/2-on và T/2-off) với T là số lượng xung do người dùng điều khiển PTO thường được dùng để phát xung điều khiển cho Driver của Servo Motor hay Stepper Motor
Xung PTO có các đặc điểm sau:
• Thay đổi tần số trong khi chu kỳ hoạt động vẫn ở mức 50%
• T (period) rất đa dạng Việc kiểm soát được thực hiện từ phần mềm
• Tỷ lệ T (off) so với T (on) có thể được cố định ở mức 50%: 50% Điều khiển chuyển động: được biết đến nhiều nhất với điều khiển vòng hở của động cơ bước Bộ khuếch đại động cơ bước đảm bảo tăng khoảng cách cố định cho mỗi xung nhận được Khoảng thời gian của mức tăng được đặt bởi tần số của xung Phương pháp này được sử dụng phổ biến hơn PWM, được sử dụng cho động cơ bước và động cơ servo Vị trí (và tốc độ) được kiểm soát ngay cả khi chỉ sử dụng điều khiển vòng hở
2.8 Cài đặt thông số cho đối tượng “Axis” [2]
Các bước khởi tạo một đối tượng “Axis”:
• Bước 1: Chọn PLC_1 [CPU 1214C DC/DC/DC]
• Bước 3: Chọn “Add new object”
• Bước 5: Trong hộp thoạt “Add new object” chọn “Motion control”
• Bước 6: Chọn “TO_PositioningAxis” V6.0, sau đó chọn “OK”
• Bước 7: Tiếp theo hiện lên một khối mặc định gọi là khối DB1 để ta cài đặt các thông số và chọn kênh phát xung, đơn vị đo
Hình 2.17 Cài đặt thông số cho “Axis”
Hình 2.18 Nhập thông số của động cơ cần điều khiển.
LỰA CHỌN VÀ THIẾT KẾ
Yêu cầu thiết kế
Phần cứng của mô hình hệ thống phải đạt được những tiêu chí đề ra sau đây:
• Phần cứng đảm bảo ít rung lắc khi mô hình đang vận hành
• Đảm bảo không có sai số vị trí đặt giữa các trục vít và động cơ để động cơ di chuyển một cách ổn định nhất
• Đảm bảo độ sáng tối ưu nhất để bức ảnh chụp mã QR code được rõ nét nhất.
Lựa chọn thiết bị
3.2.1 PLC Siemens S7-1200 1214C DC/DC/DC
PLC S7-1200 CPU 1214C là loại compact CPU, có thiết kế gọn nhẹ và một tập lệnh mạnh giúp những giải pháp hoàn hảo hơn cho ứng dụng sử dụng với S7-1200
Hình 3.1 PLC S7-1200 CPU 1214C DC/DC/DC
Dưới đây là một số thông số kĩ thuật về CPU 1214C DC/DC/DC:
• Mã thiết bị: 6ES7214-1AG40-0XB0
• Nguồn cấp: định mức ở 24 VDC
• Digital inputs: 14DI ( Sink/ Source)
• Digital outputs: 10DQ kèm theo 4 ngõ ra xung high-speed lến đến 100kHz
• Ngôn ngữ lập trình: LAD, FBD, STL
• Có thể mở rộng lên đến 8 modules I/O
• Tốc độ xử lý: 0.04 ms/1000 lệnh
3.2.2 Động cơ bước JK42HS40 – 1704 (42x42mm)
Trong điều khiển chuyển động kỹ thuật số, động cơ bước là một cơ cấu chấp hành đặc biệt hữu hiệu, bởi nó có thể thực hiện chuẩn các lệnh đưa ra dưới dạng số Loại động cơ này hiện đang được ứng dụng nhiều trong ngành tự động hóa, đặc biệt là các thiết bị cần sự điều khiển chính xác
Khối lượng hàng hóa tối đa m1=1kg, khối lượng khay đựng hàng m2=4kg Thực hiện chuyển động tịnh tiến nâng hàng hóa lên kệ chứa hàng:
𝐹 𝑎 = (𝑚 1 + 𝑚 2 ) 𝑔 = (1 + 4) 9.8 = 49𝑁 Chọn vận tốc nâng hàng v=0,3m/s, lực nâng 𝐹 𝑎 IN, bộ truyền vít đai ốc ma sát lăn nên hiệu suất 𝜂=0.8
Công suất yêu cầu của động cơ:
0,8 = 18,375𝑊 Vậy ta chọn động cơ có công suất lớn hơn hoặc bằng 18,375W
Hình 3.2 Động cơ bước JK42HS40 - 1704
Muốn điều khiển động cơ bước một cách ổn định chính xác ta cần sử dụng driver TB6600 để điều khiển
Hình 3.3 Bộ điều khiển động cơ bước TB6600
• Tín hiệu đầu vào có cách ly quang, tốc độ cao bằng opto
• Có thể dừng động cơ bằng cách ngưng cấp xung điều khiển
• Chế độ điều khiển bán khép kín giúp cho mạch có thể hoạt động ở những môi trường nghiêm ngặt hơn
• Có chức năng khóa bán tự động tiết kiệm năng lượng
• Có chức năng bảo vệ quá nhiệt, quá dòng, sụt áp
• Có thể điều khiển động cơ bước 2 pha quay và đảo chiều quay, có thể hoạt động ở chế độ vi bước( 1/2; 1/4; 1/8; 1/16 bước)
Nhiệm vụ của Camera là chụp những nhãn Bar code được đính trên hộp hàng Đòi hỏi camera phải có độ phân giải và FPS tương đối cao
• Độ phân giải: tối đa 2MP, FULL HD 1920x1080
• Tốc độ khung hình có thể đạt 120fps ở 640x480 pixels
Cảm biến dùng cho hệ thống thực hiện nhiệm vụ báo có hộp hàng đi qua để có thể ra lệnh cho camera chụp lại hình ảnh
Các hộp hàng được làm bằng giấy hoặc bìa carton nên nhóm sẽ đề xuất sử dụng cảm biến hồng ngoại NPN
Hình 3.5 Cảm biến hồng ngoại NPN
• Khoảng cách phát hiện: từ 10cm - 30cm
• Tiêu chuẩn bảo vệ: IP67
Hình 3.6 Công tắc hành trình V-152-1C25
• Có 2 tiếp điểm NO/NC
• Nguồn cấp: không vượt quá 250 VDC, 250 VAC
Relay trung gian là thiết bị điện dùng để đóng cắt mạch điện điều khiển Dùng trong các mạch điện tử
Hình 3.7 Relay Omron 24VDC (8 Pin)
• Có 2 cặp tiếp điểm NO/NC
• Điện áp vận hành tối đa: 250 VAC, 125 VDC
Nguồn tổng dùng để cấp nguồn cho các thiết bị trong tủ điện
• Điện áp ngõ ra: 24 VDC
• Điện áp ngõ vào: từ 100 đến 264 VAC
Aptomat (MCB hay MCCB) là khí cụ điện dùng đóng ngắt mạch điện (một pha, ba pha); có công dụng bảo vệ quá tải, ngắn mạch, sụt áp mạch điện
• Điện áp định mức: 400 VAC
• Bảo vệ chống quá tải, ngắn mạch, sụt áp,…
• Khả năng cắt lên đến: 6 kA
• Chứng nhận tiêu chuẩn IEC60898
Sử dụng loại đèn báo pha trong công nghiệp (phi 22), dùng các màu: đỏ, vàng, xanh,… Đèn pha, dùng loại 24 VDC và 220 VAC
• Điện áp hoạt động: 220 VAC, 24 VDC
3.2.11 Công tắc xoay 2 vị trí LA38
Công tắc xoay tự giữ, để bật tắt tủ điện
Hình 3.11 Công tắc xoay 2 vị trí
Khi hệ thống đang hoạt động mà gặp sự cố như động cơ quá tải, thiết bị hư,… cần phải có nút dừng khẩn cấp để cách ly nguồn với các thiết bị điện khác
Hình 3.12 Nút dừng khẩn cấp
• Điện áp tối đa: 600 VAC
3.2.13 Bảng thống kê khí cụ điện và thiết bị điện tử
STT Tên thiết bị SL
2 Động cơ bước Nema17 42x42mm JK42HS40-1704 3
3 Driver điều khiển động cơ bước TB6600 3
5 Cảm biến hồng ngoại NPN 1
10 Đèn báo 220V phi 22 ( 1 xanh, 1 vàng) 2
11 Đèn báo 24V phi 22 ( 1 xanh, 1 đỏ) 2
Bảng 3.1 Bảng thống kế các thiết bị điện sử dụng trong hệ thống
Thiết kế cơ khí
3.3.1 Thiết kế mô hình 3D trên phần mềm Solidworks
Hình 3.13 Phần khung và đế
Hình 3.14 Toàn bộ hệ thống nhìn xiên
Hình 3.15 Toàn bộ hệ thống nhìn phía sau
Hình 3.16 Hình chiếu đứng tủ điện
Hình 3.17 Tủ điện nhìn xiên
Hình 3.18 Toàn bộ hệ thống và tủ điện nhìn xiên
3.3.2 Danh sách vật tư cơ khí
STT Tên thiết bị SL/KT
16 Đế con trượt vuông T8 (mica 3mm) 10
17 Đế đỡ gối đỡ vòng bi T8 (mica 5mm) 3
18 Đế đỡ động cơ 1 và 2 (mica 5mm) 1
20 Đế đỡ động cơ 3 (mica 2mm) 1
21 Đế đỡ khớp nối mềm 2 (mica 3mm) 1
Bảng 3.2 Bảng thống kế vật tư cơ khí
Thiết kế sơ đồ khối hệ thống
Đối với một hệ thống, để mô tả các bộ phận và chức năng của từng bộ phận đó cần có một sơ đồ khối tổng quát nhưng cũng thể hiện một cách trực quan để có thể hiểu được hệ thống hoạt động như thế nào, dưới đây là sơ đồ khối của hệ thống kho hàng tự động
Hình 3.19 Sơ đồ khối toàn bộ hệ thống
Chức năng của các khối:
• Khối nguồn: cung cấp nguồn điện hoạt động cho toàn bộ hệ thống
• Khối thu nhận hình ảnh: chụp hình ảnh mã Barcode bằng USB Camera
• Khối đọc mã Barcode: đọc, xử lý mã Barcode và truyền tín hiệu về cho PLC, khi không đọc được mã Barcode thì hệ thống không hoạt động, mọi hoạt động đọc mã đều được hiển thị đầy đủ trên màn hình giám sát
• Khối nút nhấn và công tắc hành trình: có nhiệm vụ ngắt động cơ khi tác động
• Khối động cơ, driver: gồm có các driver điều khiển động cơ, động cơ bước và relay để hệ thống hoạt động
• PLC và SCADA (khối xử lý trung tâm): bao gồm laptop (được tích hợp sẵn các công cụ lập trình) có nhiệm vụ thu nhận, xử lý và lưu trữ dữ liệu từ hình ảnh chụp được của camera, có thể giao tiếp với PLC Với các tín hiệu ngõ vào thì việc thu nhận và truyền cho máy tính là công việc mà PLC thực hiện Giao diện giám sát SCADA thuận tiện cho việc quan sát một cách cụ thể và rõ ràng các hoạt động của hệ thống.
Thi công phần cứng
3.5.1 Sơ đồ kết nối mạch phần cứng [6]
Khi đề tài được phê duyệt bởi giảng viên hướng dẫn nhóm sinh viên thực hiện tìm hiểu từng linh kiện cần thiết cho hệ thống kho hàng tự động, thời gian nghiên cứu tìm hiểu kỹ càng về các thiết bị và linh kiện nhóm tiến hành lên phương án đấu nối phần cứng như sau:
Hình 3.20 Sơ đồ đấu dây ngõ vào
Hình 3.21 Sơ đồ đấu dây ngõ ra
Hình 3.22 Sơ đồ đấu nối động cơ bước với driver TB6600
Hình 3.23 Sơ đồ đấu nối chi tiết các chân của linh kiện điện tử
Sau khi tìm hiểu kỹ các thiết bị điện và cơ khí, lên kế hoạch vẽ sơ đồ phần cứng, nhóm sinh viên đã tiến hành thi công thực tế hệ thống kho hàng tự động, dưới đây là hình ảnh thực tế
Hình 3.24 Hình ảnh hệ thống nhìn trực diện
Hình 3.25 Hình ảnh hệ thống nhìn xiên
Hình 3.26 Hình ảnh phía trước tủ điện
Hình 3.27 Hình ảnh phía bên trong tủ điện
Giao diện giám sát và điều khiển
Giao diện giám sát và điều khiển (Scada) được thiết kế trên phần mềm TiaPortal V15.1 với phiên bản WinCC Professional
Giao diện khung hình camera được hiển thị trên PyCharm với ngôn ngữ lập trình Python
Yêu cầu về giao diện
• Giao diện cần có bố cục đơn giản và hài hòa, tạo cho người dùng cảm giác dễ nhận biết và điều khiển
• Quan sát được trạng thái hoạt động của thiết bị, số lượng hộp hàng trên kệ để hàng
• Mô tả được một cách trực quan quá trình hoạt động của hệ thống
• Có thể điều khiển được các thiết bị của hệ thống trên màn hình máy tính
Hình 3.30 Giao diện khung nhìn camera
Hình 3.31 Bảng thống kê dữ liệu nhập
Hình 3.32 Bảng thống kê dữ liệu xuất
Lưu đồ giải thuật
3.7.1 Yêu cầu điều khiển hệ thống
Nhấn Start hệ thống bắt đầu hoạt động, tiến hàng đưa hàng vào khung phân loại để cảm biến phát hiện và ra lệnh cho camera chụp ảnh, nhận dạng mã và kiểm tra thông tin của hộp hàng, trong quá trình hoạt động khi có lỗi xảy ra ta nhấn nút EMC để hệ thống dừng khẩn cấp, khi bật nguồn cho hệ thống hoạt động trở lại thì hệ thống sẽ tự động về vị trí Home, khi nhấn Stop thì hệ thống dừng
Lưu đồ điều khiển của bộ xử lý trung tâm
Hình 3.33 Lưu đồ điều khiển của bộ xử lý trung tâm
Lưu đồ giao diện giám sát trên máy tính
Hình 3.34 Lưu đồ giao diện giám sát trên máy tính
KẾT QUẢ THỰC HIỆN
Đánh giá thực nghiệm hệ thống
Để tạo nên một kết quả khách quan nhất, nhóm tiến hành đánh giá hiệu quả của hệ thống khi chạy trên thực tế cho việc nhận diện mã Barcode Điều kiện để hoạt động mô hình là phải được thực hiện trong môi trường vừa đủ sáng, không chói sáng hay thiếu sáng, mã Barcode được dán trên phong nền màu trắng và kích cỡ mã Barcode phải vừa đủ với ống kính của camera (tùy vào mô hình thiết kế phần đưa hàng, kích cỡ và tiêu cự ống kính của camera)
Hình 4.1 Thiết kế mã Barcode
Quá trình đánh giá được tiến hành theo cả hai hình thức là đưa hàng và lấy hàng, nhóm tiến hành thực nghiệm hệ thống trong các trường hợp như sau:
Hình 4.2 Hình ảnh thực tế mã Barcode (ánh sáng vừa đủ)
STT ô hàng Quá trình đưa hàng
Thời gian (s) Số lần chính xác trên 10 lần thử Tỷ lệ chính xác Tỷ lệ sai số
Bảng 4.1 Kết quả thực nghiệm khi đưa hàng (ánh sáng vừa đủ)
STT ô hàng Quá trình lấy hàng
Thời gian (s) Số lần chính xác trên 10 lần thử Tỷ lệ chính xác Tỷ lệ sai số
Bảng 4.2 Kết quả thực nghiệm khi lấy hàng (ánh sáng vừa đủ)
Hình 4.3 Hình ảnh thực tế mã Barcode (thiếu sáng)
STT ô hàng Quá trình đưa hàng
Thời gian (s) Số lần chính xác trên 10 lần thử
Tỷ lệ chính xác Tỷ lệ sai số
Bảng 4.3 Kết quả thực nghiệm khi đưa hàng (thiếu sáng)
STT ô hàng Quá trình lấy hàng
Số lần chính xác trên 10 lần thử Tỷ lệ chính xác Tỷ lệ sai số
Bảng 4.4 Kết quả thực nghiệm khi lấy hàng (thiếu sáng)
Hình 4.4 Hình ảnh thực tế mã Barcode (chói sáng)
STT ô hàng Quá trình đưa hàng
Số lần chính xác trên 10 lần thử Tỷ lệ chính xác Tỷ lệ sai số
Bảng 4.5 Kết quả thực nghiệm khi đưa hàng (chói sáng)
STT ô hàng Quá trình lấy hàng
Số lần chính xác trên 10 lần thử Tỷ lệ chính xác Tỷ lệ sai số
Bảng 4.6 Kết quả thực nghiệm khi lấy hàng (chói sáng)
Sau khi tiến hành thực nghiệm hệ thống trong cả ba môi trường là ánh sáng vừa đủ, thiếu sáng và chói sáng, ta có được bảng đánh giá thực nghiệm tổng hợp cho cả ba môi trường như sau:
Tỷ lệ chính xác trong điều kiện ánh sáng vừa đủ
Tỷ lệ chính xác trong điều kiện thiếu sáng
Tỷ lệ chính xác trong điều kiện chói sáng
Bảng 4.7 Bảng đánh giá tổng hợp cho cả ba môi trường chiếu sáng
Hình 4.5 Phần mã Barcode bị che khuất trong thực tế
Nếu mã Barcode bị che khuất ở một phần nào đó thì hệ thống sẽ không đọc được.
Nhận xét và đánh giá
Dựa vào kết quả thực nghiệm, nhóm có một số nhận xét như sau:
Trong môi trường ánh sáng thuận lợi vừa đủ thì tốc độ nhận dạng và đưa hàng đến vị trí chính xác tùy theo ô với tỷ lệ nhận dạng đúng liên tục
Trong môi trường ánh sáng không thuận lợi (thiếu sáng, chói sáng) thì tỷ lệ nhận dạng chưa được chuẩn xác lắm
4.2.2 Đánh giá Đánh giá chung cho hệ thống theo một cách khách quan là tốc độ xử lý ảnh và tỷ lệ chính xác khi phân loại đạt kết quả khá ổn, khả năng nhận dạng tốt trong các môi trường với cường độ ánh sáng khác nhau, ngoài ra với các điều kiện khác liên quan đến mã Barcode như: có nét dư, bị che khuất, thì hệ thống đều có khả năng nhận diện tốt Tuy nhiên do kích thước mô hình và thời gian thực hiện đề tài có giới hạn nên nhóm không thể giải quyết hết các vấn đề phát sinh cũng như thuật toán để cải tiến mô hình hoạt động ổn định và năng suất cao hơn, nếu so với các hệ thống lớn khác thì hiệu suất của máy chỉ dừng lại ở mức thấp tuy nhiên về cơ bản vẫn thực hiện và giải quyết được các vấn đề mà một hệ thống tương tự trong thực tế cần phải có.