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

Hệ thống bảng giá kệ sử dụng bluetooth 5.0 và màn hình E- ink (phần mềm + phần cứng ) của gateway

115 4 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 Giá Kệ Sử Dụng Bluetooth 5.0 Và Màn Hình E-Ink (Gateway)
Tác giả Lê Huỳnh Nhật Duy, Bành Nhựt Tiến
Người hướng dẫn TS. Võ Đình Tùng
Trường học Trường Đại Học Công Nghệ Tp. Hồ Chí Minh
Chuyên ngành Kỹ Thuật Điện Tử Truyền Thông
Thể loại Đồ Án Tốt Nghiệp
Năm xuất bản 2021
Thành phố Tp. Hồ Chí Minh
Định dạng
Số trang 115
Dung lượng 4,06 MB

Cấu trúc

  • 1. TÍNH CẤP THIẾT CỦA ĐỀ TÀI (10)
  • 2. TÌNH HÌNH NGHIÊN CỨU (10)
  • 3. MỤC ĐÍCH NGHIÊN CỨU (11)
  • 4. NHIỆM VỤ NGHIÊN CỨU (12)
  • 5. PHƯƠNG PHÁP NGHIÊN CỨU (13)
  • 6. CÁC KẾT QUẢ ĐẠT ĐƯỢC CỦA ĐỀ TÀI (13)
  • 7. KẾT CẤU CỦA ĐỒ ÁN (13)
  • Chương 1 GIỚI THIỆU (14)
    • 1.1 Một số phương pháp hiển thị giá hiện nay (14)
    • 1.2 Các công nghệ kết nối không dây hiện nay (16)
    • 1.3 Công nghệ Bluetooth 5.0 (18)
  • Chương 2 TỔNG QUAN GIẢI PHÁP (21)
    • 2.1 Raspberry pi 0 W (Wireless) (21)
    • 2.2 Raspberry Pi4 model B (21)
    • 2.3 Công nghệ Bluetooth version 5.0 (22)
      • 2.3.1 Nguyên lí hoạt động của Bluetooth (23)
      • 2.3.2 Các chuẩn kết nối của Bluetooth (23)
    • 2.4 Cơ sở lý thuyết về ngôn ngữ lập trình WebServer Full-Stacked (25)
    • 2.5 Các ngôn ngữ lập trình Web tốt nhất hiện nay (26)
      • 2.5.1. Ngôn ngữ lập trình Web PHP (26)
      • 2.5.2. Ngôn ngữ lập trình Web Java (26)
      • 2.5.3. Ngôn ngữ JavaScript (26)
      • 2.5.4. Ngôn ngữ lập trình Web C++ (26)
      • 2.5.5. Ngôn ngữ lập trình HTML (26)
    • 2.6 Các công cụ cần có trong công việc (27)
    • 2.7 Môi trường lập trình (28)
      • 2.7.1 Linux (28)
      • 2.7.2 Chrome (29)
    • 2.8 Ứng dụng xây dựng môi trường : Visual Studio , ChromeBase (29)
  • Chương 3 PHƯƠNG PHÁP GIẢI QUYẾT (31)
    • 3.1 Hệ thống nhãn kệ điện tử (31)
    • 3.2 Thiết lập máy tính nhúng để thay đổi dữ liệu tại cửa hàng (32)
      • 3.2.1 Thiết kế sơ đồ (32)
      • 3.2.2 Giải thích chức năng từng khối (32)
        • 3.2.2.1 Khối nguồn (32)
        • 3.2.2.2 Khối nhập dữ liệu (32)
        • 3.2.2.3 Khối xử lý (32)
        • 3.2.2.4 Website (33)
        • 3.2.2.5 Khối hiển thị (33)
    • 3.3 Sơ đồ khối nhãn kệ điện tử (33)
      • 3.3.1 Thiết kế sơ đồ khối (33)
      • 3.3.2 Chức năng từng khối (33)
        • 3.3.2.1 Khối nguồn (33)
        • 3.3.2.2 Khối thu phát Bluetooth (33)
        • 3.3.2.3 Khối xử lý (34)
        • 3.3.2.4 Khối chuyển đổi mức điện áp (34)
        • 3.3.2.5 Khối màn hình hiển thị (34)
        • 3.3.2.6 Khối giao tiếp với máy tính (34)
  • Chương 4 QUY TRÌNH THIẾT KẾ (35)
    • 4.1 Sơ đồ của hệ thống (35)
    • 4.2 Nguyên lý hoạt động hệ thống (35)
    • 4.3 Phần trung tâm điều khiển (36)
    • 4.4. Setup thẻ nhớ (37)
    • 4.5. Set up Raspberry Pi 0 W và Pi 4 (39)
    • 4.6. Cài đặt chương trình cho raspberry (39)
    • 4.7 Vị trí thực hiện cho khối nhiệm vụ LẬP TRÌNH (40)
    • 4.8 Khâu thiết kế Front End (40)
    • 4.9 Khâu lập trình Back End (41)
    • 4.10 Các thành phần chính của Web và Nhiệm vụ của chúng (41)
      • 4.10.1 Trang Login (tham khảo code tại templates/auth/login.html) (42)
      • 4.10.2 Trang Chào (tham khảo code tại templates/dashboard) (43)
      • 4.10.3 Trang làm việc với các kết nối cũ (43)
      • 4.10.4 Trang tìm các kết nối mới (tham khảo code tại templates/slave) (44)
      • 4.10.5 Trang Làm việc các kết nối mới (tham khảo code tại templates/slave) (44)
      • 4.10.6 Trang đổi Password (tham khảo code tại templates/system) (45)
    • 4.11 Khởi tạo và Thực hiện chương trình (Tham khảo tại Readme.md) (45)
    • 4.12 Khởi động Gate Way trên Raspberry pi (45)
  • Chương 5 THI CÔNG (46)
    • 5.1 Sử dụng Gate Way Bluetag (46)
      • 5.1.1 Trang Login (46)
      • 5.1.2 Trang chào (47)
      • 5.1.3 Trang Làm việc các kết nối cũ (47)
      • 5.1.4 Trang làm việc với kết nối mới (48)
      • 5.1.5 Trang làm việc với nhiều thiết bị cùng 1 lúc (51)
      • 5.1.6 Trang Đổi pass (52)
    • 5.2 Thao tác trang Web với màn hình E-inks (52)
  • Chương 6 ĐÁNH GIÁ KẾT QUẢ, KẾT LUẬN (54)
    • 6.1 Kết quả đạt được của hệ thống (54)
    • 6.2 Lỗi mà hệ thống gặp phải (54)
    • 6.3 Phương pháp giải quyết và khắc phục (55)
    • 6.4 Hướng phát triển của đề tài (55)
  • TÀI LIỆU THAM KHẢO (57)
  • PHỤ LỤC (59)
    • 1. Phụ lục linh kiện (59)
    • 2. Phụ lục code (60)

Nội dung

TÍNH CẤP THIẾT CỦA ĐỀ TÀI

Cùng với sự phát triển không ngừng của công nghệ, ngành bán lẻ đã có những bước tiến mạnh mẽ, đặc biệt với sự xuất hiện của nhãn kệ điện tử sử dụng màn hình E-Ink và công nghệ Bluetooth 5.0.

Nhãn kệ điện tử, một giải pháp thay thế giấy truyền thống, đã trở thành tiêu chuẩn trong ngành bán lẻ hiện đại Mặc dù nhiều doanh nghiệp từng sử dụng máy in mã vạch với chi phí thấp, nhãn điện tử mang lại giá trị lâu dài vượt trội hơn so với chi phí đầu tư ban đầu Việc áp dụng nhãn điện tử không chỉ giúp tiết kiệm chi phí mà còn nâng cao hiệu quả quản lý và trải nghiệm khách hàng trong cửa hàng.

Nhãn giá kệ điện tử là giải pháp hiển thị giá thiết yếu cho các cửa hàng bán lẻ, siêu thị và trung tâm thương mại, nơi giá cả sản phẩm thường xuyên thay đổi Việc sử dụng nhãn giấy truyền thống không đáp ứng được nhu cầu hiện đại do chi phí nhân công cao và tỷ lệ sai sót lớn Nhãn kệ điện tử, với màn hình E-ink và kết nối Bluetooth 5.0, mang lại hiệu quả cao hơn, giúp các nhà bán lẻ tối ưu hóa quy trình quản lý giá cả trong bối cảnh kinh tế phát triển.

TÌNH HÌNH NGHIÊN CỨU

Trên toàn cầu, nhiều nghiên cứu đã triển khai hệ thống hiển thị và thay đổi giá sử dụng công nghệ Bluetooth, với màn hình hiển thị đóng vai trò quan trọng trong việc trực quan hóa và tương tác Công nghệ E-INK, dựa trên nền tảng mực in điện tử, chỉ tiêu thụ năng lượng khi cập nhật thông tin giá, và mức tiêu thụ này chủ yếu phụ thuộc vào kích thước màn hình Do đó, năng lượng không bị tiêu hao trong quá trình hiển thị thông tin, giúp kéo dài tuổi thọ của thiết bị.

Công nghệ mới sẽ giúp tăng đáng kể tuổi thọ pin cho các hệ thống hiển thị và thay đổi giá Mặc dù các hiển thị đơn sắc sử dụng ánh sáng tự nhiên có thể không khả dụng trong một số bối cảnh, nhưng nhiều công ty hàng đầu như E-INK Holdings Inc, tập đoàn điện tử LG, M2COMM, New Zealand Electronic Shelf Labelling và NXP Semiconductors đang tích cực phát triển thị trường này.

Tại Việt Nam, xu hướng phát triển hệ thống bảng giá điện tử cho siêu thị đang ngày càng gia tăng Công ty Oritech Vietnam đã thiết kế và lắp đặt bảng điện tử hiển thị mã vạch sản phẩm, giúp quản lý hàng hóa hiệu quả thông qua thiết bị Portable Terminal Bên cạnh đó, Opticon Vietnam cũng cung cấp sản phẩm sử dụng công nghệ Bluetooth và Wireless để cập nhật giá sản phẩm ngay lập tức, giảm thiểu sai sót và rủi ro trong kiểm toán giá Tuy nhiên, công nghệ Bluetooth cũ còn gặp một số hạn chế như tiêu thụ năng lượng cao và khoảng cách truyền nhận ngắn, vì vậy cần cải tiến công nghệ Bluetooth thế hệ mới kết hợp với hệ thống hiển thị E-INK để phục vụ cho các hệ thống bán lẻ quy mô lớn như Công ty Cổ phần Thế giới Di động.

MỤC ĐÍCH NGHIÊN CỨU

Chuỗi siêu thị và cửa hàng tiện lợi thường gặp khó khăn trong việc quản lý do số lượng cửa hàng và khu vực lớn Việc sử dụng nhãn giá bằng giấy không hỗ trợ tốt cho việc quản lý thống nhất từ cơ sở chính Thay vào đó, nhãn kệ điện tử cho phép quản lý tập trung hoặc phân phối hiệu quả giữa các cửa hàng Cơ sở chính có thể kiểm soát và điều chỉnh giá một cách đồng bộ trên nền tảng bán lẻ thông minh, đồng thời phân quyền quản lý nhãn giá điện tử cho các khu vực hoặc cửa hàng độc lập, giúp họ tự quản lý giá sản phẩm và theo dõi các thay đổi giá một cách dễ dàng.

3 nền Bằng cách này, các trụ sở sẽ rất dễ dàng kiểm soát được giá cả của các sản phẩm trong cửa hàng

Việc áp dụng thẻ giá công suất thấp giúp quản lý giá từ xa dễ dàng, nâng cao hiệu quả công việc và giảm chi phí lao động cho nhà bán lẻ Nhãn kệ E-Ink không chỉ hiển thị giá mà còn cung cấp thông tin toàn diện về sản phẩm như xuất xứ, loại, hàng tồn kho và mã QR tương tác, hỗ trợ người tiêu dùng trong quá trình mua sắm Với thiết kế cố định, nhãn kệ điện tử giảm thiểu nhầm lẫn giữa nhãn giá và sản phẩm, nâng cao trải nghiệm mua sắm và hình ảnh thương hiệu Màn hình giấy điện tử tiết kiệm giấy và bảo vệ môi trường, đồng thời cho phép hiển thị mã QR để truy cập thông tin sản phẩm trực tuyến Trong tương lai, thẻ giá điện tử sẽ thay thế thẻ giá giấy truyền thống, trở thành tiêu chuẩn cho các cửa hàng bán lẻ offline.

NHIỆM VỤ NGHIÊN CỨU

Nhóm nghiên cứu đã phát triển đề tài "Hệ thống nhãn kệ điện tử sử dụng màn hình E-ink qua Bluetooth 5.0", với mục tiêu tạo ra một giải pháp hiệu quả cho việc quản lý thông tin sản phẩm Để hệ thống hoạt động tối ưu, nhóm đã xác định các nhiệm vụ cần thực hiện, bao gồm việc cải thiện khả năng kết nối và hiển thị thông tin trên màn hình E-ink, nhằm nâng cao trải nghiệm người dùng và hiệu quả trong việc quản lý hàng hóa.

Tìm hiểu tổng quan về cấu tạo phần cứng, chức năng của các linh kiện

Tìm hiểu về vi điều khiển AVR và máy tính nhúng Raspberry (gateway) Thiết kế giao diện Webserver để giám sát hệ thống

Thiết kế và làm vỏ hộp cho raspberry Pi

Kiểm tra khoảng cách truyền nhận, thời gian thay đổi dữ liệu, số thiết bị được kết nối, số thiết bị kết nối cùng lúc với gateway

Kiểm tra và đánh giá tính ứng dụng, tính kinh tế của đề tài

PHƯƠNG PHÁP NGHIÊN CỨU

Chúng tôi nghiên cứu và học hỏi từ các mô hình thay đổi giá sản phẩm hiện nay, tích hợp và cải tiến để phát triển mô hình mới, giải quyết những hạn chế còn tồn tại Quá trình xây dựng mô hình này được thực hiện trên phần mềm Visual Studio sử dụng ngôn ngữ Python, bao gồm thiết kế và lập trình front-end và back-end cho website, thiết kế vỏ hộp cho Raspberry Pi và sử dụng Raspberry Pi 0 W và Pi 4 để điều khiển và kết nối với nhãn điện tử qua Bluetooth.

CÁC KẾT QUẢ ĐẠT ĐƯỢC CỦA ĐỀ TÀI

Mô hình hoạt động hiệu quả với thiết kế nhỏ gọn và tiện lợi, cho phép kết nối nhiều thiết bị trong khoảng cách truyền nhận từ 10 đến 13 mét Tốc độ thay đổi dữ liệu nhanh chóng, chỉ từ 1 đến 3 giây.

KẾT CẤU CỦA ĐỒ ÁN

- Chương 2: Tổng quan giải pháp

- Chương 3: Phương pháp giải quyết

- Chương 4: Quy trình thiết kế

- Chương 6: Đánh giá kết quả, kết luận

GIỚI THIỆU

Một số phương pháp hiển thị giá hiện nay

Phương pháp thủ công để ghi giá niêm yết sản phẩm bằng giấy tờ không chỉ thiếu tính chuyên nghiệp mà còn kém thẩm mỹ Khi cần thay đổi giá, bạn sẽ phải in lại một tờ giấy mới, gây bất tiện và tốn thời gian.

Hình 1.1: Phương pháp thay đổi giá thủ công

Phương pháp hiển thị dùng LCD và thu phát Wifi: Phương pháp này hiện đại, tuy nhiên, phương pháp này bộc lộ 2 nhược điểm:

Màn hình LCD tiêu thụ năng lượng lớn, do đó cần sử dụng bộ cấp nguồn DC thay vì pin, dẫn đến việc xuất hiện nhiều dây điện trên các kệ hàng trưng bày sản phẩm.

Việc cập nhật giá bán buôn qua Wifi có thể gặp phải hiện tượng nhiễu, dẫn đến giá không được cập nhật chính xác cho từng màn hình Kết quả là thông tin giá bán buôn có thể bị hiển thị sai lệch.

Phương pháp hiển thị giá bằng màn hình E-INK kết hợp với thu phát Wifi giúp tiết kiệm năng lượng, cho phép sử dụng PIN Mặc dù vậy, việc cập nhật giá bán buôn qua Wifi vẫn gặp một số nhược điểm cần khắc phục.

Phương pháp hiển thị giá bằng màn hình E-INK kết hợp với công nghệ Bluetooth đã mang lại sự cải thiện đáng kể trong việc cập nhật giá bán buôn Mặc dù vậy, các phiên bản Bluetooth từ 1.0 đến 4.2 vẫn tồn tại một số nhược điểm cần khắc phục.

- Khoảng cách truyền nhận ngắn < 100m

- Băng thông hẹp, mất nhiều thời gian khi truyền các dữ liệu có dung lượng lớn

- Năng lượng tiêu thụ vẫn còn cao

- Chưa định danh cho từng thiết bị đầu cuối

Để hiển thị và cập nhật giá bán buôn hiệu quả trên các thiết bị tại cửa hàng, cần đảm bảo một số tiêu chí quan trọng giữa kệ nhãn giấy và kệ nhãn điện tử.

Thiết bị hiển thị cần tiết kiệm năng lượng và chỉ sử dụng PIN làm nguồn cung cấp Thời gian sử dụng của PIN nên kéo dài từ vài tháng đến một năm, giúp giảm tần suất thay PIN.

- Giá cập nhật phải đến được đúng từng thiết bị hiển thị (tuyệt đối 100%)

- Đặc biệt, việc cập nhật giá phải được thực hiện thật nhanh, gần như là tức thì.

Các công nghệ kết nối không dây hiện nay

NGHỆ ƯU ĐIỂM NHƯỢC ĐIỂM

▪ Dễ dàng điều khiển các thiết bị thông qua kết nối Internet từ bất kỳ đâu trên thế giới

▪ Khả năng mở rộng cực lớn

▪ Không xuyên tường mạnh được, nếu nhà nhiều phòng thì sẽ bị giảm tín hiệu

▪ Chỉ hoạt động ổn định trong khu vực có mật độ

▪ Sử dụng mã hóa AES-128 mang đến độ bảo mật cao

▪ Dễ dàng mở rộng tới 65.000 thiết bị trong cùng một hệ thống

▪ Hoạt động ổn định trong khu vực có mật độ tín hiệu dày đặc tín hiệu dày đặc nên chi phí lắp đặt sẽ cao

▪ Công suất thấp có nghĩa là tuổi thọ pin dài cho các thiết bị

▪ LoRaWAN có lợi ích là liên minh với cách tiếp cận mở

▪ Băng thông thấp làm cho nó lý tưởng cho việc triển khai IoT thực tế với ít dữ liệu hơn

▪ Chi phí kết nối thấp

▪ Bảo mật: một lớp bảo mật cho mạng và một lớp cho ứng dụng có mã hóa AES

▪ Không dành cho tải trọng dữ liệu lớn, tải trọng giới hạn ở 100 byte

▪ Không phải là ứng cử viên lý tưởng cho các ứng dụng thời gian thực đòi hỏi độ trễ thấp hơn và yêu cầu thiết bị ràng buộc

▪ Tốc độ truyền dữ liệu thấp 100Kbps

▪ Mạng lưới Z-Wave cho phép kết nối lên đến 232 thiết bị cùng một lúc

Càng nhiều nút tham gia vào mạng thì tầm phủ sóng càng rộng

▪ Các thiết bị Z-Wave có giá cả vô cùng phải chăng, thao tác lắp đặt đơn giản mà không cần đục khoét nhà

▪ Giới hạn thiết bị kết nối ( chỉ kết nối được 232 thiết bị cùng một lúc)

▪ Khoảng cách truyển nhận ngắn: tối thiểu ở khoảng cách 15m và hơn 50m nếu không có vật cản

▪ Tần số thực tế mà thiết bị Z-Wave hoạt động phụ thuộc vào quốc gia mà thiết bị đang được sử dụng

▪ Tầm hoạt động hiệu quả 40m - 60m

▪ Tốc độ truyền tối đa 50 Mbps

▪ Tiết kiệm năng lương tối đa 2,5 lần so với Bluetooth 4.2 (thời gian chờ Bluetooth tốn 0,3 mAh và khi truyền là 30 mAh)

Kết nối internet qua chuẩn giao tiếp IPv6 mang lại tính bảo mật cao hơn, giúp thiết bị khó bị tấn công và cho phép bạn chia sẻ kết nối internet từ điện thoại đến các thiết bị khác một cách an toàn.

▪ Giới hạn khi có vật cản

Bảng 1.1: Bảng so sánh ưu nhược điểm của các công nghệ kết nối không dây

Công nghệ Bluetooth 5.0

Để hiển thị và cập nhật giá bán buôn trên các thiết bị cho cửa hàng, cần tuân thủ một số tiêu chí quan trọng.

Thiết bị hiển thị cần tiết kiệm năng lượng và chỉ sử dụng PIN làm nguồn cung cấp Thời gian sử dụng của PIN nên kéo dài, lý tưởng là từ vài tháng đến một năm mới cần thay PIN một lần.

- Giá cập nhật phải đến được đúng từng thiết bị hiển thị (tuyệt đối 100%)

- Đặc biệt, việc cập nhật giá phải được thực hiện thật nhanh, gần như là tức thì

Nhãn giá điện tử thông minh sử dụng công nghệ bluetooth có các đặc điểm sau:

Công nghệ Bluetooth sử dụng kỹ thuật nhảy tần và công nghệ gói ngắn, giúp giảm nhiễu và tăng độ tin cậy của tín hiệu Nhờ vào khả năng chống mờ tín hiệu và nhảy tần nhanh, thẻ giá điện tử Bluetooth đảm bảo truyền tải thông tin ổn định và hiệu quả.

Khả năng chống nhiễu mạnh mẽ giúp truyền tải dữ liệu ổn định, đồng thời đảm bảo giá cả cạnh tranh cho các mặt hàng Hệ thống có khả năng thay đổi thời gian thực, góp phần giảm tỷ lệ lỗi trong quá trình truyền tải.

- Độ phủ sóng tăng gấp 4 lần, tốc độ truyền dữ liệu tăng gấp đôi và tiết kiệm năng lượng gấp 2,5 lần so với phiên bản 4.0

- Kết nối được nhiều thiết bị cùng lúc

- Cho phép định danh các thiết bị hiển thị bằng địa chỉ MAC

So với các thẻ giá điện tử truyền thống sử dụng 2,4g, hồng ngoại và 433MHz, thẻ giá điện tử sử dụng công nghệ Bluetooth năng lượng thấp có tốc độ làm mới nhanh hơn, dưới 1 giây cho mỗi đơn vị, trong khi thẻ giá kệ điện tử có thể làm mới trong vòng 20.000 đến 30 phút Công nghệ Bluetooth mang lại sự nhanh chóng và tiện lợi trong việc thay đổi giá cả hàng hóa, giúp các nhà bán lẻ thực hiện các điều chỉnh một cách chính xác và linh hoạt Điều này không chỉ tối ưu hóa kế hoạch khuyến mãi mà còn nâng cao khả năng thu hút khách hàng cho các cửa hàng bán lẻ.

Bảng giá điện tử bluetooth được trang bị mã ID duy nhất và hệ thống mã hóa bảo mật giúp bảo vệ dữ liệu, ngăn chặn giả mạo giá sản phẩm và đảm bảo quyền tự chủ trong việc điều chỉnh giá Việc tích hợp bảng giá điện tử vào hệ thống máy tính đã loại bỏ nhu cầu thay thế thẻ giá thủ công, giảm chi phí sản xuất và bảo trì thẻ giấy, đồng thời nâng cao sự hài lòng của khách hàng nhờ vào việc hiển thị giá nhanh chóng và chính xác Thẻ giá điện tử bluetooth cũng cho phép cập nhật giá một cách nhanh chóng, giúp các nhà bán lẻ thực hiện chiến lược giá một cách hiệu quả hơn.

Hệ thống nhãn kệ điện tử sử dụng màn hình E-Ink qua Bluetooth 5.0 là một nghiên cứu khoa học nhằm cải thiện ngành bán lẻ Hệ thống này cho phép hiển thị linh hoạt giá cả, tên sản phẩm, mã vạch và thông tin khuyến mại tại các trung tâm mua sắm, siêu thị, cửa hàng tiện lợi và hiệu thuốc, thay thế cho nhãn giấy truyền thống Mỗi thẻ giá được kết nối với gateway/server, cho phép điều chỉnh giá và thông tin khuyến mãi theo thời gian thực So với nhãn giấy, thẻ giá điện tử giúp giảm chi phí vận hành, nâng cao hiệu quả quản lý, cải thiện hình ảnh cửa hàng và nâng cao trải nghiệm người dùng.

Mục tiêu chính của nhóm là hỗ trợ quản lý và nhân viên cửa hàng trong việc nhanh chóng xác định vị trí hàng hóa, đảm bảo việc bổ sung hàng kịp thời trên kệ, và tối ưu hóa việc thay đổi giá, từ đó nâng cao hiệu quả kinh doanh bán buôn.

TỔNG QUAN GIẢI PHÁP

Raspberry pi 0 W (Wireless)

The Raspberry Pi Zero W, also known as Raspberry Pi Zero Wifi or Raspberry Pi Zero Wireless, is an upgraded version of the Raspberry Pi Zero, featuring added capabilities of Wifi and Bluetooth connectivity.

Thông số kỹ thuật (Tham khảo ở phần phụ lục linh kiện)

Raspberry Pi4 model B

Raspberry Pi 4 Model B là phiên bản mới nhất của máy tính Raspberry Pi, trang bị 2 cổng USB 3.0 và 2 cổng USB 2.0, cùng với cổng Ethernet và hỗ trợ Bluetooth 5.0 BLE, mang lại tiềm năng lớn cho các thiết bị USB tốc độ cao Đầu nối USB Type-C hỗ trợ OTG, cho phép kết nối trực tiếp với PC để truy cập thiết bị cục bộ Raspberry Pi 4 có thể hoạt động như một chiếc PC, phục vụ cho các tác vụ lướt web, lập trình Python và đa nhiệm hiệu quả.

Thông số kỹ thuật (Tham khảo ở phần phụ lục linh kiện)

Raspberry Pi là máy tính một board mạch được phát triển bởi Raspberry Pi Foundation tại Anh, nhằm thúc đẩy giảng dạy khoa học máy tính cơ bản trong trường học và các nước đang phát triển Phiên bản đầu tiên đã vượt qua kỳ vọng ban đầu, trở nên phổ biến và được ứng dụng trong nhiều lĩnh vực như tự động hóa, đa phương tiện, robot, IoT, và góp phần vào cuộc cách mạng công nghiệp 4.0.

Raspberry Pi không chỉ hỗ trợ hệ điều hành Raspberry OS mà còn có khả năng chạy trên nhiều hệ điều hành khác như Ubuntu và Raspian Ngoài ra, nó còn có thể hoạt động với các hệ điều hành đa phương tiện như Kodi, OSMC và LibreElec.

Công nghệ Bluetooth version 5.0

Bluetooth là công nghệ truyền thông không dây tầm gần, cho phép các thiết bị điện tử kết nối và truyền dữ liệu qua khoảng cách ngắn Công nghệ này hỗ trợ việc tạo ra các mạng cá nhân không dây (Wireless Personal Area Network - PANs) giữa các thiết bị di động và cố định.

Công nghệ Bluetooth 5.0 sử dụng sóng radio tần số 2,4GHz để kết nối các thiết bị điện tử với nhau, cho phép trao đổi dữ liệu trong khoảng cách ngắn mà không cần cáp truyền thống Đây là một phần quan trọng trong việc kết nối không dây, tương tự như sóng wifi, giúp tăng cường khả năng giao tiếp giữa các thiết bị.

Chuẩn kết nối Bluetooth hiện nay được tích hợp trên hầu hết các thiết bị di động và laptop, cung cấp nhiều tính năng hữu ích cho người dùng.

2.3.1 Nguyên lí hoạt động của Bluetooth:

Khi bật Bluetooth, thiết bị sẽ tự động tìm tần số tương thích để kết nối với thiết bị trong khu vực, đảm bảo ổn định trong kết nối và truyền dữ liệu Bluetooth có ba loại tầm phủ sóng khác nhau.

- Class 1: Công suất 100mW với tầm phủ sóng gần 100m

- Class 2: Công suất 2,5mW, tầm phủ sóng khoảng 10m

- Class 3: Công suất 1mW với tầm phủ sóng khoảng 5m

2.3.2 Các chuẩn kết nối của Bluetooth:

Bluetooth 1.0: Phiên bản đầu tiên được đưa ra thị trường với tốc độ kết nối ban đầu là 1Mbps

Bluetooth 1.1: Là phiên bản được hoàn thiện hơn của bluetooth 1.0

Bluetooth 1.2: Chuẩn này hoạt động dựa trên nền băng tần 2,4GHz và tăng cường kết nối thoại

Bluetooth 1.2 + EDR: Tốc độ của chuẩn bluetooth lên đến 2,1Mbps với chế độ cải thiện kết nối truyền tải - EDR (enhanced data rate)

Bluetooth 2.0 + EDR: Được công bố vào tháng 7/2007 với nhiều cải tiến như tốc độ ổn định và truyền tải dữ liệu nhanh hơn

Bluetooth 2.1 + EDR: Là thế hệ nâng cấp của Bluetooth 2.0, có hiệu năng cao hơn và tiết kiệm năng lượng hơn

Hình 2.4: Chuẩn kết nối bluetooth đã được nâng cấp và cải thiện nhiều lần Bluetooth 3.0 + HS: Có tốc độ truyền dữ liệu đạt mức 24Mbps - bằng sóng BT

- High Speed, tương đương chuẩn wifi thế hệ đầu tiên, phạm vi hiệu quả nhất chỉ trong vòng 10m

Bluetooth 4.0: Là sự kết hợp của “classic bluetooth” (bluetooth 2.1 và 3.0),

“bluetooth high speed” (bluetooth 3.0 + HS) và “bluetooth low energy” (bluetooth

16 smart ready/bluetooth smart) Thế hệ bluetooth 4.0 có ưu điểm là kết nối và truyền tải dữ liệu nhanh và tiết kiệm năng lượng hơn

Bluetooth 4.1: Đây là phiên bản nâng cấp của bluetooth 4.0, mang đến tốc độ truyền tải dữ liệu nhanh hơn và giúp các thiết bị di động thông minh dễ dàng kết nối hơn so với trước đây

Bluetooth 4.2: Ra mắt chính thức vào tháng 12/2014, phiên bản này có tốc độ truyền dữ liệu đã được nâng lên gấp 2,5 lần, cùng với đó là việc tiêu thụ điện năng ít hơn, bảo mật cao hơn và đặc biệt là có thể kết nối trực tiếp internet thông qua chuẩn IPv6

Bluetooth 5.0: Đây là phiên bản mới nhất được SIG trình làng vào ngày 16/6/2016 Những cải tiến đáng kể như bluetooth 5.0 có độ phủ sóng rộng gấp 4 lần, tốc độ truyền dữ liệu nhanh gấp đôi và tiết kiệm hơn gấp 2,5 lần so với 4.0.

Cơ sở lý thuyết về ngôn ngữ lập trình WebServer Full-Stacked

Lập trình web là quá trình chuyển đổi dữ liệu từ các bộ phận thiết kế thành một trang web hoàn chỉnh Sau khi hoàn thành việc xây dựng, lập trình viên sẽ đảm nhận nhiệm vụ phân chia công việc quản trị website.

Trong phần này em xin phép sẽ giới thiệu sơ lược về lập trình web

Lập trình website là quá trình chuyển đổi dữ liệu từ bộ phận thiết kế thành một hệ thống website hoàn chỉnh, cho phép tương tác với cơ sở dữ liệu và người dùng thông qua ngôn ngữ lập trình.

Sau khi hoàn thành việc xây dựng trang web, lập trình viên có thể được giao nhiệm vụ quản trị website Để việc quản lý trở nên dễ dàng hơn, bạn cần trang bị một số công cụ và kỹ năng cần thiết.

Các công cụ này sẽ giúp bạn theo dõi thời gian hoạt động (uptime), thời gian ngừng hoạt động (downtime), tỷ lệ thoát trang web, nguồn lưu lượng truy cập vào website, và tình trạng quá tải băng thông.

Bạn có thể học cách lập trình website cơ bản và đồng thời bổ sung kiến thức quản trị website trong thời gian rảnh rỗi.

Các ngôn ngữ lập trình Web tốt nhất hiện nay

Các ngôn ngữ lập trình Web

2.5.1 Ngôn ngữ lập trình Web PHP:

Mã nguồn mở và ổn định, PHP là ngôn ngữ lập trình giúp doanh nghiệp tiết kiệm chi phí đáng kể so với các ngôn ngữ khác Hơn nữa, việc phát triển website và ứng dụng web bằng PHP mang lại sự linh hoạt và khả năng tương tác tốt hơn cho trang web của bạn.

Do đó, PHP được các doanh nghiệp đơn vị thiết kế Web dùng khá phổ biến

2.5.2 Ngôn ngữ lập trình Web Java:

Java biên dịch mã nguồn thành bytecode thay vì mã máy như các ngôn ngữ khác, điều này tạo ra lợi thế cạnh tranh nổi bật và góp phần làm cho Java trở thành ngôn ngữ lập trình phổ biến nhất trên toàn cầu.

Ngôn ngữ này có nhiều ưu điểm nổi bật như không mất phí, dễ đọc, dễ tương tác và giúp giảm tải công việc cho server Nếu bạn thành thạo JavaScript, việc tiếp cận các công nghệ mới như AJAX và ATLAS sẽ trở nên dễ dàng hơn.

2.5.4 Ngôn ngữ lập trình Web C++:

Với 30 năm hoạt động, C++ là ngôn ngữ lập trình rất phổ biến với các nhà phát triển Web trên thế giới Microsoft Windows, Google Chrome, Photoshop, PDFReader… Là những trang Web sử dụng ngôn ngữ C++

2.5.5 Ngôn ngữ lập trình HTML:

HTML (Ngôn ngữ đánh dấu siêu văn bản) là ngôn ngữ được sử dụng để tạo ra các trang web với nội dung được trình bày trên World Wide Web Khi truy cập một trang web, người dùng có thể điều hướng đến nhiều trang khác nhau, mỗi trang đó là một tài liệu HTML.

Web Bảng kệ sẽ được phát triển bằng HTML cho phần Front-End và PHP cho phần Back-End, đồng thời sử dụng ngôn ngữ lập trình Python để hỗ trợ các chức năng khác.

Hình 2.5: Ngôn ngữ sử dụng cho Front-End và Back-End

Các công cụ cần có trong công việc

Ngôn ngữ lập trình Python, do Guido van Rossum phát triển và ra mắt lần đầu vào năm 1991, là một ngôn ngữ lập trình bậc cao đa năng Python nổi bật với tính dễ đọc, dễ học và dễ nhớ, làm cho nó trở thành lựa chọn lý tưởng cho người mới bắt đầu Cấu trúc rõ ràng và hình thức sáng sủa của Python giúp người dùng viết mã lệnh với số lần gõ phím tối thiểu, rất phù hợp cho phát triển trí tuệ nhân tạo (AI) Vào tháng 7 năm 2018, Van Rossum đã từ chức lãnh đạo cộng đồng ngôn ngữ Python sau 30 năm cống hiến.

Python là ngôn ngữ lập trình hoàn toàn kiểu động, sử dụng cơ chế cấp phát bộ nhớ tự động, tương tự như các ngôn ngữ Perl, Ruby, Scheme, Smalltalk và Tcl Ngôn ngữ này được phát triển trong khuôn khổ một dự án mã nguồn mở, dưới sự quản lý của tổ chức phi lợi nhuận Python Software Foundation.

Python ban đầu được phát triển để hoạt động trên nền tảng Unix, nhưng sau đó đã mở rộng sang nhiều hệ điều hành khác như MS-DOS, Mac OS, OS/2, Windows và Linux Sự phát triển của Python có sự đóng góp của nhiều cá nhân, tuy nhiên, Guido van Rossum vẫn là người có ảnh hưởng lớn nhất đến ngôn ngữ lập trình này.

19 là tác giả chủ yếu của Python Ông giữ vai trò chủ chốt trong việc quyết định hướng phát triển của Python.

Môi trường lập trình

Linux là hệ điều hành máy tính được phát triển bởi nhà khoa học máy tính

Linux là hệ điều hành miễn phí, được phát triển dựa trên hệ điều hành Unix và phát hành dưới dạng phần mềm mã nguồn mở Điều này cho phép người dùng và nhà phát triển tự do sửa đổi và bổ sung mã nguồn của hệ điều hành Linux được phát hành theo giấy phép GNU, tạo điều kiện cho sự phát triển và cải tiến liên tục.

Linux ban đầu được thiết kế để hoạt động trên máy tính cá nhân sử dụng dòng vi xử lý Intel 86x Tuy nhiên, hệ điều hành này đã được mở rộng để tương thích với nhiều loại máy tính khác nhau Hiện nay, Linux được coi là hệ điều hành hỗ trợ đa dạng phần cứng nhất.

Raspbian [5] là một hệ điều hành máy tính dựa trên Debian cho Raspberry Pi

Raspbian, hệ điều hành chính thức cho máy tính bảng đơn Raspberry Pi từ năm 2015, có một số phiên bản như Raspbian Stretch và Raspbian Jessie Được phát triển bởi Mike Thompson và Peter Green, bản dựng đầu tiên hoàn thành vào tháng 6 năm 2012 Hệ điều hành này vẫn đang được phát triển tích cực và được tối ưu hóa cho các CPU ARM hiệu suất thấp của dòng Raspberry Pi.

Raspbian sử dụng PIXEL, Pi I đã xác nhận X - Window Enviroment, Lightweight là môi trường máy tính để bàn chính của nó kể từ bản cập nhật mới nhất

Bài viết mô tả một môi trường máy tính để bàn LXDE được tùy chỉnh, kết hợp với trình quản lý cửa sổ xếp chồng Openbox, đi kèm với một chủ đề mới và một số thay đổi khác Hệ điều hành này được phát hành cùng với chương trình máy tính đại số Mathematica, phiên bản Minecraft Pi, và một phiên bản nhẹ của Chromium, tương thích với phiên bản mới nhất.

Google Chrome là trình duyệt web miễn phí do Google phát triển, sử dụng nền tảng V8 engine Dự án mã nguồn mở hỗ trợ Google Chrome được gọi là Chromium.

Phiên bản beta của trình duyệt Chrome trên Microsoft Windows được phát hành vào ngày 2 tháng 9 năm 2008 với 43 ngôn ngữ Sau khi phiên bản ổn định chính thức 1.0.154.36 ra mắt vào ngày 11 tháng 12, giai đoạn thử nghiệm đã kết thúc Đến tháng 6 năm 2011, Chrome đã trở thành trình duyệt phổ biến thứ ba toàn cầu, chỉ sau Firefox và Internet Explorer, chiếm khoảng 16,5% thị phần trình duyệt web Phiên bản Chrome dành cho Mac OS X và Linux được phát hành vào tháng 6 năm 2009.

Ngày 21 tháng 5 năm 2012, Google Chrome chính thức vượt qua Internet Explorer và trở thành trình duyệt phổ biến nhất trên thế giới Tính đến tháng 8 năm

Theo thống kê của StatCounter vào năm 2016, Chrome chiếm khoảng 62% thị phần toàn cầu trong số các trình duyệt web trên máy tính để bàn và 50% thị phần trên tất cả các phiên bản máy tính khác Ngoài ra, Chrome cũng là trình duyệt phổ biến nhất cho điện thoại thông minh, điều này đã góp phần vào sự thành công và mở rộng thương hiệu của Google.

"Chrome" trên các sản phẩm khác như Chromecast, Chromebook, Chromebit, Chromebox và Chromebase.

Ứng dụng xây dựng môi trường : Visual Studio , ChromeBase

Visual Studio Code là một trình biên tập mã mạnh mẽ do Microsoft phát triển, tương thích với Windows, Linux và macOS Nó cung cấp các tính năng như gỡ lỗi, tích hợp Git, đánh dấu cú pháp, tự động hoàn thành mã thông minh, và hỗ trợ snippets, giúp cải thiện hiệu suất lập trình và quản lý mã nguồn.

Phần mềm này cho phép người dùng tùy chỉnh theo ý muốn, bao gồm việc thay đổi theme, phím tắt và các tùy chọn khác Nó hoàn toàn miễn phí và là phần mềm mã nguồn mở, mặc dù gói tải xuống chính đi kèm với giấy phép.

Visual Studio Code là một ứng dụng phát triển dựa trên nền tảng Electron, cho phép triển khai các ứng dụng Node.js trên máy tính cá nhân với động cơ bố trí Blink Mặc dù được xây dựng trên nền tảng Electron, phần mềm này không chỉ đơn thuần là một phiên bản khác mà mang lại nhiều tính năng độc đáo cho người dùng.

21 của Atom, nó thực ra được dựa trên trình biên tập của Visual Studio Online (tên mã là "Monaco")

Theo khảo sát năm 2018 trên Stack Overflow, Visual Studio Code đứng đầu danh sách trình biên tập mã phổ biến nhất, với 34.9% trong số 75,398 người tham gia cho biết họ sử dụng công cụ này.

PHƯƠNG PHÁP GIẢI QUYẾT

Hệ thống nhãn kệ điện tử

Hệ thống nhãn kệ điện tử Bluetooth 5.0 được thiết kế và thi công để kết nối với máy tính nhúng Raspberry (Gateway) nhằm truyền nhận thông tin Hệ thống này cho phép giám sát và điều khiển từ xa một cách đồng bộ thông qua Web Server.

Hình 3.1: Mô hình chi tiết hệ thống thay đổi bảng giá kệ

Hệ thống bao gồm hai phần chính: Điểm kết nối (gateway) và một máy tính nhúng Raspberry Pi 4, có khả năng kết nối với một số lượng hạn chế các nhãn kệ điện tử qua Bluetooth 5.0 Hệ thống cho phép người dùng thay đổi tên và giá sản phẩm thông qua một trang web, với dữ liệu được lưu trữ trên server.

Phần nhãn kệ điện tử: Bộ hiển thị dùng màn hình E-ink để hiển thị nội dung

23 màn hình theo yêu cầu của người dùng được kết nối với máy tính nhúng qua bluetooth 5.0.

Thiết lập máy tính nhúng để thay đổi dữ liệu tại cửa hàng

Hình 3.2: Sơ đồ của của máy tính nhúng

3.2.2 Giải thích chức năng từng khối:

Sử dụng adapter nguồn (5,1V – 3A) để cấp nguồn cho khối xử lý (raspberry) cấp cho raspberry pi

Tuỳ vào màn hình chúng ta sử dụng để hiển thị mà chúng ta có nguồn cấp riêng phù hợp cho khối hiển thị

Sử dụng bàn phím và chuột kết nối với raspberrry qua cổng USB, dùng để nhập dữ liệu truyền cho khối xử lý

Sử dung máy tính nhúng Raspberry, tham gia trực tiếp vào quản lý thông tin truyền nhận từ raspberry tới mạch hiển thị nhãn kệ điện tử

Có nhiệm vụ nhận và lưu trữ dữ liệu từ khối xử lý đồng thời tham gia xử lý trực tiếp đến màn hình E-ink

Màn hình máy tính nhúng có thể sử dụng nhiều loại kết nối như HDMI-HDMI, HDMI-DVI, HDMI-VGA hoặc RCA Video, với nhiệm vụ chính là hiển thị kết quả truyền nhận dữ liệu.

Sơ đồ khối nhãn kệ điện tử

3.3.1 Thiết kế sơ đồ khối

Hình 3.3: Sơ đồ khối nhãn kệ điện tử

Sử dụng nguồn pin (2 pin mắc nối tiếp) 6 VDC qua bộ lọc nguồn 5V cấp cho khối xử lý, khối thu phát Bluetooth và khối chuyển đổi điện áp

Nhận dữ liệu từ khối Gateway và đưa đến khối xử lý

Nhận dữ liệu từ khối thu phát Bluetooth sau đó xử lý dữ liệu sau đó chuyển sang khối chuyển đổi điện áp

3.3.2.4 Khối chuyển đổi mức điện áp:

Chuyển điện áp từ 5V sang 3.3V để cấp nguồn cho khối màn hình hiển thị và đưa dữ liệu đến khối màn hình hiển thị

3.3.2.5 Khối màn hình hiển thị:

Nhận dữ liệu từ khối xử lý qua khối chuyển đổi mức điện áp để phù hợp nguồn cấp và đưa lên màn hình E-ink

3.3.2.6 Khối giao tiếp với máy tính:

Dùng để nạp frame cho màn hình E-ink, thay đổi code và truyền dữ liệu

Có thể dùng nguồn từ máy tính thông qua cổng micro USB để cấp cho phần màn hình hiển thị

QUY TRÌNH THIẾT KẾ

Sơ đồ của hệ thống

Hình 4.1: Mô hình tổng quát hệ thống thay đổi bảng giá kệ

Nguyên lý hoạt động hệ thống

Đăng nhập vào hệ thống web qua tài khoản và mật khẩu trên Raspberry Pi Quét các thiết bị màn hình hiển thị xung quanh được trang bị Bluetooth Chọn màn hình cần cập nhật nội dung, sau đó lưu thiết bị Nhập thông tin vào các trường "tên sản phẩm" và "giá sản phẩm", sau đó nhấn vào nút hiển thị để cập nhật nội dung trên màn hình E-ink Dữ liệu sau khi cập nhật trên web sẽ được gửi đến mạch hiển thị qua tín hiệu Bluetooth 5.0.

27 bluetooth 5.0 của mạch hiển thị nhận được dữ liệu sẽ kết nối với vi điều khiển Atmega328P mã hóa dữ liệu và đưa dữ liệu lên màn hình E-ink.

Phần trung tâm điều khiển

Quá trình truyền nhận giữ liệu của hệ thống

Hình 4.2: Sơ đồ xử lý lệnh (thao tác) trong hệ thống Bluetag

Slave là thiết bị hiển thị giá kệ giao tiếp qua bluetooth

Master là máy tính nhúng Raspberry Pi, làm cầu nối giao tiếp giữa slave và người dùng, thông qua hệ thống API

Một lệnh trong hệ thống được tiến hành qua các bước:

Người dùng gọi api của lệnh tương ứng qua ứng dụng thứ 3 hoặc qua website mặc định

Với lệnh đã được gửi ở bước 1, Master thực hiện các thao tác nội bộ để lấy và sửa đổi thông tin cần thiết, hoặc chuyển tiếp lệnh cho Slave qua BLE nếu cần thiết.

Khi nhận được lệnh hợp lệ, Slave sẽ thực hiện theo định nghĩa và gửi kết quả thực hiện lại cho Master qua giao thức BLE.

Sau khi nhận được kết quả từ bước 3 hoặc thao tác xong ở bước 2, Master gửi response về cho người dùng thông qua API được gọi ở bước 1

Setup thẻ nhớ

Trước khi bắt đầu sử dụng Raspberry Pi 0 và Pi 4, bạn cần chuẩn bị một thẻ nhớ để cài đặt hệ điều hành Raspberry OS Để đảm bảo hiệu suất ổn định và nhanh chóng, nên chọn thẻ nhớ có dung lượng tối thiểu 8GB; vì vậy, chúng tôi khuyên dùng thẻ nhớ 16GB.

Sau khi download Raspberry Pi Imager (Chọn phiên bản dành cho windows) trên trang web: https://www.raspberrypi.org/software/

Tiến hành bằng việc căm thể nhớ vào đầu đọc thẻ nhớ của laptop và khởi động Raspberry Pi Imager:

Hình 4.3: Giao diện Raspberry Pi Imager

Bước 1: Click CHOOSE OS và chọn Raspberry pi OS (32-bit):

Hình 4.4: Giao diện chọn OS cho thẻ nhớ

Bước 2: Click CHOOSE SD CARD và chọn thẻ nhớ đang cắm vào máy:

Hình 4.5: Giao diện chọn thẻ nhớ

Bước 3: Click WRITE để cài đặt OS:

Sau khi cài đặt OS hoàn tất, chuyển sang Raspberry để tiếp tục cài đặt các chương trình cơ bản cần có

Set up Raspberry Pi 0 W và Pi 4

Trước khi khởi động Raspberry Pi, cần cắm thẻ nhớ đã cài đặt hệ điều hành và kết nối chuột, bàn phím vào cổng USB (3.0 hoặc 2.0) trên Pi 4 Đối với Pi 0 W, do chỉ có một cổng micro USB, nên cần sử dụng một HUB để chia một cổng micro USB thành hai cổng USB thường.

Còn cổng HDMI của từng Raspberry có kích thước khác nhau nên cũng cần phải có 1 đầu chuyển để kết nối với màn hình riêng:

Pi 0 W thì cần 1 đầu chuyển mini HDMI sang HDMI thường

Pi 4 thì cần 1 đầu chuyển micro HDMI (0 hoặc 1) sang HDMI thường

Sau đó cấp nguồn cho Raspberry để khỏi động

Cài đặt chương trình cho raspberry

Cập nhật phiên bản phần mềm mới nhất cho raspberry bằng lệnh (có kết nối Internet) sudo apt-get update sudo apt-get dist-upgrade (download xong nhấn "Y")

Cài đặt quản lý Bluetooth (Bluezman)

Sau khi cập nhật xong, cài đặt thêm phàn mềm quản lý bluetooth Bluezman: sudo apt-get install bluetooth bluez blueman sudo reboot

Về Desktop nhấp vào menu/ preferences, click vào bluetooth manager

From this step, you can connect Bluetooth with nearby devices or make your Raspberry Pi discoverable to connect with other Bluetooth-enabled devices, such as smartphones.

Sau đó đánh lệnh: sudo bluetoothctl

(đánh password cố định "raspberry")* agent on Sau đó Enter default-agent Sau đó Enter scan on Sau đó Enter pair [device Bluetooth address]

Hình 4.7: Kết nối mạng và quản lý kết nối thiết bị Bluetooth

Vị trí thực hiện cho khối nhiệm vụ LẬP TRÌNH

` Visual Studio ` Linux ` RaspberryOS ` Chrome

Khâu thiết kế Front End

`database chạy ngầm sang Mục lưu trữ có sẵn trong Chrome

Khâu lập trình Back End

Các thành phần chính của Web và Nhiệm vụ của chúng

Hình 4.8: Sơ đồ thiết kế trang web

Tất cả các trang web đều sử dụng chung một phông chữ và cỡ chữ nhất định để đảm bảo tính đồng nhất Tuy nhiên, người dùng có thể thay đổi chức năng hoặc ngoại hình của website theo khả năng và mong muốn của mình.

4.10.1 Trang Login (tham khảo code tại templates/auth/login.html)

Về mặt hình thức: bao gồm

Về mặt nhiệm vụ: Tạo ra 1 file nhiệm vụ trong Mục API , có nhiệm vụ tạo ra

Để truy cập vào hệ thống, người dùng cần có một tài khoản admin và một mật khẩu duy nhất Sau lần đăng nhập đầu tiên, nếu nhập đúng thông tin, người dùng sẽ được cấp quyền hạn của một admin Lưu ý rằng trên webserver này chỉ có một tài khoản admin duy nhất.

Tạo ra khoảng thông tin không để kiểm tra từ các dữ liệu so so API ta dùng If/If not – token - return

So sánh tên truy cập trong Database ta dùng If để so sánh với Data: sẽ xảy ra 2 trường hợp:

- Đăng nhập thất bại : - Sai tên đăng nhập

Để mở hệ thống, bạn cần truy cập vào một trang HTTP được chỉ định trong file app.py Điều này là cần thiết để chạy chương trình, đặc biệt khi sử dụng Linux trên RaspberryOS, vì có sự khác biệt về kiến thức giữa hai hệ điều hành.

4.10.2 Trang Chào (tham khảo code tại templates/dashboard)

Chào mừng… và cho biết các tác vụ mà website sẽ làm được

- 1 bảng Dashboard: o 1 tab Dashboard o 1 tab Slave o 1 tab System

4.10.3 Trang làm việc với các kết nối cũ

(tham khảo code tại templates/slave/login.html)

Về mặt hình thức: bao gồm

- 1 bảng thông tin danh sách

- 5 nút nhấn : Kết nối , Quét , Làm mới , Edit , Trạng thái , Chi tiết

Tạo một bảng giá trị thời gian thực để lưu trữ thông tin kết nối, bao gồm địa chỉ MAC, tên thay thế, giá sản phẩm, tên sản phẩm và trạng thái kết nối hiện tại.

Và sau đó ta set up 1 bảng Information để chuyển thông tin sang API Database để truyền data được điền vào

Các Data được xem là các threads ( luồng thôn tin) bao gồm

Run_time :sẽ được xem là 1 flag để truyền thông tin trên

Và sau đó nhận kết quà qua thông báo có trên web

Có 2 trạng thái Success và Failed, ngoài ra còn UnIdentified nếu mất kết nối giữa màn hình và Gateway ( đây là 1 trường hợ ngẫu nhiên không dự đoán trước được) Đây là thể hiện thứ tự truyền các threads từ Web xuống Gateway và xuống tiếp các Màn hình hiển thị

Bước 1 : Gateway dò lại địa chỉ Mac [8]

Bước 2 : Truyền luồng đầu tiên để kích hoạt BLE bên màn hình

Bước 3: Truyền lần lượt các luồng Product_name và Product_price

Bước 4 : Báo cáo trạng thái và kết quả truyền

4.10.4 Trang tìm các kết nối mới (tham khảo code tại templates/slave)

Về mặt hình thức: bao gồm

- 1 bảng thông tin sự thật

- 2 nút nhấn : Quét lại , Chi tiết

Nhiệm vụ chính là sử dụng công cụ quét tầm xa của BLE trên Gateway được cài đặt trong phần cứng nhằm tìm kiếm các địa chỉ MAC của các thiết bị không dây khác.

Sau khi quét các thiết bị thành công , lập tức danh sách các thiết bị sẽ hiện lên ngay trên trang Scan ( bán kính xa )

4.10.5 Trang Làm việc các kết nối mới (tham khảo code tại templates/slave)

Về mặt hình thức: bao gồm 2 phần :

- 3 nút nhấn : Thay đổi tên , thay đổi giá , Làm mới màn hình

- 2 nút nhấn : Lưu và Hủy kết nối

Về mặt nhiệm vụ: Tương tự như các kết nối cũ nhưng có thêm khả năng ghi nhớ - đặt tên thay thế

4.10.6 Trang đổi Password (tham khảo code tại templates/system)

Về mặt hình thức: bao gồm

- 4 dòng : Tên cũ , mật mã cũ , mật mã mới , nhập lại mã mới

- 2 nút : vào khung thay đổi và cập nhập mật mã

Về mặt nhiệm vụ: Thay đổi hoặc xóa mật khẩu đã nằm ở phần trước Login, đây cũng đòi hỏi quyền admin khi truy cập vào.

Khởi tạo và Thực hiện chương trình (Tham khảo tại Readme.md)

Bước 1: Tạo Application cho Web [9]

Bước 2: Thu thập các Nhiệm vụ mà Web sẽ phải thực hiện

Khởi động Gate Way trên Raspberry pi

Để khởi động Gate Way trên Raspberry thì cần sử dụng 3 dòng code trong terminal:

Sau khi thực hiện dòng lệnh thứ ba, đoạn mã sẽ hiển thị địa chỉ IP của Gate Way Bạn hãy nhấp chuột phải vào địa chỉ IP và chọn "Mở URL" để truy cập vào Gate Way.

THI CÔNG

Sử dụng Gate Way Bluetag

Sau khi vào được Gate Way có tên là Bluetag, trang đầu tiên hiện lên trên màn hình sẽ trang Login ( đăng nhập):

Hình 5.1: Trang Login của Gate Way

Sau khi đăng nhập thành công với tên đăng nhập và mật khẩu, Gate Way sẽ chuyển đến giao diện mới, nơi người dùng có thể quản lý hiển thị của các bảng giá đã kết nối, cập nhật tên và giá của bảng giá cũ, hoặc thêm bảng giá mới.

Hình 5.2: Giao diện trang chào

5.1.3 Trang Làm việc các kết nối cũ:

Hình 5.3: Giao diện quản lý thiết bị Trang này được nằm mục Slave ở bên trái màn hình

• Scan for new slaves: Dùng để quét thiết bị mới

• Refresh slave list: làm mới danh sách thiết bị đã kết nối

• Edit: Cập nhật tên hoặc giá cho nhiều màn hình

Trong trường hợp muốn cập nhật tên và giá của 1 màn hình, click vào Details của thiết bị muốn được cập nhật

Hình 5.4: Giao diện chi tiết của thiết bị đã kết nối Trong giao diện này có 3 thông tin có thể thay đổi hoặc cập nhật

• Product name: hiển thị tên sản phẩm

• Product price: hiển thị giá sản phẩm

• Device name: tên của bảng giá hiển thị

5.1.4 Trang làm việc với kết nối mới Để vào giao diện này bấm vào nút Scan for new slaves

Hình 5.5: Giao diện hiển thị kết nối mới

Nút Re-scan có chức năng để quét lại, làm mới danh sách thiết để thuận tiện hơn cho việc tìm kiếm kết nối mới

Khi đã chọn thiết bị mới để kết nối, bạn chỉ cần nhấn vào nút "Detail" để hiển thị thông tin chi tiết Tại mục "Add device", bạn hãy nhập tên cho thiết bị (ví dụ: "màn hình 6") và nhấn nút "Add this device" Toàn bộ quy trình này được thực hiện trên nền tảng WAP-HTML và công cụ tương ứng.

Hình 5.6: Thông tin chi tiết kết nối mới Sau đó thiết bị này sẽ được lưu lại và cho vào danh sách thiết bị đã kết nối.

Hình 5.7: Giao diện quản lý bị sau khi thêm thiết bị mới

5.1.5 Trang làm việc với nhiều thiết bị cùng 1 lúc:

Để cập nhật tên và giá cho nhiều màn hình cùng lúc, bạn chỉ cần nhấp vào nút Edit Tại đây, bạn có thể trực tiếp chỉnh sửa tên sản phẩm và giá sản phẩm ngay trên danh sách thiết bị đã kết nối, mà không cần phải truy cập vào chi tiết từng thiết bị.

Sau khi nhập tên và giá mới, nhấn vào nút Hiển thị; gateway sẽ truyền dữ liệu mới đến các màn hình cần cập nhật thông tin.

Hình 5.8: Giao diện đổi tên và giá của 2 thiết bị đã kết nối

Trang đổi mật khẩu được nằm trong mục System ở bên trái màn hình

Hình 5.9: Giao diện đổi mật khẩu

• Login name: Tên đăng nhập

• Old password: Mật khẩu cũ

• New password: Mật khẩu mới

• Re-type new password: Nhập lại mật khẩu mới.

Thao tác trang Web với màn hình E-inks

Sau khi nhập tên và giá cho sản phẩm , click vào Display product name và

Display product price, Gate Way sẽ truyền dữ liệu cho bảng giá hiển thị qua bluetooth

Hình 5.10: Hiện thị tên và giá trên màn hình E-ink

Refresh Display là tính năng cần thiết khi chữ hiển thị trên màn hình E-ink bị mờ theo thời gian, giúp làm mới màn hình và khôi phục độ rõ nét của chữ như ban đầu.

Remove this device dành cho việc xoá tên thiết bị khỏi danh sách thiết cũ

ĐÁNH GIÁ KẾT QUẢ, KẾT LUẬN

Kết quả đạt được của hệ thống

Khả năng truyền nhận của Gate way với màn hình E-ink ổn

Dữ liệu hoạt động ngoài thực tế:

Thời gian nhãn kệ thay đổi 1 – 3 giây

Số lượng kết nối cùng lúc 10+

Bảng 6.1: Số liệu ngoài thực tế

Thay vì sử dụng mã code Arduino và kết nối internet cho mỗi lần thay đổi, website này giúp tiết kiệm thời gian và chi phí kết nối internet bằng dây cáp mạng Điều này sẽ cải thiện đáng kể hiệu quả kinh tế và độ chính xác trong quản lý và bán hàng.

Lỗi mà hệ thống gặp phải

Theo kết quả quan sát được, nhóm đã nhận định lỗi mà Gate way gặp phải khi truyền dữ liệu đồng loạt cho nhiều màn hình E-ink (2 loại lỗi)

Lỗi ưu tiên xảy ra khi Gateway thiết lập kết nối với từng màn hình E-ink riêng biệt Khi có sự thay đổi hoặc cập nhật dữ liệu cho các màn hình E-ink, Gateway chỉ cho phép thiết bị kết nối đầu tiên (ở đầu danh sách) nhận dữ liệu mới, trong khi các màn hình khác không được cập nhật.

Lỗi dung lượng truyền xảy ra khi trang web nhận một lượng thông tin nhất định nhưng không thực hiện việc chia luồng và gói Điều này dẫn đến việc toàn bộ dung lượng thông tin được truyền thẳng vào màn hình ưu tiên, gây ra các vấn đề về hiển thị và hiệu suất.

46 lượng thông tin còn lại bị xem là thừa , bộ xử lí phía màn hình tự động loại bỏ khi nhận đủ thông tin của riêng nó.

Phương pháp giải quyết và khắc phục

Đối với lỗi thứ nhất:

Nhóm nhận thấy rằng việc ưu tiên thường phụ thuộc vào kiểu truyền thông tin nối tiếp Do đó, việc chuyển đổi sang kiểu truyền song hành sẽ là lựa chọn phù hợp tại Pi.

Nhóm nhận thấy rằng việc chia nhỏ lượng thông tin thành các gói sẽ giúp màn hình nhận diện chính xác gói thông tin của mình, đồng thời tránh tình trạng bị lược bỏ thông tin từ các màn hình khác.

Vì tình trạng dịch bệnh nên nhóm hiện tại vẫn chưa thể tương tác trực tiếp để sửa chữa lỗi

Hướng phát triển của đề tài

Sự phát triển nhanh chóng của công nghệ yêu cầu các doanh nghiệp phải mở rộng quy mô quản lý, không chỉ dừng lại ở việc quản lý tại một cửa hàng nhỏ trong chuỗi cửa hàng.

Sự đi lên của đồ án sẽ là một server cho cả một hệ thống :

- Điều khiển từ rất xa thông qua một trang web có miền

- Điều khiển được rất nhiều Raspberry

- Nắm giữ thông tin và sự thay đổi cấp thiết , nhanh chóng và chính xác của toàn hệ thống

- Hệ thống có thể biến hóa theo mong muốn của các công ty mà vẫn giữ được giá trị cốt lõi của đồ án

47 Hình 6.1 : Mô hình sự phát triển của đồ án (so sánh với mô hình của hình 1.5)

Ngày đăng: 17/07/2022, 12:31

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
6. Diễn đàn công nghệ thông tin: Chủ đề: Thiết kế web https://github.com/topics/website-designNgày truy cập: 10/6/2021 Link
7. Trang chủ nền tảng xây dụng web: Phần mềm - Flask https://flask.palletsprojects.com/en/2.0.x/Ngày truy cập: 12/6/2021 Link
8. Youtube : BLE DEMO ON PI – Tác giả : Tomy Vithayathil https://www.youtube.com/watch?v=RxH5nM3eP5Q\Ngày truy cập: 15/6/2021 Link
9. Diễn đàn công nghệ thông tin: Chủ đề: Sử dụng code để thiết lập nhiệm vụ cho BLEhttps://github.com/search?q=ble Ngày truy cập: 15/6/2021 Link
10. Trang chủ: Phần mềm : Bleak, Bleak Introduction. https://buildmedia.readthedocs.org/media/pdf/bleak/stable/bleak.pdf Ngày truy cập:18/6/2021 Link

HÌNH ẢNH LIÊN QUAN

Hình 1.1: Phương pháp thay đổi giá thủ công - Hệ thống bảng giá kệ sử dụng bluetooth 5.0 và màn hình E- ink (phần mềm + phần cứng ) của gateway
Hình 1.1 Phương pháp thay đổi giá thủ công (Trang 14)
Hình 1.2: Phương pháp hiển thị giá dùng LCD - Hệ thống bảng giá kệ sử dụng bluetooth 5.0 và màn hình E- ink (phần mềm + phần cứng ) của gateway
Hình 1.2 Phương pháp hiển thị giá dùng LCD (Trang 15)
1.2 Các công nghệ kết nối không dây hiện nay CÔNG - Hệ thống bảng giá kệ sử dụng bluetooth 5.0 và màn hình E- ink (phần mềm + phần cứng ) của gateway
1.2 Các công nghệ kết nối không dây hiện nay CÔNG (Trang 16)
Hình 1.3: So sánh kệ nhãn giấy và kệ nhãn điện tử - Hệ thống bảng giá kệ sử dụng bluetooth 5.0 và màn hình E- ink (phần mềm + phần cứng ) của gateway
Hình 1.3 So sánh kệ nhãn giấy và kệ nhãn điện tử (Trang 16)
Bảng 1.1: Bảng so sánh ưu nhược điểm của các công nghệ kết nối không dây - Hệ thống bảng giá kệ sử dụng bluetooth 5.0 và màn hình E- ink (phần mềm + phần cứng ) của gateway
Bảng 1.1 Bảng so sánh ưu nhược điểm của các công nghệ kết nối không dây (Trang 18)
Hình 1.4 Kệ nhãn giá sử dụng màn hình E-Ink - Hệ thống bảng giá kệ sử dụng bluetooth 5.0 và màn hình E- ink (phần mềm + phần cứng ) của gateway
Hình 1.4 Kệ nhãn giá sử dụng màn hình E-Ink (Trang 20)
Hình 2.1: RaspberryPi W (Wireless) Thông số kỹ thuật (Tham khảo ở phần phụ lục linh kiện) - Hệ thống bảng giá kệ sử dụng bluetooth 5.0 và màn hình E- ink (phần mềm + phần cứng ) của gateway
Hình 2.1 RaspberryPi W (Wireless) Thông số kỹ thuật (Tham khảo ở phần phụ lục linh kiện) (Trang 21)
Hình 2.2: RaspberryP i4 Model B Thông số kỹ thuật (Tham khảo ở phần phụ lục linh kiện) - Hệ thống bảng giá kệ sử dụng bluetooth 5.0 và màn hình E- ink (phần mềm + phần cứng ) của gateway
Hình 2.2 RaspberryP i4 Model B Thông số kỹ thuật (Tham khảo ở phần phụ lục linh kiện) (Trang 22)
Hình 2.3: Cơng nghệ Bluetooth 5.0 - Hệ thống bảng giá kệ sử dụng bluetooth 5.0 và màn hình E- ink (phần mềm + phần cứng ) của gateway
Hình 2.3 Cơng nghệ Bluetooth 5.0 (Trang 23)
Web Bảng kệ sẽ sử dụng là HTML [1,4] (.html) cho Front-End và PHP (.php) cho Back-End, cùng lúc đó sử dụng song song đó là ngơn ngữ lập trình Python [1,4] - Hệ thống bảng giá kệ sử dụng bluetooth 5.0 và màn hình E- ink (phần mềm + phần cứng ) của gateway
eb Bảng kệ sẽ sử dụng là HTML [1,4] (.html) cho Front-End và PHP (.php) cho Back-End, cùng lúc đó sử dụng song song đó là ngơn ngữ lập trình Python [1,4] (Trang 27)
Hình 3.1: Mơ hình chi tiết hệ thống thay đổi bảng giá kệ Hệ thống được chia thành 2 phần: - Hệ thống bảng giá kệ sử dụng bluetooth 5.0 và màn hình E- ink (phần mềm + phần cứng ) của gateway
Hình 3.1 Mơ hình chi tiết hệ thống thay đổi bảng giá kệ Hệ thống được chia thành 2 phần: (Trang 31)
màn hình theo yêu cầu của người dùng được kết nối với máy tính nhúng qua bluetooth 5.0 - Hệ thống bảng giá kệ sử dụng bluetooth 5.0 và màn hình E- ink (phần mềm + phần cứng ) của gateway
m àn hình theo yêu cầu của người dùng được kết nối với máy tính nhúng qua bluetooth 5.0 (Trang 32)
Là màn hình của máy tính nhúng (Có thể sử dụng nhiều loại màn hình có kết nối cổng HDMI-HDMI hoặc HDMI-DVI hoặc HDMI-VGA hay RCA Video.), có  nhiệm vụ hiển thị kết quả truyền nhận dữ liệu - Hệ thống bảng giá kệ sử dụng bluetooth 5.0 và màn hình E- ink (phần mềm + phần cứng ) của gateway
m àn hình của máy tính nhúng (Có thể sử dụng nhiều loại màn hình có kết nối cổng HDMI-HDMI hoặc HDMI-DVI hoặc HDMI-VGA hay RCA Video.), có nhiệm vụ hiển thị kết quả truyền nhận dữ liệu (Trang 33)
Hình 4.1: Mơ hình tổng quát hệ thống thay đổi bảng giá kệ - Hệ thống bảng giá kệ sử dụng bluetooth 5.0 và màn hình E- ink (phần mềm + phần cứng ) của gateway
Hình 4.1 Mơ hình tổng quát hệ thống thay đổi bảng giá kệ (Trang 35)
Hình 4.2: Sơ đồ xử lý lệnh (thao tác) trong hệ thống Bluetag - Hệ thống bảng giá kệ sử dụng bluetooth 5.0 và màn hình E- ink (phần mềm + phần cứng ) của gateway
Hình 4.2 Sơ đồ xử lý lệnh (thao tác) trong hệ thống Bluetag (Trang 36)

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w