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

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

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

فيديو: كشف العقبات بشكل غير متزامن باستخدام الموجات فوق الصوتية: 4 خطوات
فيديو: شاهد إنقاذه خيل عالق فوق حديد الإسطبل 😮 2024, يوليو
Anonim
كشف العقبات بشكل غير متزامن باستخدام الموجات فوق الصوتية
كشف العقبات بشكل غير متزامن باستخدام الموجات فوق الصوتية

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

إنه عمل طويل وأنا أقوم به خطوة بخطوة.

هذا التركيز القابل للتوجيه على اكتشاف العوائق باستخدام Arduino Mega

تعتبر أجهزة الاستشعار بالموجات فوق الصوتية HC-SR04 مقابل HY-SRF05 رخيصة وسهلة الاستخدام ولكن قد يصعب دمجها في حلقة وحدة التحكم الدقيقة في روبوت معقد. كنت أرغب في تشغيل اكتشاف العوائق بطريقة غير متزامنة.

_

لقد قمت بالفعل بنشر 3 إرشادات حول ميزات هذا الروبوت:

  • جعل عجلة التشفير الخاص بك
  • اصنع بوابة WIFI الخاصة بك
  • استخدم وحدة الوحدة النمطية بالقصور الذاتي

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

الخطوة 1: ما هي المشكلة بالضبط مع أجهزة الاستشعار بالموجات فوق الصوتية ووحدات التحكم الدقيقة؟

ما هي المشكلة بالضبط مع أجهزة الاستشعار بالموجات فوق الصوتية وأجهزة التحكم الدقيقة؟
ما هي المشكلة بالضبط مع أجهزة الاستشعار بالموجات فوق الصوتية وأجهزة التحكم الدقيقة؟
ما هي المشكلة بالضبط مع أجهزة الاستشعار بالموجات فوق الصوتية وأجهزة التحكم الدقيقة؟
ما هي المشكلة بالضبط مع أجهزة الاستشعار بالموجات فوق الصوتية وأجهزة التحكم الدقيقة؟

الانتظار المتزامن وقيود اردوينو

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

لذلك أردت تطوير كائن يعمل بشكل غير متزامن.

الخطوة الثانية: كيف تعمل؟

كيف يعمل ؟
كيف يعمل ؟

لقد تم تصميمه من أجل Atmega لاكتشاف العوائق. يدعم ما يصل إلى 4 أجهزة استشعار بالموجات فوق الصوتية.

بفضل الانقطاع الدوري للوقت ، يمكن للنظام مراقبة ما يصل إلى 4 أجهزة استشعار بالموجات فوق الصوتية. يجب أن يحدد الكود الرئيسي فقط المستشعر المراد تنشيطه بالشرط والعتبة. يتم مقاطعة wil الرئيسي فقط في حالة ظهور (الشرط ، العتبة).

الوظائف الرئيسية هي:

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

الخطوة الثالثة: التفاصيل الفنية

استخدم timer4 بحيث لا يمكن استخدام pin 6 7 8 كـ PWM.

لكل جهاز استشعار ، يحتاج الكائن إلى رمز PIN للمشغل ورقم PIN للمقاطعة.

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

الخطوة الرابعة: كيفية التنفيذ؟

كيفية التنفيذ ؟
كيفية التنفيذ ؟

قم بتوصيل المستشعرات على النحو الوارد أعلاه

قم بالتنزيل من مستودع GitHub هذا

  • EchoObstacleDetection.cpp ،
  • EchoObstacleDetection.h
  • exampleEchoObstacleDetection.ino

قم بإنشاء دليل EchoObstacleDetection داخل مكتبة IDE الخاصة بك وقم بنقل ملفات.cpp و. h

قم بتجريبه

افتح ExampleEchoObstacleDetection.ino.

هذا مثال بسيط لاكتشاف العوائق يتم تشغيله باستخدام مستشعرين فوق صوتيين.

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

موصى به: