Bối cảnh và vấn đề nghiên cứu
Trong bối cảnh công nghệ số phát triển mạnh mẽ, thiết bị di động đã trở thành một phần phổ biến trong đời sống sinh hoạt và giáo dục. Cùng với xu hướng này, nhu cầu tiếp cận các phương pháp giáo dục mầm non kết hợp giải trí mang tính tương tác cao ngày càng gia tăng. Phụ huynh có xu hướng tìm kiếm các giải pháp công nghệ giúp trẻ nhỏ từ 3 đến 7 tuổi học hỏi kiến thức tự nhiên và ngôn ngữ một cách trực quan, sinh động thay vì các phương pháp truyền thống thụ động. Đề tài khóa luận "Xây dựng ứng dụng hiển thị và tương tác với con vật thực tế ảo" (tên ứng dụng: AR Preschool Education) được nhóm tác giả lựa chọn nhằm khai thác tiềm năng của công nghệ thực tế ảo tăng cường (Augmented Reality - AR) trong việc hỗ trợ trẻ em khám phá thế giới động vật và tiếp thu kiến thức đầu đời.
Theo văn bản đồ án, mục tiêu nghiên cứu và phát triển hệ thống được xác định cụ thể bao gồm:
- Mang đến trải nghiệm học tập và giải trí độc đáo, sáng tạo cho trẻ mầm non thông qua việc ứng dụng công nghệ thực tế ảo tăng cường (AR).
- Kích thích sự ham học hỏi, trí tò mò và hỗ trợ quá trình phát triển tư duy nhận thức của trẻ.
- Hỗ trợ trẻ tiếp cận các kiến thức cơ bản về chữ cái, chữ số, từ vựng và thế giới động vật một cách trực quan, dễ dàng và hiệu quả.
- Phát triển toàn diện các kỹ năng vận động tinh, nhận diện ngôn ngữ và khả năng giao tiếp của trẻ nhỏ.
- Tạo lập môi trường học tập vui nhộn, kết hợp giữa việc học và chơi lành mạnh.
Đối tượng và phạm vi nghiên cứu của đề tài:
- Đối tượng nghiên cứu: Quy trình hiển thị và tương tác với mô hình 3D trên môi trường thực tế ảo tăng cường; các nghiệp vụ hỗ trợ giáo dục mầm non (học chữ cái, số đếm, từ vựng, tập viết, nghe kể chuyện); kiến trúc tích hợp giữa nền tảng Flutter, Unity và Firebase.
- Đối tượng thụ hưởng: Trẻ em trong độ tuổi mầm non (từ 3 đến 7 tuổi) và các bậc phụ huynh, cùng với quản trị viên quản lý nội dung giáo dục.
- Phạm vi không gian và triển khai: Ứng dụng di động hoạt động trên hệ điều hành Android và iOS, cùng với trang web quản trị dành cho Quản trị viên (Admin).
- Phạm vi thời gian: Đề tài được thực hiện trong thời gian 21 tuần, bắt đầu từ ngày 12/02/2024 đến ngày 14/07/2024 tại Khoa Công nghệ Thông tin, Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh.
Cơ sở lý thuyết và phương pháp
Khóa luận xây dựng hệ thống phần mềm dựa trên các nền tảng công nghệ, công cụ chuyên dụng và phương pháp kỹ thuật phần mềm chuẩn mực:
Khung lý thuyết và công nghệ sử dụng
- Flutter Framework: Framework mã nguồn mở do Google phát triển, sử dụng ngôn ngữ lập trình Dart. Công nghệ này được chọn để phát triển giao diện người dùng đa nền tảng (Android và iOS) với một codebase duy nhất, hỗ trợ tính năng Hot Reload giúp tối ưu hóa thời gian phát triển và cung cấp hiệu năng mượt mà.
- Unity Engine & AR Foundation: Nền tảng phát triển đồ họa 3D và môi trường thực tế ảo chuyên nghiệp. Unity đảm nhận việc render mô hình 3D các loài động vật, xử lý các thao tác tương tác chạm, xoay, phóng to, thu nhỏ và tích hợp gói AR Foundation để nhận diện bề mặt phẳng thực tế qua camera thiết bị di động.
- Firebase Services: Nền tảng dịch vụ đám mây của Google cung cấp hạ tầng Backend-as-a-Service, bao gồm Firebase Authentication (xác thực người dùng), Firestore Database / Realtime Database (lưu trữ và đồng bộ dữ liệu thời gian thực), Firebase Cloud Storage (lưu trữ tệp hình ảnh, âm thanh, mô hình 3D), Push Notification và Caching.
- Dịch vụ tích hợp ngoài: Giao thức kết nối Gmail API để gửi email phục vụ tính năng quên mật khẩu và đổi mật khẩu, cùng với mô-đun tích hợp trí tuệ nhân tạo (AI) phục vụ tính năng hội thoại.
Phương pháp nghiên cứu
- Phương pháp lý thuyết và thực tiễn: Khảo sát, phân tích các ứng dụng thực tế ảo và giáo dục mầm non hiện có trên các kho ứng dụng để đúc kết ưu - nhược điểm, từ đó định hình tập tính năng phù hợp.
- Phương pháp tham khảo chuyên gia: Tham vấn ý kiến hướng dẫn chuyên môn từ TS. Lê Vĩnh Thịnh và các chuyên gia có kinh nghiệm trong lĩnh vực công nghệ phần mềm và đa phương tiện.
- Phương pháp phát triển phần mềm: Áp dụng quy trình kỹ nghệ phần mềm tuần tự: từ khảo sát hiện trạng, phân tích và mô hình hóa yêu cầu (Use Case, Sequence Diagram, Activity Diagram), thiết kế cơ sở dữ liệu và giao diện, đến lập trình tích hợp và kiểm thử phần mềm.
Khảo sát các ứng dụng tương tự
| Tên ứng dụng |
Đơn vị phát triển / Lượt tải |
Tính năng chính |
Ưu điểm |
Nhược điểm |
| AR zoo: learn with reality |
AR Studio (>10.000 lượt tải) |
Tải model, hướng dẫn đặt model, hiển thị 3D, tương tác xoay/phóng to, đọc mô tả |
Model 3D đa dạng, giao diện dễ dùng, chi phí thấp |
Thiếu thông tin phân loại sinh học; không hỗ trợ iOS |
| Animal Safari AR |
Augmented/Virtual Reality Lens & Creator (>10.000 lượt tải) |
Hướng dẫn camera, hiển thị nhiều model, xem môi trường/phân bố, tương tác cho ăn, chụp hình |
Hỗ trợ cả iOS và Android; dữ liệu sinh học chi tiết; hiển thị 3D nhanh |
Giao diện chọn model phức tạp; chi phí mua model cao |
| Bé Học Bảng Chữ Cái, Số Đếm |
Nguyễn Khắc Thoại (>500.000 lượt tải) |
Học bảng chữ cái tiếng Việt, số 1-20, sách tô màu, nhận biết con vật, xe cộ, màu sắc |
Kết hợp âm thanh, hình ảnh, cử chỉ phong phú; hỗ trợ đa nền tảng |
Ứng dụng yêu cầu người dùng trả phí để mở khóa đầy đủ |
Thiết kế và triển khai
Hệ thống được thiết kế theo kiến trúc tích hợp giữa tầng ứng dụng di động Flutter và mô-đun thực tế ảo Unity nhúng (Flutter-Unity Widget Integration), giao tiếp với nền tảng lưu trữ Firebase.
Thiết kế cơ sở dữ liệu
Cơ sở dữ liệu của ứng dụng được xây dựng trên Firestore/Firebase với 17 bảng dữ liệu và thực thể chính:
User: Lưu thông tin cá nhân của người dùng (tên, email, ngày sinh, số điện thoại, ảnh đại diện, vai trò).
UserModel: Quản lý quan hệ giữa người dùng và các mô hình 3D tương tác.
Model 3D: Lưu trữ thông tin đối tượng 3D (tên con vật, tệp tài nguyên 3D, đường dẫn tải về).
Authentication: Quản lý thông tin xác thực, token và quyền truy cập tài khoản.
Model Category: Phân loại danh mục của các mô hình động vật 3D.
Model Detail: Chứa dữ liệu mô tả chi tiết, đặc tính sinh học, môi trường sống của từng loài.
Learning Category: Quản lý các nhóm chủ đề học tập (chữ cái, chữ số, từ vựng).
Vocabulary: Lưu danh sách từ vựng, nghĩa, ví dụ minh họa và tệp âm thanh phát âm.
Questions: Lưu trữ danh sách câu hỏi trắc nghiệm, bài tập ôn tập.
Chars: Dữ liệu bảng chữ cái in hoa, in thường và chữ số từ 0 đến 9.
Score Board: Bảng ghi nhận kết quả, điểm số quá trình làm bài của trẻ.
User Question: Quản lý lịch sử trả lời câu hỏi của từng người dùng.
Writing Practice User: Lưu trữ trạng thái và lịch sử luyện tập viết nét chữ, số của người dùng.
Stories: Dữ liệu nội dung các câu chuyện kể mầm non.
User Story: Theo dõi tiến trình đọc, thời lượng nghe truyện của người dùng.
Story Topics: Danh mục chủ đề truyện kể.
Score Board / User Tracking: Dữ liệu thống kê lượt xem, yêu thích và thời gian tương tác.
Thiết kế giao diện và phân hệ người dùng
- Phân hệ Khách (Guest): Cho phép người dùng chưa đăng nhập thực hiện đăng ký tài khoản mới, đăng nhập vào hệ thống, sử dụng chức năng quên mật khẩu qua email, lưu mật khẩu và xem các điều khoản sử dụng.
- Phân hệ Khách hàng (End-user / Trẻ và Phụ huynh):
- Quản lý tài khoản cá nhân, đổi mật khẩu, đăng xuất.
- Tìm kiếm mô hình 3D, xem thông tin chi tiết (mô tả, phân loại sinh học), thêm vào danh sách yêu thích, tải mô hình về bộ nhớ cục bộ.
- Xem trực quan mô hình 3D trong không gian thực qua camera: tự động quét mặt phẳng, định vị mô hình, phóng to, thu nhỏ, xoay và tương tác với con vật; nhận cảnh báo sử dụng (quá tối, di chuyển thiết bị quá nhanh, AR không hỗ trợ).
- Khám phá danh mục học tập: nghe phát âm bảng chữ cái và số đếm; tập viết chữ/số theo nét mẫu với tùy chọn kích thước nét cọ và bảng màu; xem chi tiết từ vựng kèm hình ảnh và âm thanh.
- Chơi trò chơi rèn luyện trí nhớ: mini-game "Chọn từ qua tranh" và trò chơi "Ghép chữ thành từ".
- Đọc và nghe kể chuyện với trình điều khiển âm thanh (âm lượng, thời lượng phát, chế độ lặp lại).
- Tương tác hội thoại thông minh với AI qua tin nhắn, hình ảnh hoặc giọng nói.
- Tùy chỉnh ngôn ngữ hiển thị trong ứng dụng.
- Phân hệ Quản trị viên (Admin):
- Quản lý người dùng: Xem danh sách, thêm, chỉnh sửa thông tin, xóa tài khoản.
- Quản lý dữ liệu AR: Thêm, sửa, xóa danh mục model, thông tin model 3D và dữ liệu chi tiết model.
- Quản lý nội dung học tập: Thêm, cập nhật, xóa danh mục học tập, từ vựng, ký tự, câu hỏi trắc nghiệm.
- Quản lý truyện kể: Thêm, sửa, xóa chủ đề truyện và nội dung chi tiết các mẩu chuyện.
- Thống kê hệ thống: Báo cáo tổng lượt tải, lượt xem, lượt yêu thích model, số lượng người dùng đang hoạt động, thống kê độ tuổi và phân bổ giới tính người dùng.
Kiểm thử hệ thống
Nhóm nghiên cứu áp dụng phương pháp kiểm thử chức năng (Functional Testing) và kiểm thử giao diện (UI Testing) cho toàn bộ các ca sử dụng (Use Cases) trên cả hai nền tảng ứng dụng di động và website quản trị, đảm bảo luồng nghiệp vụ không phát sinh lỗi giao tiếp giữa Flutter, Unity và Firebase.
Nội dung chính theo từng chương
Chương 1: Tổng quan về đề tài
Chương 1 giới thiệu lý do lựa chọn đề tài xuất phát từ sự bùng nổ của thiết bị di động và nhu cầu giáo dục tương tác cho trẻ nhỏ từ 3 đến 7 tuổi. Nhóm tác giả xác định mục tiêu xây dựng ứng dụng "AR Preschool Education" kết hợp giữa học tập và giải trí, xác định công nghệ chủ đạo (Flutter, Unity, Firebase) và phác thảo phương pháp nghiên cứu, kế hoạch triển khai qua các giai đoạn kỹ thuật.
Chương 2: Cơ sở lý thuyết
Nội dung chương 2 trình bày chi tiết về các nền tảng công nghệ được lựa chọn, phân tích rõ ưu điểm, nhược điểm và lý do ứng dụng vào đồ án:
- Flutter: Được chọn nhờ khả năng phát triển đa nền tảng, hiệu suất biên dịch cao với ngôn ngữ Dart, giao diện mượt mà và tính năng Hot Reload hỗ trợ tinh chỉnh nhanh giao diện.
- Unity: Được lựa chọn nhờ khả năng xử lý đồ họa 3D chất lượng cao, hỗ trợ đa nền tảng và tích hợp tốt với các thư viện thực tế ảo tăng cường chuyên nghiệp.
- Firebase: Cung cấp giải pháp lưu trữ đám mây toàn diện, xử lý xác thực bảo mật, cơ sở dữ liệu thời gian thực và quản lý tập tin đa phương tiện giúp giảm thiểu gánh nặng xây dựng hạ tầng máy chủ riêng.
Chương 3: Phân tích và mô hình hóa yêu cầu
Chương này thực hiện khảo sát chi tiết 3 ứng dụng tương tự (AR zoo: learn with reality, Animal Safari AR, Bé Học Bảng Chữ Cái, Số Đếm), từ đó xác định danh mục yêu cầu chức năng cho 3 nhóm tác nhân (Khách, Khách hàng, Quản trị viên). Nhóm tác giả xây dựng lược đồ Use Case tổng quát, chi tiết hóa bằng 44 bảng mô tả chức năng và đặc tả Use Case, cùng các lược đồ tuần tự (Sequence Diagram) và lược đồ hoạt động (Activity Diagram) cho các luồng nghiệp vụ cốt lõi như đăng ký, đăng nhập, tải model, hiển thị AR, tập viết chữ, chơi mini-game, nghe truyện và quản lý hệ thống.
Chương 4: Thiết kế ứng dụng
Chương 4 tập trung vào hai nội dung thiết kế nền tảng:
- Thiết kế cơ sở dữ liệu: Xây dựng sơ đồ quan hệ thực thể và bảng thuộc tính chi tiết cho 17 thực thể dữ liệu từ người dùng, tài nguyên AR, dữ liệu giáo dục đến bảng điểm và lịch sử tương tác.
- Thiết kế giao diện: Xây dựng thiết kế trực quan cho hệ thống màn hình phía ứng dụng di động (trang chủ, hiển thị AR, trò chuyện AI, học chữ cái, luyện viết, nghe truyện, mini-game) và hệ thống màn hình quản trị trên web (thống kê, quản lý người dùng, model 3D, từ vựng, truyện kể, câu hỏi).
Chương 5: Kiểm thử hệ thống
Chương 5 trình bày các thông tin chung về kiểm thử hệ thống, phương pháp tiếp cận kiểm thử hộp đen (Black-box Testing) trên các giao diện và chức năng cụ thể của cả ứng dụng di động và trang web quản trị. Các ca kiểm thử bao gồm luồng tương tác AR, tính chính xác của dữ liệu học tập, các thao tác quản lý dữ liệu của Admin và khả năng phản hồi của hệ thống trong các điều kiện môi trường camera khác nhau.
Chương 6: Kết luận và hướng phát triển
Chương cuối cùng tổng kết các kết quả mà đề tài đã đạt được trong thời gian thực hiện, nêu rõ các yêu cầu về phần cứng/phần mềm để vận hành ứng dụng, đồng thời chỉ ra các hạn chế kỹ thuật hiện tại và đề xuất các hướng mở rộng, nâng cấp sản phẩm trong tương lai.
Kết quả và đóng góp
Kết quả chính đạt được
- Xây dựng thành công ứng dụng di động giáo dục mầm non hoàn chỉnh tích hợp công nghệ AR, vận hành trên nền tảng Flutter và Unity.
- Hoàn thiện mô-đun thực tế ảo cho phép hiển thị các mô hình 3D động vật sống động trong không gian thực tế, hỗ trợ các thao tác xoay, phóng to, thu nhỏ và cung cấp thông tin sinh học chi tiết kèm âm thanh.
- Xây dựng hệ thống học tập đa dạng cho trẻ 3–7 tuổi: phát âm chữ cái/số đếm, tập viết nét chữ tương tác trên màn hình cảm ứng, học từ vựng theo chủ đề, nghe truyện kể có kiểm soát phát âm và hai trò chơi ôn tập ("Chọn từ qua tranh", "Ghép chữ thành từ").
- Triển khai tính năng hội thoại thông minh cùng AI hỗ trợ đa phương thức (tin nhắn văn bản, hình ảnh và giọng nói).
- Xây dựng trang web quản trị cho phép Quản trị viên quản lý toàn diện người dùng, danh mục, mô hình 3D, truyện kể, từ vựng, câu hỏi và xem báo cáo thống kê trực quan.
Đóng góp của đề tài
- Đề xuất giải pháp kỹ thuật tích hợp hiệu quả giữa Flutter (giao diện, logic nghiệp vụ) và Unity AR Foundation (xử lý mô hình 3D thực tế ảo) trong cùng một ứng dụng di động.
- Cung cấp một phương pháp học tập kết hợp công nghệ AR trực quan hóa kiến thức sinh học và chữ cái, khắc phục nhược điểm của các ứng dụng ngoại nhập (vốn thiếu thông tin tiếng Việt hoặc đòi hỏi chi phí mua tài nguyên cao).
Hạn chế và hướng nghiên cứu tiếp
Hạn chế của đề tài
- Kích thước ứng dụng còn tương đối lớn do việc nhúng kèm công cụ đồ họa Unity và các gói tài nguyên mô hình 3D.
- Khả năng nhận diện mặt phẳng của mô-đun AR phụ thuộc vào điều kiện ánh sáng môi trường thực tế và cấu hình phần cứng của thiết bị di động (yêu cầu thiết bị hỗ trợ AR Foundation).
- Số lượng mô hình 3D và dữ liệu bài học hiện tại vẫn còn giới hạn trong phạm vi đề tài tốt nghiệp.
Hướng phát triển tiếp theo
- Tối ưu hóa dung lượng ứng dụng và quản lý bộ nhớ đệm tài nguyên 3D để tăng tốc độ tải và giảm kích thước tệp cài đặt.
- Mở rộng thêm nhiều chủ đề học tập phong phú, bổ sung thêm các loài động vật mới, chủ đề thực vật, giao thông và các trò chơi giáo dục đa dạng.
- Nâng cấp khả năng tương tác đa chiều giữa trẻ và mô hình 3D (như cho con vật ăn, mô phỏng chuyển động sinh thái tự nhiên).
- Ứng dụng các công nghệ tiên tiến mới nhằm nâng cao chất lượng trải nghiệm giáo dục và giải trí cho trẻ em.
Giá trị tham khảo
Tài liệu khóa luận tốt nghiệp này có giá trị tham khảo thiết thực cho:
- Sinh viên chuyên ngành Công nghệ thông tin và Công nghệ phần mềm: Đặc biệt là những người nghiên cứu về kỹ thuật tích hợp giữa Flutter Framework và Unity Engine, hoặc áp dụng AR Foundation trên thiết bị di động.
- Nhà phát triển ứng dụng giáo dục mầm non: Tham khảo cấu trúc phân tích yêu cầu người dùng lứa tuổi 3–7, quy trình thiết kế trò chơi rèn luyện trí nhớ và phương pháp tổ chức dữ liệu đa phương tiện (âm thanh, hình ảnh, mô hình 3D).
- Kỹ sư thiết kế hệ thống: Tham khảo mô hình thiết kế cơ sở dữ liệu 17 thực thể kết nối Firebase và sơ đồ luồng nghiệp vụ Use Case / Sequence Diagram chuẩn mực.
Câu hỏi thường gặp
1. Ứng dụng trong khóa luận sử dụng những công nghệ cốt lõi nào để xây dựng?
Ứng dụng sử dụng Flutter (ngôn ngữ Dart) cho tầng giao diện di động đa nền tảng và logic ứng dụng; Unity kết hợp AR Foundation để xử lý hiển thị và tương tác mô hình 3D thực tế ảo; Firebase (Authentication, Firestore, Storage, Realtime Database) đảm nhận vai trò backend và lưu trữ đám mây; cùng dịch vụ Gmail hỗ trợ xác thực/khôi phục mật khẩu.
2. Trẻ em có thể thực hiện những tương tác nào với mô hình 3D trong môi trường AR?
Người dùng có thể di chuyển thiết bị để camera nhận diện mặt phẳng thực tế, chạm để đặt mô hình con vật 3D lên mặt phẳng, thực hiện thao tác phóng to, thu nhỏ, xoay đổi hướng con vật, xem mô tả chi tiết và nghe phát âm thông tin sinh học của loài động vật đó.
3. Phân hệ học tập của ứng dụng bao gồm những hoạt động cụ thể nào?
Phân hệ học tập bao gồm: học phát âm bảng chữ cái in hoa/in thường và chữ số; tập viết chữ và số theo nét mẫu với tùy chỉnh cọ vẽ/màu sắc; học từ vựng theo danh mục qua hình ảnh và âm thanh; chơi 2 trò chơi rèn luyện trí nhớ ("Chọn từ qua tranh", "Ghép chữ thành từ"); đọc và nghe truyện kể với tùy chỉnh âm lượng, thời lượng và chế độ lặp lại; cùng tính năng trò chuyện với AI qua chữ, hình ảnh hoặc giọng nói.
4. Quản trị viên (Admin) có thể quản lý và theo dõi những dữ liệu gì trên hệ thống?
Quản trị viên có thể thực hiện các thao tác thêm, sửa, xóa đối với: tài khoản người dùng, mô hình 3D, danh mục model, thông tin chi tiết model, danh mục học tập, từ vựng, ký tự, câu hỏi ôn tập, chủ đề truyện và truyện kể. Đồng thời, Admin có thể xem biểu đồ thống kê về tổng lượt tải, lượt xem, lượt yêu thích, số lượng người dùng, độ tuổi và tỷ lệ giới tính nam/nữ sử dụng ứng dụng.
5. Khóa luận đã khảo sát những ứng dụng tương tự nào trước khi xây dựng sản phẩm?
Nhóm tác giả đã tiến hành khảo sát và đánh giá 3 ứng dụng: AR zoo: learn with reality (AR Studio), Animal Safari AR (Augmented/Virtual Reality Lens & Creator), và ứng dụng giáo dục Bé Học Bảng Chữ Cái, Số Đếm (Nguyễn Khắc Thoại).
Kết luận
Khóa luận tốt nghiệp "Xây dựng ứng dụng hiển thị và tương tác với con vật thực tế ảo" của sinh viên Trần Lê Minh Tiến và Nguyễn Thiện Tuyến đã hoàn thành xuất sắc mục tiêu kết hợp công nghệ thực tế ảo tăng cường (AR) vào giáo dục mầm non cho trẻ từ 3 đến 7 tuổi. Bằng việc kết hợp hiệu quả giữa Flutter, Unity, AR Foundation và Firebase, đồ án đã hiện thực hóa một hệ thống phần mềm hoàn chỉnh gồm ứng dụng di động tương tác đa tính năng và trang web quản trị nội dung chuyên sâu. Mặc dù còn hạn chế về dung lượng ứng dụng và sự phụ thuộc vào phần cứng hỗ trợ AR, đề tài đã đặt nền tảng kỹ thuật vững chắc và mở ra hướng phát triển ứng dụng giáo dục số trực quan, sinh động tại Việt Nam.