Arduino

Tutorial Arduino With Python pentru începători

Tutorial Arduino With Python pentru începători

Când ați început să jucați cu plăcile Arduino, limbajul de programare standard este furnizat de Arduino. Acest limbaj este extrem de util pentru a începe și poate fi folosit chiar și pentru utilizarea reală. Oamenii care l-au folosit de ceva timp, însă, observă câteva limitări. S-ar putea să fiți obișnuit deja cu programarea în Python. Din acest motiv, dezvoltatorii au inventat Micropython.

Cu Micropython, aveți toate elementele de bază ale Python, cu limitări datorate hardware-ului pe care îl rulați în cele din urmă. Acest articol nu va discuta aceste limitări. Sperăm că aveți o imagine clară a ceea ce poate face un microcontroler. Cel mai probabil, veți descoperi că poate face mult mai mult decât vă imaginați înainte de a începe.

Câteva soluții

Există o multitudine de moduri în care puteți începe programarea unui Arduino folosind Python. Înainte de a începe, doriți să vă gândiți dacă pregătiți un nou program Arduino sau doriți să vorbiți cu unul. Există mai multe biblioteci care creează noi programe Arduino, ocolind sistemul de programare standard pe care îl furnizează.

Aveți plăci care rulează deja Micropython; le puteți găsi pe paginile lor de pornire respective.

Poate doriți să creați un program Python care să vorbească cu un microcontroler standard. Dacă da, aveți câteva biblioteci de interfețe pentru Python. Cele mai cunoscute sunt Micropython și CircuitPython; acestea sunt distribuții gata pentru a rula pe plăci speciale. Puteți compila pentru alte panouri dacă aveți abilitățile.

Editorul de mu pentru micropiton

Un editor simplu de utilizat este un editor mu. Acest editor este pregătit astfel încât să vă detecteze placa de pe portul serial, dacă aveți unul. Dacă nu aveți unul, puteți începe să lucrați cu Python obișnuit. Pentru a alege, schimbați modul din colțul din stânga sus. Python standard funcționează și vă puteți obișnui cu editorul.

Acest editor are câteva caracteristici IDE, cum ar fi completarea codului, evidențierea și puteți începe un REPL. Toate aceste funcții funcționează chiar și atunci când sunt conectate direct la placă. Pentru a instala editorul, îl puteți găsi în depozitul de distribuție.

$ sudo apt install micropython mu-editor mu-editor-doc

Acestea sunt toate instrumentele de care aveți nevoie cu o placă care are deja Micropython pe ea. Un cod simplu pe care îl puteți încerca este clipirea obișnuită a LED-ului de pe placă. Pentru a ajunge la hardware, cum ar fi un LED, trebuie să importați biblioteca.

din LED-ul de import pyb
timpul de import
stat = Fals;
în timp ce este adevărat:
timp.somn (0.5)
if state == False:
A condus la);
stare = Adevărat;
altceva:
LED (stins);
stat = Fals;

Utilizați codul de mai sus pentru a încerca noua dvs. placă. Rețineți că „pyb” va varia de la bord la bord, Adafruit folosește mașina. Faceți timp pentru a afla care sunt valorile panourilor dvs. din documentație.

REPL - Citiți, evaluați, imprimați, buclați

Când utilizați MicroPython sau orice Python, aveți un REPL disponibil. Acesta este un mod excelent de a testa fragmente scurte de cod. În acest caz, îl puteți utiliza pentru a descoperi ce module sunt disponibile. Funcția help () face o treabă excelentă de a vă ghida prin elementele de bază ale a ceea ce aveți la dispoziție.

Când rulați help () fără parametri, acesta vă oferă o listă de opțiuni. După aceea, este interactiv; introduceți ceea ce trebuie să întrebați și îndrumări privind utilizarea acestuia.

Utilizați REPL pentru a găsi ce biblioteci acceptă placa. Este o metodă de învățare puțin mai dificilă, dar te obișnuiești să folosești documentația încorporată. Pentru a învăța cu adevărat, trebuie să luați câteva tutoriale și să construiți altceva pe ele.

Panouri care rulează Micropython

Cel mai simplu mod de a începe programarea pentru Arduino folosind Python este să cumpărați o placă pregătită pentru aceasta. Plăcile care există pe piață sunt impresionante și provin de la mulți furnizori. Principalele biblioteci sunt CircuitPython și Micropython.

O linie impresionantă de plăci provine de la Adafruit, numită Circuit Playground. Aceste plăci sunt rotunde, ceea ce este ciudat. Mai important, au 10 Neopixeli la bord și aceasta este doar partea vizuală. Pe placă sunt mai mulți senzori, de asemenea sunt incluși două butoane și un comutator glisant. Pinii de intrare / ieșire sunt concepuți pentru utilizarea clipurilor de aligator în timp ce sunt încă disponibili ca butoane tactile capacitive.

Seedstudio are, de asemenea, o gamă de plăci care suportă CircuitPython. Acestea vin într-o gamă de la foarte mici la foarte capabile. WiPy 2.0 este o placă mică, gata de funcționare, deși este util să obțineți kitul de antenă. Placa are un modul WiFi pentru ESP32, un LED RGB și un comutator de resetare. Obțineți mult mai puțin hardware, dar dimensiunea este de 42mm x 20mm x 3.5mm, și aveți în continuare multe pini pe tablă.

Proiecte simple pentru a începe

După ce ați creat programul de clipire, sunteți sigur că doriți să încercați ceva mai greu. Asigurați-vă că aveți ceva convingător, care este provocator, dar rezolvabil. Iată câteva sugestii.

Realizați un program care să clipească o lumină într-un ritm constant. În același timp, faceți un buton să pornească și să oprească o altă lampă. Veți vedea rapid limitele întârzierii ()!

Faceți un controler MIDI.

Realizați un sistem de alarmă simplu folosind un senzor infraroșu și niște NeoPixeli.

Concluzie

Cel mai bun mod de a începe cu MicroPython este să obțineți o placă decentă care acceptă deja MicroPython sau CircuitPython și să începeți să vă încercați ideile. Deoarece ideea este să controlați alte lucruri, căutați un pachet sau un kit care conține câțiva senzori și un afișaj sau doi.

Hacking fericit.

Top 5 cărți de captură a jocului
Cu toții am văzut și ne-au plăcut jocurile de streaming pe YouTube. PewDiePie, Jakesepticye și Markiplier sunt doar câțiva dintre cei mai buni jucător...
Cum să dezvolți un joc pe Linux
Acum un deceniu, nu mulți utilizatori de Linux ar fi prezis că sistemul lor de operare preferat va fi într-o zi o platformă populară de jocuri pentru ...
Open Source Ports of Commercial Game Engines
Free, open source and cross-platform game engine recreations can be used to play old as well as some of the fairly recent game titles. This article wi...