Arduino

Arduino med Python-tutorial til begyndere

Arduino med Python-tutorial til begyndere

Når du er begyndt at spille med Arduino-brædder, leveres standardprogrammeringssproget af Arduino. Dette sprog er yderst nyttigt til at komme i gang og kan endda bruges til reel brug. Folk, der har brugt det i et stykke tid, bemærker dog et par begrænsninger. Du er muligvis også vant til at programmere i Python allerede. Af denne grund har udviklere opfundet Micropython.

Med Micropython har du alt det grundlæggende i Python med begrænsninger på grund af den hardware, du endelig kører den på. Denne artikel vil ikke diskutere disse begrænsninger. Forhåbentlig har du et klart billede af, hvad en mikrocontroller kan gøre. Mest sandsynligt vil du opdage, at det kan gøre meget mere, end du havde forestillet dig, før du startede.

Nogle løsninger

Der er mange måder, du kan begynde at programmere en Arduino ved hjælp af Python. Før du starter, vil du overveje, om du forbereder et nyt Arduino-program eller vil tale med et. Der er flere biblioteker, der opretter nye Arduino-programmer, der omgår det standardprogrammeringssystem, de leverer.

Du har brædder, der allerede kører Micropython; Du kan finde disse på deres respektive hjemmesider.

Det kan være en god idé at oprette et Python-program, der taler med en standardmikrocontroller. Hvis du gør det, har du et par interface-biblioteker til Python. Kendte er Micropython og CircuitPython; disse er klar distributioner til at køre på specielle tavler. Du kan kompilere til andre tavler, hvis du har færdighederne.

Mu-editoren til mikropython

En enkel editor at bruge er en mu-editor. Denne editor er forberedt, så den opdager dit kort i den serielle port, hvis du har en. Hvis du ikke har en, kan du begynde at arbejde med almindelig Python. For at vælge skal du ændre tilstanden fra det øverste venstre hjørne. Standard Python fungerer, og du kan vænne dig til redaktøren.

Denne editor har et par IDE-funktioner, som kodefuldførelse, fremhævning, og du kan starte en REPL. Disse funktioner fungerer alle, selv når de er tilsluttet direkte til tavlen. For at installere editoren kan du finde den i din distributions arkiv.

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

Dette er alle de værktøjer, du har brug for med et kort, der allerede har Micropython på. En simpel kode, du kan prøve, er den almindelige blinkning af LED'en på tavlen. For at komme til hardware, som en LED, skal du importere biblioteket.

fra pyb-import-LED
importtid
tilstand = falsk;
mens det er sandt:
tid.sove (0.5)
hvis tilstand == Falsk:
LED (tændt);
tilstand = sand;
andet:
LED (slukket)
tilstand = falsk;

Brug koden ovenfor for at prøve dit nye tavle. Bemærk, at 'pyb' vil variere fra bord til bord, Adafruit bruger maskinen. Tag dig tid til at lære, hvad dine tavles værdier er fra dokumentationen.

REPL - Læs, evaluer, udskriv, loop

Når du bruger MicroPython eller en hvilken som helst Python, har du en REPL tilgængelig. Dette er en fantastisk måde at teste korte kodestykker på. I dette tilfælde kan du bruge det til at finde ud af, hvilke moduler der er tilgængelige. Funktionen help () gør et godt stykke arbejde med at guide dig gennem det grundlæggende i det, du har til rådighed.

Når du kører hjælp () uden parametre, giver det dig en liste over muligheder. Derefter er det interaktivt; skriv det, du har brug for at spørge om, og vejledning i brugen af ​​det.

Brug REPL til at finde, hvilke biblioteker bestyrelsen understøtter. Det er en lidt sværere læringsmetode, men du har for vane at bruge den indbyggede dokumentation. For virkelig at lære skal du tage et par selvstudier og bygge noget andet på dem.

Tavler, der kører Micropython

Den nemmeste måde at starte programmering af Arduino ved hjælp af Python er at købe et bord klar til det. Brædderne, der findes på markedet, er imponerende og kommer fra mange leverandører. De vigtigste biblioteker er CircuitPython og Micropython.

En imponerende række brædder kommer fra Adafruit, kaldet Circuit Playground. Disse brædder er runde, hvilket er underligt. Mere vigtigt er, at de har 10 Neopixels ombord, og det er kun den visuelle del. Flere sensorer er på tavlen, også inkluderet er to trykknapper og en skydekontakt. Indgangs- / udgangsstifterne er lavet til brug af alligatorklip, mens de stadig er tilgængelige som kapacitive berøringsknapper.

Seedstudio har også en række bestyrelser, der understøtter CircuitPython. Disse kommer i en rækkevidde fra meget lille til meget kapabel. WiPy 2.0 er et lille kort, der er klar til brug, selvom det er nyttigt at få antennesættet. Kortet har et WiFi-modul til ESP32, en RGB-LED og en nulstillingskontakt. Du får meget mindre hardware, men størrelsen er 42 mm x 20 mm x 3.5 mm, og du har stadig mange ben på tavlen.

Enkle projekter til at komme i gang

Når du har lavet dit blinkprogram, er du sikker på, at du vil prøve noget hårdere. Sørg for, at du har noget overbevisende, der er udfordrende, men løseligt. Her er nogle forslag.

Lav et program, der blinker et lys i et jævnt tempo. På samme tid skal en knap tændes og slukkes for en anden lampe. Du vil hurtigt se forsinkelsens begrænsninger ()!

Lav en MIDI-controller.

Opret et simpelt alarmsystem ved hjælp af en infrarød sensor og nogle NeoPixels.

Konklusion

Den bedste måde at komme i gang med MicroPython er at få et anstændigt kort, der allerede understøtter MicroPython eller CircuitPython og begynde at prøve dine ideer. Da ideen er at kontrollere andre ting, skal du kigge efter en pakke eller et sæt, der indeholder et par sensorer og en skærm eller to.

Glad hacking.

OpenTTD vs Simutrans
Oprettelse af din egen transportsimulering kan være sjovt, afslappende og ekstremt lokkende. Derfor skal du sørge for at prøve så mange spil som mulig...
OpenTTD Tutorial
OpenTTD er et af de mest populære forretningssimuleringsspil derude. I dette spil skal du oprette en vidunderlig transportvirksomhed. Du starter dog i...
SuperTuxKart til Linux
SuperTuxKart er en fantastisk titel designet til at give dig Mario Kart-oplevelsen gratis på dit Linux-system. Det er ret udfordrende og sjovt at spil...