hệ thống phân loại sản phẩm bằng mã QRcode sử dụng PLC S7-1200 ứng dụng trong nhà máy xí nghiệp Lọc sản phẩm lỗi bằng camera, cảm biến tiệm cận E3F DS30C4. Trọng lượng không quá 2kg. Mục tiêu đề tài: - ứng dụng kiến thức chuyên môn vào thực tế. - Thiết kế được hệ thống phân loại sản phẩm bằng mã Qrcode dùng PLC S7-1200 Kết quả dự kiến - Báo cáo tổng quan về hệ thống phân loại sản phẩm bằng mã Qrcode dùng PLC S7-1200. - Bản tính toán thiết kế hệ thống điều khiển, tủ điều khiển, bản vẽ. - Tính toán, viết chương trình điều khiển cho hệ thống. - Thiết kế giao diện giám sát.
TỔNG QUAN VỀ HỆ THỐNG PHÂN LOẠI SẢN PHẨM THEO MÃ QR CODE
Đặt vấn đề
Trong thời đại hiện nay, xã hội đang phát triển mạnh mẽ, và nhu cầu về cuộc sống của con người cũng ngày càng tăng cao Điều này làm cho việc áp dụng khoa học kỹ thuật và công nghệ hiện đại trở nên phổ biến và lan rộng hơn Nhờ vào điều này, sức lao động trong quá trình sản xuất có thể được giảm thiểu Mức độ tự động hóa tại các phân xưởng, nhà kho và các khu vực quản lý cũng ngày càng được nâng cao.
Các thiết bị tiên tiến yêu cầu khả năng xử lý và độ chính xác của các hệ thống sản xuất ngày càng cao hơn, nhằm đáp ứng nhu cầu sản xuất về số lượng, chất lượng và thẩm mỹ ngày càng tăng của xã hội. Để đáp ứng nhu cầu thực tế về tự động hóa trong các phân xưởng, nhà kho và các khu vực quản lý, việc phân loại sản phẩm trở nên rất quan trọng. Với kiến thức đã học được trong trường, em đã nghiên cứu và thực hiện đề tài về phân loại sản phẩm bằng mã QRcode Mặc dù chỉ là một phần nhỏ trong quy trình sản xuất, nhưng em hy vọng rằng với đề tài này, chúng ta có thể củng cố kiến thức đã học và áp dụng nó trong thực tế sản xuất.
Hình 1.1 Dây chuyền phân loại sản phẩm Để đạt được sản lượng cao mà lại tiết kiệm về mặt kinh tế, các công ty và xí nghiệp sản xuất thường áp dụng công nghệ lập trình PLC, xử lý ảnh và sử dụng các loại phần mềm tự động Việc phân loại và đếm sản phẩm bằng cách này giảm bớt sức lao động của công nhân và giảm chi phí doanh nghiệp, đồng thời mang lại hiệu quả cao, phản ánh trong việc đáp ứng kịp thời nhu cầu của xã hội.
Thông qua bài tập của đồ án, em sẽ giới thiệu về lập trình PLC, xử lý ảnh và cách áp dụng chúng vào quá trình sản xuất để phân loại sản phẩm theo mã Qrcode.
Mục tiêu nghiên cứu
Đề tài "Thiết kế hệ thống phân loại sản phẩm bằng mã QRcode sử dụng PLC S7-1200 ứng dụng trong nhà máy, xí nghiệp" bao gồm việc hiểu rõ về xử lý ảnh và phương pháp điều khiển lập trình logic (PLC) Mục đích của dự án này là xây dựng một hệ thống tự động phân loại sản phẩm dựa trên mã QRcode bằng PLC S7-1200 và ứng dụng trong môi trường nhà máy hoặc xí nghiệp.
Trong hệ thống này, ba loại sản phẩm khác nhau được gắn với các mã QRcode riêng và đặt lên băng chuyền để di chuyển qua camera Camera sẽ nhận và đọc các tín hiệu từ mã QRcode này, sau đó gửi dữ liệu đến PLC PLC sẽ tiếp nhận và xử lý dữ liệu này, sau đó điều khiển các thiết bị như xilanh để đẩy sản phẩm vào vị trí phân loại tương ứng. Để thực hiện điều này, cần có kiến thức sâu rộng về xử lý ảnh, bao gồm nhận dạng và đọc mã QRcode Ngoài ra, hiểu biết chuyên sâu về lập trình và điều khiển từ PLC cũng là yếu tố cần thiết Bằng cách kết hợp hai lĩnh vực này, hệ thống sẽ hoạt động một cách chính xác và hiệu quả, giúp tối ưu hóa quy trình sản xuất và tăng cường tự động hóa trong môi trường sản xuất công nghiệp.Đối tượng và phạm vi nghiên cứu
1.2.1 Đối tượng nghiên cứu
- Lập trình xử lý ảnh bằng phần mềm LabVIEW.
- Sử dụng WinCC thiết kế giao diện điều khiển, giám sát hệ thống.
- Kết nối các phần mềm để hệ thống có thể hoạt động.
- Điều khiển cơ cấu chấp hành dùng PLC Siemens.
- Đọc, xử lý mã Qr Code bằng phần mềm LabVIEW.
- Lập trình PLC bằng phần mềm Tia Portal.
- Xây dựng giao diện điều khiển WinCC
Ý nghĩa khoa học và thực tiễn của đề tài
Trong khi xu hướng công nghệ hóa hiện đại hóa phát triển và dần phổ biến toàn cầu, những ngành nghề tưởng chừng như không liên quan đến công nghệ cũng đang chuyển đổi phương thức từ sản xuất đến kinh doanh dựa trên nền tảng công nghệ Chế biến phân loại nông sản thủy sản bằng máy tự động, đóng gói tự động, băng chuyển phân loại sản phẩm tự động.
Thuật toán xử lý ảnh là một công nghệ tiên tiến có khả năng trích xuất thông tin có giá trị từ hình ảnh Hệ thống xử lý ảnh được tích hợp vào dây chuyền băng tải và kết hợp với hệ thống khí nén, cho phép giám sát và phân tích chất lượng sản phẩm trong thời gian thực Các thuật toán học máy được sử dụng để đưa ra quyết định chính xác và đáng tin cậy dựa trên hình ảnh thu được từ camera Nhờ đó, hệ thống có thể tự động phát hiện lỗi, phân loại sản phẩm và tối ưu hóa quy trình sản xuất, mang lại hiệu quả và năng suất cao cho ngành công nghiệp.
Hình 1.3 Hình minh họa diện, phân loại sản phẩm, kiểm tra lỗi sản phẩm giúp giảm chi phí nhân công, tăng độ chính xác, tăng năng suất giảm được chi phí sản xuất và hạ giá thành sản phẩm.
Hơn nữa, ứng dụng công nghệ mã vạch vào sản xuất giúp nhà sản xuất có thể kiểm soát chặt chẽ về số lượng cũng như toàn bộ quy trình sản xuất sản phẩm thông qua hệ thống máy tính để có cái nhìn bao quát nhất.
Kết luận
Chương 1 đã phân tích và đưa ra vấn đề cần giải quyết,từ đó nhận thấy sự cần thiết của đề tài Để có thể giải quyết vấn đề được tốt ta cần phải hiểu rõ các ứng dụng, thiết bị cần thiết trong đề tài Vậy ta cùng sang chương 2 để tìm hiểu rõ.
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT VÀ TÌM HIỂU CÁC PHẦN MỀM
Đề tài nghiên cứu yêu cầu thiết kế hệ thống phân loại sản phẩm sử dụng mã QR code với PLC S7-1200, do đó cần trang bị kiến thức cơ bản về: PLC, phần mềm lập trình PLC TIA Portal, kỹ thuật xử lý ảnh và cách kết nối các thiết bị liên quan trong hệ thống.
2.1 Tổng quan về bộ điều khiển logic khả trình PLC và các thông số cơ bản của PLC S7-1200
PLC viết tắt từ "Programmable Logic Controller", là một thiết bị điều khiển có khả năng thực hiện các chức năng logic, tạo ra xung, đếm thời gian, đếm xung và tính toán, nhằm điều khiển nhiều loại máy móc và thiết bị xử lý khác nhau Theo Hiệp hội Quốc gia về Sản xuất Điện Hoa Kỳ (NEMA), PLC là một máy tính công nghiệp được lập trình để thực hiện một chuỗi quy trình cụ thể PLC tổ chức các chức năng này trong bộ nhớ theo chương trình được lập trình sẵn Đơn giản mà nói, PLC là một công cụ quan trọng trong tự động hóa công nghiệp.[CITATION Đại18 \l 1033 ]
Sự phức tạp của việc điều khiển máy móc công nghiệp đã thúc đẩy việc tìm kiếm giải pháp tối ưu Trước đây, hệ thống điện được lắp đặt thủ công, tốn nhiều thời gian và vật tư Để giải quyết vấn đề này, tự động hóa được áp dụng, giúp giảm sức người, tăng năng suất và đảm bảo an toàn cho người lao động trong môi trường nguy hiểm hoặc độc hại.
Hệ thống điều khiển tốt nhất cho ngành công nghiệp hiện đại cần phải có các yếu tố sau: tự động cao, kích thước nhỏ gọn, giá thành hợp lý, dễ thi công, sửa chữa và có chất lượng làm việc ổn định và linh hoạt. Để đáp ứng các yêu cầu trên, PLC (Programmable Logic Controller) đã được phát triển từ năm 1968 bởi Công ty General Motors tại Mỹ Mặc dù ban đầu PLC còn đơn giản và cồng kềnh, nhưng sau nhiều năm cải tiến và phát triển, PLC ngày nay đã giải quyết được nhiều vấn đề và mang lại nhiều ưu điểm, bao gồm:
Kích thước nhỏ gọn và dễ thay đổi thuật toán điều khiển.
Khả năng mở rộng với các module vào ra khi cần thiết.
Ngôn ngữ lập trình dễ hiểu và phù hợp với nhiều đối tượng lập trình.
Khả năng truyền thông và trao đổi thông tin với các thiết bị khác như máy tính, PLC khác, các thiết bị giám sát, điều khiển.
Khả năng chống nhiễu và độ tin cậy cao.
Trên thị trường hiện nay, nhiều thương hiệu PLC khác nhau được cung cấp như Omron, Mitsubishi, Hitachi, ABB, Siemens Mỗi thương hiệu đều sở hữu những ưu điểm riêng, được ứng dụng tùy theo nhu cầu và mục đích sử dụng của khách hàng.
2.1.3 Nguyên lý hoạt động của PLC
Hình 2.2 Chương trình thực hiện theo vòng quét (scan) trong PLC
PLC thực hiện chương trình theo chu kỳ lặp được gọi là vòng quét (Scan) Mỗi vòng quét bắt đầu bằng việc chuyển dữ liệu từ các cổng vào tới vùng bộ đệm ngõ vào ảo, sau đó tiến hành thực hiện chương trình Trong mỗi vòng quét, chương trình được thực hiện từ lệnh đầu tiên cho đến lệnh kết thúc Sau giai đoạn thực hiện chương trình là giai đoạn truyền thông nội bộ và kiểm tra lỗi Cuối cùng, các nội dung của bộ đệm ngõ ra ảo được chuyển tới các cổng ra
PLC có nhiều cách để phân loại như:
- Phân loại theo hãng sản xuất:
Các nhãn hiệu như: Siemens, Ormon, Misubishi, Liyan, Fatek, …
+ PLC Siemens có các họ như: S7-200, S7-300, S7-1200, …
+ Misubishi có các họ như Alpha, Fx, Fx0, Fx0N, Fx1N, Fx2N, …
- Phân loại theo số lượng các đầu vào ra:
Ta có thể phân loại PLC thành 4 loại sau:
+ Micro PLC là loại có dưới 32 kênh vào/ra.
+ PLC nhỏ có đến 256 kênh vào/ra.
+ PLC trung bình có đến 1024 kênh vào/ra.
+ PLC có trên 1024 kênh vào/ra.
Nhìn chung PLC có rất nhiều loại với các chức năng phù hợp với các dự án khác nhau Qua tìm hiểu thì ở đề tài lần này chúng em quyết định sử dụng PLC Siemens S7-1200 Vậy sau đây là một số điểm của S7-1200.
2.1.5 Cấu hình và điều hành Simatic S7-1200
Hình 2.3 PLC S7-1200 2.1.5.2 Module mở rộng
Hình 2.4 PLC S7-1200 và Module mở rộng 2.1.5.3 Module truyền thông
Hình 2.5 PLC S7-1200 và Module truyền thông
Các dạng module của PLC S7-1200:
- Tích hợp cổng truyền thông Profinet (Ethernet) tạo sự dễ dàng trong kết nối.
- Simatic S7–1200 với Simatic HMI Basic được lập trình chung trên một nền phần mềm là TIA Portal V16 (Simatic Step 7 Basic, WinCC Basic) hoặc version khác Các thao tác lập trình thực hiện theo cách kéo – thả, do đó tạo sự dễ dàng cho người sử dụng, lập trình nhanh chóng, đơn giản, chính xác trong sự truyền thông kết nối theo tags.
- Tích hợp sẵn các đầu vào/ra, cùng với các board tín hiệu, khi cần mở rộng ứng dụng với số lượng đầu vào/ra ít sẽ tiết kiệm được chi phí, không gian và phần cứng.
→ Việc có thể linh hoạt các tích hợp cho PLC nên cực kì dễ dàng cho người sử dụng sản phầm trong việc mua gói thiết bị.
2.1.6 Cấu trúc bên trong của PLC S2-1200
Tất cả các bộ điều khiển lập trình được (PLC) cơ bản phải gồm có hai phần: khối xử lý trung tâm (CPU: Central Processing Unit) và hệ thống giao tiếp vào ra I/O.
Hình 2.7 Cấu trúc của PLC
Bộ xử lý trung tâm:
Bộ xử lý trung tâm là thành phần quan trọng nhất của một PLC, gồm có ba phần: bộ xử lý, hệ thống bộ nhớ và hệ thống nguồn cung cấp Bộ xử lý thực hiện chương trình điều khiển được lưu trữ trong hệ thống bộ nhớ có dạng sơ đồ ladder, trong khi hệ thống nguồn cung cấp cung cấp tất cả cấp điện áp cần thiết để đảm bảo hoạt động của bộ nhớ và bộ xử lý.
Ngõ vào và ngõ ra:
Ngõ vào và ngõ ra cần thiết để PLC có thể giám sát và điều khiển một quá trình Dựa vào tín hiệu để PLC giám sát và điều khiển ta phân loại như sau:
Ngõ vào số của PLC được sử dụng để nhận những trạng thái thiết bị ngõ vào ON/OFF Việc này chủ yếu để lấy thông tin trạng thái thiết bị ngoại vi Đối với mỗi thiết bị đầu vào sẽ sử dụng năng lượng tiêu thụ khác nhau, điện áp khác nhau khi nút nhấn của bảng điều khiển và các loại cảm biến được kết nối vào module input Người dùng nên lựa chọn module phù hợp với thiết bị đầu vào.
Module đầu vào số của PLC có thể được chia thành ngõ vào DC, ngõ vào AC theo kiểu điện áp ngõ vào loại cách ly hay không cách ly Loại cách ly dùng để cô lập nhiễu đối với môi trường công nghiệp khắc nghiệt.
CƠ SỞ LÝ THUYẾT VÀ TÌM HIỂU CÁC PHẦN MỀM MÔ PHỎNG DÙNG TRONG ĐỀ TÀI
Tia portal
Hình 2.9 Giao diện TIA Portal
Phần mềm Totally Integrated Automation Portal (TIA Portal) ra đời vào năm 1996, giúp các kỹ sư tiết kiệm thời gian và chi phí trong toàn bộ vòng đời hệ thống tự động hóa, từ thiết kế đến bảo trì nâng cấp Giao diện thân thiện với người dùng thích hợp cho cả người mới bắt đầu và có kinh nghiệm TIA Portal tích hợp đầy đủ các tính năng cấu hình, lập trình, thử nghiệm và chẩn đoán cho tất cả các bộ điều khiển PLC, module và HMI của Siemens Ngoài ra, với công cụ mô phỏng tiên tiến, phần mềm còn giúp tăng tốc quá trình phát triển và cung cấp các giải pháp tự động hóa liền mạch.
2.2.2 Điểm nổi bật của TIA Portal V16
Phần mềm TIA Portal V15.1 là phần mềm lập trình được biết đến và sử dụng rộng rãi với các điểm nổi bật sau đây:
- Các ngôn ngữ lập trình LAD, FBD, SCL, STL, GRAPH được hỗ trợ đầy đủ giúp kỹ sư lập trình có thể linh hoạt lựa chọn ngôn ngữ lập trình cho bộ điều khiển của hệ thống.
- Bao quát cả 4 cấp trong quá trình tự động hóa gồm cấp quản lý, cấp vận hành, cấp điều khiển và cấp trường
- Tổng hợp đầy đủ các công cụ cần thiết.
- Giao diện thân thiện, dễ sử dụng.
- Tương thích với các hệ điều hành mới nhất.
Hình 2.10 Hình minh hoạ giao diện phần mềm WinCC
Phần mềm WinCC của Siemens là một phần mềm chuyên dụng để xây dựng giao diện điều khiển HMI (Human Machine Interface) cũng như phục vụ việc xử lý và lưu trữ dữ liệu trong một hệ thống SCADA (SupervisoryControl And Data Aquisition) thuộc chuyên ngành tự động hóa.
Tùy theo chức năng sử dụng mà người dùng có thể chọn các gói khác nhau của WinCC như là một trong các lựa chọn của sản phẩm Các gói cơ bản của WinCC chia làm hai loại như sau:
WinCC Runtime Package (Viết tắt là RT): chứa các chức năng ứng dụng dùng để chạy các ứng dụng của WinCC như hiển thị, điều khiển, thông báo các trạng thái, các giá trị điều khiển và làm các báo cáo.
WinCC Complete Package (Viết tắt là RC): bao gồm bản quyền để xây dựng cấu hình hệ thống (configuration licence) và bản quyền để chạy ứng dụng (Runtime).
Ngoài ra, phần mềm SCADA WinCC còn cung cấp các mô đun mở rộng đặc biệt (WinCC Add-on) và các mô đun nâng cao (WinCC Options) dành cho những ứng dụng cấp cao hơn Các WinCC Option do Siemens Automation and Drive (A&D) phát triển, trong khi các WinCC Add-on được xây dựng bởi các bộ phận khác của Siemens hoặc đối tác của Siemens để mở rộng chức năng hoặc tùy chỉnh để phù hợp với từng loại ứng dụng cụ thể.
2.2.4 Xử lý ảnh và các vấn đề cơ bản trong xử lý ảnh
2.2.4.1 Xử lý ảnh và quá trình phát triển
Xử lý ảnh là một lĩnh vực mang tính khoa học và công nghệ Nó là một ngành khoa học mới mẽ so với nhiều ngành khoa học khác nhưng tốc độ phát triển của nó rất nhanh, kích thích các trung tâm nghiên cứu, ứng dụng, đặc biệt là máy tính chuyên dụng riêng cho nó ngày càng đa dạng và mở rộng.
Con người tiếp nhận thông tin qua các giác quan, trong đó thị giác đóng vai trò chủ đạo Trong những năm gần đây, sự tiến bộ vượt bậc của công nghệ phần cứng máy tính, xử lý ảnh và đồ họa đã tạo ra nhiều
Xử lý ảnh là quá trình thao tác trên ảnh đầu vào để tạo ra kết quả như mong muốn Kết quả của quá trình xử lý ảnh có thể là một bức ảnh "tốt hơn" hoặc một kết luận.
Hình 2.11 Cấu trúc xử lý ảnh
Các phương pháp xử lý ảnh bắt đầu từ các ứng dụng chính như nâng cao chất lượng ảnh và phân tích ảnh Ứng dụng đầu tiên được biết đến là nâng cao chất lượng ảnh báo được truyền qua cáp từ Luân đôn đến New York từ những năm 1920 Vấn đề nâng cao chất lượng ảnh có liên quan tới phân bố mức sáng và độ phân giải của ảnh Việc nâng cao chất lượng ảnh được phát triển vào khoảng những năm 1955 Điều này có thể giải thích được vì sau thế chiến thứ hai, máy tính phát triển nhanh tạo điều kiện cho quá trình xử lý ảnh sô thuận lợi Năm 1964, máy tính đã có khả năng xử lý và nâng cao chất lượng ảnh từ mặt trăng và vệ tinh Ranger 7 của Mỹ bao gồm: làm nổi đường biên, lưu ảnh Từ năm 1964 đến nay, các phương tiện xử lý, nâng cao chất lượng, nhận dạng ảnh phát triển không ngừng Các phương pháp tri thức nhân tạo như mạng nơ ron nhân tạo, các thuật toán xử lý hiện đại và cải tiến, các công cụ nén ảnh ngày càng được áp dụng rộng rãi và thu nhiều kết quả khả quan.[CITATION Ngu \l 1033 ] Để dễ tưởng tượng, xét các bước cần thiết trong xử lý ảnh Đầu tiên, ảnh tự nhiên từ thế giới ngoài được thu nhận qua các thiết bị thu (như Camera, máy chụp ảnh) Trước đây, ảnh thu qua Camera là các ảnh tương tự (loại Camera ống kiểu CCIR) Gần đây, với sự phát triển của công nghệ, ảnh màu hoặc đen trắng được lấy ra từ Camera, sau đó nó được chuyển trực tiếp thành ảnh số tạo thuận lợi cho xử lý tiếp theo (Máy ảnh số hiện nay là một thí Ảnh thu nhận Quá trình xử lý Các giá trị mong muốn dụ gần gũi) Mặt khác, ảnh cũng có thể tiếp nhận từ vệ tinh, có thể quét từ ảnh chụp bằng máy quét ảnh.
Có thể xem một ví dụ minh họa cho quá trình trên.
Có thể hiểu tiến trình xử lý ảnh trên như sau: a) Phần thu nhận ảnh (Image Acquisition) Ảnh có thể nhận qua camera màu hoặc đen trắng Thường ảnh nhận qua camera là ảnh tương tự (loại camera ống chuẩn CCIR với tần số 1/25, mỗi ảnh
25 dòng), cũng có loại camera đã số hoá (như loại CCD – Change Coupled Device) là loại photodiot tạo cường độ sáng tại mỗi điểm ảnh.
Camera thường dùng là loại quét dòng: ảnh tạo ra có dạng hai chiều. Chất lượng một ảnh thu nhận được phụ thuộc vào thiết bị thu, vào môi trường (ánh sáng, phong cảnh). b) Tiền xử lý ảnh (Image Processing)
Sau bộ thu nhận, ảnh có thể nhiễu độ tương phản thấp nên cần đưa vào
Hình 2.12 Tiến trình xử lý ảnh
Hình 2.13 Ảnh nhiễu và ảnh gốc c) Phân đoạn (Segmentation) hay phân vùng ảnh
Phân vùng ảnh là tách một ảnh đầu vào thành các vùng thành phần để biểu diễn phân tích, nhận dạng ảnh Ví dụ: để nhận dạng chữ (hoặc mã vạch) trên phong bì thư cho mục đích phân loại bưu phẩm, 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 các vạch) 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 ảnh phụ thuộc rất nhiều vào công đoạn này. d) Biểu diễn ảnh (Image Representation) Đầu ra ả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à trích chọn đặc trưng (FeatureSelection) 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 ký tự trên phong bì thư, 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. e) Nhận dạng và nội suy ảnh (Image Recognition and Interpretation)
Nhận dạng ảnh là quá trình xác định ảnh Quá trình này thường thu được bằng cách so sánh với mẫu chuẩn đã được học (hoặc lưu) từ trước Nội suy là phán đoán theo ý nghĩa trên cơ sở nhận dạng Ví dụ: một loạt chữ số và nét gạch ngang trên phong bì thư có thể được nội suy thành mã điện thoại Có nhiều cách phân loai ảnh khác nhau về ảnh Theo lý thuyết về nhận dạng, các mô hình toán học về ảnh được phân theo hai loại nhận dạng ảnh cơ bản:
- Nhận dạng theo tham số.
- Nhận dạng theo cấu trúc.
Một số đối tượng nhận dạng khá phổ biến hiện nay đang được áp dụng trong khoa học và công nghệ là: nhận dạng ký tự (chữ in, chữ viết tay, chữ ký điện tử), nhận dạng văn bản (Text), nhận dạng vân tay, nhận dạng mã vạch, nhận dạng mặt người… f) Cơ sở tri thức (Knowledge Base)
NI LabVIEW và xử lý ảnh dùng LabVIEW
LabVIEW là một ngôn ngữ lập trình hình ảnh do công ty National Instrument (NI) phát triển Nó sử dụng các biểu tượng thay cho các dòng lệnh để tạo ra một đoạn chương trình Trái ngược với các chương trình viết bằng các lệnh chữ, LabVIEW sử dụng kiểu lập trình theo luồng dữ liệu (dataflow programming), nơi mà các luồng của dữ liệu quyết định việc thực thi. [ CITATION Wik21 \l 1033 ]
Trong LabVIEW, giao diện người dùng được xây dựng trực quan bằng cách kéo thả các điều khiển và chỉ thị Lập trình được thực hiện bằng cách kết nối các biểu tượng đại diện cho các hàm và cấu trúc dữ liệu trên sơ đồ khối Giao diện đồ họa này giúp người dùng dễ dàng hiểu và sửa đổi các chương trình LabVIEW.
LabVIEW là một công cụ mạnh mẽ, tích hợp đầy đủ các hàm phục vụ chuẩn giao tiếp với các hệ thống thông dụng như: VXI, RS-232, USB,
GPIB… LabVIEW cũng được xây dựng để kết nối với các ứng dụng với các chuẩn của Web hay các nền tảng ActiveX của Windows.
Sử dụng LabVIEW, người lập trình có thể xây dựng, kiểm tra, đo lường, trao đổi dữ liệu, điều khiển… Từ việc mô phỏng trên máy tính cá nhân, người lập trình có thể kiểm tra chất lượng, tốc độ sản phẩm Sau đó, LabVIEW cho phép người sử dụng nhúng các chương trình mang tính mô phỏng này lên hệ thống thực tế và thực thi trên một hệ thống nhúng độc lập.
Các chương trình LabVIEW được gọi là các thiết bị ảo (Virtual InstrumentsVIs) Các thiết bị ảo bao gồm bốn phần chính: sơ đồ khối, khung trước, biểu tượng, và các ô kết nối.
Người lập trình xây dựng khung trước bằng các khối điều khiển và hiển thị Các khối điều khiển có thể là các nút nhấn, thanh trượt, núm xoay… Các hiển thị có thể là các biểu đồ, dòng text, LEDs, đồng hồ, nhiệt kế Các khối điều khiển của LabVIEW được xây dựng với các điều khiển gần giống với thực tế nhất có thể, chúng có nhiệm vụ cung cấp dữ liệu cho việc xử lý, hỗ trợ người dùng dễ dàng thay đổi dữ liệu Các hiển thị có nhiệm vụ hiển thị dữ liệu sau khi xử lý tùy theo mục đích của người dùng.
Sau khi xây dựng khung, lập trình viên xây dựng các thuật toán và thao tác xử lý trên sơ đồ khối Sơ đồ khối bao gồm các biểu tượng của đoạn mã, đầu cuối điều khiển, đầu cuối hiển thị, cấu trúc điều khiển, vòng lặp, hằng số và dây nối Trong sơ đồ khối, dây nối rất quan trọng vì nó nối các thành phần lại với nhau Các thành phần này phải cùng kiểu dữ liệu ra - vào.
Các kết nối các thiết bị ảo hỗ trợ việc xây dựng các hàm con (SubVIs).Chúng có thể được gọi ở các chương trình lớn hơn Nhưng để sử dụng được
2.3.2 Ngôn ngữ lập trình Labview
Môi trường Labview a) Hộp thoại khởi động
Khi mở labview sẽ xuất hiện hộp thoại khởi động, tại đây người dùng chọn các ứng dụng cần thiết đối với công việc cần thực hiện.
Hộp thoại sẽ cho người lập trình lựa chọn các tùy chọn chính sau.
- Create Project: tạo một dự án mới.
- Open Existing: mở các tệp sẵn có.
Hình 2.16 Giao diện khi khởi chạy LabVIEW
Với mục đích giúp những người mới có thể dễ dàng tiếp cận và sử dụng phần mềm một cách dễ dàng và hiệu quả, LabVIEW đã xây dựng một cách đầy đủ và hệ thống các ví dụ Find Example sẽ giúp người lập trình tìm được các code có sẵn hướng dẫn một cách nhanh chóng và xây dựng thuật toán một cách hiệu quả mang tính thực thi cao. Để truy cập phần này người dùng vào mục Help – Find Example.
Hình 2.17 Tìm các ví dụ trong LabVIEW Để tìm được các ví dụ cần phải tìm kiếm đúng các từ khóa ứng với yêu cầu của chương trình Các ví dụ chỉ được tìm thấy khi các Kit đã được cài đặt và khả dụng trong chương trình. b) Các vòng lặp, điều kiện trong LabVIEW
Vòng lặp, cấu trúc điều kiện là một thành phần không thể thiếu trong vấn đề lập trình Trong LabVIEW các vòng lặp, điều kiện được tái hiện dưới dạng hình ảnh cấu trúc Sử dụng các cấu trúc trong sơ đồ khối giúp lặp lại các tiến trình, điều khiển dựa vào điều kiện và cho các mục đích đặc biệt khác. LabVIEW có 5 vòng lặp, cấu trúc cơ ản: vòng lặp While (While Loop), vòng lặp For (For Loop), cấu trúc Case (Case Structure), cấu trúc chuỗi (Sequence Structure) và nút cách thức (Formula Node).
Vòng lặp While (While Loop):
Tùy vào cách thức thiết lập mà vòng lặp điều kiện sẽ có hai cách chạy như sau:
Cách thiết lập thứ nhất:
Hình 2.18 Cách thiết lập thứ nhất cho vòng lặp Whilte
- Số vòng lặp để thực hiện chương trình con thể hiện trên
Trong một số bài toán có thể sử dụng số lần lặp này để thực hiện thao tác liên quan đến xử lý biến tăng giảm theo yêu cầu của bài toán.
- Chương trình chỉ dừng khi được nhấn
Cách thiết lập thứ 2 khác với cách thực hiện thứ nhất là vòng lặp chỉ thực hiện khi điều kiện đúng.
Vòng lặp For (For Loop):
Có ký hiệu trong bảng hàm là:
Vòng lặp For sẽ thực hiện chương trình N lần với biến I tăng liên tục trong khoảng [0; N-1].
Hình 2.19 Vòng lặp For
Cấu trúc Case (Case Structure):
Có ký hiệu trong bảng hàm là:
Hình 2.20 Cấu trúc Case
Cấu trúc Case của LabVIEW cũng tương tự như cấu trúc Case trong C/
C++ Khi các điều kiện đặt vào đúng thì sẽ thực hiện các chương trình con trong điều kiện tương ứng.
Cấu trúc chuỗi (Sequence Structure): để gói gọn chương trình và dễ dàng điều khiển việc sử dụng các biến, các ô nhớ LabVIEW cung cấp hai dạng chuỗi có cùng chức năng đó là: Chuỗi phẳng (Flat Sequence) và chuỗi ngăn xếp (Stacked Sequence).
Hình 2.21 Hai cách thể hiện của cấu trúc chuỗi
Các cấu trúc chuỗi thực hiện các đoạn chương trình con bên trong chúng theo trình tự từ trái sang phải đối với chuỗi phẳng và từ ngăn xếp thứ 0 đối với chuỗi ngăn xếp.
Nút cách thức (Formula Node):
Có ký hiệu trong bảng hàm là:
Nút này là một hỗ trợ đắc lực cho người người lập trình Khi người sử dụng chưa hoàn toàn quen với việc sử dụng LabVIEW thì với nút này người sử dụng hoàn toàn có thể viết ngôn ngữ C bên trong LabVIEW, đây là một công cụ giúp người sử dụng không quá phụ thuộc vào việc kết nối của LabVIEW.
Ngoài các cấu trúc đã nêu ở trên thì trong thư viện lập trình củaLabVIEW còn có các cấu trúc khác hỗ trợ lập trình dễ dàng hơn trongLabVIEW như: cấu trúc vô hiệu hóa khối (Diagram Disable Structure), cấu trúc vô hiệu hóa điều kiện (Conditional Disable Structure), cấu trúc thời gian(Timed Structure) …
LẬP TRÌNH HỆ THỐNG VÀ LỰA CHỌN THIẾT BỊ 36 3.1 Yêu cầu chung về hệ thống
Nguyên lý hoạt động của hệ thống
Để đáp ứng yêu cầu chung của hệ thống, đồ án xây dựng lên nguyên lý hoạt động của toàn bộ hệ thống như sau:
Nhấn On khởi động hệ thống, cảm biến sản phẩm phát hiện có sản phẩm, xi lanh đẩy sản phẩm vào băng tải phân loại, sản phẩm chạy tới chạm cảm biến 0 đồng thời camera quét mã vạch rồi nhận diện, gửi tín hiệu về PLC để xử lý.
Khi camera nhận diện được sản phẩm 1, hệ thống sẽ lưu sản phẩm 1 này vào biến nhớ Đồng thời, khi cảm biến 1 phát hiện vật thể, xi lanh 2 sẽ kích hoạt đẩy sản phẩm vào khay chứa 1, đồng thời tăng số lượng sản phẩm 1 lên 1 đơn vị.
1 Quá trình lặp lại tương tự với các sản phẩm có mã QRcode loại 2;3 Sản phẩm sai mã QR sẽ được đưa tới khay chứ 4.
Trong khi hệ thống phân loại đang hoạt động, xi lanh 0 tiếp tục cấp phôi vào băng tải phân loại, đảm bảo tính liên tục cho toàn bộ hệ thống.
Khi nhận được lệnh tạo dữ liệu, hệ thống sẽ tự động tạo tệp excel theo mẫu có sẵn Dữ liệu về số lượng sản phẩm đã được phân loại sẽ được cập nhật liên tục theo thời gian thực khi có tín hiệu xuất dữ liệu từ hệ thống.
Lưu đồ thuật toán và sơ đồ khối
Từ nguyên lý hoạt động đã được nêu trên, đồ án xây dựng lưu đồ thuật toán cho hệ thống như sau:
Hình 3.1 Lưu đồ thuật toán
PC xử lý điều khiển PLC
Tới cảm biến 1 Tới cảm biến 2
Phôi loại 2 Đ ng cơ băng tải ộng cơ băng tải chạy
Chế đ ộng cơ băng tải v n hành ận hành
Hình 3.2 Sơ đồ khối
Lập trình PLC cho hệ thống
Các biến vào, ra và các biến trung gian của hệ thống được thiết lập trong 3 bảng biến sau:
- Default tag table gồm 61 Tag
Hình 3.3 Thiết lập các bảng tag trong plc
Chi tiết các Tag trong mỗi bảng được biểu diễn ở Phụ Lục 1.
Code chi tiết cho PLC được biểu diễn ở Phụ Lục 1.
3.4.3 Xuất dữ liệu ra Excel:
Hình 3.4 Thiết lập code xuất dữ liệu ra Excel
Code xuất dữ liệu ra Excel được biểu diễn ở Phụ Lục 1.
Lập trình labview
3.5.1 Khởi động phần mềm LabView tạo 1 project mới:
Hình 3.5 Tạo new project trong labview
3.5.2 Hiển thị hình ảnh Webcam:
Hình 3.6 Thiết lập xử lý ảnh
Hình 3.7 Thiết lập nhận ảnh
Hình 3.8 Thiết lập kết nối xử lý ảnh
Sau khi chọn nguồn cấp ảnh bên phần viết code ta thu được khối nhận ảnh (Vision Acquisition) một vòng lặp liên tục và phần hiện thị hình ảnh trên bảng hiển thị (Image Out).
Hình 3.9 Khối nhận ảnh và xuất ảnh
Functions vision and motion vision express vision assistant
Hình 3.10 Tuỳ chọn xử lý ảnh
Thiết lập ảnh nhận mã Qr Code
Sau khi thiết lập xong ta cần hiển thị giá trị trên màn hình bằng 2 khối Index Array => Create Indicator để hiển thị giá trị element
Phần lập trình chi tiết được biểu diễn ở phần Phụ Lục 2.
3.5.4 Thiết lập kết nối với OPC Server
Giao thức kết nối xử lý ảnh của LabVIEW với PLC thông qua OPC server Thiết lập địa chỉ cho OPC server
Lựa chọn các thiết bị
Với mục tiêu phân loại sản phẩm theo mã QR, đồ án đã tiến hành nghiên cứu, tìm hiểu và lựa chọn các thiết bị phần cứng phù hợp nhằm triển khai mục tiêu đề ra.
- Thiết bị đầu vào: Camera, cảm biến và các nút công tắc
- Thiết bị đầu ra: Động cơ DC, băng tải, xilanh, các van điện từ và rơle trung gian.
3.6.1 PLC S7-1200 CPU 1214C DC/DC/DC
Trong phạm vi đồ án này, trọng tâm vào nghiên cứu PLC S7-1200 CPU 1214C DC/DC/DC, đây là PLC thông dụng, số lượng cổng kết nối phù hợp
Bộ điều khiển lập trình PLC S7-1200 CPU 1214C được thiết kế theo dạng compact CPU được tích hợp sẵn các ngõ I/O Tuy nhiên PLC S7-1200 vẫn được trang bị thêm các module I/O để mở rộng khả năng của PLC PLC S7-1200 với thiết kế nhỏ gọn, đa năng, đơn giản nhưng mang đến độ chính xác cao trong hệ thống tự động.
Các thông số của PLC S7-1200 CPU 1214C DC/DC/DC:
- Điện áp nguồn và điện áp điều khiển là nguồn một chiều DC.
- Tích hợp nguồn 24V cho encoder hoặc cảm biến Nguồn dòng 300 mA sử dụng cho các loại tải khác.
- 14 ngõ DI 24 VDC, 10 ngõ DO, 2 ngõ AI 0-10V.
- Tích hợp giao tiếp Ethernet (TCP/IP native, ISO-on-TCP).
- 6 counter với 3 counter 100 kHz và 3 counter 30 kHz.
- Tích hợp điều khiển PID, và đồng hồ thời gian thực.
Hình 3.25 Sơ đồ đấu dây của PLC 1214C DC/DC/DC
Bộ nguồn có chức năng cung cấp điện 24V cho các cảm biến, động cơ
DC và các đèn Led báo hiệu Đồ án chọn thông số của bộ nguồn như bảng 3.1
Hình 3.12 Nguồn nuôi tổ ong Bảng 3.1 Thông số kỹ thuật bộ chuyển đổi nguồn AC-DC Điện áp vào 110VAC/220VAC
Dòng đầu vào 1.3A/115V 0.65A/230V Đầu ra 24VDC/10A
Phạm vi điều chỉnh điện áp 21.6 – 26.4VDC
3.6.3 Các thiết bị cảm biến, đóng cắt và bảo vệ
Aptomat (MCB): LS MCB 2 pha, dòng định mức 20A, dòng cắt ngắn mạch 6kA. BKN 2P 20A dùng để kiểm soát, bảo vệ quá tải và ngắn mạch.
Hình 3.13 MCB bảo vệ
Bảng 3.2 Thông số kỹ thuật MCB BKN
Dòng sản phẩm MCB BKN
Chức năng Dùng để kiểm soát,bảo vệ quá tải và ngắn mạch Ứng dụng Dùng trong mạng lưới điện dân dụng và công nghiệp
Relay Trung Gian: Relay 10A 8 chân 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ử, điều khiển logic và các ứng dụng về điều khiển công suất.
Hình 3.14 Relay trung gian
Kích thước 34mm x 27mm x 20mm
Camera: là thiết bị không thể thiếu trong việc đọc mã vạch in trên sản phẩm Camera phải có độ phân giải tốt để cung cấp hình ảnh cho máy tính xử lý thông tin, cũng như có tiêu cự cố định để không bị mất nét bất cứ sản phẩm nào.
Bảng 3.4 Thông số kỹ thuật Camera Độ phân giải tối đa 720p/30fps
Loại tiêu cự Lấy nét cố định
Công nghệ thấu kính Tiêu chuẩn
Van điện từ khí nén: Van AIRTAC
4V210-08 là loại van khí nén 5/2 có 5 cổng
2 vị trí và 1 đầu coil điện, thường được dùng để điều khiển xi lanh khí nén.
Hình 3.16 Van điện từ 5/2
Bảng 3.5 Thông số kỹ thuật van 5/2
Kích thước cổng 1/4'' (ren 13)
Kích thước cổng xả 1/8'' (ren 9.6)
Hãng sản xuất AIRTAC (Đài Loan)
Xi lanh khí nén: tạo ra lực đẩy pít tông của xilanh chuyển động, đẩy vật trên bằng truyền xuống máng
Hình 3.18 Xi lanh khí nén
Bảng 3.7 Thông số kĩ thuật của xi lanh khí nén
Loại xi lanh Xi lanh đơn, có lò xo
Kích thước thân Thân tròn phi 16mm
Kích thước cổ chống xoay Phi 21mm
Cảm biến quang là thiết bị dùng để phát hiện sự có mặt hoặc các đặc điểm vật lý của đối tượng bằng bức xạ điện từ Trong sản xuất, cảm biến quang đóng vai trò quan trọng trong việc phát hiện vị trí phôi tại các vị trí cố định, truyền tín hiệu về bộ điều khiển Sau đó, bộ điều khiển sẽ xử lý thông tin này và đưa ra tín hiệu điều khiển thích hợp để đảm bảo quá trình sản xuất diễn ra chính xác và hiệu quả.
Hình 3.19 Cảm biến quang
Bảng 3.8 Thông số kỹ thuật cảm biến quang
Loại Phản xạ khuếch tán
Khoảng cách phát hiện 0 – 1000mm
Ngõ ra NPN Độ nhạy 1ms
Bộ lọc khí nén: có chức năng điều chỉnh áp suất và lọc tách nước giúp loại bỏ được các chất bẩn và nước giúp không khí sạch hơn
Hình 3.17 Bộ lọc khí nén
Bảng 3.6 Thông số kỹ thuật bộ lọc khí nén
Kích thước cổng 1/4'' (ren 13)
Áp suất làm việc tối đa 10 kg/cm 2
Hãng sản xuất AIRTAC (Đài Loan)
Việc chọn động cơ có ý nghĩa lớn về kinh tế và kỹ thuật nó ảnh hưởng trực tiếp đến việc thiết kế cũng như vận hành quản lí băng tải Số lượng động cơ chọn phải đảm bảo sao cho sát với yêu cầu thiết kế Động cơ 220VAC
Mã sản phẩm EXCEM D840-30B Điện thế 220VAC
Tốc độ định mức 3000 vòng/phút
Momen định mức 1.3 kg.cm
Mặt bích Vuông 80mm
Bảng 3.9 Thông số của động cơ
Chương 3 đã lập ra được lưu đồ thuật toán đáp ứng đủ yêu cầu được đặt ra Làm quen với phần mềm xử lý ảnh và kêt nối các phần mềm lại với nhau,tính toán và lựa chọn được các thiết bị phù hợp với yêu cầu công nghệ của hệ thống.
CHƯƠNG 4 THIẾT KẾ VÀ MÔ PHỎNG HỆ THỐNG
Chương 3 đã tính toán, thiết kế được hệ thống Để giám sát điều khiển cũng như quan sát sự vận hành hệ thống một cách trực quan sinh động, chương này sẽ đi tìm hiểu và thiết kế các phần mô phỏng hệ thống.
- Thiết kế giao diện SCADA
4.1 Thiết kế giao diện WinCC
Thiết kế giao diện HMI để điều khiển và hiển thị trạng thái vận hành của hệ thống nhằm thể hiện tính trực quan, linh động của hệ thống Giao diện HMI như trong hình 4.1
Hình 4.26 Giao diện SCADA
Thiết kế mô phỏng trên PLC
Code chương trình chính: