Mô tả quá trình xử lí của MIT App

Một phần của tài liệu Thiết kế và thi công hệ thống điều khiển giám sát ngôi nhà (Trang 141)

Những tính năng có trên MIT App Inventor:

 Cho phép xây dựng nhanh chóng những thành phần cơ bản (components) của

một ứng dụng Android: nút bấm, nút lựa chọn, chọn ngày giờ, ảnh, văn bản, thông báo, …

 Sử dụng nhiều tính năng trên điện thoại: Chụp ảnh, quay phim, chọn ảnh, bật

video hoặc audio, thu âm, nhận diện giọng nói, chuyển lời thoại thành văn bản, dịch

 Hỗ trợ xây dựng game bằng các components: Ball, Canvas, ImageSprit

 Cảm biến: đo gia tốc (AccelerometerSensor), đọc mã vạch, tính giờ, con quay

hồi chuyển (gyroscopeSensor), xác định địa điểm (locationSensor), NFC, đo tốc độ (pedometer), đo khoảng cách xa gần với vật thể (proximitySensor).

 Kết nối: Danh bạ, email, gọi điện, chia sẻ thông qua các ứng dụng mạng xã

hội khác trên thiết bị, nhắn tin, sử dụng twitter qua API, bật ứng dụng khác, bluetooth, bật trình duyệt

 Lưu trữ: đọc hoặc lưu tệp txt, csv, sử dụng FusiontablesControl, tạo cơ sở dữ

Những nhược điểm chính của App Inventor là:

 Lập trình viên chưa thể sử dụng mọi tính năng của Android và việc này phụ

thuộc vào khi nào mở rộng mới có tính năng bạn cần có được tạo ra. Khuyết điểm này chỉ có thể khắc phục bằng cách tự xây dựng mở rộng cho App Inventor

 Vì là website với mục đích giáo dục, MIT App Inventor khơng hỗ trợ quảng

cáo. Chính vì nhược điểm này Thunkable và AppyBuilder được sinh ra.

 Giao diện chưa chuyên nghiệp

 Chuyển mã từ ngôn ngữ Drag and Drop sang Java chưa thực sự dễ dàng. Trong

các bài viết sau mình sẽ hướng dẫn thêm

 Do ứng dụng được phát triển trên server của MIT, giới hạn dung lượng của

mỗi project chỉ là 5mb.

Mặc dù có những nhược điểm như vậy, MIT App Inventor vẫn là một nền tảng mạnh mẽ giúp những ai mới bắt đầu lập trình trên Android có thể tạo ra được những ứng dụng hoàn thiện hoặc giúp nhà phát triển chuyên nghiệp nhanh chóng phác thảo lên ý tưởng của mình. Vì MIT App Inventor là mã nguồn mở, bất cứ ai cũng có thể tạo ra mở rộng tùy thuộc vào nhu cầu sử dụng dựa trên hướng dẫn chi tiết của MIT.

Để ta ̣o mô ̣t project ta vào đường dẫn https://appinventor.mit.edu/ . Sau đó cho ̣n Create Apps! Đăng nhâ ̣p với google, chấp nhâ ̣n điều khoản.

Hình 4.66: Cửa sổ làm viê ̣c của ứng dụng MIT

Hình 4.67: Thiết kế giao diê ̣n trên điê ̣n thoa ̣i

Sau khi hoàn thành giao diện, chúng ta tiến hành viết code bằng cách click vào Block ở góc trên bên phải màn hình. Lần lượt kéo thả các khối lệnh phù hợp với yêu cầu của chương trình.

Hình 4.68: Ta ̣o code bằng cách kéo thả các block

Sau khi hồn thành chương trình code tiến hành biên dịch chương trình thành file apk bằng cách chọn Build→App (provide QR code for.apk hoặc save.apk to my computer).

4.5 TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC 4.5.1 Tài liệu hướng dẫn sử dụng 4.5.1 Tài liệu hướng dẫn sử dụng

Bước 1: cấp nguồn cho hệ thống, hệ thống sử dụng nguồn là 220VAC, khi cấp

nguồn và mở cơng tắc nguồn thì đèn báo hiệu có điện sáng lên. Đợi 1 thời gian cho NodeMCU ESP8266 kết nối Wifi.

Bước 2: Muốn vào trong nhà cần có thẻ RFID. Ban đầu LCD hiê ̣n “Show your card”, ngườ i dùng đă ̣t thẻ vào đầu đo ̣c thẻ sau đó nhâ ̣p mâ ̣t khẩu gồm 4 số. Mật khẩu mặc đi ̣nh là 1234. Nếu muốn đổi mâ ̣t khẩu thì ấn “#” sau khi que ̣t thẻ. Sau đó nhâ ̣p mật khẩu cũ rồi đổi mâ ̣t khẩu mới.

Bước 2:

Để điều khiển qua App trên điê ̣n thoa ̣i thì vào App đăng nhâ ̣p với mâ ̣t khẩu mă ̣c đi ̣nh là “0000”. Cho ̣n phòng và có thể điều khiển giám sát thiết bi ̣ trong nhà.

- Để dù ng google assistant, người dùng mở Google gio ̣ng nói. Ví du ̣ để mở đèn phò ng khách thì nói “mở đèn phòng khách”. Khi Google phản hồi “ok, đã bâ ̣t đèn

- Đối vớ i Web Server thì vào đường dẫn https://doantn-072020.web.app/. Đăng nhập với Username: Admin, password: 1111. Trên trang web có các mu ̣c gồm trang chủ , giới thiê ̣u, điều khiển – giám sát, thời tiết. Để điều khiển thì người dùng vào mu ̣c điều khiển – giám sát sẽ có các nút nhấn để điều khiển. Để xem thời tiết thì vào mu ̣c thờ i tiết.

- Ngoài viê ̣c điều khiển bằ ng Internet, người dùng có thể điều khiển trực tiếp bằ ng nú t cảm ứng ở từng phòng.

4.5.2 Quy trình thao tác

a. Mở cửa mô hình

Dù ng thẻ RFID để xác nhâ ̣n sau đó nhâ ̣p mâ ̣t khẩu để mở cửa chính.

Hình 4.69: Trường hợp thẻ sai và thẻ đúng

 Nếu thẻ sai: chuông sẽ kêu và không cho phép nhâ ̣p mâ ̣t khẩu.  Nếu thẻ đúng: LCD yêu cầu nhâ ̣p mâ ̣t khẩu.

- Nhập mâ ̣t khẩu gồm 4 số. Nếu đúng thì cửa mở, nếu sai thì hê ̣ thống yêu cầu nhập la ̣i mâ ̣t khẩu. Nếu sai 3 lần thì chuông báo sẽ kêu, hê ̣ thống gửi thông báo lên internet.

Hình 4.70: Trường hợp nhập mật khẩu đúng và sai

- Nếu muốn đổi mật khẩu, nhấn “#”. Nếu nhâ ̣p mâ ̣t khẩu cũ đúng thì nhâ ̣p mâ ̣t khẩu mớ i. Nếu sai thì mâ ̣t khẩu cũ vẫn giữ.

Hình 4.72: Đổi mật khẩu thành công

b. Hiển thi ̣ thông tin ngày – giờ, thời tiết hiê ̣n tại và 3 ngày tiếp theo

Màn hình Oled sẽ hiển thi ̣ thông tin ngày giờ – thời tiết trong hê ̣ thống. Đầu tiên phải đợi hê ̣ thống kết nối wifi. Khi kết nối thành công thì Oled mới hiển thi ̣ được thông tin vì hê ̣ thống sẽ lấy những thông trên từ internet. Khi chưa kết nối được wifi Oled sẽ hiê ̣n “Connecting to Wifi”, khi có kết nối wifi NodeMCU sẽ “Updating forecasts”. Khi hồn thành kết nới sẽ hiê ̣n “Done”.

Hình 4.73: Hê ̣ thống kết nối wifi thành công

Oled sẽ hiê ̣n thi ̣ 3 khung hình. Mỗi khung hình sẽ hiển thi ̣ các thông tin khác nhau. Riêng phầ n màn hình bên dưới luôn hiển thi ̣ giờ phút ở bên trái và nhiê ̣t đô ̣ môi trường ở bên phải màn hình. Các khung hình sẽ chuyển trang mỗi 5 giây

- Khung thứ hai hiê ̣n thời tiết và nhiê ̣t đô ̣ hôm nay kèm theo biểu tượng thời tiết tương ứ ng (ví du ̣ có mưa sẽ hiê ̣n đám mây kèm mưa).

- Khung thứ ba hiê ̣n thời tiết cho ba ngày tiếp theo. Chỉ hiển thi ̣ biểu tượng và nhiệt đô ̣, không có mô tả thời tiết.

Hình 4.74: Hiển thi ̣ thời gian – thời tiết trên Oled

c. Điều khiển hê ̣ thống qua Web

Vào đường dẫn https://doantn-072020.web.app/ . Sau đó ta sẽ chuyển hướng đến trang web củ a hê ̣ thống có giao diê ̣n như sau:

Hình 4.75: Màn hình đăng nhập

Hình 4.76: Giao diê ̣n trang chủ

Trang chủ gồm tên đề tài tốt nghiê ̣p, giới thiê ̣u giáo viên hướng dẫn và sinh viên thực hiê ̣n. Trên thanh tra ̣ng thái gồm nhiều sự lựa cho ̣n là giới thiê ̣u, điều khiển – giám sát, thời tiết và đăng xuất.

Mục giới thiê ̣u: giới thiê ̣u những chức năng có trong hê ̣ thống.

Mục điều khiển – giám sát: thực hiê ̣n chức năng điều khiển thiết bi ̣ và giám sát tra ̣ng thái thiết bi ̣ trong hê ̣ thống. Để điều khiển thì ấn vào nút nhấn tương ứng trên trang web.

Mục thời tiết: hiển thi ̣ ngày giờ và thời tiết hiê ̣n ta ̣i ở khu vực. Phông nền của trang web sẽ thay đổi tùy vào thời tiết, thời điểm trong ngày. Ví du ̣ buổi sáng sẽ có mặt trời, buổi tối sẽ hiê ̣n mă ̣t trăng.

Hình 4.77: Trang giới thiê ̣u

Hình 4.79: Giao diê ̣n giám sát

Hình 4.80: Giao diê ̣n thời tiết

d. Điều khiển hê ̣ thống qua App

Hình 4.81: Giao diê ̣n đăng nhập, đổi mật khẩu và giao diê ̣n chính của app

Mật khẩu mă ̣c đi ̣nh của app là “1111”. Ta cũng có thể đổi mâ ̣t khẩu.

Khi đăng nhâ ̣p thành công, giao diê ̣n màn hình sẽ gồm các nút cho ̣n phòng khách, phòng ngủ và phòng bếp. Ngoài ra còn có nút đóng / mở cửa, nút cho ̣n chế đô ̣ điều khiển tự đô ̣ng hay bằng tay và nút tắt tất cả thiết. Tùy mu ̣c đích sử du ̣ng mà chủ nhà sẽ cho ̣n vào phòng nào để điều khiển. Giao diê ̣n từng phòng sẽ như sau:

Hình 4.82: Giao diê ̣n các phòng

Phò ng khách gồm 2 nút nhấn điều khiển đèn và qua ̣t. Bên ca ̣nh 2 nút là tra ̣ng thái hiê ̣n ta ̣i của thiết bi ̣ tương ứng. Còn la ̣i là thông số nhiê ̣t đô ̣, đô ̣ ẩm ở phòng khách, trạng thái của rèm đang đóng hay mở và tra ̣ng thái của sào phơi đồ

Phò ng bếp gồm 2 nút nhấn điều khiển đèn qua ̣t và tra ̣ng thái kiểm tra khí gas. Phò ng ngủ gồm 2 nút nhấn cho đèn và qua ̣t.

e. Điều khiển hê ̣ thống qua trợ lí ảo Google

Đầu tiên mở trợ lí ảo Google trên điê ̣n thoa ̣i. Sau đó ra lê ̣nh điều khiển bâ ̣t tắt thiết bi ̣. Các lê ̣nh dùng cho hê ̣ thống gồm:

- Bật / Tắ t đèn phòng khách - Bật / Tắ t qua ̣t phòng khách - Bật / Tắ t đèn phòng ngủ thứ nhất - Bật / Tắ t qua ̣t phòng ngủ thứ nhất - Bật / Tắ t đèn phòng ngủ thứ hai - Bật / Tắ t qua ̣t phòng ngủ thứ hai - Bật / Tắ t đèn phòng bếp

- Mở / Đóng cửa - Tắ t tấ t cả các thiết bi ̣

Chương 5. KẾT QUẢ - NHẬN XÉT - ĐÁNH GIÁ

5.1 GIỚI THIỆU

Chương này trình bày kết quả của cả quá trình nghiên cứu làm đề tài trong thời gian 15 tuần. Bên cạnh đó là nhận xét, đánh giá và đề xuất hướng phát triển của sản phẩm mơ hình để hồn thiện và có thể đi vào thực tế.

5.2 KẾT QUẢ ĐẠT ĐƯỢC

Qua quá trình thực hiê ̣n đề tài, nhóm đã vâ ̣n du ̣ng được những kiến thức ho ̣c tập được trong quá trình ho ̣c tâ ̣p và làm viê ̣c ở trường. Đồng thời thấy được đề tài có khả năng ứng du ̣ng vào thực tế cao, đúng xu hướng của thời đa ̣i.

5.2.1 Biết cá ch sử du ̣ng cảm biến

Trong đề tài sử du ̣ng những cảm biến cần thiết cho cuô ̣c sống như DHT11, cảm biến khí Gas, đô ̣ ẩm đất… Qua quá trình làm viê ̣c nhóm đã đo ̣c - hiểu được cấu tạo cũng như nguyên lí làm viê ̣c của các cảm biến để giao tiếp với vi điều khiển.

5.2.2 Biết cá ch lâ ̣p trình Arduino Mega

Arduino Mega là một trong những board mạch thông minh được sử dụng rộng rãi. Tuy nhiên, để sử dụng thành thạo và đầy đủ các chức năng của nó thì khơng phải dễ. Và đó là kết quả của quá trình nghiên cứu đề tài này mà nhóm thực hiện có được. Trong đề tài, Arduino đóng vai trò là bô ̣ điều khiển trung tâm. Nhâ ̣n dữ liê ̣u từ cảm biến, truyền nhận dữ liê ̣u qua UART với NodeMCU để làm viê ̣c với database Firebase. Điều khiển hoa ̣t đô ̣ng của toàn hê ̣ thống.

5.2.3 Biết cá ch lâ ̣p trình NodeMCU ESP8266

ESP8266 đang được sử dụng rất phổ biến trong các thiết bị giao tiếp với smartphone hay web server thông qua Wifi nhờ giá thành rẻ, module nhỏ gọn và đặc biệt dễ sử dụng. Đây là cơng cụ cải tiến q trình giám sát từ khơng dây sang có dây, giúp ta hội nhập vào cuộc sống hiện đại ngày nay. Qua q trình nghiên cứu, nhóm đã biết cách sử dụng module này để giao tiếp truyền nhận dữ liệu với web server, app android.

5.2.4 Biết cá ch lâ ̣p trình mô ̣t trang web điều khiển

Sau thờ i gian nghiên cứu, nhóm đã tìm hiểu được mô ̣t trang web được cấu ta ̣o như thế nào, những ngôn ngữ cần để hoàn thành được mô ̣t trang web và cách để đưa trang web đó lên server với tên miền của Firebase. Bằng cách lâ ̣p trình HTML, CSS, JavaScript cơ bản nhóm đã liên kết với database Firebase để lấy dữ liê ̣u và điều khiển hệ thống của đề tài.

5.2.5 Biết cá ch lâ ̣p trình App Android

Cũng như điều khiển bằ ng trang web, nhóm thông qua app MIT Inventor ta ̣o giao diện điều khiển trên điê ̣n thoa ̣i android bằng cách kéo thả cách lê ̣nh. Sau đó xuất ra file .apk để cài đă ̣t trên điê ̣n thoa ̣i. Và cũng liên kết với dữ liê ̣u của Firebase để điều khiển thiết bi ̣ của hê ̣ thống.

5.2.6 Biết cá ch điều khiển bằng gio ̣ng nói của trợ lí ảo Google

Trợ lí ảo google trên điê ̣n thoa ̣i android hiê ̣n ta ̣i đều có nên nhóm đã ứng du ̣ng nó và trong đề tài bằ ng cách kết nối với IFTTT. Chỉ cần mở GG assistant lên và ra lệnh là có thể điều kiển được thiết bi ̣ qua wifi.

5.2.7 Biết cá ch lâ ̣p trình với thẻ từ RFID

Thẻ từ hiê ̣n ta ̣i đã quá quen thuô ̣c với chúng ta vì chúng sử du ̣ng rất nhiều trong đời sống Qua quá trình thực hiê ̣n, nhóm đã hiểu được nguyên lí, cấu ta ̣o, ứng dụng thực tiễn của thẻ từ. Trong đề tài, nhóm sử du ̣ng thẻ từ để dùng trong viê ̣c mở cử a. Viê ̣c dùng thẻ từ để tăng tính bảo mâ ̣t cho viê ̣c vào được bên trong nhà của đề tài.

5.2.8 Biết cá ch truyền nhâ ̣n dữ liê ̣u giữa cách module với nhau

Qua đề tài này nhóm đã biết cách truyền nhận dữ liệu giữa các vi điều khiển vớ i nhau (arduino với NodeMCU) bằ ng chuẩn UART. Giao tiếp I2C arduino với LCD, ESP8266 vớ i Oled hay giao tiếp SPI giữa arduino với RFID…

5.2.9 Biết cá ch truyền nhâ ̣n dữ liê ̣u bằng Wifi

Qua đề tài này, nhóm đã biết giám sát – điều khiển thiết bị qua wifi và tạo lập trang web, app android, trợ lí ảo Google cho hệ thống. Cả cách điều khiển này đều được thông qua firebase để điều khiển và giám sát.

5.2.10 Biết cá ch lấy thông tin ngày giờ, thời tiết trên Internet

Dự báo thời tiết là mô ̣t điều khá hữu ích với mo ̣i người, nó giúp ta biết hôm nay thờ i tiết như thế nào để có thể lên kế hoa ̣ch mô ̣t cách hiê ̣u quả hơn. Trong đề tài, nhó m đã tìm hiểu và ho ̣c được cách lấy thông tin thời gian – thời tiết qua mô ̣t nguồn mở Openweathermap. Mã nguồn mở này cung cấp mô ̣t API gồm thông tin thời tiết củ a khu vực mình muốn. Từ đó hiển thi ̣ thông tin lên Oled trên mô hình và trên trang web củ a đề tài.

5.3 NHẬN XÉT – ĐÁNH GIÁ 5.3.1 Nhận xét 5.3.1 Nhận xét

Sau thời gian 15 tuần nghiên cứu và thực hiện đề tài, mạch cơ bản đáp ứng được yêu cầu thiết kế ban đầu. Dưới đây là một số nhận xét:

a. Ưu điểm

- Hệ thống có sự đồng bô ̣ trong viê ̣c điều khiển thiết bị bằ ng những phương pháp khác nhau: web, app, trợ lí ảo google, nút nhấn.

- Hệ thống có thể được điều khiển bất kì nơi đâu có Internet.

- Bảo mâ ̣t cửa ra vào 2 lớp (thẻ từ RFID và mâ ̣t khẩu). Có cảnh báo trộm khi nhập sai mật khẩu hay thẻ sai. Mâ ̣t khẩu cửa không bi ̣ reset khi mất nguồn

- Có các chế đô ̣ auto hay manual để sào phơi đồ hay rèm cửa có thể tự đô ̣ng đóng mở hay theo ý đi ̣nh của chủ nhà.

- Cảnh báo khi có sự cố rò gas. Tự đô ̣ng giải quyết sự cố bằng cách mở cửa thoát

Một phần của tài liệu Thiết kế và thi công hệ thống điều khiển giám sát ngôi nhà (Trang 141)

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

(160 trang)