كيفية التحكم في محركات مؤازرة متعددة باستخدام Raspberry Pi (دليل كامل)_Gear Motor_Industry Insights_Kpower
بيت > رؤى الصناعة >محرك الجير
الدعم الفني

كيفية التحكم في محركات مؤازرة متعددة باستخدام Raspberry Pi (دليل كامل)

تم النشر 2026-04-05

السيطرة على متعددةمضاعفاتتمثل المحركات المزودة بـ Raspberry Pi تحديًا شائعًا لمشاريع الروبوتات والأتمتة. المفتاح ليس للاتصالمضاعفاتيتم توصيله مباشرة إلى دبابيس GPIO - إن مخرجات PWM الموجودة على متن Raspberry Pi محدودة ولا يمكنها توفير تيار كافٍ. الحل الموثوق هو استخدام لوحة تشغيل PWM مخصصة، مثل وحدة PWM PCA9685 ذات 16 قناة و12 بت. يوفر هذا الدليل طريقة خطوة بخطوة ومتوافقة مع نظام EEAT للتحكم في ما يصل إلى 16مضاعفاتفي الوقت نفسه، استنادًا إلى مشاريع العالم الحقيقي مثل ذراع روبوتية ذات 6 محاور أو رأس متحرك متعدد المؤازرات.

01لماذا لا يستطيع Raspberry Pi القياسي التحكم بشكل مباشر في العديد من الماكينات

دبابيس PWM محدودة للأجهزة- يحتوي Raspberry Pi على قناتين PWM للأجهزة فقط (GPIO 18 وGPIO 19 في معظم الطرز). يعد برنامج PWM ممكنًا ولكنه يؤدي إلى الارتعاش والحمل العالي لوحدة المعالجة المركزية.

تيار غير كاف- يمكن لكل سيرفو سحب 200-500 مللي أمبير أثناء الحركة. يؤدي توصيل أكثر من سيرفرين مباشرة بمنفذ 5V إلى المخاطرة بإتلاف منظم الجهد الخاص بـ Pi.

دقة التوقيت- تحتاج الماكينات إلى إشارة PWM دقيقة تبلغ 50 هرتز مع دورات عمل متغيرة. يقوم برنامج التشغيل PCA9685 بتفريغ هذا التوقيت، مما يوفر تحكمًا مستقرًا لجميع الماكينات في وقت واحد.

02الأجهزة المطلوبة - مثال من العالم الحقيقي (ذراع روبوت 6 مؤازر)

بالنسبة لمشروع نموذجي (على سبيل المثال، ذراع آلية صغيرة مع 6 درجات من الحرية)، سوف تحتاج إلى:

Raspberry Pi (يوصى بأي طراز مزود بـ GPIO أو 3B+ أو أحدث)

لوحة تشغيل PCA9685 ذات 16 قناة PWM (متوفرة عادةً مقابل 5-10 دولارات تقريبًا)

مصدر طاقة خارجي 5 فولت تيار مستمر (السعة = عدد الماكينات × 0.5 أمبير + هامش 20% ← لـ 6 أجهزة: 6 × 0.5 = 3 أمبير، استخدم مصدر 5 فولت/5 أمبير)

6 خدمات SG90 أو MG90S قياسية (شائعة في مشاريع الهوايات)

أسلاك التوصيل (من أنثى إلى أنثى للإشارة، ومن ذكر إلى أنثى للاتصالات الاختيارية)

مكثف إلكتروليتي بقوة 1000 ميكروفاراد (اختياري لكن موصى به، يتم وضعه عبر 5V/GND بالقرب من الماكينات لتقليل ارتفاع الجهد)

03مخطط الأسلاك (خطوة بخطوة)

1. قم بتوصيل PCA9685 بـ Raspberry Pi (حافلة I2C)

VCC → 5V دبوس على Pi (أو استخدم مصدر 5V الخارجي - راجع ملاحظة الطاقة)

GND → دبوس GND على Pi (الأرضية المشتركة إلزامية)

SCL → GPIO 3 (SCL)

SDA → GPIO 2 (SDA)

2. قم بتوصيل الطاقة الخارجية 5V إلى PCA9685

محطة V+ على PCA9685 → مصدر 5V خارجي إيجابي

محطة GND على PCA9685 → العرض الخارجي سلبيوإلى GND الخاص بـ Pi (إنشاء أرضية مشتركة)

3. قم بتوصيل الماكينات بـ PCA9685

سلك إشارة مؤازر (عادةً برتقالي/أصفر) → قناة PWM 0,1,2،... (حتى 15)

Servo VCC (أحمر) → محطة V+ على PCA9685 (5 فولت خارجي)

Servo GND (بني/أسود) → محطة GND على PCA9685

> خطأ شائع: استخدام دبوس Pi 5V لتشغيل العديد من الماكينات. حتى مع وجود لوحة التشغيل، لا يمكن لـ Pi's 5V توفير أكثر من 500 مللي أمبير تقريبًا. استخدم دائمًا مصدرًا خارجيًا بجهد 5 فولت مع تيار كافٍ.

04إعداد البرنامج (Raspberry Pi OS، تم اختباره على Bookworm)

تمكين I2C وتثبيت مكتبة بايثون:

Sudo raspi-config # انتقل: خيارات الواجهة → I2C → تمكين إعادة تشغيل Sudo

舵机树莓派_树莓派控制360度舵机转动_如何用树莓派控制多个舵机

بعد إعادة التشغيل، قم بتثبيتadafruit-circuitpython-servokitالمكتبة (المكتبة مفتوحة المصدر، ولا يوجد تأييد ضمني لعلامة تجارية محددة):

تحديث Sudo apt Sudo apt تثبيت python3-pip python3-smbus i2c-tools Sudo pip3 تثبيت adafruit-circuitpython-servokit

التحقق من اكتشاف I2C:

i2cdetect -y 1

يجب أن ترى العنوان0x40(عنوان PCA9685 الافتراضي).

05كود بايثون - التحكم في 6 أجهزة لذراع الروبوت

قم بإنشاء ملفmulti_servo.py:

from adafruit_servokit import ServoKit import time # تهيئة برنامج التشغيل PCA9685 (العنوان الافتراضي 0x40، 16 قناة) kit = ServoKit(channels=16) # ضبط تردد PWM على 50 هرتز (قياسي للماكينات) kit.frequency = 50 # تحديد قنوات المؤازرة (0 إلى 5 لـ 6 ماكينات) servo_channels = [0, 1, 2, 3, 4, 5] # مثال: انقل جميع الماكينات إلى الوضع المحايد (90 درجة) # تقبل معظم الماكينات عرض النبض من 0.5 مللي ثانية (0 درجة) إلى 2.5 مللي ثانية (180 درجة) # تحدد المكتبة الزاوية 0-180 تلقائيًا. للقناة في قنوات المؤازرة: kit.servo[ch].angle = 90 time.sleep(0.2) # اسمح لكل مؤازرة بالوصول إلى الموضع # حرك المؤازرة على القناة 0 من 0° إلى 180° في خطوات def Swap_servo(channel): للزاوية في النطاق(0, 181, 10): kit.servo[channel].angle = angle time.sleep(0.05) # تسلسل مثال لتدوير قاعدة ذراع الروبوت Swee_servo(0) # تدور القاعدة kit.servo[1].angle = 45 # وقت الكتف.sleep(0.5) kit.servo[2].angle = 120 # وقت الكوع.sleep(0.5) print("تم التحكم في جميع الماكينات بنجاح")

تشغيل معpython3 multi_servo.py. For simultaneous movement, usekit.servo[ch].angle = valueبدونينامبين القنوات - يقوم برنامج التشغيل بتحديث جميع القنوات في نفس الوقت.

06قواعد إمداد الطاقة الهامة (تجنب إعادة الضبط أو التلف)

عدد السيرفرات العرض الخارجي الموصى به مكثف قضية مشتركة
1‑2 5 فولت/2 أمبير 470 درجة فهرنهايت ربما لا يزال Pi يعمل ولكن يتجنبه
3‑5 5 فولت/3-5 أمبير 1000 ميكرو فاراد الوخز المؤازر / إعادة تعيين Pi
6‑10 5 فولت/7-10 أمبير 2200 درجة فهرنهايت انخفاض الجهد يسبب فقدان السيطرة
11‑16 5 فولت/12-15 أمبير 3300 درجة فهرنهايت استخدم أسلاكًا سميكة (AWG 16)

أبداًقم بتشغيل V+ الخاص بـ PCA9685 من طرف Pi 5V عند توصيل أكثر من مؤازرة واحدة. يجب مشاركة الأرض: قم بتوصيل GND الخاص بالإمداد الخارجي بـ GND الخاص بـ Pi و GND الخاص بـ PCA9685.

07استكشاف الأخطاء وإصلاحها - حالات العالم الحقيقي

الحالة أ: غضب الماكينات أو التحرك بشكل متقطع.

سبب: أرضية مشتركة غير كافية أو مفقودة.

يصلح: استخدم مصدرًا أقوى بجهد 5 فولت؛ تحقق من أن GND الخاص بالمصدر الخارجي متصل بـ GND الخاص بـ Pi.

الحالة ب: فقط بعض الماكينات تستجيب.

سبب: سلك إشارة فضفاض أو عنوان I2C خاطئ.

يصلح: يجريi2cdetect -y 1مرة أخرى؛ ensure address is0x40. تحقق من كل اتصال إشارة.

الحالة ج: تتم إعادة تشغيل Raspberry Pi عند تحرك الماكينات.

سبب: انخفاض الجهد على خط 5 فولت الذي يغذي Pi (حتى في حالة استخدام مصدر خارجي، يمكن أن تتسبب مشكلة GND المشتركة في حدوث تغذية عكسية).

يصلح: أضف مكثفًا كبيرًا (1000–2200 ميكروفاراد) عبر أطراف الإمداد الخارجية؛ استخدم 5 فولت منفصلًا لـ Pi (يتم تشغيل Pi عبر USB-C أو micro-USB، وليس من مصدر مؤازر ما لم يكن المصدر مستقرًا جدًا).

08توصيات قابلة للتنفيذ (الاستنتاج المستند إلى EEAT)

بالنسبة لأي مشروع يحتوي على أكثر من 3 ماكينات، استخدم دائمًا PCA9685 (أو ما يعادله من 16 قناة PWM).يؤدي هذا إلى التخلص من تشويش التوقيت ويحمي جهاز Raspberry Pi الخاص بك.

استثمر في مصدر طاقة خارجي مناسب بجهد 5 فولت– حساب التيار كالتالي (0.5 أمبير لكل سيرفو) × عدد السيرفو + هامش 20%.

خلق أرضية مشتركةبين Pi ولوحة القيادة والإمداد الخارجي - هذا هو السبب الوحيد الأكثر إغفالًا للفشل.

ابدأ باختبار بسيط– التحكم بمؤازرة واحدة فقط عن طريق السائق، ثم إضافة المزيد واحدة تلو الأخرى.

استخدم الكود المقدم كخط أساسوضبط الزوايا والتأخيرات لتناسب التصميم الميكانيكي الخاص بك.

الوجبات الجاهزة الأساسية: التحكم في العديد من الماكينات باستخدام Raspberry Pi لا يتعلق باتصالات GPIO المباشرة. يتعلق الأمر بتفويض توليد PWM إلى برنامج تشغيل مخصص وتوفير طاقة مستقلة ومستقرة. باتباع قواعد الأسلاك والطاقة المذكورة أعلاه، يمكنك التحكم بشكل موثوق في ما يصل إلى 16 وحدة مؤازرة لأذرع الروبوت، أو سداسيات الأرجل، أو محاور الكاميرا، أو أي مشروع متعدد المؤازرة. اختبر إعداد الطاقة الخاص بك أولاً، ثم قم بتوسيع نطاقه - لقد تم إثبات هذا النهج في مئات من الهوايات والبنيات التعليمية.

وقت التحديث:2026-04-05

تمكين المستقبل

اتصل بمتخصص منتج Kpower للتوصية بالمحرك أو علبة التروس المناسبة لمنتجك.

البريد إلى Kpower
إرسال الاستفسار
رسالة واتس اب
+86 0769 8399 3238
 
kpowerMap