1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Thiết kế mạch kiểm soát và điều khiển thiết bị điện dân dụng qua internet sử dụng arduino

87 197 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 87
Dung lượng 2,28 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

TRƯỜNG ĐẠI HỌC NHA TRANG Khoa : Điện – Điện Tử PHIẾU THEO DÕI TIẾN ĐỘ VÀ ĐÁNH GIÁ ĐỀ TÀI TỐT NGHIỆP Dùng cho CBHD và nộp cùng báo cáo ĐA/KLTN của sinh viên Tên đề tài: Thiết kế mạch ki

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC NHA TRANG

KHOA ĐIỆN-ĐIỆN TỬ

- -

ĐỒ ÁN TỐT NGHIỆP

Đề tài:

THIẾT KẾ MẠCH KIỂM SOÁT VÀ ĐIỀU KHIỂN THIẾT BỊ ĐIỆN

DÂN DỤNG QUA INTERNET SỬ DỤNG ARDUINO

Giảng viên hướng dẫn: Th.S Nguyễn Thanh Tuấn

Sinh viên thực hiện: Đặng Triều Thần

Mã số sinh viên: 56130727 Lớp: 56DDT

Nha Trang, Ngày 18 tháng 7 năm 2018



Trang 2

Giảng viên hướng dẫn: Th.S Nguyễn Thanh Tuấn Sinh viên thực hiện: Đặng Triều Thần

Mã số sinh viên: 56130727 Lớp: 56DDT

Nha Trang, Ngày 18 tháng 7 năm 2018



Trang 3

TRƯỜNG ĐẠI HỌC NHA TRANG

Khoa : Điện – Điện Tử

PHIẾU THEO DÕI TIẾN ĐỘ VÀ ĐÁNH GIÁ ĐỀ TÀI TỐT NGHIỆP

(Dùng cho CBHD và nộp cùng báo cáo ĐA/KLTN của sinh viên) Tên đề tài: Thiết kế mạch kiểm soát và điều khiển thiết bị điện dân dụng qua internet

sử dụng arduino

Giảng viên hướng dẫn : Nguyễn Thanh Tuấn

Sinh viên thực hiện : Đặng Triều Thần MSSV : 56130727

Khóa : 56 Ngành : Công nghệ kĩ thuật Điện – Điện tử

Lần KT Ngày Nội dung Nhận xét của GVHD

Kiểm tra giữa tiến độ của trưởng BM

Ngày Kiểm tra : Đánh giá công việc hoàn thành:……% Ký tên

Được tiếp tục Không tiếp tục ………

Điểm h nh th c:……/10 Điểm nội dung: /10 Điểm tổng kết:………/10

Đồng ý cho sinh viên: Được bảo vệ:  Không được bảo vệ: 

Khánh Hòa,ngày… Tháng… Năm…

Cán bộ hướng dẫn

(Ký và ghi rõ họ tên)

Trang 4

TRƯỜNG ĐẠI HỌC NHA TRANG

Khoa/Viện: Điện – Điện tử

PHIẾU CHẤM ĐIỂM ĐỒ ÁN TỐT NGHIỆP (Dành cho cán bộ chấm phản biện)

1 Họ tên người chấm:………

2 Sinh viên thực hiện ĐA:Đặng Triều Thần MSSV: 56130727 3 Tên đề t i: Thiết kế mạch kiểm soát và điều khiển thiết bị điện dân dụng qua internet sử dụng arduino 4 Nhận xét - H nh th c:

- Nội dung:

………

……….………

……….………

……….………

……….………

……….……

………

Điểm h nh th c:…… /10 Điểm nội dung: /10 Điểm tổng kết:………/10

Đồng ý cho sinh viên: Được bảo vệ:  Không được bảo vệ:  Khánh Hòa, ngày…….tháng………năm………

Cán bộ chấm phản biện

(Ký và ghi rõ họ tên)

Trang 5

TRƯỜNG ĐẠI HỌC NHA TRANG

Khoa/Viện: Điện – Điện tử

PHIẾU CHẤM CỦA HỘI ĐỒNG BẢO VỆ ĐA/KLTN (Dùng cho thành viên Hội đồng bảo vệ ĐA/KLTN)

1 Họ tên thành viên HĐ: Chủ tịch:  Thư ký:  Ủy viên: 

2 Tên đề tài : Thiết kế mạch kiểm soát và điều khiển thiết bị điện dân dụng qua internet sử dụng arduino

3 Họ tên sinh viên thực hiện: Đặng Triều Thần MSSV: 56130727

4 Phần đánh giá và cho điểm của thành viên hội đồng (theo thang điểm 10) a) H nh th c, ố cục bài báo cáo (sạch, đẹp, cân đối giữa các phần) : b) Nội dung bản báo cáo (thể hiện mục tiêu, kết quả,…) :……… c) Tr nh ày (đầy đủ, ngắn gọn, lưu loát, không quá thời gian…) :……… d) Trả lời các câu hỏi của người chấm (đúng/sai) :……… đ) Trả lời các câu hỏi của thành viên hội đồng (đúng/sai) :……… e) Thái độ, cách ng xử, m c độ tự tin :………

h) Nắm vững những vấn đề liên quan đề tài :……… i) Tính sáng tạo khoa học của sinh viên :………

Tổng :……… Điểm trung bình của các cột điểm trên:……./10 (làm tròn đến 1 số lẻ)

Cán bộ chấm điểm

(Ký và ghi rõ họ tên)

Trang 6

LỜI CẢM ƠN

Đồ án môn học tốt nghiệp nhằm củng cố và bổ sung lại những kiến thức về chuyên ngành điện – điện tử và các môn học khác có liên quan mà em đã được học trong khoảng thời gian ngồi trên giảng đường đại học Đồ án tốt nghiệp này đã giúp cho em biết vận dụng, khai thác sâu hơn vào lý thuyết Qua đó giúp cho em biết được khả năng xử lý tình huống trong thiết kế, đã củng cố vững hơn về kiến thức chuyên ngành

và kỹ năng làm việc nhóm sao cho đạt hiệu quả cao, là một kỹ năng rất cần thiết cho một kỹ sư sau khi ra trường

Để hoàn thành đồ án này, em đã nhận được rất nhiều sự giúp đỡ, hỗ trợ từ thầy cô, gia đình và bạn bè

Mặc dù em cũng đã cố gắng hết sức mình, nhưng trong một khoảng thời gian cho phép, cũng như hạn chế về mặt kiến thức của bản thân, nên đồ án không thể tránh khỏi nhiều thiếu sót Chính vì vậy, em rất mong nhận được sự góp ý của quý thầy, cô cũng như của bạn bè để có thể củng cố kiến thức của mình trước khi ra trường

Trước tiên chúng em xin chân thành gửi đến toàn thể quý thầy cô trong khoa lời cảm ơn chân thành nhất Những năm tháng trên giảng đường Đại học Thầy, Cô đã truyền đạt những kiến thức và kinh nghiệm quý báu, đó là hành trang vô giá mà chúng

em luôn mang bên mình trên con đường lập nghiệp

Em xin bày tỏ lòng biết ơn chân thành đến thầy Nguyễn Thanh Tuấn, người đã hướng dẫn, chỉ bảo tận tình và tạo mọi điều kiện thuận lợi để em hoàn thành tốt đồ án

Em xin cảm ơn gia đình, bạn bè những người luôn ủng hộ, động viên, tạo điều kiện thuận lợi, giúp đỡ cho em trong học tập cũng như trong cuộc sống

Trường ĐH Nha Trang, thang 05/2018

i h vi th c hi ề t i ĐẶNG TRIỀU THẦN

Trang 7

LỜI CAM KẾT

- Tên đề tài : Thiết kế mạch kiểm soát và điều khiển thiết bị điện dân dụng qua internet sử dụng arduino

- GVHD : Th.S Nguyễn Thanh Tuấn

- Họ tên sinh viên : Đặng Triều Thần

- Mã số sinh viên : 56130727

- Địa chỉ sinh viên : KTX K5/413 – Đại Học Nha Trang – Khánh Hòa

- Số điện thoại liên lạc: 01655220686

- Email : than.dt.56ddt@ntu.edu.vn

- Ngày nộp khóa luận tốt nghiệp :

- Lời cam kết :”Tôi xin cam đoan khóa luận tốt nghiệp này là công trình do chính tôi nghiên c u và thực hiện Tôi không sao chép từ bất kì một bài viết nào đã đƣợc công bố mà không trích dẫn nguồn gốc, nếu có bất kì một sự vi phạm nào tôi xin chịu hoàn toàn trách nhiệm”

Nha Trang, Ngày ……Tháng ……Năm 2018

Ký tên

Trang 8

TÓM TẮT ĐỒ ÁN

Đề tài:

THIẾT KẾ MẠCH KIỂM SOÁT VÀ ĐIỀU KHIỂN THIẾT BỊ ĐIỆN DÂN

DỤNG QUA INTERNET SỬ DỤNG ARDUINO

Trong cuộc sống công nghiệp hóa hiện đại hóa, việc điều khiển các thiết bị điện

dân dụng trong gia đ nh một cách tối ưu nhất, điều khiển bằng điện thoại, laptop hoặc

bất kì một thiết bị thông minh có thể kết nối vào internet Chính vì nhu cầu này tác giả

đã lựa chọn đề tài “Thiết kế mạch kiểm soát và điều khiển thiết bị điện dân dụng qua

internet sử dụng arduino”.Qua đề tài tác giả đã tìm hiểu về công nghệ kết nối không

dây Wifi, kit thu phát Wifi ESP8266 nodeMCU, Arduino UNO và thiết kế thành công

mạch điều khiển và kiểm soát trạng thái của các thiết bị thông qua công nghệ kết nối

không dây wifi điều khiển bằng phần mềm Android được tác giả lập trình và thiết kế

trên app inventor, giao diện thân thiện với người dùng, dễ dàng tiếp cận và sử dụng

Ngoài việc điều khiển trên phần mềm Android tác giả có thể điều khiển trực tiếp bằng

cách truy cập vào cơ sở dữ liệu trung gian kết nối giữa thiết bị Android và sản phẩm

một cách dễ dàng Sản phẩm điều khiển được 8 kênh hoạt động riêng biệt với nhau,

thiết bị điện 1 pha điều khiển bằng cách nối trực tiếp vào mạch điều khiển, có thể điều

khiển thiết bị điện 3pha bằng cách điều khiển thông qua công tắc tơ Ch c năng hẹn

giờ điều khiển thiết bị hoạt động dựa trên thời gian thực được cập nhật tự động, cài đặt

thời gian một lần phù hợp để thể hẹn giờ cho các thiết bị có tính tuần hoàn ngày qua

ngày như ơm nước tưới cây vào mỗi buổi chiều

Tác giả đã thiết kế và xây dựng mô h nh điều khiển, qua nhiều lần kiểm tra

mạch hoạt động ổn định áp dụng phù hợp cho hộ gia đ nh vừa và nhỏ

Trang 9

MỤC LỤC

PHIẾU THEO DÕI TIẾN ĐỘ VÀ ĐÁNH GIÁ ĐỀ TÀI TỐT NGHIỆP ii

PHIẾU CHẤM ĐIỂM ĐỒ ÁN TỐT NGHIỆP iii

PHIẾU CHẤM CỦA HỘI ĐỒNG BẢO VỆ ĐA/KLTN iv

LỜI CẢM ƠN v

LỜI CAM KẾT vi

TÓM TẮT ĐỒ ÁN vii

MỤC LỤC viii

DANH MỤC HÌNH ẢNH x

LỜI NÓI ĐẦU xii

1.1 Lý do chọn đề tài 1

1.2 Mục đích của đề tài 1

1.3 Đối tượng nghiên c u 1

1.4 Phương pháp nghiên c u 2

Chương 2: TÌM HIỂU THIẾT BỊ GIAO TIẾP NGOẠI VI 3

2.1 Tìm hiểu về công nghệ không dây wifi 3

2.1.1 Khái niệm 3

2.1.2 Lịch sử phát triển và một số chuẩn kết nối wifi phổ biến 3

2.1.3 Đặc điểm của công nghệ 5

2.1.4 Nguyên lý hoạt động 6

2.1.5 Các vấn đề bảo mật trong công nghệ wifi 7

2.2 Tìm hiểu về kit RF thu phát wifi ESP8266 nodeMCU 7

2.2.1 Giới thiệu 7

2.2.2 Đặc điểm kĩ thuật 8

2.2.3 Sơ đồ chân và ch c năng 9

2.3 Giới thiệu về KIT mạch Arduino 9

2.3.1 Giới thiệu về Arduino 9

2.3.2 Giới thiệu về phần mềm lập trình Arduino IDE 14

2.3.3 Cập nhật thư viện để lập trình cho NodeMCU ESP8266 trên Arduino 16

Chương 3: THIẾT KẾ HỆ THỐNG 19

Trang 10

3.3 Giải thuật trên Arduino 22

3.4 Giải thuật trên ESP8266 23

3.5 Tạo cơ sở dữ liệu Firebase 24

3.5.1 Giới thiệu về Firebase 24

3.5.2 Tạo cơ sở dữ liệu Firebase 25

3.6 Thiết kế giao diện phần mềm Android 27

3.6.1 Giới thiều về App Inventor(AI2) 27

3.6.2 Tạo project mới trên App Inventor 27

3.6.3 Tạo giao diện cho phần mềm Android 29

3.6.4 Chương tr nh phần mềm Android 31

3.6.5 Xuất chương tr nh ra file apk cài đặt vào điện thoại 38

3.7 Tổng quan về linh kiện sử dụng trong mạch 40

3.7.1 Module giảm áp LM2596 40

3.7.2 Điện trở 41

3.7.3 Led 42

3.7.4 Relay 42

3.7.5 IC ULN2803 43

3.7.6 Nút nhấn 43

3.8 Thi công mạch 44

CHƯƠNG 4: MÔ HÌNH THỰC NGHIỆM ĐÁNH GIÁ KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 46

4.1 Mô hình thực nghiệm và đánh giá hệ thống 46

4.2 Kết luận 47

4.3 Đề xuất hướng phát triển 48

TÀI LIỆU THAM KHẢO 49

PHỤ LỤC CODE 50

Chương tr nh Arduino 50

Chương tr nh ESP8266 52

Trang 11

DANH MỤC HÌNH ẢNH

Hình 2.1 : Thiết bị điện tử kết nối với nhau thông qua wifi 3

Hình2.2 : Lịch sử phát triển của công nghệ wifi 5

H nh2.3 : Sơ đồ nguyên lý hoạt động của wifi 6

H nh2.4 : Các phương pháp ảo mật 7

Hình2.5 : NodeMCU ESP8266 8

Hình2.6 : Sơ đồ chân NodeMCU esp8266 9

Hình 2.8 : Thông số kĩ thuật của Arduino 10

Hình 2.9: ATMEGA4328-PU 11

Hình 2.10: Các chân năng lượng 11

Hình 2.11: Các cổng vào/ ra 12

Hình 2.12: Jack nguồn 13

Hình 2.13: Cổng USB 14

Hình 2.14:Giao diện chính Arduino IDE 14

Hình 2.15: Arduino Toolbar 14

Hình 2.16: IDE Menu 14

Hình 2.17: Ch c năng IDE Menu 15

Hình 2.18: Cổng kết nối khi gắn board 16

Hình 2.19: Cập nhật thư viện cho esp8266 16

Hình 2.20 :Chọn Boards để cài thư viện 17

Hình 2.21 : Tiến hành cài đặt thư viện 17

Hình 2.22 : Chọn oard để lập trình cho ESP8266 18

H nh 3.1 : Sơ đồ khối hệ thống 19

H nh 3.2 : Sơ đồ nguyên lý hệ thống 21

Hình 3.3 : Giải thuật trên Arduino 22

Hình 3.4 : Giải thuật trên ESP8266 23

H nh 3.5 : Đăng nhập để tạo cơ sở dữ liệu Firebase 25

Hình 3.6 : Bảng điều khiển 25

Hình 3.7 : Tạo project mới để lưu trữ dữ liệu 26

Hinh 3.8 : Chọn hệ điều hành 26

Trang 12

Hình 3.10 : Biểu tượng phần mềm App Inventor (AI2 ) 27

H nh 3.11 : Đăng nhập để tạo App 28

Hình 3.12 : Liên kết AI2 với tài khoảng Gmail 28

H nh 3.13 : Danh sách các project đã tạo 28

H nh 3.14 : Lưu tên cho project 29

Hình 3.15 : Lấy biểu tượng để kết nối với Fire ase đã tạo 29

Hình 3.16: Cửa sổ thuộc tính của Firebase 30

Hình 3.17 : Xuất file apk cài đặt trên điện thoại 38

H nh 3.18 : Mã code cài đặt 39

Hình 3.19 : Giao diện phần mềm MIT AI2 39

Hình 3.20 : Giao diện chính của phần mềm 40

Hình 3.21 : Module giảm áp LM2596 41

H nh 3.22 : Đầu vào/ ra của module LM2596 41

H nh 3.23: Điện trở và kí hiệu 41

Hình 3.24: LED 42

H nh 3.25: Rơle 42

Hình 3.26 : IC ULN2803 43

Hình 3.27 : Nút nhấn 44

Hình 3.28 : Mạch in 44

Hình 3.29 : Mạch thực tế 45

Hình 4.1: Mô hình hoạt động 46

Hình 4.2:Giao diện hoạt động trên Android 46

Trang 13

LỜI NÓI ĐẦU

Ngày nay, thông qua những ng dụng của khoa học kỹ thuật tiên tiến, thế giới của chúng ta đã và đang ngày một thay đổi, văn minh và hiện đại hơn rất nhiều Sự phát triển của kỹ thuật điện tử đã tạo ra hàng loạt thiết bị ngày càng thông minh, tiện dụng, hiệu quả và thân thiện với môi trường người d ng

Là một nước đang phát triển, vấn đề ng dụng khoa học công nghệ trong thời k công nghiệp hóa, hiện đại hóa như hiện nay lại trở thành một yêu cầu cấp ách và cần thiết hơn ao giờ hết Chính v vậy, trong những năm qua, nước ta đã chú trọng đầu tư rất nhiều đến các ngành công nghệ cao, đặc biệt là trong lĩnh vực điện tử, tự động hóa

Và thực tế hơn, một trong những ng dụng đó chính là việc tạo ra được những mạch điện tử thông minh, có tính ng dụng cao, đồng thời kết hợp với việc điều khiển trực tiếp trên board mạch c ng như gián tiếp thông qua giao diện được lập trình và cài đặt trên smartphone Điều này không chỉ mang lại nhiều lợi ích thiết thực hiện thời, mà còn góp phần không nhỏ cho việc hiện thực hóa những ý tưởng lớn hơn V vậy mà em

đã quyết định chọn đề tài “Thiết kế mạch kiểm soát và điều khiển thiết bị điện dân dụng qua internet sử dụng arduino”

Tuy đã cố gắng thực hiện đồ án trong sự nghiêm túc và trách nhiệm nhất, nhưng

do điều kiện về kiến th c c ng như khả năng nghiên c u còn hạn chế nên không thể tránh khỏi những sai phạm và thiếu sót Rất mong nhận được những ý kiến đóng góp tích cực từ Thầy Cô và các ạn

Trang 14

Chương 1: GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI

1.1 Lý do chọn đề tài

Hiện nay, xã hội phát triển mạnh mẽ, kỹ thuật ngày càng hiện đại nên nhu cầu

về trao đổi thông tin giải trí, nhu cầu về điều khiển các thiết bị từ xa,…ngày càng cao

Và những hệ thống dây cáp ph c tạp lại không thể đáp ng nhu cầu này, nhất là ở những khu vực chật hẹp, những nơi xa xôi, trên các phương tiện vận chuyển,… V vậy công nghệ không dây đã ra đời và phát triển mạnh mẽ, tạo rất nhiều thuận lợi cho con người trong đời sống hằng ngày

Trong những năm gần đây công nghệ truyền nhận dữ liệu không dây đang có những ước phát triển mạnh mẽ, góp công lớn trong việc phát triển các hệ thống điều khiển, giám sát từ xa, đặc biệt là các hệ thống thông minh Hiện nay, có nhiều công nghệ truyền nhận dữ liệu không dây như RF, Wifi, Bluetooth, NFC,…Trong đó, wifi

là một trong những công nghệ được phát triển từ lâu và luôn được cải tiến để nâng cao tốc độ c ng như khả năng ảo mật

Trên thị trường Việt Nam hiện nay chưa có nhiều sản phẩm điều khiển thiết bị không dây, đa số những sản phẩm hiện có đều là nhập khẩu từ nước ngoài với giá thành cao Việc nghiên c u và thiết kế một bộ sản phẩm điều khiển thiết bị không dây

có một ý nghĩa lớn, giúp tăng thêm sự lựa chọn cho người sử dụng, sản phẩm được sản xuất trong nước nên giá thành rẻ và góp phần phát triển các hệ thống điều khiển thông minh

Do đó, em quyết định thực hiện đề tài: “Thiết kế mạch kiểm soát và điều khiển thiết bị điện dân qua internet sử dụng arduino” Đề tài này ng dụng công nghệ kết

nối không dây wifi phổ biến trên nhiều thiết bị

1.2 Mục đích của đề tài

Thiết kế chế tạo thành công mạch điều khiển và kiểm soát các thiết bị điện trong nhà sử dụng kết nối wifi

1.3 Đối tượng nghiên cứu

Sau khi tìm hiểu thông tin về đề tài, cùng với những hiểu biết sẵn có và tìm kiếm thông tin liên quan, chúng em xác định các đối tượng cần nghiên c u là:

Trang 15

Vi điều khiển sử dụng là ATMEGA328P-PU

NodeMCU esp8266 : các thông số kỹ thuật, nguyên lý hoạt động của module, kết nối với vi điều khiển là Arduino và được điều khiển qua app để điều khiển các thiết

bị điện dân dụng hằng ngày

1.4 Phương pháp nghiên cứu

- Nghiên c u lý thuyết liên quan

- Tham khảo tài liệu: các đề tài liên quan, tìm kiếm thông tin trên Internet

- Tự tiến hành thiết kế ,thi hành mô phỏng trên máy tính

- Viết chương tr nh điều khiển và thực hiện nạp thực nghiệm trên phần

c ng

- Xây dựng mô hình thực nghiệm kiểm ch ng

Trang 16

Chương 2: TÌM HIỂU THIẾT BỊ GIAO TIẾP NGOẠI VI

2.1 Tìm hiểu về công nghệ không dây wifi

Hình 2.1: Thiết bị i n tử kết nối với nhau thông qua wifi

Kết nối WiFi được sử dụng trong việc kết nối Internet và chia sẻ kết nối đến các

thiết bị không dây nhanh nhất WiFi hiện tại đang sử dụng chuẩn kết nối IEEE 802.11

chủ yếu hoạt động trên ăng tầng 54Mbps và có tín hiệu mạnh nhất trong khoảng 100 feed gần 31m , được cài đặt hầu hết trên các thiết bị điện tử thông minh với ngày càng nhiều các ng dụng được phát triển dựa trên chuẩn kết nối này

2.1.2 Lịch sử phát triển và một số chuẩn kết nối wifi phổ biến

Một số chuẩn kết nối wifi phổ biến:

Chuẩn 802.11:

- IEEE 802.11 là một tập các thuần của tổ ch c IEEE (Institute of Electrical and Electronics Engineers) bao gồm các đặc điểm kĩ thuật liên quan đến hệ thống mạng không dây.Chuẩn IEEE 802.11 mô tả một giao tiếp tuyền qua không khí sử dụng sóng vô tuyến để truyền nhận tín hiệu

Trang 17

giữa một thiết bị không dây với tổng đài hoặc điểm truy cập hoặc giữa 2 hay nhiều thiết bị với nhau

- Năm 1997 IEEE giới thiệu chuẩn mạng không dây đầu tiên và đặt tên nó

là 802.11 với tốc độ tối đa 2M ps và ăng tần 2.4 Ghz

Chuẩn 802.11b : Tần số 2.4 GHz, tốc độ xử lý 11 Mbps

Chuẩn 802.11a : Tần số 5 GHz, tốc độ xử lý 54 Mbps

5 Ghz nên tránh bị nhiễu từ các thiết bị khác.Tuy nhiên phạm vi sẽ hẹp hơn (40m-100m) và khó xuyên qua các vật cản như tường.Chuẩn này được sử dụng nhiều trong doanh nghiệp vì giá thành khá cao

Chuẩn 802.11g : Tần số 2.4 GHz, tốc độ xử lý 54 Mbps

- Nhược điểm: Đắt hơn 802.11 và có thể bị nhiễu từ các thiết bị cùng ăng tần

Chuẩn 802.11n : Tần số 2.4 GHz, tốc độ xử lý 300 Mbps(phạm vi 100m –

250m)

với người tiêu dùng.Tốc độ nhanh phạm vi tín hiệu tốt, khả năng chịu đựng tốt hơn từ việc xuyên nhiễu các thiết bị bên ngoài

thể bị nhiễu bởi 802.11g ở gần

Wifi Hotspot: Đây là tính năng mà thiết bị của bạn có thể phát Wifi cho các

thiết bị điện thoạt, laptop, máy tính bảng khác.Nói cách khác tính năng này iến thiết bị của bạn thành một Modem Wifi

Sự khác nhau giữa 2.4 MHz và 5 GHz:

Về cơ ản, tần số thấp hơn sẽ truyền đi xa hơn, do đó chuẩn Wifi tần số 2.4GHz

sẽ được truyền đến các thiết bị có khoảng cách xa hơn, tuy nhiên về tốc độ truyền tải sẽ không bằng tần số 5GHz Người dùng sẽ tùy theo nhu cầu sử dụng

để lựa chọn cho mình chuẩn kết nối phù hợp

Trang 18

Lịch sử phát triển:

Hình 2.2: Lịch sử phát triển của công ngh wifi

2.1.3 Đặc điểm của công nghệ

– Tiện lợi: Mạng cho phép người dùng truy xuất tài nguyên mạng ở bất kỳ địa điểm nào trong khu vực được triển khai Đặc biệt với lượng người sử dụng laptop và các thiết bị di động ngày càng tăng như hiện nay th đó rõ ràng là một điểm cộng lớn

Trang 19

– Khả năng mở rộng: Có thể dễ dàng mở rộng gia tăng số người dùng mà không phải tăng thêm ộ chia và cáp mất thời gian

2.1.4 Nguyên lý hoạt động

Mạng Internet sẽ được các ISP (nhà cung cấp dịch vụ Internet - Internet Services Provider) truyền đến bộ giải mã tín hiệu số (Modem), thông qua bộ định tuyến (Router) hay chúng ta hay gọi là “ ộ phát wifi” chuyển tín hiệu hữu tuyến thành kết nối vô tuyến và đưa đến các thiết bị di động không dây thông qua chuẩn kết nối WiFi

Các thiết bị không dây tiếp nhận sóng WiFi thông qua một thiết bị chuyển đổi tín hiệu gọi là Adapter (card Wifi) được cài đặt trực tiếp trên các thiết bị Tín hiệu vô tuyến sẽ được giải mã ngay trên thiết bị, từ đây người dùng có thể trực tiếp truy cập Internet như nh thường

Hình 2.3 ơ ồ nguyên lý hoạt ộng của wifi

Trang 20

2.1.5 Các vấn đề bảo mật trong công nghệ wifi

WiFi là một chuẩn kết nối phổ biến, việc hiểu rõ hơn về Wifi sẽ giúp các bạn tiếp cận nhiều hơn đến những ng dụng sử dụng chuẩn kết nối này Các bạn c ng có thể tự đổi mật khẩu wifi ở nhà hay cơ quan với những nguyên tắc bảo mật ph c tạp hơn để đảm bảo an toàn cho hệ thống mạng m nh đang sử dụng nhé, với mỗi một

tránh thiết lập sai đường truyền

2.2 Tìm hiểu về kit RF thu phát wifi ESP8266 nodeMCU

2.2.1 Giới thiệu [4]

Kít ESP8266 là kít phát triển dựa trên nền chíp Wifi SoC ESP8266 với thiết kế

dễ dàng sửa dụng vì tích hợp sẵn mạch nạp sử dụng chíp CP2102 trên borad Bên trong ESP8266 có sẵn một lõi vi sử lý vì thế bạn có thể trực tiếp lập trình cho ESP8266 mà không cần thêm bất kì con vi sử lý nào nữa Hiện tại có hai ngôn ngữ có thể lập trình cho ESP8266, sử dụng trực tiếp phần mềm IDE của Arduino để lập trình với bộ thư viện riêng hoặc sử dụng phần mềm node MCU

Trang 21

Hình 2.5: NodeMCU ESP8266

2.2.2 Đặc điểm kĩ thuật

- IC chính: ESP8266 Wifi SoC

- Phiên ản firmware: NodeMCU Lua

- Chip nạp và giao tiếp UART: CP2102

- GPIO tương thích hoàn toàn với firmware Node MCU

- Cấp nguồn: 5VDC MicroUSB hoặc Vin

- GIPO giao tiếp m c 3.3VDC

- Tích hợp Led áo trạng thái, nút Reset, Flash

- Tương thích hoàn toàn với tr nh iên dịch Arduino

- Kích thước: 25 x 50 mm

Trang 22

2.2.3 Sơ đồ chân và chức năng

Hình 2.6 ơ ồ chân NodeMCU esp8266

Các chân tín hiệu là GPI0X, các chân này vừa có thể làm chân analog vừa có thể làm chân digital

2.3 Giới thiệu về KIT mạch Arduino

2.3.1 Giới thiệu về Arduino

Hình 2.7: Module Arduino

Trang 23

Thông số kỹ thuật của Arduino: [2]

Vi điều khiển ATmega328 họ 8 bit

Điện áp hoạt động 5V DC (chỉ đƣợc cấp qua cổng USB)

Điện áp vào khuyên dùng 7-12V DC

Điện áp vào giới hạn 6-20V DC

Số chân Digital I/O 14 (6 chân hardware PWM)

Số chân Analog 6 (độ phân giải 10 it)

Dòng tối đa trên mỗi chân I/O 30 mA

Hình 2.8: Thông số kĩ thuật của Arduino

Ch c năng của từng bộ phận của Arduino [1]

Trang 24

Hình 2.9: ATMEGA4328-PU

Arduino UNO có thể sử dụng 3 vi điều khiển họ 8 bit AVR là ATmega8, ATmega168, ATmega328 Vi điều khiển này có thể xử lí những tác vụ đơn giản như điều khiển đèn LED nhấp nháy, xử lí tín hiệu cho xe điều khiển từ xa, làm một trạm đo nhiệt độ - độ ẩm và hiển thị lên màn hình LCD

Thiết kế tiêu chuẩn của Arduino UNO sử dụng vi điều khiển cung cấp cho người d ng:

32KB bộ nhớ Flash: những đoạn lệnh lập trình sẽ được lưu trữ trong bộ nhớ Flash của vi điều khiển Thường thì sẽ có khoảng vài KB trong số này sẽ được dùng cho bootloader

2KB cho SRAM (Static Random Access Memory): giá trị các biến khai báo khi

lập trình sẽ lưu ở đây Khai áo càng nhiều biến thì càng cần nhiều bộ nhớ RAM

EEPROM (Electrically Eraseble Programmable Read Only Memory): đây

giống như một chiếc ổ c ng mini – nơi có thể đọc và ghi dữ liệu của mình vào đây mà không phải lo bị mất khi cúp điện giống như dữ liệu trên SRAM

Các chân năng lượng:

Hình 2.10 Các châ ă g lượng

Trang 25

GND (Ground): cực âm của nguồn điện cấp cho Arduino UNO Khi dùng các

thiết bị sử dụng những nguồn điện riêng biệt thì những chân này phải được nối với nhau

5V: cấp điện áp 5V đầu ra Dòng tối đa cho phép ở chân này là 500mA

3.3V: cấp điện áp 3.3V đầu ra Dòng tối đa cho phép ở chân này là 50mA

Vin (Voltage Input): để cấp nguồn ngoài cho Arduino UNO, khi nối cực dương của nguồn với chân này và cực âm của nguồn với chân GND

IOREF: điện áp hoạt động của vi điều khiển trên Arduino UNO có thể được đo

ở chân này Và dĩ nhiên nó luôn là 5V Mặc dù vậy không được lấy nguồn 5V từ chân này để sử dụng bởi ch c năng của nó không phải là cấp nguồn

RESET: việc nhấn nút Reset trên oard để reset vi điều khiển tương đương với việc chân RESET được nối với GND qua 1 điện trở 10KΩ

Các cổng vào/ ra:

Hình 2.11: Các cổng vào/ ra

Arduino UNO có 14 chân digital d ng để đọc hoặc xuất tín hiệu Chúng chỉ có 2

m c điện áp là 0V và 5V với dòng vào/ra tối đa trên mỗi chân là 40mA Ở mỗi chân đều có các điện trở pull-up từ được cài đặt ngay trong vi điều khiển ATmega328 (mặc định th các điện trở này không được kết nối).Có các ch c năng đặc, một số chân digital biệt như sau:

Chân Serial: 0 (RX) và 1 (TX): d ng để gửi (transmit – TX) và nhận (receive –

RX) dữ liệu TTL Serial Arduino Uno có thể giao tiếp với thiết bị khác thông qua 2 chân này Kết nối luetooth thường thấy nói nôm na chính là kết nối Serial không dây Nếu không cần giao tiếp Serial, bạn không nên sử dụng 2 chân này nếu không cần thiết

Chân PWM (~): 3, 5, 6, 9, 10, và 11: cho phép bạn xuất ra xung PWM với độ

phân giải 8bit (giá trị từ 0 → 28-1 tương ng với 0V → 5V) ằng hàm analogWrite()

Trang 26

Nói một cách đơn giản, bạn có thể điều chỉnh được điện áp ra ở chân này từ m c 0V đến 5V thay vì chỉ cố định ở m c 0V và 5V như những chân khác

Chân giao tiếp SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) Ngoài các

ch c năng thông thường, 4 chân này còn d ng để truyền phát dữ liệu bằng giao th c SPI với các thiết bị khác

LED 13: trên Arduino UNO có 1 đèn led màu cam (kí hiệu chữ L) Khi bấm nút

Reset, bạn sẽ thấy đèn này nhấp nháy để báo hiệu Nó được nối với chân số 13 Khi chân này được người dùng sử dụng, LED sẽ sáng

Arduino UNO có 6 chân analog (A0 → A5) cung cấp độ phân giải tín hiệu 10bit (0 → 210-1) để đọc giá trị điện áp trong khoảng 0V → 5V Với chân AREF trên board,

bạn có thể để đưa vào điện áp tham chiếu khi sử dụng các chân analog T c là nếu bạn cấp điện áp 2.5V vào chân này thì bạn có thể d ng các chân analog để đo điện áp trong khoảng từ 0V → 2.5V với độ phân giải vẫn là 10bit

Đặc biệt, Arduino UNO có 2 chân A4 (SDA) và A5 (SCL) hỗ trợ giao tiếp I2C/TWI với các thiết bị khác

Jack nguồn: để chạy Arduino thì có thể lấy nguồn từ cổng USB ở trên máy tính

nhưng nếu không có thì ta có thể dùng nguồn này khoảng 9v đến 12v

Hình 2.12: Jack nguồn

Cổng USB : đây là cổng giao tiếp để ta upload code từ PC lên vi điểu khiển

Đồng thời nó c ng là giao tiếp serial để truyền dữ liệu giữa vi điểu khiển với máy tính Đây c ng là nguồn cấp cho Arduino

Trang 27

Hình 2.13: Cổng USB

2.3.2 Giới thiệu về phần mềm lập trình Arduino IDE

Arduino IDE là nơi để soạn thảo code, kiểm tra lỗi và upload code cho Arduino

Trang 28

Bao gồm các nút lệnh menu (File, Edit, Sketch, Tools, Help) Phía dưới là các icon cho phép sử dụng nhanh các ch c năng thường dùng của IDE được miêu tả như sau:

Hình 2.17: Chức ă g IDE Me u

2.3.2.3 Vùng viết chương trình

Bạn sẽ viết các đoạn mã của mình tại đây Tên chương tr nh của bạn được hiển

thị ngay dưới dãy các Icon, ở đây nó tên là “Blink” Để ý rằng phía sau tên chương trình có một dấu “§” Điều đó có nghĩa là đoạn chương tr nh của bạn chưa được lưu

lại

2.3.2.4 Vùng thông báo (debung)

Những thông báo từ IDE sẽ được hiển thị tại đây Để ý rằng góc dưới cùng bên phải hiển thị loại board Arduino và cổng COM được sử dụng Luôn chú ý tới mục này bởi nếu chọn sai loại board hoặc cổng COM, bạn sẽ không thể upload được code của mình

2.3.2.5 Một số lưu ý

Khi lập trình, các bạn cần chọn port (cổng kết nối khi gắn board vào) và board (tên board mà bạn sử dụng) Giả sử, bạn đang d ng mạch Arduino Uno, và khi gắn board này vào máy tính bằng cáp USB nó được nhận là COM4 thì bạn chỉnh như thế này là có thể lập tr nh được

Trang 29

Hình 2.18: Cổng kết nối khi gắn board

2.3.3 Cập nhật thư viện để lập trình cho NodeMCU ESP8266 trên Arduino

Để tiến hành cài đặt thư viện và ch c năng nạp code cho IDE làm như sau:

2.3.3.1 Cập nhật thư viện

Vào File→ Preferences, vào textbox Additional Board Manager URLs thêm

đường link sau vào :

http://arduino.esp8266.com/stable/package_esp8266com_index.json

Click OK để chấp nhận

Trang 30

Tiếp theo vào Tool→Board→Boards Manager

Hình 2.20: Chọ Boards ể c i thư vi n

đợi một lát để chương tr nh t m kiếm Ta kéo xuống và click vào ESP8266 by

ESP8266 Community, click vào Install Chờ phần mềm tự động download và cài đặt

Hình 2.21: Tiế h h c i ặt thư vi n

2.3.3.2 Chọn board để lập trình cho ESP8266

Kết nối mudule USB-to-UART vào máy tính Vào Tool→Board→NodeMCU

1.0(ESP – 12E module), chọn cổng COM tương ng với module USB-to-UART

tương ng

Trang 31

Hình 2.22: Chọ board ể lập trình cho ESP8266

Trang 32

Chương 3: THIẾT KẾ HỆ THỐNG

3.1 Sơ đồ khối hệ thống

Hình 3.1 ơ ồ khối h thống

3.2 Sơ đồ nguyên lý của hệ thống

Nguyên lý hoạt động của hệ thống:

- Đầu tiên, khởi động phần mềm Android "Điều khiển thiết bị" Đảm bảo điện thoại đã kết nối wifi và vào được internet, phần mềm sẽ tự động kết nối với cơ sở

dữ liệu Firebase (vì khi viết chương tr nh đã cài đặt và kết nối sẵn với cơ sở dữ liệu

Firebase) và cập nhật trạng thái thiết bị vào màn h nh điều khiển

Trang 33

- Phần mềm gồm 8 nút nhấn để bật tắt 8 thiết bị điện gia dụng trong nhà

và khu vực d ng để nhập thời gian hẹn giờ bật tắt thiết bị.Ngoài ra còn có 8 nút nhấn

để điều khiển bằng tay phòng trường hợp điện thoạt gặp sự cố

- Khi mở (tắt) thiết bị bằng phần mềm Android: Khi nhấn vào một button

thì phần mềm android sẽ gửi gói tin ch a lệnh mở (tắt) thiết bị tương ng(thiết bị đang

mở sẽ gửi gói tin tắt và ngược lại) thông qua internet lưu trữ tại cơ sở dữ liệu Firebase đồng thời button vừa nhấn sẽ chuyển trạng thái cho biết thiết bị đang mở (tắt) Lúc này Module ESP8266 sẽ kiểm tra, nhận gói tin và truyền về module Arduino để đưa tín hiệu ra đóng các Opto cấp điện cho các Relay đóng (mở)

- Khi mở (tắt) thiết bị bằng nút nhấn: khi nhấn vào một nút ESP8266 sẽ

kiểm tra xem thiết bị đó đang mở hay tắt.Nếu thiết bị đang mở ESP8266 sẽ gửi gói tập tin tắt thiết bị sang Arduino để điều khiển thiết bị tương ng và ngược lại.Đồng thời ESP8266 sẽ gửi gói tập tin vừa thực hiện lên lưu trữ tại cơ sở dữ liệu Firebase.Phần

mềm Android sẽ tự động cập nhật cho biết trạng thái của thiết bị hiện tại

- Khi hẹn giờ thiết bị: Định dạng thời gian 24h, hẹn theo giờ phút

Hẹn giờ bật tắt thiết bị: Nhập thời gian vào khung hẹn giờ, bấm nút gửi phần mềm Android sẽ gửi và lưu trữ tại cơ sở dữ liệu Firebase ESP8266 sẽ kiểm tra khi đến thời gian bật (tắt) ESP8266 sẽ gửi tập tin bật (tắt) qua Arduino để điều khiển thiết bị đồng thời gửi trạng thái bật (tắt) lên cơ sở dữ liệu Fire ase để phần mềm Android cập nhật trạng thái của thiết bị

Trang 34

Sơ đồ nguyên lý:

Hình 3.2 ơ ồ nguyên lý h thống

Trang 35

3.3 Giải thuật trên Arduino

Hình 3.3: Giải thuật trên Arduino

Trang 36

3.4 Giải thuật trên ESP8266

Hình 3.4: Giải thuật trên ESP8266

star

Kết nối với cơ sở dữ liệu

Firebase

Lấy dữ liệu hiện tại của

cơ sở dữ liệu Firebase

Arduino điều khiển thiết bị

Nhấn nút

Kiểm tra trạng thái nút hiện tại

Đƣa ra lệnh thực hiện

Hẹn giờ thiết bị Cập nhật trạng thái vừa thực hiện

Trang 37

3.5 Tạo cơ sở dữ liệu Firebase

3.5.1 Giới thiệu về Firebase

Theo Wikipedia, th “Firebase is a mobile and web application platform with

tools and infrastructure designed to help developers build high-quality apps“ Tôi dịch

là “Firebase là một nền tảng ng dụng di động và we với các công cụ và hạ tầng

được thiết kế để giúp các lập tr nh viên xây dựng các ng dụng chất lượng cao“ Nói ngắn gọn, thay v trực tiếp cung cấp các ng dụng, họ cung cấp các dịch vụ nền tảng cho các lập tr nh viên, chính là các ạn, sử dụng để xây dựng ng dụng c ng như hỗ trợ các ạn tối ưu hóa, tối đa hóa ng dụng của m nh Với nhiều dịch vụ chất lượng cao đi kèm m c giá phải chăng, Fire ase đã và đang, không chỉ là sự lựa chọn hàng đầu cho các lập tr nh viên đơn thân (single dev) hay các công ty khởi nghiệp (start ups), mà các công ty, tổ ch c lớn có tên tuổi c ng sử dụng “Ngọn lửa” để xây dựng các tính năng, các chương tr nh mới, c ng như chuyển đổi các dịch vụ trước đây sang

hệ thống của Fire ase Chẳng hạn như Shazam, Fa ulous và cả chính Google nữa, khi nền tảng nhắn tin Allo được xây dựng trên nền tảng Fire ase Realtime Data ase

Về mặt lịch sử, Fire ase (tiền thân là Evolve) trước đây là một start up được thành lập vào năm 2011 ởi Andrew Lee và James Tamplin Ban đầu, Evolve chỉ cung cấp cơ sở dữ liệu để các lập tr nh viên thiết kế các ng dụng chat (và hiện tại th để làm quen với realtime d th ạn c ng làm ng dụng chat đó thôi) Tuy nhiên, họ nhanh chóng nhận ra tiềm năng sản phẩm của m nh khi nhận thấy các khách hàng không sử dụng CSDL để làm ng dụng chat, mà thay vào đó, để lưu các thông tin như game progress Bộ đôi Lee và Tamplin quyết định tách mảng realtime ra để thành lập một công ty độc lập – chính là Firebase – vào tháng 4 năm 2012 Sau nhiều lần huy động vốn và gặt hái được những thành công nổi ật, Fire ase đã được Google để ý Vào tháng 10 năm 2014, Fire ase gia nhập gia đ nh Google

Cả Google và Fire ase đều như hổ mọc thêm cánh Fire ase có điều kiện để phát triển thần tốc, mở rộng số lượng các dịch vụ con, còn Google có được một đội

ng nhân lực chất lượng cao, năng động, c ng như cơ sở hạ tầng và sự hiệu quả mà các dịch vụ của Fire ase mang lại, mà không phải xây dựng lại từ đầu Hiện tại, Google đã chuyển các dịch vụ nền tảng hỗ trợ các lập tr nh viên ên ngoài về cho Fire ase quản lí, chẳng hạn như Cloud Messaging, AdMo và Analytics

Trang 38

Fire ase, theo hướng đi của Google, chính th c hỗ trợ Android, iOS và We Thực tế, macOS c ng được hỗ trợ v macOS chia sẻ nhiều dòng code với iOS, song v Google và Fire ase muốn sử dụng we cho ng dụng desktop thay vì native, nên có khá ít tài liệu chính th c nói về Fire ase cho macOS, c ng như các thư viện cho macOS có thể kém ch c năng và không ổn định lắm Còn về Windows, hiện tại tôi chưa thấy họ lên tiếng nào về việc sẽ chính th c phát hành thư viện cho đ a con của Microsoft, nên nếu các ạn muốn làm ng dụng cho Windows (UWP) th chỉ nên (và

c ng chỉ có mỗi con đường) làm we -based native apps mà thôi

3.5.2 Tạo cơ sở dữ liệu Firebase

Bước 1: Truy cập trang web https://firebase.google.com

Bước 2: Đăng nhập bằng tài khoản google

Hình 3.5 Đă g hập ể tạo cơ sở dữ li u Firebase

Bước 3: Bên góc trái màn hình kick vào biểu tượng

Hình 3.6: Bả g iều khiển

Trang 39

Bước 4: Tiến hành tạo project mới

- Nhập tên project cần lưu vào ô Project name

- Lựa chọn quốc gia ở ô Country

Hình 3.7: Tạo project mới ể lưu trữ dữ li u

Bước 5: Chọn hệ điều hành được kết nối

Hinh 3.8: Chọn h iều hành

Sau khi tạo xong sẽ hiện ra bảng điều khiển và một liên kết để truy cập vào cơ

sở dữ liệu Firebase:

Trang 40

Hình 3.9: Liên kết ể truy cập cơ sở dữ li u Firebase

Dùng liên kết này để cài đặt cấu hình cho ESP8266 và lập trình phần mềm Android

3.6 Thiết kế giao diện phần mềm Android

3.6.1 Giới thiều về App Inventor (AI2).

Hình 3.10: Biểu tượng phần mềm App Inventor (AI2 )

App Inventor là một ng dụng trên nền we giúp ạn có thể tạo ng dụng Android Ban đầu được cung cấp ởi Google, hiện tại được duy tr ởi Viện Công nghệ Massachusetts (MIT)

Nó có giao diện thân thiện với các đối tượng kéo thả dễ dàng

3.6.2 Tạo project mới trên App Inventor

Bước 1: Truy cập vào trang web ai2.appinventor.mit.edu

Ngày đăng: 25/12/2018, 23:51

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w