جدول المحتويات:

تتبع الضوء وتجنب الروبوت على أساس الأردوينو: 5 خطوات
تتبع الضوء وتجنب الروبوت على أساس الأردوينو: 5 خطوات

فيديو: تتبع الضوء وتجنب الروبوت على أساس الأردوينو: 5 خطوات

فيديو: تتبع الضوء وتجنب الروبوت على أساس الأردوينو: 5 خطوات
فيديو: الدرس 5 - ماهي الأردوينو ؟ 2024, شهر نوفمبر
Anonim
تتبع خفيف وتجنب الروبوت على أساس اردوينو
تتبع خفيف وتجنب الروبوت على أساس اردوينو

هذا مشروع بسيط يتبع أو يتجنب الضوء.

لقد صنعت هذه المحاكاة في Proteus 8.6 pro. المكونات المطلوبة: -1) Arduino uno.

2) 3 LDR.

3) 2 محرك تروس تيار مستمر 4) محرك واحد. 5) ثلاثة مقاومات 1 كيلو 6) جسر H واحد l290D7) مفتاح تشغيل وإيقاف واحد [لتغيير حالة البرنامج]

8) بطارية 9 فولت و 5 فولت

الخطوة 1: كود Ardunio

تم تعديل كود Arduino بتاريخ litte -bit بتاريخ 23 February 2016]

تم التعليق على هذا الرمز بشدة ، لا أريد أن أشرح ذلك ، ولكن إذا كنت بحاجة إلى بعض المساعدة ، فلا تتردد في الاتصال بي على ([email protected])

ملاحظة: - أستخدم شرطين في هذا البرنامج الأول للمتابعة الخفيفة والثاني لتجنب الضوء.

بقدر ما يتم استيفاء هذه الشروط ، سوف يتبع الروبوت الضوء أو يتجنبه. [هذا هو الحد الأدنى لقيمة LDR التي أختارها. في الضوء العادي ، يتراوح النطاق من 80 إلى 95 ولكن مع زيادة شدته أكثر فأكثر من الفولتية المستحثة ، حيث إنه يعمل على مبدأ مقسم الجهد int a = 400 ؛ // قيمة التسامح]

الخطوة 2: ملفات Proteus

لتنزيل مكتبة Arduino من هذا الرابط

الخطوة 3: كيف يعمل جسر H الخاص بك

كيف يعمل جسر H الخاص بك
كيف يعمل جسر H الخاص بك
كيف يعمل جسر H الخاص بك
كيف يعمل جسر H الخاص بك

L293NE / SN754410 هو جسر H أساسي للغاية. لها جسرين ، أحدهما على الجانب الأيسر من الشريحة والآخر على اليمين ، ويمكنه التحكم في محركين. يمكنه تشغيل ما يصل إلى 1 أمبير من التيار ، ويعمل بين 4.5 فولت و 36 فولت. يمكن لمحرك DC الصغير الذي تستخدمه في هذا المختبر أن يعمل بأمان بجهد منخفض ، لذا سيعمل هذا الجسر H بشكل جيد. يحتوي الجسر H على الدبابيس والميزات التالية: Pin 1 (1، 2EN) يتيح محركنا ويعطله سواء كان عاليًا أو LOWPin 2 (1A) هو دبوس منطقي لمحركنا (الإدخال إما مرتفع أو منخفض) دبوس الرقم 3 (1Y) مخصص لأحد أطراف المحرك ، الدبوس 4-5 للأرض ، الدبوس 6 (2Y) لمحطة المحرك الأخرى ، الدبوس 7 (2A) هو دبوس منطقي لمحركنا (الإدخال إما مرتفع أو منخفض) دبوس 8 (VCC2)) هو مصدر الطاقة لمحركنا ، يجب أن يُعطى هذا الجهد المقنن لمحركك ، دبوس 9-11 غير متصل لأنك تستخدم محركًا واحدًا فقط في هذا المختبر ، دبوس 12-13 مخصص للأرض ، دبوس 14-15 غير متصل ، دبوس 16 (VCC1) هو متصل بـ 5 فولت أعلاه هو رسم تخطيطي للجسر H وأي دبابيس تفعل ماذا في مثالنا. يشتمل الرسم البياني على جدول حقيقة يوضح كيفية عمل المحرك وفقًا لحالة دبابيس المنطق (التي تم تعيينها بواسطة Arduino).

في هذا المشروع ، يتصل دبوس التمكين بدبوس رقمي على Arduino حتى تتمكن من إرساله إما مرتفعًا أو منخفضًا وتشغيل المحرك أو إيقاف تشغيله. يتم توصيل دبابيس منطق المحرك أيضًا بمسامير رقمية محددة على Arduino حتى تتمكن من إرسالها HIGH و LOW لجعل المحرك يدور في اتجاه واحد ، أو LOW و HIGH لجعله يدور في الاتجاه الآخر. يتصل جهد إمداد المحرك بمصدر الجهد للمحرك ، والذي يكون عادةً مصدر طاقة خارجي. إذا كان محركك يعمل بجهد 5 فولت وأقل من 500 مللي أمبير ، فيمكنك استخدام خرج 5 فولت من Arduino. تتطلب معظم المحركات جهدًا عاليًا وسحب تيار أعلى من هذا ، لذلك ستحتاج إلى مصدر طاقة خارجي.

قم بتوصيل المحرك بالجسر H قم بتوصيل المحرك بالجسر H كما هو موضح في الصورة الثانية.

أو ، إذا كنت تستخدم مصدر طاقة خارجيًا لـ Arduino ، فيمكنك استخدام دبوس Vin.

الخطوة 4: كيف يعمل LDR

الآن أول شيء قد يحتاج إلى مزيد من التوضيح هو استخدام المقاومات المعتمدة على الضوء. المقاومات المعتمدة على الضوء (أو LDR) هي مقاومات تتغير قيمتها اعتمادًا على كمية الضوء المحيط ، ولكن كيف يمكننا اكتشاف المقاومة باستخدام Arduino؟ حسنًا ، لا يمكنك حقًا ، ولكن يمكنك اكتشاف مستويات الجهد باستخدام المسامير التناظرية ، والتي يمكن قياسها (في الاستخدام الأساسي) بين 0-5 فولت. الآن قد تسأل "حسنًا ، كيف يمكننا تحويل قيم المقاومة إلى تغيرات في الجهد؟" ، الأمر بسيط ، نحن نصنع مقسم جهد. يأخذ مقسم الجهد الجهد ثم يخرج جزءًا منه يتناسب مع جهد الدخل ونسبة قيمتي المقاومات المستخدمة. المعادلة التي هي:

جهد الخرج = جهد الإدخال * (R2 / (R1 + R2)) حيث R1 هي قيمة المقاوم الأول و R2 هي قيمة الثاني.

الآن هذا لا يزال يطرح السؤال "ولكن ما هي قيم المقاومة التي يمتلكها LDR؟" ، سؤال جيد. كلما قلت كمية الضوء المحيط كلما زادت المقاومة ، كلما زاد الضوء المحيط يعني مقاومة أقل. الآن بالنسبة إلى LDR الخاصة التي استخدمتها ، كان نطاق مقاومتها يتراوح من 200 إلى 10 كيلو أوم ، ولكن هذا يتغير لأخرى مختلفة ، لذا تأكد من البحث عن المكان الذي اشتريته منه وحاول العثور على ورقة بيانات أو شيء من هذا القبيل. الحالة R1 هي في الواقع LDR ، لذا دعنا نعيد هذه المعادلة ونقوم ببعض السحر الرياضي (السحر الكهربائي الرياضي) الآن نحتاج أولاً إلى تحويل قيم كيلو أوم هذه إلى أوم: 200 كيلو أوم = 200 ، 000 أوم 10 كيلو أوم = 10 ، 000 أوم ، لذا للعثور على جهد الخرج عندما نكون في درجة اللون الأسود ، نقوم بتوصيل الأرقام التالية: 5 * (10000 / (200000 + 10000)) الإدخال هو 5 فولت لأن هذا هو ما نحصل عليه من اردوينو. ما سبق يعطينا 0.24 فولت (تقريب) والآن نجد جهد الخرج في ذروة السطوع باستخدام الأرقام التالية: 5 * (10000 / (10000 + 10000)) وهذا يعطينا 2.5 فولت بالضبط. إذن هذه هي قيم الجهد التي سنصل إليها في دبابيس Arduino التناظرية ، لكن هذه ليست القيم التي ستظهر في البرنامج ، "لكن لماذا؟" يمكنك السؤال. يستخدم Arduino شريحة تناظرية إلى رقمية تقوم بتحويل الجهد التناظري إلى بيانات رقمية قابلة للاستخدام. على عكس المسامير الرقمية الموجودة على Arduino والتي يمكنها قراءة الحالة HIGH أو LOW فقط وهي 0 و 5 V ، يمكن للمسامير التناظرية القراءة من 0-5V وتحويل هذا إلى نطاق رقمي من 0-1023.. يمكننا في الواقع حساب القيم التي سيقرأها Arduino بالفعل.

لأن هذه ستكون دالة خطية يمكننا استخدام الصيغة التالية: Y = mX + C Where؛ ص = القيمة الرقمية حيث ؛ م = المنحدر ، (الارتفاع / الجري) ، (القيمة الرقمية / القيمة التناظرية) أين ؛ تقاطع C = Y يكون التقاطع Y هو 0 ، مما يعطينا: Y = mXm = 1023/5 = 204.6 لذلك: القيمة الرقمية = 204.6 * القيمة التناظرية ، لذا في درجة اللون الأسود ستكون القيمة الرقمية: 204.6 * 0.24 مما يعطي تقريبًا 49. و في ذروة السطوع سيكون: 204.6 * 2.5 مما يعطي 511 تقريبًا. الآن مع اثنين من هذه الإعداد على دبابيس تناظرية ، يمكننا إنشاء متغيرين صحيحين لتخزين قيمهما اثنين وإجراء عوامل المقارنة لمعرفة أيهما له أقل قيمة ، تحويل الروبوت في هذا الاتجاه.

موصى به: