I-Anaconda (Python) ye-Arduino yakho

Ilogo ye-Anaconda

I-Anaconda ukusatshalaliswa kwamahhala nokuvulekile kolimi lohlelo lwePython (kanye no-R). Khumbula, olunye lwezilimi ezisetshenziswa kakhulu namuhla futhi olukuvumela ukuthi wakhe imibhalo, ngoba wulimi oluhunyushiwe. Ngakho-ke, kuya ngotolika wePython ukuze umshini ukwazi ukuwuqonda uphinde uwucubungule. Ngokuphambene nalokho, izilimi ezihlanganisiwe zihunyushelwa kunambambili engaqondakala ngqo emshinini ngaphandle komxhumanisi.

Yebo, Anaconda Isetshenziswa kabanzi emkhakheni wezemfundo nokufunda ngomshini. Kepha futhi yini ungasebenzisa ukulawula ibhodi le-Arduino. Yebo, ungahle usebenzise ulimi lohlelo lwePython ukudala izinhlelo zakho zokulawula i-Arduino ngaphandle kwenkinga nangendlela elula. Lapha sizochaza ukuthi singakwenza kanjani igxathu negxathu ...

Yini u-Anaconda

Yebo, usuvele uyazi ukuthi yini ukusatshalaliswa kwe-python, ngakho-ke wabelana ngezici nePython esemthethweni. Kepha inikeza izinzuzo ezithile ngaphezu kwePython, ngaphandle kokuba yi-cross-platform nomthombo ovulekile, onjenge:

  • Ikuvumela faka futhi uphathe amaphakheji, ukuncika nezindawo yesayensi yedatha ngendlela elula.
  • Ivumela ukusebenzisa izindawo eziningana zokuhlela noma ama-IDE, kufaka phakathi phakathi kwazo ungayisebenzisa nge-Arduino, Raspberry Pi, njll.
  • I-Akhawunti nge i-herramientas okufana numpy, Numba, Dask, Bokeh, Datashader, Holoviews, Matplotlib, njll, ukuhlaziya nokubona ngeso lengqondo idatha.
  • Ivumela hlanganisa i-python ibe yikhodi yomshini esikhundleni sokuhunyushelwa ukwenziwa ngokushesha. Lokho wukuthi, kuzoba ulimi oluhlanganisiwe.
  • Ivumela bhala izinhlelo eziyinkimbinkimbi ngokwengeziwe, ukusebenza okuphezulu, ngisho neziphathekayo phakathi kwamapulatifomu ukuthatha amaphrojekthi akho nomaphi lapho ufuna khona.

Ulwazi olwengeziwe - Faka i-Anaconda

I-API ezosetshenziswa ne-Arduino

Ilogo ye-Arduino nePython

para ukusebenzisa i-python ukulawula i-Arduino uzodinga i-API. Lapho usufake i-Anaconda kusistimu yakho yokusebenza, ungakwazi faka i-API ngendlela elula kakhulu. Kulula njengokucela i-anaconda kusuka kulayini womyalo, ngaleso sikhathi i-Shell Prompt yakho izoshintshela ku-Anaconda Prompt, futhi ngaphakathi kwakho ungasebenzisa umyalo olandelayo futhi i-conda izonakekela konke:

conda install -c auto arduino-python

Lapho i-arduino-python isifakiwe, sekuvele ungaqala ukuyisebenzisa ngamaphrojekthi wakho we-Arduino. Kepha okokuqala, kufanele ulungiselele imvelo ukudala indawo ebonakalayo ebonakalayo yephrojekthi yakho yokuqala ye-Arduino. Ukwenza lokhu, ngaphakathi kwe-Anaconda Prompt ungasebenzisa umyalo olandelayo ocacisa igama nohlobo lolimi lwePython ozolisebenzisa. Ngokwesibonelo:

conda create --name arduino python=3.7

Manje imvelo ebonakalayo "i-arduino" isivele idalelwe ukusetshenziswa ne-Python version 3.7. It okulandelayo ukuyenza isebenze:

conda activate arduino

Uma ususebenze, gcina leli windi lokugcina, ungalivali, njengoba uzolisebenzisa kamuva. Ungakubona kanjani lokho ukwaziswa manje (arduino)> ukuze ukwazi ukuqala. Kungakuhle ukuthi ufake manje amaphakheji ozowadinga, njengePySerial yokuxhumana nebhodi le-Arduino. Ukuze wenze lokhu, mane usebenzise kusuka kulowo mzuzu ofanayo:

conda install pyserial

Kulungile manje landa bese ufaka i-Arduino IDE Uma ubungenayo vele, uma unayo, ungadlulela esinyathelweni esilandelayo, okungukuthi ukubhala ikhodi kuPython ukulawula iphrojekthi yakho ye-Arduino. Ungabhala uhlelo olulula noma usebenzise izibonelo eziza ne-Arduino IDE ukuhlola.

Por ejemplo, iya ku-Arduino IDE> Ifayela> Izibonelo> Ukuxhumana> iPhysicalPixel bese uyilayisha ebhodini lakho le-Arduino elixhunywe kwi-PC yakho. Lapho lo mdwebo ususebenza, ungasebenzisa iPython njengoba ubuyokwenza ebhodini le-Raspberry Pi nama-GPIOs ukushintsha umphumela. Isibonelo, kulokhu ukuvula noma ukuvala i-LED ngentando ngekhodi elula yePython.

Ukuze wenze lokhu, unga buyela ewindini lakho lokugcina ungene ku-Anaconda Prompt Yenza okulandelayo:

> 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) >

Lokho kuzokwenza umsebenzi wokubhala ungacisha (L) noma uvule i-LED (H) ngokuthanda. Ngemuva kwalokho i-ser.close () iyaphela bese exit () iyaphuma. Ngakho-ke ungalawula amaphrojekthi wakho we-Arduino ngePython. Ngokusobala lesi yisibonelo nje, kepha ungacabanga amacala amaningi ...

Ungakwazi futhi dala amafayela .py anemibhalo ye-Python bakwazi ukubakhipha nganoma yisiphi isikhathi ngaphandle kokuthi bakwenze ngqo kusuka ku-anaconda Prompt. Isibonelo lokhu okunye:

# 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()

Iqiniso elilula? Ngaphezu kwalokho, uma ubulwazi vele ulimi lwePython, konke lokhu kuzoba lula kakhulu kuwe. Kuzofanele usebenzise i-.py yakho kuphela futhi uhlanganyele nezinketho zokusebenzisana zalolu hlelo ukufaka imiyalo yokuvula, ukucisha noma ukuphuma kohlelo kuleli cala.


Yiba ngowokuqala ukuphawula

Shiya umbono wakho

Ikheli lakho le ngeke ishicilelwe. Ezidingekayo ibhalwe nge *

*

*

  1. Ubhekele imininingwane: Miguel Ángel Gatón
  2. Inhloso yedatha: Lawula Ugaxekile, ukuphathwa kwamazwana.
  3. Ukusemthethweni: Imvume yakho
  4. Ukuxhumana kwemininingwane: Imininingwane ngeke idluliselwe kubantu besithathu ngaphandle kwesibopho esisemthethweni.
  5. Isitoreji sedatha: Idatabase ebanjwe yi-Occentus Networks (EU)
  6. Amalungelo: Nganoma yisiphi isikhathi ungakhawulela, uthole futhi ususe imininingwane yakho.