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

Thiết kế và thi công hệ thống giám sát nhiều vườn

119 45 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 119
Dung lượng 6,21 MB

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

Nội dung

Bên cạnh công việc theo dõi nhiệt độ, độ ẩm, tình trạng của cây trồng trên một vườn, nhóm quyết định thiết kế một hệ thống có thể giúp giám sát một lúc nhiều vườn, nằm ở nhiều nơi khác n

Trang 1

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT

THÀNH PHỐ HỒ CHÍ MINH

ĐỒ ÁN TỐT NGHIỆP NGÀNH KỸ THUẬT ÐIỆN TỬ TRUYỀN THÔNG

THIẾT KẾ VÀ THI CÔNG HỆ THỐNG

GIÁM SÁT NHIỀU VUỜN

Tp Hồ Chí Minh, tháng 07/2019

S K L 0 0 5 4 1 7

GVHD: NGUYỄN THANH HẢI SVTH : VÕ NGỌC NGUYÊN HÙNG MSSV: 15141025

SVTH : ÐINH QUANG VỴ MSSV: 15141091

Trang 2

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH

KHOA ĐÀO TẠO CHẤT LƯỢNG CAO

-

ĐỒ ÁN TỐT NGHIỆP

NGÀNH KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG

ĐỀ TÀI:

THIẾT KẾ VÀ THI CÔNG HỆ THỐNG

GIÁM SÁT NHIỀU VƯỜN

GVHD: PGS TS Nguyễn Thanh Hải SVTH: Võ Ngọc Nguyên Hùng MSSV: 15141025

SVTH: Đinh Quang Vỵ MSSV: 15141091

Tp Hồ Chí Minh – 07/2019

Trang 3

ii

Trang 4

iii

Trang 5

iv

Trang 6

LỜI CẢM ƠN

Để có thể hoàn thành đề tài này, nhóm sinh viên thực hiện xin chân thành cảm ơn quý thầy cô Trường ĐH Sư phạm Kỹ thuật TP Hồ Chí Minh đã hướng dẫn, truyền đạt kiến thức cho nhóm trong suốt quá trình học tập Đặc biệt, nhóm

xin chân thành cảm ơn Thầy Nguyễn Thanh Hải đã tận tình hướng dẫn và tạo

điều kiện thuận lợi cho nhóm trong suốt thời gian thực hiện đồ án tốt nghiệp Nhóm xin được phép gửi đến Thầy lòng biết ơn, lời cảm ơn chân thành và sâu sắc nhất

Bên cạnh đó, nhóm cũng xin cảm ơn các anh, chị khóa trước cũng như các bạn sinh viên trong lớp 15141CLDT1A đã nhiệt tình đóng góp ý kiến và chia

sẽ kinh nghiệm, cảm ơn gia đình đã tạo điều kiện, động viên, chia sẽ, tiếp thêm động lực để giúp nhóm có thể hoàn thành đề tài này

Cuối cùng, dù đã cố gắng hoàn thành nhiệm vụ đề tài đặt ra đảm bảo thời

hạn nhưng do thời gian và kiến thức có hạn nên trong quá trình thực hiện đề tài không tránh khỏi những thiếu sót Nhóm rất mong nhận được ý kiến đóng góp của quý thầy cô và các bạn để đồ án được hoàn thiện hơn

Nhóm xin chân thành cảm ơn!

Đinh Quang Vỵ

Trang 7

TÓM TẮT

Ngày nay công nghệ dường như đã trở thành một phần không thể thiếu trong cuộc sống Không chỉ những trong nhu cầu sinh hoạt, mà còn có ở các doanh nghiệp lớn, nhỏ khác nhau, dịch vụ y tế cũng như chăn nuôi, trồng trọt, Công nghệ đem lại hiệu quả cao cho nền công nghiệp thời kỳ mới

Thay vì áp dụng theo cách truyền thống, sử dụng công nghệ sẽ giúp đảm bảo về phần an toàn vệ sinh thực phẩm hơn, đẩy mạnh năng suất đến hàng trăm lần Gần đây, vấn đề an toàn sức khỏe dâng cao, ra sức phòng chống nạn dịch bệnh, mầm hại và khí hậu thay đổi thất thường khiến cho các cô bác nông dân trở nên hoang mang

Chính vì thế, nhóm lựa chọn đề tài “THIẾT KẾ VÀ THI CÔNG HỆ

THỐNG GIÁM SÁT NHIỀU VƯỜN” nhằm tìm hiểu, nghiên cứu thêm về sự

quan trọng cũng như ứng dụng của Vi xử lý, Web server, phần mềm trên điện thoại di động và mạng Wifi trong đời sống nhằm đáp ứng nhu cầu cấp thiết của

xã hội

Bên cạnh công việc theo dõi nhiệt độ, độ ẩm, tình trạng của cây trồng trên một vườn, nhóm quyết định thiết kế một hệ thống có thể giúp giám sát một lúc nhiều vườn, nằm ở nhiều nơi khác nhau, thậm chí là rất xa để tiện trong quá trình

đi lại cũng như tiết kiệm thời gian cho người sử dụng thông qua mạng Internet

Trang 8

MỤC LỤC

TRANG PHỤ BÌA……….TRANG

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP ii

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN iii

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN iv

LỜI CẢM ƠN v

TÓM TẮT vi

MỤC LỤC vii

DANH MỤC CÁC TỪ VIẾT TẮT xii

DANH MỤC CÁC HÌNH ẢNH, BIỂU ĐỒ xiii

DANH MỤC CÁC BẢNG BIỂU xvi

Chương 1 TỔNG QUAN 1

1.1 ĐẶT VẤN ĐỀ 1

1.2 MỤC TIÊU 2

1.3 NỘI DUNG NGHIÊN CỨU 2

1.4 GIỚI HẠN 2

1.5 BỐ CỤC 3

Chương 2 CƠ SỞ LÝ THUYẾT 4

2.1 GIỚI THIỆU ARDUINO WEMOS D1 4

2.1.1 Sơ lược về Arduino Wemos D1 4

2.1.2 Một số thuật ngữ nổi bật 4

2.1.3 Thiết kế 5

2.1.4 Một số lưu ý khi làm việc với Arduino 5

2.1.5 Thông số kỹ thuật 5

2.1.6 Sơ đồ chân 6

Trang 9

2.1.7 Phần cứng 7

2.2 CÔNG NGHỆ TRUYỀN THÔNG KHÔNG DÂY 8

2.3 TỔNG QUAN CÔNG NGHỆ TRUYỀN THÔNG WI-FI 10

2.3.1 Giới thiệu 10

2.3.2 Nguyên lý hoạt động 11

2.3.3 Một số chuẩn kết nối Wi-Fi phổ biến 12

2.4 GIỚI THIỆU CHUẨN GIAO TIẾP I2C 12

2.4.1 Giới thiệu chung 12

2.4.2 Đặc điểm giao tiếp I2C 13

2.4.3 Chế độ hoạt động (tốc độ truyền) 14

2.4.4 Điều kiện START và STOP 14

2.5 CHUẨN GIAO TIẾP 1-WIRE 16

2.5.1 Giới thiệu 16

2.5.2 Nguyên lý hoạt động 16

2.6 CHUẨN GIAO TIẾP UART 18

2.6.1 Giới thiệu 18

2.6.2 Các thông số cơ bản của chuẩn truyền UART 18

2.7 ỨNG DỤNG BLYNK 19

2.7.1 Giới thiệu 19

2.7.2 Các chức năng chính của Blynk 19

2.7.3 Nguyên lý hoạt động của Blynk 20

2.8 XÂY DỰNG WEB SERVER 21

2.8.1 Ngôn ngữ HTML 21

a Giới thiệu 21

b Vai trò 21

Trang 10

c Ưu và nhược điểm 21

d Cấu trúc 22

e Các thẻ HTML cơ bản 22

2.9 MỘT SỐ LINH KIỆN KHÁC 25

2.9.1 LCD hiển thị 25

2.9.2 Module I2C 27

2.9.3 Cảm biến DHT11 27

2.9.4 Cảm biến độ ẩm đất 29

2.9.5 Động cơ bơm P385 30

2.9.6 Bóng đèn 12V21/6CP 31

Chương 3 TÍNH TOÁN VÀ THIẾT KẾ 33

3.1 GIỚI THIỆU 33

3.1.1 Yêu cầu của hệ thống 33

3.1.2 Phương án thiết kế 33

3.2 TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG 34

3.2.1 Thiết kế sơ đồ khối hệ thống 34

a Thiết kế hệ thống phần cứng 34

b Giải thích hoạt động của hệ thống 35

3.2.2 Tính toán và thiết kế mạch 35

a Khối xử lý trung tâm 35

b Khối cảm biến 37

c Khối hiển thị 38

d Khối nút nhấn vật lý 39

e Khối công suất 39

f Khối nguồn 41

3.2.3 Sơ đồ nguyên lý toàn mạch 42

Trang 11

Chương 4 THI CÔNG HỆ THỐNG 44

4.1 GIỚI THIỆU 44

4.2 THI CÔNG HỆ THỐNG 44

4.2.1 Thi công bo mạch 44

4.2.2 Lắp ráp và kiểm tra 45

4.3 THI CÔNG MÔ HÌNH 47

4.4 LẬP TRÌNH HỆ THỐNG 48

4.4.1 Lưu đồ giải thuật 48

a Lưu đồ chương trình chính 48

b Lưu đồ chương trình con đọc giá trị cảm biến 50

c Lưu đồ chương trình con lựa chọn chế độ điều khiển 50

d Lưu đồ chương trình con điều khiển bằng tay 51

e Lưu đồ chương trình con điều khiển tự động 52

f Lưu đồ App Blynk 53

4.4.2 Phần mềm lập trình cho vi điều khiển 53

4.4.3 Phần mềm sử dụng cho điện thoại 58

4.5 VIẾT TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC 61

4.5.1 Hướng dẫn thiết lập và sử dụng mô hình 61

4.5.2 Hướng dẫn thêm vườn vào hệ thống 65

Chương 5 KẾT QUẢ SO SÁNH, THỰC NGHIỆM, PHÂN TÍCH, TỔNG HỢP……… 68

5.1 GIỚI THIỆU 68

5.2 KẾT QUẢ 68

5.1.1 Kết quả đạt được 68

5.1.2 Kết quả phần cứng 68

5.1.3 Kết quả phần mềm 72

Trang 12

a Giao diện App Blynk 73

b Giao diện Website 76

c Webserver được tạo để lựa chọn Wi-Fi 77

5.3 NHẬN XÉT 79

5.3.1 Ưu điểm 79

5.3.2 Khuyết điểm 79

5.4 ĐÁNH GIÁ 79

Chương 6 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 80

6.1 KẾT LUẬN 80

6.2 HƯỚNG PHÁT TRIỂN 81

TÀI LIỆU THAM KHẢO 82

PHỤ LỤC 83

Trang 13

DANH MỤC CÁC TỪ VIẾT TẮT

I2C: Inter-Integrated Circuit

UART: Universal asynchronous receiver-transmitter

DC: Direct Current

AC: Altermating current

WWW: World wide web

HTML: Hypertext Markup Language

PHP: Hypertext Preprocessor

Wi-Fi: Wireless Fidelity

IC: Integrated Circuit

USB: Universal Serial Bus

LCD: Liquid-crystal display

IOT: Internet of Things

Trang 14

DANH MỤC CÁC HÌNH ẢNH, BIỂU ĐỒ

Hình 2.1: Board Wemos D1 4

Hình 2.2: Nguồn của Arduino 7

Hình 2.3: Bluetooth 9

Hình 2.4: Wireless USB 9

Hình 2.5: Wi-Fi 10

Hình 2.6: Kết nối Wi-Fi 11

Hình 2.7: Giao tiếp I2C 1 12

Hình 2.8: Sơ đồ kết nối thiết bị với I2C 13

Hình 2.9: Giao tiếp I2C 2 13

Hình 2.10: Trình tự truyền Bit trong giao tiếp I2C 14

Hình 2.11: Điều kiện Start và Stop trong giao tiếp I2C 15

Hình 2.12: Truyền dữ liệu trong giao tiếp I2C 15

Hình 2.13: Gửi tín hiệu bit “1” 16

Hình 2.14: Gửi tín hiệu bit “0” 16

Hình 2.15: Đọc bit 17

Hình 2.16: Tín hiệu Reset và Presence 17

Hình 2.17: Tổng hợp dạng sóng các tiến trình hoạt động chuẩn 1-Wire 17

Hình 2.18: Truyền dữ liệu UART 18

Hình 2.19: App Blynk 19

Hình 2.20: Sơ đồ kết nối Blynk 20

Hình 2.21: LCD 16x2 25

Hình 2.22: Sơ đồ khối của bộ điều khiển LCD 26

Hình 2.23: Module I2C 27

Hình 2.24: Cảm biến DHT11 28

Hình 2.25: Sơ đồ kết nối của DHT11 28

Hình 2.26: Cảm biến độ ẩm đất 29

Hình 2.27: Sơ đồ kết nối độ ẩm đất 30

Hình 2.28: Động cơ bơm P385 31

Hình 2.29: Bóng đèn 12V21/6CP 31

Trang 15

Hình 3.1: Sơ đồ khối toàn mạch 34

Hình 3.2: Sơ đồ kết nối Wemos D1 36

Hình 3.3: Sơ đồ kết nối cảm biến DHT11 37

Hình 3.4: Sơ đồ kết nối cảm biến độ ẩm đất 38

Hình 3.5: Sơ đồ kết nối LCD và I2C 38

Hình 3.6: Sơ đồ kết nối nút nhấn 39

Hình 3.7: Sơ đồ khối công suất 40

Hình 3.8: Nguồn Adapter và nguồn xung 41

Hình 3.9: Sơ đồ nguyên lý toàn mạch 43

Hình 4.1: Mặt sau của mạch in sau khi hàn linh kiện 45

Hình 4.2: Mặt trên của mạch in sau khi hàn linh kiện 45

Hình 4.3: Mạch in gắn vào mica 46

Hình 4.4: Gắn linh kiện và test mạch 46

Hình 4.5: Gắn 2 mạch điều khiển lên khung mô hình 47

Hình 4.6: Gắn vườn vào mô hình 48

Hình 4.7: Chạy thử mô hình 48

Hình 4.8: Lưu đồ chương trình chính 50

Hình 4.9: Lưu đồ chương trình con đọc giá trị các cảm biến 50

Hình 4.10: Lưu đồ chương trình con chọn chế độ điều khiển 50

Hình 4.11: Lưu đồ chương trình con điều khiển bằng tay 51

Hình 4.12: Lưu đồ chương trình con điều khiển tự động 52

Hình 4.13: Lưu đồ sử dụng Blynk 53

Hình 4.14: Giao diện phần mềm Arduino 1 54

Hình 4.15: Giao diện phần mềm Arduino 2 55

Hình 4.16: Giao diện phần mềm Arduino 3 56

Hình 4.17: Các lệnh của Arduino 57

Hình 4.18: Vùng thông báo 57

Hình 4.19 : Giao diện sau khi vào Blynk 58

Hình 4.20: Giao diện Blynk sau khi nhấn “New Project” 59

Trang 16

Hình 4.21 : Giao diện sau khi nhấn “Create Project” và giao diện kéo thả linh

kiện 60

Hình 4.22 : Giao diện “Project Settings” của Blynk 61

Hình 4.23: Kết nối Wi-Fi do Wemos D1 phát 62

Hình 4.24: Giao diện khi vào webserver 63

Hình 4.26: Giao diện trên điện thoại của app Blynk 64

Hình 4.27: Lựa chọn Widget 65

Hình 4.29: Lựa chọn các chân ảo cho Widget 66

Hình 4.30: Code nút nhấn trên app Blynk sử dụng các chân ảo 3 và 4 67

Hình 4.31: Code lấy dữ liệu cảm biến sử dụng các chân ảo 10,11,12 67

Hình 5.1: Mạch điều khiển 69

Hình 5.2: Dữ liệu hiển thị trên LCD 70

Hình 5.3: 2 mạch điều khiển được gắn lên mô hình 71

Hình 5.4: Nguồn tổ ong và máy bơm được gắn lên mô hình 72

Hình 5.5: Mô hình đồ án nhìn từ trên xuống 72

Hình 5.6: Giao diện trên điện thoại của app Blynk 73

Hình 5.7: Biểu đồ vòng cung 74

Hình 5.8: Biểu đồ đường 74

Hình 5.9: Giao diện nút nhấn 75

Hình 5.10: Thông báo từ Blynk 76

Hình 5.11: Giao diện Web 77

Hình 5.12: Giao diện lựa chọn Wi-Fi trên Webserver 78

Trang 17

DANH MỤC CÁC BẢNG BIỂU

Bảng 2.1: Thông số kỹ thuật ESP8266 5

Bảng 2.2: Sơ đồ chân của ESP8266 6

Bảng 2.3: Các chân của LCD 16x2 26

Bảng 3.1: Điện áp và dòng tối đa của các linh kiện 41

Bảng 4.1 Danh sách các linh kiện 44

Trang 18

Hiện nay cũng có rất nhiều bài nghiên cứu của sinh viên cũng làm về nhà thông minh, đồ án tốt nghiệp của Nguyễn Quốc Thành và Võ Đình Khải nghiên

cứu về “HỆ THỐNG GIÁM SÁT NÔNG NGHIỆP BẰNG CÔNG NGHỆ

IOT” Phương pháp thực hiện là dùng Arduino Mega 2560 xây dựng thành một

khối điều khiển trung tâm, dùng các module cảm biến: ánh sáng, độ ẩm đất, nhiệt

độ và độ ẩm không khí thu thập dữ liệu từ môi trường canh tác gửi về Arduino Mega 2560, từ đó so sánh với thông số đã cài đặt trước Arduino Mega 2560 sẽ điều khiển các thiết bị ngoại vi: máy bơm nước, máy phun sương, đèn, quạt tản nhiệt Bên cạnh đó Arduino Mega 2560 sẽ gửi dữ liệu lên ứng dụng Android thông qua Bluetooth với module HC05 điều khiển phạm vi gần

Một số đồ án tốt nghiệp khác như của Ngô Thành Đạt và Lê Hải Nguyên

nghiên cứu về đề tài “THIẾT KẾ VÀ THI CÔNG HỆ THỐNG IOTS CHĂM

SÓC VƯỜN CÂY ĂN QUẢ SỬ DỤNG PIN NĂNG LƯỢNG MẶT TRỜI”

Mô hình sử dụng kit Arduino Mega2560 làm vi điều khiển trung tâm để điều khiển các module mở rộng như màn hình cảm ứng HMI, NODEMCU ESP8266, L293, DHT11, BH1750, … Đóng mái cho khu vườn bằng cách sử dụng động cơ Servo khi có mưa, đóng mở rèm bằng động cơ DC khi cường độ ánh sáng tăng quá cao Ngoài ra, còn có một số cơ cấu chấp hành khác như bơm nước, quạt, đèn LED, đèn sưởi, …

Qua tóm tắt trên, nhóm đã quyết định thực hiện đề tài “THIẾT KẾ VÀ

THI CÔNG HỆ THỐNG GIÁM SÁT NHIỀU VƯỜN” để theo dõi nhiệt độ,

độ ẩm môi trường của khu vườn, từ các thông số thu được có thể tưới nước giúp

Trang 19

cây phát triển tốt hơn Điểm đặc biệt của đề tài là có thể dùng chung 1 CSDL để điều khiển và giám sát nhiều vườn một lúc, thậm chí là rất xa nhau Với mỗi một vườn sẽ là một Module Wifi, đều cho chúng truyền và nhận trên cùng một CSDL,

trên cùng một App sẽ giúp việc giám sát trở nên dễ dàng hơn

1.2 MỤC TIÊU

Các cảm biến thu thập dữ liệu từ môi trường của vườn rau và gửi về khối

xử lý trung tâm Sau khi nhận dữ liệu, khối xử lý trung tâm sẽ xử lý và hiển thị lên màn hình LCD, giao diện của Website, App trên điện thoại di động và máy tính Đồng thời so sánh dữ liệu với thông số đã được thiết lập sẵn để đưa ra mệnh lệnh tự động thực thi như khởi động máy bơm, bật đèn sưởi Ngoài ra còn có bộ nút nhất điều khiển vật lý để phòng trường hợp điện thoại bị hư hỏng, máy tính hết pin, … các nút nhấn này cũng được đồng bộ với phần mềm

1.3 NỘI DUNG NGHIÊN CỨU

 Tìm hiểu về Arduino, nền tảng Blynk, cảm biến nhiệt độ, độ ẩm không khí,

độ ẩm đất

 Cạc kết nối các linh kiện và module với nhau

 Thiết kế App/Website trên điện thoại di động/máy tính

 Viết chương trình cho hệ thống

 Thiết kế và tính toán sơ đồ nguyên lý, khối nguồn

 Vẽ mạch trên phần mềm, in mạch, hàn mạch, đo nguội và chạy thử nghiệm

 Viết báo cáo

 Báo cáo đề tài tốt nghiệp

1.4 GIỚI HẠN

Các giới hạn gặp phải bao gồm:

 Hệ thống vẫn chưa hoàn toàn ổn định, có thời gian trễ nhất định

 Cảm biến không chính xác so với môi trường

 Mô hình thiếu thực tế

 Khá ít chức năng

Trang 20

 Chương 2: Cơ Sở Lý Thuyết

Giới thiệu về các linh kiện, thiết kế, chuẩn kết nối, giao tiếp và nền tảng phần mềm, chương trình sẽ sử dụng Nêu được ưu điểm, khuyết điểm của từng loại, đưa ra thông số kỹ thuật

 Chương 3: Thiết Kế và Tính Toán

Thiết kế sơ đồ khối, giải thích hoạt động và tính toán của từng khối, nguyên lý hoạt động của hệ thống Tác dụng từng chân của linh kiện khi được kết nối với nhau

 Chương 4: Kết Quả, Nhận Xét và Đánh Giá

Tổng hợp lại các linh kiện đã được sử dụng, trình bày cách thi công mạch,

mô hình Vẽ và giải thích từng lưu đồ, hướng dẫn sử dụng hệ thống

 Chương 5: Kết quả, nhận xét và đánh giá

Trình bày kết quả, hình ảnh mô hình sau khi thi công hoàn chỉnh, nhận xét

ưu và nhược điểm của mô hình

 Chương 6: Kết Luận và Hướng Phát Triển

Trình bày kết luận về đề tài sau khi đã thực hiện, đề ra các phương án để phát triển đề tài

Trang 21

Chương 2 CƠ SỞ LÝ THUYẾT

2.1 GIỚI THIỆU ARDUINO WEMOS D1

2.1.1 Sơ lược về Arduino Wemos D1

WeMos D1 là board mạch được phát triển dựa trên Module Esp8266MOD và được thiết kế theo tiêu chuẩn của board mạch Arduino UNO, tương thích với Arduino IDE và NodeMCU Board được tích hợp Wifi, dễ dàng thực hiện các ứng dụng thu thập dữ liệu và điều khiển thiết bị thông qua Wifi

Wemos D1 có khả năng chuyển đổi điện áp trên board, cho phép cấp 1 điện áp

DC 9-24V để chuyển đổi thành 5V với dòng tối đa 1A

Hình 2.1: Board Wemos D1

2.1.2 Một số thuật ngữ nổi bật

 Flash Memory: bộ nhớ có thể ghi được, dữ liệu không bị mất ngay cả khi tắt

điện Về vai trò, có thể hình dung bộ nhớ này như ổ cứng để chứa dữ liệu trên board Chương trình được viết cho Arduino sẽ được lưu ở đây Kích thước của vùng nhớ này thông thường dựa vào vi điều khiển được sử dụng, ví dụ như ATmega8 có 8KB flash memory Loại bộ nhớ này có thể chịu được khoảng 10,000 lần ghi/xoá

 RAM: tương tự như RAM của máy tính, sẽ bị mất dữ liệu khi ngắt điện nhưng

bù lại tốc độ đọc ghi xoá rất nhanh Kích thước nhỏ hơn Flash Memory nhiều lần

 EEPROM: một dạng bộ nhớ tương tự như Flash Memory nhưng có chu kì

ghi/xoá cao hơn - khoảng 100,000 lần và có kích thước rất nhỏ Để đọc/ghi dữ liệu

có thể dùng thư viện EEPROM của Arduino

Trang 22

2.1.3 Thiết kế

Trên board còn có 1 nút reset, 1 ngõ kết nối với máy tính qua cổng USB và 1 ngõ cấp nguồn sử dụng jack 2.1mm lấy năng lượng trực tiếp từ AC-DC adapter hay thông qua ắc-quy nguồn Ngoài ra, board Arduino còn cung cấp cho các pin khác nhau như pin cấp nguồn 3.3V, pin cấp nguồn 5V, pin GND

2.1.4 Một số lưu ý khi làm việc với Arduino

Mặc dù Arduino có cầu chi tự phục hồi (resettable fuse) bảo về mạch khi xảy

ra quá tải, tuy nhiên cầu chì này chỉ được mắc cho cổng USB nhằm tự động ngắt điện khi nguồn vào USB lớn hơn 5V Vì vậy, khi thao tác với Arduino, cần tính toán cẩn thận để tránh gây hư tổn đến board

2.1.5 Thông số kỹ thuật

Bảng 2.1: Thông số kỹ thuật ESP8266

Vi điều khiển ESP8266MOD

Trang 23

2.1.6 Sơ đồ chân

Bảng 2.2: Sơ đồ chân của ESP8266

D4 IO, 10k Pull-up, BUILTIN_LED GPIO2

D8 IO, 10k Pull-down, SS GPIO15

Trang 24

2.1.7 Phần cứng

a Thiết kế nguồn

Phần nguồn của Board mạch Arduino thiết kế để thực hiện các nhiệm vụ sau:

Hình 2.2: Nguồn của Arduino

 Lựa chọn nguồn cung cấp cho board mạch (khối màu cam trong hình trên):

Board mạch Arduino có thể được cung cấp nguồn bởi Adapter thông qua Jack

DC hoặc từ cổng USB (2 mũi tên màu đỏ) Trong trường hợp chỉ có 1 trong 2

nguồn cung cấp thì Board Arduino sẽ sử dụng nguồn cung cấp đó Trong trường hợp có cả 2 nguồn cung cấp thì Arduino sẽ ưu tiên lựa chọn nguồn cung cấp từ Jack DC thay vì từ cổng USB Việc ưu tiên này được thực hiện bởi Op-

Amp trong IC LMV358 và MOSFET FDN340P Điện áp từ Jack DC sau khi qua Diode bảo vệ D1 thì được gọi là điện áp VIN Điện áp VIN qua cầu phân

áp để tạo thành VIN/2 để so sánh với điện áp 3.3V Vì VIN/2 >3.3V nên điện

áp đầu ra của Op-Amp là 5V, điều này làm cho MOSFET không được kích, nguồn cung cấp cho Board Arduino là từ Jack DC sau khi qua ổn áp

 Tạo ra các điện áp 5v và 3.3v (2 khối màu xanh) để cung cấp cho vi điều khiển

và cũng là điểm cấp nguồn cho các thiết bị bên ngoài sử dụng Mạch Arduino

Trang 25

sử dụng IC ổn áp NCP1117 để tạo điện áp 5V từ nguồn cung cấp lớn và IC ổn

áp LP2985 để tạo điện áp 3.3V Đây đều là những IC ổn áp tuyến tính, tuy

hiệu suất không cao nhưng ít gợn nhiễu và mạch đơn giản

 Bảo vệ ngược nguồn, quá tải (vòng tròn màu đỏ) F1 là một cầu chì tự phục

hồi, trong trường hợp chỉ sử dụng dây cáp USB để cấp nguồn thì tổng dòng tiêu thụ không được quá 500mA Nếu không cầu chì sẽ ngăn không cho dòng

điện chạy qua D1 là một Diode, chỉ cho dòng điện 1 chiều chạy qua (từ Jack

DC vào mạch), trong trường hợp mạch Arduino có mắc với các thiết bị khác

và có nguồn cung cấp lớn hơn nguồn vào Jack DC, nếu có sai sót chập mạch thì sẽ không có trường hợp nguồn các thiết bị bên ngoài chạy ngược vào Adapter

 Báo nguồn Đèn nguồn ON sáng lên báo thiết bị đã được cấp nguồn Nếu đã

cắm nguồn mà đèn nguồn không sáng thì có thể nguồn cung cấp đã bị hỏng hoặc jack kết nối lỏng, hoặc mạch Arduino kết nối với các linh kiện bên ngoài

bị ngắn mạch

b Thiết kế mạch Reset

Để vi điều khiển thực hiện khởi động lại thì chân RESET phải ở mức logic LOW (~0V) trong 1 khoản thời gian đủ yêu cầu Mạch reset của board Arduino UnoR3 phải đảm bảo được 02 việc:

 Reset bằng tay: Khi nhấn nút, chân RESET nối với GND, làm cho MCU RESET Khi không nhấn nút chân Reset được kéo 5V

 Reset tự động: Reset tự động được thực hiện ngay khi cấp nguồn cho vi điều khiển nhờ sự phối hợp giữa điện trở nối lên nguồn và tụ điện nối đất Thời gian

tụ điện nạp giúp cho chân RESET ở mức LOW trong 1 khoản thời gian đủ để

vi điều khiển thực hiện reset

 Khởi động vi điều khiển trước khi nạp chương trình mới

2.2 CÔNG NGHỆ TRUYỀN THÔNG KHÔNG DÂY

Dù cáp và dây điện vẫn đóng vai trò chính trong truyền và nhận thông tin, việc

sử dụng tai nghe không dây, lướt web tại điểm truy cập Wi-Fi hoặc truyền dữ liệu giữa các thiết bị qua các giao tiếp không dây đang trở nên quen thuộc và tác động lớn đến đời sống hàng ngày

Các công nghệ truyền thông không dây phổ biến:

Trang 26

Wireless USB có tính năng tương tự USB nói chung nhưng không cần dây cáp

Nó hỗ trợ máy in, máy ảnh, ổ cứng rời kết nối không dây với máy tính Wireless USB sử dụng nền tảng UWB (ultra-wideband) với tốc độ lên đến 2 GB/giây, cho phép gửi video độ phân giải cao mà không tiêu tốn quá nhiều điện Những sản phẩm

Wireless USB đầu tiên cũng mới chỉ bắt đầu được giới thiệu ra thị trường

Trang 27

Hình 2.5: Wi-Fi

WiFi sử dụng sóng vô tuyến (RF) để cho phép hai thiết bị kết nối với nhau Công nghệ này được sử dụng phổ biến nhất để kết nối các bộ định tuyến Internet với các thiết bị như máy tính, máy tính bảng và điện thoại Tuy nhiên, nó cũng có thể được sử dụng để kết nối bất kỳ hai phần cứng nào với nhau

2.3 TỔNG QUAN CÔNG NGHỆ TRUYỀN THÔNG WI-FI

2.3.1 Giới thiệu

Wifi mà mạng kết nối Internet không dây, là từ viết tắt của Wireless Fidelity,

sử dụng sóng vô tuyến để truyền tín hiệu Loại sóng vô tuyến này tương tự như sóng điện thoại, truyền hình và radio Và trên hầu hết các thiết bị điện tử ngày nay như máy tính, laptop, điện thoại, máy tính bảng đều có thể kết nối Wifi

Trang 28

Hình 2.6: Kết nối Wi-Fi

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

Để có được sóng Wifi thì cần phải có bộ phát Wifi - chính là các thiết bị như modem, router Đầu vào, tín hiệu Internet nguồn (được cung cấp bởi các đơn vị ISP như FPT, Viettel, VNPT, CMC hiện nay) Thiết bị modem, router sẽ lấy tín hiệu Internet qua kết nối hữu tuyến rồi chuyển thành tín hiệu vô tuyến, và gửi đến các thiết

bị sử dụng như điện thoại smartphone, máy tính bảng, laptop Đây là quá trình nhận tín hiệu không dây (hay còn gọi là adapter) - chính là card Wifi trên laptop, điện thoại và chuyển hóa thành tín hiệu Internet Và quá trình này hoàn toàn có thể thực hiện ngược lại, nghĩa là router, modem nhận tín hiệu vô tuyến từ adapter và giải mã chúng, gửi qua Internet

Cũng giống như điện thoại di động, Wifi sử dụng sóng radio (sóng vô tuyến)

để truyền thông tin qua hệ thống mạng Máy tính bao gồm một card mạng không dây

sẽ truyền dữ liệu gửi vào tín hiệu radio

Tương tự tín hiệu này sẽ được truyền đi thông qua một ăng-ten, một bộ giải

mã gọi là router Sau khi giải mã xong, dữ liệu sẽ được gửi đến Internet thông qua một kết nối Ethernet có dây

Khi mạng không dây hoạt động như đường 2 chiều, các dữ liệu nhận được từ internet cũng sẽ đi qua router và được mã hoá thành tín hiệu radio để card mạng không dây trên máy tính nhận

Trang 29

2.3.3 Một số chuẩn kết nối Wi-Fi phổ biến

Về bản chất kỹ thuật, tín hiệu Wifi hoạt động gửi và nhận dữ liệu ở tần

số 2.5GHz đến 5GHz, cao hơn khá nhiều so với tần số của điện thoại di động, radio

do vậy tín hiệu Wifi có thể chứa nhiều dữ liệu nhưng lại bị hạn chế ở phạm vi truyền

- khoảng cách Còn các loại sóng khác tuy tần số thấp nhưng lại có thể truyền đi ở khoảng cách rất xa

Sóng Wifi sử dụng chuẩn kết nối 802.11 trong thư viện IEEE (Institute of Electrical and Electronics Engineers), chuẩn này bao gồm 4 chuẩn nhỏ hơn

là a/b/g/n (thường thấy trên modem, router có các ký hiệu này)

 Chuẩn 802.11b là phiên bản yếu nhất, hoạt động ở mức 2.4GHz và có thể xử

2.4 GIỚI THIỆU CHUẨN GIAO TIẾP I2C

2.4.1 Giới thiệu chung

Đầu năm 1980 Phillips đã phát triển một chuẩn giao tiếp nối tiếp 2 dây được gọi là I2C I2C là tên viết tắt của cụm từ Inter-Intergrated Circuit Đây là đường Bus giao tiếp giữa các IC với nhau Bus I2C được sử dụng làm bus giao tiếp ngoại vi cho rất nhiều loại IC khác nhau như các loại Vi điều khiển 8051, PIC, AVR, ARM chip nhớ như: RAM tĩnh (Static Ram), EEPROM, bộ chuyển đổi tương tự số (ADC), số tương tự(DAC), IC điểu khiển LCD, LED

Hình 2.7: Giao tiếp I2C

Trang 30

2.4.2 Đặc điểm giao tiếp I2C

Một giao tiếp I2C gồm có 2 dây: Serial Data (SDA) và Serial Clock (SCL) SDA là đường truyền dữ liệu 2 hướng, còn SCL là đường truyền xung đồng hồ để đồng bộ và chỉ theo một hướng Như thấy trên hình vẽ trên, khi một thiết bị ngoại vi kết nối vào đường bus I2C thì chân SDA của nó sẽ nối với dây SDA của bus, chân SCL sẽ nối với dây SCL

Hình 2.8: Sơ đồ kết nối thiết bị với I2C

Mỗi dây SDA hãy SCL đều được nối với điện áp dương của nguồn cấp thông qua một điện trở kéo lên (pullup resistor) Sự cần thiết của các điện trở kéo này là vì chân giao tiếp I2C của các thiết bị ngoại vi thường là dạng cực máng hở (opendrain hay opencollector) Giá trị của các điện trở này khác nhau tùy vào từng thiết bị và chuẩn giao tiếp, thường dao động trong khoảng 1K đến 4.7k

Trở lại với hình 1, thấy có rất nhiều thiết bị (ICs) cùng được kết nối vào một bus I2C, tuy nhiên sẽ không xảy ra chuyện nhầm lẫn giữa các thiết bị, bởi mỗi thiết

bị sẽ được nhận ra bởỉ một địa chỉ duy nhất với một quan hệ chủ/tớ tồn tại trong suốt thời gian kết nối Mỗi thiết bị có thể hoạt động như là thiết bị nhận hoặc truyền dữ liệu hay có thể vừa truyền vừa nhận Hoạt động truyền hay nhận còn tùy thuộc vào việc thiết bị đó là chủ (master) hãy tớ (slave)

Hình 2.9: Giao tiếp I2C 2

Nhìn hình trên thấy xung đồng hồ chỉ có một hướng từ chủ đến tớ, còn luồng

dữ liệu có thể đi theo hai hướng, từ chủ đến tớ hay ngược lại tớ đến chủ

Trang 31

2.4.3 Chế độ hoạt động (tốc độ truyền)

Các bus I2C có thể hoạt động ở ba chế độ, hay nói cách khác các dữ liệu trên bus I2C có thể được truyền trong 3 chế độ khác nhau:

 Chế độ tiêu chuẩn (Standard mode)

 Chế độ nhanh (Fast mode)

 Chế độ cao tốc High-Speed (Hs) mode

Một bus I2C có thể hoạt động ở nhiều chế độ khác nhau:

Dù ở chế độ nào, một giao tiếp I2C đều dựa vào quan hệ chủ/tớ Giả thiết một thiết bị A muốn gửi dữ liệu đến thiết bị B, quá trình được thực hiện như sau:

định địa chỉ, thiết bị A sẽ quyết định việc đọc hay ghi vào thiết bị tớ -Thiết bị

A gửi dữ liệu tới thiết bị B

Khi A muốn nhận dữ liệu từ B, quá trình diễn ra như trên, chỉ khác là A sẽ nhận

dữ liệu từ B Trong giao tiếp này, A là chủ còn B vẫn là tớ Chi tiết việc thiết lập một giao tiếp giữa hai thiết bị sẽ được mô tả chi tiết trong các mục dưới đây

Trình tự truyền bit trên đường truyền:

Hình 2.10: Trình tự truyền Bit trong giao tiếp I2C

Thiết bị chủ tạo một điều kiện start Điều kiện này thông báo cho tất cả các thiết

bị tớ lắng nghe dữ liệu trên đường truyền Để kết thúc quá trình giao tiếp, thiết bị chủ tạo ra một điều kiện stop

2.4.4 Điều kiện START và STOP

START và STOP là những điều kiện bắt buộc phải có khi một thiết bị chủ muốn thiết lập giao tiếp với một thiết bị nào đó trên bus I2C START là điều kiện

Trang 32

khởi đầu, báo hiệu bắt đầu của giao tiếp, còn STOP báo hiệu kết thúc một giao tiếp Hình dưới đây mô tả điều kiện START và STOP.

Hình 2.11: Điều kiện Start và Stop trong giao tiếp I2C

Điều kiện START: một sự chuyển đồi trạng thái từ cao xuống thấp trên đường SDA trong khi đường SCL đang ở mức cao (cao = 1; thấp = 0) báo hiệu một điều kiện START

Đỉều kiện STOP: Một sự chuyển đổi trạng thái từ mức thấp lên cao trên đường SDA trong khi đường SCL đang ở mức cao Cả hai điều kiện START và STOP đều được tạo ra bởi thiết bị chủ Sau tín hiệu START, bus I2C coi như đang trong trạng thái làm việc (busy) Bus I2C sẽ rỗi, sẵn sàng cho một giao tiếp mới sau tín hiệu

STOP từ phía thiết bị chủ

Truyền dữ liệu:

Mỗi xung clock có một bit dữ liệu được truyền Mức tín hiệu SDA chỉ được thay đổi khi xung clock đang ở mức thấp, và ổn định khi xung clock ở mức cao Thiết

bị tớ có thể lấy mẫu dữ liệu khi xung clock ở mức cao

Hình 2.12: Truyền dữ liệu trong giao tiếp I2C

Trang 33

2.5 CHUẨN GIAO TIẾP 1-WIRE

2.5.1 Giới thiệu

Chuẩn giao tiếp 1 dây (1 wire) do hãng Dallas giới thiệu Trong chuẩn giao tiếp này chỉ cần 1 dây để truyền tín hiệu và làm nguồn nuôi (nếu không tính dây mass) Một tính năng đặc biệt của bus là khả năng chỉ sử dụng hai dây tín hiệu: data

và GND Để thực hiện điều này, các thiết bị 1-Wire bao gồm một tụ điện 800pF để trữ điện, và cung cấp nguồn trong quá trình đường data đang hoạt động

Bốn thao tác hoạt động cơ bản của bus 1-wire là Reset/Presence, gửi bit 1, gửi bit 0, và đọc bit Thao tác byte như gửi byte và đọc byte dựa trên thao tác từng bit Gửi bit 1 (“Write 1” signal): Thiết bị master kéo bus xuống mức thấp trong khoảng 1 đến 15µs Sau đó nhả bus (releases the bus) cho đến hết phần còn lại của khe thời gian

Hình 2.13: Gửi tín hiệu bit “1”

Gửi bit 0 ("Write 0" signal): Kéo bus xuống mức thấp trong ít nhất 60µs, với chiều dài tối đa là 120 µs

Hình 2.14: Gửi tín hiệu bit “0”

Lưu ý: giữa các lần gửi bit (0 hoặc 1), phải có khoảng thời gian phục hồi bus (recovery time) tối thiểu 1 µs

Trang 34

Đọc bit: Thiết bị master kéo bus xuống mức thấp từ 0 -15µs Khi đó thiết bị tớ khi đó sẽ giữ bus ở mức thấp nếu muốn gửi bit 0, Nếu muốn gửi bit 1 đơn giản là nhả bus Bus nên lấy mẫu 15 µs sau khi bus kéo xuống mức thấp

Hình 2.15: Đọc bit

Reset/Presence: Tín hiệu Reset và Presence (báo hiện diện) được trình bày như hình bên dưới Thiết bị master kéo bus xuống thấp ít nhất 8 khe thời gian (tức là 480 µs) và sau đó nhả bus Khoảng thời gian bus ở mức thấp đó gọi là tín hiệu reset Nếu

có thiết bị slave gắn trên bus nó sẽ trả lời bằng tín hiệu Presence tức là thiết bị tớ sẽ kéo bus xuống mức thấp trong khoảng thời gian 60µs Nếu không có tín hiệu Presence, thiết bị master sẽ hiểu rằng không có thiết bị slave nào trên bus, và các giao tiếp sau đó sẽ không thể diễn ra

Hình 2.16: Tín hiệu Reset và Presence

Hình 2.17: Tổng hợp dạng sóng các tiến trình hoạt động chuẩn 1-Wire

Trang 35

2.6 CHUẨN GIAO TIẾP UART

2.6.1 Giới thiệu

UART chuyển đổi giữa dữ liệu nối tiếp và song song Một chiều UART chuyển đổi dữ liệu song song bus hệ thống ra dữ liệu nối tiếp để truyền đi Một chiều khác UART chuyển đổi dữ liệu nhận được dạng dữ liệu nối tiếp thành dạng dữ liệu song song cho CPU có thể đọc vào bus hệ thống

Hình 2.18: Truyền dữ liệu UART

2.6.2 Các thông số cơ bản của chuẩn truyền UART

Baud rate (tốc độ Baud): Khi truyền nhận không đồng bộ để hai module hiểu được nhau thì cần quy định một khoảng thời gian cho 1bit truyền nhận, nghĩa là trước khi truyền thì tốc độ phải được cài đặt đầu tiên Theo định nghĩa thì tốc độ baud là số bit truyền trong một giây

Frame (khung truyền): Do kiểu truyền thông nối tiếp này rất dễ mất dữ liệu nên ngoài tốc độ, khung truyền cũng được cài đặt từ ban đầu để giảm bớt sự mất mát

dữ liệu này Khung truyền quy định số bit trong mỗi lần truyền, các bit thông báo như start, stop, các bit kiểm tra như parity, và số bit trong một data

Bit Start: Là bit bắt đầu trong khung truyền Bit này nhằm mục đích báo cho thiết bị nhận biết quá trình truyền bắt đầu Trên AVR bit Start có trạng thái là 0 Data: Dữ liệu cần truyền data không nhất thiết phải 8 bit có thể là 5, 6, 7, 8, 9 Trong UART bit LSB được truyền đi trước, bit MSB được truyền đi sau

Parity bit: Là bit kiểm tra dữ liệu Có 2 loại parity: chẵn (even parity), lẻ (old parity) Parity chẵn là bit parity thêm vào để tổng số 1 trong data + parity = chẵn Parity lẻ là bit parity thêm vào để tổng số 1 trong data + parity = lẻ Bit parity là không bắt buộc nên có thể dùng hoặc không

Trang 36

2.7.2 Các chức năng chính của Blynk

Các chức năng của Blynk:

● Cung cấp API & giao diện người dùng tương tự cho tất cả các thiết bị và phần cứng được hỗ trợ

● Kết nối với server bằng cách sử dụng: Wifi, Bluetooth, Ethernet, USB(serial), GSM…

● Các tiện ích trên giao diện được nhà phát hành cung cấp dễ sử dụng

● Thao tác kéo thả trực tiếp giao diện mà không cần viết mã

● Dễ dàng tích hợp và thêm chức năng mới bằng cách sử dụng các cổng kết nối ảo được tích hợp trên Blynk app

● Theo dõi lịch sử dữ liệu

● Thông tin liên lạc từ thiết bị đến thiết bị bằng Widget

● Gửi email, tweet, thông báo realtime,…

Trang 37

2.7.3 Nguyên lý hoạt động của Blynk

Library Blynk – hỗ trợ cho hầu hết tất cả các nền tảng phần cứng phổ biến - cho phép giao tiếp với máy chủ và xử lý tất cả các lệnh đến và đi

Ví dụ hoạt động: giả sử có nút nhấn kết nối với Blynk, mỗi khi nhấn một nút trong ứng dụng Blynk, yêu cầu sẽ chuyển đến server của Blynk, server sẽ kết nối đến phần cứng thông qua library Tương tự thiết bị phần cứng sẽ truyền dữ liệu ngược lại đến server

Hình 2.20: Sơ đồ kết nối Blynk

Trang 38

2.8 XÂY DỰNG WEB SERVER

2.8.1 Ngôn ngữ HTML

a Giới thiệu

Ngôn ngữ HTML (HyperText Markup Language – ngôn ngữ siêu văn bản) là một trong các loại ngôn ngữ được sử dụng trong lập trình web Khi truy cập một trang web cụ thể là click vào các đường link, sẽ được dẫn tới nhiều trang khác nhau, các trang này được gọi là một tài liệu HTML (tập tin HTML)

Một trang HTML như vậy được cấu thành bởi nhiều phần tử HTML nhỏ và được quy định bằng các thẻ tag Có thể phân biệt một trang web được viết bằng ngôn ngữ HTML hay PHP thông qua đường link của nó Ở cuối các trang HTML thường hay có đuôi là HTML hoặc HTM

HTML là ngôn ngữ lập trình web được đánh giá là đơn giản Mọi trang web, mọi trình duyệt web đều có thể hiển thị tốt ngôn ngữ HTML Hiện nay, phiên bản mới nhất của HTML là HTML 5 với nhiều tính năng và chất lượng hơn so với các phiên bản cũ

b Vai trò

Là một loại ngôn ngữ đánh dấu siêu văn bản, giúp cấu thành các cấu trúc cơ bản trên một website (chia khung sườn, bố cục các thành phần trang web) và góp phần hỗ trợ khai báo các tập tin kĩ thuật số như video, nhạc, hình ảnh

Để xây dựng được một website hoàn chỉnh, trên bất kỳ nền tảng nào khác đều cũng phải cần sự hỗ trợ của HTML, dù ít hay nhiều

c Ưu và nhược điểm

Bất kể thử gì cũng đều có ưu và nhược điểm của riêng nó

Ưu điểm:

 Ngôn ngữ được sử dụng rộng lớn, có nguồn tài nguyên hỗ trợ và cộng đồng

sử dụng rộng lớn

 Sử dụng mượt trên mọi loại trình duyệt

 Dễ dàng tích hợp các ngôn ngữ backend khác như PHP và Node.js

 Mã nguồn mở và hoàn toàn miễn phí

Khuyết điểm:

Trang 39

 Dùng chủ yếu cho web tĩnh Đối với các tính năng động, cần sử dụng JavaScript hoặc ngôn ngữ backend bên thứ 3 như PHP

 Một số trình duyệt chậm hỗ trợ tính năng mới

 Khó kiểm soát logs của trình duyệt

d Cấu trúc

Để hoàn thiện một file HTML, cần sử dụng thẻ <html> để bắt đầu và kết thúc bằng thẻ </html> Bên trong một file gồm có 2 phần cơ bản:

 Phần tiêu đề: bắt đầu bằng thẻ <head> và kết thúc bởi thẻ </head> Phần này

chưa tiêu đề được hiển thị trên thanh điều hướng của trang web Tiêu đề nằm trong title, bắt đầu bằng thẻ <title> và kết thúc bằng thẻ </title> Đây là phần rất quan trọng vì nắm vai trò trong việc tìm kiếm thông tin, nói cách khác chính

là từ khóa cho công cụ tìm kiếm

 Phần thân: nằm sau phần tiêu đề Bao gồm văn bản, hình ảnh, video và các

nội dung khác muốn hiển thị trên trang web Bắt đầu bằng thẻ <body> và kết thúc bằng thẻ </body>

 Thẻ khối <span>, <div>, <p>

Có những trường hợp muốn chia văn bản trong một trang web thành những khối thông tin logic khi đó phần tử div và span được sử dụng để nhóm nội dung lại với nhau Thẻ div rất thường được sử dụng trong thiết kế website layout

dùng để định nghĩa nội dung mức khối (block-level)

Trang 40

 Phần tử p định nghĩa một đoạn văn bản

 Chèn ảnh

Thẻ <img> dùng để chèn hình ảnh vào trong HTML Cũng có thể đặt thẻ

<img> tại vị trí mà hình ảnh được hiển thị Thẻ <img> không có nội dung, nó hiển thị nội dung bằng cách xác định thuộc tính src Cú pháp là:

<img src = “url”>

Trong đó src (source) là thuộc tính và giá trị là một url, chỉ vị trí chính xác của

file ảnh

Thuộc tính align của thẻ <img> có thể được sử dụng để điều chỉnh canh lề

của ảnh với văn bản xung quanh

<img align = position src=”PICTURE.GIF”>

Trong đó, vị trí của ảnh có thể là trên (top), dưới (bottom), ở giữa (middle), trái (left) hoặc phải (right)

Nếu muốn dùng hàng đầu tiên làm hàng tiêu đề (chữ được tô đậm và đặt ở

giữa), thì thay vì dùng cặp thẻ <td></td> đổi lại dùng cặp thẻ <th></th>

 Thẻ liên kết

Thẻ <a> dùng để tạo liên kết với một địa chỉ url Cấu trúc như sau:

<a href = “ http://www.hcmute.edu.vn”> HCMUTE </a>

Ngày đăng: 28/11/2021, 16:31

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Trương Ngọc Anh (2013), “Giáo trình vi xử lý”, Nhà xuất bản ĐHQG Tp. HCM, 323 trang Sách, tạp chí
Tiêu đề: Giáo trình vi xử lý”, "Nhà xuất bản ĐHQG Tp. HCM
Tác giả: Trương Ngọc Anh
Nhà XB: Nhà xuất bản ĐHQG Tp. HCM"
Năm: 2013
[2] Nguyễn Việt Hùng (2007), “Giáo trình kỹ thuật số”, Nhà xuất bản ĐHQG Tp. HCM, 192 trang Sách, tạp chí
Tiêu đề: Giáo trình kỹ thuật số”, Nhà xuất bản ĐHQG "Tp. HCM
Tác giả: Nguyễn Việt Hùng
Nhà XB: Nhà xuất bản ĐHQG "Tp. HCM"
Năm: 2007
[3] Trần Thu Hà (2013), “Giáo trình điện tử cơ bản”, Nhà xuất bản ĐHQG Tp. HCM, 642 trang Sách, tạp chí
Tiêu đề: Giáo trình điện tử cơ bản”, Nhà xuất bản ĐHQG "Tp. HCM
Tác giả: Trần Thu Hà
Nhà XB: Nhà xuất bản ĐHQG "Tp. HCM"
Năm: 2013
[4] Nguyễn Thị Lưỡng (2013), “Giáo trình điện tử cơ bản”, Nhà xuất bản ĐHQG Tp. HCM, 642 trang Sách, tạp chí
Tiêu đề: Giáo trình điện tử cơ bản”, Nhà xuất bản ĐHQG "Tp. HCM
Tác giả: Nguyễn Thị Lưỡng
Nhà XB: Nhà xuất bản ĐHQG "Tp. HCM"
Năm: 2013
[5] Trương Thị Bích Ngà (2013), “Giáo trình điện tử cơ bản”, Nhà xuất bản ĐHQG Tp. HCM, 642 trang Sách, tạp chí
Tiêu đề: Giáo trình điện tử cơ bản”, Nhà xuất bản ĐHQG "Tp. HCM
Tác giả: Trương Thị Bích Ngà
Nhà XB: Nhà xuất bản ĐHQG "Tp. HCM"
Năm: 2013
[6] Nguyễn Đình Phú (2013), “Giáo trình vi xử lý”, Nhà xuất bản ĐHQG Tp. HCM, 323 trang Sách, tạp chí
Tiêu đề: Giáo trình vi xử lý”, Nhà xuất bản ĐHQG T"p. HCM
Tác giả: Nguyễn Đình Phú
Nhà XB: Nhà xuất bản ĐHQG T"p. HCM"
Năm: 2013
[7] Hà A Thồi (2007), “Giáo trình kỹ thuật số”, Nhà xuất bản ĐHQG Tp. HCM, 192 trang.Tiếng Anh Sách, tạp chí
Tiêu đề: Giáo trình kỹ thuật số”, Nhà xuất bản ĐHQG "Tp. "HCM
Tác giả: Hà A Thồi
Nhà XB: Nhà xuất bản ĐHQG "Tp. "HCM"
Năm: 2007
[8] Brian Benchoff (2014), “The ESP8266 WiFI Module”, Hackaday magazine Sách, tạp chí
Tiêu đề: The ESP8266 WiFI Module
Tác giả: Brian Benchoff
Năm: 2014
[9] David Kushner (2011), “The Making of Arduino”, IEEE Spectrum magazine Sách, tạp chí
Tiêu đề: The Making of Arduino
Tác giả: David Kushner
Năm: 2011
[10] Ivan Grokhotkov (2017), “ESP8266 Arduino Core Documentation”, Arduino, 79 Pages Sách, tạp chí
Tiêu đề: ESP8266 Arduino Core Documentation
Tác giả: Ivan Grokhotkov
Năm: 2017
[11] Datasheet DHT11, ESP8266 [12] Datasheet Arduino Wemos D1 [13] Datasheet Soil Moisture Sensor [14] Datasheet ESP8266 Khác

HÌNH ẢNH LIÊN QUAN

Bảng 2.1: Thông số kỹ thuật ESP8266 - Thiết kế và thi công hệ thống giám sát nhiều vườn
Bảng 2.1 Thông số kỹ thuật ESP8266 (Trang 22)
Bảng 2.2: Sơ đồ chân của ESP8266 - Thiết kế và thi công hệ thống giám sát nhiều vườn
Bảng 2.2 Sơ đồ chân của ESP8266 (Trang 23)
Hình 2.5: Wi-Fi - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 2.5 Wi-Fi (Trang 27)
Hình 2.16: Tín hiệu Reset và Presence - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 2.16 Tín hiệu Reset và Presence (Trang 34)
Hình 2.18: Truyền dữ liệu UART - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 2.18 Truyền dữ liệu UART (Trang 35)
Hình 2.20: Sơ đồ kết nối Blynk - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 2.20 Sơ đồ kết nối Blynk (Trang 37)
Hình 2.22: Sơ đồ khối của bộ điều khiển LCD - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 2.22 Sơ đồ khối của bộ điều khiển LCD (Trang 43)
Bảng 2.3: Các chân của LCD 16x2 - Thiết kế và thi công hệ thống giám sát nhiều vườn
Bảng 2.3 Các chân của LCD 16x2 (Trang 43)
Hình 3.1: Sơ đồ khối toàn mạch - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 3.1 Sơ đồ khối toàn mạch (Trang 51)
Hình 3.2: Sơ đồ kết nối Wemos D1 - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 3.2 Sơ đồ kết nối Wemos D1 (Trang 53)
Hình 3.7: Sơ đồ khối công suất - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 3.7 Sơ đồ khối công suất (Trang 57)
 Hàn các linh kiện như nút nhấn, relay, đèn led ,… vào mạch in, vì mô hình - Thiết kế và thi công hệ thống giám sát nhiều vườn
n các linh kiện như nút nhấn, relay, đèn led ,… vào mạch in, vì mô hình (Trang 62)
Hình 4.1: Mặt sau của mạch in sau khi hàn linh kiện - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 4.1 Mặt sau của mạch in sau khi hàn linh kiện (Trang 62)
Hình 4.4: Gắn linh kiện và test mạch - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 4.4 Gắn linh kiện và test mạch (Trang 63)
Hình 4.3: Mạch in gắn vào mica - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 4.3 Mạch in gắn vào mica (Trang 63)
 Sau khi ước lượng, tính toán thì mô hình sẽ có độ rộng là 50cmx50cm, chiều - Thiết kế và thi công hệ thống giám sát nhiều vườn
au khi ước lượng, tính toán thì mô hình sẽ có độ rộng là 50cmx50cm, chiều (Trang 64)
Hình 4.12: Lưu đồ chương trình con điều khiển tự động - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 4.12 Lưu đồ chương trình con điều khiển tự động (Trang 69)
Hình 4.14: Giao diện phần mềm Arduino 1 - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 4.14 Giao diện phần mềm Arduino 1 (Trang 71)
Hình 4.15: Giao diện phần mềm Arduino 2 - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 4.15 Giao diện phần mềm Arduino 2 (Trang 72)
Hình 4.1 9: Giao diện sau khi vào Blynk - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 4.1 9: Giao diện sau khi vào Blynk (Trang 75)
Hình 4.20: Giao diện Blynk sau khi nhấn “New Project” - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 4.20 Giao diện Blynk sau khi nhấn “New Project” (Trang 76)
Hình 4.2 1: Giao diện sau khi nhấn “Create Project” và giao diện kéo thả linh kiện - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 4.2 1: Giao diện sau khi nhấn “Create Project” và giao diện kéo thả linh kiện (Trang 77)
Hình 4.2 2: Giao diện “Project Settings” của Blynk - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 4.2 2: Giao diện “Project Settings” của Blynk (Trang 78)
Hình 4.23: Kết nối Wi-Fi do Wemos D1 phát - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 4.23 Kết nối Wi-Fi do Wemos D1 phát (Trang 79)
Hình 4.26: Giao diện trên điện thoại của app Blynk - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 4.26 Giao diện trên điện thoại của app Blynk (Trang 81)
Hình 4.27: Lựa chọn Widget Hình 4.28: Giao diện vườn - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 4.27 Lựa chọn Widget Hình 4.28: Giao diện vườn (Trang 82)
Hình 5.3: 2 mạch điều khiển được gắn lên mô hình - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 5.3 2 mạch điều khiển được gắn lên mô hình (Trang 88)
Hình 5.4: Nguồn tổ ong và máy bơm được gắn lên mô hình - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 5.4 Nguồn tổ ong và máy bơm được gắn lên mô hình (Trang 89)
Hình 5.7: Biểu đồ vòng cung - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 5.7 Biểu đồ vòng cung (Trang 91)
Hình 5.8: Biểu đồ đường - Thiết kế và thi công hệ thống giám sát nhiều vườn
Hình 5.8 Biểu đồ đường (Trang 91)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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