1. Khối nguồn
2. Khối xử lý trung tâm
3. Khối gửi và nhận dữ liệu qua Bluetooth 4. Khối hiển thị
5. Khối nhận dạng vân tay điều khiển 6. Khối đo nhiệt độ độ ẩm
7. Khối điều khiển thiết bị qua internet 8. Khối máy nghe nhạc
9. Khối công xuất 10. Các thiết bị ngoại vi
Chức năng từng khối:
Khối nguồn: cung cấp nguồn cho các khối cần thiết trong mạch.
Khối xử lý trung tâm: đóng vai trị trung tâm trong việc xử lý và điều khiển các khối. Nhận dữ liệu và gửi trả dữ liệu, điều khiển các khối.
Khối gửi nhận dữ liệu qua bluetooth: có chức năng gửi và nhận dữ liệu thông qua bluetooth tới vi điều khiển.
Khối hiển thị: nhận dữ liệu từ vi điều khiển và hiển thị.
Khối nhận dang vân tay: nhận vân tay của người dùng và so sánh. Nếu đúng thì gửi lệnh cho vi điều khiển cho mở của.
Khối đo nhiệt độ độ ẩm: đo nhiệt độ độ ẩm của căn phịng sau đó gửi đến vi điều khiển, xử lí và hiển thị. Nếu nhiệt độ qua giới hạn cho phép thì báo cho người dùng biết.
Khối điều khiển thiết bị qua internet: gửi nhận dữ liệu thông qua internet đến vi xử lý để điều khiển thiết bị.
Khối máy nghe nhac: có chức năng phát nhạc
Khối cơng suất: khối này có nhiệm vụ khuếch đại điện áp để kích cho relay. Khối cơng suất với dịng thấp, đáp ứng tải tiêu tụ công suất dân dụng như bóng đèn.
Các thiết bị ngoại vi: các thiết bị mà người dùng cần điều khiển.
3.2.2 Tính tốn và thiết kế mạch
Cảm biến nhiệt độ, độ ẩm DHT11:
Để đo nhiệt độ độ ẩm của phịng thì nhóm chúng em chọn cảm biến DHT11. Cảm biến này có sử dụng nguồn 5V DC và dịng là 2.5mA.
Cảm biến vân tay R305:
Để đảm bảo an ninh cho ngôi nhà chúng em đã sử dụng cảm biến vân tay R305 để bảo mật cho cửa ra vào. Cảm biến này sử dụng nguồn 5V DC và điện áp hoạt động trong khoảng 100-150mA.
Cảm biến hồng ngoại:
Để giám sát việc có người lại gần của hay khơng chúng em sử dụng cảm biến hồng nhoại. Cảm biến này sử dụng nguồn 5V DC và nguồn
b. Khối nhận và gửi dữ liệu qua Bluetooth
Để nhận và gửi dữ liệu qua bluetooth nhóm chúng em sử dụng Module bluetooth HC05. Module này sử dụng điên áp 3.3V DC và dòng điện là 30mA.
c. Khối hiển thị
Để hiển thì và điều khiển thì chúng em sử dụng màn hình TFT LCD. Màn hình này giao tiếp theo chuẩn SPI và sử dụng nguồn 2.7-5V DC. Trong đề tài thi nhóm em sử dụng nguồn 3.3V DC và dòng điện hoạt động trong khoảng 70-120mA.
d. Khối xử lý trung tâm
Để xử lý một khối lượng cơng việc lơn thì cần phải sử dụng một vi điều khiển manh. Vì thế nhóm em chon vi điều khiển AMR STM32F103VET6. Đây là một vi điều khiển mạnh, phù hợp với yêu cầu của để tài. Vi điều khiển này hoạt động ở nguồn 3.3V DC và dòng là 150mA.
e. Khối công suất
Khối công suất dùng để điều khiển các thiết bị ngoại vi. Mà cụ thể trong đề tài này là led đơn và quạt. Sử dụng transistor C1815 để kích cho led và Tip 122 để kích cho quạt.
Led sử dụng nguồn 3.3V DC và dòng 350mA Quạt sử dụng nguồn 12V DC vad dòng 150mA
f. Khối internet
Để điều khiển thiết bị qua internet nhóm chúng em sử dụng IC ENC28J60 và cổng giao tiếp có mạch lọc RJ45 (J4) dùng chuẩn giao tiếp SPI1 của vi điều khiển ARM32F103 được tích hợp sẵn trên kit ARM STM32F103VET6. IC này hoạt động ở nguồn 3.3V DC.
g. Khối máy nghe nhạc
Kit có thiết kế chip giải mã MP3 là VS1003 dùng để giải mã âm thanh cho các chuẩn định dạng nhạc WMA, WAV, MIDI, P-MIDI, thu nhạc định dạng IMA ADPCM (âm thanh mono). Có các đường tín hiệu Microphone, hỗ trợ bộ chuyển đổi DAC cho MP3 và WAV dạng stereo chất lượng cao. Có bộ điều khiển tai nghe âm thanh stereo (30Ω) giao tiếp chuẩn SPI. Giao tiếp điều khiển MP3 dùng SPI2. Chip này sử dụng nguồn 5V DC.
h. Khối nguồn
Với những yêu cầu trên nhóm em quyết định sử dụng nguồn tổ ong chuyển đổi điện áp 220V thành 12V-10A cung cấp cho quạt. Sau đó cho nguồn 12V qua Module LM2596 để giảm áp xuống 5V-3A để cấp nguồn cho các linh kiện trong mạch. Đối với các linh kiện sử dụng điện áp 3.3V thì chúng nhóm chúng em sử dụng nguồn do kit STM32F103VET6 cấp.
3.2.3 Sơ đồ nguyên lý của tồn mạch
Hình 3.4: Sơ đồ ngun lý khối ngoại vi, reset báo nguồn, khối dao động và
Hình 3.5: Sơ đồ nguyên lý vi điều khiển ARM giao tiếp màn hình TFT
Chương 4. THI CÔNG HỆ THỐNG
4.1 THI CÔNG HỆ THỐNG
4.1.1 Thi công bo mạch.
Bảng 4.1. Danh sách các linh kiện.
4.1.2 Lắp ráp và kiểm tra
a. Lắp ráp
STT Tên linh kiện Số lượng
1 Kit ARM
STM32F103VET6
1
2 Kit Arduino Uno R3
1
3 Cảm biến vân tay R305 1 4 Cảm biến nhiệt độ, độ ẩm DHT11 1 5 Cảm biến hồng ngoại 1 6 Module Bluetooth HC05 1 7 Module giảm áp LM2596 1 8 TIP 122 3 9 Transistror C1815 5 10 Quạt 3 11 led 5 12 Các loại trở
Do khơng có thi cơng mạch PCB và dùng kít STM32F103VET6 để điều khiển các module. Vì thế chúng em sẽ lắp các module thiết bị cần điều khiển với kit.
b. Kiểm tra
4.2 ĐÓNG GÓI VÀ THI CƠNG MƠ HÌNH 4.2.1 Đóng gói bộ điều khiển 4.2.1 Đóng gói bộ điều khiển
Hình 4.3: Hình ảnh màn hình điều khiển và cảm biến vân tay đã được đóng gói 4.2.2 Thi cơng mơ hình
Hình 4.4: Mơ hình ngơi nhà
Đâ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 thoá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.