báo cáo cá nhân hệ thống nhúng và thiết kế giao tiếp nhúng đề tài máy giao dịch khách sạn tự động

18 0 0
Tài liệu đã được kiểm tra trùng lặp
báo cáo cá nhân hệ thống nhúng và thiết kế giao tiếp nhúng đề tài máy giao dịch khách sạn tự động

Đ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

Mục tiêu và phạm viMục tiêu của đề tài là nghiên cứu mô hình hệ thống giao dịch tự động khách sạn,đặt phòng, thanh toán tự động, định danh khách hàng và tiếp nhận trả phòng tự động.Phạm

Trang 1

ĐẠI HỌC BÁCH KHOA HÀ NỘI

VIỆN ĐIỆN TỬ - VIỄN THÔNG

BÁO CÁO CÁ NHÂN

HỆ THỐNG NHÚNG VÀ THIẾTKẾ GIAO TIẾP NHÚNG

Trang 2

A Giới thiệu chung

Chương này trình bày khái quát về ý tưởng của đề tài, mục tiêu và phạm vi vànghiên cứu các phương pháp đã có để thực hiện đề tài.

1 Lý do chọn đề tài

Đề tài "Hệ thống nhúng giao dịch tự động khách sạn" là một đề tài có tiềm năngứng dụng cao trong thực tiễn Lý do chọn đề tài này là bởi ngành công nghiệp kháchsạn ngày càng phát triển mạnh mẽ, đòi hỏi phải đáp ứng nhu cầu của khách hàng ngàycàng cao Hiện nay, hầu hết các khách sạn vẫn sử dụng phương thức giao dịch truyềnthống như quầy lễ tân Phương thức này không chỉ tốn nhân lực mà còn dễ xảy ra saisót Với sự phát triển của công nghệ thông tin và trí tuệ nhân tạo, việc ứng dụng hệthống nhúng giao dịch tự động sẽ giúp tự động hóa quy trình giao dịch, giảm thiểu chiphí nhân công, nâng cao chất lượng dịch vụ, đáp ứng tốt hơn nhu cầu khách hàng Vìvậy, đề tài này có ý nghĩa quan trọng trong việc ứng dụng công nghệ thông tin vàolĩnh vực dịch vụ khách sạn.

2 Mục tiêu và phạm vi

Mục tiêu của đề tài là nghiên cứu mô hình hệ thống giao dịch tự động khách sạn,đặt phòng, thanh toán tự động, định danh khách hàng và tiếp nhận trả phòng tự động.Phạm vi nhằm nắm được cách sử dụng các công cụ lập trình, mô phỏng cũng như môhình hoá hệ thống.

3 Hệ thống giao dịch tự động khách sạn

Hệ thống giao dịch tự động khách sạn là hệ thống cho phép khách hàng tự thựchiện các thủ tục nhận phòng, trả phòng mà không cần sự hỗ trợ của nhân viên lễ tân.Khi khách hàng đến khách sạn, họ có thể quét thẻ căn cước hoặc vé máy bay để xácthực thông tin Sau đó, hệ thống sẽ tự động in vé phòng, thẻ phòng và hướng dẫnkhách hàng đến phòng mà không cần sự can thiệp của nhân viên Khi trả phòng,khách hàng chỉ cần quét mã QR trên thẻ phòng để thanh toán hoặc gửi phản hồi vềdịch vụ

Trang 3

Yêu cầu chức năng: 1 Đặt phòng2 Trả phòng3 Xác thực danh tính4 Thanh toán giao dịch

Cách hoạt động của hệ thống giao dịch tự động khách sạn:

Bước 1: Khách hàng sẽ đăng ký vào phòng thông qua màn hình cảm ứngđược lắp đặt tại quầy tiếp tân Hệ thống sẽ yêu cầu khách hàng cung cấpthông tin cá nhân cơ bản như tên, địa chỉ email, số điện thoại và quét thẻCCCD để tiến hành đăng ký.

Bước 2: Sau khi nhập đầy đủ thông tin, hệ thống sẽ tiến hành xác thựcthanh toán và cấp phòng cho khách Phương thức thanh toán được hỗ trợbao gồm thanh toán bằng thẻ tín dụng, thẻ ghi nợ hoặc mã QR (Sử dụngmáy quét thẻ cho 2 thẻ, còn QR chỉ cần hiện mã QR trên màn hình.)

Bước 3: Sau khi thanh toán thành công, hệ thống sẽ in vé phòng và mở cửaphòng khách sạn tự động Thông tin phòng sẽ được ghi nhớ trong hệ thốngđể theo dõi số lượng khách đang lưu trú (Cần có máy in)

Bước 4: Trong quá trình lưu trú, khách hàng có thể yêu cầu các dịch vụ nhưgiặt ủi, dọn phòng, đặt đồ ăn thông qua ứng dụng trên điện thoại hoặc mànhình cảm ứng trong phòng Các yêu cầu này sẽ được hệ thống xử lý và điềuphối.

Bước 5: Khi trả phòng, khách hàng chỉ cần quét vé phòng lưu trú trước đótrên màn hình cảm ứng để thanh toán Hệ thống sẽ tự động tính toán chi phívà hoàn tất thủ tục thanh toán, trả phòng

Chức năng trong đề tài của bọn em là đặt phòng, thanh toán tự động nên thiếtkế hệ thống bao gồm:

Một máy tính nhúng được thiết kế đặc biệt để chạy các ứng dụng kháchsạn (Kiosk đảm nhiệm vai trò như một lễ tân ảo)

Một màn hình cảm ứng để khách hàng có thể tương tác với hệ thống.Một máy in thẻ để in hóa đơn và xuất thẻ từ phòng.

Một máy quét mã vạch để quét mã vạch trên thẻ tín dụng hoặc thẻ ghi nợ.Khóa cửa thông minh để mở và khóa cửa phòng khách sạn.

Trang 4

Hệ thống nhận thông tin nhập từ bàn phím màn hình cảm ứng do khách hàng nhậpvào, những thông tin này sẽ được lưu vào trong cơ sở dữ liệu thời gian thực (Firebase)nếu bước quét nhận diện ảnh căn cước công dân thành công Sau đó hệ thống sẽ tiếnhành xác thực thanh toán Sau khi thanh toán thành công, hệ thống sẽ xuất thẻ từ (chìakhóa phòng) và hướng dẫn quét mã vé phòng để mở cửa phòng cho khách.

Yêu cầu phi chức năng:

Độ tin cậy: Hệ thống cần đảm bảo tính tin cậy cao trong quá trình giao dịch.Điều này đồng nghĩa với việc hệ thống phải hoạt động ổn định, không gặp lỗivà đảm bảo tính nhất quán trong các hoạt động giao dịch thanh toán, xác thựcdanh tính.

Xử lí các tình huống phát sinh chuẩn xác.

Bảo mật: Hệ thống cần đảm bảo tính bảo mật của thông tin người dùng và cáchoạt động xác thực thông tin, giao dịch thanh toán Cần sử dụng các biện phápbảo mật như mã hóa dữ liệu và xác thực để đảm bảo rằng không bị rò rỉ thôngtin cá nhân của khách hàng.

Dễ sử dụng: Giao diện người dùng cần được thiết kế sao cho dễ sử dụng vàthân thiện với người dùng Cần đảm bảo rằng các thao tác xác thực, giao dịchđược thực hiện một cách đơn giản và rõ rang.

Trang 5

Dễ dàng chỉnh sửa, bảo trì.Đảm bảo tính thời gian thực.

B.Mô hình hóa UML

1 Mô tả chức năng

Khi khách hàng đi đến Kiosk và bấm nút “Đặt Phòng”, màn hình sẽ hiển thị danh sáchcác phòng trong khách sạn với các trạng thái: Trống và Đang sử dụng Các phòng “đangsử dụng” sẽ bị disable nút (làm mờ đi) Khi khách hàng bấm vào một nút căn phòng“trống” bất kỳ, màn hình sẽ hiển thị tiếp một form đăng ký bao gồm Họ tên khách hàng,địa chỉ email, số điện thoại và nút yêu cầu quét thẻ CCCD

Sau khi nhập đầy đủ thông tin, hệ thống sẽ tiến hành xác thực thanh toán và cấpphòng cho khách Phương thức thanh toán được hỗ trợ bao gồm thanh toán bằng thẻ tíndụng, thẻ ghi nợ hoặc mã QR (Sử dụng máy quét thẻ cho 2 thẻ, còn QR chỉ cần hiện mãQR trên màn hình.)

Sau khi thanh toán thành công, hệ thống sẽ xuất thẻ từ (chìa khóa phòng) cho kháchhàng để mở cửa phòng khách sạn và bật điện trong phòng Thông tin phòng sẽ được ghinhớ trong hệ thống để theo dõi số lượng khách đang lưu trú (Cần có máy in)

Trang 6

2 Mô hình hoá hệ thống sử dụng UML

UML là viết tắt của Unified Modeling Language (dịch ra tiếng việt là “Ngôn ngữ môhình hóa thống nhất”) là một ngôn ngữ mô hình gồm các ký hiệu đồ họa mà các phươngpháp hướng đối tượng sử dụng để thiết kế các hệ thống thông tin một cách nhanh chóng

Tạo ra sự tiện lợi cho những người thiết kế và thực hiện hệ thống thông tin cũng nhưcho người sử dụng Đưa ra một cái nhìn bao quát và đầy đủ về hệ thống dự định xâydựng Điều này giúp nắm bắt trọn vẹn các yêu cầu của người dùng, phục vụ từ giai đọanphân tích đến việc thiết kế, thẩm định và kiểm tra sản phẩm.

Một số sơ đồ UML thường được sử dụng:- User case diagram (Sơ đồ trường hợp sử dụng):

Mô tả các tương tác giữa người dùng và hệ thống dưới dạng các trường hợp sửdụng.

Các đối tượng chính là người dùng và hệ thống Người dùng tương tác với hệthống thông qua các trường hợp sử dụng.

Giúp hiểu rõ hơn về yêu cầu chức năng của hệ thống.- Sequence diagram (Sơ đồ giao tiếp):

Mô tả trình tự trao đổi thông điệp giữa các đối tượng trong một trường hợp sửdụng cụ thể.

Các đối tượng được mô tả dưới dạng các đường ngang, thời gian di chuyển dọctheo trục.

Giúp hiểu rõ quá trình xử lý và tương tác giữa các đối tượng.- Activity diagram (Sơ đồ hoạt động):

Mô tả toàn bộ quy trình làm việc của hệ thống hoặc một phần của hệ thống.Các hoạt động được biểu diễn bằng các hình chữ nhật, trình tự bằng các mũitên.

Giúp phân tích và thiết kế các quy trình nghiệp vụ phức tạp của hệ thống User case Diagram

Sơ đồ usecase khi hệ thống hoạt động ổn định

Trang 7

Sơ đồ usecase khi hệ thống lỗi

Trang 9

Activity Diagram

Trang 10

Sequence Diagram

C Tìm hiểu về FSM

FSM là viết tắt của Finite state machine (máy trạng thái hữu hạn) là một mô hìnhtoàn học biểu diễn trạng thái của hệ, trong đó số trạng thái là hữu hạn Từ một trạngthái, máy có thể chuyển qua một số trạng thái khác dựa trên các sự kiện đầu vào đượcgọi là input.

Máy trạng thái thường được chia làm 2 loại:

Trang 11

§ Máy trạng thái Mealy (Mealy machine): Máy trạng thái Mealy là một máytrạng thái mà dữ liệu đầu ra được quyết định bởi trạng thái hiện tại và cácdữ liệu ngõ vào.

§ Máy trạng thái Moor (Moor machine): Máy trạng thái Moor là máy trạngthái mà dữ liệu ngõ ra được quyết định duy nhất bởi trạng thái hiện tại.

Vẽ sơ đồ FSM

Trạng thái của FSM và hành vi kết quả của máy Mealy:

Khởi động: Trạng thái ban đầu khi hệ thống khởi động.

Chờ yêu cầu khách: Hệ thống đang ở trạng thái nguyên vẹn và chờ đợi yêu cầu từ

khách hàng.

Khi chuyển từ trạng thái "Khởi động" đến "Chờ yêu cầu khách", không có đầu rakết quả (x) được sinh ra.

Nhận yêu cầu: Hệ thống đã nhận yêu cầu từ khách hàng và bắt đầu xử lý.

Khi chuyển từ trạng thái "Chờ yêu cầu khách" đến "Nhận yêu cầu", đầu ra (x) cóthể được sinh ra để gửi thông báo cho khách hàng rằng yêu cầu của họ đã được nhận.

Đặt phòng: Hệ thống thực hiện các giao dịch như đặt phòng, cung cấp thông tin

về khách sạn và các dịch vụ khác.

Xác minh thông tin: Hệ thống xác minh thông tin từ khách hàng như thông tin cá

nhân, phòng cần đặt và các yêu cầu khác.

Khi chuyển từ trạng thái " Đặt phòng" đến "Xác nhận thông tin", đầu ra (x) có

thể được sinh ra để gửi thông báo cho khách hàng về quá trình xác minh thông tin.Khi chuyển từ trạng thái "Xác minh thông tin" đến "Thanh toán", đầu ra (x) cóthể được sinh ra để gửi thông báo cho khách hàng về quá trình thanh toán tiền phòng.

Thanh toán: Hệ thống yêu cầu thanh toán từ khách hàng và xử lý quá trình thanh

Khi chuyển từ trạng thái "Xử lý giao dịch" đến "Thanh toán", đầu ra (x) có thểđược sinh ra để gửi thông báo cho khách hàng về quá trình thanh toán.

Check-in: Giao dịch đã hoàn thành thành công.

Khi chuyển từ trạng thái "Thanh toán" đến "Check-in", đầu ra (x) có thể đượcsinh ra để gửi thông báo cho khách hàng rằng giao dịch đã hoàn thành.

Nghỉ: Hệ thống kết thúc quy trình giao dịch và đổi trạng thái phòng từ “Trống”

sang “Nghỉ”:

Trang 12

Check-out: Hệ thống nhận yêu cầu muốn check-out của khách

Khi chuyển từ trạng thái "Nghỉ" đến "Check-out", đầu ra (x) có thể được sinh rađể gửi thông báo cho khách hàng rằng khách hàng đã trả phòng thành công.

Dọn phòng: Hệ thống yêu cầu nhân viên dọn phòng vào làm việcKết thúc: Hệ thống kết thúc quy trình giao dịch và trở về.

Dựa vào yêu cầu của hệ thống, ta thiết kế sơ đồ trạng thái của hệ thống bằng máytrạng thái Mealy

Bảng trạng thái

Trạng tháiĐầu vàoĐầu ra

Khởi động (Trống) 0 Chờ yêu cầu khách 0 -Chờ yêu cầu khách 1 XNhận yêu cầu 0 -Nhận yêu cầu 1 X

Trang 13

Trạng tháiĐầu vàoĐầu ra

Trang 14

D Cơ sở dữ liệu FireBase

Firebase là một nền tảng phát triển ứng dụng di động và web của Google Nó cungcấp một loạt các dịch vụ đám mây để xây dựng và triển khai ứng dụng, bao gồm cơ sởdữ liệu thời gian thực (Firebase Realtime Database).

Firebase Realtime Database là một cơ sở dữ liệu thời gian thực dựa trên JSON Nócho phép bạn lưu trữ và đồng bộ dữ liệu trong thời gian thực giữa các thiết bị khácnhau Khi dữ liệu thay đổi, các thiết bị khác có thể nhận được thông báo và cập nhậtdữ liệu một cách tự động.

Một số đặc điểm và tính năng của Firebase Realtime Database bao gồm:Đồng bộ thời gian thực: Firebase Realtime Database cho phép các thiết bị khácnhau đồng bộ dữ liệu trong thời gian thực Khi một thiết bị thay đổi dữ liệu, các thiếtbị khác có thể nhận được thông báo và cập nhật dữ liệu một cách tự động.

Cơ chế lắng nghe sự thay đổi: Bằng cách sử dụng các sự kiện lắng nghe (listeners),bạn có thể theo dõi các sự thay đổi trong cơ sở dữ liệu và phản hồi khi có sự thay đổixảy ra Điều này cho phép bạn xây dựng ứng dụng có tính tương tác cao và đáp ứngnhanh chóng.

Được xây dựng trên cơ sở dữ liệu JSON: Firebase Realtime Database sử dụng cấutrúc dữ liệu JSON linh hoạt để lưu trữ dữ liệu Điều này giúp đơn giản hóa việc truycập và xử lý dữ liệu trong ứng dụng.

Quyền truy cập dữ liệu: Bạn có thể xác định quyền truy cập dữ liệu cho ngườidùng và nhóm người dùng trong Firebase Realtime Database Điều này giúp đảm bảoan ninh và kiểm soát quyền truy cập vào dữ liệu của ứng dụng.

Hỗ trợ đa nền tảng: Firebase Realtime Database hỗ trợ đa nền tảng, cho phép bạnphát triển ứng dụng cho các nền tảng di động (Android, iOS) và web một cách dễdàng.

Firebase Realtime Database là một trong các dịch vụ quan trọng của Firebase vàđược sử dụng rộng rãi trong việc xây dựng ứng dụng di động và web có tính năngđồng bộ dữ liệu thời gian thực.

Tạo Realtime Database trên Firebase:

Trang 15

Hình 2: Giao diện Firebase trên webTạo bảng dữ liệu của căn phòng, khách hàng:

Mỗi căn phòng bao gồm các thuộc tính: Số phòng, Tình trạng sử dụng:+) Trường “roomID” (primary key) (number): Để mô tả tên của phòng, dùngđể phân loại phòng trong quá trình khách hàng lựa chọn phòng.

+) Trường “state” (boolean): Để mô tả trạng thái của phòng, 0 tức là đangtrống, 1 là đang sử dụng.

+) Trường “price” (number): Để mô tả giá căn phòng.

Trang 16

+) Trường “roomID” (foreign key) (number): Để mô tả tên của phòng kháchhàng đã chọn.

Trang 17

Hình 4: Đối tượng khách hàng

E Kiểm thử hệ thống

Xem xét đầy đủ các kịch bản có thể xảy ra của hệ thống giao dịch khách sạn tự độngchính là các test case có thể xảy ra trong thực tế hoạt động mà hệ thống có thể gặp phải:- Kịch bản 1: Hết phòng trống.

Không còn phòng trống, hệ thống gửi thông báo hiển thị lên màn hình Kiosk “Hiện tạikhông còn phòng trống, vui lòng quay lại sau!”

- Kịch bản 2: Ảnh chụp căn cước công dân không hợp lệ.

Hệ thống gửi thông báo hiển thị lên màn hình Kiosk “Ảnh chụp căn cước công dânkhông hợp lệ”

- Kịch bản 3: Người dùng không đủ tiền trong tài khoản ngân hàng Hệ thống thông báo “Tài khoản không đủ số dư, vui lòng chọn thẻ khác”.- Kịch bản 4: Thẻ ngân hàng quét không hợp lệ, hết hạn sử dụng

Hệ thống thông báo “Thẻ ngân hàng không hợp lệ” và trả về màn hình chính.- Kịch bản 5: Thông tin nhập vào không hợp lệ, ví dụ trong tên khách hàng có số, sốđiện thoại có chữ…

Hệ thống thông báo “Thông tin quý khách nhập vào không hợp lệ, vui lòng thử lại” - Kịch bản 6: Khách hàng thanh toán thành công nhưng không nhả thẻ ra

Trang 18

Hệ thống sẽ tự động đóng sau một khoảng thời gian và lưu thông tin thanh toán củakhách hàng, sẽ có nhân viên lễ tân hỗ trợ và đưa chìa dự phòng cho khách.

- Kịch bản 7: Hệ thống đang thực hiện giao dịch thì mất nguồn Hệ thống sẽ bật bộ phát điện và thực hiện nốt giao dịch

- Kịch bản 8: Hệ thống thực hiện giao dịch toàn bộ quá trình thành công

Hệ thống thông báo “Thực hiện thanh toán thành công, vui lòng lấy thẻ phòng từkhay bên cạnh Chúc quý khách sử dụng dịch vụ vui vẻ!”, trừ tiền trong tải khoản ngườidùng và xuất thẻ phòng tương ứng với khách hàng chọn ở khe nhả.

- Kịch bản 9: Khách hàng trả thẻ vào khay nhưng khay không nhận do trục trặc Hệ thống gửi thông báo kính “Mong quý khách thông cảm và liên hệ với lễ tân hỗ trợ”hoặc có thể để nguyên đó, hệ thống tự gửi thông báo hỗ trợ đến nhân viên.

- Kịch bản 10: Khách hàng trả thẻ vào khay thành công

Hệ thống thông báo “ Cảm ơn quý khách đã sử dụng dịch vụ, rất mong được nhậnphản hồi tốt từ quý khách và hẹn gặp lại!”

D Kết luận

Đã thực hiện được khảo sát đề tài cũng như lên ý tưởng bài toán, hướng giải quyết bài toán ban đầu

Thực hiện được mô hình hóa bài toán bằng UML, FSM

Thông qua đề tài em nhận được khá nhiều kiến thức cho bản thân, từ bước khảo sátbài toán đền bước thực hiện triển khai đề tài Do trong khoảng thời gian có hạn cũng nhưkiến thức, khả năng lập trình còn hạn chế,nên dề tài chúng em làm còn nhiều thiếu sót, cóthể cải tiến cà khắc phục sau này Kết hợp với đóng góp của thầy chúng em hoàn thiện đềtài hơn Em xin cảm ơn!

Ngày đăng: 18/06/2024, 17:24