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

اجعل إيماءة الطائرة بدون طيار يتم التحكم فيها في 10 دولارات: 4 خطوات
اجعل إيماءة الطائرة بدون طيار يتم التحكم فيها في 10 دولارات: 4 خطوات

فيديو: اجعل إيماءة الطائرة بدون طيار يتم التحكم فيها في 10 دولارات: 4 خطوات

فيديو: اجعل إيماءة الطائرة بدون طيار يتم التحكم فيها في 10 دولارات: 4 خطوات
فيديو: The Hidden Hindu 1 Complete Audiobook In Hindi | #newaudiobook 2024, شهر نوفمبر
Anonim
Image
Image
اجعل إيماءة الطائرة بدون طيار الخاصة بك يتم التحكم فيها بمبلغ 10 دولارات
اجعل إيماءة الطائرة بدون طيار الخاصة بك يتم التحكم فيها بمبلغ 10 دولارات
اجعل إيماءة الطائرة بدون طيار الخاصة بك يتم التحكم فيها بمبلغ 10 دولارات
اجعل إيماءة الطائرة بدون طيار الخاصة بك يتم التحكم فيها بمبلغ 10 دولارات

هذه التعليمات عبارة عن دليل لتحويل طائرة R / C بدون طيار إلى طائرة بدون طيار يتم التحكم فيها عن طريق الإيماءات بأقل من 10 دولارات!

أنا شخص مستوحى جدًا من أفلام الخيال العلمي وأحاول إظهار التكنولوجيا في الفيلم في الحياة الواقعية. هذا المشروع هو مصدر إلهام من فيلمين من هذا القبيل: "STAR WARS: The Empire Strikes Back" و "Project Almanac". في كلا الفيلمين ، ترى جسمًا طائرًا (X-wing Starship و R / C Drone) تم التحكم فيهما بحركات اليد فقط. ألهمني هذا أن أصنع شيئًا مشابهًا …

من الواضح أنني لا أملك X-wing ، لذلك ، للأسف ، لا بد لي من العمل مع ميني R / C كوادكوبتر.

لذا فإن الخطة هي - سيكون هناك برنامج نصي لمعالجة الصور يعمل على الكمبيوتر المحمول الخاص بي والذي سيبحث باستمرار عن يدي ويتتبع موضعه في إطار الفيديو. بمجرد حصولها على إحداثيات اليد ، سترسل الإشارة المعنية إلى الطائرة بدون طيار وسيتم ذلك باستخدام Arduino المتصل بالكمبيوتر المحمول جنبًا إلى جنب مع وحدة الإرسال والاستقبال NRF24L01 2.4 جيجا هرتز والتي يمكنها الاتصال مباشرة بلوحة الاستقبال لأي طائرة بدون طيار R / C.

اللوازم

  • كمبيوتر محمول / كمبيوتر مكتبي مثبت عليه كاميرا ويب و Python. (أنا أستخدم الكمبيوتر المحمول الذي يعمل بنظام W indows بكاميرا الويب المدمجة وتشغيل Python 2.7.14)
  • أي طائرة بدون طيار R / C تعمل على تردد 2.4 جيجا هرتز. (JJRC H36 في حالتي)
  • Arduino UNO مع كابل البرمجة الخاص بها. (أنا أستخدم نسختها لأنها أرخص)
  • NRF24L01 2.4 جيجا هرتز وحدة الإرسال والاستقبال اللاسلكي الهوائي. (اشتريت هذا من هنا مقابل 99 روبية فقط (1.38 دولارًا))
  • لوحة محول 3.3 فولت للوحدة اللاسلكية 24L01. (اشتريت هذا من هنا مقابل 49 ريالاً فقط (0.68 دولارًا))
  • ذكر إلى أنثى أسلاك توصيل معزز x7

الخطوة 1: اجمع المستلزمات

اجمع الإمدادات!
اجمع الإمدادات!

الخطوة 2: توصيل وحدة NRF مع Arduino

توصيل وحدة NRF بالاردوينو
توصيل وحدة NRF بالاردوينو
توصيل وحدة NRF بالاردوينو
توصيل وحدة NRF بالاردوينو
توصيل وحدة NRF بالاردوينو
توصيل وحدة NRF بالاردوينو
توصيل وحدة NRF بالاردوينو
توصيل وحدة NRF بالاردوينو

الآن بما أن لديك جميع الأجزاء ، فلنبدأ في توصيل وحدة NRF مع Arduino.

  1. أولاً ، أدخل وحدة NRF في الفتحة المتوفرة على المحول. يمكنك الرجوع إلى الصورة أعلاه لذلك.
  2. بعد ذلك ، خذ أسلاك ذكر إلى أنثى وقم بتوصيل محول NRF بـ Arduino على النحو التالي: (راجع مخطط الدائرة أعلاه)

    • NRF محول دبوس - اردوينو دبوس
    • VCC - 5 فولت
    • GND - GND
    • CE - دبوس رقمي 5
    • CSN - دبوس تناظري 1
    • SCK- الدبوس الرقمي 4
    • MO - دبوس رقمي 3
    • MI - دبوس تناظري 0
    • IRQ - غير مستخدم
  3. بمجرد الانتهاء من الاتصال ، قم بتوصيل Arduino بجهاز الكمبيوتر الخاص بك باستخدام كابل USB لبرمجة Arduino وأنت على وشك الانتهاء.

الخطوة 3: دعنا ندخل في البرمجة

دعونا ندخل في البرمجة!
دعونا ندخل في البرمجة!
دعونا ندخل في البرمجة!
دعونا ندخل في البرمجة!

الآن هنا يبدأ الجزء الصعب… !!!

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

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

تتبع اليد:

يستخدم مصنف Haar Cascade لتتبع اليد في هذا المشروع. يتم تدريب Haar Cascade من خلال تركيب الصورة الإيجابية على مجموعة من الصور السلبية. وعادة ما يتم تخزين هذه البيانات المدربة في ملفات ".xml". قد تحصل على ملفات مصنف لأي شيء تقريبًا على الإنترنت أو يمكنك حتى إنشاء ملف خاص بك مثل هذا. بالنسبة لهذا المشروع ، حيث احتجنا إلى التحكم في إيماءات اليد ، استخدمت مُصنِّف القبضة المسمى "Closed_frontal_palm.xml" من صنع Aravind Nambissan لاكتشاف يدي. يمكنك اختبار هذا الرمز عن طريق تشغيل الكود "hand_live.py" في الريبو الخاص بي.

اختيار رمز NRF24 لمطابقة الطائرة بدون طيار الخاصة بك:

لذلك وفقًا للشركة المصنعة للطائرة بدون طيار وطرازها ، يمكنك الرجوع إلى مستودع Github - "nrf24_cx10_pc" الذي صنعه Perry Tsao لتحديد كود Arduino المناسب للتشغيل والذي يتناسب مع تردده. لقد قدم برنامجًا تعليميًا رائعًا للتحكم في طائرة CX10 بدون طيار الخاصة به على جهاز الكمبيوتر.

عندما كنت أستخدم طائرة بدون طيار JJRC H36 ، أشرت إلى مستودع Github آخر - "nrf24_JJRC_H36_pc" والذي كان عبارة عن شوكة من ريبو بيري تساو الذي صنعه لويس كورنيك للتحكم في JJRC H36 على جهاز الكمبيوتر.

تجهيز اردوينو:

قمت بتقسيم الريبو الخاص بـ Lewis إلى Github الخاص بي والذي يمكنك استنساخه إذا كنت تعمل على نفس الطائرة بدون طيار. تحتاج إلى تحميل رمز "nRF24_multipro.ino" مرة واحدة على Arduino Uno الخاص بك لإقرانه بالطائرة بدون طيار الخاصة بك في كل مرة نقوم فيها بتشغيل برنامج Python النصي الخاص بنا.

اختبار الاتصال التسلسلي:

في نفس الريبو ، قد تجد أيضًا رمزًا "serial_test.py" يمكن استخدامه لاختبار الاتصال التسلسلي لنص Python النصي مع Arduino وما إذا تم إقران الطائرة بدون طيار أم لا. لا تنس تغيير منفذ COM في الكود وفقًا لمنفذ COM الخاص بلوحة Arduino.

دمج كل شيء في كود واحد:

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

الخطوة 4: ملاحظة المؤلف

هناك 4 نقاط أود أن أذكرها بشكل خاص بخصوص هذا المشروع:

  1. كما تم تحديده سابقًا ، لم يتم إنشاء هذا الرمز بالكامل بواسطتي ، لكنني أعمل عليه باستمرار وسأقوم بتحديث الكود لتتبع أفضل في مستودع Github الخاص بي. لذلك لأية استفسارات أو تحديثات ، يمكنك زيارة المستودع أو اختبار الاتصال بي على Instagram.
  2. حاليًا ، نستخدم كاميرا الويب الخاصة بالكمبيوتر المحمول والتي لا تسمح بالحصول على منظور من منظور الطائرة بدون طيار ، ولكن إذا لزم الأمر ، يمكن أيضًا استخدام الكاميرات المثبتة على الطائرة لغرض التتبع. سيساعد هذا في الحصول على رؤية أفضل وتحكم أفضل في النهاية.
  3. بالنسبة لهذا المشروع ، أستخدم طائرة بدون طيار JJRC H36 وهي واحدة من أرخص الطائرات بدون طيار المتوفرة في السوق وبالتالي فهي تفتقر إلى الاستقرار الجيروسكوبي. هذا هو السبب الذي يجعلك تشعر أن الحركة في الفيديو متذبذبة ، ولكن إذا كنت تستخدم طائرة بدون طيار ذات جودة جيدة مع استقرار جيد ، فلن تواجه هذه المشكلة.
  4. كنت أرغب في العبث برؤية الكمبيوتر والتحكم في الطائرات بدون طيار ، ومن هنا بدأت في هذا المشروع. لكن بعد العمل على رؤية الكمبيوتر ، أشعر أنه ليس الحل الأمثل للتحكم في الطائرة بدون طيار. وبالتالي ، فإنني أخطط لصنع نوع من الأجهزة من نوع القفازات مع مستشعر جيروسكوبي للتحكم في الطائرة بدون طيار في المستقبل. لذا ترقبوا التحديثات …

إذا أعجبك هذا البرنامج التعليمي ، فيرجى الإعجاب به ومشاركته والتصويت له أيضًا.

هذا كل شيء الآن.. أراكم قريبًا في المرة القادمة …

موصى به: