Satura rādītājs:
- 1. darbība: kas ir MicroPython?
- 2. darbība. Prasības
- 3. solis: Kāpēc uz ESP8266 balstīta tāfele?
- 4. darbība. Datora iestatīšana
- 5. darbība: mirgo MicroPython ar Esptool.py
- 6. darbība. MicroPython REPL izmantošana ar Rshell
- 7. darbība: tapas vadīšana, izmantojot MicroPython
- 8. solis: gaismas diodes izbalēšana
- 9. solis. Kurp doties no šejienes?
- 10. solis: Secinājums
Video: Darba sākšana ar MicroPython uz ESP8266: 10 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:56
Vai vēlaties citu veidu, kā programmēt uz ESP8266 balstītas plates, nevis parasto metodi, izmantojot Arduino IDE kopā ar C/C ++ programmēšanas valodu?
Šajā apmācībā mēs uzzināsim, kam konfigurēt un vadīt ESP8266 plati, izmantojot MicroPython.
ĒKAS LAIKS: 60 MINŪTES GRŪTĪBA: NOVĒRTĒJUMS: Viegli
1. darbība: kas ir MicroPython?
MicorPython ir viena no daudzajām programmēšanas valodām, ko varam izmantot ESP8266 moduļa programmēšanai. Tā ir vienkārša un ātra Python 3 programmēšanas valodas versija, un tai ir vairākas priekšrocības salīdzinājumā ar tradicionālajām programmēšanas valodām, piemēram, C un C ++.
MicroPython ir veidots tā, lai pēc iespējas būtu saderīgs ar parasto Python. Tam ir pilnīgs Python kompilators un izpildlaiks, un tas nodrošina interaktīvu uzvedni, kas pazīstama kā REPL (Read-Eval-Print Loop).
MicorPython ir paredzēts dažu veidu mikrokontrolleru atbalstam. Bet šajā apmācībā es strādāšu tikai ar vienu modeli: ESP8266 bortu (NodeMCU). Ņemiet vērā, ka ir daži dažādi dēļi, kurus varat iegādāties ar vienu mikroshēmu.
Lasīšana un resursi:
MicroPython
NodeMCU
2. darbība. Prasības
Lai varētu sekot šai apmācībai, jums vienkārši ir jābūt pamata kodēšanas pieredzei ar Python. Jums nav jābūt iepriekšējām zināšanām par mikrokontrolleriem, elektroniku vai pat MicroPython.
Jums būs nepieciešams arī Windows, Mac vai Linux dators ar brīvu USB portu, jo, lai to ieprogrammētu, datoram pievienosit mikrokontrolleru.
Nepieciešamās detaļas:
1 x NodeMCU (vai cita ESP8266 bāze)
1 x sarkana 5 mm gaismas diode
1 x 220Ω 1/4 W rezistors
1 x 10KΩ rotācijas potenciometrs
1 x maizes dēlis
1 x USB -MicroUSB kabelis
Jumper vadi.
3. solis: Kāpēc uz ESP8266 balstīta tāfele?
Viens veids, kā maksimāli izmantot ESP8266, ir izmantot MicroPython. Arī ESP8266 modulis ir viena no labākajām platformām, kurā var iemācīties lietot MicroPython. Tas ir tāpēc, ka ESP8266 nodrošina vienkāršas GPIO tapas vadības funkcijas, kā arī bezvadu funkcionalitāti, ļaujot pārbaudīt visus MicroPython programmēšanas valodas aspektus.
ESP8266 mikroshēma ir populāra atvērtā pirmkoda izstrādes nozarē. Ir daudz dažādu ražotāju izstrādes dēļu, kas izmanto mikroshēmu ESP8266. MicroPython ir izstrādāts, lai nodrošinātu vispārēju portu, kas var darboties lielākajā daļā šo dēļu ar pēc iespējas mazāk ierobežojumiem. Porta pamatā ir Adafruit Feather HUZZAH tāfele. Izmantojot citas ESP8266 plāksnes, noteikti pārbaudiet to shēmas un datu lapas, lai varētu noteikt atšķirības starp tām un Adafruit Feather HUZZAH plāksni. Tādā veidā jūs varat pielāgot koda atšķirības.
Lasīšana un resursi:
ESP8266
Adafruit Feather HUZZAH
4. darbība. Datora iestatīšana
Ir vairākas lietas, kas jums jāiestata, pirms izmantojat MicroPython, lai ieprogrammētu savu ESP8266 plati. Šajā solī mēs veiksim iestatīšanas procesu. Tādā veidā jūs zināt, kā konfigurēt ESP8266 plati lietošanai kopā ar MicroPython.
Sagatavoties
Viss, kas jums nepieciešams no šīs darbības līdz 6. darbībai, ir jūsu ESP8266 un USB kabelis. Savienojiet ESP8266 plati ar datoru.
Kā to izdarīt…
1. SOLIS: instalējiet ierīces draiverus
Ja jums ir Linux dators, jums nav jāinstalē ierīces draiveri, lai mikrokontrollera draiveri tiktu atpazīti. Bet, ja jums ir Mac vai Windows mašīna, ir nepieciešams draiveris, lai dators varētu atpazīt mikrokontrolleru kā sērijas ierīce.
www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers.
2. SOLIS: instalējiet Python
Rīki, kurus izmantosit, lai sazinātos ar ESP8266, ir rakstīti programmā Python, tāpēc datorā jāinstalē Python.
Ja jūsu operētājsistēma nenodrošina iepriekš iepakotu Python, varat apmeklēt vietni https://python.org, lai lejupielādētu oficiālu būvējumu jebkurai no atbalstītajām operētājsistēmām.
3. SOLIS: instalējiet esptool un rshell
Instalējiet divas paketes, kas palīdzēs jums pārvaldīt savu dēli, izmantojot pip. Lai to izdarītu, atveriet savu termināli un palaidiet
pip instalēt esptool rshell
4. SOLIS: lejupielādējiet MicroPython
Lejupielādējiet jaunāko MicroPython programmaparatūru.bin no šīs saites:
Laikā, kad es to rakstu, pašreizējā versija ir 1.11, un programmaparatūras faila nosaukums ir esp8266-20190529-v1.11.bin
Kad jūs to izdarīsit, iespējams, atradīsit jaunāku laidienu.
5. darbība: mirgo MicroPython ar Esptool.py
Pirms jaunas programmaparatūras mirgošanas tāfelē ieteicams izdzēst visus iepriekšējos datus. Tas vienmēr ir jādara, lai jaunā programmaparatūra darbotos tīrā stāvoklī.
Dodieties vietā, kur ievietojāt.bin failu. Izmantojiet esptool.py, lai izdzēstu zibspuldzi.
Linux:
esptool.py --port /dev /ttyUSB0 erase_flash
Operētājsistēmai Windows:
esptool.py --port COM3 erase_flash
Iespējams, ka komandas sērijas ports ir jāmaina uz seriālo portu, kuram ir pievienota ESP8266 plate. Ja jūs nezināt sava ESP8266 sērijas porta numuru, varat pārbaudīt Arduino IDE. Vienkārši atveriet IDE un pēc tam noklikšķiniet uz Rīki | Ostas. Tur vajadzētu redzēt ESP8266 plates seriālo portu. Nomainiet komandas seriālo portu (/dev/ttyUSB0) ar tāfeles seriālo portu.
Tagad, kad tāfele ir pilnībā izdzēsta, varat mirgot tikko lejupielādēto MicroPython būvi. Tas tiek darīts arī ar komandu esptool.py:
esptool.py --port /dev /ttyUSB0 --baud 460800 write_flash 0 esp8266-20190529-v1.11.bin
Šī komanda rakstīs MicroPython.bin faila saturu uz tāfeles ar adresi 0.
Noteikti mainiet komandā esošās programmaparatūras.bin faila nosaukumu (esp82688-2019-080529-v1.11.bin) uz lejupielādētās programmaparatūras nosaukumu.
Kad programmaparatūra ir veiksmīgi instalēta jūsu ESP8266 panelī, jūs varat piekļūt REPL savā panelī, izmantojot vadu savienojumu (UART seriālo portu) vai domājamo WiFi.
6. darbība. MicroPython REPL izmantošana ar Rshell
Tagad esat gatavs startēt MicroPython uz ESP8266 plates.
Ko es jums parādīšu, kā izveidot savienojumu ar Python uzvedni, kas darbojas jūsu panelī. To sauc par REPL, kas nozīmē "Read-Eval-Print-Loop". Šī ir standarta Python uzvedne, kuru jūs, iespējams, esat redzējuši, strādājot ar parasto Python tulku, taču šoreiz tā darbosies jūsu datorā, un, lai ar to mijiedarbotos, jūs izmantosit sērijas savienojumu ar datoru. Gatavs?
Lai izveidotu savienojumu ar savu dēli un atvērtu REPL sesiju, ievadiet šādu komandu:
rshell -ports
Šī komanda parādīs uzvedni rshell. Skatiet fotoattēlu iepriekš.
Ja sekojat šai apmācībai operētājsistēmā Windows, ņemiet vērā, ka rshell ir bijušas problēmas, darbojoties sistēmā Windows.
Tātad, lai labotu šo veidu:
rshell -a -ports COM3
No šīs uzvednes jūs varat veikt pārvaldības uzdevumus, kas saistīti ar jūsu mikrokontrolleru plati, kā arī sākt Python REPL, ko varat izmantot, lai reāllaikā mijiedarbotos ar paneli. Tātad, vienkārši ievadiet šādu komandu:
repl
Lai pārliecinātos, ka viss darbojas, ierakstiet vienkāršu Python teikumu:
drukāt ("Sveika pasaule")
7. darbība: tapas vadīšana, izmantojot MicroPython
Šajā solī mēs iemācīsimies kontrolēt ESP8266 tapas, izmantojot MicroPython. Lai to izdarītu, mēs izdomāsim iestatījumu, kurā mēs mainīsim gaismas diodes stāvokli, kas savienots ar ESP8266 plates GPIO tapu. Tas palīdzēs jums saprast, kā kontrolēt digitālās izejas, izmantojot MicoPython.
Sagatavoties
Lai izpildītu šo soli, jums būs nepieciešamas šādas lietas:
1 x NodeMCU
1 x sarkana 5 mm gaismas diode
1 x 220 Ω rezistors
1 x maizes dēlis
Jumper vadi
Būvēt
Sāciet, uzstādot LED uz maizes dēļa. Pievienojiet 220 Ω rezistora vienu galu gaismas diodes pozitīvajai daļai (gaismas diodes pozitīvā kājiņa parasti ir garāka no abām kājām). Pievienojiet pretestības otru galu ESP8266 plates D1 tapai. Pēc tam pievienojiet gaismas diodes negatīvo kāju ESP8266 plates GND tapai. Savienojums ir parādīts iepriekš redzamajā diagrammā.
Kad iestatīšana ir pabeigta, pievienojiet ESP8266 plati datoram, izmantojot USB kabeli.
Kā to izdarīt…
Ierakstiet šādu kodu savā REPL:
# mirgo LED ik pēc 1 sekundes
def mirgo (pin = 5, laiks = 1) # mirgošanas funkcija pēc noklusējuma pin = 5, time = 1s importēšanas iekārta # mašīnas modulī ir tapu konfigurācijas un režīmi no laika importēšanas miega # importēt miega režīmu uz kādu aizkavēšanos LED = mašīna. (LED_pin, machine. PIN. OUT) # konfigurējiet LED kā OUTPUT, bet True: # palaist mūžīgi LED. vērtība (1) # iestatiet LED uz HIGH miega režīmu (laiks) # pēc noklusējuma gaidiet 1 sekundi. vērtība (0) # iestatiet LED līdz LOW miega režīms (laiks) # pēc noklusējuma jāgaida 1 sekunde
Lai pārbaudītu šo kodu, savā RPEL sesijā ierakstiet blink (). Tas katru sekundi mirgos ar GPIO5 savienoto LED.
Jūs varat mainīt tapu un/vai laiku, zvanot:
mirgo (tapa =, laiks =)
Nospiediet taustiņu kombināciju ctrl+c, lai izietu no darbības koda.
Varat izmantot MicroPython, lai nolasītu ievadi no savienojuma ar ESP8266. Lai uzzinātu, kā to izdarīt, pārejiet pie nākamās darbības.
Pārbaudiet videoklipu, ja esat iestrēdzis.
8. solis: gaismas diodes izbalēšana
Šajā solī mēs iemācīsimies pielāgot gaismas diodes spilgtumu, izmantojot rotējošu potenciometru. Mēs izmantosim paņēmienu, ko sauc par impulsa platuma modulāciju (PWM), un tas ļauj aptumšot gaismas diodi līdz 256 iestatījumiem.
Piezīme: Visas ESP8266 tapas var izmantot kā PWM tapu, izņemot GPIO16 (D0).
Sagatavoties:
Lai izpildītu šo soli, jums būs nepieciešamas šādas lietas:
1 x NodeMCU
1 x sarkana 5 mm gaismas diode
1 x 50 KΩ rotācijas potenciometrs.
1 x maizes dēlis
Jumper vadi
Būvēt
Savienojums ir tāds, kā parādīts iepriekš redzamajā diagrammā: Kad iestatīšana ir pabeigta, pievienojiet ESP8266 plati datoram, izmantojot USB kabeli.
Kā to izdarīt…
REPL ierakstiet šādu kodu:
# LED izbalēšana ik pēc 0,5, nolasot datus no potenciometra
importēt mašīnu no laika importēšanas miega led_pin = 5 # led pin POT = machine. ADC (0) # ADC0 pin LED = machine. Pin (led_pin) # izveidot LED objektu LED_pwm = machine. PWM (LED, freq = 500) # izveidot LED_pwm objektam un iestatiet frekvenci uz 500 Hz, kamēr True: LED_pwm.duty (POT.read ()) # iegūstiet vērtību no katla un iestatiet to miega cikla miega režīmā (0.5) # gaidiet 0.5
Tas mainīs ar GPIO 5 pievienotās gaismas diodes spilgtumu, mainot potenciometra vērtību.
Nospiediet ctrl+c, lai izietu no darbības koda.
Pārbaudiet videoklipu, ja esat iestrēdzis.
9. solis. Kurp doties no šejienes?
Līdz šim mēs esam redzējuši, kā konfigurēt un palaist MicroPython uz ESP8266 balstītas plates. mēs iemācījāmies kontrolēt tapas, lai mirgotu gaismas diode, tad pievienojām potenciometru, lai kontrolētu gaismas diodes spilgtumu, izmantojot impulsa platuma modulācijas tehniku.
Tagad mēs varam nolasīt datus no sensora un nosūtīt tos uz mākoni, mēs varam arī izveidot HTTP serveri, kurā varat izdrukāt mūsu datus vienkāršā tīmekļa vietnē utt.
Tas dod mums daudz priekšstatu par lietu internetu (IoT).
10. solis: Secinājums
Tur jums tas ir! Dodieties tālāk un iekarojiet MicroPython pasauli.
protams, ja jums ir kādi jautājumi, varat atstāt komentāru.
Lai uzzinātu vairāk par maniem darbiem, lūdzu, apmeklējiet manu YouTube kanālu:
myYouTube
myGitHub
myLinkedin
Paldies, ka izlasījāt šo pamācību ^^ un jauku dienu.
Uz redzi.
Ahmeds Nuira.
Ieteicams:
Darba sākšana ar šķiņķa radio: 5 soļi (ar attēliem)
Darba sākšana ar šķiņķa radio: būdams nesen kaltas šķiņķa licences īpašnieks, es vēlos turpināt procesu, kas tika veikts, lai ieietu šķiņķa radio. Mani vilināja hobija pašpaļāvības aspekts, dodot cilvēkiem iespēju sazināties, ja tiek traucētas citas metodes. Bet tas ir arī izdevīgi
Darba sākšana ar M5StickV AI + IOT kameru: 6 soļi (ar attēliem)
Darba sākšana ar M5StickV AI + IOT kameru: īss pārskats pienācīgas specifikācijas. Kameru darbina neticami
Darba sākšana ar Python: 7 soļi (ar attēliem)
Sāciet darbu ar Python: Programmēšana ir lieliska! Tā ir radoša, jautra un sniedz jūsu smadzenēm garīgu treniņu. Daudzi no mums vēlas uzzināt par programmēšanu, bet pārliecina sevi, ka nevaram. Varbūt tajā ir pārāk daudz matemātikas, varbūt žargons, kas tiek izmests apkārt, biedē
Darba sākšana ar La COOL dēli: 4 soļi (ar attēliem)
Darba sākšana ar La COOL dēli: Ievads " Kad mēs nāca klajā ar ideju par La COOL Board, es iedomājos sajaukumu starp Arduino ar WiFi un modulāru agronomisku laika staciju. Tam bija jātērē ļoti maz enerģijas autonomai darbībai, un es gribēju spēt kontrolēt
Darba sākšana ar NeoPixel / WS2812 RGB LED: 8 soļi (ar attēliem)
Darba sākšana ar NeoPixel / WS2812 RGB LED: [Atskaņot video] Šajā pamācībā mēs pētīsim par adresējamo RGB LED (WS2812) vai tautā pazīstamo kā Adafruit NeoPixel. NeoPixel ir gredzenu, sloksņu, dēļu un amplu saime. pulsējošu, krāsainu miniatūru gaismas diodes. Tās ir ķēdes