1. Trang chủ
  2. » Luận Văn - Báo Cáo

HỆ THỐNG QUÉT mã QR, có CODE

63 13 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Hệ Thống Quét Mã QR Có Code
Định dạng
Số trang 63
Dung lượng 15,32 MB

Cấu trúc

  • 1.1 Giới thiệu đề tài (9)
  • 1.2 Mục đích nghiên cứu (10)
  • 1.3 Đối tượng nghiên cứu (10)
  • 1.4 Phạm vi nghiên cứu (10)
  • 1.5 Dự kiến kết quả (10)
  • 2.1 Mã QR (12)
  • 2.2 Node-RED (14)
  • 2.3 Google Sheets (21)
  • 2.4 Giới thiệu PLC S7 1200 (22)
  • 2.5 Factory IO (28)
  • 2.6 Appsheet (31)
  • 3.1 Lập trình Node-RED (33)
  • 3.2 Tạo Google Sheets (36)
  • 3.3 Viết chương trình PLC (40)
  • 3.4 Mô phỏng Factory IO (42)
  • 3.5 Xây dựng Appsheet (44)
  • 4.1 Nguyên lý làm việc của hệ thống (47)
  • 4.2. Lưu đồ giải thuật (47)
  • 5.1. Các bước tiến hành thực nghiệm (49)
  • 5.2. Kết quả thực nghiệm (49)
  • 6.2. Nhược điểm (62)
  • 6.3. Hướng phát triển (62)

Nội dung

Giới thiệu đề tài

Với sự phát triển mạnh mẽ của công nghệ số, việc kiểm tra dữ liệu và thông tin sản phẩm trở nên quan trọng hơn bao giờ hết Mã QR ra đời để đáp ứng nhu cầu này, được ưa chuộng trong marketing và quảng cáo, từ tạp chí đến băng ghế công viên và bao bì sản phẩm Các doanh nghiệp và trường học cũng áp dụng mã QR để quản lý thông tin nhân viên và học sinh, giúp điểm danh và theo dõi chuyên cần một cách nhanh chóng Do đó, tôi đã chọn nghiên cứu “Hệ thống quét mã QR” nhằm xây dựng một hệ thống hiệu quả để sắp xếp và lưu trữ thông tin.

Hệ thống cho phép người dùng dễ dàng nhập thông tin về người mua và sản phẩm đã bán, đồng thời lưu trữ để quản lý hiệu quả Việc lấy hàng bằng băng truyền giúp tiết kiệm thời gian và công sức, từng bước tích hợp máy móc vào mọi lĩnh vực của cuộc sống.

Khi khởi động hệ thống, người dùng cần nhập tên khách hàng và quét mã QR của sản phẩm đã mua Mỗi mã sản phẩm sẽ tự động lấy thông tin và tính toán các thuộc tính, sau đó lưu trữ lên Google Sheet và hiển thị trên màn hình Để lấy sản phẩm qua băng truyền, người dùng chỉ cần nhấn nút tương ứng.

Hệ thống hướng đến nhiệm vụ thanh toán và lưu trữ dữ liệu ở các cửa hàng Ngoài ra có thể sử dụng trong việc kiểm soát các kho hàng.

Mục đích nghiên cứu

Sử dụng kiến thức lập trình PLC đã học, bạn có thể tìm hiểu cách sử dụng và kết nối hệ thống băng chuyền để vận chuyển sản phẩm hiệu quả Việc này không chỉ giúp tối ưu hóa quy trình sản xuất mà còn nâng cao hiệu suất làm việc trong ngành công nghiệp.

- Tìm hiểu về lập trình Node – RED Xây dựng một giao diện dashboard thân thiện với người dùng.

- Tìm hiểu về lưu trữ dữ liệu với Google Sheet Truyền và nhận dữ liệu giữa Google Sheet và Node-RED, giữa Node-RED và PLC.

Dự kiến kết quả

Nhập tên khách hàng và quét mã QR, hệ thống sẽ tự động lấy các thuộc tính sản phẩm, tính toán và hiển thị kết quả trên màn hình, đồng thời lưu trữ dữ liệu lên Google Sheet Người dùng có thể yêu cầu băng truyền lấy hàng chỉ bằng một nút nhấn trên bảng điều khiển.

Mã QR

Mã QR (Quick Response code) là một dạng mã vạch ma trận, hay còn gọi là mã vạch hai chiều, được phát minh vào năm 1994 bởi công ty Denso Wave của Nhật Bản.

QR là một mã vạch quang học có thể được quét bởi máy đọc mã vạch hoặc smartphone có camera và ứng dụng chuyên dụng.

Mã QR có khả năng lưu trữ nhiều loại thông tin như địa chỉ web, thời gian sự kiện, thông tin liên hệ, địa chỉ email, tin nhắn SMS, nội dung văn bản, và thông tin định vị Khi quét mã QR bằng thiết bị phù hợp, người dùng có thể được dẫn đến trang web, gọi số điện thoại, hoặc xem tin nhắn một cách nhanh chóng và tiện lợi.

- Mã QR sử dụng bốn chế độ mã hóa chuẩn hóa (số, chữ và số, byte / nhị phân và kanji) để lưu trữ dữ liệu một cách hiệu quả.

Hình 2.1-2 Cấu trúc mã QR

- Các điểm đánh dấu phát hiện vị trí

Nằm ở ba góc của mỗi mã, tính năng này giúp máy quét nhận diện và đọc mã một cách chính xác với tốc độ cao, đồng thời chỉ rõ hướng in của mã.

Nhỏ hơn các điểm đánh dấu phát hiện vị trí, chúng giúp làm thẳng Mã QR được vẽ trên bề mặt cong.

Với ý tưởng giúp xác định cấu hình chính xác lưới dữ liệu Sử dụng các dòng này, máy quét xác định độ lớn của ma trận dữ liệu.

Hiện nay, có 40 phiên bản Mã QR khác nhau, trong đó các điểm đánh dấu chỉ định phiên bản đang được sử dụng Phiên bản phổ biến nhất là từ 1 đến 7.

- Định dạng thông tin : Các mẫu định dạng chứa thông tin về khả năng chịu lỗi và mẫu mặt nạ dữ liệu

Lượng dữ liệu mà mã QR có thể lưu trữ phụ thuộc vào loại dữ liệu, phiên bản từ 1 đến 40, và mức độ sửa lỗi Phiên bản 40 với mức sửa lỗi L (thấp) cho phép dung lượng lưu trữ tối đa, ký hiệu là 40-L.

Input mode Max. characters Bits/char Possible characters, default encoding

Bảng 2.1-1 Dữ liệu mã QR lưu trữ

Node-RED

Node-RED là một công cụ phát triển dựa trên luồng do IBM phát triển, cho phép lập trình trực quan để kết nối các thiết bị phần cứng, API và dịch vụ trực tuyến, phục vụ cho mục đích của Internet of Things.

Node-RED là một công cụ mạnh mẽ với trình chỉnh sửa luồng dựa trên trình duyệt, cho phép người dùng tạo hàm JavaScript dễ dàng Các thành phần của ứng dụng có thể được lưu trữ hoặc chia sẻ để tái sử dụng, giúp tối ưu hóa quy trình phát triển Node-RED hoạt động trên nền tảng Node.js và các luồng được lưu trữ dưới dạng JSON Từ phiên bản 0.14, nó hỗ trợ các nút MQTT với khả năng tạo kết nối TLS được cấu hình chính xác.

- Vào năm 2016, IBM đã đóng góp Node-RED như một dự án JS Foundation mã nguồn mở.

2.2.1 Chỉnh sửa luồng dựa trên trình duyệt

Node-RED là một công cụ mạnh mẽ cung cấp trình chỉnh sửa luồng trực tuyến, cho phép người dùng dễ dàng kết nối các luồng thông qua nhiều nút trong bảng màu Với Node-RED, việc triển khai các luồng trở nên nhanh chóng và đơn giản, chỉ cần một cú nhấp chuột trong thời gian chạy.

- Các hàm JavaScript có thể được tạo trong trình soạn thảo bằng cách sử dụng trình soạn thảo văn bản đa dạng thức.

- Thư viện tích hợp sẵn cho phép bạn lưu các chức năng, mẫu hoặc luồng hữu ích để sử dụng lại.

2.2.2 Xây dựng trên Node.js

Thời gian chạy nhẹ được phát triển trên nền tảng Node.js, tận dụng mô hình hướng sự kiện và mã nguồn mở, phù hợp để triển khai trên rìa mạng với phần cứng giá rẻ như Raspberry Pi, cũng như trên môi trường đám mây.

- Với hơn 225.000 mô-đun trong kho gói của Node, có thể dễ dàng mở rộng phạm vi các nút bảng màu để thêm các chức năng mới.

- Các luồng được tạo trong Node-RED được lưu trữ bằng JSON có thể dễ dàng nhập và xuất để chia sẻ với những người khác.

- Thư viện luồng trực tuyến cho phép bạn chia sẻ những luồng tốt nhất của mình với thế giới.

Bảng điều khiển Node-RED là một tập hợp các nút giúp tạo ra bảng điều khiển web tương tác với các luồng dữ liệu Người dùng có thể sử dụng các nút khác nhau để thay thế các nút chèn, cho phép gửi dữ liệu trực tiếp đến các thành phần web như biểu đồ hoặc bảng, thay vì chỉ in ra trình gỡ lỗi.

- Cài đặt thư viện: settings → Palette → Install → “node-red-dashboard”.

Trang tổng quan được thiết kế theo bố cục lưới, nơi các tiện ích con như nút và hộp văn bản được nhóm lại và sắp xếp trên các tab.

- Địa chỉ truy cập bảng điều khiển “localhost:1880/ui”.

- Một số khối cơ bản:

 Khối Text cung cấp khả năng hiển thị một giá trị duy nhất trên trang điều khiển:

 Khối Buttons sử dụng một nút để kích hoạt một luồng:

 Khối webcam để chụp ảnh từ webcam của trình duyệt.

Khối function là một hàm JavaScript được thiết kế để xử lý các thông báo mà nút nhận được Các thông báo này được truyền vào dưới dạng một đối tượng JavaScript, gọi là msg, trong đó thuộc tính msg.payload chứa nội dung chính của thông báo Hàm này có khả năng trả về một hoặc nhiều đối tượng thông báo, nhưng cũng có thể không trả về gì để dừng luồng xử lý.

Khối change cho phép người dùng đặt, thay đổi, xóa hoặc di chuyển các thuộc tính của thông báo, ngữ cảnh luồng hoặc ngữ cảnh chung Nút này có khả năng chỉ định nhiều quy tắc, và các quy tắc này sẽ được áp dụng theo thứ tự mà chúng được xác định.

- Khối GSheet: Đọc và Ghi dữ liệu Google Trang tính.

- Khối join: Nối các chuỗi tin nhắn thành một tin nhắn.

- Khối barcode decoder: Nút bộ giải mã mã vạch.

- Khối Barcode Generator: nút tạo mã vạch

- Khối S7 in: đọc dữ liệu từ PLC S7

- Khối S7 out: Ghi vào vùng nhớ trong PLC S7.

Google Sheets

Google Sheets là ứng dụng trực tuyến cho phép người dùng tạo, cập nhật và chỉnh sửa bảng tính, đồng thời chia sẻ dữ liệu theo thời gian thực.

Google Sheets là một phần của bộ ứng dụng web miễn phí do Google cung cấp, bao gồm cả Google Docs.

Google Slides, Google Drawings, Google Forms, Google Sites và Google Keep.

- Các chức năng cơ bản:

 Chỉnh sửa và định dạng bảng tính

Trực quan hóa dữ liệu cho phép người dùng tạo bảng tính cho các đồ thị, biểu đồ và nhiều loại biểu đồ khác, đồng thời dễ dàng nhúng chúng vào các trang web.

Các tính năng dựa trên máy học cho phép xây dựng biểu đồ, tạo bảng tổng hợp và trả lời các câu hỏi liên quan đến dữ liệu Hệ thống có khả năng tự động cập nhật thông tin dựa trên dữ liệu đã được lựa chọn.

Chỉnh sửa ngoại tuyến cho phép người dùng thay đổi trang tính ngay cả khi không có kết nối internet Những thay đổi này sẽ tự động được cập nhật khi kết nối internet được khôi phục.

 Khả năng tương thích : Tài liệu trang tính tương thích với nhiều định dạng, bao gồm

Excel (XLS), Apache OpenOffice, PDF, Văn bản, HTML và các giá trị được phân tách bằng dấu phẩy (CSV).

Google Sheets có khả năng tích hợp với nhiều dịch vụ khác của Google như Drawing, Finance, Form và Translate, mang lại sự tiện lợi cho người dùng Bên cạnh đó, nó cũng tương thích với các tệp của Microsoft và chia sẻ nhiều phím tắt tương tự, giúp tối ưu hóa quy trình làm việc.

Tính năng cộng tác cho phép người dùng nhận thông báo qua email khi có các cộng tác viên đưa ra nhận xét hoặc thực hiện thay đổi trên bảng tính được chia sẻ, đồng thời cung cấp khả năng xem lịch sử phiên bản để theo dõi các chỉnh sửa.

Người dùng có khả năng quản lý quyền chỉnh sửa, tải xuống, sao chép và in ấn cho các cộng tác viên cụ thể thông qua việc thiết lập quyền truy cập ở cấp độ cá nhân, nhóm hoặc miền.

Giới thiệu PLC S7 1200

Hình 2.4-13 Khác biệt giữa S7-200 và S7-1200

- 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 đượ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 cung cấp một cổng PROFINET, hỗ trợ chuẩn Ethernet và TCP/IP.

- Các thành phần của PLC S7-1200 bao gồm:

 bộ điều khiển nhỏ gọn với sự phân loại trong các phiên bản khác nhau giống như điều khiển AC, RELAY hoặc DC phạm vi rộng

 mạch tương tự và số mở rộng ngõ vào/ra trực tiếp trên CPU làm giảm chi phí sản phẩm

 13 module tín hiệu số và tương tự khác nhau bao gồm (module SM và SB)

 module giao tiếp RS232/RS485 để giao tiếp thông qua kết nối PTP

 Module nguồn PS 1207 ổn định, dòng điện áp 115/230 VAC và điện áp 24 VDC

- 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

2.4.2 Các dòng chính của PLC S7-1200

Hình 2.4-14 Đặc tính kỹ thuật của CPU S7-1200 siemens

- PLC S7-1200 CPU 1211C có bộ nhớ làm việc 50KB work memory.

- PLC S7-1200 CPU 1212C có bộ nhớ làm việc 75KB work memory.

- PLC S7-1200 CPU 1214C có bộ nhớ làm việc 100KB work memory.

- PLC S7-1200 CPU 1215C có bộ nhớ làm việc 125KB work memory.

- PLC S7-1200 CPU 1217C có bộ nhớ làm việc 150KB work memory.

PLC S7-1200 cho phép mở rộng chức năng của CPU thông qua việc thêm các module tín hiệu và module gắn ngoài Bên cạnh đó, người dùng cũng có thể cài đặt các module truyền thông để hỗ trợ nhiều giao thức truyền thông khác nhau.

- Khả năng mở rộng của từng loại CPU tùy thuộc vào các đặc tính, thông số và quy định của nhà sản xuất.

- S7-1200 có các loại module mở rộng sau: o Communication module (CP). o Signal board (SB) o Signal Module (SM)

Cổng truyền thông Profinet (Ethernet) tích hợp sẵn cho phép kết nối máy tính, màn hình HMI và truyền thông PLC-PLC với tốc độ truyền đạt 10/100 Mbits/s Thiết bị hỗ trợ lên đến 16 kết nối Ethernet và tương thích với các giao thức TCP/IP, ISO on TCP và S7.

Bài viết giới thiệu các tính năng về đo lường và điều khiển vị trí, bao gồm 6 bộ đếm tốc độ cao, trong đó có 3 bộ đếm 100kHz và 3 bộ đếm 30kHz, phục vụ cho các ứng dụng đếm và đo lường Ngoài ra, có 2 ngõ ra PTO 100kHz giúp điều khiển tốc độ và vị trí của động cơ bước hoặc bộ lái servo Bài viết cũng đề cập đến ngõ ra điều rộng xung PWM, được sử dụng để điều khiển tốc độ động cơ, vị trí van và nhiệt độ Cuối cùng, 16 bộ điều khiển PID với tính năng tự động xác định thông số điều khiển (auto-tune functionality) cũng được giới thiệu, mang lại hiệu quả cao trong quá trình điều khiển.

Thiết kế linh hoạt của hệ thống cho phép mở rộng tín hiệu vào/ra thông qua board tín hiệu mở rộng gắn trực tiếp phía trước CPU, mà không làm thay đổi kích thước của hệ điều khiển Mỗi CPU có khả năng kết nối tối đa 8 module mở rộng tín hiệu vào/ra, đồng thời ngõ vào analog 0-10V được tích hợp sẵn trên CPU.

Hình 2.4-15 Phần mềm TIA portal

Phần mềm Step7 Basic là công cụ lập trình cho S7-1200, hỗ trợ ba ngôn ngữ lập trình chính là FBD, LAD và SCL Step7 Basic được tích hợp trong TIA Portal của Siemens, giúp tối ưu hóa quá trình lập trình và quản lý hệ thống tự động hóa.

Bộ đếm CTU được biểu diễn ở LAD như sau:

Khi tín hiệu tại CU chuyển từ “0” lên “1”, bộ đếm sẽ tăng giá trị hiện tại lên 1 Nếu giá trị hiện tại của bộ đếm (Cxxx) đạt hoặc vượt qua giá trị preset tại ngõ vào PV, ngõ ra bit của bộ đếm sẽ chuyển sang mức “1” Giá trị đếm tối đa có thể đạt là 32.767, với phạm vi từ C0 đến C255.

 Bộ đếm sẽ bị xóa về 0 khi ngõ vào Reset (R) lên mức “1”, hoặc khi sử dụng lệnh Reset để xóa bộ đếm.

Hình 2.4-17 Giản đồ thời gian Counter

Hình 2.4-18 Cấu hình giao tiếp của PLC S7-1200

- S7-1200 hỗ trợ kết nối Profibus và kết nối PTP (point to point).

- Giao tiếp PROFINET với: o Các thiết bị lập trình o Thiết bị HMI o Các bộ điều khiển SIMATIC khác

- Hỗ trợ các giao thức kết nối: o TCP/IP o SIO-on-TCP o Giao tiếp với S7

Factory IO

Factory IO là phần mềm mô phỏng 3D hiện đại, trực quan, hỗ trợ mô phỏng quy trình chuyên nghiệp với nhiều hãng PLC khác nhau Phần mềm này cung cấp thư viện đa dạng, giúp người dùng dễ dàng tạo ra các mô hình sát thực tế.

Nhiều ứng dụng đã mô phỏng chính xác phần mềm này trước khi triển khai thực tế, mang lại hiệu quả cao và đáp ứng tốt trải nghiệm của khách hàng.

2.5.1 Các hệ thống, đối tượng

Factory IO cung cấp 20 mô hình thiết kế sẵn dựa trên các ứng dụng công nghiệp, giúp người dùng dễ dàng tạo ra dây chuyền và hệ thống theo nhu cầu riêng Các hệ thống và đối tượng trong Factory IO được lưu trữ trong thư viện phong phú, có thể truy cập ở góc bên phải của phần mềm, bao gồm các loại băng tải nặng, băng tải nhẹ, cảm biến, và nhiều thiết bị khác Người dùng chỉ cần chọn nhóm thiết bị và kéo thả để lắp ghép mô hình một cách nhanh chóng và dễ dàng.

2.5.2 Các phím tắt chức năng

Di chuyển tới W Mở/ tắt thẻ cảm biến I

Di chuyển lùi S Mở/ tắt thẻ cơ cấu chấp hành O

Di chuyển sang trái A Reset góc nhìn backspac e

Di chuyển sang phải D Reset hệ thống F6

Chạy hệ thống F5 Quay theo trục x R

Quay theo trục z Y Phóng to mô hình Q

Quay theo trục y T Mở thư viện P

2.5.3 Các kết nối Factory IO với bộ điều khiển

Hình 2.5-21 Kết nối bộ điều khiển

Advantech USB 4750 & USB 4704 Kết nối với PLC thông qua board

Advantech USB 4750 và 4704. Allen-Bradley Logix5000 Kết nối PLC Allen-Bradley

ControlLogix, CompactLogix hoặc SoftLogix PAC thông qua

Allen-Bradley Micro800 Kết nối PLC Allen-Bradley

Micro800 PLC thông qua Ethernet. Allen-Bradley MicroLogix Kết nối PLC Allen-Bradley

Allen-Bradley SLC 5/05 Kết nối PLC Allen-Bradley SLC-

Automgen Server Kết nối PLC Automgen thông qua

Control I/O Kết nối bộ SoftPLC.

MHJ Kết nối PLC WinPLC-Engine và

Modbus TCP/IP Client Kết nối theo chuẩn Modbus

Modbus TCP/IP Server Kết nối theo chuẩn Modbus

OPC Client DA/UA Kết nối theo chuẩn OPC DA/UA client.

Siemens LOGO! Kết nối bộ điều khiển Siemens

Siemens S7-200/300/400 Kết nối PLC Siemens dòng S7-

Siemens S7-1200/1500 Kết nối PLC Siemens dòng S7-

Siemens S7-PLCSIM Kết nối PLC mô phỏng S7-

Hình 2.5-22 Các loại bộ điều khiển

Appsheet

AppSheet là nền tảng cho phép bạn tạo ứng dụng mà không cần kiến thức về lập trình Thay vì phải học mã hoặc thuê người phát triển ứng dụng, bạn có thể dễ dàng sử dụng AppSheet để tạo ra ứng dụng theo nhu cầu của mình.

AppSheet cho phép người dùng tự tạo ứng dụng một cách dễ dàng thông qua tính năng kéo thả Với AppSheet, bạn có thể tập trung vào việc sử dụng ứng dụng mà không cần phải lo lắng về việc phát triển hay sửa chữa nó.

- AppSheet là một phần của Google Cloud – Nền tảng tạo ứng dụng no-code cho mọi đối tượng.

2.6.2 AppSheet có thể làm gì?

- Xây dựng trang tổng quan

- Cài đặt trên các thiết bị

- Tích hợp các nền tảng

3 THIẾT KẾ VÀ THI CÔNG

Lập trình Node-RED

3.1.1 Khối đọc và giải mã QR code

- Sử dụng “webcam node” chụp lại hình ảnh từ webcam sau mỗi 1 giây

- Ảnh đi qua “image node: flip” để lật ngược QR code và đi qua “Barcode Decoder node” để giải mã

- “text node” hiển thị kí tự vừa giải mã ra màn hình

- “function node” đưa kí tự vừa nhận được vào “Barcode Generator node” để mã hóa thành QR code và in ra màn hình bằng “template node”.

3.1.2 Khối tính toán và lưu trữ dữ liệu

Hình 3.1-26 Khối tính toán và lưu trữ

- Nhập vào số lượng “text input node”

- Dựa vào chuỗi QR code để lấy đơn giá, thuộc tính của mỗi sản phẩm dùng “switch node”

- Dùng “join node” ghép nhiều tin nhắn lại thành một.

- Dùng “GSheet node” cập nhật lên Google Sheets để lưu trữ.

- Dùng “template node” để hiển thị bảng tính ra màn hình.

Hình 3.1-27 Khối tạo đơn hàng

- Sử dụng “GSheet node: Get” lấy các thuộc tính của sản phẩm.

- Hiển thị các thuộc tính ra màn hình khi quét được QR code dùng “text node”.

- “button node” tạo nút nhấn khi hoàn tất đơn hàng và lưu lên Google Sheets.

Hình 3.1-28 Khối giao tiếp PLC

- Dùng “S7 out node” cập nhật số lượng từng loại sản phẩm lên vùng nhớ PLC.

- Nút nhấn “button node” tạo một xung cạnh lên đến PLC đển khởi động băng truyền sản phẩm.

- Dùng “S7 in node” nhận tín hiệu trạng thái ON/OFF của băng truyền thông báo lên màn hình.

Hình 3.1-29 khối vẽ biểu đồ

- “GSheet node” lấy tổng số lượng của từng loại sản phẩm đã bán ra, mỗi 5 giây lấy một lần.

- Đi qua “change node” để thêm tiêu đề cho biểu đồ.

- Sử dụng “chart node” để vẽ biểu đồ đường thẳng cho số lượng của mỗi sản phẩm.

Hình 3.1-30 Giao diện bảng điều khiển

Hình 3.1-31 Giao diện biểu đồ

Tạo Google Sheets

Hình 3.2-32 Bảng tính toán và hiển thị

- Bảng tính cập nhật số lượng và tính toán thành tiền của từng loại sản phẩm đang được nhập vào.

- Bảng tính này sẽ được hiển thị trực tiếp trên màn hình.

3.2.2 Trang tính chứa thông tin sản phẩm

Hình 3.2-33 Bảng lưu trữ dữ liệu sản phẩm

- Bảng tính chứa tất cả các thuộc tính của từng loại sản phẩm

- Dựa vào bảng tính này để truy xuất các thuộc tính cả từng loại sản phẩm được quét mã QR.

3.2.3 Trang tính lưu trữ tất cả dữ liệu

Hình 3.2-34 Bảng dữ liệu lưu trữ tất cả sản phẩm đã bán

- Bảng tính lưu tất cả dữ liệu của các sản phẩm đã bán ra được Node-RED tự động cập nhật.

3.2.4 Trang tính lưu trữ thông tin theo đơn hàng

Hình 3.2-35 Bảng dữ liệu lưu trữ đơn hàng

- Một bảng tính lưu trữ thông tin của một đơn hàng hoàn chỉnh, mỗi đơn hàng có thể có nhiều sản phẩm

- Một bảng tính để lưu trữ tên khách hàng hiện tại và ID của đơn hàng đó.

- Tạo Service Account: o Truy cập console.cloud.google.com o Tạo project o Thêm thư viện API Sheets và Drive o Tạo key json

- Cho phép quyền truy cập Google Sheets

Hình 3.2-37 Cấp quyền truy cập Google Sheets

Viết chương trình PLC

- %I0.0 - %I0.3 là ngõ vào nhận tín hiệu từ cảm biến digital

- %MW1 - %MW8 là vùng nhớ lưu trữ số lượng sản phẩm đang đếm

- %Q0.0 - %Q0.3 là ngõ ra điều khiển động cơ băng truyền

- Vùng nhớ dem[] để lưu trữ số lượng sản phẩm được truyền thông từ Node-RED

- Vùng nhớ motor[] để điều khiển băng truyền từ Node-RED

- Vùng nhớ dongco[] để truyền tín hiệu ON/OFF của băng truyền lên Node-RED

- Cảm biến “sensor1” sẽ kích COUNTER đếm lên một đơn vị khi có sản phẩm đi qua

- Vùng nhớ “soluong1” để lưu giá trị COUNTER đang đếm.

- Vùng nhớ “data_block_1.dem[0]” được kết nối với Node-RED để nhập vào số lượng sản phẩm cần lấy.

- Vùng nhớ “data_block_1.motor[0]” được kết nối với Node-RED dạng nút nhấn để reset COUNTER bắt đầu một chu kỳ mới.

- Dùng ngõ ra thường đóng QU để COUNTER đang đếm thì băng truyền “dongco1” sẽ hoạt động, đến khi đếm xong thì băng truyền “dongco1” dừng.

- Vùng nhớ “data_block_1.dongco[0]” được kết nối với Node-RED để thông báo trạng thái hoạt động của băng truyền.

Mô phỏng Factory IO

3.4.1 Tạo mô hình băng truyền

Hình 3.4-42 mô phỏng băng truyền

- 4 băng truyền tải 4 loại sản phẩm khác nhau

Hình 3.4-43 Mô phỏng cảm biến

- Ở mỗi băng truyền có một cảm biến để đếm số lượng sản phẩm

- Ngõ vào gồm 4 cảm biến

- Ngõ ra gồm 4 động cơ của băng truyền

Xây dựng Appsheet

Hình 3.5-45 Trang đơn hàng appsheet

- Là trang chính của ứng dụng, thao tác nhập dữ liệu hoàn toàn ở trang đơn hàng.

- Gồm các thông tin cơ bản của đơn hàng.

- Được liên kết đến trang “chi tiết đơn hàng” để lưu trữ và sắp xếp thông tin dễ dàng.

3.5.2 Trang chi tiết đơn hàng

Hình 3.5-46 Trang chi tiết đơn hàng appsheet

- Trang lưu toàn bộ dữ liệu sản phẩm

- Liên kết đến trang “đơn hàng” để tự động cập nhật dữ liệu khi người dùng nhập vào

- Đặt các hàm thời gian TIMENOW(), TODAY() để tự động xuất ngày và giờ mỗi đơn hàng

- Đặt hàm UNIQUEID() để gán ID ngẫu nhiên cho đơn hàng.

3.5.3 Trang dữ liệu sản phẩm

Hình 3.5-47 Trang dữ liệu của sản phẩm

- Chứa dữ liệu các thuộc tính của từng loại sản phẩm.

- Liên kết đến các trang khác để tự động cập nhật các thuộc tính cảu sản phẩm được nhập vào.

- Người dùng có thể thêm hoặc xóa một loại sản phẩm (bao gồm tất cả các thuộc tính của sản phẩm đó) khỏi bảng.

4 GIẢI THUẬT VÀ ĐIỀU KHIỂN

Nguyên lý làm việc của hệ thống

- khi khởi động hệ thống, người dùng sẽ nhập tên khách hàng để thiết lập một đơn hàng mới.

- Quét QR code của từng sản phẩm trong đơn hàng và nhập số lượng.

- Hệ thống tính toán thành tiền của mỗi sản phẩm và hiển thị ra bảng điều khiển, đồng thời lưu trữ lên Google Sheets ở trang “chi tiết đơn hàng”.

Để lấy hàng, người dùng chỉ cần nhấn nút trên bảng điều khiển Khi nút được nhấn, Node-RED sẽ gửi một xung lên PLC qua liên kết vùng nhớ để kích hoạt băng truyền Khi băng truyền hoạt động, Node-RED sẽ nhận tín hiệu ON/OFF để thông báo trạng thái của nó.

- Lặp lại với mỗi sản phẩm, cuối cùng nhấn nút trên bảng điều khiển để hoàn tất đơn hàng tự động lưu trữ lên Google Sheets ở trang “đơn hàng”.

- Dữ liệu được lưu trữ sẽ sắp xếp theo đơn hàng, thời gian, và các thuộc tính của sản phẩm.

- Sử dụng dữ liệu được lưu trữ vẽ biểu đồ thể hiện số lượng của mỗi sản phẩm được bán ra theo thời gian.

Lưu đồ giải thuật

Hình 4.2-48 Lưu đồ giải thuật

Các bước tiến hành thực nghiệm

5.1.1 Trên hệ thống Node-RED

- Bước 1: khởi động hệ thống.

- Bước 2: Nhập tên khách hàng.

- Bước 3: Quét mã QR và nhập số lượng.

- Bước 4: Hệ thống tính toán và hiển thị giá tiền, nhấn nút lấy hàng.

- Bước 5: Quan sát đèn báo trạng thái của bange truyền.

- Bước 6: Quét đủ sản phẩm thì nhấn nút hoàn tất đơn hàng.

- Bước 7: Quan sát dữ liệu được lưu trữ lên Google Sheets.

- Bước 8: Quan sát biểu đồ tự động cập nhật dựa theo dữ liệu được lưu trữ.

- Bước 1: khởi động ứng dụng.

- Bước 2: Nhấn biểu tượng thêm đơn hàng, nhập tên khách hàng.

- Bước 3: Nhấn vào biểu tượng thêm sản phẩm, nhập mã sản phẩm sẽ tự động hiển thị các thuộc tính của sản phẩm.

- Bước 4: Nhập số lượng sẽ tự động tính số tiền thanh toán.

- Bước 5: Khi nhập đủ sản phẩm, nhấn hoàn tất để hoàn tất đơn hàng và lưu vào Google Sheets.

- Bước 6: Quan sát dữ liệu được lưu trữ theo từng đơn hàng, theo thời gian và thuộc tính.

Kết quả thực nghiệm

5.1.3 Trên hệ thống Node-RED

- Bước 1: Khởi động hệ thống

Hình 5.2-49 Khởi động hệ thống

- Bước 2: Nhập tên khách hàng

Hình 5.2-50 Nhập tên khách hàng

Hiển thị tên và gán ID

- Bước 4: Nhập số lượng và nhấn nút lấy hàng

Hiển thị các thuộc tính và hình ảnh của sản phẩm

Tính và hiển thị thành tiền ra màn hình, nhấn nút lấy hàng đèn báo sáng khi bằng truyền đang chạy

Hình 5.2-53 Băng truyền lấy hàng

- Bước 5: Hoàn tất đơn hàng và quan sát dữ liệu lưu trữ

Hình 5.2-54 Dữ liệu chi tiết dơn hàng

Hình 5.2-55 Dữ liệu đơn hàng

- Bước 6: Quan sát biểu đồ mô tả số lượng sản phẩm

Hình 5.2-56 Biểu đồ số lượng sản phẩm

- Bước 1: khởi động ứng dụng.

Hình 5.2-57 Khởi động úng dụng

- Bước 2: Nhấn biểu tượng thêm đơn hàng, nhập tên khách hàng.

- Bước 3: Nhấn vào biểu tượng thêm sản phẩm, nhập mã sản phẩm và số lượng sẽ tự động hiển thị các thuộc tính của sản phẩm

- Bước 5: Khi nhập đủ sản phẩm, nhấn hoàn tất để hoàn tất đơn hàng và lưu vào Google Sheets.

Hình 5.2-60 Hoàn tất đơn hàng

- Bước 6: Quan sát dữ liệu được lưu trữ theo từng đơn hàng, theo thời gian và thuộc tính.

Hình 5.2-61 Dữ liệu chi tiết đơn hàng

Hình 5.2-62 Dữ liệu đơn hàng

- Giao diện của hệ thống thân thiện với ngừơi dùng.

- Triển khai trên appsheet giúp chỉnh sửa dữ liệu mọi lúc mọi nơi.

- Theo dõi được mức tiêu thụ của mỗi sản phẩm.

- Linh hoạt thay đổi và nâng cấp theo nhu cầu cá nhân.

- Dữ liệu được lưu trữ lên Google Sheets dược tự động sắp xếp theo từng thuộc tính và thời gian.

- Dễ dàng tiếp cận cho người chưa cóa kinh nghiệm.

Nhược điểm

- Đôi khi không ổn định do liên tục gửi và nhận request/response

- Chỉ thiết kể để chạy trên một máy tính cục bộ.

- Chưa thi công hệ thống băng truyền và PLC thật.

- Appsheet chỉ chỉnh sửa dữ liệu, không thể khởi động băng truyền.

Hướng phát triển

- Tích hợp nhiều tính năng kiểm soát sản phẩm hơn.

- Xây dựng giao diện thân thiện hơn với người dùng

- Hướng đến một hệ thống tự động cao quan lí bằng mã QR

Ngày đăng: 14/05/2022, 20:46

HÌNH ẢNH LIÊN QUAN

Hình 2.1-2 Cấu trúc mã QR - HỆ THỐNG QUÉT mã QR, có CODE
Hình 2.1 2 Cấu trúc mã QR (Trang 10)
- Hình 2.2-4 Giao diện luồng - HỆ THỐNG QUÉT mã QR, có CODE
Hình 2.2 4 Giao diện luồng (Trang 13)
- Hình 2.2-7 Giao diện dashboard - HỆ THỐNG QUÉT mã QR, có CODE
Hình 2.2 7 Giao diện dashboard (Trang 14)
- Hình 2.2-6 Mã nguồn - HỆ THỐNG QUÉT mã QR, có CODE
Hình 2.2 6 Mã nguồn (Trang 14)
- Địa chỉ truy cập bảng điều khiển “localhost:1880/ui”. - HỆ THỐNG QUÉT mã QR, có CODE
a chỉ truy cập bảng điều khiển “localhost:1880/ui” (Trang 15)
- Hình 2.2-10 Webcam - HỆ THỐNG QUÉT mã QR, có CODE
Hình 2.2 10 Webcam (Trang 16)
hoặc thay đổi đối với bảng tính được chia sẻ và người dùng có thể xem lịch sử phiên bản. - HỆ THỐNG QUÉT mã QR, có CODE
ho ặc thay đổi đối với bảng tính được chia sẻ và người dùng có thể xem lịch sử phiên bản (Trang 19)
- Hình 2.4-14 Đặc tính kỹ thuật của CPU S7-1200 siemens - HỆ THỐNG QUÉT mã QR, có CODE
Hình 2.4 14 Đặc tính kỹ thuật của CPU S7-1200 siemens (Trang 21)
- Hình 2.5-19 FactoryIO - HỆ THỐNG QUÉT mã QR, có CODE
Hình 2.5 19 FactoryIO (Trang 25)
- Bảng 2.5-2 Các phím tắt - HỆ THỐNG QUÉT mã QR, có CODE
Bảng 2.5 2 Các phím tắt (Trang 27)
- Hình 3.1-25 Khối QR code - HỆ THỐNG QUÉT mã QR, có CODE
Hình 3.1 25 Khối QR code (Trang 31)
- Sử dụng “webcam node” chụp lại hình ảnh từ webcam sau mỗi 1 giây - HỆ THỐNG QUÉT mã QR, có CODE
d ụng “webcam node” chụp lại hình ảnh từ webcam sau mỗi 1 giây (Trang 31)
- Hình 3.1-27 Khối tạo đơn hàng - HỆ THỐNG QUÉT mã QR, có CODE
Hình 3.1 27 Khối tạo đơn hàng (Trang 32)
- Hình 3.1-30 Giao diện bảng điều khiển - HỆ THỐNG QUÉT mã QR, có CODE
Hình 3.1 30 Giao diện bảng điều khiển (Trang 34)
- Bảng tính cập nhật số lượng và tính toán thành tiền của từng loại sản phẩm đang được nhập vào. - HỆ THỐNG QUÉT mã QR, có CODE
Bảng ti ́nh cập nhật số lượng và tính toán thành tiền của từng loại sản phẩm đang được nhập vào (Trang 35)

TỪ KHÓA LIÊN QUAN

w