Đây là hình ảnh mơ hình ngơi nhà thơng minh. Gồm có 1 phịng khách, 2 phịng ngủ, 1 bếp, 1 nhà vệ sinh. Ngơi nhà gồm có 5 đèn, 3 quạt được điều khiển bằng màn hình.
4.3 LẬP TRÌNH HỆ THỐNG 4.3.1 Lưu đồ giải thuật 4.3.1 Lưu đồ giải thuật
Trong đề tài này có các yêu cầu điều khiển như sau:
Sử dụng cảm biến vân tay để mở cửa ra vào, và cảm biến hồng ngoại để xác định có người ra vào hay khơng. Có thể thêm vân tay, xóa vân tay.
Điều khiển thiết bị qua màn hình TFT LCD TOUCH. Có thể hẹn giờ bật tắt thiết bị.
Hiển thị nhiệt độ độ ẩm và báo nếu nhiệt độ quá giới hạn. Có máy nghe nhạc để điều khiển phát nhạc.
Điều khiển thiết bị qua điên thoại thông qua Bluetooth và hiển thị nhiệt độ độ ẩm trên điện thoại
Begin
Khởi tạo port, ngắt, timer, uart
Chạm vào màn hình Chọn bảo mật Chọn điều khiển thiết bị Chọn thời gian sai Đúng Sai Sai Chương trình bảo mật Chương trình điều khiển thiết bị Chương trình thời gian Chương trình nghe nhạc Chạm tay vào cảm biến vân tay
Chương trình kiểm tra vân
tay Đúng Đúng Đúng Đúng Sai End sai Hình 4.9: Lưu đồ chương trình chính
Chương trình con bảo mật vân tay:
Đầu tiên chúng ta phải thêm vân tay chủ nhà và lưu lại. Nếu người dùng muốn sử dụng thì phải thêm vân tay vào và có xác nhận của chủ nhà. Nếu vân tay chưa được thêm vào mà vẫn mở thì sẽ báo động. Ngồi ra cịn có thể xóa vân tay của người dùng.
Chọn cài đặt vân tay chủ nhà Chọn thêm người dùng Chọn xóa tất cả người dùng Chọn thốt Kết thúc Đúng Sai Sai Sai Đúng Đúng Đúng Kiểm tra chủ nhà Bắt đầu Sử dụng lần đầu Sai
Lấy mẫu và lưu vân tay chủ nhà
Lấy mẫu và lưu vân tay của người dùng
Xóa tất cả người dùng đã lưu Đúng Sai Đúng Sai
Chương trình con điều khiển thiết bị:
Khi chạm vào điều khiển thiết bị thì chúng ta có thể điều khiển on off các thiết bị. Khi các thiết bị được điều khiển thì vi điều khiển cũng xử lý làm thay đổi các button trên web và trên điện thoại cho phù hợp với thực tế điều khiển.
Bắt đầu
Chọn thiết bị i
Mở thiết bị i
Bật thiết bị i, gửi dữ liệu qua điện thoại
và gửi lên web
Tắt thiết bị i, gửi dữ liệu qua điện thoại
và gửi lên web
Kết thúc Chọn thoát Đúng Sai Đúng Sai Đúng Sai
Chương trình hẹn giờ bật tắt thiết bị:
Chúng ta có thể chọn thời gian để điều khiển bật tắt thiết bị. Chọn thời gian giờ phút, ngày, tháng, năm, chọn thiết bị, bật hay tắt.
Bắt đầu Chọn hiển thị thời gian Chọn cài đặt thời gian Chọn hẹn giờ thiết bị Hẹn giờ bật
Hiển thị thời gian
Cài đặt giờ, phút, ngày, tháng năm Cài đặt thứ, giờ mở thiết bị Cài đặt thứ, giờ tắt thiết bị Chọn thoát Kết thúc Sai Đúng Đúng Sai Đúng Sai Đúng Sai Sai Đúng
Chương trình điều khiển máy nghe nhạc:
Khi chạm vào máy nghe nhạc thì giao diện màn hình sẽ hiển thị lên các nút. Chúng ta có thể sử dụng các nút để điều khiển chơi nhạc, qua bài kế tiếp, trở lại bài trước, tăng giảm âm lượng.
Bắt đầu Phát nhạc Nhấn qua bài kế tiếp Nhấn trở về bài trước Nhấn tăng volume Nhấn giảm volume Nhấn thoát Kết thúc
Qua bài hát tiếp
Trở về bài hát trước Tăng volume Giảm volume Đúng Đúng Đúng Đúng Sai Sai Sai Sai Sai Đúng
4.3.2 Phần mềm lập trình cho vi điều khiển
Keil C uVision 4 là một phần mềm hỗ trợ cho người dùng trong việc lập trình cho vi điều khiển các dịng khác nhau (Atmel, AVR,..). Keil C giúp người dùng soạn thảo và biên dịch chương trình C hay cả ASM thành ngơn ngữ máy để nạp vào vi điều khiển giúp chúng ta tương tác giữa vi điều khiển và người lập trình.
Hình 4.14: Logo của Keil C4 4.3.3 Phần mềm lập trình cho điện thoại, máy tính 4.3.3 Phần mềm lập trình cho điện thoại, máy tính
a. Phần mềm lập trình Android Studio
Android Studio là mơi trường phát triển tích hợp (Integrated development environment) được Google chính thức phát hành phiên bản đầu tiên Android Studio 0.1 vào tháng 5/ 2013 ( Phiên bản hiện nay là 2.1) Là cơng cụ lập trình dựa trên nền IntelliJ, cung cấp các tính năng mạnh mẽ như:
- Hỗ trợ xây dựng dự án dạng Gradle.
- Hỗ trợ sửa lỗi nhanh và tái sử dụng cấu trúc phương thức.
- Cung cấp các cơng cụ kiểm tra tính khả dụng, khả năng họat động của ứng dụng, tương thích nền tảng…
- Hỗ trợ bảo mật mã nguồn và đóng gói ứng dụng.
- Trình biên tập giao diện cung cấp tổng quan giao diện ứng dụng và các thành phần, cho phép tuỳ chỉnh trên nhiều cấu hình khác nhau.
- Cho phép tương tác với nền Google Cloud.
- Với mục tiêu tạo ra môi trường phát triển tất cả trong một, trải nghiệm nhanh và mượt hơn các IDE khác, Android Studio không ngừng ra đời các phiên bản cải tiến.
- Android Studio hỗ trợ một loạt các giả lập để xem trước ứng dụng, vì vậy ngay cả khi bạn khơng có thiết bị thử nghiệm, bạn vẫn có thể chắc chắn rằng mọi thứ đều hoạt động trơn tru. Bên cạnh đó, loạt cơng cự như lời khuyên tối ưu hóa, đồ thị doanh số bán hàng, và số liệu lấy từ phân tích sẽ giúp các nhà phát triển quản lý ứng dụng đang bán của mình và tìm ra hướng đi cụ thể với từng thiết bị Android.
b. Phần mềm lập trình Dreamweaver
Dreamweaver là một bộ sản phẩm của hãng Adobe. Dreamweaver là chương trình dùng để tạo trang web tĩnh, web động rất hay. Tạo một trang web bằng cách gõ các tag html là việc rất cực khổ. Khi dùng dreamweaver, bạn chỉ việc nhập dữ liệu và trình bày dữ liệu như bạn muốn. Dreamweaver sẽ tự động phát sinh các tag html, CSS, Javascript, PHP thích hợp. Và như vậy, công việc tạo 1 trang web đối với bạn sẽ dễ dàng hơn rất nhiều.
Hình 4.16: Logo của Dreamweaver
4.5 VIẾT TÀI LIỆU HƯỚNG DẪN SỬ DỤNG
Hướng dẫn sử dụng màn hình kit
Bước 1: cấp nguồn cho hệ thống. Màng hình hiển thị như sau.
Hình: 4.17: giao diện điều khiển
Bước 2: Cài đặt ban đầu.
Chọn bảo mật để thêm vân tay mở cửa, thay đổi vân tay đã lưu của chủ nhà, xóa tất cả vân tay đã lưu khi đó màng hình sẽ hiển thị.
Chọn thêm vân tay chủ nhà để lấy vân tay chủ nhà.
Chọn thêm vân tay để thêm vân tay người dùng sử dụng đóng mở cửa. Chọn xóa tất cả vân tay để xác lập dữ liệu lại.
Hình 4.18: Giao diện phần bảo mật
Bước 3. Chọn thời gian để cài đặt thời gian khi đó màng hình hiển thị:
Hình 4.19: Giao diện điều khiển thời gian
Chọn cài đặt thời gian để cài lại thời gian đúng với hiện tại. Khi đó hiển thị màng hình cài đặt thời gian:
Hình 4.20: Giao diện cài cài đặt thời gian
Chạm vào vị trí muốn chỉnh sửa lại để cài đặt. Nhấn BACK để trở về.
Bước 3: Sau khi cài đặt xong hệ thống. Chúng ta có đã có thể sử dụng bình thường.
nhấn vào điều khiển thiết bị khi muốn bật tắt các thiết bị.
Hình 4.21: Giao diện điều khiển thiết bị
Hoặc chọn nghe nhạc nếu muốn nghe nhạc với các phím tăng giảm âm lượng play, pause, next, previos.
Hướng dẫn sử dụng điều khiển bằng điện thoại Bước 1: Vào ứng dụng chọn bật để bật Bluethooth
Bước 2: Quét thiết bị Bluetooth cần kết nối để điều khiển
Bước 3: Kết nối Bluethooth
Bước 4: Chọn thiết bị cần điều khiển
Hướng dẫn sử dụng điều khiển thiết bị bằng web:
Bước 1: nhập vào địa chỉ IP 192.168.0.252 để vào trang web. Sử dụng tài khoản doan
và mật khẩu 1234 để đăng nhập vào hệ thống.
Hình 4.26: Giao diện điều khiển Web
Bước 2: lựa chọn tính năng:
Lựa chọn 1: chọn điều khiển thiết bị nếu muốn bật tắt các thiết bị trong gia đình
Hình 4.27: Lựa chon thiết bị điều khiển
Lựa chọn 2: để hẹn giờ thiết bị thì chúng ta nhập các giá trị vào các ô input text. Ở đó có hiển thị các số hợp lý để lựa chọn. Lưu ý: ngày chủ nhật được mặc định là 1, và giờ được nhập vào theo dạng 24h, để hẹn giờ bật thiết bị là 1, hẹn giờ tắt thiết bị là 0.
Chương 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ 5.1 KẾT QUẢ 5.1 KẾT QUẢ
Sau khi làm xong đồ án nhóm chúng em đạt được các kết quả như sau: Lập trình được các ứng dụng cơ bản trên kit STM32F103VET6. Giao tiếp được với cảm biến vân tay R305.
Giao tiếp được với cảm biến nhiệt độ độ ẩm DHT11.
Điều khiển được các thiết bị qua màn hình kit STM32F103VET6. Điều khiển được các thiết bị qua điện thoại thông qua Blutooth HC05. Điều khiển thiết bị qua internet.
Hình 5.2: Giao diện điều khiển web
Hình 5.3: Giao diện màn hình điều khiển đang chờ kết nối Bluetooth.
5.2 NHẬN XÉT VÀ ĐÁNH GIÁ
o Cảm biến vân tay chạy khá ổn định, nhưng nếu để tay lệch quá nhiều làm cảm biến không nhận dạng được.
o Cảm biến nhiệt độ độ ẩm chạy ổn định.
o Màn hình điều khiển đã hồn thành và và hiển thị được các yêu cầu.
o Giao diện Web điều khiển được các thiết bị và hẹn giờ bật tắt thiết bị. Ngồi ra cịn hạn chế ở việc không thay đổi được tài khoản đăng nhập mà chỉ sử dụng tài khoản mặc định.
o Điện thoại giao tiếp Bluetooth ổn định, nhưng cũng có lúc bị ngắt kết nối. Nhìn chung về cơ bản đồ án đã hoàn thành 90%. Các mạch chạy khá ổn định.
Chương 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 6.1 KẾT LUẬN
Trong quá trình thực hiện đề tài, tuy chưa hoàn toàn đạt được 100% so với mục tiêu như giám sát nhà qua camera, tự động điều chỉnh độ sáng phù hợp với mơi trường hiện tại. Tuy nhiên nhóm em cũng đã hồn thành được hơn 90% công việc so với mục tiêu ban đầu và hoạt động tương đối ổn định như:
- Điều khiển các thiết bị trong nhà bằng điện thoại qua bluetooth và internet.
- Giám sát được nhiệt độ trong nhà, báo cháy khi có hỏa hoạn.
- Nhận dạng vân tay để mở cửa.
- Có thể hẹn giờ bật tắt 1 số thiết bị trong nhà.
- Máy nghe nhạc mp3 để thư giản.
- Báo trộm khi đột nhập qua cửa sổ.
6.2 HƯỚNG PHÁT TRIỂN
Hướng phát triển:
Do thời gian thực hiện đề tài có giới hạn nên những gì nhóm làm được chỉ đạt được một phần của hệ thống nhà thơng minh. Trong q trình làm nhóm đã thêm được nhiều ý tưởng để đưa vào thực tế hữu dụng hơn như:
- Báo cháy gửi qua điện thoại bằng sms.
- Giám sát tồn ngơi nhà qua camera.
- Sử dụng cơng nghệ khơng dây để kết nói mới module điều khiển.
- Tự động điều chỉnh độ sáng của đèn trong nhà.
- Tự động đóng mở rèm cửa.
- Tự động tắt thiết bị khi khơng có người.
- Điều khiển thiết bị qua giọng nói.
Hy vọng các nhóm sau này làm về đề tài nhà thơng minh có thể kế thừa những cái hữu ích của nhóm em và phát triển hệ thống được hoàn thiện thêm nữa. Khắc phục những hạn chế còn gặp trong đề tài để mang đến một hệ thống nhà thơng minh đầy đủ tính năng của người Việt Nam.
TÀI LIỆU THAM KHẢO
Sách tham khảo
[1] Nguyễn Đình Phú, Giáo Trình: Thực Hành Vi Điều Khiển Arm STM32, năm 2014.
[2] Nguyễn Văn An và Hồ Thanh Hùng, “Thiết Kế và Thi Công Nhà Thông Minh Dùng Vi Điều Khiển”, Đồ Án Tốt Nghiệp ĐH, Trường ĐH Sư Phạm Kỹ Thuật Tp.HCM, 2015 [3] Phan Vân Hồn, Giáo trình STM32F103
[4], Học lập trình STM32F1 cơ bản [5] Arm.vn, Lập trình ARM STM32
[6] mcu.banlinkien.com, Giao tiếp ENC28j60 Và một số trang web khác.