2. Tổng quan phƣơng pháp điều khiển nhà thơng minh hiện có trên thế giớ
3.6 Module Wifi ESP8266
ESP8266 là một chip tích hợp cao - System on Chip (SoC), có khả năng xử lý và lưu trữ tốt, cung cấp khả năng vượt trội để trang bị thêm tính năng wifi cho các hệ thống khác hoặc đóng vai trị như một giải pháp độc lập. ESP8266 cung cấp khả năng kết nối mạng wifi đầy đủ và khép kín, chúng ta có thể sử dụng nó để tạo một web server đơn giản hoặc sử dụng như một điểm truy cập. ESP8266 có nhiều phiên
bản khác nhau nên cấu trúc I/O, bộ nhớ cũng khác nhau. Ví dụ: trong hệ thống nhà thông minh, module wifi ESP8266 được sử dụng để làm trung gian trong việc truyềnnhận dữ liệu giữa Server và Arduino cho nên khơng cần sử dụng phiên bản có nhiều chân I/O và bộ nhớ lớn. Vì vậy, nhóm chúng em đã sử dụng ESP8266-v3 để đáp ứng yêu cầu này.
3.6.1 Thông số kỹ thuật
Hình 3-12 Module Esp8266 v3
Hình (3-14) minh họa về hình dáng của một module ESP8266-03 với các thông số kỹ thuật như sau:
Wifi 2.4 GHz, hỗ trợ WPA/WPA2 • Chuẩn điện áp hoạt động 3.3V
• Chuẩn giao tiếp nối tiếp UART với tốc độ Baud lên đến 115200
• Có 3 chế độ hoạt động: Client, Access Point, Both Client and Access Point • Hỗ trợ các chuẩn bảo mật như: OPEN, WEP, WPA_PSK, WPA2_PSK,
WPA_WPA2_PSK
• Hỗ trợ cả 2 giao tiếp TCP và UDP
• SDIO 1.1 / 2.0, SPI, UART
3.6.2 Sơ đồ chân và chức năng các chân
Hình 3-13 Sơ đồ chân của ESP8266 v3
Module ESP8266 v3 gồm có 8 chân như hình 3-15 và chức năng như sau: • URXD(RX): dùng để nhận tín hiệu trong giao tiếp UART với Arduino. • UTXD(TX): dùng để truyền tín hiệu trong giao tiếp UART với Arduino. • VCC: đầu vào 3.3V.
GPIO 0: kéo xuống thấp cho chế độ upload chương trình. • RST: chân reset cứng của module, kéo xuống mass để reset.
• GPIO 2: thường được dùng như một cổng TX trong giao tiếp UART để kiểm tra lỗi
• CH_PD: kích hoạt chip, sử dụng cho Flash Boot và updating lại module, nối với mức cao.
• GND: nối với mass.
3.6.3 Phần mềm lập trình
Vì ESP8266-01 có khả năng lập trình và hoạt động độc lập nên ta cần phải sử dụng phần mềm Arduino IDE để lập trình chương trình cho ESP8266. Tuy nhiên, để có thể sử dụng Arduino IDE lập trình cho ESP8266 chúng ta cần phải cài đặt các gói
thư viện hỗ trợ giao tiếp với ESP thì mới có thể sử dụng Arduino IDE. Nếu khơng thì chúng ta cần phải sử dụng các phần mềm chuyên dụng để lập trình ESP module như ArduBlock ESP, ESPlorer…