Arduino'nuz için Anaconda (Python)

Anaconda logosu

Anaconda, Python programlama dilinin ücretsiz ve açık bir dağıtımıdır (ve R). Unutmayın, günümüzde en yaygın kullanılan dillerden biri ve bu, yorumlanmış bir dil olduğu için komut dosyaları oluşturmanıza olanak tanır. Bu nedenle, makinenin anlayabilmesi ve işleyebilmesi için Python yorumlayıcısına bağlıdır. Buna karşılık, derlenen diller, bir aracı olmadan doğrudan makine tarafından anlaşılabilen bir ikiliye çevrilir.

Eh, Dev piton Eğitim ve makine öğrenimi alanında yaygın olarak kullanılmaktadır. Ama aynı zamanda ne Arduino kartını kontrol etmek için kullanabilirsiniz. Evet, kesinlikle, Arduino'yu sorunsuz ve basit bir şekilde kontrol etmek için programlarınızı oluşturmak için Python programlama dilini kullanıyor olabilirsiniz. Burada adım adım nasıl yapılacağını açıklayacağız ...

Anaconda nedir

Eh, bir python dağıtımının ne olduğunu zaten biliyorsunuzve bu nedenle, resmi Python ile aynı özellikleri paylaşır. Ancak çapraz platform ve açık kaynak olmasının yanı sıra Python'a göre bazı avantajlar sunar, örneğin:

  • Lets paketleri, bağımlılıkları ve ortamları kurun ve yönetin basit bir şekilde veri bilimi için.
  • Aralarında çeşitli programlama ortamlarının veya IDE'lerin kullanımına izin verir. Arduino, Raspberry Pi vb. ile kullanabilirsiniz.
  • İle hesap araçları verileri analiz etmek ve görselleştirmek için numpy, Numba, Dask, Bokeh, Datashader, Holoviews, Matplotlib vb.
  • Permite python'u makine koduna derleyin daha hızlı uygulama için yorumlanmak yerine. Yani derlenmiş bir dil haline gelecekti.
  • Permite daha karmaşık, yüksek performanslı ve hatta taşınabilir programlar yazın projelerinizi istediğiniz yere götürmek için platformlar arasında.

Daha fazla bilgi – Anaconda'yı yükleyin

Arduino ile kullanılacak API

Arduino ve Python logosu

Daha Arduino'yu kontrol etmek için Python'u kullanmak için bir API'ye ihtiyacınız olacak. Anaconda'yı işletim sisteminize yükledikten sonra şunları yapabilirsiniz: API'yi kurun çok basit bir şekilde. Anaconda'yı komut satırından çağırmak kadar basit, o anda kabuk isteminiz Anaconda istemine dönüşecek ve içinde aşağıdaki komutu kullanabilirsiniz ve conda her şeyi halledecektir:

conda install -c auto arduino-python

Arduino-python kurulduktan sonra, Arduino projelerinizle kullanmaya başlayabilirsiniz. Ancak önce, ilk Arduino projeniz için yeni bir sanal ortam oluşturmak için ortamı hazırlamanız gerekir. Bunu yapmak için, Anaconda komut isteminde, kullanacağınız Python dilinin bir adını ve sürümünü belirterek aşağıdaki komutu kullanabilirsiniz. Örneğin:

conda create --name arduino python=3.7

Artık "arduino" sanal ortamı Python sürüm 3.7 ile kullanılmak üzere oluşturulmuştur. O sıradaki onu etkinleştirmek:

conda activate arduino

Aktif olduktan sonra, bu terminal penceresini saklayın, daha sonra kullanacağınız için kapatmayın. Bunu nasıl görebilirsin istem şimdi (arduino)> böylece başlayabilirsiniz. Arduino kartı ile iletişim için PySerial gibi ihtiyacınız olacak bazı paketleri şimdi kurmanız uygun olacaktır. Bunu yapmak için, aynı komut isteminden kullanmanız yeterlidir:

conda install pyserial

Pekala şimdi Arduino IDE'yi indirin ve kurun Zaten sahip değilseniz, varsa, bir sonraki adıma geçebilirsiniz, bu da Arduino projenizi kontrol etmek için kodu Python'da yazmaktır. Basit bir program yazabilir veya Arduino IDE ile birlikte gelen örnekleri test etmek için kullanabilirsiniz.

tarafından örnek, Arduino IDE> Dosya> Örnekler> İletişim> Fiziksel Piksel'e gidin ve PC'nize bağlı Arduino kartınıza yükleyin. Çizim çalıştıktan sonra, sonucu değiştirmek için GPIO'larla Raspberry Pi kartında olduğu gibi Python'u kullanabilirsiniz. Örneğin, bu durumda basit bir Python koduyla LED'i istediğiniz zaman açıp kapatabilirsiniz.

Bunu yapmak için şunları yapabilirsiniz: terminal pencerenize ve Anaconda komut istemine geri dönün Bir sonrakini yapın:

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

Yapacak ser.write işlevi istendiği zaman LED'i (H) kapatabilir (L) veya açabilir. Daha sonra ser.close () biter ve exit () çıkar. Böylece Arduino projelerinizi Python ile kontrol edebilirsiniz. Açıkçası bu sadece bir örnek, ancak daha birçok vaka hayal edebilirsiniz ...

Ayrıca şunları da yapabilirsiniz Python komut dosyalarıyla .py dosyaları oluşturun bunları doğrudan anaconda komut isteminden yapmak zorunda kalmadan herhangi bir zamanda yürütebilmek. Örneğin bu diğeri:

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

Basit gerçek? Ayrıca, eğer Python dilini zaten biliyordunuz, tüm bunlar senin için çok daha kolay olacak. Bu durumda programı açmak, kapatmak veya programdan çıkmak için komutlar girmek için yalnızca .py dosyanızı çalıştırmanız ve bu programın etkileşimli seçenekleriyle etkileşime girmeniz gerekecektir.


İlk yorumu siz

Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.