نظام تحديد المواقع القائم على الموجات فوق الصوتية: 4 خطوات (بالصور)
نظام تحديد المواقع القائم على الموجات فوق الصوتية: 4 خطوات (بالصور)
Anonim
نظام تحديد المواقع القائم على الموجات فوق الصوتية
نظام تحديد المواقع القائم على الموجات فوق الصوتية

جميع إصدارات الرادارات فوق الصوتية التي وجدتها لأجهزة اردوينو (Arduino - Radar / Ultrasonic Detector ، Arduino Ultrasonic Radar Project) هي رادارات لطيفة جدًا ولكنها جميعًا "عمياء". يعني الرادار يكتشف شيئا ولكن ما الذي يكتشفه؟

لذلك أقترح على نفسي تطوير نظام قادر على اكتشاف الأشياء والتعرف عليها. بمعنى آخر ، نظام تحديد المواقع بدون استخدام أجهزة GPS لكن أجهزة الكشف بالموجات فوق الصوتية.

هذه هي النتيجة التي أتمنى أن تنال إعجابكم.

الخطوة 1: كيف يعمل؟

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

تتكون أنظمة تحديد المواقع من ثلاث محطات استشعار مع أجهزة الكشف بالموجات فوق الصوتية و id_node 1 و 2 و 3 لتشكيل مستطيل أو مربع يكتسح زاوية 90 درجة وحيث تُعرف المسافات بينها كما هو موضح في الصورة 1.

مسافة تعويم ثابتة بين 1 و 2 = 60.0 ؛

مسافة تعويم const بين 2 و 3 = 75.0 ؛

تقيس هذه المستشعرات مسافة وزاوية كائنات أخرى مع id_node أكبر من 3 والتي تحتوي أيضًا على كاشف بالموجات فوق الصوتية يكتسح بزاوية 170 درجة.

يرسل كل منهم المسافات والزوايا المقاسة و id_node إلى محطة رئيسية أخرى باستخدام الاتصالات اللاسلكية لتحليل وحساب موقع الكائنات باستخدام حساب حساب المثلثات وتحديدها.

لتجنب التداخلات ، تقوم المحطة الرئيسية بمزامنة جميع أجهزة الكشف عن الموجات فوق الصوتية بهذه الطريقة التي يقيسها كاشف واحد فقط بالموجات فوق الصوتية في كل لحظة

بعد ذلك وباستخدام اتصال تسلسلي ، ترسل المحطة الرئيسية المعلومات (الزاوية ، المسافة ، id_object) إلى مخطط معالجة لرسم النتائج.

الخطوة 2: كيفية تكوين محطات الاستشعار الثلاث والكائنات

كيفية تكوين محطات الاستشعار الثلاث والكائنات
كيفية تكوين محطات الاستشعار الثلاث والكائنات
كيفية تكوين محطات الاستشعار الثلاث والكائنات
كيفية تكوين محطات الاستشعار الثلاث والكائنات

تتمثل الوظيفة الوحيدة لكل محطة استشعار في اكتشاف الكائنات وإرسال قائمة المسافة والزاوية وعقدة الهوية المقاسة إلى المحطة الرئيسية.

لذا يتعين عليك تحديث أقصى مسافة للكشف ("valid_max_distance") المسموح بها والحد الأدنى ("valid_min_distance") (سم) لتحسين الاكتشاف والحد من منطقة الاكتشاف:

int valid_max_distance = 80 ؛

int valid_min_distance = 1 ؛

عقدة معرف محطات الاستشعار هذه ("this_node" في الكود أدناه) هي 1 و 2 و 3 وعقدة معرف المحطة الرئيسية هي 0.

const uint16_t this_node = 01 ؛ // عنوان العقدة بتنسيق Octal (Node01 ، Node02 ، Node03)

const uint16_t other_node = 00 ؛ // عنوان العقدة الرئيسية (Node00) بتنسيق ثماني

تكتسح كل محطة استشعار وزاوية 100 درجة ("max_angle" في الكود أدناه)

#define min_angle 0

# تعريف max_angle 100

كما هو مذكور أعلاه ، فإن الوظيفة الوحيدة للكائن هي اكتشاف الكائنات وإرسال قائمة المسافات والزوايا والكائن المعرّف المقاس إلى المحطة الرئيسية. يجب أن يكون معرف كائن واحد ("this_node" في الكود أدناه) أكبر من 3.

يمسح كل كائن بزاوية 170 درجة وما سبق ، من الممكن تحديث الحد الأقصى والحد الأدنى لمسافة الكشف.

const uint16_t this_node = 04 ؛ // عنوان العقدة بتنسيق ثماني (Node04 ، Node05 ، …)

const uint16_t other_node = 00 ؛ // عنوان العقدة الرئيسية (Node00) بتنسيق Octal int valid_max_distance = 80 ؛ int valid_min_distance = 1 ؛ #define min_angle 0 # تعريف max_angle 170

الخطوة 3: كيفية تكوين المحطة الرئيسية

كيفية تكوين المحطة الرئيسية
كيفية تكوين المحطة الرئيسية
كيفية تكوين المحطة الرئيسية
كيفية تكوين المحطة الرئيسية
كيفية تكوين المحطة الرئيسية
كيفية تكوين المحطة الرئيسية

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

أولاً ، عليك تحديث المسافة (بالسنتيمترات) بين المستشعر 1 و 2 والمسافة بين 2 و 3.

مسافة تعويم ثابتة بين 1 و 2 = 60.0 ؛

مسافة تعويم ثابتة بين 2 و 3 = 70.0 ؛

يحسب الرسم موضع الكائنات بالطريقة التالية:

  • بالنسبة لجميع عمليات إرسال الكائنات (id_node أكبر من 3) ، ابحث عن نفس المسافة في كل إرسال لأجهزة الاستشعار فوق الصوتية (id_node 1 أو 2 أو 3).
  • تشكل كل هذه النقاط قائمة "المرشحين" (المسافة ، الزاوية ، id_node) لتكون موضع كائن واحد ("process_pointobject_with_pointssensor" في الرسم التخطيطي).
  • لكل "مرشح" من القائمة السابقة ، تحسب الوظيفة "مرشح_محدد_بين_المستشعر 2 و 3" من وجهة نظر حساس الموجات فوق الصوتية 2 و 3 أي منهما يتطابق مع حالة حساب المثلثات التالية (انظر الصورتين 2 و 3)

مسافة الطفو froms2 = الخطيئة (راديان (زاوية)) * المسافة ؛

مسافة الطفو froms3 = cos (راديان (زاوية_المرشح)) * مسافة المرشح ؛ // حالة حساب المثلثات 1 القيمة المطلقة (مسافة الفرم 2 + المسافة 3 - المسافة بين 2 و 3) <= تعويم (أقصى مسافة)

كما هو مذكور أعلاه ، لكل "مرشح" من القائمة السابقة ، تحسب الوظيفة "مرشح_محدد_بين_المستشعر 1 و 2" من وجهة نظر حساس الموجات فوق الصوتية 1 و 2 أي منهما يتطابق مع علاقة حساب المثلثات التالية (انظر الصورة 2 و 3)

مسافة الطفو froms1 = sin (راديان (زاوية)) * المسافة ؛ مسافة الطفو froms2 = cos (راديان (زاوية_المرشح)) * مسافة المرشح ؛ // حالة حساب المثلثات 2 القيمة المطلقة (مسافة الفرم 1 + المسافة 2 - المسافة بين 1 و 2) <= تعويم (أقصى مسافة)

العناصر المرشحة فقط (المسافة ، الزاوية ، id_node) التي تتوافق مع ظروف حساب المثلثات 1 و 2 هي كائنات محددة تم الكشف عنها بواسطة محطات الاستشعار 1 و 2 و 3

بعد ذلك ، يتم إرسال النتائج بواسطة المحطة الرئيسية إلى رسم تخطيطي للمعالجة لرسمها.

الخطوة 4: قائمة المواد

Image
Image

قائمة المواد اللازمة لمحطة استشعار واحدة أو كائن واحد هي كما يلي:

  • لوحة نانو
  • أجهزة الاستشعار بالموجات فوق الصوتية
  • محرك سيرفو صغير
  • الوحدة اللاسلكية NRF24L01
  • محول NRF24L01

وقائمة المواد الخاصة بالمحطة الرئيسية هي كما يلي:

  • لوحة نانو
  • الوحدة اللاسلكية NRF24L01
  • محول NRF24L01

موصى به: