Talaan ng mga Nilalaman:
- Hakbang 1: Teorya
- Hakbang 2: Paghahanda ng Mga Kinakailangan na Aklatan
- Hakbang 3: Pagsulat ng isang Simple Code ng Kahilingan
- Hakbang 4: Pag-upload
- Hakbang 5: Pagbasa at Python
- Hakbang 6: Pagtatapos
Video: Komunikasyon ng ESP8266 at Python Para sa Mga Noobs: 6 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:13
Pinapayagan ka ng gabay na ito na makakuha ng anumang data mula sa ESP8266 at makontrol ito sa sawa nang walang mga utos ng AT.
Para sa mga nagsisimula, ang karamihan sa mga gabay tungkol sa paggamit ng ESP8266 ay mahirap, dahil nais nilang i-flash mo ang "SA MGA utos" sa chip, na kung saan ay:
- Hindi mapabuti
- Sayang ang memorya ng ESP
- Nagbibigay sa iyo ng limitadong kontrol
- Mahirap at Hinahamon
- At hindi angkop para sa lahat ng mga module ng ESP8266
Iyon ang dahilan kung bakit lumikha ako ng isang napaka-simpleng mDNS sistema ng komunikasyon na kung saan ay kinokontrol lamang sa 3 simpleng mga pag-andar. Nagbibigay din ito sa iyo ng buong kontrol.
Hakbang 1: Teorya
Ang aming esp ay kumokonekta sa aming wifi at lumilikha ng isang localhost server at nagsisimulang maghintay ng isang kahilingan. Sa tuwing nagpapadala ang aming sawa ng isang kahilingan sa localhost na iyon, isinasagawa ng esp ang nais na code at pagkatapos ay ibabalik ang resulta bilang isang kahilingan sa http. Sa wakas binabasa ng sawa ang bumalik na data bilang kahilingan sa http at kunin ang mga variable mula rito. Sa pamamagitan nito, maaaring ibalik ng esp ang mga string, datas at array. Maunawaan ng Python code ang kanilang datatype.
Hakbang 2: Paghahanda ng Mga Kinakailangan na Aklatan
Una sa lahat, dapat mong i-download ang library ng card na ESP8266 sa ideyang arduino. Kung hindi mo alam kung paano, narito ang gabay.
Pagkatapos nito, kailangan mong i-download ang aking micro library mula rito.
Matapos mong i-download, sa folder ng library ay may isang file na tinatawag na "ESP_MICRO.h", kopyahin ito sa iyong coding folder ng kasalukuyang proyekto ng arduino. Oo, huwag kopyahin ito sa mga aklatan ni arduino, ito ay isang micro library upang makopya mo ito sa folder ng iyong kasalukuyang proyekto ng arduino.
Kaya ngayon, nasiyahan ang aming mga kinakailangan. Maaari nating simulan ang pag-coding nito.
Hakbang 3: Pagsulat ng isang Simple Code ng Kahilingan
Kapag binuksan mo ang iyong project.ino, makikita mo ang dalawang mga tab sa arduino ide. Ang isa ay ang iyong proyekto, ang isa pa ay "ESP_MICRO.h" ang aming micro library.
Ngayon mayroon kang 5 pagpapaandar sa ESP_MICRO.h sa iyong pangunahing code, (ang mga pagpapaandar ay ipinaliwanag sa mga unang linya ng ESP_MICRO.h)
Narito ang isang simpleng variable na pagtaas ng code.
Arduino code:
/ * F5 TEST PARA SA ESP2PY
* Isinulat ni Junicchi * https://github.com/KebabLord/esp_to_python * Ito ay nagdaragdag at nagbabalik ng isang variable sa tuwing darating ang isang python req * / # isama ang "ESP_MICRO.h" // Isama ang micro library int testvariable = 0; void setup () {Serial.begin (9600); // Simula ng serial port para makita ang mga detalye ng pagsisimula ("USERNAME", "PASSWORD"); // Ang EnAIt ay kumokonekta sa iyong wifi na may mga ibinigay na detalye} void loop () {waitUntilNewReq (); // Naghihintay hanggang sa dumating ang isang bagong kahilingan mula sa sawa / * nagdaragdag ng index nang dumating ang isang bagong kahilingan * / nasubok + = 1; returnThisInt (masusuri); // Ibinabalik ang data sa sawa}
Hakbang 4: Pag-upload
Ang Programming Nodemcu ESP8266s ay simpleng pag-plug ng usb at pag-upload ng sketch mula sa arduino.
Ngunit ang programa ng ESP8266-1 ay mas mahirap, mayroong dalawang pamamaraan upang mai-program ang mga ito
Programming ESP sa pamamagitan ng arduino
Kung maayos ka sa mga jumper, maaari mo itong i-program sa pamamagitan ng arduino sa circuit na ito. Ngunit para sa pangmatagalang, sakit. Kaya nagmumungkahi ako ng ibang pamamaraan.
Programming ito sa programmer ng ESP
Mas madali at mas mabilis ito. 1 dolyar lamang ito, bumili ng isa at gumamit ng isang programmer usb.
Pag-aaral ng IP adress ng ESP
Habang ina-upload ang code, buksan ang serial port, makikita mo ang mga detalye na naka-print kapag tapos na ang pag-upload. Alamin ang IP ng esp at tandaan na. Tandaan, ang IP ng ESP sa lokal; nagbabago sa pamamagitan ng wifi sa wifi, hindi sesyon sa sesyon, kaya kapag isinara at binuksan mo ito sa paglaon, hindi ito mababago.
Hakbang 5: Pagbasa at Python
Sa esp_to_python / library mayroong isang "EXAMPLE_PYTHON_READER.py"
i-edit ito, baguhin ang ika-5 linya kasama ang IP adress ng esp module na naka-print sa serial portand patakbuhin ang script ng sawa. Sa proyektong ito, gumamit ako ng sawa upang magpadala at mabasa ang kahilingan. Ngunit maaari mo ring tingnan ang hilaw na data sa isang browser habang idi-paste ang ip ng ESP sa isang browser. O maaari kang gumawa ng isang application upang basahin ito, o maaari mo ring gamitin ang ibang wika. Ang pagkontrol sa module sa sawa ay ipinaliwanag din sa proyekto na "ledControl" sa mga halimbawa ng folder.
Hakbang 6: Pagtatapos
Ang lahat ng mga pagpapaandar at code ay ipinaliwanag sa ESP_MICRO.h at sa README.md file.
Kung tinulungan ka ng proyektong ito, maaari mong lagyan ng star ang orihinal na proyekto sa github.
Inirerekumendang:
Magdagdag ng isang Digital Display sa isang Lumang Tumatanggap ng Mga Komunikasyon: 6 na Hakbang (na may Mga Larawan)
Magdagdag ng isang Digital Display sa isang Lumang Tanggap ng Komunikasyon: Ang isa sa mga pagkukulang ng paggamit ng isang mas matandang gamit sa komunikasyon ay ang katunayan na ang analog dial ay hindi masyadong tumpak. Palagi kang hulaan sa dalas na iyong natatanggap. Sa mga banda ng AM o FM, sa pangkalahatan ito ay hindi isang problema sapagkat madalas kang
Raspberry PI 3 - Paganahin ang Mga Serial na Komunikasyon sa TtyAMA0 hanggang BCM GPIO 14 at GPIO 15: 9 Mga Hakbang
Raspberry PI 3 - Paganahin ang Mga Serial na Komunikasyon sa TtyAMA0 hanggang BCM GPIO 14 at GPIO 15: Kamakailan lamang ay nagkaroon ako ng interes na paganahin ang UART0 sa aking Raspberry Pi (3b) upang maikonekta ko ito nang direkta sa isang aparato ng antas ng signal na RS-232 gamit ang isang karaniwang 9 -pin d-sub konektor nang hindi kinakailangang dumaan sa isang USB sa RS-232 adapter. Bahagi ng aking intere
Wireless na Komunikasyon Gamit ang NRF24L01 Transceiver Module para sa Mga Proyekto na Nakabatay sa Arduino: 5 Mga Hakbang (na may Mga Larawan)
Wireless na Komunikasyon Gamit ang NRF24L01 Transceiver Module para sa Mga Proyekto na Nakabatay sa Arduino: Ito ang aking pangalawang itinuturo na tutorial tungkol sa mga robot at micro-Controller. Tunay na kamangha-manghang makita ang iyong robot na buhay at gumagana tulad ng inaasahan at maniwala ka sa akin magiging mas masaya kung kontrolin mo ang iyong robot o iba pang mga bagay nang wireless nang mabilis at
Paano Wastong Sukatin ang Pagkonsumo ng Lakas ng Mga Wireless na Module ng Komunikasyon sa Era ng Mababang Pagkonsumo ng Kuryente ?: 6 Mga Hakbang
Paano Wastong Sukatin ang Pagkonsumo ng Lakas ng Mga Wireless na Module ng Komunikasyon sa Panahon ng Mababang Pagkonsumo ng Power?: Ang mababang paggamit ng kuryente ay isang napakahalagang konsepto sa Internet ng Mga Bagay. Karamihan sa mga IoT node ay kailangang pinalakas ng mga baterya. Sa pamamagitan lamang ng wastong pagsukat ng pagkonsumo ng kuryente ng module ng wireless maaari nating tumpak na matantya kung magkano ang baterya i
Accesspoint - Istasyon ng Komunikasyon sa Pagitan ng Dalawang mga ESP8266 MCU: 3 Mga Hakbang
Accesspoint - Istasyon ng Komunikasyon sa Pagitan ng Dalawang Mga MC8 ng ESP8266: Kamusta Mga Gumagawa! Sa aking nakaraang itinuro gumawa ako ng isang komunikasyon sa WiFi sa pagitan ng dalawang mga ESP8266 MCU sa pamamagitan ng isang router ng WiFi sa bahay. Tulad ng nakita ko mula sa mga komento may mga Gumagawa na nais na gumamit ng ESP8266 MCUs na malayo sa saklaw ng isang router. Kaya narito ang isang bar