Orodha ya maudhui:
- Hatua ya 1: MicroPython ni nini?
- Hatua ya 2: Mahitaji
- Hatua ya 3: Kwa nini bodi ya msingi ya ESP8266?
- Hatua ya 4: Kuweka Kompyuta yako
- Hatua ya 5: Flashing MicroPython Na Esptool.py
- Hatua ya 6: Kutumia MicroPython REPL Pamoja na Rshell
- Hatua ya 7: Kudhibiti Pini Kutumia MicroPython
- Hatua ya 8: Kufifia kwa LED
- Hatua ya 9: Wapi Kutoka Hapa?
- Hatua ya 10: Hitimisho
Video: Kuanza na MicroPython kwenye ESP8266: Hatua 10 (na Picha)
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:52
Je! Unataka njia tofauti ya kupanga bodi zilizo na ESP8266 badala ya njia ya kawaida ya kutumia Arduino IDE pamoja na lugha ya programu ya C / C ++?
Katika mafunzo haya tutajifunza nani wa kusanidi na kudhibiti bodi ya ESP8266 kwa kutumia MicroPython.
JENGA MUDA: UGUMU WA DAKIKA 60: KUPIMA: Rahisi
Hatua ya 1: MicroPython ni nini?
MicorPython ni moja wapo ya lugha nyingi za programu ambazo tunaweza kutumia kupanga moduli ya ESP8266. Ni toleo konda na la haraka la lugha ya programu ya Python 3 na ina faida kadhaa juu ya lugha za programu za jadi kama vile C na C ++.
MicroPython imeundwa kuendana na chatu ya kawaida iwezekanavyo. Inayo mkusanyaji kamili wa Python na wakati wa kukimbia, na hutoa mwongozo wa maingiliano unaojulikana kama REPL (Read-Eval-Print Loop).
MicorPython imeundwa kusaidia aina kadhaa tofauti za wadhibiti-ndogo. Lakini kwa mafunzo haya nitafanya kazi na mfano mmoja tu: bodi ya msingi ya ESP8266 (NodeMCU). Kumbuka kuwa kuna bodi kadhaa tofauti ambazo unaweza kununua na chip sawa.
Usomaji na Rasilimali:
MicroPython
NodeMCU
Hatua ya 2: Mahitaji
Ili uweze kufuata mafunzo haya unahitaji tu kuwa na uzoefu wa msingi wa kuweka coding na Python. Huna haja ya kuwa na ujuzi wowote wa hapo awali wa watawala wadogo, umeme, au hata MicroPython.
Utahitaji pia kompyuta ya Windows, Mac au Linux na bandari ya bure ya USB, kwani utaunganisha microcontroller kwenye kompyuta yako ili kuipanga.
Sehemu Zinazohitajika:
1 x NodeMCU (au bodi nyingine ya msingi ya ESP8266)
1 x Nyekundu 5mm LED
1 x 220Ω 1 / 4W Mpingaji
1 x 10KΩ Potentiometer ya Mzunguko
1 x Bodi ya mkate
1 x USB kwa kebo ya MicroUSB
Waya za Jumper.
Hatua ya 3: Kwa nini bodi ya msingi ya ESP8266?
Njia moja unayoweza kupata zaidi kutoka kwa ESP8266 yako ni kwa kutumia MicroPython. Pia, moduli ya ESP8266 ni moja wapo ya majukwaa bora ambayo unaweza kujifunza jinsi ya kutumia MicroPython. Hii ni kwa sababu ESP8266 hutoa kazi rahisi za kudhibiti pini ya GPIO na utendaji wa waya, hukuruhusu kujaribu mambo yote ya lugha ya programu ya MicroPython.
Chip ya ESP8266 ni maarufu katika tasnia ya maendeleo ya chanzo wazi. Kuna bodi nyingi za maendeleo kutoka kwa wazalishaji tofauti wanaotumia chip ya ESP8266. MicroPython imeundwa kutoa bandari ya generic ambayo inaweza kukimbia kwenye bodi nyingi, na mapungufu machache iwezekanavyo. Bandari hiyo inategemea bodi ya Manyoya ya Adafruit HUZZAH Unapotumia bodi zingine za ESP8266, hakikisha unakagua hesabu na data zao ili uweze kutambua tofauti kati yao na bodi ya Manyoya ya Adafruit HUZZAH. Kwa njia hiyo, unaweza kuchukua tofauti katika msimbo wako.
Usomaji na Rasilimali:
ESP8266
Manyoya ya Adafruit HUZZAH
Hatua ya 4: Kuweka Kompyuta yako
Kuna mambo kadhaa ambayo unapaswa kusanidi kabla ya kutumia MicroPython kupanga bodi yako ya ESP8266. Tutakuwa tukipitia mchakato wa usanidi katika hatua hii. Kwa njia hii utajua jinsi ya kusanidi bodi ya ESP8266 itumiwe na MicroPython.
Kujiandaa
Wote unahitaji kutoka hatua hii hadi hatua ya 6 ni ESP8266 yako na kebo ya USB. Unganisha bodi yako ya ESP8266 kwenye kompyuta yako.
Jinsi ya kufanya hivyo…
STEP1: Sakinisha madereva ya kifaa
Ikiwa una kompyuta ya Linux, basi hauitaji kusakinisha madereva yoyote ya kifaa kwa madereva ili microcontroller itambulike. Lakini ikiwa una Mac au mashine ya Windows, dereva anahitajika kuruhusu kompyuta itambue mdhibiti mdogo kama kifaa cha serial.
www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers.
STEP2: Sakinisha Python
Zana ambazo utatumia kuwasiliana na ESP8266 zimeandikwa katika Python, kwa hivyo unahitaji kufunga Python kwenye kompyuta yako.
Ikiwa mfumo wako wa uendeshaji hautoi chatu iliyowekwa tayari, unaweza kwenda https://python.org kupakua jengo rasmi kwa yoyote ya mifumo inayotumika ya uendeshaji.
STEP3: Sakinisha esptool na rshell
Sakinisha vifurushi viwili ambavyo vitakusaidia kudhibiti bodi yako kwa kutumia bomba Ili kufanya hivyo fungua kituo chako na uendeshe
bomba kufunga esptool rshell
STEP4: Pakua MicroPython
Pakua firmware ya hivi karibuni ya MicroPython.bin kutoka kwa kiunga kifuatacho:
Wakati ninaandika hii, toleo la sasa ni 1.11, na faili ya firmware inaitwa esp8266-20190529-v1.11.bin
Wakati unafanya hii unaweza kupata toleo jipya zaidi.
Hatua ya 5: Flashing MicroPython Na Esptool.py
Kabla ya kuwasha firmware mpya ndani ya bodi ni wazo nzuri kufuta data yoyote ya hapo awali. Hili ni jambo ambalo unapaswa kufanya kila wakati ili firmware mpya itoke kwa hali safi.
Nenda mahali ulipoweka faili ya.bin. Tumia esptool.py kufuta flash.
Kwa Linux:
esptool.py --port / dev / ttyUSB0 futa_flash
Kwa Windows:
esptool.py - bandari COM3 futa_flash
Unaweza kulazimika kubadilisha bandari ya serial kwa amri yako kwa bandari ya serial ambayo bodi yako ya ESP8266 imeunganishwa. Ikiwa haujui nambari ya bandari ya ESP8266 yako, unaweza kuangalia IDE ya Arduino. Fungua tu IDE kisha ubonyeze kwenye Zana | Bandari. Unapaswa kuona bandari ya serial ya bodi yako ya ESP8266 iliyoorodheshwa hapo. Badilisha bandari ya serial kwa amri (/ dev / ttyUSB0) na bandari ya serial ya bodi yako.
Sasa kwa kuwa bodi imefutwa kabisa, unaweza kuwasha ujenzi wa MicroPython ambao umepakua tu. Hii pia imefanywa na amri ya esptool.py:
esptool.py --port / dev / ttyUSB0 --baud 460800 write_flash 0 esp8266-20190529-v1.11.bin
Amri hii itaandika yaliyomo kwenye faili ya MicroPython.bin kwa bodi kwenye anwani 0.
Hakikisha unabadilisha jina la faili ya firmware.bin katika amri (esp82688-2019-080529-v1.11.bin) kuwa ile ya firmware uliyopakua.
Mara firmware ikiwa imewekwa kwa mafanikio kwenye bodi yako ya ESP8266, unaweza kupata REPL kwenye bodi yako kupitia unganisho wa waya (bandari ya UART serial) au WiFi iliyofikiria.
Hatua ya 6: Kutumia MicroPython REPL Pamoja na Rshell
Sasa uko tayari kuanza MicroPython kwenye bodi yako ya ESP8266.
Kile nitakachoonyesha jinsi ya kuungana na haraka ya Python inayofanya kazi kwenye bodi yako. Hii inaitwa REPL, ambayo inasimama kwa "Read-Eval-Print-Loop". Huu ndio mwongozo wa kawaida wa Python ambao labda unatumiwa kuona unapofanya kazi na mkalimani wa kawaida wa Python, lakini wakati huu itakuwa ikiendesha kwenye bodi yako, na kuingiliana nayo utatumia unganisho la serial kwa kompyuta yako. Uko tayari?
Ili kuungana na bodi yako na kufungua kipindi cha REPL, ingiza amri ifuatayo:
rshell - bandari
Amri hii itakuleta kwenye msukumo wa rshell. Tazama picha hapo juu.
Ikiwa unafuata mafunzo haya kwenye Windows, kumbuka kuwa rshell ina historia ya shida wakati wa kutumia Windows.
Kwa hivyo ili kurekebisha aina hiyo:
rshell -a - bandari COM3
Kutoka kwa haraka hii unaweza kufanya majukumu ya usimamizi yanayohusiana na bodi yako ya microcontroller, na pia uanze Python REPL ambayo unaweza kutumia kuingiliana na bodi kwa wakati halisi. Kwa hivyo ingiza tu amri ifuatayo:
badilisha
Ili kuhakikisha kila kitu kinafanya kazi, andika sentensi rahisi ya chatu:
chapisha ("Hello World")
Hatua ya 7: Kudhibiti Pini Kutumia MicroPython
Katika hatua hii, tutajifunza jinsi ya kudhibiti pini za ESP8266 na MicroPython. Ili kufanya hivyo tutakuja na usanidi ambapo tutabadilisha hali ya LED iliyounganishwa na pini ya GPIO ya bodi ya ESP8266. Hii itakusaidia kuelewa jinsi ya kudhibiti matokeo ya dijiti kwa kutumia MicoPython.
Kujiandaa
Utahitaji vitu vifuatavyo ili kukamilisha HATUA hii:
1 x NodeMCU
1 x Nyekundu 5mm LED
1 x 220 ist Mpingaji
1 x Bodi ya mkate
Waya za Jumper
Jengo
Anza kwa kuweka LED kwenye ubao wa mkate. Unganisha ncha moja ya kipinga cha 220 to kwenye mguu mzuri wa LED (mguu mzuri wa LED kawaida huwa mrefu kuliko miguu miwili). Unganisha mwisho mwingine wa kontena ili kubandika D1 ya bodi ya ESP8266. Kisha unganisha mguu hasi wa LED kwenye pini ya GND ya bodi ya ESP8266. Uunganisho umeonyeshwa kwenye mchoro hapo juu.
Mara usanidi ukamilika, unganisha bodi ya ESP8266 kwenye kompyuta yako kupitia kebo ya USB.
Jinsi ya kufanya hivyo…
Andika nambari ifuatayo katika REPL yako:
# blink LED kila sekunde 1
def blink (pin = 5, time = 1) # blink function by default pin = 5, time = 1s import machine # moduli ya mashine inashikilia usanidi na njia kutoka kwa wakati kuagiza kulala # kuagiza kulala kwa ucheleweshaji wa LED = mashine. (led_pin, machine. PIN. OUT) # sanidi LED kama OUTPUT wakati ni Kweli: # endesha milele LED.thamani (1) # weka LED kwa usingizi wa hali ya juu (muda) # subiri sekunde 1 kwa default LED.thamani (0) # set LED kulala LOW (muda) # subiri sekunde 1 kwa chaguo-msingi
Chapa blink () kwenye kikao chako cha RPEL ili ujaribu nambari hii. Hii itapepesa LED iliyounganishwa na GPIO5 kila sekunde 1.
Unaweza kubadilisha pini na / au wakati kwa kupiga simu:
blink (pin =, time =)
Bonyeza ctrl + c ili kutoka kwa msimbo unaoendesha.
Unaweza kutumia MicroPython kusoma pembejeo kutoka kwa kushikamana na ESP8266. Endelea kwa hatua inayofuata ili kujifunza jinsi ya kufanya hivyo.
Angalia video ikiwa umekwama.
Hatua ya 8: Kufifia kwa LED
Katika hatua hii, tutajifunza jinsi ya kurekebisha mwangaza wa LED kwa kutumia potentiometer ya rotary. Tutatumia mbinu inayoitwa Pulse Width Modulation (PWM), inatuwezesha kupunguza mwangaza wa LED na hadi mipangilio 256.
Ilani: Pini zote za ESP8266 zinaweza kutumika kama pini ya PWM isipokuwa GPIO16 (D0).
Kujiandaa:
Utahitaji vitu vifuatavyo ili kukamilisha HATUA hii:
1 x NodeMCU
1 x Nyekundu 5mm LED
1 x 50 KΩ Rotary Potentiometer.
1 x Bodi ya mkate
Waya za Jumper
Jengo
Uunganisho umeonyeshwa kwenye mchoro hapo juu: Mara tu usanidi ukamilika, unganisha bodi ya ESP8266 kwenye kompyuta yako kupitia kebo ya USB.
Jinsi ya kufanya hivyo…
Andika nambari ifuatayo katika REPL yako:
#Kufifia kwa LED kila 0.5 kwa kusoma data kutoka kwa Potentiometer
mashine ya kuagiza kutoka wakati wa kuagiza kulala led_pin = 5 # pini iliyoongozwa POT = mashine. kitu na weka mzunguko hadi 500Hz wakati ni Kweli: LED_pwm.duty (POT.read ()) # pata thamani kutoka kwa sufuria na uiweke kulala usingizi wa mzunguko (0.5) # subiri 0.5
Hii itabadilisha mwangaza wa LED iliyounganishwa na GPIO 5 kwa kubadilisha thamani ya potentiometer.
Bonyeza ctrl + c ili kutoka kwa msimbo unaoendesha.
Angalia video ikiwa umekwama.
Hatua ya 9: Wapi Kutoka Hapa?
Hadi sasa tumeona jinsi ya kusanidi na kuendesha MicroPython kwenye bodi zilizo na ESP8266. tulijifunza jinsi ya kudhibiti pini ili kupepesa LED kisha tukaongeza potentiometer ili kudhibiti mwangaza wa LED kwa kutumia mbinu ya upanaji wa mpigo wa mpigo.
Sasa tunaweza kusoma data kutoka kwa sensa na kuipeleka kwenye wingu, tunaweza pia kuunda seva ya HTTP ambapo unaweza kuchapisha data zetu kwenye ukurasa rahisi wa wavuti, nk.
Hii inatupa maoni mengi ya mtandao wa vitu (IoT).
Hatua ya 10: Hitimisho
Hapo unayo! Nenda mbele na ushinde ulimwengu wa MicroPython.
ikiwa una swali lolote bila shaka unaweza kuacha maoni.
Ili kuona zaidi kuhusu kazi zangu tafadhali tembelea kituo changu cha YouTube:
myYouTube
myGitHub
myLinkedin
Asante kwa kusoma hii inayoweza kufundishwa na uwe na siku njema.
Tuonane.
Ahmed Nouira.
Ilipendekeza:
Gari la Kujiendesha la Kuanza la Kuanza na Kuepuka Mgongano: Hatua 7
Gari la Kujiendesha la Kuanza la Kuanza na Kuepuka Mgongano: Halo! Karibu kwa rafiki yangu anayeweza kukufundisha jinsi ya kutengeneza gari lako la kujiendesha la kujiendesha kwa kuepusha mgongano na Urambazaji wa GPS. Hapo juu ni video ya YouTube inayoonyesha roboti hiyo. Ni mfano wa kuonyesha jinsi uhuru halisi
Kuanza na ROS Melodic kwenye Raspberry Pi 4 Mfano B: Hatua 7
Kuanza na ROS Melodic kwenye Raspberry Pi 4 Model B: Mfumo wa Uendeshaji wa Robot (ROS) ni seti ya maktaba za programu na zana zinazotumiwa kujenga mifumo na matumizi ya roboti. Toleo la sasa la huduma ya muda mrefu ya ROS ni Melodic Morenia. ROS Melodic inaambatana na Ubuntu 18.04 Bionic Beaver pekee
Kuweka Raspbian Buster kwenye Raspberry Pi 3 - Kuanza na Raspbian Buster Na Raspberry Pi 3b / 3b +: 4 Hatua
Kuweka Raspbian Buster kwenye Raspberry Pi 3 | Kuanza na Raspbian Buster Na Raspberry Pi 3b / 3b +: Halo jamani, hivi karibuni shirika la Raspberry pi lilizindua OS mpya ya Raspbian inayoitwa Raspbian Buster. Ni toleo jipya la Raspbian kwa Raspberry pi's. Kwa hivyo leo katika mafundisho haya tutajifunza jinsi ya kufunga Raspbian Buster OS kwenye Raspberry pi 3 yako
Kuanza W / NodeMCU ESP8266 kwenye Arduino IDE: 6 Hatua
Kuanza W / NodeMCU ESP8266 kwenye Arduino IDE: Muhtasari Katika mafunzo haya, utajifunza jinsi ya kutumia NodeMCU kwenye Arduino IDE. Kile Utajifunza imetumika
Sensorer ya Uvujaji wa Maji kwenye ESP8266 + Micropython + Domoticz: Hatua 16 (na Picha)
Sensorer ya Uvujaji wa Maji kwenye ESP8266 + Micropython + Domoticz: Wakati fulani uliopita, mke wangu aliniuliza nitengeneze sensor ya kuvuja maji. Aliogopa kwamba bomba kwenye chumba cha kuchemsha linaweza kuvuja, na maji yangefurika sakafu ya mbao iliyowekwa mpya. Na mimi kama mhandisi wa kweli nilichukua sensorer kama hiyo kutoka kwa 15 yangu