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

الدليل الذي كنت أتمناه لبناء طائرة بدون طيار من Arduino: 9 خطوات
الدليل الذي كنت أتمناه لبناء طائرة بدون طيار من Arduino: 9 خطوات

فيديو: الدليل الذي كنت أتمناه لبناء طائرة بدون طيار من Arduino: 9 خطوات

فيديو: الدليل الذي كنت أتمناه لبناء طائرة بدون طيار من Arduino: 9 خطوات
فيديو: Flying Phone Scam Exposed (so I built a REAL one) 2024, يوليو
Anonim
الدليل الذي كنت أتمناه لبناء طائرة بدون طيار من Arduino
الدليل الذي كنت أتمناه لبناء طائرة بدون طيار من Arduino

هذا المستند عبارة عن نوع من وثائق "كيفية توجيه" القطع المائلة التي تمر عبر العملية التي تطلبت مني فهم المفاهيم لتحقيق هدفي المتمثل في بناء كوادكوبتر بسيط يمكنني التحكم فيه من هاتفي المحمول.

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

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

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

اللوازم

ميزانية المشروع: 250 دولار

الإطار الزمني: أسبوعين

اشياء للشراء:

  • الإطار المادي 20 دولارًا
  • شفرات $ 0 (تأتي مع إطار)
  • حزمة البطارية 25 دولارًا
  • ESC (أجهزة التحكم في السرعة الإلكترونية) 0 دولار (يأتي مع المحركات)
  • موتور 70 دولار

مراقب الطيران

  • اردوينو نانو 20 دولار
  • كابل اردوينو USB 2 دولار
  • وحدة بلوتوث (HC-05) 8 دولارات
  • 3 مم LED و 330 أوم مقاومات وأسلاك 13 دولارًا
  • GY-87 (مقياس تسارع ، جيروسكوب) 5 دولارات
  • مجلس النموذج الأولي 10 دولارات
  • رؤوس ذكور وإناث 5 دولارات

آخر

  • طقم لحام 10 دولارات
  • المتر 20 دولار

كنت أرغب في الاستمتاع ببناء هذا المشروع كمهندس ، لذلك اشتريت بعض الأشياء الأخرى التي لم أضطر إلى ذلك.

المجموع: 208 دولار

الخطوة 1: تجربتي الأولية

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

بعد ذلك قررت تفكيك الطائرة بدون طيار وفهم كل مكون قطعة قطعة وإعادة بنائها بطريقة أفهم تمامًا كل ما كان يحدث.

في الأقسام التالية سوف أتناول عملية تفكيك اللغز معًا. قبل ذلك دعنا نلقي نظرة عامة سريعة.

بدني

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

الخطوة 2: نصائح حول تقسيم الأجزاء المادية وتصحيحها

نصائح حول تقسيم الأجزاء المادية وتصحيحها
نصائح حول تقسيم الأجزاء المادية وتصحيحها

المراوح والمحركات

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

البطارية والطاقة

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

الخطوة 3: وحدة تحكم Arduino

وحدة تحكم اردوينو
وحدة تحكم اردوينو

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

نصائح قبل الشروع في هذه الرحلة

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

    • يمكن لـ Arduino التعامل مع 6 إلى 20 فولت ، ولكن حاول أن تغطيه بجهد 12 فولت حتى لا تنفجر. يمكنك قراءة المزيد عن المواصفات هنا.
    • يمكن لـ HC-05 التعامل مع ما يصل إلى 5 فولت ولكن بعض المسامير تعمل عند 3.3 فولت لذا احترس من ذلك. سنتحدث عنها لاحقًا.
    • تعمل وحدة IMU (GY-521 ، MPU-6050) أيضًا بجهد 5 فولت.
  • سنستخدم RemoteXY لبناء تطبيقنا. إذا كنت ترغب في إنشائه على جهاز iOS ، فأنت بحاجة إلى استخدام وحدة بلوتوث مختلفة (The HM-10). يمكنك معرفة المزيد عن هذا على موقع RemoteXY.

نأمل أن تقرأ النصائح. الآن دعنا نختبر كل مكون سيكون جزءًا من وحدة التحكم بشكل منفصل.

الخطوة الرابعة: MPU-6050

MPU-6050
MPU-6050

يحتوي هذا الجهاز على جيروسكوب ومقياس تسارع ، لذلك فهو يخبرك بشكل أساسي بالتسارع في اتجاه (X ، Y ، Z) والتسارع الزاوي على طول هذه الاتجاهات.

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

الخطوة 5: وحدة البلوتوث HC-05

وحدة بلوتوث HC-05
وحدة بلوتوث HC-05
وحدة بلوتوث HC-05
وحدة بلوتوث HC-05
وحدة بلوتوث HC-05
وحدة بلوتوث HC-05

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

يأتي HC-05 بأنواع مختلفة ، بعضها به أزرار والبعض الآخر بدون متغيرات التصميم وجميع أنواعها. أحد هذه الأشياء الثابتة هو أن لديهم جميعًا "دبوس 34". تحقق من هذا البرنامج التعليمي.

أشياء يجب أن تعرفها

  • للانتقال إلى وضع AT ، ما عليك سوى الضغط على 5 فولت للدبوس 34 من وحدة البلوتوث قبل توصيل الطاقة بها.
  • قم بتوصيل مقسم محتمل بدبوس RX للوحدة حيث يعمل على 3.3 فولت. لا يزال بإمكانك استخدامه بجهد 5 فولت ولكن قد يقلى هذا الدبوس إذا حدث خطأ ما.
  • إذا كنت تستخدم Pin 34 (بدلاً من الزر أو بطريقة أخرى تجدها عبر الإنترنت) ، فستقوم الوحدة بتعيين معدل الباود الخاص بالبلوتوث على 38400. ولهذا السبب يوجد في رابط البرنامج التعليمي أعلاه سطر في الكود يقول:

BTSerial.begin (38400) ؛ // السرعة الافتراضية HC-05 في أمر AT أكثر

إذا كانت الوحدة لا تزال لا تستجيب مع "OK" ، فحاول تبديل دبابيس tx و rx. يجب أن يكون:

بلوتوث => اردوينو

RXD => TX1

TDX => RX0

إذا لم يفلح ذلك ، فاختر تغيير المسامير في الكود إلى دبابيس Arduino أخرى. اختبار ، إذا لم تنجح ، قم بتبديل دبابيس tx و rx ، ثم اختبرها مرة أخرى

SoftwareSerial BTSerial (10 ، 11) ؛ // RX | TX

قم بتغيير الخط أعلاه. يمكنك تجربة RX = 2 أو TX = 3 أو أي مجموعات صالحة أخرى. يمكنك إلقاء نظرة على أرقام دبوس Arduino في الصورة أعلاه.

الخطوة 6: توصيل الأجزاء

ربط الأجزاء
ربط الأجزاء

الآن بعد أن تأكدنا من أن كل شيء يعمل ، حان الوقت للبدء في تجميعها معًا. يمكنك توصيل الأجزاء تمامًا كما هو موضح في الدائرة. حصلت على ذلك من Electronoobs. لقد ساعدني حقًا في هذا المشروع. تحقق من نسخته من المشروع هنا. إذا كنت تتبع هذا البرنامج التعليمي ، فلا داعي للقلق بشأن اتصالات جهاز الاستقبال: input_Yaw ، و input_Pitch ، وما إلى ذلك. كل ذلك سيتم التعامل معه باستخدام البلوتوث. أيضًا ، قم بتوصيل البلوتوث بالطريقة التي فعلناها في القسم السابق. كانت دبابيس tx و rx تسبب لي بعض المشاكل ، لذلك استخدمت Arduino:

RX كـ 2 ، و TX كـ 3 ، بدلاً من المسامير العادية. بعد ذلك ، سنكتب تطبيقًا بسيطًا سنواصل تحسينه حتى نحصل على المنتج النهائي.

الخطوة 7: جمال RemoteXY

جمال RemoteXY
جمال RemoteXY

لأطول وقت كنت أفكر في طريقة سهلة لإنشاء تطبيق Remote قابل للاستخدام يتيح لي التحكم في الطائرة بدون طيار. يستخدم معظم الناس MIT App Inventor ، لكن واجهة المستخدم ليست جميلة كما أرغب وأنا أيضًا لست من محبي البرمجة المصورة. كان بإمكاني تصميمه باستخدام Android Studio ، لكن هذا سيكون بمثابة الكثير من العمل. لقد شعرت بسعادة غامرة عندما وجدت برنامجًا تعليميًا باستخدام RemoteXY. هنا رابط الموقع. إنه سهل الاستخدام للغاية والوثائق جيدة جدًا. سننشئ واجهة مستخدم بسيطة لطائرتنا بدون طيار. يمكنك تخصيصها بالطريقة التي تريدها. فقط تأكد من أنك تعرف ما تفعله. اتبع التعليمات هنا.

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

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

/////////////////////////////////////////////////// RemoteXY تشمل مكتبة // /////////////////////////////////////////////

// RemoteXY حدد وضع الاتصال وقم بتضمين مكتبة

#define REMOTEXY_MODE_HC05_SOFTSERIAL

# تضمين # تضمين # تضمين

// إعدادات الاتصال RemoteXY

#define REMOTEXY_SERIAL_RX 2 #define REMOTEXY_SERIAL_TX 3 #define REMOTEXY_SERIAL_SPEED 9600

// المراوح

مؤازرة L_F_prop ؛ مؤازرة L_B_prop ؛ مؤازرة R_F_prop ؛ أجهزة R_B_prop ؛

// تكوين RemoteXY

#pragma pack (push، 1) uint8_t RemoteXY_CONF = {255، 3، 0، 0، 0، 61، 0، 8، 13، 0، 5، 0، 49، 15، 43، 43، 2، 26، 31 ، 4 ، 0 ، 12 ، 11 ، 8 ، 47 ، 2 ، 26 ، 129 ، 0 ، 11 ، 8 ، 11 ، 3 ، 17 ، 84 ، 104 ، 114 ، 111 ، 116 ، 116 ، 108 ، 101 ، 0 ، 129 ، 0 ، 66 ، 10 ، 7 ، 3 ، 17 ، 80 ، 105 ، 116 ، 99 ، 104 ، 0 ، 129 ، 0 ، 41 ، 34 ، 6 ، 3 ، 17 ، 82 ، 111 ، 108 ، 108 ، 0} ؛ // تحدد هذه البنية جميع متغيرات بنية واجهة التحكم {

// متغير الإدخال

int8_t جويستيك _x ؛ // -100..100 موضع عصا التحكم بتنسيق x int8_t Joystick_y ؛ // -100..100 y- إحداثيات موضع عصا التحكم int8_t ThrottleSlider ؛ // 0..100 موضع شريط التمرير

// متغير آخر

uint8_t connect_flag ؛ // = 1 إذا تم توصيل السلك ، وإلا = 0

} RemoteXY ؛

# حزمة براغما (بوب)

/////////////////////////////////////////////

// END RemoteXY تشمل // /////////////////////////////////////////////// /

/ ********** أضف هذا السطر ليحمل قيمة الخانق ************** /

int input_THROTTLE ؛

الإعداد باطل() {

RemoteXY_Init () ،

/ ********** إرفاق المحركات بالدبابيس قم بتغيير القيم لتناسب قيمك ************** /

L_F_prop.attach (4) ، // يسار محرك أمامي

L_B_prop.attach (5) ، // محرك خلفي R_F_prop.attach (7) ؛ // محرك أمامي يمين R_B_prop.attach (6) ؛ // محرك الظهر الأيمن

/ ************* منع esc من الدخول في وضع البرمجة ******************** /

L_F_prop.writeMicroseconds (1000) ؛ L_B_prop.writeMicroseconds (1000) ؛ R_F_prop.writeMicroseconds (1000) ؛ R_B_prop.writeMicroseconds (1000) ؛ تأخير (1000) ؛

}

حلقة فارغة() {

RemoteXY_Handler () ،

/ ****** عيّن قيمة الخانق التي تحصل عليها من التطبيق إلى 1000 و 2000 وهي القيم التي تعمل بها معظم ESCs في ********* /

input_THROTTLE = map (RemoteXY. ThrottleSlider، 0، 100، 1000، 2000) ؛

L_F_prop.writeMicroseconds (input_THROTTLE) ،

L_B_prop.writeMicroseconds (input_THROTTLE) ، R_F_prop.writeMicroseconds (input_THROTTLE) ، R_B_prop.writeMicroseconds (input_THROTTLE) ، }

الخطوة 8: الاختبار

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

العرض هو فقط لإظهار أننا يجب أن نكون قادرين على التحكم في دواسة الوقود من التطبيق. ستلاحظ أن المحركات تتلعثم. هذا لأنه لم يتم معايرة ESCs. للقيام بذلك ، ألق نظرة على التعليمات الموجودة على صفحة Github هذه. اقرأ التعليمات وافتح ملف ESC-Calibration.ino واتبع هذه التعليمات. إذا كنت تريد فهم ما يحدث ، تحقق من هذا البرنامج التعليمي بواسطة Electronoobs.

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

الخطوة 9: أنا أعمل على المدونة. سينتهي من Instructable في غضون أيام قليلة

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

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

موصى به: