Kan Arduino løpe Python

Kan Arduino løpe Python
Arduino er en brukervennlig læringsplattform som gjør mikrokontrollerverdenen lett tilgjengelig. I den moderne verden brukes høynivå objektorienterte programmeringsspråk som gjør kommunikasjon mellom maskinvare mer effektiv. Et så populært programmeringsspråk er Python. Her vil vi diskutere hvordan Python kan brukes til å kjøre Arduino -kode.

Arduino og Python

Python er et svært dynamisk språk med innebygd datastruktur som gjør det til et hybridvalg i å bygge maskinvarebaserte applikasjoner. Å bruke Python med Arduino -produktivitet av prosjekter kan øke, og det åpner døren for en ny verden av muligheter.

Arduino -tavler kan programmeres ved hjelp av offisiell kompileringsprogramvare Arduino IDE, men det er ikke mulig å programmere Arduino -tavler direkte ved hjelp av Python fra IDE. Det er visse biblioteker og pakker tilgjengelig som kan programmere Arduino -tavler gjennom Python.

Måter å programmere Arduino ved å bruke Python

Python og Arduino er åpen kildekodeutviklingsverktøy. Som Arduino Python også har samfunnsstøtte. Python-samfunnet har utviklet mange open source-biblioteker som kan installeres på flere plattformer som Arduino.

Mens du jobber med maskinvarebaserte plattformer som Arduino, er det veldig viktig å etablere seriell kommunikasjon mellom Arduino-tavler og datamaskiner. Flere Python -biblioteker er tilgjengelige for dette formålet. Noen mest nyttige biblioteker er:

  • Pyfirmata
  • Pyserial
  • Micropython

Hvordan sette opp Python med Arduino

Før vi går i dybden av Python -biblioteker, må vi sette opp Python og Arduino IDE, så kode skrevet i Python kan lastes opp på Arduino -tavler.

  • Python kan lastes ned fra det offisielle nettstedet. Klikk her for å laste ned.
  • Arduino IDE er tilgjengelig på Arduino offisiell nedlastingsbutikk. Klikk her for å laste ned IDE.

Installere Pip
Pip. Den administrerer og installerer alle nødvendige pakker for Python -programmering. Pip er også nødvendig for å installere Python -biblioteker nevnt tidligere.

For å installere Pip, last først ned filen ved å bruke:

krøll https: // bootstrap.Pypa.io/get-pip.py -o get -pip.py

Utfør nå installasjonskommandoen:

Python Get-Pip.py

For å oppdatere PIP kan den nedenfor nevnte kommandoen brukes:

python -m pip install -u pip

Installere pyserial

Python gir et open source-bibliotek kjent som Pyserial. Dette biblioteket muliggjør kommunikasjon med Arduino -styret av serieporten. Pyserial er en bro mellom Arduino -brett og Python -programmering.

For å installere pyserial type nedenfor kommandoen i CMD vindu:

PIP installer pyserial

Installere Pyfirmata Python -pakken

Pyfirmata brukes til seriell kommunikasjon mellom Arduino -tavlene og Python -skriptet. Uten Pyfirmata kan man ikke laste opp kode til Arduino ved hjelp av Python.

Å installere Pyfirmata med Python -pakketype -kommando nedenfor gitt kommando i ledeteksten vindu:

Pip installer pyfirmata

Last opp pyfirmata til Arduino

Pyfirmata ble utviklet for Firmata -protokollen. Det tillater kommunikasjon mellom mikrokontrollere og verts -PCen der skissen er skrevet. Enhver programvare som bruker serielle porter for kommunikasjon, kan bruke Firmata -protokoller for å grensesnitt med maskinvarebrett som Arduino Uno.

Firmata -protokoller kan testes på Arduino -tavler ved hjelp av standard Arduino Firmata Library. Følg trinnene gitt nedenfor og laste opp de Firmata Bibliotek inn i Arduino -styret.

Forsikre deg om at Arduino er koblet til COM -port før du laster opp skissen. Gå til: Fil> Eksempel> Firmata> StandardFirmata:

Koden åpnes i et nytt vindu, klikker på Laste opp Knapp for å laste opp koden til Arduino:

Etter å ha lastet opp en skisse. Arduino -styret er klart til å programmere ved hjelp av Python Language.

Last opp Python LED -program i Arduino Uno

Vi har nettopp satt opp Arduino -styret vårt med Python for å skrive det første Arduino -programmet ved hjelp av Python. Her er noen trinn som viser hvordan du skriver et LED -blinkprogram i Python og laster det opp til Arduino -styret.

Trinn 1: Åpne Python Idle ved hjelp av alternativet Windows Search Box.

Steg 2: Det nye vinduet åpner for å vise Python Idle Shell hvor vi kan skrive et Arduino -program på Python -programmeringsspråket.

Trinn 3: Trykk Ctrl+n eller klikk Fil deretter Ny fil.

Trinn 4: Lag krets først, koble den positive enden av LED ved pinne 13 og negativ eller kortere LED på GND -pin.

Trinn 5: Kopier og lim inn den gitte koden i Python tomgang:

Importer pyfirmata
Importer tid
Board = Pyfirmata.Arduino ('com8')
det = pyfirmata.util.Iterator (brett)
den.start()
x = tavle.get_pin ('d: 13: o')
Mens sant:
x.Skriv (1)

Vi startet kode ved å importere vår Pyfirmata -protokoll i Python IDE for å etablere forbindelse mellom Arduino og Python. Etter det erklærte den COM -porten som Arduino er tilkoblet. Neste bruk borde.get_pin Vi erklærte utgangspinnen som LED er tilkoblet. I samtidig som seksjon x.Skriv (1) Funksjonen vil gløde LED kontinuerlig.

Trinn 6: Når krets- og Python -koden vår er klar, er det på tide å laste opp koden vår i Arduino -styret. Lagre først Python -kode, og trykk deretter F5 eller gå til: Kjør> Kjør modul For å laste opp kode i Arduino Uno.

Ovennevnte Python -kode vil holde LED på.

Micropython

Micropython er et undergruppe av Python -programmeringsspråk som er optimalisert for å bygge Python -basert kode på mikrokontrollere. Arduino IDE støtter ikke Python, men vi kan skrive Micropython -kode i OpenMV -redaktør. Det er en programmeringsplattform for å laste opp Python -kode på Arduino -tavler. For å laste ned OpenMV -redaktør, klikk her.

OpenMV Redaktørgrensesnitt:

Foreløpig bare fire Arduino -styrer støtter mikropyton kjent som Pyboard.

  • Nano 33 ble
  • Nano 33 ble sans
  • Nano RP2040 Connect
  • Portenta H7

Konklusjon

Plattformer som Arduino er på vei opp på grunn av brukervennlig maskinvare og programvare. Takk til IoT-baserte prosjekter folk vil grensesnitt Arduino-tavler med andre språk og high-end kretsløp. Python er et av de dynamiske språkene som får mye oppmerksomhet blant Arduino -samfunnet. Python er direkte ennå ikke støttet av Arduino-plattformen, men den kan programmeres ved hjelp av Python open source-biblioteker og pakker.