Đề tắm gương cóthé thực hiện được những tác vụ như đã nêu trên, nhóm sẽ sử dụng các phần cứngnhư sau: về phần hién thị nhóm sẽ sử dụng màn hình LCD tích hợp loa dé thông báocũng như phát
TONG QUAN 22¿:©2222222222222tE222EAErtErrkrrrrrrrrvee 3 1.1 Tổng quan về đề tài Smart Mirror ¿z++c+e++cxxe+crxee 3 1.2 _ Hệ thống gương thông minh trên thế giới và Việt Nam
Hệ thống gương thông minh trên thế giới
Gương thông minh ban đầu được lấy cảm hứng từ HomeMirror và Magic Mirror của nhà sáng lập Michale Teeuw đến từ Hà Lan vào năm 2014 Hiện nay cộng đồng phát triển hệ thống gương thông minh trên thế giới phát triển rất mạnh và cho ra rất nhiều phiên bản cũng như mã nguồn mở như: MirrorOS, Magic Mirror Builder Cùng với sự góp mặt của các công ty lớn đã cho sản xuất nhiều sản phẩm tương tự trên thị trường Tuy nhiên, xét về tính năng thì những chiếc gương thông minh nay chỉ gói gon trong một vài khuôn khổ nhất định mà chưa có sự đa dạng Hình 1.1 là một gương thông minh tiên tiến nhất hiện nay được sản xuất bởi Apple khi nó vừa có thể hiển thị giao diện đẹp mắt vừa tích hợp được các tính năng đến từ hệ điều hành iOS.
Hình 1.1: Gương thông minh cua Apple [6]
1.2.2 Hệ thống gương thông minh tai Việt Nam Ở Việt Nam, sinh viên cũng như những người nghiên cứu về lĩnh vực này hầu hết vẫn sử dụng gói vận hành tiền nhiệm vì chưa có một phiên bản hay hệ điều hành nào được công bố và sử dụng rộng rãi ở nước này Ngoài ra, các công ty lớn nhỏ khác nhau cũng đã kinh doanh và cung cấp các sản pham như HiMirror Mini, iHome Reflect, Một số resort ở các khu du lịch trong nước cũng đã tích hợp công nghệ này tại khách sạn của mình để mang đến một trải nghiệm mới lạ cho du khách Nhưng hầu hết đây cũng là những sản phẩm được nhập từ nước ngoài nên vẫn chưa có nhiều ứng dụng phủ hợp với người Việt Nam mặc dù hiệu năng cũng rat tốt Qua đó, nhóm càng có mong muốn tự phát triển một hệ thống với giao diện và các chức năng đa dạng hơn dành riêng cho người Việt.
Những mục tiêu mà nhóm muốn xây dựng Chương 2 CO SỞ LÝ THUYÉT 2¿-©22+¿+22E++z+tttEvxzrrtrrrreee 7 2.1 Tổng quan hệ thống kết nói các thiết bị phần cứng
Với các vấn đề nêu trên thì nhóm em hướng tới xây dựng một hệ thống gương thông minh với các ý tưởng ban đầu là:
- Cai tiến các module cơ bản: Magic Mirror là một nền tang mã nguồn mở đã được trang bị san một số module cơ bản như module đồng hồ, lịch, thời tiết, tin tức Tuy nhiên do được phát triển bởi các developer nước ngoài nên các module này chưa được tối ưu với người dùng Việt Vì vậy chúng em sẽ hiệu chỉnh và cải tiến các module đó, đồng thời phát triển thêm một số tinh năng m mới dé tăng tinh đa dang cho gương Cụ thé gồm có: e Cải tiến module Lịch Việt: hiển thị các sự kiện trong nước bao gồm âm lịch, dương lịch và các sự kiện quốc té phù hợp với người Việt Nam, người dùng có thé thêm những cuộc hop quan trọng từ google lịch hoặc các sự kiện riêng mà họ muốn. e_ Cải tiến module Tin tức: hiển thị tin tức từ các nguồn báo tùy chọn ở
Việt Nam, có thê điều khiển chuyền trang, lùi trang, xem chỉ tiết trang. e_ Cải tiến module Thời tiết: cải thiện, nâng cấp giao diện bắt mắt hơn. e Cải tiễn module Spotify: hién thị thông tin bài nhạc đang phát trên
Spotify. e Tích hop module Điều khiển gương: tùy chon điều khiển gương với các chức năng như Reset, Restart, Shutdown.
- _ Xây dựng database và module cài đặt cho gương: người dùng có thể trực tiếp cau hình gương thông minh thông qua giao diện menu cài đặt Cau hình sau đó được lưu trữ vào database dé dé dàng quản lý.
- Tich hợp hệ thống nhận diện khuôn mặt: xử lý ảnh đề nhận diện người dùng và đưa ra lời chào tương ứng.
- _ Tích hợp hệ thống trợ lý ảo Google Assistant (GA): e Phân tích và xử lý các câu lệnh do người dùng tự định nghĩa. e_ Điều khiến các thiết bị ngoại vi thông qua giọng nói. e Có khả năng tương tác hai chiều bằng giọng nói linh hoạt. e Đối đáp với người dùng trong nhiều ngữ cảnh khác nhau.
- Muc tiêu sau cùng mà nhóm muốn hướng đến đó là có thé hiện thực được một chiếc gương thông minh với giao diện thâm mỹ, chức năng đa dạng và tối ưu cho người dùng như tắm gương trong hình 1.2 dưới đây.
Swimming Tomorrow at 12:15 pm Round 16
Hình 1.2: Hệ thong gương thông mình tham khảo [6]
Chương 2 CƠ SỞ LY THUYET
2.1 Tổng quan hệ thống kết nối các thiết bị phần cứng
Hình 2.1: Mô hình tổng quan hệ thống
Hình 2.1 mô tả sơ đồ tổng quan hệ thống Gương thông minh sẽ sử dụng một máy tính nhúng (raspberry pi, nvidia jetson, ) làm trung tâm xử lý hệ thống.
Các thiết bị thu phát tín hiệu (Cảm biến, camera, mic thu âm) sẽ được kết nối với vi xử lý thông qua các công GPIO và các công USB cơ bản giúp người dùng tương tac voi gương.
Khi nhận được dữ liệu về âm thanh hay các tin hiệu điều khiển từ phía người dùng thi máy tính nhúng sẽ xử lý và vận hành các thiết bị ngoại vi tương ứng như đèn led, các module, Đồng thời máy tính nhúng sẽ kết nối với một màn hình LCD dé hiển thị các thông tin cần thiết đến người dùng thông qua công HDMI.
Tổng quan về kết nối các phần mềm trong hệ thống
2.2.1 Tổng quan về một module [7]
Câu trúc của một module
Tất cả các module phải được đặt trong thư mục modules.
Ngoài những module default có sẵn trong folder modules/default thì những modules mới tạo cũng nên được đặt trong folder modules.
Những module khác nhau không được đặt tên giống nhau.
Các file cin có trong một module modulename/modulename.js: đây là file cốt lõi của module. modulename/modulename.js: đây là file dùng dé xử lý, giao tiếp với phía backend.
Các bước để tạo ra một module
Tao thư mục với tên là tên module (Ví du: MMM-LUUPHUC).
Tao file js với tên là tên module (E.g: MMM-LUUPHUC Js).
Tao một file node_ helper.Js.
Tao những file bên ngoài và gọi nó trong modules.
Import data files (.png, mp3, ).
Cac function co ban: sendNotification(notification, payload). notificationReceived(notification, payload, sender).
> Gui va nhận đữ liệu giữa các modules khác nhau. sendSocketNotification(notification, payload). socketNotificationReceived: function(notification, payload).
> Dùng giao tiếp với phía Backend, giao tiếp giữa User Interface
NodeJs với Backend thuần của hệ thống: GPIO, process, getScripts(): import thư viện ( giống include trong C/C++). getDom(): dé tạo giao điện với các thẻ HTML, CSS. updateDom(speed): cập nhật giao diện. getTranslations(): return file ngôn ngữ (.Js). getStyles(): return file giao diện (.css). getHeader(): title của modules.
2.2.2 Giao tiếp giữa các module trong gương thông minh
` z " Backend \ i Or este (GPIO, Protocols :
H : ‘ h yourModule js }