كيفية التحكم في محرك سيرفو باستخدام Raspberry Pi: دليل خطوة بخطوة_Custom Drive_Industry Insights_Kpower
بيت > رؤى الصناعة >محرك مخصص
الدعم الفني

كيفية التحكم في محرك سيرفو باستخدام Raspberry Pi: دليل خطوة بخطوة

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

يوفر هذا الدليل إرشادات عملية وكاملة للتحكم في أحد المعاييرمضاعفاتالمحرك باستخدام كمبيوتر Raspberry Pi ذو لوحة واحدة. سوف تتعلم إعدادات الأسلاك الدقيقة ورمز Python وإعدادات PWM اللازمة لتحقيق تحكم زاوي دقيق، استنادًا إلى الاختبارات الواقعية ووثائق الأجهزة الرسمية.

01ما تحتاجه - المكونات المشتركة (لا يلزم وجود علامة تجارية)

Raspberry Pi (أي طراز مزود بدبابيس GPIO، على سبيل المثال، 3B+، 4B، أو 5)

بطاقة MicroSD مع نظام التشغيل Raspberry Pi OS (Bookworm أو الأحدث)

قياسي 5 فولتمضاعفاتالمحرك (يشيع استخدامه في هواية الروبوتات)

مصدر طاقة خارجي 5 فولت (2 أمبير أو أكثر) – معظمهمضاعفاتارسم تيارًا عاليًا

أسلاك التوصيل (أنثى إلى أنثى)

مقياس جهد صغير (اختياري، لمثال التحكم اليدوي)

> ملاحظة في العالم الحقيقي: في الفصول الدراسية النموذجية أو إعداد الهواة، غالبًا ما يقوم المستخدمون بإتلاف جهاز Raspberry Pi الخاص بهم عن طريق تشغيل المؤازرة مباشرة من دبوس 5 فولت. يوضح هذا الدليل طريقة عزل الطاقة الصحيحة.

02المبدأ الأساسي: كيف يتم التحكم في موضع المؤازرة

محرك سيرفو قياسي لا يدور بشكل مستمر. بدلاً من ذلك، فإنه يتحرك إلى زاوية محددة (عادةً من 0 درجة إلى 180 درجة) بناءً على إشارة PWM (تعديل عرض النبض). يقوم Raspberry Pi بإنشاء هذه الإشارة على دبوس GPIO.

المعلمات الحرجة (من أوراق البيانات المؤازرة ووثائق Raspberry Pi الرسمية):

تردد الإشارة: 50 هرتز (الفترة = 20 مللي ثانية)

عرض النبضة لـ 0°: 0.5 مللي ثانية (دورة العمل = 2.5%)

عرض النبضة لـ 90 درجة: 1.5 مللي ثانية (دورة العمل = 7.5%)

عرض النبضة لـ 180 درجة: 2.5 مللي ثانية (دورة العمل = 12.5%)

هذه القيم هي معايير الصناعة لمعظم الماكينات التناظرية والرقمية. تحقق دائمًا من خلال ورقة بيانات المؤازرة الخاصة بك - توجد اختلافات صغيرة.

03الخطوة 1: الأسلاك - اتصال آمن وصحيح

لا تقم أبدًا بتشغيل المؤازرة مباشرة من دبوس Raspberry Pi 5V.يمكن لجهاز مؤازر نموذجي أن يسحب ما بين 200 إلى 800 مللي أمبير أثناء الحركة، وتتجاوز تيارات الذروة 1 أمبير. يتم توصيل دبوس Raspberry Pi 5V مباشرة بمدخل USB ويمكنه توفير حوالي 500 مللي أمبير فقط بشكل موثوق (أقل في الطرز القديمة). قد يؤدي سحب المزيد من التيار إلى انخفاض الجهد أو تجميد النظام أو تلف دائم.

الأسلاك الصحيحة (تم اختبارها باستخدام الإعدادات الشائعة):

سلك سيرفو اتصال
بني (أرضي) الأرضية المشتركة: اتصل بـ Raspberry Pi GNDوإمدادات الطاقة الخارجية GND
أحمر (الطاقة، 5 فولت) محطة إيجابية لإمدادات الطاقة الخارجية 5 فولت
برتقالي/أصفر (إشارة) دبوس Raspberry Pi GPIO (على سبيل المثال، GPIO18 - الدبوس الفعلي 12)

لماذا الأرضية المشتركة إلزامية:يجب أن تتشارك إشارة التحكم في المؤازرة (0–3.3V من Pi) وطاقة المؤازرة (5V من المصدر الخارجي) في الجهد المرجعي. بدون أرضية مشتركة، تصبح الإشارة غير محددة وسوف يهتز المؤازرة أو لا يتحرك.

04الخطوة 2: تمكين PWM على Raspberry Pi

يأتي نظام Raspberry Pi OS مزودًا ببرنامج Python المثبت مسبقًا. توجد طريقتان موثوقتان لتوليد إشارات PWM دقيقة. الطريقة الموصى بها للمبتدئين هي استخدامRPi.GPIOمع الأجهزة PWM على دبابيس محددة.

دبابيس GPIO التي تدعم PWM على رأس Raspberry Pi ذو 40 سنًا:

GPIO12 (دبوس 32) - قناة PWM 0

GPIO13 (دبوس 33) - قناة PWM 1

GPIO18 (دبوس 12) – قناة PWM 0 (الأكثر استخدامًا)

GPIO19 (دبوس 35) - قناة PWM 1

树莓派pca9685多路舵机_树莓派控制舵机_树莓派控制360度舵机转动

تمكين واجهة PWM (في حالة استخدام PWM للأجهزة):ليست هناك حاجة إلى خطوات إضافية - فأجهزة PWM متاحة دائمًا. بالنسبة لبرنامج PWM (أي طرف)، لا يلزم تكوين ولكن التوقيت قد يكون أقل استقرارًا.

05الخطوة 3: كود بايثون - التحكم الدقيق في الموضع

يوجد أدناه نص بايثون كامل ومختبر يحرك المؤازرة إلى ثلاث زوايا (0°، 90°، 180°) مع توقف مؤقت لمدة ثانيتين بين كل زاوية. يتبع هذا الرمز وثائق RPi.GPIO الرسمية.

استيراد RPi.GPIO كوقت استيراد GPIO # استخدم ترقيم طرف BCM GPIO.setmode(GPIO.BCM) GPIO.setwarnings(False) # إعداد GPIO18 كإخراج PWM servo_pin = 18 GPIO.setup(servo_pin, GPIO.OUT) # إنشاء مثيل PWM عند 50 هرتز pwm = GPIO.PWM(servo_pin, 50) pwm.start(0) # ابدأ بدورة عمل بنسبة 0% def set_servo_angle(angle): """ تحويل الزاوية (0-180) إلى دورة العمل (2.5 إلى 12.5) الصيغة: Duty = (angle / 180)10 + 2.5 تم التحقق منها باستخدام أوراق بيانات مؤازرة متعددة """ إذا كانت الزاوية 180: الزاوية = 180 واجب = (الزاوية / 180.0)10.0 + 2.5 pwm.ChangeDutyCycle(duty) # السماح للسيرفو بالوصول إلى الموضع time.sleep(0.5) # إيقاف إرسال الإشارة لتقليل الارتعاش (اختياري) pwm.ChangeDutyCycle(0) time.sleep(0.1) حاول: while True: print("Moving to 0°") set_servo_angle(0) time.sleep(2) print("Moving" إلى 90 درجة") set_servo_angle(90) time.sleep(2) print("Moving to 180°") set_servo_angle(180) time.sleep(2) باستثناء KeyboardInterrupt: print("تم الإيقاف بواسطة المستخدم") pwm.stop() GPIO.cleanup()

التفاصيل الرئيسية:بعد كل موضع، يقوم الكود بتعيين دورة العمل على 0% وينتظر 0.1 ثانية. وهذا يمنع سحب الطاقة المستمر ويقلل من ارتعاش المؤازرة. العديد من الأمثلة على الإنترنت تحذف هذا الأمر، مما يسبب استنزافًا غير ضروري للتيار.

06الخطوة 4: التشغيل والاختبار

احفظ البرنامج النصي باسمservo_control.py. في المحطة، قم بتشغيل:

python3 servo_control.py

السلوك المتوقع:يدور عمود المؤازرة إلى 0 درجة، ويتوقف مؤقتًا لمدة ثانيتين، ويتحرك إلى 90 درجة، ويتوقف مؤقتًا، ويتحرك إلى 180 درجة، ثم يتكرر.

إذا لم يتحرك السيرفو:

تحقق من الأرضية المشتركة – الخطأ الأكثر شيوعًا

تأكد من تشغيل مصدر الطاقة الخارجي وأنه يوفر 5 فولت على الأقل

تأكيد رقم دبوس GPIO (BCM 18 = الدبوس الفعلي 12)

تقليل وقت النوم بعدChangeDutyCycle؟ لا - يحتاج المؤازرة إلى 300-500 مللي ثانية تقريبًا للوصول إلى الموضع

07القضايا والحلول المشتركة في العالم الحقيقي

مشكلة السبب الأكثر احتمالا الإصلاح الذي تم التحقق منه
تشنجات المؤازرة ولكنها لا تدور تيار غير كاف من مصدر الطاقة استخدم 5 فولت/2 أمبير أو مصدر أعلى؛ أضف مكثف 1000 ميكرو فاراد عبر قضبان الطاقة
يتحرك المؤازرة فقط إلى أقصى الحدود (0 درجة أو 180 درجة) نطاق دورة العمل غير صحيح قياس عرض النبض الفعلي باستخدام راسم الذبذبات؛ ضبط الصيغة
يتم إعادة تشغيل Raspberry Pi عندما يتحرك المؤازرة مؤازرة مدعومة من دبوس Pi 5V انقل طاقة المؤازرة إلى مصدر خارجي على الفور
غضب في زوايا معينة الضوضاء على خط الإشارة أو توقيت PWM للبرنامج استخدم دبوس PWM للأجهزة (GPIO12/18)؛ أضف مقاومة 1kΩ على التوالي مع خط الإشارة
المؤازرة تصبح ساخنة جدًا لا تعود دورة العمل أبدًا إلى 0% بعد تحديد الموضع يضيفpwm.ChangeDutyCycle(0)كما هو موضح في المثال

08متقدم: التحكم اليدوي بمقياس الجهد

بالنسبة للمشاريع التفاعلية، يمكنك قراءة مقياس الجهد التناظري باستخدام MCP3008 ADC (نظرًا لأن Raspberry Pi لا يحتوي على مدخلات تناظرية). ومع ذلك، هناك طريقة أبسط للاختبار وهي استخدام إدخال لوحة المفاتيح:

استيراد RPi.GPIO كوقت استيراد GPIO GPIO.setmode(GPIO.BCM) GPIO.setup(18, GPIO.OUT) pwm = GPIO.PWM(18, 50) pwm.start(0) def angle_to_duty(angle): return (angle / 180.0) * 10.0 + 2.5 حاول: while True: cmd = input("أدخل الزاوية" (0-180) أو "q" للخروج: ") if cmd == 'q': كسر حاول: angle = float(cmd) if 0

09الاستنتاجات والتوصيات القابلة للتنفيذ

النقطة الأساسية مكررة:للتحكم بأمان ودقة في جهاز مؤازر باستخدام Raspberry Pi، يجب عليك (1) استخدام مصدر طاقة خارجي 5 فولت للمؤازرة، (2) توصيل أرضية مشتركة بين Pi والمؤازرة ومصدر الطاقة، (3) إنشاء إشارة PWM بتردد 50 هرتز مع دورات عمل تقابل نبضات تتراوح من 0.5 إلى 2.5 مللي ثانية، و(4) إيقاف إشارة PWM (تشغيل 0%) بعد كل حركة لتقليل الارتعاش واستهلاك الطاقة.

خطوات العمل لتطبيق هذا الدليل:

1. اجمع المكونات المذكورة أعلاه - لا توجد حاجة لعلامات تجارية محددة، أي أجهزة مؤازرة قياسية بجهد 5 فولت تعمل.

2. قم بتوصيل السلك تمامًا كما هو موضح، مع التحقق مرة أخرى من التوصيل الأرضي المشترك.

3. انسخ نص بايثون وقم بتشغيله. مراقبة المؤازرة تتحرك إلى 0 درجة، 90 درجة، و 180 درجة.

4. قم بتعديل قيم الزوايا في البرنامج النصي لتتناسب مع احتياجات مشروعك.

5. بالنسبة لأي مشروع إنتاج أو مشروع طويل الأمد، استخدم دائمًا أجهزة PWM وأضف مكثفًا كهربائيًا بسعة 100–470 ميكروفاراد عبر خطوط الطاقة المؤازرة لتسهيل ارتفاع الجهد.

مصادر موثوقة لمزيد من التحقق:وثائق Raspberry Pi الرسمية (/documentation/computers/os.html#gpio-and-the-40-pin-header)، وورقة بيانات محرك سيرفو (عادة ما تكون متاحة على موقع الشركة المصنعة). ارجع دائمًا إلى نطاق عرض النبض الخاص بمؤازرك المحدد - في حين أن 0.5-2.5 مللي ثانية هو المعيار، فإن بعض الماكينات تستخدم 0.7-2.3 مللي ثانية. سوف يمنحك برنامج المعايرة البسيط الذي يمسح المؤازرة ويسجل الحدود الفعلية دقة مثالية.

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

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

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

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