جدول المحتويات:

Walabot FX - التحكم في تأثير الجيتار: 28 خطوة (بالصور)
Walabot FX - التحكم في تأثير الجيتار: 28 خطوة (بالصور)

فيديو: Walabot FX - التحكم في تأثير الجيتار: 28 خطوة (بالصور)

فيديو: Walabot FX - التحكم في تأثير الجيتار: 28 خطوة (بالصور)
فيديو: Building DIY Wireless RGB LEDs 2024, شهر نوفمبر
Anonim
Walabot FX - التحكم في تأثير الجيتار
Walabot FX - التحكم في تأثير الجيتار

تحكم في تأثير الجيتار المفضل لديك باستخدام لا شيء سوى وضعيات الغيتار الرائعة!

الخطوة 1: الأشياء التي سوف تحتاجها

مكونات الأجهزة

والابوت - ولابوت

Raspberry Pi - Raspberry Pi 3 موديل B

Sunfounder LCD1602

SunFounder PCA9685 16 Channel 12 Bit PWM Servo Driver لـ Arduino و Raspberry Pi https://www.amazon.co.uk/d/5ia/SunFounder-PCA9685 …

مؤازرة (عامة) لا يوجد ارتباط

مشبك بطارية 9 فولت

حامل بطارية 4xAA

بطاريات AA

أسلاك توصيل (عامة)

DPDT Latching Action Foot Switch

كورج SDD3000-PDL

أنظمة تشغيل البرامج والتطبيقات والخدمات عبر الإنترنت

Autodesk Fusion360 -

بلينك -

أدوات إلخ

طابعة 3D

لحام حديد

الخطوة 2: الملخص

Getting Started
Getting Started

كيف سيكون شكل التحكم في التعبير الموسيقي باستخدام أي شيء سوى موضع جيتارك في مساحة ثلاثية الأبعاد؟ حسنًا ، دعنا نطرح شيئًا ونكتشف ذلك!

الخطوة 3: الفكرة الأساسية

أردت أن أكون قادرًا على التحكم في معلمة التأثير 3 في الوقت الفعلي ، وأردت أن أفعل ذلك باستخدام كيفية وضع جيتاري. لذلك كان هناك شيء واحد واضح ، كنت سأحتاج إلى بعض الأشياء.

  • جهاز استشعار قادر على رؤية الفضاء ثلاثي الأبعاد
  • الماكينات لتحويل المقابض
  • شاشة LCD
  • سائق I2C Servo
  • توت العليق باي
  • لتعلم بايثون

الخطوة 4: Walabot

تريد أن ترى من خلال الجدران؟ هل تحسس الأشياء في الفضاء ثلاثي الأبعاد؟ هل تشعر إذا كنت تتنفس من جميع أنحاء الغرفة؟ حسنًا ، أنت محظوظ!

يعد Walabot طريقة جديدة تمامًا لاستشعار المساحة من حولك باستخدام رادار منخفض الطاقة.

كان هذا سيكون مفتاحًا لهذا المشروع ، وسأكون قادرًا على أخذ إحداثيات كارتيسان (X-Y-Z) للكائنات في مساحة ثلاثية الأبعاد ، وتعيينها لمواضع مؤازرة لتغيير كيف يبدو تأثير الجيتار ، في الوقت الفعلي ، دون لمس الدواسة.

يفوز.

يمكن العثور على مزيد من المعلومات حول Walabot هنا

الخطوة الخامسة: البدء

أول الأشياء أولاً ، ستحتاج إلى جهاز كمبيوتر لقيادة Walabot ، بالنسبة لهذا المشروع ، فأنا أستخدم Raspberry Pi 3 (المشار إليه هنا في RPi) بسبب شبكة WiFi المدمجة والجاذبية الإضافية العامة

اشتريت بطاقة SD بسعة 16 جيجا بايت مع NOOBS مثبت مسبقًا للحفاظ على الأشياء لطيفة وبسيطة ، واخترت تثبيت Raspian باعتباره نظام التشغيل Linux الذي اخترته

(إذا لم تكن معتادًا على كيفية تثبيت Raspian ، فيرجى قضاء بعض الوقت لقراءة القليل من هذا)

حسنًا ، بمجرد تشغيل Raspian على RPi الخاص بك ، هناك بعض خطوات التكوين التي يجب اتخاذها لتجهيز الأشياء لمشروعنا

الخطوة 6: إعداد Raspberry Pi - 1

تأكد أولاً من أنك تقوم بتشغيل أحدث إصدار من Kernel وتحقق من وجود تحديثات عن طريق فتح أمر shell والكتابة

sudo apt-get update

sudo apt-get dist-Upgrade

(تمت إضافة sudo لضمان حصولك على امتيازات إدارية ، على سبيل المثال. ستعمل الأشياء)

قد يستغرق هذا بعض الوقت حتى يكتمل ، لذا اذهب وتناول كوبًا من الشاي.

الخطوة 7: إعداد Raspberry Pi - 2

تحتاج إلى تثبيت Walabot SDK لـ RPi. من متصفح الويب RPi ، انتقل إلى https://www.walabot.com/gettingstarted وقم بتنزيل حزمة Raspberry Pi Installer Package.

من قذيفة الأمر:

تنزيلات الأقراص المضغوطة

sudo dpkg -I walabotSDK_RasbPi.deb

الخطوة 8: إعداد Raspberry Pi - 3

نحتاج إلى البدء في تكوين RPi لاستخدام ناقل i2c ، من قذيفة الأوامر:

sudo apt-get install python-smbus

sudo apt-get install i2c-tools

بمجرد الانتهاء من ذلك ، يجب عليك إضافة ما يلي إلى ملف الوحدات النمطية

من قذيفة الأمر:

sudo نانو / الخ / وحدات

أضف هاتين السلسلتين على أسطر منفصلة:

i2c- ديف

i2c-bcm2708

الخطوة 9: إعداد Raspberry Pi - 4

يرسم Walabot قدرًا معقولاً من التيار ، وسنستخدم أيضًا GPIO للتحكم في الأشياء ، لذلك نحتاج إلى إعدادها

من قذيفة الأمر:

sudo نانو / boot/config.txt

أضف الأسطر التالية في نهاية الملف:

safe_mode_gpio = 4

max_usb_current = 1

تعد RPi أداة ممتازة للصانعين ، ولكنها محدودة في التيار الذي يمكن إرسالها إلى Walabot. ولهذا السبب نضيف تيارًا بحد أقصى 1 أمبير بدلاً من 500 مللي أمبير القياسية

الخطوة 10: بايثون

لماذا بايثون؟ حسنًا ، نظرًا لأنه من السهل جدًا كتابة الكود وسريع التشغيل وهناك الكثير من أمثلة الثعبان الجيدة المتاحة! لم أستخدمه من قبل وسرعان ما تم تشغيله في لمح البصر. الآن تم تكوين RPi لما نريد ، والخطوة التالية هي تكوين Python للوصول إلى واجهات Walabot API و LCD Servo

الخطوة 11: بالنسبة إلى Walabot

من قذيفة القيادة

تثبيت Sudo Pip "/usr/share/walabot/python/WalabotAPI-1.0.21.zip"

الخطوة 12: بالنسبة لواجهة المؤازرة

من قذيفة القيادة

sudo apt-get install git build-basic python-dev

مؤتمر نزع السلاح ~

استنساخ بوابة

قرص مضغوط Adafruit_Python_PCA9685

sudo python setup.py install

لماذا نحتاج إلى استخدام سائق مؤازر؟ حسنًا ، ل RPi عدة أسباب.

1. يمكن أن يكون التيار المرسوم بواسطة المؤازرة مرتفعًا جدًا ، ويزداد هذا الرقم كلما زاد عدد الماكينات لديك (بالطبع). إذا كنت تقود المؤازرة مباشرة من RPi ، فإنك تخاطر بنفخ مصدر الطاقة الخاص به

2. تعد توقيتات PWM (تعديل عرض النبض) التي تتحكم في موضع الماكينات مهمة جدًا. نظرًا لأن RPi لا يستخدم نظام تشغيل في الوقت الفعلي (قد تكون هناك مقاطعات وما إلى ذلك) ، فإن التوقيتات غير دقيقة ويمكن أن تجعل الماكينات تنفجر بعصبية. يسمح برنامج التشغيل المخصص بالتحكم الدقيق ، ولكنه يسمح أيضًا بإضافة ما يصل إلى 16 خدمة ، لذلك يعد هذا أمرًا رائعًا للتوسع.

الخطوة 13: لشاشات الكريستال السائل

بلينك
بلينك

افتح متصفح الويب RPi

www.sunfounder.com/learn/category/sensor-k…

تحميل

github.com/daveyclk/SunFounder_SensorKit_…

من قذيفة الأمر:

sudo mkdir / usr / share / sunfounder

باستخدام المستكشف الرسومي ، انسخ مجلد python من الملف المضغوط إلى مجلد sunfounder الجديد

تُستخدم شاشة LCD لتوجيه المستخدم لمعرفة ما يحدث بالضبط. عرض عملية التكوين من خلال قيم x و y و z التي يتم تعيينها على كل أجهزة

الخطوة 14: بلينك

بلينك
بلينك
بلينك
بلينك

Blynk هي خدمة إنترنت الأشياء الرائعة التي تتيح لك إنشاء تطبيق مخصص للتحكم في الأشياء الخاصة بك. بدا الأمر وكأنه الحل الأمثل لمنحني التحكم عن بعد في walabot للاتصال حقًا بالإعدادات …

مشكلة واحدة. Blynk غير مدعوم حاليًا على منصة Python ، bugger. لكن لا تخف! لقد تمكنت من العثور على عمل صغير لطيف يسمح لي بالتحكم عن بعد وإدخال المعلمة عن بُعد! إنه مخترق قليلاً

الخطوة الأولى هي تنزيل تطبيق Blynk من متجر التطبيقات المفضل لديك

ثانيًا ، قم بالتسجيل للحصول على حساب

بمجرد الانتهاء من ذلك ، افتح التطبيق وابدأ مشروعًا جديدًا ، واختر Raspberry Pi 3 كجهاز.

سيخصص لك التطبيق رمز وصول (ستحتاج هذا لوضع الرمز الخاص بك)

بمجرد أن تفعل ذلك. سوف تحتاج إلى إعداد التطبيق كما هو موضح في الصور. هذه هي الطريقة التي ستتفاعل بها مع walabot.

الخطوة 15: تكوين تطبيق Blynk

تكوين تطبيق Blynk
تكوين تطبيق Blynk
تكوين تطبيق Blynk
تكوين تطبيق Blynk
تكوين تطبيق Blynk
تكوين تطبيق Blynk

الخطوة 16: يمكنك استخدام رمز الاستجابة السريعة هذا مع تطبيق Blynk لاستنساخ مشروعي لتوفير الوقت

يمكنك استخدام رمز الاستجابة السريعة هذا مع تطبيق Blynk لاستنساخ مشروعي لتوفير الوقت
يمكنك استخدام رمز الاستجابة السريعة هذا مع تطبيق Blynk لاستنساخ مشروعي لتوفير الوقت

حسنًا بعد أن تم إعداد التطبيق بالكامل ، يمكننا تكوين Python و RPi للتحدث معه عبر الإنترنت. سحر

الخطوة 17: تشغيل Blynk باستخدام Raspberry Pi واستخدام Blynk HTTPS لـ Python

أولاً ، تحتاج إلى تثبيت مجمّع Blynk HTTPS لـ Python

من قذيفة الأمر:

sudo git clone

sudo pip تثبيت blynkapi

ثانيًا ، تحتاج إلى تثبيت خدمة Blynk على RPi

من قذيفة الأمر:

استنساخ بوابة

مكتبة cd blynk / لينكس

تنظيف كل شيء

لتشغيل خدمة blynk

sudo./blynk --token = YourAuthToken

لضمان تشغيل خدمة Blynk عند بدء التشغيل ، يلزمك تعديل /etc/rc.local

عن طريق القيام

sudo nano /etc/rc.local

أضف هذا في النهاية

./blynk-library/linux/blynk --token = الرمز المميز الخاص بي &

(لقد قمت بتضمين نطاق من الملف /etc/rc.local الخاص بي في قسم الكود كمرجع)

لاختبار أنها تعمل ببساطة اكتب

بدء sudo /etc/rc.local

يجب أن تكون خدمة Blynk قيد التشغيل الآن

الخطوة 18: التشغيل التلقائي للبرنامج النصي

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

هناك بعض الاشياء لفعلها

قم بإنشاء ملف نصي جديد لتشغيل برنامج بايثون

sudo نانو تأثير الغيتار. sh

أضف هذه السطور

#! / بن / ش

python /home/pi/GuitarEffectCLI.py

تأكد من حفظه

بعد ذلك ، نحتاج إلى منح البرنامج النصي الإذن بالتشغيل عن طريق الكتابة

سودو chmod + x /home/pi/guitareffect.sh

وأخيرًا ، نحتاج إلى إضافة هذا البرنامج النصي إلى الملف /etc/rc.local الذي عملنا عليه سابقًا.

سودو نانو /etc/rc.local

يضيف

/home/pi/guitareffect.sh &

تأكد من تضمين "&" وهذا يسمح لـ Python Script بالعمل في الخلفية

حق! هذا هو كل التكوين والبرامج التي تم فرزها ، ثم حان الوقت لتوصيل الأجهزة

الخطوة 19: الأجهزة

Image
Image
Walabot guitar effects control proto1
Walabot guitar effects control proto1

أول نموذج أولي للوح

الخطوة 20: تصميم الضميمة

تصميم الضميمة
تصميم الضميمة
تصميم الضميمة
تصميم الضميمة

تم تصميم العلبة وتقديمها في Fusion360 الرائع

الخطوة 21: اللقطات الشجاعة

شجاعة الطلقات
شجاعة الطلقات
شجاعة الطلقات
شجاعة الطلقات
شجاعة الطلقات
شجاعة الطلقات

الخطوة 22: لقطات التجميع النهائية

لقطات التجميع النهائية
لقطات التجميع النهائية
لقطات التجميع النهائية
لقطات التجميع النهائية
لقطات التجميع النهائية
لقطات التجميع النهائية

الخطوة 23: لإصلاح Walabot على الحامل

لإصلاح Walabot في الحامل
لإصلاح Walabot في الحامل

استخدم القرص المعدني ذاتي اللصق الذي يأتي مع الوابوت لتثبيته في مكانه

الخطوة 24: ملفات STL للأجهزة للطباعة ثلاثية الأبعاد

الخطوة 25: مخططات توصيل الأسلاك

الخطوة 26: الكود

استخدم نص Python النصي المرفق لمشروعك

من _future_ استيراد print_function من منصة استيراد sys من نظام استيراد نظام التشغيل من blynkapi استيراد Blynk استيراد WalabotAPI استيراد وقت استيراد RPi. GPIO كـ GPIO

# إعداد GPIO باستخدام ترقيم اللوحة

GPIO.setmode (GPIO. BOARD) GPIO.setup (18 ، GPIO. IN ، pull_up_down = GPIO. PUD_UP)

#blynk رمز المصادقة

auth_token = "your_auth_token_here"

# استيراد وحدة PCA9685 للتحكم المؤازر.

استيراد Adafruit_PCA9685

#import وحدة LCD من الموقع

من Imp import load_source LCD1602 = load_source ('LCD1602'، '/usr/share/sunfounder/Python/LCD1602.py')

# قم بتهيئة PCA9685 باستخدام العنوان الافتراضي (0x40).

pwm = Adafruit_PCA9685. PCA9685 ()

# كائنات blynk

القيم الافتراضية = Blynk (auth_token، pin = "V9") start_button = Blynk (auth_token، pin = "V3") Rmax = Blynk (auth_token، pin = "V0") Rmin = Blynk (auth_token، pin = "V1") Rres = Blynk (auth_token، pin = "V2")

ThetaMax = Blynk (auth_token، pin = "V4")

ThetaRes = Blynk (auth_token، pin = "V5")

PhiMax = Blynk (auth_token، pin = "V6")

PhiRes = Blynk (auth_token، pin = "V7")

العتبة = Blynk (auth_token، pin = "V8")

ServoMin = Blynk (auth_token، pin = "V10")

ServoMax = Blynk (auth_token، pin = "V11")

def LCDsetup ():

LCD1602.init (0x27، 1) # init (العنوان التابع ، ضوء الخلفية)

def numMap (x، in_min، in_max، out_min، out_max): "" تستخدم لتعيين قراءات walabot إلى موضع المؤازرة "" "return int ((x- in_min) * (out_max - out_min) / (in_max - in_min) + خارج_دقيقة)

# استخدم هذا لتقريب البيانات الأولية إلى القيمة المخصصة

def myRound (x، base = 2): إرجاع int (base * round (float (x) / base))

#extracts الرقم من سلسلة blynk التي تم إرجاعها

رقم التعريف استخراج (val): val = str (val) return int (filter (str.isdigit، val))

# ضبط التردد على 60 هرتز ، جيد للماكينة.

pwm.set_pwm_freq (60)

# تكوين افتراضية أطوال نبضة المؤازرة min و max

SERVO_MIN = 175 # الحد الأدنى لطول النبضة من 4096 SERVO_MAX = 575 # أقصى طول للنبضة من 4096

# قيم والابوت الافتراضية

R_MAX = 60 R_MIN = 20 R_RES = 5

THETA_MAX = 20

THETA_RES = 5

PHI_MAX = 20

PHI_RES = 5

العتبة = 1

# متغيرات للتبديل blynk

على = "[u'1 ']"

فئة Walabot:

def _init _ (ذاتي):

self.wlbt = WalabotAPI self.wlbt. Init () self.wlbt. SetSettingsFolder () self.isConnected = خطأ self.isTargets = خطأ

def blynkConfig (ذاتي):

load_defaults = defaults.get_val () if str (load_defaults) == on: SERVO_MAX = ServoMax.get_val () SERVO_MAX = numberExtract (SERVO_MAX) print ("Servo Max ="، SERVO_MAX)

SERVO_MIN = ServoMin.get_val ()

SERVO_MIN = طباعة numberExtract (SERVO_MIN) ("Servo MIN ="، SERVO_MIN) R_MAX = Rmax.get_val () R_MAX = numberExtract (R_MAX) print ("R max ="، R_MAX)

R_MIN = Rmin.get_val ()

R_MIN = طباعة numberExtract (R_MIN) ("R Min =" ، R_MIN)

R_RES = Rres.get_val ()

R_RES = طباعة numberExtract (R_RES) ("R Res ="، R_RES)

THETA_MAX = ThetaMax.get_val ()

THETA_MAX = numberExtract (THETA_MAX) print ("Theta Max ="، THETA_MAX) THETA_RES = ThetaRes.get_val () THETA_RES = numberExtract (THETA_RES) print ("Theta Res ="، THETA_RES)

PHI_MAX = PhiMax.get_val ()

PHI_MAX = طباعة numberExtract (PHI_MAX) ("Phi Max ="، PHI_MAX) PHI_RES = PhiRes.get_val () PHI_RES = numberExtract (PHI_RES) طباعة ("Phi Res ="، PHI_RES)

THRESHOLD = Threshold.get_val ()

THRESHOLD = numberExtract (THRESHOLD) طباعة ("Threshold ="، THRESHOLD)

else: # إذا لم يكن هناك شيء من تطبيق blynk ، فقم بتحميل الإعدادات الافتراضية SERVO_MIN = 175 # دقيقة لطول النبضة من 4096 SERVO_MAX = 575 # الحد الأقصى لطول النبضة من 4096

# قيم والابوت الافتراضية

R_MAX = 60 R_MIN = 20 R_RES = 5

THETA_MAX = 20

THETA_RES = 5

PHI_MAX = 20

PHI_RES = 5

العتبة = 1

def connect (self): جرب: self.wlbt. ConnectAny () self.isConnected = True self.wlbt. SetProfile (self.wlbt. PROF_SENSOR) # self.wlbt. SetDynamicImageFilter (self.wlbt. FILTER_TYPE_MTI) self.wlbt. SetDynamicImageFilter (self.wlbt. FILTER_TYPE_NONE) # self.wlbt. SetDynamicImageFilter (self.wlbt. FILTER_TYPE_DERIVATIVE) self. SetArenaR (R_MIN، R_MAX، R_RES) self.wlbt. SetThreshold (THRESHOLD) باستثناء self.wlbt. Walabot خطأ كخطأ: إذا كان رمز الخطأ! = 19: # 'WALABOT_INSTRUMENT_NOT_FOUND' رفع خطأ

بداية def (ذاتي):

self.wlb البداية ()

معايرة def (self):

self.wlbt. StartCal المعايرة ()

def get_targets (ذاتي):

self.wlbt. Trigger () إرجاع self.wlbt. GetSensorTargets ()

توقف def (ذاتي):

self.wlb توقف إيقاف ()

قطع الاتصال (الذاتي):

self.wlbt. Disconnect ()

def main ():

flag = True check = "" LCDsetup () while flag: LCD1602.write (0، 0، 'Guitar') LCD1602.write (0، 1، 'Effect Control') time.sleep (2) LCD1602.write (0، 0، 'اضغط على Start to') LCD1602.write (0، 1، 'begin') time.sleep (2) if (str (check) == on): flag = False else: check = start_button.get_val () # تحقق من زر البدء blynk ، اضغط إذا (GPIO.input (18) == 0): #check footswitch flag = False

LCD1602.write (0، 0، "OK! Let's Do it")

LCD1602.write (0، 1 '') wlbt = Walabot () wlbt.blynkConfig () wlbt.connect () LCD1602.clear () if not wlbt.isConnected: LCD1602.write (0، 0، "Not Connected") آخر: LCD1602.write (0، 0، "Connected") time.sleep (2) wlbt.start () wlbt.calibrate () LCD1602.write (0، 0، "Calibrating…..") time.sleep (3)) LCD1602.write (0، 0، "بدء Walabot")

appcheck = start_button.app_status () flag = True # reset flag for main prog

while flag: # تستخدم للتأثير في وضع الاستعداد (بشكل فعال)

if (appcheck == True): if (str (check)! = on): if (GPIO.input (18)! = 0): #check footswitch flag = False else: check = start_button.get_val () #check for ابدأ زر اضغط appcheck = start_button.app_status ()

آخر:

إذا كان (GPIO.input (18)! = 0): #check footswitch flag = False

xval = 0

yval = 0 zval = 0 متوسط = 2 delayTime = 0

الأهداف = wlbt.get_targets ()

إذا كان لين (أهداف)> 0:

لـ j في النطاق (متوسط):

الأهداف = wlbt.get_targets ()

إذا كان len (الأهداف)> 0: طباعة (len (الأهداف)) الأهداف = الأهداف [0]

طباعة (str (target.xPosCm))

xval + = int (target.xPosCm) yval + = int (target.yPosCm) zval + = int (target.zPosCm) time.sleep (xval = numMap (xval، -60، 60، SERVO_MIN، SERVO_MAX)

xval = myRound (xval) إذا كان xval SERVO_MAX: xval = SERVO_MAX LCD1602.write (0، 0، 'x =' + str (xval) + '') pwm.set_pwm (0، 0، xval)

yval = yval / المتوسط

yval = numMap (yval، -60، 60، SERVO_MIN، SERVO_MAX)

yval = myRound (yval) إذا كان yval SERVO_MAX: yval = SERVO_MAX LCD1602.write (0، 1، 'y =' + str (yval)) pwm.set_pwm (1، 0، yval)

zval = zval / متوسط

zval = numMap (zval ، R_MIN ، R_MAX ، SERVO_MIN ، SERVO_MAX)

zval = myRound (zval) إذا كان zval SERVO_MAX: zval = SERVO_MAX LCD1602.write (8، 1، 'z =' + str (zval)) pwm.set_pwm (2، 0، zval)

آخر:

طباعة ("بلا أهداف") LCD1602.write (0 ، 0 ، "إيقاف التشغيل") LCD1602.write (0، 1، 'The Walabot') time.sleep (3) wlbt.stop () wlbt.disconnect ()

إذا _name_ == "_الرئيسية_":

بينما صحيح: main ()

لتأثير الجيتار

#! / بن / ش

القرص المضغوط / المنزل / بي

sudo python GuitarEffectCLI.py

نسخة من ملف RC المحلي كمرجع

#! / bin / sh -e # # rc.local # # يتم تنفيذ هذا النص البرمجي في نهاية كل مستوى تشغيل متعدد المستخدمين. # تأكد من أن البرنامج النصي سوف "يخرج من 0" عند النجاح أو أي قيمة أخرى بالخطأ. # # لتمكين أو تعطيل هذا البرنامج النصي فقط قم بتغيير التنفيذ # بت. # # افتراضيًا ، لا يفعل هذا البرنامج النصي شيئًا.

# طباعة عنوان IP

_IP = $ (hostname -I) || صحيح إذا ["$ _IP"] ؛ ثم printf "عنوان IP الخاص بي هو٪ s / n" "$ _IP" fi

./blynk-library/linux/blynk --token = "رمزك المميز يذهب هنا" &

النوم 10 sudo / home/pi/guitareffect.sh والخروج 0

الخطوة 27: استخدام مستودعات جيثب

استخدم هذا مع شاشة LCD الخاصة بـ Sunfounder

github.com/daveyclk/SunFounder_SensorKit_f…

استخدم هذا لبرنامج التشغيل المؤازر

github.com/daveyclk/Adafruit_Python_PCA968…

استخدم هذا مع غلاف HTTPS Blynk Python

github.com/daveyclk/blynkapi

الخطوة 28: الخاتمة

Image
Image
Walabot FX- Guitar Effect Control. Full Demo
Walabot FX- Guitar Effect Control. Full Demo
استنتاج
استنتاج
استنتاج
استنتاج

حسنًا ، لقد كان هذا منحنى تعليميًا حادًا ، لكنه كان يستحق ذلك.

ما أقوم به هو

  • كان علي أن أتعلم بايثون.. تبين أنها الآس
  • واجه Python على Raspberry Pi مع خدمة Blynk IoT. هذا غير مدعوم رسميًا ، لذا هناك بعض الحدود لوظائفه. لا يزال يعمل بشكل رائع على الرغم من!
  • اتضح أن Walabot رائع للتعبير الموسيقي. لقد استخدمته على Korg SDD3000 ، لكن يمكنك استخدام أي تأثير تريده

جرب بنفسك. لا يقتصر هذا على تأثيرات الجيتار ، فيمكن استخدامه مع أي أداة بأي تأثير.

مسابقة Raspberry Pi 2017
مسابقة Raspberry Pi 2017
مسابقة Raspberry Pi 2017
مسابقة Raspberry Pi 2017

الوصيف في مسابقة Raspberry Pi 2017

موصى به: