Anaconda (Python) do do Arduino

Lógó Anaconda

Is dáileadh saor in aisce agus oscailte de theanga ríomhchlárúcháin Python é Anaconda (agus R). Cuimhnigh, ceann de na teangacha is mó a úsáidtear go forleathan sa lá atá inniu ann agus a ligeann duit scripteanna a chruthú, ós teanga ateangaireachta í. Dá bhrí sin, braitheann sé ar ateangaire Python ionas go mbeidh an meaisín in ann é a thuiscint agus a phróiseáil. I gcodarsnacht leis sin, aistrítear teangacha tiomsaithe go dénártha ar féidir leis an meaisín iad a thuiscint go díreach gan idirghabhálaí.

Bhuel, Anaconda Úsáidtear go forleathan é i réimse an oideachais agus na foghlama meaisín. Ach freisin cad is féidir leat a úsáid chun bord Arduino a rialú. Sea, go díreach, d’fhéadfá a bheith ag baint úsáide as an teanga cláir Python chun do chláir a chruthú chun Arduino a rialú gan aon fhadhb agus ar bhealach simplí. Anseo táimid chun míniú a thabhairt ar conas é a dhéanamh céim ar chéim ...

Cad é Anaconda

Bhuel, tá a fhios agat cheana féin cad é dáileadh Python, agus dá bhrí sin roinneann sé tréithe leis an Python oifigiúil. Ach tá buntáistí áirithe ag baint leis thar Python, seachas a bheith tras-ardán agus foinse oscailte, mar shampla:

  • Ceadaíonn sé duit pacáistí, spleáchais agus timpeallachtaí a shuiteáil agus a bhainistiú don eolaíocht sonraí ar bhealach simplí.
  • Ligeann sé roinnt timpeallachtaí cláraithe nó IDEanna a úsáid, lena n-áirítear ina measc is féidir leat é a úsáid le Arduino, Raspberry Pi, srl.
  • Déan cuntas uirlisí mar shampla numpy, Numba, Dask, Bokeh, Datashader, Holoviews, Matplotlib, srl., chun sonraí a anailísiú agus a shamhlú.
  • Ceadaíonn python a thiomsú i gcód meaisín in ionad é a léirmhíniú lena fhorghníomhú níos gasta. Is é sin, go mbeadh sí ina teanga tiomsaithe.
  • Ceadaíonn cláir níos casta, ardfheidhmíochta, agus fiú iniompartha a scríobh idir ardáin chun do thionscadail a thógáil cibé áit is mian leat.

Tuilleadh eolais - Suiteáil Anaconda

API le húsáid le Arduino

Lógó Arduino agus Python

go chun python a úsáid chun Arduino a rialú beidh API de dhíth ort. Nuair a bheidh Anaconda suiteáilte agat ar do chóras oibriúcháin, is féidir leat an API a shuiteáil ar bhealach an-simplí. Tá sé chomh simplí agus anaconda a agairt ón líne ordaithe, ag an nóiméad sin athróidh do phras blaosc go pras Anaconda, agus istigh ann is féidir leat an t-ordú seo a leanas a úsáid agus tabharfaidh conda aire do gach rud:

conda install -c auto arduino-python

Nuair atá suiteáilte arduino-python, cheana féin is féidir leat tosú ag úsáid é le do thionscadail Arduino. Ach ar dtús, caithfidh tú an timpeallacht a ullmhú chun timpeallacht fhíorúil nua a chruthú do do chéad tionscadal Arduino. Chun seo a dhéanamh, laistigh de phras Anaconda is féidir leat an t-ordú seo a leanas a úsáid ag sonrú ainm agus an leagan den teanga Python atá tú ag dul a úsáid. Mar shampla:

conda create --name arduino python=3.7

Anois tá an timpeallacht fhíorúil "arduino" cruthaithe cheana féin le húsáid le leagan 3.7 Python. É is é an chéad rud eile é a ghníomhachtú:

conda activate arduino

Nuair a bheidh tú gníomhach, coinnigh an fhuinneog teirminéil seo, ná dún í, mar úsáidfidh tú níos déanaí í. Conas is féidir leat é sin a fheiceáil tá an pras anois (arduino)> ionas gur féidir leat tosú. Bheadh ​​sé áisiúil duit roinnt pacáistí a shuiteáil a bheidh uait anois, mar shampla PySerial le haghaidh cumarsáide le bord Arduino. Chun seo a dhéanamh, ní gá ach an pras céanna sin a úsáid:

conda install pyserial

Ceart go leor anois Arduino IDE a íoslódáil agus a shuiteáil Mura raibh sé agat cheana, má rinne tú é, is féidir leat dul ar aghaidh go dtí an chéad chéim eile, is é sin an cód a scríobh i Python chun do thionscadal Arduino a rialú. Is féidir leat clár simplí a scríobh nó na samplaí a thagann leis an Arduino IDE a úsáid chun tástáil a dhéanamh.

De réir ejemplo, téigh chuig Arduino IDE> File> Samplaí> Cumarsáid> PhysicalPixel agus uaslódáil é ar do bhord Arduino atá ceangailte le do ríomhaire. Nuair atá an sceitse ag obair, is féidir leat Python a úsáid mar a dhéanfá ar bhord Raspberry Pi leis na GPIOnna chun an toradh a athrú. Mar shampla, sa chás seo an stiúir a chasadh air nó as le toil le cód Python simplí.

Chun seo a dhéanamh, is féidir leat téigh ar ais chuig fuinneog do chríochfoirt agus isteach sa phras Anaconda Déan an chéad cheann eile:

> conda activate arduino
(arduino) > python

Python 3.7.1 (default, Dec 10 2018, 22:54:23) [MSC v.1915 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.

>>> import serial
>>> ser = serial.Serial('COM4', 9800, timeout=1)
>>> ser.write(b'H')
>>> ser.write(b'L')
>>> ser.close()
>>> exit()
(arduino) >

Déanfaidh sé sin is féidir leis an bhfeidhm ser.write (L) a mhúchadh nó an LED (H) a chasadh air le huacht. Ansin críochnaíonn ser.close () agus scoir () amach. Mar sin is féidir leat do thionscadail Arduino a rialú le Python. Ar ndóigh níl anseo ach sampla, ach is féidir leat a lán cásanna eile a shamhlú ...

Is féidir leat freisin cruthaigh comhaid .py le scripteanna Python a bheith in ann iad a fhorghníomhú ag am ar bith gan é a dhéanamh go díreach ón pras anaconda. Mar shampla an ceann eile seo:

# Ejemplo titileo_LED.py

import serial
import time

# Define el puerto serie
# Debes comprobar desde el gestor de dispositivos de tu sistma operativo a qué puerto se corresponde el USB de la placa Arduino, en Windows sería COM4 en nuestro caso
ser = serial.Serial('COM4', 9600)

def led_on_off():
    user_input = input("\n Elige comando: encendido / apagado / quitar : ")
    if user_input =="encendido":
        print("LED está encendido...")
        time.sleep(0.1) 
        ser.write(b'H') 
        led_on_off()
    elif user_input =="apagado":
        print("LED está apagado...")
        time.sleep(0.1)
        ser.write(b'L')
        led_on_off()
    elif user_input =="quitar" or user_input == "q":
        print("Salir del programa")
        time.sleep(0.1)
        ser.write(b'L')
        ser.close()
    else:
        print("Comando no válido")
        led_on_off()

time.sleep(2) # Espera a que el puerto serie inicialice 

led_on_off()

Fírinne shimplí? Ina theannta sin, más rud é bhí an teanga Python ar eolas agat cheana, beidh sé seo ar fad i bhfad níos éasca duit. Ní bheidh ort ach do .py a reáchtáil agus idirghníomhú le roghanna idirghníomhacha an chláir seo chun orduithe a iontráil chun an clár a chasadh air, a mhúchadh nó a fhágáil sa chás seo.


Cloíonn ábhar an ailt lenár bprionsabail eitic eagarthóireachta. Chun earráid a thuairisciú cliceáil anseo.

Bí ar an chéad trácht

Fág do thrácht

Ní thabharfar do sheoladh r-phoist a fhoilsiú. Réimsí riachtanacha atá marcáilte le *

*

*

  1. Freagrach as na sonraí: Miguel Ángel Gatón
  2. Cuspóir na sonraí: SPAM a rialú, bainistíocht trácht.
  3. Legitimation: Do thoiliú
  4. Na sonraí a chur in iúl: Ní chuirfear na sonraí in iúl do thríú páirtithe ach amháin trí oibleagáid dhlíthiúil.
  5. Stóráil sonraí: Bunachar sonraí arna óstáil ag Occentus Networks (EU)
  6. Cearta: Tráth ar bith is féidir leat do chuid faisnéise a theorannú, a aisghabháil agus a scriosadh.