„Anaconda“ („Python“) jūsų „Arduino“

„Anaconda“ logotipas

„Anaconda“ yra nemokamas ir atviras „Python“ programavimo kalbos platinimas (ir R). Atminkite, kad viena iš plačiausiai vartojamų kalbų šiandien leidžia kurti scenarijus, nes tai yra aiškinama kalba. Todėl tai priklauso nuo „Python“ vertėjo, kad mašina galėtų jį suprasti ir apdoroti. Priešingai, sudarytos kalbos yra išverstos į dvejetainį, kurį mašina gali tiesiogiai suprasti be tarpininko.

Na, Anakonda Jis plačiai naudojamas švietimo ir mašininio mokymosi srityje. Bet ir ką galite naudoti „Arduino“ plokštės valdymui. Taip, tiksliai, jūs galite naudoti „Python“ programavimo kalbą, kad sukurtumėte savo programas ir valdytumėte „Arduino“ be jokių problemų ir paprastu būdu. Čia mes paaiškinsime, kaip tai padaryti žingsnis po žingsnio ...

Kas yra Anaconda

Bueno jūs jau žinote, kas yra pitonų paskirstymas, todėl turi savybių su oficialiu „Python“. Tačiau jis siūlo keletą privalumų, palyginti su „Python“, išskyrus tai, kad yra daugiaplatformis ir atviras šaltinis, pavyzdžiui:

  • Lets įdiegti ir valdyti paketus, priklausomybes ir aplinkas duomenų mokslui paprastu būdu.
  • Tai leidžia naudoti įvairias programavimo aplinkas arba IDE, tarp jų galite naudoti su „Arduino“, „Raspberry Pi“ ir kt.
  • Paskyra su įrankiai pvz., „numpy“, „Numba“, „Dask“, „Bokeh“, „Datashader“, „Holoviews“, „Matplotlib“ ir kt., analizuoti ir vizualizuoti duomenis.
  • Leidžia sukompiliuokite pitoną į mašinos kodą užuot interpretuotas siekiant greitesnio vykdymo. Tai yra, ji taptų suburta kalba.
  • Leidžia rašykite sudėtingesnes, našesnes ir net nešiojamas programas tarp platformų, kad jūsų projektai būtų kur tik norite.

Daugiau informacijos – Įdiekite Anaconda

API, skirta naudoti su „Arduino“

„Arduino“ ir „Python“ logotipas

į norint naudoti „Python“ valdyti „Arduino“, jums reikės API. Įdiegę „Anaconda“ į savo operacinę sistemą, galite įdiekite API labai paprastu būdu. Tai yra taip paprasta, kaip anakondos iškvietimas iš komandinės eilutės, tuo metu jūsų apvalkalo eilutė pasikeis į „Anaconda“ eilutę, o viduje galėsite naudoti šią komandą, o „conda“ viskuo pasirūpins:

conda install -c auto arduino-python

Kai jau bus įdiegtas „arduino-python“ galite pradėti naudoti su savo „Arduino“ projektais. Tačiau pirmiausia turite paruošti aplinką, kad sukurtumėte naują virtualią aplinką savo pirmajam „Arduino“ projektui. Norėdami tai padaryti, „Anaconda“ eilutėje galite naudoti šią komandą, nurodydami pavadinimą ir „Python“ kalbos versiją, kurią ketinate naudoti. Pavyzdžiui:

conda create --name arduino python=3.7

Dabar virtuali aplinka „arduino“ jau sukurta naudoti su „Python“ 3.7 versija. Tai kitas yra jį suaktyvinti:

conda activate arduino

Kai būsite aktyvus, laikykite šį terminalo langą, neuždarykite jo, nes jį naudosite vėliau. Kaip tu gali tai pamatyti raginimas dabar yra (arduino)> kad galėtumėte pradėti. Būtų patogu dabar įdiegti kelis jums reikalingus paketus, pvz., „PySerial“ ryšiui su „Arduino“ plokšte. Norėdami tai padaryti, tiesiog naudokite tą pačią eilutę:

conda install pyserial

Gerai dabar atsisiųskite ir įdiekite „Arduino IDE“ Jei dar neturėjote, jei taip ir turėjote, galite pereiti prie kito žingsnio, ty parašyti kodą „Python“, kad valdytumėte „Arduino“ projektą. Galite išbandyti paprastą programą arba naudoti pavyzdžius, pateiktus su „Arduino IDE“.

Pagal ejemplo, eikite į „Arduino IDE“> Failas> Pavyzdžiai> Ryšiai> „PhysicalPixel“ ir įkelkite jį į „Arduino“ plokštę, prijungtą prie savo kompiuterio. Kai eskizas veiks, galite naudoti „Python“ kaip ir „Raspberry Pi“ lentoje su GPIO, kad pakeistumėte rezultatą. Pavyzdžiui, šiuo atveju norėdami įjungti arba išjungti šviesos diodą naudodami paprastą „Python“ kodą.

Norėdami tai padaryti, galite grįžkite į terminalo langą ir „Anaconda“ raginimą Atlikite kitą veiksmą:

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

Tai padarys ser.write funkcija gali išjungti (L) arba įjungti šviesos diodą (H) savo nuožiūra. Tada ser.close () baigiasi ir išeina () išeina. Taigi galite valdyti „Arduino“ projektus naudodami „Python“. Akivaizdu, kad tai tik pavyzdys, bet jūs galite įsivaizduoti dar daugelį atvejų ...

Taip pat galite kurti .py failus su „Python“ scenarijais kad galėčiau juos bet kada įvykdyti, nedarydamas to tiesiogiai iš anakondos eilutės. Pavyzdžiui, šis kitas:

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

Paprasta tiesa? Be to, jei jūs jau mokėjote Python kalbą, visa tai jums bus daug lengviau. Norėdami įvesti komandas, kad tokiu atveju įjungtumėte, išjungtumėte arba išeitumėte iš programos, turėsite paleisti .py ir sąveikauti su interaktyviomis šios programos parinktimis.


Būkite pirmas, kuris pakomentuos

Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.