أناكوندا (بايثون) لاردوينو الخاص بك

شعار أناكوندا

Anaconda هو توزيع مجاني ومفتوح للغة برمجة Python (و R). تذكر ، واحدة من أكثر اللغات استخدامًا اليوم والتي تسمح لك بإنشاء نصوص ، لأنها لغة مفسرة. لذلك ، يعتمد ذلك على مترجم Python حتى يتمكن الجهاز من فهمه ومعالجته. في المقابل ، تُترجم اللغات المترجمة إلى ثنائي يمكن للآلة فهمه مباشرة دون وسيط.

حسنا، الأناكندة أفعى ضخمة يستخدم على نطاق واسع في مجال التعليم والتعلم الآلي. ولكن ماذا أيضا يمكنك استخدامها للتحكم في لوحة Arduino. نعم ، بالضبط ، يمكنك استخدام لغة برمجة Python لإنشاء برامجك للتحكم في Arduino دون أي مشكلة وبطريقة بسيطة. سنشرح هنا كيفية القيام بذلك خطوة بخطوة ...

ما هو اناكوندا

حسنا، أنت تعرف بالفعل ما هو توزيع بيثون، وبالتالي تشترك في الخصائص مع Python الرسمية. لكنها تقدم بعض المزايا على Python ، بصرف النظر عن كونها منصة مشتركة ومفتوحة المصدر ، مثل:

  • انها تسمح لك تثبيت وإدارة الحزم والاعتمادات والبيئات لعلوم البيانات بطريقة بسيطة.
  • يسمح باستخدام بيئات البرمجة المختلفة أو IDEs ، من بينها أيضًا يمكنك استخدامه مع Arduino و Raspberry Pi وما إلى ذلك.
  • لديها أدوات مثل numpy و Numba و Dask و Bokeh و Datashader و Holoviews و Matplotlib وما إلى ذلك لتحليل وتصور البيانات.
  • انها تسمح ترجمة python إلى رمز الآلة بدلا من أن يتم تفسيرها لتنفيذ أسرع. أي أنها ستصبح لغة مجمعة.
  • انها تسمح كتابة برامج أكثر تعقيدًا وعالية الأداء وحتى محمولة بين المنصات لتأخذ مشاريعك أينما تريد.

مزيد من المعلومات – تثبيت اناكوندا

API للاستخدام مع Arduino

شعار Arduino و Python

إلى لاستخدام Python للتحكم في Arduino ، ستحتاج إلى واجهة برمجة تطبيقات. بمجرد تثبيت Anaconda على نظام التشغيل الخاص بك ، يمكنك ذلك تثبيت API بطريقة بسيطة للغاية. الأمر بسيط مثل استدعاء anaconda من سطر الأوامر ، في تلك اللحظة سيتغير موجه shell الخاص بك إلى موجه Anaconda ، وفي الداخل يمكنك استخدام الأمر التالي وستتولى conda كل شيء:

conda install -c auto arduino-python

بمجرد تثبيت arduino-python ، بالفعل يمكنك البدء في استخدامه مع مشاريع Arduino الخاصة بك. لكن أولاً ، عليك إعداد البيئة لإنشاء بيئة افتراضية جديدة لمشروعك الأول في Arduino. للقيام بذلك ، في موجه Anaconda يمكنك استخدام الأمر التالي لتحديد اسم وإصدار لغة Python التي ستستخدمها. على سبيل المثال:

conda create --name arduino python=3.7

الآن تم إنشاء البيئة الافتراضية "اردوينو" بالفعل للاستخدام مع بايثون الإصدار 3.7. هو - هي التالي هو تفعيله:

conda activate arduino

بمجرد تنشيطها ، احتفظ بنافذة المحطة هذه ، ولا تغلقها ، حيث ستستخدمها لاحقًا. كيف يمكنك أن ترى ذلك الموجه الآن (اردوينو)> حتى تتمكن من البدء. سيكون من الملائم أن تقوم الآن بتثبيت بعض الحزم التي ستحتاج إليها ، مثل PySerial للتواصل مع لوحة Arduino. للقيام بذلك ، ما عليك سوى استخدام نفس الموجه:

conda install pyserial

حسنا الآن قم بتنزيل وتثبيت Arduino IDE إذا لم يكن لديك بالفعل ، إذا كان لديك بالفعل ، فيمكنك الانتقال إلى الخطوة التالية ، وهي كتابة الكود في Python للتحكم في مشروع Arduino الخاص بك. يمكنك كتابة برنامج بسيط أو استخدام الأمثلة التي تأتي مع Arduino IDE للاختبار.

من قبل مثال، انتقل إلى Arduino IDE> ملف> أمثلة> الاتصال> PhysicalPixel وقم بتحميله على لوحة Arduino المتصلة بجهاز الكمبيوتر الخاص بك. بمجرد أن يعمل الرسم ، يمكنك استخدام Python كما تفعل على لوحة Raspberry Pi مع GPIOs لتغيير النتيجة. على سبيل المثال ، في هذه الحالة ، يمكنك تشغيل أو إيقاف تشغيل LED حسب الرغبة باستخدام رمز Python بسيط.

للقيام بذلك ، يمكنك ارجع إلى نافذة المحطة الطرفية الخاصة بك وإلى موجه Anaconda افعل التالي:

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

من شأنها أن تجعل يمكن لوظيفة ser.write إيقاف تشغيل (L) أو تشغيل مؤشر LED (H) حسب الرغبة. ثم ينتهي ser.close () ويخرج () المخارج. حتى تتمكن من التحكم في مشاريع Arduino الخاصة بك باستخدام Python. من الواضح أن هذا مجرد مثال ، لكن يمكنك تخيل المزيد من الحالات ...

يمكنك أيضا إنشاء ملفات .py باستخدام نصوص Python النصية لتتمكن من تنفيذها في أي وقت دون الحاجة إلى القيام بذلك مباشرة من موجه الأناكوندا. على سبيل المثال هذا الآخر:

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

حقيقة بسيطة؟ علاوة على ذلك ، إذا كنت تعرف بالفعل لغة بايثون ، كل هذا سيكون أسهل بكثير بالنسبة لك. سيكون عليك فقط تشغيل .py الخاص بك والتفاعل مع الخيارات التفاعلية لهذا البرنامج لإدخال أوامر لتشغيل البرنامج أو إيقاف تشغيله أو الخروج منه في هذه الحالة.


كن أول من يعلق

اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.