🌱 ESP - Micropython (2) Connect Wifi
Như đã giới thiệu ở bài viết trước, những bài viết sau mình sẽ tập trung vào các ứng dụng wifi thay vì các ứng dụng cơ bản của ESP và Micropython, vì mấy cái cơ bản đã có rất nhiều rồi 😊! Ở bài viết này mình sẽ giới thiệu về cách kết nối ESP8266 với mạng Wifi, sử dụng Micropython.
Về phần setup thì mình đã giới thiệu ở post trước rồi. Post này chỉ tập trung vào viết phần mềm.
Micropython cung cấp thư viện network để kết nối ESP với wifi. Trước khi làm việc với wifi trên ESP, chúng ta cần import thư viện network.
👉 Setup ESP hoạt động ở chế độ Station
Cài đặt ESP ở chế độ Station - Sử dụng method WLAN để setup ESP ở chế độ station hoặc access point.
Sau đó, active ESP để có thể hoạt động bằng method active.
➤ Quét các wifi xung quanh bằng method scan. Giống như khi điện thoại khi bật lên thì nó sẽ quét các wifi xung quanh.
➤ Các wifi mà ESP quét được sẽ được hiển thị dưới dạng list như dưới đây!
Mình có thể dùng cách xử lý chuỗi để lấy được list các wifi này, tuy nhiên ở đây mình sử dụng luôn wifi mà mình muốn kết nối, vì chỉ có wifi này mình biết password 😅
👉 Kết nối tới wifi
Khi đã biết tên wifi và có password, chúng ta có thể kết nối tới wifi bằng method là connect.
Cùng với đó, giống như điện thoại, thì ESP cũng sẽ phải mất một khoảng thời gian để kết nối tới mạng wifi, và nhiều khi còn không connect được! Vì vậy, micropython cung cấp thêm method để kiểm tra kết nối, đó là isconnected(), method này trả về True nếu connect thành công, và trả về false nếu connect chưa thành công.
Mình có thể thiết kế một hàm đợi kết nối như sau, với ssid, và password truyền vào ở dạng String:
Sau khi kết nối thành công, chúng ta có thể kiểm tra cấu hình mạng mà mình kết nối bằng method ifconfig(). Ví dụ mình kết nối wifi nhà mình và thu được kết quả sau:
Các thông tin thu được như địa chỉ IP, subnetmask, ...
👉 Sau khi kết nối được với wifi, thì chúng ta có thể tiến hành làm khá nhiều ứng dụng với mạng internet, truy cập các trang web, hoặc đẩy dữ liệu cảm biến lên server, ...
Ở bài viết sau mình sẽ giới thiệu với các bạn cách lấy dữ liệu từ một trang web đơn giản về!
Chúc các bạn học tập tốt 😊