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

Arduino Cradle Rocker: 19 خطوة (بالصور)
Arduino Cradle Rocker: 19 خطوة (بالصور)

فيديو: Arduino Cradle Rocker: 19 خطوة (بالصور)

فيديو: Arduino Cradle Rocker: 19 خطوة (بالصور)
فيديو: Rotary Head Controller new mode Continuous 2024, يوليو
Anonim
Image
Image

آسف ، لم أستطع مقاومة الموسيقى الشديدة المبتذلة التي اقترحها شيء تحرير الفيديو الخاص بي.

لقد رُزقت مؤخرًا بطفلي الأول وكان لدي بالفعل مهد خشبي صنعه عمي (وهو عامل نجارة رائع) لابن أخي. كان ابن أخي قد تخطى ذلك منذ فترة طويلة ، لذلك كنت سعيدًا لأخذها وتجنب إنفاق كل المال على أي مهد / سرير كان المدونون الأم قد أصابته بالإغماء. المهد هو تصميم بسيط للغاية ، أساسًا عمودين مع براغي من خلالهما تدعم جسم المهد. هناك ربط قابل للإزالة ليغلق في مكانه.

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

في صباح اليوم التالي ، بدأت في عصف ذهني عن طريقة لجعل روبوت يهز هذا الطفل من أجلي. أدخل Arduino …

اللوازم

حسنًا ، كان هذا أول مشروع لي في Arduino على الإطلاق ، لذلك قمت ببعض التجارب والتجربة والخطأ ، وأنا متأكد من أن هناك مجالًا لتحسين تصميمي ، ولكن إليك قائمة الأجزاء الخاصة بي: Arduino Uno (13 دولارًا) للتحكم في كل شيء عدة (10 دولارات) لتوصيل الأسلاك

محرك السائر (14 دولارًا) هذه هي القطعة الأكثر متعة ، لأنها الشيء الذي يؤدي كل العمل. لقد بدأت مع سائق عزم دوران أقل قليلاً ، لكن بعد ذلك حصلت على هذا وهو يعمل بشكل جيد. لا تتردد في الحصول على واحدة أكثر قوة. يبدو أن هذا الشخص المحدد قادر على قيادة المحرك بهدوء أكثر من البعض الآخر ، لذلك ذهبت مع ذلك لأن المحرك سيكون على بعد أقدام قليلة من رأسي (وابني) أثناء نومنا. لقد اشتريت للتو سائق TMC2209 واحدًا مقابل 10 دولارات تقريبًا ، ولكن انتهى بي الأمر بشراء حزمة من 4 لأنني واجهت بعض الصعوبة في البداية وأردت التأكد من أنني لم أقلي اللوحة في وقت ما. انتهى بي الأمر بقتل 3 ألواح ، وهو ما يقودني إلى العنصر التالي … المكثفات! (10 دولارات) أنت في الحقيقة بحاجة فقط إلى مكثف بقوة 1 47 uF 50V ، لذا فإن هذا الصندوق الذي يحتوي على 240 كان مبالغًا فيه. وحصلت على واحدة أقرب إلى الحد الأقصى للجهد الذي يمكن أن يتعامل معه محرك السائر. إذا كنت تستخدم محركًا مختلفًا أو محرك متدرج ، فتأكد من أنه يمكنه التعامل مع الجهد (V) وأن التيار الكهربائي (A) للمصدر على الأقل مرتفع مثل ذروة الأمبير التي يسحبها المحرك. 8 دولارات) هذا هو ما يتم توصيله بمصدر الطاقة. ستحتاج إلى لحام هذه الأسلاك ببعض الأسلاك لتلتصق بلوحك. مجموعة كبيرة من وصلات العبور (9 دولارات) حتى أتمكن من وضع أدوات التحكم أينما أردت في الغرفة.

أزرار (8 دولارات) للتشغيل / الإيقاف ، وما إلى ذلك

مكبر ميكروفون (11 دولارًا) أوه ، لم تكن تعلم أن هذا الصوت تم تنشيطه أيضًا؟

بعض عجلات البكرات الصغيرة (8 دولارات) انتهى بي الأمر باستخدامها ، ولكن قد تكون هناك بدائل أفضل. المزيد عن ذلك لاحقًا ستحتاج أيضًا بالتأكيد إلى مكواة لحام وأي شيء تريد استخدامه لتركيب المحرك. أنا شخصياً صنعت للتو صندوقًا تقريبيًا من 4 قطع من الخشب تم تثبيتها معًا ، ثم قمت بربطها بقطعة أخرى من الخشب بعرض ساقي المهد تقريبًا. في الوقت الحالي ، لقد تم تثبيته فقط لأنني لا أعرف ما إذا كنت أريد أن أفسد مهد عمي.

الخطوة 1: تعرف على Pinout سائق السائر الخاص بك

قم بتوصيل Arduino 5V / GND بلوحة التوصيل الخاصة بك
قم بتوصيل Arduino 5V / GND بلوحة التوصيل الخاصة بك

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

الخطوة 2: قم بتوصيل Arduino 5V / GND بلوحة التوصيل الخاصة بك

قم بتوصيل سلك من Arduino 5V إلى السكة "+" على جانب واحد من لوح التجارب الخاص بك. قم بتوصيل سلك من أحد Arduino GND's إلى سكة "-" على نفس الجانب من اللوح

(تجاهل

الخطوة 3: قم بتوصيل +/- القضبان بـ VIO / GND

قم بتوصيل +/- القضبان بـ VIO / GND
قم بتوصيل +/- القضبان بـ VIO / GND

قم بتوصيل سلك من السكة "-" بـ GND في أسفل يسار لوحة محرك السائر. قم بتوصيل سلك من السكة "+" بـ VIO

الخطوة 4: قم بتوصيل DIR / STEP بالدبابيس الرقمية على Arduino

قم بتوصيل DIR / STEP إلى Digital Pins على Arduino
قم بتوصيل DIR / STEP إلى Digital Pins على Arduino

قم بتوصيل دبابيس DIR و STEP من لوحة محرك السائر باثنين من المسامير الرقمية على Arduino. لقد استخدمت الدبابيس 2 و 3 ، على التوالي ، لكن لا يهم ما دمت قد قمت بتعيين المسامير في الرمز الخاص بك لاحقًا.

الخطوة 5: دعونا نمضي قدمًا ونضيف هذا المكثف …

دعونا نمضي قدما ونضيف هذا المكثف …
دعونا نمضي قدما ونضيف هذا المكثف …

لقد قمت بحرق لوحتين للسائق لأنني لم يكن لدي مكثف في مكانه ، لذلك دعنا نمضي قدمًا ونضيف مكثف 47 فائق التوهج 50 فولت إلى دبابيس VM / GND على لوحة القيادة. تأكد من أن الدبوس "-" على المكثف موجود في دبوس GND على لوح التجارب (سيكون هناك "-" على الجانب المقابل للمكثف)

الخطوة 6: واذهب إلى الأمام وقم بتوصيل هذا GND

واذهب للأمام وقم بتوصيل ذلك GND
واذهب للأمام وقم بتوصيل ذلك GND

على GND الذي أضفت إليه المكثف للتو ، امض قدمًا وقم بتوصيله بنفس السكة "-" مثل GND الأخرى.

الخطوة 7: قم بتوصيل المحرك بالمشغل

قم بتوصيل المحرك بالسائق
قم بتوصيل المحرك بالسائق

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

لمحركي -

قم بتوصيل Green & Black بـ M2B & M2A

قم بتوصيل Red & Blue بـ M1A & M1BN ملاحظة: إذا لم يكن لمحركك رسم تخطيطي لأي سبب من الأسباب ، يمكنك بسهولة معرفة الأسلاك التي تشكل دائرة إذا كان لديك مقياس متعدد. اضبط جهاز القياس المتعدد على إعداد منخفض الأمبير وافصل محرك سيارتك. المس أحد أجهزة القياس المتعددة المؤدية إلى أحد أسلاك المحرك ، ثم جرب كلًا من الأسلاك الأخرى مع السلك الآخر. إذا حصلت على قراءة مقاومة ، فإن هذين السلكين يشكلان دائرة واحدة ، والآخران يشكلان الدائرة الأخرى.

الخطوة 8: توصيل EN و MS1 و MS2 بـ "-"

قم بتوصيل EN و MS1 و MS2 بـ
قم بتوصيل EN و MS1 و MS2 بـ

لست متأكدًا تمامًا من أن هذا ضروري ، لكنني أعتقد أنه يضبط المحرك على إعداد microstep أصغر على برنامج تشغيل TMC2209. يمكنك توصيلهم بالسكك الحديدية "-" الأقرب إليهم ، حيث سنقوم بتوصيله بالجانب الآخر لاحقًا.

الخطوة 9: قم بلحام موصل الطاقة الأنثوي بسلكين

لحام موصل الطاقة الأنثوي بسلكين
لحام موصل الطاقة الأنثوي بسلكين

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

الخطوة 10: قم بتوصيل الموصل النسائي الملحوم حديثًا

قم بتوصيل الموصل النسائي الملحوم حديثًا
قم بتوصيل الموصل النسائي الملحوم حديثًا

يُرجى عدم توصيل مصدر الطاقة الفعلي بعد. السلك الأحمر بـ "+" والأسود إلى "-"

الخطوة 11: قم بتوصيل هؤلاء بـ VM / GND

قم بتوصيل هؤلاء بـ VM / GND
قم بتوصيل هؤلاء بـ VM / GND

قم بتوصيل هذه القضبان "+" و "-" بـ VM و GND بجانبها. تلك التي بها مكثف.

الخطوة 12: معجب بعملك اليدوي

معجب بأعمالك اليدوية
معجب بأعمالك اليدوية

حسنًا ، لقد تم إعداد المحرك والسائق بالكامل الآن! من الآن فصاعدًا ، سنقوم فقط بالضوابط. بالمناسبة ، من الآن فصاعدًا:

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

الخطوة 13: اختياري - تحقق من VREF

يحتوي TMC2209 على مقياس جهد يتحكم في التيار إلى المحرك. إذا كان لديك نفس السائق الذي حصلت عليه ، يمكنك أن تقرأ عنه هنا. إذا كنت تريد ضبط الإعداد:

  • افصل كل الطاقة وافصل أسلاك المحرك عن السائق.
  • افصل السلك عن دبوس EN (تمكين) في برنامج التشغيل. هذا هو الدبوس في الزاوية اليسرى العليا.
  • قم بتوصيل مصدر طاقة المحرك الخاص بك (36 فولت)
  • باستخدام جهاز متعدد المقاييس على 20 فولت ، المس أحد السلك بمصدر GND (استخدمت سلكًا متصلًا بالسكك الحديدية "-") والمس السلك الآخر بمسمار VREF. من فضلك لا تلمس السلك إلى أي شيء آخر ، يمكنك اختصار سائقك إذا فعلت ذلك.
  • استخدم مفك براغي صغير لضبط برغي مقياس الجهد برفق. بالنسبة للوح الخاص بي ، عكس اتجاه عقارب الساعة = المزيد من القوة. يقرأ VREF شخصيًا 0.6 فولت.

الخطوة 14: الأزرار

أزرار!
أزرار!

بعد ذلك ، قم بتوصيل الأزرار الخاصة بك على هذا النحو. لا يحتاجون إلى القوة.

  • قم بتوصيل سكة "-" من لوحة توصيل الأزرار الخاصة بك بأحد GND's في Arduino. يمكنك أيضًا ربطه من سكة "-" اللوح الأخرى إذا أردت.
  • قم بتوصيل دبوس واحد من كل زر بالسكك الحديدية "-"
  • قم بتوصيل دبوس آخر من كل زر بدبوس رقمي على Arduino.

لقد استخدمت 4 أزرار: تشغيل / إيقاف تشغيل المحرك

يستمر المحرك

الميكروفون قيد التشغيل

الميكروفون متوقف

المزيد عن هذه عندما نصل إلى الكود ، لكنني استخدمت أزرار ميكروفون مميزة لمجرد أنه لم يكن لدي مصابيح LED لإخباري ما إذا كان الميكروفون قيد التشغيل أو الإيقاف ، لذا فإن وجود أزرار تشغيل / إيقاف مميزة جعله مضمونًا.

الخطوة 15: أضف لوحة الميكروفون

أضف لوحة الميكروفون
أضف لوحة الميكروفون

هذا بسيط ، ولدى Adafruit تعليمات جيدة (وأساسيات لحام!) هنا.

  • قم بتوصيل "-" بـ GND
  • قم بتوصيل GND على لوحة الميكروفون بـ "-" (يمكنك توصيل GND مباشرة بـ GND وتخطي الخطوة السابقة ، حقًا)
  • قم بتوصيل VCC بقوة 3.3 فولت على Arduino. هذا مهم لأن مصدر الطاقة هذا أقل "ضوضاء" من 5 فولت ، مما ينتج عنه قراءات أفضل للميكروفون
  • قم بتوصيله بدبوس ANALOG IN في Arduino. لقد استخدمت A0.

الخطوة 16: يجب أن تكون هذه هي النتيجة النهائية

يجب أن تكون هذه النتيجة النهائية!
يجب أن تكون هذه النتيجة النهائية!
يجب أن تكون هذه النتيجة النهائية!
يجب أن تكون هذه النتيجة النهائية!

يجب أن يكون كل شيء جاهزًا الآن. إليكم صورة للرسم التخطيطي النهائي ومجموعة الأسلاك الخاصة بي في الواقع. لنلقي نظرة على بعض التعليمات البرمجية!

الخطوة 17: الكود

حسنًا ، لنلقِ نظرة على الكود! هذا ليس عملي الأنظف ، لكنه ينجز المهمة. لقد أضفت تعليقات لشرح كل شيء هنا ، لكن تحمل معي ، لقد استخدمت Arduino IDE لكل هذا (متوفر على نظامي التشغيل Windows و Mac مجانًا).

اضبط عددًا من الصخور (التأرجح) للقيام به.

أدر المسافة المحددة لمدة 1 أرجوحة. تأرجح عدد محدد من المرات.

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

# تضمين // مكتبة السائر "القياسية"

// # حدد DEBUG 1 // uncomment هذا عندما تريد ضبط مستويات الميكروفون // إعداد الزر - يتوافق هذا مع مكان الدبابيس الرقمية التي قمت بتوصيلها بالأزرار const int motorEnablePin = 10 ؛ const int continuePin = 11 ؛ const int micDisablePin = 12 ؛ const int micEnablePin = 13 ؛ // إعداد الميكروفون - A0 هنا هو البديل التناظري للميكروفون. نافذة العينة في مللي ثانية const int micPin = A0 ؛ عينة const int عينة int غير موقعة ؛ منطقية micEnabled = خطأ ؛ حساسية مزدوجة للميكروفون = 0.53 ؛ // ربما تحتاج إلى تغيير هذا // بالنسبة لي ، كان حوالي 0.5 جيدًا بما يكفي لعدم إطلاق النار على هديل صغير // ولكنه سيطلق صرخات صغيرة int stepsPerRevolution = 3200؛ // غيّر هذا ليناسب عدد الخطوات لكل ثورة لمحركك // محركي 200 خطوة / ثورة // لكنني قمت بضبط المحرك على 1/16 خطوات دقيقة // لذلك 200 * 16 = 3200 … بصراحة ليس لدي فكرة عما إذا كان هذا هي الطريقة الصحيحة // للقيام بهذا Stepper myStepper (stepsPerRevolution، 2، 3) ؛ // 2 & 3 هي دبابيس DIR & STEP int stepCount = 0 ؛ سرعة المحرك الداخلي = 95 ؛ // ستحتاج إلى تعديل هذا وفقًا لوزن المهد والطفل عدد الخطوات = 90 ؛ // المسافة التي سيتحركها المحرك. // ستحتاج إلى ضبط هذا بناءً على نصف قطر العجلة التي تربطها // بمحركك. من المحتمل أن تكون هذه السرعة بمثابة تجربة وخطأ. // ملاحظة - سرعة أعلى على محركات السائر = عزم دوران فعال أقل // إذا لم يكن لديك عزم دوران كافٍ ، فسيتخطى محركك الخطوات (لا يتحرك) int oldmotorButtonValue = HIGH ؛ تم تمكين منطقية = خطأ ؛ // تمكين المحرك؟ int loopStartValue = 0 ؛ int maxRocks = 100 ؛ // كم مرة تريده أن يهتز قبل إيقاف تشغيل int rockCount = 0 ؛ إعداد باطل () {#ifdef DEBUG Serial.begin (9600) ؛ // لتسجيل التصحيح #endif pinMode (motorEnablePin ، INPUT_PULLUP) ؛ // هذا إعداد للأزرار للعمل بدون power pinMode (continuePin ، INPUT_PULLUP) ؛ pinMode (micEnablePin ، INPUT_PULLUP) ؛ pinMode (micDisablePin ، INPUT_PULLUP) ، myStepper.setSpeed (motorSpeed) ؛ // يعين سرعة المحرك على ما حددته سابقًا} حلقة فارغة () {int motorButtonValue = digitalRead (motorEnablePin) ؛ // digitalRead يقرأ فقط قيم الزر int continueValue = digitalRead (continuePin) ؛ // هذا يكتشف ضغط زر المحرك ويمنعه من إطلاق النار أكثر من مرة لكل نقرة إذا (motorButtonValue == HIGH && oldmotorButtonValue == LOW) {تم تمكينه =! } micCheck ()؛ // إذا كان المحرك متوقفًا والميكروفون قيد التشغيل ، فاستمع إلى طفل يبكي إذا (! مُمكّن && micEnabled) {if (getMicReading ()> = micSensitivity) ممكّن = صحيح ؛ } إذا (ممكّن) {stepsPerRevolution = stepsPerRevolution * -1 ؛ // عكس الاتجاه // مع الإعداد الخاص بي ، يكون أكثر فعالية لعكس // التأرجح الأول. يمكنك وضع هذا بعد الحلقة // إذا لم يكن هذا هو الحال بالنسبة لك // محرك الدوران المسافة المحددة أعلاه لـ (int i = loopStartValue؛ i <numSteps؛ i ++) {// تحقق من إيقاف التشغيل int tempmotorButtonValue = digitalRead (motorEnablePin) ؛ إذا (tempmotorButtonValue! = motorButtonValue) {rockCount = 0 ؛ // هذان الخطان التاليان "يحفظان" موضع المحرك ، بحيث في المرة القادمة التي تقوم فيها بتشغيله // سيستمر في السفر كما لو لم تقم بإيقاف تشغيله. هذا يمنع رمي // مسافات حركتك loopStartValue = i؛ // حفظ الموقف stepsPerRevolution = stepsPerRevolution * -1 ؛ // الحفاظ على الاتجاه oldmotorButtonValue = tempmotorButtonValue ؛ استراحة؛ } checkContinue (continueValue) ، // تحقق مما إذا تم الضغط على زر المتابعة micCheck () ؛ myStepper.step (stepsPerRevolution / 50) ، // كم عدد الخطوات التي يجب اتخاذها لكل حلقة ، // قد تحتاج إلى ضبط هذا // تأكد من أننا نواصل مسافة الحلقة الكاملة إذا انتهت الحلقة // يتم تشغيل هذا إذا قمت بإيقاف تشغيل المحرك بنفسك و "حفظ" الموضع إذا (i == numSteps - 1) {loopStartValue = 0 ؛ }}} تأخير (100)؛ // وقفة 100 مللي قبل القيام بالصخرة التالية. ستحتاج إلى تعديل هذا. إذا (ممكّن) checkComplete () ؛ oldmotorButtonValue = motorButtonValue ؛ // هذا يستخدم لمنع النقرات المزدوجة} // هذا الرمز مباشرة من Adafruit. مزدوج getMicReading () {غير موقعة long startMillis = millis () ؛ ذروة كثافة العمليات غير الموقعة = 0 ؛ // مستوى الذروة إلى الذروة غير موقعة int signalMax = 0 ؛ إشارة int غير الموقعة: دقيقة = 1024 ؛ while (millis () - startMillis <sampleWindow) {micCheck () ؛ إذا تم تمكين (digitalRead (motorEnablePin) == LOW) = صحيح ؛ العينة = analogRead (micPin) ؛ if (sample signalMax) {signalMax = sample ؛ // save فقط المستويات القصوى} وإلا إذا (sample = maxRocks) {ممكن = خطأ ؛ rockCount = 0 ؛ // العودة إلى الوضع الأوسط

لـ (int i = loopStartValue؛ i <numSteps / 2؛ i ++) {

myStepper.step (stepsPerRevolution * -1 / 50) ، // الخطوة 1/100 من ثورة:

}

} }

الخطوة 18: التثبيت وإعداد العجلة

تصاعد وإعداد العجلة
تصاعد وإعداد العجلة

لا يزال هذا العمل قيد التقدم بالنسبة لي ، لأنه كما قلت ، لست متأكدًا من أنني أريد وضع مسامير في مهد بلدي حتى الآن. الطريقة التي قمت بتزويرها هي كما يلي:

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

الحل الأفضل للخطوة الثالثة هو شراء بكرة بكرة ذات قطر أكبر في المقام الأول. يبلغ قطر المنجم أقل قليلاً من 3 بوصات داخل الأخدود ويعمل جيدًا حقًا لمهدتي الخاصة.

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

الخطوة 19: الإعداد النهائي

الإعداد النهائي
الإعداد النهائي

قم بتركيب الميكروفون بالقرب من طفلك ، ولكن في مكان لن يصطدم فيه بأي أسلاك ، ضع الأزرار أينما تريد ، طالما أن لديك أسلاكًا كافية للتشغيل إلى الوجهة النهائية. يمكنك أيضًا استبدال الأزرار بإعداد wifi على اردوينو ، لكنني لم أتعمق في هذا الأمر بعد. حظًا سعيدًا هناك!

موصى به: