Hvordan programmerer jeg Arduino i Python

Hvordan programmerer jeg Arduino i Python

Mikrokontrollere har blitt brukt i veldig lang tid, fra enkel daglig bruk av husholdningsartikler til komplekse maskiner. Kommunikasjon med mikrokontrollere var ikke en lett oppgave før Arduino, en åpen kildekode-plattform, gjør dette mulig og har gjort elektroniske kretsløp mer tilgjengelig for brukere. Arduino kommuniserer med mikrokontrollere gjennom C ++ -språk, men på grunn av fremskritt og mangfoldig interesse for folk, har flere nye språk dukket opp som for eksempel som Python. I denne artikkelen vil vi se på hvordan vi kan kontrollere Arduino -brett ved hjelp av Python.

Arduino og Python

Arduino er en elektronisk plattform som bruker C ++ som standard for å kommunisere mellom Arduino -tavler og brukere. Det er basert på både maskinvare som Arduino -tavler og programvare kjent som IDE. Arduino Ide har gjort det enkelt å kontrollere Arduino -tavler gjennom flere språk. Python er et av disse språkene som følger med Arduino Support Packages.

Python er en objektorientert programmering på høyt nivå som brukes i datastruktur, maskinlæring, programvareutvikling og automatiserte oppgaver ved bruk av mikrokontrollertavler som Arduino.

Hvordan programmere Arduino ved hjelp av Python

Arduino kan programmeres ved hjelp av Python. Vi trenger bare å installere Python -pakker ved hjelp av Pip som er et pakkebehandlerverktøy som brukes til Python -programmering. Ulike Python -pakker er tilgjengelige for å bygge seriell kommunikasjonsbro med mikrokontrollere som:

    • Micropython
    • Pyfirmata
    • Pyserial

I denne artikkelen vil vi fortsette med Pyfirmata som det er enkelt å bruke. Arduino IDE kommer også med forhåndsinstallerte pyfirmata -pakker som gjør det enkelt å installere.

Oppsett Arduino Board med Python

Før vi går lenger her er en liste over verktøy som trengs for å fortsette:

    • Arduino Board (UNO)
    • Arduino ide
    • Python 3.10.6
    • PIP -pakke 22.2.2
    • Led
    • Brødbrett

For å fortsette videre, vil vi først laste ned Python -installasjonsprogrammet og PIP -pakken for å installere Pyfirmata som hjelper oss å utvikle seriell kommunikasjon mellom Arduino Board og Python. Følg disse trinnene for å sette opp Python med Arduino.

Last ned all nødvendig programvare og pakker

Last ned alle nødvendige programvare og pakker:

Trinn 1: Last ned Python ved å gå til det offisielle nettstedet. Klikk her for å laste ned.


Når Python er lastet ned åpent Python -installasjonsprogrammet for å fullføre Python -installasjonsprosessen.


Steg 2: Det er på tide å installere Pip Package Manager. Åpne ledetekst:


Last ned Pip ved hjelp av:

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



For å installere det bruk:

Python Get-Pip.py



Skriv inn følgende kommando i Command Prompt -vinduet for å oppdatere PIP -pakken:

python -m pip install -u pip


Trinn 3: Den siste programvaren som trengs for å sette opp er Arduino IDE. Den kan lastes ned ved å besøke deres offisielle nedlastingsside der flere nedlastingsfiler er tilgjengelige i henhold til det nødvendige OS.


Installasjon av pyfirmata og pyseriale pakker

Gjennom Pip Package Manager installer PyFirmata og Pyserial Packages:

Trinn 1: For å installere pyfirmata ved hjelp av PIP, skriv kommandoen gitt nedenfor:

Pip installer pyfirmata



Steg 2: En annen veldig kjent protokoll som brukes til å kommunisere med Arduino -tavler er Pyserial Ved å skrive denne kommandoen kan den enkelt installeres:

PIP installer pyserial



Sette opp Pyfirmata med Arduino Ide

Etter å ha installert Arduino IDE -installasjonsprogrammet, åpner du den ved å dobbeltklikke på snarveisikonet eller ved å skrive IDE i Window Search Bar. For å installere Pyfirmata -pakken med et Arduino -brett, følg nedenfor gitte trinn:

Trinn 1: Åpne Arduino Ide. Et nytt vindu åpnes, med en tom skisse.


Steg 2: Oppsett Arduino Board Ports. Siste versjon av IDE (versjon 2.0) kan oppdage Arduino -tavler automatisk, men på eldre versjon gå til: Verktøy> Tavler> Arduino Avr -tavler> Arduino Uno:

For portvalg, gå til: Verktøy> Port> Serielle porter> COM:


Trinn 3: Last inn pyfirmata -skisse i Arduino IDE, for det går til: Fil> Eksempel> Firmata> StandardFirmata:


Trinn 4: Nytt vindu viser StandardFirmata Sketch:


Trinn 5: Sett sammen og last opp denne skissen til Arduino -brettet ved å bruke de nevnte knappene øverst på venstre hjørne.


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

Last opp LED -blinkprogram i Arduino Uno ved hjelp av Python

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: Nytt vindu åpner og viser 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: Nytt vindu vil åpne type kode nedenfor for å kjøre LED på Arduino -brettet på pinne 13. Koble den positive enden av LED ved pinne 13 og negativ eller kortere LED på GND -pin.


Trinn 5: Nå, 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 kretsen og Python -koden 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å. La oss gå videre og sjekke hvordan vi kan få det til å blinke.

Python ledet blinkende kode Arduino

Last nå opp et LED -blinkprogram:

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)
tid.søvn (1)
x.Skriv (0)
tid.søvn (1)



Først må vi laste opp pyfirmata for å etablere seriell forbindelse med Arduino -styret, som er erklært på linje 3 som et objekt borde Etter det har vi definert pinnen 13 der utgangen vil bli vist når LED -en vår er koblet til pinne 13.

I samtidig som Seksjonsutgangen er deklarert som høy ved bruk av 1 og lav ved bruk av 0. LED vil gløde i 1 sekund, så vil den slå seg av på grunn av tid.sove Funksjon i 1 sek.

Konklusjon

I denne artikkelen fremhevet vi hvordan vi kan bruke Python -kode i et Arduino -brett ved hjelp av Pyfirmata. Det gjør det enkelt å kjøre Python -kode i Arduino -brett. Ved hjelp av pyfirmata kan vi bruke flere andre Arduino -biblioteker med Python, men i komplekse applikasjoner er pyfirmata begrenset.