Chương 1: Tổng quan Giới thiệu tổng quan về đề tài “Thiết kế, thi công mô hình phân loại sản phẩm theo mã QR và đóng thùng”. • Chương 2: Cơ sở lý thuyết Giới thiệu về hệ thống đóng thùng, công nghệ quét mã QR, chuẩn giao tiếp truyền thông RS422… • Chương 3: Tính toán và thiết kế Thiết kế phần cơ khí, thiết kế phần điện, lựa chọn thiết bị… • Chương 4: Thi công hệ thống Thi công phần cơ khí, thi công phần điện, lập trình phần mềm điều khiển, giao diện quan sát, hoàn thiện hệ thống. • Chương 5: Kết quả thực hiện Kết quả thu được, đưa ra nhận xét, đánh giá. • Chương 6: Kết luận và hướng phát triển Rút ra kết luận, đưa ra định hướng phát triển cho đề tài.
Giới hạn đề tài - Hệ thống hoạt động với đối tượng sản phẩm, hộp được nhóm thực hiện chuẩn bị trước. - Hệ thống cần có máy tính để thực hiện giao tiếp với PLC. - Nhóm thực hiện chỉ xây dựng mô hình nhỏ gọn, không làm thành mô hình sản xuất. - Hệ thống không nhận diện được sản phẩm không có mã QR.
3 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2. Giới thiệu về công nghệ quét mã QR 2. Tổng quan về công nghệ quét mã QR Mã QR là một loại mã vạch ma trận (hay mã vạch hai chiều) được phát triển bởi công ty Denso Wave (Nhật Bản) vào năm 1994. Tên gọi "QR" xuất phát từ "Quick Response" trong tiếng Anh, có nghĩa là đáp ứng nhanh hay xử lí nhanh, bởi người tạo ra nó muốn mã được giải mã với tốc độ cao.
Cấu tạo mã QR Hình 2.1: Cấu tạo mã QR Hình 2.1 thể hiện các thành phần cấu tạo của mã QR, trong đó: - Finder pattern: Ba hình vuông lớn ở ba góc giúp xác định vị trí và hướng của mã QR. - Alignment Pattern: Các hình vuông nhỏ hơn giúp đảm bảo mã QR được quét chính xác dù có biến dạng. - Timing Pattern: Các đường kẻ xen kẽ giúp định vị các ô trong mã. 4 - Format Information: Chứa thông tin về mức độ sửa lỗi và mẫu mặt nạ sử dụng.
Ứng dụng của Mã QR - Marketing và Quảng cáo: Mã QR giúp dễ dàng chuyển đổi từ nội dung vật lý sang kỹ thuật số, ví dụ như quảng cáo trên tờ rơi, biển quảng cáo, bao bì sản phẩm. - Thanh toán di động: Mã QR được sử dụng rộng rãi trong các hệ thống thanh toán di động như WeChat Pay, Alipay, MoMo tại Việt Nam. - Theo dõi sản phẩm và Quản lý kho: Giúp theo dõi và quản lý hàng hóa trong các kho hàng và chuỗi cung ứng. - Chia sẻ thông tin nhanh chóng: Mã QR cho phép chia sẻ thông tin liên lạc, liên kết trang web, văn bản, hoặc địa chỉ email một cách nhanh chóng và thuận tiện.
Thiết bị quét mã QR - Điện Thoại Thông Minh/máy tính bảng: là thiết bị phổ biến nhất để quét mã QR. Hầu hết các điện thoại/máy tính bảng hiện đại đều có sẵn ứng dụng quét mã QR hoặc có thể tải từ cửa hàng ứng dụng. Camera của điện thoại sẽ quét mã và ứng dụng sẽ giải mã để hiển thị thông tin hoặc điều hướng đến một trang web. - Máy Quét Mã Vạch Chuyên Dụng: thường được sử dụng trong cửa hàng bán lẻ, nhà kho, và môi trường công nghiệp, với các loại như: • Máy quét cầm tay: Nhỏ gọn, dễ sử dụng.
• Máy quét để bàn: Cố định, thường dùng tại quầy thu ngân. • Máy quét tích hợp: Tích hợp vào hệ thống POS và thiết bị kiểm kho. - Máy Tính Cá Nhân và Laptop: quét mã QR bằng webcam kết hợp với phần mềm quét mã QR như QR Code Desktop Reader & Generator hoặc Barcode Scanner v. Xử lý ảnh và giải mã mã QR 2.
Xử lý ảnh Xử lý ảnh là một lĩnh vực quan trọng trong khoa học máy tính và kỹ thuật, liên quan đến việc phân tích và thao tác các hình ảnh kỹ thuật số nhằm trích xuất thông tin cần thiết tùy vào yêu cầu của dự án hoặc người sử dụng. Các ứng dụng của xử lý ảnh rất đa dạng, từ nhận diện khuôn mặt, xử lý y tế, đến thị giác máy tính trong tự động hóa. 5 Quá trình xử lý ảnh bao gồm các bước sau: Hình 2.2: Các bước cơ bản của xử lí ảnh[1] Hình 2.2 thể hiện các bước của quá trình xử lý ảnh, bao gồm: - Thu nhận ảnh: Quá trình lấy hình ảnh trực tiếp từ thiết bị như camera hoặc từ các video hiện có. - Tiền xử lý: Ảnh sau khi thu được cần đưa vào bộ tiền xử lý để nâng cao chất lượng.
Chức năng chính của bộ tiền xử lý là loại bỏ nhiễu và tăng cường độ tương phản để làm cho hình ảnh trở nên rõ ràng và sắc nét hơn. Các kỹ thuật được sử dụng để cải thiện chất lượng hình ảnh bao gồm lọc nhiễu, điều chỉnh độ sáng, và cân bằng màu sắc. - Phân đoạn ảnh: Tách hình ảnh thành các vùng hoặc đối tượng có ý nghĩa để phân tích sâu hơn. Tùy vào yêu cầu sử dụng phân đoạn ảnh sẽ tập trung vào vị trí đối tượng chính cần phân tích giúp tối ưu việc xử lý ảnh để cho ra kết quả chính xác nhất.
Đây là phần phức tạp và khó khăn nhất trong xử lý ảnh, dễ gây lỗi và làm giảm độ chính xác của hình ảnh. - Biểu diễn và mô tả: Hiển thị và mô tả các đối tượng đã được nhận dạng để sử dụng trong các ứng dụng cao cấp hơn như phân tích hình ảnh hoặc thị giác máy tính. - Nhận dạng và nội suy: Nhận diện hình ảnh là quy trình xác định một hình ảnh cụ thể. Quy trình này thường được thực hiện bằng cách so sánh với các mẫu chuẩn đã được học hoặc lưu trữ trước đó.
Nhận diện các đối tượng hoặc mẫu trong hình ảnh dựa trên các đặc trưng đã trích xuất. - Cơ sở tri thức: Ảnh là một đối tượng khá phức tạp với nhiều yếu tố như đường nét, độ sáng tối, dung lượng điểm ảnh và môi trường thu ảnh đa dạng, dẫn đến 6 việc ảnh hưởng bởi nhiễu. Trong nhiều giai đoạn của quá trình xử lý và phân tích ảnh, ngoài việc đơn giản hóa các phương pháp toán học để tiện lợi cho việc xử lý, người ta còn mong muốn mô phỏng quá trình tiếp nhận và xử lý hình ảnh tương tự như cách con người thực hiện. Trong các bước xử lý này, nhiều giai đoạn hiện nay đã áp dụng các phương pháp trí tuệ nhân tạo.
Do đó, cơ sở tri thức đóng vai trò quan trọng trong việc này. Các kỹ thuật chính trong xử lý ảnh Chuyển đổi không gian màu (Color Space Conversion) Chuyển đổi giữa các không gian màu khác nhau như RGB, HSV, YcbCr… để phù hợp với các ứng dụng cụ thể. Các không gian màu khác nhau có thể nhấn mạnh các đặc tính khác nhau của hình ảnh. Lọc ảnh Lọc ảnh là quá trình loại bỏ hoặc giảm thiểu nhiễu trong hình ảnh.
Có nhiều loại lọc khác nhau: • Lọc tuyến tính (Linear Filtering): Sử dụng các mặt nạ tuyến tính như lọc trung bình (mean filter), lọc Gaussian. • Lọc phi tuyến (Non-Linear Filtering): Sử dụng các mặt nạ phi tuyến như lọc trung vị (median filter). Phát hiện cạnh Phát hiện cạnh là quá trình xác định các điểm trong hình ảnh nơi cường độ thay đổi đột ngột. Các kỹ thuật phổ biến bao gồm: • Sobel Operator • Canny Edge Detector Biến đổi Fourier Biến đổi Fourier được sử dụng để phân tích các tần số trong hình ảnh.
Biến đổi này giúp trong việc lọc và nén ảnh. Phân đoạn ảnh (Image Segmentation) Phân đoạn ảnh chia hình ảnh thành các vùng hoặc đối tượng có ý nghĩa. Các kỹ thuật phân đoạn bao gồm: • Phân đoạn dựa trên ngưỡng (Thresholding) 7 • Phân đoạn theo vùng (Region-Based Segmentation) • Phân đoạn bằng phương pháp phân cụm (Clustering-Based Segmentation) Trích xuất đặc trưng Trích xuất các đặc trưng quan trọng để nhận dạng và phân loại, bao gồm: • Các đặc trưng hình dạng (Shape Features) • Các đặc trưng kết cấu (Texture Features) • Các đặc trưng màu sắc (Color Features) 2. Giải mã mã QR Để có thể giải mã QR các thiết bị đọc sẽ tiến hành các bước sau: - Xử lý ảnh đầu vào: Ảnh chứa mã QR được chụp và đưa vào xử lý.
Ảnh có thể được lọc để giảm nhiễu và cải thiện độ tương phản. - Phát hiện mã QR: Sử dụng các thuật toán như phát hiện cạnh và tìm kiếm hình vuông để xác định vị trí của mã QR trong hình ảnh. - Phân tích cấu trúc mã QR: Mã QR có cấu trúc đặc biệt với các mẫu phát hiện góc và mẫu đồng bộ. Phân tích cấu trúc này giúp xác định chính xác vị trí và góc nghiêng của mã.
- Biến đổi hình học: Sử dụng phép biến đổi hình để chuẩn hóa mã QR về dạng vuông và đúng kích thước. - Giải mã dữ liệu: Dữ liệu trong mã QR được mã hóa dưới dạng các ô đen và trắng. Các ô này được đọc theo một trình tự được qui định sẵn để giải mã thông tin chứa trong đó. Các thông tin này có thể bao gồm văn bản, URL, hoặc các loại dữ liệu khác.
- Sửa lỗi: Mã QR sử dụng các kỹ thuật mã hóa sửa lỗi như Reed-Solomon để phát hiện và sửa các lỗi đọc, đảm bảo dữ liệu chính xác ngay cả khi mã QR bị hư hỏng một phần. Ngôn ngữ lập trình, môi trường phát triển, thư viện quét mã QR và giao diện người dùng 2. Ngôn Ngữ Lập Trình Hiện nay, có nhiều ngôn ngữ lập trình hỗ trợ xử lý ảnh, mỗi ngôn ngữ đều có các thư viện và công cụ mạnh mẽ để thực hiện các tác vụ từ cơ bản đến nâng cao. 8 Phổ biến nhất hiện nay là Python với cú pháp đơn giản dễ hiêu và có nhiều thư viện hỗ trợ mạnh mẽ như: OpenCv, Pillow, Numpy, scikit-image.
Bên cạnh đó ngôn ngữ lập trình C# cũng là một ngôn ngữ phổ biến không kém với các thư viện như Aforge.NET, Emgu CV. Là ngôn ngữ lập trình hiện đại, hướng đối tượng và đa năng được phát triển bởi Microsoft có thể sử dụng trên Windows.NET framework hoặc các nền tảng mã nguồn mở khác. Ngoài 2 ngôn ngữ lập trình kể trên còn có Java, Javascript, Matlab, C++, GO … cũng có thể hỗ trợ xử lý ảnh với các tính năng nổi trội khác.Môi trường phát triển Visual Studio là một môi trường phát triển tích hợp (IDE) được phát triển bởi Microsoft, cung cấp các công cụ toàn diện để phát triển, gỡ lỗi và triển khai các ứng dụng. Đây là một trong những IDE phổ biến nhất và mạnh mẽ nhất, được sử dụng rộng rãi trong phát triển phần mềm.