Mục lục:

Giao tiếp ESP8266 và Python cho  Noobs: 6 bước
Giao tiếp ESP8266 và Python cho Noobs: 6 bước

Video: Giao tiếp ESP8266 và Python cho Noobs: 6 bước

Video: Giao tiếp ESP8266 và Python cho  Noobs: 6 bước
Video: Lập trình python trên esp8266 - Ngôi Nhà IoT 2024, Tháng bảy
Anonim
Giao tiếp ESP8266 và Python cho Noobs
Giao tiếp ESP8266 và Python cho Noobs

Hướng dẫn này cho phép bạn lấy bất kỳ dữ liệu nào từ ESP8266 và kiểm soát dữ liệu đó qua python mà không cần lệnh AT.

Đối với những người mới bắt đầu, hầu hết các hướng dẫn về cách sử dụng ESP8266 đều khó, bởi vì họ muốn bạn đưa “NHẬN XÉT” vào chip, đó là:

  • Không cần thiết
  • Lãng phí bộ nhớ của ESP
  • Cung cấp cho bạn khả năng kiểm soát hạn chế
  • Khó và đầy thử thách
  • Và không phù hợp với tất cả các mô-đun ESP8266

Đó là lý do tại sao tôi đã tạo ra một hệ thống giao tiếp mDNS rất đơn giản được điều khiển chỉ với 3 chức năng đơn giản. Nó cũng cung cấp cho bạn toàn quyền kiểm soát.

Bước 1: Lý thuyết

Học thuyết
Học thuyết

Esp của chúng tôi kết nối với wifi của chúng tôi và tạo một máy chủ localhost và bắt đầu chờ một yêu cầu. Mỗi khi python của chúng tôi gửi một yêu cầu đến localhost đó, đặc biệt là chạy mã mong muốn và sau đó trả về kết quả là một yêu cầu http. Cuối cùng, python đọc dữ liệu trả về đó dưới dạng yêu cầu http và lấy các biến đó từ nó. Với điều này, esp có thể trả về chuỗi, dữ liệu và mảng. Mã Python sẽ hiểu kiểu dữ liệu của chúng.

Bước 2: Chuẩn bị các Thư viện Bắt buộc

Chuẩn bị các Thư viện Bắt buộc
Chuẩn bị các Thư viện Bắt buộc

Trước hết, bạn phải tải thư viện thẻ ESP8266 xuống arduino Ide. Nếu bạn không biết làm thế nào, đây là hướng dẫn.

Sau đó, bạn phải tải xuống thư viện vi mô của tôi từ đây.

Sau khi bạn tải xuống, trong thư mục thư viện có một tệp tên là "ESP_MICRO.h", hãy sao chép nó vào thư mục mã hóa của dự án arduino hiện tại của bạn. Có, đừng sao chép nó vào các thư viện của arduino, nó là một thư viện vi mô nên bạn sẽ sao chép nó vào thư mục của dự án arduino hiện tại của bạn.

Vì vậy, bây giờ, yêu cầu của chúng tôi đã được thỏa mãn. Chúng ta có thể bắt đầu mã hóa nó.

Bước 3: Viết mã yêu cầu đơn giản

Viết mã yêu cầu đơn giản
Viết mã yêu cầu đơn giản

Khi bạn mở project.ino của mình, bạn sẽ thấy hai tab trên arduino Ide. Một là dự án của bạn, một là "ESP_MICRO.h" thư viện vi mô của chúng tôi.

Bây giờ bạn có 5 chức năng đó trong ESP_MICRO.h trong mã chính của bạn, (các chức năng được giải thích trong các dòng đầu tiên của ESP_MICRO.h)

Đây là một mã tăng biến đơn giản.

Mã Arduino:

/ * F5 THỬ NGHIỆM CHO ESP2PY

* Được viết bởi Junicchi * https://github.com/KebabLord/esp_to_python * Nó chỉ đơn giản là tăng và trả về một biến mỗi khi có yêu cầu python * / #include "ESP_MICRO.h" // Bao gồm thư viện vi mô int testvariable = 0; void setup () {Serial.begin (9600); // Khởi động cổng nối tiếp để xem chi tiết start ("USERNAME", "PASSWORD"); // EnAIt sẽ kết nối với wifi của bạn với thông tin chi tiết đã cho} void loop () {waitUntilNewReq (); // Chờ cho đến khi một yêu cầu mới từ python come / * tăng chỉ mục khi một yêu cầu mới đến * / testvariable + = 1; returnThisInt (testvariable); // Trả về dữ liệu cho python}

Bước 4: Tải lên

Đang tải lên
Đang tải lên

Lập trình Nodemcu ESP8266s chỉ đơn giản là cắm usb và tải lên bản phác thảo từ arduino.

Nhưng lập trình ESP8266-1 khó hơn, có hai phương pháp để lập trình chúng

Lập trình ESP thông qua arduino

Nếu bạn ổn với jumper, bạn có thể lập trình nó thông qua arduino với mạch này. Nhưng về lâu dài, đó là nỗi đau. Vì vậy, tôi đề nghị phương pháp khác.

Lập trình nó với lập trình ESP

Nó dễ dàng hơn và nhanh hơn nhiều. Nó chỉ là 1 đô la, mua một cái và sử dụng một usb lập trình viên.

Tìm hiểu địa chỉ IP của ESP

Trong khi mã đang được tải lên, hãy mở cổng nối tiếp, bạn sẽ thấy thông tin chi tiết được in khi quá trình tải lên hoàn tất. Tìm hiểu IP của esp và lưu ý rằng. Hãy nhớ rằng, IP của ESP trên cục bộ; thay đổi bằng wifi thành wifi, không phải phiên này sang phiên khác, vì vậy khi bạn đóng và mở nó sau đó, nó sẽ không bị thay đổi.

Bước 5: Đọc và Python

Đọc và Python
Đọc và Python

Trong esp_to_python / library có một "EXAMPLE_PYTHON_READER.py"

chỉnh sửa nó, thay đổi dòng thứ 5 với địa chỉ IP của mô-đun esp được in trên cổng nối tiếp và chạy tập lệnh python. Trong dự án này, tôi đã sử dụng python để gửi và đọc yêu cầu. Nhưng bạn cũng có thể xem dữ liệu thô bằng trình duyệt trong khi dán ip của ESP trên trình duyệt. Hoặc bạn có thể tạo một ứng dụng để đọc nó, hoặc thậm chí bạn có thể sử dụng một ngôn ngữ khác. Việc kiểm soát mô-đun trên python cũng được giải thích trong dự án "ledControl" trong thư mục ví dụ.

Bước 6: Hoàn thiện

Đang hoàn thiện
Đang hoàn thiện

Tất cả các chức năng và mã được giải thích trong ESP_MICRO.h và trong tệp README.md.

Nếu dự án này giúp ích cho bạn, bạn có thể gắn dấu sao cho dự án gốc trên github.

Đề xuất: