ربــــط محرك السيرفو مــــــــــــــــــع الاردويــنــو والتـحكــم بــه 1

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

ربط السيرفو موتو مع الاردوينو والتحكم به

مقدمــــــــــة عن مشروع محرك السيرفو servo

السيرفو موتو servo هو عبارة عن محرك ديسي موتور تم تعديله بأضافة خاصية التغذية الراجعة مع صندوق تروس مصمم بطريقة معينة ,ويستخدمة في الروبوتات في أزرع الحركة وفي المصانع يستخدم في أزوع الالات والروافع أيضا .

في هذا المشروع يتم برمجة السيرفو servo على العمل أو التحرك من 0 درجة الي 180 درجة في عكس أتجاه عقارب الساعة , ومن ثم يتم الرجوع من 180 درجة الي 0 درجة مع أتجاه عقارب الساعة .

يتحرك حركة زاوية من 0 درجة الي 180 درجة . وهنالك أنواع تتحرك 360 درجة كاملة .

يتم برمجته مع الاردوينو باستخدام مكتبة خاصة به .

  1. لوح اردوينو أونو مع كابل USB
  2. 9 جرام محرك سيرفو
  3. حوالي 10 ذكر إلى ذكر من الأسلاك
  4. مذود طاقة 5 فولت
  5. لوحة تجارب صغيرة
تنبيه : في حال لم تكن متأكد من قدرتك على تنفيذ خطوات المشروع يرجى استشارة شخص متخصص في هذا المجال.

طريقة العمل والتوصيل

FN8WMQ5IFR1XWU5.LARGE

يتم التوصيل وفقا للصورة أعلاه .

حيث يوصل طرفا التغذية الي أطراف التغذية في الاردوينو  وطرف الاشارة يوصل الي المنفذ الرقمي رقم 10 في الاردوينو .

يمكنك تحميل الداتاشيت لسيرفو موتو من هنا servo motor datasheet .

الكـــــــــــود البرمجي

لتحميل الكود البرمجي اضغط هنا
#include <Servo.h>

Servo myservo;  // create servo object to control a servo
// twelve servo objects can be created on most boards

int pos = 0;    // variable to store the servo position

void setup() {
  myservo.attach(10);  // attaches the servo on pin 9 to the servo object
}

void loop() {
  for (pos = 0; pos <= 180; pos += 1) { // goes from 0 degrees to 180 degrees
    // in steps of 1 degree
    myservo.write(pos);              // tell servo to go to position in variable 'pos'
    delay(15);                       // waits 15ms for the servo to reach the position
  }
  for (pos = 180; pos >= 0; pos -= 1) { // goes from 180 degrees to 0 degrees
    myservo.write(pos);              // tell servo to go to position in variable 'pos'
    delay(15);                       // waits 15ms for the servo to reach the position
  }
}

أنتهت !!!

One Comment

  1. تحت التجربه

    Bilal Abdo Naje elayah

اترك تعليقاً



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