Nguyên lý hoạt động của Node-red

Một phần của tài liệu Engineering document template (Trang 25)

1. KHỐI NODE-RED

1.2. Nguyên lý hoạt động của Node-red

1.2.1. Khối quét mã QR code và giải mã

Google sheet

AppSheet NODE-RED

Hình 2: khối node-red quét mã và giải mã

Đầu tiên ta dùng khối webcam trên dashboard để quét ảnh và sử dụng khối image để cài đặt và lật ngược ảnh lại sao cho đúng chiều và sử dụng khối viewer để hiển thị ảnh mã QR code.

Hình 3: cài đặt khối image

Hình 4: sử dụng khối Barcode

1.2.2. Khối xử lý những thông tin cần thiết

Sử dụng khối function để phân tách các thông tin cần thiết và sử dung khối change để set msg.topic qua string.key để tạo object.

Hình 5 và 6: cài đặt khối change và function

Sử dụng hàm hiện thời gian trong node function để lấy thời gian khi quét mã QR code.

Hình 7 cài đặt hàm lấy thời gian khi quét

Sử dụng khối text input để nhập các thông tin cần thiết khi quét mã như số lượng sản phẩm, tên khách hàng,…

Hình 8: cài đặt khối text input

1.2.3. Tạo mảng và đưa lên khối google sheet

Đưa tất cả các phần tử vừa mới phân tách từ mã QR code và các dữ liệu mới nhập vào khối join và cài đặt như sau

Hình 9 : cài đặt khối join

Sau đó sử dụng khối function để nối các mảng lại với nhau bằng các key vừa mới set lúc trước.

Hình 10: tạo mảng

Và cuối cùng là đưa dữ liệu lên khối google sheet

Hình 11 và 12: liên hết node-red với google sheet

1.3. Giao diện Dashboard

Dashboard em thiết kế có 1 giao diện chính là xuất kho và nhập kho gần như giống nhau, chỉ có khách biết là 1 giao diện sẽ đưa dữ liệu đến các trang tính khách nhau. Dashboard có giao diện dễ nhìn dễ thao tác:

Hình 13: giao diện Dashboard

2. Khối google sheet

Đây là nơi làm cơ sở dữ liệu cho hệ thống. Làm data để xuất lên Appsheet cũng như là nơi lưu trữ kết quả do Appsheet trả về. Bao gồm các trang sheet lưu trữ các dữ liệu sau:

- 1 sheet lưu trữ thông tin sản phẩm như mã sản phẩm, tên sản phẩm đơn vị tính, đơn giá.

Hình 14: sheet thông tin sản phẩm

- 1 sheet lưu trữ các đơn hàng nhập kho kèm theo 1 sheet lưu trữ chi tiết thông tin trong đơn nhập.

- 1 sheet lưu trữ các đơn hàng xuất kho kèm theo 1 sheet lưu trữ chi tiết thông tin trong đơn xuất.

Hình 17 và 18: sheet phiếu xuất và chi tiết phiếu xuất

- Và sheet cuối cùng là sheet tổng kết và thống kê số lượng sản phẩm xuất kho, nhập kho và số lượng hàng hóa tồn đọng.

Hình 19: sheet xuất nhập tồn

3. Khối Appsheet

3.1. Thiết kế các bảng dữ liệu cho Appsheet

Từ các bảng dữ liệu data trên goole ta thiết kế các bảng và công thức trong appsheet:

- bảng thông tin sản phẩm: cài đặt các dạng dữ liệu phù hợp cho các cột trong bảng tùy vào dạng dữ liệu trong cột. ở bảng này thì chỉ để lấy dữ liệu cho các bảng sau nên chưa cần công thức hay giá trị đầu cho các cột.

Hình 20: bảng thông tin sản phẩm trên Appsheet

- bảng phiếu nhập: tương tự ta cài đặt các dạng dữ liệu phù hợp cho cột và thêm các giá trị đầu cho cột. ví dụ như hàm now() để lấy thời gian thực cho cột dấu thời gian, hàm uniqueid() để lấy ID ngẫu nhiên cho cột ID phiếu nhập,…

Hình 21: cài đặt phiếu nhập trên Appsheet

- bảng chi tiết phiếu nhập: : tương tự ta cài đặt các dạng dữ liệu phù hợp cho cột và thêm các giá trị đầu cho cột. ở đây ta thêm loại dữ liệu REF cho cột. IDPN để liên kết dữ liệu cột IDPN ở bảng Phiếu nhập và cột Mã SP để lấy mã Sản phẩm ở bảng thông tin sản phẩm. và ở type details ta tích ở phần Is a part of? Để liên kết 2 bảng phiếu nhập và chi tiết phiếu nhập với nhau:

Hình 22: Liên kết phiếu nhập và chi tiết phiếu nhập

Ở các cột tên sản phẩm , đơn vị tính, đơn giá ta thiết kế các công thức ở mục formula để lấy dữ liệu từ bảng thông tin sản phẩm , ví dụ như [MÃ SP].[TÊN SẢN PHẨM]

Hình 23: cài đặt chi tiết phiếu nhập

- Ở mục Mã SP ta vào mục Other Properties -> scannable để có thể quét mã vạch trên ứng dụng trên điện thoại để có thể quét mã sản phẩm để nhập kho. - Tương tự ta cũng thiết kế như vậy cho phiếu xuất và chi tiết phiếu xuất giống

phiếu nhập và chi tiết phiếu nhập.

3.2. Thiết kế giao diện cho AppSheet

Giao diện AppSheet gồm 4 bảng chính và 1 biểu đồ:

- Bảng thông tin sản phẩm chỉ cho phép người dùng xem thông tin chi tiết của các sản phẩm, không được thao tác trên bảng này.

Hình 24: thiết kế bảng xuất nhập tồn trên appsheet

- Bảng phiếu xuất và phiếu nhập cho phép người dùng tạo phiếu xuất hàng và nhập hàng. Và còn cho người dùng xem chi tiết các phiếu hàng nhập xuất của kho.

Hình 25 và 26: giao diện phiếu nhập

- Bảng xuất nhập tồn thống kê lại số lượng hàng hóa đã xuất nhập trong khoảng thời gian thống kê và số hàng hóa tồn đầu kỳ và tồn kho hiện tại.

Hình 27: cập nhật dữ liệu trên trang xuất nhập tồn

- Biểu đồ thể hiện số lượng tồn hiện tại của các sản phẩm cho người dùng dễ quan sát.

Chương 4: THỰC NGHIỆM

1. Tiến trình thực nghiệm

1.1. Thực hiện trên Dashboard của node-red

Bước 1: chọn phần phiếu nhập hoặc phiếu xuất trên giao diện Dashboard của Node-red

Bước 2: quét mã QR code trên giao diện Dashboard của Node-red , thông tin sản phẩm quét sẽ hiện lên.

Bước 3: nhập ID đơn hàng, tên khách hàng, tên nhân viên và số lượng sản phẩm cần thiết.

Bước 4: thông tin đơn hàng sẽ được cập nhật lên trang tính trên google sheet. Bước 5:cập nhật thông tin lên app sheet

1.2. Thực hiện trực tiếp trên AppSheet

Bước 1: chọn phiếu nhập và phiếu xuất trên giao diện Appsheet.

Bước 2: nhập tên khách hàng, ID đơn hàng sẽ được tạo ngẫu nhiên và nhân viên kho sẽ được hiện lên theo gmail người dùng app. Chọn new để thêm sản phẩm.

Bước 3: chọn mã sản phẩm, thông tin sản phẩm sẽ được cập nhật theo mã sản phẩm.

Bước 4: chọn số lượng sản phẩm. Bước 5: Save chi tiết đơn hàng

Bước 6: save đơn hàng nếu muốn kết thúc đơn hàng. Chọn new và thực hiện lại bước 3, 4, 5 nếu muốn thêm sản phẩm cho đơn hàng.

2. Kết quả thực nghiệm

Sau khi quét mã code và nhâp các thông tin cần thiết, thông tin đơn hàng sẽ được cập nhật trực tiếp lên trang tính của google sheet.

Hình 29 và 30: thông tin đã được cập nhật trên phiếu nhập và chi tiết PN

- Sau đó thông tin sẽ được cập nhật lên trang xuất nhập tồn trên google và cập nhật lên biểu đồ hàng tồn hiện tại cho người dùng quan sát.

Chương 5: KẾT LUẬN

1. Ưu điểm

- Giao diện đơn giản, người dùng có thể dễ dàng thao tác và sử dụng. - Khó bị lỗi khi sử dụng.

- Dữ liệu cập nhật liên tục và nhanh chóng. - Độ bảo mật dữ liệu cao.

- Giúp ta quản lý cơ sở dữ liệu 1 cách dễ dàng

- Có thể ứng dụng trên nhiều loại mô hình, nhiều đối tượng khác nhau 1 cách rộng rãi.

2. Nhược điểm

- Hệ thống vẫn chưa thực dự vận hành 1 cách trơn tru mượt mà. - Người dùng vẫn phải làm theo 1 quy trình nhất định.

- Nhập đơn hàng trên Dashboard vẫn còn nhiều giới hạn như 1 đơn hàng chỉ cho phép nhận 1 loại sản phẩm.

- Hệ thống mới chỉ hoạt động trên 1 mảng duy nhất là phân chia hàng hóa và quản lý số lượng hàng hóa.

3. Hướng phát triển.

- Hệ thống có thể phát triển để quản lý dữ liệu trên nhiều mảng khác nhau như quản lý nhân sự, quản lý thông tin khách hàng, khảo sát thị trường và tìm hướng phát triển các loại sản phẩm. Từ đó có thể mở rộng quy mô của ứng dụng có thể quản lý cả 1 hệ thống công ty sản xuất hàng hóa nào đó.

Tài liệu tham khảo:

1. Kênh youtube hướng dẫn AppSheet:

https://www.youtube.com/channel/UCizIyYR6LQY5W6luQLaeY-g

2. Quản lý cơ sở dữ liệu SQL: https://openplanning.net/10241/co-so-du- lieu-sql-server-mau-de-hoc-sql

3. https://wiki.matbao.net/sql-la-gi-cac-lenh-co-ban-trong-lap-trinh-co-so- du-lieu-sql/

4. Học node-red cơ bản: https://hocarm.org/node-red-co-ban/#:~:text= %24%20sudo%20systemctl%20enable%20node-red%20%24%20sudo %20systemctl,th%C3%AC%20ch%E1%BA%A1y%20command %20%24%20sudo%20systemctl%20stop%20node-red

Một phần của tài liệu Engineering document template (Trang 25)

Tải bản đầy đủ (DOCX)

(42 trang)
w