راسبيري باي -الدرس الثامن- التحكم بمحرك السيرفو

مبتدئ

image_pdf

مثال عملي

أولا التوصيل:

سنتبع التوصيل كما في الصورة التالية:

sm9

للتوضيح:

السلك الأصفر متصل مع الرجل رقم (GPIO 18)

والسلك الأسود من البطارية متصل مع السلك الأسود من المحرك ومع السلك الأزرق الذي بدوره متصل مع الرجل GND

والسلك الأحمر من البطارية متصل مع السلك الأحمر من المحرك

وبالتالي يكون التوصيل النهائي مشابه للصورة التالية:

sm1

ثانيًا الكود البرمجي:

البرنامج التالي سيتحكم بالمحرك من خلال تحريكه للزاوية 90 درجة وينتظر ثانية واحدة ، ثم يحركه إلى الزاوية 0 درجة وينتظر ثانية واحدة ، وفي الأخير يحركه إلى الزاوية 180 درجة ، ثم يستمر بتكرار نفس الخطوات حتى تتم مقاطعته.

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BOARD)

GPIO.setup(18, GPIO.OUT)

p = GPIO.PWM(18, 50)

p.start(7.5)

try:

        while True:

               p.ChangeDutyCycle(7.5)       # turn towards 90 degree
               time.sleep(1)                            # sleep 1 second
               p.ChangeDutyCycle(2.5)       # turn towards 0 degree
               time.sleep(1)                            # sleep 1 second
               p.ChangeDutyCycle(12.5)     # turn towards 180 degree
               time.sleep(1)                            # sleep 1 second

except KeyboardInterrupt:

        p.stop()
        GPIO.cleanup()

ملاحظة: dc تم حسابها كالتالي:

dc= (0.5/20) ×100= 2.5%

dc= (1.5/20) ×100= 7.5%

dc= (2.5/20) ×100= 12.5%

X
Product added to the cart