LỜI MỞ ĐẦU Mỗi giai đoạn phát triển của lịch sử thế giới đều gắn liền với những cuộc cách mạng về khoa học kỹ thuật . Và ngày nay , cuộc cách mạng Internet of Things đã tạo nên những thay đổi đáng kể cuộc sống của chúng ta ở hiện tại và trong tương lai . Với sự phát triển của Internet , Smartphone và đặc biệt là các thiết bị cảm biến , Internet of Things ( IOT ) đang trở thành xu hướng mới của thế giới . IOT là một mạng lưới các vật thể được gắn các cảm biến hoặc hệ thống điện tử đặc biệt cho phép chúng kết nối với nhau để thu thập và trao đổi dữ liệu . Các vật thể trong mạng lưới này có thể được kết nối với mạng Internet cho mục đích điều khiển và giám sát từ xa . Việc chúng ta vào nhà , mở cửa , đèn sẽ tự động sáng ở chỗ ta đang đứng , điều hòa sẽ tự động điều chỉnh nhiệt độ , nhạc sẽ tự động bật lên , ... Những điều chỉ có trong phim khoa học viễn tưởng mà chúng ta thường xem , đang dần trở thành hiện thực với công nghệ IOT . Trong cuộc sống thường nhật , chúng ta đã quá quen thuộc với việc bật tắt các thiết bị bằng công tắc thông thường . Hiện nay , chúng ta bị chi phối bởi nhiều thứ . Việc chúng ta ra khỏi nhà mà quên tắt đèn , điều hòa là chuyện không hiếm gặp . Với công tắc thông thường , khi chúng ta rời khỏi nhà mà vẫn quên tắt các thiết bị trong nhà . Để tắt các thiết bị thì chỉ cách quay trở lại về nhà rồi tắt chúng . Điều này đôi khi gây ra cho chúngta nhiều phiền toái . Để giải quyết vấn đề trên , em đã lựa chọn đề tài : “ THIẾT KẾ MÔ HÌNH NHÀ THÔNG MINH SỬ DỤNG ESP8266” , ứng dụng công nghệ IOT vào đời sống . Giúp chúng ta có thể bật tắt các thiết bị trong nhà ở mọi lúc mọi nơi . Đây là một đề tài không mới , nhiều anh chị khóa trước cũng đã thực hiện . Nhưng vẫn còn nhiều điểm cần cải thiện đó là tốc độ đáp ứng khi điều khiển thiết bị và giao diện điều khiển thiết bị . Vì vậy đề tài của em trọng tâm sẽ thực hiện việc cải thiện tốc độ điều khiển thiết bị lên mức tối đa có thể , xây dựng giao diện điều khiển thiết bị có tính thẩm mỹ và thân thiện với người dùng .
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KỸ THUẬT ĐIỆN – ĐIỆN TỬ 1
***
BÁO CÁO MÔN ĐỒ ÁN HỆ THỐNG NHÚNG
ĐỀ TÀI HỆ THỐNG IOT
“Xây dựng hệ thống điều khiển nhà thông minh sử dụng ESP8266”
Giảng Viên Hướng Dẫn Nguyễn Ngọc Minh
Hà Nội
Trang 3MỤC LỤC
Mục lục
LỜI MỞ ĐẦU 5
NỘI DUNG ĐỀ TÀI: 6
PHẦN I CÁC LINH KIỆN ĐƯỢC SỬ DỤNG 6
1.1 Cảm biến đo nhiệt đọ độ ẩm ( DHT11) 6
1.2 Đèn LED 7
Đèn LED là gì ? 7
Các loại LED thường gặp 8
1 LED thường (3mm hoặc 5mm) 8
2 LED siêu sáng (3mm và 5mm) 8
3 LED dán (SMD) 9
3 LED RGB (5mm) 10
Những ứng dụng về LED 10
1.3 Giới thiệu về ESP8266 NodeMCU 10
Tính năng của NODEMCU ESP8266 13
Cấu hình chân / Sơ đồ chân 13
Thông số kỹ thuật mô-đun Wi-Fi ESP8266 13
Sơ đồ mạch / Cách sử dụng? 14
Nơi sử dụng / Ứng dụng của Mô-đun Wi-Fi ESP8266 15
PHẦN II SƠ ĐỒ KHỐI VÀ NGUYÊN LÝ HOẠT ĐỘNG 18
2.1 Sơ đồ khối: 18
2.2 Nguyên lý hoạt động từng khối của mạch 18
Khối nguồn: 19
Khối ngõ ra công suất: 19
Khối cảm biến: 19
• Giải thích: 21
Phần 3: Cài đặt và chuẩn bị 21
* Arduino IDE 21
Cài đặt thư viện Arduino 23
3.1 Các file code 30
Phần 4 : Tổng kết và sản phẩm 36
Trang 44.1 : Sản phẩm 36
4.2 Ưu nhược điểm và hướng phát triển: 37
4.2.1 Ưu điểm 37
4.2.2 Khuyết điểm 37
4.2.3 HƯỚNG PHÁT TRIỂN 37
Lời Cảm Ơn 39
Trang 5LỜI MỞ ĐẦU
Mỗi giai đoạn phát triển của lịch sử thế giới đều gắn liền với những cuộc cách mạng vềkhoa học kỹ thuật Và ngày nay , cuộc cách mạng Internet of Things đã tạo nên những thay đổiđáng kể cuộc sống của chúng ta ở hiện tại và trong tương lai Với sự phát triển của Internet ,Smartphone và đặc biệt là các thiết bị cảm biến , Internet of Things ( IOT ) đang trở thành xuhướng mới của thế giới IOT là một mạng lưới các vật thể được gắn các cảm biến hoặc hệthống điện tử đặc biệt cho phép chúng kết nối với nhau để thu thập và trao đổi dữ liệu Các vậtthể trong mạng lưới này có thể được kết nối với mạng Internet cho mục đích điều khiển và giámsát từ xa Việc chúng ta vào nhà , mở cửa , đèn sẽ tự động sáng ở chỗ ta đang đứng , điều hòa
sẽ tự động điều chỉnh nhiệt độ , nhạc sẽ tự động bật lên , Những điều chỉ có trong phim khoahọc viễn tưởng mà chúng ta thường xem , đang dần trở thành hiện thực với công nghệ IOT
Trong cuộc sống thường nhật , chúng ta đã quá quen thuộc với việc bật tắt các thiết bịbằng công tắc thông thường Hiện nay , chúng ta bị chi phối bởi nhiều thứ Việc chúng ta rakhỏi nhà mà quên tắt đèn , điều hòa là chuyện không hiếm gặp Với công tắc thông thường ,khi chúng ta rời khỏi nhà mà vẫn quên tắt các thiết bị trong nhà Để tắt các thiết bị thì chỉ cáchquay trở lại về nhà rồi tắt chúng Điều này đôi khi gây ra cho chúngta nhiều phiền toái
Để giải quyết vấn đề trên , em đã lựa chọn đề tài : “ THIẾT KẾ MÔ HÌNH NHÀTHÔNG MINH SỬ DỤNG ESP8266” , ứng dụng công nghệ IOT vào đời sống Giúp chúng ta
có thể bật tắt các thiết bị trong nhà ở mọi lúc mọi nơi Đây là một đề tài không mới , nhiều anhchị khóa trước cũng đã thực hiện Nhưng vẫn còn nhiều điểm cần cải thiện đó là tốc độ đápứng khi điều khiển thiết bị và giao diện điều khiển thiết bị Vì vậy đề tài của em trọng tâm sẽthực hiện việc cải thiện tốc độ điều khiển thiết bị lên mức tối đa có thể , xây dựng giao diệnđiều khiển thiết bị có tính thẩm mỹ và thân thiện với người dùng
Trang 6NỘI DUNG ĐỀ TÀI:
- Thiết kế xây dựng mạch điện đo nhiệt độ và độ ẩm hiển thị và giao tiếp qua web , sửdụng KIT ESP8266, kết nối và hiển thị kết quả trên máy tính qua WIFI
Đặt Vấn Đề:
Ngày nay, công nghệ kết nối đầu tiên cần nhắc đến hiển nhiên là Wifi –
công nghệ kết nối không dây phổ biến nhất hiện nay Cũng vì tính phổ biến
của dạng kết nối này mà cái tên Wifi thường bị lạm dụng để chỉ kết nối
không dây nói chung Lí do mà kết nối Wifi được ưa chuộng như vậy đơn
giản là vì khả năng hoạt động hiệu quả trong phạm vi vài chục đến vài trăm
mét của các mạng WLAN Và trong thời đại công nghiệp hóa hiện đại hóa
hiện nay, việc phát minh và chế tạo ra các thiết bị thông minh có khả năng
điều khiển từ xa đang và sẽ rất được quan tâm và rất hữu ích cho cuộc sống
hàng ngày Vì mục tiêu công nghệ hiện đại hóa ngày càng phát triển, em đã
quyết định làm một đồ án “Giám sát nhiệt độ độ ẩm và điều khiển thiết bị
điện qua internet” Đề tài của em ngoài việc điều khiển thiết bị độc lập thì
còn giám sát nhiệt độ trong ngôi nhà Khi dự án hoàn thành chúng ta có thể
điều khiển các thiết bị điện trong nhà… bằng cách tương tác qua các nút
nhấn để hiển thị trạng thái hoạt động trên điện thoại và máy tính Như vậy,
dù chúng ta ở bất cứ nơi nào có internet đều có thể giám sát và điều khiển
được các thiết bị đã kết nối với module điều khiển Khi dự án thành công và
được áp dụng rộng rãi thì sẽ rất tiện lợi cho cuộc sống thường ngày, giúp cho
đất nước ngày càng phát triển.
PHẦN I CÁC LINH KIỆN ĐƯỢC SỬ DỤNG
1.1 Cảm biến đo nhiệt đọ độ ẩm ( DHT11)
DHT11 Là cảm biến nhiệt độ, độ ẩm rất thông dụng hiện nay vì chi phí rẻ và rất dễ lấy
dữ liệu thông qua giao tiếp 1-wire ( giao tiếp digital 1-wire truyền dữ liệu duy nhất) Cảm biến được tích hợp bộ tiền xử lý tín hiệu giúp dữ liệu nhận về được chính xác mà không cần phải qua bất kỳ tính toán nào.
Đặc điểm:
o Điện áp hoạt động : 3V - 5V (DC)
Trang 7o Dải độ ẩm hoạt động : 20% - 90% RH, sai số ±5%RH
o Dải nhiệt độ hoạt động : 0°C ~ 50°C, sai số ±2°C
o Tần số lấy mẫu tối đa: 1 Hz
o Khoảng cách truyển tối đa: 20m
Sơ đồ chân Cảm biến DHT11 gồm 2 chân cấp nguồn, và 1 chân tín hiệu Hiện nay, thông dụng ngoài thị trường có hai loại đóng gói cho DHT11: 3 chân và 4 chân Xem các hình dưới
Nhận xét: Cảm biến nhiệt độ, độ ẩm DHT11 với giá thành rẻ, dễ sử dụng, thích hợp sử dụng trong các ứng dụng yêu cầu độ chính xác không cao, môi trường không khắc nghiệt.
Trang 8Các loại LED thường gặp
1 LED thường (3mm hoặc 5mm)
Là loại LED có màu của lớp vỏ bên ngoài trùng với ánh sáng nó phát ra, chẳng hạn như sau:
Loại LED này khá to và sáng khá yếu, vì vậy thường được dùng trong các mạch tiết kiệm năng
lượng hoặc làm LED báo trạng thái Bạn có thấy dòng ghi chú 3mm hoặc 5mm, đó là đường
kính của LED đấy Mình không thích dùng loại này vì đơn giản là nó sáng yếu quá ra ngoàiđường mình không thấy gì hết! Giá của LED khi mua lẻ là khoảng 3-5k/10 con (tùy vào màu)
2 LED siêu sáng (3mm và 5mm)
Thực chất LED siêu sáng cũng không khác gì nhiều so với LED thường, cũng chung kích cỡ,nhưng có điều nó sáng hơn và lớp vỏ bên ngoài là trong suốt Loại này đắt gần gấp đôi LEDthương, nhưng được cái sáng rõ, sáng đẹp và "trong suốt" Đây là một số ví dụ về LED siêusáng, bạn thấy nó có lớp vỏ không màu nhưng phát ra ánh sáng khác nhau
Trang 93 LED dán (SMD)
LED dán nó cũng có 2 cực âm dương Loại này cũng có nhiều kiểu kích thước, nhưng đặc điểmchung của nó là cực kì nhỏ và hàn trên mặt đồng của mạch Vì vậy, loại LED này chỉ dùng chocác mạch đồng 2 mặt hoặc các loại mạch in dùng loại này vì chỉ nên dùng cho công nghiệpmạch in, và nếu kĩ năng hàn của bạn không cao thì tốt nhất không nên đụng đến các loại LEDdán, vì nó rất nhỏ mà tốn công sức để hàn
Trang 103 LED RGB (5mm)
Nó chính là loại LED siêu sáng thôi nhưng lại có đến 3 màu trong một con LED duy nhất (R = red = đỏ; G = Green = xanh lá; B = Blue = Xanh dương) Điều đó có nghĩa là bạn có thể làm con LED sáng với mọi màu mà bạn thích Tuy nhiên, nó hơi phức tạp một chút, nó sẽ có 4 chân, trong đó có một chân dương chung và 3 chân RGB, bạn xem hình sau để xác định các chân của LED RGB
Bạn sẽ phải dùng xung PWM để điều khiển LED GRB sáng nhiều màu theo ý thích LED GRBcũng có loại LED dán SMD (ứng dụng trong TV LED) Mình không nghiên cứu sâu về LEDRGB vì nó khá khó cho newbie Mình sẽ dành thời gian cho LED RGB hơn ở các bài sau.Những ứng dụng về LED
Ứng dụng trong chiếu sáng và trang trí nhà ở
Ứng dụng của đèn led trong công nghiệp Chiếu sáng đường đi với đèn led Giúp chiếu sáng an ninh khu vực kho bãi, cảng tàu
Ứng dụng của đèn led trong nông nghiệp Bổ sung ánh sáng cho cây trồng
Ứng dụng đèn Led trong y học
1.3 Giới thiệu về ESP8266 NodeMCU
Trang 11ESP8266 là dòng chip tích hợp Wi-Fi 2.4Ghz có thể lập trình được, rẻ tiền
được sản xuất bởi một công ty bán dẫn Trung Quốc: Espressif Systems Được
phát hành đầu tiên vào tháng 8 năm 2014, đóng gói đưa ra thị trường dạng
Module ESP-01 Có khả năng kết nối Internet qua mạng Wi-Fi một cách nhanh
chóng và sử dụng rất ít linh kiện đi kèm Với giá cả có thể nói là rất rẻ so với
tính năng và khả năng ESP8266 có thể làm được ESP8266 có một cộng đồng
các nhà phát triển trên thế giới rất lớn, cung cấp nhiều Module lập trình mã mở
giúp nhiều người có thể tiếp cận và xây dựng ứng dụng rất nhanh Hiện nay tất
cả các dòng chip ESP8266 trên thị trường đều mang nhãn ESP8266EX, là phiên
bản nâng cấp của ESP8266, đã có hơn 14 phiên bản ESP ra đời, trong đó phổ
biến nhất là ESP-12.
Hình ảnh thực tế của Chip NODEMCU ESP8266
Module ESP8266 có các chân dùng để cấp nguồn và thực hiện kết nối.
Chức năng của các chân như sau:
+ VCC: 3.3V lên đến 300Ma
+ GND: Chân Nối đất
+ Tx: Chân Tx của giao thức UART, kết nối đến chân Rx của vi điều khiển.
+ Rx: Chân Rx của giao thức UART, kết nối đến chân Tx của vi điều khiển.
+ RST: chân reset, kéo xuống mass để reset.
+ 10 chân GPIO từ D0 – D8, có chức năng PWM, IIC, giao tiếp SPI, 1-Wire
và ADC trên chân A0
+ Kết nối mạng wifi (có thể là sử dụng như điểm truy
cập và/hoặc trạm máy chủ lưu trữ một, máy chủ web), kết
Trang 12nối internet để lấy hoặc tải lên dữ liệu.
Hình 1.7 Hình ảnh sơ đồ chân kết nối ESP8266
Module ESP-12 kết hợp với firmware ESP8266 trên Arduino và thiết kế phần
cứng giao tiếp tiêu chuẩn đã tạo nên NodeMCU, loại Kit phát triển ESP8266
phổ biến nhất trong thời điểm hiện tại Với cách sử dụng, kết nối dễ dàng, có thể
lập trình, nạp chương trình trực tiếp trên phần mềm Arduino, đồng thời tương
tích với các bộ thư viện Arduino sẵn có.
Trang 13Tính năng của NODEMCU ESP8266
➢ Thông số kĩ thuật:
• IC chính: ESP8266 Wifi SoC.
• Phiên bả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 báo trạng thái, nút Reset, Flash.
• Tương thích hoàn toàn với trình biên dịch Arduino.
• Kích thước: 25 x 50 mm
1.4 Modun wifi 8266
Cấu hình chân / Sơ đồ chân
Sơ đồ chân / cấu hình chân mô-đun Wi-Fi ESP8266 được hiển thị trong hình bên dưới
Mô-đun Wi-Fi ESP8266-01 chạy ở hai chế độ
Cấu hình chân của ESP8266
Chế độ Flash: Khi các chân GPIO-0 và GPIO-1 hoạt động ở mức cao, thì mô-đun sẽ chạy
chương trình, chương trình được tải lên đó
Chế độ UART: Khi GPIO-0 hoạt động ở mức thấp và GPIO-1 hoạt động ở mức cao, thì
mô-đun hoạt động ở chế độ lập trình với sự trợ giúp của giao tiếp nối tiếp hoặc bảng Arduino
Thông số kỹ thuật mô-đun Wi-Fi ESP8266
Thông số kỹ thuật hoặc tính năng của mô-đun Wi-Fi ESP8266 được đưa ra bên dưới.
Đây là một mô-đun Wi-Fi mạnh mẽ có sẵn với kích thước nhỏ gọn với mức giá rất thấp
Nó dựa trên lõi vi xử lý 32-bit L106 RISC và chạy ở 80 MHz
Nó chỉ yêu cầu nguồn điện 3,3 Volts
Mức tiêu thụ hiện tại là 100 m Amps
Điện áp Đầu vào / Đầu ra (I / O) tối đa là 3,6 Volts
Nó tiêu thụ dòng điện 100 mA
Trang 14 Dòng nguồn đầu vào / đầu ra tối đa là 12 mA
Tần số của MCU 32-bit công suất thấp tích hợp là 80 MHz
Kích thước của bộ nhớ flash là 513 kb
Nó được sử dụng như một điểm truy cập hoặc trạm hoặc cả hai
Nó hỗ trợ giấc ngủ sâu dưới 10 microAmps
Nó hỗ trợ giao tiếp nối tiếp để tương thích với một số nền tảng phát triển như Arduino
Nó được lập trình bằng cách sử dụng lệnh AT, Arduino IDE hoặc tập lệnh Lua
Nó là một mô-đun Wi-Fi 2,4 GHz và hỗ trợ xác thực WPA / WPA2, WEP và mạng mở
Nó sử dụng hai giao thức truyền thông nối tiếp như I2C (Mạch tích hợp liên thông) vàSPI (Giao diện ngoại vi nối tiếp)
Nó cung cấp chuyển đổi tương tự sang kỹ thuật số 10 bit
Loại điều chế là PWM (Điều chế độ rộng xung)
UART được bật trên các chân chuyên dụng và chỉ để truyền, nó có thể được bật trênGPIO2
Đây là mô-đun Wi-Fi IEEE 802.11 b / g / n với LNA, bộ khuếch đại công suất, balun,công tắc TR tích hợp và các mạng phù hợp
Chân GPIO - 17
Dung lượng bộ nhớ của RAM hướng dẫn - 32 KB
Kích thước bộ nhớ của bộ nhớ đệm chỉ dẫn RAM - 32 KB
Kích thước của dữ liệu người dùng RAM- 80 KB
Kích thước của RAM dữ liệu hệ thống ETS - 16 KB
Sơ đồ mạch / Cách sử dụng?
Có một số kỹ thuật và IDE có sẵn bằng cách sử dụng mô-đun Wi-Fi ESP8266 Arduino IDE là
kỹ thuật được sử dụng phổ biến nhất Bây giờ, chúng ta hãy tìm hiểu hoạt động của ArduinoIDE bằng cách sử dụng mô-đun Wi-Fi ESP8266 Sơ đồ mạch / cách sử dụng thiết bị ArduinoIDE hoặc FTDI được minh họa trong hình bên dưới
Trang 15Sơ đồ mạch của Mô-đun ESP8266
Nguồn điện cần thiết cho đun ESP8266 chỉ là 3,3 Volts Nếu nó lớn hơn 3,7 Volts, thì đun sẽ bị hỏng và điều này dẫn đến hỏng mạch Do đó, cần phải lập trình mô-đun Wi-Fi ESP-
mô-01 bằng cách sử dụng bảng Arduino hoặc thiết bị FTDI, hỗ trợ nguồn cung cấp 3,3 Volts lậptrình Người dùng nên mua một thiết bị FTDI hoặc một bảng Arduino
Sự cố phổ biến nhất với mô-đun ESP-01 là sự cố cấp nguồn Chân 3,3 Volts trên bảng Arduinođược sử dụng để cấp nguồn cho mô-đun này hoặc đơn giản là chúng ta có thể sử dụng bộ chiatiềm năng Vì vậy, để cung cấp dòng điện tối thiểu 500 mA, bộ điều chỉnh điện áp hỗ trợ 3,3Volts là bắt buộc Bộ điều chỉnh điện áp LM317 thực hiện công việc này rất dễ dàng và hiệuquả
Công tắc lập trình SW2 được nhấn để kết nối chân GPIO-0 với GND (Ground) Đây là chế độlập trình để người dùng tải lên mã Sau khi tải mã lên, công tắc sẽ được phát hành
Nơi sử dụng / Ứng dụng của Mô-đun Wi-Fi ESP8266
Các ứng dụng của mô-đun Wi-Fi ESP8266 được đưa ra bên dưới
Cổng thông tin điểm truy cập
Ghi dữ liệu không dây
Được sử dụng để học các nguyên tắc cơ bản về mạng
Ổ cắm và bóng đèn thông minh
Hệ thống tự động hóa nhà thông minh
1.5. Các chuẩn giao tiếp được sử dụng:
1.5.1 Chuẩn giao tiếp UART:
Trang 16UART là viết tắt của Universal Asynchronous Receiver – Transmitter có
nghĩa là truyền dữ liệu nối tiếp bất đồng bộ Truyền dữ liệu nối tiếp bất đồng
bộ có 1 đường phát dữ liệu và 1 đường nhận dữ liệu, không có tín hiệu xung
clock nên gọi là bất đồng bộ Để truyền được dữ liệu thì cả bên phát và bên
nhận phải tự tạo xung clock có cùng tần số và thường được gọi là tốc độ
baud, ví dụ như 2400 baud, 4800 baud, 9600 baud
2.
Hệ thống truyền dữ liệu bất đồng bộ.
Giao tiếp UART chế độ bất đồng bộ sử dụng một dây kết nối cho mỗi chiều
truyền dữ liệu do đó để quá trình truyền nhận dữ liệu thành công thì việc tuân
thủ các tiêu chuẩn truyền là hết sức quan trọng Sau đây là các khái niệm
quan trọng trong chếđộ truyền thông này
Baud rate (tốc độ Baud): Để việc truyền và nhận bất đồng bộ xảy ra thành
công thì các thiết bị tham gia phải thống nhất với nhau về khoảng thời gian
dành cho 1 bit truyền, hay nói cách khác tốc độ truyền phải được cài đặt như
nhau trước khi truyền nhận, tốc độ này gọi là tốc độ Baud Tốc độ Baud là số
bit truyền trong một giây Ví dụ, nếu tốc độ Baud được đặt là 9600 bit/giây
thì thời gian dành cho một bit truyền là 1/9600~104.167us.
Frame (khung truyền): Do truyền thông nối tiếp mà nhất là nối tiếp bất đồng
bộ rất dễ mất hoặc sai lệch dữ liệu, quá trình truyền thông theo kiểu này phải
tuân theo một số quy cách nhất định Bên cạnh tốc độ Baud, khung truyền là
một yếu tố quan trọng tạo nên sự thành công khi truyền và nhận Khung
truyền bao gồm các quy định về số bit trong mỗi lần truyền, các bit báo hiệu
như bit Start và bit
Trang 17Stop, các bit kiểm tra như Parity, ngoài ra số lượng các bit dữ liệu trong mỗi
lần truyền cũng được quy định bởi khung truyền
Để bắt đầu cho việc truyền dữ liệu bằng UART, một START bit được gửi
đi, sau đó là các bit dữ liệu và kết thúc quá trình truyền là STOP bit
Start bit: Là bit đầu tiên được truyền trong một khung truyền, bit này có chức
năng báo cho thiết bị nhận biết rằng có một gói dữ liệu sắp được truyền tới.
Start bit là bit bắt buộc phải có trong khung truyền.
Data: Data hay dữ liệu cần truyền là thông tin chính mà chúng ta cần gửi và
nhận Dữ liệu cần truyền không nhất thiết phải là gói 8 bit, có thể quy định số
lượng bit của dữ liệu là 5, 6, 7, 8 hoặc 9 Trong truyền thông nối tiếp
USART, bit có ảnh hưởng nhỏ nhất của dữ liệu sẽ được truyền trước và cuối
cùng là bit có ảnh hưởng lớn nhất.
Parity bit: Là bit dùng kiểm tra dữ liệu truyền đúng không (một cách tương
đối) Có 2 loại parity là parity chẵn và parity lẻ Parity chẵn nghĩa là số lượng
bit 1 trong dữ liệu bao gồm bit parity luôn là số chẵn Ngược lại, tổng số
lượng các bit 1 trong parity lẻ luôn là lẻ Ví dụ, nếu dữ liệu của bạn là
10111011 nhị phân, có tất cả 6 bit 1 trong dữ liệu này, nếu parity chẵn được
dùng, bit parity sẽ mang giá trị 0 để đảm bảo tổng các bit 1 là số chẵn (6 bit
Trang 181) Nếu parity lẻ được yêu cầu thì giá trị của parity bit là 1 Parity bit không
phải là bit bắt buộc và vì thế chúng ta có thể loại bit này khỏi khung truyền.
Stop bits: Là một hoặc các bit báo cho thiết bị nhận rằng một gói dữ liệu đã
được gửi xong Sau khi nhận được stop bits, thiết bị nhận sẽ tiến hành kiểm
tra khung truyền để đảm bảo tính chính xác của dữ liệu Stop bits là các bit
bắt buộc xuất hiện trong khung truyền.
Khung truyền phổ biến nhất là (Start bit + 8 bit dữ liệu + stop bit).
PHẦN II SƠ ĐỒ KHỐI VÀ NGUYÊN LÝ HOẠT ĐỘNG
2.1 Sơ đồ khối:
Tóm tắt nguyên lý hoạt động:
ESP8266 sẽ tiến hành kết nối Internet (Wifi), và thiết lập kết nối với Server Đợi khi kết nốithành công Nếu có trao đổi dữ liệu với Server (người dùng tác động vào giao diện ứng dụngAndroid hoặc có tín hiệu từ Server hoặc nút nhấn gửi xuống), thì thiết bị sẽ được điều khiểntheo yêu cầu người dùng
2.2 Nguyên lý hoạt động từng khối của mạch
a, Giới thiệu và nguyên lí hoạt động.
Trung tâm điều khiển hoạt động của toàn bộ hệ thống Nhận tín hiệu từ sever,
Cảm biến DHT11
Broker của MQTT
Esp8266
Trang 19xử lý sau đó chuyển tín hiệu điều khiển đến khối công suất thực thi, tiếp theo dữ
liệu được gửi lên khối Server Khối cảm biến nhiệt độ sử dụng cảm biến DHT11
có khả năng đo cả 2 thông số nhiệt độ và độ ẩm.
Khối nguồn:
Cấp nguồn cho toàn mạch, sử dụng nguồn 5VDC cấp cho khối xử lý trung tâm,
mạch Relay, cảm biến và nguồn 220VAC cho các thiết bị điện.
Khối ngõ ra công suất:
Đóng ngắt các tiếp điểm Relay theo sự điều khiển của ngõ ra vi điều khiển, từ
đó điều khiển các thiết bị điện (220VAC) Đồng thời cách ly giữa mạch công
suất và mạch điều khiển.
Khối cảm biến:
Có chức năng giám sát nhiệt độ và độ ẩm của môi trường để đảm bảo tính an
toàn cho hệ thống.
2.3 Lưu đồ thuật toán:
Dựa vào lưu đồ ta thấy hoạt động của hệ thống hoạt động rõ ràng Khi bắt đầu
quá trình hoạt động thì sẽ thực hiện việc khởi tạo hệ thống Kiểm tra hệ thống có
được thiết lập hay chưa.
Hệ thống sẽ thực hiện việc kiểm tra xem có nhận được tín hiệu điều khiển hay
chưa Nếu có nhận được tín hiệu thì bắt đầu quá trình xử lý và đưa ra để điều
khiển thiết bị được kết nối.