جدول المحتويات:
- اللوازم
- الخطوة 1: اجمع المستلزمات
- الخطوة 2: توصيل وحدة NRF مع Arduino
- الخطوة 3: دعنا ندخل في البرمجة
- الخطوة 4: ملاحظة المؤلف
فيديو: اجعل إيماءة الطائرة بدون طيار يتم التحكم فيها في 10 دولارات: 4 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:38
هذه التعليمات عبارة عن دليل لتحويل طائرة 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 مع Arduino.
- أولاً ، أدخل وحدة NRF في الفتحة المتوفرة على المحول. يمكنك الرجوع إلى الصورة أعلاه لذلك.
-
بعد ذلك ، خذ أسلاك ذكر إلى أنثى وقم بتوصيل محول NRF بـ Arduino على النحو التالي: (راجع مخطط الدائرة أعلاه)
- NRF محول دبوس - اردوينو دبوس
- VCC - 5 فولت
- GND - GND
- CE - دبوس رقمي 5
- CSN - دبوس تناظري 1
- SCK- الدبوس الرقمي 4
- MO - دبوس رقمي 3
- MI - دبوس تناظري 0
- IRQ - غير مستخدم
- بمجرد الانتهاء من الاتصال ، قم بتوصيل 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 نقاط أود أن أذكرها بشكل خاص بخصوص هذا المشروع:
- كما تم تحديده سابقًا ، لم يتم إنشاء هذا الرمز بالكامل بواسطتي ، لكنني أعمل عليه باستمرار وسأقوم بتحديث الكود لتتبع أفضل في مستودع Github الخاص بي. لذلك لأية استفسارات أو تحديثات ، يمكنك زيارة المستودع أو اختبار الاتصال بي على Instagram.
- حاليًا ، نستخدم كاميرا الويب الخاصة بالكمبيوتر المحمول والتي لا تسمح بالحصول على منظور من منظور الطائرة بدون طيار ، ولكن إذا لزم الأمر ، يمكن أيضًا استخدام الكاميرات المثبتة على الطائرة لغرض التتبع. سيساعد هذا في الحصول على رؤية أفضل وتحكم أفضل في النهاية.
- بالنسبة لهذا المشروع ، أستخدم طائرة بدون طيار JJRC H36 وهي واحدة من أرخص الطائرات بدون طيار المتوفرة في السوق وبالتالي فهي تفتقر إلى الاستقرار الجيروسكوبي. هذا هو السبب الذي يجعلك تشعر أن الحركة في الفيديو متذبذبة ، ولكن إذا كنت تستخدم طائرة بدون طيار ذات جودة جيدة مع استقرار جيد ، فلن تواجه هذه المشكلة.
- كنت أرغب في العبث برؤية الكمبيوتر والتحكم في الطائرات بدون طيار ، ومن هنا بدأت في هذا المشروع. لكن بعد العمل على رؤية الكمبيوتر ، أشعر أنه ليس الحل الأمثل للتحكم في الطائرة بدون طيار. وبالتالي ، فإنني أخطط لصنع نوع من الأجهزة من نوع القفازات مع مستشعر جيروسكوبي للتحكم في الطائرة بدون طيار في المستقبل. لذا ترقبوا التحديثات …
إذا أعجبك هذا البرنامج التعليمي ، فيرجى الإعجاب به ومشاركته والتصويت له أيضًا.
هذا كل شيء الآن.. أراكم قريبًا في المرة القادمة …
موصى به:
قطارة خط الطائرة الورقية Parabear التي يتم التحكم فيها عبر الهاتف: 11 خطوة
قطارة خط طائرة ورقية يتم التحكم فيها بالهاتف: مقدمة يصف هذا التوجيه كيفية بناء جهاز لإسقاط ما يصل إلى ثلاثة قطع مكافئة من خط طائرة ورقية. يعمل الجهاز كنقطة وصول لاسلكية ، حيث يتم توصيل صفحة ويب إلى هاتفك أو جهازك اللوحي. هذا يسمح لك بالتحكم في انخفاض القطع المكافئ
سيارة يتم التحكم فيها عن بعد - يتم التحكم فيها باستخدام وحدة تحكم Xbox 360 اللاسلكية: 5 خطوات
سيارة يتم التحكم فيها عن بعد - يتم التحكم فيها باستخدام وحدة تحكم Xbox 360 اللاسلكية: هذه هي التعليمات من أجل بناء سيارتك الخاصة التي يتم التحكم فيها عن بعد ، والتي يتم التحكم فيها باستخدام وحدة تحكم Xbox 360 اللاسلكية
أقل من 250 جرامًا من تعديلات الطائرة بدون طيار FPV: 3 خطوات
تعديلات أقل من 250 جرامًا من الطائرات بدون طيار FPV: صدقني أو لا تصدق ، مع القوانين الأخيرة التي تم إدخالها حول الطائرات بدون طيار ، لن نتمكن من استخدام Xinxun X30 الأصلية (كوادكوبتر من فئة الألعاب) بعد الآن ، ما لم تكن مسجلة! في الواقع ، تزن الطائرة بدون طيار الأصلية 360 جرامًا (مع كاميرا FPV). مثل هذا الجدال
محرك الطائرة بدون طيار ESP32 LoRa: 10 خطوات
ESP32 LoRa Controled Drone Engine: اليوم نناقش محركات الطائرات بدون طيار ، التي كثيرًا ما تسمى المحركات "بدون فرش". تُستخدم على نطاق واسع في تصميم الطائرات ، وخاصة في الطائرات بدون طيار ، نظرًا لقوتها ودورانها العالي. سنتعرف على كيفية التحكم في محرك بدون فرش باستخدام ESC و ESP32 ، مع أداء
مبرد / حامل كمبيوتر محمول بدون تكلفة (بدون غراء ، بدون حفر ، بدون صواميل ومسامير ، بدون براغي): 3 خطوات
مبرد / حامل للكمبيوتر المحمول بدون تكلفة (بدون غراء ، بدون حفر ، بدون صواميل ومسامير ، بدون براغي): التحديث: يرجى & nbsp ؛ يرجى التصويت على & nbsp ؛ من أجل الدخول في www.instructables.com/id/Zero-Cost-Aluminum-Furnace-No-Propane-No-Glue-/ أو ربما التصويت لأفضل أصدقائي