في هذا البرنامج التعليمي ، سنقوم بتصميم ذراع روبوتية تعتمد على Arduino Uno من بعض الكرتون ومحركات المؤازرة. تم شرح عملية البناء بأكملها بالتفصيل أدناه. هنا في هذا المشروع تمت برمجة Arduino Uno للتحكم في المحركات المؤازرة التي تعمل كمفاصل للذراع الآلي. يبدو هذا الإعداد أيضًا كرافعة آلية أو يمكننا تحويلها إلى رافعة عن طريق إجراء بعض التعديلات السهلة. سيكون هذا المشروع مفيدًا للمبتدئين الذين يرغبون في تعلم تطوير روبوت بسيط بتكلفة منخفضة أو يرغبون فقط في تعلم العمل مع محركات Arduino ومحركات المؤازرة.
هذا اردوينو الذراع الروبوتية يمكن أن يسيطر عليها أربعة الجهد المرتبطة به، يتم استخدام كل الجهد للسيطرة على كل المؤازرة. يمكنك تحريك هذه الماكينات عن طريق تدوير الأواني لاختيار شيء ما ، مع بعض الممارسة يمكنك بسهولة اختيار وتحريك الكائن من مكان إلى آخر. لقد استخدمنا أجهزة ذات عزم دوران منخفض هنا ولكن يمكنك استخدام أجهزة أكثر قوة لاختيار الأشياء الثقيلة. تم توضيح العملية برمتها بشكل جيد في الفيديو في النهاية. تحقق أيضًا من مشاريع الروبوتات الأخرى لدينا هنا.
المكونات مطلوبة
- اردوينو اونو
- 1000 فائق التوهج مكثف (4 قطع)
- 100nF مكثف (4 قطع)
- محرك سيرفو (SG 90 - أربع قطع)
- 10 كيلو وعاء- مقاوم متغير (4 قطع)
- مزود الطاقة (5 فولت- يفضل اثنان)
أجهزة السيارات
أولاً نتحدث قليلاً عن محركات سيرفو. تُستخدم المحركات المؤازرة بشكل أساسي عندما تكون هناك حاجة لحركة أو موضع دقيق للعمود. هذه ليست مقترحة للتطبيقات عالية السرعة. يتم اقتراح محركات مؤازرة للسرعة المنخفضة وعزم الدوران المتوسط وتطبيق الموضع الدقيق. لذلك فإن هذه المحركات هي الأفضل لتصميم الذراع الآلية.
المحركات المؤازرة متوفرة بأشكال وأحجام مختلفة. سوف نستخدم محركات مؤازرة صغيرة ، هنا نستخدم أربع محركات من نوع SG90. سيحتوي محرك سيرفو بشكل أساسي على أسلاك ، أحدهما للجهد الإيجابي والآخر للأرض والآخر لإعداد الموضع. السلك الأحمر متصل بالطاقة ، السلك الأسود متصل بالأرض والسلك الأصفر متصل بالإشارة. راجع هذا البرنامج التعليمي للتحكم في محرك سيرفو باستخدام Arduino لمعرفة المزيد عنه. في Arduino ، لدينا مكتبات محددة مسبقًا للتحكم في المؤازرة ، لذلك من السهل جدًا التحكم في المؤازرة ، والتي ستتعلمها جنبًا إلى جنب مع هذا البرنامج التعليمي.
بناء الذراع الروبوتية
خذ سطحًا مستويًا وثابتًا ، مثل طاولة أو لوحة بطاقة صلبة. بعد ذلك ، ضع محرك سيرفو في المنتصف وألصقه في مكانه. تأكد من أن درجة الدوران في المنطقة المعروضة في الشكل. تعمل هذه المؤازرة كقاعدة للذراع.
ضع قطعة صغيرة من الورق المقوى أعلى المؤازرة الأولى ثم ضع المؤازرة الثانية على قطعة اللوح هذه وألصقها في مكانها. يجب أن يتطابق دوران المؤازرة مع الرسم التخطيطي.
خذ بعض الورق المقوى وقطعهم إلى قطع 3 سم × 11 سم. تأكد من عدم تليين القطعة. قم بقطع فتحة مستطيلة في أحد طرفيها (اترك 0.8 سم من الأسفل) بما يكفي لتناسب أجهزة مؤازرة أخرى وفي الطرف الآخر قم بتركيب ترس المؤازرة بإحكام باستخدام البراغي أو بالغراء. ثم ضع المؤازرة الثالثة في الفتحة الأولى.
قم الآن بقص قطعة أخرى من الورق المقوى بالأطوال الموضحة في الشكل أدناه وألصق ترسًا آخر في الجزء السفلي من هذه القطعة.
الآن قم بلصق المؤازرة الرابعة والأخيرة على حافة القطعة الثانية كما هو موضح في الشكل.
مع هذا ، تبدو قطعتان معًا.
عند إرفاق هذا الإعداد بالقاعدة يجب أن يبدو ،
أوشكت على الإنتهاء. نحتاج فقط إلى عمل الخطاف للإمساك بالأشياء واختيارها مثل اليد الآلية. للخطاف ، قم بقطع قطعتين أخريين من لوحة البطاقات بطول 1 سم × 7 سم و 4 سم × 5 سم. قم بلصقها معًا كما هو موضح في الشكل والصق الترس النهائي عند الحافة ذاتها.
قم بتركيب هذه القطعة في الأعلى وبهذا قمنا ببناء ذراعنا الآلية.
بهذا ، تم الانتهاء من تصميم الذراع الآلية الأساسية لدينا ، وبهذه الطريقة قمنا ببناء ذراعنا الآلية منخفضة التكلفة الآن قم بتوصيل الدائرة في اللوح حسب مخطط الدائرة.
مخطط الدائرة وشرح العمل:
يتم عرض اتصال الدائرة الخاص بـ Arduino Uno Robotic Arm أدناه.
الجهد عبر المقاومات المتغيرة ليس خطيًا تمامًا ؛ ستكون صاخبة. لتصفية هذه الضوضاء ، يتم وضع المكثفات عبر كل مقاوم كما هو موضح في الشكل.
الآن سنقوم بتغذية الجهد الذي توفره هذه المقاومة المتغيرة (الجهد الذي يمثل التحكم في الموضع) في قنوات ADC في Arduino. سنستخدم أربع قنوات ADC من UNO من A0 إلى A3 لهذا الغرض. بعد تهيئة ADC ، سيكون لدينا قيمة رقمية للأواني تمثل الموضع الذي يحتاجه المستخدم. سنأخذ هذه القيمة ونطابقها مع موضع مؤازر.
Arduino لديه ست قنوات ADC. لقد استخدمنا أربعة لذراعنا الآلية. UNO ADC ذات دقة 10 بت لذا فإن قيم الأعداد الصحيحة تتراوح من 0-1023 (2 ^ 10 = 1024 قيمة). هذا يعني أنه سيعين الفولتية المدخلة بين 0 و 5 فولت في قيم عدد صحيح بين 0 و 1023. لذلك لكل (5/1024 = 4.9mV) لكل وحدة. تعرف على المزيد حول تعيين مستويات الجهد باستخدام قنوات ADC في Arduino هنا.
الآن ، لكي تقوم UNO بتحويل الإشارة التناظرية إلى إشارة رقمية ، نحتاج إلى استخدام قناة ADC في Arduino Uno ، بمساعدة الوظائف التالية:
1. analogRead (دبوس) ؛ 2. analogReference () ؛ 3. analogReadResolution (بت) ؛
قنوات Arduino ADC لها قيمة مرجعية افتراضية تبلغ 5 فولت. هذا يعني أنه يمكننا إعطاء جهد دخل أقصى قدره 5 فولت لتحويل ADC في أي قناة إدخال. نظرًا لأن بعض المستشعرات توفر جهدًا كهربيًا من 0-2.5 فولت ، لذلك مع مرجع 5 فولت ، نحصل على دقة أقل ، لذلك لدينا تعليمات تمكننا من تغيير هذه القيمة المرجعية. لذلك لتغيير القيمة المرجعية لدينا "analogReference () ؛"
كإعداد افتراضي ، نحصل على أقصى دقة للوحة ADC وهي 10 بت ، يمكن تغيير هذا القرار باستخدام التعليمات ("analogReadResolution (بت) ؛").
في دارة اليد الروبوتية الخاصة بنا ، تركنا هذا الجهد المرجعي على الوضع الافتراضي ، لذلك يمكننا قراءة القيمة من قناة ADC عن طريق استدعاء الوظيفة مباشرة "analogRead (pin) ؛" هنا يمثل "pin" دبوس حيث قمنا بتوصيل الإشارة التناظرية ، على سبيل المثال نريد أن نقرأ "A0". يمكن تخزين القيمة من ADC في عدد صحيح كـ int SENSORVALUE0 = analogRead (A0)؛ .
الآن دعنا نتحدث عن SERVO ، فإن Arduino Uno لديه ميزة تمكننا من التحكم في موضع المؤازرة من خلال إعطاء قيمة الدرجة فقط. لنفترض أنه إذا كنا نريد أن تكون المؤازرة عند 30 ، فيمكننا تمثيل القيمة في البرنامج مباشرة. يعتني ملف رأس SERVO ( Servo.h ) بجميع حسابات نسبة الرسوم داخليًا.
#تضمن
تمثل العبارة الأولى هنا ملف الرأس للتحكم في محرك سيرفو. العبارة الثانية هي تسمية المؤازرة ؛ نتركها servo0 لأننا سنستخدم أربعة. يوضح البيان الثالث مكان توصيل دبوس إشارة المؤازرة ؛ يجب أن يكون هذا دبوس PWM. نحن هنا نستخدم PIN3 لأول سيرفو. يعطي البيان الرابع أوامر لوضع محرك سيرفو بالدرجات. إذا أعطيت 30 ، يدور محرك سيرفو 30 درجة.
الآن ، لدينا موقع مؤازر SG90 من 0 إلى 180 وقيم ADC من 0-1023. سنستخدم وظيفة خاصة تطابق كلا القيمتين تلقائيًا.
sensorvalue0 = خريطة (sensorvalue0، 0، 1023، 0، 180) ؛
تقوم هذه العبارة بتعيين كل من القيم تلقائيًا وتخزين النتيجة في عدد صحيح "servovalue0" .
هذه هي الطريقة التي تحكمنا بها في الماكينات في مشروع Robotic Arm الخاص بنا باستخدام Arduino. تحقق من الكود الكامل أدناه.
كيفية تشغيل الذراع الآلية:
هناك أربع أواني مقدمة للمستخدم. ومن خلال تدوير هذه الأواني الأربعة ، نوفر جهدًا متغيرًا في قنوات ADC في UNO. لذا فإن القيم الرقمية لـ Arduino تحت سيطرة المستخدم. يتم تعيين هذه القيم الرقمية لضبط موضع محرك المؤازرة ، ومن ثم يتحكم المستخدم في موضع المؤازرة ، ومن خلال تدوير هذه الأواني يمكن للمستخدم تحريك مفاصل الذراع الروبوتية ويمكنه اختيار أي شيء أو الاستيلاء عليه.