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

قياس الزاوية باستخدام مقياس الجيروسكوب والتسارع والاردوينو: 5 خطوات
قياس الزاوية باستخدام مقياس الجيروسكوب والتسارع والاردوينو: 5 خطوات

فيديو: قياس الزاوية باستخدام مقياس الجيروسكوب والتسارع والاردوينو: 5 خطوات

فيديو: قياس الزاوية باستخدام مقياس الجيروسكوب والتسارع والاردوينو: 5 خطوات
فيديو: How to use MPU-6050 Accelerometer and Gyroscope with Arduino code 2024, شهر نوفمبر
Anonim
قياس الزاوية باستخدام الجيروسكوب ومقياس التسارع والأردوينو
قياس الزاوية باستخدام الجيروسكوب ومقياس التسارع والأردوينو

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

الخطوة الأولى: ما سنحتاجه:

ما سنحتاجه
ما سنحتاجه
ما سنحتاجه
ما سنحتاجه
ما سنحتاجه
ما سنحتاجه
ما سنحتاجه
ما سنحتاجه

يمكن استبدال جزء ما ، ويجب إجراء بعض التعديلات على الكود ليناسب أجهزتك. في هذا المشروع ، سنستخدم: - اللوح - متحكم دقيق ، استخدمت Arduinoboard - سلك - أسلاك توصيل - Gyroscope XV-8100 - Nunchuck Wii (لمقياس التسارع) - محول Nunchuck Wii لـ Arduino

الخطوة الثانية: البناء …

بناء…
بناء…
بناء…
بناء…
بناء…
بناء…

تتكون الدائرة من جيروسكوب متصل مباشرة بالمنفذ 0 في اردوينو الخاص بك و nunchuck wii متصل بمنفذ I2C. - قم بتوصيل الجيروسكوب في اللوح 2. - سلك من أي وقت مضى: - فو دبوس من جيروسكوب متصل بالمنفذ التناظري 0 في اردوينو (سلك برتقالي فاتح) - دبوس G من جيروسكوب متصل بالأرض (سلك أبيض) - V + دبوس من جيروسكوب متصل بـ Vdd (3.3V) (سلك برتقالي) مقياس التسارع: 1. - قم بتوصيل المحول في nunchuck2. - قم بتوصيل nunchuck في اردوينو باستخدام المحول 3. - ضع مستشعر السرعة مثل الصورة أعلاه

الخطوة 3: بعض المعلومات الإضافية قبل المتابعة

بعض المعلومات الإضافية قبل أن نمضي قدمًا
بعض المعلومات الإضافية قبل أن نمضي قدمًا
بعض المعلومات الإضافية قبل أن نمضي قدمًا
بعض المعلومات الإضافية قبل أن نمضي قدمًا
بعض المعلومات الإضافية قبل أن نمضي قدمًا
بعض المعلومات الإضافية قبل أن نمضي قدمًا

من كلا المستشعرين يمكننا قياس الزاوية ولكن باستخدام طريقتين مختلفتين ، لقياس الزاوية باستخدام الجيروسكوب علينا دمج الإشارة ، ولكن لماذا يتعين علينا القيام بذلك؟ نظرًا لأن الدوران يعطينا المعدل الزاوي ، فإن الطريقة البسيطة للحصول على الزاوية هي ضرب المعدل الزاوي في الوقت [زاوية = زاوية + ث * دت] لقياس الزاوية باستخدام مقياس التسارع ، علينا أن نشعر بالجاذبية في كل منهما محور مقياس التسارع ، ما يعنيه ، إن إسقاط تسارع الجاذبية على كل اتجاه من اتجاه المستشعر يعطينا فكرة عن الزاوية. [angle_accel = arctg (Ay / sqrt (Ax ^ 2 + Az ^ 2))] فلماذا نستخدم مستشعرين بدلاً من واحد؟ للاستفادة من خصائص كل من المستشعرات. إذا نظرت إلى الرسم البياني ، فإن الزيادة المستمرة في بيانات الدوران تسمى الانجراف وتتغير بيانات مقياس التسارع كثيرًا في وقت قصير ، وكيف يتم دمج كلتا الإشارتين؟ لا أعرف بالضبط النظرية الكامنة وراء ذلك ، لكنها تعمل بشكل جيد. هناك بعض المعلومات على الإنترنت ، ما عليك سوى البحث عنها في google إذا كنت بحاجة إلى مزيد من المعلومات. يحتوي هذا الرابط على الكثير من المعلومات ويمكن أن يكون مفيدًا. حيث HPF + LPF = 1 يمكن العثور على قيم HPF و LPF على هذا الرابط ، في ملف filter.pdf. شكرًا لكم يا رفاق من "The DIY Segway". لغرض الاختبار فقط ، سنضع هذه القيم مثل هذه ، HPF = 0.98 و LPF = 0.02.

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

الرمز هو اقتباس من رمز استخدمته في مشروع آخر. ربما هناك بعض المتغيرات غير مستخدمة ، لقد استخدمت مكتبة لقراءة بيانات nunchuck من https://todbot.com/blog/. شكرًا لك Tod E. Kurt التعليقات على الكود باللغة البرتغالية ، بمجرد أن يكون لدي وقت فراغ ، سأقوم بترجمته. إخراج الكود من خلال السطر التسلسلي بعض الأرقام مع هذا النمط: dt: w: teta: Pitch: filter_teta $ time: angular_velocity: gyro_angle: Accel_angle: filtered_angle $ لذا يمكنك حفظ هذه القيم في محطة تسلسلية ورسم رسم أو استخدام الزاوية لأشياء أخرى ، إذا كنت بحاجة إلى أي شرح حول الكود فلا تتردد في طرحه ، الكود هو مضغوط. فقط قم بفك الضغط وفتحه وتحميله على اردوينو الخاص بك.

الخطوة 5: الاختبار والاستنتاج

الاختبار والاستنتاج
الاختبار والاستنتاج
الاختبار والاستنتاج
الاختبار والاستنتاج

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

موصى به: